diff --git a/src/compiler/compile/css/Selector.ts b/src/compiler/compile/css/Selector.ts index 95eeaaf8cd38..283236cea594 100644 --- a/src/compiler/compile/css/Selector.ts +++ b/src/compiler/compile/css/Selector.ts @@ -57,21 +57,29 @@ export default class Selector { } transform(code: MagicString, attr: string) { + const should_double_up_attr = this.blocks.filter(block => block.should_encapsulate).length === 1; + function encapsulate_block(block: Block) { let i = block.selectors.length; + let encapsulationAttr = attr; + + if (should_double_up_attr) { + encapsulationAttr = attr + attr; + } + while (i--) { const selector = block.selectors[i]; if (selector.type === 'PseudoElementSelector' || selector.type === 'PseudoClassSelector') { if (selector.name !== 'root') { - if (i === 0) code.prependRight(selector.start, attr); + if (i === 0) code.prependRight(selector.start, encapsulationAttr); } continue; } if (selector.type === 'TypeSelector' && selector.name === '*') { - code.overwrite(selector.start, selector.end, attr); + code.overwrite(selector.start, selector.end, encapsulationAttr); } else { - code.appendLeft(selector.end, attr); + code.appendLeft(selector.end, encapsulationAttr); } break; diff --git a/test/css/samples/attribute-selector-bind/expected.css b/test/css/samples/attribute-selector-bind/expected.css index 20543c5c8e07..9dc2fcc42f6e 100644 --- a/test/css/samples/attribute-selector-bind/expected.css +++ b/test/css/samples/attribute-selector-bind/expected.css @@ -1 +1 @@ -details[open].svelte-xyz{color:red} \ No newline at end of file +details[open].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/attribute-selector-only-name/expected.css b/test/css/samples/attribute-selector-only-name/expected.css index e2bbf5b48c59..3ff721d49122 100644 --- a/test/css/samples/attribute-selector-only-name/expected.css +++ b/test/css/samples/attribute-selector-only-name/expected.css @@ -1 +1 @@ -[foo].svelte-xyz{color:red}[baz].svelte-xyz{color:blue} \ No newline at end of file +[foo].svelte-xyz.svelte-xyz{color:red}[baz].svelte-xyz.svelte-xyz{color:blue} \ No newline at end of file diff --git a/test/css/samples/attribute-selector-unquoted/expected.css b/test/css/samples/attribute-selector-unquoted/expected.css index 9f8f88a352eb..7199e49c003f 100644 --- a/test/css/samples/attribute-selector-unquoted/expected.css +++ b/test/css/samples/attribute-selector-unquoted/expected.css @@ -1 +1 @@ -[foo=bar].svelte-xyz{color:red} \ No newline at end of file +[foo=bar].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/basic/expected.css b/test/css/samples/basic/expected.css index d466e8df9658..1a8bdff7c6de 100644 --- a/test/css/samples/basic/expected.css +++ b/test/css/samples/basic/expected.css @@ -1 +1 @@ -div.svelte-xyz{color:red} \ No newline at end of file +div.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/css-vars/expected.css b/test/css/samples/css-vars/expected.css index c2bd56375b1f..2c3986541bcc 100644 --- a/test/css/samples/css-vars/expected.css +++ b/test/css/samples/css-vars/expected.css @@ -1 +1 @@ -:root{--root-test:20}div.svelte-xyz{--test:10} \ No newline at end of file +:root{--root-test:20}div.svelte-xyz.svelte-xyz{--test:10} \ No newline at end of file diff --git a/test/css/samples/directive-special-character/expected.css b/test/css/samples/directive-special-character/expected.css index 8b25d59d2e0b..730df36d9194 100644 --- a/test/css/samples/directive-special-character/expected.css +++ b/test/css/samples/directive-special-character/expected.css @@ -1 +1 @@ -.foo\:bar.svelte-xyz{color:red} \ No newline at end of file +.foo\:bar.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/empty-rule-dev/expected.css b/test/css/samples/empty-rule-dev/expected.css index 4013e47e5d3a..cb3cea0c0dbe 100644 --- a/test/css/samples/empty-rule-dev/expected.css +++ b/test/css/samples/empty-rule-dev/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{} \ No newline at end of file diff --git a/test/css/samples/global-keyframes/expected.css b/test/css/samples/global-keyframes/expected.css index 8e716d136df4..3b70bae786fc 100644 --- a/test/css/samples/global-keyframes/expected.css +++ b/test/css/samples/global-keyframes/expected.css @@ -1 +1 @@ -@keyframes why{0%{color:red}100%{color:blue}}.animated.svelte-xyz{animation:why 2s}.also-animated.svelte-xyz{animation:not-defined-here 2s} \ No newline at end of file +@keyframes why{0%{color:red}100%{color:blue}}.animated.svelte-xyz.svelte-xyz{animation:why 2s}.also-animated.svelte-xyz.svelte-xyz{animation:not-defined-here 2s} \ No newline at end of file diff --git a/test/css/samples/keyframes-autoprefixed/expected.css b/test/css/samples/keyframes-autoprefixed/expected.css index d9866778a917..b1273fead8e1 100644 --- a/test/css/samples/keyframes-autoprefixed/expected.css +++ b/test/css/samples/keyframes-autoprefixed/expected.css @@ -1 +1 @@ -@keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-webkit-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-moz-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-o-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}.animated.svelte-xyz{-webkit-animation:svelte-xyz-why 2s;animation:svelte-xyz-why 2s}.also-animated.svelte-xyz{-webkit-animation:not-defined-here 2s;animation:not-defined-here 2s} \ No newline at end of file +@keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-webkit-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-moz-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}@-o-keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}.animated.svelte-xyz.svelte-xyz{-webkit-animation:svelte-xyz-why 2s;animation:svelte-xyz-why 2s}.also-animated.svelte-xyz.svelte-xyz{-webkit-animation:not-defined-here 2s;animation:not-defined-here 2s} \ No newline at end of file diff --git a/test/css/samples/keyframes-from-to/expected.css b/test/css/samples/keyframes-from-to/expected.css index c8ee60194c80..76693ed358cf 100644 --- a/test/css/samples/keyframes-from-to/expected.css +++ b/test/css/samples/keyframes-from-to/expected.css @@ -1 +1 @@ -@keyframes svelte-xyz-why{from{color:red}to{color:blue}}.animated.svelte-xyz{animation:svelte-xyz-why 2s} \ No newline at end of file +@keyframes svelte-xyz-why{from{color:red}to{color:blue}}.animated.svelte-xyz.svelte-xyz{animation:svelte-xyz-why 2s} \ No newline at end of file diff --git a/test/css/samples/keyframes/expected.css b/test/css/samples/keyframes/expected.css index a6a1176dae46..218aa2522352 100644 --- a/test/css/samples/keyframes/expected.css +++ b/test/css/samples/keyframes/expected.css @@ -1 +1 @@ -@keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}.animated.svelte-xyz{animation:svelte-xyz-why 2s}.also-animated.svelte-xyz{animation:not-defined-here 2s} \ No newline at end of file +@keyframes svelte-xyz-why{0%{color:red}100%{color:blue}}.animated.svelte-xyz.svelte-xyz{animation:svelte-xyz-why 2s}.also-animated.svelte-xyz.svelte-xyz{animation:not-defined-here 2s} \ No newline at end of file diff --git a/test/css/samples/local-inside-global/expected.css b/test/css/samples/local-inside-global/expected.css index 40af67afbaf6..f960d4c78276 100644 --- a/test/css/samples/local-inside-global/expected.css +++ b/test/css/samples/local-inside-global/expected.css @@ -1 +1 @@ -div .foo.svelte-xyz{color:red}div>.foo.svelte-xyz{font-weight:bold} \ No newline at end of file +div .foo.svelte-xyz.svelte-xyz{color:red}div>.foo.svelte-xyz.svelte-xyz{font-weight:bold} \ No newline at end of file diff --git a/test/css/samples/media-query-word/expected.css b/test/css/samples/media-query-word/expected.css index d2a288ed7278..e3ec204b8229 100644 --- a/test/css/samples/media-query-word/expected.css +++ b/test/css/samples/media-query-word/expected.css @@ -1 +1 @@ -@media only screen and (min-width: 400px){div.svelte-xyz{color:red}} \ No newline at end of file +@media only screen and (min-width: 400px){div.svelte-xyz.svelte-xyz{color:red}} \ No newline at end of file diff --git a/test/css/samples/media-query/expected.css b/test/css/samples/media-query/expected.css index 8ea74bf3b1a4..d08f53153d73 100644 --- a/test/css/samples/media-query/expected.css +++ b/test/css/samples/media-query/expected.css @@ -1 +1 @@ -@media(min-width: 400px){.large-screen.svelte-xyz{display:block}} \ No newline at end of file +@media(min-width: 400px){.large-screen.svelte-xyz.svelte-xyz{display:block}} \ No newline at end of file diff --git a/test/css/samples/nested/expected.css b/test/css/samples/nested/expected.css index 87ca7335f666..afdb2c5c8fda 100644 --- a/test/css/samples/nested/expected.css +++ b/test/css/samples/nested/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{color:red}.bar.svelte-xyz{font-style:italic} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{color:red}.bar.svelte-xyz.svelte-xyz{font-style:italic} \ No newline at end of file diff --git a/test/css/samples/not-selector/expected.css b/test/css/samples/not-selector/expected.css index 83a819a9e0c2..dbc6edd5f68f 100644 --- a/test/css/samples/not-selector/expected.css +++ b/test/css/samples/not-selector/expected.css @@ -1 +1 @@ -.svelte-xyz:not(.foo){color:red} \ No newline at end of file +.svelte-xyz.svelte-xyz:not(.foo){color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-contains/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-contains/expected.css index 4d1d8d14ff7c..48488b229239 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-contains/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-contains/expected.css @@ -1 +1 @@ -[data-foo*='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo*='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-equals-case-insensitive/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-equals-case-insensitive/expected.css index 80b6feebca1c..2c3699990149 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-equals-case-insensitive/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-equals-case-insensitive/expected.css @@ -1 +1 @@ -[data-foo='bar' i].svelte-xyz{color:red} \ No newline at end of file +[data-foo='bar' i].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-equals-dynamic/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-equals-dynamic/expected.css index fd8a9a15eeb6..cb0b85b62f60 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-equals-dynamic/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-equals-dynamic/expected.css @@ -1 +1 @@ -[data-foo='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-equals/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-equals/expected.css index fd8a9a15eeb6..cb0b85b62f60 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-equals/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-equals/expected.css @@ -1 +1 @@ -[data-foo='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-pipe-equals/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-pipe-equals/expected.css index 95f6faeb028e..6c00808dfb0c 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-pipe-equals/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-pipe-equals/expected.css @@ -1 +1 @@ -[data-foo|='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo|='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-prefix/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-prefix/expected.css index 3a30f1f017e8..d2279d908dff 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-prefix/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-prefix/expected.css @@ -1 +1 @@ -[data-foo^='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo^='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-suffix/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-suffix/expected.css index de8d18cc3b33..aa540ce5db30 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-suffix/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-suffix/expected.css @@ -1 +1 @@ -[data-foo$='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo$='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css index fabcbade4df0..12bd34a49bce 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector-word-equals/expected.css @@ -1 +1 @@ -[data-foo~='bar'].svelte-xyz{color:red} \ No newline at end of file +[data-foo~='bar'].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-attribute-selector/expected.css b/test/css/samples/omit-scoping-attribute-attribute-selector/expected.css index ddb620207d2b..be9e02b82c2f 100644 --- a/test/css/samples/omit-scoping-attribute-attribute-selector/expected.css +++ b/test/css/samples/omit-scoping-attribute-attribute-selector/expected.css @@ -1 +1 @@ -[autoplay].svelte-xyz{color:red} \ No newline at end of file +[autoplay].svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-class-dynamic/expected.css b/test/css/samples/omit-scoping-attribute-class-dynamic/expected.css index 431f7041061e..1235588b8880 100644 --- a/test/css/samples/omit-scoping-attribute-class-dynamic/expected.css +++ b/test/css/samples/omit-scoping-attribute-class-dynamic/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{color:red} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-class-static/expected.css b/test/css/samples/omit-scoping-attribute-class-static/expected.css index 431f7041061e..1235588b8880 100644 --- a/test/css/samples/omit-scoping-attribute-class-static/expected.css +++ b/test/css/samples/omit-scoping-attribute-class-static/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{color:red} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-descendant-global-inner-class/expected.css b/test/css/samples/omit-scoping-attribute-descendant-global-inner-class/expected.css index f3653403a5b9..55857f37bd2c 100644 --- a/test/css/samples/omit-scoping-attribute-descendant-global-inner-class/expected.css +++ b/test/css/samples/omit-scoping-attribute-descendant-global-inner-class/expected.css @@ -1 +1 @@ -.foo.svelte-xyz .bar{color:red} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz .bar{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-descendant-global-inner-multiple/expected.css b/test/css/samples/omit-scoping-attribute-descendant-global-inner-multiple/expected.css index 74e641549f0e..7a240f6b0e9b 100644 --- a/test/css/samples/omit-scoping-attribute-descendant-global-inner-multiple/expected.css +++ b/test/css/samples/omit-scoping-attribute-descendant-global-inner-multiple/expected.css @@ -1 +1 @@ -div.svelte-xyz>p>em{color:red} \ No newline at end of file +div.svelte-xyz.svelte-xyz>p>em{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-descendant-global-inner/expected.css b/test/css/samples/omit-scoping-attribute-descendant-global-inner/expected.css index 338c90ab19ca..8afb336fbd37 100644 --- a/test/css/samples/omit-scoping-attribute-descendant-global-inner/expected.css +++ b/test/css/samples/omit-scoping-attribute-descendant-global-inner/expected.css @@ -1 +1 @@ -div.svelte-xyz>p{color:red} \ No newline at end of file +div.svelte-xyz.svelte-xyz>p{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-descendant-global-outer-multiple/expected.css b/test/css/samples/omit-scoping-attribute-descendant-global-outer-multiple/expected.css index 5d1af4c251d3..e9664c9840d3 100644 --- a/test/css/samples/omit-scoping-attribute-descendant-global-outer-multiple/expected.css +++ b/test/css/samples/omit-scoping-attribute-descendant-global-outer-multiple/expected.css @@ -1 +1 @@ -div>section>p.svelte-xyz{color:red} \ No newline at end of file +div>section>p.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-descendant-global-outer/expected.css b/test/css/samples/omit-scoping-attribute-descendant-global-outer/expected.css index 3666ce8f7fb2..43eeac51f355 100644 --- a/test/css/samples/omit-scoping-attribute-descendant-global-outer/expected.css +++ b/test/css/samples/omit-scoping-attribute-descendant-global-outer/expected.css @@ -1 +1 @@ -div>p.svelte-xyz{color:red} \ No newline at end of file +div>p.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute-id/expected.css b/test/css/samples/omit-scoping-attribute-id/expected.css index 0e9e9f8b2949..64760db71b53 100644 --- a/test/css/samples/omit-scoping-attribute-id/expected.css +++ b/test/css/samples/omit-scoping-attribute-id/expected.css @@ -1 +1 @@ -#foo.svelte-xyz{color:red} \ No newline at end of file +#foo.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/omit-scoping-attribute/expected.css b/test/css/samples/omit-scoping-attribute/expected.css index 5d8d69ac33a7..571e07eaf451 100644 --- a/test/css/samples/omit-scoping-attribute/expected.css +++ b/test/css/samples/omit-scoping-attribute/expected.css @@ -1 +1 @@ -p.svelte-xyz{color:red} \ No newline at end of file +p.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/pseudo-element/expected.css b/test/css/samples/pseudo-element/expected.css index bb380d40417c..d48d1dcb2673 100644 --- a/test/css/samples/pseudo-element/expected.css +++ b/test/css/samples/pseudo-element/expected.css @@ -1 +1 @@ -span.svelte-xyz::after{content:'i am a pseudo-element'}span.svelte-xyz:first-child{color:red}span.svelte-xyz:last-child::after{color:blue} \ No newline at end of file +span.svelte-xyz.svelte-xyz::after{content:'i am a pseudo-element'}span.svelte-xyz.svelte-xyz:first-child{color:red}span.svelte-xyz.svelte-xyz:last-child::after{color:blue} \ No newline at end of file diff --git a/test/css/samples/spread/expected.css b/test/css/samples/spread/expected.css index dc433318e8bc..5a38e3716c74 100644 --- a/test/css/samples/spread/expected.css +++ b/test/css/samples/spread/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{color:red;font-size:2em;font-family:'Comic Sans MS'} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{color:red;font-size:2em;font-family:'Comic Sans MS'} \ No newline at end of file diff --git a/test/css/samples/supports-query/expected.css b/test/css/samples/supports-query/expected.css index 3fdef34d6e31..c28067a7af82 100644 --- a/test/css/samples/supports-query/expected.css +++ b/test/css/samples/supports-query/expected.css @@ -1 +1 @@ -@supports (display: grid){.maybe-grid.svelte-xyz{display:grid}} \ No newline at end of file +@supports (display: grid){.maybe-grid.svelte-xyz.svelte-xyz{display:grid}} \ No newline at end of file diff --git a/test/css/samples/universal-selector/expected.css b/test/css/samples/universal-selector/expected.css index 3eda95e44618..76460629eb7d 100644 --- a/test/css/samples/universal-selector/expected.css +++ b/test/css/samples/universal-selector/expected.css @@ -1 +1 @@ -.svelte-xyz{color:red} \ No newline at end of file +.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/unknown-at-rule-with-following-rules/expected.css b/test/css/samples/unknown-at-rule-with-following-rules/expected.css index 31c3bf9c6f1d..025966cf9c91 100644 --- a/test/css/samples/unknown-at-rule-with-following-rules/expected.css +++ b/test/css/samples/unknown-at-rule-with-following-rules/expected.css @@ -1 +1 @@ -div.svelte-xyz{@apply --funky-div;} \ No newline at end of file +div.svelte-xyz.svelte-xyz{@apply --funky-div;} \ No newline at end of file diff --git a/test/css/samples/unknown-at-rule/expected.css b/test/css/samples/unknown-at-rule/expected.css index 31c3bf9c6f1d..025966cf9c91 100644 --- a/test/css/samples/unknown-at-rule/expected.css +++ b/test/css/samples/unknown-at-rule/expected.css @@ -1 +1 @@ -div.svelte-xyz{@apply --funky-div;} \ No newline at end of file +div.svelte-xyz.svelte-xyz{@apply --funky-div;} \ No newline at end of file diff --git a/test/css/samples/unused-selector-leading/expected.css b/test/css/samples/unused-selector-leading/expected.css index ff57dc09b92f..02dfae359db7 100644 --- a/test/css/samples/unused-selector-leading/expected.css +++ b/test/css/samples/unused-selector-leading/expected.css @@ -1 +1 @@ -.bar.svelte-xyz{color:red} \ No newline at end of file +.bar.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/unused-selector-ternary/expected.css b/test/css/samples/unused-selector-ternary/expected.css index 16fbddce586c..6c46e9a3c386 100644 --- a/test/css/samples/unused-selector-ternary/expected.css +++ b/test/css/samples/unused-selector-ternary/expected.css @@ -1 +1 @@ -.active.svelte-xyz{color:red}.inactive.svelte-xyz{color:blue} \ No newline at end of file +.active.svelte-xyz.svelte-xyz{color:red}.inactive.svelte-xyz.svelte-xyz{color:blue} \ No newline at end of file diff --git a/test/css/samples/unused-selector/expected.css b/test/css/samples/unused-selector/expected.css index 431f7041061e..1235588b8880 100644 --- a/test/css/samples/unused-selector/expected.css +++ b/test/css/samples/unused-selector/expected.css @@ -1 +1 @@ -.foo.svelte-xyz{color:red} \ No newline at end of file +.foo.svelte-xyz.svelte-xyz{color:red} \ No newline at end of file diff --git a/test/css/samples/weird-selectors/expected.css b/test/css/samples/weird-selectors/expected.css index d4ead167515d..03d2eb5731db 100644 --- a/test/css/samples/weird-selectors/expected.css +++ b/test/css/samples/weird-selectors/expected.css @@ -1 +1 @@ -.-foo.svelte-xyz{color:red}[title='['].svelte-xyz{color:blue} \ No newline at end of file +.-foo.svelte-xyz.svelte-xyz{color:red}[title='['].svelte-xyz.svelte-xyz{color:blue} \ No newline at end of file diff --git a/test/js/samples/collapses-text-around-comments/expected.js b/test/js/samples/collapses-text-around-comments/expected.js index 9a34f69b0771..3c9240e9eac5 100644 --- a/test/js/samples/collapses-text-around-comments/expected.js +++ b/test/js/samples/collapses-text-around-comments/expected.js @@ -15,7 +15,7 @@ import { function add_css() { var style = element("style"); style.id = "svelte-1a7i8ec-style"; - style.textContent = "p.svelte-1a7i8ec{color:red}"; + style.textContent = "p.svelte-1a7i8ec.svelte-1a7i8ec{color:red}"; append(document.head, style); } @@ -62,4 +62,4 @@ class Component extends SvelteComponent { } } -export default Component; \ No newline at end of file +export default Component; diff --git a/test/js/samples/css-media-query/expected.js b/test/js/samples/css-media-query/expected.js index 8690f5a34e43..d5a7eb65c29a 100644 --- a/test/js/samples/css-media-query/expected.js +++ b/test/js/samples/css-media-query/expected.js @@ -13,7 +13,7 @@ import { function add_css() { var style = element("style"); style.id = "svelte-1slhpfn-style"; - style.textContent = "@media(min-width: 1px){div.svelte-1slhpfn{color:red}}"; + style.textContent = "@media(min-width: 1px){div.svelte-1slhpfn.svelte-1slhpfn{color:red}}"; append(document.head, style); } @@ -45,4 +45,4 @@ class Component extends SvelteComponent { } } -export default Component; \ No newline at end of file +export default Component; diff --git a/test/server-side-rendering/samples/styles-nested/_expected.css b/test/server-side-rendering/samples/styles-nested/_expected.css index 775ae8a91cff..61ba741dbc75 100644 --- a/test/server-side-rendering/samples/styles-nested/_expected.css +++ b/test/server-side-rendering/samples/styles-nested/_expected.css @@ -1,2 +1,2 @@ -div.svelte-bzh57p{color:red} -div.svelte-4yw8vx{color:green} \ No newline at end of file +div.svelte-bzh57p.svelte-bzh57p{color:red} +div.svelte-4yw8vx.svelte-4yw8vx{color:green} \ No newline at end of file diff --git a/test/server-side-rendering/samples/styles/_expected.css b/test/server-side-rendering/samples/styles/_expected.css index 2025c64f841b..15e5c35b8904 100644 --- a/test/server-side-rendering/samples/styles/_expected.css +++ b/test/server-side-rendering/samples/styles/_expected.css @@ -1 +1 @@ -div.svelte-bzh57p{color:red} \ No newline at end of file +div.svelte-bzh57p.svelte-bzh57p{color:red} \ No newline at end of file