|
|
@@ -161,6 +161,45 @@ describe('SFC scoped CSS', () => {
|
|
|
`)
|
|
|
})
|
|
|
|
|
|
+ // #10511
|
|
|
+ test(':is() and :where() in compound selectors', () => {
|
|
|
+ expect(
|
|
|
+ compileScoped(`.div { color: red; } .div:where(:hover) { color: blue; }`),
|
|
|
+ ).toMatchInlineSnapshot(`
|
|
|
+ ".div[data-v-test] { color: red;
|
|
|
+ }
|
|
|
+ .div[data-v-test]:where(:hover) { color: blue;
|
|
|
+ }"`)
|
|
|
+
|
|
|
+ expect(
|
|
|
+ compileScoped(`.div { color: red; } .div:is(:hover) { color: blue; }`),
|
|
|
+ ).toMatchInlineSnapshot(`
|
|
|
+ ".div[data-v-test] { color: red;
|
|
|
+ }
|
|
|
+ .div[data-v-test]:is(:hover) { color: blue;
|
|
|
+ }"`)
|
|
|
+
|
|
|
+ expect(
|
|
|
+ compileScoped(
|
|
|
+ `.div { color: red; } .div:where(.foo:hover) { color: blue; }`,
|
|
|
+ ),
|
|
|
+ ).toMatchInlineSnapshot(`
|
|
|
+ ".div[data-v-test] { color: red;
|
|
|
+ }
|
|
|
+ .div[data-v-test]:where(.foo:hover) { color: blue;
|
|
|
+ }"`)
|
|
|
+
|
|
|
+ expect(
|
|
|
+ compileScoped(
|
|
|
+ `.div { color: red; } .div:is(.foo:hover) { color: blue; }`,
|
|
|
+ ),
|
|
|
+ ).toMatchInlineSnapshot(`
|
|
|
+ ".div[data-v-test] { color: red;
|
|
|
+ }
|
|
|
+ .div[data-v-test]:is(.foo:hover) { color: blue;
|
|
|
+ }"`)
|
|
|
+ })
|
|
|
+
|
|
|
test('media query', () => {
|
|
|
expect(compileScoped(`@media print { .foo { color: red }}`))
|
|
|
.toMatchInlineSnapshot(`
|