zyzz 0.0.19 → 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/README.md +9 -9
- package/dist/Config.d.ts +1 -0
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js.map +1 -1
- 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/Vars.d.ts +22 -15
- package/dist/Vars.d.ts.map +1 -1
- package/dist/Vars.js +26 -0
- package/dist/Vars.js.map +1 -1
- package/dist/cli/index.js +5 -0
- package/dist/cli/index.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 +66 -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 +5 -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 +73 -138
- 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 +85 -24
- 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 +11 -15
- package/dist/default.d.ts.map +1 -1
- package/dist/default.js +13 -14
- package/dist/default.js.map +2 -2
- package/dist/default.js.zyzz.json +1 -1
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -0
- package/dist/index.js.map +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 +16 -3
- package/dist/internal/Token.d.ts.map +1 -1
- package/dist/internal/Token.js +11 -2
- package/dist/internal/Token.js.map +1 -1
- package/dist/internal/VariableSets.d.ts.map +1 -1
- package/dist/internal/VariableSets.js +19 -2
- package/dist/internal/VariableSets.js.map +1 -1
- package/dist/node/Host.d.ts +2 -0
- package/dist/node/Host.d.ts.map +1 -1
- package/dist/node/Host.js +9 -0
- package/dist/node/Host.js.map +1 -1
- package/dist/react-native/StyleSheet.js +2 -0
- package/dist/react-native/StyleSheet.js.map +1 -1
- package/dist/runtime/Composition.d.ts +1 -1
- package/dist/runtime/ConditionalRecipe.d.ts +1 -1
- package/dist/runtime/PayloadRecipe.d.ts +1 -1
- package/dist/runtime/Recipe.d.ts +1 -1
- package/dist/styleFunction.d.ts +1 -1
- package/dist/styleFunction.d.ts.map +1 -1
- package/dist/styleFunction.js.map +1 -1
- package/dist/variable.js +1 -1
- package/dist/variable.js.map +1 -1
- package/dist/variants.d.ts +14 -6
- package/dist/variants.d.ts.map +1 -1
- package/dist/variants.js.map +1 -1
- package/dist/vite/index.d.ts +2 -0
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +111 -42
- 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 +52 -24
- package/dist/web/internal/Themes.js.map +1 -1
- package/package.json +1 -1
- package/src/Config.ts +5 -0
- package/src/Style.ts +4 -1
- package/src/Vars.ts +88 -29
- package/src/cli/index.ts +5 -0
- package/src/compiler/Graph.ts +60 -46
- package/src/compiler/Source.ts +86 -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 +5 -1
- package/src/compiler/internal/Contract.ts +104 -239
- 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 +115 -35
- package/src/compiler/internal/Vars.ts +9 -1
- package/src/default.ts +17 -20
- package/src/index.ts +15 -0
- package/src/internal/Authoring.ts +9 -3
- 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 +52 -12
- package/src/internal/VariableSets.ts +26 -2
- package/src/node/Host.ts +22 -0
- package/src/react-native/StyleSheet.ts +6 -0
- package/src/styleFunction.ts +1 -3
- package/src/variable.ts +1 -1
- package/src/variants.ts +38 -16
- package/src/vite/index.ts +137 -51
- package/src/web/Css.ts +83 -49
- package/src/web/internal/ClassName.ts +31 -36
- package/src/web/internal/Themes.ts +79 -29
package/dist/web/Css.js
CHANGED
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import * as Targets from '../internal/Targets.js';
|
|
6
6
|
import * as ClassName from './internal/ClassName.js';
|
|
7
|
+
import * as Identity from '../internal/Identity.js';
|
|
7
8
|
import * as Contributions from './internal/Contributions.js';
|
|
8
9
|
import * as Binding from '../internal/Binding.js';
|
|
9
10
|
import * as Cascade from '../internal/Cascade.js';
|
|
@@ -21,6 +22,7 @@ import * as Themes from './internal/Themes.js';
|
|
|
21
22
|
* @throws {CompileError} If declarations or themes are invalid, or class identities collide.
|
|
22
23
|
*/
|
|
23
24
|
export function compile(options) {
|
|
25
|
+
const labels = options[ClassName.labels] ?? options.styles[ClassName.labels];
|
|
24
26
|
options = {
|
|
25
27
|
...options,
|
|
26
28
|
styles: { styles: options.styles.styles.map(Targets.web) },
|
|
@@ -326,6 +328,7 @@ export function compile(options) {
|
|
|
326
328
|
validate(style);
|
|
327
329
|
const identities = new Map();
|
|
328
330
|
const rules = new Map();
|
|
331
|
+
const conditionalRules = new Map();
|
|
329
332
|
const identical = new Map();
|
|
330
333
|
const explicitBodies = new Map();
|
|
331
334
|
const selectors = new Map();
|
|
@@ -375,22 +378,18 @@ export function compile(options) {
|
|
|
375
378
|
}
|
|
376
379
|
const names = explicit === undefined ? [] : [explicit];
|
|
377
380
|
let ordinal = 0;
|
|
378
|
-
const
|
|
379
|
-
const
|
|
380
|
-
?
|
|
381
|
-
|
|
382
|
-
function emit(body, label, shared, output = mode) {
|
|
381
|
+
const cssName = labels?.[style.name]?.name ?? encode(style.name);
|
|
382
|
+
const cssNamespace = labels?.[style.name]?.namespace ??
|
|
383
|
+
(options.scope ? Identity.name(options.scope) : undefined);
|
|
384
|
+
function emit(body, label, shared, output = mode, conditional) {
|
|
383
385
|
if (!body)
|
|
384
386
|
return;
|
|
385
387
|
const independent = mode === 'grouped' &&
|
|
386
388
|
!options.development &&
|
|
387
389
|
output === mode &&
|
|
388
390
|
options.composition === 'independent';
|
|
389
|
-
const key =
|
|
390
|
-
|
|
391
|
-
const reusable = explicit === undefined &&
|
|
392
|
-
!options.development &&
|
|
393
|
-
(shared || independent);
|
|
391
|
+
const key = JSON.stringify([cssNamespace, output, body]);
|
|
392
|
+
const reusable = explicit === undefined && (shared || independent);
|
|
394
393
|
const previous = reusable ? identical.get(key) : undefined;
|
|
395
394
|
if (previous && !names.includes(previous)) {
|
|
396
395
|
names.push(previous);
|
|
@@ -399,51 +398,36 @@ export function compile(options) {
|
|
|
399
398
|
if (previous)
|
|
400
399
|
shared = false;
|
|
401
400
|
// Contextual slots preserve authored ordering; development names survive value edits.
|
|
402
|
-
const
|
|
403
|
-
const slot = options.development ? (slots.get(label) ?? 0) : ordinalSlot;
|
|
404
|
-
slots.set(label, slot + 1);
|
|
401
|
+
const slot = ordinal++;
|
|
405
402
|
const identity = (() => {
|
|
406
403
|
if (explicit !== undefined)
|
|
407
404
|
return `${explicit}-${mode}-${encode(label)}-${slot}`;
|
|
408
|
-
if (output === 'grouped' &&
|
|
409
|
-
mode === 'grouped' &&
|
|
410
|
-
!options.development &&
|
|
411
|
-
options.composition === 'independent')
|
|
412
|
-
return `g_${rules.size.toString(36)}`;
|
|
413
405
|
if (output === 'grouped' && mode === 'grouped') {
|
|
414
|
-
|
|
415
|
-
const scope = options.development && options.scope
|
|
416
|
-
? `_m${encode(options.scope)}`
|
|
417
|
-
: '';
|
|
418
|
-
return `g-${encode(name)}${scope}${slot ? `_s${slot}` : ''}`;
|
|
406
|
+
return `z-${cssNamespace ? `${cssNamespace}-` : ''}${cssName}${slot ? `__${slot}` : ''}`;
|
|
419
407
|
}
|
|
420
408
|
return ClassName.create({
|
|
421
409
|
body,
|
|
422
|
-
context: !shared
|
|
423
|
-
|
|
424
|
-
options.scope,
|
|
425
|
-
mode,
|
|
426
|
-
options.development ? developmentName : style.name,
|
|
427
|
-
])
|
|
428
|
-
: options.scope,
|
|
410
|
+
context: !shared ? cssName : undefined,
|
|
411
|
+
namespace: cssNamespace,
|
|
429
412
|
property: label,
|
|
430
|
-
slot: !shared
|
|
431
|
-
stable: options.development,
|
|
413
|
+
slot: !shared ? slot : undefined,
|
|
432
414
|
});
|
|
433
415
|
})();
|
|
434
|
-
const owner = mode === 'atomic' ? `${style.name}:${slot}` : undefined;
|
|
416
|
+
const owner = mode === 'atomic' && !shared ? `${style.name}:${slot}` : undefined;
|
|
435
417
|
if ((rules.has(identity) && rules.get(identity) !== body) ||
|
|
436
418
|
(owner !== undefined &&
|
|
437
419
|
identities.has(identity) &&
|
|
438
420
|
identities.get(identity) !== owner))
|
|
439
421
|
diagnostics.push({
|
|
440
422
|
code: 'identity_collision',
|
|
441
|
-
message: '
|
|
423
|
+
message: 'Generated class names conflict. Supply distinct config or style ids.',
|
|
442
424
|
path: [style.name],
|
|
443
425
|
});
|
|
444
426
|
if (owner !== undefined)
|
|
445
427
|
identities.set(identity, owner);
|
|
446
428
|
rules.set(identity, body);
|
|
429
|
+
if (conditional?.conditions.some((condition) => /^@(media|supports)\b/.test(condition)))
|
|
430
|
+
conditionalRules.set(identity, conditional);
|
|
447
431
|
if (explicit !== undefined)
|
|
448
432
|
selectors.set(identity, explicit);
|
|
449
433
|
else {
|
|
@@ -486,7 +470,7 @@ export function compile(options) {
|
|
|
486
470
|
const shared = !nestedComposition &&
|
|
487
471
|
!conditions.length &&
|
|
488
472
|
groups.get(conflict(property)) !== false;
|
|
489
|
-
emit(body, property, shared);
|
|
473
|
+
emit(body, property, shared, mode, { conditions, value });
|
|
490
474
|
}
|
|
491
475
|
}
|
|
492
476
|
try {
|
|
@@ -546,7 +530,7 @@ export function compile(options) {
|
|
|
546
530
|
scopes =
|
|
547
531
|
theme || options.vars || options.schemes
|
|
548
532
|
? (theme ??= Themes.create()).emit(options.vars ?? {}, options.schemes ?? false, options[Themes.shared])
|
|
549
|
-
: { classes: Object.freeze({}), css: '', resources: [] };
|
|
533
|
+
: { classes: Object.freeze({}), css: '', resources: [], rules: [] };
|
|
550
534
|
}
|
|
551
535
|
catch (error) {
|
|
552
536
|
throw new CompileError([
|
|
@@ -559,17 +543,40 @@ export function compile(options) {
|
|
|
559
543
|
}
|
|
560
544
|
const scopedCss = [
|
|
561
545
|
scopes.css,
|
|
562
|
-
...[...rules].map((
|
|
546
|
+
...[...rules].map((entry) => {
|
|
547
|
+
const [name, body] = entry;
|
|
548
|
+
const selector = `.${ClassName.selector(selectors.get(name) ?? name)}`;
|
|
549
|
+
const conditional = conditionalRules.get(name);
|
|
550
|
+
if (!conditional ||
|
|
551
|
+
conditional.conditions.some((condition) => condition.startsWith('@') &&
|
|
552
|
+
!/^@(media|supports)\b/.test(condition)))
|
|
553
|
+
return `${selector}{${body}}`;
|
|
554
|
+
// Inactive conditions must surround the class rather than leave a matched empty wrapper.
|
|
555
|
+
const conditions = conditional.conditions.filter((condition) => condition.startsWith('@'));
|
|
556
|
+
const nested = conditional.conditions
|
|
557
|
+
.filter((condition) => !condition.startsWith('@'))
|
|
558
|
+
.reduceRight((body, condition) => `${condition}{${body}}`, conditional.value);
|
|
559
|
+
return conditions.reduceRight((body, condition) => `${condition}{${body}}`, `${selector}{${nested}}`);
|
|
560
|
+
}),
|
|
563
561
|
]
|
|
564
562
|
.filter(Boolean)
|
|
565
563
|
.join('\n');
|
|
566
|
-
|
|
564
|
+
const result = {
|
|
567
565
|
...(scopes.resources.length ? { [Themes.shared]: scopes.resources } : {}),
|
|
568
566
|
...(contributionCss ? { contributionCss, scopedCss } : {}),
|
|
567
|
+
[ClassName.rules]: Object.freeze({
|
|
568
|
+
...Object.fromEntries(rules),
|
|
569
|
+
...Object.fromEntries(scopes.rules.map((rule) => [
|
|
570
|
+
`@scope:${rule.selector.slice(1)}:${Identity.name(rule.property)}:${Identity.name(JSON.stringify(rule.conditions))}`,
|
|
571
|
+
rule.value,
|
|
572
|
+
])),
|
|
573
|
+
}),
|
|
569
574
|
classes: Object.freeze(classes),
|
|
570
575
|
css: [contributionCss, scopedCss].filter(Boolean).join('\n'),
|
|
571
576
|
vars: scopes.classes,
|
|
572
|
-
}
|
|
577
|
+
};
|
|
578
|
+
Object.defineProperty(result, ClassName.rules, { enumerable: false });
|
|
579
|
+
return Object.freeze(result);
|
|
573
580
|
}
|
|
574
581
|
/** Aggregated literal compilation diagnostics in authored traversal order. */
|
|
575
582
|
export class CompileError extends Error {
|
package/dist/web/Css.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Css.js","sourceRoot":"","sources":["../../src/web/Css.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Css.js","sourceRoot":"","sources":["../../src/web/Css.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,23 @@ export declare namespace create {
|
|
|
8
8
|
readonly body: string;
|
|
9
9
|
/** Identity required when the declaration cannot share a global rule. */
|
|
10
10
|
readonly context?: string | undefined;
|
|
11
|
+
/** Optional consumer-owned configuration namespace. */
|
|
12
|
+
readonly namespace?: string | undefined;
|
|
11
13
|
/** Authoring property spelling. */
|
|
12
14
|
readonly property: string;
|
|
13
15
|
/** Ordered declaration slot inside a contextual style. */
|
|
14
16
|
readonly slot?: number | undefined;
|
|
15
|
-
/** Keep names independent of values for CSS-only development updates. */
|
|
16
|
-
readonly stable?: boolean | undefined;
|
|
17
17
|
};
|
|
18
18
|
}
|
|
19
|
+
/** Escapes a generated class token for use as a CSS selector. */
|
|
20
|
+
export declare function selector(value: string): string;
|
|
21
|
+
/** Carries exact emitted rule bodies for graph-wide collision checks. */
|
|
22
|
+
export declare const rules: unique symbol;
|
|
23
|
+
/** Carries authored names between source extraction and CSS emission. */
|
|
24
|
+
export declare const labels: unique symbol;
|
|
25
|
+
/** Authored names retained on extracted style data. */
|
|
26
|
+
export type Labels = Readonly<Record<string, {
|
|
27
|
+
readonly name: string;
|
|
28
|
+
readonly namespace?: string | undefined;
|
|
29
|
+
}>>;
|
|
19
30
|
//# sourceMappingURL=ClassName.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ClassName.d.ts","sourceRoot":"","sources":["../../../src/web/internal/ClassName.ts"],"names":[],"mappings":"AAGA,uEAAuE;AACvE,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"ClassName.d.ts","sourceRoot":"","sources":["../../../src/web/internal/ClassName.ts"],"names":[],"mappings":"AAGA,uEAAuE;AACvE,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CA4BtD;AAED,uFAAuF;AACvF,MAAM,CAAC,OAAO,WAAW,MAAM,CAAC;IAC9B,oEAAoE;IACpE,KAAK,OAAO,GAAG;QACb,gEAAgE;QAChE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;QACrB,yEAAyE;QACzE,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACrC,uDAAuD;QACvD,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACvC,mCAAmC;QACnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAA;QACzB,0DAA0D;QAC1D,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KACnC,CAAA;CACF;AAqCD,iEAAiE;AACjE,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAK9C;AAED,yEAAyE;AACzE,eAAO,MAAM,KAAK,eAA2B,CAAA;AAE7C,yEAAyE;AACzE,eAAO,MAAM,MAAM,eAA4B,CAAA;AAE/C,uDAAuD;AACvD,MAAM,MAAM,MAAM,GAAG,QAAQ,CAC3B,MAAM,CACJ,MAAM,EACN;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CACnE,CACF,CAAA"}
|
|
@@ -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,
|
|
@@ -167,6 +186,10 @@ export function create() {
|
|
|
167
186
|
function literal(value, label, owner) {
|
|
168
187
|
if (Token.is(value))
|
|
169
188
|
return serialize(value);
|
|
189
|
+
if (Token.isExpression(value))
|
|
190
|
+
return value.parts
|
|
191
|
+
.map((part) => (typeof part === 'string' ? part : serialize(part)))
|
|
192
|
+
.join('');
|
|
170
193
|
if (typeof value !== 'object')
|
|
171
194
|
return String(value);
|
|
172
195
|
if ('default' in value) {
|
|
@@ -174,9 +197,7 @@ export function create() {
|
|
|
174
197
|
const base = literal(value.default, label, owner);
|
|
175
198
|
// Rule consolidation must not change existing variable identities.
|
|
176
199
|
const css = `:where(*){--fallback:${base};}${conditionalCss(value, '--fallback', ':where(*)', label, owner)}`;
|
|
177
|
-
const name = label
|
|
178
|
-
? `--z-${Identity.label(label)}-fallback-${Identity.compact(css)}`
|
|
179
|
-
: `--z-f${Identity.hash(css)}`;
|
|
200
|
+
const name = `${variable(owner?.[Token.identity], label ?? 'value')}-fallback-${Identity.name(css)}`;
|
|
180
201
|
const emitted = [
|
|
181
202
|
{ conditions: [], property: name, selector: ':where(*)', value: base },
|
|
182
203
|
];
|
|
@@ -267,10 +288,17 @@ export function render(rules) {
|
|
|
267
288
|
}
|
|
268
289
|
/** Selects independently shareable defaults or all token rules. */
|
|
269
290
|
export const shared = Symbol('shared token rules');
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
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('-')}`;
|
|
275
303
|
}
|
|
276
304
|
//# sourceMappingURL=Themes.js.map
|