@arbor-css/classes 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_test.d.ts +6 -8
- package/dist/_test.d.ts.map +1 -1
- package/dist/_test.js +5 -20
- package/dist/_test.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/rules/color.d.ts.map +1 -1
- package/dist/rules/color.js +2 -1
- package/dist/rules/color.js.map +1 -1
- package/dist/rules/shadow.d.ts.map +1 -1
- package/dist/rules/shadow.js +37 -0
- package/dist/rules/shadow.js.map +1 -1
- package/dist/rules/shadow.test.d.ts +2 -0
- package/dist/rules/shadow.test.d.ts.map +1 -0
- package/dist/rules/shadow.test.js +17 -0
- package/dist/rules/shadow.test.js.map +1 -0
- package/dist/theme/index.d.ts +2 -2
- package/dist/util/h.d.ts +1 -1
- package/package.json +11 -4
- package/dist/props.d.ts +0 -2
- package/dist/props.d.ts.map +0 -1
- package/dist/props.js +0 -2
- package/dist/props.js.map +0 -1
- package/dist/rules/_util.d.ts +0 -29
- package/dist/rules/_util.d.ts.map +0 -1
- package/dist/rules/_util.js +0 -79
- package/dist/rules/_util.js.map +0 -1
- package/dist/rules/align.d.ts +0 -5
- package/dist/rules/align.d.ts.map +0 -1
- package/dist/rules/align.js +0 -38
- package/dist/rules/align.js.map +0 -1
- package/dist/rules/animations.d.ts +0 -4
- package/dist/rules/animations.d.ts.map +0 -1
- package/dist/rules/animations.js +0 -135
- package/dist/rules/animations.js.map +0 -1
- package/dist/rules/background.d.ts +0 -2
- package/dist/rules/background.d.ts.map +0 -1
- package/dist/rules/background.js +0 -2
- package/dist/rules/background.js.map +0 -1
- package/dist/rules/colors.d.ts +0 -1
- package/dist/rules/colors.d.ts.map +0 -1
- package/dist/rules/colors.js +0 -2
- package/dist/rules/colors.js.map +0 -1
- package/dist/rules/util.d.ts +0 -2
- package/dist/rules/util.d.ts.map +0 -1
- package/dist/rules/util.js +0 -2
- package/dist/rules/util.js.map +0 -1
- package/dist/variants/aria.d.ts +0 -5
- package/dist/variants/aria.d.ts.map +0 -1
- package/dist/variants/aria.js +0 -58
- package/dist/variants/aria.js.map +0 -1
- package/dist/variants/aria.test.d.ts +0 -2
- package/dist/variants/aria.test.d.ts.map +0 -1
- package/dist/variants/aria.test.js +0 -70
- package/dist/variants/aria.test.js.map +0 -1
- package/dist/variants/breakpoints.d.ts +0 -4
- package/dist/variants/breakpoints.d.ts.map +0 -1
- package/dist/variants/breakpoints.js +0 -77
- package/dist/variants/breakpoints.js.map +0 -1
- package/dist/variants/children.d.ts +0 -4
- package/dist/variants/children.d.ts.map +0 -1
- package/dist/variants/children.js +0 -10
- package/dist/variants/children.js.map +0 -1
- package/dist/variants/children.test.d.ts +0 -2
- package/dist/variants/children.test.d.ts.map +0 -1
- package/dist/variants/children.test.js +0 -9
- package/dist/variants/children.test.js.map +0 -1
- package/dist/variants/combinators.d.ts +0 -5
- package/dist/variants/combinators.d.ts.map +0 -1
- package/dist/variants/combinators.js +0 -42
- package/dist/variants/combinators.js.map +0 -1
- package/dist/variants/combinators.test.d.ts +0 -2
- package/dist/variants/combinators.test.d.ts.map +0 -1
- package/dist/variants/combinators.test.js +0 -33
- package/dist/variants/combinators.test.js.map +0 -1
- package/dist/variants/data.d.ts +0 -5
- package/dist/variants/data.d.ts.map +0 -1
- package/dist/variants/data.js +0 -58
- package/dist/variants/data.js.map +0 -1
- package/dist/variants/data.test.d.ts +0 -2
- package/dist/variants/data.test.d.ts.map +0 -1
- package/dist/variants/data.test.js +0 -70
- package/dist/variants/data.test.js.map +0 -1
- package/dist/variants/directions.d.ts +0 -4
- package/dist/variants/directions.d.ts.map +0 -1
- package/dist/variants/directions.js +0 -10
- package/dist/variants/directions.js.map +0 -1
- package/dist/variants/directions.test.d.ts +0 -2
- package/dist/variants/directions.test.d.ts.map +0 -1
- package/dist/variants/directions.test.js +0 -9
- package/dist/variants/directions.test.js.map +0 -1
- package/dist/variants/important.d.ts +0 -4
- package/dist/variants/important.d.ts.map +0 -1
- package/dist/variants/important.js +0 -29
- package/dist/variants/important.js.map +0 -1
- package/dist/variants/important.test.d.ts +0 -2
- package/dist/variants/important.test.d.ts.map +0 -1
- package/dist/variants/important.test.js +0 -23
- package/dist/variants/important.test.js.map +0 -1
- package/dist/variants/layer.d.ts +0 -4
- package/dist/variants/layer.d.ts.map +0 -1
- package/dist/variants/layer.js +0 -22
- package/dist/variants/layer.js.map +0 -1
- package/dist/variants/layer.test.d.ts +0 -2
- package/dist/variants/layer.test.d.ts.map +0 -1
- package/dist/variants/layer.test.js +0 -9
- package/dist/variants/layer.test.js.map +0 -1
- package/dist/variants/media.d.ts +0 -11
- package/dist/variants/media.d.ts.map +0 -1
- package/dist/variants/media.js +0 -62
- package/dist/variants/media.js.map +0 -1
- package/dist/variants/media.test.d.ts +0 -2
- package/dist/variants/media.test.d.ts.map +0 -1
- package/dist/variants/media.test.js +0 -46
- package/dist/variants/media.test.js.map +0 -1
- package/dist/variants/negative.d.ts +0 -4
- package/dist/variants/negative.d.ts.map +0 -1
- package/dist/variants/negative.js +0 -81
- package/dist/variants/negative.js.map +0 -1
- package/dist/variants/negative.test.d.ts +0 -2
- package/dist/variants/negative.test.d.ts.map +0 -1
- package/dist/variants/negative.test.js +0 -13
- package/dist/variants/negative.test.js.map +0 -1
- package/dist/variants/placeholder.d.ts +0 -4
- package/dist/variants/placeholder.d.ts.map +0 -1
- package/dist/variants/placeholder.js +0 -23
- package/dist/variants/placeholder.js.map +0 -1
- package/dist/variants/placeholder.test.d.ts +0 -2
- package/dist/variants/placeholder.test.d.ts.map +0 -1
- package/dist/variants/placeholder.test.js +0 -11
- package/dist/variants/placeholder.test.js.map +0 -1
- package/dist/variants/pseudo.d.ts +0 -8
- package/dist/variants/pseudo.d.ts.map +0 -1
- package/dist/variants/pseudo.js +0 -28
- package/dist/variants/pseudo.js.map +0 -1
- package/dist/variants/pseudo.test.d.ts +0 -2
- package/dist/variants/pseudo.test.d.ts.map +0 -1
- package/dist/variants/pseudo.test.js +0 -52
- package/dist/variants/pseudo.test.js.map +0 -1
- package/dist/variants/startingStyle.d.ts +0 -4
- package/dist/variants/startingStyle.d.ts.map +0 -1
- package/dist/variants/startingStyle.js +0 -15
- package/dist/variants/startingStyle.js.map +0 -1
- package/dist/variants/startingStyle.test.d.ts +0 -2
- package/dist/variants/startingStyle.test.d.ts.map +0 -1
- package/dist/variants/startingStyle.test.js +0 -9
- package/dist/variants/startingStyle.test.js.map +0 -1
- package/dist/variants/variantSupports.d.ts +0 -4
- package/dist/variants/variantSupports.d.ts.map +0 -1
- package/dist/variants/variantSupports.js +0 -26
- package/dist/variants/variantSupports.js.map +0 -1
- package/dist/variants/variantSupports.test.d.ts +0 -2
- package/dist/variants/variantSupports.test.d.ts.map +0 -1
- package/dist/variants/variantSupports.test.js +0 -9
- package/dist/variants/variantSupports.test.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"animations.js","sourceRoot":"","sources":["../../src/rules/animations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../src/rules/background.ts"],"names":[],"mappings":""}
|
package/dist/rules/background.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"background.js","sourceRoot":"","sources":["../../src/rules/background.ts"],"names":[],"mappings":""}
|
package/dist/rules/colors.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=colors.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../src/rules/colors.ts"],"names":[],"mappings":""}
|
package/dist/rules/colors.js
DELETED
package/dist/rules/colors.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"colors.js","sourceRoot":"","sources":["../../src/rules/colors.ts"],"names":[],"mappings":""}
|
package/dist/rules/util.d.ts
DELETED
package/dist/rules/util.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../../src/rules/util.ts"],"names":[],"mappings":"AAAA,wBACA,AADe,QAAA"}
|
package/dist/rules/util.js
DELETED
package/dist/rules/util.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/rules/util.ts"],"names":[],"mappings":""}
|
package/dist/variants/aria.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.d.ts","sourceRoot":"","sources":["../../src/variants/aria.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,eAAO,MAAM,WAAW,EAAE,aAAa,CAAC,KAAK,CAoB5C,CAAC;AAwCF,eAAO,MAAM,2BAA2B,EAAE,OAAO,CAAC,KAAK,CAAC,EAOvD,CAAC"}
|
package/dist/variants/aria.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { variantGetParameter } from '@unocss/rule-utils';
|
|
2
|
-
export const variantAria = {
|
|
3
|
-
name: 'aria',
|
|
4
|
-
match(matcher, ctx) {
|
|
5
|
-
const variant = variantGetParameter('aria-', matcher, ctx.generator.config.separators);
|
|
6
|
-
if (variant) {
|
|
7
|
-
const [match, rest] = variant;
|
|
8
|
-
if (match) {
|
|
9
|
-
return {
|
|
10
|
-
matcher: rest,
|
|
11
|
-
selector: (s) => `${s}[aria-${match}]`,
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
},
|
|
16
|
-
multiPass: true,
|
|
17
|
-
autocomplete: 'aria-{name}',
|
|
18
|
-
};
|
|
19
|
-
function taggedAria(tagName) {
|
|
20
|
-
return {
|
|
21
|
-
name: `${tagName}-aria`,
|
|
22
|
-
match(matcher, ctx) {
|
|
23
|
-
const variant = variantGetParameter(`${tagName}-aria-`, matcher, ctx.generator.config.separators);
|
|
24
|
-
if (variant) {
|
|
25
|
-
const [match, rest, label] = variant;
|
|
26
|
-
const ariaAttribute = match;
|
|
27
|
-
if (ariaAttribute) {
|
|
28
|
-
const tagSelectorMap = {
|
|
29
|
-
group: `&:is(:where(.group${label ? `\\/${label}` : ''})[aria-${ariaAttribute}] *)`,
|
|
30
|
-
peer: `&:is(:where(.peer${label ? `\\/${label}` : ''})[aria-${ariaAttribute}] ~ *)`,
|
|
31
|
-
previous: `:where(*[aria-${ariaAttribute}] + &)`,
|
|
32
|
-
parent: `:where(*[aria-${ariaAttribute}] > &)`,
|
|
33
|
-
has: `&:has(*[aria-${ariaAttribute}])`,
|
|
34
|
-
in: `:where(*[aria-${ariaAttribute}]) &`,
|
|
35
|
-
};
|
|
36
|
-
return {
|
|
37
|
-
matcher: rest,
|
|
38
|
-
handle: (input, next) => next({
|
|
39
|
-
...input,
|
|
40
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}${input.selector}`,
|
|
41
|
-
selector: tagSelectorMap[tagName],
|
|
42
|
-
}),
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
multiPass: true,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
export const variantTaggedAriaAttributes = [
|
|
51
|
-
taggedAria('group'),
|
|
52
|
-
taggedAria('peer'),
|
|
53
|
-
taggedAria('parent'),
|
|
54
|
-
taggedAria('previous'),
|
|
55
|
-
taggedAria('has'),
|
|
56
|
-
taggedAria('in'),
|
|
57
|
-
];
|
|
58
|
-
//# sourceMappingURL=aria.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.js","sourceRoot":"","sources":["../../src/variants/aria.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,MAAM,CAAC,MAAM,WAAW,GAAyB;IAChD,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,OAAO,EAAE,GAAG;QACjB,MAAM,OAAO,GAAG,mBAAmB,CAClC,OAAO,EACP,OAAO,EACP,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAC/B,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC;YAC9B,IAAI,KAAK,EAAE,CAAC;gBACX,OAAO;oBACN,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,KAAK,GAAG;iBACtC,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IACD,SAAS,EAAE,IAAI;IACf,YAAY,EAAE,aAAa;CAC3B,CAAC;AAEF,SAAS,UAAU,CAAC,OAAe;IAClC,OAAO;QACN,IAAI,EAAE,GAAG,OAAO,OAAO;QACvB,KAAK,CAAC,OAAO,EAAE,GAAG;YACjB,MAAM,OAAO,GAAG,mBAAmB,CAClC,GAAG,OAAO,QAAQ,EAClB,OAAO,EACP,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAC/B,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;gBACrC,MAAM,aAAa,GAAG,KAAK,CAAC;gBAC5B,IAAI,aAAa,EAAE,CAAC;oBACnB,MAAM,cAAc,GAA2B;wBAC9C,KAAK,EAAE,qBAAqB,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,MAAM;wBACnF,IAAI,EAAE,oBAAoB,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,QAAQ;wBACnF,QAAQ,EAAE,iBAAiB,aAAa,QAAQ;wBAChD,MAAM,EAAE,iBAAiB,aAAa,QAAQ;wBAC9C,GAAG,EAAE,gBAAgB,aAAa,IAAI;wBACtC,EAAE,EAAE,iBAAiB,aAAa,MAAM;qBACxC,CAAC;oBAEF,OAAO;wBACN,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CACvB,IAAI,CAAC;4BACJ,GAAG,KAAK;4BACR,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE;4BACvE,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC;yBACjC,CAAC;qBACH,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QACD,SAAS,EAAE,IAAI;KACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAqB;IAC5D,UAAU,CAAC,OAAO,CAAC;IACnB,UAAU,CAAC,MAAM,CAAC;IAClB,UAAU,CAAC,QAAQ,CAAC;IACpB,UAAU,CAAC,UAAU,CAAC;IACtB,UAAU,CAAC,KAAK,CAAC;IACjB,UAAU,CAAC,IAAI,CAAC;CAChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.test.d.ts","sourceRoot":"","sources":["../../src/variants/aria.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { testTheme } from '../_test.js';
|
|
3
|
-
import { variantAria, variantTaggedAriaAttributes } from './aria.js';
|
|
4
|
-
const ctx = {
|
|
5
|
-
generator: {
|
|
6
|
-
config: {
|
|
7
|
-
separators: [':'],
|
|
8
|
-
},
|
|
9
|
-
},
|
|
10
|
-
rawSelector: '',
|
|
11
|
-
theme: testTheme,
|
|
12
|
-
};
|
|
13
|
-
describe('variantAria', () => {
|
|
14
|
-
it('matches aria attribute selector', () => {
|
|
15
|
-
const result = variantAria.match('aria-expanded:bg-red', ctx);
|
|
16
|
-
expect(result).toBeTruthy();
|
|
17
|
-
expect(result).not.toBeTypeOf('string');
|
|
18
|
-
if (!result || typeof result === 'string')
|
|
19
|
-
return;
|
|
20
|
-
expect(result.matcher).toBe('bg-red');
|
|
21
|
-
expect(result.selector?.('.btn')).toBe('.btn[aria-expanded]');
|
|
22
|
-
});
|
|
23
|
-
it('matches tagged group aria selector', async () => {
|
|
24
|
-
const groupVariant = variantTaggedAriaAttributes.find((v) => typeof v === 'object' && v.name === 'group-aria');
|
|
25
|
-
expect(groupVariant).toBeTruthy();
|
|
26
|
-
expect(groupVariant).toBeTypeOf('object');
|
|
27
|
-
if (!groupVariant || typeof groupVariant !== 'object')
|
|
28
|
-
return;
|
|
29
|
-
const result = await groupVariant.match('group-aria-expanded:bg-red', ctx);
|
|
30
|
-
expect(result).toBeTruthy();
|
|
31
|
-
expect(result).not.toBeTypeOf('string');
|
|
32
|
-
if (!result || typeof result === 'string')
|
|
33
|
-
return;
|
|
34
|
-
const input = {
|
|
35
|
-
entries: [],
|
|
36
|
-
parent: '',
|
|
37
|
-
prefix: '',
|
|
38
|
-
pseudo: '',
|
|
39
|
-
selector: '.btn',
|
|
40
|
-
};
|
|
41
|
-
await result.handle?.(input, (next) => Object.assign(input, next));
|
|
42
|
-
expect(result.matcher).toBe('bg-red');
|
|
43
|
-
expect(input.parent).toBe('.btn');
|
|
44
|
-
expect(input.selector).toBe('&:is(:where(.group)[aria-expanded] *)');
|
|
45
|
-
});
|
|
46
|
-
it('matches tagged group aria selector with label', async () => {
|
|
47
|
-
const groupVariant = variantTaggedAriaAttributes.find((v) => typeof v === 'object' && v.name === 'group-aria');
|
|
48
|
-
expect(groupVariant).toBeTruthy();
|
|
49
|
-
expect(groupVariant).toBeTypeOf('object');
|
|
50
|
-
if (!groupVariant || typeof groupVariant !== 'object')
|
|
51
|
-
return;
|
|
52
|
-
const result = await groupVariant.match('group-aria-expanded/menu:bg-red', ctx);
|
|
53
|
-
expect(result).toBeTruthy();
|
|
54
|
-
expect(result).not.toBeTypeOf('string');
|
|
55
|
-
if (!result || typeof result === 'string')
|
|
56
|
-
return;
|
|
57
|
-
const input = {
|
|
58
|
-
entries: [],
|
|
59
|
-
parent: '',
|
|
60
|
-
prefix: '',
|
|
61
|
-
pseudo: '',
|
|
62
|
-
selector: '.btn',
|
|
63
|
-
};
|
|
64
|
-
await result.handle?.(input, (next) => Object.assign(input, next));
|
|
65
|
-
expect(result.matcher).toBe('bg-red');
|
|
66
|
-
expect(input.parent).toBe('.btn');
|
|
67
|
-
expect(input.selector).toBe('&:is(:where(.group\\/menu)[aria-expanded] *)');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
70
|
-
//# sourceMappingURL=aria.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"aria.test.js","sourceRoot":"","sources":["../../src/variants/aria.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"breakpoints.d.ts","sourceRoot":"","sources":["../../src/variants/breakpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK1C,wBAAgB,kBAAkB,IAAI,aAAa,CAAC,KAAK,CAAC,CAwFzD"}
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { calcMaxWidthBySize } from '@unocss/rule-utils';
|
|
2
|
-
import { resolveBreakpoints } from './_utils.js';
|
|
3
|
-
const sizePseudo = /(max|min)-\[([^\]]*)\]:/;
|
|
4
|
-
export function variantBreakpoints() {
|
|
5
|
-
const regexCache = {};
|
|
6
|
-
return {
|
|
7
|
-
name: 'breakpoints',
|
|
8
|
-
match(matcher, context) {
|
|
9
|
-
if (sizePseudo.test(matcher)) {
|
|
10
|
-
const match = matcher.match(sizePseudo);
|
|
11
|
-
const m = matcher.replace(match[0], '');
|
|
12
|
-
return {
|
|
13
|
-
matcher: m,
|
|
14
|
-
handle: (input, next) => next({
|
|
15
|
-
...input,
|
|
16
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}@media (${match[1]}-width: ${match[2]})`,
|
|
17
|
-
// parentOrder: order,
|
|
18
|
-
}),
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
const variantEntries = (resolveBreakpoints(context) ?? []).map(({ point, size }, idx) => [point, size, idx]);
|
|
22
|
-
for (const [point, size, idx] of variantEntries) {
|
|
23
|
-
if (!regexCache[point])
|
|
24
|
-
regexCache[point] = new RegExp(`^((?:([al]t-|[<~]|max-))?${point}(?:${context.generator.config.separators.join('|')}))`);
|
|
25
|
-
const match = matcher.match(regexCache[point]);
|
|
26
|
-
if (!match)
|
|
27
|
-
continue;
|
|
28
|
-
const [, pre] = match;
|
|
29
|
-
const m = matcher.slice(pre.length);
|
|
30
|
-
// container rule is responsive, but also is breakpoint aware
|
|
31
|
-
// it is handled on its own module (container.ts) and so we
|
|
32
|
-
// exclude it from here
|
|
33
|
-
if (m === 'container')
|
|
34
|
-
continue;
|
|
35
|
-
const isLtPrefix = pre.startsWith('lt-') ||
|
|
36
|
-
pre.startsWith('<') ||
|
|
37
|
-
pre.startsWith('max-');
|
|
38
|
-
const isAtPrefix = pre.startsWith('at-') || pre.startsWith('~');
|
|
39
|
-
let order = 3000; // parseInt(size)
|
|
40
|
-
if (isLtPrefix) {
|
|
41
|
-
order -= idx + 1;
|
|
42
|
-
return {
|
|
43
|
-
matcher: m,
|
|
44
|
-
handle: (input, next) => next({
|
|
45
|
-
...input,
|
|
46
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}@media (max-width: ${calcMaxWidthBySize(size)})`,
|
|
47
|
-
parentOrder: order,
|
|
48
|
-
}),
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
order += idx + 1;
|
|
52
|
-
// support for windicss @<breakpoint> => last breakpoint will not have the upper bound
|
|
53
|
-
if (isAtPrefix && idx < variantEntries.length - 1) {
|
|
54
|
-
return {
|
|
55
|
-
matcher: m,
|
|
56
|
-
handle: (input, next) => next({
|
|
57
|
-
...input,
|
|
58
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}@media (min-width: ${size}) and (max-width: ${calcMaxWidthBySize(variantEntries[idx + 1][1])})`,
|
|
59
|
-
parentOrder: order,
|
|
60
|
-
}),
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
return {
|
|
64
|
-
matcher: m,
|
|
65
|
-
handle: (input, next) => next({
|
|
66
|
-
...input,
|
|
67
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}@media (min-width: ${size})`,
|
|
68
|
-
parentOrder: order,
|
|
69
|
-
}),
|
|
70
|
-
};
|
|
71
|
-
}
|
|
72
|
-
},
|
|
73
|
-
multiPass: true,
|
|
74
|
-
autocomplete: '(at-|lt-|max-|)$breakpoint:',
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
//# sourceMappingURL=breakpoints.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"breakpoints.js","sourceRoot":"","sources":["../../src/variants/breakpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"children.d.ts","sourceRoot":"","sources":["../../src/variants/children.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,eAAO,MAAM,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,EAO3C,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { variantMatcher } from '@unocss/rule-utils';
|
|
2
|
-
export const variantChildren = [
|
|
3
|
-
variantMatcher('*', (input) => ({ selector: `${input.selector} > *` }), {
|
|
4
|
-
order: -1,
|
|
5
|
-
}),
|
|
6
|
-
variantMatcher('**', (input) => ({ selector: `${input.selector} *` }), {
|
|
7
|
-
order: -1,
|
|
8
|
-
}),
|
|
9
|
-
];
|
|
10
|
-
//# sourceMappingURL=children.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"children.js","sourceRoot":"","sources":["../../src/variants/children.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGpD,MAAM,CAAC,MAAM,eAAe,GAAqB;IAChD,cAAc,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,QAAQ,MAAM,EAAE,CAAC,EAAE;QACvE,KAAK,EAAE,CAAC,CAAC;KACT,CAAC;IACF,cAAc,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,QAAQ,IAAI,EAAE,CAAC,EAAE;QACtE,KAAK,EAAE,CAAC,CAAC;KACT,CAAC;CACF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"children.test.d.ts","sourceRoot":"","sources":["../../src/variants/children.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { it } from 'vitest';
|
|
2
|
-
import { testVariants } from './_test.js';
|
|
3
|
-
import { variantChildren } from './children.js';
|
|
4
|
-
it('matches direct children selector variant', async () => {
|
|
5
|
-
await testVariants(variantChildren, '*:bg-red', 'bg-red', {
|
|
6
|
-
selector: ' > *',
|
|
7
|
-
});
|
|
8
|
-
});
|
|
9
|
-
//# sourceMappingURL=children.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"children.test.js","sourceRoot":"","sources":["../../src/variants/children.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAEhD,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;IACzD,MAAM,YAAY,CAAC,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE;QACzD,QAAQ,EAAE,MAAM;KAChB,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combinators.d.ts","sourceRoot":"","sources":["../../src/variants/combinators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAiC1C,eAAO,MAAM,kBAAkB,EAAE,OAAO,CAAC,KAAK,CAAC,EAM9C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,OAAO,CAAC,KAAK,CAAC,EAEjD,CAAC"}
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import { variantGetBracket, variantMatcher } from '@unocss/rule-utils';
|
|
2
|
-
import { h } from '../util/h.js';
|
|
3
|
-
function scopeMatcher(name, combinator) {
|
|
4
|
-
return {
|
|
5
|
-
name: `combinator:${name}`,
|
|
6
|
-
match(matcher, ctx) {
|
|
7
|
-
if (!matcher.startsWith(name))
|
|
8
|
-
return;
|
|
9
|
-
const separators = ctx.generator.config.separators;
|
|
10
|
-
let body = variantGetBracket(`${name}-`, matcher, separators);
|
|
11
|
-
if (!body) {
|
|
12
|
-
for (const separator of separators) {
|
|
13
|
-
if (matcher.startsWith(`${name}${separator}`)) {
|
|
14
|
-
body = ['', matcher.slice(name.length + separator.length)];
|
|
15
|
-
break;
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
if (!body)
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
let bracketValue = h.bracket(body[0]) ?? '';
|
|
22
|
-
if (bracketValue === '')
|
|
23
|
-
bracketValue = '*';
|
|
24
|
-
return {
|
|
25
|
-
matcher: body[1],
|
|
26
|
-
selector: (s) => `${s}${combinator}${bracketValue}`,
|
|
27
|
-
};
|
|
28
|
-
},
|
|
29
|
-
multiPass: true,
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
export const variantCombinators = [
|
|
33
|
-
scopeMatcher('all', ' '),
|
|
34
|
-
scopeMatcher('children', '>'),
|
|
35
|
-
scopeMatcher('next', '+'),
|
|
36
|
-
scopeMatcher('sibling', '+'),
|
|
37
|
-
scopeMatcher('siblings', '~'),
|
|
38
|
-
];
|
|
39
|
-
export const variantSvgCombinators = [
|
|
40
|
-
variantMatcher('svg', (input) => ({ selector: `${input.selector} svg` })),
|
|
41
|
-
];
|
|
42
|
-
//# sourceMappingURL=combinators.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combinators.js","sourceRoot":"","sources":["../../src/variants/combinators.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEvE,OAAO,EAAE,CAAC,EAAE,MAAM,cAAc,CAAC;AAEjC,SAAS,YAAY,CAAC,IAAY,EAAE,UAAkB;IACrD,OAAO;QACN,IAAI,EAAE,cAAc,IAAI,EAAE;QAC1B,KAAK,CAAC,OAAO,EAAE,GAAG;YACjB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO;YAEtC,MAAM,UAAU,GAAG,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC;YACnD,IAAI,IAAI,GAAG,iBAAiB,CAAC,GAAG,IAAI,GAAG,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAC9D,IAAI,CAAC,IAAI,EAAE,CAAC;gBACX,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;oBACpC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC;wBAC/C,IAAI,GAAG,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC;wBAC3D,MAAM;oBACP,CAAC;gBACF,CAAC;gBACD,IAAI,CAAC,IAAI;oBAAE,OAAO;YACnB,CAAC;YAED,IAAI,YAAY,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,YAAY,KAAK,EAAE;gBAAE,YAAY,GAAG,GAAG,CAAC;YAE5C,OAAO;gBACN,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,UAAU,GAAG,YAAY,EAAE;aACnD,CAAC;QACH,CAAC;QACD,SAAS,EAAE,IAAI;KACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAqB;IACnD,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC;IACxB,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;IAC7B,YAAY,CAAC,MAAM,EAAE,GAAG,CAAC;IACzB,YAAY,CAAC,SAAS,EAAE,GAAG,CAAC;IAC5B,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC;CAC7B,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAqB;IACtD,cAAc,CAAC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC,QAAQ,MAAM,EAAE,CAAC,CAAC;CACzE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combinators.test.d.ts","sourceRoot":"","sources":["../../src/variants/combinators.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { expect, it } from 'vitest';
|
|
2
|
-
import { testTheme } from '../_test.js';
|
|
3
|
-
import { testVariants } from './_test.js';
|
|
4
|
-
import { variantCombinators, variantSvgCombinators } from './combinators.js';
|
|
5
|
-
const ctx = {
|
|
6
|
-
generator: {
|
|
7
|
-
config: {
|
|
8
|
-
separators: [':'],
|
|
9
|
-
},
|
|
10
|
-
},
|
|
11
|
-
rawSelector: '',
|
|
12
|
-
theme: testTheme,
|
|
13
|
-
};
|
|
14
|
-
it('matches explicit combinator scope selector', async () => {
|
|
15
|
-
const childrenVariant = variantCombinators.find((v) => typeof v === 'object' && v.name === 'combinator:children');
|
|
16
|
-
expect(childrenVariant).toBeTruthy();
|
|
17
|
-
expect(childrenVariant).toBeTypeOf('object');
|
|
18
|
-
if (!childrenVariant || typeof childrenVariant !== 'object')
|
|
19
|
-
return;
|
|
20
|
-
const result = await childrenVariant.match('children-[button]:bg-red', ctx);
|
|
21
|
-
expect(result).toBeTruthy();
|
|
22
|
-
expect(result).not.toBeTypeOf('string');
|
|
23
|
-
if (!result || typeof result === 'string')
|
|
24
|
-
return;
|
|
25
|
-
expect(result.matcher).toBe('bg-red');
|
|
26
|
-
expect(result.selector?.('.x')).toBe('.x>button');
|
|
27
|
-
});
|
|
28
|
-
it('matches svg descendant combinator', async () => {
|
|
29
|
-
await testVariants(variantSvgCombinators, 'svg:bg-red', 'bg-red', {
|
|
30
|
-
selector: ' svg',
|
|
31
|
-
});
|
|
32
|
-
});
|
|
33
|
-
//# sourceMappingURL=combinators.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"combinators.test.js","sourceRoot":"","sources":["../../src/variants/combinators.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAE7E,MAAM,GAAG,GAAG;IACX,SAAS,EAAE;QACV,MAAM,EAAE;YACP,UAAU,EAAE,CAAC,GAAG,CAAC;SACjB;KACD;IACD,WAAW,EAAE,EAAE;IACf,KAAK,EAAE,SAAS;CACT,CAAC;AAET,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;IAC3D,MAAM,eAAe,GAAG,kBAAkB,CAAC,IAAI,CAC9C,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,CAAC,IAAI,KAAK,qBAAqB,CAChE,CAAC;IAEF,MAAM,CAAC,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;IACrC,MAAM,CAAC,eAAe,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAE7C,IAAI,CAAC,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ;QAAE,OAAO;IAEpE,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,KAAK,CAAC,0BAA0B,EAAE,GAAG,CAAC,CAAC;IAC5E,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,EAAE,CAAC;IAC5B,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAExC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ;QAAE,OAAO;IAElD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AACnD,CAAC,CAAC,CAAC;AAEH,EAAE,CAAC,mCAAmC,EAAE,KAAK,IAAI,EAAE;IAClD,MAAM,YAAY,CAAC,qBAAqB,EAAE,YAAY,EAAE,QAAQ,EAAE;QACjE,QAAQ,EAAE,MAAM;KAChB,CAAC,CAAC;AACJ,CAAC,CAAC,CAAC"}
|
package/dist/variants/data.d.ts
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { Variant, VariantObject } from '@unocss/core';
|
|
2
|
-
import { Theme } from '../theme/types.js';
|
|
3
|
-
export declare const variantDataAttribute: VariantObject<Theme>;
|
|
4
|
-
export declare const variantTaggedDataAttributes: Variant<Theme>[];
|
|
5
|
-
//# sourceMappingURL=data.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../../src/variants/data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE3D,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,eAAO,MAAM,oBAAoB,EAAE,aAAa,CAAC,KAAK,CAoBrD,CAAC;AAwCF,eAAO,MAAM,2BAA2B,EAAE,OAAO,CAAC,KAAK,CAAC,EAOvD,CAAC"}
|
package/dist/variants/data.js
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { variantGetParameter } from '@unocss/rule-utils';
|
|
2
|
-
export const variantDataAttribute = {
|
|
3
|
-
name: 'data',
|
|
4
|
-
match(matcher, ctx) {
|
|
5
|
-
const variant = variantGetParameter('data-', matcher, ctx.generator.config.separators);
|
|
6
|
-
if (variant) {
|
|
7
|
-
const [match, rest] = variant;
|
|
8
|
-
const dataAttribute = match;
|
|
9
|
-
if (dataAttribute) {
|
|
10
|
-
return {
|
|
11
|
-
matcher: rest,
|
|
12
|
-
selector: (s) => `${s}[data-${dataAttribute}]`,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
},
|
|
17
|
-
multiPass: true,
|
|
18
|
-
};
|
|
19
|
-
function taggedData(tagName) {
|
|
20
|
-
return {
|
|
21
|
-
name: `${tagName}-data`,
|
|
22
|
-
match(matcher, ctx) {
|
|
23
|
-
const variant = variantGetParameter(`${tagName}-data-`, matcher, ctx.generator.config.separators);
|
|
24
|
-
if (variant) {
|
|
25
|
-
const [match, rest, label] = variant;
|
|
26
|
-
const dataAttribute = match;
|
|
27
|
-
if (dataAttribute) {
|
|
28
|
-
const tagSelectorMap = {
|
|
29
|
-
group: `&:is(:where(.group${label ? `\\/${label}` : ''})[data-${dataAttribute}] *)`,
|
|
30
|
-
peer: `&:is(:where(.peer${label ? `\\/${label}` : ''})[data-${dataAttribute}] ~ *)`,
|
|
31
|
-
previous: `:where(*[data-${dataAttribute}] + &)`,
|
|
32
|
-
parent: `:where(*[data-${dataAttribute}] > &)`,
|
|
33
|
-
has: `&:has(*[data-${dataAttribute}])`,
|
|
34
|
-
in: `:where(*[data-${dataAttribute}]) &`,
|
|
35
|
-
};
|
|
36
|
-
return {
|
|
37
|
-
matcher: rest,
|
|
38
|
-
handle: (input, next) => next({
|
|
39
|
-
...input,
|
|
40
|
-
parent: `${input.parent ? `${input.parent} $$ ` : ''}${input.selector}`,
|
|
41
|
-
selector: tagSelectorMap[tagName],
|
|
42
|
-
}),
|
|
43
|
-
};
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
multiPass: true,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
export const variantTaggedDataAttributes = [
|
|
51
|
-
taggedData('group'),
|
|
52
|
-
taggedData('peer'),
|
|
53
|
-
taggedData('parent'),
|
|
54
|
-
taggedData('previous'),
|
|
55
|
-
taggedData('has'),
|
|
56
|
-
taggedData('in'),
|
|
57
|
-
];
|
|
58
|
-
//# sourceMappingURL=data.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sourceRoot":"","sources":["../../src/variants/data.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,MAAM,CAAC,MAAM,oBAAoB,GAAyB;IACzD,IAAI,EAAE,MAAM;IACZ,KAAK,CAAC,OAAO,EAAE,GAAG;QACjB,MAAM,OAAO,GAAG,mBAAmB,CAClC,OAAO,EACP,OAAO,EACP,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAC/B,CAAC;QACF,IAAI,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,OAAO,CAAC;YAC9B,MAAM,aAAa,GAAG,KAAK,CAAC;YAC5B,IAAI,aAAa,EAAE,CAAC;gBACnB,OAAO;oBACN,OAAO,EAAE,IAAI;oBACb,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,SAAS,aAAa,GAAG;iBAC9C,CAAC;YACH,CAAC;QACF,CAAC;IACF,CAAC;IACD,SAAS,EAAE,IAAI;CACf,CAAC;AAEF,SAAS,UAAU,CAAC,OAAe;IAClC,OAAO;QACN,IAAI,EAAE,GAAG,OAAO,OAAO;QACvB,KAAK,CAAC,OAAO,EAAE,GAAG;YACjB,MAAM,OAAO,GAAG,mBAAmB,CAClC,GAAG,OAAO,QAAQ,EAClB,OAAO,EACP,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,UAAU,CAC/B,CAAC;YACF,IAAI,OAAO,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,GAAG,OAAO,CAAC;gBACrC,MAAM,aAAa,GAAG,KAAK,CAAC;gBAC5B,IAAI,aAAa,EAAE,CAAC;oBACnB,MAAM,cAAc,GAA2B;wBAC9C,KAAK,EAAE,qBAAqB,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,MAAM;wBACnF,IAAI,EAAE,oBAAoB,KAAK,CAAC,CAAC,CAAC,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,UAAU,aAAa,QAAQ;wBACnF,QAAQ,EAAE,iBAAiB,aAAa,QAAQ;wBAChD,MAAM,EAAE,iBAAiB,aAAa,QAAQ;wBAC9C,GAAG,EAAE,gBAAgB,aAAa,IAAI;wBACtC,EAAE,EAAE,iBAAiB,aAAa,MAAM;qBACxC,CAAC;oBAEF,OAAO;wBACN,OAAO,EAAE,IAAI;wBACb,MAAM,EAAE,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CACvB,IAAI,CAAC;4BACJ,GAAG,KAAK;4BACR,MAAM,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,QAAQ,EAAE;4BACvE,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC;yBACjC,CAAC;qBACH,CAAC;gBACH,CAAC;YACF,CAAC;QACF,CAAC;QACD,SAAS,EAAE,IAAI;KACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAqB;IAC5D,UAAU,CAAC,OAAO,CAAC;IACnB,UAAU,CAAC,MAAM,CAAC;IAClB,UAAU,CAAC,QAAQ,CAAC;IACpB,UAAU,CAAC,UAAU,CAAC;IACtB,UAAU,CAAC,KAAK,CAAC;IACjB,UAAU,CAAC,IAAI,CAAC;CAChB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data.test.d.ts","sourceRoot":"","sources":["../../src/variants/data.test.ts"],"names":[],"mappings":""}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { describe, expect, it } from 'vitest';
|
|
2
|
-
import { testTheme } from '../_test.js';
|
|
3
|
-
import { variantDataAttribute, variantTaggedDataAttributes } from './data.js';
|
|
4
|
-
const ctx = {
|
|
5
|
-
generator: {
|
|
6
|
-
config: {
|
|
7
|
-
separators: [':'],
|
|
8
|
-
},
|
|
9
|
-
},
|
|
10
|
-
rawSelector: '',
|
|
11
|
-
theme: testTheme,
|
|
12
|
-
};
|
|
13
|
-
describe('variantDataAttribute', () => {
|
|
14
|
-
it('matches data attribute selector', () => {
|
|
15
|
-
const result = variantDataAttribute.match('data-state=open:bg-red', ctx);
|
|
16
|
-
expect(result).toBeTruthy();
|
|
17
|
-
expect(result).not.toBeTypeOf('string');
|
|
18
|
-
if (!result || typeof result === 'string')
|
|
19
|
-
return;
|
|
20
|
-
expect(result.matcher).toBe('bg-red');
|
|
21
|
-
expect(result.selector?.('.btn')).toBe('.btn[data-state=open]');
|
|
22
|
-
});
|
|
23
|
-
it('matches tagged peer data selector', async () => {
|
|
24
|
-
const peerVariant = variantTaggedDataAttributes.find((v) => typeof v === 'object' && v.name === 'peer-data');
|
|
25
|
-
expect(peerVariant).toBeTruthy();
|
|
26
|
-
expect(peerVariant).toBeTypeOf('object');
|
|
27
|
-
if (!peerVariant || typeof peerVariant !== 'object')
|
|
28
|
-
return;
|
|
29
|
-
const result = await peerVariant.match('peer-data-state=open:bg-red', ctx);
|
|
30
|
-
expect(result).toBeTruthy();
|
|
31
|
-
expect(result).not.toBeTypeOf('string');
|
|
32
|
-
if (!result || typeof result === 'string')
|
|
33
|
-
return;
|
|
34
|
-
const input = {
|
|
35
|
-
entries: [],
|
|
36
|
-
parent: '',
|
|
37
|
-
prefix: '',
|
|
38
|
-
pseudo: '',
|
|
39
|
-
selector: '.item',
|
|
40
|
-
};
|
|
41
|
-
await result.handle?.(input, (next) => Object.assign(input, next));
|
|
42
|
-
expect(result.matcher).toBe('bg-red');
|
|
43
|
-
expect(input.parent).toBe('.item');
|
|
44
|
-
expect(input.selector).toBe('&:is(:where(.peer)[data-state=open] ~ *)');
|
|
45
|
-
});
|
|
46
|
-
it('matches tagged peer data selector with label', async () => {
|
|
47
|
-
const peerVariant = variantTaggedDataAttributes.find((v) => typeof v === 'object' && v.name === 'peer-data');
|
|
48
|
-
expect(peerVariant).toBeTruthy();
|
|
49
|
-
expect(peerVariant).toBeTypeOf('object');
|
|
50
|
-
if (!peerVariant || typeof peerVariant !== 'object')
|
|
51
|
-
return;
|
|
52
|
-
const result = await peerVariant.match('peer-data-state=open/menu:bg-red', ctx);
|
|
53
|
-
expect(result).toBeTruthy();
|
|
54
|
-
expect(result).not.toBeTypeOf('string');
|
|
55
|
-
if (!result || typeof result === 'string')
|
|
56
|
-
return;
|
|
57
|
-
const input = {
|
|
58
|
-
entries: [],
|
|
59
|
-
parent: '',
|
|
60
|
-
prefix: '',
|
|
61
|
-
pseudo: '',
|
|
62
|
-
selector: '.item',
|
|
63
|
-
};
|
|
64
|
-
await result.handle?.(input, (next) => Object.assign(input, next));
|
|
65
|
-
expect(result.matcher).toBe('bg-red');
|
|
66
|
-
expect(input.parent).toBe('.item');
|
|
67
|
-
expect(input.selector).toBe('&:is(:where(.peer\\/menu)[data-state=open] ~ *)');
|
|
68
|
-
});
|
|
69
|
-
});
|
|
70
|
-
//# sourceMappingURL=data.test.js.map
|