mirror of
https://github.com/Unleash/unleash.git
synced 2025-01-25 00:07:47 +01:00
fix: make css module loading work as expected.
This commit is contained in:
parent
790bd4da0f
commit
43597687df
@ -24,33 +24,36 @@ module.exports = {
|
|||||||
'@site': path.resolve(__dirname, '../'),
|
'@site': path.resolve(__dirname, '../'),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let cssRules = [];
|
||||||
const rules = config.module.rules.map((rule) => {
|
const rules = config.module.rules.map((rule) => {
|
||||||
if (rule.test.toString() !== '/\\.css$/') {
|
if (rule.test.toString() === '/\\.css$/') {
|
||||||
return rule;
|
cssRules.push(JSON.parse(JSON.stringify(rule)));
|
||||||
}
|
|
||||||
|
|
||||||
const use = rule.use.map((u) => {
|
|
||||||
const { loader } = u;
|
|
||||||
|
|
||||||
if (!loader || !loader.includes('/css-loader/')) {
|
|
||||||
return u;
|
|
||||||
}
|
|
||||||
|
|
||||||
const options = {
|
|
||||||
...u.options,
|
|
||||||
modules: true,
|
|
||||||
};
|
|
||||||
|
|
||||||
return {
|
return {
|
||||||
...u,
|
...rule,
|
||||||
options,
|
exclude: /\.module\.css$/,
|
||||||
};
|
};
|
||||||
});
|
} else return rule;
|
||||||
|
});
|
||||||
|
|
||||||
return {
|
cssRules.forEach((r) => {
|
||||||
...rule,
|
const moduleRule = {
|
||||||
use,
|
...r,
|
||||||
|
test: /\.module\.css$/,
|
||||||
|
use: r.use.map((use) => {
|
||||||
|
if (
|
||||||
|
typeof use === 'object' &&
|
||||||
|
use.loader.includes('/css-loader/')
|
||||||
|
) {
|
||||||
|
use.options = {
|
||||||
|
...use.options,
|
||||||
|
modules: true,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
return use;
|
||||||
|
}),
|
||||||
};
|
};
|
||||||
|
rules.push(moduleRule);
|
||||||
});
|
});
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
Loading…
Reference in New Issue
Block a user