diff --git a/test/__snapshots__/modules-option.test.js.snap b/test/__snapshots__/modules-option.test.js.snap index 17d8c77a..76a91c77 100644 --- a/test/__snapshots__/modules-option.test.js.snap +++ b/test/__snapshots__/modules-option.test.js.snap @@ -1,183 +1,216 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`"modules" option should work and respect the "localIdentRegExp" option: errors 1`] = `Array []`; +exports[`"modules" option issue #286: errors 1`] = `Array []`; -exports[`"modules" option should work and respect the "localIdentRegExp" option: module 1`] = ` +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___(function(i){return i[1]}); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_0___, \\"\\", true); // Module -___CSS_LOADER_EXPORT___.push([module.id, \\".localIdentName__test__HovVWrUT {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName___test___1mLQ0KY {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName__className__MMk_yFMI {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName__someId__f_mZz_4m {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName__className__MMk_yFMI .localIdentName__subClass__FYyIWexD {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName__someId__f_mZz_4m .localIdentName__subClass__FYyIWexD {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName__-a0-34a___f__r_hifewi {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName__m_x_\\\\\\\\@__yUrnJ_pW {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName__B\\\\\\\\&W\\\\\\\\?__O_Xkei1D {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\(___rpCeu5p {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName__\\\\\\\\31 a2b3c__mxXeAFeh {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName__\\\\\\\\#fake-id___92k79k_ {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName__-a-b-c-__c0kkJWCl {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName__©__DLosMLOu {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName__♥__HQMfjUZe { background: lime; }\\\\n.localIdentName__©__DLosMLOu { background: lime; }\\\\n.localIdentName__“‘’”__bS0LrUqK { background: lime; }\\\\n.localIdentName__☺☃__F0_yWUDv { background: lime; }\\\\n.localIdentName__⌘⌥__VyeHlHnB { background: lime; }\\\\n.localIdentName__𝄞♪♩♫♬__Qi7pfuLh { background: lime; }\\\\n.localIdentName__💩__CjG3lWNh { background: lime; }\\\\n.localIdentName__\\\\\\\\?__heeATAtr { background: lime; }\\\\n.localIdentName__\\\\\\\\@__YofbbuSi { background: lime; }\\\\n.localIdentName__\\\\\\\\.___29WwWt8 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\)__I_4AeARK { background: lime; }\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\(___rpCeu5p { background: lime; }\\\\n.localIdentName__\\\\\\\\31 23___Oc_nRVO { background: lime; }\\\\n.localIdentName__\\\\\\\\31 a2b3c__mxXeAFeh { background: lime; }\\\\n.localIdentName__\\\\\\\\
__KBVLvvCB { background: lime; }\\\\n.localIdentName__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>__vOWmh2fN { background: lime; }\\\\n.localIdentName__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.___D32kH5S { background: lime; }\\\\n.localIdentName__\\\\\\\\#__LpBEGYch { background: lime; }\\\\n.localIdentName__\\\\\\\\#\\\\\\\\#__wZKDT2QR { background: lime; }\\\\n.localIdentName__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#__oGI7_Chv { background: lime; }\\\\n.localIdentName__\\\\\\\\___myeULb2G { background: lime; }\\\\n.localIdentName__\\\\\\\\{\\\\\\\\}__Mae71ybF { background: lime; }\\\\n.localIdentName__\\\\\\\\#fake\\\\\\\\-id___92k79k_ { background: lime; }\\\\n.localIdentName__foo\\\\\\\\.bar__TpLCT2g4 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A hover__l6Av_vs8 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active__ZGmd9HMc { background: lime; }\\\\n.localIdentName__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]__KPlJewNi { background: lime; }\\\\n.localIdentName__f\\\\\\\\/o\\\\\\\\/o__DIrFdFnB { background: lime; }\\\\n.localIdentName__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o__H1knt1tA { background: lime; }\\\\n.localIdentName__f\\\\\\\\*o\\\\\\\\*o___vAKu2Il { background: lime; }\\\\n.localIdentName__f\\\\\\\\!o\\\\\\\\!o__APY_BKpa { background: lime; }\\\\n.localIdentName__f\\\\\\\\'o\\\\\\\\'o__jTuAkufd { background: lime; }\\\\n.localIdentName__f\\\\\\\\~o\\\\\\\\~o__S4VvFBeH { background: lime; }\\\\n.localIdentName__f\\\\\\\\+o\\\\\\\\+o__AWIsfyEk { background: lime; }\\\\n\\\\n.localIdentName__foo\\\\\\\\/bar__DhIde1Wb {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\\\\\\\\\bar__aeKkgCs_ {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\/bar\\\\\\\\/baz__QFT18bFi {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz__uM3RYQs7 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +___CSS_LOADER_EXPORT___.push([module.id, \\".b--main { }\\\\n\\", \\"\\"]); // Exports ___CSS_LOADER_EXPORT___.locals = { - \\"123\\": \\"localIdentName__123___Oc_nRVO\\", - \\"test\\": \\"localIdentName__test__HovVWrUT\\", - \\"_test\\": \\"localIdentName___test___1mLQ0KY\\", - \\"className\\": \\"localIdentName__className__MMk_yFMI\\", - \\"someId\\": \\"localIdentName__someId__f_mZz_4m\\", - \\"subClass\\": \\"localIdentName__subClass__FYyIWexD\\", - \\"-a0-34a___f\\": \\"localIdentName__-a0-34a___f__r_hifewi\\", - \\"m_x_@\\": \\"localIdentName__m_x_@__yUrnJ_pW\\", - \\"B&W?\\": \\"localIdentName__B&W?__O_Xkei1D\\", - \\":\`(\\": \\"localIdentName__:\`(___rpCeu5p\\", - \\"1a2b3c\\": \\"localIdentName__1a2b3c__mxXeAFeh\\", - \\"#fake-id\\": \\"localIdentName__#fake-id___92k79k_\\", - \\"-a-b-c-\\": \\"localIdentName__-a-b-c-__c0kkJWCl\\", - \\"©\\": \\"localIdentName__©__DLosMLOu\\", - \\"♥\\": \\"localIdentName__♥__HQMfjUZe\\", - \\"“‘’”\\": \\"localIdentName__“‘’”__bS0LrUqK\\", - \\"☺☃\\": \\"localIdentName__☺☃__F0_yWUDv\\", - \\"⌘⌥\\": \\"localIdentName__⌘⌥__VyeHlHnB\\", - \\"𝄞♪♩♫♬\\": \\"localIdentName__𝄞♪♩♫♬__Qi7pfuLh\\", - \\"💩\\": \\"localIdentName__💩__CjG3lWNh\\", - \\"?\\": \\"localIdentName__?__heeATAtr\\", - \\"@\\": \\"localIdentName__@__YofbbuSi\\", - \\".\\": \\"localIdentName__.___29WwWt8\\", - \\":)\\": \\"localIdentName__:)__I_4AeARK\\", - \\"
\\": \\"localIdentName__
__KBVLvvCB\\", - \\"<><<<>><>\\": \\"localIdentName__<><<<>><>__vOWmh2fN\\", - \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.___D32kH5S\\", - \\"#\\": \\"localIdentName__#__LpBEGYch\\", - \\"##\\": \\"localIdentName__##__wZKDT2QR\\", - \\"#.#.#\\": \\"localIdentName__#.#.#__oGI7_Chv\\", - \\"_\\": \\"localIdentName_____myeULb2G\\", - \\"{}\\": \\"localIdentName__{}__Mae71ybF\\", - \\"foo.bar\\": \\"localIdentName__foo.bar__TpLCT2g4\\", - \\":hover\\": \\"localIdentName__:hover__l6Av_vs8\\", - \\":hover:focus:active\\": \\"localIdentName__:hover:focus:active__ZGmd9HMc\\", - \\"[attr=value]\\": \\"localIdentName__[attr=value]__KPlJewNi\\", - \\"f/o/o\\": \\"localIdentName__f/o/o__DIrFdFnB\\", - \\"f\\\\\\\\o\\\\\\\\o\\": \\"localIdentName__f\\\\\\\\o\\\\\\\\o__H1knt1tA\\", - \\"f*o*o\\": \\"localIdentName__f*o*o___vAKu2Il\\", - \\"f!o!o\\": \\"localIdentName__f!o!o__APY_BKpa\\", - \\"f'o'o\\": \\"localIdentName__f'o'o__jTuAkufd\\", - \\"f~o~o\\": \\"localIdentName__f~o~o__S4VvFBeH\\", - \\"f+o+o\\": \\"localIdentName__f+o+o__AWIsfyEk\\", - \\"foo/bar\\": \\"localIdentName__foo/bar__DhIde1Wb\\", - \\"foo\\\\\\\\bar\\": \\"localIdentName__foo\\\\\\\\bar__aeKkgCs_\\", - \\"foo/bar/baz\\": \\"localIdentName__foo/bar/baz__QFT18bFi\\", - \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"localIdentName__foo\\\\\\\\bar\\\\\\\\baz__uM3RYQs7\\" + \\"main\\": \\"b--main \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"red\\"] + \\"\\" }; export default ___CSS_LOADER_EXPORT___; " `; -exports[`"modules" option should work and respect the "localIdentRegExp" option: result 1`] = ` +exports[`"modules" option issue #286: result 1`] = ` Array [ Array [ - "./modules/localIdentName/localIdentName.css", - ".localIdentName__test__HovVWrUT { - background: red; -} + "./modules/issue-286/dep.css", + ".a--red { color: red } +", + "", + ], + Array [ + "./modules/issue-286/source.css", + ".b--main { } +", + "", + ], +] +`; -.localIdentName___test___1mLQ0KY { - background: blue; -} +exports[`"modules" option issue #286: warnings 1`] = `Array []`; -.localIdentName__className__MMk_yFMI { - background: red; -} +exports[`"modules" option issue #636: errors 1`] = `Array []`; -#localIdentName__someId__f_mZz_4m { - background: green; -} +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??ruleSet[1].rules[0].use[0]!../../../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./foo.scss\\"; +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}\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"bar\\": \\"prefix-bar \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"foo\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; -.localIdentName__className__MMk_yFMI .localIdentName__subClass__FYyIWexD { - color: green; -} +exports[`"modules" option issue #636: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[0].use[1]!./modules/issue-636/foo.scss", + ".prefix-foo { + color: red; +}", + "", + ], + Array [ + "./modules/issue-636/source.scss", + ".prefix-bar { +}", + "", + ], +] +`; -#localIdentName__someId__f_mZz_4m .localIdentName__subClass__FYyIWexD { - color: blue; -} +exports[`"modules" option issue #636: warnings 1`] = `Array []`; -.localIdentName__-a0-34a___f__r_hifewi { +exports[`"modules" option issue #861: errors 1`] = `Array []`; + +exports[`"modules" option issue #861: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/@localpackage/color.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/@localpackage/style.css\\"; +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 +___CSS_LOADER_EXPORT___.push([module.id, \\"._Rq0O1z7lIjeE6BUSCKH {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color-grey\\"] + \\";\\\\n margin: 0;\\\\n padding: 0;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"color-grey\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"color-grey\\"] + \\"\\", + \\"copyright\\": \\"_Rq0O1z7lIjeE6BUSCKH \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"type-heading\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #861: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/color.css", + " +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@otherlocalpackage/style.css", + ".TLCIhPNmGBAU6jEqyYnK { + display: flex; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/@localpackage/style.css", + ".SkNH10LOonEsLVyagblX { color: red; + margin: 0; + padding: 0; } - -.localIdentName__m_x_\\\\@__yUrnJ_pW { - margin-left: auto !important; - margin-right: auto !important; +", + "", + ], + Array [ + "./modules/issue-861/resolving-from-node_modules.css", + "._Rq0O1z7lIjeE6BUSCKH { + color: gray; + margin: 0; + padding: 0; } +", + "", + ], +] +`; -.localIdentName__B\\\\&W\\\\?__O_Xkei1D { - margin-left: auto !important; - margin-right: auto !important; -} +exports[`"modules" option issue #861: warnings 1`] = `Array []`; -/* matches elements with class=\\":\`(\\" */ -.localIdentName__\\\\3A \\\\\`\\\\(___rpCeu5p { - color: aqua; -} +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: errors 1`] = `Array []`; -/* matches elements with class=\\"1a2b3c\\" */ -.localIdentName__\\\\31 a2b3c__mxXeAFeh { - color: aliceblue; -} +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___(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 +___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___; +" +`; -/* matches the element with id=\\"#fake-id\\" */ -#localIdentName__\\\\#fake-id___92k79k_ { - color: antiquewhite; +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; } -/* matches the element with id=\\"-a-b-c-\\" */ -#localIdentName__-a-b-c-__c0kkJWCl { - color: azure; +.\\\\--bar-class { + color: red; } -/* matches the element with id=\\"©\\" */ -#localIdentName__©__DLosMLOu { - color: black; +.\\\\--baz-class { + color: red; } -.localIdentName__♥__HQMfjUZe { background: lime; } -.localIdentName__©__DLosMLOu { background: lime; } -.localIdentName__“‘’”__bS0LrUqK { background: lime; } -.localIdentName__☺☃__F0_yWUDv { background: lime; } -.localIdentName__⌘⌥__VyeHlHnB { background: lime; } -.localIdentName__𝄞♪♩♫♬__Qi7pfuLh { background: lime; } -.localIdentName__💩__CjG3lWNh { background: lime; } -.localIdentName__\\\\?__heeATAtr { background: lime; } -.localIdentName__\\\\@__YofbbuSi { background: lime; } -.localIdentName__\\\\.___29WwWt8 { background: lime; } -.localIdentName__\\\\3A \\\\)__I_4AeARK { background: lime; } -.localIdentName__\\\\3A \\\\\`\\\\(___rpCeu5p { background: lime; } -.localIdentName__\\\\31 23___Oc_nRVO { background: lime; } -.localIdentName__\\\\31 a2b3c__mxXeAFeh { background: lime; } -.localIdentName__\\\\
__KBVLvvCB { background: lime; } -.localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>__vOWmh2fN { background: lime; } -.localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.___D32kH5S { background: lime; } -.localIdentName__\\\\#__LpBEGYch { background: lime; } -.localIdentName__\\\\#\\\\#__wZKDT2QR { background: lime; } -.localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\#__oGI7_Chv { background: lime; } -.localIdentName__\\\\___myeULb2G { background: lime; } -.localIdentName__\\\\{\\\\}__Mae71ybF { background: lime; } -.localIdentName__\\\\#fake\\\\-id___92k79k_ { background: lime; } -.localIdentName__foo\\\\.bar__TpLCT2g4 { background: lime; } -.localIdentName__\\\\3A hover__l6Av_vs8 { background: lime; } -.localIdentName__\\\\3A hover\\\\3A focus\\\\3A active__ZGmd9HMc { background: lime; } -.localIdentName__\\\\[attr\\\\=value\\\\]__KPlJewNi { background: lime; } -.localIdentName__f\\\\/o\\\\/o__DIrFdFnB { background: lime; } -.localIdentName__f\\\\\\\\o\\\\\\\\o__H1knt1tA { background: lime; } -.localIdentName__f\\\\*o\\\\*o___vAKu2Il { background: lime; } -.localIdentName__f\\\\!o\\\\!o__APY_BKpa { background: lime; } -.localIdentName__f\\\\'o\\\\'o__jTuAkufd { background: lime; } -.localIdentName__f\\\\~o\\\\~o__S4VvFBeH { background: lime; } -.localIdentName__f\\\\+o\\\\+o__AWIsfyEk { background: lime; } - -.localIdentName__foo\\\\/bar__DhIde1Wb { - background: hotpink; +.fooBaz-class-continuation { + color: red; } -.localIdentName__foo\\\\\\\\bar__aeKkgCs_ { - background: hotpink; +.some.class { + color: red; } +", + "", + ], +] +`; -.localIdentName__foo\\\\/bar\\\\/baz__QFT18bFi { - background: hotpink; -} +exports[`"modules" option issue #966 - values in selectors aren't escaped properly: warnings 1`] = `Array []`; -.localIdentName__foo\\\\\\\\bar\\\\\\\\baz__uM3RYQs7 { - background: hotpink; +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".button-hey {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"button\\": \\"button-hey\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #966: result 1`] = ` +Array [ + Array [ + "./modules/issue-966/button.css", + ".button-hey { + color: red; } ", "", @@ -185,4 +218,15227 @@ Array [ ] `; -exports[`"modules" option should work and respect the "localIdentRegExp" option: warnings 1`] = `Array []`; +exports[`"modules" option issue #966: warnings 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", + \\"foo/bar\\": \\"modules-issue-967-path-placeholder__foo/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\", + \\"[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]\\": \\"modules-issue-967-path-placeholder__[/?<>\\\\\\\\\\\\\\\\:*|\\\\\\":]__--sep---sep---sep---sep----sep---sep---sep---sep---sep--\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #967: result 1`] = ` +Array [ + Array [ + "./modules/issue-967/path-placeholder.css", + ".modules-issue-967-path-placeholder__foo__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: red; +} + +.modules-issue-967-path-placeholder__foo\\\\/bar__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: blue; +} + +.modules-issue-967-path-placeholder__\\\\[\\\\/\\\\?\\\\<\\\\>\\\\\\\\\\\\\\\\\\\\3A \\\\*\\\\|\\\\\\"\\\\3A \\\\]__--sep---sep---sep---sep----sep---sep---sep---sep---sep-- { + color: yellow; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #967: warnings 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".file-with-many-dots-in-name_a_r_P2_ {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"a\\": \\"file-with-many-dots-in-name_a_r_P2_\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #980: result 1`] = ` +Array [ + Array [ + "./modules/issue-980/file.with.many.dots.in.name.css", + ".file-with-many-dots-in-name_a_r_P2_ { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #980: warnings 1`] = `Array []`; + +exports[`"modules" option issue #995 #2: errors 1`] = `Array []`; + +exports[`"modules" option issue #995 #2: 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, \\"/* 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.\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.\\\\\\\\ .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.\\\\\\\\ .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .a .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\ .\\\\\\\\ .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\ndiv:not(.\\\\\\\\ ) {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\ .b {\\\\n color: red;\\\\n}\\\\n\\\\n.b .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\ > .\\\\\\\\ > .\\\\\\\\ {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"a\\": \\" \\", + \\"b\\": \\" \\", + \\"c\\": \\" \\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #995 #2: result 1`] = ` +Array [ + Array [ + "./modules/issue-995/issue-995.css", + "/* class=\\"😀\\" */ +.a { + color: red; +} + +/* class=\\"😀 😓\\" */ +.a.b { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.a .b { + color: red; +} + +/* class=\\"😀\\" */ +.😀 { + color: red; +} + +/* class=\\"😀 😓\\" */ +.😀.😓 { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.😀 .😓 { + color: red; +} + +/* class=\\"😀\\" */ +.\\\\1F600 { + color: red; +} + +/* class=\\"😀 😓\\" */ +.\\\\1F600.\\\\1F613 { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.\\\\1F600 .\\\\1F613 { + color: red; +} + +/* Local */ + +/* class=\\"😀\\" */ +.\\\\ { + color: red; +} + +/* class=\\"😀 😓\\" */ +.\\\\ .\\\\ { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.\\\\ .\\\\ { + color: red; +} + +.\\\\1F600 .a .\\\\1F600 { + color: red; +} + +.\\\\ .\\\\ .\\\\ { + color: red; +} + +div:not(.\\\\ ) { + color: red; +} + +.\\\\ .b { + color: red; +} + +.b .\\\\ { + color: red; +} + +.\\\\1F613 .\\\\ { + color: red; +} + +.\\\\1F613 .\\\\ { + color: red; +} + +.\\\\ > .\\\\ > .\\\\ { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #995 #2: warnings 1`] = `Array []`; + +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___(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.😀 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀 😓\\\\\\" */\\\\n.😀.😀 {\\\\n color: red;\\\\n}\\\\n\\\\n/* class=\\\\\\"😀\\\\\\" > class=\\\\\\"😓\\\\\\" */\\\\n.😀 .😀 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F600 .a .\\\\\\\\1F600 {\\\\n color: red;\\\\n}\\\\n\\\\n.😀 .😀 .😀 {\\\\n color: red;\\\\n}\\\\n\\\\ndiv:not(.😀) {\\\\n color: red;\\\\n}\\\\n\\\\n.😀 .b {\\\\n color: red;\\\\n}\\\\n\\\\n.b .😀 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .😀 {\\\\n color: red;\\\\n}\\\\n\\\\n.\\\\\\\\1F613 .😀 {\\\\n color: red;\\\\n}\\\\n\\\\n.😀 > .😀 > .😀 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"a\\": \\"😀\\", + \\"b\\": \\"😀\\", + \\"c\\": \\"😀\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #995: result 1`] = ` +Array [ + Array [ + "./modules/issue-995/issue-995.css", + "/* class=\\"😀\\" */ +.a { + color: red; +} + +/* class=\\"😀 😓\\" */ +.a.b { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.a .b { + color: red; +} + +/* class=\\"😀\\" */ +.😀 { + color: red; +} + +/* class=\\"😀 😓\\" */ +.😀.😓 { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.😀 .😓 { + color: red; +} + +/* class=\\"😀\\" */ +.\\\\1F600 { + color: red; +} + +/* class=\\"😀 😓\\" */ +.\\\\1F600.\\\\1F613 { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.\\\\1F600 .\\\\1F613 { + color: red; +} + +/* Local */ + +/* class=\\"😀\\" */ +.😀 { + color: red; +} + +/* class=\\"😀 😓\\" */ +.😀.😀 { + color: red; +} + +/* class=\\"😀\\" > class=\\"😓\\" */ +.😀 .😀 { + color: red; +} + +.\\\\1F600 .a .\\\\1F600 { + color: red; +} + +.😀 .😀 .😀 { + color: red; +} + +div:not(.😀) { + color: red; +} + +.😀 .b { + color: red; +} + +.b .😀 { + color: red; +} + +.\\\\1F613 .😀 { + color: red; +} + +.\\\\1F613 .😀 { + color: red; +} + +.😀 > .😀 > .😀 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option issue #995: warnings 1`] = `Array []`; + +exports[`"modules" option issue #1063 throw error: errors 1`] = ` +Array [ + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", + "ModuleError: Module Error (from \`replaced original path\`): +options.mode must be either \\"global\\", \\"local\\" or \\"pure\\" (default \\"local\\")", +] +`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = {}; +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___(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 +___CSS_LOADER_EXPORT___.locals = {}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #1063 throw error: result 1`] = ` +".classNameLocalFile { + color: green; +} + +:global(.otherClassLocalFile) { + color: blue; +} +.classNameGlobalFile { + color: black; +} + +:local(.otherClassGlobalFile) { + color: coral; +} +.foo :local(.bar) { + color: red; +} +" +`; + +exports[`"modules" option issue #1063 throw error: warnings 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".classNameGlobalFile {\\\\n color: black;\\\\n}\\\\n\\\\n.azAph3XLH88GksVjk8cC {\\\\n color: coral;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"otherClassGlobalFile\\": \\"azAph3XLH88GksVjk8cC\\" +}; +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eD4iYYzWkg1SMocukCiy {\\\\n color: green;\\\\n}\\\\n\\\\n.otherClassLocalFile {\\\\n color: blue;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"classNameLocalFile\\": \\"eD4iYYzWkg1SMocukCiy\\" +}; +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".iDZaaUTJeJvPbY7p2wkd .tmwf4oxmnwCFXhEt1KN2 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"iDZaaUTJeJvPbY7p2wkd\\", + \\"bar\\": \\"tmwf4oxmnwCFXhEt1KN2\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option issue #1063: result 1`] = ` +".eD4iYYzWkg1SMocukCiy { + color: green; +} + +.otherClassLocalFile { + color: blue; +} +.classNameGlobalFile { + color: black; +} + +.azAph3XLH88GksVjk8cC { + color: coral; +} +.iDZaaUTJeJvPbY7p2wkd .tmwf4oxmnwCFXhEt1KN2 { + color: red; +} +" +`; + +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___(function(i){return i[1]}); +// 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`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.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, \\".iaT_yHSHbXvZ5bn_XAc8 {\\\\n color: red;\\\\n}\\\\n\\\\n.XPQb1x05Y9orvE4nAddn {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"simple-foo\\": \\"iaT_yHSHbXvZ5bn_XAc8 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-simple\\"] + \\"\\", + \\"simple-bar\\": \\"XPQb1x05Y9orvE4nAddn \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-simple\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should avoid unnecessary "require": result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".kN0Z3n7LgkVJQeFmVucy { + display: block; +} +", + "", + ], + Array [ + "./modules/composes/composes-duplicate.css", + ".iaT_yHSHbXvZ5bn_XAc8 { + color: red; +} + +.XPQb1x05Y9orvE4nAddn { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should avoid unnecessary "require": warnings 1`] = `Array []`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): errors 1`] = `Array []`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./buttons/primary-button.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./buttons/secondary-button.css\\"; +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 +___CSS_LOADER_EXPORT___.push([module.id, \\".UItqovkEenXCSWptR5y0\\\\n{\\\\n}\\\\n\\\\n.L_727ZNXQ6dQxYzTWW4b\\\\n{\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"nextButton\\": \\"UItqovkEenXCSWptR5y0 \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"primaryButton\\"] + \\"\\", + \\"backButton\\": \\"L_727ZNXQ6dQxYzTWW4b \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"secondaryButton\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should dedupe same modules in one module (issue #1037): result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/button.css", + ".qcMciD8BjxqLJgUwccw4 +{ + border:none; + padding:7px 15px; + cursor:pointer; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/primary-button.css", + ".qCGDbDqSSSCngPu2Nvde +{ + background-color:blue; + color:white; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/dedupe/buttons/secondary-button.css", + ".evwrDgQ2syAGx9deAdni +{ + background-color:#555; + color:white; +} +", + "", + ], + Array [ + "./modules/dedupe/source.css", + ".UItqovkEenXCSWptR5y0 +{ +} + +.L_727ZNXQ6dQxYzTWW4b +{ +} +", + "", + ], +] +`; + +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 []`; + +exports[`"modules" option should keep order: errors 1`] = `Array []`; + +exports[`"modules" option should keep order: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-1.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./order-2.css\\"; +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 +___CSS_LOADER_EXPORT___.push([module.id, \\".tEW_9lOUn3aR_CAi6pAq {\\\\n display: block;\\\\n}\\\\n\\\\n.MHpBCL6JMt5XXKlnVXWB {\\\\n display: inline;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"simple\\": \\"tEW_9lOUn3aR_CAi6pAq \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"order-2\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1-1\\"] + \\" \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"order-2-2\\"] + \\"\\", + \\"simple-other\\": \\"MHpBCL6JMt5XXKlnVXWB \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"order-1\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should keep order: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/order/order-1.css", + ".Kng8a4xuagSk52F7HHiv { + color: red; +} + +.g_9e5FMJ6hNnWnG4pchD { + color: aliceblue; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/order/order-2.css", + ".hXAVHIBuCAsP23LT09BG { + color: blue; +} + +.elx_Pl6d7tfx8k8SRYqJ { + color: azure; +} +", + "", + ], + Array [ + "./modules/order/index.css", + ".tEW_9lOUn3aR_CAi6pAq { + display: block; +} + +.MHpBCL6JMt5XXKlnVXWB { + display: inline; +} +", + "", + ], +] +`; + +exports[`"modules" option should keep order: warnings 1`] = `Array []`; + +exports[`"modules" option should resolve absolute path in composes: errors 1`] = `Array []`; + +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??ruleSet[1].rules[0].use[0]!./imported-simple.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, \\"._aq2pl2isccAdkps_4Mo { color: red; }\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"simple\\": \\"_aq2pl2isccAdkps_4Mo \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-simple\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should resolve absolute path in composes: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".kN0Z3n7LgkVJQeFmVucy { + display: block; +} +", + "", + ], + Array [ + "./modules/composes/composes-absolute.css", + "._aq2pl2isccAdkps_4Mo { color: red; }", + "", + ], +] +`; + +exports[`"modules" option should resolve absolute path in composes: warnings 1`] = `Array []`; + +exports[`"modules" option should resolve package from node_modules with and without tilde: errors 1`] = `Array []`; + +exports[`"modules" option should resolve package from node_modules with and without tilde: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../node_modules/test/index.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, \\".bT1qXSJ55d3ZxVl6lr5q {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"foo\\"] + \\";\\\\n background: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"bar\\"] + \\";\\\\n}\\\\n\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"foo\\"] + \\"\\", + \\"bar\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"bar\\"] + \\"\\", + \\"className\\": \\"bT1qXSJ55d3ZxVl6lr5q\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should resolve package from node_modules with and without tilde: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/node_modules/test/index.css", + " +", + "", + ], + Array [ + "./modules/issue-914/source.css", + ".bT1qXSJ55d3ZxVl6lr5q { + color: red; + background: green; +} + +", + "", + ], +] +`; + +exports[`"modules" option should resolve package from node_modules with and without tilde: warnings 1`] = `Array []`; + +exports[`"modules" option should should work with two leading hyphens: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"_--123\\", + \\"test\\": \\"_--test\\", + \\"_test\\": \\"_--_test\\", + \\"className\\": \\"_--className\\", + \\"someId\\": \\"_--someId\\", + \\"subClass\\": \\"_--subClass\\", + \\"-a0-34a___f\\": \\"_---a0-34a___f\\", + \\"m_x_@\\": \\"_--m_x_@\\", + \\"B&W?\\": \\"_--B&W?\\", + \\":\`(\\": \\"_--:\`(\\", + \\"1a2b3c\\": \\"_--1a2b3c\\", + \\"#fake-id\\": \\"_--#fake-id\\", + \\"-a-b-c-\\": \\"_---a-b-c-\\", + \\"©\\": \\"_--©\\", + \\"♥\\": \\"_--♥\\", + \\"“‘’”\\": \\"_--“‘’”\\", + \\"☺☃\\": \\"_--☺☃\\", + \\"⌘⌥\\": \\"_--⌘⌥\\", + \\"𝄞♪♩♫♬\\": \\"_--𝄞♪♩♫♬\\", + \\"💩\\": \\"_--💩\\", + \\"?\\": \\"_--?\\", + \\"@\\": \\"_--@\\", + \\".\\": \\"_--.\\", + \\":)\\": \\"_--:)\\", + \\"
\\": \\"_--
\\", + \\"<><<<>><>\\": \\"_--<><<<>><>\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"_--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", + \\"#\\": \\"_--#\\", + \\"##\\": \\"_--##\\", + \\"#.#.#\\": \\"_--#.#.#\\", + \\"_\\": \\"_--_\\", + \\"{}\\": \\"_--{}\\", + \\"foo.bar\\": \\"_--foo.bar\\", + \\":hover\\": \\"_--:hover\\", + \\":hover:focus:active\\": \\"_--:hover:focus:active\\", + \\"[attr=value]\\": \\"_--[attr=value]\\", + \\"f/o/o\\": \\"_--f/o/o\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"_--f\\\\\\\\o\\\\\\\\o\\", + \\"f*o*o\\": \\"_--f*o*o\\", + \\"f!o!o\\": \\"_--f!o!o\\", + \\"f'o'o\\": \\"_--f'o'o\\", + \\"f~o~o\\": \\"_--f~o~o\\", + \\"f+o+o\\": \\"_--f+o+o\\", + \\"foo/bar\\": \\"_--foo/bar\\", + \\"foo\\\\\\\\bar\\": \\"_--foo\\\\\\\\bar\\", + \\"foo/bar/baz\\": \\"_--foo/bar/baz\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"_--foo\\\\\\\\bar\\\\\\\\baz\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should should work with two leading hyphens: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + "._--test { + background: red; +} + +._--_test { + background: blue; +} + +._--className { + background: red; +} + +#_--someId { + background: green; +} + +._--className ._--subClass { + color: green; +} + +#_--someId ._--subClass { + color: blue; +} + +._---a0-34a___f { + color: red; +} + +._--m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +._--B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +._--\\\\3A \\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +._--\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#_--\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#_---a-b-c- { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#_--© { + color: black; +} + +._--♥ { background: lime; } +._--© { background: lime; } +._--“‘’” { background: lime; } +._--☺☃ { background: lime; } +._--⌘⌥ { background: lime; } +._--𝄞♪♩♫♬ { background: lime; } +._--💩 { background: lime; } +._--\\\\? { background: lime; } +._--\\\\@ { background: lime; } +._--\\\\. { background: lime; } +._--\\\\3A \\\\) { background: lime; } +._--\\\\3A \\\\\`\\\\( { background: lime; } +._--\\\\31 23 { background: lime; } +._--\\\\31 a2b3c { background: lime; } +._--\\\\
{ background: lime; } +._--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +._--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +._--\\\\# { background: lime; } +._--\\\\#\\\\# { background: lime; } +._--\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +._--\\\\_ { background: lime; } +._--\\\\{\\\\} { background: lime; } +._--\\\\#fake\\\\-id { background: lime; } +._--foo\\\\.bar { background: lime; } +._--\\\\3A hover { background: lime; } +._--\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +._--\\\\[attr\\\\=value\\\\] { background: lime; } +._--f\\\\/o\\\\/o { background: lime; } +._--f\\\\\\\\o\\\\\\\\o { background: lime; } +._--f\\\\*o\\\\*o { background: lime; } +._--f\\\\!o\\\\!o { background: lime; } +._--f\\\\'o\\\\'o { background: lime; } +._--f\\\\~o\\\\~o { background: lime; } +._--f\\\\+o\\\\+o { background: lime; } + +._--foo\\\\/bar { + background: hotpink; +} + +._--foo\\\\\\\\bar { + background: hotpink; +} + +._--foo\\\\/bar\\\\/baz { + background: hotpink; +} + +._--foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should should work with two leading hyphens: warnings 1`] = `Array []`; + +exports[`"modules" option should should work with two leading underscore: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"__123\\", + \\"test\\": \\"__test\\", + \\"_test\\": \\"___test\\", + \\"className\\": \\"__className\\", + \\"someId\\": \\"__someId\\", + \\"subClass\\": \\"__subClass\\", + \\"-a0-34a___f\\": \\"__-a0-34a___f\\", + \\"m_x_@\\": \\"__m_x_@\\", + \\"B&W?\\": \\"__B&W?\\", + \\":\`(\\": \\"__:\`(\\", + \\"1a2b3c\\": \\"__1a2b3c\\", + \\"#fake-id\\": \\"__#fake-id\\", + \\"-a-b-c-\\": \\"__-a-b-c-\\", + \\"©\\": \\"__©\\", + \\"♥\\": \\"__♥\\", + \\"“‘’”\\": \\"__“‘’”\\", + \\"☺☃\\": \\"__☺☃\\", + \\"⌘⌥\\": \\"__⌘⌥\\", + \\"𝄞♪♩♫♬\\": \\"__𝄞♪♩♫♬\\", + \\"💩\\": \\"__💩\\", + \\"?\\": \\"__?\\", + \\"@\\": \\"__@\\", + \\".\\": \\"__.\\", + \\":)\\": \\"__:)\\", + \\"
\\": \\"__
\\", + \\"<><<<>><>\\": \\"__<><<<>><>\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", + \\"#\\": \\"__#\\", + \\"##\\": \\"__##\\", + \\"#.#.#\\": \\"__#.#.#\\", + \\"_\\": \\"___\\", + \\"{}\\": \\"__{}\\", + \\"foo.bar\\": \\"__foo.bar\\", + \\":hover\\": \\"__:hover\\", + \\":hover:focus:active\\": \\"__:hover:focus:active\\", + \\"[attr=value]\\": \\"__[attr=value]\\", + \\"f/o/o\\": \\"__f/o/o\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"__f\\\\\\\\o\\\\\\\\o\\", + \\"f*o*o\\": \\"__f*o*o\\", + \\"f!o!o\\": \\"__f!o!o\\", + \\"f'o'o\\": \\"__f'o'o\\", + \\"f~o~o\\": \\"__f~o~o\\", + \\"f+o+o\\": \\"__f+o+o\\", + \\"foo/bar\\": \\"__foo/bar\\", + \\"foo\\\\\\\\bar\\": \\"__foo\\\\\\\\bar\\", + \\"foo/bar/baz\\": \\"__foo/bar/baz\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"__foo\\\\\\\\bar\\\\\\\\baz\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should should work with two leading underscore: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".__test { + background: red; +} + +.___test { + background: blue; +} + +.__className { + background: red; +} + +#__someId { + background: green; +} + +.__className .__subClass { + color: green; +} + +#__someId .__subClass { + color: blue; +} + +.__-a0-34a___f { + color: red; +} + +.__m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +.__B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.__\\\\3A \\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.__\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#__\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#__-a-b-c- { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#__© { + color: black; +} + +.__♥ { background: lime; } +.__© { background: lime; } +.__“‘’” { background: lime; } +.__☺☃ { background: lime; } +.__⌘⌥ { background: lime; } +.__𝄞♪♩♫♬ { background: lime; } +.__💩 { background: lime; } +.__\\\\? { background: lime; } +.__\\\\@ { background: lime; } +.__\\\\. { background: lime; } +.__\\\\3A \\\\) { background: lime; } +.__\\\\3A \\\\\`\\\\( { background: lime; } +.__\\\\31 23 { background: lime; } +.__\\\\31 a2b3c { background: lime; } +.__\\\\
{ background: lime; } +.__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +.__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +.__\\\\# { background: lime; } +.__\\\\#\\\\# { background: lime; } +.__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +.__\\\\_ { background: lime; } +.__\\\\{\\\\} { background: lime; } +.__\\\\#fake\\\\-id { background: lime; } +.__foo\\\\.bar { background: lime; } +.__\\\\3A hover { background: lime; } +.__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +.__\\\\[attr\\\\=value\\\\] { background: lime; } +.__f\\\\/o\\\\/o { background: lime; } +.__f\\\\\\\\o\\\\\\\\o { background: lime; } +.__f\\\\*o\\\\*o { background: lime; } +.__f\\\\!o\\\\!o { background: lime; } +.__f\\\\'o\\\\'o { background: lime; } +.__f\\\\~o\\\\~o { background: lime; } +.__f\\\\+o\\\\+o { background: lime; } + +.__foo\\\\/bar { + background: hotpink; +} + +.__foo\\\\\\\\bar { + background: hotpink; +} + +.__foo\\\\/bar\\\\/baz { + background: hotpink; +} + +.__foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should should work with two leading underscore: warnings 1`] = `Array []`; + +exports[`"modules" option should support resolving in composes preprocessor files with extensions: errors 1`] = `Array []`; + +exports[`"modules" option should support resolving in composes preprocessor files with extensions: module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./less-file.less\\"; +import ___CSS_LOADER_ICSS_IMPORT_2___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./scss-file.scss\\"; +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); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".globalClassName {\\\\n color: orange;\\\\n}\\\\n\\\\n.oZUd__PGOCMbFdczu1Af {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n.__bC4TY9gV0eZwxBOclt {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-foo\\"] + \\";\\\\n}\\\\n\\\\n.fI2L9lJeP_2V5ffULLM9 {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_2___.locals[\\"v-bar\\"] + \\";\\\\n}\\\\n\\\\n.epUpvnGmhPIHe1T3i_a_ {\\\\n background: #000;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\"\\", + \\"v-foo\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-foo\\"] + \\"\\", + \\"v-bar\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_2___.locals[\\"v-bar\\"] + \\"\\", + \\"globalClassName\\": \\"globalClassName\\", + \\"ghi\\": \\"oZUd__PGOCMbFdczu1Af\\", + \\"class\\": \\"__bC4TY9gV0eZwxBOclt \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"lessClass\\"] + \\"\\", + \\"other\\": \\"fI2L9lJeP_2V5ffULLM9 \\" + ___CSS_LOADER_ICSS_IMPORT_2___.locals[\\"scssClass\\"] + \\"\\", + \\"otherClassName\\": \\"epUpvnGmhPIHe1T3i_a_ globalClassName\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should support resolving in composes preprocessor files with extensions: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/values.css", + " +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/less-file.less", + ".v3uvuSvcEE6pDlvJMjHg { + padding: 5px; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/scss-file.scss", + "$color: red; + +.pqdLCWFRW03AVy9uJoZX { + color: $color; + padding: 15px; +} +", + "", + ], + Array [ + "./modules/composes/composes-preprocessors.css", + ".globalClassName { + color: orange; +} + +.oZUd__PGOCMbFdczu1Af { + color: red; +} + +.__bC4TY9gV0eZwxBOclt { + color: green; +} + +.fI2L9lJeP_2V5ffULLM9 { + color: white; +} + +.epUpvnGmhPIHe1T3i_a_ { + background: #000; +} +", + "", + ], +] +`; + +exports[`"modules" option should support resolving in composes preprocessor files with extensions: warnings 1`] = `Array []`; + +exports[`"modules" option should support resolving in composes: errors 1`] = `Array []`; + +exports[`"modules" option should support resolving 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??ruleSet[1].rules[0].use[0]!./values.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_2___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_3___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_4___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_5___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_6___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_7___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss\\"; +import ___CSS_LOADER_AT_RULE_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./test-other.css\\"; +import ___CSS_LOADER_GET_URL_IMPORT___ from \\"../../../../src/runtime/getUrl.js\\"; +var ___CSS_LOADER_URL_IMPORT_0___ = new URL(\\"../../url/img.png\\", import.meta.url); +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); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_2___, \\"\\", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_3___, \\"\\", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_4___, \\"\\", true); +___CSS_LOADER_EXPORT___.i(___CSS_LOADER_ICSS_IMPORT_5___, \\"\\", true); +___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, \\".JrMovmNxiARceckPi1Bb {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n}\\\\n\\\\n._xZYrLKW96sXm2aniadM {\\\\n color: blue;\\\\n}\\\\n\\\\n.cXIvIhl_Be3NhMPQoE0z {\\\\n display: block;\\\\n}\\\\n\\\\n.wyIZMXPNE2D7zb9VCrHe {\\\\n width: \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\";\\\\n}\\\\n\\\\n.as9P70j15m_wICZ94IJx {\\\\n color: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.zAepmy_SqloGdZJJmXNm {\\\\n prop: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\";\\\\n duplicate: \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\";\\\\n}\\\\n\\\\n.n_zXxs10wzKREXQdQrw9 {\\\\n color: red;\\\\n}\\\\n\\\\n._u4nolEyHSlixSSx7uXN {\\\\n color: yellow;\\\\n}\\\\n\\\\n._EXVuUxUggUhA1UEBgZk {\\\\n color: gray;\\\\n}\\\\n\\\\n.o2wK31qqosVXAPAdGIxD {\\\\n color: gray;\\\\n}\\\\n\\\\n._Y2QYoxyUknZNv0u6wN3 {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n.wmZh7D9g5PjWvMpojahG {\\\\n color: gainsboro;\\\\n}\\\\n\\\\n.uOEsMAq4YIv8PUUlnnhI {\\\\n color: #BF4040;\\\\n}\\\\n\\\\n._r6IpGhEbXgocCCXZgDs {\\\\n color: black;\\\\n}\\\\n\\\\n@media (min-width: 960px) {\\\\n .IsCkQQmCqI3_HSI_H_hT {\\\\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 .IsCkQQmCqI3_HSI_H_hT {\\\\n padding: 20px 20px;\\\\n }\\\\n}\\\\n\\\\n.lNjqoQe7B3jKXIowFbpE {\\\\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.ABtimDL9fvKNWc1BjB59 {\\\\n background: url(\\" + ___CSS_LOADER_URL_REPLACEMENT_0___ + \\");\\\\n}\\\\n\\\\n.K7O_z8z4VzoG6Ru_jb_T {\\\\n background: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-def\\"] + \\"\\", + \\"v-other\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"v-other\\"] + \\"\\", + \\"s-white\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"s-white\\"] + \\"\\", + \\"m-small\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"m-small\\"] + \\"\\", + \\"v-something\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"v-something\\"] + \\"\\", + \\"v-foo\\": \\"blue\\", + \\"v-bar\\": \\"block\\", + \\"v-primary\\": \\"#BF4040\\", + \\"s-black\\": \\"black-selector\\", + \\"m-large\\": \\"(min-width: 960px)\\", + \\"v-ident\\": \\"validIdent\\", + \\"v-pre-defined-ident\\": \\"left\\", + \\"v-string\\": \\"'content'\\", + \\"v-string-1\\": \\"''\\", + \\"v-url\\": \\"url(https://www.exammple.com/images/my-background.png)\\", + \\"v-url-1\\": \\"url('https://www.exammple.com/images/my-background.png')\\", + \\"v-url-2\\": \\"url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\")\\", + \\"v-integer\\": \\"100\\", + \\"v-integer-1\\": \\"-100\\", + \\"v-integer-2\\": \\"+100\\", + \\"v-number\\": \\".60\\", + \\"v-number-1\\": \\"-456.8\\", + \\"v-number-2\\": \\"-3.4e-2\\", + \\"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\\": \\"JrMovmNxiARceckPi1Bb\\", + \\"my-class\\": \\"_xZYrLKW96sXm2aniadM\\", + \\"other\\": \\"cXIvIhl_Be3NhMPQoE0z\\", + \\"other-other\\": \\"wyIZMXPNE2D7zb9VCrHe\\", + \\"green\\": \\"as9P70j15m_wICZ94IJx\\", + \\"foo\\": \\"zAepmy_SqloGdZJJmXNm\\", + \\"simple\\": \\"n_zXxs10wzKREXQdQrw9 \\" + ___CSS_LOADER_ICSS_IMPORT_2___.locals[\\"imported-simple\\"] + \\"\\", + \\"relative\\": \\"_u4nolEyHSlixSSx7uXN \\" + ___CSS_LOADER_ICSS_IMPORT_3___.locals[\\"imported-relative\\"] + \\"\\", + \\"top-relative\\": \\"_EXVuUxUggUhA1UEBgZk \\" + ___CSS_LOADER_ICSS_IMPORT_4___.locals[\\"imported-relative\\"] + \\"\\", + \\"my-module\\": \\"o2wK31qqosVXAPAdGIxD \\" + ___CSS_LOADER_ICSS_IMPORT_5___.locals[\\"imported-module\\"] + \\"\\", + \\"alias\\": \\"_Y2QYoxyUknZNv0u6wN3 \\" + ___CSS_LOADER_ICSS_IMPORT_6___.locals[\\"imported-alias\\"] + \\"\\", + \\"alias-duplicate\\": \\"wmZh7D9g5PjWvMpojahG \\" + ___CSS_LOADER_ICSS_IMPORT_6___.locals[\\"imported-alias\\"] + \\"\\", + \\"primary-selector\\": \\"uOEsMAq4YIv8PUUlnnhI\\", + \\"black-selector\\": \\"_r6IpGhEbXgocCCXZgDs\\", + \\"header\\": \\"IsCkQQmCqI3_HSI_H_hT\\", + \\"foobarbaz\\": \\"lNjqoQe7B3jKXIowFbpE\\", + \\"url\\": \\"ABtimDL9fvKNWc1BjB59\\", + \\"main\\": \\"K7O_z8z4VzoG6Ru_jb_T \\" + ___CSS_LOADER_ICSS_IMPORT_7___.locals[\\"scssClass\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should support resolving in composes: result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/test-other.css", + ".POCPJA_cwD0IJvbL8R4q { + d: d; +} +", + "(min-width: 100px)", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/values.css", + " +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/something.css", + " +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/imported-simple.css", + ".kN0Z3n7LgkVJQeFmVucy { + display: block; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/relative.css", + ".HlqmBJrtIvJ3Gzgbut_w { + display: inline; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/top-relative.css", + ".MzX17bUYYh7fmdKVXQ9p { + display: flex; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/issue-861/node_modules/package/style.css", + ".ONhOxkn21jORUJmheiwE { + display: inline-block; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/composes/alias.css", + "._4Zj8x54IrWF75cUaGyT { + display: table; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!../../node_modules/sass-loader/dist/cjs.js!./modules/composes/scss-file.scss", + ".pqdLCWFRW03AVy9uJoZX { + color: red; + padding: 15px; +}", + "", + ], + Array [ + "./modules/composes/composes.css", + ".JrMovmNxiARceckPi1Bb { + color: red; +} + +._xZYrLKW96sXm2aniadM { + color: blue; +} + +.cXIvIhl_Be3NhMPQoE0z { + display: block; +} + +.wyIZMXPNE2D7zb9VCrHe { + width: 2112moon; +} + +.as9P70j15m_wICZ94IJx { + color: green; +} + +.zAepmy_SqloGdZJJmXNm { + prop: red; + duplicate: green; +} + +.n_zXxs10wzKREXQdQrw9 { + color: red; +} + +._u4nolEyHSlixSSx7uXN { + color: yellow; +} + +._EXVuUxUggUhA1UEBgZk { + color: gray; +} + +.o2wK31qqosVXAPAdGIxD { + color: gray; +} + +._Y2QYoxyUknZNv0u6wN3 { + color: gainsboro; +} + +.wmZh7D9g5PjWvMpojahG { + color: gainsboro; +} + +.uOEsMAq4YIv8PUUlnnhI { + color: #BF4040; +} + +._r6IpGhEbXgocCCXZgDs { + color: black; +} + +@media (min-width: 960px) { + .IsCkQQmCqI3_HSI_H_hT { + padding: 0 20px; + } +} + +.white { + color: white; +} + +@media (min-width: 320px) { + .IsCkQQmCqI3_HSI_H_hT { + padding: 20px 20px; + } +} + +.lNjqoQe7B3jKXIowFbpE { + v-ident: validIdent; + v-pre-defined-ident: left; + v-string: 'content'; + v-string-1: ''; + v-url: url(https://www.exammple.com/images/my-background.png); + v-url-1: url('https://www.exammple.com/images/my-background.png'); + v-url-2: url(\\"https://www.exammple.com/images/my-background.png\\"); + v-integer: 100; + v-integer-1: -100; + v-integer-2: +100; + v-number: .60; + v-number-1: -456.8; + v-number-2: -3.4e-2; + v-dimension: 12px; + v-percentage: 100%; + v-hex: #fff; + v-comment: /* comment */ 10px /* comment */; + v-function: rgb(0,0,0); + v-unicode-range: U+0025-00FF; + mutliple: #fff .60 100%; +} + + +a { + content: 'content'; +} + +@supports (content: 'content') { + a { + content: 'content'; + } +} + +[class~='content'] { + color:green; +} + +.ABtimDL9fvKNWc1BjB59 { + background: url(replaced_file_protocol_/webpack/public/path/img.png); +} + +.K7O_z8z4VzoG6Ru_jb_T { + background: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should support resolving in composes: warnings 1`] = `Array []`; + +exports[`"modules" option should throw an error on unresolved import: errors 1`] = ` +Array [ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: Can't resolve './unresolved.css' in '/test/fixtures/modules/unresolved'", +] +`; + +exports[`"modules" option should throw an error on unresolved import: warnings 1`] = `Array []`; + +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): errors 1`] = ` +Array [ + "ModuleParseError: Module parse failed: Unexpected keyword 'class' (7:11) +File was processed with these loaders:", +] +`; + +exports[`"modules" option should throw an error when class has unsupported name (JavaScript reserved words): warnings 1`] = `Array []`; + +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\\" or \\"dashesOnly\\"", +] +`; + +exports[`"modules" option should throw an error when the "namedExport" is enabled and the "exportLocalsConvention" options has not "camelCaseOnly" value: warnings 1`] = `Array []`; + +exports[`"modules" option should throw an error when the "namedExport" option is "true", but the "esModule" is "false": errors 1`] = ` +Array [ + "ModuleBuildError: Module build failed (from \`replaced original path\`): +Error: The \\"modules.namedExport\\" option requires the \\"esModules\\" option to be enabled", +] +`; + +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`] = ` +"// 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, \\".test--HovV {\\\\n background: red;\\\\n}\\\\n\\\\n._test--_1mL {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--MMk_ {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--f_mZ {\\\\n background: green;\\\\n}\\\\n\\\\n.className--MMk_ .subClass--FYyI {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--f_mZ .subClass--FYyI {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--r_hi {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--yUrn {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--O_Xk {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_rpC {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--mxXe {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--_92k {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---c0kk {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--DLos {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--HQMf { background: lime; }\\\\n.©--DLos { background: lime; }\\\\n.“‘’”--bS0L { background: lime; }\\\\n.☺☃--F0_y { background: lime; }\\\\n.⌘⌥--VyeH { background: lime; }\\\\n.𝄞♪♩♫♬--Qi7p { background: lime; }\\\\n.💩--CjG3 { background: lime; }\\\\n.\\\\\\\\?--heeA { background: lime; }\\\\n.\\\\\\\\@--Yofb { background: lime; }\\\\n.\\\\\\\\.--_29W { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--I_4A { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_rpC { background: lime; }\\\\n.\\\\\\\\31 23--_Oc_ { background: lime; }\\\\n.\\\\\\\\31 a2b3c--mxXe { background: lime; }\\\\n.\\\\\\\\
--KBVL { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--vOWm { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--_D32 { background: lime; }\\\\n.\\\\\\\\#--LpBE { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--wZKD { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--oGI7 { background: lime; }\\\\n.\\\\\\\\_--myeU { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--Mae7 { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--_92k { background: lime; }\\\\n.foo\\\\\\\\.bar--TpLC { background: lime; }\\\\n.\\\\\\\\3A hover--l6Av { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--ZGmd { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--KPlJ { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--DIrF { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--H1kn { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--_vAK { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--APY_ { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--jTuA { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--S4Vv { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--AWIs { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--DhId {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--aeKk {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--QFT1 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--uM3R {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"123--_Oc_\\", + \\"test\\": \\"test--HovV\\", + \\"_test\\": \\"_test--_1mL\\", + \\"className\\": \\"className--MMk_\\", + \\"someId\\": \\"someId--f_mZ\\", + \\"subClass\\": \\"subClass--FYyI\\", + \\"-a0-34a___f\\": \\"-a0-34a___f--r_hi\\", + \\"m_x_@\\": \\"m_x_@--yUrn\\", + \\"B&W?\\": \\"B&W?--O_Xk\\", + \\":\`(\\": \\":\`(--_rpC\\", + \\"1a2b3c\\": \\"1a2b3c--mxXe\\", + \\"#fake-id\\": \\"#fake-id--_92k\\", + \\"-a-b-c-\\": \\"-a-b-c---c0kk\\", + \\"©\\": \\"©--DLos\\", + \\"♥\\": \\"♥--HQMf\\", + \\"“‘’”\\": \\"“‘’”--bS0L\\", + \\"☺☃\\": \\"☺☃--F0_y\\", + \\"⌘⌥\\": \\"⌘⌥--VyeH\\", + \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--Qi7p\\", + \\"💩\\": \\"💩--CjG3\\", + \\"?\\": \\"?--heeA\\", + \\"@\\": \\"@--Yofb\\", + \\".\\": \\".--_29W\\", + \\":)\\": \\":)--I_4A\\", + \\"
\\": \\"
--KBVL\\", + \\"<><<<>><>\\": \\"<><<<>><>--vOWm\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_D32\\", + \\"#\\": \\"#--LpBE\\", + \\"##\\": \\"##--wZKD\\", + \\"#.#.#\\": \\"#.#.#--oGI7\\", + \\"_\\": \\"_--myeU\\", + \\"{}\\": \\"{}--Mae7\\", + \\"foo.bar\\": \\"foo.bar--TpLC\\", + \\":hover\\": \\":hover--l6Av\\", + \\":hover:focus:active\\": \\":hover:focus:active--ZGmd\\", + \\"[attr=value]\\": \\"[attr=value]--KPlJ\\", + \\"f/o/o\\": \\"f/o/o--DIrF\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--H1kn\\", + \\"f*o*o\\": \\"f*o*o--_vAK\\", + \\"f!o!o\\": \\"f!o!o--APY_\\", + \\"f'o'o\\": \\"f'o'o--jTuA\\", + \\"f~o~o\\": \\"f~o~o--S4Vv\\", + \\"f+o+o\\": \\"f+o+o--AWIs\\", + \\"foo/bar\\": \\"foo/bar--DhId\\", + \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--aeKk\\", + \\"foo/bar/baz\\": \\"foo/bar/baz--QFT1\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--uM3R\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and correctly replace escaped symbols: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".test--HovV { + background: red; +} + +._test--_1mL { + background: blue; +} + +.className--MMk_ { + background: red; +} + +#someId--f_mZ { + background: green; +} + +.className--MMk_ .subClass--FYyI { + color: green; +} + +#someId--f_mZ .subClass--FYyI { + color: blue; +} + +.-a0-34a___f--r_hi { + color: red; +} + +.m_x_\\\\@--yUrn { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--O_Xk { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.\\\\3A \\\\\`\\\\(--_rpC { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.\\\\31 a2b3c--mxXe { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#\\\\#fake-id--_92k { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#-a-b-c---c0kk { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#©--DLos { + color: black; +} + +.♥--HQMf { background: lime; } +.©--DLos { background: lime; } +.“‘’”--bS0L { background: lime; } +.☺☃--F0_y { background: lime; } +.⌘⌥--VyeH { background: lime; } +.𝄞♪♩♫♬--Qi7p { background: lime; } +.💩--CjG3 { background: lime; } +.\\\\?--heeA { background: lime; } +.\\\\@--Yofb { background: lime; } +.\\\\.--_29W { background: lime; } +.\\\\3A \\\\)--I_4A { background: lime; } +.\\\\3A \\\\\`\\\\(--_rpC { background: lime; } +.\\\\31 23--_Oc_ { background: lime; } +.\\\\31 a2b3c--mxXe { background: lime; } +.\\\\
--KBVL { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--vOWm { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_D32 { background: lime; } +.\\\\#--LpBE { background: lime; } +.\\\\#\\\\#--wZKD { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--oGI7 { background: lime; } +.\\\\_--myeU { background: lime; } +.\\\\{\\\\}--Mae7 { background: lime; } +.\\\\#fake\\\\-id--_92k { background: lime; } +.foo\\\\.bar--TpLC { background: lime; } +.\\\\3A hover--l6Av { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--ZGmd { background: lime; } +.\\\\[attr\\\\=value\\\\]--KPlJ { background: lime; } +.f\\\\/o\\\\/o--DIrF { background: lime; } +.f\\\\\\\\o\\\\\\\\o--H1kn { background: lime; } +.f\\\\*o\\\\*o--_vAK { background: lime; } +.f\\\\!o\\\\!o--APY_ { background: lime; } +.f\\\\'o\\\\'o--jTuA { background: lime; } +.f\\\\~o\\\\~o--S4Vv { background: lime; } +.f\\\\+o\\\\+o--AWIs { background: lime; } + +.foo\\\\/bar--DhId { + background: hotpink; +} + +.foo\\\\\\\\bar--aeKk { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--QFT1 { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--uM3R { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and correctly replace escaped symbols: warnings 1`] = `Array []`; + +exports[`"modules" option should work and has "undefined" context if no context was given: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"foo\\", + \\"test\\": \\"foo\\", + \\"_test\\": \\"foo\\", + \\"className\\": \\"foo\\", + \\"someId\\": \\"foo\\", + \\"subClass\\": \\"foo\\", + \\"-a0-34a___f\\": \\"foo\\", + \\"m_x_@\\": \\"foo\\", + \\"B&W?\\": \\"foo\\", + \\":\`(\\": \\"foo\\", + \\"1a2b3c\\": \\"foo\\", + \\"#fake-id\\": \\"foo\\", + \\"-a-b-c-\\": \\"foo\\", + \\"©\\": \\"foo\\", + \\"♥\\": \\"foo\\", + \\"“‘’”\\": \\"foo\\", + \\"☺☃\\": \\"foo\\", + \\"⌘⌥\\": \\"foo\\", + \\"𝄞♪♩♫♬\\": \\"foo\\", + \\"💩\\": \\"foo\\", + \\"?\\": \\"foo\\", + \\"@\\": \\"foo\\", + \\".\\": \\"foo\\", + \\":)\\": \\"foo\\", + \\"
\\": \\"foo\\", + \\"<><<<>><>\\": \\"foo\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"foo\\", + \\"#\\": \\"foo\\", + \\"##\\": \\"foo\\", + \\"#.#.#\\": \\"foo\\", + \\"_\\": \\"foo\\", + \\"{}\\": \\"foo\\", + \\"foo.bar\\": \\"foo\\", + \\":hover\\": \\"foo\\", + \\":hover:focus:active\\": \\"foo\\", + \\"[attr=value]\\": \\"foo\\", + \\"f/o/o\\": \\"foo\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"foo\\", + \\"f*o*o\\": \\"foo\\", + \\"f!o!o\\": \\"foo\\", + \\"f'o'o\\": \\"foo\\", + \\"f~o~o\\": \\"foo\\", + \\"f+o+o\\": \\"foo\\", + \\"foo/bar\\": \\"foo\\", + \\"foo\\\\\\\\bar\\": \\"foo\\", + \\"foo/bar/baz\\": \\"foo\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and has "undefined" context if no context was given: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".foo { + background: red; +} + +.foo { + background: blue; +} + +.foo { + background: red; +} + +#foo { + background: green; +} + +.foo .foo { + color: green; +} + +#foo .foo { + color: blue; +} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.foo { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.foo { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#foo { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and has "undefined" context if no context was given: warnings 1`] = `Array []`; + +exports[`"modules" option should work and prefer relative for "composes": errors 1`] = `Array []`; + +exports[`"modules" option should work and prefer relative for "composes": module 1`] = ` +"// Imports +import ___CSS_LOADER_API_IMPORT___ from \\"../../../../src/runtime/api.js\\"; +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./package/one.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./node_modules/package/two.css\\"; +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 +___CSS_LOADER_EXPORT___.push([module.id, \\".K5Y5lujJvJQUStc4_Kt_ {\\\\n color: yellow;\\\\n}\\\\n\\\\n.IWnmxZHjAURFvURi0DXC {\\\\n color: yellow;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"one\\": \\"K5Y5lujJvJQUStc4_Kt_ \\" + ___CSS_LOADER_ICSS_IMPORT_0___.locals[\\"imported-relative\\"] + \\"\\", + \\"two\\": \\"IWnmxZHjAURFvURi0DXC \\" + ___CSS_LOADER_ICSS_IMPORT_1___.locals[\\"imported-relative\\"] + \\"\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and prefer relative for "composes": result 1`] = ` +Array [ + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/prefer-relative/package/one.css", + ".TpfeG_U6GdEM2gRvQdnG { + display: block; +} +", + "", + ], + Array [ + "../../src/index.js??ruleSet[1].rules[0].use[0]!./modules/prefer-relative/node_modules/package/two.css", + ".F7PRk4uRr_JBmRY2z5OJ { + display: inline; +} +", + "", + ], + Array [ + "./modules/prefer-relative/source.css", + ".K5Y5lujJvJQUStc4_Kt_ { + color: yellow; +} + +.IWnmxZHjAURFvURi0DXC { + color: yellow; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and prefer relative for "composes": warnings 1`] = `Array []`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"_-1123\\", + \\"test\\": \\"_-1test\\", + \\"_test\\": \\"_-1_test\\", + \\"className\\": \\"_-1className\\", + \\"someId\\": \\"_-1someId\\", + \\"subClass\\": \\"_-1subClass\\", + \\"-a0-34a___f\\": \\"_-1-a0-34a___f\\", + \\"m_x_@\\": \\"_-1m_x_@\\", + \\"B&W?\\": \\"_-1B&W?\\", + \\":\`(\\": \\"_-1:\`(\\", + \\"1a2b3c\\": \\"_-11a2b3c\\", + \\"#fake-id\\": \\"_-1#fake-id\\", + \\"-a-b-c-\\": \\"_-1-a-b-c-\\", + \\"©\\": \\"_-1©\\", + \\"♥\\": \\"_-1♥\\", + \\"“‘’”\\": \\"_-1“‘’”\\", + \\"☺☃\\": \\"_-1☺☃\\", + \\"⌘⌥\\": \\"_-1⌘⌥\\", + \\"𝄞♪♩♫♬\\": \\"_-1𝄞♪♩♫♬\\", + \\"💩\\": \\"_-1💩\\", + \\"?\\": \\"_-1?\\", + \\"@\\": \\"_-1@\\", + \\".\\": \\"_-1.\\", + \\":)\\": \\"_-1:)\\", + \\"
\\": \\"_-1
\\", + \\"<><<<>><>\\": \\"_-1<><<<>><>\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"_-1++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", + \\"#\\": \\"_-1#\\", + \\"##\\": \\"_-1##\\", + \\"#.#.#\\": \\"_-1#.#.#\\", + \\"_\\": \\"_-1_\\", + \\"{}\\": \\"_-1{}\\", + \\"foo.bar\\": \\"_-1foo.bar\\", + \\":hover\\": \\"_-1:hover\\", + \\":hover:focus:active\\": \\"_-1:hover:focus:active\\", + \\"[attr=value]\\": \\"_-1[attr=value]\\", + \\"f/o/o\\": \\"_-1f/o/o\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"_-1f\\\\\\\\o\\\\\\\\o\\", + \\"f*o*o\\": \\"_-1f*o*o\\", + \\"f!o!o\\": \\"_-1f!o!o\\", + \\"f'o'o\\": \\"_-1f'o'o\\", + \\"f~o~o\\": \\"_-1f~o~o\\", + \\"f+o+o\\": \\"_-1f+o+o\\", + \\"foo/bar\\": \\"_-1foo/bar\\", + \\"foo\\\\\\\\bar\\": \\"_-1foo\\\\\\\\bar\\", + \\"foo/bar/baz\\": \\"_-1foo/bar/baz\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"_-1foo\\\\\\\\bar\\\\\\\\baz\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + "._-1test { + background: red; +} + +._-1_test { + background: blue; +} + +._-1className { + background: red; +} + +#_-1someId { + background: green; +} + +._-1className ._-1subClass { + color: green; +} + +#_-1someId ._-1subClass { + color: blue; +} + +._-1-a0-34a___f { + color: red; +} + +._-1m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +._-1B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +._-1\\\\3A \\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +._-1\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#_-1\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#_-1-a-b-c- { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#_-1© { + color: black; +} + +._-1♥ { background: lime; } +._-1© { background: lime; } +._-1“‘’” { background: lime; } +._-1☺☃ { background: lime; } +._-1⌘⌥ { background: lime; } +._-1𝄞♪♩♫♬ { background: lime; } +._-1💩 { background: lime; } +._-1\\\\? { background: lime; } +._-1\\\\@ { background: lime; } +._-1\\\\. { background: lime; } +._-1\\\\3A \\\\) { background: lime; } +._-1\\\\3A \\\\\`\\\\( { background: lime; } +._-1\\\\31 23 { background: lime; } +._-1\\\\31 a2b3c { background: lime; } +._-1\\\\
{ background: lime; } +._-1\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +._-1\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +._-1\\\\# { background: lime; } +._-1\\\\#\\\\# { background: lime; } +._-1\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +._-1\\\\_ { background: lime; } +._-1\\\\{\\\\} { background: lime; } +._-1\\\\#fake\\\\-id { background: lime; } +._-1foo\\\\.bar { background: lime; } +._-1\\\\3A hover { background: lime; } +._-1\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +._-1\\\\[attr\\\\=value\\\\] { background: lime; } +._-1f\\\\/o\\\\/o { background: lime; } +._-1f\\\\\\\\o\\\\\\\\o { background: lime; } +._-1f\\\\*o\\\\*o { background: lime; } +._-1f\\\\!o\\\\!o { background: lime; } +._-1f\\\\'o\\\\'o { background: lime; } +._-1f\\\\~o\\\\~o { background: lime; } +._-1f\\\\+o\\\\+o { background: lime; } + +._-1foo\\\\/bar { + background: hotpink; +} + +._-1foo\\\\\\\\bar { + background: hotpink; +} + +._-1foo\\\\/bar\\\\/baz { + background: hotpink; +} + +._-1foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and prefix leading hyphen when digit is first: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "context" option: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".iWVbMXAQ {\\\\n background: red;\\\\n}\\\\n\\\\n.He1GCJOV {\\\\n background: blue;\\\\n}\\\\n\\\\n._NW736AU {\\\\n background: red;\\\\n}\\\\n\\\\n#_RC_7STK {\\\\n background: green;\\\\n}\\\\n\\\\n._NW736AU .G8XHqSyS {\\\\n color: green;\\\\n}\\\\n\\\\n#_RC_7STK .G8XHqSyS {\\\\n color: blue;\\\\n}\\\\n\\\\n._97_HC1C {\\\\n color: red;\\\\n}\\\\n\\\\n.ZqJivcfM {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.WgDq6CTW {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.rOE5zMGg {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.CzutGjGI {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#ZlQLPvrz {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#_Pclvjm_ {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#L2ZwbDI_ {\\\\n color: black;\\\\n}\\\\n\\\\n.lOG33Cq2 { background: lime; }\\\\n.L2ZwbDI_ { background: lime; }\\\\n.EkC89Z3N { background: lime; }\\\\n.T1XySjWW { background: lime; }\\\\n.Funx7hq_ { background: lime; }\\\\n.wI6diwUR { background: lime; }\\\\n.LJMDoVNF { background: lime; }\\\\n.mKvtXZlg { background: lime; }\\\\n._GpKWqMb { background: lime; }\\\\n.RhtfLwD_ { background: lime; }\\\\n._Xz8AIy7 { background: lime; }\\\\n.rOE5zMGg { background: lime; }\\\\n.qwDWwoxT { background: lime; }\\\\n.CzutGjGI { background: lime; }\\\\n.etqt5B_2 { background: lime; }\\\\n.x0r0dzYM { background: lime; }\\\\n.KTSRlbnb { background: lime; }\\\\n.vpn9qATP { background: lime; }\\\\n.zZX1i6Q5 { background: lime; }\\\\n.EJaMRzXc { background: lime; }\\\\n.Ph7TeV9R { background: lime; }\\\\n._Jb3CLNK { background: lime; }\\\\n.ZlQLPvrz { background: lime; }\\\\n._eFAUJY3 { background: lime; }\\\\n.b5cLbOk6 { background: lime; }\\\\n._PBj_fPi { background: lime; }\\\\n._qf98nCH { background: lime; }\\\\n.Ax1IQl_C { background: lime; }\\\\n.HZqNz5Gu { background: lime; }\\\\n.KAD4JEMr { background: lime; }\\\\n.xrt7wem5 { background: lime; }\\\\n._U9sLYzR { background: lime; }\\\\n.frVyaGHo { background: lime; }\\\\n.KiP6wyBF { background: lime; }\\\\n\\\\n.ODXF8XoJ {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.gYF7L0BX {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.konKLI1p {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.Bp4zVpNd {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"qwDWwoxT\\", + \\"test\\": \\"iWVbMXAQ\\", + \\"_test\\": \\"He1GCJOV\\", + \\"className\\": \\"_NW736AU\\", + \\"someId\\": \\"_RC_7STK\\", + \\"subClass\\": \\"G8XHqSyS\\", + \\"-a0-34a___f\\": \\"_97_HC1C\\", + \\"m_x_@\\": \\"ZqJivcfM\\", + \\"B&W?\\": \\"WgDq6CTW\\", + \\":\`(\\": \\"rOE5zMGg\\", + \\"1a2b3c\\": \\"CzutGjGI\\", + \\"#fake-id\\": \\"ZlQLPvrz\\", + \\"-a-b-c-\\": \\"_Pclvjm_\\", + \\"©\\": \\"L2ZwbDI_\\", + \\"♥\\": \\"lOG33Cq2\\", + \\"“‘’”\\": \\"EkC89Z3N\\", + \\"☺☃\\": \\"T1XySjWW\\", + \\"⌘⌥\\": \\"Funx7hq_\\", + \\"𝄞♪♩♫♬\\": \\"wI6diwUR\\", + \\"💩\\": \\"LJMDoVNF\\", + \\"?\\": \\"mKvtXZlg\\", + \\"@\\": \\"_GpKWqMb\\", + \\".\\": \\"RhtfLwD_\\", + \\":)\\": \\"_Xz8AIy7\\", + \\"
\\": \\"etqt5B_2\\", + \\"<><<<>><>\\": \\"x0r0dzYM\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"KTSRlbnb\\", + \\"#\\": \\"vpn9qATP\\", + \\"##\\": \\"zZX1i6Q5\\", + \\"#.#.#\\": \\"EJaMRzXc\\", + \\"_\\": \\"Ph7TeV9R\\", + \\"{}\\": \\"_Jb3CLNK\\", + \\"foo.bar\\": \\"_eFAUJY3\\", + \\":hover\\": \\"b5cLbOk6\\", + \\":hover:focus:active\\": \\"_PBj_fPi\\", + \\"[attr=value]\\": \\"_qf98nCH\\", + \\"f/o/o\\": \\"Ax1IQl_C\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"HZqNz5Gu\\", + \\"f*o*o\\": \\"KAD4JEMr\\", + \\"f!o!o\\": \\"xrt7wem5\\", + \\"f'o'o\\": \\"_U9sLYzR\\", + \\"f~o~o\\": \\"frVyaGHo\\", + \\"f+o+o\\": \\"KiP6wyBF\\", + \\"foo/bar\\": \\"ODXF8XoJ\\", + \\"foo\\\\\\\\bar\\": \\"gYF7L0BX\\", + \\"foo/bar/baz\\": \\"konKLI1p\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"Bp4zVpNd\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "context" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".iWVbMXAQ { + background: red; +} + +.He1GCJOV { + background: blue; +} + +._NW736AU { + background: red; +} + +#_RC_7STK { + background: green; +} + +._NW736AU .G8XHqSyS { + color: green; +} + +#_RC_7STK .G8XHqSyS { + color: blue; +} + +._97_HC1C { + color: red; +} + +.ZqJivcfM { + margin-left: auto !important; + margin-right: auto !important; +} + +.WgDq6CTW { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.rOE5zMGg { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.CzutGjGI { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#ZlQLPvrz { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#_Pclvjm_ { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#L2ZwbDI_ { + color: black; +} + +.lOG33Cq2 { background: lime; } +.L2ZwbDI_ { background: lime; } +.EkC89Z3N { background: lime; } +.T1XySjWW { background: lime; } +.Funx7hq_ { background: lime; } +.wI6diwUR { background: lime; } +.LJMDoVNF { background: lime; } +.mKvtXZlg { background: lime; } +._GpKWqMb { background: lime; } +.RhtfLwD_ { background: lime; } +._Xz8AIy7 { background: lime; } +.rOE5zMGg { background: lime; } +.qwDWwoxT { background: lime; } +.CzutGjGI { background: lime; } +.etqt5B_2 { background: lime; } +.x0r0dzYM { background: lime; } +.KTSRlbnb { background: lime; } +.vpn9qATP { background: lime; } +.zZX1i6Q5 { background: lime; } +.EJaMRzXc { background: lime; } +.Ph7TeV9R { background: lime; } +._Jb3CLNK { background: lime; } +.ZlQLPvrz { background: lime; } +._eFAUJY3 { background: lime; } +.b5cLbOk6 { background: lime; } +._PBj_fPi { background: lime; } +._qf98nCH { background: lime; } +.Ax1IQl_C { background: lime; } +.HZqNz5Gu { background: lime; } +.KAD4JEMr { background: lime; } +.xrt7wem5 { background: lime; } +._U9sLYzR { background: lime; } +.frVyaGHo { background: lime; } +.KiP6wyBF { background: lime; } + +.ODXF8XoJ { + background: hotpink; +} + +.gYF7L0BX { + background: hotpink; +} + +.konKLI1p { + background: hotpink; +} + +.Bp4zVpNd { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "context" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: errors 1`] = `Array []`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: module 1`] = ` +"// Imports +import ___CSS_LOADER_ICSS_IMPORT_0___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./values.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_1___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./something.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_2___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./imported-simple.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_3___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./relative.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_4___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./top-relative.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_5___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!../issue-861/node_modules/package/style.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_6___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!./alias.css\\"; +import ___CSS_LOADER_ICSS_IMPORT_7___ from \\"-!../../../../src/index.js??ruleSet[1].rules[0].use[0]!sass-loader!./scss-file.scss\\"; +// Exports +export default { + \\"v-def\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___[\\"v-def\\"] + \\"\\", + \\"v-other\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___[\\"v-other\\"] + \\"\\", + \\"s-white\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___[\\"s-white\\"] + \\"\\", + \\"m-small\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_0___[\\"m-small\\"] + \\"\\", + \\"v-something\\": \\"\\" + ___CSS_LOADER_ICSS_IMPORT_1___[\\"v-something\\"] + \\"\\", + \\"v-foo\\": \\"blue\\", + \\"v-bar\\": \\"block\\", + \\"v-primary\\": \\"#BF4040\\", + \\"s-black\\": \\"black-selector\\", + \\"m-large\\": \\"(min-width: 960px)\\", + \\"v-ident\\": \\"validIdent\\", + \\"v-pre-defined-ident\\": \\"left\\", + \\"v-string\\": \\"'content'\\", + \\"v-string-1\\": \\"''\\", + \\"v-url\\": \\"url(https://www.exammple.com/images/my-background.png)\\", + \\"v-url-1\\": \\"url('https://www.exammple.com/images/my-background.png')\\", + \\"v-url-2\\": \\"url(\\\\\\"https://www.exammple.com/images/my-background.png\\\\\\")\\", + \\"v-integer\\": \\"100\\", + \\"v-integer-1\\": \\"-100\\", + \\"v-integer-2\\": \\"+100\\", + \\"v-number\\": \\".60\\", + \\"v-number-1\\": \\"-456.8\\", + \\"v-number-2\\": \\"-3.4e-2\\", + \\"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\\", + \\"my-class\\": \\"_my-class\\", + \\"other\\": \\"_other\\", + \\"other-other\\": \\"_other-other\\", + \\"green\\": \\"_green\\", + \\"foo\\": \\"_foo\\", + \\"simple\\": \\"_simple \\" + ___CSS_LOADER_ICSS_IMPORT_2___[\\"imported-simple\\"] + \\"\\", + \\"relative\\": \\"_relative \\" + ___CSS_LOADER_ICSS_IMPORT_3___[\\"imported-relative\\"] + \\"\\", + \\"top-relative\\": \\"_top-relative \\" + ___CSS_LOADER_ICSS_IMPORT_4___[\\"imported-relative\\"] + \\"\\", + \\"my-module\\": \\"_my-module \\" + ___CSS_LOADER_ICSS_IMPORT_5___[\\"imported-module\\"] + \\"\\", + \\"alias\\": \\"_alias \\" + ___CSS_LOADER_ICSS_IMPORT_6___[\\"imported-alias\\"] + \\"\\", + \\"alias-duplicate\\": \\"_alias-duplicate \\" + ___CSS_LOADER_ICSS_IMPORT_6___[\\"imported-alias\\"] + \\"\\", + \\"primary-selector\\": \\"_primary-selector\\", + \\"black-selector\\": \\"_black-selector\\", + \\"header\\": \\"_header\\", + \\"foobarbaz\\": \\"_foobarbaz\\", + \\"url\\": \\"_url\\", + \\"main\\": \\"_main \\" + ___CSS_LOADER_ICSS_IMPORT_7___[\\"scssClass\\"] + \\"\\" +}; +" +`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: result 1`] = ` +Object { + "alias": "_alias _imported-alias", + "alias-duplicate": "_alias-duplicate _imported-alias", + "black-selector": "_black-selector", + "foo": "_foo", + "foobarbaz": "_foobarbaz", + "ghi": "_ghi", + "green": "_green", + "header": "_header", + "m-large": "(min-width: 960px)", + "m-small": "(min-width: 320px)", + "main": "_main _scssClass", + "my-class": "_my-class", + "my-module": "_my-module _imported-module", + "other": "_other", + "other-other": "_other-other", + "primary-selector": "_primary-selector", + "relative": "_relative _imported-relative", + "s-black": "black-selector", + "s-white": "white", + "simple": "_simple _imported-simple", + "top-relative": "_top-relative _imported-relative", + "url": "_url", + "v-bar": "block", + "v-comment": " /* comment */", + "v-def": "red", + "v-dimension": "12px", + "v-foo": "blue", + "v-function": "rgb(0,0,0)", + "v-hex": "#fff", + "v-ident": "validIdent", + "v-integer": "100", + "v-integer-1": "-100", + "v-integer-2": "+100", + "v-number": ".60", + "v-number-1": "-456.8", + "v-number-2": "-3.4e-2", + "v-other": "green", + "v-percentage": "100%", + "v-pre-defined-ident": "left", + "v-primary": "#BF4040", + "v-something": "2112moon", + "v-string": "'content'", + "v-string-1": "''", + "v-unicode-range": "U+0025-00FF", + "v-url": "url(https://www.exammple.com/images/my-background.png)", + "v-url-1": "url('https://www.exammple.com/images/my-background.png')", + "v-url-2": "url(\\"https://www.exammple.com/images/my-background.png\\")", +} +`; + +exports[`"modules" option should work and respect the "exportOnlyLocals" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"foo\\", + \\"test\\": \\"foo\\", + \\"_test\\": \\"foo\\", + \\"className\\": \\"foo\\", + \\"someId\\": \\"foo\\", + \\"subClass\\": \\"foo\\", + \\"-a0-34a___f\\": \\"foo\\", + \\"m_x_@\\": \\"foo\\", + \\"B&W?\\": \\"foo\\", + \\":\`(\\": \\"foo\\", + \\"1a2b3c\\": \\"foo\\", + \\"#fake-id\\": \\"foo\\", + \\"-a-b-c-\\": \\"foo\\", + \\"©\\": \\"foo\\", + \\"♥\\": \\"foo\\", + \\"“‘’”\\": \\"foo\\", + \\"☺☃\\": \\"foo\\", + \\"⌘⌥\\": \\"foo\\", + \\"𝄞♪♩♫♬\\": \\"foo\\", + \\"💩\\": \\"foo\\", + \\"?\\": \\"foo\\", + \\"@\\": \\"foo\\", + \\".\\": \\"foo\\", + \\":)\\": \\"foo\\", + \\"
\\": \\"foo\\", + \\"<><<<>><>\\": \\"foo\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"foo\\", + \\"#\\": \\"foo\\", + \\"##\\": \\"foo\\", + \\"#.#.#\\": \\"foo\\", + \\"_\\": \\"foo\\", + \\"{}\\": \\"foo\\", + \\"foo.bar\\": \\"foo\\", + \\":hover\\": \\"foo\\", + \\":hover:focus:active\\": \\"foo\\", + \\"[attr=value]\\": \\"foo\\", + \\"f/o/o\\": \\"foo\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"foo\\", + \\"f*o*o\\": \\"foo\\", + \\"f!o!o\\": \\"foo\\", + \\"f'o'o\\": \\"foo\\", + \\"f~o~o\\": \\"foo\\", + \\"f+o+o\\": \\"foo\\", + \\"foo/bar\\": \\"foo\\", + \\"foo\\\\\\\\bar\\": \\"foo\\", + \\"foo/bar/baz\\": \\"foo\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".foo { + background: red; +} + +.foo { + background: blue; +} + +.foo { + background: red; +} + +#foo { + background: green; +} + +.foo .foo { + color: green; +} + +#foo .foo { + color: blue; +} + +.foo { + color: red; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +.foo { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.foo { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.foo { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#foo { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#foo { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#foo { + color: black; +} + +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } +.foo { background: lime; } + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} + +.foo { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "getLocalIdent" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "hashSalt" option: errors 1`] = `Array []`; + +exports[`"modules" option should work and respect the "hashSalt" option: 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, \\".test--b41321249ebb0685e661 {\\\\n background: red;\\\\n}\\\\n\\\\n._test--e605d9d2b9f8d108a3bc {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--_2bb9d8df40e3da04687 {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--_c0f0ebc91d4fb36eb39 {\\\\n background: green;\\\\n}\\\\n\\\\n.className--_2bb9d8df40e3da04687 .subClass--f26ced8fae092bbf6c32 {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--_c0f0ebc91d4fb36eb39 .subClass--f26ced8fae092bbf6c32 {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--_43ba76509d402297336 {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--_58b897c83b122dd7683 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--dec830b310ac5c693103 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_d8fd179dc072fe27c94 {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--_db261be3609287250bf {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--bbd4261c5829e34c0c31 {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---_5878fa86c34e277bf41 {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--_0a969c38eb11e123e2b {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--f3cf6aeaca5cf1740681 { background: lime; }\\\\n.©--_0a969c38eb11e123e2b { background: lime; }\\\\n.“‘’”--a3778ef4d4572ec12c92 { background: lime; }\\\\n.☺☃--_ed5e5b440ef4083dbf3 { background: lime; }\\\\n.⌘⌥--_af7e8771036a97e9167 { background: lime; }\\\\n.𝄞♪♩♫♬--b6c998ac9c840d381861 { background: lime; }\\\\n.💩--cd06cdeb5495e92691f6 { background: lime; }\\\\n.\\\\\\\\?--ba4cda6564fd664118a1 { background: lime; }\\\\n.\\\\\\\\@--_c1336757223ea7e8a29 { background: lime; }\\\\n.\\\\\\\\.--_385e8c15fa5c58ca9bb { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--_943cc547b2d37b17f21 { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_d8fd179dc072fe27c94 { background: lime; }\\\\n.\\\\\\\\31 23--_f55ef8239fee1677773 { background: lime; }\\\\n.\\\\\\\\31 a2b3c--_db261be3609287250bf { background: lime; }\\\\n.\\\\\\\\
--d2e7501107d4092029d4 { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--a80379f802d9488b6714 { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--_ea662cb37796e437224 { background: lime; }\\\\n.\\\\\\\\#--a343f54935572672cb08 { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--_bbe051c6da4e2351b9f { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--f565f781d2204a02f13c { background: lime; }\\\\n.\\\\\\\\_--b8e05650bf8b01093e4a { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--bbe33250951aae8c915a { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--bbd4261c5829e34c0c31 { background: lime; }\\\\n.foo\\\\\\\\.bar--_551f095c83cc1760d6f { background: lime; }\\\\n.\\\\\\\\3A hover--b6212951efdcca7b9ace { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--_bc9104f0ba7a97d19e5 { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--_99e975b969750094580 { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--_afed9bcde7e2902a435 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--f817fb0fdeb8ab9770a9 { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--_ed47d92adad98617293 { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--aad099478379012e2b7f { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--ce931aafc17a7d70c933 { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--_16f0e2fe35eb8a83f4d { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--_9904935c50f3d0737ac { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--_0160e88d07232be7a64 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--_697404c682c28f24c0f {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--a8c3f89a8e8c169e0287 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--_ae3a61419e61dda045a {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"123--_f55ef8239fee1677773\\", + \\"test\\": \\"test--b41321249ebb0685e661\\", + \\"_test\\": \\"_test--e605d9d2b9f8d108a3bc\\", + \\"className\\": \\"className--_2bb9d8df40e3da04687\\", + \\"someId\\": \\"someId--_c0f0ebc91d4fb36eb39\\", + \\"subClass\\": \\"subClass--f26ced8fae092bbf6c32\\", + \\"-a0-34a___f\\": \\"-a0-34a___f--_43ba76509d402297336\\", + \\"m_x_@\\": \\"m_x_@--_58b897c83b122dd7683\\", + \\"B&W?\\": \\"B&W?--dec830b310ac5c693103\\", + \\":\`(\\": \\":\`(--_d8fd179dc072fe27c94\\", + \\"1a2b3c\\": \\"1a2b3c--_db261be3609287250bf\\", + \\"#fake-id\\": \\"#fake-id--bbd4261c5829e34c0c31\\", + \\"-a-b-c-\\": \\"-a-b-c---_5878fa86c34e277bf41\\", + \\"©\\": \\"©--_0a969c38eb11e123e2b\\", + \\"♥\\": \\"♥--f3cf6aeaca5cf1740681\\", + \\"“‘’”\\": \\"“‘’”--a3778ef4d4572ec12c92\\", + \\"☺☃\\": \\"☺☃--_ed5e5b440ef4083dbf3\\", + \\"⌘⌥\\": \\"⌘⌥--_af7e8771036a97e9167\\", + \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--b6c998ac9c840d381861\\", + \\"💩\\": \\"💩--cd06cdeb5495e92691f6\\", + \\"?\\": \\"?--ba4cda6564fd664118a1\\", + \\"@\\": \\"@--_c1336757223ea7e8a29\\", + \\".\\": \\".--_385e8c15fa5c58ca9bb\\", + \\":)\\": \\":)--_943cc547b2d37b17f21\\", + \\"
\\": \\"
--d2e7501107d4092029d4\\", + \\"<><<<>><>\\": \\"<><<<>><>--a80379f802d9488b6714\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_ea662cb37796e437224\\", + \\"#\\": \\"#--a343f54935572672cb08\\", + \\"##\\": \\"##--_bbe051c6da4e2351b9f\\", + \\"#.#.#\\": \\"#.#.#--f565f781d2204a02f13c\\", + \\"_\\": \\"_--b8e05650bf8b01093e4a\\", + \\"{}\\": \\"{}--bbe33250951aae8c915a\\", + \\"foo.bar\\": \\"foo.bar--_551f095c83cc1760d6f\\", + \\":hover\\": \\":hover--b6212951efdcca7b9ace\\", + \\":hover:focus:active\\": \\":hover:focus:active--_bc9104f0ba7a97d19e5\\", + \\"[attr=value]\\": \\"[attr=value]--_99e975b969750094580\\", + \\"f/o/o\\": \\"f/o/o--_afed9bcde7e2902a435\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--f817fb0fdeb8ab9770a9\\", + \\"f*o*o\\": \\"f*o*o--_ed47d92adad98617293\\", + \\"f!o!o\\": \\"f!o!o--aad099478379012e2b7f\\", + \\"f'o'o\\": \\"f'o'o--ce931aafc17a7d70c933\\", + \\"f~o~o\\": \\"f~o~o--_16f0e2fe35eb8a83f4d\\", + \\"f+o+o\\": \\"f+o+o--_9904935c50f3d0737ac\\", + \\"foo/bar\\": \\"foo/bar--_0160e88d07232be7a64\\", + \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--_697404c682c28f24c0f\\", + \\"foo/bar/baz\\": \\"foo/bar/baz--a8c3f89a8e8c169e0287\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--_ae3a61419e61dda045a\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "hashSalt" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".test--b41321249ebb0685e661 { + background: red; +} + +._test--e605d9d2b9f8d108a3bc { + background: blue; +} + +.className--_2bb9d8df40e3da04687 { + background: red; +} + +#someId--_c0f0ebc91d4fb36eb39 { + background: green; +} + +.className--_2bb9d8df40e3da04687 .subClass--f26ced8fae092bbf6c32 { + color: green; +} + +#someId--_c0f0ebc91d4fb36eb39 .subClass--f26ced8fae092bbf6c32 { + color: blue; +} + +.-a0-34a___f--_43ba76509d402297336 { + color: red; +} + +.m_x_\\\\@--_58b897c83b122dd7683 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--dec830b310ac5c693103 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.\\\\3A \\\\\`\\\\(--_d8fd179dc072fe27c94 { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.\\\\31 a2b3c--_db261be3609287250bf { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#\\\\#fake-id--bbd4261c5829e34c0c31 { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#-a-b-c---_5878fa86c34e277bf41 { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#©--_0a969c38eb11e123e2b { + color: black; +} + +.♥--f3cf6aeaca5cf1740681 { background: lime; } +.©--_0a969c38eb11e123e2b { background: lime; } +.“‘’”--a3778ef4d4572ec12c92 { background: lime; } +.☺☃--_ed5e5b440ef4083dbf3 { background: lime; } +.⌘⌥--_af7e8771036a97e9167 { background: lime; } +.𝄞♪♩♫♬--b6c998ac9c840d381861 { background: lime; } +.💩--cd06cdeb5495e92691f6 { background: lime; } +.\\\\?--ba4cda6564fd664118a1 { background: lime; } +.\\\\@--_c1336757223ea7e8a29 { background: lime; } +.\\\\.--_385e8c15fa5c58ca9bb { background: lime; } +.\\\\3A \\\\)--_943cc547b2d37b17f21 { background: lime; } +.\\\\3A \\\\\`\\\\(--_d8fd179dc072fe27c94 { background: lime; } +.\\\\31 23--_f55ef8239fee1677773 { background: lime; } +.\\\\31 a2b3c--_db261be3609287250bf { background: lime; } +.\\\\
--d2e7501107d4092029d4 { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--a80379f802d9488b6714 { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_ea662cb37796e437224 { background: lime; } +.\\\\#--a343f54935572672cb08 { background: lime; } +.\\\\#\\\\#--_bbe051c6da4e2351b9f { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--f565f781d2204a02f13c { background: lime; } +.\\\\_--b8e05650bf8b01093e4a { background: lime; } +.\\\\{\\\\}--bbe33250951aae8c915a { background: lime; } +.\\\\#fake\\\\-id--bbd4261c5829e34c0c31 { background: lime; } +.foo\\\\.bar--_551f095c83cc1760d6f { background: lime; } +.\\\\3A hover--b6212951efdcca7b9ace { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--_bc9104f0ba7a97d19e5 { background: lime; } +.\\\\[attr\\\\=value\\\\]--_99e975b969750094580 { background: lime; } +.f\\\\/o\\\\/o--_afed9bcde7e2902a435 { background: lime; } +.f\\\\\\\\o\\\\\\\\o--f817fb0fdeb8ab9770a9 { background: lime; } +.f\\\\*o\\\\*o--_ed47d92adad98617293 { background: lime; } +.f\\\\!o\\\\!o--aad099478379012e2b7f { background: lime; } +.f\\\\'o\\\\'o--ce931aafc17a7d70c933 { background: lime; } +.f\\\\~o\\\\~o--_16f0e2fe35eb8a83f4d { background: lime; } +.f\\\\+o\\\\+o--_9904935c50f3d0737ac { background: lime; } + +.foo\\\\/bar--_0160e88d07232be7a64 { + background: hotpink; +} + +.foo\\\\\\\\bar--_697404c682c28f24c0f { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--a8c3f89a8e8c169e0287 { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--_ae3a61419e61dda045a { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "hashSalt" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eFSx39d7lf2DbavLOZEH {\\\\n color: blue;\\\\n}\\\\n\\\\n._XcV1pTGsk1DDypSCcav {\\\\n color: blue;\\\\n}\\\\n\\\\n._JxN_SGMxSzstCVbNTUy {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._krAefTYwrSG1l87lmV3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"bar\\", + \\"my-btn-info_is-disabled\\": \\"value\\", + \\"btn-info_is-disabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btn--info_is-disabled_1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"simple\\": \\"_JxN_SGMxSzstCVbNTUy\\", + \\"foo_bar\\": \\"_krAefTYwrSG1l87lmV3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: result 1`] = ` +Array [ + Array [ + "./modules/localsConvention/localsConvention.css", + ".eFSx39d7lf2DbavLOZEH { + color: blue; +} + +._XcV1pTGsk1DDypSCcav { + color: blue; +} + +._JxN_SGMxSzstCVbNTUy { + color: red; +} + +a { + color: yellow; +} + +._krAefTYwrSG1l87lmV3 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "asIs" value: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCase" value: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eFSx39d7lf2DbavLOZEH {\\\\n color: blue;\\\\n}\\\\n\\\\n._XcV1pTGsk1DDypSCcav {\\\\n color: blue;\\\\n}\\\\n\\\\n._JxN_SGMxSzstCVbNTUy {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._krAefTYwrSG1l87lmV3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"bar\\", + \\"my-btn-info_is-disabled\\": \\"value\\", + \\"myBtnInfoIsDisabled\\": \\"value\\", + \\"btn-info_is-disabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btnInfoIsDisabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btn--info_is-disabled_1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"btnInfoIsDisabled1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"simple\\": \\"_JxN_SGMxSzstCVbNTUy\\", + \\"foo_bar\\": \\"_krAefTYwrSG1l87lmV3\\", + \\"fooBar\\": \\"_krAefTYwrSG1l87lmV3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCase" value: result 1`] = ` +Array [ + Array [ + "./modules/localsConvention/localsConvention.css", + ".eFSx39d7lf2DbavLOZEH { + color: blue; +} + +._XcV1pTGsk1DDypSCcav { + color: blue; +} + +._JxN_SGMxSzstCVbNTUy { + color: red; +} + +a { + color: yellow; +} + +._krAefTYwrSG1l87lmV3 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCase" value: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCaseOnly" value: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eFSx39d7lf2DbavLOZEH {\\\\n color: blue;\\\\n}\\\\n\\\\n._XcV1pTGsk1DDypSCcav {\\\\n color: blue;\\\\n}\\\\n\\\\n._JxN_SGMxSzstCVbNTUy {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._krAefTYwrSG1l87lmV3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"bar\\", + \\"myBtnInfoIsDisabled\\": \\"value\\", + \\"btnInfoIsDisabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btnInfoIsDisabled1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"simple\\": \\"_JxN_SGMxSzstCVbNTUy\\", + \\"fooBar\\": \\"_krAefTYwrSG1l87lmV3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCaseOnly" value: result 1`] = ` +Array [ + Array [ + "./modules/localsConvention/localsConvention.css", + ".eFSx39d7lf2DbavLOZEH { + color: blue; +} + +._XcV1pTGsk1DDypSCcav { + color: blue; +} + +._JxN_SGMxSzstCVbNTUy { + color: red; +} + +a { + color: yellow; +} + +._krAefTYwrSG1l87lmV3 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "camelCaseOnly" value: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashes" value: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eFSx39d7lf2DbavLOZEH {\\\\n color: blue;\\\\n}\\\\n\\\\n._XcV1pTGsk1DDypSCcav {\\\\n color: blue;\\\\n}\\\\n\\\\n._JxN_SGMxSzstCVbNTUy {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._krAefTYwrSG1l87lmV3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"bar\\", + \\"my-btn-info_is-disabled\\": \\"value\\", + \\"myBtnInfo_isDisabled\\": \\"value\\", + \\"btn-info_is-disabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btnInfo_isDisabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btn--info_is-disabled_1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"btnInfo_isDisabled_1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"simple\\": \\"_JxN_SGMxSzstCVbNTUy\\", + \\"foo_bar\\": \\"_krAefTYwrSG1l87lmV3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashes" value: result 1`] = ` +Array [ + Array [ + "./modules/localsConvention/localsConvention.css", + ".eFSx39d7lf2DbavLOZEH { + color: blue; +} + +._XcV1pTGsk1DDypSCcav { + color: blue; +} + +._JxN_SGMxSzstCVbNTUy { + color: red; +} + +a { + color: yellow; +} + +._krAefTYwrSG1l87lmV3 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashes" value: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashesOnly" value: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".eFSx39d7lf2DbavLOZEH {\\\\n color: blue;\\\\n}\\\\n\\\\n._XcV1pTGsk1DDypSCcav {\\\\n color: blue;\\\\n}\\\\n\\\\n._JxN_SGMxSzstCVbNTUy {\\\\n color: red;\\\\n}\\\\n\\\\na {\\\\n color: yellow;\\\\n}\\\\n\\\\n._krAefTYwrSG1l87lmV3 {\\\\n color: red;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"bar\\", + \\"myBtnInfo_isDisabled\\": \\"value\\", + \\"btnInfo_isDisabled\\": \\"eFSx39d7lf2DbavLOZEH\\", + \\"btnInfo_isDisabled_1\\": \\"_XcV1pTGsk1DDypSCcav\\", + \\"simple\\": \\"_JxN_SGMxSzstCVbNTUy\\", + \\"foo_bar\\": \\"_krAefTYwrSG1l87lmV3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashesOnly" value: result 1`] = ` +Array [ + Array [ + "./modules/localsConvention/localsConvention.css", + ".eFSx39d7lf2DbavLOZEH { + color: blue; +} + +._XcV1pTGsk1DDypSCcav { + color: blue; +} + +._JxN_SGMxSzstCVbNTUy { + color: red; +} + +a { + color: yellow; +} + +._krAefTYwrSG1l87lmV3 { + color: red; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localConvention" option with the "dashesOnly" value: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: errors 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: errors 2`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: 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, \\".test--_347c66e39c8f6f0a64f {\\\\n background: red;\\\\n}\\\\n\\\\n._test--_409e4df60a5df5f5d32 {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--e5c17e6b8130297382dc {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--_1c77fae3b2571d8af58 {\\\\n background: green;\\\\n}\\\\n\\\\n.className--e5c17e6b8130297382dc .subClass--_ce74472264bbe729bd3 {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--_1c77fae3b2571d8af58 .subClass--_ce74472264bbe729bd3 {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--_1d60baf3600ddc46079 {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--_732174edbcf0559a465 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--_d5519eef501b3fe589f {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_e40374bcb01050c202b {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--ede5ee005ce96f9de0d8 {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--fe2efa29950f418d477a {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---d1a626ec36769b87efb8 {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--_6e62e8d8ca88d608527 {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--f64ab76fe61fcc249909 { background: lime; }\\\\n.©--_6e62e8d8ca88d608527 { background: lime; }\\\\n.“‘’”--_aa74857b05d853821fd { background: lime; }\\\\n.☺☃--_7d317356ac521028664 { background: lime; }\\\\n.⌘⌥--bf468ba3afaf13e0a0b8 { background: lime; }\\\\n.𝄞♪♩♫♬--_0443100801b3837c620 { background: lime; }\\\\n.💩--be44fb27628da290a898 { background: lime; }\\\\n.\\\\\\\\?--_b964d4d1caba6296dcf { background: lime; }\\\\n.\\\\\\\\@--_31e74c1c1fee1edacc9 { background: lime; }\\\\n.\\\\\\\\.--_64f0151a785dcd909f9 { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--bbdac15527b1a79b9373 { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_e40374bcb01050c202b { background: lime; }\\\\n.\\\\\\\\31 23--_ec7108c037cbacfbb41 { background: lime; }\\\\n.\\\\\\\\31 a2b3c--ede5ee005ce96f9de0d8 { background: lime; }\\\\n.\\\\\\\\
--_add6ba3a806e4e89c25 { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--_5a72290b08f16a70e6e { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--_8643b64085158d157d4 { background: lime; }\\\\n.\\\\\\\\#--_7346997a8ea491985ae { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--f51a1bcd5b215c049e7e { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--_c58cdb64cfefb320f70 { background: lime; }\\\\n.\\\\\\\\_--_6f952770d6b3390c36b { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--cdaa74c4f6c9e2b15fff { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--fe2efa29950f418d477a { background: lime; }\\\\n.foo\\\\\\\\.bar--ff62a9ce0270a7159046 { background: lime; }\\\\n.\\\\\\\\3A hover--_8e85f8ae7f4139a5258 { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--_10f1c6d9945b1e0f789 { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--e0cacaf2470563d41d45 { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--_45f50181c83f563b5c2 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--aea404d6630a39db19d8 { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--_b29a485ccb4e98b4048 { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--c79446ed553ff32b17fd { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--_49cf7b5f2fdb64b9373 { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--_05ee4fc2b9a084dfdf0 { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--f55241c183f773304829 { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--_d445c2f789a6c1b6531 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--a407ef7c9f9341565b64 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--ec4e79254ca1b4c975bd {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--b2ea1383b7cbebaf07d1 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"123--_ec7108c037cbacfbb41\\", + \\"test\\": \\"test--_347c66e39c8f6f0a64f\\", + \\"_test\\": \\"_test--_409e4df60a5df5f5d32\\", + \\"className\\": \\"className--e5c17e6b8130297382dc\\", + \\"someId\\": \\"someId--_1c77fae3b2571d8af58\\", + \\"subClass\\": \\"subClass--_ce74472264bbe729bd3\\", + \\"-a0-34a___f\\": \\"-a0-34a___f--_1d60baf3600ddc46079\\", + \\"m_x_@\\": \\"m_x_@--_732174edbcf0559a465\\", + \\"B&W?\\": \\"B&W?--_d5519eef501b3fe589f\\", + \\":\`(\\": \\":\`(--_e40374bcb01050c202b\\", + \\"1a2b3c\\": \\"1a2b3c--ede5ee005ce96f9de0d8\\", + \\"#fake-id\\": \\"#fake-id--fe2efa29950f418d477a\\", + \\"-a-b-c-\\": \\"-a-b-c---d1a626ec36769b87efb8\\", + \\"©\\": \\"©--_6e62e8d8ca88d608527\\", + \\"♥\\": \\"♥--f64ab76fe61fcc249909\\", + \\"“‘’”\\": \\"“‘’”--_aa74857b05d853821fd\\", + \\"☺☃\\": \\"☺☃--_7d317356ac521028664\\", + \\"⌘⌥\\": \\"⌘⌥--bf468ba3afaf13e0a0b8\\", + \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--_0443100801b3837c620\\", + \\"💩\\": \\"💩--be44fb27628da290a898\\", + \\"?\\": \\"?--_b964d4d1caba6296dcf\\", + \\"@\\": \\"@--_31e74c1c1fee1edacc9\\", + \\".\\": \\".--_64f0151a785dcd909f9\\", + \\":)\\": \\":)--bbdac15527b1a79b9373\\", + \\"
\\": \\"
--_add6ba3a806e4e89c25\\", + \\"<><<<>><>\\": \\"<><<<>><>--_5a72290b08f16a70e6e\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_8643b64085158d157d4\\", + \\"#\\": \\"#--_7346997a8ea491985ae\\", + \\"##\\": \\"##--f51a1bcd5b215c049e7e\\", + \\"#.#.#\\": \\"#.#.#--_c58cdb64cfefb320f70\\", + \\"_\\": \\"_--_6f952770d6b3390c36b\\", + \\"{}\\": \\"{}--cdaa74c4f6c9e2b15fff\\", + \\"foo.bar\\": \\"foo.bar--ff62a9ce0270a7159046\\", + \\":hover\\": \\":hover--_8e85f8ae7f4139a5258\\", + \\":hover:focus:active\\": \\":hover:focus:active--_10f1c6d9945b1e0f789\\", + \\"[attr=value]\\": \\"[attr=value]--e0cacaf2470563d41d45\\", + \\"f/o/o\\": \\"f/o/o--_45f50181c83f563b5c2\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--aea404d6630a39db19d8\\", + \\"f*o*o\\": \\"f*o*o--_b29a485ccb4e98b4048\\", + \\"f!o!o\\": \\"f!o!o--c79446ed553ff32b17fd\\", + \\"f'o'o\\": \\"f'o'o--_49cf7b5f2fdb64b9373\\", + \\"f~o~o\\": \\"f~o~o--_05ee4fc2b9a084dfdf0\\", + \\"f+o+o\\": \\"f+o+o--f55241c183f773304829\\", + \\"foo/bar\\": \\"foo/bar--_d445c2f789a6c1b6531\\", + \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--a407ef7c9f9341565b64\\", + \\"foo/bar/baz\\": \\"foo/bar/baz--ec4e79254ca1b4c975bd\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--b2ea1383b7cbebaf07d1\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: module 2`] = ` +"// 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, \\".test--HovVWrUTjN {\\\\n background: red;\\\\n}\\\\n\\\\n._test--_1mLQ0KYr3 {\\\\n background: blue;\\\\n}\\\\n\\\\n.className--MMk_yFMICy {\\\\n background: red;\\\\n}\\\\n\\\\n#someId--f_mZz_4mbp {\\\\n background: green;\\\\n}\\\\n\\\\n.className--MMk_yFMICy .subClass--FYyIWexDGl {\\\\n color: green;\\\\n}\\\\n\\\\n#someId--f_mZz_4mbp .subClass--FYyIWexDGl {\\\\n color: blue;\\\\n}\\\\n\\\\n.-a0-34a___f--r_hifewiIo {\\\\n color: red;\\\\n}\\\\n\\\\n.m_x_\\\\\\\\@--yUrnJ_pW2A {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.B\\\\\\\\&W\\\\\\\\?--O_Xkei1DAX {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_rpCeu5pHk {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.\\\\\\\\31 a2b3c--mxXeAFeh5M {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#\\\\\\\\#fake-id--_92k79k_uZ {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#-a-b-c---c0kkJWClsc {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#©--DLosMLOukp {\\\\n color: black;\\\\n}\\\\n\\\\n.♥--HQMfjUZeec { background: lime; }\\\\n.©--DLosMLOukp { background: lime; }\\\\n.“‘’”--bS0LrUqKBV { background: lime; }\\\\n.☺☃--F0_yWUDvky { background: lime; }\\\\n.⌘⌥--VyeHlHnBWZ { background: lime; }\\\\n.𝄞♪♩♫♬--Qi7pfuLhD3 { background: lime; }\\\\n.💩--CjG3lWNhvV { background: lime; }\\\\n.\\\\\\\\?--heeATAtrwL { background: lime; }\\\\n.\\\\\\\\@--YofbbuSihG { background: lime; }\\\\n.\\\\\\\\.--_29WwWt8JV { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\)--I_4AeARK9l { background: lime; }\\\\n.\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--_rpCeu5pHk { background: lime; }\\\\n.\\\\\\\\31 23--_Oc_nRVO4G { background: lime; }\\\\n.\\\\\\\\31 a2b3c--mxXeAFeh5M { background: lime; }\\\\n.\\\\\\\\
--KBVLvvCBhx { background: lime; }\\\\n.\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--vOWmh2fN7C { background: lime; }\\\\n.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--_D32kH5S0x { background: lime; }\\\\n.\\\\\\\\#--LpBEGYchm6 { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\#--wZKDT2QRg1 { background: lime; }\\\\n.\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--oGI7_ChvpM { background: lime; }\\\\n.\\\\\\\\_--myeULb2GLN { background: lime; }\\\\n.\\\\\\\\{\\\\\\\\}--Mae71ybFnD { background: lime; }\\\\n.\\\\\\\\#fake\\\\\\\\-id--_92k79k_uZ { background: lime; }\\\\n.foo\\\\\\\\.bar--TpLCT2g4E_ { background: lime; }\\\\n.\\\\\\\\3A hover--l6Av_vs8d_ { background: lime; }\\\\n.\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--ZGmd9HMc_i { background: lime; }\\\\n.\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--KPlJewNi3K { background: lime; }\\\\n.f\\\\\\\\/o\\\\\\\\/o--DIrFdFnBQ9 { background: lime; }\\\\n.f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--H1knt1tAX5 { background: lime; }\\\\n.f\\\\\\\\*o\\\\\\\\*o--_vAKu2IlrR { background: lime; }\\\\n.f\\\\\\\\!o\\\\\\\\!o--APY_BKpa8G { background: lime; }\\\\n.f\\\\\\\\'o\\\\\\\\'o--jTuAkufdKA { background: lime; }\\\\n.f\\\\\\\\~o\\\\\\\\~o--S4VvFBeH35 { background: lime; }\\\\n.f\\\\\\\\+o\\\\\\\\+o--AWIsfyEkWw { background: lime; }\\\\n\\\\n.foo\\\\\\\\/bar--DhIde1Wbgz {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar--aeKkgCs_2D {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\/bar\\\\\\\\/baz--QFT18bFiHR {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--uM3RYQs79z {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"123--_Oc_nRVO4G\\", + \\"test\\": \\"test--HovVWrUTjN\\", + \\"_test\\": \\"_test--_1mLQ0KYr3\\", + \\"className\\": \\"className--MMk_yFMICy\\", + \\"someId\\": \\"someId--f_mZz_4mbp\\", + \\"subClass\\": \\"subClass--FYyIWexDGl\\", + \\"-a0-34a___f\\": \\"-a0-34a___f--r_hifewiIo\\", + \\"m_x_@\\": \\"m_x_@--yUrnJ_pW2A\\", + \\"B&W?\\": \\"B&W?--O_Xkei1DAX\\", + \\":\`(\\": \\":\`(--_rpCeu5pHk\\", + \\"1a2b3c\\": \\"1a2b3c--mxXeAFeh5M\\", + \\"#fake-id\\": \\"#fake-id--_92k79k_uZ\\", + \\"-a-b-c-\\": \\"-a-b-c---c0kkJWClsc\\", + \\"©\\": \\"©--DLosMLOukp\\", + \\"♥\\": \\"♥--HQMfjUZeec\\", + \\"“‘’”\\": \\"“‘’”--bS0LrUqKBV\\", + \\"☺☃\\": \\"☺☃--F0_yWUDvky\\", + \\"⌘⌥\\": \\"⌘⌥--VyeHlHnBWZ\\", + \\"𝄞♪♩♫♬\\": \\"𝄞♪♩♫♬--Qi7pfuLhD3\\", + \\"💩\\": \\"💩--CjG3lWNhvV\\", + \\"?\\": \\"?--heeATAtrwL\\", + \\"@\\": \\"@--YofbbuSihG\\", + \\".\\": \\".--_29WwWt8JV\\", + \\":)\\": \\":)--I_4AeARK9l\\", + \\"
\\": \\"
--KBVLvvCBhx\\", + \\"<><<<>><>\\": \\"<><<<>><>--vOWmh2fN7C\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_D32kH5S0x\\", + \\"#\\": \\"#--LpBEGYchm6\\", + \\"##\\": \\"##--wZKDT2QRg1\\", + \\"#.#.#\\": \\"#.#.#--oGI7_ChvpM\\", + \\"_\\": \\"_--myeULb2GLN\\", + \\"{}\\": \\"{}--Mae71ybFnD\\", + \\"foo.bar\\": \\"foo.bar--TpLCT2g4E_\\", + \\":hover\\": \\":hover--l6Av_vs8d_\\", + \\":hover:focus:active\\": \\":hover:focus:active--ZGmd9HMc_i\\", + \\"[attr=value]\\": \\"[attr=value]--KPlJewNi3K\\", + \\"f/o/o\\": \\"f/o/o--DIrFdFnBQ9\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"f\\\\\\\\o\\\\\\\\o--H1knt1tAX5\\", + \\"f*o*o\\": \\"f*o*o--_vAKu2IlrR\\", + \\"f!o!o\\": \\"f!o!o--APY_BKpa8G\\", + \\"f'o'o\\": \\"f'o'o--jTuAkufdKA\\", + \\"f~o~o\\": \\"f~o~o--S4VvFBeH35\\", + \\"f+o+o\\": \\"f+o+o--AWIsfyEkWw\\", + \\"foo/bar\\": \\"foo/bar--DhIde1Wbgz\\", + \\"foo\\\\\\\\bar\\": \\"foo\\\\\\\\bar--aeKkgCs_2D\\", + \\"foo/bar/baz\\": \\"foo/bar/baz--QFT18bFiHR\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"foo\\\\\\\\bar\\\\\\\\baz--uM3RYQs79z\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".test--_347c66e39c8f6f0a64f { + background: red; +} + +._test--_409e4df60a5df5f5d32 { + background: blue; +} + +.className--e5c17e6b8130297382dc { + background: red; +} + +#someId--_1c77fae3b2571d8af58 { + background: green; +} + +.className--e5c17e6b8130297382dc .subClass--_ce74472264bbe729bd3 { + color: green; +} + +#someId--_1c77fae3b2571d8af58 .subClass--_ce74472264bbe729bd3 { + color: blue; +} + +.-a0-34a___f--_1d60baf3600ddc46079 { + color: red; +} + +.m_x_\\\\@--_732174edbcf0559a465 { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--_d5519eef501b3fe589f { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.\\\\3A \\\\\`\\\\(--_e40374bcb01050c202b { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.\\\\31 a2b3c--ede5ee005ce96f9de0d8 { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#\\\\#fake-id--fe2efa29950f418d477a { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#-a-b-c---d1a626ec36769b87efb8 { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#©--_6e62e8d8ca88d608527 { + color: black; +} + +.♥--f64ab76fe61fcc249909 { background: lime; } +.©--_6e62e8d8ca88d608527 { background: lime; } +.“‘’”--_aa74857b05d853821fd { background: lime; } +.☺☃--_7d317356ac521028664 { background: lime; } +.⌘⌥--bf468ba3afaf13e0a0b8 { background: lime; } +.𝄞♪♩♫♬--_0443100801b3837c620 { background: lime; } +.💩--be44fb27628da290a898 { background: lime; } +.\\\\?--_b964d4d1caba6296dcf { background: lime; } +.\\\\@--_31e74c1c1fee1edacc9 { background: lime; } +.\\\\.--_64f0151a785dcd909f9 { background: lime; } +.\\\\3A \\\\)--bbdac15527b1a79b9373 { background: lime; } +.\\\\3A \\\\\`\\\\(--_e40374bcb01050c202b { background: lime; } +.\\\\31 23--_ec7108c037cbacfbb41 { background: lime; } +.\\\\31 a2b3c--ede5ee005ce96f9de0d8 { background: lime; } +.\\\\
--_add6ba3a806e4e89c25 { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--_5a72290b08f16a70e6e { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_8643b64085158d157d4 { background: lime; } +.\\\\#--_7346997a8ea491985ae { background: lime; } +.\\\\#\\\\#--f51a1bcd5b215c049e7e { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--_c58cdb64cfefb320f70 { background: lime; } +.\\\\_--_6f952770d6b3390c36b { background: lime; } +.\\\\{\\\\}--cdaa74c4f6c9e2b15fff { background: lime; } +.\\\\#fake\\\\-id--fe2efa29950f418d477a { background: lime; } +.foo\\\\.bar--ff62a9ce0270a7159046 { background: lime; } +.\\\\3A hover--_8e85f8ae7f4139a5258 { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--_10f1c6d9945b1e0f789 { background: lime; } +.\\\\[attr\\\\=value\\\\]--e0cacaf2470563d41d45 { background: lime; } +.f\\\\/o\\\\/o--_45f50181c83f563b5c2 { background: lime; } +.f\\\\\\\\o\\\\\\\\o--aea404d6630a39db19d8 { background: lime; } +.f\\\\*o\\\\*o--_b29a485ccb4e98b4048 { background: lime; } +.f\\\\!o\\\\!o--c79446ed553ff32b17fd { background: lime; } +.f\\\\'o\\\\'o--_49cf7b5f2fdb64b9373 { background: lime; } +.f\\\\~o\\\\~o--_05ee4fc2b9a084dfdf0 { background: lime; } +.f\\\\+o\\\\+o--f55241c183f773304829 { background: lime; } + +.foo\\\\/bar--_d445c2f789a6c1b6531 { + background: hotpink; +} + +.foo\\\\\\\\bar--a407ef7c9f9341565b64 { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--ec4e79254ca1b4c975bd { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--b2ea1383b7cbebaf07d1 { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: result 2`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".test--HovVWrUTjN { + background: red; +} + +._test--_1mLQ0KYr3 { + background: blue; +} + +.className--MMk_yFMICy { + background: red; +} + +#someId--f_mZz_4mbp { + background: green; +} + +.className--MMk_yFMICy .subClass--FYyIWexDGl { + color: green; +} + +#someId--f_mZz_4mbp .subClass--FYyIWexDGl { + color: blue; +} + +.-a0-34a___f--r_hifewiIo { + color: red; +} + +.m_x_\\\\@--yUrnJ_pW2A { + margin-left: auto !important; + margin-right: auto !important; +} + +.B\\\\&W\\\\?--O_Xkei1DAX { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.\\\\3A \\\\\`\\\\(--_rpCeu5pHk { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.\\\\31 a2b3c--mxXeAFeh5M { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#\\\\#fake-id--_92k79k_uZ { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#-a-b-c---c0kkJWClsc { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#©--DLosMLOukp { + color: black; +} + +.♥--HQMfjUZeec { background: lime; } +.©--DLosMLOukp { background: lime; } +.“‘’”--bS0LrUqKBV { background: lime; } +.☺☃--F0_yWUDvky { background: lime; } +.⌘⌥--VyeHlHnBWZ { background: lime; } +.𝄞♪♩♫♬--Qi7pfuLhD3 { background: lime; } +.💩--CjG3lWNhvV { background: lime; } +.\\\\?--heeATAtrwL { background: lime; } +.\\\\@--YofbbuSihG { background: lime; } +.\\\\.--_29WwWt8JV { background: lime; } +.\\\\3A \\\\)--I_4AeARK9l { background: lime; } +.\\\\3A \\\\\`\\\\(--_rpCeu5pHk { background: lime; } +.\\\\31 23--_Oc_nRVO4G { background: lime; } +.\\\\31 a2b3c--mxXeAFeh5M { background: lime; } +.\\\\
--KBVLvvCBhx { background: lime; } +.\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--vOWmh2fN7C { background: lime; } +.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_D32kH5S0x { background: lime; } +.\\\\#--LpBEGYchm6 { background: lime; } +.\\\\#\\\\#--wZKDT2QRg1 { background: lime; } +.\\\\#\\\\.\\\\#\\\\.\\\\#--oGI7_ChvpM { background: lime; } +.\\\\_--myeULb2GLN { background: lime; } +.\\\\{\\\\}--Mae71ybFnD { background: lime; } +.\\\\#fake\\\\-id--_92k79k_uZ { background: lime; } +.foo\\\\.bar--TpLCT2g4E_ { background: lime; } +.\\\\3A hover--l6Av_vs8d_ { background: lime; } +.\\\\3A hover\\\\3A focus\\\\3A active--ZGmd9HMc_i { background: lime; } +.\\\\[attr\\\\=value\\\\]--KPlJewNi3K { background: lime; } +.f\\\\/o\\\\/o--DIrFdFnBQ9 { background: lime; } +.f\\\\\\\\o\\\\\\\\o--H1knt1tAX5 { background: lime; } +.f\\\\*o\\\\*o--_vAKu2IlrR { background: lime; } +.f\\\\!o\\\\!o--APY_BKpa8G { background: lime; } +.f\\\\'o\\\\'o--jTuAkufdKA { background: lime; } +.f\\\\~o\\\\~o--S4VvFBeH35 { background: lime; } +.f\\\\+o\\\\+o--AWIsfyEkWw { background: lime; } + +.foo\\\\/bar--DhIde1Wbgz { + background: hotpink; +} + +.foo\\\\\\\\bar--aeKkgCs_2D { + background: hotpink; +} + +.foo\\\\/bar\\\\/baz--QFT18bFiHR { + background: hotpink; +} + +.foo\\\\\\\\bar\\\\\\\\baz--uM3RYQs79z { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentHashFunction" option: warnings 2`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: errors 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: 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, \\".localIdentName--test--_9655 {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName--_test--_ded4 {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName--className--d8d5b {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName--someId--d510b {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName--className--d8d5b .localIdentName--subClass--_bc5c {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName--someId--d510b .localIdentName--subClass--_bc5c {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName---a0-34a___f--ffdef {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName--m_x_\\\\\\\\@--_6a26 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName--B\\\\\\\\&W\\\\\\\\?--_a00e {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--ace13 {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName--\\\\\\\\31 a2b3c--_b3ba {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName--\\\\\\\\#fake-id--_6540 {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName---a-b-c---dcf72 {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName--©--_f667 {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName--♥--_4e1b { background: lime; }\\\\n.localIdentName--©--_f667 { background: lime; }\\\\n.localIdentName--“‘’”--_240b { background: lime; }\\\\n.localIdentName--☺☃--_f55f { background: lime; }\\\\n.localIdentName--⌘⌥--_6e9f { background: lime; }\\\\n.localIdentName--𝄞♪♩♫♬--c08e9 { background: lime; }\\\\n.localIdentName--💩--_c930 { background: lime; }\\\\n.localIdentName--\\\\\\\\?--_8abe { background: lime; }\\\\n.localIdentName--\\\\\\\\@--fc6a4 { background: lime; }\\\\n.localIdentName--\\\\\\\\.--_61b5 { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\)--d17cf { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--ace13 { background: lime; }\\\\n.localIdentName--\\\\\\\\31 23--ab00d { background: lime; }\\\\n.localIdentName--\\\\\\\\31 a2b3c--_b3ba { background: lime; }\\\\n.localIdentName--\\\\\\\\
--_adaa { background: lime; }\\\\n.localIdentName--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--c74af { background: lime; }\\\\n.localIdentName--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--_9349 { background: lime; }\\\\n.localIdentName--\\\\\\\\#--be99f { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\#--cd95f { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--_0968 { background: lime; }\\\\n.localIdentName--\\\\\\\\_--_e1ed { background: lime; }\\\\n.localIdentName--\\\\\\\\{\\\\\\\\}--f896f { background: lime; }\\\\n.localIdentName--\\\\\\\\#fake\\\\\\\\-id--_6540 { background: lime; }\\\\n.localIdentName--foo\\\\\\\\.bar--d1e14 { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover--_f970 { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--e0f06 { background: lime; }\\\\n.localIdentName--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--f2a7f { background: lime; }\\\\n.localIdentName--f\\\\\\\\/o\\\\\\\\/o--_31d4 { background: lime; }\\\\n.localIdentName--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--_d9a8 { background: lime; }\\\\n.localIdentName--f\\\\\\\\*o\\\\\\\\*o--_800f { background: lime; }\\\\n.localIdentName--f\\\\\\\\!o\\\\\\\\!o--c6bb7 { background: lime; }\\\\n.localIdentName--f\\\\\\\\'o\\\\\\\\'o--f54f6 { background: lime; }\\\\n.localIdentName--f\\\\\\\\~o\\\\\\\\~o--_eb57 { background: lime; }\\\\n.localIdentName--f\\\\\\\\+o\\\\\\\\+o--_a23f { background: lime; }\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar--_835c {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar--_1817 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar\\\\\\\\/baz--_289c {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--_69e3 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"localIdentName--123--ab00d\\", + \\"test\\": \\"localIdentName--test--_9655\\", + \\"_test\\": \\"localIdentName--_test--_ded4\\", + \\"className\\": \\"localIdentName--className--d8d5b\\", + \\"someId\\": \\"localIdentName--someId--d510b\\", + \\"subClass\\": \\"localIdentName--subClass--_bc5c\\", + \\"-a0-34a___f\\": \\"localIdentName---a0-34a___f--ffdef\\", + \\"m_x_@\\": \\"localIdentName--m_x_@--_6a26\\", + \\"B&W?\\": \\"localIdentName--B&W?--_a00e\\", + \\":\`(\\": \\"localIdentName--:\`(--ace13\\", + \\"1a2b3c\\": \\"localIdentName--1a2b3c--_b3ba\\", + \\"#fake-id\\": \\"localIdentName--#fake-id--_6540\\", + \\"-a-b-c-\\": \\"localIdentName---a-b-c---dcf72\\", + \\"©\\": \\"localIdentName--©--_f667\\", + \\"♥\\": \\"localIdentName--♥--_4e1b\\", + \\"“‘’”\\": \\"localIdentName--“‘’”--_240b\\", + \\"☺☃\\": \\"localIdentName--☺☃--_f55f\\", + \\"⌘⌥\\": \\"localIdentName--⌘⌥--_6e9f\\", + \\"𝄞♪♩♫♬\\": \\"localIdentName--𝄞♪♩♫♬--c08e9\\", + \\"💩\\": \\"localIdentName--💩--_c930\\", + \\"?\\": \\"localIdentName--?--_8abe\\", + \\"@\\": \\"localIdentName--@--fc6a4\\", + \\".\\": \\"localIdentName--.--_61b5\\", + \\":)\\": \\"localIdentName--:)--d17cf\\", + \\"
\\": \\"localIdentName--
--_adaa\\", + \\"<><<<>><>\\": \\"localIdentName--<><<<>><>--c74af\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--_9349\\", + \\"#\\": \\"localIdentName--#--be99f\\", + \\"##\\": \\"localIdentName--##--cd95f\\", + \\"#.#.#\\": \\"localIdentName--#.#.#--_0968\\", + \\"_\\": \\"localIdentName--_--_e1ed\\", + \\"{}\\": \\"localIdentName--{}--f896f\\", + \\"foo.bar\\": \\"localIdentName--foo.bar--d1e14\\", + \\":hover\\": \\"localIdentName--:hover--_f970\\", + \\":hover:focus:active\\": \\"localIdentName--:hover:focus:active--e0f06\\", + \\"[attr=value]\\": \\"localIdentName--[attr=value]--f2a7f\\", + \\"f/o/o\\": \\"localIdentName--f/o/o--_31d4\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"localIdentName--f\\\\\\\\o\\\\\\\\o--_d9a8\\", + \\"f*o*o\\": \\"localIdentName--f*o*o--_800f\\", + \\"f!o!o\\": \\"localIdentName--f!o!o--c6bb7\\", + \\"f'o'o\\": \\"localIdentName--f'o'o--f54f6\\", + \\"f~o~o\\": \\"localIdentName--f~o~o--_eb57\\", + \\"f+o+o\\": \\"localIdentName--f+o+o--_a23f\\", + \\"foo/bar\\": \\"localIdentName--foo/bar--_835c\\", + \\"foo\\\\\\\\bar\\": \\"localIdentName--foo\\\\\\\\bar--_1817\\", + \\"foo/bar/baz\\": \\"localIdentName--foo/bar/baz--_289c\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"localIdentName--foo\\\\\\\\bar\\\\\\\\baz--_69e3\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName--test--_9655 { + background: red; +} + +.localIdentName--_test--_ded4 { + background: blue; +} + +.localIdentName--className--d8d5b { + background: red; +} + +#localIdentName--someId--d510b { + background: green; +} + +.localIdentName--className--d8d5b .localIdentName--subClass--_bc5c { + color: green; +} + +#localIdentName--someId--d510b .localIdentName--subClass--_bc5c { + color: blue; +} + +.localIdentName---a0-34a___f--ffdef { + color: red; +} + +.localIdentName--m_x_\\\\@--_6a26 { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\\\&W\\\\?--_a00e { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.localIdentName--\\\\3A \\\\\`\\\\(--ace13 { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.localIdentName--\\\\31 a2b3c--_b3ba { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#localIdentName--\\\\#fake-id--_6540 { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#localIdentName---a-b-c---dcf72 { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#localIdentName--©--_f667 { + color: black; +} + +.localIdentName--♥--_4e1b { background: lime; } +.localIdentName--©--_f667 { background: lime; } +.localIdentName--“‘’”--_240b { background: lime; } +.localIdentName--☺☃--_f55f { background: lime; } +.localIdentName--⌘⌥--_6e9f { background: lime; } +.localIdentName--𝄞♪♩♫♬--c08e9 { background: lime; } +.localIdentName--💩--_c930 { background: lime; } +.localIdentName--\\\\?--_8abe { background: lime; } +.localIdentName--\\\\@--fc6a4 { background: lime; } +.localIdentName--\\\\.--_61b5 { background: lime; } +.localIdentName--\\\\3A \\\\)--d17cf { background: lime; } +.localIdentName--\\\\3A \\\\\`\\\\(--ace13 { background: lime; } +.localIdentName--\\\\31 23--ab00d { background: lime; } +.localIdentName--\\\\31 a2b3c--_b3ba { background: lime; } +.localIdentName--\\\\
--_adaa { background: lime; } +.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--c74af { background: lime; } +.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--_9349 { background: lime; } +.localIdentName--\\\\#--be99f { background: lime; } +.localIdentName--\\\\#\\\\#--cd95f { background: lime; } +.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--_0968 { background: lime; } +.localIdentName--\\\\_--_e1ed { background: lime; } +.localIdentName--\\\\{\\\\}--f896f { background: lime; } +.localIdentName--\\\\#fake\\\\-id--_6540 { background: lime; } +.localIdentName--foo\\\\.bar--d1e14 { background: lime; } +.localIdentName--\\\\3A hover--_f970 { background: lime; } +.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--e0f06 { background: lime; } +.localIdentName--\\\\[attr\\\\=value\\\\]--f2a7f { background: lime; } +.localIdentName--f\\\\/o\\\\/o--_31d4 { background: lime; } +.localIdentName--f\\\\\\\\o\\\\\\\\o--_d9a8 { background: lime; } +.localIdentName--f\\\\*o\\\\*o--_800f { background: lime; } +.localIdentName--f\\\\!o\\\\!o--c6bb7 { background: lime; } +.localIdentName--f\\\\'o\\\\'o--f54f6 { background: lime; } +.localIdentName--f\\\\~o\\\\~o--_eb57 { background: lime; } +.localIdentName--f\\\\+o\\\\+o--_a23f { background: lime; } + +.localIdentName--foo\\\\/bar--_835c { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar--_1817 { + background: hotpink; +} + +.localIdentName--foo\\\\/bar\\\\/baz--_289c { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--_69e3 { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentName" option 2: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentName" option: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".localIdentName--test--iWVbM {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName--_test--He1GC {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName--className--_NW73 {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName--someId--_RC_7 {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName--className--_NW73 .localIdentName--subClass--G8XHq {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName--someId--_RC_7 .localIdentName--subClass--G8XHq {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName---a0-34a___f--_97_H {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName--m_x_\\\\\\\\@--ZqJiv {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName--B\\\\\\\\&W\\\\\\\\?--WgDq6 {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--rOE5z {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName--\\\\\\\\31 a2b3c--CzutG {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName--\\\\\\\\#fake-id--ZlQLP {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName---a-b-c---_Pclv {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName--©--L2Zwb {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName--♥--lOG33 { background: lime; }\\\\n.localIdentName--©--L2Zwb { background: lime; }\\\\n.localIdentName--“‘’”--EkC89 { background: lime; }\\\\n.localIdentName--☺☃--T1XyS { background: lime; }\\\\n.localIdentName--⌘⌥--Funx7 { background: lime; }\\\\n.localIdentName--𝄞♪♩♫♬--wI6di { background: lime; }\\\\n.localIdentName--💩--LJMDo { background: lime; }\\\\n.localIdentName--\\\\\\\\?--mKvtX { background: lime; }\\\\n.localIdentName--\\\\\\\\@--_GpKW { background: lime; }\\\\n.localIdentName--\\\\\\\\.--RhtfL { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\)--_Xz8A { background: lime; }\\\\n.localIdentName--\\\\\\\\3A \\\\\\\\\`\\\\\\\\(--rOE5z { background: lime; }\\\\n.localIdentName--\\\\\\\\31 23--qwDWw { background: lime; }\\\\n.localIdentName--\\\\\\\\31 a2b3c--CzutG { background: lime; }\\\\n.localIdentName--\\\\\\\\
--etqt5 { background: lime; }\\\\n.localIdentName--\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>--x0r0d { background: lime; }\\\\n.localIdentName--\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.--KTSRl { background: lime; }\\\\n.localIdentName--\\\\\\\\#--vpn9q { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\#--zZX1i { background: lime; }\\\\n.localIdentName--\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#--EJaMR { background: lime; }\\\\n.localIdentName--\\\\\\\\_--Ph7Te { background: lime; }\\\\n.localIdentName--\\\\\\\\{\\\\\\\\}--_Jb3C { background: lime; }\\\\n.localIdentName--\\\\\\\\#fake\\\\\\\\-id--ZlQLP { background: lime; }\\\\n.localIdentName--foo\\\\\\\\.bar--_eFAU { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover--b5cLb { background: lime; }\\\\n.localIdentName--\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active--_PBj_ { background: lime; }\\\\n.localIdentName--\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]--_qf98 { background: lime; }\\\\n.localIdentName--f\\\\\\\\/o\\\\\\\\/o--Ax1IQ { background: lime; }\\\\n.localIdentName--f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o--HZqNz { background: lime; }\\\\n.localIdentName--f\\\\\\\\*o\\\\\\\\*o--KAD4J { background: lime; }\\\\n.localIdentName--f\\\\\\\\!o\\\\\\\\!o--xrt7w { background: lime; }\\\\n.localIdentName--f\\\\\\\\'o\\\\\\\\'o--_U9sL { background: lime; }\\\\n.localIdentName--f\\\\\\\\~o\\\\\\\\~o--frVya { background: lime; }\\\\n.localIdentName--f\\\\\\\\+o\\\\\\\\+o--KiP6w { background: lime; }\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar--ODXF8 {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar--gYF7L {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\/bar\\\\\\\\/baz--konKL {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName--foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz--Bp4zV {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"localIdentName--123--qwDWw\\", + \\"test\\": \\"localIdentName--test--iWVbM\\", + \\"_test\\": \\"localIdentName--_test--He1GC\\", + \\"className\\": \\"localIdentName--className--_NW73\\", + \\"someId\\": \\"localIdentName--someId--_RC_7\\", + \\"subClass\\": \\"localIdentName--subClass--G8XHq\\", + \\"-a0-34a___f\\": \\"localIdentName---a0-34a___f--_97_H\\", + \\"m_x_@\\": \\"localIdentName--m_x_@--ZqJiv\\", + \\"B&W?\\": \\"localIdentName--B&W?--WgDq6\\", + \\":\`(\\": \\"localIdentName--:\`(--rOE5z\\", + \\"1a2b3c\\": \\"localIdentName--1a2b3c--CzutG\\", + \\"#fake-id\\": \\"localIdentName--#fake-id--ZlQLP\\", + \\"-a-b-c-\\": \\"localIdentName---a-b-c---_Pclv\\", + \\"©\\": \\"localIdentName--©--L2Zwb\\", + \\"♥\\": \\"localIdentName--♥--lOG33\\", + \\"“‘’”\\": \\"localIdentName--“‘’”--EkC89\\", + \\"☺☃\\": \\"localIdentName--☺☃--T1XyS\\", + \\"⌘⌥\\": \\"localIdentName--⌘⌥--Funx7\\", + \\"𝄞♪♩♫♬\\": \\"localIdentName--𝄞♪♩♫♬--wI6di\\", + \\"💩\\": \\"localIdentName--💩--LJMDo\\", + \\"?\\": \\"localIdentName--?--mKvtX\\", + \\"@\\": \\"localIdentName--@--_GpKW\\", + \\".\\": \\"localIdentName--.--RhtfL\\", + \\":)\\": \\"localIdentName--:)--_Xz8A\\", + \\"
\\": \\"localIdentName--
--etqt5\\", + \\"<><<<>><>\\": \\"localIdentName--<><<<>><>--x0r0d\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"localIdentName--++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.--KTSRl\\", + \\"#\\": \\"localIdentName--#--vpn9q\\", + \\"##\\": \\"localIdentName--##--zZX1i\\", + \\"#.#.#\\": \\"localIdentName--#.#.#--EJaMR\\", + \\"_\\": \\"localIdentName--_--Ph7Te\\", + \\"{}\\": \\"localIdentName--{}--_Jb3C\\", + \\"foo.bar\\": \\"localIdentName--foo.bar--_eFAU\\", + \\":hover\\": \\"localIdentName--:hover--b5cLb\\", + \\":hover:focus:active\\": \\"localIdentName--:hover:focus:active--_PBj_\\", + \\"[attr=value]\\": \\"localIdentName--[attr=value]--_qf98\\", + \\"f/o/o\\": \\"localIdentName--f/o/o--Ax1IQ\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"localIdentName--f\\\\\\\\o\\\\\\\\o--HZqNz\\", + \\"f*o*o\\": \\"localIdentName--f*o*o--KAD4J\\", + \\"f!o!o\\": \\"localIdentName--f!o!o--xrt7w\\", + \\"f'o'o\\": \\"localIdentName--f'o'o--_U9sL\\", + \\"f~o~o\\": \\"localIdentName--f~o~o--frVya\\", + \\"f+o+o\\": \\"localIdentName--f+o+o--KiP6w\\", + \\"foo/bar\\": \\"localIdentName--foo/bar--ODXF8\\", + \\"foo\\\\\\\\bar\\": \\"localIdentName--foo\\\\\\\\bar--gYF7L\\", + \\"foo/bar/baz\\": \\"localIdentName--foo/bar/baz--konKL\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"localIdentName--foo\\\\\\\\bar\\\\\\\\baz--Bp4zV\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentName" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName--test--iWVbM { + background: red; +} + +.localIdentName--_test--He1GC { + background: blue; +} + +.localIdentName--className--_NW73 { + background: red; +} + +#localIdentName--someId--_RC_7 { + background: green; +} + +.localIdentName--className--_NW73 .localIdentName--subClass--G8XHq { + color: green; +} + +#localIdentName--someId--_RC_7 .localIdentName--subClass--G8XHq { + color: blue; +} + +.localIdentName---a0-34a___f--_97_H { + color: red; +} + +.localIdentName--m_x_\\\\@--ZqJiv { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName--B\\\\&W\\\\?--WgDq6 { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.localIdentName--\\\\3A \\\\\`\\\\(--rOE5z { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.localIdentName--\\\\31 a2b3c--CzutG { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#localIdentName--\\\\#fake-id--ZlQLP { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#localIdentName---a-b-c---_Pclv { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#localIdentName--©--L2Zwb { + color: black; +} + +.localIdentName--♥--lOG33 { background: lime; } +.localIdentName--©--L2Zwb { background: lime; } +.localIdentName--“‘’”--EkC89 { background: lime; } +.localIdentName--☺☃--T1XyS { background: lime; } +.localIdentName--⌘⌥--Funx7 { background: lime; } +.localIdentName--𝄞♪♩♫♬--wI6di { background: lime; } +.localIdentName--💩--LJMDo { background: lime; } +.localIdentName--\\\\?--mKvtX { background: lime; } +.localIdentName--\\\\@--_GpKW { background: lime; } +.localIdentName--\\\\.--RhtfL { background: lime; } +.localIdentName--\\\\3A \\\\)--_Xz8A { background: lime; } +.localIdentName--\\\\3A \\\\\`\\\\(--rOE5z { background: lime; } +.localIdentName--\\\\31 23--qwDWw { background: lime; } +.localIdentName--\\\\31 a2b3c--CzutG { background: lime; } +.localIdentName--\\\\
--etqt5 { background: lime; } +.localIdentName--\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>--x0r0d { background: lime; } +.localIdentName--\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.--KTSRl { background: lime; } +.localIdentName--\\\\#--vpn9q { background: lime; } +.localIdentName--\\\\#\\\\#--zZX1i { background: lime; } +.localIdentName--\\\\#\\\\.\\\\#\\\\.\\\\#--EJaMR { background: lime; } +.localIdentName--\\\\_--Ph7Te { background: lime; } +.localIdentName--\\\\{\\\\}--_Jb3C { background: lime; } +.localIdentName--\\\\#fake\\\\-id--ZlQLP { background: lime; } +.localIdentName--foo\\\\.bar--_eFAU { background: lime; } +.localIdentName--\\\\3A hover--b5cLb { background: lime; } +.localIdentName--\\\\3A hover\\\\3A focus\\\\3A active--_PBj_ { background: lime; } +.localIdentName--\\\\[attr\\\\=value\\\\]--_qf98 { background: lime; } +.localIdentName--f\\\\/o\\\\/o--Ax1IQ { background: lime; } +.localIdentName--f\\\\\\\\o\\\\\\\\o--HZqNz { background: lime; } +.localIdentName--f\\\\*o\\\\*o--KAD4J { background: lime; } +.localIdentName--f\\\\!o\\\\!o--xrt7w { background: lime; } +.localIdentName--f\\\\'o\\\\'o--_U9sL { background: lime; } +.localIdentName--f\\\\~o\\\\~o--frVya { background: lime; } +.localIdentName--f\\\\+o\\\\+o--KiP6w { background: lime; } + +.localIdentName--foo\\\\/bar--ODXF8 { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar--gYF7L { + background: hotpink; +} + +.localIdentName--foo\\\\/bar\\\\/baz--konKL { + background: hotpink; +} + +.localIdentName--foo\\\\\\\\bar\\\\\\\\baz--Bp4zV { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentName" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: errors 1`] = `Array []`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: 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, \\".localIdentName__test__HovVWrUT {\\\\n background: red;\\\\n}\\\\n\\\\n.localIdentName___test___1mLQ0KY {\\\\n background: blue;\\\\n}\\\\n\\\\n.localIdentName__className__MMk_yFMI {\\\\n background: red;\\\\n}\\\\n\\\\n#localIdentName__someId__f_mZz_4m {\\\\n background: green;\\\\n}\\\\n\\\\n.localIdentName__className__MMk_yFMI .localIdentName__subClass__FYyIWexD {\\\\n color: green;\\\\n}\\\\n\\\\n#localIdentName__someId__f_mZz_4m .localIdentName__subClass__FYyIWexD {\\\\n color: blue;\\\\n}\\\\n\\\\n.localIdentName__-a0-34a___f__r_hifewi {\\\\n color: red;\\\\n}\\\\n\\\\n.localIdentName__m_x_\\\\\\\\@__yUrnJ_pW {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n.localIdentName__B\\\\\\\\&W\\\\\\\\?__O_Xkei1D {\\\\n margin-left: auto !important;\\\\n margin-right: auto !important;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\":\`(\\\\\\" */\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\(___rpCeu5p {\\\\n color: aqua;\\\\n}\\\\n\\\\n/* matches elements with class=\\\\\\"1a2b3c\\\\\\" */\\\\n.localIdentName__\\\\\\\\31 a2b3c__mxXeAFeh {\\\\n color: aliceblue;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"#fake-id\\\\\\" */\\\\n#localIdentName__\\\\\\\\#fake-id___92k79k_ {\\\\n color: antiquewhite;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"-a-b-c-\\\\\\" */\\\\n#localIdentName__-a-b-c-__c0kkJWCl {\\\\n color: azure;\\\\n}\\\\n\\\\n/* matches the element with id=\\\\\\"©\\\\\\" */\\\\n#localIdentName__©__DLosMLOu {\\\\n color: black;\\\\n}\\\\n\\\\n.localIdentName__♥__HQMfjUZe { background: lime; }\\\\n.localIdentName__©__DLosMLOu { background: lime; }\\\\n.localIdentName__“‘’”__bS0LrUqK { background: lime; }\\\\n.localIdentName__☺☃__F0_yWUDv { background: lime; }\\\\n.localIdentName__⌘⌥__VyeHlHnB { background: lime; }\\\\n.localIdentName__𝄞♪♩♫♬__Qi7pfuLh { background: lime; }\\\\n.localIdentName__💩__CjG3lWNh { background: lime; }\\\\n.localIdentName__\\\\\\\\?__heeATAtr { background: lime; }\\\\n.localIdentName__\\\\\\\\@__YofbbuSi { background: lime; }\\\\n.localIdentName__\\\\\\\\.___29WwWt8 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\)__I_4AeARK { background: lime; }\\\\n.localIdentName__\\\\\\\\3A \\\\\\\\\`\\\\\\\\(___rpCeu5p { background: lime; }\\\\n.localIdentName__\\\\\\\\31 23___Oc_nRVO { background: lime; }\\\\n.localIdentName__\\\\\\\\31 a2b3c__mxXeAFeh { background: lime; }\\\\n.localIdentName__\\\\\\\\
__KBVLvvCB { background: lime; }\\\\n.localIdentName__\\\\\\\\<\\\\\\\\>\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\>\\\\\\\\>\\\\\\\\<\\\\\\\\>__vOWmh2fN { background: lime; }\\\\n.localIdentName__\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\[\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\>\\\\\\\\+\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\<\\\\\\\\-\\\\\\\\]\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\<\\\\\\\\<\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.\\\\\\\\+\\\\\\\\+\\\\\\\\+\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\-\\\\\\\\.\\\\\\\\>\\\\\\\\+\\\\\\\\.\\\\\\\\>\\\\\\\\.___D32kH5S { background: lime; }\\\\n.localIdentName__\\\\\\\\#__LpBEGYch { background: lime; }\\\\n.localIdentName__\\\\\\\\#\\\\\\\\#__wZKDT2QR { background: lime; }\\\\n.localIdentName__\\\\\\\\#\\\\\\\\.\\\\\\\\#\\\\\\\\.\\\\\\\\#__oGI7_Chv { background: lime; }\\\\n.localIdentName__\\\\\\\\___myeULb2G { background: lime; }\\\\n.localIdentName__\\\\\\\\{\\\\\\\\}__Mae71ybF { background: lime; }\\\\n.localIdentName__\\\\\\\\#fake\\\\\\\\-id___92k79k_ { background: lime; }\\\\n.localIdentName__foo\\\\\\\\.bar__TpLCT2g4 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A hover__l6Av_vs8 { background: lime; }\\\\n.localIdentName__\\\\\\\\3A hover\\\\\\\\3A focus\\\\\\\\3A active__ZGmd9HMc { background: lime; }\\\\n.localIdentName__\\\\\\\\[attr\\\\\\\\=value\\\\\\\\]__KPlJewNi { background: lime; }\\\\n.localIdentName__f\\\\\\\\/o\\\\\\\\/o__DIrFdFnB { background: lime; }\\\\n.localIdentName__f\\\\\\\\\\\\\\\\o\\\\\\\\\\\\\\\\o__H1knt1tA { background: lime; }\\\\n.localIdentName__f\\\\\\\\*o\\\\\\\\*o___vAKu2Il { background: lime; }\\\\n.localIdentName__f\\\\\\\\!o\\\\\\\\!o__APY_BKpa { background: lime; }\\\\n.localIdentName__f\\\\\\\\'o\\\\\\\\'o__jTuAkufd { background: lime; }\\\\n.localIdentName__f\\\\\\\\~o\\\\\\\\~o__S4VvFBeH { background: lime; }\\\\n.localIdentName__f\\\\\\\\+o\\\\\\\\+o__AWIsfyEk { background: lime; }\\\\n\\\\n.localIdentName__foo\\\\\\\\/bar__DhIde1Wb {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\\\\\\\\\bar__aeKkgCs_ {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\/bar\\\\\\\\/baz__QFT18bFi {\\\\n background: hotpink;\\\\n}\\\\n\\\\n.localIdentName__foo\\\\\\\\\\\\\\\\bar\\\\\\\\\\\\\\\\baz__uM3RYQs7 {\\\\n background: hotpink;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"localIdentName__123___Oc_nRVO\\", + \\"test\\": \\"localIdentName__test__HovVWrUT\\", + \\"_test\\": \\"localIdentName___test___1mLQ0KY\\", + \\"className\\": \\"localIdentName__className__MMk_yFMI\\", + \\"someId\\": \\"localIdentName__someId__f_mZz_4m\\", + \\"subClass\\": \\"localIdentName__subClass__FYyIWexD\\", + \\"-a0-34a___f\\": \\"localIdentName__-a0-34a___f__r_hifewi\\", + \\"m_x_@\\": \\"localIdentName__m_x_@__yUrnJ_pW\\", + \\"B&W?\\": \\"localIdentName__B&W?__O_Xkei1D\\", + \\":\`(\\": \\"localIdentName__:\`(___rpCeu5p\\", + \\"1a2b3c\\": \\"localIdentName__1a2b3c__mxXeAFeh\\", + \\"#fake-id\\": \\"localIdentName__#fake-id___92k79k_\\", + \\"-a-b-c-\\": \\"localIdentName__-a-b-c-__c0kkJWCl\\", + \\"©\\": \\"localIdentName__©__DLosMLOu\\", + \\"♥\\": \\"localIdentName__♥__HQMfjUZe\\", + \\"“‘’”\\": \\"localIdentName__“‘’”__bS0LrUqK\\", + \\"☺☃\\": \\"localIdentName__☺☃__F0_yWUDv\\", + \\"⌘⌥\\": \\"localIdentName__⌘⌥__VyeHlHnB\\", + \\"𝄞♪♩♫♬\\": \\"localIdentName__𝄞♪♩♫♬__Qi7pfuLh\\", + \\"💩\\": \\"localIdentName__💩__CjG3lWNh\\", + \\"?\\": \\"localIdentName__?__heeATAtr\\", + \\"@\\": \\"localIdentName__@__YofbbuSi\\", + \\".\\": \\"localIdentName__.___29WwWt8\\", + \\":)\\": \\"localIdentName__:)__I_4AeARK\\", + \\"
\\": \\"localIdentName__
__KBVLvvCB\\", + \\"<><<<>><>\\": \\"localIdentName__<><<<>><>__vOWmh2fN\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.___D32kH5S\\", + \\"#\\": \\"localIdentName__#__LpBEGYch\\", + \\"##\\": \\"localIdentName__##__wZKDT2QR\\", + \\"#.#.#\\": \\"localIdentName__#.#.#__oGI7_Chv\\", + \\"_\\": \\"localIdentName_____myeULb2G\\", + \\"{}\\": \\"localIdentName__{}__Mae71ybF\\", + \\"foo.bar\\": \\"localIdentName__foo.bar__TpLCT2g4\\", + \\":hover\\": \\"localIdentName__:hover__l6Av_vs8\\", + \\":hover:focus:active\\": \\"localIdentName__:hover:focus:active__ZGmd9HMc\\", + \\"[attr=value]\\": \\"localIdentName__[attr=value]__KPlJewNi\\", + \\"f/o/o\\": \\"localIdentName__f/o/o__DIrFdFnB\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"localIdentName__f\\\\\\\\o\\\\\\\\o__H1knt1tA\\", + \\"f*o*o\\": \\"localIdentName__f*o*o___vAKu2Il\\", + \\"f!o!o\\": \\"localIdentName__f!o!o__APY_BKpa\\", + \\"f'o'o\\": \\"localIdentName__f'o'o__jTuAkufd\\", + \\"f~o~o\\": \\"localIdentName__f~o~o__S4VvFBeH\\", + \\"f+o+o\\": \\"localIdentName__f+o+o__AWIsfyEk\\", + \\"foo/bar\\": \\"localIdentName__foo/bar__DhIde1Wb\\", + \\"foo\\\\\\\\bar\\": \\"localIdentName__foo\\\\\\\\bar__aeKkgCs_\\", + \\"foo/bar/baz\\": \\"localIdentName__foo/bar/baz__QFT18bFi\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"localIdentName__foo\\\\\\\\bar\\\\\\\\baz__uM3RYQs7\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".localIdentName__test__HovVWrUT { + background: red; +} + +.localIdentName___test___1mLQ0KY { + background: blue; +} + +.localIdentName__className__MMk_yFMI { + background: red; +} + +#localIdentName__someId__f_mZz_4m { + background: green; +} + +.localIdentName__className__MMk_yFMI .localIdentName__subClass__FYyIWexD { + color: green; +} + +#localIdentName__someId__f_mZz_4m .localIdentName__subClass__FYyIWexD { + color: blue; +} + +.localIdentName__-a0-34a___f__r_hifewi { + color: red; +} + +.localIdentName__m_x_\\\\@__yUrnJ_pW { + margin-left: auto !important; + margin-right: auto !important; +} + +.localIdentName__B\\\\&W\\\\?__O_Xkei1D { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.localIdentName__\\\\3A \\\\\`\\\\(___rpCeu5p { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.localIdentName__\\\\31 a2b3c__mxXeAFeh { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#localIdentName__\\\\#fake-id___92k79k_ { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#localIdentName__-a-b-c-__c0kkJWCl { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#localIdentName__©__DLosMLOu { + color: black; +} + +.localIdentName__♥__HQMfjUZe { background: lime; } +.localIdentName__©__DLosMLOu { background: lime; } +.localIdentName__“‘’”__bS0LrUqK { background: lime; } +.localIdentName__☺☃__F0_yWUDv { background: lime; } +.localIdentName__⌘⌥__VyeHlHnB { background: lime; } +.localIdentName__𝄞♪♩♫♬__Qi7pfuLh { background: lime; } +.localIdentName__💩__CjG3lWNh { background: lime; } +.localIdentName__\\\\?__heeATAtr { background: lime; } +.localIdentName__\\\\@__YofbbuSi { background: lime; } +.localIdentName__\\\\.___29WwWt8 { background: lime; } +.localIdentName__\\\\3A \\\\)__I_4AeARK { background: lime; } +.localIdentName__\\\\3A \\\\\`\\\\(___rpCeu5p { background: lime; } +.localIdentName__\\\\31 23___Oc_nRVO { background: lime; } +.localIdentName__\\\\31 a2b3c__mxXeAFeh { background: lime; } +.localIdentName__\\\\
__KBVLvvCB { background: lime; } +.localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\>__vOWmh2fN { background: lime; } +.localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\.___D32kH5S { background: lime; } +.localIdentName__\\\\#__LpBEGYch { background: lime; } +.localIdentName__\\\\#\\\\#__wZKDT2QR { background: lime; } +.localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\#__oGI7_Chv { background: lime; } +.localIdentName__\\\\___myeULb2G { background: lime; } +.localIdentName__\\\\{\\\\}__Mae71ybF { background: lime; } +.localIdentName__\\\\#fake\\\\-id___92k79k_ { background: lime; } +.localIdentName__foo\\\\.bar__TpLCT2g4 { background: lime; } +.localIdentName__\\\\3A hover__l6Av_vs8 { background: lime; } +.localIdentName__\\\\3A hover\\\\3A focus\\\\3A active__ZGmd9HMc { background: lime; } +.localIdentName__\\\\[attr\\\\=value\\\\]__KPlJewNi { background: lime; } +.localIdentName__f\\\\/o\\\\/o__DIrFdFnB { background: lime; } +.localIdentName__f\\\\\\\\o\\\\\\\\o__H1knt1tA { background: lime; } +.localIdentName__f\\\\*o\\\\*o___vAKu2Il { background: lime; } +.localIdentName__f\\\\!o\\\\!o__APY_BKpa { background: lime; } +.localIdentName__f\\\\'o\\\\'o__jTuAkufd { background: lime; } +.localIdentName__f\\\\~o\\\\~o__S4VvFBeH { background: lime; } +.localIdentName__f\\\\+o\\\\+o__AWIsfyEk { background: lime; } + +.localIdentName__foo\\\\/bar__DhIde1Wb { + background: hotpink; +} + +.localIdentName__foo\\\\\\\\bar__aeKkgCs_ { + background: hotpink; +} + +.localIdentName__foo\\\\/bar\\\\/baz__QFT18bFi { + background: hotpink; +} + +.localIdentName__foo\\\\\\\\bar\\\\\\\\baz__uM3RYQs7 { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "localIdentRegExp" option: warnings 1`] = `Array []`; + +exports[`"modules" option should work and respect the "path" placeholder: errors 1`] = `Array []`; + +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___(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 +___CSS_LOADER_EXPORT___.locals = { + \\"123\\": \\"fixtures-modules-localIdentName-localIdentName__123\\", + \\"test\\": \\"fixtures-modules-localIdentName-localIdentName__test\\", + \\"_test\\": \\"fixtures-modules-localIdentName-localIdentName___test\\", + \\"className\\": \\"fixtures-modules-localIdentName-localIdentName__className\\", + \\"someId\\": \\"fixtures-modules-localIdentName-localIdentName__someId\\", + \\"subClass\\": \\"fixtures-modules-localIdentName-localIdentName__subClass\\", + \\"-a0-34a___f\\": \\"fixtures-modules-localIdentName-localIdentName__-a0-34a___f\\", + \\"m_x_@\\": \\"fixtures-modules-localIdentName-localIdentName__m_x_@\\", + \\"B&W?\\": \\"fixtures-modules-localIdentName-localIdentName__B&W?\\", + \\":\`(\\": \\"fixtures-modules-localIdentName-localIdentName__:\`(\\", + \\"1a2b3c\\": \\"fixtures-modules-localIdentName-localIdentName__1a2b3c\\", + \\"#fake-id\\": \\"fixtures-modules-localIdentName-localIdentName__#fake-id\\", + \\"-a-b-c-\\": \\"fixtures-modules-localIdentName-localIdentName__-a-b-c-\\", + \\"©\\": \\"fixtures-modules-localIdentName-localIdentName__©\\", + \\"♥\\": \\"fixtures-modules-localIdentName-localIdentName__♥\\", + \\"“‘’”\\": \\"fixtures-modules-localIdentName-localIdentName__“‘’”\\", + \\"☺☃\\": \\"fixtures-modules-localIdentName-localIdentName__☺☃\\", + \\"⌘⌥\\": \\"fixtures-modules-localIdentName-localIdentName__⌘⌥\\", + \\"𝄞♪♩♫♬\\": \\"fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬\\", + \\"💩\\": \\"fixtures-modules-localIdentName-localIdentName__💩\\", + \\"?\\": \\"fixtures-modules-localIdentName-localIdentName__?\\", + \\"@\\": \\"fixtures-modules-localIdentName-localIdentName__@\\", + \\".\\": \\"fixtures-modules-localIdentName-localIdentName__.\\", + \\":)\\": \\"fixtures-modules-localIdentName-localIdentName__:)\\", + \\"
\\": \\"fixtures-modules-localIdentName-localIdentName__
\\", + \\"<><<<>><>\\": \\"fixtures-modules-localIdentName-localIdentName__<><<<>><>\\", + \\"++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\": \\"fixtures-modules-localIdentName-localIdentName__++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.\\", + \\"#\\": \\"fixtures-modules-localIdentName-localIdentName__#\\", + \\"##\\": \\"fixtures-modules-localIdentName-localIdentName__##\\", + \\"#.#.#\\": \\"fixtures-modules-localIdentName-localIdentName__#.#.#\\", + \\"_\\": \\"fixtures-modules-localIdentName-localIdentName___\\", + \\"{}\\": \\"fixtures-modules-localIdentName-localIdentName__{}\\", + \\"foo.bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo.bar\\", + \\":hover\\": \\"fixtures-modules-localIdentName-localIdentName__:hover\\", + \\":hover:focus:active\\": \\"fixtures-modules-localIdentName-localIdentName__:hover:focus:active\\", + \\"[attr=value]\\": \\"fixtures-modules-localIdentName-localIdentName__[attr=value]\\", + \\"f/o/o\\": \\"fixtures-modules-localIdentName-localIdentName__f/o/o\\", + \\"f\\\\\\\\o\\\\\\\\o\\": \\"fixtures-modules-localIdentName-localIdentName__f\\\\\\\\o\\\\\\\\o\\", + \\"f*o*o\\": \\"fixtures-modules-localIdentName-localIdentName__f*o*o\\", + \\"f!o!o\\": \\"fixtures-modules-localIdentName-localIdentName__f!o!o\\", + \\"f'o'o\\": \\"fixtures-modules-localIdentName-localIdentName__f'o'o\\", + \\"f~o~o\\": \\"fixtures-modules-localIdentName-localIdentName__f~o~o\\", + \\"f+o+o\\": \\"fixtures-modules-localIdentName-localIdentName__f+o+o\\", + \\"foo/bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo/bar\\", + \\"foo\\\\\\\\bar\\": \\"fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\", + \\"foo/bar/baz\\": \\"fixtures-modules-localIdentName-localIdentName__foo/bar/baz\\", + \\"foo\\\\\\\\bar\\\\\\\\baz\\": \\"fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and respect the "path" placeholder: result 1`] = ` +Array [ + Array [ + "./modules/localIdentName/localIdentName.css", + ".fixtures-modules-localIdentName-localIdentName__test { + background: red; +} + +.fixtures-modules-localIdentName-localIdentName___test { + background: blue; +} + +.fixtures-modules-localIdentName-localIdentName__className { + background: red; +} + +#fixtures-modules-localIdentName-localIdentName__someId { + background: green; +} + +.fixtures-modules-localIdentName-localIdentName__className .fixtures-modules-localIdentName-localIdentName__subClass { + color: green; +} + +#fixtures-modules-localIdentName-localIdentName__someId .fixtures-modules-localIdentName-localIdentName__subClass { + color: blue; +} + +.fixtures-modules-localIdentName-localIdentName__-a0-34a___f { + color: red; +} + +.fixtures-modules-localIdentName-localIdentName__m_x_\\\\@ { + margin-left: auto !important; + margin-right: auto !important; +} + +.fixtures-modules-localIdentName-localIdentName__B\\\\&W\\\\? { + margin-left: auto !important; + margin-right: auto !important; +} + +/* matches elements with class=\\":\`(\\" */ +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\`\\\\( { + color: aqua; +} + +/* matches elements with class=\\"1a2b3c\\" */ +.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { + color: aliceblue; +} + +/* matches the element with id=\\"#fake-id\\" */ +#fixtures-modules-localIdentName-localIdentName__\\\\#fake-id { + color: antiquewhite; +} + +/* matches the element with id=\\"-a-b-c-\\" */ +#fixtures-modules-localIdentName-localIdentName__-a-b-c- { + color: azure; +} + +/* matches the element with id=\\"©\\" */ +#fixtures-modules-localIdentName-localIdentName__© { + color: black; +} + +.fixtures-modules-localIdentName-localIdentName__♥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__© { background: lime; } +.fixtures-modules-localIdentName-localIdentName__“‘’” { background: lime; } +.fixtures-modules-localIdentName-localIdentName__☺☃ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__⌘⌥ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__𝄞♪♩♫♬ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__💩 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\? { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\@ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\) { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A \\\\\`\\\\( { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\31 23 { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\31 a2b3c { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\
{ background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\<\\\\>\\\\<\\\\<\\\\<\\\\>\\\\>\\\\<\\\\> { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\[\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\>\\\\+\\\\+\\\\+\\\\>\\\\+\\\\<\\\\<\\\\<\\\\<\\\\-\\\\]\\\\>\\\\+\\\\+\\\\.\\\\>\\\\+\\\\.\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\.\\\\+\\\\+\\\\+\\\\.\\\\>\\\\+\\\\+\\\\.\\\\<\\\\<\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\+\\\\.\\\\>\\\\.\\\\+\\\\+\\\\+\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\-\\\\.\\\\>\\\\+\\\\.\\\\>\\\\. { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#\\\\.\\\\#\\\\.\\\\# { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\_ { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\{\\\\} { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\#fake\\\\-id { background: lime; } +.fixtures-modules-localIdentName-localIdentName__foo\\\\.bar { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A hover { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\3A hover\\\\3A focus\\\\3A active { background: lime; } +.fixtures-modules-localIdentName-localIdentName__\\\\[attr\\\\=value\\\\] { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\/o\\\\/o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\\\\\o\\\\\\\\o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\*o\\\\*o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\!o\\\\!o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\'o\\\\'o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\~o\\\\~o { background: lime; } +.fixtures-modules-localIdentName-localIdentName__f\\\\+o\\\\+o { background: lime; } + +.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\/bar\\\\/baz { + background: hotpink; +} + +.fixtures-modules-localIdentName-localIdentName__foo\\\\\\\\bar\\\\\\\\baz { + background: hotpink; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and respect the "path" placeholder: warnings 1`] = `Array []`; + +exports[`"modules" option should work and support "pure" mode #2: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".vMTmrSQeex_jSha5WBf_ {\\\\n color: red;\\\\n}\\\\n\\\\nh1 ._jZGcrtjxzVwhHf3TWSb {\\\\n color: green;\\\\n}\\\\n\\\\n.Kj5cNSGgf4iXvLYn6No_ h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n.jh3b1xCDLmAY6eymyAt_ h1 .Pfub7unrTg1ycP0dH1Np {\\\\n color: red;\\\\n}\\\\n\\\\n#AUPKdRDRa6hXeK0BG2pk {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #pWzFEVR2SnlD5kUmOw_N {\\\\n color: green;\\\\n}\\\\n\\\\n#qoyIi2Mg4Mb_ZSGUJ8vJ h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#K4O4KL_LvYNVK5BfgrpS h1 #__XKNw5xPfAsBbZFZTk4 {\\\\n color: red;\\\\n}\\\\n\\\\n.XT7sj__0t_dqertebTCQ .bar .fQupafQhy82LZfYkj2Or {\\\\n color: white;\\\\n}\\\\n\\\\n.oazX1bnIu8C5pPc1zTa3 ._wgWBJ9KtBrOcItw9h1S ._1xJZB8WtmhFmILjW3Rj {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"vMTmrSQeex_jSha5WBf_\\", + \\"foo-1\\": \\"_jZGcrtjxzVwhHf3TWSb\\", + \\"foo-2\\": \\"Kj5cNSGgf4iXvLYn6No_\\", + \\"foo-3\\": \\"jh3b1xCDLmAY6eymyAt_\\", + \\"foo-4\\": \\"Pfub7unrTg1ycP0dH1Np\\", + \\"foo-5\\": \\"AUPKdRDRa6hXeK0BG2pk\\", + \\"foo-6\\": \\"pWzFEVR2SnlD5kUmOw_N\\", + \\"foo-7\\": \\"qoyIi2Mg4Mb_ZSGUJ8vJ\\", + \\"foo-8\\": \\"K4O4KL_LvYNVK5BfgrpS\\", + \\"foo-9\\": \\"__XKNw5xPfAsBbZFZTk4\\", + \\"bar-1\\": \\"XT7sj__0t_dqertebTCQ\\", + \\"bar-2\\": \\"fQupafQhy82LZfYkj2Or\\", + \\"baz-3\\": \\"oazX1bnIu8C5pPc1zTa3\\", + \\"baz\\": \\"_wgWBJ9KtBrOcItw9h1S\\", + \\"bar-4\\": \\"_1xJZB8WtmhFmILjW3Rj\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and support "pure" mode #2: result 1`] = ` +Array [ + Array [ + "./modules/pure/pure.css", + ".vMTmrSQeex_jSha5WBf_ { + color: red; +} + +h1 ._jZGcrtjxzVwhHf3TWSb { + color: green; +} + +.Kj5cNSGgf4iXvLYn6No_ h1 { + color: blue; +} + +.jh3b1xCDLmAY6eymyAt_ h1 .Pfub7unrTg1ycP0dH1Np { + color: red; +} + +#AUPKdRDRa6hXeK0BG2pk { + color: red; +} + +h1 #pWzFEVR2SnlD5kUmOw_N { + color: green; +} + +#qoyIi2Mg4Mb_ZSGUJ8vJ h1 { + color: blue; +} + +#K4O4KL_LvYNVK5BfgrpS h1 #__XKNw5xPfAsBbZFZTk4 { + color: red; +} + +.XT7sj__0t_dqertebTCQ .bar .fQupafQhy82LZfYkj2Or { + color: white; +} + +.oazX1bnIu8C5pPc1zTa3 ._wgWBJ9KtBrOcItw9h1S ._1xJZB8WtmhFmILjW3Rj { + color: black; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and support "pure" mode #2: warnings 1`] = `Array []`; + +exports[`"modules" option should work and support "pure" mode: errors 1`] = `Array []`; + +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___(function(i){return i[1]}); +// Module +___CSS_LOADER_EXPORT___.push([module.id, \\".vMTmrSQeex_jSha5WBf_ {\\\\n color: red;\\\\n}\\\\n\\\\nh1 ._jZGcrtjxzVwhHf3TWSb {\\\\n color: green;\\\\n}\\\\n\\\\n.Kj5cNSGgf4iXvLYn6No_ h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n.jh3b1xCDLmAY6eymyAt_ h1 .Pfub7unrTg1ycP0dH1Np {\\\\n color: red;\\\\n}\\\\n\\\\n#AUPKdRDRa6hXeK0BG2pk {\\\\n color: red;\\\\n}\\\\n\\\\nh1 #pWzFEVR2SnlD5kUmOw_N {\\\\n color: green;\\\\n}\\\\n\\\\n#qoyIi2Mg4Mb_ZSGUJ8vJ h1 {\\\\n color: blue;\\\\n}\\\\n\\\\n#K4O4KL_LvYNVK5BfgrpS h1 #__XKNw5xPfAsBbZFZTk4 {\\\\n color: red;\\\\n}\\\\n\\\\n.XT7sj__0t_dqertebTCQ .bar .fQupafQhy82LZfYkj2Or {\\\\n color: white;\\\\n}\\\\n\\\\n.oazX1bnIu8C5pPc1zTa3 ._wgWBJ9KtBrOcItw9h1S ._1xJZB8WtmhFmILjW3Rj {\\\\n color: black;\\\\n}\\\\n\\", \\"\\"]); +// Exports +___CSS_LOADER_EXPORT___.locals = { + \\"foo\\": \\"vMTmrSQeex_jSha5WBf_\\", + \\"foo-1\\": \\"_jZGcrtjxzVwhHf3TWSb\\", + \\"foo-2\\": \\"Kj5cNSGgf4iXvLYn6No_\\", + \\"foo-3\\": \\"jh3b1xCDLmAY6eymyAt_\\", + \\"foo-4\\": \\"Pfub7unrTg1ycP0dH1Np\\", + \\"foo-5\\": \\"AUPKdRDRa6hXeK0BG2pk\\", + \\"foo-6\\": \\"pWzFEVR2SnlD5kUmOw_N\\", + \\"foo-7\\": \\"qoyIi2Mg4Mb_ZSGUJ8vJ\\", + \\"foo-8\\": \\"K4O4KL_LvYNVK5BfgrpS\\", + \\"foo-9\\": \\"__XKNw5xPfAsBbZFZTk4\\", + \\"bar-1\\": \\"XT7sj__0t_dqertebTCQ\\", + \\"bar-2\\": \\"fQupafQhy82LZfYkj2Or\\", + \\"baz-3\\": \\"oazX1bnIu8C5pPc1zTa3\\", + \\"baz\\": \\"_wgWBJ9KtBrOcItw9h1S\\", + \\"bar-4\\": \\"_1xJZB8WtmhFmILjW3Rj\\" +}; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work and support "pure" mode: result 1`] = ` +Array [ + Array [ + "./modules/pure/pure.css", + ".vMTmrSQeex_jSha5WBf_ { + color: red; +} + +h1 ._jZGcrtjxzVwhHf3TWSb { + color: green; +} + +.Kj5cNSGgf4iXvLYn6No_ h1 { + color: blue; +} + +.jh3b1xCDLmAY6eymyAt_ h1 .Pfub7unrTg1ycP0dH1Np { + color: red; +} + +#AUPKdRDRa6hXeK0BG2pk { + color: red; +} + +h1 #pWzFEVR2SnlD5kUmOw_N { + color: green; +} + +#qoyIi2Mg4Mb_ZSGUJ8vJ h1 { + color: blue; +} + +#K4O4KL_LvYNVK5BfgrpS h1 #__XKNw5xPfAsBbZFZTk4 { + color: red; +} + +.XT7sj__0t_dqertebTCQ .bar .fQupafQhy82LZfYkj2Or { + color: white; +} + +.oazX1bnIu8C5pPc1zTa3 ._wgWBJ9KtBrOcItw9h1S ._1xJZB8WtmhFmILjW3Rj { + color: black; +} +", + "", + ], +] +`; + +exports[`"modules" option should work and support "pure" mode: warnings 1`] = `Array []`; + +exports[`"modules" option should work js template with "namedExport" option: errors 1`] = `Array []`; + +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___(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 +export var headerBaz = \\"header-baz\\"; +export var body = \\"body\\"; +export var footer = \\"footer\\"; +export default ___CSS_LOADER_EXPORT___; +" +`; + +exports[`"modules" option should work js template with "namedExport" option: result 1`] = ` +Object { + "css": Array [ + Array [ + "./modules/namedExport/template/index.css", + ".header-baz { + color: red; +} + +.body { + color: coral; +} + +.footer { + color: blue; +} +", + "", + ], + ], + "html": " +