zyzz 0.0.3 → 0.0.5
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 +34 -19
- package/dist/Config.d.ts +16 -167
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +7 -246
- package/dist/Config.js.map +1 -1
- package/dist/Style.d.ts +15 -12
- package/dist/Style.d.ts.map +1 -1
- package/dist/Style.js +51 -26
- package/dist/Style.js.map +1 -1
- package/dist/Vars.d.ts +114 -0
- package/dist/Vars.d.ts.map +1 -0
- package/dist/Vars.js +42 -0
- package/dist/Vars.js.map +1 -0
- package/dist/compiler/Graph.js +11 -8
- package/dist/compiler/Graph.js.map +1 -1
- package/dist/compiler/Native.d.ts +5 -5
- package/dist/compiler/Native.d.ts.map +1 -1
- package/dist/compiler/Native.js +21 -21
- package/dist/compiler/Native.js.map +1 -1
- package/dist/compiler/Source.d.ts +8 -6
- package/dist/compiler/Source.d.ts.map +1 -1
- package/dist/compiler/Source.js +47 -14
- package/dist/compiler/Source.js.map +1 -1
- package/dist/compiler/Transform.d.ts +1 -1
- package/dist/compiler/Transform.d.ts.map +1 -1
- package/dist/compiler/Transform.js +58 -22
- package/dist/compiler/Transform.js.map +1 -1
- package/dist/compiler/internal/Compositions.d.ts +5 -0
- package/dist/compiler/internal/Compositions.d.ts.map +1 -1
- package/dist/compiler/internal/Compositions.js +22 -3
- 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 +73 -12
- package/dist/compiler/internal/Configurations.js.map +1 -1
- package/dist/compiler/internal/Contract.d.ts +1 -1
- package/dist/compiler/internal/Contract.d.ts.map +1 -1
- package/dist/compiler/internal/Contract.js +155 -13
- package/dist/compiler/internal/Contract.js.map +1 -1
- package/dist/compiler/internal/Contributions.js +1 -1
- package/dist/compiler/internal/Contributions.js.map +1 -1
- package/dist/compiler/internal/Dynamic.js +1 -1
- package/dist/compiler/internal/Dynamic.js.map +1 -1
- package/dist/compiler/internal/Expression.d.ts +3 -0
- package/dist/compiler/internal/Expression.d.ts.map +1 -1
- package/dist/compiler/internal/Expression.js +21 -0
- package/dist/compiler/internal/Expression.js.map +1 -1
- package/dist/compiler/internal/Identifiers.d.ts +1 -1
- package/dist/compiler/internal/Identifiers.d.ts.map +1 -1
- package/dist/compiler/internal/Identifiers.js +2 -2
- package/dist/compiler/internal/Identifiers.js.map +1 -1
- package/dist/compiler/internal/NativeBindings.d.ts +1 -1
- package/dist/compiler/internal/NativeBindings.d.ts.map +1 -1
- package/dist/compiler/internal/NativeBindings.js +3 -3
- package/dist/compiler/internal/NativeBindings.js.map +1 -1
- package/dist/compiler/internal/PackedStyles.d.ts +1 -1
- package/dist/compiler/internal/PackedStyles.d.ts.map +1 -1
- package/dist/compiler/internal/PackedStyles.js +15 -25
- package/dist/compiler/internal/PackedStyles.js.map +1 -1
- package/dist/compiler/internal/Recipes.js +1 -1
- package/dist/compiler/internal/Recipes.js.map +1 -1
- package/dist/compiler/internal/Selectors.js +1 -1
- package/dist/compiler/internal/Selectors.js.map +1 -1
- package/dist/compiler/internal/Themes.d.ts +12 -3
- package/dist/compiler/internal/Themes.d.ts.map +1 -1
- package/dist/compiler/internal/Themes.js +192 -52
- package/dist/compiler/internal/Themes.js.map +1 -1
- package/dist/compiler/internal/{Variables.d.ts → Vars.d.ts} +1 -1
- package/dist/compiler/internal/Vars.d.ts.map +1 -0
- package/dist/compiler/internal/{Variables.js → Vars.js} +3 -3
- package/dist/compiler/internal/Vars.js.map +1 -0
- package/dist/default.d.ts +147 -2562
- package/dist/default.d.ts.map +1 -1
- package/dist/default.js +85 -80
- package/dist/default.js.map +2 -2
- package/dist/default.js.zyzz.json +1 -1
- package/dist/esbuild/index.d.ts +3 -0
- package/dist/esbuild/index.d.ts.map +1 -0
- package/dist/esbuild/index.js +5 -0
- package/dist/esbuild/index.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/internal/Authoring.d.ts +1 -1
- package/dist/internal/Authoring.d.ts.map +1 -1
- package/dist/internal/Authoring.js +4 -4
- package/dist/internal/Authoring.js.map +1 -1
- package/dist/internal/Binding.d.ts +1 -1
- package/dist/internal/Binding.d.ts.map +1 -1
- package/dist/internal/Completion.d.ts +19 -0
- package/dist/internal/Completion.d.ts.map +1 -0
- package/dist/internal/Completion.js +2 -0
- package/dist/internal/Completion.js.map +1 -0
- package/dist/internal/Condition.d.ts +3 -1
- package/dist/internal/Condition.d.ts.map +1 -1
- package/dist/internal/Condition.js.map +1 -1
- package/dist/internal/Configuration.d.ts +248 -0
- package/dist/internal/Configuration.d.ts.map +1 -0
- package/dist/internal/Configuration.js +343 -0
- package/dist/internal/Configuration.js.map +1 -0
- package/dist/{Theme.d.ts → internal/Theme.d.ts} +15 -13
- package/dist/internal/Theme.d.ts.map +1 -0
- package/dist/{Theme.js → internal/Theme.js} +39 -12
- package/dist/internal/Theme.js.map +1 -0
- package/dist/internal/Token.d.ts +46 -16
- package/dist/internal/Token.d.ts.map +1 -1
- package/dist/internal/Token.js +89 -5
- package/dist/internal/Token.js.map +1 -1
- package/dist/internal/Typography.d.ts +13 -5
- package/dist/internal/Typography.d.ts.map +1 -1
- package/dist/internal/Typography.js +42 -6
- package/dist/internal/Typography.js.map +1 -1
- package/dist/internal/Value.d.ts +6 -1
- package/dist/internal/Value.d.ts.map +1 -1
- package/dist/internal/Value.js.map +1 -1
- package/dist/internal/VariableSets.d.ts +20 -0
- package/dist/internal/VariableSets.d.ts.map +1 -0
- package/dist/internal/VariableSets.js +317 -0
- package/dist/internal/VariableSets.js.map +1 -0
- package/dist/next/loader.js +15 -5
- package/dist/next/loader.js.map +1 -1
- package/dist/node/Host.d.ts.map +1 -1
- package/dist/node/Host.js +1 -1
- package/dist/node/Host.js.map +1 -1
- package/dist/react-native/Host.d.ts +2 -2
- package/dist/react-native/Host.d.ts.map +1 -1
- package/dist/react-native/Host.js +4 -4
- package/dist/react-native/Host.js.map +1 -1
- package/dist/react-native/StyleSheet.d.ts +9 -8
- package/dist/react-native/StyleSheet.d.ts.map +1 -1
- package/dist/react-native/StyleSheet.js +29 -23
- package/dist/react-native/StyleSheet.js.map +1 -1
- package/dist/react-native/Variants.d.ts +3 -3
- package/dist/react-native/Variants.d.ts.map +1 -1
- package/dist/react-native/Variants.js +2 -2
- package/dist/react-native/react.d.ts +1 -1
- package/dist/react-native/react.d.ts.map +1 -1
- package/dist/react-native/react.js +5 -5
- package/dist/react-native/react.js.map +1 -1
- package/dist/rollup/index.d.ts +3 -0
- package/dist/rollup/index.d.ts.map +1 -0
- package/dist/rollup/index.js +5 -0
- package/dist/rollup/index.js.map +1 -0
- package/dist/runtime/Appearance.d.ts +7 -7
- package/dist/runtime/Appearance.d.ts.map +1 -1
- package/dist/runtime/Appearance.js +15 -15
- package/dist/runtime/Appearance.js.map +1 -1
- package/dist/runtime/Dynamic.d.ts.map +1 -1
- package/dist/runtime/Dynamic.js +4 -1
- package/dist/runtime/Dynamic.js.map +1 -1
- package/dist/runtime/NativeContext.d.ts +4 -4
- package/dist/runtime/NativeContext.d.ts.map +1 -1
- package/dist/runtime/NativeContext.js +5 -5
- package/dist/runtime/NativeContext.js.map +1 -1
- package/dist/runtime/NativeDynamic.d.ts +1 -1
- package/dist/runtime/NativeDynamic.d.ts.map +1 -1
- package/dist/runtime/NativeDynamic.js.map +1 -1
- package/dist/runtime/Props.d.ts +1 -1
- package/dist/runtime/Props.js +3 -3
- package/dist/runtime/Props.js.map +1 -1
- package/dist/runtime/Selection.d.ts +14 -10
- package/dist/runtime/Selection.d.ts.map +1 -1
- package/dist/runtime/Selection.js +19 -18
- package/dist/runtime/Selection.js.map +1 -1
- package/dist/styleFunction.d.ts +14 -14
- package/dist/styleFunction.d.ts.map +1 -1
- package/dist/styleFunction.js.map +1 -1
- package/dist/unplugin/index.d.ts +20 -0
- package/dist/unplugin/index.d.ts.map +1 -0
- package/dist/unplugin/index.js +498 -0
- package/dist/unplugin/index.js.map +1 -0
- package/dist/variants.d.ts +3 -3
- package/dist/variants.d.ts.map +1 -1
- package/dist/variants.js.map +1 -1
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +6 -3
- package/dist/vite/index.js.map +1 -1
- package/dist/web/Css.d.ts +4 -3
- package/dist/web/Css.d.ts.map +1 -1
- package/dist/web/Css.js +4 -4
- package/dist/web/Css.js.map +1 -1
- package/dist/web/internal/Themes.d.ts +3 -2
- package/dist/web/internal/Themes.d.ts.map +1 -1
- package/dist/web/internal/Themes.js +42 -6
- package/dist/web/internal/Themes.js.map +1 -1
- package/dist/webpack/index.d.ts +3 -0
- package/dist/webpack/index.d.ts.map +1 -0
- package/dist/webpack/index.js +5 -0
- package/dist/webpack/index.js.map +1 -0
- package/package.json +23 -2
- package/src/Config.ts +43 -685
- package/src/Style.ts +97 -34
- package/src/Vars.ts +299 -0
- package/src/compiler/Graph.ts +14 -9
- package/src/compiler/Native.ts +29 -32
- package/src/compiler/Source.ts +59 -21
- package/src/compiler/Transform.ts +73 -23
- package/src/compiler/internal/Compositions.ts +36 -3
- package/src/compiler/internal/Configurations.ts +83 -11
- package/src/compiler/internal/Contract.ts +207 -15
- package/src/compiler/internal/Contributions.ts +1 -1
- package/src/compiler/internal/Dynamic.ts +1 -1
- package/src/compiler/internal/Expression.ts +26 -0
- package/src/compiler/internal/Identifiers.ts +2 -1
- package/src/compiler/internal/NativeBindings.ts +3 -3
- package/src/compiler/internal/PackedStyles.ts +22 -26
- package/src/compiler/internal/Recipes.ts +1 -1
- package/src/compiler/internal/Selectors.ts +1 -1
- package/src/compiler/internal/Themes.ts +266 -57
- package/src/compiler/internal/{Variables.ts → Vars.ts} +2 -2
- package/src/default.ts +173 -154
- package/src/esbuild/index.ts +5 -0
- package/src/index.ts +4 -4
- package/src/internal/Authoring.ts +5 -7
- package/src/internal/Binding.ts +1 -1
- package/src/internal/Completion.ts +42 -0
- package/src/internal/Condition.ts +31 -1
- package/src/internal/Configuration.ts +970 -0
- package/src/{Theme.ts → internal/Theme.ts} +75 -20
- package/src/internal/Token.ts +258 -85
- package/src/internal/Typography.ts +71 -16
- package/src/internal/Value.ts +45 -26
- package/src/internal/VariableSets.ts +458 -0
- package/src/next/loader.ts +19 -5
- package/src/node/Host.ts +1 -2
- package/src/react-native/Host.ts +6 -6
- package/src/react-native/StyleSheet.ts +49 -42
- package/src/react-native/Variants.ts +3 -3
- package/src/react-native/react.ts +6 -6
- package/src/rollup/index.ts +5 -0
- package/src/runtime/Appearance.ts +20 -20
- package/src/runtime/Dynamic.ts +4 -1
- package/src/runtime/NativeContext.ts +8 -8
- package/src/runtime/NativeDynamic.ts +2 -4
- package/src/runtime/Props.ts +3 -3
- package/src/runtime/Selection.ts +44 -33
- package/src/styleFunction.ts +22 -19
- package/src/unplugin/index.ts +600 -0
- package/src/variants.ts +7 -5
- package/src/vite/index.ts +5 -4
- package/src/web/Css.ts +10 -7
- package/src/web/internal/Themes.ts +52 -9
- package/src/webpack/index.ts +5 -0
- package/dist/Theme.d.ts.map +0 -1
- package/dist/Theme.js.map +0 -1
- package/dist/compiler/internal/Variables.d.ts.map +0 -1
- package/dist/compiler/internal/Variables.js.map +0 -1
package/dist/internal/Token.d.ts
CHANGED
|
@@ -2,21 +2,31 @@
|
|
|
2
2
|
* Carries portable theme references and enforces their property domains.
|
|
3
3
|
* @module
|
|
4
4
|
*/
|
|
5
|
-
import
|
|
5
|
+
import * as Binding from './Binding.js';
|
|
6
6
|
import type * as Query from './Query.js';
|
|
7
7
|
import type * as Shorthands from './Shorthands.js';
|
|
8
|
-
import type * as Theme from '
|
|
8
|
+
import type * as Theme from './Theme.js';
|
|
9
|
+
import type * as ValueSyntax from './Value.js';
|
|
10
|
+
import type * as VariableSets from '../Vars.js';
|
|
9
11
|
import * as Literal from './Literal.js';
|
|
10
12
|
/** Checks a reference's property domain. */
|
|
11
13
|
export declare function accepts(group: Group, property: keyof Literal.Properties): boolean;
|
|
14
|
+
/** Checks explicit variable values independently of shorthand category mappings. */
|
|
15
|
+
export declare function acceptsReference(reference: Reference, property: keyof Literal.Properties): boolean;
|
|
12
16
|
/** Rebinds validated scalar references to a explicitly owned contract identity. */
|
|
13
17
|
export declare function bind<tokens extends Theme.Tokens>(original: Theme.Definition<tokens>, contract: Contract): Theme.Definition<tokens>;
|
|
14
18
|
/** Retains full scopes when styles may have been compiled in another graph. */
|
|
15
19
|
export declare const complete: unique symbol;
|
|
16
20
|
/** Opaque data shared by a definition and its compatible extensions. */
|
|
17
21
|
export type Contract = {
|
|
22
|
+
/** Whether values belong to independent variables rather than fixed theme categories. */
|
|
23
|
+
readonly variableSet?: boolean | undefined;
|
|
24
|
+
/** Configuration-local category-to-property mappings. */
|
|
25
|
+
readonly mappings?: VariableSets.Mappings | false | undefined;
|
|
18
26
|
/** Web emission mode retained by configuration-bound theme handles. */
|
|
19
27
|
readonly cssOutput?: 'atomic' | 'grouped' | undefined;
|
|
28
|
+
/** Fallback layer for declarations without an explicit layer. */
|
|
29
|
+
readonly defaultLayer?: string | undefined;
|
|
20
30
|
/** Configuration-local property aliases, inherited by bound handles. */
|
|
21
31
|
readonly shorthands?: Shorthands.Map | undefined;
|
|
22
32
|
readonly [complete]?: boolean | undefined;
|
|
@@ -40,42 +50,57 @@ export declare function compose(parts: readonly (string | Reference | Binding.Re
|
|
|
40
50
|
/** Marks web-only references distinctly from portable tokens. */
|
|
41
51
|
export declare const web: unique symbol;
|
|
42
52
|
/** Web reference with the original token domain. */
|
|
43
|
-
export type Variable<group extends Group = Group> = Reference<group> & {
|
|
53
|
+
export type Variable<group extends Group = Group> = `var(--${string})` & Reference<group> & {
|
|
44
54
|
readonly [web]: true;
|
|
45
55
|
};
|
|
46
56
|
/** Replaces portable scalar leaves with web-only references. */
|
|
47
|
-
export type
|
|
48
|
-
readonly [key in keyof tree]:
|
|
57
|
+
export type Vars<tree> = tree extends Reference<infer group> ? Variable<group> : {
|
|
58
|
+
readonly [key in keyof tree]: Vars<tree[key]>;
|
|
49
59
|
};
|
|
50
60
|
/** Creates web-only reference leaves without changing contract identities. */
|
|
51
|
-
export declare function variables<tree>(tree: tree):
|
|
61
|
+
export declare function variables<tree>(tree: tree): Vars<tree>;
|
|
52
62
|
/** Internal definition metadata; never enumerable consumer output. */
|
|
53
63
|
export declare const definition: unique symbol;
|
|
54
64
|
/** Supported scalar token groups. */
|
|
55
|
-
export type Group = 'backgroundColor' | 'borderColor' | 'borderRadius' | 'color' | 'margin' | 'padding' | 'spacing' | 'fontFamily' | 'fontSize' | 'fontWeight' | 'letterSpacing' | 'lineHeight' | 'textColor';
|
|
65
|
+
export type Group = 'number' | 'string' | 'backgroundColor' | 'borderColor' | 'borderRadius' | 'borderWidth' | 'color' | 'margin' | 'padding' | 'spacing' | 'fontFamily' | 'fontSize' | 'fontWeight' | 'letterSpacing' | 'lineHeight' | 'textColor';
|
|
56
66
|
/** Stable package/module/binding identity supplied by source adapters. */
|
|
57
67
|
export declare const identity: unique symbol;
|
|
58
68
|
/** Recognizes references without invoking getters on untrusted style values. */
|
|
59
69
|
export declare function is(value: unknown): value is Reference;
|
|
60
70
|
/** Immutable theme data carried directly by each definition. */
|
|
61
71
|
export type Metadata = {
|
|
72
|
+
/** Original segments for typography paths containing query punctuation. */
|
|
73
|
+
readonly paths?: Readonly<Record<string, readonly string[]>> | undefined;
|
|
62
74
|
readonly queries?: Query.Metadata | undefined;
|
|
63
75
|
readonly contract: Contract;
|
|
64
76
|
readonly values: Readonly<Record<string, Value>>;
|
|
65
77
|
};
|
|
66
|
-
/**
|
|
67
|
-
export
|
|
78
|
+
/** Literal domain carried by explicit variable references during type checking. */
|
|
79
|
+
export declare const scalar: unique symbol;
|
|
80
|
+
/** Inferred shorthand names whose leaves belong to a property domain. */
|
|
81
|
+
export type Names<tokens, property extends keyof Literal.Properties> = tokens extends {
|
|
82
|
+
readonly '~vars': {
|
|
83
|
+
values: infer values;
|
|
84
|
+
mappings: infer mappings;
|
|
85
|
+
};
|
|
86
|
+
} ? mappings extends false ? Paths<Omit<values, 'breakpoints' | 'containers' | 'containerNames'>, property> : {
|
|
87
|
+
[category in keyof values]: category extends keyof mappings ? mappings[category] extends readonly unknown[] ? property extends mappings[category][number] ? Paths<values[category], property> : never : never : category extends Group ? property extends Properties<category> ? Paths<values[category], property> : never : never;
|
|
88
|
+
}[keyof values] : {
|
|
68
89
|
[group in Extract<keyof tokens, Group>]: property extends Properties<group> ? Paths<NonNullable<tokens[group]>> : never;
|
|
69
90
|
}[Extract<keyof tokens, Group>];
|
|
70
|
-
type Paths<tree
|
|
71
|
-
|
|
91
|
+
type Paths<tree, property extends keyof Literal.Properties = never> = [
|
|
92
|
+
tree
|
|
93
|
+
] extends [never] ? never : string extends keyof tree ? string : {
|
|
94
|
+
[key in Extract<keyof tree, number | string>]: NonNullable<tree[key]> extends Value ? [property] extends [never] ? PathKey<key> : VariableSets.Scalar<NonNullable<tree[key]>> extends Literal.Properties[property] & ValueSyntax.Checked<Record<property, VariableSets.Scalar<NonNullable<tree[key]>>>>[property] ? PathKey<key> : never : `${key}.${Paths<NonNullable<tree[key]>, property>}`;
|
|
72
95
|
}[Extract<keyof tree, number | string>];
|
|
96
|
+
type PathKey<key extends number | string> = key | `${key}` | (key extends `${infer numericKey extends number}` ? `${numericKey}` extends key ? numericKey : never : never);
|
|
73
97
|
/** Property domains accepted by each token group. */
|
|
74
|
-
export type Properties<group extends Group> =
|
|
98
|
+
export type Properties<group extends Group> = `--${string}` | Property<group>;
|
|
99
|
+
type Property<group extends Group> = group extends 'number' | 'string' ? never : group extends 'margin' | 'padding' ? Exclude<Extract<keyof Literal.Properties, `${group}${string}`>, 'marginTrim'> : group extends 'spacing' ? Extract<keyof Literal.Properties, `blockSize` | `bottom` | `columnGap` | `flexBasis` | `gap` | `height` | `inlineSize` | `inset${string}` | `left` | Exclude<Extract<keyof Literal.Properties, `margin${string}`>, 'marginTrim'> | `maxBlockSize` | `maxHeight` | `maxInlineSize` | `maxWidth` | `minBlockSize` | `minHeight` | `minInlineSize` | `minWidth` | `padding${string}` | `right` | `rowGap` | `scrollPadding${string}` | `textDecorationThickness` | `textIndent` | `textUnderlineOffset` | `top` | `width`> : group extends 'textColor' ? 'color' : group extends 'color' ? {
|
|
75
100
|
[property in keyof typeof Literal.rules]: (typeof Literal.rules)[property] extends {
|
|
76
101
|
kind: 'color';
|
|
77
102
|
} ? property : never;
|
|
78
|
-
}[keyof typeof Literal.rules] : group extends 'borderColor' ? Extract<keyof Literal.Properties, `border${string}Color`> : group extends 'borderRadius' ? Extract<keyof Literal.Properties, `border${string}Radius`> : group;
|
|
103
|
+
}[keyof typeof Literal.rules] : group extends 'borderColor' ? Extract<keyof Literal.Properties, `border${string}Color`> : group extends 'borderWidth' ? Exclude<Extract<keyof Literal.Properties, `border${string}Width`>, 'borderImageWidth'> : group extends 'borderRadius' ? Extract<keyof Literal.Properties, `border${string}Radius`> : group;
|
|
79
104
|
/** Immutable portable reference retaining its defining fallback. */
|
|
80
105
|
export type Reference<group extends Group = Group> = {
|
|
81
106
|
readonly [reference]: true;
|
|
@@ -96,9 +121,14 @@ export declare namespace resolve {
|
|
|
96
121
|
};
|
|
97
122
|
}
|
|
98
123
|
/** Scalar values retained for each rendering target. */
|
|
99
|
-
export type Value = number | string | {
|
|
100
|
-
readonly dark:
|
|
101
|
-
readonly light:
|
|
124
|
+
export type Value = number | string | Reference | {
|
|
125
|
+
readonly dark: Value;
|
|
126
|
+
readonly light: Value;
|
|
127
|
+
} | Conditions;
|
|
128
|
+
/** Ordered conditional values with an unconditional fallback. */
|
|
129
|
+
export type Conditions = {
|
|
130
|
+
readonly default: Value;
|
|
131
|
+
readonly [query: `@media ${string}`]: Value;
|
|
102
132
|
};
|
|
103
133
|
export {};
|
|
104
134
|
//# sourceMappingURL=Token.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Token.d.ts","sourceRoot":"","sources":["../../src/internal/Token.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Token.d.ts","sourceRoot":"","sources":["../../src/internal/Token.ts"],"names":[],"mappings":"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"}
|
package/dist/internal/Token.js
CHANGED
|
@@ -1,10 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Carries portable theme references and enforces their property domains.
|
|
3
|
+
* @module
|
|
4
|
+
*/
|
|
5
|
+
import * as Binding from './Binding.js';
|
|
1
6
|
import * as Literal from './Literal.js';
|
|
7
|
+
import * as VariableData from './VariableSets.js';
|
|
2
8
|
/** Checks a reference's property domain. */
|
|
3
9
|
export function accepts(group, property) {
|
|
10
|
+
if (property.startsWith('--'))
|
|
11
|
+
return true;
|
|
12
|
+
if (group === 'number' || group === 'string')
|
|
13
|
+
return false;
|
|
4
14
|
if (group === 'color')
|
|
5
15
|
return Literal.rule(property)?.kind === 'color';
|
|
6
16
|
if (group === 'borderColor')
|
|
7
17
|
return /^border.*Color$/.test(property);
|
|
18
|
+
if (group === 'borderWidth')
|
|
19
|
+
return /^border(?:Block|Inline)?(?:Start|End|Top|Right|Bottom|Left)?Width$/.test(property);
|
|
8
20
|
if (group === 'borderRadius')
|
|
9
21
|
return /^border.*Radius$/.test(property);
|
|
10
22
|
if (group === 'textColor')
|
|
@@ -44,8 +56,46 @@ export function accepts(group, property) {
|
|
|
44
56
|
].includes(property));
|
|
45
57
|
return group === property;
|
|
46
58
|
}
|
|
59
|
+
/** Checks explicit variable values independently of shorthand category mappings. */
|
|
60
|
+
export function acceptsReference(reference, property) {
|
|
61
|
+
if (!reference.contract.variableSet)
|
|
62
|
+
return accepts(reference.group, property);
|
|
63
|
+
if (property.startsWith('--'))
|
|
64
|
+
return true;
|
|
65
|
+
function check(value) {
|
|
66
|
+
if (is(value))
|
|
67
|
+
return acceptsReference(value, property);
|
|
68
|
+
if (typeof value === 'object')
|
|
69
|
+
return Object.values(value).every(check);
|
|
70
|
+
if (typeof value === 'number') {
|
|
71
|
+
const rule = Literal.rule(property);
|
|
72
|
+
if (rule?.kind === 'number')
|
|
73
|
+
return (value >= rule.min &&
|
|
74
|
+
value <= rule.max &&
|
|
75
|
+
(!rule.integer || Number.isInteger(value)));
|
|
76
|
+
return value === 0 && Binding.accepts('length', property);
|
|
77
|
+
}
|
|
78
|
+
if (reference.group === 'color')
|
|
79
|
+
return Binding.accepts('color', property);
|
|
80
|
+
if (reference.group === 'spacing')
|
|
81
|
+
return ((Literal.rule(property)?.kind === 'compound' &&
|
|
82
|
+
accepts('spacing', property)) ||
|
|
83
|
+
Binding.accepts(value.endsWith('%')
|
|
84
|
+
? value.startsWith('-')
|
|
85
|
+
? 'signedPercentage'
|
|
86
|
+
: 'percentage'
|
|
87
|
+
: value.startsWith('-')
|
|
88
|
+
? 'signedLength'
|
|
89
|
+
: 'length', property));
|
|
90
|
+
return (Literal.isLiteral(property, value) ||
|
|
91
|
+
Literal.rule(property)?.kind === 'compound');
|
|
92
|
+
}
|
|
93
|
+
return check(reference.value);
|
|
94
|
+
}
|
|
47
95
|
/** Rebinds validated scalar references to a explicitly owned contract identity. */
|
|
48
96
|
export function bind(original, contract) {
|
|
97
|
+
const metadata = original[definition];
|
|
98
|
+
const values = VariableData.rebind(metadata, contract);
|
|
49
99
|
function rebind(tree) {
|
|
50
100
|
return Object.freeze(Object.fromEntries(Object.entries(tree).map(([key, value]) => [
|
|
51
101
|
key,
|
|
@@ -54,7 +104,7 @@ export function bind(original, contract) {
|
|
|
54
104
|
contract,
|
|
55
105
|
group: value.group,
|
|
56
106
|
path: value.path,
|
|
57
|
-
value: value.
|
|
107
|
+
value: values[value.path],
|
|
58
108
|
})
|
|
59
109
|
: rebind(value),
|
|
60
110
|
])));
|
|
@@ -68,7 +118,7 @@ export function bind(original, contract) {
|
|
|
68
118
|
tokens,
|
|
69
119
|
variants: original.variants,
|
|
70
120
|
vars: variables(tokens),
|
|
71
|
-
}, definition, { value: Object.freeze({ ...
|
|
121
|
+
}, definition, { value: Object.freeze({ ...metadata, contract, values }) }));
|
|
72
122
|
}
|
|
73
123
|
/** Retains full scopes when styles may have been compiled in another graph. */
|
|
74
124
|
export const complete = Symbol('zyzz.contract.complete');
|
|
@@ -120,6 +170,8 @@ export function is(value) {
|
|
|
120
170
|
const fields = Object.getOwnPropertyDescriptors(value);
|
|
121
171
|
return ['contract', 'group', 'path', 'value'].every((key) => fields[key] && 'value' in fields[key]);
|
|
122
172
|
}
|
|
173
|
+
/** Literal domain carried by explicit variable references during type checking. */
|
|
174
|
+
export const scalar = Symbol('zyzz.variable.scalar');
|
|
123
175
|
const reference = Symbol('zyzz.token');
|
|
124
176
|
/** Resolves shorthand tokens with literal precedence, with specific colors first. */
|
|
125
177
|
export function resolve(value, options) {
|
|
@@ -130,11 +182,11 @@ export function resolve(value, options) {
|
|
|
130
182
|
?.value;
|
|
131
183
|
if (!data)
|
|
132
184
|
throw new Error('Expected a theme definition.');
|
|
133
|
-
|
|
134
|
-
for (const group of [
|
|
185
|
+
const groups = [
|
|
135
186
|
'backgroundColor',
|
|
136
187
|
'borderColor',
|
|
137
188
|
'borderRadius',
|
|
189
|
+
'borderWidth',
|
|
138
190
|
'margin',
|
|
139
191
|
'padding',
|
|
140
192
|
'spacing',
|
|
@@ -145,7 +197,39 @@ export function resolve(value, options) {
|
|
|
145
197
|
'lineHeight',
|
|
146
198
|
'textColor',
|
|
147
199
|
'color',
|
|
148
|
-
]
|
|
200
|
+
];
|
|
201
|
+
if (data.contract.variableSet) {
|
|
202
|
+
for (const [path, entry] of Object.entries(data.values).sort(([left], [right]) => groups.indexOf(left.split('.')[0]) -
|
|
203
|
+
groups.indexOf(right.split('.')[0]))) {
|
|
204
|
+
const [category, ...parts] = path.split('.');
|
|
205
|
+
const mappings = data.contract.mappings;
|
|
206
|
+
const mapped = mappings === false ? undefined : mappings?.[category];
|
|
207
|
+
if (mappings === false
|
|
208
|
+
? path !== String(value)
|
|
209
|
+
: parts.join('.') !== String(value) ||
|
|
210
|
+
!(mapped
|
|
211
|
+
? mapped.includes(options.property)
|
|
212
|
+
: accepts(category, options.property)))
|
|
213
|
+
continue;
|
|
214
|
+
return create({
|
|
215
|
+
contract: data.contract,
|
|
216
|
+
group: (() => {
|
|
217
|
+
let leaf = Object.getOwnPropertyDescriptor(options.theme, 'tokens')?.value;
|
|
218
|
+
for (const key of path.split('.'))
|
|
219
|
+
leaf =
|
|
220
|
+
leaf && typeof leaf === 'object'
|
|
221
|
+
? Object.getOwnPropertyDescriptor(leaf, key)?.value
|
|
222
|
+
: undefined;
|
|
223
|
+
return is(leaf) ? leaf.group : category;
|
|
224
|
+
})(),
|
|
225
|
+
path,
|
|
226
|
+
value: entry,
|
|
227
|
+
});
|
|
228
|
+
}
|
|
229
|
+
return value;
|
|
230
|
+
}
|
|
231
|
+
// Specific groups precede shared colors regardless of authored group order.
|
|
232
|
+
for (const group of groups) {
|
|
149
233
|
if (!accepts(group, options.property))
|
|
150
234
|
continue;
|
|
151
235
|
const path = `${group}.${value}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Token.js","sourceRoot":"","sources":["../../src/internal/Token.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Token.js","sourceRoot":"","sources":["../../src/internal/Token.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +1,28 @@
|
|
|
1
1
|
/** Describes nested typography sets and their property-aware token paths. @module */
|
|
2
2
|
import type * as Literal from './Literal.js';
|
|
3
|
-
/**
|
|
4
|
-
export
|
|
3
|
+
/** Responsive query blocks accepted within a typography set. */
|
|
4
|
+
export type Condition = `@media ${string}` | `@container ${string}`;
|
|
5
|
+
/** Recognizes responsive blocks without accepting selectors or unrelated at-rules. */
|
|
6
|
+
export declare function condition(key: string): key is Condition;
|
|
7
|
+
/** Expands one named set into portable field references and ordered query blocks. */
|
|
8
|
+
export declare function entries(theme: object | undefined, name: unknown, explicit?: ReadonlySet<string>, important?: boolean): readonly (readonly [string, unknown])[];
|
|
9
|
+
/** Lists expanded fields and queries in source-map traversal order. */
|
|
10
|
+
export declare function keys(theme: object | undefined, name: unknown, explicit: ReadonlySet<string>): readonly string[];
|
|
5
11
|
/** Names of sets containing at least one typography declaration. */
|
|
6
12
|
export type Names<tokens> = tokens extends {
|
|
7
13
|
typography: infer tree;
|
|
8
14
|
} ? Paths<tree> : never;
|
|
9
15
|
type Paths<tree> = string extends keyof tree ? string : {
|
|
10
|
-
[key in Exclude<Extract<keyof tree, string | number>, Property>]: (Extract<keyof tree[key], Property> extends never ? never : `${key}`) | `${key}.${Paths<tree[key]>}`;
|
|
11
|
-
}[Exclude<Extract<keyof tree, string | number>, Property>];
|
|
16
|
+
[key in Exclude<Extract<keyof tree, string | number>, Property | Condition>]: (Extract<keyof tree[key], Property | Condition> extends never ? never : `${key}`) | `${key}.${Paths<tree[key]>}`;
|
|
17
|
+
}[Exclude<Extract<keyof tree, string | number>, Property | Condition>];
|
|
12
18
|
/** Scalar properties applied by a typography set. */
|
|
13
19
|
export declare const properties: readonly ['fontFamily', 'fontSize', 'fontWeight', 'letterSpacing', 'lineHeight'];
|
|
14
20
|
/** Property domain retained by each field in a set. */
|
|
15
21
|
export type Property = (typeof properties)[number];
|
|
16
22
|
/** A set may supply any of the five typography properties. */
|
|
17
|
-
export type Set = Pick<Literal.Properties, Property
|
|
23
|
+
export type Set = Pick<Literal.Properties, Property> & {
|
|
24
|
+
readonly [key in Condition]?: Set;
|
|
25
|
+
};
|
|
18
26
|
/** Nested names may contain sets and additional named variants. */
|
|
19
27
|
export type Sets = {
|
|
20
28
|
readonly [name: string]: Set | Sets;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Typography.d.ts","sourceRoot":"","sources":["../../src/internal/Typography.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAG5C
|
|
1
|
+
{"version":3,"file":"Typography.d.ts","sourceRoot":"","sources":["../../src/internal/Typography.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAG5C,gEAAgE;AAChE,MAAM,MAAM,SAAS,GAAG,UAAU,MAAM,EAAE,GAAG,cAAc,MAAM,EAAE,CAAA;AAEnE,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,IAAI,SAAS,CAEvD;AAED,qFAAqF;AACrF,wBAAgB,OAAO,CACrB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,OAAO,EACb,QAAQ,GAAE,WAAW,CAAC,MAAM,CAAa,EACzC,SAAS,UAAQ,GAChB,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,EAAE,CAiCzC;AAED,uEAAuE;AACvE,wBAAgB,IAAI,CAClB,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,OAAO,EACb,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,GAC5B,SAAS,MAAM,EAAE,CASnB;AAED,oEAAoE;AACpE,MAAM,MAAM,KAAK,CAAC,MAAM,IAAI,MAAM,SAAS;IAAE,UAAU,EAAE,MAAM,IAAI,CAAA;CAAE,GACjE,KAAK,CAAC,IAAI,CAAC,GACX,KAAK,CAAA;AAET,KAAK,KAAK,CAAC,IAAI,IAAI,MAAM,SAAS,MAAM,IAAI,GACxC,MAAM,GACN;KACG,GAAG,IAAI,OAAO,CACb,OAAO,CAAC,MAAM,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,EACpC,QAAQ,GAAG,SAAS,CACrB,GACG,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC,SAAS,KAAK,GACzD,KAAK,GACL,GAAG,GAAG,EAAE,CAAC,GACb,GAAG,GAAG,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE;CACjC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAA;AAE1E,qDAAqD;AACrD,eAAO,MAAM,UAAU,YACrB,YAAY,EACZ,UAAU,EACV,YAAY,EACZ,eAAe,EACf,YAAY,CACJ,CAAA;AAEV,uDAAuD;AACvD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAA;AAElD,8DAA8D;AAC9D,MAAM,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,CAAC,GAAG;IACrD,QAAQ,EAAE,GAAG,IAAI,SAAS,CAAC,CAAC,EAAE,GAAG;CAClC,CAAA;AAED,mEAAmE;AACnE,MAAM,MAAM,IAAI,GAAG;IAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,GAAG,GAAG,IAAI,CAAA;CAAE,CAAA"}
|
|
@@ -1,11 +1,47 @@
|
|
|
1
1
|
import * as Token from './Token.js';
|
|
2
|
-
/**
|
|
3
|
-
export function
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
/** Recognizes responsive blocks without accepting selectors or unrelated at-rules. */
|
|
3
|
+
export function condition(key) {
|
|
4
|
+
return /^@(media|container)\s+\S/.test(key);
|
|
5
|
+
}
|
|
6
|
+
/** Expands one named set into portable field references and ordered query blocks. */
|
|
7
|
+
export function entries(theme, name, explicit = new Set(), important = false) {
|
|
8
|
+
if (!theme ||
|
|
9
|
+
typeof name !== 'string' ||
|
|
10
|
+
name.split('.').some((part) => part.startsWith('@')))
|
|
7
11
|
return [];
|
|
8
|
-
|
|
12
|
+
let tree = Object.getOwnPropertyDescriptor(theme, 'tokens')?.value;
|
|
13
|
+
for (const part of ['typography', ...name.split('.')]) {
|
|
14
|
+
if (!tree || typeof tree !== 'object')
|
|
15
|
+
return [];
|
|
16
|
+
tree = Object.getOwnPropertyDescriptor(tree, part)?.value;
|
|
17
|
+
}
|
|
18
|
+
function expand(value) {
|
|
19
|
+
if (!value || typeof value !== 'object')
|
|
20
|
+
return [];
|
|
21
|
+
return Object.entries(value).flatMap(([key, child]) => {
|
|
22
|
+
if (properties.includes(key) &&
|
|
23
|
+
Token.is(child) &&
|
|
24
|
+
!explicit.has(key))
|
|
25
|
+
return [
|
|
26
|
+
[key, important ? Token.compose([child, ' !important']) : child],
|
|
27
|
+
];
|
|
28
|
+
if (condition(key)) {
|
|
29
|
+
const nested = expand(child);
|
|
30
|
+
return nested.length ? [[key, Object.fromEntries(nested)]] : [];
|
|
31
|
+
}
|
|
32
|
+
return [];
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
return expand(tree);
|
|
36
|
+
}
|
|
37
|
+
/** Lists expanded fields and queries in source-map traversal order. */
|
|
38
|
+
export function keys(theme, name, explicit) {
|
|
39
|
+
function collect(values) {
|
|
40
|
+
return values.flatMap(([key, value]) => condition(key)
|
|
41
|
+
? [key, ...collect(Object.entries(value))]
|
|
42
|
+
: [key]);
|
|
43
|
+
}
|
|
44
|
+
return collect(entries(theme, name, explicit));
|
|
9
45
|
}
|
|
10
46
|
/** Scalar properties applied by a typography set. */
|
|
11
47
|
export const properties = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Typography.js","sourceRoot":"","sources":["../../src/internal/Typography.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Typography.js","sourceRoot":"","sources":["../../src/internal/Typography.ts"],"names":[],"mappings":"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"}
|
package/dist/internal/Value.d.ts
CHANGED
|
@@ -17,8 +17,13 @@ export type Atom<value> = value | `${Extract<value, string | number>} !important
|
|
|
17
17
|
* Checks authored properties and retains validated input types to avoid expanding whole-property fallback unions.
|
|
18
18
|
*/
|
|
19
19
|
export type Accepted<style, properties> = {
|
|
20
|
-
[property in keyof style]: property extends keyof properties ? style[property] extends
|
|
20
|
+
[property in keyof style]: property extends keyof properties ? style[property] extends {
|
|
21
|
+
readonly [Token.scalar]: infer scalar;
|
|
22
|
+
} ? property extends keyof Literal.Properties ? [scalar] extends [Literal.Properties[property]] ? style[property] & Checked<Record<property, scalar>>[property] : never : never : References<style[property], Exclude<properties[property], undefined>> & (style[property] extends Binding.Reference ? Binding.Reference<style[property]['type']> extends Exclude<properties[property], undefined> ? style[property] : never : FunctionValue.Is<style[property]> extends true ? FunctionValue.Accepted<style[property], Exclude<properties[property], undefined>, property> : Exclude<style[property], undefined> extends Exclude<properties[property], undefined> ? Exclude<style[property], undefined> : property extends keyof Literal.Properties ? style[property] extends string | readonly (number | string)[] ? Fold<style[property]> extends Input<Lowercase<Extract<Literal.Properties[property], string>> | Extract<Literal.Properties[property], number>> ? style[property] : Exclude<properties[property], undefined> : Exclude<properties[property], undefined> : Exclude<properties[property], undefined>) : never;
|
|
21
23
|
};
|
|
24
|
+
type References<value, allowed> = value extends Token.Reference ? value extends Extract<allowed, Token.Reference> ? unknown : never : value extends readonly unknown[] ? {
|
|
25
|
+
[key in keyof value]: References<value[key], allowed>;
|
|
26
|
+
} : unknown;
|
|
22
27
|
type Fold<value> = value extends string ? Lexical.Fold<Canonical<Spaces<Normalized<Lexical.Normalized<value>>>>> : value extends readonly unknown[] ? {
|
|
23
28
|
[key in keyof value]: Fold<value[key]>;
|
|
24
29
|
} : value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Value.d.ts","sourceRoot":"","sources":["../../src/internal/Value.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,KAAK,aAAa,MAAM,oBAAoB,CAAA;AACxD,OAAO,KAAK,KAAK,IAAI,MAAM,WAAW,CAAA;AACtC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,KAAK,OAAO,MAAM,cAAc,CAAA;AAC5C,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAEnC,4EAA4E;AAC5E,MAAM,MAAM,IAAI,CAAC,KAAK,IAClB,KAAK,GACL,GAAG,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,aAAa,CAAA;AAEnD;;;GAGG;AACH,MAAM,MAAM,QAAQ,CAAC,KAAK,EAAE,UAAU,IAAI;KACvC,QAAQ,IAAI,MAAM,KAAK,GAAG,QAAQ,SAAS,MAAM,UAAU,GACxD,KAAK,CAAC,QAAQ,CAAC,SAAS,
|
|
1
|
+
{"version":3,"file":"Value.d.ts","sourceRoot":"","sources":["../../src/internal/Value.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Value.js","sourceRoot":"","sources":["../../src/internal/Value.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;
|
|
1
|
+
{"version":3,"file":"Value.js","sourceRoot":"","sources":["../../src/internal/Value.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AACvC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAwPnC,uFAAuF;AACvF,MAAM,UAAU,KAAK,CACnB,KAAc,EACd,QAAkC;IAKlC,IAAI,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK;aACrB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;aAC7D,IAAI,CAAC,EAAE,CAAC,CAAA;QACX,MAAM,MAAM,GAAG,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;QACpC,IAAI,CAAC,MAAM,IAAI,SAAS,IAAI,MAAM;YAAE,OAAO,MAAM,CAAA;QACjD,IAAI,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,SAAS,CAAA;QAEtD,MAAM,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;QAC9B,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAA;QAEzD,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,SAAS,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC;YACxE,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAA;YACzB,IAAI,OAAO,IAAI,KAAK,QAAQ;gBAAE,OAAO,SAAS,CAAA;YAE9C,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAE9C,KAAK,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAA;YACjD,SAAS,IAAI,KAAK,CAAA;QACpB,CAAC;QAED,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAA;IACrE,CAAC;IAED,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,SAAS,CAAA;IAE/C,MAAM,SAAS,GAAG,KAAK,CAAA;IAEvB,SAAS,OAAO,CAAC,KAAa;QAC5B,IAAI,KAAK,GAAG,CAAC,CAAA;QAEb,OAAO,KAAK,GAAG,CAAC,IAAI,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAClD,KAAK,EAAE,CAAA;YACP,KAAK,EAAE,CAAA;QACT,CAAC;QAED,OAAO,KAAK,GAAG,CAAC,KAAK,CAAC,CAAA;IACxB,CAAC;IAED,IAAI,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IAEnC,OAAO,MAAM,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAC/D,8BAA8B,EAC9B,EAAE,CACH,CAAA;QAED,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,KAAK,EAAE,IAAI,MAAM,KAAK,WAAW,CAAC;YAAE,MAAK;QAExE,MAAM,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,CAAA;IACjE,CAAC;IAED,IAAI,MAAM,GAAG,CAAC;QAAE,OAAO,SAAS,CAAA;IAChC,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;QAClE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAA;IAE1B,IAAI,GAAG,GAAG,MAAM,CAAA;IAEhB,OAAO,GAAG,GAAG,CAAC,IAAI,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC;QACxE,GAAG,EAAE,CAAA;IAEP,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IAChC,MAAM,OAAO,GACX,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,QAAQ;QACzC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,KAAK,WAAW,CAAA;IAC9C,MAAM,KAAK,GACT,OAAO,IAAI,0CAA0C,CAAC,IAAI,CAAC,IAAI,CAAC;QAC9D,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC;QACd,CAAC,CAAC,IAAI,CAAA;IAEV,OAAO,EAAE,SAAS,EAAE,IAAa,EAAE,KAAK,EAAE,CAAA;AAC5C,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Normalizes shared variable data into compiler-owned token contracts. @module */
|
|
2
|
+
import * as Query from './Query.js';
|
|
3
|
+
import * as Token from './Token.js';
|
|
4
|
+
import * as Theme from './Theme.js';
|
|
5
|
+
import * as Vars from '../Vars.js';
|
|
6
|
+
/** Wraps a variable set for the shared style/compiler contract. */
|
|
7
|
+
export declare function theme(variables: Vars.Definition, mappings?: Vars.Mappings | false): Theme.Definition;
|
|
8
|
+
/** Rebuilds a reference tree from normalized compiler metadata. */
|
|
9
|
+
export declare function from(metadata: Token.Metadata): Vars.Definition;
|
|
10
|
+
/** Validates and freezes a complete set or compatible partial override. */
|
|
11
|
+
export declare function build(input: unknown, contract: Token.Contract, base?: Token.Metadata['values'], baseQueries?: Query.Metadata, basePaths?: Token.Metadata['paths']): Vars.Definition;
|
|
12
|
+
/** Infers the shared declaration domain after following defaults and references. */
|
|
13
|
+
export declare function domain(value: Token.Value): Token.Group;
|
|
14
|
+
/** Copies and validates category mappings without retaining mutable caller input. */
|
|
15
|
+
export declare function mappings(input: unknown): Vars.Mappings | false | undefined;
|
|
16
|
+
/** Combines disjoint variable leaves without mutating either authored record. */
|
|
17
|
+
export declare function merge(base: unknown, derived: unknown, path?: string[]): Vars.Values;
|
|
18
|
+
/** Updates references within a set while retaining references to independent sets. */
|
|
19
|
+
export declare function rebind(metadata: Token.Metadata, contract: Token.Contract): Token.Metadata['values'];
|
|
20
|
+
//# sourceMappingURL=VariableSets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VariableSets.d.ts","sourceRoot":"","sources":["../../src/internal/VariableSets.ts"],"names":[],"mappings":"AAAA,mFAAmF;AACnF,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AAKnC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,KAAK,MAAM,YAAY,CAAA;AACnC,OAAO,KAAK,IAAI,MAAM,YAAY,CAAA;AAElC,mEAAmE;AACnE,wBAAgB,KAAK,CACnB,SAAS,EAAE,IAAI,CAAC,UAAU,EAC1B,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,GAAG,KAAK,GAC/B,KAAK,CAAC,UAAU,CA+BlB;AAED,mEAAmE;AACnE,wBAAgB,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,CAO9D;AAED,2EAA2E;AAC3E,wBAAgB,KAAK,CACnB,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,IAAI,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC/B,WAAW,CAAC,EAAE,KAAK,CAAC,QAAQ,EAC5B,SAAS,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAClC,IAAI,CAAC,UAAU,CAgHjB;AAkID,oFAAoF;AACpF,wBAAgB,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAuBtD;AAED,qFAAqF;AACrF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC,QAAQ,GAAG,KAAK,GAAG,SAAS,CA2B1E;AAED,iFAAiF;AACjF,wBAAgB,KAAK,CACnB,IAAI,EAAE,OAAO,EACb,OAAO,EAAE,OAAO,EAChB,IAAI,GAAE,MAAM,EAAO,GAClB,IAAI,CAAC,MAAM,CA8Bb;AAED,sFAAsF;AACtF,wBAAgB,MAAM,CACpB,QAAQ,EAAE,KAAK,CAAC,QAAQ,EACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ,GACvB,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAsD1B"}
|