mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
add projectroot to sass includedPaths instead of using replace to fix the paths during build
This commit is contained in:
@@ -25,8 +25,8 @@
|
|||||||
"prebuild:aot": "yarn run prebuild",
|
"prebuild:aot": "yarn run prebuild",
|
||||||
"prebuild:prod": "yarn run prebuild",
|
"prebuild:prod": "yarn run prebuild",
|
||||||
"build": "node ./scripts/webpack.js --progress --mode development",
|
"build": "node ./scripts/webpack.js --progress --mode development",
|
||||||
"build:aot": "yarn run syncbuilddir && node ./scripts/resolve-absolute-scss-imports.js && node ./scripts/webpack.js --env.aot --env.server --mode development && node ./scripts/webpack.js --env.aot --env.client --mode development",
|
"build:aot": "yarn run syncbuilddir && node ./scripts/webpack.js --env.aot --env.server --mode development && node ./scripts/webpack.js --env.aot --env.client --mode development",
|
||||||
"build:prod": "yarn run syncbuilddir && node ./scripts/resolve-absolute-scss-imports.js && node ./scripts/webpack.js --env.aot --env.server --mode production && node ./scripts/webpack.js --env.aot --env.client --mode production",
|
"build:prod": "yarn run syncbuilddir && node ./scripts/webpack.js --env.aot --env.server --mode production && node ./scripts/webpack.js --env.aot --env.client --mode production",
|
||||||
"postbuild:prod": "yarn run rollup",
|
"postbuild:prod": "yarn run rollup",
|
||||||
"rollup": "rollup -c rollup.config.js",
|
"rollup": "rollup -c rollup.config.js",
|
||||||
"prestart": "yarn run build:prod",
|
"prestart": "yarn run build:prod",
|
||||||
|
@@ -1,24 +0,0 @@
|
|||||||
const replace = require('replace-in-file');
|
|
||||||
const path = require('path');
|
|
||||||
const {
|
|
||||||
projectRoot,
|
|
||||||
} = require('../webpack/helpers');
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This script ensures you can use ~ to reference the project dir
|
|
||||||
* in scss imports for AoT builds as well.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
const options = {
|
|
||||||
files: path.join(projectRoot('build'), '**', '*.scss'),
|
|
||||||
from: /@import '~\/([^']+)/g,
|
|
||||||
to: `@import '${path.join(projectRoot('./'), '$1')}`,
|
|
||||||
};
|
|
||||||
|
|
||||||
try {
|
|
||||||
replace.sync(options);
|
|
||||||
}
|
|
||||||
catch (error) {
|
|
||||||
console.error('Error occurred:', error);
|
|
||||||
}
|
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+home-page/home-news/home-news.component.scss';
|
@import 'src/app/+home-page/home-news/home-news.component.scss';
|
||||||
$home-news-link-color: $green !default;
|
$home-news-link-color: $green !default;
|
||||||
$home-news-link-color: darken($home-news-link-color, 15%) !default;
|
$home-news-link-color: darken($home-news-link-color, 15%) !default;
|
||||||
|
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+home-page/home-page.component.scss';
|
@import 'src/app/+home-page/home-page.component.scss';
|
||||||
|
|
||||||
div.background-image {
|
div.background-image {
|
||||||
color: white;
|
color: white;
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss';
|
@import 'src/app/+item-page/simple/item-types/journal-issue/journal-issue.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss';
|
@import 'src/app/+item-page/simple/item-types/journal-volume/journal-volume.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/journal/journal.component.scss';
|
@import 'src/app/+item-page/simple/item-types/journal/journal.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss';
|
@import 'src/app/+item-page/simple/item-types/orgunit/orgunit.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/person/person.component.scss';
|
@import 'src/app/+item-page/simple/item-types/person/person.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/project/project.component.scss';
|
@import 'src/app/+item-page/simple/item-types/project/project.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+item-page/simple/item-types/publication/publication.component.scss';
|
@import 'src/app/+item-page/simple/item-types/publication/publication.component.scss';
|
||||||
|
|
||||||
:host {
|
:host {
|
||||||
> * {
|
> * {
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+search-page/search-filters/search-filter/search-filter.component.scss';
|
@import 'src/app/+search-page/search-filters/search-filter/search-filter.component.scss';
|
||||||
|
|
||||||
.facet-filter {
|
.facet-filter {
|
||||||
background-color: map-get($theme-colors, light);
|
background-color: map-get($theme-colors, light);
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.scss';
|
@import 'src/app/+search-page/search-filters/search-filter/search-range-filter/search-range-filter.component.scss';
|
||||||
|
|
||||||
::ng-deep .noUi-connect {
|
::ng-deep .noUi-connect {
|
||||||
background: $info;
|
background: $info;
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/+search-page/search-settings/search-settings.component.scss';
|
@import 'src/app/+search-page/search-settings/search-settings.component.scss';
|
||||||
|
|
||||||
.setting-option {
|
.setting-option {
|
||||||
background-color: map-get($theme-colors, light);
|
background-color: map-get($theme-colors, light);
|
||||||
|
@@ -1,4 +1,4 @@
|
|||||||
@import '~/src/app/navbar/navbar.component.scss';
|
@import 'src/app/navbar/navbar.component.scss';
|
||||||
|
|
||||||
nav.navbar {
|
nav.navbar {
|
||||||
border-bottom: 5px $green solid;
|
border-bottom: 5px $green solid;
|
||||||
|
@@ -63,18 +63,6 @@ const globalCSSImports = (env) => { return [
|
|||||||
buildRoot('styles/_mixins.scss', env),
|
buildRoot('styles/_mixins.scss', env),
|
||||||
]};
|
]};
|
||||||
|
|
||||||
const themeReplaceOptions =
|
|
||||||
{
|
|
||||||
multiple: [
|
|
||||||
{
|
|
||||||
search: '@import \'~/([^\']+)',
|
|
||||||
replace: '@import \'' + path.join(projectRoot('./'), '$1'),
|
|
||||||
flags: 'g'
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
const getThemedPath = (componentPath, ext) => {
|
const getThemedPath = (componentPath, ext) => {
|
||||||
const parsedPath = path.parse(componentPath);
|
const parsedPath = path.parse(componentPath);
|
||||||
const relativePath = path.relative(srcPath, parsedPath.dir);
|
const relativePath = path.relative(srcPath, parsedPath.dir);
|
||||||
@@ -114,6 +102,5 @@ module.exports = {
|
|||||||
getThemedPath,
|
getThemedPath,
|
||||||
themedTest,
|
themedTest,
|
||||||
themedUse,
|
themedUse,
|
||||||
globalCSSImports,
|
globalCSSImports
|
||||||
themeReplaceOptions
|
|
||||||
};
|
};
|
||||||
|
@@ -4,7 +4,6 @@ const {
|
|||||||
projectRoot,
|
projectRoot,
|
||||||
buildRoot,
|
buildRoot,
|
||||||
globalCSSImports,
|
globalCSSImports,
|
||||||
themeReplaceOptions,
|
|
||||||
themePath,
|
themePath,
|
||||||
themedTest,
|
themedTest,
|
||||||
themedUse
|
themedUse
|
||||||
@@ -95,7 +94,7 @@ module.exports = (env) => {
|
|||||||
loader: 'sass-loader',
|
loader: 'sass-loader',
|
||||||
options: {
|
options: {
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
includePaths: [path.join(themePath, 'styles')]
|
includePaths: [projectRoot('./'), path.join(themePath, 'styles')]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -103,10 +102,6 @@ module.exports = (env) => {
|
|||||||
options: {
|
options: {
|
||||||
resources: globalCSSImports(env)
|
resources: globalCSSImports(env)
|
||||||
},
|
},
|
||||||
},
|
|
||||||
{
|
|
||||||
loader: 'string-replace-loader',
|
|
||||||
options: themeReplaceOptions
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -137,12 +132,8 @@ module.exports = (env) => {
|
|||||||
loader: 'sass-loader',
|
loader: 'sass-loader',
|
||||||
options: {
|
options: {
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
includePaths: [path.join(themePath, 'styles')]
|
includePaths: [projectRoot('./'), path.join(themePath, 'styles')]
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
loader: 'string-replace-loader',
|
|
||||||
options: themeReplaceOptions
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
@@ -4,8 +4,7 @@ const {
|
|||||||
themedTest,
|
themedTest,
|
||||||
themedUse,
|
themedUse,
|
||||||
themePath,
|
themePath,
|
||||||
globalCSSImports,
|
globalCSSImports
|
||||||
themeReplaceOptions
|
|
||||||
} = require('./helpers');
|
} = require('./helpers');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
|
|
||||||
@@ -171,7 +170,7 @@ module.exports = function (env) {
|
|||||||
loader: 'sass-loader',
|
loader: 'sass-loader',
|
||||||
options: {
|
options: {
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
includePaths: [path.join(themePath, 'styles')]
|
includePaths: [projectRoot('./'), path.join(themePath, 'styles')]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -179,10 +178,6 @@ module.exports = function (env) {
|
|||||||
options: {
|
options: {
|
||||||
resources: globalCSSImports(env)
|
resources: globalCSSImports(env)
|
||||||
},
|
},
|
||||||
},
|
|
||||||
{
|
|
||||||
loader: 'string-replace-loader',
|
|
||||||
options: themeReplaceOptions
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -213,12 +208,8 @@ module.exports = function (env) {
|
|||||||
loader: 'sass-loader',
|
loader: 'sass-loader',
|
||||||
options: {
|
options: {
|
||||||
sourceMap: true,
|
sourceMap: true,
|
||||||
includePaths: [path.join(themePath, 'styles')]
|
includePaths: [projectRoot('./'), path.join(themePath, 'styles')]
|
||||||
}
|
}
|
||||||
},
|
|
||||||
{
|
|
||||||
loader: 'string-replace-loader',
|
|
||||||
options: themeReplaceOptions
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
Reference in New Issue
Block a user