@rspack/plugin-postcss
Advanced tools
Comparing version
# rspack-plugin-postcss | ||
## 0.0.0-cee6624d89-20221111073501 | ||
## 0.0.0-cf8719208-20221122074551 | ||
### Patch Changes | ||
- @rspack/binding@0.0.0-cee6624d89-20221111073501 | ||
- @rspack/binding@0.0.0-cf8719208-20221122074551 | ||
## 0.0.10 | ||
### Patch Changes | ||
- @rspack/binding@0.0.10 | ||
## 0.0.9 | ||
@@ -10,0 +16,0 @@ |
{ | ||
"name": "@rspack/plugin-postcss", | ||
"version": "0.0.0-cee6624d89-20221111073501", | ||
"version": "0.0.0-cf8719208-20221122074551", | ||
"description": "", | ||
@@ -8,12 +8,7 @@ "main": "src/index.js", | ||
"dependencies": { | ||
"@rspack/binding": "0.0.0-cee6624d89-20221111073501", | ||
"postcss-modules": "^5.0.0", | ||
"postcss-pxtorem": "^6.0.0" | ||
"postcss-pxtorem": "^6.0.0", | ||
"postcss": "^8.4.16", | ||
"@rspack/binding": "0.0.0-cf8719208-20221122074551" | ||
}, | ||
"peerDependencies": { | ||
"postcss": "^7.0.0 || ^8.0.1" | ||
}, | ||
"devDependencies": { | ||
"postcss": "^8.4.16" | ||
}, | ||
"author": "", | ||
@@ -20,0 +15,0 @@ "license": "ISC", |
@@ -9,2 +9,4 @@ const { Processor } = require("postcss"); | ||
const IS_MODULES = /\.module(s)?\.\w+$/i; | ||
module.exports = async function loader(loaderContext) { | ||
@@ -14,3 +16,3 @@ // TODO: customize options, until js binding support this functionality | ||
let options = loaderContext.getOptions() ?? {}; | ||
let enableModules = options.modules; | ||
let modulesOptions = options.modules; | ||
let pxToRem = options.pxToRem; | ||
@@ -46,12 +48,29 @@ let useSourceMap = | ||
if (enableModules) { | ||
plugins.push( | ||
cssModules({ | ||
getJSON(_, json) { | ||
if (json) { | ||
meta = json; | ||
if (modulesOptions) { | ||
let auto = | ||
typeof modulesOptions === "boolean" | ||
? true | ||
: modulesOptions.auto ?? true; | ||
let isModules; | ||
if (typeof auto === "boolean") { | ||
isModules = auto && IS_MODULES.test(loaderContext.resourcePath); | ||
} else if (auto instanceof RegExp) { | ||
isModules = auto.test(loaderContext.resourcePath); | ||
} else if (typeof auto === "function") { | ||
isModules = auto(loaderContext.resourcePath); | ||
} | ||
delete modulesOptions.auto; | ||
if (isModules) { | ||
plugins.push( | ||
cssModules({ | ||
...modulesOptions, | ||
getJSON(_, json) { | ||
if (json) { | ||
meta = json; | ||
} | ||
} | ||
} | ||
}) | ||
); | ||
}) | ||
); | ||
} | ||
} | ||
@@ -58,0 +77,0 @@ |
6020
9.39%0
-100%164
11.56%+ Added
+ Added
- Removed