Skip to content

Commit 01e1da7

Browse files
author
Diego
committed
Add optional resolve-url-loader options
1 parent 906ae9b commit 01e1da7

File tree

4 files changed

+30
-3
lines changed

4 files changed

+30
-3
lines changed

lib/WebpackConfig.js

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,14 @@ class WebpackConfig {
115115
// Features/Loaders options
116116
this.copyFilesConfigs = [];
117117
this.sassOptions = {
118-
resolveUrlLoader: true
118+
resolveUrlLoader: true,
119+
resolveUrlLoaderOptions: {
120+
engine: 'postcss',
121+
keepQuery: false,
122+
removeCR: false,
123+
debug: false,
124+
silent: false
125+
}
119126
};
120127
this.preactOptions = {
121128
preactCompat: false

lib/loaders/sass.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ module.exports = {
3232
loader: 'resolve-url-loader',
3333
options: {
3434
sourceMap: webpackConfig.useSourceMaps,
35-
removeCR: true
35+
...webpackConfig.sassOptions.resolveUrlLoaderOptions
3636
}
3737
});
3838
}

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@
4343
"optimize-css-assets-webpack-plugin": "^5.0.1",
4444
"pkg-up": "^1.0.0",
4545
"pretty-error": "^2.1.1",
46-
"resolve-url-loader": "^3.1.0",
46+
"resolve-url-loader": "^3.0.1",
4747
"semver": "^5.5.0",
4848
"style-loader": "^0.21.0",
4949
"terser-webpack-plugin": "^1.1.0",

test/loaders/sass.js

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,26 @@ describe('loaders/sass', () => {
6565
cssLoader.getLoaders.restore();
6666
});
6767

68+
it('getLoaders() with resolve-url-loader options', () => {
69+
const config = createConfig();
70+
config.enableSassLoader(() => {}, {
71+
resolveUrlLoaderOptions: {
72+
removeCR: true
73+
}
74+
});
75+
76+
// make the cssLoader return nothing
77+
sinon.stub(cssLoader, 'getLoaders')
78+
.callsFake(() => []);
79+
80+
const actualLoaders = sassLoader.getLoaders(config);
81+
expect(actualLoaders).to.have.lengthOf(2);
82+
expect(actualLoaders[0].loader).to.equal('resolve-url-loader');
83+
expect(actualLoaders[0].options.removeCR).to.be.true;
84+
85+
cssLoader.getLoaders.restore();
86+
});
87+
6888
it('getLoaders() without resolve-url-loader', () => {
6989
const config = createConfig();
7090
config.enableSassLoader(() => {}, {

0 commit comments

Comments
 (0)