From ab85626aba09cbba7bc738ba1ef7acccd0bb9087 Mon Sep 17 00:00:00 2001 From: Felipe Lima Date: Sun, 30 Sep 2018 12:51:50 -0300 Subject: [PATCH] feat: add ruleOpts to override the default preprocessor rule options --- README.md | 6 ++++++ src/index.ts | 5 ++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 7fd427a..66ac853 100644 --- a/README.md +++ b/README.md @@ -142,3 +142,9 @@ Custom options passed on pre-processor loader configuration - **Default:** `{}` Custom options passed on [css-loader](https://github.com/webpack-contrib/css-loader) configuration + +#### `ruleOpts` +- **Type:** `{ [key:string]: any }` +- **Default:** `{}` + +Custom options passed on webpack rule configuration diff --git a/src/index.ts b/src/index.ts index 6abe79d..f5b862e 100644 --- a/src/index.ts +++ b/src/index.ts @@ -91,7 +91,7 @@ const applyRule = ( cssmodules: boolean | undefined, dev: boolean ) => { - const { preprocessor, cssOpts, loaderOpts } = opts + const { preprocessor, cssOpts, loaderOpts, ruleOpts } = opts const loaderfn = loaders[preprocessor as PreProcessor] const loader = loaderfn(loaderOpts) @@ -105,6 +105,7 @@ const applyRule = ( return { test: tests[preprocessor as PreProcessor], use: loader(cssoptions, dev), + ...ruleOpts, } } @@ -113,6 +114,7 @@ export interface CSSPluginOptions { cssmodules?: boolean loaderOpts?: Opts cssOpts?: Opts + ruleOpts?: Opts } const defaultOpts: Record = { @@ -120,6 +122,7 @@ const defaultOpts: Record = { cssmodules: false, loadersOpts: {}, cssOpts: {}, + ruleOpts: {}, } export const css = (opts: CSSPluginOptions = defaultOpts) =>