From cfe669f32c568895c0054fc08a6a8562246f5faa Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Tue, 22 Sep 2020 16:54:02 +0300 Subject: [PATCH 01/15] refactor: remove icss option (#1189) BRAKING CHANGE: the `icss` option was removed, please use `modules.compileType: 'icss'` --- src/options.json | 4 -- src/utils.js | 2 - .../__snapshots__/modules-option.test.js.snap | 46 ------------------- .../validate-options.test.js.snap | 28 ++++------- test/modules-option.test.js | 19 -------- test/validate-options.test.js | 4 -- 6 files changed, 8 insertions(+), 95 deletions(-) diff --git a/src/options.json b/src/options.json index 0895597f..ce594891 100644 --- a/src/options.json +++ b/src/options.json @@ -122,10 +122,6 @@ } ] }, - "icss": { - "description": "Enables/Disables handling the CSS module interoperable import/export format ((https://github.com/webpack-contrib/css-loader#icss)", - "type": "boolean" - }, "sourceMap": { "description": "Enables/Disables generation of source maps (https://github.com/webpack-contrib/css-loader#sourcemap).", "type": "boolean" diff --git a/src/utils.js b/src/utils.js index 9b506818..67e50566 100644 --- a/src/utils.js +++ b/src/utils.js @@ -219,8 +219,6 @@ function normalizeOptions(rawOptions, loaderContext) { url: typeof rawOptions.url === 'undefined' ? true : rawOptions.url, import: typeof rawOptions.import === 'undefined' ? true : rawOptions.import, modules: modulesOptions, - // TODO remove in the next major release - icss: typeof rawOptions.icss === 'undefined' ? false : rawOptions.icss, sourceMap: typeof rawOptions.sourceMap === 'boolean' ? rawOptions.sourceMap diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 087eba1e..7e4dfd8b 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -12529,52 +12529,6 @@ Array [ exports[`"modules" option should work with the \`exportGlobals\` option (the \`mode\` option is \`pure\`): warnings 1`] = `Array []`; -exports[`"modules" option show work and warn about the "icss" option deprecation: errors 1`] = `Array []`; - -exports[`"modules" option show work and warn about the "icss" option deprecation: module 1`] = ` -"// Imports -import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../../src/index.js??[ident]!./vars.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); -___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); -// Module -___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); -// Exports -___CSS_LOADER_EXPORT___.locals = { - \\"primary-color\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\"\\" -}; -export default ___CSS_LOADER_EXPORT___; -" -`; - -exports[`"modules" option show work and warn about the "icss" option deprecation: result 1`] = ` -Array [ - Array [ - "../../src/index.js?[ident]!./modules/icss/tests-cases/import/vars.css", - " -", - "", - ], - Array [ - "./modules/icss/tests-cases/import/source.css", - ".className { - color: red; -} -", - "", - ], -] -`; - -exports[`"modules" option show work and warn about the "icss" option deprecation: warnings 1`] = ` -Array [ - "ModuleWarning: Module Warning (from \`replaced original path\`): -The \\"icss\\" option is deprecated, use \\"modules.compileType: \\"icss\\"\\" instead", - "ModuleWarning: Module Warning (from \`replaced original path\`): -The \\"icss\\" option is deprecated, use \\"modules.compileType: \\"icss\\"\\" instead", -] -`; - exports[`"modules" option show work with the "compileType" and "exportOnlyLocals" options: errors 1`] = `Array []`; exports[`"modules" option show work with the "compileType" and "exportOnlyLocals" options: module 1`] = ` diff --git a/test/__snapshots__/validate-options.test.js.snap b/test/__snapshots__/validate-options.test.js.snap index f3f6ecc4..f8a113dd 100644 --- a/test/__snapshots__/validate-options.test.js.snap +++ b/test/__snapshots__/validate-options.test.js.snap @@ -6,18 +6,6 @@ exports[`validate options should throw an error on the "esModule" option with "t -> Use the ES modules syntax (https://github.com/webpack-contrib/css-loader#esmodule)." `; -exports[`validate options should throw an error on the "icss" option with "1" value 1`] = ` -"Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - - options.icss should be a boolean. - -> Enables/Disables handling the CSS module interoperable import/export format ((https://github.com/webpack-contrib/css-loader#icss)" -`; - -exports[`validate options should throw an error on the "icss" option with "true" value 1`] = ` -"Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - - options.icss should be a boolean. - -> Enables/Disables handling the CSS module interoperable import/export format ((https://github.com/webpack-contrib/css-loader#icss)" -`; - exports[`validate options should throw an error on the "import" option with "true" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options.import should be one of these: @@ -245,49 +233,49 @@ exports[`validate options should throw an error on the "sourceMap" option with " exports[`validate options should throw an error on the "unknown" option with "/test/" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "[]" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "{"foo":"bar"}" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "{}" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "1" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "false" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "test" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "unknown" option with "true" value 1`] = ` "Invalid options object. CSS Loader has been initialized using an options object that does not match the API schema. - options has an unknown property 'unknown'. These properties are valid: - object { url?, import?, modules?, icss?, sourceMap?, importLoaders?, esModule? }" + object { url?, import?, modules?, sourceMap?, importLoaders?, esModule? }" `; exports[`validate options should throw an error on the "url" option with "true" value 1`] = ` diff --git a/test/modules-option.test.js b/test/modules-option.test.js index 3fe8f558..44276e1b 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -1239,25 +1239,6 @@ describe('"modules" option', () => { }); }); - it('show work and warn about the "icss" option deprecation', async () => { - const compiler = getCompiler( - './modules/icss/tests-cases/import/source.js', - { - icss: true, - } - ); - const stats = await compile(compiler); - - expect( - getModuleSource('./modules/icss/tests-cases/import/source.css', stats) - ).toMatchSnapshot('module'); - expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( - 'result' - ); - expect(getWarnings(stats)).toMatchSnapshot('warnings'); - expect(getErrors(stats)).toMatchSnapshot('errors'); - }); - it('show work with the "compileType" and "exportOnlyLocals" options', async () => { const compiler = getCompiler( './modules/icss/tests-cases/import/source.js', diff --git a/test/validate-options.test.js b/test/validate-options.test.js index 95c50fc7..748c8c56 100644 --- a/test/validate-options.test.js +++ b/test/validate-options.test.js @@ -10,10 +10,6 @@ describe('validate options', () => { success: [true, false, () => {}], failure: ['true'], }, - icss: { - success: [true, false], - failure: ['true', 1], - }, modules: { success: [ true, From df111b88b062d7062adcdafde44e93d2ed1c77ec Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Tue, 22 Sep 2020 17:58:55 +0300 Subject: [PATCH 02/15] test: import with file protocol --- .gitignore | 2 + test/__snapshots__/import-option.test.js.snap | 35 ++++++++++++++++ test/__snapshots__/url-option.test.js.snap | 40 +++++++++++++++++++ test/fixtures/import/import-file-protocol.js | 5 +++ test/fixtures/url/url-file-protocol.js | 5 +++ test/import-option.test.js | 23 +++++++++++ test/url-option.test.js | 36 +++++++++++++++++ 7 files changed, 146 insertions(+) create mode 100644 test/fixtures/import/import-file-protocol.js create mode 100644 test/fixtures/url/url-file-protocol.js diff --git a/.gitignore b/.gitignore index 9c22fc5a..bce31f7b 100644 --- a/.gitignore +++ b/.gitignore @@ -11,6 +11,8 @@ npm-debug.log* /test/fixtures/import/import-absolute.css /test/fixtures/url/url-absolute.css /test/fixtures/modules/composes/composes-absolute.css +/test/fixtures/import/import-file-protocol.css +/test/fixtures/url/url-file-protocol.css .DS_Store Thumbs.db diff --git a/test/__snapshots__/import-option.test.js.snap b/test/__snapshots__/import-option.test.js.snap index faa16ec1..fcb3af5b 100644 --- a/test/__snapshots__/import-option.test.js.snap +++ b/test/__snapshots__/import-option.test.js.snap @@ -152,6 +152,41 @@ Array [ exports[`"import" option should keep original order: warnings 1`] = `Array []`; +exports[`"import" option should resolve "file" protocol: errors 1`] = `Array []`; + +exports[`"import" option should resolve "file" protocol: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./test.css\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"import" option should resolve "file" protocol: result 1`] = ` +Array [ + Array [ + "../../src/index.js?[ident]!./import/test.css", + ".test { + a: a; +} +", + "", + ], + Array [ + "./import/import-file-protocol.css", + "", + "", + ], +] +`; + +exports[`"import" option should resolve "file" protocol: warnings 1`] = `Array []`; + exports[`"import" option should resolve absolute path: errors 1`] = `Array []`; exports[`"import" option should resolve absolute path: module 1`] = ` diff --git a/test/__snapshots__/url-option.test.js.snap b/test/__snapshots__/url-option.test.js.snap index aa87d783..2a4a5962 100644 --- a/test/__snapshots__/url-option.test.js.snap +++ b/test/__snapshots__/url-option.test.js.snap @@ -1,5 +1,45 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP +exports[`"url" option should resolve "file" protocol path: errors 1`] = `Array []`; + +exports[`"url" option should resolve "file" protocol path: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; +import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; +import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"url" option should resolve "file" protocol path: result 1`] = ` +Array [ + Array [ + "./url/url-file-protocol.css", + " +.background { + background: url(/webpack/public/path/img.png); +} + +.background-other { + background: url(/webpack/public/path/img.png); +} + +.background-other { + background: url(/webpack/public/path/img.png); +} +", + "", + ], +] +`; + +exports[`"url" option should resolve "file" protocol path: warnings 1`] = `Array []`; + exports[`"url" option should resolve absolute path: errors 1`] = `Array []`; exports[`"url" option should resolve absolute path: module 1`] = ` diff --git a/test/fixtures/import/import-file-protocol.js b/test/fixtures/import/import-file-protocol.js new file mode 100644 index 00000000..516def19 --- /dev/null +++ b/test/fixtures/import/import-file-protocol.js @@ -0,0 +1,5 @@ +import css from './import-file-protocol.css'; + +__export__ = css; + +export default css; diff --git a/test/fixtures/url/url-file-protocol.js b/test/fixtures/url/url-file-protocol.js new file mode 100644 index 00000000..8cd82a37 --- /dev/null +++ b/test/fixtures/url/url-file-protocol.js @@ -0,0 +1,5 @@ +import css from './url-file-protocol.css'; + +__export__ = css; + +export default css; diff --git a/test/import-option.test.js b/test/import-option.test.js index 7388dbc8..fdee36c5 100644 --- a/test/import-option.test.js +++ b/test/import-option.test.js @@ -173,6 +173,29 @@ describe('"import" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it('should resolve "file" protocol', async () => { + // Create the file with absolute path + const fileDirectory = path.resolve(__dirname, 'fixtures', 'import'); + const file = path.resolve(fileDirectory, 'import-file-protocol.css'); + const absolutePath = path + .resolve(fileDirectory, 'test.css') + .replace(/\\/g, '/'); + + fs.writeFileSync(file, `@import "file://${absolutePath}";`); + + const compiler = getCompiler('./import/import-file-protocol.js'); + const stats = await compile(compiler); + + expect( + getModuleSource('./import/import-file-protocol.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + it('should throw an error on unresolved import', async () => { const compiler = getCompiler('./import/unresolved.js'); const stats = await compile(compiler); diff --git a/test/url-option.test.js b/test/url-option.test.js index 7d96529f..649a20a2 100644 --- a/test/url-option.test.js +++ b/test/url-option.test.js @@ -104,6 +104,42 @@ describe('"url" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it('should resolve "file" protocol path', async () => { + // Create the file with absolute path + const fileDirectory = path.resolve(__dirname, 'fixtures', 'url'); + const file = path.resolve(fileDirectory, 'url-file-protocol.css'); + const absolutePath = path + .resolve(fileDirectory, 'img.png') + .replace(/\\/g, '/'); + const code = ` +.background { + background: url(file://${absolutePath}); +} + +.background-other { + background: url(file://${absolutePath.replace(/e/g, '%65')}); +} + +.background-other { + background: url('file://${absolutePath.replace(/e/g, '\\\ne')}'); +} +`; + + fs.writeFileSync(file, code); + + const compiler = getCompiler('./url/url-file-protocol.js'); + const stats = await compile(compiler); + + expect( + getModuleSource('./url/url-file-protocol.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + it('should throw an error on unresolved import', async () => { const compiler = getCompiler('./url/url-unresolved.js'); const stats = await compile(compiler); From 2f1573f6201a434d83012d629aacac0e3c3d941a Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Tue, 22 Sep 2020 20:27:30 +0300 Subject: [PATCH 03/15] feat: auto enable icss modules BREAKING CHANGE: Auto enable icss modules for all files for which /\.icss\.\w+$/i.test(filename) --- src/utils.js | 18 +++-- .../__snapshots__/modules-option.test.js.snap | 70 +++++++++++++++++++ test/fixtures/modules/mode/icss/icss.js | 5 ++ .../modules/mode/icss/relative.icss.css | 11 +++ test/fixtures/modules/mode/icss/vars.icss.css | 3 + test/fixtures/modules/mode/modules-2.js | 5 ++ .../modules/mode/relative.modules.css | 3 + test/modules-option.test.js | 28 ++++++++ 8 files changed, 133 insertions(+), 10 deletions(-) create mode 100644 test/fixtures/modules/mode/icss/icss.js create mode 100644 test/fixtures/modules/mode/icss/relative.icss.css create mode 100644 test/fixtures/modules/mode/icss/vars.icss.css create mode 100644 test/fixtures/modules/mode/modules-2.js create mode 100644 test/fixtures/modules/mode/relative.modules.css diff --git a/src/utils.js b/src/utils.js index 67e50566..ca167e22 100644 --- a/src/utils.js +++ b/src/utils.js @@ -109,15 +109,21 @@ function getFilter(filter, resourcePath) { }; } -const moduleRegExp = /\.module\.\w+$/i; +const moduleRegExp = /\.module(s)?\.\w+$/i; +const icssRegExp = /\.icss\.\w+$/i; function getModulesOptions(rawOptions, loaderContext) { const { resourcePath } = loaderContext; + let isIcss; if (typeof rawOptions.modules === 'undefined') { const isModules = moduleRegExp.test(resourcePath); if (!isModules) { + isIcss = icssRegExp.test(resourcePath); + } + + if (!isModules && !isIcss) { return false; } } else if ( @@ -128,7 +134,7 @@ function getModulesOptions(rawOptions, loaderContext) { } let modulesOptions = { - compileType: rawOptions.icss ? 'icss' : 'module', + compileType: isIcss ? 'icss' : 'module', auto: true, mode: 'local', exportGlobals: false, @@ -205,14 +211,6 @@ function getModulesOptions(rawOptions, loaderContext) { } function normalizeOptions(rawOptions, loaderContext) { - if (rawOptions.icss) { - loaderContext.emitWarning( - new Error( - 'The "icss" option is deprecated, use "modules.compileType: "icss"" instead' - ) - ); - } - const modulesOptions = getModulesOptions(rawOptions, loaderContext); return { diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 7e4dfd8b..b57716f7 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -12227,6 +12227,76 @@ Array [ exports[`"modules" option should work with the "[local]" placeholder for the "localIdentName" option: warnings 1`] = `Array []`; +exports[`"modules" option should work with the "auto" by default for icss: errors 1`] = `Array []`; + +exports[`"modules" option should work with the "auto" by default for icss: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./vars.icss.css\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"primary-color\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work with the "auto" by default for icss: result 1`] = ` +Array [ + Array [ + "../../src/index.js?[ident]!./modules/mode/icss/vars.icss.css", + " +", + "", + ], + Array [ + "./modules/mode/icss/relative.icss.css", + ".className { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work with the "auto" by default for icss: warnings 1`] = `Array []`; + +exports[`"modules" option should work with the "auto" by default with "modules" filename: errors 1`] = `Array []`; + +exports[`"modules" option should work with the "auto" by default with "modules" filename: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".af0LbFVUmIAO7cXelO_aA {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"relative\\": \\"af0LbFVUmIAO7cXelO_aA\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work with the "auto" by default with "modules" filename: result 1`] = ` +Array [ + Array [ + "./modules/mode/relative.modules.css", + ".af0LbFVUmIAO7cXelO_aA { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work with the "auto" by default with "modules" filename: warnings 1`] = `Array []`; + exports[`"modules" option should work with the "auto" by default: errors 1`] = `Array []`; exports[`"modules" option should work with the "auto" by default: module 1`] = ` diff --git a/test/fixtures/modules/mode/icss/icss.js b/test/fixtures/modules/mode/icss/icss.js new file mode 100644 index 00000000..d6b82f6d --- /dev/null +++ b/test/fixtures/modules/mode/icss/icss.js @@ -0,0 +1,5 @@ +import relative from './relative.icss.css'; + +__export__ = relative; + +export default relative; diff --git a/test/fixtures/modules/mode/icss/relative.icss.css b/test/fixtures/modules/mode/icss/relative.icss.css new file mode 100644 index 00000000..c4fd9344 --- /dev/null +++ b/test/fixtures/modules/mode/icss/relative.icss.css @@ -0,0 +1,11 @@ +:import("./vars.icss.css") { + IMPORTED_NAME: primary-color; +} + +.className { + color: IMPORTED_NAME; +} + +:export { + primary-color: IMPORTED_NAME +} diff --git a/test/fixtures/modules/mode/icss/vars.icss.css b/test/fixtures/modules/mode/icss/vars.icss.css new file mode 100644 index 00000000..d4fdfda6 --- /dev/null +++ b/test/fixtures/modules/mode/icss/vars.icss.css @@ -0,0 +1,3 @@ +:export { + primary-color: red; +} diff --git a/test/fixtures/modules/mode/modules-2.js b/test/fixtures/modules/mode/modules-2.js new file mode 100644 index 00000000..174a7f4b --- /dev/null +++ b/test/fixtures/modules/mode/modules-2.js @@ -0,0 +1,5 @@ +import relative from './relative.modules.css'; + +__export__ = relative; + +export default relative; diff --git a/test/fixtures/modules/mode/relative.modules.css b/test/fixtures/modules/mode/relative.modules.css new file mode 100644 index 00000000..73597627 --- /dev/null +++ b/test/fixtures/modules/mode/relative.modules.css @@ -0,0 +1,3 @@ +.relative { + color: red; +} diff --git a/test/modules-option.test.js b/test/modules-option.test.js index 44276e1b..a31c2f19 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -737,6 +737,34 @@ describe('"modules" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it('should work with the "auto" by default with "modules" filename', async () => { + const compiler = getCompiler('./modules/mode/modules-2.js'); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/mode/relative.modules.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + + it('should work with the "auto" by default for icss', async () => { + const compiler = getCompiler('./modules/mode/icss/icss.js'); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/mode/icss/relative.icss.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + it('should work with the "auto" when it is "false"', async () => { const compiler = getCompiler('./modules/mode/modules.js', { modules: { From 0f9584135e63f9f354043e7f414e0c1aad0edc6e Mon Sep 17 00:00:00 2001 From: Brent Schmidt Date: Wed, 23 Sep 2020 10:05:22 -0400 Subject: [PATCH 04/15] feat: add fallback if custom getLocalIdent returns null (#1193) --- README.md | 4 +- src/utils.js | 31 ++++++++++--- .../__snapshots__/modules-option.test.js.snap | 43 +++++++++++++++++++ .../modules/issue-1191/issue-1191-custom.css | 3 ++ .../modules/issue-1191/issue-1191.css | 3 ++ .../fixtures/modules/issue-1191/issue-1191.js | 8 ++++ test/modules-option.test.js | 22 ++++++++++ 7 files changed, 108 insertions(+), 6 deletions(-) create mode 100644 test/fixtures/modules/issue-1191/issue-1191-custom.css create mode 100644 test/fixtures/modules/issue-1191/issue-1191.css create mode 100644 test/fixtures/modules/issue-1191/issue-1191.js diff --git a/README.md b/README.md index ce5984a6..9eaae51d 100644 --- a/README.md +++ b/README.md @@ -848,6 +848,8 @@ Default: `undefined` Allows to specify a function to generate the classname. By default we use built-in function to generate a classname. +If the custom function returns `null` or `undefined`, we fallback to the +built-in function to generate the classname. **webpack.config.js** @@ -1245,7 +1247,7 @@ module.exports = { ### Separating `Interoperable CSS`-only and `CSS Module` features -The following setup is an example of allowing `Interoperable CSS` features only (such as `:import` and `:export`) without using further `CSS Module` functionality by setting `compileType` option for all files that do not match `*.module.scss` naming convention. This is for reference as having `ICSS` features applied to all files was default `css-loader` behavior before v4. +The following setup is an example of allowing `Interoperable CSS` features only (such as `:import` and `:export`) without using further `CSS Module` functionality by setting `compileType` option for all files that do not match `*.module.scss` naming convention. This is for reference as having `ICSS` features applied to all files was default `css-loader` behavior before v4. Meanwhile all files matching `*.module.scss` are treated as `CSS Modules` in this example. An example case is assumed where a project requires canvas drawing variables to be synchronized with CSS - canvas drawing uses the same color (set by color name in JavaScript) as HTML background (set by class name in CSS). diff --git a/src/utils.js b/src/utils.js index ca167e22..218c0b73 100644 --- a/src/utils.js +++ b/src/utils.js @@ -281,11 +281,32 @@ function getModulesPlugins(options, loaderContext) { extractImports(), modulesScope({ generateScopedName(exportName) { - return getLocalIdent(loaderContext, localIdentName, exportName, { - context: localIdentContext, - hashPrefix: localIdentHashPrefix, - regExp: localIdentRegExp, - }); + let localIdent = getLocalIdent( + loaderContext, + localIdentName, + exportName, + { + context: localIdentContext, + hashPrefix: localIdentHashPrefix, + regExp: localIdentRegExp, + } + ); + + // A null/undefined value signals that we should invoke the default + // getLocalIdent method. + if (localIdent == null) { + localIdent = defaultGetLocalIdent( + loaderContext, + localIdentName, + exportName, + { + context: localIdentContext, + hashPrefix: localIdentHashPrefix, + regExp: localIdentRegExp, + } + ); + } + return localIdent; }, exportGlobals: options.modules.exportGlobals, }), diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index b57716f7..da337d58 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -487,6 +487,49 @@ exports[`"modules" option issue #1063: result 1`] = ` exports[`"modules" option issue #1063: warnings 1`] = `Array []`; +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: errors 1`] = `Array []`; + +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".some-class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"some-class\\": \\"some-class\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: result 1`] = ` +Object { + "css1": Array [ + Array [ + "./modules/issue-1191/issue-1191.css", + ".some-class { + color: red; +} +", + "", + ], + ], + "css2": Array [ + Array [ + "./modules/issue-1191/issue-1191-custom.css", + ".custom-some-class { + color: red; +} +", + "", + ], + ], +} +`; + +exports[`"modules" option issue #1191 - fallback to default getLocalIdent: warnings 1`] = `Array []`; + exports[`"modules" option should avoid unnecessary "require": errors 1`] = `Array []`; exports[`"modules" option should avoid unnecessary "require": module 1`] = ` diff --git a/test/fixtures/modules/issue-1191/issue-1191-custom.css b/test/fixtures/modules/issue-1191/issue-1191-custom.css new file mode 100644 index 00000000..b58cc07a --- /dev/null +++ b/test/fixtures/modules/issue-1191/issue-1191-custom.css @@ -0,0 +1,3 @@ +.some-class { + color: red; +} diff --git a/test/fixtures/modules/issue-1191/issue-1191.css b/test/fixtures/modules/issue-1191/issue-1191.css new file mode 100644 index 00000000..b58cc07a --- /dev/null +++ b/test/fixtures/modules/issue-1191/issue-1191.css @@ -0,0 +1,3 @@ +.some-class { + color: red; +} diff --git a/test/fixtures/modules/issue-1191/issue-1191.js b/test/fixtures/modules/issue-1191/issue-1191.js new file mode 100644 index 00000000..940dbfb1 --- /dev/null +++ b/test/fixtures/modules/issue-1191/issue-1191.js @@ -0,0 +1,8 @@ +import css1 from './issue-1191.css'; +import css2 from './issue-1191-custom.css'; + +const wrapper = { css1, css2 } + +__export__ = wrapper; + +export default wrapper; diff --git a/test/modules-option.test.js b/test/modules-option.test.js index a31c2f19..0a7f4b02 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -657,6 +657,28 @@ describe('"modules" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it('issue #1191 - fallback to default getLocalIdent', async () => { + const compiler = getCompiler('./modules/issue-1191/issue-1191.js', { + modules: { + getLocalIdent: (ctx, localIdentName, localName) => + ctx.resourcePath.includes('custom') ? `custom-${localName}` : null, + localIdentName: '[local]', + }, + }); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/issue-1191/issue-1191.css', stats) + ).toMatchSnapshot('module'); + + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + it('should work with the `exportGlobals` option (the `mode` option is `global`)', async () => { const compiler = getCompiler( './modules/exportGlobals-global/exportGlobals.js', From 52412f6d5a54745ee37a4a67f038455c26ba5772 Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Wed, 23 Sep 2020 18:39:15 +0300 Subject: [PATCH 05/15] feat: improve error message --- src/CssSyntaxError.js | 3 ++- test/__snapshots__/loader.test.js.snap | 4 ++-- test/helpers/getErrors.js | 4 ++-- test/helpers/normalizeErrors.js | 15 ++++++++++++++- test/loader.test.js | 4 ++-- 5 files changed, 22 insertions(+), 8 deletions(-) diff --git a/src/CssSyntaxError.js b/src/CssSyntaxError.js index 95f80f87..e39eb82d 100644 --- a/src/CssSyntaxError.js +++ b/src/CssSyntaxError.js @@ -2,7 +2,7 @@ export default class CssSyntaxError extends Error { constructor(error) { super(error); - const { reason, line, column } = error; + const { reason, line, column, file } = error; this.name = 'CssSyntaxError'; @@ -14,6 +14,7 @@ export default class CssSyntaxError extends Error { this.message += `(${line}:${column}) `; } + this.message += file ? `${file} ` : ' '; this.message += `${reason}`; const code = error.showSourceCode(); diff --git a/test/__snapshots__/loader.test.js.snap b/test/__snapshots__/loader.test.js.snap index 8b652215..9490502b 100644 --- a/test/__snapshots__/loader.test.js.snap +++ b/test/__snapshots__/loader.test.js.snap @@ -131,7 +131,7 @@ Array [ "ModuleBuildError: Module build failed (from \`replaced original path\`): CssSyntaxError -(1:8) Unknown word +(1:8) /test/fixtures/invisible-space.css Unknown word > 1 | a { 

 color: red; 

 } | ^ @@ -146,7 +146,7 @@ Array [ "ModuleBuildError: Module build failed (from \`replaced original path\`): CssSyntaxError -(2:3) Unknown word +(2:3) /test/fixtures/error.css Unknown word 1 | .some { > 2 | invalid css; diff --git a/test/helpers/getErrors.js b/test/helpers/getErrors.js index 03339e1e..55ae008b 100644 --- a/test/helpers/getErrors.js +++ b/test/helpers/getErrors.js @@ -1,5 +1,5 @@ import normalizeErrors from './normalizeErrors'; -export default (stats, shortError) => { - return normalizeErrors(stats.compilation.errors, shortError).sort(); +export default (stats, shortError, type) => { + return normalizeErrors(stats.compilation.errors, shortError, type).sort(); }; diff --git a/test/helpers/normalizeErrors.js b/test/helpers/normalizeErrors.js index 56fabce8..c844eb95 100644 --- a/test/helpers/normalizeErrors.js +++ b/test/helpers/normalizeErrors.js @@ -27,7 +27,7 @@ function removeCWD(str) { .replace(new RegExp(cwd, 'g'), ''); } -export default (errors, shortError) => { +export default (errors, shortError, type) => { return errors.map((error) => { let errorMessage = error.toString(); @@ -35,6 +35,19 @@ export default (errors, shortError) => { errorMessage = errorMessage.split('\n').slice(0, 2).join('\n'); } + if (type === 'postcss') { + errorMessage = errorMessage + .split('\n') + .map((str) => { + if (/^\(/i.test(str)) { + return removeCWD(str); + } + + return str; + }) + .join('\n'); + } + return removeCWD(errorMessage.split('\n').slice(0, 12).join('\n')); }); }; diff --git a/test/loader.test.js b/test/loader.test.js index d8c84f12..0195d0ce 100644 --- a/test/loader.test.js +++ b/test/loader.test.js @@ -132,7 +132,7 @@ describe('loader', () => { ) ).toBe(true); expect(getWarnings(stats)).toMatchSnapshot('warnings'); - expect(getErrors(stats)).toMatchSnapshot('errors'); + expect(getErrors(stats, false, 'postcss')).toMatchSnapshot('errors'); }); it('should reuse `ast` from "postcss-loader"', async () => { @@ -360,7 +360,7 @@ describe('loader', () => { const stats = await compile(compiler); expect(getWarnings(stats)).toMatchSnapshot('warnings'); - expect(getErrors(stats)).toMatchSnapshot('errors'); + expect(getErrors(stats, false, 'postcss')).toMatchSnapshot('errors'); }); it('should work with the "modules.auto" option and the "importLoaders" option', async () => { From dd52931150ed42f122d9017642437c26cc1b2422 Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Wed, 23 Sep 2020 19:46:11 +0300 Subject: [PATCH 06/15] feat: hide warning on no plugins (#1195) --- src/index.js | 1 + test/loader.test.js | 24 ++++++++++++++++++++++++ 2 files changed, 25 insertions(+) diff --git a/src/index.js b/src/index.js index 8e1d25ce..b77c9c50 100644 --- a/src/index.js +++ b/src/index.js @@ -157,6 +157,7 @@ export default async function loader(content, map, meta) { try { result = await postcss(plugins).process(content, { + hideNothingWarning: true, from: resourcePath, to: resourcePath, map: options.sourceMap diff --git a/test/loader.test.js b/test/loader.test.js index 0195d0ce..9eb33ee2 100644 --- a/test/loader.test.js +++ b/test/loader.test.js @@ -449,4 +449,28 @@ describe('loader', () => { expect(getWarnings(stats)).toMatchSnapshot('warnings'); expect(getErrors(stats)).toMatchSnapshot('errors'); }); + + // TODO unskip after updating postcss to 8 version + it.skip('should not generate console.warn when plugins disabled and hideNothingWarning is "true"', async () => { + jest.spyOn(console, 'warn').mockImplementation(() => {}); + + const compiler = getCompiler('./empty.js', { + import: false, + url: false, + }); + const stats = await compile(compiler); + + // eslint-disable-next-line no-console + expect(console.warn).not.toHaveBeenCalledWith( + 'You did not set any plugins, parser, or stringifier. ' + + 'Right now, PostCSS does nothing. Pick plugins for your case ' + + 'on https://www.postcss.parts/ and use them in postcss.config.js.' + ); + expect(getModuleSource('./empty.css', stats)).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); }); From d779eb1982b9feb27c37cda0f7874df02ab5e507 Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Thu, 24 Sep 2020 14:53:46 +0300 Subject: [PATCH 07/15] feat: escape getLocalIdent by default (#1196) BREAKING CHANGE: returned value from the `getLocalIdent` escapes by default, the `exportName` value is always unescaped --- src/utils.js | 65 +++++++++++-------- .../__snapshots__/modules-option.test.js.snap | 58 ++++++++++++++++- test/fixtures/modules/issue-966/issue-966.css | 19 ++++++ test/fixtures/modules/issue-966/issue-966.js | 5 ++ test/modules-option.test.js | 39 +++++++++++ 5 files changed, 157 insertions(+), 29 deletions(-) create mode 100644 test/fixtures/modules/issue-966/issue-966.css create mode 100644 test/fixtures/modules/issue-966/issue-966.js diff --git a/src/utils.js b/src/utils.js index 218c0b73..dd40967a 100644 --- a/src/utils.js +++ b/src/utils.js @@ -49,6 +49,18 @@ const filenameReservedRegex = /[<>:"/\\|?*]/g; // eslint-disable-next-line no-control-regex const reControlChars = /[\u0000-\u001f\u0080-\u009f]/g; +function escapeLocalident(localident) { + return cssesc( + localident + // For `[hash]` placeholder + .replace(/^((-?[0-9])|--)/, '_$1') + .replace(filenameReservedRegex, '-') + .replace(reControlChars, '-') + .replace(/\./g, '-'), + { isIdentifier: true } + ); +} + function defaultGetLocalIdent( loaderContext, localIdentName, @@ -60,19 +72,9 @@ function defaultGetLocalIdent( const request = normalizePath(path.relative(context, resourcePath)); // eslint-disable-next-line no-param-reassign - options.content = `${hashPrefix + request}\x00${unescape(localName)}`; + options.content = `${hashPrefix + request}\x00${localName}`; - // Using `[path]` placeholder outputs `/` we need escape their - // Also directories can contains invalid characters for css we need escape their too - return cssesc( - interpolateName(loaderContext, localIdentName, options) - // For `[hash]` placeholder - .replace(/^((-?[0-9])|--)/, '_$1') - .replace(filenameReservedRegex, '-') - .replace(reControlChars, '-') - .replace(/\./g, '-'), - { isIdentifier: true } - ).replace(/\\\[local\\]/gi, localName); + return interpolateName(loaderContext, localIdentName, options); } function normalizeUrl(url, isStringValue) { @@ -143,7 +145,8 @@ function getModulesOptions(rawOptions, loaderContext) { localIdentHashPrefix: '', // eslint-disable-next-line no-undefined localIdentRegExp: undefined, - getLocalIdent: defaultGetLocalIdent, + // eslint-disable-next-line no-undefined + getLocalIdent: undefined, namedExport: false, exportLocalsConvention: 'asIs', exportOnlyLocals: false, @@ -281,32 +284,42 @@ function getModulesPlugins(options, loaderContext) { extractImports(), modulesScope({ generateScopedName(exportName) { - let localIdent = getLocalIdent( - loaderContext, - localIdentName, - exportName, - { - context: localIdentContext, - hashPrefix: localIdentHashPrefix, - regExp: localIdentRegExp, - } - ); + let localIdent; + + if (typeof getLocalIdent !== 'undefined') { + localIdent = getLocalIdent( + loaderContext, + localIdentName, + unescape(exportName), + { + context: localIdentContext, + hashPrefix: localIdentHashPrefix, + regExp: localIdentRegExp, + } + ); + } // A null/undefined value signals that we should invoke the default // getLocalIdent method. - if (localIdent == null) { + if (typeof localIdent === 'undefined' || localIdent === null) { localIdent = defaultGetLocalIdent( loaderContext, localIdentName, - exportName, + unescape(exportName), { context: localIdentContext, hashPrefix: localIdentHashPrefix, regExp: localIdentRegExp, } ); + + return escapeLocalident(localIdent).replace( + /\\\[local\\]/gi, + exportName + ); } - return localIdent; + + return escapeLocalident(localIdent); }, exportGlobals: options.modules.exportGlobals, }), diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index da337d58..c50f1321 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -137,6 +137,58 @@ Array [ exports[`"modules" option issue #861: warnings 1`] = `Array []`; +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: errors 1`] = `Array []`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\"._7-foo-class {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\--bar-class {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\--baz-class {\\\\n color: red;\\\\n}\\\\n\\\\n.fooBaz-class-continuation {\\\\n color: red;\\\\n}\\\\n\\\\n.some.class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo-class\\": \\"_7-foo-class\\", + \\"bar-class\\": \\"--bar-class\\", + \\"baz-class\\": \\"--baz-class\\", + \\"fooBaz-class\\": \\"fooBaz-class-continuation\\", + \\"some\\": \\"some\\", + \\"class\\": \\"class\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: result 1`] = ` +Array [ + Array [ + "./modules/issue-966/issue-966.css", + "._7-foo-class { + color: red; +} + +.\\\\--bar-class { + color: red; +} + +.\\\\--baz-class { + color: red; +} + +.fooBaz-class-continuation { + color: red; +} + +.some.class { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: warnings 1`] = `Array []`; + exports[`"modules" option issue #966: errors 1`] = `Array []`; exports[`"modules" option issue #966: module 1`] = ` @@ -144,10 +196,10 @@ exports[`"modules" option issue #966: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); // Module -___CSS_LOADER_EXPORT___.push([module.id, \\".button.hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \\".button-hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports ___CSS_LOADER_EXPORT___.locals = { - \\"button\\": \\"button.hey\\" + \\"button\\": \\"button-hey\\" }; export default ___CSS_LOADER_EXPORT___; " @@ -157,7 +209,7 @@ exports[`"modules" option issue #966: result 1`] = ` Array [ Array [ "./modules/issue-966/button.css", - ".button.hey { + ".button-hey { color: red; } ", diff --git a/test/fixtures/modules/issue-966/issue-966.css b/test/fixtures/modules/issue-966/issue-966.css new file mode 100644 index 00000000..a27ca561 --- /dev/null +++ b/test/fixtures/modules/issue-966/issue-966.css @@ -0,0 +1,19 @@ +.foo-class { + color: red; +} + +.bar-class { + color: red; +} + +.baz-class { + color: red; +} + +.fooBaz-class { + color: red; +} + +.some.class { + color: red; +} diff --git a/test/fixtures/modules/issue-966/issue-966.js b/test/fixtures/modules/issue-966/issue-966.js new file mode 100644 index 00000000..99ef679a --- /dev/null +++ b/test/fixtures/modules/issue-966/issue-966.js @@ -0,0 +1,5 @@ +import css from './issue-966.css'; + +__export__ = css; + +export default css; diff --git a/test/modules-option.test.js b/test/modules-option.test.js index 0a7f4b02..06b7cd27 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -491,6 +491,45 @@ describe('"modules" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it("issue #966 - values in selectors aren't escaped properly", async () => { + const compiler = getCompiler('./modules/issue-966/issue-966.js', { + modules: { + getLocalIdent: (loaderContext, localIdentName, localName) => { + if (localName === 'foo-class') { + return `7-${localName}`; + } + + if (localName === 'bar-class') { + return `>-${localName}`; + } + + if (localName === 'baz-class') { + return `\u0000-${localName}`; + } + + if (localName === 'fooBaz-class') { + return `${localName}.continuation`; + } + + return null; + }, + localIdentName: '[local]', + }, + }); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/issue-966/issue-966.css', stats) + ).toMatchSnapshot('module'); + + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + it('issue #967', async () => { const compiler = getCompiler('./modules/issue-967/path-placeholder.js', { modules: { From 9f974be81f5942d3afaf783529677bd541952fa3 Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Thu, 24 Sep 2020 21:02:58 +0300 Subject: [PATCH 08/15] feat: reduce runtime BREAKING CHANGE: runtime doesn't contain source maps function without `sourceMap: true` --- src/index.js | 10 + src/runtime/api.js | 34 +- src/runtime/cssWithMappingToString.js | 20 + src/utils.js | 7 +- .../esModule-option.test.js.snap | 12 +- test/__snapshots__/import-option.test.js.snap | 22 +- .../importLoaders-option.test.js.snap | 12 +- test/__snapshots__/loader.test.js.snap | 14 +- .../__snapshots__/modules-option.test.js.snap | 534 +++++++++--------- .../sourceMap-option.test.js.snap | 41 +- test/__snapshots__/url-option.test.js.snap | 12 +- test/runtime/api.test.js | 38 +- test/sourceMap-option.test.js | 4 +- 13 files changed, 397 insertions(+), 363 deletions(-) create mode 100644 src/runtime/cssWithMappingToString.js diff --git a/src/index.js b/src/index.js index b77c9c50..db5e1a23 100644 --- a/src/index.js +++ b/src/index.js @@ -197,6 +197,16 @@ export default async function loader(content, map, meta) { importName: '___CSS_LOADER_API_IMPORT___', url: stringifyRequest(this, require.resolve('./runtime/api')), }); + + if (options.sourceMap) { + imports.unshift({ + importName: '___CSS_LOADER_API_SOURCEMAP_IMPORT___', + url: stringifyRequest( + this, + require.resolve('./runtime/cssWithMappingToString') + ), + }); + } } const importCode = getImportCode(imports, options); diff --git a/src/runtime/api.js b/src/runtime/api.js index 463fdfb0..6afc3f74 100644 --- a/src/runtime/api.js +++ b/src/runtime/api.js @@ -4,13 +4,13 @@ */ // css base code, injected by the css-loader // eslint-disable-next-line func-names -module.exports = function (useSourceMap) { +module.exports = function (cssWithMappingToString) { const list = []; // return the list of modules as css string list.toString = function toString() { return this.map((item) => { - const content = cssWithMappingToString(item, useSourceMap); + const content = cssWithMappingToString(item); if (item[2]) { return `@media ${item[2]} {${content}}`; @@ -63,33 +63,3 @@ module.exports = function (useSourceMap) { return list; }; - -function cssWithMappingToString(item, useSourceMap) { - const content = item[1] || ''; - // eslint-disable-next-line prefer-destructuring - const cssMapping = item[3]; - - if (!cssMapping) { - return content; - } - - if (useSourceMap && typeof btoa === 'function') { - const sourceMapping = toComment(cssMapping); - const sourceURLs = cssMapping.sources.map( - (source) => `/*# sourceURL=${cssMapping.sourceRoot || ''}${source} */` - ); - - return [content].concat(sourceURLs).concat([sourceMapping]).join('\n'); - } - - return [content].join('\n'); -} - -// Adapted from convert-source-map (MIT) -function toComment(sourceMap) { - // eslint-disable-next-line no-undef - const base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))); - const data = `sourceMappingURL=data:application/json;charset=utf-8;base64,${base64}`; - - return `/*# ${data} */`; -} diff --git a/src/runtime/cssWithMappingToString.js b/src/runtime/cssWithMappingToString.js new file mode 100644 index 00000000..4c8181e9 --- /dev/null +++ b/src/runtime/cssWithMappingToString.js @@ -0,0 +1,20 @@ +module.exports = function cssWithMappingToString(item) { + const [, content, , cssMapping] = item; + + if (typeof btoa === 'function') { + // eslint-disable-next-line no-undef + const base64 = btoa( + unescape(encodeURIComponent(JSON.stringify(cssMapping))) + ); + const data = `sourceMappingURL=data:application/json;charset=utf-8;base64,${base64}`; + const sourceMapping = `/*# ${data} */`; + + const sourceURLs = cssMapping.sources.map( + (source) => `/*# sourceURL=${cssMapping.sourceRoot || ''}${source} */` + ); + + return [content].concat(sourceURLs).concat([sourceMapping]).join('\n'); + } + + return [content].join('\n'); +}; diff --git a/src/utils.js b/src/utils.js index dd40967a..c3990f10 100644 --- a/src/utils.js +++ b/src/utils.js @@ -484,7 +484,12 @@ function getModuleCode(result, api, replacements, options, loaderContext) { : ''; let code = JSON.stringify(result.css); - let beforeCode = `var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(${options.sourceMap});\n`; + + let beforeCode = `var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(${ + options.sourceMap + ? '___CSS_LOADER_API_SOURCEMAP_IMPORT___' + : 'function(i){return i[1]}' + });\n`; for (const item of api) { const { url, media, dedupe } = item; diff --git a/test/__snapshots__/esModule-option.test.js.snap b/test/__snapshots__/esModule-option.test.js.snap index f6efb7f9..4c58bd9b 100644 --- a/test/__snapshots__/esModule-option.test.js.snap +++ b/test/__snapshots__/esModule-option.test.js.snap @@ -8,7 +8,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -54,7 +54,7 @@ var ___CSS_LOADER_API_IMPORT___ = require(\\"../../../src/runtime/api.js\\"); var ___CSS_LOADER_AT_RULE_IMPORT_0___ = require(\\"-!../../../src/index.js??[ident]!./imported.css\\"); var ___CSS_LOADER_GET_URL_IMPORT___ = require(\\"../../../src/runtime/getUrl.js\\"); var ___CSS_LOADER_URL_IMPORT_0___ = require(\\"./img.png\\"); -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -100,7 +100,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -146,7 +146,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -195,7 +195,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -244,7 +244,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module diff --git a/test/__snapshots__/import-option.test.js.snap b/test/__snapshots__/import-option.test.js.snap index fcb3af5b..9103fd14 100644 --- a/test/__snapshots__/import-option.test.js.snap +++ b/test/__snapshots__/import-option.test.js.snap @@ -9,7 +9,7 @@ import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./order-2.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_2___ from \\"-!../../../src/index.js??[ident]!./order-3.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_3___ from \\"-!../../../src/index.js??[ident]!./order-4.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.push([module.id, \\"@import url(http://example.com/style.css);\\"]); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); @@ -158,7 +158,7 @@ exports[`"import" option should resolve "file" protocol: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./test.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); @@ -193,7 +193,7 @@ exports[`"import" option should resolve absolute path: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./test.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); @@ -228,7 +228,7 @@ exports[`"import" option should resolve server-relative url relative rootContext "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./test.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module @@ -275,7 +275,7 @@ exports[`"import" option should respect conditionNames: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./node_modules/package-with-exports/style.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); @@ -310,7 +310,7 @@ exports[`"import" option should respect style field in package.json: errors 1`] exports[`"import" option should respect style field in package.json: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".test {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -356,7 +356,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./test.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./issue-683.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_2___ from \\"-!../../../src/index.js??[ident]!./node_modules/package/tilde.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_2___); @@ -436,7 +436,7 @@ import ___CSS_LOADER_AT_RULE_IMPORT_17___ from \\"-!../../../src/index.js??[iden import ___CSS_LOADER_AT_RULE_IMPORT_18___ from \\"-!../../../src/index.js??[ident]!./something.css?foo=2&bar=1\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"screen and (orientation:landscape)\\"); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___, \\"(min-width: 100px)\\"); ___CSS_LOADER_EXPORT___.push([module.id, \\"@import url(http://example.com/style.css);\\"]); @@ -960,7 +960,7 @@ import ___CSS_LOADER_AT_RULE_IMPORT_23___ from \\"-!../../../src/index.js??[iden import ___CSS_LOADER_AT_RULE_IMPORT_24___ from \\"-!../../../src/index.js??[ident]!./something.css?foo=2&bar=1\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); @@ -1791,7 +1791,7 @@ exports[`"import" option should work with a value equal to "false": module 1`] = import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@import url(test.css);\\\\n@import url('test.css');\\\\n@import url(\\\\\\"test.css\\\\\\");\\\\n@IMPORT url(test.css);\\\\n@import URL(test.css);\\\\n@import url(test.css );\\\\n@import url( test.css);\\\\n@import url( test.css );\\\\n@import url(\\\\n test.css\\\\n);\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import \\\\\\"test.css\\\\\\";\\\\n@import 'test.css';\\\\n@import '';\\\\n@import \\\\\\"\\\\\\";\\\\n@import \\\\\\" \\\\\\";\\\\n@import \\\\\\"\\\\n\\\\\\";\\\\n@import url();\\\\n@import url('');\\\\n@import url(\\\\\\"\\\\\\");\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(test.css) SCREEN AND (ORIENTATION: LANDSCAPE);\\\\n@import url(test.css)screen and (orientation:landscape);\\\\n@import url(test.css) screen and (orientation:landscape);\\\\n@import url(test-media.css) screen and (orientation:landscape);\\\\n@import url(test-other.css) (min-width: 100px);\\\\n@import url(http://example.com/style.css);\\\\n@import url(http://example.com/style.css);\\\\n@import url(http://example.com/style.css#hash);\\\\n@import url(http://example.com/style.css?#hash);\\\\n@import url(http://example.com/style.css?foo=bar#hash);\\\\n@import url(http://example.com/other-style.css) screen and (orientation:landscape);\\\\n@import url(http://example.com/other-style.css) screen and (orientation:landscape);\\\\n@import url(\\\\\\"//example.com/style.css\\\\\\");\\\\n@import url(~package/test.css);\\\\n@import ;\\\\n@import foo-bar;\\\\n@import-normalize;\\\\n@import url('http://') :root {}\\\\n@import url('query.css?foo=1&bar=1');\\\\n@import url('other-query.css?foo=1&bar=1#hash');\\\\n@import url('other-query.css?foo=1&bar=1#hash') screen and (orientation:landscape);\\\\n@import url('https://fonts.googleapis.com/css?family=Roboto');\\\\n@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC');\\\\n@import url('https://fonts.googleapis.com/css?family=Noto+Sans+TC|Roboto');\\\\n\\\\n.class {\\\\n a: b c d;\\\\n}\\\\n\\\\n.foo {\\\\n @import 'path.css';\\\\n}\\\\n\\\\n@import url('./relative.css');\\\\n@import url('../import/top-relative.css');\\\\n@import url(~package/tilde.css);\\\\n@import url(~aliasesImport/alias.css);\\\\n@import url('./url.css');\\\\n\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n@import url(./test.css);\\\\n\\\\n@import './te\\\\\\\\\\\\nst.css';\\\\n@import './te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css';\\\\n@import url('./te\\\\\\\\\\\\nst.css');\\\\n@import url('./te\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\nst.css');\\\\n\\\\n@import \\\\\\"./te'st.css\\\\\\";\\\\n@import url(\\\\\\"./te'st.css\\\\\\");\\\\n@import './te\\\\\\\\'st.css';\\\\n@import url('./te\\\\\\\\'st.css');\\\\n@import './test test.css';\\\\n@import url('./test test.css');\\\\n@import './test\\\\\\\\ test.css';\\\\n@import url('./test\\\\\\\\ test.css');\\\\n@import './test%20test.css';\\\\n@import url('./test%20test.css');\\\\n@import './\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./\\\\\\\\74\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import './t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css';\\\\n@import url('./t\\\\\\\\65\\\\\\\\73\\\\\\\\74.css');\\\\n@import url(./test\\\\\\\\ test.css);\\\\n@import url(./t\\\\\\\\65st%20test.css);\\\\n@import url('./t\\\\\\\\65st%20test.css');\\\\n@import url(\\\\\\"./t\\\\\\\\65st%20test.css\\\\\\");\\\\n@import \\\\\\"./t\\\\\\\\65st%20test.css\\\\\\";\\\\n@import './t\\\\\\\\65st%20test.css';\\\\n@import url( test.css );\\\\n@import nourl(test.css);\\\\n@import '\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\n';\\\\n@import url('!!../../helpers/string-loader.js?esModule=false!~package/tilde.css');\\\\n@import url(test.css?foo=bar);\\\\n@import url(test.css?foo=bar#hash);\\\\n@import url(test.css?#hash);\\\\n@import \\\\\\"test.css\\\\\\" supports(display: flex);\\\\n@import \\\\\\"test.css\\\\\\" supports(display: flex) screen and (orientation:landscape);\\\\n\\\\n/* Should be one import and two css modules */\\\\n\\\\n@import url('something.css');\\\\n@import url('something.css');\\\\n\\\\n/* Should be one import and two css modules */\\\\n\\\\n@import url('something.css?foo=bar');\\\\n@import url('something.css?foo=bar');\\\\n\\\\n/* Should be one import and two css modules */\\\\n\\\\n@import url('something.css?foo=bar#hash');\\\\n@import url('something.css?foo=bar#hash');\\\\n\\\\n/* Should be two import and two css modules */\\\\n\\\\n@import url('something.css?foo=bar');\\\\n@import url('something.css?bar=foo');\\\\n\\\\n/* Should be two import and two css modules */\\\\n\\\\n@import url('something.css?foo=bar#one');\\\\n@import url('something.css?foo=bar#two');\\\\n\\\\n/* Should be two import and two css modules */\\\\n\\\\n@import url('something.css?foo=1&bar=2');\\\\n@import url('something.css?foo=2&bar=1');\\\\n\\", \\"\\"]); @@ -1989,7 +1989,7 @@ import ___CSS_LOADER_AT_RULE_IMPORT_23___ from \\"-!../../../src/index.js??[iden import ___CSS_LOADER_AT_RULE_IMPORT_24___ from \\"-!../../../src/index.js??[ident]!./something.css?foo=2&bar=1\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); diff --git a/test/__snapshots__/importLoaders-option.test.js.snap b/test/__snapshots__/importLoaders-option.test.js.snap index 062c79fb..94b5120a 100644 --- a/test/__snapshots__/importLoaders-option.test.js.snap +++ b/test/__snapshots__/importLoaders-option.test.js.snap @@ -7,7 +7,7 @@ exports[`"importLoaders" option should work when not specified: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module @@ -58,7 +58,7 @@ exports[`"importLoaders" option should work with a value equal to ""1"" ("postcs import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module @@ -109,7 +109,7 @@ exports[`"importLoaders" option should work with a value equal to "0" (\`postcss import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module @@ -160,7 +160,7 @@ exports[`"importLoaders" option should work with a value equal to "1" ("postcss- import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module @@ -211,7 +211,7 @@ exports[`"importLoaders" option should work with a value equal to "1" (no loader import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module @@ -262,7 +262,7 @@ exports[`"importLoaders" option should work with a value equal to "2" ("postcss- import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_AT_RULE_IMPORT_1___ from \\"-!../../../src/index.js??[ident]!./other-imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_1___); // Module diff --git a/test/__snapshots__/loader.test.js.snap b/test/__snapshots__/loader.test.js.snap index 9490502b..1fab6764 100644 --- a/test/__snapshots__/loader.test.js.snap +++ b/test/__snapshots__/loader.test.js.snap @@ -5,7 +5,7 @@ exports[`loader issue #1033 (2): errors 1`] = `Array []`; exports[`loader issue #1033 (2): module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); // Exports @@ -47,7 +47,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img1x.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img2x.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); // Module @@ -177,7 +177,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../src/index.js!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./url/img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -347,7 +347,7 @@ exports[`loader should work with "sass-loader": errors 1`] = `Array []`; exports[`loader should work with "sass-loader": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 100% Helvetica, sans-serif;\\\\n color: #333;\\\\n}\\", \\"\\"]); // Exports @@ -387,7 +387,7 @@ exports[`loader should work with empty css: errors 1`] = `Array []`; exports[`loader should work with empty css: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); // Exports @@ -415,7 +415,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./url/img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -675,7 +675,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../src/index.js??[ident]!./imported.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./url/img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index c50f1321..16f2cdeb 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -6,7 +6,7 @@ exports[`"modules" option issue #286: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"./dep.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".b--main { }\\\\n\\", \\"\\"]); @@ -43,7 +43,7 @@ exports[`"modules" option issue #636: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./foo.scss\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".prefix-bar {\\\\n}\\", \\"\\"]); @@ -82,7 +82,7 @@ exports[`"modules" option issue #861: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./node_modules/@localpackage/color.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??[ident]!./node_modules/@localpackage/style.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -142,7 +142,7 @@ exports[`"modules" option issue #966 - values in selectors aren't escaped proper exports[`"modules" option issue #966 - values in selectors aren't escaped properly: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._7-foo-class {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\--bar-class {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\--baz-class {\\\\n color: red;\\\\n}\\\\n\\\\n.fooBaz-class-continuation {\\\\n color: red;\\\\n}\\\\n\\\\n.some.class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -194,7 +194,7 @@ exports[`"modules" option issue #966: errors 1`] = `Array []`; exports[`"modules" option issue #966: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".button-hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -225,7 +225,7 @@ exports[`"modules" option issue #967: errors 1`] = `Array []`; exports[`"modules" option issue #967: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: red;\\\\n}\\\\n\\\\n.modules-issue-967-path-placeholder__foo\\\\\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: blue;\\\\n}\\\\n\\\\n.modules-issue-967-path-placeholder__\\\\\\\\[\\\\\\\\/\\\\\\\\?\\\\\\\\<\\\\\\\\>\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\3A \\\\\\\\*\\\\\\\\|\\\\\\\\\\\\\\"\\\\\\\\3A \\\\\\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- {\\\\n color: yellow;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -266,7 +266,7 @@ exports[`"modules" option issue #980: errors 1`] = `Array []`; exports[`"modules" option issue #980: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".file-with-many-dots-in-name_a_3NWtD {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -297,7 +297,7 @@ exports[`"modules" option issue #995: errors 1`] = `Array []`; exports[`"modules" option issue #995: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/* class=\\\\\\"😀\\\\\\" */\\\\n.a {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.a.b {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.a .b {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.😀 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.😀.😓 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.😀 .😓 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.\\\\\\\\1F600.\\\\\\\\1F613 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.\\\\\\\\1F600 .\\\\\\\\1F613 {\\\\n color: red;\\\\n}\\\\n\\\\n/* Local */\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" */\\\\n.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.\\\\\\\\1F600.\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.\\\\\\\\1F600 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .a .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .\\\\\\\\1F600 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\ndiv:not(.\\\\\\\\1F600) {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .b {\\\\n color: red;\\\\n}\\\\n\\\\n.b .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 > .\\\\\\\\1F600 > .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -429,7 +429,7 @@ options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\" exports[`"modules" option issue #1063 throw error: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".classNameLocalFile {\\\\n color: green;\\\\n}\\\\n\\\\n:global(.otherClassLocalFile) {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -440,7 +440,7 @@ export default ___CSS_LOADER_EXPORT___; exports[`"modules" option issue #1063 throw error: module 2`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".classNameGlobalFile {\\\\n color: black;\\\\n}\\\\n\\\\n:local(.otherClassGlobalFile) {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -476,7 +476,7 @@ exports[`"modules" option issue #1063: errors 1`] = `Array []`; exports[`"modules" option issue #1063: module with the \`global\` mode 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".classNameGlobalFile {\\\\n color: black;\\\\n}\\\\n\\\\n._3R0IujoYmi1IYvOTm7aj1H {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -490,7 +490,7 @@ export default ___CSS_LOADER_EXPORT___; exports[`"modules" option issue #1063: module with the \`local\` mode 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1cIyygbEsOkwSiRENx8zVU {\\\\n color: green;\\\\n}\\\\n\\\\n.otherClassLocalFile {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -504,7 +504,7 @@ export default ___CSS_LOADER_EXPORT___; exports[`"modules" option issue #1063: module with the \`pure\` mode 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".J7gDrWoVJPVJUOkhFmzq8 .OtGfkbh5uxg2vpEPy7SOS {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -544,7 +544,7 @@ exports[`"modules" option issue #1191 - fallback to default getLocalIdent: error exports[`"modules" option issue #1191 - fallback to default getLocalIdent: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".some-class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -588,7 +588,7 @@ exports[`"modules" option should avoid unnecessary "require": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./imported-simple.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".Uf0ts_XDBSnJJxTj8_Gi9 {\\\\n color: red;\\\\n}\\\\n\\\\n._29pZs19QWYaZFzehTn6_hs {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); @@ -635,7 +635,7 @@ exports[`"modules" option should dedupe same modules in one module (issue #1037) import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./buttons/primary-button.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??[ident]!./buttons/secondary-button.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -706,7 +706,7 @@ exports[`"modules" option should keep order: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./order-1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??[ident]!./order-2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -769,7 +769,7 @@ exports[`"modules" option should resolve absolute path in composes: module 1`] = "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./imported-simple.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Qa8f_r4FS0cuNEBSCJGHl { color: red; }\\", \\"\\"]); @@ -807,7 +807,7 @@ exports[`"modules" option should resolve package from node_modules with and with "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!../node_modules/test/index.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1HqHWmuBD5StTBui9tqzRJ {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"foo\\"] + \\";\\\\n background: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"bar\\"] + \\";\\\\n}\\\\n\\\\n\\", \\"\\"]); @@ -849,7 +849,7 @@ exports[`"modules" option should should work with two leading hyphens: errors 1` exports[`"modules" option should should work with two leading hyphens: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._--test {\\\\n background: red;\\\\n}\\\\n\\\\n._--_test {\\\\n background: blue;\\\\n}\\\\n\\\\n._--className {\\\\n background: red;\\\\n}\\\\n\\\\n#_--someId {\\\\n background: green;\\\\n}\\\\n\\\\n._--className ._--subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#_--someId ._--subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n._---a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n._--m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._--B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._--\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._--\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_--\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_---a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_--© {\\\\n color: black;\\\\n}\\\\n\\\\n._--♥ { background: lime; }\\\\n._--© { background: lime; }\\\\n._--“‘’” { background: lime; }\\\\n._--☺☃ { background: lime; }\\\\n._--⌘⌥ { background: lime; }\\\\n._--𝄞♪♩♫♬ { background: lime; }\\\\n._--💩 { background: lime; }\\\\n._--\\\\\\\\? { background: lime; }\\\\n._--\\\\\\\\@ { background: lime; }\\\\n._--\\\\\\\\. { background: lime; }\\\\n._--\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n._--\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n._--\\\\\\\\31 23 { background: lime; }\\\\n._--\\\\\\\\31 a2b3c { background: lime; }\\\\n._--\\\\\\\\ { background: lime; }\\\\n._--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n._--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n._--\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n._--\\\\\\\\_ { background: lime; }\\\\n._--\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n._--\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n._--foo\\\\\\\\.bar { background: lime; }\\\\n._--\\\\\\\\3A hover { background: lime; }\\\\n._--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n._--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n._--f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n._--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n._--f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n._--f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n._--f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n._--f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n._--f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n._--foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -1036,7 +1036,7 @@ exports[`"modules" option should should work with two leading underscore: errors exports[`"modules" option should should work with two leading underscore: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".__test {\\\\n background: red;\\\\n}\\\\n\\\\n.___test {\\\\n background: blue;\\\\n}\\\\n\\\\n.__className {\\\\n background: red;\\\\n}\\\\n\\\\n#__someId {\\\\n background: green;\\\\n}\\\\n\\\\n.__className .__subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#__someId .__subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.__-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.__m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.__B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.__\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#__\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#__-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#__© {\\\\n color: black;\\\\n}\\\\n\\\\n.__♥ { background: lime; }\\\\n.__© { background: lime; }\\\\n.__“‘’” { background: lime; }\\\\n.__☺☃ { background: lime; }\\\\n.__⌘⌥ { background: lime; }\\\\n.__𝄞♪♩♫♬ { background: lime; }\\\\n.__💩 { background: lime; }\\\\n.__\\\\\\\\? { background: lime; }\\\\n.__\\\\\\\\@ { background: lime; }\\\\n.__\\\\\\\\. { background: lime; }\\\\n.__\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.__\\\\\\\\31 23 { background: lime; }\\\\n.__\\\\\\\\31 a2b3c { background: lime; }\\\\n.__\\\\\\\\ { background: lime; }\\\\n.__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.__\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.__\\\\\\\\_ { background: lime; }\\\\n.__\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.__\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.__foo\\\\\\\\.bar { background: lime; }\\\\n.__\\\\\\\\3A hover { background: lime; }\\\\n.__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.__f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.__f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.__f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.__f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.__f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.__f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.__foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -1226,7 +1226,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./values.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??[ident]!./less-file.less\\"; import ___CSS_LOADER_ICSS_IMPORT_2___ from \\"-!../../../../src/index.js??[ident]!./scss-file.scss\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_2___, \\"\\", true); @@ -1319,7 +1319,7 @@ import ___CSS_LOADER_ICSS_IMPORT_7___ from \\"-!../../../../src/index.js??[ident import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./test-other.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"../../url/img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"(min-width: 100px)\\"); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); @@ -1625,7 +1625,7 @@ exports[`"modules" option should work and correctly replace escaped symbols: err exports[`"modules" option should work and correctly replace escaped symbols: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".test--2Ojp {\\\\n background: red;\\\\n}\\\\n\\\\n._test--2pZu {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--2ame {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--2SKU {\\\\n background: green;\\\\n}\\\\n\\\\n.className--2ame .subClass--2IUT {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--2SKU .subClass--2IUT {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--10bK {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--25pk {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--2aTc {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--3cIU {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--3Llv {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--2yX_ {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---3S11 {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--3eZ3 {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--TxKD { background: lime; }\\\\n.©--3eZ3 { background: lime; }\\\\n.“‘’”--f6cc { background: lime; }\\\\n.☺☃--2c3D { background: lime; }\\\\n.⌘⌥--3J3I { background: lime; }\\\\n.𝄞♪♩♫♬--sMom { background: lime; }\\\\n.💩--Q31q { background: lime; }\\\\n.\\\\\\\\?--3mhI { background: lime; }\\\\n.\\\\\\\\@--1f2I { background: lime; }\\\\n.\\\\\\\\.--3OGC { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--396- { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--3cIU { background: lime; }\\\\n.\\\\\\\\31 23--3QaX { background: lime; }\\\\n.\\\\\\\\31 a2b3c--3Llv { background: lime; }\\\\n.\\\\\\\\--2iQr { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--wY_8 { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--2fRy { background: lime; }\\\\n.\\\\\\\\#--g8wr { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--1Tef { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--3JZu { background: lime; }\\\\n.\\\\\\\\_--2Wg2 { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--3Y7c { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--2yX_ { background: lime; }\\\\n.foo\\\\\\\\.bar--2UOh { background: lime; }\\\\n.\\\\\\\\3A hover--1pVo { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--3hSa { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--1LDK { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--22wO { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--17p- { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--329E { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--1JV- { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--g73D { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--3JcD { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--2gIh { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--2M1f {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--3y6A {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--Zmhg {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--3Jov {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -1812,7 +1812,7 @@ exports[`"modules" option should work and has "undefined" context if no context exports[`"modules" option should work and has "undefined" context if no context was given: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo {\\\\n background: red;\\\\n}\\\\n\\\\n.foo {\\\\n background: blue;\\\\n}\\\\n\\\\n.foo {\\\\n background: red;\\\\n}\\\\n\\\\n#foo {\\\\n background: green;\\\\n}\\\\n\\\\n.foo .foo {\\\\n color: green;\\\\n}\\\\n\\\\n#foo .foo {\\\\n color: blue;\\\\n}\\\\n\\\\n.foo {\\\\n color: red;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.foo {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.foo {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#foo {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#foo {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#foo {\\\\n color: black;\\\\n}\\\\n\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -1999,7 +1999,7 @@ exports[`"modules" option should work and prefix leading hyphen when digit is fi exports[`"modules" option should work and prefix leading hyphen when digit is first: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._-1test {\\\\n background: red;\\\\n}\\\\n\\\\n._-1_test {\\\\n background: blue;\\\\n}\\\\n\\\\n._-1className {\\\\n background: red;\\\\n}\\\\n\\\\n#_-1someId {\\\\n background: green;\\\\n}\\\\n\\\\n._-1className ._-1subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#_-1someId ._-1subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n._-1-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n._-1m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._-1B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._-1\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._-1\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_-1\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_-1-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_-1© {\\\\n color: black;\\\\n}\\\\n\\\\n._-1♥ { background: lime; }\\\\n._-1© { background: lime; }\\\\n._-1“‘’” { background: lime; }\\\\n._-1☺☃ { background: lime; }\\\\n._-1⌘⌥ { background: lime; }\\\\n._-1𝄞♪♩♫♬ { background: lime; }\\\\n._-1💩 { background: lime; }\\\\n._-1\\\\\\\\? { background: lime; }\\\\n._-1\\\\\\\\@ { background: lime; }\\\\n._-1\\\\\\\\. { background: lime; }\\\\n._-1\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n._-1\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n._-1\\\\\\\\31 23 { background: lime; }\\\\n._-1\\\\\\\\31 a2b3c { background: lime; }\\\\n._-1\\\\\\\\ { background: lime; }\\\\n._-1\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n._-1\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n._-1\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n._-1\\\\\\\\_ { background: lime; }\\\\n._-1\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n._-1\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n._-1foo\\\\\\\\.bar { background: lime; }\\\\n._-1\\\\\\\\3A hover { background: lime; }\\\\n._-1\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n._-1\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n._-1f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n._-1f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n._-1f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n._-1f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n._-1f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n._-1f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n._-1f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n._-1foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._-1foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2186,7 +2186,7 @@ exports[`"modules" option should work and respect the "context" option: errors 1 exports[`"modules" option should work and respect the "context" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3THChI84 {\\\\n background: red;\\\\n}\\\\n\\\\n._1Ic0T6E2 {\\\\n background: blue;\\\\n}\\\\n\\\\n._1cIQwwGF {\\\\n background: red;\\\\n}\\\\n\\\\n#_2KQxkXGn {\\\\n background: green;\\\\n}\\\\n\\\\n._1cIQwwGF ._1SaZq9UR {\\\\n color: green;\\\\n}\\\\n\\\\n#_2KQxkXGn ._1SaZq9UR {\\\\n color: blue;\\\\n}\\\\n\\\\n._3_8fOv5C {\\\\n color: red;\\\\n}\\\\n\\\\n.oSCIyXHs {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n._1YhNoA0P {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n._1OM1XhAs {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n._1bpu3ISw {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#_1CCtldT2 {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_2TwUosNR {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#_2DQauKX- {\\\\n color: black;\\\\n}\\\\n\\\\n._1OsGHnKz { background: lime; }\\\\n._2DQauKX- { background: lime; }\\\\n._2KvI5OuP { background: lime; }\\\\n._2yQjBRc3 { background: lime; }\\\\n._3fcdfPoZ { background: lime; }\\\\n._36_8UGtJ { background: lime; }\\\\n.uHOC9vIJ { background: lime; }\\\\n._3yhO8sbF { background: lime; }\\\\n._2FM4HzQ0 { background: lime; }\\\\n._3XwjsUQg { background: lime; }\\\\n._3RekpnZr { background: lime; }\\\\n._1OM1XhAs { background: lime; }\\\\n._3rkg9Zga { background: lime; }\\\\n._1bpu3ISw { background: lime; }\\\\n._2NpJOkGO { background: lime; }\\\\n._3rLnDN1Z { background: lime; }\\\\n.fBy3xycY { background: lime; }\\\\n._1mZzxf-Y { background: lime; }\\\\n._31Eihfoq { background: lime; }\\\\n._3aQjUey8 { background: lime; }\\\\n.Fi_vbOb0 { background: lime; }\\\\n._2PPE1yBA { background: lime; }\\\\n._1CCtldT2 { background: lime; }\\\\n._1CwcQl0I { background: lime; }\\\\n._1wJ1HEuW { background: lime; }\\\\n._2bgUHCtB { background: lime; }\\\\n._2kDs761Y { background: lime; }\\\\n.kDF4zPFr { background: lime; }\\\\n._11wgSOLK { background: lime; }\\\\n._3SaQaoVD { background: lime; }\\\\n._3WN_yiXA { background: lime; }\\\\n.uiCGuCDO { background: lime; }\\\\n._1Wue4zTM { background: lime; }\\\\n._3x4WJytB { background: lime; }\\\\n\\\\n._3S7V-jWX {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._3mkt5Iq- {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._2x1dgPlv {\\\\n background: hotpink;\\\\n}\\\\n\\\\n._2a8NOF62 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2490,7 +2490,7 @@ exports[`"modules" option should work and respect the "getLocalIdent" option: er exports[`"modules" option should work and respect the "getLocalIdent" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo {\\\\n background: red;\\\\n}\\\\n\\\\n.foo {\\\\n background: blue;\\\\n}\\\\n\\\\n.foo {\\\\n background: red;\\\\n}\\\\n\\\\n#foo {\\\\n background: green;\\\\n}\\\\n\\\\n.foo .foo {\\\\n color: green;\\\\n}\\\\n\\\\n#foo .foo {\\\\n color: blue;\\\\n}\\\\n\\\\n.foo {\\\\n color: red;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.foo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.foo {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.foo {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#foo {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#foo {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#foo {\\\\n color: black;\\\\n}\\\\n\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n.foo { background: lime; }\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2677,7 +2677,7 @@ exports[`"modules" option should work and respect the "hashPrefix" option: error exports[`"modules" option should work and respect the "hashPrefix" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".test--b41321249ebb0685e6618911156e3110 {\\\\n background: red;\\\\n}\\\\n\\\\n._test--e605d9d2b9f8d108a3bc1e3815bc5742 {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--22bb9d8df40e3da04687c7b7a35cee6c {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--8c0f0ebc91d4fb36eb39c7b6ff7dd5b3 {\\\\n background: green;\\\\n}\\\\n\\\\n.className--22bb9d8df40e3da04687c7b7a35cee6c .subClass--f26ced8fae092bbf6c32c0755b4b2689 {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--8c0f0ebc91d4fb36eb39c7b6ff7dd5b3 .subClass--f26ced8fae092bbf6c32c0755b4b2689 {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--343ba76509d402297336aa3ccd13f346 {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--158b897c83b122dd76838523634e11b7 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--dec830b310ac5c6931031f5077fd515f {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--6d8fd179dc072fe27c949b1fd22eda29 {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--0db261be3609287250bfbcbc24d1fc95 {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--bbd4261c5829e34c0c3185ef34318fd5 {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---95878fa86c34e277bf41bdd102e87a5a {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--20a969c38eb11e123e2bfc547bdc5e08 {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--f3cf6aeaca5cf1740681d26c65f0ec65 { background: lime; }\\\\n.©--20a969c38eb11e123e2bfc547bdc5e08 { background: lime; }\\\\n.“‘’”--a3778ef4d4572ec12c922b10b7512025 { background: lime; }\\\\n.☺☃--3ed5e5b440ef4083dbf310b404b800ed { background: lime; }\\\\n.⌘⌥--7af7e8771036a97e9167554027da67e7 { background: lime; }\\\\n.𝄞♪♩♫♬--b6c998ac9c840d38186128795cfd45c9 { background: lime; }\\\\n.💩--cd06cdeb5495e92691f624dd75e3a38e { background: lime; }\\\\n.\\\\\\\\?--ba4cda6564fd664118a1b291a5eff0d7 { background: lime; }\\\\n.\\\\\\\\@--0c1336757223ea7e8a2972e22c471795 { background: lime; }\\\\n.\\\\\\\\.--4385e8c15fa5c58ca9bbc1b4ad166f56 { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--8943cc547b2d37b17f21e702ab3f99ba { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--6d8fd179dc072fe27c949b1fd22eda29 { background: lime; }\\\\n.\\\\\\\\31 23--1f55ef8239fee16777731cf45fa529b8 { background: lime; }\\\\n.\\\\\\\\31 a2b3c--0db261be3609287250bfbcbc24d1fc95 { background: lime; }\\\\n.\\\\\\\\--d2e7501107d4092029d4db45e8ae9e72 { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--a80379f802d9488b6714fd98930aa1ba { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--8ea662cb37796e437224e3ce0ea5314e { background: lime; }\\\\n.\\\\\\\\#--a343f54935572672cb08973a510e4b2e { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--4bbe051c6da4e2351b9fbbd221787752 { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--f565f781d2204a02f13c1aa1b7353cfa { background: lime; }\\\\n.\\\\\\\\_--b8e05650bf8b01093e4a07aab4788d2f { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--bbe33250951aae8c915a981318ab4a7a { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--bbd4261c5829e34c0c3185ef34318fd5 { background: lime; }\\\\n.foo\\\\\\\\.bar--0551f095c83cc1760d6fb7744921345f { background: lime; }\\\\n.\\\\\\\\3A hover--b6212951efdcca7b9aceb46749f23bcd { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--7bc9104f0ba7a97d19e5211e52743e40 { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--999e975b969750094580fc2015bd6840 { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--4afed9bcde7e2902a43566ee6b9ce203 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--f817fb0fdeb8ab9770a97595177ec49f { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--9ed47d92adad9861729359a6a55c7fae { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--aad099478379012e2b7fd745e46719df { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--ce931aafc17a7d70c933153c66801161 { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--316f0e2fe35eb8a83f4d081bf17affce { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--89904935c50f3d0737ac0cd81e50193e { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--90160e88d07232be7a64629760892d77 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--5697404c682c28f24c0ff83947dc5fd7 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--a8c3f89a8e8c169e02875e1211c99fb0 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--2ae3a61419e61dda045a78f0e0358c93 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2864,7 +2864,7 @@ exports[`"modules" option should work and respect the "localConvention" option w exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Q1V4VOWJJw_SluZvvIlhU {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gHYo9kyEfgQSONFjm5nvh {\\\\n color: blue;\\\\n}\\\\n\\\\n._2jczkRmOmQX2P5z27ZjpPQ {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3VtSmmeR_mxHj2SfhVM4Hm {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2916,7 +2916,7 @@ exports[`"modules" option should work and respect the "localConvention" option w exports[`"modules" option should work and respect the "localConvention" option with the "camelCase" value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Q1V4VOWJJw_SluZvvIlhU {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gHYo9kyEfgQSONFjm5nvh {\\\\n color: blue;\\\\n}\\\\n\\\\n._2jczkRmOmQX2P5z27ZjpPQ {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3VtSmmeR_mxHj2SfhVM4Hm {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -2972,7 +2972,7 @@ exports[`"modules" option should work and respect the "localConvention" option w exports[`"modules" option should work and respect the "localConvention" option with the "camelCaseOnly" value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Q1V4VOWJJw_SluZvvIlhU {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gHYo9kyEfgQSONFjm5nvh {\\\\n color: blue;\\\\n}\\\\n\\\\n._2jczkRmOmQX2P5z27ZjpPQ {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3VtSmmeR_mxHj2SfhVM4Hm {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3024,7 +3024,7 @@ exports[`"modules" option should work and respect the "localConvention" option w exports[`"modules" option should work and respect the "localConvention" option with the "dashes" value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Q1V4VOWJJw_SluZvvIlhU {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gHYo9kyEfgQSONFjm5nvh {\\\\n color: blue;\\\\n}\\\\n\\\\n._2jczkRmOmQX2P5z27ZjpPQ {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3VtSmmeR_mxHj2SfhVM4Hm {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3079,7 +3079,7 @@ exports[`"modules" option should work and respect the "localConvention" option w exports[`"modules" option should work and respect the "localConvention" option with the "dashesOnly" value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Q1V4VOWJJw_SluZvvIlhU {\\\\n color: blue;\\\\n}\\\\n\\\\n._3gHYo9kyEfgQSONFjm5nvh {\\\\n color: blue;\\\\n}\\\\n\\\\n._2jczkRmOmQX2P5z27ZjpPQ {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3VtSmmeR_mxHj2SfhVM4Hm {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3131,7 +3131,7 @@ exports[`"modules" option should work and respect the "localIdentName" option: e exports[`"modules" option should work and respect the "localIdentName" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".localIdentName--test--3THCh {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName--_test--1Ic0T {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName--className--1cIQw {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName--someId--2KQxk {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName--className--1cIQw .localIdentName--subClass--1SaZq {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName--someId--2KQxk .localIdentName--subClass--1SaZq {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName---a0-34a___f--3_8fO {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName--m_x_\\\\\\\\@--oSCIy {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName--B\\\\\\\\&W\\\\\\\\?--1YhNo {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--1OM1X {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName--\\\\\\\\31 a2b3c--1bpu3 {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName--\\\\\\\\#fake-id--1CCtl {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName---a-b-c---2TwUo {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName--©--2DQau {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName--♥--1OsGH { background: lime; }\\\\n.localIdentName--©--2DQau { background: lime; }\\\\n.localIdentName--“‘’”--2KvI5 { background: lime; }\\\\n.localIdentName--☺☃--2yQjB { background: lime; }\\\\n.localIdentName--⌘⌥--3fcdf { background: lime; }\\\\n.localIdentName--𝄞♪♩♫♬--36_8U { background: lime; }\\\\n.localIdentName--💩--uHOC9 { background: lime; }\\\\n.localIdentName--\\\\\\\\?--3yhO8 { background: lime; }\\\\n.localIdentName--\\\\\\\\@--2FM4H { background: lime; }\\\\n.localIdentName--\\\\\\\\.--3Xwjs { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\)--3Rekp { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--1OM1X { background: lime; }\\\\n.localIdentName--\\\\\\\\31 23--3rkg9 { background: lime; }\\\\n.localIdentName--\\\\\\\\31 a2b3c--1bpu3 { background: lime; }\\\\n.localIdentName--\\\\\\\\--2NpJO { background: lime; }\\\\n.localIdentName--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--3rLnD { background: lime; }\\\\n.localIdentName--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--fBy3x { background: lime; }\\\\n.localIdentName--\\\\\\\\#--1mZzx { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\#--31Eih { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--3aQjU { background: lime; }\\\\n.localIdentName--\\\\\\\\_--Fi_vb { background: lime; }\\\\n.localIdentName--\\\\\\\\{\\\\\\\\}--2PPE1 { background: lime; }\\\\n.localIdentName--\\\\\\\\#fake\\\\\\\\-id--1CCtl { background: lime; }\\\\n.localIdentName--foo\\\\\\\\.bar--1CwcQ { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover--1wJ1H { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--2bgUH { background: lime; }\\\\n.localIdentName--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--2kDs7 { background: lime; }\\\\n.localIdentName--f\\\\\\\\/o\\\\\\\\/o--kDF4z { background: lime; }\\\\n.localIdentName--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--11wgS { background: lime; }\\\\n.localIdentName--f\\\\\\\\*o\\\\\\\\*o--3SaQa { background: lime; }\\\\n.localIdentName--f\\\\\\\\!o\\\\\\\\!o--3WN_y { background: lime; }\\\\n.localIdentName--f\\\\\\\\'o\\\\\\\\'o--uiCGu { background: lime; }\\\\n.localIdentName--f\\\\\\\\~o\\\\\\\\~o--1Wue4 { background: lime; }\\\\n.localIdentName--f\\\\\\\\+o\\\\\\\\+o--3x4WJ { background: lime; }\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar--3S7V- {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar--3mkt5 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar\\\\\\\\/baz--2x1dg {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--2a8NO {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3318,7 +3318,7 @@ exports[`"modules" option should work and respect the "path" placeholder: errors exports[`"modules" option should work and respect the "path" placeholder: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".fixtures-modules-localIdentName-localIdentName__test {\\\\n background: red;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName___test {\\\\n background: blue;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__className {\\\\n background: red;\\\\n}\\\\n\\\\n#fixtures-modules-localIdentName-localIdentName__someId {\\\\n background: green;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#fixtures-modules-localIdentName-localIdentName__© {\\\\n color: black;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__© { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\? { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\@ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\. { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 23 { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\31 a2b3c { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\_ { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\.bar { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A hover { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3505,7 +3505,7 @@ exports[`"modules" option should work and support "pure" mode #2: errors 1`] = ` exports[`"modules" option should work and support "pure" mode #2: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1u_NtoKhpaUNZX7yiJVIiY {\\\\n color: red;\\\\n}\\\\n\\\\nh1 .UCShdZTu4s3n7oXJOhzrK {\\\\n color: green;\\\\n}\\\\n\\\\n._3mfZHE9XqYBUx_E24Rn3UG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n.CvML8FKPF660KwN3nSNSe h1 ._2Qqlcv7vRMswReW-DKC_IZ {\\\\n color: red;\\\\n}\\\\n\\\\n#_2xp6Er0qRUlWxHQh1ROAc1 {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #_14PgYX9AnCgTBatBghNmOB {\\\\n color: green;\\\\n}\\\\n\\\\n#_2SOsIDB25B_Yrw86eby8OG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#_1LkHG2nV0HloeZOXYEK8cH h1 #_e3BBhro5bf0ZsgUTOLnT {\\\\n color: red;\\\\n}\\\\n\\\\n._39A31JnHJWqKuTZf-fX3Vt .bar .TGSef9fpByYTb8vhFGgJZ {\\\\n color: white;\\\\n}\\\\n\\\\n._1KJPrddvuAKs2XObDlRWOx ._19kxTSs8JMPxGQiFY45wzD .ioThrUUaohmyS5xZAilPn {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3586,7 +3586,7 @@ exports[`"modules" option should work and support "pure" mode: errors 1`] = `Arr exports[`"modules" option should work and support "pure" mode: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1u_NtoKhpaUNZX7yiJVIiY {\\\\n color: red;\\\\n}\\\\n\\\\nh1 .UCShdZTu4s3n7oXJOhzrK {\\\\n color: green;\\\\n}\\\\n\\\\n._3mfZHE9XqYBUx_E24Rn3UG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n.CvML8FKPF660KwN3nSNSe h1 ._2Qqlcv7vRMswReW-DKC_IZ {\\\\n color: red;\\\\n}\\\\n\\\\n#_2xp6Er0qRUlWxHQh1ROAc1 {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #_14PgYX9AnCgTBatBghNmOB {\\\\n color: green;\\\\n}\\\\n\\\\n#_2SOsIDB25B_Yrw86eby8OG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#_1LkHG2nV0HloeZOXYEK8cH h1 #_e3BBhro5bf0ZsgUTOLnT {\\\\n color: red;\\\\n}\\\\n\\\\n._39A31JnHJWqKuTZf-fX3Vt .bar .TGSef9fpByYTb8vhFGgJZ {\\\\n color: white;\\\\n}\\\\n\\\\n._1KJPrddvuAKs2XObDlRWOx ._19kxTSs8JMPxGQiFY45wzD .ioThrUUaohmyS5xZAilPn {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -3667,7 +3667,7 @@ exports[`"modules" option should work js template with "namedExport" option: err exports[`"modules" option should work js template with "namedExport" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".header-baz {\\\\n color: red;\\\\n}\\\\n\\\\n.body {\\\\n color: coral;\\\\n}\\\\n\\\\n.footer {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4065,7 +4065,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from \\"-!../../../../src/index.js??[ident]!./shared.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -4110,7 +4110,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./shared.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module @@ -4154,7 +4154,7 @@ exports[`"modules" option should work with a modules.auto Function that returns exports[`"modules" option should work with a modules.auto Function that returns "false": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".relative {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4182,7 +4182,7 @@ exports[`"modules" option should work with a modules.auto Function that returns exports[`"modules" option should work with a modules.auto Function that returns "true": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._7x1O42EfTGW5Jj5FVZ0HH {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4213,7 +4213,7 @@ exports[`"modules" option should work with a modules.auto RegExp that returns "f exports[`"modules" option should work with a modules.auto RegExp that returns "false": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".relative {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4241,7 +4241,7 @@ exports[`"modules" option should work with a modules.auto RegExp that returns "t exports[`"modules" option should work with a modules.auto RegExp that returns "true": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._7x1O42EfTGW5Jj5FVZ0HH {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4272,7 +4272,7 @@ exports[`"modules" option should work with an empty object value: errors 1`] = ` exports[`"modules" option should work with an empty object value: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1u_NtoKhpaUNZX7yiJVIiY {\\\\n color: red;\\\\n}\\\\n\\\\nh1 .UCShdZTu4s3n7oXJOhzrK {\\\\n color: green;\\\\n}\\\\n\\\\n._3mfZHE9XqYBUx_E24Rn3UG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n.CvML8FKPF660KwN3nSNSe h1 ._2Qqlcv7vRMswReW-DKC_IZ {\\\\n color: red;\\\\n}\\\\n\\\\n#_2xp6Er0qRUlWxHQh1ROAc1 {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #_14PgYX9AnCgTBatBghNmOB {\\\\n color: green;\\\\n}\\\\n\\\\n#_2SOsIDB25B_Yrw86eby8OG h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#_1LkHG2nV0HloeZOXYEK8cH h1 #_e3BBhro5bf0ZsgUTOLnT {\\\\n color: red;\\\\n}\\\\n\\\\n._39A31JnHJWqKuTZf-fX3Vt .bar .TGSef9fpByYTb8vhFGgJZ {\\\\n color: white;\\\\n}\\\\n\\\\n._1KJPrddvuAKs2XObDlRWOx ._19kxTSs8JMPxGQiFY45wzD .ioThrUUaohmyS5xZAilPn {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4353,7 +4353,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4382,7 +4382,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4411,7 +4411,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: _2BRgcVnUYbF24oaTRKY85w 300ms forwards ease-out, _1kI30zF7k0JjwpVexLHOjm 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4444,7 +4444,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: slide-right 300ms forwards ease-out, fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4473,7 +4473,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: _slide-right 300ms forwards ease-out, _fade-in 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4506,7 +4506,7 @@ exports[`"modules" option should work with case \`animation\` (\`modules\` value exports[`"modules" option should work with case \`animation\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"a {\\\\n animation: _2BRgcVnUYbF24oaTRKY85w 300ms forwards ease-out, _1kI30zF7k0JjwpVexLHOjm 300ms forwards ease-out;\\\\n\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4539,7 +4539,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class-1, .class-10 .bar-1 {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4567,7 +4567,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class-1, .class-10 .bar-1 {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4595,7 +4595,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".eaOP8i1V08oyfq4bGK3he, ._3bcIdvYQeUZTsRSsUjfwPS ._8OBb_Y_BX-Fb2un3v_cso {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4628,7 +4628,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class-1, .class-10 .bar-1 {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4656,7 +4656,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._class-1, ._class-10 ._bar-1 {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4689,7 +4689,7 @@ exports[`"modules" option should work with case \`class-names\` (\`modules\` val exports[`"modules" option should work with case \`class-names\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".eaOP8i1V08oyfq4bGK3he, ._3bcIdvYQeUZTsRSsUjfwPS ._8OBb_Y_BX-Fb2un3v_cso {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -4722,7 +4722,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.c1/*.c2*/.c3) { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4748,7 +4748,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".teEK3sdEAAKljf9aUyFC5/*.c2*/._3gBobi-8jFL965hMnHyyrB { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4778,7 +4778,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".teEK3sdEAAKljf9aUyFC5/*.c2*/._3gBobi-8jFL965hMnHyyrB { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4808,7 +4808,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1/*.c2*/._c3 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4838,7 +4838,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1/*.c2*/._c3 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4868,7 +4868,7 @@ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\ exports[`"modules" option should work with case \`comment-in-local\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".teEK3sdEAAKljf9aUyFC5/*.c2*/._3gBobi-8jFL965hMnHyyrB { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -4900,7 +4900,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n.bg {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -4939,7 +4939,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n.bg {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -4978,7 +4978,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n.j4zJgEr5H67lbBMVZ1hG- {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -5020,7 +5020,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n.bg {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -5059,7 +5059,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n._bg {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -5101,7 +5101,7 @@ exports[`"modules" option should work with case \`comments\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"/*\\\\n * a ' above\\\\n */\\\\n\\\\n.j4zJgEr5H67lbBMVZ1hG- {\\\\n background-image: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n/*\\\\n * a ' below\\\\n */\\\\n\\", \\"\\"]); @@ -5141,7 +5141,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.c1) { a: 1; }\\\\n:local(.c2) { composes: c1; b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5168,7 +5168,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._34mNstMQgDzGDaB2hWRHrA { a: 1; }\\\\n._3W9EM3Fx7zB7OUIw7l9ZGQ { b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5199,7 +5199,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._34mNstMQgDzGDaB2hWRHrA { a: 1; }\\\\n._3W9EM3Fx7zB7OUIw7l9ZGQ { b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5230,7 +5230,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { a: 1; }\\\\n._c2 { b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5261,7 +5261,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { a: 1; }\\\\n._c2 { b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5292,7 +5292,7 @@ exports[`"modules" option should work with case \`composes\` (\`modules\` value exports[`"modules" option should work with case \`composes\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._34mNstMQgDzGDaB2hWRHrA { a: 1; }\\\\n._3W9EM3Fx7zB7OUIw7l9ZGQ { b: 1; }\\\\n\\", \\"\\"]); // Exports @@ -5323,7 +5323,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu exports[`"modules" option should work with case \`composes-1\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.c1) { composes: c2 from \\\\\\"./file.css\\\\\\"; b: 1; }\\\\n:local(.c3) { composes: c1; b: 3; }\\\\n:local(.c5) { composes: c2 c4 from \\\\\\"./file.css\\\\\\"; b: 5; }\\\\n\\", \\"\\"]); // Exports @@ -5352,7 +5352,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3-qx8pJmXRBC7ZWgEAQzet { b: 1; }\\\\n._1FVKB0KU1wWA69SjlrbmzH { b: 3; }\\\\n._3OeARQF_xkOFvBrTjU9Utk { b: 5; }\\\\n\\", \\"\\"]); @@ -5403,7 +5403,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3-qx8pJmXRBC7ZWgEAQzet { b: 1; }\\\\n._1FVKB0KU1wWA69SjlrbmzH { b: 3; }\\\\n._3OeARQF_xkOFvBrTjU9Utk { b: 5; }\\\\n\\", \\"\\"]); @@ -5454,7 +5454,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { b: 1; }\\\\n._c3 { b: 3; }\\\\n._c5 { b: 5; }\\\\n\\", \\"\\"]); @@ -5505,7 +5505,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { b: 1; }\\\\n._c3 { b: 3; }\\\\n._c5 { b: 5; }\\\\n\\", \\"\\"]); @@ -5556,7 +5556,7 @@ exports[`"modules" option should work with case \`composes-1\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3-qx8pJmXRBC7ZWgEAQzet { b: 1; }\\\\n._1FVKB0KU1wWA69SjlrbmzH { b: 3; }\\\\n._3OeARQF_xkOFvBrTjU9Utk { b: 5; }\\\\n\\", \\"\\"]); @@ -5606,7 +5606,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu exports[`"modules" option should work with case \`composes-2\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.c1) { composes: c-2 from \\\\\\"./file.css\\\\\\"; b: 1; }\\\\n:local(.c3) { composes: c1; b: 3; }\\\\n:local(.c5) { composes: c-2 c4 from \\\\\\"./file.css\\\\\\"; b: 5; }\\\\n\\", \\"\\"]); // Exports @@ -5635,7 +5635,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._149ZUYbfaXcUW5RECwsqm- { b: 1; }\\\\n._1jgbfSMRKu9SzdQe6V40dS { b: 3; }\\\\n._34ysYLP4WhvpT6DBtB9Z0B { b: 5; }\\\\n\\", \\"\\"]); @@ -5686,7 +5686,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._149ZUYbfaXcUW5RECwsqm- { b: 1; }\\\\n._1jgbfSMRKu9SzdQe6V40dS { b: 3; }\\\\n._34ysYLP4WhvpT6DBtB9Z0B { b: 5; }\\\\n\\", \\"\\"]); @@ -5737,7 +5737,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { b: 1; }\\\\n._c3 { b: 3; }\\\\n._c5 { b: 5; }\\\\n\\", \\"\\"]); @@ -5788,7 +5788,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 { b: 1; }\\\\n._c3 { b: 3; }\\\\n._c5 { b: 5; }\\\\n\\", \\"\\"]); @@ -5839,7 +5839,7 @@ exports[`"modules" option should work with case \`composes-2\` (\`modules\` valu "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._149ZUYbfaXcUW5RECwsqm- { b: 1; }\\\\n._1jgbfSMRKu9SzdQe6V40dS { b: 3; }\\\\n._34ysYLP4WhvpT6DBtB9Z0B { b: 5; }\\\\n\\", \\"\\"]); @@ -5889,7 +5889,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules exports[`"modules" option should work with case \`composes-multiple\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.abc) {\\\\n composes: def1 from \\\\\\"./file1.css\\\\\\";\\\\n composes: def2 from \\\\\\"./file2.css\\\\\\";\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -5920,7 +5920,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -5970,7 +5970,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -6020,7 +6020,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -6070,7 +6070,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -6120,7 +6120,7 @@ exports[`"modules" option should work with case \`composes-multiple\` (\`modules import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -6168,7 +6168,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m exports[`"modules" option should work with case \`composes-with-importing\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.abc) {\\\\n composes: def from \\\\\\"./file.css\\\\\\";\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6197,7 +6197,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Qb9qhAk65z7gYDqmpe4vH {\\\\n}\\\\n\\", \\"\\"]); @@ -6237,7 +6237,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Qb9qhAk65z7gYDqmpe4vH {\\\\n}\\\\n\\", \\"\\"]); @@ -6277,7 +6277,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._abc {\\\\n}\\\\n\\", \\"\\"]); @@ -6317,7 +6317,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._abc {\\\\n}\\\\n\\", \\"\\"]); @@ -6357,7 +6357,7 @@ exports[`"modules" option should work with case \`composes-with-importing\` (\`m "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2Qb9qhAk65z7gYDqmpe4vH {\\\\n}\\\\n\\", \\"\\"]); @@ -6396,7 +6396,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value blue: red;\\\\n\\\\n.a {\\\\n border: 1px solid blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6426,7 +6426,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n border: 1px solid red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6457,7 +6457,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2iec4wJBXGAypMLmMMVs2d {\\\\n border: 1px solid red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6489,7 +6489,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n border: 1px solid red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6520,7 +6520,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._a {\\\\n border: 1px solid red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6552,7 +6552,7 @@ exports[`"modules" option should work with case \`declaration-value\` (\`modules exports[`"modules" option should work with case \`declaration-value\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2iec4wJBXGAypMLmMMVs2d {\\\\n border: 1px solid red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6586,7 +6586,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6618,7 +6618,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6650,7 +6650,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6682,7 +6682,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6714,7 +6714,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6746,7 +6746,7 @@ exports[`"modules" option should work with case \`issue-589\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"!!file-loader?esModule=false!./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body:before {\\\\n content: '';\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -6776,7 +6776,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes bounce {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes bounce2 {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n.bounce {\\\\n\\\\tanimation-name: bounce;\\\\n\\\\tanimation: bounce2 1s ease;\\\\n}\\\\n\\\\n.bounce2 {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: bounce 1s ease;\\\\n\\\\tanimation-name: bounce2;\\\\n}\\\\n\\\\n.bounce3 {\\\\n\\\\tanimation: bounce 1s ease, bounce2\\\\n}\\\\n\\\\n.bounce4 {\\\\n\\\\tanimation: bounce 1s ease, bounce2;\\\\n}\\\\n\\\\n.b {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6849,7 +6849,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes bounce {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes bounce2 {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n.bounce {\\\\n\\\\tanimation-name: bounce;\\\\n\\\\tanimation: bounce2 1s ease;\\\\n}\\\\n\\\\n.bounce2 {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: bounce 1s ease;\\\\n\\\\tanimation-name: bounce2;\\\\n}\\\\n\\\\n.bounce3 {\\\\n\\\\tanimation: bounce 1s ease, bounce2\\\\n}\\\\n\\\\n.bounce4 {\\\\n\\\\tanimation: bounce 1s ease, bounce2;\\\\n}\\\\n\\\\n.b {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -6922,7 +6922,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".bUmK7oTbisTpMb3iGG-dZ {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes _3UQT2Nv7rG6BoAVsqEclLi {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes _3bNWfw4NMr2M5tnE7KaoaM {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n._3UQT2Nv7rG6BoAVsqEclLi {\\\\n\\\\tanimation-name: _3UQT2Nv7rG6BoAVsqEclLi;\\\\n\\\\tanimation: _3bNWfw4NMr2M5tnE7KaoaM 1s ease;\\\\n}\\\\n\\\\n._3bNWfw4NMr2M5tnE7KaoaM {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease;\\\\n\\\\tanimation-name: _3bNWfw4NMr2M5tnE7KaoaM;\\\\n}\\\\n\\\\n._1mKEStxLW56tP5VRye6PQV {\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease, _3bNWfw4NMr2M5tnE7KaoaM\\\\n}\\\\n\\\\n.HgBPuxjveHA4InDCtk7qD {\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease, _3bNWfw4NMr2M5tnE7KaoaM;\\\\n}\\\\n\\\\n._3YU5L5hA-seIR1nSwrmDNO {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7003,7 +7003,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes bounce {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes bounce2 {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n.bounce {\\\\n\\\\tanimation-name: bounce;\\\\n\\\\tanimation: bounce2 1s ease;\\\\n}\\\\n\\\\n.bounce2 {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: bounce 1s ease;\\\\n\\\\tanimation-name: bounce2;\\\\n}\\\\n\\\\n.bounce3 {\\\\n\\\\tanimation: bounce 1s ease, bounce2\\\\n}\\\\n\\\\n.bounce4 {\\\\n\\\\tanimation: bounce 1s ease, bounce2;\\\\n}\\\\n\\\\n.b {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7076,7 +7076,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._a {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes _bounce {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes _bounce2 {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n._bounce {\\\\n\\\\tanimation-name: _bounce;\\\\n\\\\tanimation: _bounce2 1s ease;\\\\n}\\\\n\\\\n._bounce2 {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _bounce 1s ease;\\\\n\\\\tanimation-name: _bounce2;\\\\n}\\\\n\\\\n._bounce3 {\\\\n\\\\tanimation: _bounce 1s ease, _bounce2\\\\n}\\\\n\\\\n._bounce4 {\\\\n\\\\tanimation: _bounce 1s ease, _bounce2;\\\\n}\\\\n\\\\n._b {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7157,7 +7157,7 @@ exports[`"modules" option should work with case \`keyframes-and-animation\` (\`m exports[`"modules" option should work with case \`keyframes-and-animation\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".bUmK7oTbisTpMb3iGG-dZ {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\\\n@keyframes _3UQT2Nv7rG6BoAVsqEclLi {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n@-webkit-keyframes _3bNWfw4NMr2M5tnE7KaoaM {\\\\n\\\\t0% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n\\\\t5% {\\\\n\\\\t\\\\ttransform: translateY(-100%);\\\\n\\\\t\\\\topacity: 0;\\\\n\\\\t}\\\\n}\\\\n\\\\n._3UQT2Nv7rG6BoAVsqEclLi {\\\\n\\\\tanimation-name: _3UQT2Nv7rG6BoAVsqEclLi;\\\\n\\\\tanimation: _3bNWfw4NMr2M5tnE7KaoaM 1s ease;\\\\n}\\\\n\\\\n._3bNWfw4NMr2M5tnE7KaoaM {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease;\\\\n\\\\tanimation-name: _3bNWfw4NMr2M5tnE7KaoaM;\\\\n}\\\\n\\\\n._1mKEStxLW56tP5VRye6PQV {\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease, _3bNWfw4NMr2M5tnE7KaoaM\\\\n}\\\\n\\\\n.HgBPuxjveHA4InDCtk7qD {\\\\n\\\\tanimation: _3UQT2Nv7rG6BoAVsqEclLi 1s ease, _3bNWfw4NMr2M5tnE7KaoaM;\\\\n}\\\\n\\\\n._3YU5L5hA-seIR1nSwrmDNO {\\\\n\\\\tcolor: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7238,7 +7238,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: a;\\\\n}\\\\n\\\\n@keyframes b {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.b {\\\\n\\\\tanimation: b;\\\\n}\\\\n\\\\n@keyframes :global(c) {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.c {\\\\n\\\\tanimation: c1;\\\\n\\\\tanimation: c2, c3, c4;\\\\n}\\\\n\\\\n@keyframes :global(d) {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n:global .d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n:global(.d2) {\\\\n\\\\tanimation: d2;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7300,7 +7300,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: a;\\\\n}\\\\n\\\\n@keyframes b {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.b {\\\\n\\\\tanimation: b;\\\\n}\\\\n\\\\n@keyframes c {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.c {\\\\n\\\\tanimation: c1;\\\\n\\\\tanimation: c2, c3, c4;\\\\n}\\\\n\\\\n@keyframes d {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n.d2 {\\\\n\\\\tanimation: d2;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7362,7 +7362,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2zFrdZe66KrGBT78h41dOm {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _2zFrdZe66KrGBT78h41dOm;\\\\n}\\\\n\\\\n@keyframes _1m_EC2XYXeazot_zCdA36t {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._1m_EC2XYXeazot_zCdA36t {\\\\n\\\\tanimation: _1m_EC2XYXeazot_zCdA36t;\\\\n}\\\\n\\\\n@keyframes c {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._3oH9DQJazfpG005Sh9aGkQ {\\\\n\\\\tanimation: nww09C9mEAhqcOUYF6rha;\\\\n\\\\tanimation: _1KFID5rBdQ1zoTcXE0MDJu, Kb9jLFrSf4mllvTWZXwOP, _3ACxrrFjDb1l0z2IVcusvQ;\\\\n}\\\\n\\\\n@keyframes d {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n.d2 {\\\\n\\\\tanimation: _3UMfC66OcV3y4QQFvTZ-WT;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7434,7 +7434,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: a;\\\\n}\\\\n\\\\n@keyframes b {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.b {\\\\n\\\\tanimation: b;\\\\n}\\\\n\\\\n@keyframes c {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.c {\\\\n\\\\tanimation: c1;\\\\n\\\\tanimation: c2, c3, c4;\\\\n}\\\\n\\\\n@keyframes d {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n.d2 {\\\\n\\\\tanimation: d2;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7496,7 +7496,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._a {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _a;\\\\n}\\\\n\\\\n@keyframes _b {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._b {\\\\n\\\\tanimation: _b;\\\\n}\\\\n\\\\n@keyframes c {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._c {\\\\n\\\\tanimation: _c1;\\\\n\\\\tanimation: _c2, _c3, _c4;\\\\n}\\\\n\\\\n@keyframes d {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n.d2 {\\\\n\\\\tanimation: _d2;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7568,7 +7568,7 @@ exports[`"modules" option should work with case \`leak-scope\` (\`modules\` valu exports[`"modules" option should work with case \`leak-scope\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2zFrdZe66KrGBT78h41dOm {\\\\n\\\\tcolor: green;\\\\n\\\\tanimation: _2zFrdZe66KrGBT78h41dOm;\\\\n}\\\\n\\\\n@keyframes _1m_EC2XYXeazot_zCdA36t {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._1m_EC2XYXeazot_zCdA36t {\\\\n\\\\tanimation: _1m_EC2XYXeazot_zCdA36t;\\\\n}\\\\n\\\\n@keyframes c {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n._3oH9DQJazfpG005Sh9aGkQ {\\\\n\\\\tanimation: nww09C9mEAhqcOUYF6rha;\\\\n\\\\tanimation: _1KFID5rBdQ1zoTcXE0MDJu, Kb9jLFrSf4mllvTWZXwOP, _3ACxrrFjDb1l0z2IVcusvQ;\\\\n}\\\\n\\\\n@keyframes d {\\\\n\\\\t0% { left: 10px; }\\\\n\\\\t100% { left: 20px; }\\\\n}\\\\n\\\\n.d1 {\\\\n\\\\tanimation: d1;\\\\n\\\\tanimation: d2, d3, d4;\\\\n}\\\\n\\\\n.d2 {\\\\n\\\\tanimation: _3UMfC66OcV3y4QQFvTZ-WT;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7640,7 +7640,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".abc :local(.def) {\\\\n color: red;\\\\n}\\\\n\\\\n:local .ghi .jkl {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7672,7 +7672,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".abc ._253zTI4U-rMu3xutK9NGwV {\\\\n color: red;\\\\n}\\\\n\\\\n._3dSdUIFav_eo-0o1qfNtZ2 ._3kwDpbkAJ3bXRzaN7EB5LV {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7709,7 +7709,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".wn3pk8CZbW4lwX8iv8Yrq ._253zTI4U-rMu3xutK9NGwV {\\\\n color: red;\\\\n}\\\\n\\\\n._3dSdUIFav_eo-0o1qfNtZ2 ._3kwDpbkAJ3bXRzaN7EB5LV {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7747,7 +7747,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".abc ._def {\\\\n color: red;\\\\n}\\\\n\\\\n._ghi ._jkl {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7784,7 +7784,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._abc ._def {\\\\n color: red;\\\\n}\\\\n\\\\n._ghi ._jkl {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7822,7 +7822,7 @@ exports[`"modules" option should work with case \`local\` (\`modules\` value is exports[`"modules" option should work with case \`local\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".wn3pk8CZbW4lwX8iv8Yrq ._253zTI4U-rMu3xutK9NGwV {\\\\n color: red;\\\\n}\\\\n\\\\n._3dSdUIFav_eo-0o1qfNtZ2 ._3kwDpbkAJ3bXRzaN7EB5LV {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -7860,7 +7860,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.className) { background: red; }\\\\n:local(#someId) { background: green; }\\\\n:local(.className .subClass) { color: green; }\\\\n:local(#someId .subClass) { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -7889,7 +7889,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2tirGKrjfg1QOv47dkGhM3 { background: red; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- { background: green; }\\\\n._2tirGKrjfg1QOv47dkGhM3 .JUEy4WtnpqWBGYQbszU8T { color: green; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- .JUEy4WtnpqWBGYQbszU8T { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -7923,7 +7923,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2tirGKrjfg1QOv47dkGhM3 { background: red; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- { background: green; }\\\\n._2tirGKrjfg1QOv47dkGhM3 .JUEy4WtnpqWBGYQbszU8T { color: green; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- .JUEy4WtnpqWBGYQbszU8T { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -7957,7 +7957,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._className { background: red; }\\\\n#_someId { background: green; }\\\\n._className ._subClass { color: green; }\\\\n#_someId ._subClass { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -7991,7 +7991,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._className { background: red; }\\\\n#_someId { background: green; }\\\\n._className ._subClass { color: green; }\\\\n#_someId ._subClass { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -8025,7 +8025,7 @@ exports[`"modules" option should work with case \`local-2\` (\`modules\` value i exports[`"modules" option should work with case \`local-2\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2tirGKrjfg1QOv47dkGhM3 { background: red; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- { background: green; }\\\\n._2tirGKrjfg1QOv47dkGhM3 .JUEy4WtnpqWBGYQbszU8T { color: green; }\\\\n#_31JZfn-aXeXuFv5NEwx9A- .JUEy4WtnpqWBGYQbszU8T { color: blue; }\\\\n\\", \\"\\"]); // Exports @@ -8059,7 +8059,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.abc) {\\\\n color: red;\\\\n}\\\\n:local(.def) {\\\\n composes: abc;\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8091,7 +8091,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".w6toSsfCpsXS8TkwPjqlj {\\\\n color: red;\\\\n}\\\\n._1BsbfP276W8zM079XDxrG5 {\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8126,7 +8126,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".w6toSsfCpsXS8TkwPjqlj {\\\\n color: red;\\\\n}\\\\n._1BsbfP276W8zM079XDxrG5 {\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8161,7 +8161,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._abc {\\\\n color: red;\\\\n}\\\\n._def {\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8196,7 +8196,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._abc {\\\\n color: red;\\\\n}\\\\n._def {\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8231,7 +8231,7 @@ exports[`"modules" option should work with case \`local-and-composes\` (\`module exports[`"modules" option should work with case \`local-and-composes\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".w6toSsfCpsXS8TkwPjqlj {\\\\n color: red;\\\\n}\\\\n._1BsbfP276W8zM079XDxrG5 {\\\\n background: green;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8266,7 +8266,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":local(.c1[data-attr=\\\\\\".c2)]'\\\\\\"]:not(.c3):not(.c4)) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8294,7 +8294,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1tUuoJcngr7F24PuPIcUns[data-attr=\\\\\\".c2)]'\\\\\\"]:not(._232FaTg_846r3Bx1Aw4VFe):not(._3-Twv0s9t8557yNgqfRlHY) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8327,7 +8327,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1tUuoJcngr7F24PuPIcUns[data-attr=\\\\\\".c2)]'\\\\\\"]:not(._232FaTg_846r3Bx1Aw4VFe):not(._3-Twv0s9t8557yNgqfRlHY) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8360,7 +8360,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1[data-attr=\\\\\\".c2)]'\\\\\\"]:not(._c3):not(._c4) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8393,7 +8393,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1[data-attr=\\\\\\".c2)]'\\\\\\"]:not(._c3):not(._c4) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8426,7 +8426,7 @@ exports[`"modules" option should work with case \`local-with-string\` (\`modules exports[`"modules" option should work with case \`local-with-string\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1tUuoJcngr7F24PuPIcUns[data-attr=\\\\\\".c2)]'\\\\\\"]:not(._232FaTg_846r3Bx1Aw4VFe):not(._3-Twv0s9t8557yNgqfRlHY) {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8459,7 +8459,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value small: (max-width: 599px);\\\\n\\\\n@media small {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8491,7 +8491,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media (max-width: 599px) {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8524,7 +8524,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media (max-width: 599px) {\\\\n ._1XLoIkCR__ZykjKOg7CPmK {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8558,7 +8558,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media (max-width: 599px) {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8591,7 +8591,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media (max-width: 599px) {\\\\n ._header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8625,7 +8625,7 @@ exports[`"modules" option should work with case \`media\` (\`modules\` value is exports[`"modules" option should work with case \`media\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media (max-width: 599px) {\\\\n ._1XLoIkCR__ZykjKOg7CPmK {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8659,7 +8659,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i exports[`"modules" option should work with case \`media-2\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value small from './file.css';\\\\n@media small {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -8691,7 +8691,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"small\\"] + \\" {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -8732,7 +8732,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"small\\"] + \\" {\\\\n ._3jBTLokf5b1bejJ283UGF {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -8774,7 +8774,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"small\\"] + \\" {\\\\n .header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -8815,7 +8815,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"small\\"] + \\" {\\\\n ._header {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -8857,7 +8857,7 @@ exports[`"modules" option should work with case \`media-2\` (\`modules\` value i "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"small\\"] + \\" {\\\\n ._3jBTLokf5b1bejJ283UGF {\\\\n box-shadow: 0 0 4px #1F4F7F;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -8898,7 +8898,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".c1 :local .c2 .c3 :global .c4 :local .c5, .c6 :local .c7 { background: red; }\\\\n.c8 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -8925,7 +8925,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".c1 .nJwZYDOazrG9eCdxBLMlj ._2bcjQqPzBwpjPwnKmMnqbs .c4 ._1Q1i8rWfN_u_B-SehXzXdA, .c6 .-ulS8ZiIJLj0XJ6Xp9wy_ { background: red; }\\\\n.c8 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -8958,7 +8958,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2EeVpMPPsn_MdVeltDE4m0 .nJwZYDOazrG9eCdxBLMlj ._2bcjQqPzBwpjPwnKmMnqbs .c4 ._1Q1i8rWfN_u_B-SehXzXdA, ._12pi1AyFmqD8yE_mfXe9IV .-ulS8ZiIJLj0XJ6Xp9wy_ { background: red; }\\\\n.Awn8euqhR-cc5VOfv8804 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -8994,7 +8994,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".c1 ._c2 ._c3 .c4 ._c5, .c6 ._c7 { background: red; }\\\\n.c8 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -9027,7 +9027,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._c1 ._c2 ._c3 .c4 ._c5, ._c6 ._c7 { background: red; }\\\\n._c8 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -9063,7 +9063,7 @@ exports[`"modules" option should work with case \`mode-switching\` (\`modules\` exports[`"modules" option should work with case \`mode-switching\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2EeVpMPPsn_MdVeltDE4m0 .nJwZYDOazrG9eCdxBLMlj ._2bcjQqPzBwpjPwnKmMnqbs .c4 ._1Q1i8rWfN_u_B-SehXzXdA, ._12pi1AyFmqD8yE_mfXe9IV .-ulS8ZiIJLj0XJ6Xp9wy_ { background: red; }\\\\n.Awn8euqhR-cc5VOfv8804 { background: red; }\\\\n\\", \\"\\"]); // Exports @@ -9099,7 +9099,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a .b, .c .d, #id {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"].x.y {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes z {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9135,7 +9135,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a .b, .c .d, #id {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"].x.y {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes z {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9171,7 +9171,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2RC5zm1ETzYWwA-z_wjsay ._1bVka2KQUfGE3ZKCqfezT9, ._2_iRJmJ1hiVKsn42NFypLn .Gl5ylikRMDBN5h6WYNKkm, #_2johT_Nrn18v0zPcwgzc3j {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"]._1PTN6zj77naMI0xS1EaUuF._102RFjf-y5-2VN54aD7Gdl {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes _1SJB0FVNlmEwtwPSEDkwm4 {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9217,7 +9217,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a .b, .c .d, #id {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"].x.y {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes z {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9253,7 +9253,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._a ._b, ._c ._d, #_id {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"]._x._y {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes _z {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9299,7 +9299,7 @@ exports[`"modules" option should work with case \`simple\` (\`modules\` value is exports[`"modules" option should work with case \`simple\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2RC5zm1ETzYWwA-z_wjsay ._1bVka2KQUfGE3ZKCqfezT9, ._2_iRJmJ1hiVKsn42NFypLn .Gl5ylikRMDBN5h6WYNKkm, #_2johT_Nrn18v0zPcwgzc3j {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\na[href=\\\\\\"#b.c\\\\\\"]._1PTN6zj77naMI0xS1EaUuF._102RFjf-y5-2VN54aD7Gdl {\\\\n\\\\tcolor: green;\\\\n\\\\tfont-size: 1.5pt;\\\\n}\\\\n@keyframes _1SJB0FVNlmEwtwPSEDkwm4 {\\\\n 2.5% {color: green;}\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9348,7 +9348,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9393,7 +9393,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9438,7 +9438,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9486,7 +9486,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9531,7 +9531,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9579,7 +9579,7 @@ import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; import ___CSS_LOADER_URL_IMPORT_1___ from \\"./img img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); var ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#?iefix\\" }); @@ -9624,7 +9624,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value aaa: red;\\\\n@value bbb: green;\\\\n@value ccc: aaa;\\\\n\\\\n.a {\\\\n\\\\tbackground: aaa;\\\\n\\\\tbackground: bbb;\\\\n\\\\tbackground: ccc;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9658,7 +9658,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tbackground: red;\\\\n\\\\tbackground: green;\\\\n\\\\tbackground: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9693,7 +9693,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._22lW51l7hxGI-kzwcOOiSt {\\\\n\\\\tbackground: red;\\\\n\\\\tbackground: green;\\\\n\\\\tbackground: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9729,7 +9729,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".a {\\\\n\\\\tbackground: red;\\\\n\\\\tbackground: green;\\\\n\\\\tbackground: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9764,7 +9764,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._a {\\\\n\\\\tbackground: red;\\\\n\\\\tbackground: green;\\\\n\\\\tbackground: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9800,7 +9800,7 @@ exports[`"modules" option should work with case \`values\` (\`modules\` value is exports[`"modules" option should work with case \`values\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._22lW51l7hxGI-kzwcOOiSt {\\\\n\\\\tbackground: red;\\\\n\\\\tbackground: green;\\\\n\\\\tbackground: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -9836,7 +9836,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value def: red;\\\\n@value ghi: 1px solid black;\\\\n\\", \\"\\"]); // Exports @@ -9863,7 +9863,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -9893,7 +9893,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -9923,7 +9923,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -9953,7 +9953,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -9983,7 +9983,7 @@ exports[`"modules" option should work with case \`values-1\` (\`modules\` value exports[`"modules" option should work with case \`values-1\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -10013,7 +10013,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value def: red;\\\\n.ghi { color: def; }\\\\n\\", \\"\\"]); // Exports @@ -10040,7 +10040,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { color: red; }\\\\n\\", \\"\\"]); // Exports @@ -10069,7 +10069,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3QThtZCFq_xSv6TMU6T587 { color: red; }\\\\n\\", \\"\\"]); // Exports @@ -10099,7 +10099,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { color: red; }\\\\n\\", \\"\\"]); // Exports @@ -10128,7 +10128,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi { color: red; }\\\\n\\", \\"\\"]); // Exports @@ -10158,7 +10158,7 @@ exports[`"modules" option should work with case \`values-2\` (\`modules\` value exports[`"modules" option should work with case \`values-2\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3QThtZCFq_xSv6TMU6T587 { color: red; }\\\\n\\", \\"\\"]); // Exports @@ -10188,7 +10188,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value exports[`"modules" option should work with case \`values-3\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value def from './file.css';\\\\n.ghi { color: def; }\\\\n\\", \\"\\"]); // Exports @@ -10216,7 +10216,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"def\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10253,7 +10253,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3PmEf7_kecuq6kdJV_-OOX { color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"def\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10291,7 +10291,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"def\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10328,7 +10328,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi { color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"def\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10366,7 +10366,7 @@ exports[`"modules" option should work with case \`values-3\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3PmEf7_kecuq6kdJV_-OOX { color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"def\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10403,7 +10403,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value exports[`"modules" option should work with case \`values-4\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value def as aaa from './file1.css';\\\\n@value def as bbb from './file2.css';\\\\n.ghi { background: aaa, bbb, def; }\\\\n\\", \\"\\"]); // Exports @@ -10433,7 +10433,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -10479,7 +10479,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -10526,7 +10526,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -10572,7 +10572,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -10619,7 +10619,7 @@ exports[`"modules" option should work with case \`values-4\` (\`modules\` value import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../../src/index.js??[ident]!./file2.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); // Module @@ -10664,7 +10664,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value exports[`"modules" option should work with case \`values-5\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value color from './file1.css';\\\\n@value shadow: 0 0 color,0 0 color;\\\\n.ghi { box-shadow: shadow; }\\\\n\\", \\"\\"]); // Exports @@ -10693,7 +10693,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\",0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10731,7 +10731,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2kjSEmOCLdQYLux3CTPaa8 { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\",0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10770,7 +10770,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\",0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10808,7 +10808,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\",0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10847,7 +10847,7 @@ exports[`"modules" option should work with case \`values-5\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2kjSEmOCLdQYLux3CTPaa8 { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\",0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10885,7 +10885,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value exports[`"modules" option should work with case \`values-6\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value color from './file1.css';\\\\n@value shadow: 0 0 color ,0 0 color;\\\\n.ghi { box-shadow: shadow; }\\\\n\\", \\"\\"]); // Exports @@ -10914,7 +10914,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\" ,0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10952,7 +10952,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._23FFcrRz95Fn1Kxf_cl1xK { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\" ,0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -10991,7 +10991,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\" ,0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11029,7 +11029,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\" ,0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11068,7 +11068,7 @@ exports[`"modules" option should work with case \`values-6\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._23FFcrRz95Fn1Kxf_cl1xK { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\" ,0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11106,7 +11106,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value exports[`"modules" option should work with case \`values-7\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value color from './file1.css';\\\\n@value shadow: 0 0 color, 0 0 color;\\\\n.ghi { box-shadow: shadow; }\\\\n\\", \\"\\"]); // Exports @@ -11135,7 +11135,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\", 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11173,7 +11173,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3TJ1pl0Np7DzCq5P_a_8I_ { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\", 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11212,7 +11212,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\", 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11250,7 +11250,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\", 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11289,7 +11289,7 @@ exports[`"modules" option should work with case \`values-7\` (\`modules\` value "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./file1.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3TJ1pl0Np7DzCq5P_a_8I_ { box-shadow: 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\", 0 0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color\\"] + \\"; }\\\\n\\", \\"\\"]); @@ -11327,7 +11327,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value shadow-color: rgba(0, 0, 0, 0.5);\\\\n\\\\n.shadow {\\\\n box-shadow: 0 10px 10px shadow-color,\\\\n 10px 0px 5px shadow-color;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11358,7 +11358,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".shadow {\\\\n box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5),\\\\n 10px 0px 5px rgba(0, 0, 0, 0.5);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11390,7 +11390,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3QM8SuH9jxTIWhI8SQ7MrW {\\\\n box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5),\\\\n 10px 0px 5px rgba(0, 0, 0, 0.5);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11423,7 +11423,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".shadow {\\\\n box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5),\\\\n 10px 0px 5px rgba(0, 0, 0, 0.5);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11455,7 +11455,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._shadow {\\\\n box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5),\\\\n 10px 0px 5px rgba(0, 0, 0, 0.5);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11488,7 +11488,7 @@ exports[`"modules" option should work with case \`values-8\` (\`modules\` value exports[`"modules" option should work with case \`values-8\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3QM8SuH9jxTIWhI8SQ7MrW {\\\\n box-shadow: 0 10px 10px rgba(0, 0, 0, 0.5),\\\\n 10px 0px 5px rgba(0, 0, 0, 0.5);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11521,7 +11521,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value def: red;\\\\n\\\\n.foo1 {\\\\n prop: func(def);\\\\n}\\\\n\\\\n.foo2 {\\\\n prop: func(10px def);\\\\n}\\\\n\\\\n.foo3 {\\\\n prop: func(def 10px);\\\\n}\\\\n\\\\n.foo4 {\\\\n prop: func(10px def 10px);\\\\n}\\\\n\\\\n.foo5 {\\\\n prop: func(10px, def);\\\\n}\\\\n\\\\n.foo6 {\\\\n prop: func(def, 10px);\\\\n}\\\\n\\\\n.foo7 {\\\\n prop: func(10px, def, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11575,7 +11575,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo1 {\\\\n prop: func(red);\\\\n}\\\\n\\\\n.foo2 {\\\\n prop: func(10px red);\\\\n}\\\\n\\\\n.foo3 {\\\\n prop: func(red 10px);\\\\n}\\\\n\\\\n.foo4 {\\\\n prop: func(10px red 10px);\\\\n}\\\\n\\\\n.foo5 {\\\\n prop: func(10px, red);\\\\n}\\\\n\\\\n.foo6 {\\\\n prop: func(red, 10px);\\\\n}\\\\n\\\\n.foo7 {\\\\n prop: func(10px, red, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11630,7 +11630,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3IPwBTtlaNnHpjlwAZt5Oo {\\\\n prop: func(red);\\\\n}\\\\n\\\\n._3qd0Uy-Vj7A89MML4-B0a8 {\\\\n prop: func(10px red);\\\\n}\\\\n\\\\n._2SIu6cITNS3wV8Rs35W9ES {\\\\n prop: func(red 10px);\\\\n}\\\\n\\\\n._2ohqX1louX5yQ29OK0mpz7 {\\\\n prop: func(10px red 10px);\\\\n}\\\\n\\\\n._-59hqTyaIjCYZ4G6SBe0T {\\\\n prop: func(10px, red);\\\\n}\\\\n\\\\n._2zuRF6WBo7qIYI8qh4e21a {\\\\n prop: func(red, 10px);\\\\n}\\\\n\\\\n._2A5Wg42fuXM8x3sxkEEimJ {\\\\n prop: func(10px, red, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11692,7 +11692,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo1 {\\\\n prop: func(red);\\\\n}\\\\n\\\\n.foo2 {\\\\n prop: func(10px red);\\\\n}\\\\n\\\\n.foo3 {\\\\n prop: func(red 10px);\\\\n}\\\\n\\\\n.foo4 {\\\\n prop: func(10px red 10px);\\\\n}\\\\n\\\\n.foo5 {\\\\n prop: func(10px, red);\\\\n}\\\\n\\\\n.foo6 {\\\\n prop: func(red, 10px);\\\\n}\\\\n\\\\n.foo7 {\\\\n prop: func(10px, red, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11747,7 +11747,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._foo1 {\\\\n prop: func(red);\\\\n}\\\\n\\\\n._foo2 {\\\\n prop: func(10px red);\\\\n}\\\\n\\\\n._foo3 {\\\\n prop: func(red 10px);\\\\n}\\\\n\\\\n._foo4 {\\\\n prop: func(10px red 10px);\\\\n}\\\\n\\\\n._foo5 {\\\\n prop: func(10px, red);\\\\n}\\\\n\\\\n._foo6 {\\\\n prop: func(red, 10px);\\\\n}\\\\n\\\\n._foo7 {\\\\n prop: func(10px, red, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11809,7 +11809,7 @@ exports[`"modules" option should work with case \`values-9\` (\`modules\` value exports[`"modules" option should work with case \`values-9\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._3IPwBTtlaNnHpjlwAZt5Oo {\\\\n prop: func(red);\\\\n}\\\\n\\\\n._3qd0Uy-Vj7A89MML4-B0a8 {\\\\n prop: func(10px red);\\\\n}\\\\n\\\\n._2SIu6cITNS3wV8Rs35W9ES {\\\\n prop: func(red 10px);\\\\n}\\\\n\\\\n._2ohqX1louX5yQ29OK0mpz7 {\\\\n prop: func(10px red 10px);\\\\n}\\\\n\\\\n._-59hqTyaIjCYZ4G6SBe0T {\\\\n prop: func(10px, red);\\\\n}\\\\n\\\\n._2zuRF6WBo7qIYI8qh4e21a {\\\\n prop: func(red, 10px);\\\\n}\\\\n\\\\n._2A5Wg42fuXM8x3sxkEEimJ {\\\\n prop: func(10px, red, 10px);\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11871,7 +11871,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`false)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"@value v-primary: #BF4040;\\\\n@value s-black: black-selector;\\\\n@value m-large: (min-width: 960px);\\\\n\\\\n.header {\\\\n color: v-primary;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n.s-black {\\\\n color: black;\\\\n}\\\\n\\\\n@media m-large {\\\\n .header {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11914,7 +11914,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".header {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n.black-selector {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n .header {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -11958,7 +11958,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2V2JI3y5T05ezX1wZCEeFE {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n._2JrNINv1dS7I0I24kQC9cl {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2V2JI3y5T05ezX1wZCEeFE {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12004,7 +12004,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`object with mode global)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".header {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n.black-selector {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n .header {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12048,7 +12048,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`object with mode local)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._header {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n._black-selector {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._header {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12094,7 +12094,7 @@ exports[`"modules" option should work with case \`values-10\` (\`modules\` value exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`true)\`: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._2V2JI3y5T05ezX1wZCEeFE {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n._2JrNINv1dS7I0I24kQC9cl {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2V2JI3y5T05ezX1wZCEeFE {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12140,7 +12140,7 @@ exports[`"modules" option should work with the "[local]" placeholder for the "lo exports[`"modules" option should work with the "[local]" placeholder for the "localIdentName" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".test {\\\\n background: red;\\\\n}\\\\n\\\\n._test {\\\\n background: blue;\\\\n}\\\\n\\\\n.className {\\\\n background: red;\\\\n}\\\\n\\\\n#someId {\\\\n background: green;\\\\n}\\\\n\\\\n.className .subClass {\\\\n color: green;\\\\n}\\\\n\\\\n#someId .subClass {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@ {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\? {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c- {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#© {\\\\n color: black;\\\\n}\\\\n\\\\n.♥ { background: lime; }\\\\n.© { background: lime; }\\\\n.“‘’” { background: lime; }\\\\n.☺☃ { background: lime; }\\\\n.⌘⌥ { background: lime; }\\\\n.𝄞♪♩♫♬ { background: lime; }\\\\n.💩 { background: lime; }\\\\n.\\\\\\\\? { background: lime; }\\\\n.\\\\\\\\@ { background: lime; }\\\\n.\\\\\\\\. { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\) { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\( { background: lime; }\\\\n.\\\\\\\\31 23 { background: lime; }\\\\n.\\\\\\\\31 a2b3c { background: lime; }\\\\n.\\\\\\\\ { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\> { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\. { background: lime; }\\\\n.\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\# { background: lime; }\\\\n.\\\\\\\\_ { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\} { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id { background: lime; }\\\\n.foo\\\\\\\\.bar { background: lime; }\\\\n.\\\\\\\\3A hover { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\] { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12328,7 +12328,7 @@ exports[`"modules" option should work with the "auto" by default for icss: modul "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../src/index.js??[ident]!./vars.icss.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); @@ -12366,7 +12366,7 @@ exports[`"modules" option should work with the "auto" by default with "modules" exports[`"modules" option should work with the "auto" by default with "modules" filename: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".af0LbFVUmIAO7cXelO_aA {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12397,7 +12397,7 @@ exports[`"modules" option should work with the "auto" by default: errors 1`] = ` exports[`"modules" option should work with the "auto" by default: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._7x1O42EfTGW5Jj5FVZ0HH {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12428,7 +12428,7 @@ exports[`"modules" option should work with the "auto" when it is "false": errors exports[`"modules" option should work with the "auto" when it is "false": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".relative {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12456,7 +12456,7 @@ exports[`"modules" option should work with the "auto" when it is "true": errors exports[`"modules" option should work with the "auto" when it is "true": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._7x1O42EfTGW5Jj5FVZ0HH {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12488,7 +12488,7 @@ exports[`"modules" option should work with the "namedExport" option with nested "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from \\"-!../../../../../src/index.js??[ident]!../../composes/values.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._10XHvKY7SkdmM8ZvRFtWzU {\\\\n color: #BF4040;\\\\n padding: 0 10px;\\\\n}\\\\n\\\\n._1kluA9lYOATstWNhEJp14n {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) and (max-width: 1024px) {\\\\n ._10XHvKY7SkdmM8ZvRFtWzU {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"vDef\\"] + \\";\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\", \\"\\"]); @@ -12541,7 +12541,7 @@ exports[`"modules" option should work with the "namedExport" option: errors 1`] exports[`"modules" option should work with the "namedExport" option: module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._1DWrSJ4evr5bF-6Ojpv9nG {\\\\n color: red;\\\\n}\\\\n\\\\n.bar {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12574,7 +12574,7 @@ exports[`"modules" option should work with the \`exportGlobals\` option (the \`m exports[`"modules" option should work with the \`exportGlobals\` option (the \`mode\` option is \`global\`): module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".U6YQOcHviE3h3NFZZZ5M4 {\\\\n background-color: red;\\\\n}\\\\n\\\\n._3zPLpiUwMWmIlS0v_4JOvv {\\\\n background-color: green;\\\\n}\\\\n\\\\n.baz {\\\\n background-color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12615,7 +12615,7 @@ exports[`"modules" option should work with the \`exportGlobals\` option (the \`m exports[`"modules" option should work with the \`exportGlobals\` option (the \`mode\` option is \`local\`): module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo {\\\\n background-color: red;\\\\n}\\\\n\\\\n._2GpmlqkdnlTbY35A2Y5HS5 {\\\\n background-color: green;\\\\n}\\\\n\\\\n.baz {\\\\n background-color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12656,7 +12656,7 @@ exports[`"modules" option should work with the \`exportGlobals\` option (the \`m exports[`"modules" option should work with the \`exportGlobals\` option (the \`mode\` option is \`pure\`): module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"._31D6CXtz0kxMsaltXHARe1 {\\\\n background-color: red;\\\\n}\\\\n\\\\n._2DZGhttFE60WMrIgMzxt40 ._2b57w7OxEaiVSVjrH5vrg_ {\\\\n background-color: green;\\\\n}\\\\n\\\\n._1w7zCrpZ6qgJ4T9Q78aj68 .baz {\\\\n background-color: blue;\\\\n}\\\\n\\", \\"\\"]); // Exports @@ -12720,7 +12720,7 @@ exports[`"modules" option show work with the "compileType" and "namedExport" opt "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from \\"-!../../../../../../src/index.js??[ident]!./vars.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"primaryColor\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); @@ -12767,7 +12767,7 @@ import ___CSS_LOADER_ICSS_IMPORT_7___ from \\"-!../../../../src/index.js??[ident import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../../src/index.js??[ident]!./test-other.css\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"../../url/img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___, \\"(min-width: 100px)\\"); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_1___, \\"\\", true); @@ -13037,7 +13037,7 @@ exports[`"modules" option show work with the "compileType" option, case "duplica exports[`"modules" option show work with the "compileType" option, case "duplicate-export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13066,7 +13066,7 @@ exports[`"modules" option show work with the "compileType" option, case "duplica exports[`"modules" option show work with the "compileType" option, case "duplicate-export-in-multiple-export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13095,7 +13095,7 @@ exports[`"modules" option show work with the "compileType" option, case "empty-e exports[`"modules" option show work with the "compileType" option, case "empty-export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13121,7 +13121,7 @@ exports[`"modules" option show work with the "compileType" option, case "empty-i exports[`"modules" option show work with the "compileType" option, case "empty-import": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13147,7 +13147,7 @@ exports[`"modules" option show work with the "compileType" option, case "export" exports[`"modules" option show work with the "compileType" option, case "export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13176,7 +13176,7 @@ exports[`"modules" option show work with the "compileType" option, case "export- exports[`"modules" option show work with the "compileType" option, case "export-reserved-keywords": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13207,7 +13207,7 @@ exports[`"modules" option show work with the "compileType" option, case "import" "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../../src/index.js??[ident]!./vars.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); @@ -13246,7 +13246,7 @@ exports[`"modules" option show work with the "compileType" option, case "import- "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../../../src/index.js??[ident]!./vars.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".className {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primary-color\\"] + \\";\\\\n display: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"secondary-color\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); @@ -13286,7 +13286,7 @@ exports[`"modules" option show work with the "compileType" option, case "multipl exports[`"modules" option show work with the "compileType" option, case "multiple-export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports @@ -13316,7 +13316,7 @@ exports[`"modules" option show work with the "compileType" option, case "multipl exports[`"modules" option show work with the "compileType" option, case "multiple-keys-values-in-export": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n\\", \\"\\"]); // Exports diff --git a/test/__snapshots__/sourceMap-option.test.js.snap b/test/__snapshots__/sourceMap-option.test.js.snap index f2e57411..ac4650f4 100644 --- a/test/__snapshots__/sourceMap-option.test.js.snap +++ b/test/__snapshots__/sourceMap-option.test.js.snap @@ -22,7 +22,7 @@ exports[`"sourceMap" option false should not generate source maps when previous "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); @@ -60,7 +60,7 @@ exports[`"sourceMap" option false should not generate source maps when previous "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); @@ -98,7 +98,7 @@ exports[`"sourceMap" option false should not generate source maps: module 1`] = "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); @@ -136,7 +136,7 @@ exports[`"sourceMap" option not specified should not generate source maps: modul "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); @@ -172,8 +172,9 @@ exports[`"sourceMap" option true should generate source maps #2: errors 1`] = `A exports[`"sourceMap" option true should generate source maps #2: module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".foo {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/with-query.css\\"],\\"names\\":[],\\"mappings\\":\\"AAAA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\".foo {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); // Exports @@ -215,9 +216,10 @@ exports[`"sourceMap" option true should generate source maps and do not change " exports[`"sourceMap" option true should generate source maps and do not change "[contenthash]" on different platform: module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://test/fixtures/source-map/basic.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -371,9 +373,10 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader does not generate source maps: module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -441,9 +444,10 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates different source in source maps: module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic-1.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -511,8 +515,9 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps ("less-loader"): module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 100% Helvetica, sans-serif;\\\\n color: #333;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/base.less\\"],\\"names\\":[],\\"mappings\\":\\"AAGA;EACE,gCAAA;EACA,WAAA;AAFF\\",\\"sourcesContent\\":[\\"@font-stack: Helvetica, sans-serif;\\\\n@primary-color: #333;\\\\n\\\\nbody {\\\\n font: 100% @font-stack;\\\\n color: @primary-color;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); // Exports @@ -559,9 +564,10 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps ("postcss-loader"): module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.postcss.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\":root {\\\\n --fontSize: 1rem;\\\\n --mainColor: rgba(18,52,86,0.47059);\\\\n --secondaryColor: rgba(102, 51, 153, 0.9);\\\\n}\\\\n\\\\nhtml {\\\\n overflow-x: hidden;\\\\n overflow-y: auto;\\\\n overflow: hidden auto;\\\\n}\\\\n\\\\n@media (max-width: 50rem) {\\\\n body {\\\\n color: rgba(18,52,86,0.47059);\\\\n color: var(--mainColor);\\\\n font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, Noto Sans, sans-serif;\\\\n font-size: 1rem;\\\\n font-size: var(--fontSize);\\\\n line-height: calc(1rem * 1.5);\\\\n line-height: calc(var(--fontSize) * 1.5);\\\\n word-wrap: break-word;\\\\n padding-left: calc(1rem / 2 + 1px);\\\\n padding-right: calc(1rem / 2 + 1px);\\\\n padding-left: calc(var(--fontSize) / 2 + 1px);\\\\n padding-right: calc(var(--fontSize) / 2 + 1px);\\\\n }\\\\n}\\\\n\\\\nh1,h2,h3,h4,h5,h6 {\\\\n margin-top: 0;\\\\n margin-bottom: 0;\\\\n}\\\\n\\\\na {\\\\n color: rgba(0, 0, 255, 0.9)\\\\n}\\\\n\\\\na:hover {\\\\n color: #639;\\\\n }\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.postcss.css\\"],\\"names\\":[],\\"mappings\\":\\"AAKA;EACE,gBAAgB;EAChB,mCAAsB;EACtB,yCAA4C;AAC9C;;AAEA;EACE,kBAAqB;EAArB,gBAAqB;EAArB,qBAAqB;AACvB;;AAEA;EACE;IACE,6BAAuB;IAAvB,uBAAuB;IACvB,iGAAsB;IACtB,eAA0B;IAA1B,0BAA0B;IAC1B,6BAAwC;IAAxC,wCAAwC;IACxC,qBAAyB;IACzB,kCAA+C;IAA/C,mCAA+C;IAA/C,6CAA+C;IAA/C,8CAA+C;EACjD;AACF;;AAEA;EACE,aAAe;EAAf,gBAAe;AACjB;;AAEA;EACE;AAKF;;AAHA;GACG,WAAoB;CACtB\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.postcss.css\\\\\\";\\\\n\\\\n@custom-media --viewport-medium (width <= 50rem);\\\\n@custom-selector :--heading h1, h2, h3, h4, h5, h6;\\\\n\\\\n:root {\\\\n --fontSize: 1rem;\\\\n --mainColor: #12345678;\\\\n --secondaryColor: lab(32.5 38.5 -47.6 / 90%);\\\\n}\\\\n\\\\nhtml {\\\\n overflow: hidden auto;\\\\n}\\\\n\\\\n@media (--viewport-medium) {\\\\n body {\\\\n color: var(--mainColor);\\\\n font-family: system-ui;\\\\n font-size: var(--fontSize);\\\\n line-height: calc(var(--fontSize) * 1.5);\\\\n overflow-wrap: break-word;\\\\n padding-inline: calc(var(--fontSize) / 2 + 1px);\\\\n }\\\\n}\\\\n\\\\n:--heading {\\\\n margin-block: 0;\\\\n}\\\\n\\\\na {\\\\n color: rgb(0 0 100% / 90%);\\\\n\\\\n&:hover {\\\\n color: rebeccapurple;\\\\n }\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -699,8 +705,9 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps ("sass-loader"): module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 100% Helvetica, sans-serif;\\\\n color: #333;\\\\n}\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.scss\\"],\\"names\\":[],\\"mappings\\":\\"AAGA;EACE,gCAAA;EACA,WAJc;AAEhB\\",\\"sourcesContent\\":[\\"$font-stack: Helvetica, sans-serif;\\\\n$primary-color: #333;\\\\n\\\\nbody {\\\\n font: 100% $font-stack;\\\\n color: $primary-color;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); // Exports @@ -746,8 +753,9 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps ("stylus-loader"): module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n}\\\\nbody #logo {\\\\n border-radius: 5px;\\\\n}\\\\n/*# sourceMappingURL=test/fixtures/source-map/base.css.map */\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/base.styl\\"],\\"names\\":[],\\"mappings\\":\\"AAAA;EACE,2CAAwB;AAC1B;AAAE;EACE,kBAAe;AAEnB;AACA,4DAA4D\\",\\"sourcesContent\\":[\\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n #logo {\\\\n border-radius: 5px;\\\\n }\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); // Exports @@ -795,9 +803,10 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps with "sourceRoot": module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -865,9 +874,10 @@ exports[`"sourceMap" option true should generate source maps when previous loade exports[`"sourceMap" option true should generate source maps when previous loader generates source maps without "sourceRoot": module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); @@ -935,9 +945,10 @@ exports[`"sourceMap" option true should generate source maps: errors 1`] = `Arra exports[`"sourceMap" option true should generate source maps: module 1`] = ` "// Imports +import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWithMappingToString.js\\"; import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./nested/nested.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(true); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n color: red;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/basic.css\\"],\\"names\\":[],\\"mappings\\":\\"AAEA;EACE,UAAU;AACZ\\",\\"sourcesContent\\":[\\"@import \\\\\\"./nested/nested.css\\\\\\";\\\\n\\\\n.class {\\\\n color: red;\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); diff --git a/test/__snapshots__/url-option.test.js.snap b/test/__snapshots__/url-option.test.js.snap index 2a4a5962..6c2749ae 100644 --- a/test/__snapshots__/url-option.test.js.snap +++ b/test/__snapshots__/url-option.test.js.snap @@ -7,7 +7,7 @@ exports[`"url" option should resolve "file" protocol path: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -47,7 +47,7 @@ exports[`"url" option should resolve absolute path: module 1`] = ` import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../src/runtime/getUrl.js\\"; import ___CSS_LOADER_URL_IMPORT_0___ from \\"./img.png\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\"\\\\n.background {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.background-other {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\", \\"\\"]); @@ -127,7 +127,7 @@ import ___CSS_LOADER_URL_IMPORT_27___ from \\"./something.png?foo=bar\\"; import ___CSS_LOADER_URL_IMPORT_28___ from \\"./something.png?bar=foo\\"; import ___CSS_LOADER_URL_IMPORT_29___ from \\"./something.png?foo=1&bar=2\\"; import ___CSS_LOADER_URL_IMPORT_30___ from \\"./something.png?foo=2&bar=1\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#hash\\" }); @@ -666,7 +666,7 @@ import ___CSS_LOADER_URL_IMPORT_13___ from \\"./something.png?foo=bar\\"; import ___CSS_LOADER_URL_IMPORT_14___ from \\"./something.png?bar=foo\\"; import ___CSS_LOADER_URL_IMPORT_15___ from \\"./something.png?foo=1&bar=2\\"; import ___CSS_LOADER_URL_IMPORT_16___ from \\"./something.png?foo=2&bar=1\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___); @@ -1177,7 +1177,7 @@ exports[`"url" option should work with a value equal to "false": module 1`] = ` "// Imports import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../src/index.js??[ident]!./imported.css\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); // Module ___CSS_LOADER_EXPORT___.push([module.id, \\".class {\\\\n background: url('./img.png');\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(./img.png);\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png#hash\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\n \\\\\\"./img.png\\\\\\"\\\\n );\\\\n}\\\\n\\\\n.class {\\\\n background: green url( './img.png' ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url( \\\\\\"./img.png\\\\\\" ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url( ./img.png ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(~package/img.png) url(./other-img.png) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url( \\\\\\"./img img.png\\\\\\" ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url( './img img.png' ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(/img.png) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(data:image/png;base64,AAA) url(http://example.com/image.jpg) url(//example.com/image.png) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background-image: url(\\\\\\"data:image/svg+xml;charset=utf-8,\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background-image: url(\\\\\\"data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20viewBox%3D%270%200%2042%2026%27%20fill%3D%27%2523007aff%27%3E%3Crect%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%271%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2711%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2712%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3Crect%20y%3D%2722%27%20width%3D%274%27%20height%3D%274%27%2F%3E%3Crect%20x%3D%278%27%20y%3D%2723%27%20width%3D%2734%27%20height%3D%272%27%2F%3E%3C%2Fsvg%3E\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n filter: url('data:image/svg+xml;charset=utf-8,#filter');\\\\n}\\\\n\\\\n.class {\\\\n filter: url('data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D%5C%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%5C%22%3E%3Cfilter%20id%3D%5C%22filter%5C%22%3E%3CfeGaussianBlur%20in%3D%5C%22SourceAlpha%5C%22%20stdDeviation%3D%5C%220%5C%22%20%2F%3E%3CfeOffset%20dx%3D%5C%221%5C%22%20dy%3D%5C%222%5C%22%20result%3D%5C%22offsetblur%5C%22%20%2F%3E%3CfeFlood%20flood-color%3D%5C%22rgba(255%2C255%2C255%2C1)%5C%22%20%2F%3E%3CfeComposite%20in2%3D%5C%22offsetblur%5C%22%20operator%3D%5C%22in%5C%22%20%2F%3E%3CfeMerge%3E%3CfeMergeNode%20%2F%3E%3CfeMergeNode%20in%3D%5C%22SourceGraphic%5C%22%20%2F%3E%3C%2FfeMerge%3E%3C%2Ffilter%3E%3C%2Fsvg%3E%23filter');\\\\n}\\\\n\\\\n.highlight {\\\\n filter: url(#highlight);\\\\n}\\\\n\\\\n.highlight {\\\\n filter: url('#line-marker');\\\\n}\\\\n\\\\n@font-face {\\\\n src: url(./font.woff) format('woff'),\\\\n url('./font.woff2') format('woff2'),\\\\n url(\\\\\\"./font.eot\\\\\\") format('eot'),\\\\n url(~package/font.ttf) format('truetype'),\\\\n url(\\\\\\"./font with spaces.eot\\\\\\") format(\\\\\\"embedded-opentype\\\\\\"),\\\\n url('./font.svg#svgFontName') format('svg'),\\\\n url('./font.woff2?foo=bar') format('woff2'),\\\\n url(\\\\\\"./font.eot?#iefix\\\\\\") format('embedded-opentype'),\\\\n url(\\\\\\"./font with spaces.eot?#iefix\\\\\\") format('embedded-opentype');\\\\n}\\\\n\\\\n@media (min-width: 500px) {\\\\n body {\\\\n background: url(\\\\\\"./img.png\\\\\\");\\\\n }\\\\n}\\\\n\\\\na {\\\\n content: \\\\\\"do not use url(path)\\\\\\";\\\\n}\\\\n\\\\nb {\\\\n content: 'do not \\\\\\"use\\\\\\" url(path)';\\\\n}\\\\n\\\\n@keyframes anim {\\\\n background: green url('./img.png') xyz;\\\\n}\\\\n\\\\n.a {\\\\n background-image: -webkit-image-set(url('./img1x.png') 1x, url('./img2x.png') 2x)\\\\n}\\\\n\\\\n.a {\\\\n background-image: image-set(url('./img1x.png') 1x, url('./img2x.png') 2x)\\\\n}\\\\n\\\\n.class {\\\\n background: green url() xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url('') xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(\\\\\\"\\\\\\") xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(' ') xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(\\\\n ) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(https://raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: green url(//raw.githubusercontent.com/webpack/media/master/logo/icon.png) xyz;\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png?foo\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png?foo=bar\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png?foo=bar#hash\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png?foo=bar#hash\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background: url(\\\\\\"./img.png?\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n background-image: url('./img.png') url(\\\\\\"data:image/svg+xml;charset=utf-8,\\\\\\") url('./img.png');\\\\n}\\\\n\\\\n.class {\\\\n background: ___CSS_LOADER_URL___;\\\\n background: ___CSS_LOADER_URL___INDEX___;\\\\n background: ___CSS_LOADER_URL___99999___;\\\\n background: ___CSS_LOADER_IMPORT___;\\\\n background: ___CSS_LOADER_IMPORT___INDEX___;\\\\n background: ___CSS_LOADER_IMPORT___99999___;\\\\n}\\\\n\\\\n.pure-url {\\\\n background: url('img-simple.png');\\\\n}\\\\n\\\\n.root-relative {\\\\n background: url('/url/img-simple.png');\\\\n}\\\\n\\\\n.above-below {\\\\n background: url('../url/img-simple.png');\\\\n}\\\\n\\\\n.tilde {\\\\n background: url('~package/img.png');\\\\n}\\\\n\\\\n.aliases {\\\\n background: url('~aliasesImg/img.png') ;\\\\n}\\\\n\\\\na {\\\\n background: url(./nested/img.png);\\\\n}\\\\n\\\\na {\\\\n background: url(nested/img.png);\\\\n}\\\\n\\\\n@font-face {\\\\n src: url(\\\\\\"//at.alicdn.com/t/font_515771_emcns5054x3whfr.eot\\\\\\");\\\\n}\\\\n\\\\n.class {\\\\n /* Broken */\\\\n background-image: -webkit-image-set();\\\\n background-image: -webkit-image-set('');\\\\n background-image: image-set();\\\\n background-image: image-set('');\\\\n background-image: image-set(\\\\\\"\\\\\\");\\\\n background-image: image-set(\\\\\\"\\\\\\" 1x);\\\\n background-image: image-set(url());\\\\n background-image: image-set(\\\\n url()\\\\n );\\\\n background-image: image-set(URL());\\\\n background-image: image-set(url(''));\\\\n background-image: image-set(url(\\\\\\"\\\\\\"));\\\\n background-image: image-set(url('') 1x);\\\\n background-image: image-set(1x);\\\\n background-image: image-set(\\\\n 1x\\\\n );\\\\n background: image-set(calc(1rem + 1px) 1x);\\\\n\\\\n /* Strings */\\\\n background-image: -webkit-image-set(\\\\\\"./img1x.png\\\\\\" 1x, \\\\\\"./img2x.png\\\\\\" 2x);\\\\n background-image: image-set(\\\\\\"./img1x.png\\\\\\" 1x);\\\\n background-image: image-set(\\\\\\"./img1x.png\\\\\\" 1x, \\\\\\"./img2x.png\\\\\\" 2x);\\\\n background-image: image-set(\\\\\\"./img img.png\\\\\\" 1x, \\\\\\"./img img.png\\\\\\" 2x);\\\\n background-image: image-set(\\\\\\"./img1x.png\\\\\\" 1x, \\\\\\"./img2x.png\\\\\\" 2x),\\\\n image-set(\\\\\\"./img1x.png\\\\\\" 1x, \\\\\\"./img2x.png\\\\\\" 2x);\\\\n background-image: image-set(\\\\n \\\\\\"./img1x.png\\\\\\" 1x,\\\\n \\\\\\"./img2x.png\\\\\\" 2x,\\\\n \\\\\\"./img3x.png\\\\\\" 600dpi\\\\n );\\\\n background-image: image-set(\\\\\\"./img1x.png?foo=bar\\\\\\" 1x);\\\\n background-image: image-set(\\\\\\"./img1x.png#hash\\\\\\" 1x);\\\\n background-image: image-set(\\\\\\"./img1x.png?#iefix\\\\\\" 1x);\\\\n\\\\n /* With \`url\` function */\\\\n background-image: -webkit-image-set(url(\\\\\\"./img1x.png\\\\\\") 1x, url(\\\\\\"./img2x.png\\\\\\") 2x);\\\\n background-image: -webkit-image-set(url(\\\\\\"./img1x.png\\\\\\") 1x);\\\\n background-image: -webkit-image-set(\\\\n url(\\\\\\"./img1x.png\\\\\\") 1x\\\\n );\\\\n background-image: image-set(url(./img1x.png) 1x);\\\\n background-image: image-set(\\\\n url(./img1x.png) 1x\\\\n );\\\\n background-image: image-set(url(\\\\\\"./img1x.png\\\\\\") 1x, url(\\\\\\"./img2x.png\\\\\\") 2x);\\\\n background-image: image-set(\\\\n url(./img1x.png) 1x,\\\\n url(./img2x.png) 2x,\\\\n url(./img3x.png) 600dpi\\\\n );\\\\n background-image: image-set(url(\\\\\\"./img img.png\\\\\\") 1x, url(\\\\\\"./img img.png\\\\\\") 2x);\\\\n\\\\n background-image: image-set(url(\\\\\\"./img1x.png\\\\\\") 1x, \\\\\\"./img2x.png\\\\\\" 2x);\\\\n}\\\\n\\\\n.class {\\\\n /* Not allowed on windows */\\\\n /* background: url(./img\\\\\\\\\\\\\\"img.png); */\\\\n background: url(./img\\\\\\\\'img.png);\\\\n background: url(./img\\\\\\\\'\\\\\\\\'\\\\\\\\'img.png);\\\\n background: url(./img\\\\\\\\(img.png);\\\\n background: url(./img\\\\\\\\)img.png);\\\\n background: url(./img\\\\\\\\ img.png);\\\\n background: url(./img\\\\\\\\'\\\\\\\\(\\\\\\\\)\\\\\\\\ img.png);\\\\n\\\\n background-image: image-set(\\\\n /* Not allowed on windows */\\\\n /* url(./img\\\\\\\\\\\\\\"img.png) 1x, */\\\\n url(./img\\\\\\\\'\\\\\\\\'\\\\\\\\'img.png) 2x,\\\\n url(./img\\\\\\\\'img.png) 3x,\\\\n url(./img\\\\\\\\(img.png) 4x,\\\\n url(./img\\\\\\\\)img.png) 5x,\\\\n url(./img\\\\\\\\ img.png) 6x,\\\\n url(./img\\\\\\\\'\\\\\\\\(\\\\\\\\)\\\\\\\\ img.png) 7x\\\\n );\\\\n}\\\\n\\\\n.class-class-class {\\\\n background: url(\\\\\\"./img'''img.png\\\\\\");\\\\n background: url(\\\\\\"./img'() img.png\\\\\\");\\\\n background: url(\\\\\\"./img'img.png\\\\\\");\\\\n background: url(\\\\\\"./img(img.png\\\\\\");\\\\n background: url(\\\\\\"./img)img.png\\\\\\");\\\\n background: url('./img img.png');\\\\n background: url(\\\\\\"./img img.png\\\\\\");\\\\n}\\\\n\\\\n/* Comment */\\\\n\\\\n.class.class.class {\\\\n background: url('./img\\\\\\\\\\\\n(img.png');\\\\n background: url('./img\\\\\\\\\\\\r(img.png');\\\\n background: url('./img\\\\\\\\\\\\r\\\\n(img.png');\\\\n background: url('./img\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\n\\\\\\\\\\\\n(img.png');\\\\n}\\\\n\\\\n.other-test-case {\\\\n background: url(\\\\\\"./img%27%27%27img.png\\\\\\");\\\\n background: url(\\\\\\"./img%27%28%29%20img.png\\\\\\");\\\\n background: url(\\\\\\"./img%27img.png\\\\\\");\\\\n background: url(\\\\\\"./img%28img.png\\\\\\");\\\\n background: url(\\\\\\"./img%29img.png\\\\\\");\\\\n background: url(\\\\\\"./img%20img.png\\\\\\");\\\\n background: url(./img%27%27%27img.png);\\\\n background: url(./img%27%28%29%20img.png);\\\\n background: url(./img%27img.png);\\\\n background: url(./img%28img.png);\\\\n background: url(./img%29img.png);\\\\n background: url(./img%20img.png);\\\\n}\\\\n\\\\n.qqq {\\\\n background: url('img.png');\\\\n}\\\\n\\\\n.www {\\\\n background: url(\\\\\\"./img\\\\\\\\'\\\\\\\\'\\\\\\\\'img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\'\\\\\\\\(\\\\\\\\)\\\\\\\\ img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\'img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\(img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\)img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\ img.png\\\\\\");\\\\n background: url(\\\\\\"./\\\\\\\\69\\\\\\\\6D\\\\\\\\67.png\\\\\\");\\\\n background: url(./\\\\\\\\69\\\\\\\\6D\\\\\\\\67.png);\\\\n background: url(\\\\\\"./img\\\\\\\\27img.png\\\\\\");\\\\n background: url(\\\\\\"./img\\\\\\\\'\\\\\\\\28%29 img.png\\\\\\");\\\\n background: url(./img\\\\\\\\'\\\\\\\\28%29\\\\\\\\ img.png);\\\\n}\\\\n\\\\n.qqq {\\\\n background: url('!!../../helpers/url-loader.js?esModule=false!~package/img.png')\\\\n}\\\\n\\\\n.class {\\\\n /* Should be one import */\\\\n background: url('./something.png');\\\\n background: url('./something.png');\\\\n\\\\n background: url('./something.png?foo=bar');\\\\n background: url('./something.png?foo=bar');\\\\n\\\\n background: url('./something.png?foo=bar#hash');\\\\n background: url('./something.png?foo=bar#hash');\\\\n\\\\n /* Should be two imports */\\\\n background: url('./something.png?foo=bar');\\\\n background: url('./something.png?bar=foo');\\\\n\\\\n background: url('./something.png?foo=bar#foo');\\\\n background: url('./something.png?bar=foo#bar');\\\\n\\\\n background: url('./something.png?foo=1&bar=2');\\\\n background: url('./something.png?foo=2&bar=1');\\\\n}\\\\n\\\\n.base {\\\\n background: url(\\\\\\"data:image/svg+xml;charset=UTF-8,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3C!DOCTYPE%20svg%20PUBLIC%20%22-%2F%2FW3C%2F%2FDTD%20SVG%201.1%2F%2FEN%22%20%22http%3A%2F%2Fwww.w3.org%2FGraphics%2FSVG%2F1.1%2FDTD%2Fsvg11.dtd%22%3E%0A%3Csvg%20version%3D%221.1%22%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20xmlns%3Axlink%3D%22http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink%22%20x%3D%220px%22%20y%3D%220px%22%0A%09%20width%3D%22191px%22%20height%3D%22191px%22%20viewBox%3D%220%200%20191%20191%22%20enable-background%3D%22new%200%200%20191%20191%22%20xml%3Aspace%3D%22preserve%22%3E%0A%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M95.5%2C0C42.8%2C0%2C0%2C42.8%2C0%2C95.5S42.8%2C191%2C95.5%2C191S191%2C148.2%2C191%2C95.5S148.2%2C0%2C95.5%2C0z%20M95.5%2C187.6%0A%09c-50.848%2C0-92.1-41.25-92.1-92.1c0-50.848%2C41.252-92.1%2C92.1-92.1c50.85%2C0%2C92.1%2C41.252%2C92.1%2C92.1%0A%09C187.6%2C146.35%2C146.35%2C187.6%2C95.5%2C187.6z%22%2F%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M92.9%2C10v8.6H91v-6.5c-0.1%2C0.1-0.2%2C0.2-0.4%2C0.3c-0.2%2C0.1-0.3%2C0.2-0.4%2C0.2c-0.1%2C0-0.3%2C0.1-0.5%2C0.2%0A%09%09c-0.2%2C0.1-0.3%2C0.1-0.5%2C0.1v-1.6c0.5-0.1%2C0.9-0.3%2C1.4-0.5c0.5-0.2%2C0.8-0.5%2C1.2-0.7h1.1V10z%22%2F%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M97.1%2C17.1h3.602v1.5h-5.6V18c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.6%2C0.5-0.9c0.2-0.3%2C0.5-0.5%2C0.7-0.7%0A%09%09c0.2-0.2%2C0.5-0.4%2C0.7-0.6c0.199-0.2%2C0.5-0.3%2C0.6-0.5c0.102-0.2%2C0.301-0.3%2C0.5-0.5c0.2-0.2%2C0.2-0.3%2C0.301-0.5%0A%09%09c0.101-0.2%2C0.101-0.3%2C0.101-0.5c0-0.4-0.101-0.6-0.3-0.8c-0.2-0.2-0.4-0.3-0.801-0.3c-0.699%2C0-1.399%2C0.3-2.101%2C0.9v-1.6%0A%09%09c0.7-0.5%2C1.5-0.7%2C2.5-0.7c0.399%2C0%2C0.8%2C0.1%2C1.101%2C0.2c0.301%2C0.1%2C0.601%2C0.3%2C0.899%2C0.5c0.3%2C0.2%2C0.399%2C0.5%2C0.5%2C0.8%0A%09%09c0.101%2C0.3%2C0.2%2C0.6%2C0.2%2C1s-0.102%2C0.7-0.2%2C1c-0.099%2C0.3-0.3%2C0.6-0.5%2C0.8c-0.2%2C0.2-0.399%2C0.5-0.7%2C0.7c-0.3%2C0.2-0.5%2C0.4-0.8%2C0.6%0A%09%09c-0.2%2C0.1-0.399%2C0.3-0.5%2C0.4s-0.3%2C0.3-0.5%2C0.4s-0.2%2C0.3-0.3%2C0.4C97.1%2C17%2C97.1%2C17%2C97.1%2C17.1z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M15%2C95.4c0%2C0.7-0.1%2C1.4-0.2%2C2c-0.1%2C0.6-0.4%2C1.1-0.7%2C1.5C13.8%2C99.3%2C13.4%2C99.6%2C12.9%2C99.8s-1%2C0.3-1.5%2C0.3%0A%09%09c-0.7%2C0-1.3-0.1-1.8-0.3v-1.5c0.4%2C0.3%2C1%2C0.4%2C1.6%2C0.4c0.6%2C0%2C1.1-0.2%2C1.5-0.7c0.4-0.5%2C0.5-1.1%2C0.5-1.9l0%2C0%0A%09%09C12.8%2C96.7%2C12.3%2C96.9%2C11.5%2C96.9c-0.3%2C0-0.7-0.102-1-0.2c-0.3-0.101-0.5-0.3-0.8-0.5c-0.3-0.2-0.4-0.5-0.5-0.8%0A%09%09c-0.1-0.3-0.2-0.7-0.2-1c0-0.4%2C0.1-0.8%2C0.2-1.2c0.1-0.4%2C0.3-0.7%2C0.6-0.9c0.3-0.2%2C0.6-0.5%2C0.9-0.6c0.3-0.1%2C0.8-0.2%2C1.2-0.2%0A%09%09c0.5%2C0%2C0.9%2C0.1%2C1.2%2C0.3c0.3%2C0.2%2C0.7%2C0.4%2C0.9%2C0.8s0.5%2C0.7%2C0.6%2C1.2S15%2C94.8%2C15%2C95.4z%20M13.1%2C94.4c0-0.2%2C0-0.4-0.1-0.6%0A%09%09c-0.1-0.2-0.1-0.4-0.2-0.5c-0.1-0.1-0.2-0.2-0.4-0.3c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2%2C0-0.3%2C0-0.4%2C0.1s-0.3%2C0.2-0.3%2C0.3%0A%09%09c0%2C0.1-0.2%2C0.3-0.2%2C0.4c0%2C0.1-0.1%2C0.4-0.1%2C0.6c0%2C0.2%2C0%2C0.4%2C0.1%2C0.6c0.1%2C0.2%2C0.1%2C0.3%2C0.2%2C0.4c0.1%2C0.1%2C0.2%2C0.2%2C0.4%2C0.3%0A%09%09c0.2%2C0.1%2C0.3%2C0.1%2C0.5%2C0.1c0.2%2C0%2C0.3%2C0%2C0.4-0.1s0.2-0.2%2C0.3-0.3c0.1-0.1%2C0.2-0.2%2C0.2-0.4C13%2C94.7%2C13.1%2C94.6%2C13.1%2C94.4z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M176%2C99.7V98.1c0.6%2C0.4%2C1.2%2C0.602%2C2%2C0.602c0.5%2C0%2C0.8-0.102%2C1.1-0.301c0.301-0.199%2C0.4-0.5%2C0.4-0.801%0A%09%09c0-0.398-0.2-0.699-0.5-0.898c-0.3-0.2-0.8-0.301-1.3-0.301h-0.802V95h0.701c1.101%2C0%2C1.601-0.4%2C1.601-1.1c0-0.7-0.4-1-1.302-1%0A%09%09c-0.6%2C0-1.1%2C0.2-1.6%2C0.5v-1.5c0.6-0.3%2C1.301-0.4%2C2.1-0.4c0.9%2C0%2C1.5%2C0.2%2C2%2C0.6s0.701%2C0.9%2C0.701%2C1.5c0%2C1.1-0.601%2C1.8-1.701%2C2.1l0%2C0%0A%09%09c0.602%2C0.1%2C1.102%2C0.3%2C1.4%2C0.6s0.5%2C0.8%2C0.5%2C1.3c0%2C0.801-0.3%2C1.4-0.9%2C1.9c-0.6%2C0.5-1.398%2C0.7-2.398%2C0.7%0A%09%09C177.2%2C100.1%2C176.5%2C100%2C176%2C99.7z%22%2F%3E%0A%3C%2Fg%3E%0A%3Cg%3E%0A%09%3Cpath%20fill%3D%22%23636363%22%20d%3D%22M98.5%2C179.102c0%2C0.398-0.1%2C0.799-0.2%2C1.199C98.2%2C180.7%2C98%2C181%2C97.7%2C181.2s-0.601%2C0.5-0.9%2C0.601%0A%09%09c-0.3%2C0.1-0.7%2C0.199-1.2%2C0.199c-0.5%2C0-0.9-0.1-1.3-0.3c-0.4-0.2-0.7-0.399-0.9-0.8c-0.2-0.4-0.5-0.7-0.6-1.2%0A%09%09c-0.1-0.5-0.2-1-0.2-1.601c0-0.699%2C0.1-1.399%2C0.3-2c0.2-0.601%2C0.4-1.101%2C0.8-1.5c0.4-0.399%2C0.7-0.699%2C1.2-1c0.5-0.3%2C1-0.3%2C1.6-0.3%0A%09%09c0.6%2C0%2C1.2%2C0.101%2C1.5%2C0.199v1.5c-0.4-0.199-0.9-0.399-1.4-0.399c-0.3%2C0-0.6%2C0.101-0.8%2C0.2c-0.2%2C0.101-0.5%2C0.3-0.7%2C0.5%0A%09%09c-0.2%2C0.199-0.3%2C0.5-0.4%2C0.8c-0.1%2C0.301-0.2%2C0.7-0.2%2C1.101l0%2C0c0.4-0.601%2C1-0.8%2C1.8-0.8c0.3%2C0%2C0.7%2C0.1%2C0.9%2C0.199%0A%09%09c0.2%2C0.101%2C0.5%2C0.301%2C0.7%2C0.5c0.199%2C0.2%2C0.398%2C0.5%2C0.5%2C0.801C98.5%2C178.2%2C98.5%2C178.7%2C98.5%2C179.102z%20M96.7%2C179.2%0A%09%09c0-0.899-0.4-1.399-1.1-1.399c-0.2%2C0-0.3%2C0-0.5%2C0.1c-0.2%2C0.101-0.3%2C0.201-0.4%2C0.301c-0.1%2C0.101-0.2%2C0.199-0.2%2C0.4%0A%09%09c0%2C0.199-0.1%2C0.299-0.1%2C0.5c0%2C0.199%2C0%2C0.398%2C0.1%2C0.6s0.1%2C0.3%2C0.2%2C0.5c0.1%2C0.199%2C0.2%2C0.199%2C0.4%2C0.3c0.2%2C0.101%2C0.3%2C0.101%2C0.5%2C0.101%0A%09%09c0.2%2C0%2C0.3%2C0%2C0.5-0.101c0.2-0.101%2C0.301-0.199%2C0.301-0.3c0-0.1%2C0.199-0.301%2C0.199-0.399C96.6%2C179.7%2C96.7%2C179.4%2C96.7%2C179.2z%22%2F%3E%0A%3C%2Fg%3E%0A%3Ccircle%20fill%3D%22%23636363%22%20cx%3D%2295%22%20cy%3D%2295%22%20r%3D%227%22%2F%3E%0A%3C%2Fsvg%3E%0A\\\\\\") 50% 50%/191px no-repeat;\\\\n}\\\\n\\\\n.strange {\\\\n background: url('%2E/img.png');\\\\n}\\\\n\\", \\"\\"]); @@ -1627,7 +1627,7 @@ import ___CSS_LOADER_URL_IMPORT_27___ from \\"./something.png?foo=bar\\"; import ___CSS_LOADER_URL_IMPORT_28___ from \\"./something.png?bar=foo\\"; import ___CSS_LOADER_URL_IMPORT_29___ from \\"./something.png?foo=1&bar=2\\"; import ___CSS_LOADER_URL_IMPORT_30___ from \\"./something.png?foo=2&bar=1\\"; -var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(false); +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_AT_RULE_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); var ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___, { hash: \\"#hash\\" }); diff --git a/test/runtime/api.test.js b/test/runtime/api.test.js index e7da8722..6518ad6e 100644 --- a/test/runtime/api.test.js +++ b/test/runtime/api.test.js @@ -2,7 +2,10 @@ * @jest-environment jsdom */ +/* eslint-disable func-names */ + const api = require('../../src/runtime/api'); +const cssWithMappingToString = require('../../src/runtime/cssWithMappingToString'); describe('api', () => { beforeAll(() => { @@ -24,7 +27,9 @@ describe('api', () => { }); it('should toString a single module', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); m.push([1, 'body { a: 1; }', '']); @@ -32,7 +37,9 @@ describe('api', () => { }); it('should toString multiple modules', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); m.push([2, 'body { b: 2; }', '']); m.push([1, 'body { a: 1; }', '']); @@ -41,7 +48,9 @@ describe('api', () => { }); it('should toString with media query', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); const m1 = [1, 'body { a: 1; }', 'screen']; const m2 = [2, 'body { b: 2; }', '']; @@ -57,7 +66,9 @@ describe('api', () => { }); it('should import modules', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); const m1 = [1, 'body { a: 1; }', '(orientation:landscape)']; const m2 = [2, 'body { b: 2; }', '']; const m3 = [3, 'body { c: 3; }', '']; @@ -73,7 +84,9 @@ describe('api', () => { }); it('should import named modules', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); const m1 = ['./module1', 'body { a: 1; }', 'screen']; const m2 = ['./module2', 'body { b: 2; }', '']; const m3 = ['./module3', 'body { c: 3; }', '']; @@ -88,7 +101,7 @@ describe('api', () => { }); it('should toString with source mapping', () => { - const m = api(true); + const m = api(cssWithMappingToString); m.push([ 1, @@ -106,7 +119,7 @@ describe('api', () => { }); it('should toString with a source map without "sourceRoot"', () => { - const m = api(true); + const m = api(cssWithMappingToString); m.push([ 1, @@ -125,7 +138,7 @@ describe('api', () => { it('should toString without source mapping if btoa not available', () => { global.btoa = null; - const m = api(true); + const m = api(cssWithMappingToString); m.push([ 1, @@ -143,7 +156,9 @@ describe('api', () => { }); it('should import modules with dedupe', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); const m1 = [null, 'body { b: 1; }', '']; const m2 = ['./module2', 'body { b: 2; }', '']; @@ -160,7 +175,9 @@ describe('api', () => { }); it('should import modules when module string', () => { - const m = api(); + const m = api(function (i) { + return i[1]; + }); m.i('.button { b: 2; }'); m.i(''); @@ -168,3 +185,4 @@ describe('api', () => { expect(m.toString()).toMatchSnapshot(); }); }); +/* eslint-enable func-names */ diff --git a/test/sourceMap-option.test.js b/test/sourceMap-option.test.js index 698578da..65af0130 100644 --- a/test/sourceMap-option.test.js +++ b/test/sourceMap-option.test.js @@ -501,8 +501,8 @@ describe('"sourceMap" option', () => { expect(chunkName).toBe( webpack.version[0] === '5' - ? 'main.f8a941345941e8190135.bundle.js' - : 'main.bad4e3fa71e9f3e4c073.bundle.js' + ? 'main.02755d36ce181558963d.bundle.js' + : 'main.535d928b9abb27709302.bundle.js' ); expect( getModuleSource('fixtures/source-map/basic.css', stats) From 63b41beed479aa67b453d352c60b6e91fa54c99f Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Thu, 24 Sep 2020 23:59:18 +0300 Subject: [PATCH 09/15] refactor: emoji deprecate BREAKING CHANGE: `emoji` was deprecated --- src/utils.js | 6 ++++++ test/__snapshots__/modules-option.test.js.snap | 9 +++++++++ test/modules-option.test.js | 12 ++++++++++++ 3 files changed, 27 insertions(+) diff --git a/src/utils.js b/src/utils.js index c3990f10..39a85979 100644 --- a/src/utils.js +++ b/src/utils.js @@ -210,6 +210,12 @@ function getModulesOptions(rawOptions, loaderContext) { } } + if (/\[emoji(?::(\d+))?\]/i.test(modulesOptions.localIdentName)) { + loaderContext.emitWarning( + 'Emoji is deprecated and will be removed in next major release.' + ); + } + return modulesOptions; } diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 16f2cdeb..08d773b6 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -699,6 +699,15 @@ Array [ exports[`"modules" option should dedupe same modules in one module (issue #1037): warnings 1`] = `Array []`; +exports[`"modules" option should emit warning when localIdentName is emoji: errors 1`] = `Array []`; + +exports[`"modules" option should emit warning when localIdentName is emoji: warnings 1`] = ` +Array [ + "ModuleWarning: Module Warning (from \`replaced original path\`): +(Emitted value instead of an instance of Error) Emoji is deprecated and will be removed in next major release.", +] +`; + exports[`"modules" option should keep order: errors 1`] = `Array []`; exports[`"modules" option should keep order: module 1`] = ` diff --git a/test/modules-option.test.js b/test/modules-option.test.js index 06b7cd27..1bb121ae 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -1389,4 +1389,16 @@ describe('"modules" option', () => { expect(getWarnings(stats)).toMatchSnapshot('warnings'); expect(getErrors(stats)).toMatchSnapshot('errors'); }); + + it('should emit warning when localIdentName is emoji', async () => { + const compiler = getCompiler('./modules/pure/pure.js', { + modules: { + localIdentName: '[emoji:0]', + }, + }); + const stats = await compile(compiler); + + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); }); From e5a9272c3c2e0d3c5ddfc4b8fcb2b8148f49c9ed Mon Sep 17 00:00:00 2001 From: Alexander Krasnoyarov Date: Tue, 6 Oct 2020 13:44:44 +0300 Subject: [PATCH 10/15] chore(deps): update (#1203) --- package-lock.json | 2241 ++++++++++++----- package.json | 26 +- src/index.js | 4 +- .../sourceMap-option.test.js.snap | 6 +- test/sourceMap-option.test.js | 2 +- 5 files changed, 1573 insertions(+), 706 deletions(-) diff --git a/package-lock.json b/package-lock.json index 542082b1..632788f8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -82,12 +82,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -1107,12 +1107,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -1171,12 +1171,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1258,12 +1257,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1347,12 +1345,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1534,12 +1531,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "globals": { @@ -1605,26 +1602,25 @@ "dev": true }, "@jest/console": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.3.0.tgz", - "integrity": "sha512-/5Pn6sJev0nPUcAdpJHMVIsA8sKizL2ZkcKPE5+dJrCccks7tcM7c9wbgHudBJbxXLoTbqsHkG1Dofoem4F09w==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.5.0.tgz", + "integrity": "sha512-oh59scth4yf8XUgMJb8ruY7BHm0X5JZDNgGGsVnlOt2XQuq9s2NMllIrN4n70Yds+++bjrTGZ9EoOKraaPKPlg==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^26.3.0", - "jest-util": "^26.3.0", + "jest-message-util": "^26.5.0", + "jest-util": "^26.5.0", "slash": "^3.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1677,34 +1673,34 @@ } }, "@jest/core": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.4.2.tgz", - "integrity": "sha512-sDva7YkeNprxJfepOctzS8cAk9TOekldh+5FhVuXS40+94SHbiicRO1VV2tSoRtgIo+POs/Cdyf8p76vPTd6dg==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.5.0.tgz", + "integrity": "sha512-hDtgfzYxnrQn54+0JlbqpXM4+bqDfK0ooMlNE4Nn3VBsB4RbmytAn4/kVVIcMa+aYwRr/fwzWuGJwBETVg1sDw==", "dev": true, "requires": { - "@jest/console": "^26.3.0", - "@jest/reporters": "^26.4.1", - "@jest/test-result": "^26.3.0", - "@jest/transform": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/console": "^26.5.0", + "@jest/reporters": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/transform": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.3.0", - "jest-config": "^26.4.2", - "jest-haste-map": "^26.3.0", - "jest-message-util": "^26.3.0", + "jest-changed-files": "^26.5.0", + "jest-config": "^26.5.0", + "jest-haste-map": "^26.5.0", + "jest-message-util": "^26.5.0", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.4.0", - "jest-resolve-dependencies": "^26.4.2", - "jest-runner": "^26.4.2", - "jest-runtime": "^26.4.2", - "jest-snapshot": "^26.4.2", - "jest-util": "^26.3.0", - "jest-validate": "^26.4.2", - "jest-watcher": "^26.3.0", + "jest-resolve": "^26.5.0", + "jest-resolve-dependencies": "^26.5.0", + "jest-runner": "^26.5.0", + "jest-runtime": "^26.5.0", + "jest-snapshot": "^26.5.0", + "jest-util": "^26.5.0", + "jest-validate": "^26.5.0", + "jest-watcher": "^26.5.0", "micromatch": "^4.0.2", "p-each-series": "^2.1.0", "rimraf": "^3.0.0", @@ -1722,12 +1718,11 @@ } }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1829,53 +1824,53 @@ } }, "@jest/environment": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.3.0.tgz", - "integrity": "sha512-EW+MFEo0DGHahf83RAaiqQx688qpXgl99wdb8Fy67ybyzHwR1a58LHcO376xQJHfmoXTu89M09dH3J509cx2AA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.5.0.tgz", + "integrity": "sha512-0F3G9EyZU2NAP0/c/5EqVx4DmldQtRxj0gMl3p3ciSCdyMiCyDmpdE7O0mKTSiFDyl1kU4TfgEVf0r0vMkmYcw==", "dev": true, "requires": { - "@jest/fake-timers": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/fake-timers": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", - "jest-mock": "^26.3.0" + "jest-mock": "^26.5.0" } }, "@jest/fake-timers": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.3.0.tgz", - "integrity": "sha512-ZL9ytUiRwVP8ujfRepffokBvD2KbxbqMhrXSBhSdAhISCw3gOkuntisiSFv+A6HN0n0fF4cxzICEKZENLmW+1A==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.5.0.tgz", + "integrity": "sha512-sQK6xUembaZ0qLnZpSjJJuJiKvyrjCJhaYjbmatFpj5+cM8h2D7YEkeEBC26BMzvF1O3tNM9OL7roqyBmom0KA==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "@sinonjs/fake-timers": "^6.0.1", "@types/node": "*", - "jest-message-util": "^26.3.0", - "jest-mock": "^26.3.0", - "jest-util": "^26.3.0" + "jest-message-util": "^26.5.0", + "jest-mock": "^26.5.0", + "jest-util": "^26.5.0" } }, "@jest/globals": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.4.2.tgz", - "integrity": "sha512-Ot5ouAlehhHLRhc+sDz2/9bmNv9p5ZWZ9LE1pXGGTCXBasmi5jnYjlgYcYt03FBwLmZXCZ7GrL29c33/XRQiow==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.5.0.tgz", + "integrity": "sha512-TCKx3XWR9h/yyhQbz0C1sXkK2e8WJOnkP40T9bewNpf2Ahr1UEyKXnCoQO0JCpXFkWGTXBNo1QAgTQ3+LhXfcA==", "dev": true, "requires": { - "@jest/environment": "^26.3.0", - "@jest/types": "^26.3.0", - "expect": "^26.4.2" + "@jest/environment": "^26.5.0", + "@jest/types": "^26.5.0", + "expect": "^26.5.0" } }, "@jest/reporters": { - "version": "26.4.1", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.4.1.tgz", - "integrity": "sha512-aROTkCLU8++yiRGVxLsuDmZsQEKO6LprlrxtAuzvtpbIFl3eIjgIf3EUxDKgomkS25R9ZzwGEdB5weCcBZlrpQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.5.0.tgz", + "integrity": "sha512-lUl5bbTHflDO9dQa85ZTHasPBVsyC48t9sg/VN2wC3OJryclFNqN4Xfo2FgnNl/pzCnzO2MVgMyIij5aNkod2w==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.3.0", - "@jest/test-result": "^26.3.0", - "@jest/transform": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/console": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/transform": "^26.5.0", + "@jest/types": "^26.5.0", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", @@ -1886,10 +1881,10 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.3.0", - "jest-resolve": "^26.4.0", - "jest-util": "^26.3.0", - "jest-worker": "^26.3.0", + "jest-haste-map": "^26.5.0", + "jest-resolve": "^26.5.0", + "jest-util": "^26.5.0", + "jest-worker": "^26.5.0", "node-notifier": "^8.0.0", "slash": "^3.0.0", "source-map": "^0.6.0", @@ -1899,12 +1894,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -1957,9 +1951,9 @@ } }, "@jest/source-map": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.3.0.tgz", - "integrity": "sha512-hWX5IHmMDWe1kyrKl7IhFwqOuAreIwHhbe44+XH2ZRHjrKIh0LO5eLQ/vxHFeAfRwJapmxuqlGAEYLadDq6ZGQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-26.5.0.tgz", + "integrity": "sha512-jWAw9ZwYHJMe9eZq/WrsHlwF8E3hM9gynlcDpOyCb9bR8wEd9ZNBZCi7/jZyzHxC7t3thZ10gO2IDhu0bPKS5g==", "dev": true, "requires": { "callsites": "^3.0.0", @@ -1968,46 +1962,46 @@ } }, "@jest/test-result": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.3.0.tgz", - "integrity": "sha512-a8rbLqzW/q7HWheFVMtghXV79Xk+GWwOK1FrtimpI5n1la2SY0qHri3/b0/1F0Ve0/yJmV8pEhxDfVwiUBGtgg==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.5.0.tgz", + "integrity": "sha512-CaVXxDQi31LPOsz5/+iajNHQlA1Je/jQ8uYH/lCa6Y/UrkO+sDHeEH3x/inbx06PctVDnTwIlCcBvNNbC4FCvQ==", "dev": true, "requires": { - "@jest/console": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/console": "^26.5.0", + "@jest/types": "^26.5.0", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" } }, "@jest/test-sequencer": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.4.2.tgz", - "integrity": "sha512-83DRD8N3M0tOhz9h0bn6Kl6dSp+US6DazuVF8J9m21WAp5x7CqSMaNycMP0aemC/SH/pDQQddbsfHRTBXVUgog==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.5.0.tgz", + "integrity": "sha512-23oofRXqPEy37HyHWIYf7lzzOqtGBkai5erZiL6RgxlyXE7a0lCihf6b5DfAvcD3yUtbXmh3EzpjJDVH57zQrg==", "dev": true, "requires": { - "@jest/test-result": "^26.3.0", + "@jest/test-result": "^26.5.0", "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.3.0", - "jest-runner": "^26.4.2", - "jest-runtime": "^26.4.2" + "jest-haste-map": "^26.5.0", + "jest-runner": "^26.5.0", + "jest-runtime": "^26.5.0" } }, "@jest/transform": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.3.0.tgz", - "integrity": "sha512-Isj6NB68QorGoFWvcOjlUhpkT56PqNIsXKR7XfvoDlCANn/IANlh8DrKAA2l2JKC3yWSMH5wS0GwuQM20w3b2A==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.5.0.tgz", + "integrity": "sha512-Kt4WciOruTyTkJ2DZ+xtZiejRj3v22BrXCYZoGRbI0N6Q6tt2HdsWrrEtn6nlK24QWKC389xKkVk4Xr2gWBZQA==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "babel-plugin-istanbul": "^6.0.0", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.3.0", + "jest-haste-map": "^26.5.0", "jest-regex-util": "^26.0.0", - "jest-util": "^26.3.0", + "jest-util": "^26.5.0", "micromatch": "^4.0.2", "pirates": "^4.0.1", "slash": "^3.0.0", @@ -2016,12 +2010,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -2117,9 +2110,9 @@ } }, "@jest/types": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.3.0.tgz", - "integrity": "sha512-BDPG23U0qDeAvU4f99haztXwdAg3hz4El95LkAM+tHAqqhiVzRpEGHHU8EDxT/AnxOrA65YjLBwDahdJ9pTLJQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.5.0.tgz", + "integrity": "sha512-nH9DFLqaIhB+RVgjivemvMiFSWw/BKwbZGxBAMv8CCTvUyFoK8RwHhAlmlXIvMBrf5Z3YQ4p9cq3Qh9EDctGvA==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.0", @@ -2130,12 +2123,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -2226,9 +2218,9 @@ } }, "@types/babel__core": { - "version": "7.1.9", - "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.9.tgz", - "integrity": "sha512-sY2RsIJ5rpER1u3/aQ8OFSI7qGIy8o1NEEbgb2UaJcvOtXOMpd39ko723NBpjQFg9SIX7TXtjejZVGeIMLhoOw==", + "version": "7.1.10", + "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.1.10.tgz", + "integrity": "sha512-x8OM8XzITIMyiwl5Vmo2B1cR1S1Ipkyv4mdlbJjMa1lmuKvKY9FrBbEANIaMlnWn5Rf7uO+rC/VgYabNkE17Hw==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -2239,18 +2231,18 @@ } }, "@types/babel__generator": { - "version": "7.6.1", - "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.1.tgz", - "integrity": "sha512-bBKm+2VPJcMRVwNhxKu8W+5/zT7pwNEqeokFOmbvVSqGzFneNxYcEBro9Ac7/N9tlsaPYnZLK8J1LWKkMsLAew==", + "version": "7.6.2", + "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.6.2.tgz", + "integrity": "sha512-MdSJnBjl+bdwkLskZ3NGFp9YcXGx5ggLpQQPqtgakVhsWK0hTtNYhjpZLlWQTviGTvF8at+Bvli3jV7faPdgeQ==", "dev": true, "requires": { "@babel/types": "^7.0.0" } }, "@types/babel__template": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.2.tgz", - "integrity": "sha512-/K6zCpeW7Imzgab2bLkLEbz0+1JlFSrUMdw7KoIIu+IUdu51GWaBZpd3y1VXGVXzynvGa4DaIaxNZHiON3GXUg==", + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.0.3.tgz", + "integrity": "sha512-uCoznIPDmnickEi6D0v11SBpW0OuVqHJCa7syXqQHy5uktSCreIlt0iglsCnmvz8yCb38hGcWeseA8cWJSwv5Q==", "dev": true, "requires": { "@babel/parser": "^7.1.0", @@ -2258,20 +2250,14 @@ } }, "@types/babel__traverse": { - "version": "7.0.13", - "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.13.tgz", - "integrity": "sha512-i+zS7t6/s9cdQvbqKDARrcbrPvtJGlbYsMkazo03nTAK3RX9FNrLllXys22uiTGJapPOTZTQ35nHh4ISph4SLQ==", + "version": "7.0.15", + "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.0.15.tgz", + "integrity": "sha512-Pzh9O3sTK8V6I1olsXpCfj2k/ygO2q1X0vhhnDrEQyYLHZesWz+zMZMVcwXLCYf0U36EtmyYaFGPfXlTtDHe3A==", "dev": true, "requires": { "@babel/types": "^7.3.0" } }, - "@types/color-name": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@types/color-name/-/color-name-1.1.1.tgz", - "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", - "dev": true - }, "@types/glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", @@ -2339,9 +2325,9 @@ "dev": true }, "@types/node": { - "version": "14.6.4", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.6.4.tgz", - "integrity": "sha512-Wk7nG1JSaMfMpoMJDKUsWYugliB2Vy55pdjLpmLixeyMi7HizW2I/9QoxsPCkXl3dO+ZOVqPumKaDUv5zJu2uQ==", + "version": "14.11.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.5.tgz", + "integrity": "sha512-jVFzDV6NTbrLMxm4xDSIW/gKnk8rQLF9wAzLWIOg+5nU6ACrIMndeBdXci0FGtqJbP9tQvm6V39eshc96TO2wQ==", "dev": true }, "@types/normalize-package-data": { @@ -2357,21 +2343,21 @@ "dev": true }, "@types/prettier": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.0.tgz", - "integrity": "sha512-hiYA88aHiEIgDmeKlsyVsuQdcFn3Z2VuFd/Xm/HCnGnPD8UFU5BM128uzzRVVGEzKDKYUrRsRH9S2o+NUy/3IA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.1.tgz", + "integrity": "sha512-2zs+O+UkDsJ1Vcp667pd3f8xearMdopz/z54i99wtRDI5KLmngk7vlrYZD0ZjKHaROR03EznlBbVY9PfAEyJIQ==", "dev": true }, "@types/stack-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-1.0.1.tgz", - "integrity": "sha512-l42BggppR6zLmpfU6fq9HEa2oGPEI8yrSPL3GITjfRInppYFahObbIQOQK3UGxEnyQpltZLaPe75046NOZQikw==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.0.tgz", + "integrity": "sha512-RJJrrySY7A8havqpGObOB4W92QXKJo63/jFLLgpvOtsGUqbQZ9Sbgl35KMm1DjC6j7AvmmU2bIno+3IyEaemaw==", "dev": true }, "@types/yargs": { - "version": "15.0.5", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.5.tgz", - "integrity": "sha512-Dk/IDOPtOgubt/IaevIUbTgV7doaKkoorvOyYM2CMwuDyP89bekI7H4xLIwunNYiK9jhCkmc6pUrJk3cj2AB9w==", + "version": "15.0.7", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.7.tgz", + "integrity": "sha512-Gf4u3EjaPNcC9cTu4/j2oN14nSVhr8PQ+BvBcBQHAhDZfl0bVIiLgvnRXv/dn58XhTm9UXvBpvJpDlwV65QxOA==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -2635,15 +2621,15 @@ } }, "abab": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.4.tgz", - "integrity": "sha512-Eu9ELJWCz/c1e9gTiCY+FceWxcqzjYEbqMgtndnuSqZSUCOL73TWNK2mHfIj4Cw2E/ongOp+JISVNCmovt2KYQ==", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", + "integrity": "sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q==", "dev": true }, "acorn": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", - "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz", + "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==", "dev": true }, "acorn-globals": { @@ -2657,9 +2643,9 @@ }, "dependencies": { "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true } } @@ -2693,9 +2679,9 @@ } }, "ajv": { - "version": "6.12.4", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.4.tgz", - "integrity": "sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ==", + "version": "6.12.5", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz", + "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -2831,6 +2817,27 @@ "define-properties": "^1.1.3", "es-abstract": "^1.17.0", "is-string": "^1.0.5" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "array-union": { @@ -2853,6 +2860,27 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "arrify": { @@ -2978,6 +3006,19 @@ "num2fraction": "^1.2.2", "postcss": "^7.0.32", "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "aws-sign2": { @@ -3052,28 +3093,27 @@ } }, "babel-jest": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.3.0.tgz", - "integrity": "sha512-sxPnQGEyHAOPF8NcUsD0g7hDCnvLL2XyblRBcgrzTWBB/mAIpWow3n1bEL+VghnnZfreLhFSBsFluRoK2tRK4g==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.5.0.tgz", + "integrity": "sha512-Cy16ZJrds81C+JASaOIGNlpCeqW3PTOq36owv+Zzwde5NiWz+zNduwxUNF57vxc/3SnIWo8HHqTczhN8GLoXTw==", "dev": true, "requires": { - "@jest/transform": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/transform": "^26.5.0", + "@jest/types": "^26.5.0", "@types/babel__core": "^7.1.7", "babel-plugin-istanbul": "^6.0.0", - "babel-preset-jest": "^26.3.0", + "babel-preset-jest": "^26.5.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", "slash": "^3.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -3148,9 +3188,9 @@ } }, "babel-plugin-jest-hoist": { - "version": "26.2.0", - "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.2.0.tgz", - "integrity": "sha512-B/hVMRv8Nh1sQ1a3EY8I0n4Y1Wty3NrR5ebOyVT302op+DOAau+xNEImGMsUWOC3++ZlMooCytKz+NgN8aKGbA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.5.0.tgz", + "integrity": "sha512-ck17uZFD3CDfuwCLATWZxkkuGGFhMij8quP8CNhwj8ek1mqFgbFzRJ30xwC04LLscj/aKsVFfRST+b5PT7rSuw==", "dev": true, "requires": { "@babel/template": "^7.3.3", @@ -3160,9 +3200,9 @@ } }, "babel-preset-current-node-syntax": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.3.tgz", - "integrity": "sha512-uyexu1sVwcdFnyq9o8UQYsXwXflIh8LvrF5+cKrYam93ned1CStffB3+BEcsxGSgagoA3GEyjDqO4a/58hyPYQ==", + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-0.1.4.tgz", + "integrity": "sha512-5/INNCYhUGqw7VbVjT/hb3ucjgkVHKXY7lX3ZjlN4gm565VyFmJUrJ/h+h16ECVB38R/9SF6aACydpKMLZ/c9w==", "dev": true, "requires": { "@babel/plugin-syntax-async-generators": "^7.8.4", @@ -3179,12 +3219,12 @@ } }, "babel-preset-jest": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.3.0.tgz", - "integrity": "sha512-5WPdf7nyYi2/eRxCbVrE1kKCWxgWY4RsPEbdJWFm7QsesFGqjdkyLeu1zRkwM1cxK6EPIlNd6d2AxLk7J+t4pw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-26.5.0.tgz", + "integrity": "sha512-F2vTluljhqkiGSJGBg/jOruA8vIIIL11YrxRcO7nviNTMbbofPSHwnm8mgP7d/wS7wRSexRoI6X1A6T74d4LQA==", "dev": true, "requires": { - "babel-plugin-jest-hoist": "^26.2.0", + "babel-plugin-jest-hoist": "^26.5.0", "babel-preset-current-node-syntax": "^0.1.3" } }, @@ -3246,6 +3286,12 @@ "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -3333,6 +3379,12 @@ "requires": { "is-extendable": "^0.1.0" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -3449,15 +3501,15 @@ } }, "browserslist": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.1.tgz", - "integrity": "sha512-zyBTIHydW37pnb63c7fHFXUG6EcqWOqoMdDx6cdyaDFriZ20EoVxcE95S54N+heRqY8m8IUgB5zYta/gCwSaaA==", + "version": "4.14.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.5.tgz", + "integrity": "sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001124", - "electron-to-chromium": "^1.3.562", - "escalade": "^3.0.2", - "node-releases": "^1.1.60" + "caniuse-lite": "^1.0.30001135", + "electron-to-chromium": "^1.3.571", + "escalade": "^3.1.0", + "node-releases": "^1.1.61" } }, "bser": { @@ -3562,6 +3614,14 @@ "to-object-path": "^0.3.0", "union-value": "^1.0.0", "unset-value": "^1.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "callsites": { @@ -3595,9 +3655,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001124", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001124.tgz", - "integrity": "sha512-zQW8V3CdND7GHRH6rxm6s59Ww4g/qGWTheoboW9nfeMg7sUoopIfKCcNZUjwYRCOrvereh3kwDpZj4VLQ7zGtA==", + "version": "1.0.30001144", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001144.tgz", + "integrity": "sha512-4GQTEWNMnVZVOFG3BK0xvGeaDAtiPAbG2N8yuMXuXzx/c2Vd4XoMPO8+E918zeXn5IF0FRVtGShBfkfQea2wHQ==", "dev": true }, "caporal": { @@ -3729,6 +3789,12 @@ "requires": { "is-descriptor": "^0.1.0" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -3802,12 +3868,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -3906,8 +3971,7 @@ "colorette": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", - "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", - "dev": true + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==" }, "colors": { "version": "1.4.0", @@ -4942,6 +5006,19 @@ "dev": true, "requires": { "postcss": "^7.0.5" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "css-has-pseudo": { @@ -4960,6 +5037,17 @@ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "dev": true }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, "postcss-selector-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", @@ -4989,6 +5077,19 @@ "dev": true, "requires": { "postcss": "^7.0.5" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "cssdb": { @@ -5112,9 +5213,9 @@ } }, "decimal.js": { - "version": "10.2.0", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.0.tgz", - "integrity": "sha512-vDPw+rDgn3bZe1+F/pyEwb1oMG2XTlRVgAa6B4KccTEpYgF8w6eQllVbQcfIJnZyvzFtFpxnpGtx8dd7DJp/Rw==", + "version": "10.2.1", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.2.1.tgz", + "integrity": "sha512-KaL7+6Fw6i5A2XSnsbhm/6B+NuEA7TZ4vqxnd5tXz9sbKtrN9Srj8ab4vKVdK8YAqZO9P1kg45Y6YLoduPf+kw==", "dev": true }, "decode-uri-component": { @@ -5194,22 +5295,28 @@ "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, "del": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", - "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", "dev": true, "requires": { - "globby": "^10.0.1", - "graceful-fs": "^4.2.2", + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", "is-glob": "^4.0.1", "is-path-cwd": "^2.2.0", - "is-path-inside": "^3.0.1", - "p-map": "^3.0.0", - "rimraf": "^3.0.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", "slash": "^3.0.0" }, "dependencies": { @@ -5231,6 +5338,38 @@ "meow": "^6.1.1" }, "dependencies": { + "del": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/del/-/del-5.1.0.tgz", + "integrity": "sha512-wH9xOVHnczo9jN2IW68BabcecVPxacIA3g/7z6vhSU/4stOKQzeCRK0yD0A24WiAAUJmmVpWqrERcTxnLo3AnA==", + "dev": true, + "requires": { + "globby": "^10.0.1", + "graceful-fs": "^4.2.2", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.1", + "p-map": "^3.0.0", + "rimraf": "^3.0.0", + "slash": "^3.0.0" + } + }, + "globby": { + "version": "10.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", + "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "dev": true, + "requires": { + "@types/glob": "^7.1.1", + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.0.3", + "glob": "^7.1.3", + "ignore": "^5.1.1", + "merge2": "^1.2.3", + "slash": "^3.0.0" + } + }, "meow": { "version": "6.1.1", "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz", @@ -5249,6 +5388,21 @@ "type-fest": "^0.13.1", "yargs-parser": "^18.1.3" } + }, + "p-map": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", + "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "dev": true, + "requires": { + "aggregate-error": "^3.0.0" + } + }, + "slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true } } }, @@ -5287,9 +5441,9 @@ "dev": true }, "diff-sequences": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.3.0.tgz", - "integrity": "sha512-5j5vdRcw3CNctePNYN0Wy2e/JbWT6cAYnXv5OuqPhDpyCGc0uLu2TK0zOCJWNB9kOIfYMSpIulRaDgIi4HJ6Ig==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-26.5.0.tgz", + "integrity": "sha512-ZXx86srb/iYy6jG71k++wBN9P9J05UNQ5hQHQd9MtMPvcqXPx/vKU69jfHV637D00Q2gSgPk2D+jSx3l1lDW/Q==", "dev": true }, "diffie-hellman": { @@ -5456,9 +5610,9 @@ } }, "electron-to-chromium": { - "version": "1.3.564", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.564.tgz", - "integrity": "sha512-fNaYN3EtKQWLQsrKXui8mzcryJXuA0LbCLoizeX6oayG2emBaS5MauKjCPAvc29NEY4FpLHIUWiP+Y0Bfrs5dg==", + "version": "1.3.577", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.577.tgz", + "integrity": "sha512-dSb64JQSFif/pD8mpVAgSFkbVi6YHbK6JeEziwNNmXlr/Ne2rZtseFK5SM7JoWSLf6gP0gVvRGi4/2ZRhSX/rA==", "dev": true }, "elliptic": { @@ -5561,31 +5715,32 @@ } }, "es-abstract": { - "version": "1.17.6", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.6.tgz", - "integrity": "sha512-Fr89bON3WFyUi5EvAeI48QTWX0AyekGgLA8H+c+7fbfCkJwRWRMLd8CQedNEyJuoYYhmtEqY92pgte1FAhBlhw==", + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", "has": "^1.0.3", "has-symbols": "^1.0.1", - "is-callable": "^1.2.0", - "is-regex": "^1.1.0", - "object-inspect": "^1.7.0", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", "object-keys": "^1.1.1", - "object.assign": "^4.1.0", + "object.assign": "^4.1.1", "string.prototype.trimend": "^1.0.1", "string.prototype.trimstart": "^1.0.1" } }, "es-check": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/es-check/-/es-check-5.1.0.tgz", - "integrity": "sha512-QlRhlUmEpdnleBFYWRFROm8u9cNPOWdE1iXQPWiQXnwmlJZ0hSxWpLOXwpFLyRrwnTmt5xqYM/5OR8Ao0MYa8w==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/es-check/-/es-check-5.1.1.tgz", + "integrity": "sha512-EJMJ68dMrs8iLNbUdGylySGnvxpigzLi21qQWen4TS1kbsRildLXpf+Sk72LAQYAjo8CZqeI+KZ6KII5xeehBw==", "dev": true, "requires": { - "acorn": "6.1.1", + "acorn": "^6.4.1", "caporal": "1.3.0", "glob": "^7.1.2" } @@ -5602,9 +5757,9 @@ } }, "escalade": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.0.2.tgz", - "integrity": "sha512-gPYAU37hYCUhW5euPeR+Y74F7BL+IBsV93j5cvGriSaD1aG6MGsqsV1yamRdrWrb2j3aiZvb0X+UBOWpx3JWtQ==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.0.tgz", + "integrity": "sha512-mAk+hPSO8fLDkhV7V0dXazH5pDc6MrjBTPyD3VeKzxnVFjH1MIxbCdqGZB9O8+EwWakZs3ZCbDS4IpRt79V1ig==", "dev": true }, "escape-string-regexp": { @@ -5673,9 +5828,9 @@ } }, "eslint": { - "version": "7.8.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.8.1.tgz", - "integrity": "sha512-/2rX2pfhyUG0y+A123d0ccXtMm7DV7sH1m3lk9nk2DZ2LReq39FXHueR9xZwshE5MdfSf0xunSaMWRqyIA6M1w==", + "version": "7.10.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.10.0.tgz", + "integrity": "sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -5686,7 +5841,7 @@ "debug": "^4.0.1", "doctrine": "^3.0.0", "enquirer": "^2.3.5", - "eslint-scope": "^5.1.0", + "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", "eslint-visitor-keys": "^1.3.0", "espree": "^7.3.0", @@ -5718,12 +5873,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -5764,12 +5918,12 @@ } }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "glob-parent": { @@ -5862,9 +6016,9 @@ } }, "eslint-config-prettier": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.11.0.tgz", - "integrity": "sha512-oB8cpLWSAjOVFEJhhyMZh6NOEOtBVziaqdDQ86+qhDHFbZXoRTM7pNSvFRfW/W/L/LrQ38C99J5CGuRBBzBsdA==", + "version": "6.12.0", + "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.12.0.tgz", + "integrity": "sha512-9jWPlFlgNwRUYVoujvWTQ1aMO8o6648r+K7qU7K5Jmkbyqav1fuEZC0COYpGBxyiAJb65Ra9hrmFx19xRGwXWw==", "dev": true, "requires": { "get-stdin": "^6.0.0" @@ -5899,9 +6053,9 @@ } }, "eslint-plugin-import": { - "version": "2.22.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.0.tgz", - "integrity": "sha512-66Fpf1Ln6aIS5Gr/55ts19eUuoDhAbZgnr6UxK5hbDx6l/QgQgx61AePq+BV4PP2uXQFClgMVzep5zZ94qqsxg==", + "version": "2.22.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", + "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", "dev": true, "requires": { "array-includes": "^3.1.1", @@ -5909,7 +6063,7 @@ "contains-path": "^0.1.0", "debug": "^2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.3", + "eslint-import-resolver-node": "^0.3.4", "eslint-module-utils": "^2.6.0", "has": "^1.0.3", "minimatch": "^3.0.4", @@ -6017,12 +6171,12 @@ } }, "eslint-scope": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.0.tgz", - "integrity": "sha512-iiGRvtxWqgtx5m8EyQUJihBloE4EnYeGE/bz1wSPwJE6tZuJUtHlhqDM4Xj2ukE8Dyy1+HCZ4hE0fzIVMzb58w==", + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, "requires": { - "esrecurse": "^4.1.0", + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" } }, @@ -6053,9 +6207,9 @@ }, "dependencies": { "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true } } @@ -6197,26 +6351,25 @@ } }, "expect": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/expect/-/expect-26.4.2.tgz", - "integrity": "sha512-IlJ3X52Z0lDHm7gjEp+m76uX46ldH5VpqmU0006vqDju/285twh7zaWMRhs67VpQhBwjjMchk+p5aA0VkERCAA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.5.0.tgz", + "integrity": "sha512-oIOy3mHWjnF5ZICuaui5kdtJZQ+D7XHWyUQDxk1WhIRCkcIYc24X23bOfikgCNU6i9wcSqLQhwPOqeRp09naxg==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "ansi-styles": "^4.0.0", "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.4.2", - "jest-message-util": "^26.3.0", + "jest-matcher-utils": "^26.5.0", + "jest-message-util": "^26.5.0", "jest-regex-util": "^26.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -6487,6 +6640,19 @@ "requires": { "loader-utils": "^2.0.0", "schema-utils": "^2.7.1" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "file-uri-to-path": { @@ -7161,18 +7327,16 @@ "dev": true }, "globby": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-10.0.2.tgz", - "integrity": "sha512-7dUi7RvCoT/xast/o/dLN53oqND4yk0nsHkhRgn9w65C4PofCLOoJ39iSOg+qVDdWQPIEj+eszMHQ+aLVwwQSg==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.1.tgz", + "integrity": "sha512-iH9RmgwCmUJHi2z5o2l3eTtGBtXek1OYlHrbcxOYugyHLmAsZrPj43OtHThd62Buh/Vv6VyCBD2bdyWcGNQqoQ==", "dev": true, "requires": { - "@types/glob": "^7.1.1", "array-union": "^2.1.0", "dir-glob": "^3.0.1", - "fast-glob": "^3.0.3", - "glob": "^7.1.3", - "ignore": "^5.1.1", - "merge2": "^1.2.3", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", "slash": "^3.0.0" }, "dependencies": { @@ -7284,6 +7448,14 @@ "get-value": "^2.0.6", "has-values": "^1.0.0", "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "has-values": { @@ -7430,12 +7602,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -7511,6 +7682,18 @@ "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", "requires": { "postcss": "^7.0.14" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "ieee754": { @@ -7769,9 +7952,9 @@ "dev": true }, "is-callable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.0.tgz", - "integrity": "sha512-pyVD9AaGLxtg6srb2Ng6ynWJqkHU9bEM087AKck0w8QwDarTfNcpIYoU8x8Hv2Icm8u6kFJM18Dag8lyqGkviw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", + "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", "dev": true }, "is-ci": { @@ -7874,6 +8057,12 @@ "is-extglob": "^2.1.1" } }, + "is-negative-zero": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz", + "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=", + "dev": true + }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", @@ -7925,6 +8114,14 @@ "dev": true, "requires": { "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "is-potential-custom-element-name": { @@ -8009,8 +8206,7 @@ "isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" }, "isexe": { "version": "2.0.0", @@ -8019,10 +8215,12 @@ "dev": true }, "isobject": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", - "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", + "requires": { + "isarray": "1.0.0" + } }, "isstream": { "version": "0.1.2", @@ -8111,12 +8309,12 @@ }, "dependencies": { "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "ms": { @@ -8138,23 +8336,22 @@ } }, "jest": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest/-/jest-26.4.2.tgz", - "integrity": "sha512-LLCjPrUh98Ik8CzW8LLVnSCfLaiY+wbK53U7VxnFSX7Q+kWC4noVeDvGWIFw0Amfq1lq2VfGm7YHWSLBV62MJw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest/-/jest-26.5.0.tgz", + "integrity": "sha512-yW1QTkdpxVWTV2M5cOwVdEww8dRGqL5bb7FOG3YQoMtf7oReCEawmU0+tOKkZUSfcOymbXmCfdBQLzuwOLCx0w==", "dev": true, "requires": { - "@jest/core": "^26.4.2", + "@jest/core": "^26.5.0", "import-local": "^3.0.2", - "jest-cli": "^26.4.2" + "jest-cli": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8168,6 +8365,17 @@ "supports-color": "^7.1.0" } }, + "cliui": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.1.tgz", + "integrity": "sha512-rcvHOWyGyid6I1WjT/3NatKj2kDt9OdSHSXpyLXaMWFbKpGACNW8pRhhdPUq9MWUOdwn8Rz9AVETjF4105rZZQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -8190,24 +8398,24 @@ "dev": true }, "jest-cli": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.4.2.tgz", - "integrity": "sha512-zb+lGd/SfrPvoRSC/0LWdaWCnscXc1mGYW//NP4/tmBvRPT3VntZ2jtKUONsRi59zc5JqmsSajA9ewJKFYp8Cw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.5.0.tgz", + "integrity": "sha512-bI0h6GQGbyN0SSZu3nPilwrkrZ8dBC93erwTiEoJ+kGjtNuXsB183hTZ0HCiHLzf88oE0SQB1hYp8RgyytH+Bg==", "dev": true, "requires": { - "@jest/core": "^26.4.2", - "@jest/test-result": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/core": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/types": "^26.5.0", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.4", "import-local": "^3.0.2", "is-ci": "^2.0.0", - "jest-config": "^26.4.2", - "jest-util": "^26.3.0", - "jest-validate": "^26.4.2", + "jest-config": "^26.5.0", + "jest-util": "^26.5.0", + "jest-validate": "^26.5.0", "prompts": "^2.0.1", - "yargs": "^15.3.1" + "yargs": "^16.0.3" } }, "supports-color": { @@ -8218,16 +8426,54 @@ "requires": { "has-flag": "^4.0.0" } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.2.tgz", + "integrity": "sha512-CkwaeZw6dQgqgPGeTWKMXCRmMcBgETFlTml1+ZOO+q7kGst8NREJ+eWwFNPVUQ4QGdAaklbqCZHH6Zuep1RjiA==", + "dev": true + }, + "yargs": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", + "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", + "dev": true, + "requires": { + "cliui": "^7.0.0", + "escalade": "^3.0.2", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.1", + "yargs-parser": "^20.0.0" + } + }, + "yargs-parser": { + "version": "20.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.1.tgz", + "integrity": "sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA==", + "dev": true } } }, "jest-changed-files": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.3.0.tgz", - "integrity": "sha512-1C4R4nijgPltX6fugKxM4oQ18zimS7LqQ+zTTY8lMCMFPrxqBFb7KJH0Z2fRQJvw2Slbaipsqq7s1mgX5Iot+g==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.5.0.tgz", + "integrity": "sha512-RAHoXqxa7gO1rZz88qpsLpzJ2mQU12UaFWadacKHuMbBZwFK+yl0j9YoD9Y/wBpv1ILG2SdCuxFHggX+9VU7qA==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "execa": "^4.0.0", "throat": "^5.0.0" }, @@ -8326,38 +8572,37 @@ } }, "jest-config": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.4.2.tgz", - "integrity": "sha512-QBf7YGLuToiM8PmTnJEdRxyYy3mHWLh24LJZKVdXZ2PNdizSe1B/E8bVm+HYcjbEzGuVXDv/di+EzdO/6Gq80A==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.5.0.tgz", + "integrity": "sha512-OM6eXIEmQXAuonCk8aNPMRjPFcKWa3IIoSlq5BPgIflmQBzM/COcI7XsWSIEPWPa9WcYTJBWj8kNqEYjczmIFw==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.4.2", - "@jest/types": "^26.3.0", - "babel-jest": "^26.3.0", + "@jest/test-sequencer": "^26.5.0", + "@jest/types": "^26.5.0", + "babel-jest": "^26.5.0", "chalk": "^4.0.0", "deepmerge": "^4.2.2", "glob": "^7.1.1", "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.3.0", - "jest-environment-node": "^26.3.0", + "jest-environment-jsdom": "^26.5.0", + "jest-environment-node": "^26.5.0", "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.4.2", + "jest-jasmine2": "^26.5.0", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.4.0", - "jest-util": "^26.3.0", - "jest-validate": "^26.4.2", + "jest-resolve": "^26.5.0", + "jest-util": "^26.5.0", + "jest-validate": "^26.5.0", "micromatch": "^4.0.2", - "pretty-format": "^26.4.2" + "pretty-format": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8447,24 +8692,23 @@ } }, "jest-diff": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.4.2.tgz", - "integrity": "sha512-6T1XQY8U28WH0Z5rGpQ+VqZSZz8EN8rZcBtfvXaOkbwxIEeRre6qnuZQlbY1AJ4MKDxQF8EkrCvK+hL/VkyYLQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.5.0.tgz", + "integrity": "sha512-CmDMMPkVMxrrh0Dv/4M9kh1tsYsZnYTQMMTvIFpePBSk9wMVfcyfg30TCq+oR9AzGbw8vsI50Gk1HmlMMlhoJg==", "dev": true, "requires": { "chalk": "^4.0.0", - "diff-sequences": "^26.3.0", + "diff-sequences": "^26.5.0", "jest-get-type": "^26.3.0", - "pretty-format": "^26.4.2" + "pretty-format": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8520,25 +8764,24 @@ } }, "jest-each": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.4.2.tgz", - "integrity": "sha512-p15rt8r8cUcRY0Mvo1fpkOGYm7iI8S6ySxgIdfh3oOIv+gHwrHTy5VWCGOecWUhDsit4Nz8avJWdT07WLpbwDA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.5.0.tgz", + "integrity": "sha512-+oO3ykDgypHSyyK2xOsh8XDUwMtg3HoJ4wMNFNHxhcACFbUgaCOfLy+eTCn5pIKhtigU3BmkYt7k3MtTb5pJOQ==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "chalk": "^4.0.0", "jest-get-type": "^26.3.0", - "jest-util": "^26.3.0", - "pretty-format": "^26.4.2" + "jest-util": "^26.5.0", + "pretty-format": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8585,32 +8828,32 @@ } }, "jest-environment-jsdom": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.3.0.tgz", - "integrity": "sha512-zra8He2btIMJkAzvLaiZ9QwEPGEetbxqmjEBQwhH3CA+Hhhu0jSiEJxnJMbX28TGUvPLxBt/zyaTLrOPF4yMJA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.5.0.tgz", + "integrity": "sha512-Xuqh3bx8egymaJR566ECkiztIIVOIWWPGIxo++ziWyCOqQChUguRCH1hRXBbfINPbb/SRFe7GCD+SunaUgTmCw==", "dev": true, "requires": { - "@jest/environment": "^26.3.0", - "@jest/fake-timers": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/environment": "^26.5.0", + "@jest/fake-timers": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", - "jest-mock": "^26.3.0", - "jest-util": "^26.3.0", - "jsdom": "^16.2.2" + "jest-mock": "^26.5.0", + "jest-util": "^26.5.0", + "jsdom": "^16.4.0" } }, "jest-environment-node": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.3.0.tgz", - "integrity": "sha512-c9BvYoo+FGcMj5FunbBgtBnbR5qk3uky8PKyRVpSfe2/8+LrNQMiXX53z6q2kY+j15SkjQCOSL/6LHnCPLVHNw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.5.0.tgz", + "integrity": "sha512-LaYl/ek5mb1VDP1/+jMH2N1Ec4fFUhSYmc8EZqigBgMov/2US8U5l7D3IlOf78e+wARUxPxUpTcybVVzAOu3jg==", "dev": true, "requires": { - "@jest/environment": "^26.3.0", - "@jest/fake-timers": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/environment": "^26.5.0", + "@jest/fake-timers": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", - "jest-mock": "^26.3.0", - "jest-util": "^26.3.0" + "jest-mock": "^26.5.0", + "jest-util": "^26.5.0" } }, "jest-get-type": { @@ -8620,12 +8863,12 @@ "dev": true }, "jest-haste-map": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.3.0.tgz", - "integrity": "sha512-DHWBpTJgJhLLGwE5Z1ZaqLTYqeODQIZpby0zMBsCU9iRFHYyhklYqP4EiG73j5dkbaAdSZhgB938mL51Q5LeZA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.5.0.tgz", + "integrity": "sha512-AjB1b53uqN7Cf2VN80x0wJajVZ+BMZC+G2CmWoG143faaMw7IhIcs3FTPuSgOx7cn3/bag7lgCq93naAvLO6EQ==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "@types/graceful-fs": "^4.1.2", "@types/node": "*", "anymatch": "^3.0.3", @@ -8633,9 +8876,9 @@ "fsevents": "^2.1.2", "graceful-fs": "^4.2.4", "jest-regex-util": "^26.0.0", - "jest-serializer": "^26.3.0", - "jest-util": "^26.3.0", - "jest-worker": "^26.3.0", + "jest-serializer": "^26.5.0", + "jest-util": "^26.5.0", + "jest-worker": "^26.5.0", "micromatch": "^4.0.2", "sane": "^4.0.3", "walker": "^1.0.7" @@ -8704,38 +8947,37 @@ } }, "jest-jasmine2": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.4.2.tgz", - "integrity": "sha512-z7H4EpCldHN1J8fNgsja58QftxBSL+JcwZmaXIvV9WKIM+x49F4GLHu/+BQh2kzRKHAgaN/E82od+8rTOBPyPA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.5.0.tgz", + "integrity": "sha512-NOA6PLORHTRTROOp5VysKCUVpFAjMMXUS1Xw7FvTMeYK5Ewx4rpxhFqiJ7JT4pENap9g9OuXo4cWR/MwCDTEeQ==", "dev": true, "requires": { "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.3.0", - "@jest/source-map": "^26.3.0", - "@jest/test-result": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/environment": "^26.5.0", + "@jest/source-map": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", - "expect": "^26.4.2", + "expect": "^26.5.0", "is-generator-fn": "^2.0.0", - "jest-each": "^26.4.2", - "jest-matcher-utils": "^26.4.2", - "jest-message-util": "^26.3.0", - "jest-runtime": "^26.4.2", - "jest-snapshot": "^26.4.2", - "jest-util": "^26.3.0", - "pretty-format": "^26.4.2", + "jest-each": "^26.5.0", + "jest-matcher-utils": "^26.5.0", + "jest-message-util": "^26.5.0", + "jest-runtime": "^26.5.0", + "jest-snapshot": "^26.5.0", + "jest-util": "^26.5.0", + "pretty-format": "^26.5.0", "throat": "^5.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8782,34 +9024,33 @@ } }, "jest-leak-detector": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.4.2.tgz", - "integrity": "sha512-akzGcxwxtE+9ZJZRW+M2o+nTNnmQZxrHJxX/HjgDaU5+PLmY1qnQPnMjgADPGCRPhB+Yawe1iij0REe+k/aHoA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.5.0.tgz", + "integrity": "sha512-xZHvvTBbj3gUTtunLjPqP594BT6IUEpwA0AQpEQjVR8eBq8+R3qgU/KhoAcVcV0iqRM6pXtX7hKPZ5mLdynVSQ==", "dev": true, "requires": { "jest-get-type": "^26.3.0", - "pretty-format": "^26.4.2" + "pretty-format": "^26.5.0" } }, "jest-matcher-utils": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.4.2.tgz", - "integrity": "sha512-KcbNqWfWUG24R7tu9WcAOKKdiXiXCbMvQYT6iodZ9k1f7065k0keUOW6XpJMMvah+hTfqkhJhRXmA3r3zMAg0Q==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.5.0.tgz", + "integrity": "sha512-QgbbxqFT8wiTi4o/7MWj2vHlcmMjACG8vnJ9pJ7svVDmkzEnTUGdHXWLKB1aZhbnyXetMNRF+TSMcDS9aGfuzA==", "dev": true, "requires": { "chalk": "^4.0.0", - "jest-diff": "^26.4.2", + "jest-diff": "^26.5.0", "jest-get-type": "^26.3.0", - "pretty-format": "^26.4.2" + "pretty-format": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8856,14 +9097,14 @@ } }, "jest-message-util": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.3.0.tgz", - "integrity": "sha512-xIavRYqr4/otGOiLxLZGj3ieMmjcNE73Ui+LdSW/Y790j5acqCsAdDiLIbzHCZMpN07JOENRWX5DcU+OQ+TjTA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.5.0.tgz", + "integrity": "sha512-UEOqdoTfX0AFyReL4q5N3CfDBWt+AtQzeszZuuGapU39vwEk90rTSBghCA/3FFEZzvGfH2LE4+0NaBI81Cu2Ow==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.3.0", - "@types/stack-utils": "^1.0.1", + "@jest/types": "^26.5.0", + "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", "micromatch": "^4.0.2", @@ -8872,12 +9113,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -8973,12 +9213,12 @@ } }, "jest-mock": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.3.0.tgz", - "integrity": "sha512-PeaRrg8Dc6mnS35gOo/CbZovoDPKAeB1FICZiuagAgGvbWdNNyjQjkOaGUa/3N3JtpQ/Mh9P4A2D4Fv51NnP8Q==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.5.0.tgz", + "integrity": "sha512-8D1UmbnmjdkvTdYygTW26KZr95Aw0/3gEmMZQWkxIEAgEESVDbwDG8ygRlXSY214x9hFjtKezvfQUp36Ogl75w==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "@types/node": "*" } }, @@ -8995,28 +9235,27 @@ "dev": true }, "jest-resolve": { - "version": "26.4.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.4.0.tgz", - "integrity": "sha512-bn/JoZTEXRSlEx3+SfgZcJAVuTMOksYq9xe9O6s4Ekg84aKBObEaVXKOEilULRqviSLAYJldnoWV9c07kwtiCg==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.5.0.tgz", + "integrity": "sha512-c34L8Lrw4fFzRiCLzwePziKRfHitjsAnY15ID0e9Se4ISikmZ5T9icLEFAGHnfaxfb+9r8EKdrbg89gjRdrQvw==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "chalk": "^4.0.0", + "escalade": "^3.1.0", "graceful-fs": "^4.2.4", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.3.0", - "read-pkg-up": "^7.0.1", + "jest-util": "^26.5.0", "resolve": "^1.17.0", "slash": "^3.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9069,51 +9308,50 @@ } }, "jest-resolve-dependencies": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.4.2.tgz", - "integrity": "sha512-ADHaOwqEcVc71uTfySzSowA/RdxUpCxhxa2FNLiin9vWLB1uLPad3we+JSSROq5+SrL9iYPdZZF8bdKM7XABTQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.5.0.tgz", + "integrity": "sha512-2e3YdS+dlTY00s0CEiMAa7Ap/mPfPaQV7d6Fzp7BQqHXO/2QhXn/yVTxnxR+dOIo/NOh7pqXZTQSn+2iWwPQQA==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.4.2" + "jest-snapshot": "^26.5.0" } }, "jest-runner": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.4.2.tgz", - "integrity": "sha512-FgjDHeVknDjw1gRAYaoUoShe1K3XUuFMkIaXbdhEys+1O4bEJS8Avmn4lBwoMfL8O5oFTdWYKcf3tEJyyYyk8g==", + "version": "26.5.1", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.5.1.tgz", + "integrity": "sha512-gFHXehvMZD8qwNzaIl2MDFFI99m4kKk06H2xh2u4IkC+tHYIJjE5J175l9cbL3RuU2slfS2m57KZgcPZfbTavQ==", "dev": true, "requires": { - "@jest/console": "^26.3.0", - "@jest/environment": "^26.3.0", - "@jest/test-result": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/console": "^26.5.0", + "@jest/environment": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", "chalk": "^4.0.0", "emittery": "^0.7.1", "exit": "^0.1.2", "graceful-fs": "^4.2.4", - "jest-config": "^26.4.2", + "jest-config": "^26.5.0", "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.3.0", - "jest-leak-detector": "^26.4.2", - "jest-message-util": "^26.3.0", - "jest-resolve": "^26.4.0", - "jest-runtime": "^26.4.2", - "jest-util": "^26.3.0", - "jest-worker": "^26.3.0", + "jest-haste-map": "^26.5.0", + "jest-leak-detector": "^26.5.0", + "jest-message-util": "^26.5.0", + "jest-resolve": "^26.5.0", + "jest-runtime": "^26.5.0", + "jest-util": "^26.5.0", + "jest-worker": "^26.5.0", "source-map-support": "^0.5.6", "throat": "^5.0.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9160,46 +9398,45 @@ } }, "jest-runtime": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.4.2.tgz", - "integrity": "sha512-4Pe7Uk5a80FnbHwSOk7ojNCJvz3Ks2CNQWT5Z7MJo4tX0jb3V/LThKvD9tKPNVNyeMH98J/nzGlcwc00R2dSHQ==", - "dev": true, - "requires": { - "@jest/console": "^26.3.0", - "@jest/environment": "^26.3.0", - "@jest/fake-timers": "^26.3.0", - "@jest/globals": "^26.4.2", - "@jest/source-map": "^26.3.0", - "@jest/test-result": "^26.3.0", - "@jest/transform": "^26.3.0", - "@jest/types": "^26.3.0", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.5.0.tgz", + "integrity": "sha512-CujjQWpMcsvSg0L+G3iEz6s7Th5IbiZseAaw/5R7Eb+IfnJdyPdjJ+EoXNV8n07snvW5nZTwV9QIfy6Vjris8A==", + "dev": true, + "requires": { + "@jest/console": "^26.5.0", + "@jest/environment": "^26.5.0", + "@jest/fake-timers": "^26.5.0", + "@jest/globals": "^26.5.0", + "@jest/source-map": "^26.5.0", + "@jest/test-result": "^26.5.0", + "@jest/transform": "^26.5.0", + "@jest/types": "^26.5.0", "@types/yargs": "^15.0.0", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", "glob": "^7.1.3", "graceful-fs": "^4.2.4", - "jest-config": "^26.4.2", - "jest-haste-map": "^26.3.0", - "jest-message-util": "^26.3.0", - "jest-mock": "^26.3.0", + "jest-config": "^26.5.0", + "jest-haste-map": "^26.5.0", + "jest-message-util": "^26.5.0", + "jest-mock": "^26.5.0", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.4.0", - "jest-snapshot": "^26.4.2", - "jest-util": "^26.3.0", - "jest-validate": "^26.4.2", + "jest-resolve": "^26.5.0", + "jest-snapshot": "^26.5.0", + "jest-util": "^26.5.0", + "jest-validate": "^26.5.0", "slash": "^3.0.0", "strip-bom": "^4.0.0", - "yargs": "^15.3.1" + "yargs": "^16.0.3" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9213,6 +9450,17 @@ "supports-color": "^7.1.0" } }, + "cliui": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.1.tgz", + "integrity": "sha512-rcvHOWyGyid6I1WjT/3NatKj2kDt9OdSHSXpyLXaMWFbKpGACNW8pRhhdPUq9MWUOdwn8Rz9AVETjF4105rZZQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -9254,13 +9502,51 @@ "requires": { "has-flag": "^4.0.0" } + }, + "wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "requires": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + } + }, + "y18n": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.2.tgz", + "integrity": "sha512-CkwaeZw6dQgqgPGeTWKMXCRmMcBgETFlTml1+ZOO+q7kGst8NREJ+eWwFNPVUQ4QGdAaklbqCZHH6Zuep1RjiA==", + "dev": true + }, + "yargs": { + "version": "16.0.3", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", + "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", + "dev": true, + "requires": { + "cliui": "^7.0.0", + "escalade": "^3.0.2", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.1", + "yargs-parser": "^20.0.0" + } + }, + "yargs-parser": { + "version": "20.2.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.1.tgz", + "integrity": "sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA==", + "dev": true } } }, "jest-serializer": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.3.0.tgz", - "integrity": "sha512-IDRBQBLPlKa4flg77fqg0n/pH87tcRKwe8zxOVTWISxGpPHYkRZ1dXKyh04JOja7gppc60+soKVZ791mruVdow==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-serializer/-/jest-serializer-26.5.0.tgz", + "integrity": "sha512-+h3Gf5CDRlSLdgTv7y0vPIAoLgX/SI7T4v6hy+TEXMgYbv+ztzbg5PSN6mUXAT/hXYHvZRWm+MaObVfqkhCGxA==", "dev": true, "requires": { "@types/node": "*", @@ -9268,35 +9554,35 @@ } }, "jest-snapshot": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.4.2.tgz", - "integrity": "sha512-N6Uub8FccKlf5SBFnL2Ri/xofbaA68Cc3MGjP/NuwgnsvWh+9hLIR/DhrxbSiKXMY9vUW5dI6EW1eHaDHqe9sg==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.5.0.tgz", + "integrity": "sha512-WTNJef67o7cCvwAe5foVCNqG3MzIW/CyU4FZvMrhBPZsJeXwfBY7kfOlydZigxtcytnvmNE2pqznOfD5EcQgrQ==", "dev": true, "requires": { "@babel/types": "^7.0.0", - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", + "@types/babel__traverse": "^7.0.4", "@types/prettier": "^2.0.0", "chalk": "^4.0.0", - "expect": "^26.4.2", + "expect": "^26.5.0", "graceful-fs": "^4.2.4", - "jest-diff": "^26.4.2", + "jest-diff": "^26.5.0", "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.3.0", - "jest-matcher-utils": "^26.4.2", - "jest-message-util": "^26.3.0", - "jest-resolve": "^26.4.0", + "jest-haste-map": "^26.5.0", + "jest-matcher-utils": "^26.5.0", + "jest-message-util": "^26.5.0", + "jest-resolve": "^26.5.0", "natural-compare": "^1.4.0", - "pretty-format": "^26.4.2", + "pretty-format": "^26.5.0", "semver": "^7.3.2" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9343,12 +9629,12 @@ } }, "jest-util": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.3.0.tgz", - "integrity": "sha512-4zpn6bwV0+AMFN0IYhH/wnzIQzRaYVrz1A8sYnRnj4UXDXbOVtWmlaZkO9mipFqZ13okIfN87aDoJWB7VH6hcw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.5.0.tgz", + "integrity": "sha512-CSQ0uzE7JdHDCQo3K8jlyWRIF2xNLdpu9nbjo8okGDanaNsF7WonhusFvjOg7QiWn1SThe7wFRh8Jx2ls1Gx4Q==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "@types/node": "*", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", @@ -9357,12 +9643,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9452,26 +9737,25 @@ } }, "jest-validate": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.4.2.tgz", - "integrity": "sha512-blft+xDX7XXghfhY0mrsBCYhX365n8K5wNDC4XAcNKqqjEzsRUSXP44m6PL0QJEW2crxQFLLztVnJ4j7oPlQrQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.5.0.tgz", + "integrity": "sha512-603+CHUJD4nAZ+tY/A+wu3g8KEcBey2a7YOMU9W8e4u7mCezhaDasw20ITaZHoR2R2MZhThL6jApPSj0GvezrQ==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "camelcase": "^6.0.0", "chalk": "^4.0.0", "jest-get-type": "^26.3.0", "leven": "^3.1.0", - "pretty-format": "^26.4.2" + "pretty-format": "^26.5.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9518,17 +9802,17 @@ } }, "jest-watcher": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.3.0.tgz", - "integrity": "sha512-XnLdKmyCGJ3VoF6G/p5ohbJ04q/vv5aH9ENI+i6BL0uu9WWB6Z7Z2lhQQk0d2AVZcRGp1yW+/TsoToMhBFPRdQ==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.5.0.tgz", + "integrity": "sha512-INLKhpc9QbO5zy2HkS1CJUncByrCLFDZQOY30d9ojiuGO02ofL1BygDRDRtFvT/oWSZ8Y0fbkrr1oXU2ay/MqA==", "dev": true, "requires": { - "@jest/test-result": "^26.3.0", - "@jest/types": "^26.3.0", + "@jest/test-result": "^26.5.0", + "@jest/types": "^26.5.0", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "jest-util": "^26.3.0", + "jest-util": "^26.5.0", "string-length": "^4.0.1" }, "dependencies": { @@ -9542,12 +9826,11 @@ } }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9600,9 +9883,9 @@ } }, "jest-worker": { - "version": "26.3.0", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.3.0.tgz", - "integrity": "sha512-Vmpn2F6IASefL+DVBhPzI2J9/GJUsqzomdeN+P+dK8/jKxbh8R3BtFnx3FIta7wYlPU62cpJMJQo4kuOowcMnw==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.5.0.tgz", + "integrity": "sha512-kTw66Dn4ZX7WpjZ7T/SUDgRhapFRKWmisVAF0Rv4Fu8SLFD7eLbqpLvbxVqYhSgaWa7I+bW7pHnbyfNsH6stug==", "dev": true, "requires": { "@types/node": "*", @@ -9692,9 +9975,9 @@ }, "dependencies": { "acorn": { - "version": "7.4.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.0.tgz", - "integrity": "sha512-+G7P8jJmCHr+S+cLfQxygbWhXy+8YTVGzAkpEbcLo2mLoL7tij/VG41QSHACSf5QgYRhMZYHuNc6drJaO0Da+w==", + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true } } @@ -9798,9 +10081,9 @@ "dev": true }, "klona": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.3.tgz", - "integrity": "sha512-CgPOT3ZadDpXxKcfV56lEQ9OQSZ42Mk26gnozI+uN/k39vzD8toUhRQoqsX0m9Q3eMPEfsLWmtyUpK/yqST4yg==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/klona/-/klona-2.0.4.tgz", + "integrity": "sha512-ZRbnvdg/NxqzC7L9Uyqzf4psi1OM4Cuc+sJAkQPjO6XkQIJTNbfK2Rsmbw8fx1p2mkZdp2FZYo2+LwXYY/uwIA==", "dev": true }, "less": { @@ -9828,6 +10111,19 @@ "klona": "^2.0.3", "loader-utils": "^2.0.0", "schema-utils": "^2.7.1" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "leven": { @@ -9855,6 +10151,15 @@ "type-check": "~0.4.0" } }, + "line-column": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/line-column/-/line-column-1.0.2.tgz", + "integrity": "sha1-0lryk2tvSEkXKzEuR5LR2Ye8NKI=", + "requires": { + "isarray": "^1.0.0", + "isobject": "^2.0.0" + } + }, "lines-and-columns": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz", @@ -9862,9 +10167,9 @@ "dev": true }, "lint-staged": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.3.0.tgz", - "integrity": "sha512-an3VgjHqmJk0TORB/sdQl0CTkRg4E5ybYCXTTCSJ5h9jFwZbcgKIx5oVma5e7wp/uKt17s1QYFmYqT9MGVosGw==", + "version": "10.4.0", + "resolved": "https://registry.npmjs.org/lint-staged/-/lint-staged-10.4.0.tgz", + "integrity": "sha512-uaiX4U5yERUSiIEQc329vhCTDDwUcSvKdRLsNomkYLRzijk3v8V9GWm2Nz0RMVB87VcuzLvtgy6OsjoH++QHIg==", "dev": true, "requires": { "chalk": "^4.1.0", @@ -9885,12 +10190,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -9946,12 +10250,12 @@ } }, "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", + "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", "dev": true, "requires": { - "ms": "^2.1.1" + "ms": "2.1.2" } }, "execa": { @@ -10114,12 +10418,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -10163,15 +10466,6 @@ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true }, - "p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "dev": true, - "requires": { - "aggregate-error": "^3.0.0" - } - }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -10255,12 +10549,6 @@ "integrity": "sha1-soqmKIorn8ZRA1x3EfZathkDMaY=", "dev": true }, - "lodash.clonedeep": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", - "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", - "dev": true - }, "lodash.difference": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.difference/-/lodash.difference-4.5.0.tgz", @@ -10332,12 +10620,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -10405,12 +10692,11 @@ } }, "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -10709,9 +10995,9 @@ "dev": true }, "mini-css-extract-plugin": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.0.tgz", - "integrity": "sha512-dVWGuWJlQw2lZxsxBI3hOsoxg1k3DruLR0foHQLSkQMfk+qLJbv9dUk8fjmjWQKN9ef2n54ehA2FjClAsQhrWQ==", + "version": "0.11.3", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", + "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", "dev": true, "requires": { "loader-utils": "^1.1.0", @@ -10994,6 +11280,11 @@ "dev": true, "optional": true }, + "nanoid": { + "version": "3.1.12", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.12.tgz", + "integrity": "sha512-1qstj9z5+x491jfiC4Nelk+f8XBad7LN20PmyWINJEMRSf3wcAjAWysw1qaA8z6NSKe2sjq1hRSDpBH5paCb6A==" + }, "nanomatch": { "version": "1.2.13", "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", @@ -11117,9 +11408,9 @@ } }, "node-releases": { - "version": "1.1.60", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.60.tgz", - "integrity": "sha512-gsO4vjEdQaTusZAEebUWp2a5d7dF5DYoIpDG7WySnk7BuZDW+GPpHXoXXuYawRBr/9t5q54tirPz79kFIWg4dA==", + "version": "1.1.61", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.61.tgz", + "integrity": "sha512-DD5vebQLg8jLCOzwupn954fbIiZht05DAZs0k2u8NStSe6h9XdsuIQL8hSRKYiU8WUQRznmSDrKGbv3ObOmC7g==", "dev": true }, "normalize-package-data": { @@ -11339,18 +11630,26 @@ "dev": true, "requires": { "isobject": "^3.0.0" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", + "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", "dev": true, "requires": { - "define-properties": "^1.1.2", - "function-bind": "^1.1.1", - "has-symbols": "^1.0.0", - "object-keys": "^1.0.11" + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.0", + "has-symbols": "^1.0.1", + "object-keys": "^1.1.1" } }, "object.pick": { @@ -11360,6 +11659,14 @@ "dev": true, "requires": { "isobject": "^3.0.1" + }, + "dependencies": { + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true + } } }, "object.values": { @@ -11372,6 +11679,27 @@ "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", "has": "^1.0.3" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "once": { @@ -11458,9 +11786,9 @@ } }, "p-map": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz", - "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", + "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", "dev": true, "requires": { "aggregate-error": "^3.0.0" @@ -11755,13 +12083,14 @@ "dev": true }, "postcss": { - "version": "7.0.32", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.32.tgz", - "integrity": "sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==", + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.1.1.tgz", + "integrity": "sha512-9DGLSsjooH3kSNjTZUOt2eIj2ZTW0VI2PZ/3My+8TC7KIbH2OKwUlISfDsf63EP4aiRUt3XkEWMWvyJHvJelEg==", "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "colorette": "^1.2.1", + "line-column": "^1.0.2", + "nanoid": "^3.1.12", + "source-map": "^0.6.1" } }, "postcss-attribute-case-insensitive": { @@ -11772,8 +12101,21 @@ "requires": { "postcss": "^7.0.2", "postcss-selector-parser": "^6.0.2" - } - }, + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } + } + }, "postcss-color-functional-notation": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/postcss-color-functional-notation/-/postcss-color-functional-notation-2.0.1.tgz", @@ -11782,6 +12124,19 @@ "requires": { "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-color-gray": { @@ -11793,6 +12148,19 @@ "@csstools/convert-colors": "^1.4.0", "postcss": "^7.0.5", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-color-hex-alpha": { @@ -11803,6 +12171,19 @@ "requires": { "postcss": "^7.0.14", "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-color-mod-function": { @@ -11814,6 +12195,19 @@ "@csstools/convert-colors": "^1.4.0", "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-color-rebeccapurple": { @@ -11824,6 +12218,19 @@ "requires": { "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-custom-media": { @@ -11833,6 +12240,19 @@ "dev": true, "requires": { "postcss": "^7.0.14" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-custom-properties": { @@ -11843,6 +12263,19 @@ "requires": { "postcss": "^7.0.17", "postcss-values-parser": "^2.0.1" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-custom-selectors": { @@ -11861,6 +12294,17 @@ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "dev": true }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, "postcss-selector-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", @@ -11890,6 +12334,17 @@ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "dev": true }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, "postcss-selector-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", @@ -11911,6 +12366,19 @@ "requires": { "postcss": "^7.0.5", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-env-function": { @@ -11921,6 +12389,19 @@ "requires": { "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-focus-visible": { @@ -11930,6 +12411,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-focus-within": { @@ -11939,6 +12433,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-font-variant": { @@ -11948,6 +12455,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-gap-properties": { @@ -11957,6 +12477,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-image-set-function": { @@ -11967,6 +12500,19 @@ "requires": { "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-initial": { @@ -11977,6 +12523,19 @@ "requires": { "lodash.template": "^4.5.0", "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-lab-function": { @@ -11988,19 +12547,45 @@ "@csstools/convert-colors": "^1.4.0", "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-loader": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-4.0.0.tgz", - "integrity": "sha512-LdpfM9yCVFeJzofnaFvLf3g9oMuH2mIIqOcu81n6JHxzRNBl78GHiYWUJ5gf4c7A7VZiBCeWwfVAMw/mQCAM3Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-4.0.3.tgz", + "integrity": "sha512-jHboC/AOnJLPu8/974hODCJ/rNAa2YhhJOclUeuRlAmFpKmEcBY6az8y1ejHyYc2LThzPl8qPRekh2Yz3CiRKA==", "dev": true, "requires": { "cosmiconfig": "^7.0.0", - "klona": "^2.0.3", + "klona": "^2.0.4", "loader-utils": "^2.0.0", "schema-utils": "^2.7.1", "semver": "^7.3.2" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "postcss-logical": { @@ -12010,6 +12595,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-media-minmax": { @@ -12019,6 +12617,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-modules-extract-imports": { @@ -12027,6 +12638,18 @@ "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", "requires": { "postcss": "^7.0.5" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-modules-local-by-default": { @@ -12038,6 +12661,18 @@ "postcss": "^7.0.32", "postcss-selector-parser": "^6.0.2", "postcss-value-parser": "^4.1.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-modules-scope": { @@ -12047,6 +12682,18 @@ "requires": { "postcss": "^7.0.6", "postcss-selector-parser": "^6.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-modules-values": { @@ -12056,6 +12703,18 @@ "requires": { "icss-utils": "^4.0.0", "postcss": "^7.0.6" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-nesting": { @@ -12065,6 +12724,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-overflow-shorthand": { @@ -12074,6 +12746,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-page-break": { @@ -12083,6 +12768,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-place": { @@ -12093,6 +12791,19 @@ "requires": { "postcss": "^7.0.2", "postcss-values-parser": "^2.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-preset-env": { @@ -12138,6 +12849,19 @@ "postcss-replace-overflow-wrap": "^3.0.0", "postcss-selector-matches": "^4.0.0", "postcss-selector-not": "^4.0.0" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-pseudo-class-any-link": { @@ -12156,6 +12880,17 @@ "integrity": "sha512-MsCAG1z9lPdoO/IUMLSBWBSVxVtJ1395VGIQ+Fc2gNdkQ1hNDnQdw3YhA71WJCBW1vdwA0cAnk/DnW6bqoEUYg==", "dev": true }, + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + }, "postcss-selector-parser": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-5.0.0.tgz", @@ -12176,6 +12911,19 @@ "dev": true, "requires": { "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-selector-matches": { @@ -12186,6 +12934,19 @@ "requires": { "balanced-match": "^1.0.0", "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-selector-not": { @@ -12196,16 +12957,30 @@ "requires": { "balanced-match": "^1.0.0", "postcss": "^7.0.2" + }, + "dependencies": { + "postcss": { + "version": "7.0.35", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", + "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + "dev": true, + "requires": { + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + } + } } }, "postcss-selector-parser": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.2.tgz", - "integrity": "sha512-36P2QR59jDTOAiIkqEprfJDsoNrvwFei3eCqKd1Y0tUsBimsq39BLp7RD+JWny3WgB1zGhJX8XVePwm9k4wdBg==", + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", + "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", "requires": { "cssesc": "^3.0.0", "indexes-of": "^1.0.1", - "uniq": "^1.0.1" + "uniq": "^1.0.1", + "util-deprecate": "^1.0.2" } }, "postcss-value-parser": { @@ -12237,30 +13012,29 @@ "dev": true }, "prettier": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.1.1.tgz", - "integrity": "sha512-9bY+5ZWCfqj3ghYBLxApy2zf6m+NJo5GzmLTpr9FsApsfjriNnS2dahWReHMi7qNPhhHl9SYHJs2cHZLgexNIw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.1.2.tgz", + "integrity": "sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg==", "dev": true }, "pretty-format": { - "version": "26.4.2", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.4.2.tgz", - "integrity": "sha512-zK6Gd8zDsEiVydOCGLkoBoZuqv8VTiHyAbKznXe/gaph/DAeZOmit9yMfgIz5adIgAMMs5XfoYSwAX3jcCO1tA==", + "version": "26.5.0", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.5.0.tgz", + "integrity": "sha512-NcgRuuTutUJ9+Br4P19DFThpJYnYBiugfRmZEA6pXrUeG+IcMSmppb88rU+iPA+XAJcjTYlCb5Ed6miHg/Qqqw==", "dev": true, "requires": { - "@jest/types": "^26.3.0", + "@jest/types": "^26.5.0", "ansi-regex": "^5.0.0", "ansi-styles": "^4.0.0", "react-is": "^16.12.0" }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, @@ -12637,9 +13411,9 @@ "dev": true }, "regexpu-core": { - "version": "4.7.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.0.tgz", - "integrity": "sha512-TQ4KXRnIn6tz6tjnrXEkD/sshygKH/j5KzK86X8MkeHyZ8qst/LZ89j3X4/8HEIfHANTFIP/AbXakeRhWIl5YQ==", + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", + "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", "dev": true, "requires": { "regenerate": "^1.4.0", @@ -12960,9 +13734,9 @@ } }, "sass": { - "version": "1.26.10", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.10.tgz", - "integrity": "sha512-bzN0uvmzfsTvjz0qwccN1sPm2HxxpNI/Xa+7PlUEMS+nQvbyuEK7Y0qFqxlPHhiNHb1Ze8WQJtU31olMObkAMw==", + "version": "1.26.12", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.12.tgz", + "integrity": "sha512-hmSwtBOWoS9zwe0yAS+QmaseVCUELiGV22gXHDR7+9stEsVuEuxfY1GhC8XmUpC+Ir3Hwq7NxSUNbnmkznnF7g==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" @@ -12979,6 +13753,19 @@ "neo-async": "^2.6.2", "schema-utils": "^2.7.1", "semver": "^7.3.2" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "sax": { @@ -12997,12 +13784,12 @@ } }, "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", + "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", + "@types/json-schema": "^7.0.6", + "ajv": "^6.12.5", "ajv-keywords": "^3.5.2" } }, @@ -13258,6 +14045,12 @@ "is-data-descriptor": "^1.0.0", "kind-of": "^6.0.2" } + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -13367,9 +14160,9 @@ } }, "spdx-license-ids": { - "version": "3.0.5", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.5.tgz", - "integrity": "sha512-J+FWzZoynJEXGphVIS+XEh3kFSjZX/1i9gFBaWQcB+/tmpe2qUsSBABpcxqxnAxFdiUFEgAX1bjYGQvIZmoz9Q==", + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.6.tgz", + "integrity": "sha512-+orQK83kyMva3WyPf59k1+Y525csj5JejicWut55zeTWANuN17qSiSLUXWtzHeNWORSvT7GLDJ/E/XiIWoXBTw==", "dev": true }, "split": { @@ -13619,6 +14412,27 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "string.prototype.trimend": { @@ -13629,6 +14443,27 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "string.prototype.trimstart": { @@ -13639,6 +14474,27 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.5" + }, + "dependencies": { + "es-abstract": { + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "string_decoder": { @@ -13718,13 +14574,26 @@ "dev": true }, "style-loader": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.2.1.tgz", - "integrity": "sha512-ByHSTQvHLkWE9Ir5+lGbVOXhxX10fbprhLvdg96wedFZb4NDekDPxVKv5Fwmio+QcMlkkNfuK+5W1peQ5CUhZg==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", + "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", "dev": true, "requires": { "loader-utils": "^2.0.0", - "schema-utils": "^2.6.6" + "schema-utils": "^2.7.0" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "stylus": { @@ -13773,34 +14642,27 @@ } }, "stylus-loader": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-3.0.2.tgz", - "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-4.1.0.tgz", + "integrity": "sha512-phWZyKuuIgzCU0Zbp5se6cOW9MMUogQ4NoBnNe78kytT2gg+25incSv3HHNFkgLvjyLyBxH1q44xx2AN1CeQpw==", "dev": true, "requires": { - "loader-utils": "^1.0.2", - "lodash.clonedeep": "^4.5.0", - "when": "~3.6.x" + "fast-glob": "^3.2.4", + "klona": "^2.0.4", + "loader-utils": "^2.0.0", + "normalize-path": "^3.0.0", + "schema-utils": "^2.7.1" }, "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", "dev": true, "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" } } } @@ -14244,9 +15106,9 @@ } }, "uglify-js": { - "version": "3.10.4", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.10.4.tgz", - "integrity": "sha512-kBFT3U4Dcj4/pJ52vfjCSfyLyvG9VYYuGYPmrPvAxRw/i7xHiT4VvCev+uiEMcEEiu6UNB6KgWmGtSUYIWScbw==", + "version": "3.11.1", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.11.1.tgz", + "integrity": "sha512-OApPSuJcxcnewwjSGGfWOjx3oix5XpmrK9Z2j0fTRlHGoZ49IU6kExfZTM0++fCArOOCet+vIfWwFHbvWqwp6g==", "dev": true, "optional": true }, @@ -14356,6 +15218,12 @@ "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", "dev": true + }, + "isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true } } }, @@ -14406,6 +15274,19 @@ "loader-utils": "^2.0.0", "mime-types": "^2.1.26", "schema-utils": "^2.6.5" + }, + "dependencies": { + "schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "requires": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + } + } } }, "use": { @@ -14443,13 +15324,12 @@ "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, "uuid": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.0.tgz", - "integrity": "sha512-fX6Z5o4m6XsXBdli9g7DtWgAx+osMsRRZFKma1mIUsLCz6vRvv+pz5VNbyu9UEDzpMWulZfvpgb/cmDXVulYFQ==", + "version": "8.3.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.1.tgz", + "integrity": "sha512-FOmRr+FmWEIG8uhZv6C2bTgEVXsHk08kE7mPlrBbEe+c3r9pjceVPgupIfNIhc4yx55H69OXANrUaSuu9eInKg==", "dev": true, "optional": true }, @@ -14672,9 +15552,9 @@ "dev": true }, "webpack": { - "version": "4.44.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.1.tgz", - "integrity": "sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==", + "version": "4.44.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz", + "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==", "dev": true, "requires": { "@webassemblyjs/ast": "1.9.0", @@ -14702,12 +15582,6 @@ "webpack-sources": "^1.4.1" }, "dependencies": { - "acorn": { - "version": "6.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.1.tgz", - "integrity": "sha512-ZVA9k326Nwrj3Cj9jlh3wGFutC2ZornPNARZwsNYqQYgN0EsV2d53w5RN/co65Ohn4sUAUtb1rSUAOD6XN9idA==", - "dev": true - }, "eslint-scope": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", @@ -14786,9 +15660,9 @@ "dev": true }, "whatwg-url": { - "version": "8.2.2", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.2.2.tgz", - "integrity": "sha512-PcVnO6NiewhkmzV0qn7A+UZ9Xx4maNTI+O+TShmfE4pqjoCMwUMjkvoNhNHPTvgR7QH9Xt3R13iHuWy2sToFxQ==", + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.3.0.tgz", + "integrity": "sha512-BQRf/ej5Rp3+n7k0grQXZj9a1cHtsp4lqj01p59xBWFKdezR8sO37XnpafwNqiFac/v2Il12EIMjX/Y4VZtT8Q==", "dev": true, "requires": { "lodash.sortby": "^4.7.0", @@ -14796,12 +15670,6 @@ "webidl-conversions": "^6.1.0" } }, - "when": { - "version": "3.6.4", - "resolved": "https://registry.npmjs.org/when/-/when-3.6.4.tgz", - "integrity": "sha1-RztRfsFZ4rhQBUl6E5g/CVQS404=", - "dev": true - }, "which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", @@ -14878,12 +15746,11 @@ }, "dependencies": { "ansi-styles": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.2.1.tgz", - "integrity": "sha512-9VGjrMsG1vePxcSweQsN20KY/c4zN0h9fLjqAbwbPfahM3t+NL+M9HC8xeXG2I8pX5NoamTGNuomEUFI7fcUjA==", + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", "dev": true, "requires": { - "@types/color-name": "^1.1.1", "color-convert": "^2.0.1" } }, diff --git a/package.json b/package.json index ce801294..094df437 100644 --- a/package.json +++ b/package.json @@ -47,13 +47,13 @@ "cssesc": "^3.0.0", "icss-utils": "^4.1.1", "loader-utils": "^2.0.0", - "postcss": "^7.0.32", + "postcss": "^8.1.1", "postcss-modules-extract-imports": "^2.0.0", "postcss-modules-local-by-default": "^3.0.3", "postcss-modules-scope": "^2.2.0", "postcss-modules-values": "^3.0.0", "postcss-value-parser": "^4.1.0", - "schema-utils": "^2.7.1", + "schema-utils": "^3.0.0", "semver": "^7.3.2" }, "devDependencies": { @@ -64,35 +64,35 @@ "@commitlint/config-conventional": "^11.0.0", "@webpack-contrib/defaults": "^6.3.0", "@webpack-contrib/eslint-config-webpack": "^3.0.0", - "babel-jest": "^26.1.0", + "babel-jest": "^26.5.0", "cross-env": "^7.0.2", - "del": "^5.1.0", + "del": "^6.0.0", "del-cli": "^3.0.1", "es-check": "^5.1.0", - "eslint": "^7.8.1", - "eslint-config-prettier": "^6.11.0", - "eslint-plugin-import": "^2.22.0", + "eslint": "^7.10.0", + "eslint-config-prettier": "^6.12.0", + "eslint-plugin-import": "^2.22.1", "file-loader": "^6.1.0", "husky": "^4.3.0", - "jest": "^26.4.2", + "jest": "^26.5.0", "less": "^3.12.2", "less-loader": "^7.0.1", "lint-staged": "^10.3.0", "memfs": "^3.2.0", - "mini-css-extract-plugin": "^0.11.0", + "mini-css-extract-plugin": "^0.11.3", "npm-run-all": "^4.1.5", - "postcss-loader": "^4.0.0", + "postcss-loader": "^4.0.3", "postcss-preset-env": "^6.7.0", "prettier": "^2.1.1", "sass": "^1.26.10", "sass-loader": "^10.0.2", "standard-version": "^9.0.0", "strip-ansi": "^6.0.0", - "style-loader": "^1.2.1", + "style-loader": "^1.3.0", "stylus": "^0.54.8", - "stylus-loader": "^3.0.2", + "stylus-loader": "^4.1.0", "url-loader": "^4.1.0", - "webpack": "^4.44.1" + "webpack": "^4.44.2" }, "keywords": [ "webpack", diff --git a/src/index.js b/src/index.js index db5e1a23..c8a647cb 100644 --- a/src/index.js +++ b/src/index.js @@ -5,7 +5,7 @@ import { getOptions, stringifyRequest } from 'loader-utils'; import postcss from 'postcss'; import postcssPkg from 'postcss/package.json'; -import validateOptions from 'schema-utils'; +import { validate } from 'schema-utils'; import { satisfies } from 'semver'; import CssSyntaxError from './CssSyntaxError'; @@ -31,7 +31,7 @@ import { export default async function loader(content, map, meta) { const rawOptions = getOptions(this); - validateOptions(schema, rawOptions, { + validate(schema, rawOptions, { name: 'CSS Loader', baseDataPath: 'options', }); diff --git a/test/__snapshots__/sourceMap-option.test.js.snap b/test/__snapshots__/sourceMap-option.test.js.snap index ac4650f4..f619016e 100644 --- a/test/__snapshots__/sourceMap-option.test.js.snap +++ b/test/__snapshots__/sourceMap-option.test.js.snap @@ -757,7 +757,7 @@ import ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \\"../../../src/runtime/cssWit import ___CSS_LOADER_API_IMPORT___ from \\"../../../src/runtime/api.js\\"; var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___); // Module -___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n}\\\\nbody #logo {\\\\n border-radius: 5px;\\\\n}\\\\n/*# sourceMappingURL=test/fixtures/source-map/base.css.map */\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/base.styl\\"],\\"names\\":[],\\"mappings\\":\\"AAAA;EACE,2CAAwB;AAC1B;AAAE;EACE,kBAAe;AAEnB;AACA,4DAA4D\\",\\"sourcesContent\\":[\\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n #logo {\\\\n border-radius: 5px;\\\\n }\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); +___CSS_LOADER_EXPORT___.push([module.id, \\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n}\\\\nbody #logo {\\\\n border-radius: 5px;\\\\n}\\\\n\\", \\"\\",{\\"version\\":3,\\"sources\\":[\\"webpack://source-map/base.styl\\"],\\"names\\":[],\\"mappings\\":\\"AAAA;EACE,2CAAwB;AAC1B;AAAE;EACE,kBAAe;AAEnB\\",\\"sourcesContent\\":[\\"body {\\\\n font: 14px/1.5 Helvetica, arial, sans-serif;\\\\n #logo {\\\\n border-radius: 5px;\\\\n }\\\\n}\\\\n\\"],\\"sourceRoot\\":\\"\\"}]); // Exports export default ___CSS_LOADER_EXPORT___; " @@ -773,10 +773,10 @@ Array [ body #logo { border-radius: 5px; } -/*# sourceMappingURL=test/fixtures/source-map/base.css.map */", +", "", Object { - "mappings": "AAAA;EACE,2CAAwB;AAC1B;AAAE;EACE,kBAAe;AAEnB;AACA,4DAA4D", + "mappings": "AAAA;EACE,2CAAwB;AAC1B;AAAE;EACE,kBAAe;AAEnB", "names": Array [], "sourceRoot": "", "sources": Array [ diff --git a/test/sourceMap-option.test.js b/test/sourceMap-option.test.js index 65af0130..045f70e2 100644 --- a/test/sourceMap-option.test.js +++ b/test/sourceMap-option.test.js @@ -501,7 +501,7 @@ describe('"sourceMap" option', () => { expect(chunkName).toBe( webpack.version[0] === '5' - ? 'main.02755d36ce181558963d.bundle.js' + ? 'main.3106b4f9bed946cac826.bundle.js' : 'main.535d928b9abb27709302.bundle.js' ); expect( From 92fe10341a429f0e3c46c284cfda0a5a192cd5f3 Mon Sep 17 00:00:00 2001 From: Bill Balmant <60496754+billbalm@users.noreply.github.com> Date: Wed, 7 Oct 2020 03:12:45 -0700 Subject: [PATCH 11/15] docs: context is localIdentContext in README (#1202) --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9eaae51d..5fc3f129 100644 --- a/README.md +++ b/README.md @@ -530,7 +530,7 @@ module.exports = { auto: true, exportGlobals: true, localIdentName: '[path][name]__[local]--[hash:base64:5]', - context: path.resolve(__dirname, 'src'), + localIdentContext: path.resolve(__dirname, 'src'), localIdentHashPrefix: 'my-custom-hash', namedExport: true, exportLocalsConvention: 'camelCase', @@ -780,7 +780,7 @@ module.exports = { loader: 'css-loader', options: { modules: { - context: path.resolve(__dirname, 'context'), + localIdentContext: path.resolve(__dirname, 'src'), }, }, }, From b5c93798e0b714a40ee3722ef0e5daa6c1c5ef41 Mon Sep 17 00:00:00 2001 From: Alexander Krasnoyarov Date: Thu, 8 Oct 2020 14:46:04 +0300 Subject: [PATCH 12/15] feat: postcss@8 (#1204) --- src/plugins/postcss-icss-parser.js | 158 +++++----- src/plugins/postcss-import-parser.js | 382 ++++++++++++------------- src/plugins/postcss-url-parser.js | 370 ++++++++++++------------ test/__snapshots__/loader.test.js.snap | 25 ++ test/loader.test.js | 3 +- 5 files changed, 490 insertions(+), 448 deletions(-) diff --git a/src/plugins/postcss-icss-parser.js b/src/plugins/postcss-icss-parser.js index 939c78a9..7e77d703 100644 --- a/src/plugins/postcss-icss-parser.js +++ b/src/plugins/postcss-icss-parser.js @@ -1,91 +1,99 @@ -import postcss from 'postcss'; import { extractICSS, replaceValueSymbols, replaceSymbols } from 'icss-utils'; import { normalizeUrl, resolveRequests, requestify } from '../utils'; -export default postcss.plugin( - 'postcss-icss-parser', - (options) => async (css) => { - const importReplacements = Object.create(null); - const { icssImports, icssExports } = extractICSS(css); - const imports = new Map(); - const tasks = []; - - // eslint-disable-next-line guard-for-in - for (const url in icssImports) { - const tokens = icssImports[url]; - - if (Object.keys(tokens).length === 0) { - // eslint-disable-next-line no-continue - continue; +const plugin = (options = {}) => { + return { + postcssPlugin: 'postcss-icss-parser', + async OnceExit(root) { + const importReplacements = Object.create(null); + const { icssImports, icssExports } = extractICSS(root); + const imports = new Map(); + const tasks = []; + + // eslint-disable-next-line guard-for-in + for (const url in icssImports) { + const tokens = icssImports[url]; + + if (Object.keys(tokens).length === 0) { + // eslint-disable-next-line no-continue + continue; + } + + let normalizedUrl = url; + let prefix = ''; + + const queryParts = normalizedUrl.split('!'); + + if (queryParts.length > 1) { + normalizedUrl = queryParts.pop(); + prefix = queryParts.join('!'); + } + + const request = requestify( + normalizeUrl(normalizedUrl, true), + options.rootContext + ); + const doResolve = async () => { + const { resolver, context } = options; + const resolvedUrl = await resolveRequests(resolver, context, [ + ...new Set([normalizedUrl, request]), + ]); + + return { url: resolvedUrl, prefix, tokens }; + }; + + tasks.push(doResolve()); } - let normalizedUrl = url; - let prefix = ''; + const results = await Promise.all(tasks); - const queryParts = normalizedUrl.split('!'); + for (let index = 0; index <= results.length - 1; index++) { + const { url, prefix, tokens } = results[index]; + const newUrl = prefix ? `${prefix}!${url}` : url; + const importKey = newUrl; + let importName = imports.get(importKey); - if (queryParts.length > 1) { - normalizedUrl = queryParts.pop(); - prefix = queryParts.join('!'); - } + if (!importName) { + importName = `___CSS_LOADER_ICSS_IMPORT_${imports.size}___`; + imports.set(importKey, importName); - const request = requestify( - normalizeUrl(normalizedUrl, true), - options.rootContext - ); - const doResolve = async () => { - const { resolver, context } = options; - const resolvedUrl = await resolveRequests(resolver, context, [ - ...new Set([normalizedUrl, request]), - ]); - - return { url: resolvedUrl, prefix, tokens }; - }; - - tasks.push(doResolve()); - } - - const results = await Promise.all(tasks); - - for (let index = 0; index <= results.length - 1; index++) { - const { url, prefix, tokens } = results[index]; - const newUrl = prefix ? `${prefix}!${url}` : url; - const importKey = newUrl; - let importName = imports.get(importKey); - - if (!importName) { - importName = `___CSS_LOADER_ICSS_IMPORT_${imports.size}___`; - imports.set(importKey, importName); - - options.imports.push({ - importName, - url: options.urlHandler(newUrl), - icss: true, - index, - }); - - options.api.push({ importName, dedupe: true, index }); - } + options.imports.push({ + importName, + url: options.urlHandler(newUrl), + icss: true, + index, + }); - for (const [replacementIndex, token] of Object.keys(tokens).entries()) { - const replacementName = `___CSS_LOADER_ICSS_IMPORT_${index}_REPLACEMENT_${replacementIndex}___`; - const localName = tokens[token]; + options.api.push({ importName, dedupe: true, index }); + } - importReplacements[token] = replacementName; + for (const [replacementIndex, token] of Object.keys(tokens).entries()) { + const replacementName = `___CSS_LOADER_ICSS_IMPORT_${index}_REPLACEMENT_${replacementIndex}___`; + const localName = tokens[token]; - options.replacements.push({ replacementName, importName, localName }); + importReplacements[token] = replacementName; + + options.replacements.push({ replacementName, importName, localName }); + } } - } - if (Object.keys(importReplacements).length > 0) { - replaceSymbols(css, importReplacements); - } + if (Object.keys(importReplacements).length > 0) { + replaceSymbols(root, importReplacements); + } + + for (const name of Object.keys(icssExports)) { + const value = replaceValueSymbols( + icssExports[name], + importReplacements + ); + + options.exports.push({ name, value }); + } + }, + }; +}; - for (const name of Object.keys(icssExports)) { - const value = replaceValueSymbols(icssExports[name], importReplacements); +plugin.postcss = true; - options.exports.push({ name, value }); - } - } -); +export default plugin; diff --git a/src/plugins/postcss-import-parser.js b/src/plugins/postcss-import-parser.js index 399a06a7..f67d8576 100644 --- a/src/plugins/postcss-import-parser.js +++ b/src/plugins/postcss-import-parser.js @@ -1,6 +1,3 @@ -import { promisify } from 'util'; - -import postcss from 'postcss'; import valueParser from 'postcss-value-parser'; import { @@ -10,191 +7,194 @@ import { requestify, } from '../utils'; -const pluginName = 'postcss-import-parser'; - -function walkAtRules(css, result, options, callback) { - const accumulator = []; - - css.walkAtRules(/^import$/i, (atRule) => { - // Convert only top-level @import - if (atRule.parent.type !== 'root') { - return; - } - - // Nodes do not exists - `@import url('http://') :root {}` - if (atRule.nodes) { - result.warn( - "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", - { node: atRule } - ); - - return; - } - - const { nodes: paramsNodes } = valueParser(atRule.params); - - // No nodes - `@import ;` - // Invalid type - `@import foo-bar;` - if ( - paramsNodes.length === 0 || - (paramsNodes[0].type !== 'string' && paramsNodes[0].type !== 'function') - ) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - let isStringValue; - let url; - - if (paramsNodes[0].type === 'string') { - isStringValue = true; - url = paramsNodes[0].value; - } else { - // Invalid function - `@import nourl(test.css);` - if (paramsNodes[0].value.toLowerCase() !== 'url') { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - isStringValue = - paramsNodes[0].nodes.length !== 0 && - paramsNodes[0].nodes[0].type === 'string'; - url = isStringValue - ? paramsNodes[0].nodes[0].value - : valueParser.stringify(paramsNodes[0].nodes); - } - - // Empty url - `@import "";` or `@import url();` - if (url.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - accumulator.push({ - atRule, - url, - isStringValue, - mediaNodes: paramsNodes.slice(1), - }); - }); - - callback(null, accumulator); -} - -const asyncWalkAtRules = promisify(walkAtRules); - -export default postcss.plugin(pluginName, (options) => async (css, result) => { - const parsedResults = await asyncWalkAtRules(css, result, options); - - if (parsedResults.length === 0) { - return Promise.resolve(); - } - - const imports = new Map(); - const tasks = []; - - for (const parsedResult of parsedResults) { - const { atRule, url, isStringValue, mediaNodes } = parsedResult; - - let normalizedUrl = url; - let prefix = ''; - - const isRequestable = isUrlRequestable(normalizedUrl); - - if (isRequestable) { - const queryParts = normalizedUrl.split('!'); - - if (queryParts.length > 1) { - normalizedUrl = queryParts.pop(); - prefix = queryParts.join('!'); - } - - normalizedUrl = normalizeUrl(normalizedUrl, isStringValue); - - // Empty url after normalize - `@import '\ - // \ - // \ - // '; - if (normalizedUrl.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - // eslint-disable-next-line no-continue - continue; - } - } - - let media; - - if (mediaNodes.length > 0) { - media = valueParser.stringify(mediaNodes).trim().toLowerCase(); - } - - if (options.filter && !options.filter(normalizedUrl, media)) { - // eslint-disable-next-line no-continue - continue; - } - - atRule.remove(); - - if (isRequestable) { - const request = requestify(normalizedUrl, options.rootContext); - - tasks.push( - (async () => { - const { resolver, context } = options; - const resolvedUrl = await resolveRequests(resolver, context, [ - ...new Set([request, normalizedUrl]), - ]); - - return { url: resolvedUrl, media, prefix, isRequestable }; - })() - ); - } else { - tasks.push({ url, media, prefix, isRequestable }); - } - } - - const results = await Promise.all(tasks); - - for (let index = 0; index <= results.length - 1; index++) { - const { url, isRequestable, media } = results[index]; - - if (isRequestable) { - const { prefix } = results[index]; - const newUrl = prefix ? `${prefix}!${url}` : url; - const importKey = newUrl; - let importName = imports.get(importKey); - - if (!importName) { - importName = `___CSS_LOADER_AT_RULE_IMPORT_${imports.size}___`; - imports.set(importKey, importName); - - options.imports.push({ - importName, - url: options.urlHandler(newUrl), - index, - }); - } - - options.api.push({ importName, media, index }); - - // eslint-disable-next-line no-continue - continue; - } - - options.api.push({ url, media, index }); - } - - return Promise.resolve(); -}); +const plugin = (options = {}) => { + return { + postcssPlugin: 'postcss-import-parser', + prepare(result) { + const atRuleParsedResults = []; + + return { + AtRule: { + import(atRule) { + // Convert only top-level @import + if (atRule.parent.type !== 'root') { + return; + } + + // Nodes do not exists - `@import url('http://') :root {}` + if (atRule.nodes) { + result.warn( + "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", + { node: atRule } + ); + + return; + } + + const { nodes: paramsNodes } = valueParser(atRule.params); + + // No nodes - `@import ;` + // Invalid type - `@import foo-bar;` + if ( + paramsNodes.length === 0 || + (paramsNodes[0].type !== 'string' && + paramsNodes[0].type !== 'function') + ) { + result.warn(`Unable to find uri in "${atRule.toString()}"`, { + node: atRule, + }); + + return; + } + + let isStringValue; + let url; + + if (paramsNodes[0].type === 'string') { + isStringValue = true; + url = paramsNodes[0].value; + } else { + // Invalid function - `@import nourl(test.css);` + if (paramsNodes[0].value.toLowerCase() !== 'url') { + result.warn(`Unable to find uri in "${atRule.toString()}"`, { + node: atRule, + }); + + return; + } + + isStringValue = + paramsNodes[0].nodes.length !== 0 && + paramsNodes[0].nodes[0].type === 'string'; + url = isStringValue + ? paramsNodes[0].nodes[0].value + : valueParser.stringify(paramsNodes[0].nodes); + } + + // Empty url - `@import "";` or `@import url();` + if (url.trim().length === 0) { + result.warn(`Unable to find uri in "${atRule.toString()}"`, { + node: atRule, + }); + + return; + } + + atRuleParsedResults.push({ + atRule, + url, + isStringValue, + mediaNodes: paramsNodes.slice(1), + }); + }, + }, + async OnceExit() { + if (atRuleParsedResults.length === 0) { + return; + } + + const imports = new Map(); + const tasks = []; + + for (const parsedResult of atRuleParsedResults) { + const { atRule, url, isStringValue, mediaNodes } = parsedResult; + + let normalizedUrl = url; + let prefix = ''; + + const isRequestable = isUrlRequestable(normalizedUrl); + + if (isRequestable) { + const queryParts = normalizedUrl.split('!'); + + if (queryParts.length > 1) { + normalizedUrl = queryParts.pop(); + prefix = queryParts.join('!'); + } + + normalizedUrl = normalizeUrl(normalizedUrl, isStringValue); + + // Empty url after normalize - `@import '\ + // \ + // \ + // '; + if (normalizedUrl.trim().length === 0) { + result.warn(`Unable to find uri in "${atRule.toString()}"`, { + node: atRule, + }); + + // eslint-disable-next-line no-continue + continue; + } + } + + let media; + + if (mediaNodes.length > 0) { + media = valueParser.stringify(mediaNodes).trim().toLowerCase(); + } + + if (options.filter && !options.filter(normalizedUrl, media)) { + // eslint-disable-next-line no-continue + continue; + } + + atRule.remove(); + + if (isRequestable) { + const request = requestify(normalizedUrl, options.rootContext); + + tasks.push( + (async () => { + const { resolver, context } = options; + const resolvedUrl = await resolveRequests(resolver, context, [ + ...new Set([request, normalizedUrl]), + ]); + + return { url: resolvedUrl, media, prefix, isRequestable }; + })() + ); + } else { + tasks.push({ url, media, prefix, isRequestable }); + } + } + + const results = await Promise.all(tasks); + + for (let index = 0; index <= results.length - 1; index++) { + const { url, isRequestable, media } = results[index]; + + if (isRequestable) { + const { prefix } = results[index]; + const newUrl = prefix ? `${prefix}!${url}` : url; + const importKey = newUrl; + let importName = imports.get(importKey); + + if (!importName) { + importName = `___CSS_LOADER_AT_RULE_IMPORT_${imports.size}___`; + imports.set(importKey, importName); + + options.imports.push({ + importName, + url: options.urlHandler(newUrl), + index, + }); + } + + options.api.push({ importName, media, index }); + + // eslint-disable-next-line no-continue + continue; + } + + options.api.push({ url, media, index }); + } + }, + }; + }, + }; +}; + +plugin.postcss = true; + +export default plugin; diff --git a/src/plugins/postcss-url-parser.js b/src/plugins/postcss-url-parser.js index bb14afb3..7156ce73 100644 --- a/src/plugins/postcss-url-parser.js +++ b/src/plugins/postcss-url-parser.js @@ -1,6 +1,3 @@ -import { promisify } from 'util'; - -import postcss from 'postcss'; import valueParser from 'postcss-value-parser'; import { @@ -10,20 +7,20 @@ import { isUrlRequestable, } from '../utils'; -const pluginName = 'postcss-url-parser'; - const isUrlFunc = /url/i; const isImageSetFunc = /^(?:-webkit-)?image-set$/i; -const needParseDecl = /(?:url|(?:-webkit-)?image-set)\(/i; +const needParseDeclaration = /(?:url|(?:-webkit-)?image-set)\(/i; function getNodeFromUrlFunc(node) { return node.nodes && node.nodes[0]; } -function shouldHandleRule(rule, decl, result) { +function shouldHandleRule(rule, declaration, result) { // https://www.w3.org/TR/css-syntax-3/#typedef-url-token if (rule.url.replace(/^[\s]+|[\s]+$/g, '').length === 0) { - result.warn(`Unable to find uri in '${decl.toString()}'`, { node: decl }); + result.warn(`Unable to find uri in '${declaration.toString()}'`, { + node: declaration, + }); return false; } @@ -35,201 +32,214 @@ function shouldHandleRule(rule, decl, result) { return true; } -function walkCss(css, result, options, callback) { - const accumulator = []; - - css.walkDecls((decl) => { - if (!needParseDecl.test(decl.value)) { - return; - } - - const parsed = valueParser(decl.value); - - parsed.walk((node) => { - if (node.type !== 'function') { - return; - } - - if (isUrlFunc.test(node.value)) { - const { nodes } = node; - const isStringValue = nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue - ? nodes[0].value - : valueParser.stringify(nodes); - - const rule = { - node: getNodeFromUrlFunc(node), - url, - needQuotes: false, - isStringValue, - }; - - if (shouldHandleRule(rule, decl, result)) { - accumulator.push({ decl, rule, parsed }); - } - - // Do not traverse inside `url` - // eslint-disable-next-line consistent-return - return false; - } else if (isImageSetFunc.test(node.value)) { - for (const nNode of node.nodes) { - const { type, value } = nNode; - - if (type === 'function' && isUrlFunc.test(value)) { - const { nodes } = nNode; - const isStringValue = - nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue - ? nodes[0].value - : valueParser.stringify(nodes); - - const rule = { - node: getNodeFromUrlFunc(nNode), - url, - needQuotes: false, - isStringValue, - }; +const plugin = (options = {}) => { + return { + postcssPlugin: 'postcss-url-parser', + prepare(result) { + const declarationParsedResults = []; + + return { + async Declaration(declaration) { + if (!needParseDeclaration.test(declaration.value)) { + return; + } - if (shouldHandleRule(rule, decl, result)) { - accumulator.push({ decl, rule, parsed }); + const parsed = valueParser(declaration.value); + + parsed.walk((valueNode) => { + if (valueNode.type !== 'function') { + return; } - } else if (type === 'string') { - const rule = { - node: nNode, - url: value, - needQuotes: true, - isStringValue: true, - }; - - if (shouldHandleRule(rule, decl, result)) { - accumulator.push({ decl, rule, parsed }); + + if (isUrlFunc.test(valueNode.value)) { + const { nodes } = valueNode; + const isStringValue = + nodes.length !== 0 && nodes[0].type === 'string'; + const url = isStringValue + ? nodes[0].value + : valueParser.stringify(nodes); + + const rule = { + node: getNodeFromUrlFunc(valueNode), + url, + needQuotes: false, + isStringValue, + }; + + if (shouldHandleRule(rule, declaration, result)) { + declarationParsedResults.push({ declaration, rule, parsed }); + } + + // Do not traverse inside `url` + // eslint-disable-next-line consistent-return + return false; + } else if (isImageSetFunc.test(valueNode.value)) { + for (const nNode of valueNode.nodes) { + const { type, value } = nNode; + + if (type === 'function' && isUrlFunc.test(value)) { + const { nodes } = nNode; + const isStringValue = + nodes.length !== 0 && nodes[0].type === 'string'; + const url = isStringValue + ? nodes[0].value + : valueParser.stringify(nodes); + + const rule = { + node: getNodeFromUrlFunc(nNode), + url, + needQuotes: false, + isStringValue, + }; + + if (shouldHandleRule(rule, declaration, result)) { + declarationParsedResults.push({ + declaration, + rule, + parsed, + }); + } + } else if (type === 'string') { + const rule = { + node: nNode, + url: value, + needQuotes: true, + isStringValue: true, + }; + + if (shouldHandleRule(rule, declaration, result)) { + declarationParsedResults.push({ + declaration, + rule, + parsed, + }); + } + } + } + + // Do not traverse inside `image-set` + // eslint-disable-next-line consistent-return + return false; } + }); + }, + async OnceExit() { + if (declarationParsedResults.length === 0) { + return; } - } - // Do not traverse inside `image-set` - // eslint-disable-next-line consistent-return - return false; - } - }); - }); + const tasks = []; + const imports = new Map(); + const replacements = new Map(); - callback(null, accumulator); -} + let hasUrlImportHelper = false; -const asyncWalkCss = promisify(walkCss); + for (const parsedResult of declarationParsedResults) { + const { url, isStringValue } = parsedResult.rule; -export default postcss.plugin(pluginName, (options) => async (css, result) => { - const parsedResults = await asyncWalkCss(css, result, options); + let normalizedUrl = url; + let prefix = ''; - if (parsedResults.length === 0) { - return Promise.resolve(); - } + const queryParts = normalizedUrl.split('!'); - const tasks = []; - const imports = new Map(); - const replacements = new Map(); + if (queryParts.length > 1) { + normalizedUrl = queryParts.pop(); + prefix = queryParts.join('!'); + } - let hasUrlImportHelper = false; + normalizedUrl = normalizeUrl(normalizedUrl, isStringValue); - for (const parsedResult of parsedResults) { - const { url, isStringValue } = parsedResult.rule; + if (!options.filter(normalizedUrl)) { + // eslint-disable-next-line no-continue + continue; + } - let normalizedUrl = url; - let prefix = ''; + if (!hasUrlImportHelper) { + options.imports.push({ + importName: '___CSS_LOADER_GET_URL_IMPORT___', + url: options.urlHandler( + require.resolve('../runtime/getUrl.js') + ), + index: -1, + }); - const queryParts = normalizedUrl.split('!'); + hasUrlImportHelper = true; + } - if (queryParts.length > 1) { - normalizedUrl = queryParts.pop(); - prefix = queryParts.join('!'); - } + const splittedUrl = normalizedUrl.split(/(\?)?#/); + const [pathname, query, hashOrQuery] = splittedUrl; - normalizedUrl = normalizeUrl(normalizedUrl, isStringValue); + let hash = query ? '?' : ''; + hash += hashOrQuery ? `#${hashOrQuery}` : ''; - if (!options.filter(normalizedUrl)) { - // eslint-disable-next-line no-continue - continue; - } + const request = requestify(pathname, options.rootContext); - if (!hasUrlImportHelper) { - options.imports.push({ - importName: '___CSS_LOADER_GET_URL_IMPORT___', - url: options.urlHandler(require.resolve('../runtime/getUrl.js')), - index: -1, - }); + tasks.push( + (async () => { + const { resolver, context } = options; + const resolvedUrl = await resolveRequests(resolver, context, [ + ...new Set([request, normalizedUrl]), + ]); - hasUrlImportHelper = true; - } + return { url: resolvedUrl, prefix, hash, parsedResult }; + })() + ); + } - const splittedUrl = normalizedUrl.split(/(\?)?#/); - const [pathname, query, hashOrQuery] = splittedUrl; + const results = await Promise.all(tasks); - let hash = query ? '?' : ''; - hash += hashOrQuery ? `#${hashOrQuery}` : ''; + for (let index = 0; index <= results.length - 1; index++) { + const { + url, + prefix, + hash, + parsedResult: { declaration, rule, parsed }, + } = results[index]; + const newUrl = prefix ? `${prefix}!${url}` : url; + const importKey = newUrl; + let importName = imports.get(importKey); + + if (!importName) { + importName = `___CSS_LOADER_URL_IMPORT_${imports.size}___`; + imports.set(importKey, importName); + + options.imports.push({ + importName, + url: options.urlHandler(newUrl), + index, + }); + } - const request = requestify(pathname, options.rootContext); + const { needQuotes } = rule; + const replacementKey = JSON.stringify({ newUrl, hash, needQuotes }); + let replacementName = replacements.get(replacementKey); - tasks.push( - (async () => { - const { resolver, context } = options; - const resolvedUrl = await resolveRequests(resolver, context, [ - ...new Set([request, normalizedUrl]), - ]); + if (!replacementName) { + replacementName = `___CSS_LOADER_URL_REPLACEMENT_${replacements.size}___`; + replacements.set(replacementKey, replacementName); - return { url: resolvedUrl, prefix, hash, parsedResult }; - })() - ); - } + options.replacements.push({ + replacementName, + importName, + hash, + needQuotes, + }); + } - const results = await Promise.all(tasks); - - for (let index = 0; index <= results.length - 1; index++) { - const { - url, - prefix, - hash, - parsedResult: { decl, rule, parsed }, - } = results[index]; - const newUrl = prefix ? `${prefix}!${url}` : url; - const importKey = newUrl; - let importName = imports.get(importKey); - - if (!importName) { - importName = `___CSS_LOADER_URL_IMPORT_${imports.size}___`; - imports.set(importKey, importName); - - options.imports.push({ - importName, - url: options.urlHandler(newUrl), - index, - }); - } - - const { needQuotes } = rule; - const replacementKey = JSON.stringify({ newUrl, hash, needQuotes }); - let replacementName = replacements.get(replacementKey); - - if (!replacementName) { - replacementName = `___CSS_LOADER_URL_REPLACEMENT_${replacements.size}___`; - replacements.set(replacementKey, replacementName); - - options.replacements.push({ - replacementName, - importName, - hash, - needQuotes, - }); - } - - // eslint-disable-next-line no-param-reassign - rule.node.type = 'word'; - // eslint-disable-next-line no-param-reassign - rule.node.value = replacementName; - - // eslint-disable-next-line no-param-reassign - decl.value = parsed.toString(); - } + // eslint-disable-next-line no-param-reassign + rule.node.type = 'word'; + // eslint-disable-next-line no-param-reassign + rule.node.value = replacementName; + + // eslint-disable-next-line no-param-reassign + declaration.value = parsed.toString(); + } + }, + }; + }, + }; +}; + +plugin.postcss = true; - return Promise.resolve(); -}); +export default plugin; diff --git a/test/__snapshots__/loader.test.js.snap b/test/__snapshots__/loader.test.js.snap index 1fab6764..8db06c70 100644 --- a/test/__snapshots__/loader.test.js.snap +++ b/test/__snapshots__/loader.test.js.snap @@ -39,6 +39,31 @@ exports[`loader issue #1033: result 1`] = `Object {}`; exports[`loader issue #1033: warnings 1`] = `Array []`; +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": errors 1`] = `Array []`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../src/runtime/api.js\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\"\\", \\"\\"]); +// Exports +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": result 1`] = ` +Array [ + Array [ + "./empty.css", + "", + "", + ], +] +`; + +exports[`loader should not generate console.warn when plugins disabled and hideNothingWarning is "true": warnings 1`] = `Array []`; + exports[`loader should reuse \`ast\` from "postcss-loader": errors 1`] = `Array []`; exports[`loader should reuse \`ast\` from "postcss-loader": module 1`] = ` diff --git a/test/loader.test.js b/test/loader.test.js index 9eb33ee2..0f30422e 100644 --- a/test/loader.test.js +++ b/test/loader.test.js @@ -450,8 +450,7 @@ describe('loader', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); - // TODO unskip after updating postcss to 8 version - it.skip('should not generate console.warn when plugins disabled and hideNothingWarning is "true"', async () => { + it('should not generate console.warn when plugins disabled and hideNothingWarning is "true"', async () => { jest.spyOn(console, 'warn').mockImplementation(() => {}); const compiler = getCompiler('./empty.js', { From 7bfe85d3ee652684175188a4788e9743ff97c652 Mon Sep 17 00:00:00 2001 From: Alexander Krasnoyarov Date: Tue, 13 Oct 2020 16:45:04 +0300 Subject: [PATCH 13/15] chore(deps): update (#1208) --- .github/workflows/nodejs.yml | 6 +- package-lock.json | 2849 ++++++----------- package.json | 44 +- src/plugins/postcss-import-parser.js | 151 +- src/plugins/postcss-url-parser.js | 183 +- .../__snapshots__/modules-option.test.js.snap | 20 +- test/fixtures/source-map/extract.js | 3 + test/sourceMap-option.test.js | 6 +- 8 files changed, 1178 insertions(+), 2084 deletions(-) create mode 100644 test/fixtures/source-map/extract.js diff --git a/.github/workflows/nodejs.yml b/.github/workflows/nodejs.yml index b070cefd..d2dc0fe6 100644 --- a/.github/workflows/nodejs.yml +++ b/.github/workflows/nodejs.yml @@ -43,8 +43,8 @@ jobs: - name: Lint run: npm run lint - # - name: Security audit - # run: npm run security + - name: Security audit + run: npm run security - name: Check commit message uses: wagoid/commitlint-github-action@v1 @@ -56,7 +56,7 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] node-version: [10.x, 12.x, 14.x] - webpack-version: [latest, next] + webpack-version: [4, latest] runs-on: ${{ matrix.os }} diff --git a/package-lock.json b/package-lock.json index 632788f8..d536b8bc 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1602,16 +1602,16 @@ "dev": true }, "@jest/console": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.5.0.tgz", - "integrity": "sha512-oh59scth4yf8XUgMJb8ruY7BHm0X5JZDNgGGsVnlOt2XQuq9s2NMllIrN4n70Yds+++bjrTGZ9EoOKraaPKPlg==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/console/-/console-26.5.2.tgz", + "integrity": "sha512-lJELzKINpF1v74DXHbCRIkQ/+nUV1M+ntj+X1J8LxCgpmJZjfLmhFejiMSbjjD66fayxl5Z06tbs3HMyuik6rw==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/node": "*", "chalk": "^4.0.0", - "jest-message-util": "^26.5.0", - "jest-util": "^26.5.0", + "jest-message-util": "^26.5.2", + "jest-util": "^26.5.2", "slash": "^3.0.0" }, "dependencies": { @@ -1673,34 +1673,34 @@ } }, "@jest/core": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.5.0.tgz", - "integrity": "sha512-hDtgfzYxnrQn54+0JlbqpXM4+bqDfK0ooMlNE4Nn3VBsB4RbmytAn4/kVVIcMa+aYwRr/fwzWuGJwBETVg1sDw==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/@jest/core/-/core-26.5.3.tgz", + "integrity": "sha512-CiU0UKFF1V7KzYTVEtFbFmGLdb2g4aTtY0WlyUfLgj/RtoTnJFhh50xKKr7OYkdmBUlGFSa2mD1TU3UZ6OLd4g==", "dev": true, "requires": { - "@jest/console": "^26.5.0", - "@jest/reporters": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/transform": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/console": "^26.5.2", + "@jest/reporters": "^26.5.3", + "@jest/test-result": "^26.5.2", + "@jest/transform": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.4", - "jest-changed-files": "^26.5.0", - "jest-config": "^26.5.0", - "jest-haste-map": "^26.5.0", - "jest-message-util": "^26.5.0", + "jest-changed-files": "^26.5.2", + "jest-config": "^26.5.3", + "jest-haste-map": "^26.5.2", + "jest-message-util": "^26.5.2", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.5.0", - "jest-resolve-dependencies": "^26.5.0", - "jest-runner": "^26.5.0", - "jest-runtime": "^26.5.0", - "jest-snapshot": "^26.5.0", - "jest-util": "^26.5.0", - "jest-validate": "^26.5.0", - "jest-watcher": "^26.5.0", + "jest-resolve": "^26.5.2", + "jest-resolve-dependencies": "^26.5.3", + "jest-runner": "^26.5.3", + "jest-runtime": "^26.5.3", + "jest-snapshot": "^26.5.3", + "jest-util": "^26.5.2", + "jest-validate": "^26.5.3", + "jest-watcher": "^26.5.2", "micromatch": "^4.0.2", "p-each-series": "^2.1.0", "rimraf": "^3.0.0", @@ -1824,53 +1824,53 @@ } }, "@jest/environment": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.5.0.tgz", - "integrity": "sha512-0F3G9EyZU2NAP0/c/5EqVx4DmldQtRxj0gMl3p3ciSCdyMiCyDmpdE7O0mKTSiFDyl1kU4TfgEVf0r0vMkmYcw==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-26.5.2.tgz", + "integrity": "sha512-YjhCD/Zhkz0/1vdlS/QN6QmuUdDkpgBdK4SdiVg4Y19e29g4VQYN5Xg8+YuHjdoWGY7wJHMxc79uDTeTOy9Ngw==", "dev": true, "requires": { - "@jest/fake-timers": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/fake-timers": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", - "jest-mock": "^26.5.0" + "jest-mock": "^26.5.2" } }, "@jest/fake-timers": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.5.0.tgz", - "integrity": "sha512-sQK6xUembaZ0qLnZpSjJJuJiKvyrjCJhaYjbmatFpj5+cM8h2D7YEkeEBC26BMzvF1O3tNM9OL7roqyBmom0KA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-26.5.2.tgz", + "integrity": "sha512-09Hn5Oraqt36V1akxQeWMVL0fR9c6PnEhpgLaYvREXZJAh2H2Y+QLCsl0g7uMoJeoWJAuz4tozk1prbR1Fc1sw==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@sinonjs/fake-timers": "^6.0.1", "@types/node": "*", - "jest-message-util": "^26.5.0", - "jest-mock": "^26.5.0", - "jest-util": "^26.5.0" + "jest-message-util": "^26.5.2", + "jest-mock": "^26.5.2", + "jest-util": "^26.5.2" } }, "@jest/globals": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.5.0.tgz", - "integrity": "sha512-TCKx3XWR9h/yyhQbz0C1sXkK2e8WJOnkP40T9bewNpf2Ahr1UEyKXnCoQO0JCpXFkWGTXBNo1QAgTQ3+LhXfcA==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-26.5.3.tgz", + "integrity": "sha512-7QztI0JC2CuB+Wx1VdnOUNeIGm8+PIaqngYsZXQCkH2QV0GFqzAYc9BZfU0nuqA6cbYrWh5wkuMzyii3P7deug==", "dev": true, "requires": { - "@jest/environment": "^26.5.0", - "@jest/types": "^26.5.0", - "expect": "^26.5.0" + "@jest/environment": "^26.5.2", + "@jest/types": "^26.5.2", + "expect": "^26.5.3" } }, "@jest/reporters": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.5.0.tgz", - "integrity": "sha512-lUl5bbTHflDO9dQa85ZTHasPBVsyC48t9sg/VN2wC3OJryclFNqN4Xfo2FgnNl/pzCnzO2MVgMyIij5aNkod2w==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-26.5.3.tgz", + "integrity": "sha512-X+vR0CpfMQzYcYmMFKNY9n4jklcb14Kffffp7+H/MqitWnb0440bW2L76NGWKAa+bnXhNoZr+lCVtdtPmfJVOQ==", "dev": true, "requires": { "@bcoe/v8-coverage": "^0.2.3", - "@jest/console": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/transform": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/console": "^26.5.2", + "@jest/test-result": "^26.5.2", + "@jest/transform": "^26.5.2", + "@jest/types": "^26.5.2", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", @@ -1881,16 +1881,16 @@ "istanbul-lib-report": "^3.0.0", "istanbul-lib-source-maps": "^4.0.0", "istanbul-reports": "^3.0.2", - "jest-haste-map": "^26.5.0", - "jest-resolve": "^26.5.0", - "jest-util": "^26.5.0", + "jest-haste-map": "^26.5.2", + "jest-resolve": "^26.5.2", + "jest-util": "^26.5.2", "jest-worker": "^26.5.0", "node-notifier": "^8.0.0", "slash": "^3.0.0", "source-map": "^0.6.0", "string-length": "^4.0.1", "terminal-link": "^2.0.0", - "v8-to-istanbul": "^5.0.1" + "v8-to-istanbul": "^6.0.1" }, "dependencies": { "ansi-styles": { @@ -1962,46 +1962,46 @@ } }, "@jest/test-result": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.5.0.tgz", - "integrity": "sha512-CaVXxDQi31LPOsz5/+iajNHQlA1Je/jQ8uYH/lCa6Y/UrkO+sDHeEH3x/inbx06PctVDnTwIlCcBvNNbC4FCvQ==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-26.5.2.tgz", + "integrity": "sha512-E/Zp6LURJEGSCWpoMGmCFuuEI1OWuI3hmZwmULV0GsgJBh7u0rwqioxhRU95euUuviqBDN8ruX/vP/4bwYolXw==", "dev": true, "requires": { - "@jest/console": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/console": "^26.5.2", + "@jest/types": "^26.5.2", "@types/istanbul-lib-coverage": "^2.0.0", "collect-v8-coverage": "^1.0.0" } }, "@jest/test-sequencer": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.5.0.tgz", - "integrity": "sha512-23oofRXqPEy37HyHWIYf7lzzOqtGBkai5erZiL6RgxlyXE7a0lCihf6b5DfAvcD3yUtbXmh3EzpjJDVH57zQrg==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-26.5.3.tgz", + "integrity": "sha512-Wqzb7aQ13L3T47xHdpUqYMOpiqz6Dx2QDDghp5AV/eUDXR7JieY+E1s233TQlNyl+PqtqgjVokmyjzX/HA51BA==", "dev": true, "requires": { - "@jest/test-result": "^26.5.0", + "@jest/test-result": "^26.5.2", "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.5.0", - "jest-runner": "^26.5.0", - "jest-runtime": "^26.5.0" + "jest-haste-map": "^26.5.2", + "jest-runner": "^26.5.3", + "jest-runtime": "^26.5.3" } }, "@jest/transform": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.5.0.tgz", - "integrity": "sha512-Kt4WciOruTyTkJ2DZ+xtZiejRj3v22BrXCYZoGRbI0N6Q6tt2HdsWrrEtn6nlK24QWKC389xKkVk4Xr2gWBZQA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-26.5.2.tgz", + "integrity": "sha512-AUNjvexh+APhhmS8S+KboPz+D3pCxPvEAGduffaAJYxIFxGi/ytZQkrqcKDUU0ERBAo5R7087fyOYr2oms1seg==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "babel-plugin-istanbul": "^6.0.0", "chalk": "^4.0.0", "convert-source-map": "^1.4.0", "fast-json-stable-stringify": "^2.0.0", "graceful-fs": "^4.2.4", - "jest-haste-map": "^26.5.0", + "jest-haste-map": "^26.5.2", "jest-regex-util": "^26.0.0", - "jest-util": "^26.5.0", + "jest-util": "^26.5.2", "micromatch": "^4.0.2", "pirates": "^4.0.1", "slash": "^3.0.0", @@ -2110,9 +2110,9 @@ } }, "@jest/types": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.5.0.tgz", - "integrity": "sha512-nH9DFLqaIhB+RVgjivemvMiFSWw/BKwbZGxBAMv8CCTvUyFoK8RwHhAlmlXIvMBrf5Z3YQ4p9cq3Qh9EDctGvA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/@jest/types/-/types-26.5.2.tgz", + "integrity": "sha512-QDs5d0gYiyetI8q+2xWdkixVQMklReZr4ltw7GFDtb4fuJIBCE6mzj2LnitGqCuAlLap6wPyb8fpoHgwZz5fdg==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.0", @@ -2199,6 +2199,23 @@ "fastq": "^1.6.0" } }, + "@npmcli/move-file": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.0.1.tgz", + "integrity": "sha512-Uv6h1sT+0DrblvIrolFtbvM1FgWm+/sy4B3pvLp67Zys+thcukzS5ekn7HsZFGpWP4Q3fYJCljbWQE/XivMRLw==", + "dev": true, + "requires": { + "mkdirp": "^1.0.4" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + } + } + }, "@sinonjs/commons": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.8.1.tgz", @@ -2258,6 +2275,32 @@ "@babel/types": "^7.3.0" } }, + "@types/eslint": { + "version": "7.2.4", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.4.tgz", + "integrity": "sha512-YCY4kzHMsHoyKspQH+nwSe+70Kep7Vjt2X+dZe5Vs2vkRudqtoFoUIv1RlJmZB8Hbp7McneupoZij4PadxsK5Q==", + "dev": true, + "requires": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "@types/eslint-scope": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", + "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", + "dev": true, + "requires": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "@types/estree": { + "version": "0.0.45", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.45.tgz", + "integrity": "sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g==", + "dev": true + }, "@types/glob": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.1.3.tgz", @@ -2325,9 +2368,9 @@ "dev": true }, "@types/node": { - "version": "14.11.5", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.5.tgz", - "integrity": "sha512-jVFzDV6NTbrLMxm4xDSIW/gKnk8rQLF9wAzLWIOg+5nU6ACrIMndeBdXci0FGtqJbP9tQvm6V39eshc96TO2wQ==", + "version": "14.11.8", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.8.tgz", + "integrity": "sha512-KPcKqKm5UKDkaYPTuXSx8wEP7vE9GnuaXIZKijwRYcePpZFDVuy2a57LarFKiORbHOuTOOwYzxVxcUzsh2P2Pw==", "dev": true }, "@types/normalize-package-data": { @@ -2343,9 +2386,9 @@ "dev": true }, "@types/prettier": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.1.tgz", - "integrity": "sha512-2zs+O+UkDsJ1Vcp667pd3f8xearMdopz/z54i99wtRDI5KLmngk7vlrYZD0ZjKHaROR03EznlBbVY9PfAEyJIQ==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/@types/prettier/-/prettier-2.1.2.tgz", + "integrity": "sha512-IiPhNnenzkqdSdQH3ifk9LoX7oQe61ZlDdDO4+MUv6FyWdPGDPr26gCPVs3oguZEMq//nFZZpwUZcVuNJsG+DQ==", "dev": true }, "@types/stack-utils": { @@ -2355,9 +2398,9 @@ "dev": true }, "@types/yargs": { - "version": "15.0.7", - "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.7.tgz", - "integrity": "sha512-Gf4u3EjaPNcC9cTu4/j2oN14nSVhr8PQ+BvBcBQHAhDZfl0bVIiLgvnRXv/dn58XhTm9UXvBpvJpDlwV65QxOA==", + "version": "15.0.8", + "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-15.0.8.tgz", + "integrity": "sha512-b0BYzFUzBpOhPjpl1wtAHU994jBeKF4TKVlT7ssFv44T617XNcPdRoG4AzHLVshLzlrF7i3lTelH7UbuNYV58Q==", "dev": true, "requires": { "@types/yargs-parser": "*" @@ -2679,9 +2722,9 @@ } }, "ajv": { - "version": "6.12.5", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.5.tgz", - "integrity": "sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag==", + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", "requires": { "fast-deep-equal": "^3.1.1", "fast-json-stable-stringify": "^2.0.0", @@ -2728,6 +2771,7 @@ "version": "3.2.1", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dev": true, "requires": { "color-convert": "^1.9.0" } @@ -2753,12 +2797,6 @@ } } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true - }, "are-we-there-yet": { "version": "1.1.5", "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", @@ -2898,53 +2936,6 @@ "safer-buffer": "~2.1.0" } }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", - "dev": true, - "requires": { - "object-assign": "^4.1.1", - "util": "0.10.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", - "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=", - "dev": true - }, - "util": { - "version": "0.10.3", - "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz", - "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=", - "dev": true, - "requires": { - "inherits": "2.0.1" - } - } - } - }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -3018,6 +3009,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -3093,13 +3093,13 @@ } }, "babel-jest": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.5.0.tgz", - "integrity": "sha512-Cy16ZJrds81C+JASaOIGNlpCeqW3PTOq36owv+Zzwde5NiWz+zNduwxUNF57vxc/3SnIWo8HHqTczhN8GLoXTw==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-26.5.2.tgz", + "integrity": "sha512-U3KvymF3SczA3vOL/cgiUFOznfMET+XDIXiWnoJV45siAp2pLMG8i2+/MGZlAC3f/F6Q40LR4M4qDrWZ9wkK8A==", "dev": true, "requires": { - "@jest/transform": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/transform": "^26.5.2", + "@jest/types": "^26.5.2", "@types/babel__core": "^7.1.7", "babel-plugin-istanbul": "^6.0.0", "babel-preset-jest": "^26.5.0", @@ -3295,12 +3295,6 @@ } } }, - "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", - "dev": true - }, "bcrypt-pbkdf": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", @@ -3337,12 +3331,6 @@ "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", "dev": true }, - "bn.js": { - "version": "5.1.3", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz", - "integrity": "sha512-GkTiFpjFtUzU9CbMeJ5iazkCzGL3jrhzerzZIuqLABjbwRaFt33I9tUdSNryIptM+RxDet6OKm2WnLXzW51KsQ==", - "dev": true - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -3388,118 +3376,12 @@ } } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "dev": true - }, "browser-process-hrtime": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", "dev": true }, - "browserify-aes": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz", - "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", - "dev": true, - "requires": { - "buffer-xor": "^1.0.3", - "cipher-base": "^1.0.0", - "create-hash": "^1.1.0", - "evp_bytestokey": "^1.0.3", - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, - "browserify-cipher": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz", - "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", - "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" - } - }, - "browserify-des": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz", - "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "browserify-sign": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz", - "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==", - "dev": true, - "requires": { - "bn.js": "^5.1.1", - "browserify-rsa": "^4.0.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "elliptic": "^6.5.3", - "inherits": "^2.0.4", - "parse-asn1": "^5.1.5", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "browserify-zlib": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz", - "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", - "dev": true, - "requires": { - "pako": "~1.0.5" - } - }, "browserslist": { "version": "4.14.5", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.5.tgz", @@ -3521,80 +3403,56 @@ "node-int64": "^0.4.0" } }, - "buffer": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz", - "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==", - "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" - } - }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", "dev": true }, - "buffer-xor": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", - "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", - "dev": true - }, - "builtin-status-codes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz", - "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=", - "dev": true - }, "cacache": { - "version": "12.0.4", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz", - "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==", + "version": "15.0.5", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.0.5.tgz", + "integrity": "sha512-lloiL22n7sOjEEXdL8NAjTgv9a1u43xICE9/203qonkZUCj5X1UEWIdf2/Y0d6QcCtMzbKQyhrcDbdvlZTs/+A==", "dev": true, "requires": { - "bluebird": "^3.5.5", - "chownr": "^1.1.1", - "figgy-pudding": "^3.5.1", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", "glob": "^7.1.4", - "graceful-fs": "^4.1.15", - "infer-owner": "^1.0.3", - "lru-cache": "^5.1.1", - "mississippi": "^3.0.0", - "mkdirp": "^0.5.1", - "move-concurrently": "^1.0.1", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", "promise-inflight": "^1.0.1", - "rimraf": "^2.6.3", - "ssri": "^6.0.1", - "unique-filename": "^1.1.1", - "y18n": "^4.0.0" + "rimraf": "^3.0.2", + "ssri": "^8.0.0", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" }, "dependencies": { "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "requires": { - "yallist": "^3.0.2" + "yallist": "^4.0.0" } }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true }, "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "dev": true } } @@ -3631,9 +3489,9 @@ "dev": true }, "camelcase": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.0.0.tgz", - "integrity": "sha512-8KMDF1Vz2gzOq54ONPJS65IvTUaB1cHJ2DMM7MbPmLZljDH1qpzzLsWdiN9pHh6qvkRVDTi/07+eNGch/oLU4w==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.1.0.tgz", + "integrity": "sha512-WCMml9ivU60+8rEJgELlFp1gxFcEGxwYleE3bziHEDeqsqAWGHdimB7beBFGjLzVNgPGyDsfgXLQEYMpmIFnVQ==" }, "camelcase-keys": { "version": "6.2.2", @@ -3655,9 +3513,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001144", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001144.tgz", - "integrity": "sha512-4GQTEWNMnVZVOFG3BK0xvGeaDAtiPAbG2N8yuMXuXzx/c2Vd4XoMPO8+E918zeXn5IF0FRVtGShBfkfQea2wHQ==", + "version": "1.0.30001147", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001147.tgz", + "integrity": "sha512-CPyN875geYk46eIqPl5jlmotCr5YZC2KxIVfb4z0FrNfLxPM+MyodWD2irJGDG8vUUE1fmg3De9vt8uaC6Nf6w==", "dev": true }, "caporal": { @@ -3696,20 +3554,11 @@ "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, "requires": { "ansi-styles": "^3.2.1", "escape-string-regexp": "^1.0.5", "supports-color": "^5.3.0" - }, - "dependencies": { - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", - "requires": { - "has-flag": "^3.0.0" - } - } } }, "char-regex": { @@ -3739,9 +3588,9 @@ } }, "chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", "dev": true }, "chrome-trace-event": { @@ -3759,16 +3608,6 @@ "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==", "dev": true }, - "cipher-base": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz", - "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", @@ -3959,6 +3798,7 @@ "version": "1.9.3", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dev": true, "requires": { "color-name": "1.1.3" } @@ -3966,7 +3806,8 @@ "color-name": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", - "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", + "dev": true }, "colorette": { "version": "1.2.1", @@ -4049,18 +3890,6 @@ "typedarray": "^0.0.6" } }, - "console-browserify": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz", - "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==", - "dev": true - }, - "constants-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz", - "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=", - "dev": true - }, "contains-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", @@ -4776,31 +4605,6 @@ "safe-buffer": "~5.1.1" } }, - "copy-concurrently": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz", - "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "fs-write-stream-atomic": "^1.0.8", - "iferr": "^0.1.5", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.0" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, "copy-descriptor": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", @@ -4850,51 +4654,6 @@ "yaml": "^1.10.0" } }, - "create-ecdh": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz", - "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.5.3" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, - "create-hash": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz", - "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" - } - }, - "create-hmac": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz", - "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", - "dev": true, - "requires": { - "cipher-base": "^1.0.3", - "create-hash": "^1.1.0", - "inherits": "^2.0.1", - "ripemd160": "^2.0.0", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, "cross-env": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.2.tgz", @@ -4968,25 +4727,6 @@ } } }, - "crypto-browserify": { - "version": "3.12.0", - "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz", - "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", - "dev": true, - "requires": { - "browserify-cipher": "^1.0.0", - "browserify-sign": "^4.0.0", - "create-ecdh": "^4.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.0", - "diffie-hellman": "^5.0.0", - "inherits": "^2.0.1", - "pbkdf2": "^3.0.3", - "public-encrypt": "^4.0.0", - "randombytes": "^2.0.0", - "randomfill": "^1.0.3" - } - }, "css": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/css/-/css-2.2.4.tgz", @@ -5018,6 +4758,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -5058,6 +4807,15 @@ "indexes-of": "^1.0.1", "uniq": "^1.0.1" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -5089,6 +4847,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -5141,12 +4908,6 @@ "integrity": "sha1-IegLK+hYD5i0aPN5QwZisEbDStI=", "dev": true }, - "cyclist": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz", - "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=", - "dev": true - }, "dargs": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", @@ -5418,16 +5179,6 @@ "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "dev": true }, - "des.js": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz", - "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" - } - }, "detect-indent": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-5.0.0.tgz", @@ -5446,25 +5197,6 @@ "integrity": "sha512-ZXx86srb/iYy6jG71k++wBN9P9J05UNQ5hQHQd9MtMPvcqXPx/vKU69jfHV637D00Q2gSgPk2D+jSx3l1lDW/Q==", "dev": true }, - "diffie-hellman": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz", - "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -5483,12 +5215,6 @@ "esutils": "^2.0.2" } }, - "domain-browser": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz", - "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", - "dev": true - }, "domexception": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", @@ -5561,18 +5287,6 @@ } } }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } - }, "ecc-jsbn": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", @@ -5610,34 +5324,11 @@ } }, "electron-to-chromium": { - "version": "1.3.577", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.577.tgz", - "integrity": "sha512-dSb64JQSFif/pD8mpVAgSFkbVi6YHbK6JeEziwNNmXlr/Ne2rZtseFK5SM7JoWSLf6gP0gVvRGi4/2ZRhSX/rA==", + "version": "1.3.578", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.578.tgz", + "integrity": "sha512-z4gU6dA1CbBJsAErW5swTGAaU2TBzc2mPAonJb00zqW1rOraDo2zfBMDRvaz9cVic+0JEZiYbHWPw/fTaZlG2Q==", "dev": true }, - "elliptic": { - "version": "6.5.3", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.3.tgz", - "integrity": "sha512-IMqzv5wNQf+E6aHeIqATs0tOLeOTwj1QKbRcS3jBbYkl5oLAserA8yJTT7/VyHUYG91PRmPyeQDObKLPpeS4dw==", - "dev": true, - "requires": { - "bn.js": "^4.4.0", - "brorand": "^1.0.1", - "hash.js": "^1.0.0", - "hmac-drbg": "^1.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.0" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, "emittery": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.7.1.tgz", @@ -5665,26 +5356,13 @@ } }, "enhanced-resolve": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.3.0.tgz", - "integrity": "sha512-3e87LvavsdxyoCfGusJnrZ5G8SLPOFeHSNpZI/ATL9a5leXo2k0w6MKnbqhdBad9qTobSfB20Ld7UmgoNbAZkQ==", + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.2.0.tgz", + "integrity": "sha512-NZlGLl8DxmZoq0uqPPtJfsCAir68uR047+Udsh1FH4+5ydGQdMurn/A430A1BtxASVmMEuS7/XiJ5OxJ9apAzQ==", "dev": true, "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.5.0", - "tapable": "^1.0.0" - }, - "dependencies": { - "memory-fs": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", - "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - } + "graceful-fs": "^4.2.4", + "tapable": "^2.0.0" } }, "enquirer": { @@ -5701,6 +5379,7 @@ "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "dev": true, + "optional": true, "requires": { "prr": "~1.0.1" } @@ -5765,7 +5444,8 @@ "escape-string-regexp": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", - "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true }, "escodegen": { "version": "1.14.3", @@ -5828,9 +5508,9 @@ } }, "eslint": { - "version": "7.10.0", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.10.0.tgz", - "integrity": "sha512-BDVffmqWl7JJXqCjAK6lWtcQThZB/aP1HXSH1JKwGwv0LQEdvpR7qzNrUT487RM39B5goWuboFad5ovMBmD8yA==", + "version": "7.11.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.11.0.tgz", + "integrity": "sha512-G9+qtYVCHaDi1ZuWzBsOWo2wSwd70TXnU6UHA3cTYHp7gCTXZcpggWFoUVAMRarg68qtPoNfFbzPh+VdOgmwmw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", @@ -5843,7 +5523,7 @@ "enquirer": "^2.3.5", "eslint-scope": "^5.1.1", "eslint-utils": "^2.1.0", - "eslint-visitor-keys": "^1.3.0", + "eslint-visitor-keys": "^2.0.0", "espree": "^7.3.0", "esquery": "^1.2.0", "esutils": "^2.0.2", @@ -6187,12 +5867,20 @@ "dev": true, "requires": { "eslint-visitor-keys": "^1.1.0" + }, + "dependencies": { + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true + } } }, "eslint-visitor-keys": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", - "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.0.0.tgz", + "integrity": "sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==", "dev": true }, "espree": { @@ -6211,6 +5899,12 @@ "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", "dev": true + }, + "eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true } } }, @@ -6272,16 +5966,6 @@ "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", "dev": true }, - "evp_bytestokey": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz", - "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", - "dev": true, - "requires": { - "md5.js": "^1.3.4", - "safe-buffer": "^5.1.1" - } - }, "exec-sh": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.3.4.tgz", @@ -6351,16 +6035,16 @@ } }, "expect": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/expect/-/expect-26.5.0.tgz", - "integrity": "sha512-oIOy3mHWjnF5ZICuaui5kdtJZQ+D7XHWyUQDxk1WhIRCkcIYc24X23bOfikgCNU6i9wcSqLQhwPOqeRp09naxg==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/expect/-/expect-26.5.3.tgz", + "integrity": "sha512-kkpOhGRWGOr+TEFUnYAjfGvv35bfP+OlPtqPIJpOCR9DVtv8QV+p8zG0Edqafh80fsjeE+7RBcVUq1xApnYglw==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "ansi-styles": "^4.0.0", "jest-get-type": "^26.3.0", - "jest-matcher-utils": "^26.5.0", - "jest-message-util": "^26.5.0", + "jest-matcher-utils": "^26.5.2", + "jest-message-util": "^26.5.2", "jest-regex-util": "^26.0.0" }, "dependencies": { @@ -6607,12 +6291,6 @@ "bser": "2.1.1" } }, - "figgy-pudding": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz", - "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==", - "dev": true - }, "figures": { "version": "1.7.0", "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz", @@ -6633,26 +6311,13 @@ } }, "file-loader": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.1.0.tgz", - "integrity": "sha512-26qPdHyTsArQ6gU4P1HJbAbnFTyT2r0pG7czh1GFAd9TZbj0n94wWbupgixZH/ET/meqi2/5+F7DhW4OAXD+Lg==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.1.1.tgz", + "integrity": "sha512-Klt8C4BjWSXYQAfhpYYkG4qHNTna4toMHEbWrI5IuVoxbU6uiDKeKAP99R8mmbJi3lvewn/jQBOgU4+NS3tDQw==", "dev": true, "requires": { "loader-utils": "^2.0.0", - "schema-utils": "^2.7.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "schema-utils": "^3.0.0" } }, "file-uri-to-path": { @@ -6686,58 +6351,39 @@ } }, "find-cache-dir": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", - "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", + "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", "dev": true, "requires": { "commondir": "^1.0.1", - "make-dir": "^2.0.0", - "pkg-dir": "^3.0.0" + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" }, "dependencies": { - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", - "dev": true, - "requires": { - "locate-path": "^3.0.0" - } - }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "semver": "^6.0.0" } }, - "p-locate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", - "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "p-limit": "^2.0.0" + "find-up": "^4.0.0" } }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", - "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "pkg-dir": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", - "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", - "dev": true, - "requires": { - "find-up": "^3.0.0" - } } } }, @@ -6794,16 +6440,6 @@ "integrity": "sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==", "dev": true }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" - } - }, "for-in": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", @@ -6836,16 +6472,6 @@ "map-cache": "^0.2.2" } }, - "from2": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz", - "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "readable-stream": "^2.0.0" - } - }, "fs-access": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz", @@ -6873,6 +6499,15 @@ "universalify": "^1.0.0" } }, + "fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, "fs-monkey": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.1.tgz", @@ -6885,18 +6520,6 @@ "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", "dev": true }, - "fs-write-stream-atomic": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", - "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", - "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" - } - }, "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", @@ -7311,6 +6934,12 @@ } } }, + "glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, "global-dirs": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", @@ -7425,7 +7054,8 @@ "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", - "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "dev": true }, "has-symbols": { "version": "1.0.1", @@ -7479,57 +7109,6 @@ } } }, - "hash-base": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz", - "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==", - "dev": true, - "requires": { - "inherits": "^2.0.4", - "readable-stream": "^3.6.0", - "safe-buffer": "^5.2.0" - }, - "dependencies": { - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - } - }, - "safe-buffer": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - "dev": true - } - } - }, - "hash.js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", - "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", - "dev": true, - "requires": { - "inherits": "^2.0.3", - "minimalistic-assert": "^1.0.1" - } - }, - "hmac-drbg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz", - "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", - "dev": true, - "requires": { - "hash.js": "^1.0.3", - "minimalistic-assert": "^1.0.0", - "minimalistic-crypto-utils": "^1.0.1" - } - }, "homedir-polyfill": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", @@ -7571,12 +7150,6 @@ "sshpk": "^1.7.0" } }, - "https-browserify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", - "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=", - "dev": true - }, "human-signals": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz", @@ -7677,36 +7250,9 @@ } }, "icss-utils": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz", - "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==", - "requires": { - "postcss": "^7.0.14" - }, - "dependencies": { - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - } - } - }, - "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", - "dev": true - }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.0.0.tgz", + "integrity": "sha512-aF2Cf/CkEZrI/vsu5WI/I+akFgdbwQHVE9YRZxATrhH4PVIe6a3BIjwjEcW+z+jP/hNh+YvM3lAAn1wJQ6opSg==" }, "ignore": { "version": "5.1.8", @@ -8336,14 +7882,14 @@ } }, "jest": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest/-/jest-26.5.0.tgz", - "integrity": "sha512-yW1QTkdpxVWTV2M5cOwVdEww8dRGqL5bb7FOG3YQoMtf7oReCEawmU0+tOKkZUSfcOymbXmCfdBQLzuwOLCx0w==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest/-/jest-26.5.3.tgz", + "integrity": "sha512-uJi3FuVSLmkZrWvaDyaVTZGLL8WcfynbRnFXyAHuEtYiSZ+ijDDIMOw1ytmftK+y/+OdAtsG9QrtbF7WIBmOyA==", "dev": true, "requires": { - "@jest/core": "^26.5.0", + "@jest/core": "^26.5.3", "import-local": "^3.0.2", - "jest-cli": "^26.5.0" + "jest-cli": "^26.5.3" }, "dependencies": { "ansi-styles": { @@ -8365,17 +7911,6 @@ "supports-color": "^7.1.0" } }, - "cliui": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.1.tgz", - "integrity": "sha512-rcvHOWyGyid6I1WjT/3NatKj2kDt9OdSHSXpyLXaMWFbKpGACNW8pRhhdPUq9MWUOdwn8Rz9AVETjF4105rZZQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -8398,24 +7933,24 @@ "dev": true }, "jest-cli": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.5.0.tgz", - "integrity": "sha512-bI0h6GQGbyN0SSZu3nPilwrkrZ8dBC93erwTiEoJ+kGjtNuXsB183hTZ0HCiHLzf88oE0SQB1hYp8RgyytH+Bg==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-26.5.3.tgz", + "integrity": "sha512-HkbSvtugpSXBf2660v9FrNVUgxvPkssN8CRGj9gPM8PLhnaa6zziFiCEKQAkQS4uRzseww45o0TR+l6KeRYV9A==", "dev": true, "requires": { - "@jest/core": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/core": "^26.5.3", + "@jest/test-result": "^26.5.2", + "@jest/types": "^26.5.2", "chalk": "^4.0.0", "exit": "^0.1.2", "graceful-fs": "^4.2.4", "import-local": "^3.0.2", "is-ci": "^2.0.0", - "jest-config": "^26.5.0", - "jest-util": "^26.5.0", - "jest-validate": "^26.5.0", + "jest-config": "^26.5.3", + "jest-util": "^26.5.2", + "jest-validate": "^26.5.3", "prompts": "^2.0.1", - "yargs": "^16.0.3" + "yargs": "^15.4.1" } }, "supports-color": { @@ -8426,54 +7961,16 @@ "requires": { "has-flag": "^4.0.0" } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.2.tgz", - "integrity": "sha512-CkwaeZw6dQgqgPGeTWKMXCRmMcBgETFlTml1+ZOO+q7kGst8NREJ+eWwFNPVUQ4QGdAaklbqCZHH6Zuep1RjiA==", - "dev": true - }, - "yargs": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", - "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", - "dev": true, - "requires": { - "cliui": "^7.0.0", - "escalade": "^3.0.2", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.1", - "yargs-parser": "^20.0.0" - } - }, - "yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA==", - "dev": true } } }, "jest-changed-files": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.5.0.tgz", - "integrity": "sha512-RAHoXqxa7gO1rZz88qpsLpzJ2mQU12UaFWadacKHuMbBZwFK+yl0j9YoD9Y/wBpv1ILG2SdCuxFHggX+9VU7qA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-26.5.2.tgz", + "integrity": "sha512-qSmssmiIdvM5BWVtyK/nqVpN3spR5YyvkvPqz1x3BR1bwIxsWmU/MGwLoCrPNLbkG2ASAKfvmJpOduEApBPh2w==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "execa": "^4.0.0", "throat": "^5.0.0" }, @@ -8572,29 +8069,29 @@ } }, "jest-config": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.5.0.tgz", - "integrity": "sha512-OM6eXIEmQXAuonCk8aNPMRjPFcKWa3IIoSlq5BPgIflmQBzM/COcI7XsWSIEPWPa9WcYTJBWj8kNqEYjczmIFw==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-26.5.3.tgz", + "integrity": "sha512-NVhZiIuN0GQM6b6as4CI5FSCyXKxdrx5ACMCcv/7Pf+TeCajJhJc+6dwgdAVPyerUFB9pRBIz3bE7clSrRge/w==", "dev": true, "requires": { "@babel/core": "^7.1.0", - "@jest/test-sequencer": "^26.5.0", - "@jest/types": "^26.5.0", - "babel-jest": "^26.5.0", + "@jest/test-sequencer": "^26.5.3", + "@jest/types": "^26.5.2", + "babel-jest": "^26.5.2", "chalk": "^4.0.0", "deepmerge": "^4.2.2", "glob": "^7.1.1", "graceful-fs": "^4.2.4", - "jest-environment-jsdom": "^26.5.0", - "jest-environment-node": "^26.5.0", + "jest-environment-jsdom": "^26.5.2", + "jest-environment-node": "^26.5.2", "jest-get-type": "^26.3.0", - "jest-jasmine2": "^26.5.0", + "jest-jasmine2": "^26.5.3", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.5.0", - "jest-util": "^26.5.0", - "jest-validate": "^26.5.0", + "jest-resolve": "^26.5.2", + "jest-util": "^26.5.2", + "jest-validate": "^26.5.3", "micromatch": "^4.0.2", - "pretty-format": "^26.5.0" + "pretty-format": "^26.5.2" }, "dependencies": { "ansi-styles": { @@ -8692,15 +8189,15 @@ } }, "jest-diff": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.5.0.tgz", - "integrity": "sha512-CmDMMPkVMxrrh0Dv/4M9kh1tsYsZnYTQMMTvIFpePBSk9wMVfcyfg30TCq+oR9AzGbw8vsI50Gk1HmlMMlhoJg==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-26.5.2.tgz", + "integrity": "sha512-HCSWDUGwsov5oTlGzrRM+UPJI/Dpqi9jzeV0fdRNi3Ch5bnoXhnyJMmVg2juv9081zLIy3HGPI5mcuGgXM2xRA==", "dev": true, "requires": { "chalk": "^4.0.0", "diff-sequences": "^26.5.0", "jest-get-type": "^26.3.0", - "pretty-format": "^26.5.0" + "pretty-format": "^26.5.2" }, "dependencies": { "ansi-styles": { @@ -8764,16 +8261,16 @@ } }, "jest-each": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.5.0.tgz", - "integrity": "sha512-+oO3ykDgypHSyyK2xOsh8XDUwMtg3HoJ4wMNFNHxhcACFbUgaCOfLy+eTCn5pIKhtigU3BmkYt7k3MtTb5pJOQ==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-26.5.2.tgz", + "integrity": "sha512-w7D9FNe0m2D3yZ0Drj9CLkyF/mGhmBSULMQTypzAKR746xXnjUrK8GUJdlLTWUF6dd0ks3MtvGP7/xNFr9Aphg==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "chalk": "^4.0.0", "jest-get-type": "^26.3.0", - "jest-util": "^26.5.0", - "pretty-format": "^26.5.0" + "jest-util": "^26.5.2", + "pretty-format": "^26.5.2" }, "dependencies": { "ansi-styles": { @@ -8828,32 +8325,32 @@ } }, "jest-environment-jsdom": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.5.0.tgz", - "integrity": "sha512-Xuqh3bx8egymaJR566ECkiztIIVOIWWPGIxo++ziWyCOqQChUguRCH1hRXBbfINPbb/SRFe7GCD+SunaUgTmCw==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-26.5.2.tgz", + "integrity": "sha512-fWZPx0bluJaTQ36+PmRpvUtUlUFlGGBNyGX1SN3dLUHHMcQ4WseNEzcGGKOw4U5towXgxI4qDoI3vwR18H0RTw==", "dev": true, "requires": { - "@jest/environment": "^26.5.0", - "@jest/fake-timers": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/environment": "^26.5.2", + "@jest/fake-timers": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", - "jest-mock": "^26.5.0", - "jest-util": "^26.5.0", + "jest-mock": "^26.5.2", + "jest-util": "^26.5.2", "jsdom": "^16.4.0" } }, "jest-environment-node": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.5.0.tgz", - "integrity": "sha512-LaYl/ek5mb1VDP1/+jMH2N1Ec4fFUhSYmc8EZqigBgMov/2US8U5l7D3IlOf78e+wARUxPxUpTcybVVzAOu3jg==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-26.5.2.tgz", + "integrity": "sha512-YHjnDsf/GKFCYMGF1V+6HF7jhY1fcLfLNBDjhAOvFGvt6d8vXvNdJGVM7uTZ2VO/TuIyEFhPGaXMX5j3h7fsrA==", "dev": true, "requires": { - "@jest/environment": "^26.5.0", - "@jest/fake-timers": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/environment": "^26.5.2", + "@jest/fake-timers": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", - "jest-mock": "^26.5.0", - "jest-util": "^26.5.0" + "jest-mock": "^26.5.2", + "jest-util": "^26.5.2" } }, "jest-get-type": { @@ -8863,12 +8360,12 @@ "dev": true }, "jest-haste-map": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.5.0.tgz", - "integrity": "sha512-AjB1b53uqN7Cf2VN80x0wJajVZ+BMZC+G2CmWoG143faaMw7IhIcs3FTPuSgOx7cn3/bag7lgCq93naAvLO6EQ==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-26.5.2.tgz", + "integrity": "sha512-lJIAVJN3gtO3k4xy+7i2Xjtwh8CfPcH08WYjZpe9xzveDaqGw9fVNCpkYu6M525wKFVkLmyi7ku+DxCAP1lyMA==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/graceful-fs": "^4.1.2", "@types/node": "*", "anymatch": "^3.0.3", @@ -8877,7 +8374,7 @@ "graceful-fs": "^4.2.4", "jest-regex-util": "^26.0.0", "jest-serializer": "^26.5.0", - "jest-util": "^26.5.0", + "jest-util": "^26.5.2", "jest-worker": "^26.5.0", "micromatch": "^4.0.2", "sane": "^4.0.3", @@ -8947,28 +8444,28 @@ } }, "jest-jasmine2": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.5.0.tgz", - "integrity": "sha512-NOA6PLORHTRTROOp5VysKCUVpFAjMMXUS1Xw7FvTMeYK5Ewx4rpxhFqiJ7JT4pENap9g9OuXo4cWR/MwCDTEeQ==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-26.5.3.tgz", + "integrity": "sha512-nFlZOpnGlNc7y/+UkkeHnvbOM+rLz4wB1AimgI9QhtnqSZte0wYjbAm8hf7TCwXlXgDwZxAXo6z0a2Wzn9FoOg==", "dev": true, "requires": { "@babel/traverse": "^7.1.0", - "@jest/environment": "^26.5.0", + "@jest/environment": "^26.5.2", "@jest/source-map": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/test-result": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", "chalk": "^4.0.0", "co": "^4.6.0", - "expect": "^26.5.0", + "expect": "^26.5.3", "is-generator-fn": "^2.0.0", - "jest-each": "^26.5.0", - "jest-matcher-utils": "^26.5.0", - "jest-message-util": "^26.5.0", - "jest-runtime": "^26.5.0", - "jest-snapshot": "^26.5.0", - "jest-util": "^26.5.0", - "pretty-format": "^26.5.0", + "jest-each": "^26.5.2", + "jest-matcher-utils": "^26.5.2", + "jest-message-util": "^26.5.2", + "jest-runtime": "^26.5.3", + "jest-snapshot": "^26.5.3", + "jest-util": "^26.5.2", + "pretty-format": "^26.5.2", "throat": "^5.0.0" }, "dependencies": { @@ -9024,25 +8521,25 @@ } }, "jest-leak-detector": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.5.0.tgz", - "integrity": "sha512-xZHvvTBbj3gUTtunLjPqP594BT6IUEpwA0AQpEQjVR8eBq8+R3qgU/KhoAcVcV0iqRM6pXtX7hKPZ5mLdynVSQ==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-26.5.2.tgz", + "integrity": "sha512-h7ia3dLzBFItmYERaLPEtEKxy3YlcbcRSjj0XRNJgBEyODuu+3DM2o62kvIFvs3PsaYoIIv+e+nLRI61Dj1CNw==", "dev": true, "requires": { "jest-get-type": "^26.3.0", - "pretty-format": "^26.5.0" + "pretty-format": "^26.5.2" } }, "jest-matcher-utils": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.5.0.tgz", - "integrity": "sha512-QgbbxqFT8wiTi4o/7MWj2vHlcmMjACG8vnJ9pJ7svVDmkzEnTUGdHXWLKB1aZhbnyXetMNRF+TSMcDS9aGfuzA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-26.5.2.tgz", + "integrity": "sha512-W9GO9KBIC4gIArsNqDUKsLnhivaqf8MSs6ujO/JDcPIQrmY+aasewweXVET8KdrJ6ADQaUne5UzysvF/RR7JYA==", "dev": true, "requires": { "chalk": "^4.0.0", - "jest-diff": "^26.5.0", + "jest-diff": "^26.5.2", "jest-get-type": "^26.3.0", - "pretty-format": "^26.5.0" + "pretty-format": "^26.5.2" }, "dependencies": { "ansi-styles": { @@ -9097,13 +8594,13 @@ } }, "jest-message-util": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.5.0.tgz", - "integrity": "sha512-UEOqdoTfX0AFyReL4q5N3CfDBWt+AtQzeszZuuGapU39vwEk90rTSBghCA/3FFEZzvGfH2LE4+0NaBI81Cu2Ow==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-26.5.2.tgz", + "integrity": "sha512-Ocp9UYZ5Jl15C5PNsoDiGEk14A4NG0zZKknpWdZGoMzJuGAkVt10e97tnEVMYpk7LnQHZOfuK2j/izLBMcuCZw==", "dev": true, "requires": { "@babel/code-frame": "^7.0.0", - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/stack-utils": "^2.0.0", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", @@ -9213,12 +8710,12 @@ } }, "jest-mock": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.5.0.tgz", - "integrity": "sha512-8D1UmbnmjdkvTdYygTW26KZr95Aw0/3gEmMZQWkxIEAgEESVDbwDG8ygRlXSY214x9hFjtKezvfQUp36Ogl75w==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-26.5.2.tgz", + "integrity": "sha512-9SiU4b5PtO51v0MtJwVRqeGEroH66Bnwtq4ARdNP7jNXbpT7+ByeWNAk4NeT/uHfNSVDXEXgQo1XRuwEqS6Rdw==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/node": "*" } }, @@ -9235,17 +8732,17 @@ "dev": true }, "jest-resolve": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.5.0.tgz", - "integrity": "sha512-c34L8Lrw4fFzRiCLzwePziKRfHitjsAnY15ID0e9Se4ISikmZ5T9icLEFAGHnfaxfb+9r8EKdrbg89gjRdrQvw==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-26.5.2.tgz", + "integrity": "sha512-XsPxojXGRA0CoDD7Vis59ucz2p3cQFU5C+19tz3tLEAlhYKkK77IL0cjYjikY9wXnOaBeEdm1rOgSJjbZWpcZg==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "chalk": "^4.0.0", - "escalade": "^3.1.0", "graceful-fs": "^4.2.4", "jest-pnp-resolver": "^1.2.2", - "jest-util": "^26.5.0", + "jest-util": "^26.5.2", + "read-pkg-up": "^7.0.1", "resolve": "^1.17.0", "slash": "^3.0.0" }, @@ -9308,39 +8805,39 @@ } }, "jest-resolve-dependencies": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.5.0.tgz", - "integrity": "sha512-2e3YdS+dlTY00s0CEiMAa7Ap/mPfPaQV7d6Fzp7BQqHXO/2QhXn/yVTxnxR+dOIo/NOh7pqXZTQSn+2iWwPQQA==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-26.5.3.tgz", + "integrity": "sha512-+KMDeke/BFK+mIQ2IYSyBz010h7zQaVt4Xie6cLqUGChorx66vVeQVv4ErNoMwInnyYHi1Ud73tDS01UbXbfLQ==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "jest-regex-util": "^26.0.0", - "jest-snapshot": "^26.5.0" + "jest-snapshot": "^26.5.3" } }, "jest-runner": { - "version": "26.5.1", - "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.5.1.tgz", - "integrity": "sha512-gFHXehvMZD8qwNzaIl2MDFFI99m4kKk06H2xh2u4IkC+tHYIJjE5J175l9cbL3RuU2slfS2m57KZgcPZfbTavQ==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-26.5.3.tgz", + "integrity": "sha512-qproP0Pq7IIule+263W57k2+8kWCszVJTC9TJWGUz0xJBr+gNiniGXlG8rotd0XxwonD5UiJloYoSO5vbUr5FQ==", "dev": true, "requires": { - "@jest/console": "^26.5.0", - "@jest/environment": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/console": "^26.5.2", + "@jest/environment": "^26.5.2", + "@jest/test-result": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", "chalk": "^4.0.0", "emittery": "^0.7.1", "exit": "^0.1.2", "graceful-fs": "^4.2.4", - "jest-config": "^26.5.0", + "jest-config": "^26.5.3", "jest-docblock": "^26.0.0", - "jest-haste-map": "^26.5.0", - "jest-leak-detector": "^26.5.0", - "jest-message-util": "^26.5.0", - "jest-resolve": "^26.5.0", - "jest-runtime": "^26.5.0", - "jest-util": "^26.5.0", + "jest-haste-map": "^26.5.2", + "jest-leak-detector": "^26.5.2", + "jest-message-util": "^26.5.2", + "jest-resolve": "^26.5.2", + "jest-runtime": "^26.5.3", + "jest-util": "^26.5.2", "jest-worker": "^26.5.0", "source-map-support": "^0.5.6", "throat": "^5.0.0" @@ -9398,37 +8895,37 @@ } }, "jest-runtime": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.5.0.tgz", - "integrity": "sha512-CujjQWpMcsvSg0L+G3iEz6s7Th5IbiZseAaw/5R7Eb+IfnJdyPdjJ+EoXNV8n07snvW5nZTwV9QIfy6Vjris8A==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-26.5.3.tgz", + "integrity": "sha512-IDjalmn2s/Tc4GvUwhPHZ0iaXCdMRq5p6taW9P8RpU+FpG01O3+H8z+p3rDCQ9mbyyyviDgxy/LHPLzrIOKBkQ==", "dev": true, "requires": { - "@jest/console": "^26.5.0", - "@jest/environment": "^26.5.0", - "@jest/fake-timers": "^26.5.0", - "@jest/globals": "^26.5.0", + "@jest/console": "^26.5.2", + "@jest/environment": "^26.5.2", + "@jest/fake-timers": "^26.5.2", + "@jest/globals": "^26.5.3", "@jest/source-map": "^26.5.0", - "@jest/test-result": "^26.5.0", - "@jest/transform": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/test-result": "^26.5.2", + "@jest/transform": "^26.5.2", + "@jest/types": "^26.5.2", "@types/yargs": "^15.0.0", "chalk": "^4.0.0", "collect-v8-coverage": "^1.0.0", "exit": "^0.1.2", "glob": "^7.1.3", "graceful-fs": "^4.2.4", - "jest-config": "^26.5.0", - "jest-haste-map": "^26.5.0", - "jest-message-util": "^26.5.0", - "jest-mock": "^26.5.0", + "jest-config": "^26.5.3", + "jest-haste-map": "^26.5.2", + "jest-message-util": "^26.5.2", + "jest-mock": "^26.5.2", "jest-regex-util": "^26.0.0", - "jest-resolve": "^26.5.0", - "jest-snapshot": "^26.5.0", - "jest-util": "^26.5.0", - "jest-validate": "^26.5.0", + "jest-resolve": "^26.5.2", + "jest-snapshot": "^26.5.3", + "jest-util": "^26.5.2", + "jest-validate": "^26.5.3", "slash": "^3.0.0", "strip-bom": "^4.0.0", - "yargs": "^16.0.3" + "yargs": "^15.4.1" }, "dependencies": { "ansi-styles": { @@ -9450,17 +8947,6 @@ "supports-color": "^7.1.0" } }, - "cliui": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.1.tgz", - "integrity": "sha512-rcvHOWyGyid6I1WjT/3NatKj2kDt9OdSHSXpyLXaMWFbKpGACNW8pRhhdPUq9MWUOdwn8Rz9AVETjF4105rZZQ==", - "dev": true, - "requires": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", - "wrap-ansi": "^7.0.0" - } - }, "color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", @@ -9502,44 +8988,6 @@ "requires": { "has-flag": "^4.0.0" } - }, - "wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, - "requires": { - "ansi-styles": "^4.0.0", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0" - } - }, - "y18n": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.2.tgz", - "integrity": "sha512-CkwaeZw6dQgqgPGeTWKMXCRmMcBgETFlTml1+ZOO+q7kGst8NREJ+eWwFNPVUQ4QGdAaklbqCZHH6Zuep1RjiA==", - "dev": true - }, - "yargs": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.0.3.tgz", - "integrity": "sha512-6+nLw8xa9uK1BOEOykaiYAJVh6/CjxWXK/q9b5FpRgNslt8s22F2xMBqVIKgCRjNgGvGPBy8Vog7WN7yh4amtA==", - "dev": true, - "requires": { - "cliui": "^7.0.0", - "escalade": "^3.0.2", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.0", - "y18n": "^5.0.1", - "yargs-parser": "^20.0.0" - } - }, - "yargs-parser": { - "version": "20.2.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.1.tgz", - "integrity": "sha512-yYsjuSkjbLMBp16eaOt7/siKTjNVjMm3SoJnIg3sEh/JsvqVVDyjRKmaJV4cl+lNIgq6QEco2i3gDebJl7/vLA==", - "dev": true } } }, @@ -9554,26 +9002,26 @@ } }, "jest-snapshot": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.5.0.tgz", - "integrity": "sha512-WTNJef67o7cCvwAe5foVCNqG3MzIW/CyU4FZvMrhBPZsJeXwfBY7kfOlydZigxtcytnvmNE2pqznOfD5EcQgrQ==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-26.5.3.tgz", + "integrity": "sha512-ZgAk0Wm0JJ75WS4lGaeRfa0zIgpL0KD595+XmtwlIEMe8j4FaYHyZhP1LNOO+8fXq7HJ3hll54+sFV9X4+CGVw==", "dev": true, "requires": { "@babel/types": "^7.0.0", - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/babel__traverse": "^7.0.4", "@types/prettier": "^2.0.0", "chalk": "^4.0.0", - "expect": "^26.5.0", + "expect": "^26.5.3", "graceful-fs": "^4.2.4", - "jest-diff": "^26.5.0", + "jest-diff": "^26.5.2", "jest-get-type": "^26.3.0", - "jest-haste-map": "^26.5.0", - "jest-matcher-utils": "^26.5.0", - "jest-message-util": "^26.5.0", - "jest-resolve": "^26.5.0", + "jest-haste-map": "^26.5.2", + "jest-matcher-utils": "^26.5.2", + "jest-message-util": "^26.5.2", + "jest-resolve": "^26.5.2", "natural-compare": "^1.4.0", - "pretty-format": "^26.5.0", + "pretty-format": "^26.5.2", "semver": "^7.3.2" }, "dependencies": { @@ -9629,12 +9077,12 @@ } }, "jest-util": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.5.0.tgz", - "integrity": "sha512-CSQ0uzE7JdHDCQo3K8jlyWRIF2xNLdpu9nbjo8okGDanaNsF7WonhusFvjOg7QiWn1SThe7wFRh8Jx2ls1Gx4Q==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-26.5.2.tgz", + "integrity": "sha512-WTL675bK+GSSAYgS8z9FWdCT2nccO1yTIplNLPlP0OD8tUk/H5IrWKMMRudIQQ0qp8bb4k+1Qa8CxGKq9qnYdg==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "@types/node": "*", "chalk": "^4.0.0", "graceful-fs": "^4.2.4", @@ -9737,17 +9185,17 @@ } }, "jest-validate": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.5.0.tgz", - "integrity": "sha512-603+CHUJD4nAZ+tY/A+wu3g8KEcBey2a7YOMU9W8e4u7mCezhaDasw20ITaZHoR2R2MZhThL6jApPSj0GvezrQ==", + "version": "26.5.3", + "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-26.5.3.tgz", + "integrity": "sha512-LX07qKeAtY+lsU0o3IvfDdN5KH9OulEGOMN1sFo6PnEf5/qjS1LZIwNk9blcBeW94pQUI9dLN9FlDYDWI5tyaA==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "camelcase": "^6.0.0", "chalk": "^4.0.0", "jest-get-type": "^26.3.0", "leven": "^3.1.0", - "pretty-format": "^26.5.0" + "pretty-format": "^26.5.2" }, "dependencies": { "ansi-styles": { @@ -9802,17 +9250,17 @@ } }, "jest-watcher": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.5.0.tgz", - "integrity": "sha512-INLKhpc9QbO5zy2HkS1CJUncByrCLFDZQOY30d9ojiuGO02ofL1BygDRDRtFvT/oWSZ8Y0fbkrr1oXU2ay/MqA==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-26.5.2.tgz", + "integrity": "sha512-i3m1NtWzF+FXfJ3ljLBB/WQEp4uaNhX7QcQUWMokcifFTUQBDFyUMEwk0JkJ1kopHbx7Een3KX0Q7+9koGM/Pw==", "dev": true, "requires": { - "@jest/test-result": "^26.5.0", - "@jest/types": "^26.5.0", + "@jest/test-result": "^26.5.2", + "@jest/types": "^26.5.2", "@types/node": "*", "ansi-escapes": "^4.2.1", "chalk": "^4.0.0", - "jest-util": "^26.5.0", + "jest-util": "^26.5.2", "string-length": "^4.0.1" }, "dependencies": { @@ -10103,27 +9551,14 @@ } }, "less-loader": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.0.1.tgz", - "integrity": "sha512-TO0+5HuDJhHArpOWnjzPMQ0xfdvyo0nxF75NNnSZ/n8b08aDuhk91/zV9sqYHzPfWvBh1PjpX/pTEEi2QnmaYA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/less-loader/-/less-loader-7.0.2.tgz", + "integrity": "sha512-7MKlgjnkCf63E3Lv6w2FvAEgLMx3d/tNBExITcanAq7ys5U8VPWT3F6xcRjYmdNfkoQ9udoVFb1r2azSiTnD6w==", "dev": true, "requires": { - "klona": "^2.0.3", + "klona": "^2.0.4", "loader-utils": "^2.0.0", - "schema-utils": "^2.7.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "schema-utils": "^3.0.0" } }, "leven": { @@ -10507,9 +9942,9 @@ } }, "loader-runner": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", - "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.1.0.tgz", + "integrity": "sha512-oR4lB4WvwFoC70ocraKhn5nkKSs23t57h9udUgw8o0iH8hMXeEoRuUgfcvgUwAJ1ZpRqBvcou4N2SMvM1DwMrA==", "dev": true }, "loader-utils": { @@ -10845,17 +10280,6 @@ "object-visit": "^1.0.0" } }, - "md5.js": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", - "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" - } - }, "memfs": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.2.0.tgz", @@ -10865,16 +10289,6 @@ "fs-monkey": "1.0.1" } }, - "memory-fs": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz", - "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", - "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" - } - }, "memorystream": { "version": "0.3.1", "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", @@ -10942,24 +10356,6 @@ "lodash.camelcase": "^4.3.0" } }, - "miller-rabin": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz", - "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", - "dev": true, - "requires": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", @@ -10995,62 +10391,17 @@ "dev": true }, "mini-css-extract-plugin": { - "version": "0.11.3", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.11.3.tgz", - "integrity": "sha512-n9BA8LonkOkW1/zn+IbLPQmovsL0wMb9yx75fMJQZf2X1Zoec9yTZtyMePcyu19wPkmFbzZZA6fLTotpFhQsOA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-1.0.0.tgz", + "integrity": "sha512-IsmrPv1nkdSUtFCDrAsuv5kg0k/27sLxfXqSz8vLjnbRKrNgoRdQrUNA4MppawvD+GHLkNP6L1P93Bw50ALkbg==", "dev": true, "requires": { - "loader-utils": "^1.1.0", + "loader-utils": "^2.0.0", "normalize-url": "1.9.1", - "schema-utils": "^1.0.0", + "schema-utils": "^3.0.0", "webpack-sources": "^1.1.0" - }, - "dependencies": { - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } - }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", - "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" - } - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", - "dev": true, - "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" - } - } } }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==", - "dev": true - }, - "minimalistic-crypto-utils": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz", - "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=", - "dev": true - }, "minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", @@ -11076,33 +10427,65 @@ "kind-of": "^6.0.3" } }, - "mississippi": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", - "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "minipass": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.3.tgz", + "integrity": "sha512-Mgd2GdMVzY+x3IJ+oHnVM+KG3lA5c8tnabyJKmHSaG2kAGpudxuOf8ToDkhumF7UzME7DecbQE9uOZhNm7PuJg==", "dev": true, "requires": { - "concat-stream": "^1.5.0", - "duplexify": "^3.4.2", - "end-of-stream": "^1.1.0", - "flush-write-stream": "^1.0.0", - "from2": "^2.1.0", - "parallel-transform": "^1.1.0", - "pump": "^3.0.0", - "pumpify": "^1.3.3", - "stream-each": "^1.1.0", - "through2": "^2.0.0" + "yallist": "^4.0.0" }, "dependencies": { - "through2": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz", - "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==", - "dev": true, - "requires": { - "readable-stream": "~2.3.6", - "xtend": "~4.0.1" - } + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, + "minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "requires": { + "minipass": "^3.0.0" + } + }, + "minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "requires": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "dependencies": { + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true } } }, @@ -11142,31 +10525,6 @@ "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==", "dev": true }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", - "dev": true, - "requires": { - "aproba": "^1.1.1", - "copy-concurrently": "^1.0.0", - "fs-write-stream-atomic": "^1.0.8", - "mkdirp": "^0.5.1", - "rimraf": "^2.5.4", - "run-queue": "^1.0.3" - }, - "dependencies": { - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", - "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", - "dev": true, - "requires": { - "glob": "^7.1.3" - } - } - } - }, "mrm-core": { "version": "3.3.4", "resolved": "https://registry.npmjs.org/mrm-core/-/mrm-core-3.3.4.tgz", @@ -11335,45 +10693,6 @@ "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", "dev": true }, - "node-libs-browser": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz", - "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==", - "dev": true, - "requires": { - "assert": "^1.1.1", - "browserify-zlib": "^0.2.0", - "buffer": "^4.3.0", - "console-browserify": "^1.1.0", - "constants-browserify": "^1.0.0", - "crypto-browserify": "^3.11.0", - "domain-browser": "^1.1.1", - "events": "^3.0.0", - "https-browserify": "^1.0.0", - "os-browserify": "^0.3.0", - "path-browserify": "0.0.1", - "process": "^0.11.10", - "punycode": "^1.2.4", - "querystring-es3": "^0.2.0", - "readable-stream": "^2.3.3", - "stream-browserify": "^2.0.1", - "stream-http": "^2.7.2", - "string_decoder": "^1.0.0", - "timers-browserify": "^2.0.4", - "tty-browserify": "0.0.0", - "url": "^0.11.0", - "util": "^0.11.0", - "vm-browserify": "^1.0.1" - }, - "dependencies": { - "punycode": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", - "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=", - "dev": true - } - } - }, "node-modules-regexp": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", @@ -11737,12 +11056,6 @@ "word-wrap": "^1.2.3" } }, - "os-browserify": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz", - "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=", - "dev": true - }, "os-shim": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/os-shim/-/os-shim-0.1.3.tgz", @@ -11800,23 +11113,6 @@ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", "dev": true }, - "pako": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", - "dev": true - }, - "parallel-transform": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz", - "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==", - "dev": true, - "requires": { - "cyclist": "^1.0.1", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, "parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -11826,19 +11122,6 @@ "callsites": "^3.0.0" } }, - "parse-asn1": { - "version": "5.1.6", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz", - "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==", - "dev": true, - "requires": { - "asn1.js": "^5.2.0", - "browserify-aes": "^1.0.0", - "evp_bytestokey": "^1.0.0", - "pbkdf2": "^3.0.3", - "safe-buffer": "^5.1.1" - } - }, "parse-git-config": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/parse-git-config/-/parse-git-config-1.1.1.tgz", @@ -11904,12 +11187,6 @@ "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", "dev": true }, - "path-browserify": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", - "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==", - "dev": true - }, "path-dirname": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", @@ -11946,19 +11223,6 @@ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true }, - "pbkdf2": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.1.tgz", - "integrity": "sha512-4Ejy1OPxi9f2tt1rRV7Go7zmfDQ+ZectEQz3VGUQhgq62HtIRPDyG/JtnwIxs6x3uNMwo2V7q1fMvKjb+Tnpqg==", - "dev": true, - "requires": { - "create-hash": "^1.1.2", - "create-hmac": "^1.1.4", - "ripemd160": "^2.0.1", - "safe-buffer": "^5.0.1", - "sha.js": "^2.4.8" - } - }, "performance-now": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", @@ -12113,6 +11377,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12136,6 +11409,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12160,6 +11442,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12183,6 +11474,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12207,6 +11507,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12230,6 +11539,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12252,6 +11570,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12275,6 +11602,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12315,6 +11651,15 @@ "indexes-of": "^1.0.1", "uniq": "^1.0.1" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12355,6 +11700,15 @@ "indexes-of": "^1.0.1", "uniq": "^1.0.1" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12378,6 +11732,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12401,6 +11764,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12423,6 +11795,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12445,6 +11826,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12467,6 +11857,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12489,6 +11888,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12512,6 +11920,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12535,6 +11952,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12559,33 +11985,29 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, "postcss-loader": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-4.0.3.tgz", - "integrity": "sha512-jHboC/AOnJLPu8/974hODCJ/rNAa2YhhJOclUeuRlAmFpKmEcBY6az8y1ejHyYc2LThzPl8qPRekh2Yz3CiRKA==", + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-4.0.4.tgz", + "integrity": "sha512-pntA9zIR14drQo84yGTjQJg1m7T0DkXR4vXYHBngiRZdJtEeCrojL6lOpqUanMzG375lIJbT4Yug85zC/AJWGw==", "dev": true, "requires": { "cosmiconfig": "^7.0.0", "klona": "^2.0.4", "loader-utils": "^2.0.0", - "schema-utils": "^2.7.1", + "schema-utils": "^3.0.0", "semver": "^7.3.2" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } } }, "postcss-logical": { @@ -12607,6 +12029,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12629,92 +12060,47 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } - } - } - }, - "postcss-modules-extract-imports": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz", - "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==", - "requires": { - "postcss": "^7.0.5" - }, - "dependencies": { - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" + "has-flag": "^3.0.0" } } } }, + "postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==" + }, "postcss-modules-local-by-default": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz", - "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", "requires": { - "icss-utils": "^4.1.1", - "postcss": "^7.0.32", + "icss-utils": "^5.0.0", "postcss-selector-parser": "^6.0.2", "postcss-value-parser": "^4.1.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - } } }, "postcss-modules-scope": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz", - "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", "requires": { - "postcss": "^7.0.6", - "postcss-selector-parser": "^6.0.0" - }, - "dependencies": { - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - } + "postcss-selector-parser": "^6.0.4" } }, "postcss-modules-values": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz", - "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "requires": { - "icss-utils": "^4.0.0", - "postcss": "^7.0.6" - }, - "dependencies": { - "postcss": { - "version": "7.0.35", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.35.tgz", - "integrity": "sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==", - "requires": { - "chalk": "^2.4.2", - "source-map": "^0.6.1", - "supports-color": "^6.1.0" - } - } + "icss-utils": "^5.0.0" } }, "postcss-nesting": { @@ -12736,6 +12122,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12758,6 +12153,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12780,6 +12184,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12803,6 +12216,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12861,6 +12283,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12901,6 +12332,15 @@ "indexes-of": "^1.0.1", "uniq": "^1.0.1" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12923,6 +12363,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12946,6 +12395,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -12969,6 +12427,15 @@ "source-map": "^0.6.1", "supports-color": "^6.1.0" } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } } } }, @@ -13018,12 +12485,12 @@ "dev": true }, "pretty-format": { - "version": "26.5.0", - "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.5.0.tgz", - "integrity": "sha512-NcgRuuTutUJ9+Br4P19DFThpJYnYBiugfRmZEA6pXrUeG+IcMSmppb88rU+iPA+XAJcjTYlCb5Ed6miHg/Qqqw==", + "version": "26.5.2", + "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-26.5.2.tgz", + "integrity": "sha512-VizyV669eqESlkOikKJI8Ryxl/kPpbdLwNdPs2GrbQs18MpySB5S0Yo0N7zkg2xTRiFq4CFw8ct5Vg4a0xP0og==", "dev": true, "requires": { - "@jest/types": "^26.5.0", + "@jest/types": "^26.5.2", "ansi-regex": "^5.0.0", "ansi-styles": "^4.0.0", "react-is": "^16.12.0" @@ -13065,12 +12532,6 @@ "minimist": "^1.2.0" } }, - "process": { - "version": "0.11.10", - "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", - "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", - "dev": true - }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -13120,7 +12581,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", - "dev": true + "dev": true, + "optional": true }, "pseudomap": { "version": "1.0.2", @@ -13134,28 +12596,6 @@ "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", "dev": true }, - "public-encrypt": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", - "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", - "dev": true, - "requires": { - "bn.js": "^4.1.0", - "browserify-rsa": "^4.0.0", - "create-hash": "^1.1.0", - "parse-asn1": "^5.0.0", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.2" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } - } - }, "pump": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", @@ -13166,29 +12606,6 @@ "once": "^1.3.1" } }, - "pumpify": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz", - "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", - "dev": true, - "requires": { - "duplexify": "^3.6.0", - "inherits": "^2.0.3", - "pump": "^2.0.0" - }, - "dependencies": { - "pump": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz", - "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - } - } - }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -13216,18 +12633,6 @@ "strict-uri-encode": "^1.0.0" } }, - "querystring": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz", - "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=", - "dev": true - }, - "querystring-es3": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz", - "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=", - "dev": true - }, "quick-lru": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", @@ -13243,16 +12648,6 @@ "safe-buffer": "^5.1.0" } }, - "randomfill": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz", - "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", - "dev": true, - "requires": { - "randombytes": "^2.0.5", - "safe-buffer": "^5.1.0" - } - }, "rc": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", @@ -13643,16 +13038,6 @@ "glob": "^7.1.3" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", - "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" - } - }, "rsvp": { "version": "4.8.5", "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", @@ -13671,15 +13056,6 @@ "integrity": "sha512-DEqnSRTDw/Tc3FXf49zedI638Z9onwUotBMiUFKmrO2sdFKIbXamXGQ3Axd4qgphxKB4kw/qP1w5kTxnfU1B9Q==", "dev": true }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", - "dev": true, - "requires": { - "aproba": "^1.1.1" - } - }, "rx": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", @@ -13734,38 +13110,25 @@ } }, "sass": { - "version": "1.26.12", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.26.12.tgz", - "integrity": "sha512-hmSwtBOWoS9zwe0yAS+QmaseVCUELiGV22gXHDR7+9stEsVuEuxfY1GhC8XmUpC+Ir3Hwq7NxSUNbnmkznnF7g==", + "version": "1.27.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.27.0.tgz", + "integrity": "sha512-0gcrER56OkzotK/GGwgg4fPrKuiFlPNitO7eUJ18Bs+/NBlofJfMxmxqpqJxjae9vu0Wq8TZzrSyxZal00WDig==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" } }, "sass-loader": { - "version": "10.0.2", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.2.tgz", - "integrity": "sha512-wV6NDUVB8/iEYMalV/+139+vl2LaRFlZGEd5/xmdcdzQcgmis+npyco6NsDTVOlNA3y2NV9Gcz+vHyFMIT+ffg==", + "version": "10.0.3", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.3.tgz", + "integrity": "sha512-W4+FV5oUdYy0PnC11ZoPrcAexODgDCa3ngxoy5X5qBhZYoPz9FPjb6Oox8Aa0ZYEyx34k8AQfOVuvqefOSAAUQ==", "dev": true, "requires": { - "klona": "^2.0.3", + "klona": "^2.0.4", "loader-utils": "^2.0.0", "neo-async": "^2.6.2", - "schema-utils": "^2.7.1", + "schema-utils": "^3.0.0", "semver": "^7.3.2" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } } }, "sax": { @@ -13811,9 +13174,9 @@ "dev": true }, "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", "dev": true, "requires": { "randombytes": "^2.1.0" @@ -13848,22 +13211,6 @@ } } }, - "setimmediate": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", - "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", - "dev": true - }, - "sha.js": { - "version": "2.4.11", - "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz", - "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", - "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" - } - }, "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", @@ -14234,12 +13581,12 @@ } }, "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.0.tgz", + "integrity": "sha512-aq/pz989nxVYwn16Tsbj1TqFpD5LLrQxHf5zaHuieFV+R0Bbr4y8qUsOA45hXT/N4/9UNXTarBjnjVmjSOVaAA==", "dev": true, "requires": { - "figgy-pudding": "^3.5.1" + "minipass": "^3.1.1" } }, "stack-trace": { @@ -14332,45 +13679,6 @@ "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=", "dev": true }, - "stream-browserify": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", - "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", - "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" - } - }, - "stream-each": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz", - "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", - "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" - } - }, - "stream-http": { - "version": "2.8.3", - "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz", - "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", - "dev": true, - "requires": { - "builtin-status-codes": "^3.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.3.6", - "to-arraybuffer": "^1.0.0", - "xtend": "^4.0.0" - } - }, - "stream-shift": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", - "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==", - "dev": true - }, "strict-uri-encode": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", @@ -14574,26 +13882,13 @@ "dev": true }, "style-loader": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-1.3.0.tgz", - "integrity": "sha512-V7TCORko8rs9rIqkSrlMfkqA63DfoGBBJmK1kKGCcSi+BWb4cqz0SRsnp4l6rU5iwOEd0/2ePv68SV22VXon4Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", + "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", "dev": true, "requires": { "loader-utils": "^2.0.0", - "schema-utils": "^2.7.0" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "schema-utils": "^3.0.0" } }, "stylus": { @@ -14642,35 +13937,23 @@ } }, "stylus-loader": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-4.1.0.tgz", - "integrity": "sha512-phWZyKuuIgzCU0Zbp5se6cOW9MMUogQ4NoBnNe78kytT2gg+25incSv3HHNFkgLvjyLyBxH1q44xx2AN1CeQpw==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-4.1.1.tgz", + "integrity": "sha512-Vnm7J/nIs/P6swIrdwJW/dflhsCOiFmb1U3PeQ6phRtg1soPLN4uKnnL7AtGIJDe173elbtYIXVzmCyF493CfA==", "dev": true, "requires": { "fast-glob": "^3.2.4", "klona": "^2.0.4", "loader-utils": "^2.0.0", "normalize-path": "^3.0.0", - "schema-utils": "^2.7.1" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "schema-utils": "^3.0.0" } }, "supports-color": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", - "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, "requires": { "has-flag": "^3.0.0" } @@ -14777,11 +14060,39 @@ } }, "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.0.0.tgz", + "integrity": "sha512-bjzn0C0RWoffnNdTzNi7rNDhs1Zlwk2tRXgk8EiHKAOX1Mag3d6T0Y5zNa7l9CJ+EoUne/0UHdwS8tMbkh9zDg==", "dev": true }, + "tar": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.0.5.tgz", + "integrity": "sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==", + "dev": true, + "requires": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "dependencies": { + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true + } + } + }, "terminal-link": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz", @@ -14810,14 +14121,14 @@ } }, "terser": { - "version": "4.8.0", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz", - "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==", + "version": "5.3.4", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.3.4.tgz", + "integrity": "sha512-dxuB8KQo8Gt6OVOeLg/rxfcxdNZI/V1G6ze1czFUzPeCFWZRtvZMgSzlZZ5OYBZ4HoG607F6pFPNLekJyV+yVw==", "dev": true, "requires": { "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" + "source-map": "~0.7.2", + "source-map-support": "~0.5.19" }, "dependencies": { "commander": { @@ -14825,41 +14136,39 @@ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true } } }, "terser-webpack-plugin": { - "version": "1.4.5", - "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz", - "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz", + "integrity": "sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ==", "dev": true, "requires": { - "cacache": "^12.0.2", - "find-cache-dir": "^2.1.0", - "is-wsl": "^1.1.0", - "schema-utils": "^1.0.0", - "serialize-javascript": "^4.0.0", + "cacache": "^15.0.5", + "find-cache-dir": "^3.3.1", + "jest-worker": "^26.5.0", + "p-limit": "^3.0.2", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", "source-map": "^0.6.1", - "terser": "^4.1.2", - "webpack-sources": "^1.4.0", - "worker-farm": "^1.7.0" + "terser": "^5.3.4", + "webpack-sources": "^1.4.3" }, "dependencies": { - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true - }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "p-limit": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.0.2.tgz", + "integrity": "sha512-iwqZSOoWIW+Ew4kAGUlN16J4M7OB3ysMLSZtnhmqx7njIHFPlxWBX8xo3lVTyFVq6mI/lL9qt2IsN1sHwaxJkg==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "p-try": "^2.0.0" } } } @@ -14909,15 +14218,6 @@ "readable-stream": "2 || 3" } }, - "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", - "dev": true, - "requires": { - "setimmediate": "^1.0.4" - } - }, "tmp": { "version": "0.0.29", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.29.tgz", @@ -14933,12 +14233,6 @@ "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", "dev": true }, - "to-arraybuffer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz", - "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=", - "dev": true - }, "to-fast-properties": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", @@ -15043,15 +14337,9 @@ } }, "tslib": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz", - "integrity": "sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==", - "dev": true - }, - "tty-browserify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz", - "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=", + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, "tunnel-agent": { @@ -15106,9 +14394,9 @@ } }, "uglify-js": { - "version": "3.11.1", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.11.1.tgz", - "integrity": "sha512-OApPSuJcxcnewwjSGGfWOjx3oix5XpmrK9Z2j0fTRlHGoZ49IU6kExfZTM0++fCArOOCet+vIfWwFHbvWqwp6g==", + "version": "3.11.2", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.11.2.tgz", + "integrity": "sha512-G440NU6fewtnQftSgqRV1r2A5ChKbU1gqFCJ7I8S7MPpY/eZZfLGefaY6gUZYiWebMaO+txgiQ1ZyLDuNWJulg==", "dev": true, "optional": true }, @@ -15247,46 +14535,15 @@ "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", "dev": true }, - "url": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", - "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", - "dev": true, - "requires": { - "punycode": "1.3.2", - "querystring": "0.2.0" - }, - "dependencies": { - "punycode": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", - "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", - "dev": true - } - } - }, "url-loader": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.0.tgz", - "integrity": "sha512-IzgAAIC8wRrg6NYkFIJY09vtktQcsvU8V6HhtQj9PTefbYImzLB1hufqo4m+RyM5N3mLx5BqJKccgxJS+W3kqw==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", "dev": true, "requires": { "loader-utils": "^2.0.0", - "mime-types": "^2.1.26", - "schema-utils": "^2.6.5" - }, - "dependencies": { - "schema-utils": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", - "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", - "dev": true, - "requires": { - "@types/json-schema": "^7.0.5", - "ajv": "^6.12.4", - "ajv-keywords": "^3.5.2" - } - } + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" } }, "use": { @@ -15304,23 +14561,6 @@ "rc": "^1.2.1" } }, - "util": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", - "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", - "dev": true, - "requires": { - "inherits": "2.0.3" - }, - "dependencies": { - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true - } - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -15340,9 +14580,9 @@ "dev": true }, "v8-to-istanbul": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-5.0.1.tgz", - "integrity": "sha512-mbDNjuDajqYe3TXFk5qxcQy8L1msXNE37WTlLoqqpBfRsimbNcrlhQlDPntmECEcUvdC+AQ8CyMMf6EUx1r74Q==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-6.0.1.tgz", + "integrity": "sha512-PzM1WlqquhBvsV+Gco6WSFeg1AGdD53ccMRkFeyHRE/KRZaVacPOmQYP3EeVgDBtKD2BJ8kgynBQ5OtKiHCH+w==", "dev": true, "requires": { "@types/istanbul-lib-coverage": "^2.0.1", @@ -15379,12 +14619,6 @@ "extsprintf": "^1.2.0" } }, - "vm-browserify": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz", - "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==", - "dev": true - }, "w3c-hr-time": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", @@ -15413,136 +14647,13 @@ } }, "watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", - "dev": true, - "requires": { - "chokidar": "^3.4.1", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" - }, - "dependencies": { - "anymatch": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", - "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", - "dev": true, - "optional": true, - "requires": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - } - }, - "binary-extensions": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.1.0.tgz", - "integrity": "sha512-1Yj8h9Q+QDF5FzhMs/c9+6UntbD5MkRfRwac8DoEm9ZfUBZ7tZ55YcGVAzEe4bXsdQHEk+s9S5wsOKVdZrw0tQ==", - "dev": true, - "optional": true - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, - "optional": true, - "requires": { - "fill-range": "^7.0.1" - } - }, - "chokidar": { - "version": "3.4.2", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.4.2.tgz", - "integrity": "sha512-IZHaDeBeI+sZJRX7lGcXsdzgvZqKv6sECqsbErJA4mHWfpRrD8B97kSFN4cQz6nGBGiuFia1MKR4d6c1o8Cv7A==", - "dev": true, - "optional": true, - "requires": { - "anymatch": "~3.1.1", - "braces": "~3.0.2", - "fsevents": "~2.1.2", - "glob-parent": "~5.1.0", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.4.0" - } - }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, - "optional": true, - "requires": { - "to-regex-range": "^5.0.1" - } - }, - "fsevents": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz", - "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==", - "dev": true, - "optional": true - }, - "glob-parent": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.1.tgz", - "integrity": "sha512-FnI+VGOpnlGHWZxthPGR+QhR78fuiK0sNLkHQv+bL9fQi57lNNdquIbna/WrfROrolq8GK5Ek6BiMwqL/voRYQ==", - "dev": true, - "optional": true, - "requires": { - "is-glob": "^4.0.1" - } - }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "optional": true, - "requires": { - "binary-extensions": "^2.0.0" - } - }, - "is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "optional": true - }, - "readdirp": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.4.0.tgz", - "integrity": "sha512-0xe001vZBnJEK+uKcj8qOhyAKPzIT+gStxWr3LCB0DwcXR5NZJ3IaC+yGnHCYzB/S7ov3m3EEbZI2zeNvX+hGQ==", - "dev": true, - "optional": true, - "requires": { - "picomatch": "^2.2.1" - } - }, - "to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, - "optional": true, - "requires": { - "is-number": "^7.0.0" - } - } - } - }, - "watchpack-chokidar2": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.0.0.tgz", + "integrity": "sha512-xSdCxxYZWNk3VK13bZRYhsQpfa8Vg63zXG+3pyU8ouqSLRCv4IGXIp9Kr226q6GBkGRlZrST2wwKtjfKz2m7Cg==", "dev": true, - "optional": true, "requires": { - "chokidar": "^2.1.8" + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" } }, "webidl-conversions": { @@ -15552,75 +14663,60 @@ "dev": true }, "webpack": { - "version": "4.44.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.44.2.tgz", - "integrity": "sha512-6KJVGlCxYdISyurpQ0IPTklv+DULv05rs2hseIXer6D7KrUicRDLFb4IUM1S6LUAKypPM/nSiVSuv8jHu1m3/Q==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.0.0.tgz", + "integrity": "sha512-OK+Q9xGgda3idw/DgCf75XsVFxRLPu48qPwygqI3W9ls5sDdKif5Ay4SM/1UVob0w4juJy14Zv9nNv0WeyV0aA==", "dev": true, "requires": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.45", "@webassemblyjs/ast": "1.9.0", "@webassemblyjs/helper-module-context": "1.9.0", "@webassemblyjs/wasm-edit": "1.9.0", "@webassemblyjs/wasm-parser": "1.9.0", - "acorn": "^6.4.1", - "ajv": "^6.10.2", - "ajv-keywords": "^3.4.1", + "acorn": "^8.0.3", + "browserslist": "^4.14.3", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^4.3.0", - "eslint-scope": "^4.0.3", + "enhanced-resolve": "^5.2.0", + "eslint-scope": "^5.1.0", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", "json-parse-better-errors": "^1.0.2", - "loader-runner": "^2.4.0", - "loader-utils": "^1.2.3", - "memory-fs": "^0.4.1", - "micromatch": "^3.1.10", - "mkdirp": "^0.5.3", - "neo-async": "^2.6.1", - "node-libs-browser": "^2.2.1", - "schema-utils": "^1.0.0", - "tapable": "^1.1.3", - "terser-webpack-plugin": "^1.4.3", - "watchpack": "^1.7.4", - "webpack-sources": "^1.4.1" + "loader-runner": "^4.1.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "pkg-dir": "^4.2.0", + "schema-utils": "^3.0.0", + "tapable": "^2.0.0", + "terser-webpack-plugin": "^4.1.0", + "watchpack": "^2.0.0", + "webpack-sources": "^2.0.1" }, "dependencies": { - "eslint-scope": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz", - "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==", - "dev": true, - "requires": { - "esrecurse": "^4.1.0", - "estraverse": "^4.1.1" - } - }, - "json5": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", - "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", - "dev": true, - "requires": { - "minimist": "^1.2.0" - } + "acorn": { + "version": "8.0.4", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.4.tgz", + "integrity": "sha512-XNP0PqF1XD19ZlLKvB7cMmnZswW4C/03pRHgirB30uSJTaS3A3V1/P4sS3HPvFmjoriPCJQs+JDSbm4bL1TxGQ==", + "dev": true }, - "loader-utils": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz", - "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==", + "pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, "requires": { - "big.js": "^5.2.2", - "emojis-list": "^3.0.0", - "json5": "^1.0.1" + "find-up": "^4.0.0" } }, - "schema-utils": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", - "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", + "webpack-sources": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.0.1.tgz", + "integrity": "sha512-A9oYz7ANQBK5EN19rUXbvNgfdfZf5U2gP0769OXsj9CvYkCR6OHOsd6OKyEy4H38GGxpsQPKIL83NC64QY6Xmw==", "dev": true, "requires": { - "ajv": "^6.1.0", - "ajv-errors": "^1.0.0", - "ajv-keywords": "^3.1.0" + "source-list-map": "^2.0.1", + "source-map": "^0.6.1" } } } @@ -15660,9 +14756,9 @@ "dev": true }, "whatwg-url": { - "version": "8.3.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.3.0.tgz", - "integrity": "sha512-BQRf/ej5Rp3+n7k0grQXZj9a1cHtsp4lqj01p59xBWFKdezR8sO37XnpafwNqiFac/v2Il12EIMjX/Y4VZtT8Q==", + "version": "8.4.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.4.0.tgz", + "integrity": "sha512-vwTUFf6V4zhcPkWp/4CQPr1TW9Ml6SF4lVyaIMBdJw5i6qUUJ1QWM4Z6YYVkfka0OUIzVo/0aNtGVGk256IKWw==", "dev": true, "requires": { "lodash.sortby": "^4.7.0", @@ -15725,15 +14821,6 @@ "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", "dev": true }, - "worker-farm": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", - "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", - "dev": true, - "requires": { - "errno": "~0.1.7" - } - }, "wrap-ansi": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", diff --git a/package.json b/package.json index 094df437..b4840192 100644 --- a/package.json +++ b/package.json @@ -43,15 +43,15 @@ "webpack": "^4.27.0 || ^5.0.0" }, "dependencies": { - "camelcase": "^6.0.0", + "camelcase": "^6.1.0", "cssesc": "^3.0.0", - "icss-utils": "^4.1.1", + "icss-utils": "^5.0.0", "loader-utils": "^2.0.0", "postcss": "^8.1.1", - "postcss-modules-extract-imports": "^2.0.0", - "postcss-modules-local-by-default": "^3.0.3", - "postcss-modules-scope": "^2.2.0", - "postcss-modules-values": "^3.0.0", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", "postcss-value-parser": "^4.1.0", "schema-utils": "^3.0.0", "semver": "^7.3.2" @@ -64,35 +64,35 @@ "@commitlint/config-conventional": "^11.0.0", "@webpack-contrib/defaults": "^6.3.0", "@webpack-contrib/eslint-config-webpack": "^3.0.0", - "babel-jest": "^26.5.0", + "babel-jest": "^26.5.2", "cross-env": "^7.0.2", "del": "^6.0.0", "del-cli": "^3.0.1", - "es-check": "^5.1.0", - "eslint": "^7.10.0", + "es-check": "^5.1.1", + "eslint": "^7.11.0", "eslint-config-prettier": "^6.12.0", "eslint-plugin-import": "^2.22.1", - "file-loader": "^6.1.0", + "file-loader": "^6.1.1", "husky": "^4.3.0", - "jest": "^26.5.0", + "jest": "^26.5.3", "less": "^3.12.2", - "less-loader": "^7.0.1", - "lint-staged": "^10.3.0", + "less-loader": "^7.0.2", + "lint-staged": "^10.4.0", "memfs": "^3.2.0", - "mini-css-extract-plugin": "^0.11.3", + "mini-css-extract-plugin": "^1.0.0", "npm-run-all": "^4.1.5", - "postcss-loader": "^4.0.3", + "postcss-loader": "^4.0.4", "postcss-preset-env": "^6.7.0", - "prettier": "^2.1.1", - "sass": "^1.26.10", - "sass-loader": "^10.0.2", + "prettier": "^2.1.2", + "sass": "^1.27.0", + "sass-loader": "^10.0.3", "standard-version": "^9.0.0", "strip-ansi": "^6.0.0", - "style-loader": "^1.3.0", + "style-loader": "^2.0.0", "stylus": "^0.54.8", - "stylus-loader": "^4.1.0", - "url-loader": "^4.1.0", - "webpack": "^4.44.2" + "stylus-loader": "^4.1.1", + "url-loader": "^4.1.1", + "webpack": "^5.0.0" }, "keywords": [ "webpack", diff --git a/src/plugins/postcss-import-parser.js b/src/plugins/postcss-import-parser.js index f67d8576..c7633ec9 100644 --- a/src/plugins/postcss-import-parser.js +++ b/src/plugins/postcss-import-parser.js @@ -7,97 +7,94 @@ import { requestify, } from '../utils'; +function visitor(result, parsedResults, node, key) { + // Convert only top-level @import + if (node.parent.type !== 'root') { + return; + } + + // Nodes do not exists - `@import url('http://') :root {}` + if (node.nodes) { + result.warn( + "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", + { node } + ); + + return; + } + + const { nodes: paramsNodes } = valueParser(node[key]); + + // No nodes - `@import ;` + // Invalid type - `@import foo-bar;` + if ( + paramsNodes.length === 0 || + (paramsNodes[0].type !== 'string' && paramsNodes[0].type !== 'function') + ) { + result.warn(`Unable to find uri in "${node.toString()}"`, { node }); + + return; + } + + let isStringValue; + let url; + + if (paramsNodes[0].type === 'string') { + isStringValue = true; + url = paramsNodes[0].value; + } else { + // Invalid function - `@import nourl(test.css);` + if (paramsNodes[0].value.toLowerCase() !== 'url') { + result.warn(`Unable to find uri in "${node.toString()}"`, { node }); + + return; + } + + isStringValue = + paramsNodes[0].nodes.length !== 0 && + paramsNodes[0].nodes[0].type === 'string'; + url = isStringValue + ? paramsNodes[0].nodes[0].value + : valueParser.stringify(paramsNodes[0].nodes); + } + + // Empty url - `@import "";` or `@import url();` + if (url.trim().length === 0) { + result.warn(`Unable to find uri in "${node.toString()}"`, { node }); + + return; + } + + parsedResults.push({ + node, + url, + isStringValue, + mediaNodes: paramsNodes.slice(1), + }); +} + const plugin = (options = {}) => { return { postcssPlugin: 'postcss-import-parser', prepare(result) { - const atRuleParsedResults = []; + const parsedResults = []; return { AtRule: { import(atRule) { - // Convert only top-level @import - if (atRule.parent.type !== 'root') { - return; - } - - // Nodes do not exists - `@import url('http://') :root {}` - if (atRule.nodes) { - result.warn( - "It looks like you didn't end your @import statement correctly. Child nodes are attached to it.", - { node: atRule } - ); - - return; - } - - const { nodes: paramsNodes } = valueParser(atRule.params); - - // No nodes - `@import ;` - // Invalid type - `@import foo-bar;` - if ( - paramsNodes.length === 0 || - (paramsNodes[0].type !== 'string' && - paramsNodes[0].type !== 'function') - ) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - let isStringValue; - let url; - - if (paramsNodes[0].type === 'string') { - isStringValue = true; - url = paramsNodes[0].value; - } else { - // Invalid function - `@import nourl(test.css);` - if (paramsNodes[0].value.toLowerCase() !== 'url') { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - isStringValue = - paramsNodes[0].nodes.length !== 0 && - paramsNodes[0].nodes[0].type === 'string'; - url = isStringValue - ? paramsNodes[0].nodes[0].value - : valueParser.stringify(paramsNodes[0].nodes); - } - - // Empty url - `@import "";` or `@import url();` - if (url.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, - }); - - return; - } - - atRuleParsedResults.push({ - atRule, - url, - isStringValue, - mediaNodes: paramsNodes.slice(1), - }); + visitor(result, parsedResults, atRule, 'params'); }, }, async OnceExit() { - if (atRuleParsedResults.length === 0) { + if (parsedResults.length === 0) { return; } const imports = new Map(); const tasks = []; - for (const parsedResult of atRuleParsedResults) { - const { atRule, url, isStringValue, mediaNodes } = parsedResult; + for (const parsedResult of parsedResults) { + const { node, url, isStringValue, mediaNodes } = parsedResult; let normalizedUrl = url; let prefix = ''; @@ -119,8 +116,8 @@ const plugin = (options = {}) => { // \ // '; if (normalizedUrl.trim().length === 0) { - result.warn(`Unable to find uri in "${atRule.toString()}"`, { - node: atRule, + result.warn(`Unable to find uri in "${node.toString()}"`, { + node, }); // eslint-disable-next-line no-continue @@ -139,7 +136,7 @@ const plugin = (options = {}) => { continue; } - atRule.remove(); + node.remove(); if (isRequestable) { const request = requestify(normalizedUrl, options.rootContext); diff --git a/src/plugins/postcss-url-parser.js b/src/plugins/postcss-url-parser.js index 7156ce73..3816d430 100644 --- a/src/plugins/postcss-url-parser.js +++ b/src/plugins/postcss-url-parser.js @@ -15,12 +15,10 @@ function getNodeFromUrlFunc(node) { return node.nodes && node.nodes[0]; } -function shouldHandleRule(rule, declaration, result) { +function shouldHandleRule(rule, node, result) { // https://www.w3.org/TR/css-syntax-3/#typedef-url-token if (rule.url.replace(/^[\s]+|[\s]+$/g, '').length === 0) { - result.warn(`Unable to find uri in '${declaration.toString()}'`, { - node: declaration, - }); + result.warn(`Unable to find uri in '${node.toString()}'`, { node }); return false; } @@ -32,99 +30,100 @@ function shouldHandleRule(rule, declaration, result) { return true; } +function visitor(result, parsedResults, node, key) { + if (!needParseDeclaration.test(node[key])) { + return; + } + + const parsed = valueParser(node[key]); + + parsed.walk((valueNode) => { + if (valueNode.type !== 'function') { + return; + } + + if (isUrlFunc.test(valueNode.value)) { + const { nodes } = valueNode; + const isStringValue = nodes.length !== 0 && nodes[0].type === 'string'; + const url = isStringValue ? nodes[0].value : valueParser.stringify(nodes); + + const rule = { + node: getNodeFromUrlFunc(valueNode), + url, + needQuotes: false, + isStringValue, + }; + + if (shouldHandleRule(rule, node, result)) { + parsedResults.push({ node, rule, parsed }); + } + + // Do not traverse inside `url` + // eslint-disable-next-line consistent-return + return false; + } else if (isImageSetFunc.test(valueNode.value)) { + for (const nNode of valueNode.nodes) { + const { type, value } = nNode; + + if (type === 'function' && isUrlFunc.test(value)) { + const { nodes } = nNode; + const isStringValue = + nodes.length !== 0 && nodes[0].type === 'string'; + const url = isStringValue + ? nodes[0].value + : valueParser.stringify(nodes); + + const rule = { + node: getNodeFromUrlFunc(nNode), + url, + needQuotes: false, + isStringValue, + }; + + if (shouldHandleRule(rule, node, result)) { + parsedResults.push({ + node, + rule, + parsed, + }); + } + } else if (type === 'string') { + const rule = { + node: nNode, + url: value, + needQuotes: true, + isStringValue: true, + }; + + if (shouldHandleRule(rule, node, result)) { + parsedResults.push({ + node, + rule, + parsed, + }); + } + } + } + + // Do not traverse inside `image-set` + // eslint-disable-next-line consistent-return + return false; + } + }); +} + const plugin = (options = {}) => { return { postcssPlugin: 'postcss-url-parser', prepare(result) { - const declarationParsedResults = []; + const parsedResults = []; return { - async Declaration(declaration) { - if (!needParseDeclaration.test(declaration.value)) { - return; - } - - const parsed = valueParser(declaration.value); - - parsed.walk((valueNode) => { - if (valueNode.type !== 'function') { - return; - } - - if (isUrlFunc.test(valueNode.value)) { - const { nodes } = valueNode; - const isStringValue = - nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue - ? nodes[0].value - : valueParser.stringify(nodes); - - const rule = { - node: getNodeFromUrlFunc(valueNode), - url, - needQuotes: false, - isStringValue, - }; - - if (shouldHandleRule(rule, declaration, result)) { - declarationParsedResults.push({ declaration, rule, parsed }); - } - - // Do not traverse inside `url` - // eslint-disable-next-line consistent-return - return false; - } else if (isImageSetFunc.test(valueNode.value)) { - for (const nNode of valueNode.nodes) { - const { type, value } = nNode; - - if (type === 'function' && isUrlFunc.test(value)) { - const { nodes } = nNode; - const isStringValue = - nodes.length !== 0 && nodes[0].type === 'string'; - const url = isStringValue - ? nodes[0].value - : valueParser.stringify(nodes); - - const rule = { - node: getNodeFromUrlFunc(nNode), - url, - needQuotes: false, - isStringValue, - }; - - if (shouldHandleRule(rule, declaration, result)) { - declarationParsedResults.push({ - declaration, - rule, - parsed, - }); - } - } else if (type === 'string') { - const rule = { - node: nNode, - url: value, - needQuotes: true, - isStringValue: true, - }; - - if (shouldHandleRule(rule, declaration, result)) { - declarationParsedResults.push({ - declaration, - rule, - parsed, - }); - } - } - } - - // Do not traverse inside `image-set` - // eslint-disable-next-line consistent-return - return false; - } - }); + Declaration(declaration) { + visitor(result, parsedResults, declaration, 'value'); }, async OnceExit() { - if (declarationParsedResults.length === 0) { + if (parsedResults.length === 0) { return; } @@ -134,7 +133,7 @@ const plugin = (options = {}) => { let hasUrlImportHelper = false; - for (const parsedResult of declarationParsedResults) { + for (const parsedResult of parsedResults) { const { url, isStringValue } = parsedResult.rule; let normalizedUrl = url; @@ -193,7 +192,7 @@ const plugin = (options = {}) => { url, prefix, hash, - parsedResult: { declaration, rule, parsed }, + parsedResult: { node, rule, parsed }, } = results[index]; const newUrl = prefix ? `${prefix}!${url}` : url; const importKey = newUrl; @@ -232,7 +231,7 @@ const plugin = (options = {}) => { rule.node.value = replacementName; // eslint-disable-next-line no-param-reassign - declaration.value = parsed.toString(); + node.value = parsed.toString(); } }, }; diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 08d773b6..9aba4b85 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -1340,7 +1340,7 @@ ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_6___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_7___, \\"\\", true); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -___CSS_LOADER_EXPORT___.push([module.id, \\"._2ZmR2b3YBVn0i8sme-abcC {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._1Tjau9FSqr5WLTBHaIm1rH {\\\\n color: blue;\\\\n}\\\\n\\\\n.EcQSwQce4PuQ5vNAybT9N {\\\\n display: block;\\\\n}\\\\n\\\\n.hTH4alr_d-S0jPncN6ib3 {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n._7sobwviowI6_CZkzLjYZG {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.YpDepip9R1BGGAy-rGgvc {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._3dfrN27nghAjb3tcT6R_Ov {\\\\n color: red;\\\\n}\\\\n\\\\n._3aPunKIij5oyAtcB6y9-Xm {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3Qp0o615k38gm2l4OVRknw {\\\\n color: gray;\\\\n}\\\\n\\\\n._1kgUMo7v00lYmyGBHv2COz {\\\\n color: gray;\\\\n}\\\\n\\\\n._3itMfHbLQSSkBisENyA8TF {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._2ChGydqcGYRLzAo3_Iomr2 {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._1ai7yu9kkZ_8JwK0EMbe6U {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n.OX01CBO1Ma7xJh6yAybXq {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\" {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n@value v-comment: /* comment */;\\\\n\\\\n._2PhbElc8FsODw7KMuxWJyk {\\\\n v-ident: validIdent;\\\\n v-pre-defined-ident: left;\\\\n v-string: 'content';\\\\n v-string-1: '';\\\\n v-url: url(https://www.exammple.com/images/my-background.png);\\\\n v-url-1: url('https://www.exammple.com/images/my-background.png');\\\\n v-url-2: url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\");\\\\n v-integer: 100;\\\\n v-integer-1: -100;\\\\n v-integer-2: +100;\\\\n v-number: .60;\\\\n v-number-1: -456.8;\\\\n v-number-2: -3.4e-2;\\\\n v-dimension: 12px;\\\\n v-percentage: 100%;\\\\n v-hex: #fff;\\\\n v-comment: v-comment 10px v-comment;\\\\n v-function: rgb(0,0,0);\\\\n v-unicode-range: U+0025-00FF;\\\\n mutliple: #fff .60 100%;\\\\n}\\\\n\\\\n\\\\na {\\\\n content: 'content';\\\\n}\\\\n\\\\n@supports (content: 'content') {\\\\n a {\\\\n content: 'content';\\\\n }\\\\n}\\\\n\\\\n[class~='content'] {\\\\n color:green;\\\\n}\\\\n\\\\n._1qvhWcgsRpzv9-_jaooxI0 {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n._1-QX-dLNLF1zFn-cPfLHcH {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \\"._2ZmR2b3YBVn0i8sme-abcC {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._1Tjau9FSqr5WLTBHaIm1rH {\\\\n color: blue;\\\\n}\\\\n\\\\n.EcQSwQce4PuQ5vNAybT9N {\\\\n display: block;\\\\n}\\\\n\\\\n.hTH4alr_d-S0jPncN6ib3 {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n._7sobwviowI6_CZkzLjYZG {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.YpDepip9R1BGGAy-rGgvc {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._3dfrN27nghAjb3tcT6R_Ov {\\\\n color: red;\\\\n}\\\\n\\\\n._3aPunKIij5oyAtcB6y9-Xm {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3Qp0o615k38gm2l4OVRknw {\\\\n color: gray;\\\\n}\\\\n\\\\n._1kgUMo7v00lYmyGBHv2COz {\\\\n color: gray;\\\\n}\\\\n\\\\n._3itMfHbLQSSkBisENyA8TF {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._2ChGydqcGYRLzAo3_Iomr2 {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._1ai7yu9kkZ_8JwK0EMbe6U {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n.OX01CBO1Ma7xJh6yAybXq {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\" {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n\\\\n._2PhbElc8FsODw7KMuxWJyk {\\\\n v-ident: validIdent;\\\\n v-pre-defined-ident: left;\\\\n v-string: 'content';\\\\n v-string-1: '';\\\\n v-url: url(https://www.exammple.com/images/my-background.png);\\\\n v-url-1: url('https://www.exammple.com/images/my-background.png');\\\\n v-url-2: url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\");\\\\n v-integer: 100;\\\\n v-integer-1: -100;\\\\n v-integer-2: +100;\\\\n v-number: .60;\\\\n v-number-1: -456.8;\\\\n v-number-2: -3.4e-2;\\\\n v-dimension: 12px;\\\\n v-percentage: 100%;\\\\n v-hex: #fff;\\\\n v-comment: /* comment */ 10px /* comment */;\\\\n v-function: rgb(0,0,0);\\\\n v-unicode-range: U+0025-00FF;\\\\n mutliple: #fff .60 100%;\\\\n}\\\\n\\\\n\\\\na {\\\\n content: 'content';\\\\n}\\\\n\\\\n@supports (content: 'content') {\\\\n a {\\\\n content: 'content';\\\\n }\\\\n}\\\\n\\\\n[class~='content'] {\\\\n color:green;\\\\n}\\\\n\\\\n._1qvhWcgsRpzv9-_jaooxI0 {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n._1-QX-dLNLF1zFn-cPfLHcH {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports ___CSS_LOADER_EXPORT___.locals = { \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\"\\", @@ -1369,6 +1369,7 @@ ___CSS_LOADER_EXPORT___.locals = { \\"v-dimension\\": \\"12px\\", \\"v-percentage\\": \\"100%\\", \\"v-hex\\": \\"#fff\\", + \\"v-comment\\": \\" /* comment */\\", \\"v-function\\": \\"rgb(0,0,0)\\", \\"v-unicode-range\\": \\"U+0025-00FF\\", \\"ghi\\": \\"_2ZmR2b3YBVn0i8sme-abcC\\", @@ -1538,7 +1539,6 @@ Array [ padding: 20px 20px; } } -@value v-comment: /* comment */; ._2PhbElc8FsODw7KMuxWJyk { v-ident: validIdent; @@ -1557,7 +1557,7 @@ Array [ v-dimension: 12px; v-percentage: 100%; v-hex: #fff; - v-comment: v-comment 10px v-comment; + v-comment: /* comment */ 10px /* comment */; v-function: rgb(0,0,0); v-unicode-range: U+0025-00FF; mutliple: #fff .60 100%; @@ -2417,6 +2417,7 @@ export default { \\"v-dimension\\": \\"12px\\", \\"v-percentage\\": \\"100%\\", \\"v-hex\\": \\"#fff\\", + \\"v-comment\\": \\" /* comment */\\", \\"v-function\\": \\"rgb(0,0,0)\\", \\"v-unicode-range\\": \\"U+0025-00FF\\", \\"ghi\\": \\"_ghi\\", @@ -2466,6 +2467,7 @@ Object { "top-relative": "_top-relative _imported-relative", "url": "_url", "v-bar": "block", + "v-comment": " /* comment */", "v-def": "red", "v-dimension": "12px", "v-foo": "blue", @@ -3757,6 +3759,7 @@ module.exports = { \\"v-dimension\\": \\"12px\\", \\"v-percentage\\": \\"100%\\", \\"v-hex\\": \\"#fff\\", + \\"v-comment\\": \\" /* comment */\\", \\"v-function\\": \\"rgb(0,0,0)\\", \\"v-unicode-range\\": \\"U+0025-00FF\\", \\"ghi\\": \\"_ghi\\", @@ -3806,6 +3809,7 @@ Object { "top-relative": "_top-relative _imported-relative", "url": "_url", "v-bar": "block", + "v-comment": " /* comment */", "v-def": "red", "v-dimension": "12px", "v-foo": "blue", @@ -3874,6 +3878,7 @@ export default { \\"v-dimension\\": \\"12px\\", \\"v-percentage\\": \\"100%\\", \\"v-hex\\": \\"#fff\\", + \\"v-comment\\": \\" /* comment */\\", \\"v-function\\": \\"rgb(0,0,0)\\", \\"v-unicode-range\\": \\"U+0025-00FF\\", \\"ghi\\": \\"_ghi\\", @@ -3923,6 +3928,7 @@ Object { "top-relative": "_top-relative _imported-relative", "url": "_url", "v-bar": "block", + "v-comment": " /* comment */", "v-def": "red", "v-dimension": "12px", "v-foo": "blue", @@ -3990,6 +3996,7 @@ export const vNumber2 = \\"-3.4e-2\\"; export const vDimension = \\"12px\\"; export const vPercentage = \\"100%\\"; export const vHex = \\"#fff\\"; +export const vComment = \\" /* comment */\\"; export const vFunction = \\"rgb(0,0,0)\\"; export const vUnicodeRange = \\"U+0025-00FF\\"; export const ghi = \\"_ghi\\"; @@ -4038,6 +4045,7 @@ Object { "topRelative": "_top-relative _imported-relative", "url": "_url", "vBar": "block", + "vComment": " /* comment */", "vDef": "red", "vDimension": "12px", "vFoo": "blue", @@ -12788,7 +12796,7 @@ ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_6___, \\"\\", true); ___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_7___, \\"\\", true); var ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___); // Module -___CSS_LOADER_EXPORT___.push([module.id, \\"._2ZmR2b3YBVn0i8sme-abcC {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._1Tjau9FSqr5WLTBHaIm1rH {\\\\n color: blue;\\\\n}\\\\n\\\\n.EcQSwQce4PuQ5vNAybT9N {\\\\n display: block;\\\\n}\\\\n\\\\n.hTH4alr_d-S0jPncN6ib3 {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n._7sobwviowI6_CZkzLjYZG {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.YpDepip9R1BGGAy-rGgvc {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._3dfrN27nghAjb3tcT6R_Ov {\\\\n color: red;\\\\n}\\\\n\\\\n._3aPunKIij5oyAtcB6y9-Xm {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3Qp0o615k38gm2l4OVRknw {\\\\n color: gray;\\\\n}\\\\n\\\\n._1kgUMo7v00lYmyGBHv2COz {\\\\n color: gray;\\\\n}\\\\n\\\\n._3itMfHbLQSSkBisENyA8TF {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._2ChGydqcGYRLzAo3_Iomr2 {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._1ai7yu9kkZ_8JwK0EMbe6U {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n.OX01CBO1Ma7xJh6yAybXq {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\" {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n@value v-comment: /* comment */;\\\\n\\\\n._2PhbElc8FsODw7KMuxWJyk {\\\\n v-ident: validIdent;\\\\n v-pre-defined-ident: left;\\\\n v-string: 'content';\\\\n v-string-1: '';\\\\n v-url: url(https://www.exammple.com/images/my-background.png);\\\\n v-url-1: url('https://www.exammple.com/images/my-background.png');\\\\n v-url-2: url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\");\\\\n v-integer: 100;\\\\n v-integer-1: -100;\\\\n v-integer-2: +100;\\\\n v-number: .60;\\\\n v-number-1: -456.8;\\\\n v-number-2: -3.4e-2;\\\\n v-dimension: 12px;\\\\n v-percentage: 100%;\\\\n v-hex: #fff;\\\\n v-comment: v-comment 10px v-comment;\\\\n v-function: rgb(0,0,0);\\\\n v-unicode-range: U+0025-00FF;\\\\n mutliple: #fff .60 100%;\\\\n}\\\\n\\\\n\\\\na {\\\\n content: 'content';\\\\n}\\\\n\\\\n@supports (content: 'content') {\\\\n a {\\\\n content: 'content';\\\\n }\\\\n}\\\\n\\\\n[class~='content'] {\\\\n color:green;\\\\n}\\\\n\\\\n._1qvhWcgsRpzv9-_jaooxI0 {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n._1-QX-dLNLF1zFn-cPfLHcH {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \\"._2ZmR2b3YBVn0i8sme-abcC {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._1Tjau9FSqr5WLTBHaIm1rH {\\\\n color: blue;\\\\n}\\\\n\\\\n.EcQSwQce4PuQ5vNAybT9N {\\\\n display: block;\\\\n}\\\\n\\\\n.hTH4alr_d-S0jPncN6ib3 {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n._7sobwviowI6_CZkzLjYZG {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.YpDepip9R1BGGAy-rGgvc {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n._3dfrN27nghAjb3tcT6R_Ov {\\\\n color: red;\\\\n}\\\\n\\\\n._3aPunKIij5oyAtcB6y9-Xm {\\\\n color: yellow;\\\\n}\\\\n\\\\n._3Qp0o615k38gm2l4OVRknw {\\\\n color: gray;\\\\n}\\\\n\\\\n._1kgUMo7v00lYmyGBHv2COz {\\\\n color: gray;\\\\n}\\\\n\\\\n._3itMfHbLQSSkBisENyA8TF {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._2ChGydqcGYRLzAo3_Iomr2 {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n._1ai7yu9kkZ_8JwK0EMbe6U {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n.OX01CBO1Ma7xJh6yAybXq {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 0 20px;\\\\n }\\\\n}\\\\n\\\\n.\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\" {\\\\n color: white;\\\\n}\\\\n\\\\n@media \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\" {\\\\n ._2Yk-wvfy8t_ESEwwB1Fc0y {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n\\\\n._2PhbElc8FsODw7KMuxWJyk {\\\\n v-ident: validIdent;\\\\n v-pre-defined-ident: left;\\\\n v-string: 'content';\\\\n v-string-1: '';\\\\n v-url: url(https://www.exammple.com/images/my-background.png);\\\\n v-url-1: url('https://www.exammple.com/images/my-background.png');\\\\n v-url-2: url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\");\\\\n v-integer: 100;\\\\n v-integer-1: -100;\\\\n v-integer-2: +100;\\\\n v-number: .60;\\\\n v-number-1: -456.8;\\\\n v-number-2: -3.4e-2;\\\\n v-dimension: 12px;\\\\n v-percentage: 100%;\\\\n v-hex: #fff;\\\\n v-comment: /* comment */ 10px /* comment */;\\\\n v-function: rgb(0,0,0);\\\\n v-unicode-range: U+0025-00FF;\\\\n mutliple: #fff .60 100%;\\\\n}\\\\n\\\\n\\\\na {\\\\n content: 'content';\\\\n}\\\\n\\\\n@supports (content: 'content') {\\\\n a {\\\\n content: 'content';\\\\n }\\\\n}\\\\n\\\\n[class~='content'] {\\\\n color:green;\\\\n}\\\\n\\\\n._1qvhWcgsRpzv9-_jaooxI0 {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n._1-QX-dLNLF1zFn-cPfLHcH {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); // Exports ___CSS_LOADER_EXPORT___.locals = { \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\"\\", @@ -12817,6 +12825,7 @@ ___CSS_LOADER_EXPORT___.locals = { \\"v-dimension\\": \\"12px\\", \\"v-percentage\\": \\"100%\\", \\"v-hex\\": \\"#fff\\", + \\"v-comment\\": \\" /* comment */\\", \\"v-function\\": \\"rgb(0,0,0)\\", \\"v-unicode-range\\": \\"U+0025-00FF\\", \\"ghi\\": \\"_2ZmR2b3YBVn0i8sme-abcC\\", @@ -12986,7 +12995,6 @@ Array [ padding: 20px 20px; } } -@value v-comment: /* comment */; ._2PhbElc8FsODw7KMuxWJyk { v-ident: validIdent; @@ -13005,7 +13013,7 @@ Array [ v-dimension: 12px; v-percentage: 100%; v-hex: #fff; - v-comment: v-comment 10px v-comment; + v-comment: /* comment */ 10px /* comment */; v-function: rgb(0,0,0); v-unicode-range: U+0025-00FF; mutliple: #fff .60 100%; diff --git a/test/fixtures/source-map/extract.js b/test/fixtures/source-map/extract.js new file mode 100644 index 00000000..d62c9bea --- /dev/null +++ b/test/fixtures/source-map/extract.js @@ -0,0 +1,3 @@ +import './basic.css'; + +export default ''; diff --git a/test/sourceMap-option.test.js b/test/sourceMap-option.test.js index 045f70e2..041c1fab 100644 --- a/test/sourceMap-option.test.js +++ b/test/sourceMap-option.test.js @@ -516,7 +516,7 @@ describe('"sourceMap" option', () => { it('should generate source maps when css was extracted', async () => { const compiler = getCompiler( - './source-map/basic.js', + './source-map/extract.js', {}, { devtool: 'source-map', @@ -563,7 +563,7 @@ describe('"sourceMap" option', () => { it('should generate source maps when css was extracted and do not change "[contenthash]" on different platform', async () => { const compiler = getCompiler( - './source-map/basic.js', + './source-map/extract.js', {}, { devtool: 'source-map', @@ -747,7 +747,7 @@ describe('"sourceMap" option', () => { it('should generate source maps when css was extracted', async () => { const compiler = getCompiler( - './source-map/basic.js', + './source-map/extract.js', {}, { output: { From 747d62b75a878d8881f4819b96297667dc689b8f Mon Sep 17 00:00:00 2001 From: Alexey Lavinsky Date: Tue, 13 Oct 2020 17:27:32 +0300 Subject: [PATCH 14/15] feat: allow named exports to have underscores in names (#1209) --- src/utils.js | 26 +++-- .../__snapshots__/modules-option.test.js.snap | 105 +++++++++++++++++- .../modules/namedExport/composes/composes.css | 24 ++++ .../modules/namedExport/composes/composes.js | 5 + .../modules/namedExport/composes/values.css | 4 + .../modules/namedExport/dashesOnly/index.css | 7 ++ .../modules/namedExport/dashesOnly/index.js | 5 + test/modules-option.test.js | 54 +++++++++ 8 files changed, 222 insertions(+), 8 deletions(-) create mode 100644 test/fixtures/modules/namedExport/composes/composes.css create mode 100644 test/fixtures/modules/namedExport/composes/composes.js create mode 100644 test/fixtures/modules/namedExport/composes/values.css create mode 100644 test/fixtures/modules/namedExport/dashesOnly/index.css create mode 100644 test/fixtures/modules/namedExport/dashesOnly/index.js diff --git a/src/utils.js b/src/utils.js index 39a85979..4a1d1cc6 100644 --- a/src/utils.js +++ b/src/utils.js @@ -111,6 +111,14 @@ function getFilter(filter, resourcePath) { }; } +function getValidLocalName(localName, exportLocalsConvention) { + if (exportLocalsConvention === 'dashesOnly') { + return dashesCamelCase(localName); + } + + return camelCase(localName); +} + const moduleRegExp = /\.module(s)?\.\w+$/i; const icssRegExp = /\.icss\.\w+$/i; @@ -203,9 +211,12 @@ function getModulesOptions(rawOptions, loaderContext) { ); } - if (modulesOptions.exportLocalsConvention !== 'camelCaseOnly') { + if ( + modulesOptions.exportLocalsConvention !== 'camelCaseOnly' && + modulesOptions.exportLocalsConvention !== 'dashesOnly' + ) { throw new Error( - 'The "modules.namedExport" option requires the "modules.exportLocalsConvention" option to be "camelCaseOnly"' + 'The "modules.namedExport" option requires the "modules.exportLocalsConvention" option to be "camelCaseOnly" or "dashesOnly"' ); } } @@ -516,7 +527,10 @@ function getModuleCode(result, api, replacements, options, loaderContext) { code = code.replace(new RegExp(replacementName, 'g'), () => options.modules.namedExport ? `" + ${importName}_NAMED___[${JSON.stringify( - camelCase(localName) + getValidLocalName( + localName, + options.modules.exportLocalsConvention + ) )}] + "` : `" + ${importName}.locals[${JSON.stringify(localName)}] + "` ); @@ -551,9 +565,7 @@ function getExportCode(exports, replacements, options) { const addExportToLocalsCode = (name, value) => { if (options.modules.namedExport) { - localsCode += `export const ${camelCase(name)} = ${JSON.stringify( - value - )};\n`; + localsCode += `export const ${name} = ${JSON.stringify(value)};\n`; } else { if (localsCode) { localsCode += `,\n`; @@ -609,7 +621,7 @@ function getExportCode(exports, replacements, options) { localsCode = localsCode.replace(new RegExp(replacementName, 'g'), () => { if (options.modules.namedExport) { return `" + ${importName}_NAMED___[${JSON.stringify( - camelCase(localName) + getValidLocalName(localName, options.modules.exportLocalsConvention) )}] + "`; } else if (options.modules.exportOnlyLocals) { return `" + ${importName}[${JSON.stringify(localName)}] + "`; diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 9aba4b85..c2b4c4b5 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -1614,7 +1614,7 @@ exports[`"modules" option should throw an error when class has unsupported name exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: errors 1`] = ` Array [ "ModuleBuildError: Module build failed (from \`replaced original path\`): -Error: The \\"modules.namedExport\\" option requires the \\"modules.exportLocalsConvention\\" option to be \\"camelCaseOnly\\"", +Error: The \\"modules.namedExport\\" option requires the \\"modules.exportLocalsConvention\\" option to be \\"camelCaseOnly\\" or \\"dashesOnly\\"", ] `; @@ -1629,6 +1629,15 @@ Error: The \\"modules.namedExport\\" option requires the \\"esModules\\" option exports[`"modules" option should throw an error when the "namedExport" option is "true", but the "esModule" is "false": warnings 1`] = `Array []`; +exports[`"modules" option should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value: errors 1`] = ` +Array [ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The \\"modules.namedExport\\" option requires the \\"modules.exportLocalsConvention\\" option to be \\"camelCaseOnly\\" or \\"dashesOnly\\"", +] +`; + +exports[`"modules" option should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value: warnings 1`] = `Array []`; + exports[`"modules" option should work and correctly replace escaped symbols: errors 1`] = `Array []`; exports[`"modules" option should work and correctly replace escaped symbols: module 1`] = ` @@ -3719,6 +3728,39 @@ Object { exports[`"modules" option should work js template with "namedExport" option: warnings 1`] = `Array []`; +exports[`"modules" option should work when the "namedExport" is enabled and the "exportLocalsConvention" options has "dashesOnly" value: errors 1`] = `Array []`; + +exports[`"modules" option should work when the "namedExport" is enabled and the "exportLocalsConvention" options has "dashesOnly" value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".foo_barBaz {\\\\n color: red;\\\\n}\\\\n\\\\n.bar {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +export const foo_barBaz = \\"foo_barBaz\\"; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work when the "namedExport" is enabled and the "exportLocalsConvention" options has "dashesOnly" value: result 1`] = ` +Array [ + Array [ + "./modules/namedExport/dashesOnly/index.css", + ".foo_barBaz { + color: red; +} + +.bar { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work when the "namedExport" is enabled and the "exportLocalsConvention" options has "dashesOnly" value: warnings 1`] = `Array []`; + exports[`"modules" option should work with "exportOnlyLocals" and "esModule" with "false" value options: errors 1`] = `Array []`; exports[`"modules" option should work with "exportOnlyLocals" and "esModule" with "false" value options: module 1`] = ` @@ -12152,6 +12194,67 @@ Array [ exports[`"modules" option should work with case \`values-10\` (\`modules\` value is \`true)\`: warnings 1`] = `Array []`; +exports[`"modules" option should work with composes when the "namedExport" is enabled and "exportLocalsConvention" options has "dashesOnly" value: errors 1`] = `Array []`; + +exports[`"modules" option should work with composes when the "namedExport" is enabled and "exportLocalsConvention" options has "dashesOnly" value: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___, * as ___CSS_LOADER_ICSS_IMPORT_0____NAMED___ from \\"-!../../../../../src/index.js??[ident]!./values.css\\"; +var ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(function(i){return i[1]}); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\"._ghi {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"v_def\\"] + \\";\\\\n}\\\\n\\\\n._my-class {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"sWhite\\"] + \\";\\\\n}\\\\n\\\\n._other {\\\\n display: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"mSmall\\"] + \\";\\\\n}\\\\n\\\\n._other-other {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"v_def\\"] + \\";\\\\n}\\\\n\\\\n._green {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"v_otherOther\\"] + \\";\\\\n}\\\\n\\", \\"\\"]); +// Exports +export const v_def = \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"v_def\\"] + \\"\\"; +export const v_otherOther = \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"v_otherOther\\"] + \\"\\"; +export const sWhite = \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"sWhite\\"] + \\"\\"; +export const mSmall = \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0____NAMED___[\\"mSmall\\"] + \\"\\"; +export const ghi = \\"_ghi\\"; +export const myClass = \\"_my-class\\"; +export const other = \\"_other\\"; +export const otherOther = \\"_other-other\\"; +export const green = \\"_green\\"; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work with composes when the "namedExport" is enabled and "exportLocalsConvention" options has "dashesOnly" value: result 1`] = ` +Array [ + Array [ + "../../src/index.js?[ident]!./modules/namedExport/composes/values.css", + " +", + "", + ], + Array [ + "./modules/namedExport/composes/composes.css", + "._ghi { + color: red; +} + +._my-class { + color: white; +} + +._other { + display: (min-width: 320px); +} + +._other-other { + width: red; +} + +._green { + color: green; +} +", + "", + ], +] +`; + +exports[`"modules" option should work with composes when the "namedExport" is enabled and "exportLocalsConvention" options has "dashesOnly" value: warnings 1`] = `Array []`; + exports[`"modules" option should work with the "[local]" placeholder for the "localIdentName" option: errors 1`] = `Array []`; exports[`"modules" option should work with the "[local]" placeholder for the "localIdentName" option: module 1`] = ` diff --git a/test/fixtures/modules/namedExport/composes/composes.css b/test/fixtures/modules/namedExport/composes/composes.css new file mode 100644 index 00000000..7a7d4fa9 --- /dev/null +++ b/test/fixtures/modules/namedExport/composes/composes.css @@ -0,0 +1,24 @@ +@value v_def from './values.css'; +@value v_other-other from './values.css'; +@value s-white from './values.css'; +@value m-small from './values.css'; + +.ghi { + color: v_def; +} + +.my-class { + color: s-white; +} + +.other { + display: m-small; +} + +.other-other { + width: v_def; +} + +.green { + color: v_other-other; +} diff --git a/test/fixtures/modules/namedExport/composes/composes.js b/test/fixtures/modules/namedExport/composes/composes.js new file mode 100644 index 00000000..ba922e3f --- /dev/null +++ b/test/fixtures/modules/namedExport/composes/composes.js @@ -0,0 +1,5 @@ +import css from './composes.css'; + +__export__ = css; + +export default css; diff --git a/test/fixtures/modules/namedExport/composes/values.css b/test/fixtures/modules/namedExport/composes/values.css new file mode 100644 index 00000000..075f5246 --- /dev/null +++ b/test/fixtures/modules/namedExport/composes/values.css @@ -0,0 +1,4 @@ +@value v_def: red; +@value v_other-other: green; +@value s-white: white; +@value m-small: (min-width: 320px); diff --git a/test/fixtures/modules/namedExport/dashesOnly/index.css b/test/fixtures/modules/namedExport/dashesOnly/index.css new file mode 100644 index 00000000..6c1ec23d --- /dev/null +++ b/test/fixtures/modules/namedExport/dashesOnly/index.css @@ -0,0 +1,7 @@ +:local(.foo_barBaz) { + color: red; +} + +:global(.bar) { + color: red; +} diff --git a/test/fixtures/modules/namedExport/dashesOnly/index.js b/test/fixtures/modules/namedExport/dashesOnly/index.js new file mode 100644 index 00000000..e1a19303 --- /dev/null +++ b/test/fixtures/modules/namedExport/dashesOnly/index.js @@ -0,0 +1,5 @@ +import css from './index.css'; + +__export__ = css; + +export default css; diff --git a/test/modules-option.test.js b/test/modules-option.test.js index 1bb121ae..d442c6cd 100644 --- a/test/modules-option.test.js +++ b/test/modules-option.test.js @@ -1203,6 +1203,60 @@ describe('"modules" option', () => { expect(getErrors(stats)).toMatchSnapshot('errors'); }); + it('should work when the "namedExport" is enabled and the "exportLocalsConvention" options has "dashesOnly" value', async () => { + const compiler = getCompiler('./modules/namedExport/dashesOnly/index.js', { + modules: { + localIdentName: '[local]', + namedExport: true, + exportLocalsConvention: 'dashesOnly', + }, + }); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/namedExport/dashesOnly/index.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats, true)).toMatchSnapshot('errors'); + }); + + it('should work with composes when the "namedExport" is enabled and "exportLocalsConvention" options has "dashesOnly" value', async () => { + const compiler = getCompiler('./modules/namedExport/composes/composes.js', { + modules: { + localIdentName: '_[local]', + namedExport: true, + exportLocalsConvention: 'dashesOnly', + }, + }); + const stats = await compile(compiler); + + expect( + getModuleSource('./modules/namedExport/composes/composes.css', stats) + ).toMatchSnapshot('module'); + expect(getExecutedCode('main.bundle.js', compiler, stats)).toMatchSnapshot( + 'result' + ); + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats)).toMatchSnapshot('errors'); + }); + + it('should throw error with composes when the "namedExport" is enabled and "exportLocalsConvention" options has invalid value', async () => { + const compiler = getCompiler('./modules/namedExport/composes/composes.js', { + modules: { + localIdentName: '_[local]', + namedExport: true, + exportLocalsConvention: 'dashes', + }, + }); + const stats = await compile(compiler); + + expect(getWarnings(stats)).toMatchSnapshot('warnings'); + expect(getErrors(stats, true)).toMatchSnapshot('errors'); + }); + it('should throw an error when the "namedExport" option is "true", but the "esModule" is "false"', async () => { const compiler = getCompiler('./modules/namedExport/base/index.js', { esModule: false, From 1351e3a2a4b05fefb9b522b6be8abb60e4f8cda4 Mon Sep 17 00:00:00 2001 From: evilebottnawi Date: Tue, 13 Oct 2020 20:37:53 +0300 Subject: [PATCH 15/15] chore(release): 5.0.0 --- CHANGELOG.md | 20 ++++++++++++++++++++ package-lock.json | 2 +- package.json | 2 +- 3 files changed, 22 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 39134707..034a3ad7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,26 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +## [5.0.0](https://github.com/webpack-contrib/css-loader/compare/v4.3.0...v5.0.0) (2020-10-13) + + +### ⚠ BREAKING CHANGES + +* migrate on PostCSS 8 +* runtime doesn't contain source maps code without `sourceMap: true` +* returned value from the `getLocalIdent` escapes by default, the `exportName` value is always unescaped +* Auto enable icss modules for all files for which `/\.icss\.\w+$/i` (the `modules.compileType` option is `icss`) +* `[emoji]` placeholder was deprecated +* `icss` option was removed (it was deprecated previously) + +### Features + +* allow named exports to have underscores in names ([#1209](https://github.com/webpack-contrib/css-loader/issues/1209)) ([747d62b](https://github.com/webpack-contrib/css-loader/commit/747d62b75a878d8881f4819b96297667dc689b8f)) +* hide warning when you don't need handle `url()`/`@import` ([#1195](https://github.com/webpack-contrib/css-loader/issues/1195)) ([dd52931](https://github.com/webpack-contrib/css-loader/commit/dd52931150ed42f122d9017642437c26cc1b2422)) +* improve error message ([52412f6](https://github.com/webpack-contrib/css-loader/commit/52412f6d5a54745ee37a4a67f038455c26ba5772)) +* reduce runtime ([9f974be](https://github.com/webpack-contrib/css-loader/commit/9f974be81f5942d3afaf783529677bd541952fa3)) +* add fallback if custom getLocalIdent returns `null`/`undefined` ([#1193](https://github.com/webpack-contrib/css-loader/issues/1193)) ([0f95841](https://github.com/webpack-contrib/css-loader/commit/0f9584135e63f9f354043e7f414e0c1aad0edc6e)) + ## [4.3.0](https://github.com/webpack-contrib/css-loader/compare/v4.2.2...v4.3.0) (2020-09-08) diff --git a/package-lock.json b/package-lock.json index d536b8bc..92d13a0c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "css-loader", - "version": "4.3.0", + "version": "5.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { diff --git a/package.json b/package.json index b4840192..e7ec5c68 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "css-loader", - "version": "4.3.0", + "version": "5.0.0", "description": "css loader module for webpack", "license": "MIT", "repository": "webpack-contrib/css-loader",