@knapsack/types 4.93.0--canary.7735.5465742.0 → 4.93.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.
@@ -229,16 +229,20 @@ export type KsSlotInfo = {
229
229
  /**
230
230
  * Filters applied to a renderer's inferred-spec output before the JSON-schema
231
231
  * form is built. All toggles default to `false` so existing workspaces see no
232
- * behavior change. Per-template overrides live on `KsTemplateSpec.inferSpecExtras`.
232
+ * behavior change. Per-template overrides live on `KsSpecMeta.inferSpecExtras`.
233
233
  *
234
234
  * Stored on workspace settings under `db.settings.renderers.<rendererId>.inferSpec`.
235
235
  * Only React is wired up in v1.
236
236
  */
237
237
  export type KnapsackInferSpecFilters = {
238
238
  /**
239
- * Drop props inherited from `HTMLAttributes<…>` / `DOMAttributes` (the 100+
240
- * DOM attribute deluge). Detected by a well-known name list — see
241
- * `HTML_ATTRIBUTE_PROP_NAMES` in the React renderer.
239
+ * Drop props inherited from React DOM type interfaces (`HTMLAttributes`,
240
+ * `ButtonHTMLAttributes`, `DOMAttributes`, `AriaAttributes`, `SVGAttributes`,
241
+ * etc.) the 200+ DOM attribute deluge that pollutes the Spec Form when a
242
+ * component extends one of them. Detected via `declaredIn.isReactDomInterface`
243
+ * on each prop's `SymbolInfo` (TS-symbol origin check, not a name list), so
244
+ * props the author redeclared on their own interface survive even when their
245
+ * names collide with HTML attribute names (e.g. `size`, `color`).
242
246
  */
243
247
  removeHtmlAttributes?: boolean;
244
248
  removeClassName?: boolean;
@@ -248,6 +252,31 @@ export type KnapsackInferSpecFilters = {
248
252
  /** Drop props matching `on[A-Z]…` (event handlers like `onClick`). */
249
253
  removeEventHandlers?: boolean;
250
254
  };
255
+ /**
256
+ * Single source of truth for which keys exist on `KnapsackInferSpecFilters`.
257
+ * Decoder / settings UI / defaults all read from this so adding a new filter is
258
+ * a one-line type extension instead of a hunt across the codebase.
259
+ */
260
+ export declare const ALL_INFER_SPEC_FILTER_KEYS: readonly ["removeHtmlAttributes", "removeClassName", "removeStyle", "removeAria", "removeEventHandlers"];
261
+ export type InferSpecFilterKey = (typeof ALL_INFER_SPEC_FILTER_KEYS)[number];
262
+ /**
263
+ * All filters disabled. Use to seed form state without hard-coding the key set.
264
+ */
265
+ export declare const DEFAULT_INFER_SPEC_FILTERS: Required<KnapsackInferSpecFilters>;
266
+ /**
267
+ * Encode workspace filters as a comma-separated list of enabled keys for the
268
+ * `/api/v2/inspect` query string. Returns `undefined` when no filter config
269
+ * exists; returns `''` when the config exists but no keys are enabled —
270
+ * distinct from `undefined`, which signals the app-client to fall back to its
271
+ * own local settings.
272
+ */
273
+ export declare function encodeInferSpecFilters(filters: KnapsackInferSpecFilters | undefined): string | undefined;
274
+ /**
275
+ * Decode the comma-separated wire format back to a fully-populated filter
276
+ * object (unspecified keys → `false`). An empty string means "all off
277
+ * explicitly", which the inspect handler treats as "caller is authoritative".
278
+ */
279
+ export declare function decodeInferSpecFilters(wire: string): Required<KnapsackInferSpecFilters>;
251
280
  /**
252
281
  * Supersedes `schema`
253
282
  */
@@ -310,6 +339,10 @@ export type KsSpecMeta = {
310
339
  * silently dropped by the renderer; the template form surfaces a warning.
311
340
  * Lives on `specMeta` (not `spec`) because `spec` is replaced with
312
341
  * `{ isInferred: true }` when inference is on, which would discard this.
342
+ *
343
+ * Mutable to match Immer's `WritableDraft` requirements (this whole object
344
+ * gets drafted in xstate reducers, alongside `propOrder`/`slotOrder`).
345
+ * Consumers should treat the value as read-only at the call site.
313
346
  */
314
347
  inferSpecExtras?: string[];
315
348
  };
@@ -321,7 +354,7 @@ export type KsSpecMeta = {
321
354
  */
322
355
  export type KnapsackInspectOptions = {
323
356
  inferSpecFilters?: KnapsackInferSpecFilters;
324
- inferSpecExtras?: string[];
357
+ inferSpecExtras?: readonly string[];
325
358
  };
326
359
  export interface KnapsackPatternTemplate {
327
360
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../src/app-client-data/patterns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAEpF,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,KAAK,aAAa,GAAG,MAAM,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,eAAe,CAAC;IACtB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,mBAAmB,GACnB,wBAAwB,CAAC;AAE7B;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EACD,UAAU,GACV,YAAY,GACZ,WAAW,GACX,MAAM,GACN,QAAQ,GACR,OAAO,GACP,aAAa,GACb,eAAe,GACf,cAAc,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;KAC3C,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;KACvC,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;KACzC,CAAC;IACF,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;KACzC,CAAC;IACF;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,UAAU,EAAE;QACV,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,KAAK,EAAE;QACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;KACzB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;KACxC,CAAC;IACF;;;OAGG;IACH,YAAY,CAAC,EAAE;QACb,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC;KACjC,CAAC;IACF;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE;QACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAC;KACzC,CAAC;CACH,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE;QACZ,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG;IAChD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,QAAQ,GAAG,wBAAwB,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,wBAAwB,CAAC;AAE/D,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,GACT,IAAI,IAAI,QAAQ,GAAG,wBAAwB,CAE7C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,YAAY,CAE/D;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,cAAc,CACxB,UAAU,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IAC1D;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE;QACN,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IAOH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE;YACV,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;SAC/B,EAAE,CAAC;KACL,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC9C;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;IAC5C,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,CAAC,EAAE;QAAE,UAAU,EAAE,IAAI,CAAA;KAAE,GAAG,cAAc,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;IAChE,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,4EAA4E;IAC5E,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACtB,iFAAiF;IACjF,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,GACpC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,CAE/B;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QACT,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;KAC/B,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACtC;;SAEK;IACL,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;KAC/B,EAAE,CAAC;IACJ,uBAAuB,CAAC,EAAE,MAAM,CAC9B,MAAM,EACN;QACE,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAChB,CACF,CAAC;IACF,iEAAiE;IACjE,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IAEpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,KAAK,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,6BAA6B,EAAE,OAAO,CAAC;IACvC,mBAAmB,CAAC,EAAE;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC,CAAC;KAC9D,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CAAC;KAC/B,CAAC;IACF,SAAS,EAAE,OAAO,CAChB,MAAM,CACJ,UAAU,EACV;QACE,IAAI,EAAE,oBAAoB,CAAC;KAC5B,CACF,CACF,CAAC;CACH,GAAG,sBAAsB,CAAC"}
1
+ {"version":3,"file":"patterns.d.ts","sourceRoot":"","sources":["../../src/app-client-data/patterns.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC7D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAClE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4CAA4C,CAAC;AAEpF,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,EAAE,CAAC;CACtB;AAED;;;;;;GAMG;AACH,KAAK,aAAa,GAAG,MAAM,CAAC;AAE5B,MAAM,MAAM,mBAAmB,GAAG;IAChC,IAAI,EAAE,eAAe,CAAC;IACtB;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;IACpB;;OAEG;IACH,MAAM,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC;CAC5B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,oBAAoB,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB,WAAW,GACX,mBAAmB,GACnB,wBAAwB,CAAC;AAE7B;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,CAAC;CAChC,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,KAAK,CAAC,EAAE;QACN,KAAK,EACD,UAAU,GACV,YAAY,GACZ,WAAW,GACX,MAAM,GACN,QAAQ,GACR,OAAO,GACP,aAAa,GACb,eAAe,GACf,cAAc,CAAC;KACpB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,MAAM,CAAC;KAC3C,CAAC;IACF,GAAG,CAAC,EAAE;QACJ,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;KACvC,CAAC;IACF,iBAAiB,CAAC,EAAE;QAClB,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;KACzC,CAAC;IACF,eAAe,CAAC,EAAE;QAChB,KAAK,EAAE,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;KACzC,CAAC;IACF;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,MAAM,EAAE,aAAa,CAAC;IACtB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IACH,mBAAmB,EAAE,MAAM,CAAC;IAC5B;;OAEG;IACH,UAAU,EAAE;QACV,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC;KACjC,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG;IACjC;;OAEG;IACH,KAAK,EAAE;QACL,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;KACzB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,CAAC,QAAQ,EAAE,MAAM,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC;KACxC,CAAC;IACF;;;OAGG;IACH,YAAY,CAAC,EAAE;QACb,CAAC,QAAQ,EAAE,MAAM,GAAG,WAAW,CAAC;KACjC,CAAC;IACF;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE;QACrB,CAAC,QAAQ,EAAE,MAAM,GAAG,mBAAmB,CAAC;KACzC,CAAC;CACH,CAAC;AAEF,KAAK,QAAQ,GAAG;IACd,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6BAA6B;IAC7B,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB,IAAI,EAAE,WAAW,CAAC;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG;IACpC,IAAI,EAAE,UAAU,CAAC;IACjB,YAAY,EAAE;QACZ,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;CACH,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG,QAAQ,GAAG;IAChD,IAAI,EAAE,sBAAsB,CAAC;IAC7B,YAAY,EAAE,YAAY,CAAC;IAC3B,IAAI,EAAE,oBAAoB,CAAC;CAC5B,CAAC;AAEF;;;;;;GAMG;AACH,MAAM,MAAM,IAAI,GAAG,YAAY,GAAG,QAAQ,GAAG,wBAAwB,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,QAAQ,GAAG,wBAAwB,CAAC;AAE/D,MAAM,MAAM,cAAc,GAAG,IAAI,GAAG;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,GACT,IAAI,IAAI,QAAQ,GAAG,wBAAwB,CAE7C;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,QAAQ,CAEvD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,IAAI,YAAY,CAE/D;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACrC;;;;;;;;OAQG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oCAAoC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sEAAsE;IACtE,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,0GAM2B,CAAC;AAEnE,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,0BAA0B,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,wBAAwB,CAMzE,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,wBAAwB,GAAG,SAAS,GAC5C,MAAM,GAAG,SAAS,CAKpB;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,GACX,QAAQ,CAAC,wBAAwB,CAAC,CAUpC;AAED;;GAEG;AACH,MAAM,MAAM,cAAc,CACxB,UAAU,SAAS,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,IAC1D;IACF;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB;;;OAGG;IACH,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,CAAC,EAAE;QACN,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU,CAAC;KAC5B,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB;;OAEG;IAOH,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE;QACV,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE;YACV,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;SAC/B,EAAE,CAAC;KACL,EAAE,CAAC;CACL,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC9C;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;CAC5B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC,gBAAgB,CAAC,EAAE,wBAAwB,CAAC;IAC5C,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CACrC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB;;;;OAIG;IACH,kBAAkB,EAAE,UAAU,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,IAAI,CAAC,EAAE;QAAE,UAAU,EAAE,IAAI,CAAA;KAAE,GAAG,cAAc,CAAC,KAAK,GAAG,SAAS,CAAC,CAAC;IAChE,QAAQ,CAAC,EAAE,UAAU,CAAC;IACtB,4EAA4E;IAC5E,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;IACtB,iFAAiF;IACjF,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;CAC/B;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,uBAAuB,CAAC,MAAM,CAAC,GACpC,IAAI,IAAI,cAAc,CAAC,KAAK,CAAC,CAE/B;AAED,MAAM,MAAM,eAAe,GAAG,IAAI,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE;QACT,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;KAC/B,CAAC;IACF,SAAS,CAAC,EAAE,uBAAuB,EAAE,CAAC;IACtC;;SAEK;IACL,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;KAC/B,EAAE,CAAC;IACJ,uBAAuB,CAAC,EAAE,MAAM,CAC9B,MAAM,EACN;QACE,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,EAAE,MAAM,CAAC;KAChB,CACF,CAAC;IACF,iEAAiE;IACjE,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC;IAEpB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB;;OAEG;IACH,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC;;;OAGG;IACH,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,gBAAgB,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,WAAW,EAAE,CAAC;CAC3B,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,UAAU,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,KAAK,GAAG,UAAU,GAAG,UAAU,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,eAAe,EAAE,OAAO,CAAC;IACzB,mBAAmB,EAAE,OAAO,CAAC;IAC7B,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,mBAAmB,EAAE,OAAO,CAAC;IAC7B,6BAA6B,EAAE,OAAO,CAAC;IACvC,mBAAmB,CAAC,EAAE;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,OAAO,GAAG,OAAO,GAAG,YAAY,CAAC,CAAC;KAC9D,CAAC;CACH;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE;QACR,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,CAAC;KAC/B,CAAC;IACF,SAAS,EAAE,OAAO,CAChB,MAAM,CACJ,UAAU,EACV;QACE,IAAI,EAAE,oBAAoB,CAAC;KAC5B,CACF,CACF,CAAC;CACH,GAAG,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,2 +1,2 @@
1
- 'use strict';var t=require('superstruct'),we=require('color-string'),v4Mini=require('zod/v4-mini'),utils=require('@knapsack/utils'),immer=require('immer'),zod=require('zod'),urls=require('@knapsack/utils/urls');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var t__namespace=/*#__PURE__*/_interopNamespace(t);var we__default=/*#__PURE__*/_interopDefault(we);var Ne=Object.defineProperty;var n=(e,r)=>Ne(e,"name",{value:r,configurable:true});function Ae(e){if(typeof e!="string")return false;try{return !!we__default.default.get(e)}catch{return false}}n(Ae,"isColor");var M=t.define("ColorStringStruct",e=>typeof e=="string"&&Ae(e)),l=t.union([t.type({type:t.literal("value"),colorValue:M}),t.type({type:t.literal("design-token"),tokenName:t.string()})]),gn=t.type({type:t.literal("design-token"),tokenName:t.string()});var kn=["h1","h2","h3","h4","h5","h6"],me=t.object({unit:t.enums(["rem","px"]),value:t.number()}),ye=t.union([t.string(),t.number()]),je=(a=>(a.woff2="woff2",a.woff="woff",a))(je||{}),ze=t.enums(["woff2","woff"]),We=t.type({format:ze,type:t.literal("url"),path:t.string()}),w=t.type({family:t.optional(t.string()),weight:t.optional(t.union([ye,t.size(t.array(ye),2)])),src:t.optional(t.array(We)),style:t.optional(t.string()),display:t.optional(t.enums(["auto","block","swap","fallback","optional"])),variationSettings:t.optional(t.string()),unicodeRange:t.optional(t.string())}),Le=(f=>(f.inherit="As typed",f.capitalize="Capitalize",f.lowercase="Lowercase",f.uppercase="Uppercase",f))(Le||{}),_e=(u=>(u["ultra-condensed"]="Ultra-condensed",u["extra-condensed"]="Extra-condensed",u.condensed="Condensed",u["semi-condensed"]="Semi-condensed",u.normal="Normal",u["semi-expanded"]="Semi-expanded",u.expanded="Expanded",u["extra-expanded"]="Extra-expanded",u["ultra-expanded"]="Ultra-expanded",u))(_e||{}),O=t.type({fontWeight:t.optional(t.union([t.string(),t.number()])),textColor:t.optional(l),hoverColor:t.optional(l),underline:t.optional(t.boolean()),textTransform:t.optional(t.enums(["inherit","capitalize","lowercase","uppercase"])),fontStretch:t.optional(t.enums(["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded"]))}),Ge=t.type({min:me,max:t.optional(me)}),s=t.type({fontSize:t.optional(Ge),lineHeight:t.optional(t.union([t.string(),t.number()])),fontWeight:t.optional(t.union([t.string(),t.number()])),letterSpacing:t.optional(t.string()),fontFamily:t.optional(t.string()),textColor:t.optional(l),textTransform:t.optional(t.enums(["inherit","capitalize","lowercase","uppercase"])),fontStretch:t.optional(t.enums(["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded"]))}),m={},Te={},Sn={pageTitle:m,pageDescription:m,headingLarge:m,headingMedium:m,headingSmall:m,bodyText:m,link:Te},bn={pageTitle:m,pageDescription:m,headingXLarge:m,headingLarge:m,headingMedium:m,headingSmall:m,headingXSmall:m,bodyText:m,link:Te};var R=t.union([s,t.type({accentColor:t.optional(l)})]),W=t.union([R,t.type({hoverColor:t.optional(l),backgroundColor:t.optional(l)})]),L=t.union([R,t.type({backgroundColor:t.optional(l)})]),$e={},Ye={},He={},In={primaryNav:He,secondaryNav:Ye,tabs:$e};var Nn=t.object({version:t.literal(1),oldSillySidebarBgColor:M}),wn=t.object({version:t.literal(2),anotherSillySidebarBgColor:M}),On=t.object({version:t.literal(3),sidebarBgColor:M}),Bn=t.object({version:t.literal(4),primaryColor:l,darkColor:l,lightColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true))}),An=t.object({version:t.literal(5),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true))}),Kn=t.object({version:t.literal(6),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true)),appearance:t.type({customFonts:t.optional(t.array(w)),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Fn=t.object({version:t.literal(7),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true)),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(R)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Mn=t.object({version:t.literal(8),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(R)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Un=t.object({version:t.literal(9),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(R)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),qe=t.object({version:t.literal(10),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(R)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingXLarge:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),headingXSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),jn=qe;var _n=["large","medium","small"],Gn=["large","medium","small"];var Yn={default:"Default",android:"Android",cssVar:"CSS Var",json:"JSON",less:"Less",scss:"SCSS",swift:"Swift"};var qn=["solid","dashed","dotted","double","groove","ridge","outset","inset"];function Je(e){return typeof e!="string"?false:e.split("{").length-1===1&&e.startsWith("{")&&e.endsWith("}")}n(Je,"isTokenReference");function x(e){return typeof e=="string"&&e.includes("{")}n(x,"hasTokenReferences");function Xe(e){return !Je(e)}n(Xe,"isNotTokenReference");var c=t__namespace.define("Token Reference",e=>typeof e!="string"?false:Xe(e)?"Must start and end with curly braces":true),Ze={border:"border",shadow:"shadow",transition:"transition"},Qe=Object.values(Ze),et={string:"string",number:"number",boolean:"boolean",color:"color",dimension:"dimension",duration:"duration",fontWeight:"fontWeight",strokeStyle:"strokeStyle",cubicBezier:"cubicBezier"},tt=Object.values(et);function q(e){return Qe.includes(e)}n(q,"isTokenTypeComposite");function Se(e){return tt.includes(e)}n(Se,"isTokenTypeSingular");utils.expectType([{inset:false,color:"#000",offsetX:"0px",offsetY:"0px",spread:"0px",blur:"0px"},{color:"#000",offsetX:"0px",offsetY:"0px",spread:"0px",blur:"0px",inset:true}]);var d=t__namespace.type({id:t__namespace.string(),description:t__namespace.optional(t__namespace.string()),references:t__namespace.optional(t__namespace.array(t__namespace.array(t__namespace.string()))),tokenConfig:t__namespace.optional(t__namespace.type({purpose:t__namespace.optional(t__namespace.string())}))});utils.expectType([{type:"duration",value:"1ms",originalValue:"1ms",id:"1",kind:"static"},{type:"duration",value:"1ms",kind:"ref",id:"1",originalValue:"{a.b}",referencedTokenId:"1"},{type:"duration",value:"1ms",originalValue:"1ms",id:"1",kind:"ref"},{type:"duration",value:"1ms",kind:"static",id:"1",originalValue:"{a.b}",referencedTokenId:"1"},{type:"color",value:"#000",kind:"static",id:"1",originalValue:"#000"},{type:"color",value:"#000",kind:"ref",id:"1",originalValue:"{c.b}",referencedTokenId:"c.b"},{type:"cubicBezier",kind:"static",value:[0,0,0,1],originalValue:[0,0,0,1],id:"1"}]);function eo(e){return q(e.type)}n(eo,"isTokenDataComposite");utils.expectType([{type:"border",kind:"static",id:"1",value:{color:"#000",style:"solid",width:"1px"},originalValue:{color:"#000",style:"solid",width:"1px"}},{type:"border",kind:"ref",referencedTokenId:"a.b",id:"1",value:{color:"red",style:"dashed",width:"2px"},originalValue:"{a.b}"},{type:"shadow",value:{color:"#000",offsetX:"1px",offsetY:"1px",blur:"1px",spread:"1px",inset:false},originalValue:{color:"#000",offsetX:"{a.a}",offsetY:"1px",blur:"1px",spread:"1px",inset:false},id:"1",kind:"static"},{type:"shadow",kind:"ref",referencedTokenId:"a.b",value:{inset:true,color:"red",offsetX:"1px",blur:"2px",offsetY:"3px",spread:"4px"},originalValue:"{a.b}",id:"1"},{type:"transition",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:"{a.b}",kind:"ref",referencedTokenId:"a.b",id:"1"},{type:"transition",kind:"static",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:{duration:"100ms",delay:"{a.c}",timingFunction:"{a.c}"},id:"1"},{type:"transition",kind:"static",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},id:"1"}]);function ot(e){return typeof e=="string"&&!x(e)}n(ot,"isTokenValueColor");var A=t__namespace.define("Color Value",e=>typeof e!="string"?"Value must be a string":e===""?"Value must not be empty":x(e)?"Value must not contain {} (token references)":true),rt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("color"),value:A,kind:t__namespace.literal("static"),originalValue:A}),d),at=t__namespace.assign(t__namespace.type({type:t__namespace.literal("color"),value:A,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function J(e){return typeof e=="string"&&(e.endsWith("px")||e.endsWith("rem"))&&!x(e)}n(J,"isTokenValueDimension");var h=t__namespace.define("Dimension Value",e=>typeof e!="string"?"Value must be a string":x(e)?"Value must not contain {} (token references)":!e.endsWith("px")&&!e.endsWith("rem")&&!e.endsWith("em")&&!e.endsWith("%")?"Value must end with px, rem, em or %":true),it=t__namespace.assign(t__namespace.type({type:t__namespace.literal("dimension"),value:h,kind:t__namespace.literal("static"),originalValue:h}),d),st=t__namespace.assign(t__namespace.type({type:t__namespace.literal("dimension"),value:h,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function to(e){return typeof e=="string"&&e.endsWith("ms")&&!x(e)}n(to,"isTokenValueDuration");var E=t__namespace.define("Duration Value",e=>typeof e!="string"?"Value must be a string":x(e)?"Value must not contain {} (token references)":/^\d+ms$/.test(e)?true:'Value must be a number followed by "ms" (e.g., "100ms")'),pt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("duration"),value:E,kind:t__namespace.literal("static"),originalValue:E}),d),lt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("duration"),value:E,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function no(e){return (typeof e=="string"||typeof e=="number")&&!x(e)}n(no,"isTokenValueFontWeight");var pe=t__namespace.define("Font Weight Value",e=>typeof e!="string"&&typeof e!="number"?"Value must be a string or number":x(e)?"Value must not contain {} (token references)":true),ct=t__namespace.assign(t__namespace.type({type:t__namespace.literal("fontWeight"),value:pe,kind:t__namespace.literal("static"),originalValue:pe}),d),dt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("fontWeight"),value:pe,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),G=t__namespace.define("Cubic Bezier Value",e=>Array.isArray(e)?e.length!==4||!e.every(r=>typeof r=="number")?"Value must be an array of 4 numbers":e[0]<0||e[0]>1||e[2]<0||e[2]>1?"The first and third cubicBezier values must be between 0 and 1":true:"Value must be an array"),ut=t__namespace.assign(t__namespace.type({type:t__namespace.literal("cubicBezier"),value:G,kind:t__namespace.literal("static"),originalValue:G}),d),gt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("cubicBezier"),value:G,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function ft(e){return utils.isObject(e)&&ot(e.color)&&J(e.offsetX)&&J(e.offsetY)&&J(e.blur)&&J(e.spread)}n(ft,"isTokenValueShadow");var be=t__namespace.define("Shadow Value",e=>ft(e)?true:`Expected a shadow value, got ${JSON.stringify(e)}`),mt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("shadow"),value:be,kind:t__namespace.literal("static"),originalValue:t__namespace.type({color:t__namespace.union([A,c]),offsetX:t__namespace.union([h,c]),offsetY:t__namespace.union([h,c]),blur:t__namespace.union([h,c]),spread:t__namespace.union([h,c]),inset:t__namespace.union([t__namespace.optional(t__namespace.boolean()),c])})}),d),yt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("shadow"),value:be,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),K=t__namespace.union([t__namespace.literal("solid"),t__namespace.literal("dashed"),t__namespace.literal("dotted"),t__namespace.literal("double"),t__namespace.literal("groove"),t__namespace.literal("ridge"),t__namespace.literal("outset"),t__namespace.literal("inset")]);function Tt(e){return utils.isObject(e)&&A.is(e.color)&&K.is(e.style)&&h.is(e.width)}n(Tt,"isTokenValueBorder");var Ce=t__namespace.define("Border Value",Tt),kt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("border"),value:Ce,kind:t__namespace.literal("static"),originalValue:t__namespace.type({color:t__namespace.union([A,c]),style:t__namespace.union([K,c]),width:t__namespace.union([h,c])})}),d),St=t__namespace.assign(t__namespace.type({type:t__namespace.literal("border"),value:Ce,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function bt(e){return utils.isObject(e)&&G.is(e.timingFunction)&&E.is(e.duration)&&E.is(e.delay)}n(bt,"isTokenValueTransition");var xe=t__namespace.define("Transition Value",bt),Ct=t__namespace.assign(t__namespace.type({type:t__namespace.literal("transition"),value:xe,kind:t__namespace.literal("static"),originalValue:t__namespace.type({timingFunction:t__namespace.union([G,c]),duration:t__namespace.union([E,c]),delay:t__namespace.union([E,c])})}),d),xt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("transition"),value:xe,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),ht=t__namespace.assign(t__namespace.type({type:t__namespace.literal("string"),value:t__namespace.string(),kind:t__namespace.literal("static"),originalValue:t__namespace.string()}),d),Dt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("string"),value:t__namespace.string(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),It=t__namespace.assign(t__namespace.type({type:t__namespace.literal("strokeStyle"),value:K,kind:t__namespace.literal("static"),originalValue:K}),d),Pt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("strokeStyle"),value:K,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:K}),d),Vt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("number"),value:t__namespace.number(),kind:t__namespace.literal("static"),originalValue:t__namespace.number()}),d),Rt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("number"),value:t__namespace.number(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),Et=t__namespace.assign(t__namespace.type({type:t__namespace.literal("boolean"),value:t__namespace.boolean(),kind:t__namespace.literal("static"),originalValue:t__namespace.boolean()}),d),vt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("boolean"),value:t__namespace.boolean(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),oo=n(e=>{if(!utils.isObject(e))throw new Error(`Expected token data to be an object, got ${JSON.stringify(e)}`);if(!utils.isObjKey("type",e))throw new Error(`Expected token data to have a "type" property, got ${JSON.stringify(e)}`);if(typeof e.type!="string")throw new Error(`Expected token data "type" property to be a string, got ${JSON.stringify(e)}`);let r=e.type,a=e.kind;try{switch(r){case "boolean":a==="ref"?vt.assert(e):Et.assert(e);return;case "border":a==="ref"?St.assert(e):kt.assert(e);return;case "color":a==="ref"?at.assert(e):rt.assert(e);return;case "cubicBezier":a==="ref"?gt.assert(e):ut.assert(e);return;case "dimension":a==="ref"?st.assert(e):it.assert(e);return;case "duration":a==="ref"?lt.assert(e):pt.assert(e);return;case "fontWeight":a==="ref"?dt.assert(e):ct.assert(e);return;case "number":a==="ref"?Rt.assert(e):Vt.assert(e);return;case "shadow":a==="ref"?yt.assert(e):mt.assert(e);return;case "string":a==="ref"?Dt.assert(e):ht.assert(e);return;case "strokeStyle":a==="ref"?Pt.assert(e):It.assert(e);return;case "transition":a==="ref"?xt.assert(e):Ct.assert(e);return;default:{throw new Error(`Unknown token data type: ${r}`)}}}catch(u){throw u instanceof t__namespace.StructError?new Error(`Invalid token data for type "${r}": ${u.message}. Received this data: "${JSON.stringify(e)}"`):u}},"assertTokenData");utils.expectType([{type:"dimension",kind:"static",value:"1px"},{type:"dimension",kind:"ref",referencedTokenId:"a.b"}]);utils.expectType([{type:"border",kind:"ref",referencedTokenId:"a.b"},{type:"border",kind:"static",value:{color:{kind:"static",type:"color",value:"red"},style:{kind:"ref",type:"strokeStyle",referencedTokenId:""},width:{kind:"static",type:"dimension",value:"2px"}}}]);utils.expectType([{type:"transition",kind:"ref",referencedTokenId:"a.b"},{type:"transition",kind:"static",value:{delay:{kind:"static",type:"duration",value:"1ms"},duration:{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},timingFunction:{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]}}}]);function po(e){return Se(e?.type)}n(po,"isTokenSrcValueInfoSingular");function lo(e){return q(e?.type)}n(lo,"isTokenSrcValueInfoComposite");utils.expectType([{type:"dimension",kind:"static",value:"1px"},{type:"transition",kind:"ref",referencedTokenId:"a.b"},{type:"transition",kind:"ref",value:"1px"},{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]},{type:"transition",kind:"static",value:{delay:{kind:"static",type:"duration",value:"1ms"},duration:{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},timingFunction:{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]}}}]);function wt(e){return utils.isObject(e)&&utils.isObjKey("cloud.knapsack",e)}n(wt,"isTokenSrcExtensions");utils.expectType(["#ddd",true,[83,1,1,1],{color:"#000",style:"solid",width:"1px"},{inset:true,color:"#000",offsetX:"0px",offsetY:"{spacing.medium}",spread:"0px",blur:"0px"},{timingFunction:"{timing.ease}",duration:"{timing.duration.medium}",delay:"7ms",color:"#000"}]);function fo(e){return !!(utils.isObject(e)&&utils.isObjKey("$value",e))}n(fo,"isTokenSrc");function Ot(e){return utils.isObject(e)&&!wt(e)&&!utils.isObjKey("$value",e)&&!utils.isObjKey("cloud.knapsack",e)}n(Ot,"isTokenGroup");function mo(e){if(Ot(e)){let r=e.$extensions["cloud.knapsack"].group.collectionInfo;if(utils.isObjKey("type",r)&&utils.isObjKey("referenceId",r))return true}return false}n(mo,"isTokenTypeVarRef");function So(e){let r=typeof e;if(r==="string"||r==="number"||r==="boolean")return r;throw new Error(`Invalid token value type: ${JSON.stringify(r)}. Token value is: ${JSON.stringify(e)}`)}n(So,"getPrimitiveValue");var bo=n(e=>e.includes("px")||e.includes("rem")||e.includes("em")||e.includes("%"),"isDimensionString");function Co(e){let{value:r,unit:a}=utils.parseNumberWithUnit(e);if(!a)return {value:r};if(a!=="px"&&a!=="rem"&&a!=="em"&&a!=="%")throw new Error(`Invalid unit "${a}" for value: ${r}`);return {value:r,unit:a}}n(Co,"parseTokenDimensionValue");function Do(e){return e?.type==="data"||e?.type==="data-w-template-info"}n(Do,"isDemoWithData");function Io(e){return e?.type==="data"}n(Io,"isDataDemo");function Po(e){return e?.type==="template"}n(Po,"isTemplateDemo");function Vo(e){return typeof e=="object"&&!e.isInferred}n(Vo,"isSpecNotInferred");var vo={designSrc:"Design Source",subPage:"Subpage",template:"Template"};var he=(T=>(T.auto="auto",T.small="small",T.medium="medium",T.large="large",T.full="full",T))(he||{});var Ko={patternsState:{patterns:{},renderers:{},statusSets:[]},customPagesState:{pages:{}},assetSetsState:{},navsState:{byId:{},order:[]},tokensSrc:{},filesState:{files:{}},db:{blocks:{byId:{},settings:{tokens:{rootFontSize:"16px"}}},demos:{byId:{},settings:{}},tabs:{byId:{},settings:{}},blockCollections:{byId:{},settings:{}},settings:{title:"",logoUrl:""}}};function Kt(e){return !utils.isObject(e)||!["assetSetsState","customPagesState","navsState","patternsState","tokensSrc","db"].every(a=>utils.isObjKey(a,e))?false:!utils.isObjKey("metaState",e)}n(Kt,"isKsAppClientDataNoMeta");var Fo=t.define("KsAppClientDataNoMeta",Kt),Ft=v4Mini.z.strictObject({assetSetsState:v4Mini.z.object({}),customPagesState:v4Mini.z.object({pages:v4Mini.z.object({})}),navsState:v4Mini.z.object({byId:v4Mini.z.object(),order:v4Mini.z.array(v4Mini.z.string())}),patternsState:v4Mini.z.object({patterns:v4Mini.z.object({}),renderers:v4Mini.z.object({}),statusSets:v4Mini.z.array(v4Mini.z.object())}),tokensSrc:v4Mini.z.object({}),filesState:v4Mini.z.object({files:v4Mini.z.object({})}),db:v4Mini.z.object({blocks:v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})}),demos:v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})}),tabs:v4Mini.z.optional(v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})})),blockCollections:v4Mini.z.optional(v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})})),templatesConfig:v4Mini.z.optional(v4Mini.z.object({})),settings:v4Mini.z.object({title:v4Mini.z.optional(v4Mini.z.string()),hideTitleInNavigation:v4Mini.z.optional(v4Mini.z.boolean()),logoUrl:v4Mini.z.optional(v4Mini.z.string())})})}),Mo=v4Mini.z.custom().check(e=>{let{error:r}=Ft.safeParse(e.value);r&&e.issues.push(...r.issues);});function Mt(e){return utils.isObject(e)?["assetSetsState","customPagesState","navsState","patternsState","tokensSrc","metaState","db"].every(a=>utils.isObjKey(a,e)):false}n(Mt,"isKsAppClientDataAndMeta");var Uo=t.define("KsAppClientDataAndMeta",Mt),Ut=t.type({isLocalDev:t.boolean(),plugins:t.array(t.type({id:t.string(),hasContent:t.boolean(),clientPluginPath:t.optional(t.string()),cssPath:t.optional(t.string())})),meta:t.optional(t.type({version:t.optional(t.string()),hasKnapsackCloud:t.boolean(),knapsackCloudSiteId:t.optional(t.string()),serverPort:t.optional(t.number()),websocketsPort:t.optional(t.number()),https:t.optional(t.boolean()),cacheDir:t.optional(t.string()),ksVersions:t.type({app:t.string()})}))}),jo=Ut.is;function zt(e){return !utils.isObject(e)||!["assetSetsState","customPagesState","navsState","patternsState","settingsState","tokensState"].every(a=>utils.isObjKey(a,e))?false:!utils.isObjKey("metaState",e)}n(zt,"isKsAppClientDataNoMetaV3");var or=t.define("KsAppClientDataNoMeta",zt);function Wt(e){return utils.isObject(e)?["assetSetsState","customPagesState","navsState","patternsState","settingsState","tokensState","metaState"].every(a=>utils.isObjKey(a,e)):false}n(Wt,"isKsAppClientDataAndMetaV3");var rr=t.define("KsAppClientDataAndMeta",Wt),Lt=t.type({isLocalDev:t.boolean(),plugins:t.array(t.type({id:t.string(),hasContent:t.boolean(),clientPluginPath:t.optional(t.string()),cssPath:t.optional(t.string())})),meta:t.optional(t.type({version:t.optional(t.string()),hasKnapsackCloud:t.boolean(),knapsackCloudSiteId:t.optional(t.string()),serverPort:t.optional(t.number()),websocketsPort:t.optional(t.number()),https:t.optional(t.boolean()),cacheDir:t.optional(t.string()),ksVersions:t.type({app:t.string()})}))}),ar=Lt.is;var Re={version:"4.1.7",checkIfNeeded:n(e=>true,"checkIfNeeded"),migrate:n(e=>{if(!immer.isDraft(e))throw new Error("Tried to run migrations on appClientData but it is not an Immer Draft");Object.values(e.patternsState.patterns).forEach(r=>{delete r.demoSize;}),Object.values(e.db.demos.byId).forEach(r=>{r.type==="data"&&(Object.entries(r.data.slots??{}).forEach(([a,u])=>{r.data.slots[a]=u.map(f=>typeof f=="string"?{type:"text",text:f}:(f.type==="template-reference"||f.type==="text"||(f.type="template-demo"),f));}),!(r.patternId&&r.templateId)&&(()=>{for(let{id:a,templates:u=[]}of Object.values(e.patternsState.patterns))for(let{id:f,demoIds:T=[]}of u)if(T.includes(r.id)){r.patternId=a,r.templateId=f;return}})());});},"migrate")};var ur=[Re];var Gt={ROOT:"ROOT",DESIGN:"Design",DEVELOP:"Develop",DOCUMENT:"Documentation",MCP:"MCP",PROTOTYPE:"Prototype",SETTINGS:"Settings"},fr=Object.values(Gt);var $t=(k=>(k.string="string",k.boolean="boolean",k.number="number",k.object="object",k.options="options",k.function="function",k.customTypeScript="customTypeScript",k.array="array",k.arrayOfObjects="arrayOfObjects",k.arrayOfStrings="arrayOfStrings",k.arrayOfNumbers="arrayOfNumbers",k.unknown="unknown",k))($t||{}),yr=n(e=>"type"in e&&e.type==="string"&&!("enum"in e),"isStringProp"),Tr=n(e=>"type"in e&&e.type==="number","isNumberProp"),kr=n(e=>"type"in e&&e.type==="boolean","isBooleanProp"),Sr=n(e=>"enum"in e,"isOptionsProp"),br=n(e=>"typeof"in e&&e?.typeof==="function","isFunctionProp"),Cr=n(e=>!("typeof"in e)&&"tsType"in e,"isCustomTypeScriptProp"),xr=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="object","isArrayOfObjectsProp"),hr=n(e=>"type"in e&&e.type==="object"&&"properties"in e&&Object.keys(e.properties).length>0,"isObjectProp"),Dr=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="string","isArrayOfStringsProp"),Ir=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="number","isArrayOfNumbersProp");var Ee=t__namespace.object({op:t__namespace.union([t__namespace.literal("replace"),t__namespace.literal("remove"),t__namespace.literal("add")]),path:t__namespace.array(t__namespace.union([t__namespace.string(),t__namespace.number()])),value:t__namespace.optional(t__namespace.any())}),Yt=Ee,Rr=n(e=>Yt.is(e),"isPatch"),de=t__namespace.array(Ee),Ht=de,Er=n(e=>Ht.is(e),"isPatches"),ve=t__namespace.type({patches:de,inversePatches:t__namespace.optional(de),event:t__namespace.optional(t__namespace.object({type:t__namespace.string()})),id:t__namespace.string(),date:t__namespace.string(),userId:t__namespace.optional(t__namespace.string())}),qt=ve,vr=n(e=>qt.is(e),"isKsRemoteChange"),Jt=t__namespace.array(ve),Xt=Jt,Nr=n(e=>Xt.is(e),"isKsRemoteChanges");var oe={react:"react",vue:"vue","web-components":"web-components",twig:"twig",hbs:"hbs",angular:"angular",html:"html",ios:"ios",android:"android"},Ar=zod.z.strictObject({path:zod.z.string().describe("Can contain glob patterns, relative paths, absolute paths, package paths, or package sub-paths"),filter:zod.z.custom(e=>typeof e=="function").optional().describe("A function that takes a path and returns a boolean")});function Kr(e){return "codeSrcPath"in e}n(Kr,"isTemplateInfoWithCodeSrcPath");function Zt(e){switch(e.rendererId){case "angular":case "react":return `${e.rendererId}---${e.codeSrcPath}---${e.exportName||"default"}`;case "web-components":return `${e.rendererId}---${e.elementName}`;case "twig":return `${e.rendererId}---${e.namespacePath}`;case "vue":case "hbs":case "html":return `${e.rendererId}---${e.codeSrcPath}`;case "ios":return `${e.rendererId}---${e.moduleName}---${e.symbolName}`;case "android":return `${e.rendererId}---${e.packageName}---${e.componentName}`;default:{throw new Error(`Invalid template info: ${JSON.stringify(e)}`)}}}n(Zt,"createTemplateInfoId");function Fr(e){return {...e,id:Zt(e)}}n(Fr,"addIdToTemplateInfo");function Mr({rendererId:e,alias:r,path:a}){return (()=>{switch(e){case "react":case "angular":return {rendererId:e,codeSrcPath:a,exportName:r||"default"};case "vue":case "hbs":case "html":return {rendererId:e,codeSrcPath:a};case "twig":return {rendererId:e,namespacePath:r};case "web-components":return {rendererId:e,elementName:r};case "ios":return {rendererId:e,moduleName:a,symbolName:r};case "android":return {rendererId:e,packageName:a,componentName:r};default:{throw new Error(`Invalid renderer ID: ${e}`)}}})()}n(Mr,"normalizeTemplateInfo");function Ur(e){switch(e.rendererId){case "react":case "angular":return {path:e.codeSrcPath,alias:e.exportName};case "hbs":case "html":case "vue":return {path:e.codeSrcPath};case "twig":return {alias:e.namespacePath};case "web-components":return {alias:e.elementName};case "ios":return {path:e.moduleName,alias:e.symbolName};case "android":return {path:e.packageName,alias:e.componentName};default:{throw new Error(`Invalid template info: ${JSON.stringify(e)}`)}}}n(Ur,"convertTemplateInfoToOldWay");var jr={id:oe.ios,title:"iOS",aliasUse:"required",aliasTitle:"Symbol Name",aliasDescription:"The synchronized name of the iOS symbol.",enableDataDemos:true,enableTemplateDemos:false,hasTemplateImgSupport:true,hasSlotsSupport:false,hasSlotOptionsSupport:false,hasInferSpecSupport:true,hasTemplateSuggestionsSupport:true},zr={id:oe.android,title:"Android",aliasUse:"required",aliasTitle:"Component Name",aliasDescription:"The synchronized name of the Android component.",enableDataDemos:true,enableTemplateDemos:false,hasSlotsSupport:false,hasSlotOptionsSupport:false,hasTemplateImgSupport:true,hasInferSpecSupport:true,hasTemplateSuggestionsSupport:true},Qt=[oe.ios,oe.android];function en(e){return Qt.includes(e)}n(en,"isRendererIdForNativeMobile");function Wr(e){return en(e.rendererId)}n(Wr,"isTemplateInfoForNativeMobile");var tn=(r=>(r.ready="ready",r))(tn||{}),Gr="ks-meta";var Yr={PATTERN_TEMPLATE_CHANGED:"PATTERN_TEMPLATE_CHANGED",PATTERN_ASSET_CHANGED:"PATTERN_ASSET_CHANGED",DESIGN_TOKENS_CHANGED:"DESIGN_TOKENS_CHANGED",RENDERER_CLIENT_RELOAD:"RENDERER_CLIENT_RELOAD",APP_CLIENT_DATA_CHANGED:"APP_CLIENT_DATA_CHANGED"};var nn=(T=>(T.GitHub="GitHub",T.GitLab="GitLab",T.GitLabRest="GitLabRest",T.Bitbucket="Bitbucket",T.Azure="Azure",T))(nn||{}),on=(u=>(u.Conflicting="CONFLICTING",u.Mergeable="MERGEABLE",u.Unknown="UNKNOWN",u))(on||{}),rn=(f=>(f.Create="CREATE",f.Move="MOVE",f.Update="UPDATE",f.Chmod="CHMOD",f))(rn||{}),an=(a=>(a.Base64="BASE64",a.Text="TEXT",a))(an||{});var sn={ADMIN:{id:"ADMIN",title:"Admin",description:"Full access. Can manage users, publish changes, and configure all settings.",hierarchy:4,permissions:{canManageUsers:true,canDelete:true,canEdit:true,canPublish:true,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:true,canView:true},DESIGN:{canEdit:true,canView:true},DEVELOP:{canEdit:true,canView:true},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:true,canView:true},MCP:{canEdit:true,canView:true}}},CONTRIBUTOR:{id:"CONTRIBUTOR",title:"Contributor",description:"Can view and edit content across Design, Develop, and Prototype. Cannot publish or manage users.",hierarchy:3,permissions:{canManageUsers:false,canDelete:false,canEdit:true,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:true,canView:true},DESIGN:{canEdit:true,canView:true},DEVELOP:{canEdit:true,canView:true},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:true,canView:true},MCP:{canEdit:false,canView:false}}},CONSUMER:{id:"CONSUMER",title:"Consumer",description:"Can view documentation and edit prototypes. Cannot access Design or Develop sections.",hierarchy:2,permissions:{canManageUsers:false,canDelete:false,canEdit:true,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},VIEWER:{id:"VIEWER",title:"Viewer",description:"Read-only access to documentation. Cannot edit anything.",hierarchy:1,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},ANONYMOUS:{id:"ANONYMOUS",title:"Anonymous",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},EDITOR:{id:"EDITOR",title:"Editor",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:false},sectionAccess:{ROOT:{canEdit:false,canView:false},DOCUMENT:{canEdit:false,canView:false},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},MANAGER:{id:"MANAGER",title:"Manager",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:false},sectionAccess:{ROOT:{canEdit:false,canView:false},DOCUMENT:{canEdit:false,canView:false},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}}},Jr=Object.values(sn);function Qr({path:e,queryParams:r,origin:a}){return urls.createUrlWithParams({url:e,queryParams:r,origin:a})}n(Qr,"createUrlForRoute");function ln(e){return Object.fromEntries(e.entries())}n(ln,"getParams");function ea(e){return ln(e)}n(ea,"getParamsForRoute");Object.defineProperty(exports,"isObjKey",{enumerable:true,get:function(){return utils.isObjKey}});Object.defineProperty(exports,"isObject",{enumerable:true,get:function(){return utils.isObject}});exports.BlockSizes=_n;exports.BlockSpacings=Gn;exports.CodeSrcUserConfigSchema=Ar;exports.ColorConfigStruct=l;exports.ColorStringStruct=M;exports.ColorTokenConfigStruct=gn;exports.FontFaceConfigStruct=w;exports.FontFaceFormatsEnumStruct=ze;exports.FontFaceSourceFormats=je;exports.FontFaceSourceStruct=We;exports.FontFaceWeightStruct=ye;exports.FontSizeConfigStruct=Ge;exports.FontSizeConfigValStruct=me;exports.FontStretches=_e;exports.GitProviderType=nn;exports.HeadingLevels=kn;exports.KsAppClientDataAndMetaStruct=Uo;exports.KsAppClientDataAndMetaStructV3=rr;exports.KsAppClientDataNoMetaStruct=Fo;exports.KsAppClientDataNoMetaStructV3=or;exports.KsAppClientDataNoMetaZod=Mo;exports.KsMetaStateStruct=Ut;exports.KsMetaStateStructV3=Lt;exports.KsRemoteChangesStruct=Xt;exports.KsRendererClientEvents=tn;exports.MergeableState=on;exports.NavCustomizationConfigStruct=R;exports.PageHeaderSizes=he;exports.PrimaryNavCustomizationConfigStruct=W;exports.PropTypeNames=$t;exports.RestActions=rn;exports.SecondaryNavCustomizationConfigStruct=L;exports.TextEncoding=an;exports.TextTransforms=Le;exports.TokenReferenceStruct=c;exports.TokenValueColorStruct=A;exports.TokenValueCubicBezierStruct=G;exports.TokenValueDimensionStruct=h;exports.TokenValueDurationStruct=E;exports.TokenValueFontWeightStruct=pe;exports.TokenValueStrokeStyleStruct=K;exports.TypographyConfigStruct=s;exports.TypographyLinkConfigStruct=O;exports.UiConfigStruct=jn;exports.UiConfigV10Struct=qe;exports.UiConfigV1Struct=Nn;exports.UiConfigV2Struct=wn;exports.UiConfigV3Struct=On;exports.UiConfigV4Struct=Bn;exports.UiConfigV5Struct=An;exports.UiConfigV6Struct=Kn;exports.UiConfigV7Struct=Fn;exports.UiConfigV8Struct=Mn;exports.UiConfigV9Struct=Un;exports.WS_EVENTS=Yr;exports.addIdToTemplateInfo=Fr;exports.appSections=fr;exports.appSectionsById=Gt;exports.assertTokenData=oo;exports.convertTemplateInfoToOldWay=Ur;exports.createTemplateInfoId=Zt;exports.createUrlForRoute=Qr;exports.customizableNavElements=In;exports.emptyAppClientData=Ko;exports.getParams=ln;exports.getParamsForRoute=ea;exports.getPrimitiveValue=So;exports.hasTokenReferences=x;exports.isArrayOfNumbersProp=Ir;exports.isArrayOfObjectsProp=xr;exports.isArrayOfStringsProp=Dr;exports.isBooleanProp=kr;exports.isCustomTypeScriptProp=Cr;exports.isDataDemo=Io;exports.isDemoWithData=Do;exports.isDimensionString=bo;exports.isFunctionProp=br;exports.isKsAppClientDataAndMeta=Mt;exports.isKsAppClientDataAndMetaV3=Wt;exports.isKsAppClientDataNoMeta=Kt;exports.isKsAppClientDataNoMetaV3=zt;exports.isKsMetaState=jo;exports.isKsMetaStateV3=ar;exports.isKsRemoteChange=vr;exports.isKsRemoteChanges=Nr;exports.isNotTokenReference=Xe;exports.isNumberProp=Tr;exports.isObjectProp=hr;exports.isOptionsProp=Sr;exports.isPatch=Rr;exports.isPatches=Er;exports.isRendererIdForNativeMobile=en;exports.isSpecNotInferred=Vo;exports.isStringProp=yr;exports.isTemplateDemo=Po;exports.isTemplateInfoForNativeMobile=Wr;exports.isTemplateInfoWithCodeSrcPath=Kr;exports.isTokenDataComposite=eo;exports.isTokenGroup=Ot;exports.isTokenReference=Je;exports.isTokenSrc=fo;exports.isTokenSrcExtensions=wt;exports.isTokenSrcValueInfoComposite=lo;exports.isTokenSrcValueInfoSingular=po;exports.isTokenTypeComposite=q;exports.isTokenTypeSingular=Se;exports.isTokenTypeVarRef=mo;exports.isTokenValueBorder=Tt;exports.isTokenValueColor=ot;exports.isTokenValueDimension=J;exports.isTokenValueDuration=to;exports.isTokenValueFontWeight=no;exports.isTokenValueShadow=ft;exports.isTokenValueTransition=bt;exports.ksRendererClientMetaId=Gr;exports.metaForAndroidRenderer=zr;exports.metaForIosRenderer=jr;exports.migrations=ur;exports.normalizeTemplateInfo=Mr;exports.pageElements=Sn;exports.pageElementsV2=bn;exports.parseTokenDimensionValue=Co;exports.patternTabTypes=vo;exports.rendererIds=oe;exports.rendererIdsForNativeMobile=Qt;exports.roles=Jr;exports.rolesById=sn;exports.strokeStyleValues=qn;exports.tokenNameDisplayFormats=Yn;exports.tokenTypeComposites=Qe;exports.tokenTypeSingulars=tt;//# sourceMappingURL=index.js.map
1
+ 'use strict';var t=require('superstruct'),Oe=require('color-string'),v4Mini=require('zod/v4-mini'),utils=require('@knapsack/utils'),immer=require('immer'),zod=require('zod'),urls=require('@knapsack/utils/urls');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}function _interopNamespace(e){if(e&&e.__esModule)return e;var n=Object.create(null);if(e){Object.keys(e).forEach(function(k){if(k!=='default'){var d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:true,get:function(){return e[k]}});}})}n.default=e;return Object.freeze(n)}var t__namespace=/*#__PURE__*/_interopNamespace(t);var Oe__default=/*#__PURE__*/_interopDefault(Oe);var we=Object.defineProperty;var n=(e,r)=>we(e,"name",{value:r,configurable:true});function Ke(e){if(typeof e!="string")return false;try{return !!Oe__default.default.get(e)}catch{return false}}n(Ke,"isColor");var M=t.define("ColorStringStruct",e=>typeof e=="string"&&Ke(e)),l=t.union([t.type({type:t.literal("value"),colorValue:M}),t.type({type:t.literal("design-token"),tokenName:t.string()})]),gn=t.type({type:t.literal("design-token"),tokenName:t.string()});var Sn=["h1","h2","h3","h4","h5","h6"],me=t.object({unit:t.enums(["rem","px"]),value:t.number()}),ye=t.union([t.string(),t.number()]),ze=(a=>(a.woff2="woff2",a.woff="woff",a))(ze||{}),We=t.enums(["woff2","woff"]),Le=t.type({format:We,type:t.literal("url"),path:t.string()}),w=t.type({family:t.optional(t.string()),weight:t.optional(t.union([ye,t.size(t.array(ye),2)])),src:t.optional(t.array(Le)),style:t.optional(t.string()),display:t.optional(t.enums(["auto","block","swap","fallback","optional"])),variationSettings:t.optional(t.string()),unicodeRange:t.optional(t.string())}),_e=(g=>(g.inherit="As typed",g.capitalize="Capitalize",g.lowercase="Lowercase",g.uppercase="Uppercase",g))(_e||{}),Ge=(u=>(u["ultra-condensed"]="Ultra-condensed",u["extra-condensed"]="Extra-condensed",u.condensed="Condensed",u["semi-condensed"]="Semi-condensed",u.normal="Normal",u["semi-expanded"]="Semi-expanded",u.expanded="Expanded",u["extra-expanded"]="Extra-expanded",u["ultra-expanded"]="Ultra-expanded",u))(Ge||{}),O=t.type({fontWeight:t.optional(t.union([t.string(),t.number()])),textColor:t.optional(l),hoverColor:t.optional(l),underline:t.optional(t.boolean()),textTransform:t.optional(t.enums(["inherit","capitalize","lowercase","uppercase"])),fontStretch:t.optional(t.enums(["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded"]))}),$e=t.type({min:me,max:t.optional(me)}),s=t.type({fontSize:t.optional($e),lineHeight:t.optional(t.union([t.string(),t.number()])),fontWeight:t.optional(t.union([t.string(),t.number()])),letterSpacing:t.optional(t.string()),fontFamily:t.optional(t.string()),textColor:t.optional(l),textTransform:t.optional(t.enums(["inherit","capitalize","lowercase","uppercase"])),fontStretch:t.optional(t.enums(["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded"]))}),m={},Te={},bn={pageTitle:m,pageDescription:m,headingLarge:m,headingMedium:m,headingSmall:m,bodyText:m,link:Te},Cn={pageTitle:m,pageDescription:m,headingXLarge:m,headingLarge:m,headingMedium:m,headingSmall:m,headingXSmall:m,bodyText:m,link:Te};var E=t.union([s,t.type({accentColor:t.optional(l)})]),W=t.union([E,t.type({hoverColor:t.optional(l),backgroundColor:t.optional(l)})]),L=t.union([E,t.type({backgroundColor:t.optional(l)})]),He={},Ye={},qe={},Pn={primaryNav:qe,secondaryNav:Ye,tabs:He};var wn=t.object({version:t.literal(1),oldSillySidebarBgColor:M}),On=t.object({version:t.literal(2),anotherSillySidebarBgColor:M}),Bn=t.object({version:t.literal(3),sidebarBgColor:M}),An=t.object({version:t.literal(4),primaryColor:l,darkColor:l,lightColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true))}),Kn=t.object({version:t.literal(5),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true))}),Fn=t.object({version:t.literal(6),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true)),appearance:t.type({customFonts:t.optional(t.array(w)),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Mn=t.object({version:t.literal(7),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,enableSidebarIcons:t.optional(t.defaulted(t.boolean(),true)),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(E)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Un=t.object({version:t.literal(8),primaryColor:l,darkColor:l,lightColor:l,linkColor:l,appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(E)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),jn=t.object({version:t.literal(9),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(E)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),Je=t.object({version:t.literal(10),appearance:t.type({customFonts:t.optional(t.array(w)),navigation:t.optional(t.type({primaryNav:t.optional(W),secondaryNav:t.optional(L),tabs:t.optional(E)})),pageElements:t.type({pageTitle:t.optional(s),pageDescription:t.optional(s),headingXLarge:t.optional(s),headingLarge:t.optional(s),headingMedium:t.optional(s),headingSmall:t.optional(s),headingXSmall:t.optional(s),bodyText:t.optional(s),link:t.optional(O)})})}),zn=Je;var Gn=["large","medium","small"],$n=["large","medium","small"];var Yn={default:"Default",android:"Android",cssVar:"CSS Var",json:"JSON",less:"Less",scss:"SCSS",swift:"Swift"};var Jn=["solid","dashed","dotted","double","groove","ridge","outset","inset"];function Xe(e){return typeof e!="string"?false:e.split("{").length-1===1&&e.startsWith("{")&&e.endsWith("}")}n(Xe,"isTokenReference");function x(e){return typeof e=="string"&&e.includes("{")}n(x,"hasTokenReferences");function Ze(e){return !Xe(e)}n(Ze,"isNotTokenReference");var c=t__namespace.define("Token Reference",e=>typeof e!="string"?false:Ze(e)?"Must start and end with curly braces":true),Qe={border:"border",shadow:"shadow",transition:"transition"},et=Object.values(Qe),tt={string:"string",number:"number",boolean:"boolean",color:"color",dimension:"dimension",duration:"duration",fontWeight:"fontWeight",strokeStyle:"strokeStyle",cubicBezier:"cubicBezier"},nt=Object.values(tt);function q(e){return et.includes(e)}n(q,"isTokenTypeComposite");function Se(e){return nt.includes(e)}n(Se,"isTokenTypeSingular");utils.expectType([{inset:false,color:"#000",offsetX:"0px",offsetY:"0px",spread:"0px",blur:"0px"},{color:"#000",offsetX:"0px",offsetY:"0px",spread:"0px",blur:"0px",inset:true}]);var d=t__namespace.type({id:t__namespace.string(),description:t__namespace.optional(t__namespace.string()),references:t__namespace.optional(t__namespace.array(t__namespace.array(t__namespace.string()))),tokenConfig:t__namespace.optional(t__namespace.type({purpose:t__namespace.optional(t__namespace.string())}))});utils.expectType([{type:"duration",value:"1ms",originalValue:"1ms",id:"1",kind:"static"},{type:"duration",value:"1ms",kind:"ref",id:"1",originalValue:"{a.b}",referencedTokenId:"1"},{type:"duration",value:"1ms",originalValue:"1ms",id:"1",kind:"ref"},{type:"duration",value:"1ms",kind:"static",id:"1",originalValue:"{a.b}",referencedTokenId:"1"},{type:"color",value:"#000",kind:"static",id:"1",originalValue:"#000"},{type:"color",value:"#000",kind:"ref",id:"1",originalValue:"{c.b}",referencedTokenId:"c.b"},{type:"cubicBezier",kind:"static",value:[0,0,0,1],originalValue:[0,0,0,1],id:"1"}]);function to(e){return q(e.type)}n(to,"isTokenDataComposite");utils.expectType([{type:"border",kind:"static",id:"1",value:{color:"#000",style:"solid",width:"1px"},originalValue:{color:"#000",style:"solid",width:"1px"}},{type:"border",kind:"ref",referencedTokenId:"a.b",id:"1",value:{color:"red",style:"dashed",width:"2px"},originalValue:"{a.b}"},{type:"shadow",value:{color:"#000",offsetX:"1px",offsetY:"1px",blur:"1px",spread:"1px",inset:false},originalValue:{color:"#000",offsetX:"{a.a}",offsetY:"1px",blur:"1px",spread:"1px",inset:false},id:"1",kind:"static"},{type:"shadow",kind:"ref",referencedTokenId:"a.b",value:{inset:true,color:"red",offsetX:"1px",blur:"2px",offsetY:"3px",spread:"4px"},originalValue:"{a.b}",id:"1"},{type:"transition",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:"{a.b}",kind:"ref",referencedTokenId:"a.b",id:"1"},{type:"transition",kind:"static",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:{duration:"100ms",delay:"{a.c}",timingFunction:"{a.c}"},id:"1"},{type:"transition",kind:"static",value:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},originalValue:{duration:"100ms",delay:"200ms",timingFunction:[0,0,0,0]},id:"1"}]);function rt(e){return typeof e=="string"&&!x(e)}n(rt,"isTokenValueColor");var A=t__namespace.define("Color Value",e=>typeof e!="string"?"Value must be a string":e===""?"Value must not be empty":x(e)?"Value must not contain {} (token references)":true),at=t__namespace.assign(t__namespace.type({type:t__namespace.literal("color"),value:A,kind:t__namespace.literal("static"),originalValue:A}),d),it=t__namespace.assign(t__namespace.type({type:t__namespace.literal("color"),value:A,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function J(e){return typeof e=="string"&&(e.endsWith("px")||e.endsWith("rem"))&&!x(e)}n(J,"isTokenValueDimension");var h=t__namespace.define("Dimension Value",e=>typeof e!="string"?"Value must be a string":x(e)?"Value must not contain {} (token references)":!e.endsWith("px")&&!e.endsWith("rem")&&!e.endsWith("em")&&!e.endsWith("%")?"Value must end with px, rem, em or %":true),st=t__namespace.assign(t__namespace.type({type:t__namespace.literal("dimension"),value:h,kind:t__namespace.literal("static"),originalValue:h}),d),pt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("dimension"),value:h,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function no(e){return typeof e=="string"&&e.endsWith("ms")&&!x(e)}n(no,"isTokenValueDuration");var R=t__namespace.define("Duration Value",e=>typeof e!="string"?"Value must be a string":x(e)?"Value must not contain {} (token references)":/^\d+ms$/.test(e)?true:'Value must be a number followed by "ms" (e.g., "100ms")'),lt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("duration"),value:R,kind:t__namespace.literal("static"),originalValue:R}),d),ct=t__namespace.assign(t__namespace.type({type:t__namespace.literal("duration"),value:R,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function oo(e){return (typeof e=="string"||typeof e=="number")&&!x(e)}n(oo,"isTokenValueFontWeight");var pe=t__namespace.define("Font Weight Value",e=>typeof e!="string"&&typeof e!="number"?"Value must be a string or number":x(e)?"Value must not contain {} (token references)":true),dt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("fontWeight"),value:pe,kind:t__namespace.literal("static"),originalValue:pe}),d),ut=t__namespace.assign(t__namespace.type({type:t__namespace.literal("fontWeight"),value:pe,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),G=t__namespace.define("Cubic Bezier Value",e=>Array.isArray(e)?e.length!==4||!e.every(r=>typeof r=="number")?"Value must be an array of 4 numbers":e[0]<0||e[0]>1||e[2]<0||e[2]>1?"The first and third cubicBezier values must be between 0 and 1":true:"Value must be an array"),ft=t__namespace.assign(t__namespace.type({type:t__namespace.literal("cubicBezier"),value:G,kind:t__namespace.literal("static"),originalValue:G}),d),gt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("cubicBezier"),value:G,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function mt(e){return utils.isObject(e)&&rt(e.color)&&J(e.offsetX)&&J(e.offsetY)&&J(e.blur)&&J(e.spread)}n(mt,"isTokenValueShadow");var be=t__namespace.define("Shadow Value",e=>mt(e)?true:`Expected a shadow value, got ${JSON.stringify(e)}`),yt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("shadow"),value:be,kind:t__namespace.literal("static"),originalValue:t__namespace.type({color:t__namespace.union([A,c]),offsetX:t__namespace.union([h,c]),offsetY:t__namespace.union([h,c]),blur:t__namespace.union([h,c]),spread:t__namespace.union([h,c]),inset:t__namespace.union([t__namespace.optional(t__namespace.boolean()),c])})}),d),Tt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("shadow"),value:be,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),K=t__namespace.union([t__namespace.literal("solid"),t__namespace.literal("dashed"),t__namespace.literal("dotted"),t__namespace.literal("double"),t__namespace.literal("groove"),t__namespace.literal("ridge"),t__namespace.literal("outset"),t__namespace.literal("inset")]);function kt(e){return utils.isObject(e)&&A.is(e.color)&&K.is(e.style)&&h.is(e.width)}n(kt,"isTokenValueBorder");var Ce=t__namespace.define("Border Value",kt),St=t__namespace.assign(t__namespace.type({type:t__namespace.literal("border"),value:Ce,kind:t__namespace.literal("static"),originalValue:t__namespace.type({color:t__namespace.union([A,c]),style:t__namespace.union([K,c]),width:t__namespace.union([h,c])})}),d),bt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("border"),value:Ce,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d);function Ct(e){return utils.isObject(e)&&G.is(e.timingFunction)&&R.is(e.duration)&&R.is(e.delay)}n(Ct,"isTokenValueTransition");var xe=t__namespace.define("Transition Value",Ct),xt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("transition"),value:xe,kind:t__namespace.literal("static"),originalValue:t__namespace.type({timingFunction:t__namespace.union([G,c]),duration:t__namespace.union([R,c]),delay:t__namespace.union([R,c])})}),d),ht=t__namespace.assign(t__namespace.type({type:t__namespace.literal("transition"),value:xe,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),Dt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("string"),value:t__namespace.string(),kind:t__namespace.literal("static"),originalValue:t__namespace.string()}),d),It=t__namespace.assign(t__namespace.type({type:t__namespace.literal("string"),value:t__namespace.string(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),Pt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("strokeStyle"),value:K,kind:t__namespace.literal("static"),originalValue:K}),d),Vt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("strokeStyle"),value:K,kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:K}),d),Et=t__namespace.assign(t__namespace.type({type:t__namespace.literal("number"),value:t__namespace.number(),kind:t__namespace.literal("static"),originalValue:t__namespace.number()}),d),Rt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("number"),value:t__namespace.number(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),vt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("boolean"),value:t__namespace.boolean(),kind:t__namespace.literal("static"),originalValue:t__namespace.boolean()}),d),Nt=t__namespace.assign(t__namespace.type({type:t__namespace.literal("boolean"),value:t__namespace.boolean(),kind:t__namespace.literal("ref"),originalValue:c,referencedTokenId:t__namespace.string()}),d),ro=n(e=>{if(!utils.isObject(e))throw new Error(`Expected token data to be an object, got ${JSON.stringify(e)}`);if(!utils.isObjKey("type",e))throw new Error(`Expected token data to have a "type" property, got ${JSON.stringify(e)}`);if(typeof e.type!="string")throw new Error(`Expected token data "type" property to be a string, got ${JSON.stringify(e)}`);let r=e.type,a=e.kind;try{switch(r){case "boolean":a==="ref"?Nt.assert(e):vt.assert(e);return;case "border":a==="ref"?bt.assert(e):St.assert(e);return;case "color":a==="ref"?it.assert(e):at.assert(e);return;case "cubicBezier":a==="ref"?gt.assert(e):ft.assert(e);return;case "dimension":a==="ref"?pt.assert(e):st.assert(e);return;case "duration":a==="ref"?ct.assert(e):lt.assert(e);return;case "fontWeight":a==="ref"?ut.assert(e):dt.assert(e);return;case "number":a==="ref"?Rt.assert(e):Et.assert(e);return;case "shadow":a==="ref"?Tt.assert(e):yt.assert(e);return;case "string":a==="ref"?It.assert(e):Dt.assert(e);return;case "strokeStyle":a==="ref"?Vt.assert(e):Pt.assert(e);return;case "transition":a==="ref"?ht.assert(e):xt.assert(e);return;default:{throw new Error(`Unknown token data type: ${r}`)}}}catch(u){throw u instanceof t__namespace.StructError?new Error(`Invalid token data for type "${r}": ${u.message}. Received this data: "${JSON.stringify(e)}"`):u}},"assertTokenData");utils.expectType([{type:"dimension",kind:"static",value:"1px"},{type:"dimension",kind:"ref",referencedTokenId:"a.b"}]);utils.expectType([{type:"border",kind:"ref",referencedTokenId:"a.b"},{type:"border",kind:"static",value:{color:{kind:"static",type:"color",value:"red"},style:{kind:"ref",type:"strokeStyle",referencedTokenId:""},width:{kind:"static",type:"dimension",value:"2px"}}}]);utils.expectType([{type:"transition",kind:"ref",referencedTokenId:"a.b"},{type:"transition",kind:"static",value:{delay:{kind:"static",type:"duration",value:"1ms"},duration:{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},timingFunction:{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]}}}]);function lo(e){return Se(e?.type)}n(lo,"isTokenSrcValueInfoSingular");function co(e){return q(e?.type)}n(co,"isTokenSrcValueInfoComposite");utils.expectType([{type:"dimension",kind:"static",value:"1px"},{type:"transition",kind:"ref",referencedTokenId:"a.b"},{type:"transition",kind:"ref",value:"1px"},{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]},{type:"transition",kind:"static",value:{delay:{kind:"static",type:"duration",value:"1ms"},duration:{kind:"ref",type:"duration",referencedTokenId:"animation.slow"},timingFunction:{kind:"static",type:"cubicBezier",value:[.4,0,.2,1]}}}]);function Ot(e){return utils.isObject(e)&&utils.isObjKey("cloud.knapsack",e)}n(Ot,"isTokenSrcExtensions");utils.expectType(["#ddd",true,[83,1,1,1],{color:"#000",style:"solid",width:"1px"},{inset:true,color:"#000",offsetX:"0px",offsetY:"{spacing.medium}",spread:"0px",blur:"0px"},{timingFunction:"{timing.ease}",duration:"{timing.duration.medium}",delay:"7ms",color:"#000"}]);function mo(e){return !!(utils.isObject(e)&&utils.isObjKey("$value",e))}n(mo,"isTokenSrc");function Bt(e){return utils.isObject(e)&&!Ot(e)&&!utils.isObjKey("$value",e)&&!utils.isObjKey("cloud.knapsack",e)}n(Bt,"isTokenGroup");function yo(e){if(Bt(e)){let r=e.$extensions["cloud.knapsack"].group.collectionInfo;if(utils.isObjKey("type",r)&&utils.isObjKey("referenceId",r))return true}return false}n(yo,"isTokenTypeVarRef");function bo(e){let r=typeof e;if(r==="string"||r==="number"||r==="boolean")return r;throw new Error(`Invalid token value type: ${JSON.stringify(r)}. Token value is: ${JSON.stringify(e)}`)}n(bo,"getPrimitiveValue");var Co=n(e=>e.includes("px")||e.includes("rem")||e.includes("em")||e.includes("%"),"isDimensionString");function xo(e){let{value:r,unit:a}=utils.parseNumberWithUnit(e);if(!a)return {value:r};if(a!=="px"&&a!=="rem"&&a!=="em"&&a!=="%")throw new Error(`Invalid unit "${a}" for value: ${r}`);return {value:r,unit:a}}n(xo,"parseTokenDimensionValue");function Io(e){return e?.type==="data"||e?.type==="data-w-template-info"}n(Io,"isDemoWithData");function Po(e){return e?.type==="data"}n(Po,"isDataDemo");function Vo(e){return e?.type==="template"}n(Vo,"isTemplateDemo");var he=["removeHtmlAttributes","removeClassName","removeStyle","removeAria","removeEventHandlers"],Eo={removeHtmlAttributes:false,removeClassName:false,removeStyle:false,removeAria:false,removeEventHandlers:false};function Ro(e){if(e)return he.filter(r=>e[r]===true).join(",")}n(Ro,"encodeInferSpecFilters");function vo(e){let r=new Set(e.split(",").map(a=>a.trim()).filter(Boolean));return Object.fromEntries(he.map(a=>[a,r.has(a)]))}n(vo,"decodeInferSpecFilters");function No(e){return typeof e=="object"&&!e.isInferred}n(No,"isSpecNotInferred");var Bo={designSrc:"Design Source",subPage:"Subpage",template:"Template"};var De=(T=>(T.auto="auto",T.small="small",T.medium="medium",T.large="large",T.full="full",T))(De||{});var jo={patternsState:{patterns:{},renderers:{},statusSets:[]},customPagesState:{pages:{}},assetSetsState:{},navsState:{byId:{},order:[]},tokensSrc:{},filesState:{files:{}},db:{blocks:{byId:{},settings:{tokens:{rootFontSize:"16px"}}},demos:{byId:{},settings:{}},tabs:{byId:{},settings:{}},blockCollections:{byId:{},settings:{}},settings:{title:"",logoUrl:""}}};function Ft(e){return !utils.isObject(e)||!["assetSetsState","customPagesState","navsState","patternsState","tokensSrc","db"].every(a=>utils.isObjKey(a,e))?false:!utils.isObjKey("metaState",e)}n(Ft,"isKsAppClientDataNoMeta");var zo=t.define("KsAppClientDataNoMeta",Ft),Mt=v4Mini.z.strictObject({assetSetsState:v4Mini.z.object({}),customPagesState:v4Mini.z.object({pages:v4Mini.z.object({})}),navsState:v4Mini.z.object({byId:v4Mini.z.object(),order:v4Mini.z.array(v4Mini.z.string())}),patternsState:v4Mini.z.object({patterns:v4Mini.z.object({}),renderers:v4Mini.z.object({}),statusSets:v4Mini.z.array(v4Mini.z.object())}),tokensSrc:v4Mini.z.object({}),filesState:v4Mini.z.object({files:v4Mini.z.object({})}),db:v4Mini.z.object({blocks:v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})}),demos:v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})}),tabs:v4Mini.z.optional(v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})})),blockCollections:v4Mini.z.optional(v4Mini.z.object({byId:v4Mini.z.object({}),settings:v4Mini.z.object({})})),templatesConfig:v4Mini.z.optional(v4Mini.z.object({})),settings:v4Mini.z.object({title:v4Mini.z.optional(v4Mini.z.string()),hideTitleInNavigation:v4Mini.z.optional(v4Mini.z.boolean()),logoUrl:v4Mini.z.optional(v4Mini.z.string())})})}),Wo=v4Mini.z.custom().check(e=>{let{error:r}=Mt.safeParse(e.value);r&&e.issues.push(...r.issues);});function Ut(e){return utils.isObject(e)?["assetSetsState","customPagesState","navsState","patternsState","tokensSrc","metaState","db"].every(a=>utils.isObjKey(a,e)):false}n(Ut,"isKsAppClientDataAndMeta");var Lo=t.define("KsAppClientDataAndMeta",Ut),jt=t.type({isLocalDev:t.boolean(),plugins:t.array(t.type({id:t.string(),hasContent:t.boolean(),clientPluginPath:t.optional(t.string()),cssPath:t.optional(t.string())})),meta:t.optional(t.type({version:t.optional(t.string()),hasKnapsackCloud:t.boolean(),knapsackCloudSiteId:t.optional(t.string()),serverPort:t.optional(t.number()),websocketsPort:t.optional(t.number()),https:t.optional(t.boolean()),cacheDir:t.optional(t.string()),ksVersions:t.type({app:t.string()})}))}),_o=jt.is;function Wt(e){return !utils.isObject(e)||!["assetSetsState","customPagesState","navsState","patternsState","settingsState","tokensState"].every(a=>utils.isObjKey(a,e))?false:!utils.isObjKey("metaState",e)}n(Wt,"isKsAppClientDataNoMetaV3");var sr=t.define("KsAppClientDataNoMeta",Wt);function Lt(e){return utils.isObject(e)?["assetSetsState","customPagesState","navsState","patternsState","settingsState","tokensState","metaState"].every(a=>utils.isObjKey(a,e)):false}n(Lt,"isKsAppClientDataAndMetaV3");var pr=t.define("KsAppClientDataAndMeta",Lt),_t=t.type({isLocalDev:t.boolean(),plugins:t.array(t.type({id:t.string(),hasContent:t.boolean(),clientPluginPath:t.optional(t.string()),cssPath:t.optional(t.string())})),meta:t.optional(t.type({version:t.optional(t.string()),hasKnapsackCloud:t.boolean(),knapsackCloudSiteId:t.optional(t.string()),serverPort:t.optional(t.number()),websocketsPort:t.optional(t.number()),https:t.optional(t.boolean()),cacheDir:t.optional(t.string()),ksVersions:t.type({app:t.string()})}))}),lr=_t.is;var Re={version:"4.1.7",checkIfNeeded:n(e=>true,"checkIfNeeded"),migrate:n(e=>{if(!immer.isDraft(e))throw new Error("Tried to run migrations on appClientData but it is not an Immer Draft");Object.values(e.patternsState.patterns).forEach(r=>{delete r.demoSize;}),Object.values(e.db.demos.byId).forEach(r=>{r.type==="data"&&(Object.entries(r.data.slots??{}).forEach(([a,u])=>{r.data.slots[a]=u.map(g=>typeof g=="string"?{type:"text",text:g}:(g.type==="template-reference"||g.type==="text"||(g.type="template-demo"),g));}),!(r.patternId&&r.templateId)&&(()=>{for(let{id:a,templates:u=[]}of Object.values(e.patternsState.patterns))for(let{id:g,demoIds:T=[]}of u)if(T.includes(r.id)){r.patternId=a,r.templateId=g;return}})());});},"migrate")};var yr=[Re];var $t={ROOT:"ROOT",DESIGN:"Design",DEVELOP:"Develop",DOCUMENT:"Documentation",MCP:"MCP",PROTOTYPE:"Prototype",SETTINGS:"Settings"},kr=Object.values($t);var Ht=(k=>(k.string="string",k.boolean="boolean",k.number="number",k.object="object",k.options="options",k.function="function",k.customTypeScript="customTypeScript",k.array="array",k.arrayOfObjects="arrayOfObjects",k.arrayOfStrings="arrayOfStrings",k.arrayOfNumbers="arrayOfNumbers",k.unknown="unknown",k))(Ht||{}),br=n(e=>"type"in e&&e.type==="string"&&!("enum"in e),"isStringProp"),Cr=n(e=>"type"in e&&e.type==="number","isNumberProp"),xr=n(e=>"type"in e&&e.type==="boolean","isBooleanProp"),hr=n(e=>"enum"in e,"isOptionsProp"),Dr=n(e=>"typeof"in e&&e?.typeof==="function","isFunctionProp"),Ir=n(e=>!("typeof"in e)&&"tsType"in e,"isCustomTypeScriptProp"),Pr=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="object","isArrayOfObjectsProp"),Vr=n(e=>"type"in e&&e.type==="object"&&"properties"in e&&Object.keys(e.properties).length>0,"isObjectProp"),Er=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="string","isArrayOfStringsProp"),Rr=n(e=>"type"in e&&e.type==="array"&&"items"in e&&e.items.type==="number","isArrayOfNumbersProp");var ve=t__namespace.object({op:t__namespace.union([t__namespace.literal("replace"),t__namespace.literal("remove"),t__namespace.literal("add")]),path:t__namespace.array(t__namespace.union([t__namespace.string(),t__namespace.number()])),value:t__namespace.optional(t__namespace.any())}),Yt=ve,wr=n(e=>Yt.is(e),"isPatch"),de=t__namespace.array(ve),qt=de,Or=n(e=>qt.is(e),"isPatches"),Ne=t__namespace.type({patches:de,inversePatches:t__namespace.optional(de),event:t__namespace.optional(t__namespace.object({type:t__namespace.string()})),id:t__namespace.string(),date:t__namespace.string(),userId:t__namespace.optional(t__namespace.string())}),Jt=Ne,Br=n(e=>Jt.is(e),"isKsRemoteChange"),Xt=t__namespace.array(Ne),Zt=Xt,Ar=n(e=>Zt.is(e),"isKsRemoteChanges");var oe={react:"react",vue:"vue","web-components":"web-components",twig:"twig",hbs:"hbs",angular:"angular",html:"html",ios:"ios",android:"android"},Ur=zod.z.strictObject({path:zod.z.string().describe("Can contain glob patterns, relative paths, absolute paths, package paths, or package sub-paths"),filter:zod.z.custom(e=>typeof e=="function").optional().describe("A function that takes a path and returns a boolean")});function jr(e){return "codeSrcPath"in e}n(jr,"isTemplateInfoWithCodeSrcPath");function Qt(e){switch(e.rendererId){case "angular":case "react":return `${e.rendererId}---${e.codeSrcPath}---${e.exportName||"default"}`;case "web-components":return `${e.rendererId}---${e.elementName}`;case "twig":return `${e.rendererId}---${e.namespacePath}`;case "vue":case "hbs":case "html":return `${e.rendererId}---${e.codeSrcPath}`;case "ios":return `${e.rendererId}---${e.moduleName}---${e.symbolName}`;case "android":return `${e.rendererId}---${e.packageName}---${e.componentName}`;default:{throw new Error(`Invalid template info: ${JSON.stringify(e)}`)}}}n(Qt,"createTemplateInfoId");function zr(e){return {...e,id:Qt(e)}}n(zr,"addIdToTemplateInfo");function Wr({rendererId:e,alias:r,path:a}){return (()=>{switch(e){case "react":case "angular":return {rendererId:e,codeSrcPath:a,exportName:r||"default"};case "vue":case "hbs":case "html":return {rendererId:e,codeSrcPath:a};case "twig":return {rendererId:e,namespacePath:r};case "web-components":return {rendererId:e,elementName:r};case "ios":return {rendererId:e,moduleName:a,symbolName:r};case "android":return {rendererId:e,packageName:a,componentName:r};default:{throw new Error(`Invalid renderer ID: ${e}`)}}})()}n(Wr,"normalizeTemplateInfo");function Lr(e){switch(e.rendererId){case "react":case "angular":return {path:e.codeSrcPath,alias:e.exportName};case "hbs":case "html":case "vue":return {path:e.codeSrcPath};case "twig":return {alias:e.namespacePath};case "web-components":return {alias:e.elementName};case "ios":return {path:e.moduleName,alias:e.symbolName};case "android":return {path:e.packageName,alias:e.componentName};default:{throw new Error(`Invalid template info: ${JSON.stringify(e)}`)}}}n(Lr,"convertTemplateInfoToOldWay");var _r={id:oe.ios,title:"iOS",aliasUse:"required",aliasTitle:"Symbol Name",aliasDescription:"The synchronized name of the iOS symbol.",enableDataDemos:true,enableTemplateDemos:false,hasTemplateImgSupport:true,hasSlotsSupport:false,hasSlotOptionsSupport:false,hasInferSpecSupport:true,hasTemplateSuggestionsSupport:true},Gr={id:oe.android,title:"Android",aliasUse:"required",aliasTitle:"Component Name",aliasDescription:"The synchronized name of the Android component.",enableDataDemos:true,enableTemplateDemos:false,hasSlotsSupport:false,hasSlotOptionsSupport:false,hasTemplateImgSupport:true,hasInferSpecSupport:true,hasTemplateSuggestionsSupport:true},en=[oe.ios,oe.android];function tn(e){return en.includes(e)}n(tn,"isRendererIdForNativeMobile");function $r(e){return tn(e.rendererId)}n($r,"isTemplateInfoForNativeMobile");var nn=(r=>(r.ready="ready",r))(nn||{}),qr="ks-meta";var Xr={PATTERN_TEMPLATE_CHANGED:"PATTERN_TEMPLATE_CHANGED",PATTERN_ASSET_CHANGED:"PATTERN_ASSET_CHANGED",DESIGN_TOKENS_CHANGED:"DESIGN_TOKENS_CHANGED",RENDERER_CLIENT_RELOAD:"RENDERER_CLIENT_RELOAD",APP_CLIENT_DATA_CHANGED:"APP_CLIENT_DATA_CHANGED"};var on=(T=>(T.GitHub="GitHub",T.GitLab="GitLab",T.GitLabRest="GitLabRest",T.Bitbucket="Bitbucket",T.Azure="Azure",T))(on||{}),rn=(u=>(u.Conflicting="CONFLICTING",u.Mergeable="MERGEABLE",u.Unknown="UNKNOWN",u))(rn||{}),an=(g=>(g.Create="CREATE",g.Move="MOVE",g.Update="UPDATE",g.Chmod="CHMOD",g))(an||{}),sn=(a=>(a.Base64="BASE64",a.Text="TEXT",a))(sn||{});var pn={ADMIN:{id:"ADMIN",title:"Admin",description:"Full access. Can manage users, publish changes, and configure all settings.",hierarchy:4,permissions:{canManageUsers:true,canDelete:true,canEdit:true,canPublish:true,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:true,canView:true},DESIGN:{canEdit:true,canView:true},DEVELOP:{canEdit:true,canView:true},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:true,canView:true},MCP:{canEdit:true,canView:true}}},CONTRIBUTOR:{id:"CONTRIBUTOR",title:"Contributor",description:"Can view and edit content across Design, Develop, and Prototype. Cannot publish or manage users.",hierarchy:3,permissions:{canManageUsers:false,canDelete:false,canEdit:true,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:true,canView:true},DESIGN:{canEdit:true,canView:true},DEVELOP:{canEdit:true,canView:true},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:true,canView:true},MCP:{canEdit:false,canView:false}}},CONSUMER:{id:"CONSUMER",title:"Consumer",description:"Can view documentation and edit prototypes. Cannot access Design or Develop sections.",hierarchy:2,permissions:{canManageUsers:false,canDelete:false,canEdit:true,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:true,canView:true},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},VIEWER:{id:"VIEWER",title:"Viewer",description:"Read-only access to documentation. Cannot edit anything.",hierarchy:1,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},ANONYMOUS:{id:"ANONYMOUS",title:"Anonymous",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:true},sectionAccess:{ROOT:{canEdit:false,canView:true},DOCUMENT:{canEdit:false,canView:true},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},EDITOR:{id:"EDITOR",title:"Editor",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:false},sectionAccess:{ROOT:{canEdit:false,canView:false},DOCUMENT:{canEdit:false,canView:false},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}},MANAGER:{id:"MANAGER",title:"Manager",description:"",hierarchy:0,permissions:{canManageUsers:false,canDelete:false,canEdit:false,canPublish:false,canView:false},sectionAccess:{ROOT:{canEdit:false,canView:false},DOCUMENT:{canEdit:false,canView:false},DESIGN:{canEdit:false,canView:false},DEVELOP:{canEdit:false,canView:false},PROTOTYPE:{canEdit:false,canView:false},SETTINGS:{canEdit:false,canView:false},MCP:{canEdit:false,canView:false}}}},ea=Object.values(pn);function oa({path:e,queryParams:r,origin:a}){return urls.createUrlWithParams({url:e,queryParams:r,origin:a})}n(oa,"createUrlForRoute");function cn(e){return Object.fromEntries(e.entries())}n(cn,"getParams");function ra(e){return cn(e)}n(ra,"getParamsForRoute");Object.defineProperty(exports,"isObjKey",{enumerable:true,get:function(){return utils.isObjKey}});Object.defineProperty(exports,"isObject",{enumerable:true,get:function(){return utils.isObject}});exports.ALL_INFER_SPEC_FILTER_KEYS=he;exports.BlockSizes=Gn;exports.BlockSpacings=$n;exports.CodeSrcUserConfigSchema=Ur;exports.ColorConfigStruct=l;exports.ColorStringStruct=M;exports.ColorTokenConfigStruct=gn;exports.DEFAULT_INFER_SPEC_FILTERS=Eo;exports.FontFaceConfigStruct=w;exports.FontFaceFormatsEnumStruct=We;exports.FontFaceSourceFormats=ze;exports.FontFaceSourceStruct=Le;exports.FontFaceWeightStruct=ye;exports.FontSizeConfigStruct=$e;exports.FontSizeConfigValStruct=me;exports.FontStretches=Ge;exports.GitProviderType=on;exports.HeadingLevels=Sn;exports.KsAppClientDataAndMetaStruct=Lo;exports.KsAppClientDataAndMetaStructV3=pr;exports.KsAppClientDataNoMetaStruct=zo;exports.KsAppClientDataNoMetaStructV3=sr;exports.KsAppClientDataNoMetaZod=Wo;exports.KsMetaStateStruct=jt;exports.KsMetaStateStructV3=_t;exports.KsRemoteChangesStruct=Zt;exports.KsRendererClientEvents=nn;exports.MergeableState=rn;exports.NavCustomizationConfigStruct=E;exports.PageHeaderSizes=De;exports.PrimaryNavCustomizationConfigStruct=W;exports.PropTypeNames=Ht;exports.RestActions=an;exports.SecondaryNavCustomizationConfigStruct=L;exports.TextEncoding=sn;exports.TextTransforms=_e;exports.TokenReferenceStruct=c;exports.TokenValueColorStruct=A;exports.TokenValueCubicBezierStruct=G;exports.TokenValueDimensionStruct=h;exports.TokenValueDurationStruct=R;exports.TokenValueFontWeightStruct=pe;exports.TokenValueStrokeStyleStruct=K;exports.TypographyConfigStruct=s;exports.TypographyLinkConfigStruct=O;exports.UiConfigStruct=zn;exports.UiConfigV10Struct=Je;exports.UiConfigV1Struct=wn;exports.UiConfigV2Struct=On;exports.UiConfigV3Struct=Bn;exports.UiConfigV4Struct=An;exports.UiConfigV5Struct=Kn;exports.UiConfigV6Struct=Fn;exports.UiConfigV7Struct=Mn;exports.UiConfigV8Struct=Un;exports.UiConfigV9Struct=jn;exports.WS_EVENTS=Xr;exports.addIdToTemplateInfo=zr;exports.appSections=kr;exports.appSectionsById=$t;exports.assertTokenData=ro;exports.convertTemplateInfoToOldWay=Lr;exports.createTemplateInfoId=Qt;exports.createUrlForRoute=oa;exports.customizableNavElements=Pn;exports.decodeInferSpecFilters=vo;exports.emptyAppClientData=jo;exports.encodeInferSpecFilters=Ro;exports.getParams=cn;exports.getParamsForRoute=ra;exports.getPrimitiveValue=bo;exports.hasTokenReferences=x;exports.isArrayOfNumbersProp=Rr;exports.isArrayOfObjectsProp=Pr;exports.isArrayOfStringsProp=Er;exports.isBooleanProp=xr;exports.isCustomTypeScriptProp=Ir;exports.isDataDemo=Po;exports.isDemoWithData=Io;exports.isDimensionString=Co;exports.isFunctionProp=Dr;exports.isKsAppClientDataAndMeta=Ut;exports.isKsAppClientDataAndMetaV3=Lt;exports.isKsAppClientDataNoMeta=Ft;exports.isKsAppClientDataNoMetaV3=Wt;exports.isKsMetaState=_o;exports.isKsMetaStateV3=lr;exports.isKsRemoteChange=Br;exports.isKsRemoteChanges=Ar;exports.isNotTokenReference=Ze;exports.isNumberProp=Cr;exports.isObjectProp=Vr;exports.isOptionsProp=hr;exports.isPatch=wr;exports.isPatches=Or;exports.isRendererIdForNativeMobile=tn;exports.isSpecNotInferred=No;exports.isStringProp=br;exports.isTemplateDemo=Vo;exports.isTemplateInfoForNativeMobile=$r;exports.isTemplateInfoWithCodeSrcPath=jr;exports.isTokenDataComposite=to;exports.isTokenGroup=Bt;exports.isTokenReference=Xe;exports.isTokenSrc=mo;exports.isTokenSrcExtensions=Ot;exports.isTokenSrcValueInfoComposite=co;exports.isTokenSrcValueInfoSingular=lo;exports.isTokenTypeComposite=q;exports.isTokenTypeSingular=Se;exports.isTokenTypeVarRef=yo;exports.isTokenValueBorder=kt;exports.isTokenValueColor=rt;exports.isTokenValueDimension=J;exports.isTokenValueDuration=no;exports.isTokenValueFontWeight=oo;exports.isTokenValueShadow=mt;exports.isTokenValueTransition=Ct;exports.ksRendererClientMetaId=qr;exports.metaForAndroidRenderer=Gr;exports.metaForIosRenderer=_r;exports.migrations=yr;exports.normalizeTemplateInfo=Wr;exports.pageElements=bn;exports.pageElementsV2=Cn;exports.parseTokenDimensionValue=xo;exports.patternTabTypes=Bo;exports.rendererIds=oe;exports.rendererIdsForNativeMobile=en;exports.roles=ea;exports.rolesById=pn;exports.strokeStyleValues=Jn;exports.tokenNameDisplayFormats=Yn;exports.tokenTypeComposites=et;exports.tokenTypeSingulars=nt;//# sourceMappingURL=index.js.map
2
2
  //# sourceMappingURL=index.js.map