zyzz 0.0.25 → 0.0.27
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/Vars.d.ts +18 -2
- package/dist/Vars.d.ts.map +1 -1
- package/dist/Vars.js +21 -3
- package/dist/Vars.js.map +1 -1
- package/dist/compiler/internal/Configurations.d.ts +3 -0
- 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/Themes.d.ts.map +1 -1
- package/dist/compiler/internal/Themes.js +103 -27
- package/dist/compiler/internal/Themes.js.map +1 -1
- package/dist/internal/Configuration.d.ts.map +1 -1
- package/dist/internal/Configuration.js +5 -1
- package/dist/internal/Configuration.js.map +1 -1
- package/dist/internal/VariableSets.d.ts +20 -4
- package/dist/internal/VariableSets.d.ts.map +1 -1
- package/dist/internal/VariableSets.js +70 -19
- package/dist/internal/VariableSets.js.map +1 -1
- package/dist/react-native/internal/Tokens.d.ts.map +1 -1
- package/dist/react-native/internal/Tokens.js +3 -6
- package/dist/react-native/internal/Tokens.js.map +1 -1
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +3 -7
- package/dist/vite/index.js.map +1 -1
- package/dist/web/internal/Themes.d.ts.map +1 -1
- package/dist/web/internal/Themes.js +42 -4
- package/dist/web/internal/Themes.js.map +1 -1
- package/package.json +13 -1
- package/src/Vars.ts +104 -12
- package/src/compiler/internal/Configurations.ts +4 -1
- package/src/compiler/internal/Themes.ts +149 -45
- package/src/internal/Configuration.ts +5 -4
- package/src/internal/VariableSets.ts +104 -24
- package/src/react-native/internal/Tokens.ts +5 -6
- package/src/vite/index.ts +3 -9
- package/src/web/internal/Themes.ts +59 -13
|
@@ -53,6 +53,7 @@ export function create() {
|
|
|
53
53
|
const completeDefaults = new Set();
|
|
54
54
|
const empty = [];
|
|
55
55
|
const rules = [];
|
|
56
|
+
const varied = variedPaths(themes);
|
|
56
57
|
for (const [name, theme] of Object.entries(themes)) {
|
|
57
58
|
if (!name)
|
|
58
59
|
throw new Error('Theme names must be nonempty.');
|
|
@@ -99,8 +100,13 @@ export function create() {
|
|
|
99
100
|
const paths = [...contract.paths];
|
|
100
101
|
for (const [path, name] of paths) {
|
|
101
102
|
const value = data.values[path];
|
|
103
|
+
// A set sharing its contract with an extension lacks the extension's added paths.
|
|
102
104
|
if (value === undefined)
|
|
103
|
-
|
|
105
|
+
continue;
|
|
106
|
+
// An inherited base reference resolves through its fallback, unless a sibling set overrides it.
|
|
107
|
+
if (inherited(value, path, data.contract) &&
|
|
108
|
+
!varied.get(data.contract)?.has(path))
|
|
109
|
+
continue;
|
|
104
110
|
const label = path;
|
|
105
111
|
declarations.push({
|
|
106
112
|
conditions: [],
|
|
@@ -111,7 +117,8 @@ export function create() {
|
|
|
111
117
|
}
|
|
112
118
|
rules.push(...declarations);
|
|
113
119
|
for (const [path, name] of contract.paths)
|
|
114
|
-
|
|
120
|
+
if (Object.hasOwn(data.values, path))
|
|
121
|
+
conditional(data.values[path], name, `.${className}`, rules, path, [], data.contract);
|
|
115
122
|
}
|
|
116
123
|
for (const rule of rules) {
|
|
117
124
|
const key = JSON.stringify([
|
|
@@ -205,9 +212,9 @@ export function create() {
|
|
|
205
212
|
if ('default' in value) {
|
|
206
213
|
// Separate fallback properties preserve extensions and resolve references within each scope.
|
|
207
214
|
const base = literal(value.default, label, owner);
|
|
208
|
-
// Rule consolidation must not change existing variable identities.
|
|
215
|
+
// Rule consolidation must not change existing variable identities, so the name hashes the fallback's CSS.
|
|
209
216
|
const css = `:where(*){--fallback:${base};}${conditionalCss(value, '--fallback', ':where(*)', label, owner)}`;
|
|
210
|
-
const name = `${owner ? property(owner, label ?? 'value') : variable(undefined, label ?? 'value')}-fallback-${Identity.
|
|
217
|
+
const name = `${owner ? property(owner, label ?? 'value') : variable(undefined, label ?? 'value')}-fallback-${Identity.hash(css)}`;
|
|
211
218
|
const emitted = [
|
|
212
219
|
{ conditions: [], property: name, selector: ':where(*)', value: base },
|
|
213
220
|
];
|
|
@@ -299,6 +306,37 @@ export function scope(value, identity) {
|
|
|
299
306
|
const namespace = identity?.startsWith('id-') ? `${identity.slice(3)}-` : '';
|
|
300
307
|
return `z-theme-${namespace}${Identity.name(value)}`;
|
|
301
308
|
}
|
|
309
|
+
/** Whether a set's value is its base's own reference at the same path, as named extensions inherit. */
|
|
310
|
+
function inherited(value, path, contract) {
|
|
311
|
+
return Token.is(value) && value.path === path && value.contract !== contract;
|
|
312
|
+
}
|
|
313
|
+
/** Paths whose values differ between sets that share a contract. */
|
|
314
|
+
function variedPaths(themes) {
|
|
315
|
+
const seen = new Map();
|
|
316
|
+
const varied = new Map();
|
|
317
|
+
for (const theme of Object.values(themes)) {
|
|
318
|
+
const data = Object.getOwnPropertyDescriptor(theme, Token.definition)
|
|
319
|
+
?.value;
|
|
320
|
+
if (!data)
|
|
321
|
+
continue;
|
|
322
|
+
const values = seen.get(data.contract) ?? new Map();
|
|
323
|
+
seen.set(data.contract, values);
|
|
324
|
+
for (const [path, value] of Object.entries(data.values)) {
|
|
325
|
+
const key = Token.is(value)
|
|
326
|
+
? JSON.stringify([value.contract[Token.identity], value.path])
|
|
327
|
+
: JSON.stringify(value);
|
|
328
|
+
const previous = values.get(path);
|
|
329
|
+
if (previous === undefined)
|
|
330
|
+
values.set(path, key);
|
|
331
|
+
else if (previous !== key) {
|
|
332
|
+
const paths = varied.get(data.contract) ?? new Set();
|
|
333
|
+
paths.add(path);
|
|
334
|
+
varied.set(data.contract, paths);
|
|
335
|
+
}
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
return varied;
|
|
339
|
+
}
|
|
302
340
|
function variable(identity, path) {
|
|
303
341
|
const namespace = identity?.startsWith('id-') ? `${identity.slice(3)}-` : '';
|
|
304
342
|
return `--z-${namespace}${path.split('.').map(Identity.name).join('-')}`;
|
|
@@ -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
|
@@ -1,8 +1,20 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zyzz",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.27",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "Modern, universal, simple styling library for the Web and React Native",
|
|
6
|
+
"homepage": "https://zyzz.style",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"css",
|
|
9
|
+
"css-in-js",
|
|
10
|
+
"design-tokens",
|
|
11
|
+
"react",
|
|
12
|
+
"react-native",
|
|
13
|
+
"styles",
|
|
14
|
+
"theming",
|
|
15
|
+
"typescript",
|
|
16
|
+
"zero-runtime"
|
|
17
|
+
],
|
|
6
18
|
"repository": {
|
|
7
19
|
"type": "git",
|
|
8
20
|
"url": "git+https://github.com/wevm/zyzz.git"
|
package/src/Vars.ts
CHANGED
|
@@ -183,22 +183,114 @@ type Merge<base, derived> = {
|
|
|
183
183
|
: never
|
|
184
184
|
}
|
|
185
185
|
|
|
186
|
-
/**
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
186
|
+
/**
|
|
187
|
+
* Overrides existing leaves and adds new ones. Without an id, the extension is an
|
|
188
|
+
* alternative set sharing the base's identity; with one, it is a new set whose
|
|
189
|
+
* inherited leaves reference the base's variables. Restating a base leaf, such as
|
|
190
|
+
* `base.spacing.md` at `spacing.md`, keeps it.
|
|
191
|
+
* @throws {InvalidError} If an override changes a domain or an addition replaces a leaf with a category, or the reverse.
|
|
192
|
+
*/
|
|
193
|
+
export function extend<const base extends Values, const values extends Values>(
|
|
194
|
+
variables: Definition<base>,
|
|
195
|
+
values: values & NoInfer<Extension<base, values>>,
|
|
196
|
+
options?: style.DefinitionOptions,
|
|
197
|
+
): Definition<Extended<base, values>>
|
|
198
|
+
/** Deeply merges derived leaves over the extended set, rejecting existing paths. */
|
|
199
|
+
export function extend<
|
|
200
|
+
const base extends Values,
|
|
201
|
+
const values extends Values,
|
|
202
|
+
const derived extends Values,
|
|
203
|
+
>(
|
|
204
|
+
variables: Definition<base>,
|
|
205
|
+
values: values & NoInfer<Extension<base, values>>,
|
|
206
|
+
derive: ((vars: References<Extended<base, values>>) => derived) &
|
|
207
|
+
NoInfer<
|
|
208
|
+
(
|
|
209
|
+
vars: References<Extended<base, values>>,
|
|
210
|
+
) => Validated<derived, false, true>
|
|
211
|
+
>,
|
|
212
|
+
options?: style.DefinitionOptions,
|
|
213
|
+
): Definition<Extended<Extended<base, values>, derived>>
|
|
214
|
+
export function extend(
|
|
215
|
+
variables: Definition,
|
|
216
|
+
values: Values,
|
|
217
|
+
derive: style.DefinitionOptions | ((vars: References<Values>) => Values) = {},
|
|
218
|
+
options: style.DefinitionOptions = {},
|
|
219
|
+
): Definition {
|
|
220
|
+
if (typeof derive !== 'function') options = derive
|
|
221
|
+
|
|
191
222
|
const metadata = Object.getOwnPropertyDescriptor(variables, Token.definition)
|
|
192
223
|
?.value as Token.Metadata | undefined
|
|
193
224
|
if (!metadata?.contract.variableSet)
|
|
194
225
|
throw new InvalidError([], 'Expected a variable set.')
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
226
|
+
|
|
227
|
+
// A named extension owns its paths and reads inherited ones through the base's variables.
|
|
228
|
+
const contract =
|
|
229
|
+
options.id === undefined
|
|
230
|
+
? metadata.contract
|
|
231
|
+
: Object.freeze({
|
|
232
|
+
variableSet: true,
|
|
233
|
+
[Token.identity]: Identity.requireId(options.id, 'Vars.extend'),
|
|
234
|
+
[Token.complete]: true,
|
|
235
|
+
})
|
|
236
|
+
const base =
|
|
237
|
+
options.id === undefined
|
|
238
|
+
? metadata
|
|
239
|
+
: VariableSets.build(
|
|
240
|
+
VariableSets.references(variables, metadata),
|
|
241
|
+
contract,
|
|
242
|
+
)[Token.definition]
|
|
243
|
+
const extended = VariableSets.build(values, contract, { base })
|
|
244
|
+
if (typeof derive !== 'function') return extended
|
|
245
|
+
|
|
246
|
+
return VariableSets.build(derive(extended as References<Values>), contract, {
|
|
247
|
+
base: extended[Token.definition],
|
|
248
|
+
derived: true,
|
|
249
|
+
})
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
/** Base values grown by an extension; overridden leaves keep their base types. Unexported so declarations inline it. */
|
|
253
|
+
type Extended<base, values> = {
|
|
254
|
+
readonly [key in keyof base | keyof values]: key extends keyof base
|
|
255
|
+
? key extends keyof values
|
|
256
|
+
? base[key] extends Value
|
|
257
|
+
? base[key]
|
|
258
|
+
: base[key] extends readonly string[]
|
|
259
|
+
? values[key]
|
|
260
|
+
: Extended<base[key], values[key]>
|
|
261
|
+
: base[key]
|
|
262
|
+
: key extends keyof values
|
|
263
|
+
? values[key]
|
|
264
|
+
: never
|
|
265
|
+
}
|
|
266
|
+
|
|
267
|
+
/** Compatible overrides at existing leaves, plus new leaves and categories. */
|
|
268
|
+
type Extension<base, values, typography extends boolean = false> = {
|
|
269
|
+
readonly [key in keyof values]: key extends keyof base
|
|
270
|
+
? base[key] extends Value
|
|
271
|
+
? Conditional<Compatible<Scalar<base[key]>>>
|
|
272
|
+
: base[key] extends readonly string[]
|
|
273
|
+
? readonly string[]
|
|
274
|
+
: values[key] extends Value
|
|
275
|
+
? never
|
|
276
|
+
: Extension<
|
|
277
|
+
base[key],
|
|
278
|
+
values[key],
|
|
279
|
+
key extends 'typography' ? true : typography
|
|
280
|
+
>
|
|
281
|
+
: key extends 'containerNames'
|
|
282
|
+
? readonly string[]
|
|
283
|
+
: key extends
|
|
284
|
+
| `${string}.${string}`
|
|
285
|
+
| `${string}!${string}`
|
|
286
|
+
| `@${string}`
|
|
287
|
+
| ''
|
|
288
|
+
? typography extends true
|
|
289
|
+
? key extends Typography.Condition
|
|
290
|
+
? Validated<values[key], true>
|
|
291
|
+
: never
|
|
292
|
+
: never
|
|
293
|
+
: Validated<values[key], key extends 'typography' ? true : typography>
|
|
202
294
|
}
|
|
203
295
|
|
|
204
296
|
/** Partial compatible overrides. Conditional leaves are replaced in full. */
|
|
@@ -334,7 +334,10 @@ export function type(value: unknown): string {
|
|
|
334
334
|
.join(';')}}`
|
|
335
335
|
}
|
|
336
336
|
|
|
337
|
-
|
|
337
|
+
/** Reads the authored leaf values of a reference tree. */
|
|
338
|
+
export function values(
|
|
339
|
+
tree: Theme.References<Theme.Tokens>,
|
|
340
|
+
): Record<string, unknown> {
|
|
338
341
|
return Object.fromEntries(
|
|
339
342
|
Object.entries(tree).map(([key, value]) => [
|
|
340
343
|
key,
|
|
@@ -633,6 +633,68 @@ export function collect(program: Ast.Program, options: collect.Options) {
|
|
|
633
633
|
return result
|
|
634
634
|
}
|
|
635
635
|
|
|
636
|
+
/** Reads a derived-variables callback as one parameter name and a literal body. */
|
|
637
|
+
function derivation(argument: Ast.Node | undefined) {
|
|
638
|
+
const callback = argument && Expression.unwrap(argument)
|
|
639
|
+
if (
|
|
640
|
+
callback?.type !== 'ArrowFunctionExpression' &&
|
|
641
|
+
callback?.type !== 'FunctionExpression'
|
|
642
|
+
)
|
|
643
|
+
return undefined
|
|
644
|
+
|
|
645
|
+
const parameter = callback.params[0]
|
|
646
|
+
const body = (() => {
|
|
647
|
+
if (callback.body?.type !== 'BlockStatement') return callback.body
|
|
648
|
+
if (
|
|
649
|
+
callback.body.body.length === 1 &&
|
|
650
|
+
callback.body.body[0]?.type === 'ReturnStatement'
|
|
651
|
+
)
|
|
652
|
+
return callback.body.body[0].argument
|
|
653
|
+
return undefined
|
|
654
|
+
})()
|
|
655
|
+
if (
|
|
656
|
+
callback.async ||
|
|
657
|
+
callback.generator ||
|
|
658
|
+
callback.params.length !== 1 ||
|
|
659
|
+
parameter?.type !== 'Identifier' ||
|
|
660
|
+
!body
|
|
661
|
+
)
|
|
662
|
+
fail(
|
|
663
|
+
'Derived variables require one named parameter and a literal return value.',
|
|
664
|
+
callback,
|
|
665
|
+
)
|
|
666
|
+
|
|
667
|
+
return { body, name: parameter.name }
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
/** Authored values of an extension, keeping base values at existing paths as `Vars.extend` types do. */
|
|
671
|
+
function extendedValues(base: Theme.Definition, extension: Theme.Definition) {
|
|
672
|
+
const metadata = extension[Token.definition]
|
|
673
|
+
const known = base[Token.definition].values
|
|
674
|
+
const tree: Record<string, unknown> = Object.create(null)
|
|
675
|
+
|
|
676
|
+
for (const path of Object.keys(metadata.values)) {
|
|
677
|
+
const parts = metadata.paths?.[path] ?? path.split('.')
|
|
678
|
+
const source = Object.hasOwn(known, path) ? base : extension
|
|
679
|
+
let target = tree
|
|
680
|
+
let token: unknown = source.tokens
|
|
681
|
+
|
|
682
|
+
for (const part of parts.slice(0, -1)) {
|
|
683
|
+
target = (target[part] ??= Object.create(null)) as Record<
|
|
684
|
+
string,
|
|
685
|
+
unknown
|
|
686
|
+
>
|
|
687
|
+
token = (token as Record<string, unknown>)[part]
|
|
688
|
+
}
|
|
689
|
+
|
|
690
|
+
const name = parts.at(-1)!
|
|
691
|
+
// Every metadata path has a reference in its own token tree.
|
|
692
|
+
target[name] = (token as Record<string, Token.Reference>)[name]!.value
|
|
693
|
+
}
|
|
694
|
+
|
|
695
|
+
return tree
|
|
696
|
+
}
|
|
697
|
+
|
|
636
698
|
function fail(message: string, node: Pick<Ast.Node, 'end' | 'start'>): never {
|
|
637
699
|
throw new InvalidError(message, node)
|
|
638
700
|
}
|
|
@@ -768,6 +830,18 @@ export function collect(program: Ast.Program, options: collect.Options) {
|
|
|
768
830
|
)
|
|
769
831
|
if (id !== undefined) name = Identity.requireId(id, 'Vars.define')
|
|
770
832
|
}
|
|
833
|
+
if (!config && method === 'extend') {
|
|
834
|
+
const argument = expression.arguments[2]
|
|
835
|
+
const callback = argument && Expression.unwrap(argument)
|
|
836
|
+
const id = Identifiers.explicit(
|
|
837
|
+
expression,
|
|
838
|
+
callback?.type === 'ArrowFunctionExpression' ||
|
|
839
|
+
callback?.type === 'FunctionExpression'
|
|
840
|
+
? 3
|
|
841
|
+
: 2,
|
|
842
|
+
)
|
|
843
|
+
if (id !== undefined) name = Identity.requireId(id, 'Vars.extend')
|
|
844
|
+
}
|
|
771
845
|
|
|
772
846
|
if (config) {
|
|
773
847
|
const nativeProvider =
|
|
@@ -949,42 +1023,17 @@ export function collect(program: Ast.Program, options: collect.Options) {
|
|
|
949
1023
|
|
|
950
1024
|
tokenType = type(expression.arguments[0]!)
|
|
951
1025
|
|
|
952
|
-
const
|
|
953
|
-
|
|
954
|
-
|
|
955
|
-
|
|
956
|
-
(callback?.type === 'ArrowFunctionExpression' ||
|
|
957
|
-
callback?.type === 'FunctionExpression')
|
|
958
|
-
) {
|
|
959
|
-
const parameter = callback.params[0]
|
|
960
|
-
const body = (() => {
|
|
961
|
-
if (callback.body?.type !== 'BlockStatement') return callback.body
|
|
962
|
-
if (
|
|
963
|
-
callback.body.body.length === 1 &&
|
|
964
|
-
callback.body.body[0]?.type === 'ReturnStatement'
|
|
965
|
-
)
|
|
966
|
-
return callback.body.body[0].argument
|
|
967
|
-
return undefined
|
|
968
|
-
})()
|
|
969
|
-
if (
|
|
970
|
-
callback.async ||
|
|
971
|
-
callback.generator ||
|
|
972
|
-
callback.params.length !== 1 ||
|
|
973
|
-
parameter?.type !== 'Identifier' ||
|
|
974
|
-
!body
|
|
975
|
-
)
|
|
976
|
-
fail(
|
|
977
|
-
'Derived variables require one named parameter and a literal return value.',
|
|
978
|
-
callback,
|
|
979
|
-
)
|
|
980
|
-
|
|
1026
|
+
const derive = variableSet
|
|
1027
|
+
? derivation(expression.arguments[1])
|
|
1028
|
+
: undefined
|
|
1029
|
+
if (derive) {
|
|
981
1030
|
const base = VariableSets.build(
|
|
982
1031
|
input,
|
|
983
1032
|
Object.freeze({ variableSet: true, [Token.identity]: name }),
|
|
984
1033
|
)
|
|
985
1034
|
input = VariableSets.merge(
|
|
986
1035
|
input,
|
|
987
|
-
data(body, { name:
|
|
1036
|
+
data(derive.body, { name: derive.name, vars: base }),
|
|
988
1037
|
)
|
|
989
1038
|
tokenType = Configurations.type(input)
|
|
990
1039
|
} else if (expression.arguments.length > 2)
|
|
@@ -1012,33 +1061,88 @@ export function collect(program: Ast.Program, options: collect.Options) {
|
|
|
1012
1061
|
} else {
|
|
1013
1062
|
const base = expression.arguments[0]
|
|
1014
1063
|
const parent = base ? resolve(base)?.call : undefined
|
|
1064
|
+
const derive = variableSet
|
|
1065
|
+
? derivation(expression.arguments[2])
|
|
1066
|
+
: undefined
|
|
1015
1067
|
|
|
1016
|
-
|
|
1068
|
+
const arity = derive ? 3 : 2
|
|
1069
|
+
// A trailing options object names a new set over the base's variables.
|
|
1070
|
+
const id =
|
|
1071
|
+
expression.arguments.length === arity + 1
|
|
1072
|
+
? Identifiers.explicit(expression, arity)
|
|
1073
|
+
: undefined
|
|
1074
|
+
const named = id !== undefined
|
|
1075
|
+
if (
|
|
1076
|
+
(expression.arguments.length !== arity && !named) ||
|
|
1077
|
+
!parent
|
|
1078
|
+
)
|
|
1017
1079
|
fail(
|
|
1018
1080
|
'Vars.extend requires a preceding variable set and literal overrides.',
|
|
1019
1081
|
expression,
|
|
1020
1082
|
)
|
|
1021
1083
|
|
|
1022
1084
|
factoryReferences.add(base!.start)
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
|
|
1026
|
-
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
|
|
1033
|
-
|
|
1085
|
+
tokenType = parent.tokenType
|
|
1086
|
+
output = parent.output
|
|
1087
|
+
|
|
1088
|
+
if (variableSet) {
|
|
1089
|
+
const theme = themes[parent.name]!
|
|
1090
|
+
const original = VariableSets.from(theme[Token.definition])
|
|
1091
|
+
const extend = Vars.extend as (
|
|
1092
|
+
variables: Vars.Definition,
|
|
1093
|
+
values: Vars.Values,
|
|
1094
|
+
derive: (vars: Vars.References<Vars.Values>) => Vars.Values,
|
|
1095
|
+
options: { readonly id?: string | undefined },
|
|
1096
|
+
) => Vars.Definition
|
|
1097
|
+
const extended = extend(
|
|
1098
|
+
original,
|
|
1099
|
+
data(expression.arguments[1]!) as Vars.Values,
|
|
1100
|
+
(vars) =>
|
|
1101
|
+
derive
|
|
1102
|
+
? (data(derive.body, {
|
|
1103
|
+
name: derive.name,
|
|
1104
|
+
vars: vars as Vars.Definition,
|
|
1105
|
+
}) as Vars.Values)
|
|
1106
|
+
: {},
|
|
1107
|
+
{ id },
|
|
1108
|
+
)
|
|
1109
|
+
definition = named
|
|
1110
|
+
? Token.bind(
|
|
1111
|
+
VariableSets.theme(extended),
|
|
1112
|
+
Object.freeze({
|
|
1113
|
+
...extended[Token.definition].contract,
|
|
1114
|
+
[Token.identity]: name,
|
|
1115
|
+
}),
|
|
1116
|
+
)
|
|
1117
|
+
: VariableSets.theme(extended)
|
|
1118
|
+
|
|
1119
|
+
const metadata = definition[Token.definition]
|
|
1120
|
+
// Additions grow the token contract; overridden leaves keep their base types, as in `Vars.extend`.
|
|
1121
|
+
if (
|
|
1122
|
+
named ||
|
|
1123
|
+
Object.keys(metadata.values).length !==
|
|
1124
|
+
Object.keys(theme[Token.definition].values).length ||
|
|
1125
|
+
JSON.stringify(metadata.queries) !==
|
|
1126
|
+
JSON.stringify(theme[Token.definition].queries)
|
|
1127
|
+
)
|
|
1128
|
+
tokenType = Configurations.type({
|
|
1129
|
+
...extendedValues(theme, definition),
|
|
1130
|
+
...metadata.queries,
|
|
1131
|
+
})
|
|
1132
|
+
} else
|
|
1133
|
+
definition = Theme.extend(
|
|
1134
|
+
themes[parent.name]!,
|
|
1135
|
+
data(expression.arguments[1]!) as Theme.Overrides<Theme.Tokens>,
|
|
1136
|
+
)
|
|
1137
|
+
|
|
1138
|
+
// Extensions share their base identity, so the binding keeps sibling sets distinct.
|
|
1034
1139
|
if (
|
|
1140
|
+
!named &&
|
|
1035
1141
|
definition[Token.definition].contract[Token.identity]?.startsWith(
|
|
1036
1142
|
'id-',
|
|
1037
1143
|
)
|
|
1038
1144
|
)
|
|
1039
|
-
name = definition.className.slice('z-theme-'.length)
|
|
1040
|
-
tokenType = parent.tokenType
|
|
1041
|
-
output = parent.output
|
|
1145
|
+
name = `${definition.className.slice('z-theme-'.length)}-${binding}`
|
|
1042
1146
|
}
|
|
1043
1147
|
} catch (error) {
|
|
1044
1148
|
if (error instanceof InvalidError) throw error
|
|
@@ -137,11 +137,12 @@ export function create(
|
|
|
137
137
|
appearance: result.appearance,
|
|
138
138
|
script: result.script,
|
|
139
139
|
style: result.style,
|
|
140
|
+
// The default set's metadata lets Vars.extend grow configured vars.
|
|
140
141
|
vars: Object.freeze(
|
|
141
|
-
Object.defineProperties(
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
),
|
|
142
|
+
Object.defineProperties(vars, {
|
|
143
|
+
...Object.getOwnPropertyDescriptors(theme.tokens),
|
|
144
|
+
[Token.definition]: { value: theme[Token.definition] },
|
|
145
|
+
}),
|
|
145
146
|
),
|
|
146
147
|
variants: result.variants,
|
|
147
148
|
})
|