zyzz 0.0.20 → 0.0.21
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/Style.d.ts +7 -0
- package/dist/Style.d.ts.map +1 -1
- package/dist/Style.js +1 -5
- package/dist/Style.js.map +1 -1
- package/dist/compiler/Graph.d.ts +3 -0
- package/dist/compiler/Graph.d.ts.map +1 -1
- package/dist/compiler/Graph.js +44 -37
- package/dist/compiler/Graph.js.map +1 -1
- package/dist/compiler/Source.d.ts +4 -0
- package/dist/compiler/Source.d.ts.map +1 -1
- package/dist/compiler/Source.js +63 -6
- package/dist/compiler/Source.js.map +1 -1
- package/dist/compiler/Transform.d.ts +4 -1
- package/dist/compiler/Transform.d.ts.map +1 -1
- package/dist/compiler/Transform.js +32 -46
- package/dist/compiler/Transform.js.map +1 -1
- package/dist/compiler/internal/Catalogs.d.ts.map +1 -1
- package/dist/compiler/internal/Catalogs.js +6 -1
- package/dist/compiler/internal/Catalogs.js.map +1 -1
- package/dist/compiler/internal/Compositions.d.ts.map +1 -1
- package/dist/compiler/internal/Compositions.js +5 -0
- package/dist/compiler/internal/Compositions.js.map +1 -1
- package/dist/compiler/internal/Configurations.d.ts.map +1 -1
- package/dist/compiler/internal/Configurations.js +2 -1
- package/dist/compiler/internal/Configurations.js.map +1 -1
- package/dist/compiler/internal/Contract.d.ts +4 -1
- package/dist/compiler/internal/Contract.d.ts.map +1 -1
- package/dist/compiler/internal/Contract.js +56 -147
- package/dist/compiler/internal/Contract.js.map +1 -1
- package/dist/compiler/internal/Contributions.d.ts.map +1 -1
- package/dist/compiler/internal/Contributions.js +1 -3
- package/dist/compiler/internal/Contributions.js.map +1 -1
- package/dist/compiler/internal/Dynamic.d.ts +1 -1
- package/dist/compiler/internal/Dynamic.d.ts.map +1 -1
- package/dist/compiler/internal/Dynamic.js +5 -5
- package/dist/compiler/internal/Dynamic.js.map +1 -1
- package/dist/compiler/internal/Names.d.ts +5 -0
- package/dist/compiler/internal/Names.d.ts.map +1 -0
- package/dist/compiler/internal/Names.js +37 -0
- package/dist/compiler/internal/Names.js.map +1 -0
- package/dist/compiler/internal/Selectors.d.ts +1 -1
- package/dist/compiler/internal/Selectors.d.ts.map +1 -1
- package/dist/compiler/internal/Selectors.js +5 -2
- package/dist/compiler/internal/Selectors.js.map +1 -1
- package/dist/compiler/internal/Stylesheets.js +2 -2
- package/dist/compiler/internal/Stylesheets.js.map +1 -1
- package/dist/compiler/internal/Themes.d.ts.map +1 -1
- package/dist/compiler/internal/Themes.js +2 -1
- package/dist/compiler/internal/Themes.js.map +1 -1
- package/dist/compiler/internal/Vars.d.ts +2 -0
- package/dist/compiler/internal/Vars.d.ts.map +1 -1
- package/dist/compiler/internal/Vars.js +7 -1
- package/dist/compiler/internal/Vars.js.map +1 -1
- package/dist/default.d.ts +4 -4
- package/dist/default.d.ts.map +1 -1
- package/dist/default.js +9 -9
- package/dist/default.js.map +2 -2
- package/dist/default.js.zyzz.json +1 -1
- package/dist/internal/Authoring.d.ts.map +1 -1
- package/dist/internal/Authoring.js +8 -3
- package/dist/internal/Authoring.js.map +1 -1
- package/dist/internal/Binding.d.ts +4 -0
- package/dist/internal/Binding.d.ts.map +1 -1
- package/dist/internal/Binding.js +2 -0
- package/dist/internal/Binding.js.map +1 -1
- package/dist/internal/Configuration.d.ts +2 -2
- package/dist/internal/Configuration.d.ts.map +1 -1
- package/dist/internal/Configuration.js +4 -2
- package/dist/internal/Configuration.js.map +1 -1
- package/dist/internal/Identity.d.ts +3 -3
- package/dist/internal/Identity.d.ts.map +1 -1
- package/dist/internal/Identity.js +11 -9
- package/dist/internal/Identity.js.map +1 -1
- package/dist/internal/Theme.js +2 -2
- package/dist/internal/Theme.js.map +1 -1
- package/dist/internal/Token.d.ts +5 -1
- package/dist/internal/Token.d.ts.map +1 -1
- package/dist/internal/Token.js +9 -2
- package/dist/internal/Token.js.map +1 -1
- package/dist/internal/VariableSets.js +1 -1
- package/dist/internal/VariableSets.js.map +1 -1
- package/dist/node/Host.d.ts.map +1 -1
- package/dist/node/Host.js +2 -0
- package/dist/node/Host.js.map +1 -1
- package/dist/variable.js +1 -1
- package/dist/variable.js.map +1 -1
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +36 -12
- package/dist/vite/index.js.map +1 -1
- package/dist/web/Css.d.ts +7 -2
- package/dist/web/Css.d.ts.map +1 -1
- package/dist/web/Css.js +46 -39
- package/dist/web/Css.js.map +1 -1
- package/dist/web/internal/ClassName.d.ts +13 -2
- package/dist/web/internal/ClassName.d.ts.map +1 -1
- package/dist/web/internal/ClassName.js +17 -30
- package/dist/web/internal/ClassName.js.map +1 -1
- package/dist/web/internal/Themes.d.ts +3 -0
- package/dist/web/internal/Themes.d.ts.map +1 -1
- package/dist/web/internal/Themes.js +48 -24
- package/dist/web/internal/Themes.js.map +1 -1
- package/package.json +1 -1
- package/src/Style.ts +4 -1
- package/src/compiler/Graph.ts +60 -46
- package/src/compiler/Source.ts +83 -5
- package/src/compiler/Transform.ts +42 -60
- package/src/compiler/internal/Catalogs.ts +9 -1
- package/src/compiler/internal/Compositions.ts +7 -0
- package/src/compiler/internal/Configurations.ts +2 -1
- package/src/compiler/internal/Contract.ts +75 -253
- package/src/compiler/internal/Contributions.ts +1 -5
- package/src/compiler/internal/Dynamic.ts +14 -9
- package/src/compiler/internal/Names.ts +48 -0
- package/src/compiler/internal/Selectors.ts +6 -1
- package/src/compiler/internal/Stylesheets.ts +2 -2
- package/src/compiler/internal/Themes.ts +6 -1
- package/src/compiler/internal/Vars.ts +9 -1
- package/src/default.ts +9 -10
- package/src/internal/Authoring.ts +8 -2
- package/src/internal/Binding.ts +5 -0
- package/src/internal/Configuration.ts +7 -4
- package/src/internal/Identity.ts +14 -12
- package/src/internal/Theme.ts +2 -2
- package/src/internal/Token.ts +13 -1
- package/src/internal/VariableSets.ts +1 -1
- package/src/node/Host.ts +3 -0
- package/src/variable.ts +1 -1
- package/src/vite/index.ts +43 -18
- package/src/web/Css.ts +83 -49
- package/src/web/internal/ClassName.ts +31 -36
- package/src/web/internal/Themes.ts +75 -29
|
@@ -12,20 +12,17 @@ export function create(options) {
|
|
|
12
12
|
? body.slice(prefix.length, -1)
|
|
13
13
|
: '';
|
|
14
14
|
const simple = /^[a-zA-Z0-9-]{1,24}$/.test(literal);
|
|
15
|
-
const
|
|
15
|
+
const namespace = options.namespace ? `${options.namespace}-` : '';
|
|
16
|
+
if (options.context !== undefined)
|
|
17
|
+
return `z-${namespace}${options.context}-${encode(property)}${options.slot === undefined ? '' : `-${options.slot}`}`;
|
|
18
|
+
const value = simple ? literal : `[${literal || body}]`;
|
|
19
|
+
const readable = options.property === 'display' && displays.has(literal)
|
|
16
20
|
? literal
|
|
17
|
-
:
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
return `-${hash(options.body)}`;
|
|
23
|
-
return '';
|
|
24
|
-
})();
|
|
25
|
-
if (options.stable)
|
|
26
|
-
return `z-${encode(property)}${suffix}`;
|
|
27
|
-
// Custom properties and vendor spellings can contain identifier punctuation.
|
|
28
|
-
return `z-${condition ? `${condition[1]}-` : ''}${encode(label)}${suffix}`;
|
|
21
|
+
: property.startsWith('--')
|
|
22
|
+
? `[${property}:${literal || body}]`
|
|
23
|
+
: `${property}-${value}`;
|
|
24
|
+
// DOM class tokens cannot contain whitespace; preserve its spelling reversibly.
|
|
25
|
+
return `z-${namespace}${condition ? `${condition[1]}-` : ''}${readable.replace(/[\s_"'<>]/gu, (character) => `_${character.codePointAt(0).toString(16)}_`)}`;
|
|
29
26
|
}
|
|
30
27
|
const aliases = {
|
|
31
28
|
backgroundColor: 'bg',
|
|
@@ -56,22 +53,12 @@ const displays = new Set([
|
|
|
56
53
|
function encode(value) {
|
|
57
54
|
return value.replace(/[^a-zA-Z0-9-]/g, (character) => `_${character.charCodeAt(0).toString(16)}_`);
|
|
58
55
|
}
|
|
59
|
-
|
|
60
|
-
function
|
|
61
|
-
|
|
62
|
-
let second = 5381;
|
|
63
|
-
for (let index = 0; index < value.length; index++) {
|
|
64
|
-
const code = value.charCodeAt(index);
|
|
65
|
-
first = Math.imul(first ^ code, 16777619);
|
|
66
|
-
second = Math.imul(second, 33) ^ code;
|
|
67
|
-
}
|
|
68
|
-
const alphabet = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_-';
|
|
69
|
-
let bits = (first >>> 0) * 16 + (second >>> 28);
|
|
70
|
-
let result = '';
|
|
71
|
-
for (let index = 0; index < 6; index++) {
|
|
72
|
-
result = alphabet[bits % 64] + result;
|
|
73
|
-
bits = Math.floor(bits / 64);
|
|
74
|
-
}
|
|
75
|
-
return result;
|
|
56
|
+
/** Escapes a generated class token for use as a CSS selector. */
|
|
57
|
+
export function selector(value) {
|
|
58
|
+
return value.replace(/[^a-zA-Z0-9_-]/gu, (character) => `\\${character.codePointAt(0).toString(16)} `);
|
|
76
59
|
}
|
|
60
|
+
/** Carries exact emitted rule bodies for graph-wide collision checks. */
|
|
61
|
+
export const rules = Symbol('zyzz.css.rules');
|
|
62
|
+
/** Carries authored names between source extraction and CSS emission. */
|
|
63
|
+
export const labels = Symbol('zyzz.css.labels');
|
|
77
64
|
//# sourceMappingURL=ClassName.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassName.js","sourceRoot":"","sources":["../../../src/web/internal/ClassName.ts"],"names":[],"mappings":"AAAA,6FAA6F;AAC7F,OAAO,KAAK,OAAO,MAAM,2BAA2B,CAAA;AAEpD,uEAAuE;AACvE,MAAM,UAAU,MAAM,CAAC,OAAuB;IAC5C,MAAM,QAAQ,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,QAAQ,CAAC;QACvD,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAE;QAC5B,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IAClC,MAAM,SAAS,GACb,6DAA6D,CAAC,IAAI,CAChE,OAAO,CAAC,IAAI,CACb,CAAA;IACH,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,IAAI,CAAA;IAC3C,MAAM,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAA;IACnD,MAAM,OAAO,GACX,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;QAC3C,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC/B,CAAC,CAAC,EAAE,CAAA;IACR,MAAM,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACnD,MAAM,
|
|
1
|
+
{"version":3,"file":"ClassName.js","sourceRoot":"","sources":["../../../src/web/internal/ClassName.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,6 +6,7 @@ export declare function create(): {
|
|
|
6
6
|
emit: (themes: Readonly<Record<string, Theme.Definition | Vars.Definition>>, schemes?: boolean, separate?: 'all' | 'defaults') => {
|
|
7
7
|
classes: Readonly<Record<string, string>>;
|
|
8
8
|
css: string;
|
|
9
|
+
rules: Rule[];
|
|
9
10
|
resources: Resource[];
|
|
10
11
|
};
|
|
11
12
|
serialize: (token: Token.Reference) => string;
|
|
@@ -36,4 +37,6 @@ export type Rule = {
|
|
|
36
37
|
};
|
|
37
38
|
/** Selects independently shareable defaults or all token rules. */
|
|
38
39
|
export declare const shared: unique symbol;
|
|
40
|
+
/** Names an authored scope without its private source identity. */
|
|
41
|
+
export declare function scope(value: string, identity?: string): string;
|
|
39
42
|
//# sourceMappingURL=Themes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Themes.d.ts","sourceRoot":"","sources":["../../../src/web/internal/Themes.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAChD,OAAO,KAAK,KAAK,IAAI,MAAM,eAAe,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAErD,6EAA6E;AAC7E,wBAAgB,MAAM;
|
|
1
|
+
{"version":3,"file":"Themes.d.ts","sourceRoot":"","sources":["../../../src/web/internal/Themes.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAChD,OAAO,KAAK,KAAK,IAAI,MAAM,eAAe,CAAA;AAC1C,OAAO,KAAK,KAAK,KAAK,MAAM,yBAAyB,CAAA;AAErD,6EAA6E;AAC7E,wBAAgB,MAAM;mBAqCV,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,gCAEzD,KAAK,GAAG,UAAU;;;;;;uBA9BL,KAAK,CAAC,SAAS,KAAG,MAAM;EAiUnD;AAED,6EAA6E;AAC7E,wBAAgB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAK5C;AAED,oGAAoG;AACpG,wBAAgB,MAAM,CAAC,KAAK,EAAE,SAAS,IAAI,EAAE,GAAG,MAAM,CAyCrD;AAED,qEAAqE;AACrE,MAAM,MAAM,QAAQ,GAAG;IACrB,oDAAoD;IACpD,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;IACnB,yDAAyD;IACzD,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,EAAE,GAAG,SAAS,CAAA;CAC7C,CAAA;AAED,mFAAmF;AACnF,MAAM,MAAM,IAAI,GAAG;IACjB,wCAAwC;IACxC,QAAQ,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;IACtC,sCAAsC;IACtC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,4CAA4C;IAC5C,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;IACzB,wCAAwC;IACxC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB,CAAA;AAED,mEAAmE;AACnE,eAAO,MAAM,MAAM,eAA+B,CAAA;AAElD,mEAAmE;AACnE,wBAAgB,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAG9D"}
|
|
@@ -7,8 +7,6 @@ import * as Scheme from '../../internal/Scheme.js';
|
|
|
7
7
|
import * as Token from '../../internal/Token.js';
|
|
8
8
|
/** Collects live token references within one in-memory compilation graph. */
|
|
9
9
|
export function create() {
|
|
10
|
-
let nextScope = 0;
|
|
11
|
-
let nextVariable = 0;
|
|
12
10
|
const contracts = new Map();
|
|
13
11
|
const defaults = new Map();
|
|
14
12
|
const defaultGroups = new Map();
|
|
@@ -24,17 +22,15 @@ export function create() {
|
|
|
24
22
|
}
|
|
25
23
|
let name = contract.paths.get(token.path);
|
|
26
24
|
if (!name) {
|
|
27
|
-
name =
|
|
28
|
-
contract.identity === undefined
|
|
29
|
-
? `--z${nextVariable++}`
|
|
30
|
-
: variable(contract.identity, token.path);
|
|
25
|
+
name = variable(contract.identity, token.path, token.contract.variableNaming);
|
|
31
26
|
contract.paths.set(token.path, name);
|
|
32
27
|
}
|
|
33
|
-
const label =
|
|
28
|
+
const label = token.path;
|
|
34
29
|
return `var(${name},${literal(value, label, token.contract)})`;
|
|
35
30
|
}
|
|
36
31
|
function emit(themes, schemes = false, separate) {
|
|
37
32
|
const classes = Object.create(null);
|
|
33
|
+
const scopeBodies = new Map();
|
|
38
34
|
const completeDefaults = new Set();
|
|
39
35
|
const empty = [];
|
|
40
36
|
const rules = [];
|
|
@@ -47,9 +43,11 @@ export function create() {
|
|
|
47
43
|
throw new Error('Expected a theme definition.');
|
|
48
44
|
// Anonymous contracts are graph-local. Source-owned contracts retain stable
|
|
49
45
|
// identities across separately compiled components and theme scopes.
|
|
50
|
-
const className = data.
|
|
51
|
-
|
|
52
|
-
|
|
46
|
+
const className = scope(data.cssName ??
|
|
47
|
+
(data.contract[Token.identity] &&
|
|
48
|
+
name.startsWith(`${data.contract[Token.identity]}-`)
|
|
49
|
+
? name.slice(data.contract[Token.identity].length + 1)
|
|
50
|
+
: name), data.contract[Token.identity]);
|
|
53
51
|
classes[name] = className;
|
|
54
52
|
let contract = contracts.get(data.contract);
|
|
55
53
|
if (data.contract[Token.complete]) {
|
|
@@ -61,9 +59,7 @@ export function create() {
|
|
|
61
59
|
for (const path of Object.keys(data.values)) {
|
|
62
60
|
if (contract.paths.has(path))
|
|
63
61
|
continue;
|
|
64
|
-
contract.paths.set(path, contract.identity
|
|
65
|
-
? `--z${nextVariable++}`
|
|
66
|
-
: variable(contract.identity, path));
|
|
62
|
+
contract.paths.set(path, variable(contract.identity, path, data.contract.variableNaming));
|
|
67
63
|
}
|
|
68
64
|
contracts.set(data.contract, contract);
|
|
69
65
|
}
|
|
@@ -73,7 +69,7 @@ export function create() {
|
|
|
73
69
|
if (separate === 'all' && contract.identity) {
|
|
74
70
|
completeDefaults.add(data.contract);
|
|
75
71
|
for (const [path, value] of Object.entries(data.values))
|
|
76
|
-
literal(value,
|
|
72
|
+
literal(value, path, data.contract);
|
|
77
73
|
}
|
|
78
74
|
if (!contract.paths.size)
|
|
79
75
|
empty.push(`.${className}{}`);
|
|
@@ -84,17 +80,39 @@ export function create() {
|
|
|
84
80
|
const value = data.values[path];
|
|
85
81
|
if (value === undefined)
|
|
86
82
|
throw new Error('Theme scope is missing a live token.');
|
|
87
|
-
const label =
|
|
83
|
+
const label = path;
|
|
88
84
|
declarations.push({
|
|
89
85
|
conditions: [],
|
|
90
86
|
property: name,
|
|
91
87
|
selector: `.${className}`,
|
|
92
88
|
value: literal(value, label, data.contract),
|
|
93
89
|
});
|
|
90
|
+
// Standalone styles have no contract metadata to select their original spelling.
|
|
91
|
+
if (contract.identity?.startsWith('id-') &&
|
|
92
|
+
data.contract.variableNaming === undefined)
|
|
93
|
+
declarations.push({
|
|
94
|
+
conditions: [],
|
|
95
|
+
property: variable(`id-${Array.from(contract.identity
|
|
96
|
+
.slice(3)
|
|
97
|
+
.replace(/_([0-9a-f]+)_/g, (_, code) => String.fromCodePoint(Number.parseInt(code, 16))), (character) => character.codePointAt(0).toString(16)).join('-')}`, path, 'legacy'),
|
|
98
|
+
selector: `.${className}`,
|
|
99
|
+
value: `var(${name})`,
|
|
100
|
+
});
|
|
94
101
|
}
|
|
95
102
|
rules.push(...declarations);
|
|
96
103
|
for (const [path, name] of contract.paths)
|
|
97
|
-
conditional(data.values[path], name, `.${className}`, rules,
|
|
104
|
+
conditional(data.values[path], name, `.${className}`, rules, path, [], data.contract);
|
|
105
|
+
}
|
|
106
|
+
for (const rule of rules) {
|
|
107
|
+
const key = JSON.stringify([
|
|
108
|
+
rule.selector,
|
|
109
|
+
rule.conditions,
|
|
110
|
+
rule.property,
|
|
111
|
+
]);
|
|
112
|
+
const previous = scopeBodies.get(key);
|
|
113
|
+
if (previous !== undefined && previous !== rule.value)
|
|
114
|
+
throw new Error(`Generated scope ${rule.selector.slice(1)} conflicts. Supply distinct config ids.`);
|
|
115
|
+
scopeBodies.set(key, rule.value);
|
|
98
116
|
}
|
|
99
117
|
const scopes = new Map();
|
|
100
118
|
for (const rule of rules) {
|
|
@@ -139,6 +157,7 @@ export function create() {
|
|
|
139
157
|
]
|
|
140
158
|
.filter(Boolean)
|
|
141
159
|
.join('\n'),
|
|
160
|
+
rules,
|
|
142
161
|
resources: separate
|
|
143
162
|
? [
|
|
144
163
|
...resources,
|
|
@@ -178,9 +197,7 @@ export function create() {
|
|
|
178
197
|
const base = literal(value.default, label, owner);
|
|
179
198
|
// Rule consolidation must not change existing variable identities.
|
|
180
199
|
const css = `:where(*){--fallback:${base};}${conditionalCss(value, '--fallback', ':where(*)', label, owner)}`;
|
|
181
|
-
const name = label
|
|
182
|
-
? `--z-${Identity.label(label)}-fallback-${Identity.compact(css)}`
|
|
183
|
-
: `--z-f${Identity.hash(css)}`;
|
|
200
|
+
const name = `${variable(owner?.[Token.identity], label ?? 'value')}-fallback-${Identity.name(css)}`;
|
|
184
201
|
const emitted = [
|
|
185
202
|
{ conditions: [], property: name, selector: ':where(*)', value: base },
|
|
186
203
|
];
|
|
@@ -271,10 +288,17 @@ export function render(rules) {
|
|
|
271
288
|
}
|
|
272
289
|
/** Selects independently shareable defaults or all token rules. */
|
|
273
290
|
export const shared = Symbol('shared token rules');
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
291
|
+
/** Names an authored scope without its private source identity. */
|
|
292
|
+
export function scope(value, identity) {
|
|
293
|
+
const namespace = identity?.startsWith('id-') ? `${identity.slice(3)}-` : '';
|
|
294
|
+
return `z-theme-${namespace}${Identity.name(value)}`;
|
|
295
|
+
}
|
|
296
|
+
function variable(identity, path, naming) {
|
|
297
|
+
if (naming === 'legacy' && identity)
|
|
298
|
+
return `--z-t${encode(identity)}-${encode(path)}`;
|
|
299
|
+
if (naming === 'hashed')
|
|
300
|
+
return `--z-${Identity.label(path)}-${Identity.compact(JSON.stringify([identity, path]))}`;
|
|
301
|
+
const namespace = identity?.startsWith('id-') ? `${identity.slice(3)}-` : '';
|
|
302
|
+
return `--z-${namespace}${path.split('.').map(Identity.name).join('-')}`;
|
|
279
303
|
}
|
|
280
304
|
//# sourceMappingURL=Themes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Themes.js","sourceRoot":"","sources":["../../../src/web/internal/Themes.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Themes.js","sourceRoot":"","sources":["../../../src/web/internal/Themes.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Style.ts
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Copies typed style declarations into immutable, ordered, target-independent data.
|
|
3
3
|
* @module
|
|
4
4
|
*/
|
|
5
|
+
import type * as ClassName from './web/internal/ClassName.js'
|
|
5
6
|
import * as VariableSets from './internal/VariableSets.js'
|
|
6
7
|
import type * as Vars from './Vars.js'
|
|
7
8
|
import * as Condition from './internal/Condition.js'
|
|
@@ -671,7 +672,7 @@ export function define(
|
|
|
671
672
|
!custom &&
|
|
672
673
|
!reference &&
|
|
673
674
|
Token.mapped(theme, key) &&
|
|
674
|
-
!(Binding.is(resolved) && !resolved.
|
|
675
|
+
!(Binding.is(resolved) && !resolved[Binding.dynamic]) &&
|
|
675
676
|
!(
|
|
676
677
|
Token.isExpression(resolved) &&
|
|
677
678
|
resolved.parts.every((part) => Token.is(part) || part === '')
|
|
@@ -778,6 +779,8 @@ export declare namespace define {
|
|
|
778
779
|
export type Definition<name extends string = string, input = unknown> = {
|
|
779
780
|
/** Type-only declarations used to retain native component compatibility. */
|
|
780
781
|
readonly [Targets.authored]?: input
|
|
782
|
+
/** Internal source naming metadata retained through target compilation. */
|
|
783
|
+
readonly [ClassName.labels]?: ClassName.Labels | undefined
|
|
781
784
|
/** Named styles in own enumerable property order. */
|
|
782
785
|
readonly styles: readonly NamedStyle<name>[]
|
|
783
786
|
}
|
package/src/compiler/Graph.ts
CHANGED
|
@@ -6,6 +6,7 @@ import * as Contributions from './internal/Contributions.js'
|
|
|
6
6
|
import * as Stylesheets from './internal/Stylesheets.js'
|
|
7
7
|
import type * as Mapping from '@jridgewell/gen-mapping'
|
|
8
8
|
import * as Css from '../web/Css.js'
|
|
9
|
+
import * as ClassName from '../web/internal/ClassName.js'
|
|
9
10
|
import * as Native from './Native.js'
|
|
10
11
|
import * as Edits from './internal/Edits.js'
|
|
11
12
|
import * as Identity from '../internal/Identity.js'
|
|
@@ -39,6 +40,8 @@ export declare namespace compile {
|
|
|
39
40
|
|
|
40
41
|
/** Source modules available for relative import resolution. */
|
|
41
42
|
type Options = {
|
|
43
|
+
/** CSS-only hosts publish variable scopes once with shared rules. */
|
|
44
|
+
readonly [ThemeRules.shared]?: 'all' | 'defaults' | undefined
|
|
42
45
|
/** Host entrypoints emit owned stylesheet effects without packed contracts. */
|
|
43
46
|
readonly [Stylesheets.entry]?: string | undefined
|
|
44
47
|
/** Host syntax from the same immutable source snapshot. */
|
|
@@ -156,6 +159,7 @@ type Cache = {
|
|
|
156
159
|
native: compile.Options['native']
|
|
157
160
|
result: compile.ReturnType
|
|
158
161
|
schemes: boolean
|
|
162
|
+
shared?: 'all' | 'defaults' | undefined
|
|
159
163
|
sources: Readonly<Record<string, string>>
|
|
160
164
|
themes: Readonly<Record<string, Theme.Definition>>
|
|
161
165
|
}
|
|
@@ -193,6 +197,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
193
197
|
if (cache?.reset !== options.reset) cache = undefined
|
|
194
198
|
if (cache?.cssOutput !== options.cssOutput) cache = undefined
|
|
195
199
|
if (cache?.composition !== options.composition) cache = undefined
|
|
200
|
+
if (cache?.shared !== options[ThemeRules.shared]) cache = undefined
|
|
196
201
|
if (
|
|
197
202
|
(cache?.entry === undefined) !==
|
|
198
203
|
(options[Stylesheets.entry] === undefined)
|
|
@@ -295,7 +300,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
295
300
|
previous.type !== slot.type)
|
|
296
301
|
)
|
|
297
302
|
throw new Error(
|
|
298
|
-
`Conflicting packed variable identity: ${slot.name};
|
|
303
|
+
`Conflicting packed variable identity: ${slot.name}; supply distinct declaration ids.`,
|
|
299
304
|
)
|
|
300
305
|
|
|
301
306
|
variableSlots.set(slot.name, {
|
|
@@ -1014,7 +1019,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1014
1019
|
)
|
|
1015
1020
|
fail(
|
|
1016
1021
|
moduleId,
|
|
1017
|
-
`Conflicting variable identity: ${slot.name};
|
|
1022
|
+
`Conflicting variable identity: ${slot.name}; supply distinct declaration ids.`,
|
|
1018
1023
|
call,
|
|
1019
1024
|
)
|
|
1020
1025
|
|
|
@@ -1455,23 +1460,26 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1455
1460
|
for (const library of Object.values(libraries))
|
|
1456
1461
|
for (const link of Object.values(library.links)) published(link)
|
|
1457
1462
|
|
|
1458
|
-
const
|
|
1459
|
-
function
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
|
|
1465
|
-
)
|
|
1466
|
-
|
|
1467
|
-
|
|
1463
|
+
const emittedRules = new Map<string, { body: string; moduleId: string }>()
|
|
1464
|
+
function registerRules(
|
|
1465
|
+
classRules: Readonly<Record<string, string>>,
|
|
1466
|
+
moduleId: string,
|
|
1467
|
+
) {
|
|
1468
|
+
for (const [name, body] of Object.entries(classRules)) {
|
|
1469
|
+
const previous = emittedRules.get(name)
|
|
1470
|
+
if (previous && previous.body !== body)
|
|
1471
|
+
throw new Css.CompileError([
|
|
1472
|
+
{
|
|
1473
|
+
code: 'identity_collision',
|
|
1474
|
+
message: `Generated ${name.startsWith('@scope:') ? `scope ${name.split(':')[1]}` : `class ${name}`} conflicts with module ${previous.moduleId}. Supply distinct config or style ids.`,
|
|
1475
|
+
path: [moduleId],
|
|
1476
|
+
},
|
|
1477
|
+
])
|
|
1478
|
+
emittedRules.set(name, { body, moduleId })
|
|
1468
1479
|
}
|
|
1469
|
-
for (const member of Object.values(link.members ?? {}))
|
|
1470
|
-
packedOwners(member, moduleId)
|
|
1471
1480
|
}
|
|
1472
1481
|
for (const [moduleId, library] of Object.entries(libraries))
|
|
1473
|
-
|
|
1474
|
-
packedOwners(link, moduleId)
|
|
1482
|
+
registerRules(library.classRules, moduleId)
|
|
1475
1483
|
if (options.compiler === false) {
|
|
1476
1484
|
const identities = new Map<string, string>()
|
|
1477
1485
|
for (const [moduleId, library] of Object.entries(libraries)) {
|
|
@@ -1570,7 +1578,9 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1570
1578
|
? previous!.result.modules[moduleId]!
|
|
1571
1579
|
: Transform.compile({
|
|
1572
1580
|
[ThemeRules.shared]:
|
|
1573
|
-
options[Stylesheets.entry] === undefined
|
|
1581
|
+
options[Stylesheets.entry] === undefined
|
|
1582
|
+
? (options[ThemeRules.shared] ?? 'defaults')
|
|
1583
|
+
: 'all',
|
|
1574
1584
|
compiler: options.compiler,
|
|
1575
1585
|
development: options.development,
|
|
1576
1586
|
composition: options.composition,
|
|
@@ -1610,34 +1620,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1610
1620
|
})
|
|
1611
1621
|
if (transformed.size > 256)
|
|
1612
1622
|
transformed.delete(transformed.keys().next().value!)
|
|
1613
|
-
|
|
1614
|
-
const emitted = new Set(
|
|
1615
|
-
Array.from(
|
|
1616
|
-
modules[moduleId]!.css.matchAll(/\.(z-[\w-]+)\{/g),
|
|
1617
|
-
(match) => match[1],
|
|
1618
|
-
),
|
|
1619
|
-
)
|
|
1620
|
-
for (const value of Object.values(modules[moduleId]!.classes))
|
|
1621
|
-
for (const name of value.split(' ')) {
|
|
1622
|
-
if (
|
|
1623
|
-
options.compiler === false ||
|
|
1624
|
-
!name.startsWith('z-') ||
|
|
1625
|
-
!emitted.has(name)
|
|
1626
|
-
)
|
|
1627
|
-
continue
|
|
1628
|
-
|
|
1629
|
-
const owner = atomicOwners.get(name)
|
|
1630
|
-
if (owner !== undefined && owner !== moduleId)
|
|
1631
|
-
throw new Css.CompileError([
|
|
1632
|
-
{
|
|
1633
|
-
code: 'invalid_name',
|
|
1634
|
-
message: `Atomic class ${name} is also owned by module ${owner}.`,
|
|
1635
|
-
path: [moduleId],
|
|
1636
|
-
},
|
|
1637
|
-
])
|
|
1638
|
-
|
|
1639
|
-
atomicOwners.set(name, moduleId)
|
|
1640
|
-
}
|
|
1623
|
+
registerRules(modules[moduleId]![ClassName.rules], moduleId)
|
|
1641
1624
|
|
|
1642
1625
|
for (const call of extracted.get(moduleId)!.calls)
|
|
1643
1626
|
if (
|
|
@@ -1651,20 +1634,32 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1651
1634
|
|
|
1652
1635
|
const defaults = new Set<string>()
|
|
1653
1636
|
const defaultRules = new Map<string, ThemeRules.Rule[]>()
|
|
1637
|
+
const defaultSections: Stylesheets.Section[] = []
|
|
1654
1638
|
if (options[Stylesheets.entry] === undefined)
|
|
1655
1639
|
for (const [source, output] of Object.entries(modules))
|
|
1656
1640
|
for (const resource of output[ThemeRules.shared] ?? []) {
|
|
1657
1641
|
if (defaults.has(resource.id)) continue
|
|
1658
1642
|
defaults.add(resource.id)
|
|
1659
1643
|
|
|
1644
|
+
if (!resource.rules) {
|
|
1645
|
+
defaultSections.push({
|
|
1646
|
+
css: resource.css,
|
|
1647
|
+
key: resource.id,
|
|
1648
|
+
layers: [],
|
|
1649
|
+
source,
|
|
1650
|
+
})
|
|
1651
|
+
continue
|
|
1652
|
+
}
|
|
1653
|
+
|
|
1660
1654
|
const rules = defaultRules.get(source) ?? []
|
|
1661
|
-
rules.push(...
|
|
1655
|
+
rules.push(...resource.rules)
|
|
1662
1656
|
defaultRules.set(source, rules)
|
|
1663
1657
|
}
|
|
1664
1658
|
|
|
1665
1659
|
const shared = defaults.size
|
|
1666
1660
|
? renderShared([
|
|
1667
1661
|
...sharedSections,
|
|
1662
|
+
...defaultSections,
|
|
1668
1663
|
...[...defaultRules].map(([source, rules]) => ({
|
|
1669
1664
|
css: ThemeRules.render(rules),
|
|
1670
1665
|
key: 'theme-defaults',
|
|
@@ -1675,6 +1670,22 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1675
1670
|
: contributions
|
|
1676
1671
|
const sharedCss = shared.css
|
|
1677
1672
|
|
|
1673
|
+
function publishedRules(
|
|
1674
|
+
id: string,
|
|
1675
|
+
visited = new Set<string>(),
|
|
1676
|
+
): Readonly<Record<string, string>> {
|
|
1677
|
+
if (visited.has(id)) return {}
|
|
1678
|
+
visited.add(id)
|
|
1679
|
+
return Object.assign(
|
|
1680
|
+
{},
|
|
1681
|
+
...(dependencies[id] ?? []).map((dependency) =>
|
|
1682
|
+
publishedRules(dependency, visited),
|
|
1683
|
+
),
|
|
1684
|
+
libraries[id]?.classRules,
|
|
1685
|
+
modules[id]?.[ClassName.rules],
|
|
1686
|
+
)
|
|
1687
|
+
}
|
|
1688
|
+
|
|
1678
1689
|
function publishedStyle(link: Themes.Link): Themes.Link {
|
|
1679
1690
|
return {
|
|
1680
1691
|
...link,
|
|
@@ -1733,6 +1744,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1733
1744
|
|
|
1734
1745
|
return {
|
|
1735
1746
|
compiler: options.compiler !== false,
|
|
1747
|
+
shared: options[ThemeRules.shared],
|
|
1736
1748
|
composition: options.composition,
|
|
1737
1749
|
cssOutput: options.cssOutput,
|
|
1738
1750
|
contracts,
|
|
@@ -1803,6 +1815,7 @@ function build(options: compile.Options, cache?: Cache): Cache {
|
|
|
1803
1815
|
})),
|
|
1804
1816
|
id,
|
|
1805
1817
|
configurations(id),
|
|
1818
|
+
publishedRules(id),
|
|
1806
1819
|
),
|
|
1807
1820
|
]),
|
|
1808
1821
|
),
|
|
@@ -1825,6 +1838,7 @@ function nativeOutput(
|
|
|
1825
1838
|
let sourceMap: Mapping.EncodedSourceMap | undefined
|
|
1826
1839
|
|
|
1827
1840
|
return Object.freeze({
|
|
1841
|
+
[ClassName.rules]: Object.freeze({}),
|
|
1828
1842
|
classes: Object.freeze({}),
|
|
1829
1843
|
[Edits.key]: output[Edits.key],
|
|
1830
1844
|
code: output.code,
|