@yahoo/uds-create-config 4.24.0 → 4.25.0
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/configs/CanvasConfig.d.ts +65 -5
- package/dist/configs/react-native-system.d.ts +45 -5
- package/dist/configs/system.d.ts +43 -3
- package/dist/configs/system.js +2 -0
- package/dist/entities/native/NativeSettings.d.ts +1 -1
- package/dist/entities/native/NativeToken.d.ts +1 -1
- package/dist/entities/system/Component.d.ts +45 -3
- package/dist/entities/system/Component.js +13 -5
- package/dist/entities/system/composed-values.d.ts +1 -1
- package/dist/entities/system/defineComponent.d.ts +87 -18
- package/dist/entities/system/icon-library.js +3 -2
- package/dist/framework/Config.d.ts +1 -1
- package/dist/framework/Config.js +1 -1
- package/dist/framework/projections.js +1 -1
- package/dist/framework/prop-surface.d.ts +35 -1
- package/dist/framework/prop-surface.js +85 -2
- package/dist/framework/render-spec.js +2 -2
- package/dist/framework/schema-version.d.ts +1 -1
- package/dist/framework/schema-version.js +5 -5
- package/dist/index.d.ts +12 -12
- package/dist/index.js +3 -3
- package/dist/migrations/2.0.0/v1-artifact.d.ts +23 -3
- package/dist/migrations/20260924044539_slot_code_forms.d.ts +12 -0
- package/dist/migrations/20260924044539_slot_code_forms.js +8 -0
- package/dist/spec/detach.js +6 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
|
@@ -3,7 +3,7 @@ import { RegisteredModifiers, RegisteredPaths, RegisteredStyleProps } from "../.
|
|
|
3
3
|
import { Authored } from "../../framework/authoring.js";
|
|
4
4
|
import { StyleValue } from "./style-bag.js";
|
|
5
5
|
import { VariantValues } from "./Component.js";
|
|
6
|
-
import { AllHTMLAttributes, ComponentPropsWithRef, ComponentType, ElementType, JSX, ReactNode, Ref } from "react";
|
|
6
|
+
import { AllHTMLAttributes, ComponentPropsWithRef, ComponentType, ElementType, JSX, ReactElement, ReactNode, Ref } from "react";
|
|
7
7
|
|
|
8
8
|
//#region src/entities/system/defineComponent.d.ts
|
|
9
9
|
/**
|
|
@@ -100,7 +100,23 @@ interface SlotDecl {
|
|
|
100
100
|
accepts?: Ref$1 | Ref$1[];
|
|
101
101
|
text?: boolean;
|
|
102
102
|
required?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* The slot's OWN value domain, when it has one: an icon library (or a list of them) whose member
|
|
105
|
+
* fills the slot. `Icon.name` declares `value: Icon.ref('icons')`, so the canvas offers the glyph
|
|
106
|
+
* enum and a rule may name a glyph, while the slot still takes the code forms below. A slot with no
|
|
107
|
+
* `value` holds content, as a text or `children` slot does.
|
|
108
|
+
*/
|
|
109
|
+
value?: Ref$1 | readonly Ref$1[];
|
|
110
|
+
/**
|
|
111
|
+
* The forms code may also fill the slot with, beside its own value: a `ReactNode`, a
|
|
112
|
+
* `ReactElement`, or a render function handed the owner's props with this slot left out. The
|
|
113
|
+
* emitted module resolves them at the layer that owns the slot; the canvas stores and shows only
|
|
114
|
+
* the slot's own value.
|
|
115
|
+
*/
|
|
116
|
+
code?: readonly SlotCodeForm[];
|
|
103
117
|
}
|
|
118
|
+
/** A form code may fill a slot with, beside the slot's own value. */
|
|
119
|
+
type SlotCodeForm = 'node' | 'element' | 'render';
|
|
104
120
|
/**
|
|
105
121
|
* A prop routed to a prop of one of the component's own layers — `<Field disabled />` setting the
|
|
106
122
|
* `input` layer's `disabled`, instead of a caller reaching through `layerProps`.
|
|
@@ -235,15 +251,27 @@ interface StyleRuleInput<L extends LayerMap> {
|
|
|
235
251
|
* the glyph component; register stores its member. */
|
|
236
252
|
readonly layers: Partial<Record<keyof L & string, Record<string, StyleValue | GlyphComponent>>>;
|
|
237
253
|
}
|
|
238
|
-
/**
|
|
239
|
-
type
|
|
254
|
+
/**
|
|
255
|
+
* Whose view of a slot prop a type is. The consumer's holds the slot's own value and every code form
|
|
256
|
+
* it lists; the render's holds the own value alone, since the emitted module resolves the code forms
|
|
257
|
+
* first. A flag rather than a check on `Self`: comparing the owner's handle to `never` resolved its
|
|
258
|
+
* type arguments for every slot, and a linked component's extension became too complex to represent.
|
|
259
|
+
*/
|
|
260
|
+
type SlotView = 'consumer' | 'render';
|
|
261
|
+
/**
|
|
262
|
+
* The TS type one prop declaration produces on the rendered component.
|
|
263
|
+
*
|
|
264
|
+
* `Self` is the owner's handle, which a slot's render-function form reads its bag off, and `K` is the
|
|
265
|
+
* prop's own key, left out of that bag. `View` says whose surface this is — see {@link SlotView}.
|
|
266
|
+
*/
|
|
267
|
+
type ValueOf<D, Self = unknown, K extends PropertyKey = never, View extends SlotView = 'consumer'> = D extends readonly (infer Member)[] ? Member : D extends {
|
|
240
268
|
__ref: `style-property:${infer Target}`;
|
|
241
269
|
} ? StylePropValue<Target> : D extends {
|
|
242
270
|
type: 'styleProperty';
|
|
243
271
|
value: {
|
|
244
272
|
__ref: `style-property:${infer Target}`;
|
|
245
273
|
};
|
|
246
|
-
} ? StylePropValue<Target> : ValueOfDeclaration<D>;
|
|
274
|
+
} ? StylePropValue<Target> : ValueOfDeclaration<D, Self, K, View>;
|
|
247
275
|
/**
|
|
248
276
|
* A glyph as a value: the component an icon library exports. Its `displayName` is the member it is,
|
|
249
277
|
* which is what register stores (`icon:phosphor/XIcon`) and what the renderer resolves back to the
|
|
@@ -255,6 +283,20 @@ type ValueOf<D> = D extends readonly (infer Member)[] ? Member : D extends {
|
|
|
255
283
|
type GlyphComponent<Size extends string | number = never> = ComponentType<{
|
|
256
284
|
size?: Size;
|
|
257
285
|
}>;
|
|
286
|
+
/**
|
|
287
|
+
* A glyph as a consumer hands it to a slot: the library's exported component, as the named value it
|
|
288
|
+
* is rather than as something callable. Every function type carries `Function.name`, so every glyph
|
|
289
|
+
* fits and a string does not; `name` is required so the shape is not a weak type, since a generated
|
|
290
|
+
* glyph declares only a `metadata` static.
|
|
291
|
+
*
|
|
292
|
+
* Not a call signature: the slot's union also holds a render function, and TypeScript gives an
|
|
293
|
+
* arrow's parameter a contextual type only when no other member of the union is callable. The
|
|
294
|
+
* render's view of the same prop is {@link GlyphComponent}, which it draws with.
|
|
295
|
+
*/
|
|
296
|
+
type GlyphValue = {
|
|
297
|
+
readonly name: string;
|
|
298
|
+
readonly displayName?: string;
|
|
299
|
+
};
|
|
258
300
|
/**
|
|
259
301
|
* The members a ref-delegated domain offers, read off the registered paths: a variant whose domain
|
|
260
302
|
* is `icon:phosphor` takes every registered `phosphor/<Name>` as `<Name>`, so a misspelled glyph is
|
|
@@ -270,11 +312,12 @@ type RegisteredMembers<Kind extends string, Path extends string> = Path extends
|
|
|
270
312
|
* declaration the type cannot resolve.
|
|
271
313
|
*/
|
|
272
314
|
type StylePropValue<Target extends string> = Target extends keyof RegisteredStyleProps ? RegisteredStyleProps[Target] : unknown;
|
|
273
|
-
/**
|
|
274
|
-
type
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
315
|
+
/**
|
|
316
|
+
* A domain's TS type — a variant's values, or a slot's own value. A list of refs is a delegated
|
|
317
|
+
* domain like a single ref, tested before the member-list arm so it lands on the glyph component
|
|
318
|
+
* (icon libraries) or `string` rather than on `Ref`.
|
|
319
|
+
*/
|
|
320
|
+
type DomainValueOf<V> = V extends readonly {
|
|
278
321
|
__ref: `icon:${string}`;
|
|
279
322
|
}[] ? GlyphComponent : V extends readonly Ref$1[] ? string : V extends readonly (infer Member)[] ? Member : V extends VariantValues ? keyof V & string : V extends {
|
|
280
323
|
__ref: `${string}#${string}`;
|
|
@@ -282,7 +325,33 @@ type ValueOfDeclaration<D> = D extends {
|
|
|
282
325
|
__ref: `icon:${string}`;
|
|
283
326
|
} ? GlyphComponent : V extends {
|
|
284
327
|
__ref: `${infer Kind}:${infer Path}`;
|
|
285
|
-
} ? RegisteredMembers<Kind, Path> : string
|
|
328
|
+
} ? RegisteredMembers<Kind, Path> : string;
|
|
329
|
+
/** A slot's own value: its `value` domain's type where it declares one (a glyph component for an
|
|
330
|
+
* icon library), else content, which is a `ReactNode` and nothing narrower. */
|
|
331
|
+
type OwnSlotValue<D, View extends 'render' | 'consumer'> = D extends {
|
|
332
|
+
value: infer V;
|
|
333
|
+
} ? View extends 'consumer' ? ConsumerGlyph<DomainValueOf<V>> : DomainValueOf<V> : ReactNode;
|
|
334
|
+
/** A glyph domain as a consumer passes it — see {@link GlyphValue}; any other domain as it is. */
|
|
335
|
+
type ConsumerGlyph<T> = [T] extends [GlyphComponent] ? GlyphValue : T;
|
|
336
|
+
/** The code forms a slot lists: a node, an element, or a render function handed the owner's props
|
|
337
|
+
* with the slot left out. Distributed over the list, so `['element', 'render']` is exactly those two. */
|
|
338
|
+
type SlotCodeValue<D, Self, K extends PropertyKey> = D extends {
|
|
339
|
+
code: readonly (infer Form)[];
|
|
340
|
+
} ? (Form extends 'node' ? ReactNode : never) | (Form extends 'element' ? ReactElement : never) | (Form extends 'render' ? (layerProps: LayerBag<Self, K>) => ReactNode : never) : never;
|
|
341
|
+
/** What a render-function fill receives: the owner's consumer props less the slot it fills, read off
|
|
342
|
+
* the handle's read signature as `ComponentProps<typeof Icon>` is. */
|
|
343
|
+
type LayerBag<Self, K extends PropertyKey> = Self extends ((props: infer Props) => unknown) ? Without<Props, K> : Record<string, unknown>;
|
|
344
|
+
/**
|
|
345
|
+
* A slot's type: for a consumer, its own value, the code forms it lists, and `null`, so a conditional
|
|
346
|
+
* fill (`startIcon={cond ? Add : null}`) compiles; for the render, the own value alone.
|
|
347
|
+
*/
|
|
348
|
+
type SlotValueOf<D, Self, K extends PropertyKey, View extends SlotView> = View extends 'render' ? OwnSlotValue<D, 'render'> | null : string extends K ? // An open prop map (`PropMap` itself, read at a constraint) names no prop in particular, so
|
|
349
|
+
OwnSlotValue<D, 'consumer'> | null : OwnSlotValue<D, 'consumer'> | SlotCodeValue<D, Self, K> | null;
|
|
350
|
+
/** The declaration arms of {@link ValueOf}, after the two ref arms. */
|
|
351
|
+
type ValueOfDeclaration<D, Self, K extends PropertyKey, View extends SlotView> = D extends {
|
|
352
|
+
type: 'variant';
|
|
353
|
+
value: infer V;
|
|
354
|
+
} ? DomainValueOf<V> : D extends {
|
|
286
355
|
type: 'string';
|
|
287
356
|
} ? string : D extends {
|
|
288
357
|
type: 'number';
|
|
@@ -290,7 +359,7 @@ type ValueOfDeclaration<D> = D extends {
|
|
|
290
359
|
type: 'boolean';
|
|
291
360
|
} ? boolean : D extends {
|
|
292
361
|
type: 'slot';
|
|
293
|
-
} ?
|
|
362
|
+
} ? SlotValueOf<D, Self, K, View> : D extends {
|
|
294
363
|
type: 'forward';
|
|
295
364
|
text: true;
|
|
296
365
|
} ? string : D extends {
|
|
@@ -309,7 +378,7 @@ type ValueOfDeclaration<D> = D extends {
|
|
|
309
378
|
type Declared<T> = { [K in keyof T as string extends K ? never : number extends K ? never : K]: T[K] };
|
|
310
379
|
/** What a prop map really exposes: each declaration's value type, with the `null` tombstones — the
|
|
311
380
|
* props it DROPS from what it inherits — gone from the surface entirely. */
|
|
312
|
-
type DeclaredProps<P, L extends LayerMap = LayerMap> = { [K in keyof P as P[K] extends null ? never : K]: RoutedValueOf<L, P[K]> };
|
|
381
|
+
type DeclaredProps<P, L extends LayerMap = LayerMap, Self = unknown, View extends SlotView = 'consumer'> = { [K in keyof P as P[K] extends null ? never : K]: RoutedValueOf<L, P[K], Self, K, View> };
|
|
313
382
|
/**
|
|
314
383
|
* A forward's consumer type is the far prop's: a route onto a layer component's `name` takes what
|
|
315
384
|
* that component's `name` takes, and a route onto `<input disabled>` takes a boolean. The layers
|
|
@@ -317,13 +386,13 @@ type DeclaredProps<P, L extends LayerMap = LayerMap> = { [K in keyof P as P[K] e
|
|
|
317
386
|
* lands on. A route onto `children`, or onto a layer the map doesn't hold (an open `LayerMap`, as in
|
|
318
387
|
* a defaults bag), keeps `ValueOf`'s answer.
|
|
319
388
|
*/
|
|
320
|
-
type RoutedValueOf<L extends LayerMap, D> = D extends {
|
|
389
|
+
type RoutedValueOf<L extends LayerMap, D, Self = unknown, K extends PropertyKey = never, View extends SlotView = 'consumer'> = D extends {
|
|
321
390
|
type: 'forward';
|
|
322
391
|
text: true;
|
|
323
392
|
} ? string : D extends {
|
|
324
393
|
type: 'forward';
|
|
325
394
|
target: `${infer Layer}/${infer Prop}`;
|
|
326
|
-
} ? Prop extends 'children' ? ReactNode : Layer extends keyof L ? Prop extends keyof ElementPropsOf<L[Layer]> ? ElementPropsOf<L[Layer]>[Prop] : unknown : unknown : ValueOf<D>;
|
|
395
|
+
} ? Prop extends 'children' ? ReactNode : Layer extends keyof L ? Prop extends keyof ElementPropsOf<L[Layer]> ? ElementPropsOf<L[Layer]>[Prop] : unknown : unknown : ValueOf<D, Self, K, View>;
|
|
327
396
|
/**
|
|
328
397
|
* The props the rendered ELEMENT contributes, `ref` included.
|
|
329
398
|
*
|
|
@@ -404,7 +473,7 @@ type RequiredKey<P, D> = { [K in keyof P]: P[K] extends {
|
|
|
404
473
|
* is checked against its interface by relating two generic signatures, and a name type that reads
|
|
405
474
|
* `P` is not identical on the two sides of that comparison — a name type reading only `E` is.
|
|
406
475
|
*/
|
|
407
|
-
type ConsumerDeclaredProps<P, D, E, L extends LayerMap = LayerMap> = Without<Partial<DeclaredProps<P, L>>, Redefined<E>> & { [K in Exclude<RequiredKey<P, D>, Redefined<E>>]-?: K extends keyof DeclaredProps<P, L> ? DeclaredProps<P, L>[K] : never };
|
|
476
|
+
type ConsumerDeclaredProps<P, D, E, L extends LayerMap = LayerMap, Self = unknown> = Without<Partial<DeclaredProps<P, L, Self, 'consumer'>>, Redefined<E>> & { [K in Exclude<RequiredKey<P, D>, Redefined<E>>]-?: K extends keyof DeclaredProps<P, L, Self, 'consumer'> ? DeclaredProps<P, L, Self, 'consumer'>[K] : never };
|
|
408
477
|
/**
|
|
409
478
|
* The keys a render extra redefines: the ones it names. An open extra (`extends Record<string,
|
|
410
479
|
* unknown>`) names nothing through its index signature, but a key it declares beside that signature
|
|
@@ -451,7 +520,7 @@ type OpenTail<L extends LayerMap> = Registered extends true ? StyleProps & Modif
|
|
|
451
520
|
*
|
|
452
521
|
* Ends in {@link OpenTail}: the system's own surface, open until the system's build has named it.
|
|
453
522
|
*/
|
|
454
|
-
type ComponentPropsOf<L extends LayerMap, P extends PropMap, D = Record<never, never>, E = Record<never, never>, F extends string = never, As = never> = ConsumerDeclaredProps<P, D, E, L
|
|
523
|
+
type ComponentPropsOf<L extends LayerMap, P extends PropMap, D = Record<never, never>, E = Record<never, never>, F extends string = never, As = never> = ConsumerDeclaredProps<P, D, E, L, ComponentBuilder<L, P, E, D, F>> & Partial<E> & Redeclared<RootSurface<L, D, As>, P, E> & Redeclared<ForwardedPropsOf<L, F>, P, E> & AsPropsOf<As, P, E> & Redeclared<OpenTail<L>, P, E>;
|
|
455
524
|
/**
|
|
456
525
|
* `T` less the keys the component declares and the keys its render extra names — each taken out on
|
|
457
526
|
* its own, because {@link Without} leaves `T` whole when the key set is open, and an open render
|
|
@@ -558,7 +627,7 @@ type RenderArgs<L extends LayerMap, P extends PropMap> = {
|
|
|
558
627
|
* `<input ref={ref}>` in another — and which element is the render's decision.
|
|
559
628
|
*/
|
|
560
629
|
readonly ref?: Ref<any>;
|
|
561
|
-
} & DeclaredProps<P, L> & Record<string, unknown>;
|
|
630
|
+
} & DeclaredProps<P, L, unknown, 'render'> & Record<string, unknown>;
|
|
562
631
|
interface ComponentBuilder<L extends LayerMap, P extends PropMap,
|
|
563
632
|
/** Props the RENDER takes that the config doesn't describe — React handlers, mostly (`onPress`).
|
|
564
633
|
* They're part of the component's surface but not of its data, which is why they're declared at
|
|
@@ -708,4 +777,4 @@ interface DefineComponent {
|
|
|
708
777
|
declare function definePropsFirst<const P extends PropMap<LayerPath>>(props: P & NoInfer<{ [K in keyof P]: Exact<P[K], AuthoredProp<LayerPath>> }>): ComponentBuilder<LayerMap, P>;
|
|
709
778
|
declare const defineComponent: DefineComponent;
|
|
710
779
|
//#endregion
|
|
711
|
-
export { AsInput, AuthoredComponent, AuthoredProp, ComponentBuilder, ComponentPropsOf, GlyphComponent, LayerElement, LayerMap, PhantomCallProps, PhantomReadProps, PropCondition, PropDecl, PropMap, RegisteredMembers, RenderArgs, StyleRuleInput, defineComponent };
|
|
780
|
+
export { AsInput, AuthoredComponent, AuthoredProp, ComponentBuilder, ComponentPropsOf, GlyphComponent, GlyphValue, LayerElement, LayerMap, PhantomCallProps, PhantomReadProps, PropCondition, PropDecl, PropMap, RegisteredMembers, RenderArgs, SlotCodeForm, SlotDecl, StyleRuleInput, defineComponent };
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { createSliceMemo } from "../../framework/memo.js";
|
|
2
2
|
import { glyphComponentOf, glyphLibrariesOf, iconToolOf, resolveComponentProps } from "../../framework/projections.js";
|
|
3
3
|
import { Component } from "./Component.js";
|
|
4
|
+
import { isValueSlot } from "../../framework/prop-surface.js";
|
|
4
5
|
import { parseGlyphType } from "../../spec/glyph-jsx.js";
|
|
5
6
|
import { Icon } from "./Icon.js";
|
|
6
7
|
//#region src/entities/system/icon-library.ts
|
|
@@ -242,8 +243,8 @@ function readBoundLibraries({ config, component }) {
|
|
|
242
243
|
const paths = /* @__PURE__ */ new Set();
|
|
243
244
|
for (const declaration of Object.values(resolveComponentProps(config, component))) {
|
|
244
245
|
const declared = declaration;
|
|
245
|
-
if (declared?.type !== "variant") continue;
|
|
246
|
-
for (const path of glyphLibrariesOf(declared
|
|
246
|
+
if (declared?.type !== "variant" && !isValueSlot(declared)) continue;
|
|
247
|
+
for (const path of glyphLibrariesOf(declared?.value)) paths.add(path);
|
|
247
248
|
}
|
|
248
249
|
return [...paths].map((path) => iconLibrary(config, path)).filter((library) => library !== void 0);
|
|
249
250
|
}
|
|
@@ -72,7 +72,7 @@ interface RecordedSource {
|
|
|
72
72
|
* The dense-counter `2` a short-lived scheme stamped before the chain existed reads as the mint
|
|
73
73
|
* that replaced it (see `detectedWireVersion`).
|
|
74
74
|
*/
|
|
75
|
-
declare const SERIALIZED_CONFIG_VERSION =
|
|
75
|
+
declare const SERIALIZED_CONFIG_VERSION = 20260924044539;
|
|
76
76
|
interface SerializedConfig {
|
|
77
77
|
/** See {@link SERIALIZED_CONFIG_VERSION}. Always written; a stored artifact may lack it. */
|
|
78
78
|
readonly version: number;
|
package/dist/framework/Config.js
CHANGED
|
@@ -4883,7 +4883,7 @@ var Config = class Config {
|
|
|
4883
4883
|
* links from the provided sources. A declared `linkedKind` with no provided source throws. */
|
|
4884
4884
|
hydrateFrom(stored, options) {
|
|
4885
4885
|
const claimed = schemaVersionOf(stored);
|
|
4886
|
-
if (claimed >
|
|
4886
|
+
if (claimed > 20260924044539) throw new SchemaVersionTooNew(claimed);
|
|
4887
4887
|
const wire = upgradeSerializedConfig(stored);
|
|
4888
4888
|
if (!Array.isArray(wire.ownedKinds) || typeof wire.items !== "object" || wire.items === null) throw new ConfigFormatError(`Config "${stored.name ?? "system-config"}" cannot be hydrated: this is not a serialized config-v2 config (no "ownedKinds"/"items"). A pre-cutover build artifact converts through the registered cutover migration — import the config type's module (e.g. \`configs/system\`) before hydrating, or port the repo once with \`uds migrate\`.`);
|
|
4889
4889
|
const leftover = wire.options;
|
|
@@ -879,7 +879,7 @@ function propOwner(config, path, prop, seen = /* @__PURE__ */ new Set()) {
|
|
|
879
879
|
* validation, the `get_component` prop-domain display, and the Studio value picker, so none re-derive. */
|
|
880
880
|
function propValueDomain(config, decl) {
|
|
881
881
|
const domainRef = () => decl.value?.__ref;
|
|
882
|
-
if (decl.type === "variant") {
|
|
882
|
+
if (decl.type === "variant" || decl.type === "slot" && decl.value !== void 0) {
|
|
883
883
|
const single = domainRef();
|
|
884
884
|
const targets = refListOf(decl.value) ?? (single ? [single] : []);
|
|
885
885
|
if (targets.length > 0) {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Config } from "./Config.js";
|
|
2
|
+
import { SlotCodeForm } from "../entities/system/defineComponent.js";
|
|
2
3
|
|
|
3
4
|
//#region src/framework/prop-surface.d.ts
|
|
4
5
|
/** What a prop IS — the config's own prop types, and nothing invented. */
|
|
@@ -56,6 +57,12 @@ interface SurfaceSlotProp extends SurfacePropBase {
|
|
|
56
57
|
readonly valueOptions?: string[];
|
|
57
58
|
/** That prop's composite, when it forwards into one. */
|
|
58
59
|
readonly compositeName?: string;
|
|
60
|
+
/** The slot's OWN values, when it declares a value domain (`value: Icon.ref('icons')`): the
|
|
61
|
+
* leaves a consumer authors, as a variant's. Absent for a content slot. */
|
|
62
|
+
readonly values?: string[];
|
|
63
|
+
/** The icon libraries that domain delegates to — a surface offers the glyph picker for the
|
|
64
|
+
* slot's own value, as it does for a variant's. Mirrors {@link SurfaceVariantProp.iconLibraries}. */
|
|
65
|
+
readonly iconLibraries?: readonly string[];
|
|
59
66
|
}
|
|
60
67
|
type SurfaceProp = SurfaceVariantProp | SurfaceStylePropertyProp | SurfaceCompositeProp | SurfaceScalarProp | SurfaceSlotProp;
|
|
61
68
|
/** A prop declaration, as far as this reads it. An index signature because `propValueDomain` takes a
|
|
@@ -68,8 +75,35 @@ interface PropDecl extends Record<string, unknown> {
|
|
|
68
75
|
into?: string;
|
|
69
76
|
text?: boolean;
|
|
70
77
|
accepts?: unknown;
|
|
78
|
+
code?: unknown;
|
|
71
79
|
when?: unknown;
|
|
72
80
|
}
|
|
81
|
+
/**
|
|
82
|
+
* Whether a slot declares its OWN value domain — `{ type: 'slot', value: Icon.ref('icons') }`, whose
|
|
83
|
+
* value is a library member the canvas picks and a rule may set. Such a slot is a value to every
|
|
84
|
+
* content surface: nothing can be dropped, pasted or placed into it, and a route into it carries a
|
|
85
|
+
* value, not content. A slot with no `value` is a content hole.
|
|
86
|
+
*/
|
|
87
|
+
declare function isValueSlot(decl: unknown): boolean;
|
|
88
|
+
/** A slot one of a component's own props declares code forms for. */
|
|
89
|
+
interface CodeSlot {
|
|
90
|
+
readonly name: string;
|
|
91
|
+
readonly forms: readonly SlotCodeForm[];
|
|
92
|
+
/** Whether the slot has its own value domain, so a code form stands in for the whole component
|
|
93
|
+
* rather than filling a position the render places. */
|
|
94
|
+
readonly standsIn: boolean;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* The slots a component's OWN props declare code forms for. Own props only: a slot that reaches a
|
|
98
|
+
* component through a forwarded layer is resolved by that layer's module, where the slot is own.
|
|
99
|
+
*/
|
|
100
|
+
declare function codeSlotsOf(config: Config, componentPath: string): readonly CodeSlot[];
|
|
101
|
+
/** Whether a component takes a code fill that stands in for it as a whole — a value slot listing
|
|
102
|
+
* an element or render form. A host's conditional rules on a layer rendering one carry the
|
|
103
|
+
* override guard. */
|
|
104
|
+
declare function standsInForCode(config: Config, componentPath: string): boolean;
|
|
105
|
+
/** The code forms a slot lists, in declaration order; empty for a slot that lists none. */
|
|
106
|
+
declare function slotCodeForms(decl: unknown): readonly SlotCodeForm[];
|
|
73
107
|
/**
|
|
74
108
|
* Whether a prop applies under the values in force — every prop its condition names holds one of the
|
|
75
109
|
* leaves listed for it. A prop with no condition always applies; an unset prop satisfies nothing.
|
|
@@ -158,4 +192,4 @@ declare function forwardClaims(config: Config, componentPath: string): ForwardCl
|
|
|
158
192
|
*/
|
|
159
193
|
declare function layerPropRoutes(config: Config, componentPath: string, layer: string): ReadonlyMap<string, string>;
|
|
160
194
|
//#endregion
|
|
161
|
-
export { ForwardClaims, SurfaceCompositeProp, SurfaceProp, SurfacePropCondition, SurfacePropKind, SurfaceScalarProp, SurfaceSlotProp, SurfaceStylePropertyProp, SurfaceVariantProp, forwardClaims, forwardedLayers, intoName, layerPropRoutes, propApplies, propRegistryRef, routedProp, routedPropIn, routesContent, surfaceProp, surfaceProps };
|
|
195
|
+
export { CodeSlot, ForwardClaims, SurfaceCompositeProp, SurfaceProp, SurfacePropCondition, SurfacePropKind, SurfaceScalarProp, SurfaceSlotProp, SurfaceStylePropertyProp, SurfaceVariantProp, codeSlotsOf, forwardClaims, forwardedLayers, intoName, isValueSlot, layerPropRoutes, propApplies, propRegistryRef, routedProp, routedPropIn, routesContent, slotCodeForms, standsInForCode, surfaceProp, surfaceProps };
|
|
@@ -20,6 +20,48 @@ import { Component } from "../entities/system/Component.js";
|
|
|
20
20
|
* its domain (an icon prop drawing its names from the icon library rather than copying them in),
|
|
21
21
|
* which is why value lists are never read straight off `value`.
|
|
22
22
|
*/
|
|
23
|
+
/**
|
|
24
|
+
* Whether a slot declares its OWN value domain — `{ type: 'slot', value: Icon.ref('icons') }`, whose
|
|
25
|
+
* value is a library member the canvas picks and a rule may set. Such a slot is a value to every
|
|
26
|
+
* content surface: nothing can be dropped, pasted or placed into it, and a route into it carries a
|
|
27
|
+
* value, not content. A slot with no `value` is a content hole.
|
|
28
|
+
*/
|
|
29
|
+
function isValueSlot(decl) {
|
|
30
|
+
if (typeof decl !== "object" || decl === null) return false;
|
|
31
|
+
const { type, value } = decl;
|
|
32
|
+
return type === "slot" && value !== void 0;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The slots a component's OWN props declare code forms for. Own props only: a slot that reaches a
|
|
36
|
+
* component through a forwarded layer is resolved by that layer's module, where the slot is own.
|
|
37
|
+
*/
|
|
38
|
+
function codeSlotsOf(config, componentPath) {
|
|
39
|
+
const body = Component.get(config, componentPath)?.toJSON();
|
|
40
|
+
const out = [];
|
|
41
|
+
for (const [name, decl] of Object.entries(body?.props ?? {})) {
|
|
42
|
+
const forms = slotCodeForms(decl);
|
|
43
|
+
if (forms.length === 0) continue;
|
|
44
|
+
out.push({
|
|
45
|
+
name,
|
|
46
|
+
forms,
|
|
47
|
+
standsIn: isValueSlot(decl)
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
return out;
|
|
51
|
+
}
|
|
52
|
+
/** Whether a component takes a code fill that stands in for it as a whole — a value slot listing
|
|
53
|
+
* an element or render form. A host's conditional rules on a layer rendering one carry the
|
|
54
|
+
* override guard. */
|
|
55
|
+
function standsInForCode(config, componentPath) {
|
|
56
|
+
return codeSlotsOf(config, componentPath).some((slot) => slot.standsIn && (slot.forms.includes("element") || slot.forms.includes("render")));
|
|
57
|
+
}
|
|
58
|
+
/** The code forms a slot lists, in declaration order; empty for a slot that lists none. */
|
|
59
|
+
function slotCodeForms(decl) {
|
|
60
|
+
if (typeof decl !== "object" || decl === null) return [];
|
|
61
|
+
const { type, code } = decl;
|
|
62
|
+
if (type !== "slot" || !Array.isArray(code)) return [];
|
|
63
|
+
return code.filter((form) => form === "node" || form === "element" || form === "render");
|
|
64
|
+
}
|
|
23
65
|
/** A stored condition as leaves, one list per prop it names; `undefined` for none. */
|
|
24
66
|
function conditionLeaves(when) {
|
|
25
67
|
if (when === null || typeof when !== "object" || Array.isArray(when)) return;
|
|
@@ -108,10 +150,39 @@ function routedProp(config, componentPath, decl) {
|
|
|
108
150
|
const body = Component.get(config, componentPath)?.toJSON();
|
|
109
151
|
return routedPropIn(config, body?.layers, decl);
|
|
110
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Whether a route carries CONTENT rather than a value — computed from what the target prop IS.
|
|
155
|
+
*
|
|
156
|
+
* A forward names a prop on one of its own component's layers, and that prop decides what the route
|
|
157
|
+
* means: a slot there receives children, anything else receives a value. There is one authored form for
|
|
158
|
+
* both (`{ type: 'forward', target: 'label/children' }`), and this is the only thing that tells them
|
|
159
|
+
* apart — so it is computed, never declared, and the two can't disagree.
|
|
160
|
+
*
|
|
161
|
+
* It is also exactly the question `accepts` is valid for, which is why the validation rule and every
|
|
162
|
+
* reader ask the same function instead of each deciding.
|
|
163
|
+
*
|
|
164
|
+
* A layer whose element is a TAG has no declarations to resolve, so `children` is the one prop that
|
|
165
|
+
* carries content — the DOM's own rule, and what lets a `<span>` layer still receive a routed slot.
|
|
166
|
+
*/
|
|
167
|
+
/**
|
|
168
|
+
* Whether CONTENT can land on this prop — the one question every content surface asks.
|
|
169
|
+
*
|
|
170
|
+
* Two declarations answer yes, for the same reason. A `slot` IS a hole that carries content, placed by
|
|
171
|
+
* the render itself: that is its one meaning now, where it used to also stand in for a route. A
|
|
172
|
+
* `forward` answers yes when it routes INTO such a hole — and no when it routes into a value prop,
|
|
173
|
+
* because a value is not something a paste, a drop, or a node picker can put anywhere.
|
|
174
|
+
*
|
|
175
|
+
* One function because the alternative is every caller re-deriving it, and they did: a paste offered
|
|
176
|
+
* itself wherever `type === 'slot'`, which under the old shape included routes into a composite.
|
|
177
|
+
*/
|
|
178
|
+
function carriesContent(config, layers, decl) {
|
|
179
|
+
if (decl?.type === "slot") return !isValueSlot(decl);
|
|
180
|
+
return decl?.type === "forward" && routesContent(config, layers, decl);
|
|
181
|
+
}
|
|
111
182
|
function routesContent(config, layers, decl) {
|
|
112
183
|
const end = routeEnd(config, layers, decl);
|
|
113
184
|
if (!end) return false;
|
|
114
|
-
if (end.decl) return end.decl.type === "slot";
|
|
185
|
+
if (end.decl) return end.decl.type === "slot" && !isValueSlot(end.decl);
|
|
115
186
|
return refPath(end.route.target) !== void 0 && intoName(end.route.into) === "children";
|
|
116
187
|
}
|
|
117
188
|
/**
|
|
@@ -151,6 +222,18 @@ function routeEnd(config, layers, decl, seen = /* @__PURE__ */ new Set()) {
|
|
|
151
222
|
return routeEnd(config, farLayers, landed, new Set([...seen, key]));
|
|
152
223
|
}
|
|
153
224
|
function slotProp(config, componentPath, name, decl) {
|
|
225
|
+
if (isValueSlot(decl)) {
|
|
226
|
+
const iconLibraries = variantIconLibraries(config, decl.value);
|
|
227
|
+
return {
|
|
228
|
+
name,
|
|
229
|
+
kind: "slot",
|
|
230
|
+
required: decl.required === true,
|
|
231
|
+
text: false,
|
|
232
|
+
accepts: [],
|
|
233
|
+
values: propValueDomain(config, decl)?.leaves ?? [],
|
|
234
|
+
...iconLibraries !== void 0 ? { iconLibraries } : {}
|
|
235
|
+
};
|
|
236
|
+
}
|
|
154
237
|
const refs = acceptsRefs(decl.accepts);
|
|
155
238
|
const icons = refs.find((ref) => kindOf(ref) === "icon");
|
|
156
239
|
const body = Component.get(config, componentPath)?.toJSON();
|
|
@@ -381,4 +464,4 @@ function layerPropRoutes(config, componentPath, layer) {
|
|
|
381
464
|
return routes;
|
|
382
465
|
}
|
|
383
466
|
//#endregion
|
|
384
|
-
export { forwardClaims, forwardedLayers, intoName, layerPropRoutes, propApplies, propRegistryRef, routedProp, routedPropIn, routesContent, routesIntoText, surfaceProp, surfaceProps };
|
|
467
|
+
export { carriesContent, codeSlotsOf, forwardClaims, forwardedLayers, intoName, isValueSlot, layerPropRoutes, propApplies, propRegistryRef, routedProp, routedPropIn, routesContent, routesIntoText, slotCodeForms, standsInForCode, surfaceProp, surfaceProps };
|
|
@@ -6,7 +6,7 @@ import { authoredBag, authoredValue, declaredPropDefaults, memberFromLeaf, refLi
|
|
|
6
6
|
import { componentLayerClass, componentPropClasses, componentRuleClasses, layerRoutedProps, splitStyleProps, styleRuleMotionClasses } from "./class-names.js";
|
|
7
7
|
import { graftPreviewElements } from "../spec/preview-elements.js";
|
|
8
8
|
import { slotHostLayer } from "./slot-host.js";
|
|
9
|
-
import { forwardedLayers, intoName, routesContent } from "./prop-surface.js";
|
|
9
|
+
import { forwardedLayers, intoName, isValueSlot, routesContent } from "./prop-surface.js";
|
|
10
10
|
//#region src/framework/render-spec.ts
|
|
11
11
|
const refOf = (value) => typeof value?.__ref === "string" ? value.__ref : void 0;
|
|
12
12
|
const layerOf = (element) => {
|
|
@@ -904,7 +904,7 @@ function computeSlotTargets(config, body) {
|
|
|
904
904
|
const untargeted = [];
|
|
905
905
|
for (const [from, decl] of Object.entries(body.props ?? {})) {
|
|
906
906
|
if (decl?.type === "slot") {
|
|
907
|
-
untargeted.push({
|
|
907
|
+
if (!isValueSlot(decl)) untargeted.push({
|
|
908
908
|
...decl,
|
|
909
909
|
from,
|
|
910
910
|
untargeted: true
|
|
@@ -15,7 +15,7 @@ import { Patch, SerializedConfig } from "./Config.js";
|
|
|
15
15
|
* sets this constant to its own older timestamp; the merge ref then carries a registered migration
|
|
16
16
|
* newer than the constant, and the assertion fails until the author re-mints.
|
|
17
17
|
*/
|
|
18
|
-
declare const CURRENT_SCHEMA_VERSION =
|
|
18
|
+
declare const CURRENT_SCHEMA_VERSION = 20260924044539;
|
|
19
19
|
/** What the walkers need to see of an envelope — loose on purpose, so a typed `SerializedConfig`
|
|
20
20
|
* and a raw old-shape record both flow in without casts. */
|
|
21
21
|
interface VersionStamped {
|
|
@@ -13,7 +13,7 @@ import { ConfigFormatError } from "./rejection.js";
|
|
|
13
13
|
* sets this constant to its own older timestamp; the merge ref then carries a registered migration
|
|
14
14
|
* newer than the constant, and the assertion fails until the author re-mints.
|
|
15
15
|
*/
|
|
16
|
-
const CURRENT_SCHEMA_VERSION =
|
|
16
|
+
const CURRENT_SCHEMA_VERSION = 20260924044539;
|
|
17
17
|
/** The mint that moved `options` into the `settings` kind — restated here, rather than imported
|
|
18
18
|
* from the migration that owns it, because that migration imports this module. */
|
|
19
19
|
const SETTINGS_AS_KIND_VERSION = 20260908171448;
|
|
@@ -45,7 +45,7 @@ function registerSchemaMigrations(...migrations) {
|
|
|
45
45
|
for (const migration of migrations) {
|
|
46
46
|
if (migration.version !== 1 && !isMintTimestamp(migration.version)) throw new Error(`Schema migration version ${migration.version} is not a mint timestamp — mint one with \`date +%Y%m%d%H%M%S\`, like a supabase migration.`);
|
|
47
47
|
if (REGISTERED.has(migration.version)) throw new Error(`A schema migration at version ${migration.version} is already registered.`);
|
|
48
|
-
if (migration.version >
|
|
48
|
+
if (migration.version > 20260924044539) throw new Error(`Schema migration ${migration.version} is newer than CURRENT_SCHEMA_VERSION (${CURRENT_SCHEMA_VERSION}) — a stale branch merged, or the mint forgot to bump the constant. Re-mint: set CURRENT_SCHEMA_VERSION to the newest migration version.`);
|
|
49
49
|
REGISTERED.set(migration.version, migration);
|
|
50
50
|
}
|
|
51
51
|
}
|
|
@@ -102,7 +102,7 @@ function pendingFor(version, target, options) {
|
|
|
102
102
|
* Already-current input passes through untouched — same reference, so hot paths pay nothing.
|
|
103
103
|
*/
|
|
104
104
|
function upgradeSerializedConfig(json, options) {
|
|
105
|
-
const target = options?.target ??
|
|
105
|
+
const target = options?.target ?? 20260924044539;
|
|
106
106
|
const version = detectedWireVersion(json);
|
|
107
107
|
if (version > target) throw new SchemaVersionTooNew(version, target);
|
|
108
108
|
const raw = json;
|
|
@@ -160,7 +160,7 @@ function upgradedSources(json, options) {
|
|
|
160
160
|
* meaning under the current schema and replay skips it — reported by the caller, not swallowed here.
|
|
161
161
|
*/
|
|
162
162
|
function upgradePatch(patch, writtenAt, options) {
|
|
163
|
-
const target = options?.target ??
|
|
163
|
+
const target = options?.target ?? 20260924044539;
|
|
164
164
|
if (writtenAt > target) throw new SchemaVersionTooNew(writtenAt, target);
|
|
165
165
|
let current = patch;
|
|
166
166
|
for (const migration of pendingFor(writtenAt, target, options)) {
|
|
@@ -179,7 +179,7 @@ function upgradePatch(patch, writtenAt, options) {
|
|
|
179
179
|
* stamp would cause.
|
|
180
180
|
*/
|
|
181
181
|
function upgradeDraftEntries(draft, options) {
|
|
182
|
-
const target = options?.target ??
|
|
182
|
+
const target = options?.target ?? 20260924044539;
|
|
183
183
|
const entries = [];
|
|
184
184
|
const held = [];
|
|
185
185
|
const retired = [];
|
package/dist/index.d.ts
CHANGED
|
@@ -36,32 +36,32 @@ import { StoredPreviewCondition, UNCONDITIONAL_PREVIEW_KEY, storedPreview, uncon
|
|
|
36
36
|
import { IconTool, PreviewMatrix, PropDeclaration, StylePropEntry, StylePropertyItem, authoredBag, authoredValue, className, cssPropValue, cssVar, cssVarRef, declaredPropDefaults, declaredPropRouting, glyphComponentOf, glyphLibrariesOf, glyphPropsOf, iconToolAxisOptions, iconToolOf, keyedPreviewConditions, memberFromLeaf, memberLeaves, negatedCssValue, opacityPercentage, previewConditionalProps, previewConditions, previewDefaults, previewMatrix, propOwner, propValueDomain, propValueFromAxis, refListOf, renderStyleValue, resolveComponentProps, resolveFieldValue, resolveTokenValue, resolveTokenValueUnder, routedBag, sourceVarPrefix, styleAliasesOf, styleDeclarations, stylePropEntries, stylePropLeafForToken, stylePropNegates, stylePropTokenGroup, stylePropTokenPath, stylePropTokenValues, stylePropValueFromLeaf, stylePropValueLeaves, stylePropValues, stylePropertiesWriting, stylePropertyAccepts, stylePropertyFor, stylePropertyPathFor, validateComponentProps } from "./framework/projections.js";
|
|
37
37
|
import { PreviewElement, graftPreviewElements, isPreviewElement } from "./spec/preview-elements.js";
|
|
38
38
|
import { Slot, SlotCell } from "./spec/slot.js";
|
|
39
|
-
import {
|
|
40
|
-
import {
|
|
39
|
+
import { ColorValue, DERIVED_COLOR_SPACE, DerivedColor, Gradient, alpha, darken, isDerivedColor, isGradient, lighten, linearGradient, mix, renderDerivedColor, renderGradient } from "./entities/system/color.js";
|
|
40
|
+
import { TimingValue, Transition, TransitionSegment, isTransition, renderTransition, transition } from "./entities/system/transition.js";
|
|
41
|
+
import { ComposedValue, ComposedValueAuthoring, ComposedValueForm, composedValueAuthoring, composedValueFormOf, composedValueForms, composedValueSchemas, isComposedValue, renderComposedValue } from "./entities/system/composed-values.js";
|
|
42
|
+
import { StyleValue } from "./entities/system/style-bag.js";
|
|
43
|
+
import { RootFontSize, parseRootFontSize } from "./css/root-font-size.js";
|
|
44
|
+
import { RegisteredTokenValues, TOKEN_READERS, TokenGroupReader, TokenReader, TokenReaders, TokenValueEntry, TokenValueRow, TokenValueState, isTokenReader, rootFontSize, spellTokenRead, tokenExists, tokenValueRow, tokenValueRows } from "./entities/system/token-values.js";
|
|
45
|
+
import { OverrideCondition, Token, TokenBody, TokenRefPath, TokenReference, defineOverride, overrideCondition, overrideKey, overrideKeyModifiers, overrideModifiers } from "./entities/system/Token.js";
|
|
41
46
|
import { Instance, InstanceSlot, InstanceSpec, instanceHolding } from "./spec/instance.js";
|
|
47
|
+
import { AuthoredPropBody, Component, ComponentBody, ComponentElementBody, ComponentPropBody, ComponentReference, ComponentStyleBody, ElementVisibility, ElementVisibilityInput, ExtendedComponentRef, ProjectedVisibility, SLOT_CODE_FORMS, VariantValueBody, VariantValues, blankComponentBody, canonicalWhen, forwardedNames, layerRef, ownValues, ownsItsValues, valueRef } from "./entities/system/Component.js";
|
|
48
|
+
import { AsInput, AuthoredComponent, AuthoredProp, ComponentBuilder, ComponentPropsOf, GlyphComponent, GlyphValue, LayerElement, LayerMap, PropCondition, PropDecl, PropMap, RegisteredMembers, RenderArgs, SlotCodeForm, SlotDecl, StyleRuleInput, defineComponent } from "./entities/system/defineComponent.js";
|
|
49
|
+
import { CodeSlot, ForwardClaims, SurfaceCompositeProp, SurfaceProp, SurfacePropCondition, SurfacePropKind, SurfaceScalarProp, SurfaceSlotProp, SurfaceStylePropertyProp, SurfaceVariantProp, codeSlotsOf, forwardClaims, forwardedLayers, intoName, isValueSlot, layerPropRoutes, propApplies, propRegistryRef, routedProp, routedPropIn, routesContent, slotCodeForms, standsInForCode, surfaceProp, surfaceProps } from "./framework/prop-surface.js";
|
|
50
|
+
import { Cell, CellSlot, GoverningCondition } from "./spec/cell.js";
|
|
42
51
|
import { ReactNativeSystem, ReactNativeSystemConfig } from "./configs/react-native-system.js";
|
|
43
52
|
import { System, SystemConfig } from "./configs/system.js";
|
|
44
53
|
import { AnySystemConfig, isNativeConfig, isSystemConfig } from "./configs/platform.js";
|
|
45
54
|
import { AiChat, AiFlow, AiFlowOrigin, AiGeneration, AiMessage, AiMultiAgentMode, Canvas, CanvasConfig, Node, Page, SystemSource, createCanvasConfig } from "./configs/CanvasConfig.js";
|
|
46
55
|
import { DocumentationLibrary } from "./configs/documentation.js";
|
|
47
56
|
import { CssPropertyEntry } from "./css/properties.generated.js";
|
|
48
|
-
import { RootFontSize, parseRootFontSize } from "./css/root-font-size.js";
|
|
49
57
|
import { ResolveValueTypeInput, ValueType, resolveValueType, sniffValueType } from "./css/value-type.js";
|
|
50
58
|
import { CSS_PROPERTY_NAMES, CSS_WIDE_KEYWORDS, cssProperty, cssValueIssue, isCssProperty } from "./css/values.js";
|
|
51
59
|
import { Documentation } from "./entities/documentation/Documentation.js";
|
|
52
60
|
import { NATIVE_ACTIVATIONS, NativeActivation, NativeModifier } from "./entities/native/NativeModifier.js";
|
|
53
61
|
import { CanvasSection, NativeSettings } from "./entities/native/NativeSettings.js";
|
|
54
62
|
import { NativeStyleProperty, rnStyleKey } from "./entities/native/NativeStyleProperty.js";
|
|
55
|
-
import { TimingValue, Transition, TransitionSegment, isTransition, renderTransition, transition } from "./entities/system/transition.js";
|
|
56
|
-
import { ComposedValue, ComposedValueAuthoring, ComposedValueForm, composedValueAuthoring, composedValueFormOf, composedValueForms, composedValueSchemas, isComposedValue, renderComposedValue } from "./entities/system/composed-values.js";
|
|
57
|
-
import { ColorValue, DERIVED_COLOR_SPACE, DerivedColor, Gradient, alpha, darken, isDerivedColor, isGradient, lighten, linearGradient, mix, renderDerivedColor, renderGradient } from "./entities/system/color.js";
|
|
58
63
|
import { NativeToken, nativeTokenValue } from "./entities/native/NativeToken.js";
|
|
59
64
|
import { CANVAS_ROLES, CanvasRole, CanvasRoleName } from "./entities/system/CanvasRole.js";
|
|
60
|
-
import { StyleValue } from "./entities/system/style-bag.js";
|
|
61
|
-
import { RegisteredTokenValues, TOKEN_READERS, TokenGroupReader, TokenReader, TokenReaders, TokenValueEntry, TokenValueRow, TokenValueState, isTokenReader, rootFontSize, spellTokenRead, tokenExists, tokenValueRow, tokenValueRows } from "./entities/system/token-values.js";
|
|
62
|
-
import { OverrideCondition, Token, TokenBody, TokenRefPath, TokenReference, defineOverride, overrideCondition, overrideKey, overrideKeyModifiers, overrideModifiers } from "./entities/system/Token.js";
|
|
63
|
-
import { AsInput, AuthoredComponent, AuthoredProp, ComponentBuilder, ComponentPropsOf, GlyphComponent, LayerElement, LayerMap, PropCondition, PropDecl, PropMap, RegisteredMembers, RenderArgs, StyleRuleInput, defineComponent } from "./entities/system/defineComponent.js";
|
|
64
|
-
import { AuthoredPropBody, Component, ComponentBody, ComponentElementBody, ComponentPropBody, ComponentReference, ComponentStyleBody, ElementVisibility, ElementVisibilityInput, ExtendedComponentRef, ProjectedVisibility, VariantValueBody, VariantValues, blankComponentBody, canonicalWhen, forwardedNames, layerRef, ownValues, ownsItsValues, valueRef } from "./entities/system/Component.js";
|
|
65
65
|
import { Composite } from "./entities/system/Composite.js";
|
|
66
66
|
import { ComponentModuleSource, ComponentRegistryImport, ComponentRegistryImportBinding, componentModuleFilePaths, componentModuleKey, componentModuleSource, componentRegistryImports } from "./entities/system/component-module.js";
|
|
67
67
|
import { Device } from "./entities/system/Device.js";
|
|
@@ -104,4 +104,4 @@ import { SpecNode, validateSpec } from "./framework/validate-spec.js";
|
|
|
104
104
|
import { valueLeavesOf, valueSchemaOf } from "./framework/value-domain.js";
|
|
105
105
|
import { views } from "./framework/views-facade.js";
|
|
106
106
|
import { RN_STYLE_KEYS } from "./react-native/style-keys.generated.js";
|
|
107
|
-
export { AI_LANES, ANATOMY_MARKER, AiChat, AiFlow, type AiFlowOrigin, AiGeneration, type AiLane, AiMessage, type AiMultiAgentMode, type AnatomyIssue, type AnatomyIssueKind, type AnatomyReport, type AnySystemConfig, type AsInput, type AttachedSources, type Authored, type AuthoredComponent, type AuthoredProp, type AuthoredPropBody, type AuthoringSignatureOptions, BUILD_DEFAULTS, type BreakOutcome, type BreakPlan, type BreakPlanInput, type BreakPlanRow, type BreakReach, BuildSection, CANVAS_ROLES, CONFIG_OPERATION_KIND, CSS_DEFAULTS, CSS_PROPERTY_NAMES, CSS_WIDE_KEYWORDS, CURRENT_SCHEMA_VERSION, Canvas, CanvasConfig, CanvasRole, type CanvasRoleName, CanvasSection, type CaptureToSpecOptions, type CaptureToSpecResult, type CapturedChild, type CapturedElement, CapturedNode, type CapturedNodeJson, type Spec as CapturedSpec, type SpecElement as CapturedSpecElement, type CapturedText, type Cell, type CellSlot, type Change, type ChangeHook, type ChangeTarget, type ChildrenPolicy, type ClassGrammar, type Collection, type ColorValue, Component, type ComponentBody, type ComponentBuilder, type ComponentContractOf, type ComponentElementBody, type ComponentModuleSource, type ComponentPropBody, type ComponentPropsOf, type ComponentReference, type ComponentRegistryImport, type ComponentRegistryImportBinding, type ComponentRuleClass, type ComponentSpec, type ComponentSpecs, type ComponentStyleBody, type ComposedValue, type ComposedValueAuthoring, type ComposedValueForm, Composite, type ComputedFields, type ComputedFunctions, type ComputedInput, type ComputedMap, type ComputedValue, Config, type ConfigClass, type ConfigEdit, ConfigFormatError, type ConfigInstance, type ConfigIssue, type ConfigIssueCode, type ConfigKind, type ConfigOp, ConfigRejection, ConfigSession, type ConfigSessionOptions, type ConfigSink, type ConfigSource, type CopyPlan, type CopyPlanInput, type CopyPlanRow, type CreateInput, type CssGrammar, type CssPrefix, type CssPropertyEntry, CssSection, DERIVED_COLOR_SPACE, DERIVED_MUTATIONS, type DanglingDirective, type DanglingLocalRef, type DanglingRef, type DeclaredRuntimeModule, type DeletePlan, type DeriveMembers, type DerivedColor, type DerivedEntityClass, type DerivedOp, Device, type DiffOptions, Documentation, DocumentationLibrary, type DomLikeElement, type DraftSource, ENTITY_PATH_MESSAGE, EXPORT_MEMBER, type Edition, type ElementVisibility, type ElementVisibilityInput, Entity, type EntityAddress, type EntityChange, type EntityClass, type EntityKind, type EntityMap, type ExpandOptions, type ExpansionResult, type ExtendedComponentRef, type ExtendedRef, type FieldsSchema, File, Font, FontFile, type ForwardClaims, GROUP, GUIDANCE_LANES, GlobalStyle, type GlyphComponent, type GlyphSource, type GoverningCondition, type Gradient, type GroupBody, Guidance, type GuidanceLane, type GuidanceScope, type GuidanceSegment, GuidanceStyle, type GuidanceStyleBody, type HasSnapshot, type HydrationOptions, ICON_METADATA_FORMATS, Icon, type IconAnswer, type IconGlyph, type IconHook, type IconLibrary, type IconMemberMetadata, type IconMetadataAdapter, type IconMetadataDeclaration, type IconMetadataFile, type IconMetadataFormat, type IconTool, type IconVariantAs, type IdentifiedOp, type InferredRename, type Instance, type InstanceSlot, type InstanceSpec, type ItemOf, type KindSignature, type KindSlice, LINK_SLUG, LINK_SLUG_MESSAGE, type LayerElement, type LayerMap, type LayerStyleOptions, type LeafAddress, type LinkArrival, type LinkDeclaration, type LinkPaths, type LinkPlan, type LinkPlanInput, LinkedSystem, type LinkedSystemResolver, type LinkedSystemState, type ListOptions, type LiveConfig, type LocalOverlay, MINTED, MODIFIER_CATEGORIES, type MisdeclaredOverlay, Modifier, type ModifierCategory, type ModifierGroupMeta, Motion, NATIVE_ACTIVATIONS, type NativeActivation, NativeModifier, NativeSettings, NativeStyleProperty, NativeToken, Node, type OpHandler, type OpInput, Operation, type OverlayVerb, type OverrideCondition, type OwnedRecords, PLAYGROUND_DEFAULTS, Package, Page, type Patch, type PathOf, type PinDirective, type PinOptions, type PinOptionsField, type Plan, type PlanImpact, type PlanOp, PlaygroundSection, type PreviewElement, type PreviewMatrix, type ProjectedVisibility, type PropCondition, type PropDecl, type PropDeclaration, type PropMap, RN_STYLE_KEYS, ReactNativeSystem, type ReactNativeSystemConfig, type RebaseConflict, type RebaseOrigin, type RebaseResult, type RecordedSource, type RedundantQualifier, type Ref, type RefGraph, type RefGraphEntry, type RefIndex, type RefIndexChange, type RefMember, type RefTarget, type RegisteredComponentContracts, type RegisteredEntities, type RegisteredMembers, type RegisteredModifiers, type RegisteredPaths, type RegisteredStyleProps, type RegisteredTokenValues, type RenamePlan, type RenderArgs, type RenderElement, type RenderSpec, type RenderedNode, type RenderedTarget, type RepeatRow, type RepeatSpec, type ResolveContext, type ResolveValueTypeInput, type ResolvedSource, type RootFontSize, SCRIPT_EXTENSIONS, SERIALIZED_CONFIG_VERSION, SIZE_TOLERANCE_PX, STYLE_PROPERTIES, STYLE_PROP_VALUE_FORMS, STYLE_PROP_VALUE_LEAVES, type SchemaEntry, type SchemaMigration, SchemaVersionTooNew, type SerializedConfig, type SerializedSourceAnswer, Settings, type SignatureOptions, type SkippedOp, type Slot, type SlotCell, type SlotTarget, Snapshot, type Source, type SourceAnswer, type SourceChange, type SourceMap, type SourceResolution, type SourceResolutionSchemas, type SourceResolver, type SourceRowState, type SourceState, type SourceUnavailable, type SourcesBySlug, type SourcesOf, type SpecNode, type SplitStyleProps, type StampedPatch, type StoredConfig, type StoredPreviewCondition, type StylePropEntry, type StylePropLeaf, type StylePropValue, type StylePropValueCtx, type StylePropValueKind, StyleProperty, type StylePropertyItem, type StyleRuleInput, type StyleValue, type SubEntityClass, type SubPatch, type SurfaceCompositeProp, type SurfaceProp, type SurfacePropCondition, type SurfacePropKind, type SurfaceScalarProp, type SurfaceSlotProp, type SurfaceStylePropertyProp, type SurfaceVariantProp, System, type SystemConfig, SystemSection, SystemSource, TOKEN_READERS, type TimingValue, Token, type TokenBinding, type TokenBody, type TokenGroupReader, type TokenMatch, type TokenReader, type TokenReaders, type TokenRefPath, type TokenReference, type TokenValueEntry, type TokenValueRow, type TokenValueState, Tool, type Transition, type TransitionSegment, type TraverseOptions, type TreeNode, UNCONDITIONAL_PREVIEW_KEY, UNREACHABLE, type UnadoptedDirective, type UnknownStyleLeaf, type UnlinkPlan, type UnlinkPlanInput, type UnreadableBorrow, type UnstatableCondition, type UpgradedDraft, type UserSchemas, VOID_ELEMENTS, type ValueOf, type ValueType, type VariantValueBody, type VariantValues, type VisibilityOperator, type VisibilityTerm, WEB_ACTIVATIONS, type WalkOptions, type WebActivation, addressOf, alpha, anatomyElementComponent, anatomyIssueKey, anatomyTextProp, applyPathDelta, authoredBag, authoredValue, authoringSignatures, baseOf, blankComponentBody, borrowedGroup, borrowedItem, boundElementType, brandGroup, buildRefGraph, buildRefIndex, canonicalWhen, capturedFromDom, changeOf, changeValueAt, changesOf, childrenPolicy, classGrammar, className, classPrefixOf, classifyOverlay, classifyStylePropValue, collectRefs, componentClassBase, componentCompositeClasses, componentLayerClass, componentModuleFilePaths, componentModuleKey, componentModuleSource, componentMotionClasses, componentPropClasses, componentRegistryImports, componentRuleClasses, componentSpec, composedValueAuthoring, composedValueFormOf, composedValueForms, composedValueSchemas, createCanvasConfig, createSliceMemo, cssPrefixes, cssPropValue, cssProperty, cssPropertyNames, cssValueIssue, cssVar, cssVarRef, danglingDirectives, danglingLocalRefs, danglingSourcedRefs, darken, declaredField, declaredPropDefaults, declaredPropRouting, declaredRuntimeModules, defineComponent, defineConfig, defineDerivedEntity, defineEntity, defineOverride, defineSubEntity, deriveCreateSchema, deriveSpec, deriveUpdateSchema, describeBody, describePatch, detectedWireVersion, diffRendered, editOp, elementFromCaptured, entityRefOf, entryKeyOf, expandComponent, expandSpec, fieldKeys, fontFamilyStack, forceModeAttribute, forceModeAttributeOf, forceModeProp, forceModePropGroup, forceModePropValue, forceModeProps, forceStateAttribute, forwardClaims, forwardedLayers, forwardedNames, forwardsOf, globalStyleName, glyphComponentOf, glyphExportNames, glyphLibrariesOf, glyphPropsOf, glyphSourcesOf, glyphType, graftPreviewElements, guidanceReaches, guidanceScopeOf, guidanceTextOf, iconCategories, iconLibraries, iconLibrary, iconMemberMetadata, iconMetadata, iconMetadataDeclaration, iconMetadataFile, iconMetadataFileJsonSchema, iconMetadataFormat, iconResolver, iconToolAxisOptions, iconToolLibraries, iconToolOf, iconVariantAs, inferredRenames, inputOf, instanceHolding, instanceSpec, intoName, isAuthored, isBinaryAsset, isComposedValue, isConfigFormatError, isConfigRejection, isCssProperty, isDeclaredElementProp, isDerivedColor, isEntityPath, isExtendedRef, isForceModeProp, isGradient, isGroupBody, isIdentifier, isLinkSlug, isMintedRow, isNativeConfig, isPlainObject, isPreviewElement, isRef, isReservedWord, isSystemConfig, isTokenReader, isTransition, kebabComponent, keyedPreviewConditions, kindOf, kindsOf, layerPropRoutes, layerRef, layerRoutedProps, layerStyles, layerTextProp, leafAddresses, leafVerb, leavesOfStylePropValue, librariesBoundBy, libraryHolding, lighten, linearGradient, liveStateProps, matchEntities, matchTokens, memberFromLeaf, memberLeaves, memberOf, memberRef, memberVariantOptions, memoryConfigSource, misdeclaredOverlays, mix, modeAxes, modifierAxes, modifierAxis, modifierCategory, modifierGroupFields, modifierInvariants, modifierLeaf, modifierUtilitiesUsed, motionClassName, nameIconsInTree, namedFields, nativeTokenValue, negatedCssValue, normalizeName, normalizeStyleValue, opOf, opVerb, opacityPercentage, opsForKind, orRef, overlayVerb, overrideCondition, overrideKey, overrideKeyModifiers, overrideModifiers, ownValues, ownerOf, ownsItsValues, packageKey, packageName, parseRootFontSize, partsOf, pathDelta, pathOf, pathSegments, placedGlyphElement, planBreak, planCopy, planLink, planUnlink, previewConditionalProps, previewConditions, previewDefaults, previewMatrix, previewSpec, propApplies, propInto, propOwner, propRegistryRef, propValueDomain, propValueFromAxis, propsIntoLayer, readStatePointer, redundantQualifiers, ref, refGraphOf, refLeaf, refListOf, refSchema, refTo, registerSchemaMigrations, renderComposedValue, renderDerivedColor, renderGradient, renderSignature, renderStyleValue, renderTransition, renderedElement, renderedSignatureOf, renderedTarget, resolutionSchema, resolveComponentProps, resolveFieldValue, resolveIconLibraries, resolveInputDir, resolveOutDir, resolveRegistryDir, resolveTokenValue, resolveTokenValueUnder, resolveValue, resolveValueType, resolveVisibility, resolvedSource, rewriteRefNamespace, rewriteRefSource, rewriteRefs, rnStyleKey, rootFontSize, rootLayerOf, routeOf, routedBag, routedProp, routedPropIn, routesContent, ruleApplies, ruleCondition, runChangeHooks, schemaVersionOf, searchEntities, searchTokens, setAtPath, signatureOf, slotTargetsOf, snapshotHtml, sniffValueType, sourceEntries, sourceOf, sourceOfGroup, sourceOfItem, sourceRowStates, sourceSlugFor, sourceUnavailable, sourceUnreachable, sourceVarPrefix, specFromCapture, specToNodePatches, specWithResolvedVisibility, spellTokenRead, splitRef, splitStyleProps, stamp, statePointerProp, storedPreview, styleAliasesOf, styleDeclarations, stylePropClassBase, stylePropClassName, stylePropClasses, stylePropEntries, stylePropLeafForToken, stylePropNegates, stylePropTokenGroup, stylePropTokenPath, stylePropTokenValues, stylePropValueFormOf, stylePropValueFromLeaf, stylePropValueLeaves, stylePropValueSchema, stylePropValues, stylePropertiesWriting, stylePropertyAccepts, stylePropertyFor, stylePropertyPathFor, styleRuleMotionClasses, suggestLinkSlug, summarizeChanges, surfaceProp, surfaceProps, tablerExportName, toCssPropertyName, tokenBinding, tokenExists, tokenValueRow, tokenValueRows, touchedFields, transition, unadoptedDirectives, unconditionalPreviewProps, unknownStyleLeaves, unreadableBorrows, unstatableConditions, updateRefIndex, upgradeDraftEntries, upgradePatch, upgradeSerializedConfig, validateComponentProps, validateSpec, valueAt, valueForwardsOf, valueLeavesOf, valueRef, valueSchemaOf, varPrefixOf, views, visibilityStateProps, visibilityTerms, withoutTruthyTerm, wrappedElementKey };
|
|
107
|
+
export { AI_LANES, ANATOMY_MARKER, AiChat, AiFlow, type AiFlowOrigin, AiGeneration, type AiLane, AiMessage, type AiMultiAgentMode, type AnatomyIssue, type AnatomyIssueKind, type AnatomyReport, type AnySystemConfig, type AsInput, type AttachedSources, type Authored, type AuthoredComponent, type AuthoredProp, type AuthoredPropBody, type AuthoringSignatureOptions, BUILD_DEFAULTS, type BreakOutcome, type BreakPlan, type BreakPlanInput, type BreakPlanRow, type BreakReach, BuildSection, CANVAS_ROLES, CONFIG_OPERATION_KIND, CSS_DEFAULTS, CSS_PROPERTY_NAMES, CSS_WIDE_KEYWORDS, CURRENT_SCHEMA_VERSION, Canvas, CanvasConfig, CanvasRole, type CanvasRoleName, CanvasSection, type CaptureToSpecOptions, type CaptureToSpecResult, type CapturedChild, type CapturedElement, CapturedNode, type CapturedNodeJson, type Spec as CapturedSpec, type SpecElement as CapturedSpecElement, type CapturedText, type Cell, type CellSlot, type Change, type ChangeHook, type ChangeTarget, type ChildrenPolicy, type ClassGrammar, type CodeSlot, type Collection, type ColorValue, Component, type ComponentBody, type ComponentBuilder, type ComponentContractOf, type ComponentElementBody, type ComponentModuleSource, type ComponentPropBody, type ComponentPropsOf, type ComponentReference, type ComponentRegistryImport, type ComponentRegistryImportBinding, type ComponentRuleClass, type ComponentSpec, type ComponentSpecs, type ComponentStyleBody, type ComposedValue, type ComposedValueAuthoring, type ComposedValueForm, Composite, type ComputedFields, type ComputedFunctions, type ComputedInput, type ComputedMap, type ComputedValue, Config, type ConfigClass, type ConfigEdit, ConfigFormatError, type ConfigInstance, type ConfigIssue, type ConfigIssueCode, type ConfigKind, type ConfigOp, ConfigRejection, ConfigSession, type ConfigSessionOptions, type ConfigSink, type ConfigSource, type CopyPlan, type CopyPlanInput, type CopyPlanRow, type CreateInput, type CssGrammar, type CssPrefix, type CssPropertyEntry, CssSection, DERIVED_COLOR_SPACE, DERIVED_MUTATIONS, type DanglingDirective, type DanglingLocalRef, type DanglingRef, type DeclaredRuntimeModule, type DeletePlan, type DeriveMembers, type DerivedColor, type DerivedEntityClass, type DerivedOp, Device, type DiffOptions, Documentation, DocumentationLibrary, type DomLikeElement, type DraftSource, ENTITY_PATH_MESSAGE, EXPORT_MEMBER, type Edition, type ElementVisibility, type ElementVisibilityInput, Entity, type EntityAddress, type EntityChange, type EntityClass, type EntityKind, type EntityMap, type ExpandOptions, type ExpansionResult, type ExtendedComponentRef, type ExtendedRef, type FieldsSchema, File, Font, FontFile, type ForwardClaims, GROUP, GUIDANCE_LANES, GlobalStyle, type GlyphComponent, type GlyphSource, type GlyphValue, type GoverningCondition, type Gradient, type GroupBody, Guidance, type GuidanceLane, type GuidanceScope, type GuidanceSegment, GuidanceStyle, type GuidanceStyleBody, type HasSnapshot, type HydrationOptions, ICON_METADATA_FORMATS, Icon, type IconAnswer, type IconGlyph, type IconHook, type IconLibrary, type IconMemberMetadata, type IconMetadataAdapter, type IconMetadataDeclaration, type IconMetadataFile, type IconMetadataFormat, type IconTool, type IconVariantAs, type IdentifiedOp, type InferredRename, type Instance, type InstanceSlot, type InstanceSpec, type ItemOf, type KindSignature, type KindSlice, LINK_SLUG, LINK_SLUG_MESSAGE, type LayerElement, type LayerMap, type LayerStyleOptions, type LeafAddress, type LinkArrival, type LinkDeclaration, type LinkPaths, type LinkPlan, type LinkPlanInput, LinkedSystem, type LinkedSystemResolver, type LinkedSystemState, type ListOptions, type LiveConfig, type LocalOverlay, MINTED, MODIFIER_CATEGORIES, type MisdeclaredOverlay, Modifier, type ModifierCategory, type ModifierGroupMeta, Motion, NATIVE_ACTIVATIONS, type NativeActivation, NativeModifier, NativeSettings, NativeStyleProperty, NativeToken, Node, type OpHandler, type OpInput, Operation, type OverlayVerb, type OverrideCondition, type OwnedRecords, PLAYGROUND_DEFAULTS, Package, Page, type Patch, type PathOf, type PinDirective, type PinOptions, type PinOptionsField, type Plan, type PlanImpact, type PlanOp, PlaygroundSection, type PreviewElement, type PreviewMatrix, type ProjectedVisibility, type PropCondition, type PropDecl, type PropDeclaration, type PropMap, RN_STYLE_KEYS, ReactNativeSystem, type ReactNativeSystemConfig, type RebaseConflict, type RebaseOrigin, type RebaseResult, type RecordedSource, type RedundantQualifier, type Ref, type RefGraph, type RefGraphEntry, type RefIndex, type RefIndexChange, type RefMember, type RefTarget, type RegisteredComponentContracts, type RegisteredEntities, type RegisteredMembers, type RegisteredModifiers, type RegisteredPaths, type RegisteredStyleProps, type RegisteredTokenValues, type RenamePlan, type RenderArgs, type RenderElement, type RenderSpec, type RenderedNode, type RenderedTarget, type RepeatRow, type RepeatSpec, type ResolveContext, type ResolveValueTypeInput, type ResolvedSource, type RootFontSize, SCRIPT_EXTENSIONS, SERIALIZED_CONFIG_VERSION, SIZE_TOLERANCE_PX, SLOT_CODE_FORMS, STYLE_PROPERTIES, STYLE_PROP_VALUE_FORMS, STYLE_PROP_VALUE_LEAVES, type SchemaEntry, type SchemaMigration, SchemaVersionTooNew, type SerializedConfig, type SerializedSourceAnswer, Settings, type SignatureOptions, type SkippedOp, type Slot, type SlotCell, type SlotCodeForm, type SlotDecl, type SlotTarget, Snapshot, type Source, type SourceAnswer, type SourceChange, type SourceMap, type SourceResolution, type SourceResolutionSchemas, type SourceResolver, type SourceRowState, type SourceState, type SourceUnavailable, type SourcesBySlug, type SourcesOf, type SpecNode, type SplitStyleProps, type StampedPatch, type StoredConfig, type StoredPreviewCondition, type StylePropEntry, type StylePropLeaf, type StylePropValue, type StylePropValueCtx, type StylePropValueKind, StyleProperty, type StylePropertyItem, type StyleRuleInput, type StyleValue, type SubEntityClass, type SubPatch, type SurfaceCompositeProp, type SurfaceProp, type SurfacePropCondition, type SurfacePropKind, type SurfaceScalarProp, type SurfaceSlotProp, type SurfaceStylePropertyProp, type SurfaceVariantProp, System, type SystemConfig, SystemSection, SystemSource, TOKEN_READERS, type TimingValue, Token, type TokenBinding, type TokenBody, type TokenGroupReader, type TokenMatch, type TokenReader, type TokenReaders, type TokenRefPath, type TokenReference, type TokenValueEntry, type TokenValueRow, type TokenValueState, Tool, type Transition, type TransitionSegment, type TraverseOptions, type TreeNode, UNCONDITIONAL_PREVIEW_KEY, UNREACHABLE, type UnadoptedDirective, type UnknownStyleLeaf, type UnlinkPlan, type UnlinkPlanInput, type UnreadableBorrow, type UnstatableCondition, type UpgradedDraft, type UserSchemas, VOID_ELEMENTS, type ValueOf, type ValueType, type VariantValueBody, type VariantValues, type VisibilityOperator, type VisibilityTerm, WEB_ACTIVATIONS, type WalkOptions, type WebActivation, addressOf, alpha, anatomyElementComponent, anatomyIssueKey, anatomyTextProp, applyPathDelta, authoredBag, authoredValue, authoringSignatures, baseOf, blankComponentBody, borrowedGroup, borrowedItem, boundElementType, brandGroup, buildRefGraph, buildRefIndex, canonicalWhen, capturedFromDom, changeOf, changeValueAt, changesOf, childrenPolicy, classGrammar, className, classPrefixOf, classifyOverlay, classifyStylePropValue, codeSlotsOf, collectRefs, componentClassBase, componentCompositeClasses, componentLayerClass, componentModuleFilePaths, componentModuleKey, componentModuleSource, componentMotionClasses, componentPropClasses, componentRegistryImports, componentRuleClasses, componentSpec, composedValueAuthoring, composedValueFormOf, composedValueForms, composedValueSchemas, createCanvasConfig, createSliceMemo, cssPrefixes, cssPropValue, cssProperty, cssPropertyNames, cssValueIssue, cssVar, cssVarRef, danglingDirectives, danglingLocalRefs, danglingSourcedRefs, darken, declaredField, declaredPropDefaults, declaredPropRouting, declaredRuntimeModules, defineComponent, defineConfig, defineDerivedEntity, defineEntity, defineOverride, defineSubEntity, deriveCreateSchema, deriveSpec, deriveUpdateSchema, describeBody, describePatch, detectedWireVersion, diffRendered, editOp, elementFromCaptured, entityRefOf, entryKeyOf, expandComponent, expandSpec, fieldKeys, fontFamilyStack, forceModeAttribute, forceModeAttributeOf, forceModeProp, forceModePropGroup, forceModePropValue, forceModeProps, forceStateAttribute, forwardClaims, forwardedLayers, forwardedNames, forwardsOf, globalStyleName, glyphComponentOf, glyphExportNames, glyphLibrariesOf, glyphPropsOf, glyphSourcesOf, glyphType, graftPreviewElements, guidanceReaches, guidanceScopeOf, guidanceTextOf, iconCategories, iconLibraries, iconLibrary, iconMemberMetadata, iconMetadata, iconMetadataDeclaration, iconMetadataFile, iconMetadataFileJsonSchema, iconMetadataFormat, iconResolver, iconToolAxisOptions, iconToolLibraries, iconToolOf, iconVariantAs, inferredRenames, inputOf, instanceHolding, instanceSpec, intoName, isAuthored, isBinaryAsset, isComposedValue, isConfigFormatError, isConfigRejection, isCssProperty, isDeclaredElementProp, isDerivedColor, isEntityPath, isExtendedRef, isForceModeProp, isGradient, isGroupBody, isIdentifier, isLinkSlug, isMintedRow, isNativeConfig, isPlainObject, isPreviewElement, isRef, isReservedWord, isSystemConfig, isTokenReader, isTransition, isValueSlot, kebabComponent, keyedPreviewConditions, kindOf, kindsOf, layerPropRoutes, layerRef, layerRoutedProps, layerStyles, layerTextProp, leafAddresses, leafVerb, leavesOfStylePropValue, librariesBoundBy, libraryHolding, lighten, linearGradient, liveStateProps, matchEntities, matchTokens, memberFromLeaf, memberLeaves, memberOf, memberRef, memberVariantOptions, memoryConfigSource, misdeclaredOverlays, mix, modeAxes, modifierAxes, modifierAxis, modifierCategory, modifierGroupFields, modifierInvariants, modifierLeaf, modifierUtilitiesUsed, motionClassName, nameIconsInTree, namedFields, nativeTokenValue, negatedCssValue, normalizeName, normalizeStyleValue, opOf, opVerb, opacityPercentage, opsForKind, orRef, overlayVerb, overrideCondition, overrideKey, overrideKeyModifiers, overrideModifiers, ownValues, ownerOf, ownsItsValues, packageKey, packageName, parseRootFontSize, partsOf, pathDelta, pathOf, pathSegments, placedGlyphElement, planBreak, planCopy, planLink, planUnlink, previewConditionalProps, previewConditions, previewDefaults, previewMatrix, previewSpec, propApplies, propInto, propOwner, propRegistryRef, propValueDomain, propValueFromAxis, propsIntoLayer, readStatePointer, redundantQualifiers, ref, refGraphOf, refLeaf, refListOf, refSchema, refTo, registerSchemaMigrations, renderComposedValue, renderDerivedColor, renderGradient, renderSignature, renderStyleValue, renderTransition, renderedElement, renderedSignatureOf, renderedTarget, resolutionSchema, resolveComponentProps, resolveFieldValue, resolveIconLibraries, resolveInputDir, resolveOutDir, resolveRegistryDir, resolveTokenValue, resolveTokenValueUnder, resolveValue, resolveValueType, resolveVisibility, resolvedSource, rewriteRefNamespace, rewriteRefSource, rewriteRefs, rnStyleKey, rootFontSize, rootLayerOf, routeOf, routedBag, routedProp, routedPropIn, routesContent, ruleApplies, ruleCondition, runChangeHooks, schemaVersionOf, searchEntities, searchTokens, setAtPath, signatureOf, slotCodeForms, slotTargetsOf, snapshotHtml, sniffValueType, sourceEntries, sourceOf, sourceOfGroup, sourceOfItem, sourceRowStates, sourceSlugFor, sourceUnavailable, sourceUnreachable, sourceVarPrefix, specFromCapture, specToNodePatches, specWithResolvedVisibility, spellTokenRead, splitRef, splitStyleProps, stamp, standsInForCode, statePointerProp, storedPreview, styleAliasesOf, styleDeclarations, stylePropClassBase, stylePropClassName, stylePropClasses, stylePropEntries, stylePropLeafForToken, stylePropNegates, stylePropTokenGroup, stylePropTokenPath, stylePropTokenValues, stylePropValueFormOf, stylePropValueFromLeaf, stylePropValueLeaves, stylePropValueSchema, stylePropValues, stylePropertiesWriting, stylePropertyAccepts, stylePropertyFor, stylePropertyPathFor, styleRuleMotionClasses, suggestLinkSlug, summarizeChanges, surfaceProp, surfaceProps, tablerExportName, toCssPropertyName, tokenBinding, tokenExists, tokenValueRow, tokenValueRows, touchedFields, transition, unadoptedDirectives, unconditionalPreviewProps, unknownStyleLeaves, unreadableBorrows, unstatableConditions, updateRefIndex, upgradeDraftEntries, upgradePatch, upgradeSerializedConfig, validateComponentProps, validateSpec, valueAt, valueForwardsOf, valueLeavesOf, valueRef, valueSchemaOf, varPrefixOf, views, visibilityStateProps, visibilityTerms, withoutTruthyTerm, wrappedElementKey };
|