@riverbankcms/sdk 0.60.7 → 0.60.9

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.
Files changed (33) hide show
  1. package/dist/_dts/api/src/navigation/linkValue.d.ts +1 -1
  2. package/dist/_dts/blocks/src/index.d.ts +2 -1
  3. package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +185 -0
  4. package/dist/_dts/blocks/src/system/manifest/index.d.ts +1 -0
  5. package/dist/_dts/blocks/src/system/manifest/validation.d.ts +2 -84
  6. package/dist/_dts/blocks/src/system/types/link.d.ts +93 -1
  7. package/dist/_dts/db/src/schemas/forms.d.ts +24 -3
  8. package/dist/_dts/editor-blocks/src/widgets/link/LinkSummary.d.ts +1 -1
  9. package/dist/_dts/editor-blocks/src/widgets/link/LinkWidget.d.ts +1 -1
  10. package/dist/_dts/editor-blocks/src/widgets/link/utils.d.ts +1 -1
  11. package/dist/_dts/sdk/src/config/typed-entries.d.ts +36 -1
  12. package/dist/_dts/sdk/src/contracts/content.d.ts +6 -1
  13. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  14. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +1 -0
  15. package/dist/_dts/sdk/src/version.d.ts +1 -1
  16. package/dist/cli/index.mjs +676 -428
  17. package/dist/client/client.mjs +39991 -39754
  18. package/dist/client/hooks.mjs +1737 -1735
  19. package/dist/client/rendering.mjs +1463 -1226
  20. package/dist/preview-next/client/runtime.mjs +1052 -799
  21. package/dist/server/components.mjs +2983 -2745
  22. package/dist/server/config-validation.mjs +1727 -1725
  23. package/dist/server/config.mjs +1727 -1725
  24. package/dist/server/data.mjs +1737 -1735
  25. package/dist/server/index.mjs +1 -1
  26. package/dist/server/next.mjs +3026 -2788
  27. package/dist/server/page-converter.mjs +10 -10
  28. package/dist/server/prebuild.mjs +1 -1
  29. package/dist/server/rendering/server.mjs +2996 -2758
  30. package/dist/server/rendering.mjs +2996 -2758
  31. package/dist/server/routing.mjs +256 -285
  32. package/dist/server/server.mjs +1738 -1736
  33. package/package.json +1 -1
@@ -7392,74 +7392,6 @@ function parsePublicProductCategorySelector(value) {
7392
7392
  return void 0;
7393
7393
  }
7394
7394
 
7395
- // ../api/src/aiPlayground.ts
7396
- import { z as z8 } from "zod";
7397
- var Rfc6902PatchOp = z8.discriminatedUnion("op", [
7398
- // Standard RFC-6902 operations
7399
- z8.object({
7400
- op: z8.literal("add"),
7401
- path: z8.string(),
7402
- value: z8.unknown()
7403
- }),
7404
- z8.object({
7405
- op: z8.literal("remove"),
7406
- path: z8.string()
7407
- }),
7408
- z8.object({
7409
- op: z8.literal("replace"),
7410
- path: z8.string(),
7411
- value: z8.unknown()
7412
- }),
7413
- z8.object({
7414
- op: z8.literal("move"),
7415
- from: z8.string(),
7416
- path: z8.string()
7417
- }),
7418
- z8.object({
7419
- op: z8.literal("copy"),
7420
- from: z8.string(),
7421
- path: z8.string()
7422
- }),
7423
- // Block-level operations (Phase 2)
7424
- z8.object({
7425
- op: z8.literal("add_block"),
7426
- blockKind: z8.string(),
7427
- afterBlockId: z8.string().nullable(),
7428
- content: z8.record(z8.string(), z8.unknown()),
7429
- rationale: z8.string()
7430
- }),
7431
- z8.object({
7432
- op: z8.literal("delete_block"),
7433
- blockId: z8.string(),
7434
- rationale: z8.string()
7435
- }),
7436
- z8.object({
7437
- op: z8.literal("reorder_block"),
7438
- blockId: z8.string(),
7439
- afterBlockId: z8.string().nullable(),
7440
- rationale: z8.string()
7441
- })
7442
- ]);
7443
- var PlaygroundProposeRequest = z8.object({
7444
- request: z8.string().min(1).max(2e3)
7445
- });
7446
- var MultiPagePatchEnvelope = z8.object({
7447
- pageId: z8.string(),
7448
- blockId: z8.string().optional(),
7449
- // Not present for page-level ops
7450
- blockKind: z8.string().optional(),
7451
- blockPurpose: z8.string().optional().nullable(),
7452
- ops: z8.array(Rfc6902PatchOp),
7453
- rationale: z8.string(),
7454
- currentContent: z8.record(z8.string(), z8.unknown()).optional()
7455
- });
7456
- var MultiPageUpdateResponse = z8.object({
7457
- patches: z8.array(MultiPagePatchEnvelope),
7458
- assistantMessage: z8.string(),
7459
- pagesModified: z8.number(),
7460
- toolCallsUsed: z8.number()
7461
- });
7462
-
7463
7395
  // ../blocks/src/system/manifest/augmentManifest.ts
7464
7396
  function augmentManifest(manifest) {
7465
7397
  let augmentedFields = manifest.fields ?? [];
@@ -7517,14 +7449,6 @@ function registerManifest(manifest) {
7517
7449
  return manifest;
7518
7450
  }
7519
7451
 
7520
- // ../blocks/src/lib/typeGuards.ts
7521
- function isRecord2(value) {
7522
- return typeof value === "object" && value !== null && !Array.isArray(value);
7523
- }
7524
- function isObjectRecord(value) {
7525
- return typeof value === "object" && value !== null;
7526
- }
7527
-
7528
7452
  // ../theme-core/src/site-styles/types.ts
7529
7453
  function asDesignBlockId(value) {
7530
7454
  return brandNonEmptyString(value, "DesignBlockId");
@@ -7832,10 +7756,10 @@ function assertUniqueLayoutProfileKeys(profiles) {
7832
7756
  }
7833
7757
 
7834
7758
  // ../theme-core/src/buttons/personalities/types.ts
7835
- import { z as z11 } from "zod";
7759
+ import { z as z10 } from "zod";
7836
7760
 
7837
7761
  // ../theme-core/src/buttons/types.ts
7838
- import { z as z9 } from "zod";
7762
+ import { z as z8 } from "zod";
7839
7763
  var VARIANT_ROLES = [
7840
7764
  "primary",
7841
7765
  "secondary",
@@ -7845,22 +7769,22 @@ var VARIANT_ROLES = [
7845
7769
  "tertiary",
7846
7770
  "accent"
7847
7771
  ];
7848
- var cornerStyleSchema = z9.enum(["square", "rounded", "pill"]);
7849
- var shadowSizeSchema = z9.enum(["none", "low", "medium", "high"]);
7850
- var textTransformSchema = z9.enum(["none", "uppercase", "lowercase", "capitalize"]);
7851
- var fontWeightSchema = z9.union([z9.literal(500), z9.literal(600), z9.literal(700)]);
7852
- var buttonTypographySchema = z9.enum(["body", "heading"]);
7853
- var letterSpacingSchema = z9.enum(["tight", "normal", "loose"]);
7854
- var hoverTransformSchema = z9.enum(["none", "lift", "scale", "press"]);
7855
- var hoverColorSchema = z9.enum(["none", "brighten", "darken", "saturate", "token"]);
7856
- var buttonPaddingPresetSchema = z9.enum(["compact", "default", "spacious"]);
7857
- var gradientStyleSchema = z9.enum(["linear", "radial", "conic"]);
7858
- var gradientSharpnessSchema = z9.enum(["smooth", "medium", "hard"]);
7859
- var prioritySchema = z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]);
7860
- var variantRoleSchema = z9.enum(VARIANT_ROLES);
7861
- var buttonSizeNameSchema = z9.enum(["sm", "md", "lg", "xl"]);
7772
+ var cornerStyleSchema = z8.enum(["square", "rounded", "pill"]);
7773
+ var shadowSizeSchema = z8.enum(["none", "low", "medium", "high"]);
7774
+ var textTransformSchema = z8.enum(["none", "uppercase", "lowercase", "capitalize"]);
7775
+ var fontWeightSchema = z8.union([z8.literal(500), z8.literal(600), z8.literal(700)]);
7776
+ var buttonTypographySchema = z8.enum(["body", "heading"]);
7777
+ var letterSpacingSchema = z8.enum(["tight", "normal", "loose"]);
7778
+ var hoverTransformSchema = z8.enum(["none", "lift", "scale", "press"]);
7779
+ var hoverColorSchema = z8.enum(["none", "brighten", "darken", "saturate", "token"]);
7780
+ var buttonPaddingPresetSchema = z8.enum(["compact", "default", "spacious"]);
7781
+ var gradientStyleSchema = z8.enum(["linear", "radial", "conic"]);
7782
+ var gradientSharpnessSchema = z8.enum(["smooth", "medium", "hard"]);
7783
+ var prioritySchema = z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]);
7784
+ var variantRoleSchema = z8.enum(VARIANT_ROLES);
7785
+ var buttonSizeNameSchema = z8.enum(["sm", "md", "lg", "xl"]);
7862
7786
  var PADDING_TOKEN_PATTERN = /^(?:0|\d+(?:\.\d+)?(?:rem|em|px|%))$/;
7863
- var paddingShorthandSchema = z9.string().refine(
7787
+ var paddingShorthandSchema = z8.string().refine(
7864
7788
  (value) => {
7865
7789
  const parts = value.split(/\s+/).filter(Boolean);
7866
7790
  return parts.length === 2 && parts.every((token) => PADDING_TOKEN_PATTERN.test(token));
@@ -7869,11 +7793,11 @@ var paddingShorthandSchema = z9.string().refine(
7869
7793
  message: 'Padding must be two space-separated CSS length tokens (e.g. "0.5rem 1rem"). Use `0` for zero.'
7870
7794
  }
7871
7795
  );
7872
- var buttonSizeConfigSchema = z9.object({
7796
+ var buttonSizeConfigSchema = z8.object({
7873
7797
  padding: paddingShorthandSchema,
7874
- fontSize: z9.string().optional()
7798
+ fontSize: z8.string().optional()
7875
7799
  });
7876
- var buttonSizesSchema = z9.object({
7800
+ var buttonSizesSchema = z8.object({
7877
7801
  sm: buttonSizeConfigSchema,
7878
7802
  md: buttonSizeConfigSchema,
7879
7803
  lg: buttonSizeConfigSchema,
@@ -7884,9 +7808,9 @@ var buttonSizesSchema = z9.object({
7884
7808
  lg,
7885
7809
  xl: xl ?? lg
7886
7810
  }));
7887
- var buttonGlobalSettingsSchema = z9.object({
7811
+ var buttonGlobalSettingsSchema = z8.object({
7888
7812
  cornerStyle: cornerStyleSchema,
7889
- cornerRadius: z9.number().min(0).max(24).optional(),
7813
+ cornerRadius: z8.number().min(0).max(24).optional(),
7890
7814
  shadow: shadowSizeSchema,
7891
7815
  textTransform: textTransformSchema,
7892
7816
  fontWeight: fontWeightSchema,
@@ -7896,104 +7820,104 @@ var buttonGlobalSettingsSchema = z9.object({
7896
7820
  * by the current generator and will be removed once the legacy
7897
7821
  * `primitives/content/components/Button.tsx` slot exports are deleted.
7898
7822
  */
7899
- borderWidth: z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]),
7823
+ borderWidth: z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]),
7900
7824
  // === Family-level typography ===
7901
7825
  // Typography source (body or heading) — selects which theme typography pool to inherit
7902
7826
  typography: buttonTypographySchema.optional(),
7903
7827
  // Font size for all variants in the family (Tailwind token, e.g. "text-xs", "text-sm")
7904
7828
  // Sized variants get this as default; fixed variants inherit unless they override.
7905
7829
  // Size class CSS may still override at run time for sized variants.
7906
- fontSize: z9.string().optional(),
7830
+ fontSize: z8.string().optional(),
7907
7831
  // Letter spacing applied to all variants
7908
7832
  letterSpacing: letterSpacingSchema.optional(),
7909
7833
  // Italic style
7910
- italic: z9.boolean().optional(),
7834
+ italic: z8.boolean().optional(),
7911
7835
  // Padding preset (applies to sized variants without a sizes config)
7912
7836
  paddingPreset: buttonPaddingPresetSchema.optional(),
7913
7837
  hoverTransform: hoverTransformSchema,
7914
7838
  hoverColor: hoverColorSchema,
7915
7839
  // When hoverColor is 'token', this specifies which token to use
7916
- hoverColorToken: z9.string().optional(),
7840
+ hoverColorToken: z8.string().optional(),
7917
7841
  // Gradient settings (if any variant uses gradients)
7918
7842
  gradientStyle: gradientStyleSchema.optional(),
7919
- gradientAngle: z9.number().min(0).max(360).optional(),
7843
+ gradientAngle: z8.number().min(0).max(360).optional(),
7920
7844
  gradientSharpness: gradientSharpnessSchema.optional()
7921
7845
  });
7922
- var gradientDirectionSchema = z9.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
7923
- var buttonBackgroundSchema = z9.discriminatedUnion("type", [
7924
- z9.object({ type: z9.literal("solid"), colorToken: z9.string() }),
7925
- z9.object({
7926
- type: z9.literal("gradient"),
7927
- stops: z9.array(z9.string()).min(2),
7846
+ var gradientDirectionSchema = z8.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
7847
+ var buttonBackgroundSchema = z8.discriminatedUnion("type", [
7848
+ z8.object({ type: z8.literal("solid"), colorToken: z8.string() }),
7849
+ z8.object({
7850
+ type: z8.literal("gradient"),
7851
+ stops: z8.array(z8.string()).min(2),
7928
7852
  direction: gradientDirectionSchema
7929
7853
  }),
7930
- z9.object({ type: z9.literal("transparent") })
7854
+ z8.object({ type: z8.literal("transparent") })
7931
7855
  ]);
7932
- var effectApplicationSchema = z9.object({
7933
- effectId: z9.string(),
7934
- options: z9.record(z9.string(), z9.any()).optional()
7935
- });
7936
- var buttonBorderSchema = z9.object({
7937
- widthClass: z9.string(),
7938
- colorToken: z9.string()
7939
- });
7940
- var variantShadowSchema = z9.object({
7941
- elevation: z9.enum(["none", "low", "medium", "high"]),
7942
- softness: z9.enum(["crisp", "soft", "hard"]).nullable(),
7943
- position: z9.enum(["bottom", "bottom-right"]).default("bottom")
7944
- });
7945
- var variantEffectsSchema = z9.object({
7946
- base: z9.array(effectApplicationSchema).optional(),
7947
- hover: z9.array(effectApplicationSchema).optional(),
7948
- active: z9.array(effectApplicationSchema).optional(),
7949
- focus: z9.array(effectApplicationSchema).optional()
7950
- });
7951
- var variantSizeOverridesSchema = z9.object({
7856
+ var effectApplicationSchema = z8.object({
7857
+ effectId: z8.string(),
7858
+ options: z8.record(z8.string(), z8.any()).optional()
7859
+ });
7860
+ var buttonBorderSchema = z8.object({
7861
+ widthClass: z8.string(),
7862
+ colorToken: z8.string()
7863
+ });
7864
+ var variantShadowSchema = z8.object({
7865
+ elevation: z8.enum(["none", "low", "medium", "high"]),
7866
+ softness: z8.enum(["crisp", "soft", "hard"]).nullable(),
7867
+ position: z8.enum(["bottom", "bottom-right"]).default("bottom")
7868
+ });
7869
+ var variantEffectsSchema = z8.object({
7870
+ base: z8.array(effectApplicationSchema).optional(),
7871
+ hover: z8.array(effectApplicationSchema).optional(),
7872
+ active: z8.array(effectApplicationSchema).optional(),
7873
+ focus: z8.array(effectApplicationSchema).optional()
7874
+ });
7875
+ var variantSizeOverridesSchema = z8.object({
7952
7876
  sm: buttonSizeConfigSchema.optional(),
7953
7877
  md: buttonSizeConfigSchema.optional(),
7954
7878
  lg: buttonSizeConfigSchema.optional(),
7955
7879
  xl: buttonSizeConfigSchema.optional()
7956
7880
  });
7957
- var buttonVariantSchema = z9.object({
7958
- id: z9.string(),
7959
- name: z9.string().min(1).max(20),
7960
- enabled: z9.boolean(),
7881
+ var buttonVariantSchema = z8.object({
7882
+ id: z8.string(),
7883
+ name: z8.string().min(1).max(20),
7884
+ enabled: z8.boolean(),
7961
7885
  priority: prioritySchema,
7962
7886
  // Base appearance (token-based)
7963
7887
  background: buttonBackgroundSchema,
7964
- textColorToken: z9.string(),
7888
+ textColorToken: z8.string(),
7965
7889
  /** Tailwind radius token (e.g. `'rounded-md'`). Omit to inherit from `global.cornerStyle`. */
7966
- borderRadius: z9.string().optional(),
7890
+ borderRadius: z8.string().optional(),
7967
7891
  // Optional shadow override (uses theme.shadow if not specified)
7968
7892
  shadow: variantShadowSchema.optional(),
7969
7893
  // Border (optional)
7970
7894
  border: buttonBorderSchema.optional(),
7971
7895
  // Hover background token (per-variant override, takes precedence over global hoverColorToken)
7972
- hoverBackgroundToken: z9.string().optional(),
7896
+ hoverBackgroundToken: z8.string().optional(),
7973
7897
  // Effect composition
7974
7898
  effects: variantEffectsSchema.optional(),
7975
7899
  // Per-variant size overrides — see VariantSizeOverrides
7976
7900
  sizes: variantSizeOverridesSchema.optional()
7977
7901
  });
7978
- var buttonSystemSchema = z9.object({
7902
+ var buttonSystemSchema = z8.object({
7979
7903
  global: buttonGlobalSettingsSchema,
7980
- variants: z9.array(buttonVariantSchema).min(1).max(6),
7904
+ variants: z8.array(buttonVariantSchema).min(1).max(6),
7981
7905
  sizes: buttonSizesSchema.optional()
7982
7906
  });
7983
7907
 
7984
7908
  // ../theme-core/src/site-styles/styleTags.ts
7985
- import { z as z10 } from "zod";
7909
+ import { z as z9 } from "zod";
7986
7910
  var STYLE_AXIS_VALUES = {
7987
7911
  tone: ["minimal", "classic", "bold"],
7988
7912
  energy: ["calm", "vibrant"],
7989
7913
  motion: ["subtle", "standard", "expressive"],
7990
7914
  era: ["editorial", "modern", "organic", "technical", "retro"]
7991
7915
  };
7992
- var styleTagsSchema = z10.object({
7993
- tone: z10.enum(STYLE_AXIS_VALUES.tone).optional(),
7994
- energy: z10.enum(STYLE_AXIS_VALUES.energy).optional(),
7995
- motion: z10.enum(STYLE_AXIS_VALUES.motion).optional(),
7996
- era: z10.enum(STYLE_AXIS_VALUES.era).optional()
7916
+ var styleTagsSchema = z9.object({
7917
+ tone: z9.enum(STYLE_AXIS_VALUES.tone).optional(),
7918
+ energy: z9.enum(STYLE_AXIS_VALUES.energy).optional(),
7919
+ motion: z9.enum(STYLE_AXIS_VALUES.motion).optional(),
7920
+ era: z9.enum(STYLE_AXIS_VALUES.era).optional()
7997
7921
  });
7998
7922
 
7999
7923
  // ../theme-core/src/buttons/personalities/types.ts
@@ -8003,11 +7927,11 @@ function asButtonPersonalityId(value) {
8003
7927
  }
8004
7928
  return value;
8005
7929
  }
8006
- var buttonPersonalityIdSchema = z11.string().min(1).transform((value) => asButtonPersonalityId(value));
8007
- var buttonPersonalitySchema = z11.object({
7930
+ var buttonPersonalityIdSchema = z10.string().min(1).transform((value) => asButtonPersonalityId(value));
7931
+ var buttonPersonalitySchema = z10.object({
8008
7932
  id: buttonPersonalityIdSchema,
8009
- name: z11.string().min(1),
8010
- description: z11.string().min(1),
7933
+ name: z10.string().min(1),
7934
+ description: z10.string().min(1),
8011
7935
  tags: styleTagsSchema,
8012
7936
  buttonSystem: buttonSystemSchema
8013
7937
  });
@@ -8546,51 +8470,51 @@ var personalitiesById = new Map(
8546
8470
  );
8547
8471
 
8548
8472
  // ../theme-core/src/palette/variants/types.ts
8549
- import { z as z23 } from "zod";
8473
+ import { z as z22 } from "zod";
8550
8474
 
8551
8475
  // ../theme-core/src/schema.ts
8552
- import { z as z22 } from "zod";
8476
+ import { z as z21 } from "zod";
8553
8477
 
8554
8478
  // ../theme-core/src/lib/media.ts
8555
- import z12 from "zod";
8556
- var hotspotSchema = z12.object({
8557
- x: z12.number().min(0).max(1),
8558
- y: z12.number().min(0).max(1),
8559
- radius: z12.number().optional()
8560
- });
8561
- var rotationSchema = z12.union([z12.literal(0), z12.literal(90), z12.literal(180), z12.literal(270)]);
8562
- var rectSchema = z12.tuple([z12.number(), z12.number(), z12.number(), z12.number()]);
8563
- var aspectCropSchema = z12.object({
8564
- aspect: z12.preprocess((value) => value == null ? void 0 : value, z12.string().optional()),
8565
- rect: z12.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8566
- hotspot: z12.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8567
- rotation: z12.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8568
- });
8569
- var transformSchema = z12.object({
8570
- aspectCrops: z12.preprocess((value) => {
8479
+ import z11 from "zod";
8480
+ var hotspotSchema = z11.object({
8481
+ x: z11.number().min(0).max(1),
8482
+ y: z11.number().min(0).max(1),
8483
+ radius: z11.number().optional()
8484
+ });
8485
+ var rotationSchema = z11.union([z11.literal(0), z11.literal(90), z11.literal(180), z11.literal(270)]);
8486
+ var rectSchema = z11.tuple([z11.number(), z11.number(), z11.number(), z11.number()]);
8487
+ var aspectCropSchema = z11.object({
8488
+ aspect: z11.preprocess((value) => value == null ? void 0 : value, z11.string().optional()),
8489
+ rect: z11.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8490
+ hotspot: z11.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8491
+ rotation: z11.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8492
+ });
8493
+ var transformSchema = z11.object({
8494
+ aspectCrops: z11.preprocess((value) => {
8571
8495
  if (!value || typeof value !== "object" || Array.isArray(value)) {
8572
8496
  return void 0;
8573
8497
  }
8574
8498
  return value;
8575
- }, z12.record(z12.string(), aspectCropSchema.catch({}))).optional(),
8499
+ }, z11.record(z11.string(), aspectCropSchema.catch({}))).optional(),
8576
8500
  rect: rectSchema.optional(),
8577
8501
  hotspot: hotspotSchema.optional(),
8578
8502
  rotation: rotationSchema.optional()
8579
8503
  });
8580
- var mediaSchema = z12.object({
8581
- type: z12.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8582
- purpose: z12.string().optional(),
8583
- placeholder: z12.boolean().default(true).optional(),
8584
- assetId: z12.string().optional(),
8585
- identifier: z12.string().optional(),
8586
- src: z12.string().optional(),
8587
- alt: z12.string().optional(),
8588
- filename: z12.string().optional(),
8589
- mimeType: z12.string().optional(),
8590
- width: z12.number().optional(),
8591
- height: z12.number().optional(),
8592
- storageBucket: z12.string().optional(),
8593
- storagePath: z12.string().optional(),
8504
+ var mediaSchema = z11.object({
8505
+ type: z11.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8506
+ purpose: z11.string().optional(),
8507
+ placeholder: z11.boolean().default(true).optional(),
8508
+ assetId: z11.string().optional(),
8509
+ identifier: z11.string().optional(),
8510
+ src: z11.string().optional(),
8511
+ alt: z11.string().optional(),
8512
+ filename: z11.string().optional(),
8513
+ mimeType: z11.string().optional(),
8514
+ width: z11.number().optional(),
8515
+ height: z11.number().optional(),
8516
+ storageBucket: z11.string().optional(),
8517
+ storagePath: z11.string().optional(),
8594
8518
  transform: transformSchema.optional()
8595
8519
  });
8596
8520
 
@@ -8598,48 +8522,48 @@ var mediaSchema = z12.object({
8598
8522
  var BUTTON_SIZE_NAMES = buttonSizeNameSchema.options;
8599
8523
 
8600
8524
  // ../theme-core/src/cards/types.ts
8601
- import { z as z13 } from "zod";
8602
- var cardSpacingSchema = z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8603
- var gradientDirectionSchema2 = z13.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8604
- var cardBackgroundSchema = z13.discriminatedUnion("type", [
8605
- z13.object({ type: z13.literal("solid"), colorToken: z13.string() }),
8606
- z13.object({
8607
- type: z13.literal("gradient"),
8608
- fromToken: z13.string(),
8609
- toToken: z13.string(),
8525
+ import { z as z12 } from "zod";
8526
+ var cardSpacingSchema = z12.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8527
+ var gradientDirectionSchema2 = z12.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8528
+ var cardBackgroundSchema = z12.discriminatedUnion("type", [
8529
+ z12.object({ type: z12.literal("solid"), colorToken: z12.string() }),
8530
+ z12.object({
8531
+ type: z12.literal("gradient"),
8532
+ fromToken: z12.string(),
8533
+ toToken: z12.string(),
8610
8534
  direction: gradientDirectionSchema2
8611
8535
  }),
8612
- z13.object({ type: z13.literal("transparent") })
8536
+ z12.object({ type: z12.literal("transparent") })
8613
8537
  ]);
8614
- var cardBorderSchema = z13.object({
8615
- widthClass: z13.string(),
8616
- colorToken: z13.string()
8617
- });
8618
- var cardVariantSchema = z13.object({
8619
- id: z13.string(),
8620
- name: z13.string().min(1).max(20),
8621
- enabled: z13.boolean(),
8622
- priority: z13.union([z13.literal(1), z13.literal(2), z13.literal(3)]),
8538
+ var cardBorderSchema = z12.object({
8539
+ widthClass: z12.string(),
8540
+ colorToken: z12.string()
8541
+ });
8542
+ var cardVariantSchema = z12.object({
8543
+ id: z12.string(),
8544
+ name: z12.string().min(1).max(20),
8545
+ enabled: z12.boolean(),
8546
+ priority: z12.union([z12.literal(1), z12.literal(2), z12.literal(3)]),
8623
8547
  // Appearance (token-based)
8624
8548
  background: cardBackgroundSchema,
8625
8549
  spacing: cardSpacingSchema,
8626
8550
  // Optional overrides (uses theme defaults if not specified)
8627
- shadow: z13.object({
8628
- elevation: z13.enum(["none", "low", "medium", "high"]),
8629
- softness: z13.enum(["crisp", "soft", "hard"]).nullable(),
8630
- position: z13.enum(["bottom", "bottom-right"]).default("bottom")
8551
+ shadow: z12.object({
8552
+ elevation: z12.enum(["none", "low", "medium", "high"]),
8553
+ softness: z12.enum(["crisp", "soft", "hard"]).nullable(),
8554
+ position: z12.enum(["bottom", "bottom-right"]).default("bottom")
8631
8555
  }).optional(),
8632
- corners: z13.enum(["square", "soft", "rounded", "pill"]).optional(),
8556
+ corners: z12.enum(["square", "soft", "rounded", "pill"]).optional(),
8633
8557
  // Border (optional)
8634
8558
  border: cardBorderSchema.optional()
8635
8559
  });
8636
- var cardSystemSchema = z13.object({
8637
- variants: z13.array(cardVariantSchema).min(1).max(3)
8560
+ var cardSystemSchema = z12.object({
8561
+ variants: z12.array(cardVariantSchema).min(1).max(3)
8638
8562
  });
8639
8563
 
8640
8564
  // ../theme-core/src/accordions/types.ts
8641
- import { z as z14 } from "zod";
8642
- var accordionIconSchema = z14.enum([
8565
+ import { z as z13 } from "zod";
8566
+ var accordionIconSchema = z13.enum([
8643
8567
  "plus-minus",
8644
8568
  // + becomes - (swap or rotate 90°)
8645
8569
  "chevron",
@@ -8651,180 +8575,180 @@ var accordionIconSchema = z14.enum([
8651
8575
  "circle-plus-minus"
8652
8576
  // ⊕ becomes ⊖ (swap with fade)
8653
8577
  ]);
8654
- var accordionSystemSchema = z14.object({
8578
+ var accordionSystemSchema = z13.object({
8655
8579
  // Visual styling (solid color only - gradients can be added later if needed)
8656
- background: z14.object({
8657
- type: z14.literal("solid"),
8658
- colorToken: z14.string()
8580
+ background: z13.object({
8581
+ type: z13.literal("solid"),
8582
+ colorToken: z13.string()
8659
8583
  }),
8660
8584
  // Spacing (padding inside items)
8661
- spacing: z14.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8585
+ spacing: z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8662
8586
  // Border radius (null = inherit from theme.corners)
8663
- corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8587
+ corners: z13.enum(["square", "soft", "rounded", "pill"]).nullable(),
8664
8588
  // Border styling (null = inherit from theme.border)
8665
- border: z14.object({
8666
- widthClass: z14.string(),
8589
+ border: z13.object({
8590
+ widthClass: z13.string(),
8667
8591
  // e.g., 'border', 'border-2', 'border-0'
8668
- colorToken: z14.string()
8592
+ colorToken: z13.string()
8669
8593
  }).nullable(),
8670
8594
  // Shadow (null = inherit from theme.shadow)
8671
- shadow: z14.object({
8672
- elevation: z14.enum(["none", "low", "medium", "high"]),
8673
- softness: z14.enum(["soft", "crisp", "hard"]).nullable(),
8674
- position: z14.enum(["bottom", "bottom-right"])
8595
+ shadow: z13.object({
8596
+ elevation: z13.enum(["none", "low", "medium", "high"]),
8597
+ softness: z13.enum(["soft", "crisp", "hard"]).nullable(),
8598
+ position: z13.enum(["bottom", "bottom-right"])
8675
8599
  }).nullable(),
8676
8600
  // Icon style and animation
8677
- icon: z14.object({
8601
+ icon: z13.object({
8678
8602
  style: accordionIconSchema,
8679
- position: z14.enum(["left", "right"]),
8680
- size: z14.enum(["sm", "md", "lg"])
8603
+ position: z13.enum(["left", "right"]),
8604
+ size: z13.enum(["sm", "md", "lg"])
8681
8605
  }),
8682
8606
  // Trigger (question) styling
8683
- trigger: z14.object({
8684
- textColorToken: z14.string(),
8685
- fontWeight: z14.enum(["regular", "medium", "semibold", "bold"]).nullable()
8607
+ trigger: z13.object({
8608
+ textColorToken: z13.string(),
8609
+ fontWeight: z13.enum(["regular", "medium", "semibold", "bold"]).nullable()
8686
8610
  // null = inherit from theme
8687
8611
  }),
8688
8612
  // Hover state styling
8689
- hover: z14.object({
8690
- backgroundColorToken: z14.string().optional(),
8691
- textColorToken: z14.string().optional(),
8692
- borderColorToken: z14.string().optional()
8613
+ hover: z13.object({
8614
+ backgroundColorToken: z13.string().optional(),
8615
+ textColorToken: z13.string().optional(),
8616
+ borderColorToken: z13.string().optional()
8693
8617
  }),
8694
8618
  // Content (answer) styling
8695
- content: z14.object({
8696
- textColorToken: z14.string()
8619
+ content: z13.object({
8620
+ textColorToken: z13.string()
8697
8621
  })
8698
8622
  });
8699
8623
 
8700
8624
  // ../theme-core/src/inputs/types.ts
8701
- import { z as z15 } from "zod";
8702
- var inputSystemSchema = z15.object({
8625
+ import { z as z14 } from "zod";
8626
+ var inputSystemSchema = z14.object({
8703
8627
  // Base styling (applied to all inputs)
8704
- base: z15.object({
8705
- background: z15.union([
8706
- z15.object({
8707
- type: z15.literal("solid"),
8708
- colorToken: z15.string()
8628
+ base: z14.object({
8629
+ background: z14.union([
8630
+ z14.object({
8631
+ type: z14.literal("solid"),
8632
+ colorToken: z14.string()
8709
8633
  }),
8710
- z15.object({
8711
- type: z15.literal("transparent")
8634
+ z14.object({
8635
+ type: z14.literal("transparent")
8712
8636
  })
8713
8637
  ]),
8714
- textColorToken: z15.string(),
8715
- border: z15.object({
8716
- widthClass: z15.string(),
8638
+ textColorToken: z14.string(),
8639
+ border: z14.object({
8640
+ widthClass: z14.string(),
8717
8641
  // e.g., 'border', 'border-2'
8718
- colorToken: z15.string(),
8719
- style: z15.enum(["all", "underline"]).optional()
8642
+ colorToken: z14.string(),
8643
+ style: z14.enum(["all", "underline"]).optional()
8720
8644
  }),
8721
- corners: z15.enum(["square", "soft", "rounded", "pill"]).nullable(),
8645
+ corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8722
8646
  // null = inherit from theme.corners
8723
- shadow: z15.object({
8724
- elevation: z15.enum(["none", "low", "medium"]),
8725
- softness: z15.enum(["soft", "crisp", "hard"]).nullable()
8647
+ shadow: z14.object({
8648
+ elevation: z14.enum(["none", "low", "medium"]),
8649
+ softness: z14.enum(["soft", "crisp", "hard"]).nullable()
8726
8650
  }).nullable(),
8727
- spacing: z15.enum(["compact", "cozy", "medium", "comfortable"]),
8651
+ spacing: z14.enum(["compact", "cozy", "medium", "comfortable"]),
8728
8652
  // padding inside inputs
8729
- fontSize: z15.enum(["sm", "base", "lg"])
8653
+ fontSize: z14.enum(["sm", "base", "lg"])
8730
8654
  }),
8731
8655
  // Label styling
8732
- label: z15.object({
8733
- textColorToken: z15.string(),
8734
- fontWeight: z15.enum(["regular", "medium", "semibold", "bold", "black"]),
8735
- fontSize: z15.enum(["2xs", "xs", "sm", "base"]),
8736
- textTransform: z15.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8737
- letterSpacing: z15.enum(["normal", "wide", "wider", "widest"]).optional(),
8738
- opacity: z15.number().min(0.2).max(1).optional()
8656
+ label: z14.object({
8657
+ textColorToken: z14.string(),
8658
+ fontWeight: z14.enum(["regular", "medium", "semibold", "bold", "black"]),
8659
+ fontSize: z14.enum(["2xs", "xs", "sm", "base"]),
8660
+ textTransform: z14.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8661
+ letterSpacing: z14.enum(["normal", "wide", "wider", "widest"]).optional(),
8662
+ opacity: z14.number().min(0.2).max(1).optional()
8739
8663
  }),
8740
8664
  // Focus state
8741
- focus: z15.object({
8742
- ringColorToken: z15.string(),
8743
- ringWidth: z15.enum(["0", "1", "2", "3"]),
8744
- borderColorToken: z15.string().optional()
8665
+ focus: z14.object({
8666
+ ringColorToken: z14.string(),
8667
+ ringWidth: z14.enum(["0", "1", "2", "3"]),
8668
+ borderColorToken: z14.string().optional()
8745
8669
  // Change border color on focus
8746
8670
  }),
8747
8671
  // Error state (for validation feedback)
8748
- error: z15.object({
8749
- borderColorToken: z15.string(),
8750
- textColorToken: z15.string()
8672
+ error: z14.object({
8673
+ borderColorToken: z14.string(),
8674
+ textColorToken: z14.string()
8751
8675
  }),
8752
8676
  // Disabled state
8753
- disabled: z15.object({
8754
- backgroundColorToken: z15.string(),
8755
- textColorToken: z15.string(),
8756
- opacity: z15.number().min(0.3).max(0.7)
8677
+ disabled: z14.object({
8678
+ backgroundColorToken: z14.string(),
8679
+ textColorToken: z14.string(),
8680
+ opacity: z14.number().min(0.3).max(0.7)
8757
8681
  })
8758
8682
  });
8759
8683
 
8760
8684
  // ../theme-core/src/gradients/types.ts
8761
- import { z as z16 } from "zod";
8762
- var gradientStopSchema = z16.object({
8763
- color: z16.string(),
8685
+ import { z as z15 } from "zod";
8686
+ var gradientStopSchema = z15.object({
8687
+ color: z15.string(),
8764
8688
  // Theme color token name (e.g., 'primary-500')
8765
- position: z16.number().min(0).max(100)
8689
+ position: z15.number().min(0).max(100)
8766
8690
  // Percentage 0-100
8767
8691
  });
8768
- var gradientConfigSchema = z16.object({
8769
- type: z16.enum(["linear", "radial"]),
8770
- angle: z16.number().min(0).max(360).optional(),
8692
+ var gradientConfigSchema = z15.object({
8693
+ type: z15.enum(["linear", "radial"]),
8694
+ angle: z15.number().min(0).max(360).optional(),
8771
8695
  // For linear gradients (degrees)
8772
- position: z16.string().optional(),
8696
+ position: z15.string().optional(),
8773
8697
  // For radial gradients ('center', 'top left', etc.)
8774
- stops: z16.array(gradientStopSchema).min(2)
8698
+ stops: z15.array(gradientStopSchema).min(2)
8775
8699
  });
8776
8700
 
8777
8701
  // ../theme-core/src/navigation/types.ts
8778
- import { z as z18 } from "zod";
8702
+ import { z as z17 } from "zod";
8779
8703
 
8780
8704
  // ../theme-core/src/interactive/baseSchema.ts
8781
- import { z as z17 } from "zod";
8782
- var interactiveTypographySchema = z17.object({
8705
+ import { z as z16 } from "zod";
8706
+ var interactiveTypographySchema = z16.object({
8783
8707
  /** Font family source */
8784
- typography: z17.enum(["body", "heading"]).default("body"),
8708
+ typography: z16.enum(["body", "heading"]).default("body"),
8785
8709
  /** Font weight */
8786
- fontWeight: z17.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8710
+ fontWeight: z16.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8787
8711
  /** Text transform */
8788
- textTransform: z17.enum(["none", "uppercase", "capitalize"]).default("none"),
8712
+ textTransform: z16.enum(["none", "uppercase", "capitalize"]).default("none"),
8789
8713
  /** Italic style */
8790
- italic: z17.boolean().default(false)
8714
+ italic: z16.boolean().default(false)
8791
8715
  });
8792
- var effectApplicationSchema2 = z17.object({
8716
+ var effectApplicationSchema2 = z16.object({
8793
8717
  /** Effect preset ID */
8794
- effectId: z17.string(),
8718
+ effectId: z16.string(),
8795
8719
  /** User-provided customization options */
8796
- options: z17.record(z17.string(), z17.any()).optional()
8720
+ options: z16.record(z16.string(), z16.any()).optional()
8797
8721
  });
8798
- var effectCompositionSchema = z17.object({
8722
+ var effectCompositionSchema = z16.object({
8799
8723
  /** Effects always applied */
8800
- base: z17.array(effectApplicationSchema2).optional(),
8724
+ base: z16.array(effectApplicationSchema2).optional(),
8801
8725
  /** Effects applied on hover */
8802
- hover: z17.array(effectApplicationSchema2).optional(),
8726
+ hover: z16.array(effectApplicationSchema2).optional(),
8803
8727
  /** Effects applied on active/pressed */
8804
- active: z17.array(effectApplicationSchema2).optional(),
8728
+ active: z16.array(effectApplicationSchema2).optional(),
8805
8729
  /** Effects applied on focus */
8806
- focus: z17.array(effectApplicationSchema2).optional()
8730
+ focus: z16.array(effectApplicationSchema2).optional()
8807
8731
  });
8808
8732
 
8809
8733
  // ../theme-core/src/navigation/types.ts
8810
- var navLinkPaddingSchema = z18.enum(["none", "compact", "default"]);
8811
- var navLinkPaddingXSchema = z18.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8812
- var navLinkBorderRadiusSchema = z18.enum(["none", "sm", "md", "full"]);
8813
- var navLinkTextSizeSchema = z18.enum(["xs", "sm", "base", "lg"]);
8814
- var navLinkLetterSpacingSchema = z18.enum(["normal", "wide", "wider", "widest"]);
8815
- var navLinkStyleSchema = z18.object({
8734
+ var navLinkPaddingSchema = z17.enum(["none", "compact", "default"]);
8735
+ var navLinkPaddingXSchema = z17.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8736
+ var navLinkBorderRadiusSchema = z17.enum(["none", "sm", "md", "full"]);
8737
+ var navLinkTextSizeSchema = z17.enum(["xs", "sm", "base", "lg"]);
8738
+ var navLinkLetterSpacingSchema = z17.enum(["normal", "wide", "wider", "widest"]);
8739
+ var navLinkStyleSchema = z17.object({
8816
8740
  /** Display name for the style */
8817
- name: z18.string().min(1).max(30).optional(),
8741
+ name: z17.string().min(1).max(30).optional(),
8818
8742
  /** Typography settings (inherited from interactive base) */
8819
8743
  ...interactiveTypographySchema.shape,
8820
8744
  /** Text color token */
8821
- colorToken: z18.string().default("text"),
8745
+ colorToken: z17.string().default("text"),
8822
8746
  /** Optional text size override */
8823
8747
  textSize: navLinkTextSizeSchema.optional(),
8824
8748
  /** Optional letter spacing override */
8825
8749
  letterSpacing: navLinkLetterSpacingSchema.optional(),
8826
8750
  /** Hover/active color token (for color-change effects) */
8827
- hoverColorToken: z18.string().nullable().optional(),
8751
+ hoverColorToken: z17.string().nullable().optional(),
8828
8752
  /** Padding preset */
8829
8753
  padding: navLinkPaddingSchema.default("compact"),
8830
8754
  /** Horizontal padding override (overrides horizontal component of padding preset) */
@@ -8836,7 +8760,7 @@ var navLinkStyleSchema = z18.object({
8836
8760
  });
8837
8761
 
8838
8762
  // ../theme-core/src/customCss/validation.ts
8839
- import { z as z19 } from "zod";
8763
+ import { z as z18 } from "zod";
8840
8764
  var FORBIDDEN_SELECTORS = [":root", "html", "body"];
8841
8765
  var UNIVERSAL_SELECTOR = "*";
8842
8766
  var REMOTE_URL_PATTERN = /url\s*\(\s*['"]?(https?:|\/\/)/i;
@@ -8878,7 +8802,7 @@ function containsForbiddenSelector(selector) {
8878
8802
  }
8879
8803
  return false;
8880
8804
  }
8881
- var selectorSchema = z19.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
8805
+ var selectorSchema = z18.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
8882
8806
  (s) => !containsForbiddenSelector(s),
8883
8807
  { message: "Global selectors (:root, html, body, *) are not allowed" }
8884
8808
  );
@@ -8888,38 +8812,38 @@ function containsRemoteUrl(value) {
8888
8812
  function containsJavascriptUrl(value) {
8889
8813
  return JAVASCRIPT_URL_PATTERN.test(value);
8890
8814
  }
8891
- var declarationValueSchema = z19.string().max(500, "Declaration value too long (max 500 characters)").refine(
8815
+ var declarationValueSchema = z18.string().max(500, "Declaration value too long (max 500 characters)").refine(
8892
8816
  (v) => !containsRemoteUrl(v),
8893
8817
  { message: "Remote url() references are not allowed. Use local paths, data URIs, or fragment IDs." }
8894
8818
  ).refine(
8895
8819
  (v) => !containsJavascriptUrl(v),
8896
8820
  { message: "javascript: URLs are not allowed" }
8897
8821
  );
8898
- var declarationsSchema = z19.record(
8899
- z19.string().min(1).max(100),
8822
+ var declarationsSchema = z18.record(
8823
+ z18.string().min(1).max(100),
8900
8824
  // property name
8901
8825
  declarationValueSchema
8902
8826
  // property value
8903
8827
  );
8904
- var customCssRuleSchema = z19.object({
8905
- id: z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
8828
+ var customCssRuleSchema = z18.object({
8829
+ id: z18.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
8906
8830
  selector: selectorSchema,
8907
8831
  declarations: declarationsSchema
8908
8832
  });
8909
8833
  var blockCustomCssRuleSchema = customCssRuleSchema.extend({
8910
- blockKind: z19.string().min(1, "Block kind is required").max(50, "Block kind too long")
8834
+ blockKind: z18.string().min(1, "Block kind is required").max(50, "Block kind too long")
8911
8835
  });
8912
- var customCssRulesSchema = z19.array(customCssRuleSchema).optional();
8913
- var blockCustomCssRulesSchema = z19.array(blockCustomCssRuleSchema).optional();
8836
+ var customCssRulesSchema = z18.array(customCssRuleSchema).optional();
8837
+ var blockCustomCssRulesSchema = z18.array(blockCustomCssRuleSchema).optional();
8914
8838
 
8915
8839
  // ../theme-core/src/customCss/atRuleValidation.ts
8916
- import { z as z20 } from "zod";
8840
+ import { z as z19 } from "zod";
8917
8841
  var KEYFRAME_OFFSET_PATTERN = /^(from|to|\d{1,3}%)$/i;
8918
8842
  var ANIMATION_NAME_PATTERN = /^[a-zA-Z_-][a-zA-Z0-9_-]*$/;
8919
8843
  var BLOCKED_AT_RULES = ["@import", "@charset"];
8920
8844
  var BLOCKED_AT_RULE_PATTERN = /@(?:import|charset)\b/i;
8921
- var ruleIdSchema = z20.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
8922
- var nestedRuleSchema = z20.object({
8845
+ var ruleIdSchema = z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
8846
+ var nestedRuleSchema = z19.object({
8923
8847
  selector: selectorSchema,
8924
8848
  declarations: declarationsSchema
8925
8849
  });
@@ -8931,146 +8855,146 @@ function isValidKeyframeOffset(offset) {
8931
8855
  const value = parseInt(match[1], 10);
8932
8856
  return value >= 0 && value <= 100;
8933
8857
  }
8934
- var keyframeOffsetSchema = z20.string().transform((offset) => offset.trim()).refine(
8858
+ var keyframeOffsetSchema = z19.string().transform((offset) => offset.trim()).refine(
8935
8859
  (offset) => KEYFRAME_OFFSET_PATTERN.test(offset),
8936
8860
  { message: 'Invalid keyframe offset. Use percentages (0%, 50%, 100%) or "from"/"to"' }
8937
8861
  ).refine(
8938
8862
  isValidKeyframeOffset,
8939
8863
  { message: "Keyframe offset must be between 0% and 100%" }
8940
8864
  );
8941
- var animationNameSchema = z20.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
8865
+ var animationNameSchema = z19.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
8942
8866
  (name) => ANIMATION_NAME_PATTERN.test(name),
8943
8867
  { message: "Invalid animation name. Use letters, numbers, dashes, underscores (start with letter, dash, or underscore)" }
8944
8868
  );
8945
- var keyframeSchema = z20.object({
8869
+ var keyframeSchema = z19.object({
8946
8870
  offset: keyframeOffsetSchema,
8947
8871
  declarations: declarationsSchema
8948
8872
  });
8949
- var keyframesAtRuleSchema = z20.object({
8873
+ var keyframesAtRuleSchema = z19.object({
8950
8874
  id: ruleIdSchema,
8951
- type: z20.literal("keyframes"),
8875
+ type: z19.literal("keyframes"),
8952
8876
  name: animationNameSchema,
8953
- frames: z20.array(keyframeSchema).min(1, "At least one keyframe is required")
8877
+ frames: z19.array(keyframeSchema).min(1, "At least one keyframe is required")
8954
8878
  });
8955
- var fontFaceDeclarationsSchema = z20.record(z20.string().min(1).max(100), declarationValueSchema).refine(
8879
+ var fontFaceDeclarationsSchema = z19.record(z19.string().min(1).max(100), declarationValueSchema).refine(
8956
8880
  (decls) => "fontFamily" in decls || "font-family" in decls,
8957
8881
  { message: "font-family is required in @font-face" }
8958
8882
  );
8959
- var fontFaceAtRuleSchema = z20.object({
8883
+ var fontFaceAtRuleSchema = z19.object({
8960
8884
  id: ruleIdSchema,
8961
- type: z20.literal("font-face"),
8885
+ type: z19.literal("font-face"),
8962
8886
  declarations: fontFaceDeclarationsSchema
8963
8887
  });
8964
- var mediaQuerySchema = z20.string().min(1, "Media query is required").max(200, "Media query too long");
8965
- var mediaAtRuleSchema = z20.object({
8888
+ var mediaQuerySchema = z19.string().min(1, "Media query is required").max(200, "Media query too long");
8889
+ var mediaAtRuleSchema = z19.object({
8966
8890
  id: ruleIdSchema,
8967
- type: z20.literal("media"),
8891
+ type: z19.literal("media"),
8968
8892
  query: mediaQuerySchema,
8969
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
8893
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
8970
8894
  });
8971
- var supportsConditionSchema = z20.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
8972
- var supportsAtRuleSchema = z20.object({
8895
+ var supportsConditionSchema = z19.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
8896
+ var supportsAtRuleSchema = z19.object({
8973
8897
  id: ruleIdSchema,
8974
- type: z20.literal("supports"),
8898
+ type: z19.literal("supports"),
8975
8899
  condition: supportsConditionSchema,
8976
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
8900
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
8977
8901
  });
8978
8902
  function containsBlockedAtRule(css) {
8979
8903
  return BLOCKED_AT_RULE_PATTERN.test(css);
8980
8904
  }
8981
- var rawCssSchema = z20.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
8905
+ var rawCssSchema = z19.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
8982
8906
  (css) => css.trim().startsWith("@"),
8983
8907
  { message: "Raw at-rule must start with @" }
8984
8908
  ).refine(
8985
8909
  (css) => !containsBlockedAtRule(css),
8986
8910
  { message: `Blocked at-rules: ${BLOCKED_AT_RULES.join(", ")}. Use typed at-rules or local assets instead.` }
8987
8911
  );
8988
- var rawAtRuleSchema = z20.object({
8912
+ var rawAtRuleSchema = z19.object({
8989
8913
  id: ruleIdSchema,
8990
- type: z20.literal("raw"),
8914
+ type: z19.literal("raw"),
8991
8915
  css: rawCssSchema
8992
8916
  });
8993
- var customCssAtRuleSchema = z20.discriminatedUnion("type", [
8917
+ var customCssAtRuleSchema = z19.discriminatedUnion("type", [
8994
8918
  keyframesAtRuleSchema,
8995
8919
  fontFaceAtRuleSchema,
8996
8920
  mediaAtRuleSchema,
8997
8921
  supportsAtRuleSchema,
8998
8922
  rawAtRuleSchema
8999
8923
  ]);
9000
- var customCssAtRulesSchema = z20.array(customCssAtRuleSchema).optional();
8924
+ var customCssAtRulesSchema = z19.array(customCssAtRuleSchema).optional();
9001
8925
 
9002
8926
  // ../theme-core/src/shared/componentStyles.ts
9003
- import { z as z21 } from "zod";
9004
- var componentBorderSchema = z21.object({
9005
- width: z21.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
9006
- style: z21.enum(["solid", "dashed"]).default("solid"),
9007
- colorToken: z21.string().optional()
8927
+ import { z as z20 } from "zod";
8928
+ var componentBorderSchema = z20.object({
8929
+ width: z20.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
8930
+ style: z20.enum(["solid", "dashed"]).default("solid"),
8931
+ colorToken: z20.string().optional()
9008
8932
  // defaults to "border" if not set
9009
8933
  });
9010
- var componentShadowSchema = z21.object({
9011
- elevation: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
8934
+ var componentShadowSchema = z20.object({
8935
+ elevation: z20.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
9012
8936
  });
9013
8937
 
9014
8938
  // ../theme-core/src/schema.ts
9015
- var axesSchema = z22.object({
9016
- tone: z22.enum(["minimal", "classic", "bold"]),
9017
- energy: z22.enum(["calm", "vibrant"]),
9018
- density: z22.enum(["airy", "regular", "compact"]),
9019
- mediaBias: z22.enum(["text", "media", "mixed"]),
9020
- conversionBias: z22.enum(["low", "med", "high"]),
9021
- motion: z22.enum(["subtle", "standard", "expressive"])
9022
- });
9023
- var colourHexString = z22.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
9024
- var paletteColorSchema = z22.object({
9025
- name: z22.string().min(1),
8939
+ var axesSchema = z21.object({
8940
+ tone: z21.enum(["minimal", "classic", "bold"]),
8941
+ energy: z21.enum(["calm", "vibrant"]),
8942
+ density: z21.enum(["airy", "regular", "compact"]),
8943
+ mediaBias: z21.enum(["text", "media", "mixed"]),
8944
+ conversionBias: z21.enum(["low", "med", "high"]),
8945
+ motion: z21.enum(["subtle", "standard", "expressive"])
8946
+ });
8947
+ var colourHexString = z21.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
8948
+ var paletteColorSchema = z21.object({
8949
+ name: z21.string().min(1),
9026
8950
  hex: colourHexString
9027
8951
  });
9028
- var paletteMetaSchema = z22.object({
9029
- mode: z22.enum(["light", "dark"])
8952
+ var paletteMetaSchema = z21.object({
8953
+ mode: z21.enum(["light", "dark"])
9030
8954
  });
9031
- var paletteSchema = z22.object({
9032
- colors: z22.array(paletteColorSchema),
8955
+ var paletteSchema = z21.object({
8956
+ colors: z21.array(paletteColorSchema),
9033
8957
  meta: paletteMetaSchema
9034
8958
  });
9035
- var typographyStyleSchema = z22.object({
9036
- family: z22.string().min(1),
9037
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]),
9038
- letterSpacing: z22.enum(["tight", "normal", "loose"]),
9039
- lineHeight: z22.enum(["normal", "relaxed", "loose"])
8959
+ var typographyStyleSchema = z21.object({
8960
+ family: z21.string().min(1),
8961
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]),
8962
+ letterSpacing: z21.enum(["tight", "normal", "loose"]),
8963
+ lineHeight: z21.enum(["normal", "relaxed", "loose"])
9040
8964
  });
9041
8965
  var bodyTypographyStyleSchema = typographyStyleSchema.extend({
9042
- size: z22.enum(["md", "lg", "xl"])
8966
+ size: z21.enum(["md", "lg", "xl"])
9043
8967
  });
9044
- var headingSizeSchema = z22.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
9045
- var headingTypographyOverridesSchema = z22.object({
9046
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
9047
- letterSpacing: z22.enum(["tight", "normal", "loose"]).nullable().optional(),
8968
+ var headingSizeSchema = z21.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
8969
+ var headingTypographyOverridesSchema = z21.object({
8970
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
8971
+ letterSpacing: z21.enum(["tight", "normal", "loose"]).nullable().optional(),
9048
8972
  size: headingSizeSchema.nullable().optional(),
9049
- lineHeight: z22.enum(["normal", "relaxed", "loose"]).nullable().optional(),
9050
- italic: z22.boolean().nullable().optional(),
9051
- colorToken: z22.string().min(1).nullable().optional()
8973
+ lineHeight: z21.enum(["normal", "relaxed", "loose"]).nullable().optional(),
8974
+ italic: z21.boolean().nullable().optional(),
8975
+ colorToken: z21.string().min(1).nullable().optional()
9052
8976
  // Palette token name for heading color
9053
8977
  });
9054
8978
  var headingTypographyStyleSchema = typographyStyleSchema.extend({
9055
- case: z22.enum(["uppercase", "normal", "smallCaps"]).nullable(),
9056
- italic: z22.boolean().nullable(),
9057
- colorToken: z22.string().min(1).nullable().optional()
8979
+ case: z21.enum(["uppercase", "normal", "smallCaps"]).nullable(),
8980
+ italic: z21.boolean().nullable(),
8981
+ colorToken: z21.string().min(1).nullable().optional()
9058
8982
  // Palette token name for heading color
9059
8983
  });
9060
- var proseLinkUnderlineStyleSchema = z22.enum(["solid", "dotted", "dashed"]);
9061
- var proseLinkUnderlineThicknessSchema = z22.enum(["auto", "fromFont", "thin", "medium", "thick"]);
9062
- var proseLinkUnderlineOffsetSchema = z22.enum(["auto", "tight", "normal", "loose"]);
9063
- var proseLinkStyleSchema = z22.object({
9064
- colorToken: z22.string().min(1).optional(),
9065
- hoverColorToken: z22.string().min(1).optional(),
9066
- underline: z22.boolean().optional(),
9067
- decorationColorToken: z22.string().min(1).optional(),
9068
- hoverDecorationColorToken: z22.string().min(1).optional(),
8984
+ var proseLinkUnderlineStyleSchema = z21.enum(["solid", "dotted", "dashed"]);
8985
+ var proseLinkUnderlineThicknessSchema = z21.enum(["auto", "fromFont", "thin", "medium", "thick"]);
8986
+ var proseLinkUnderlineOffsetSchema = z21.enum(["auto", "tight", "normal", "loose"]);
8987
+ var proseLinkStyleSchema = z21.object({
8988
+ colorToken: z21.string().min(1).optional(),
8989
+ hoverColorToken: z21.string().min(1).optional(),
8990
+ underline: z21.boolean().optional(),
8991
+ decorationColorToken: z21.string().min(1).optional(),
8992
+ hoverDecorationColorToken: z21.string().min(1).optional(),
9069
8993
  underlineStyle: proseLinkUnderlineStyleSchema.optional(),
9070
8994
  underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
9071
8995
  underlineOffset: proseLinkUnderlineOffsetSchema.optional()
9072
8996
  });
9073
- var semanticSpacingSchema = z22.enum([
8997
+ var semanticSpacingSchema = z21.enum([
9074
8998
  "none",
9075
8999
  "compact",
9076
9000
  "cozy",
@@ -9078,62 +9002,62 @@ var semanticSpacingSchema = z22.enum([
9078
9002
  "comfortable",
9079
9003
  "spacious"
9080
9004
  ]);
9081
- var boxRoundedSchema = z22.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
9082
- var boxBackgroundOverlaySchema = z22.object({
9083
- type: z22.enum(["none", "color", "gradient"]).nullable().optional(),
9084
- color: z22.string().nullable().optional(),
9085
- gradient: z22.string().nullable().optional(),
9086
- opacity: z22.number().min(0).max(1).nullable().optional()
9087
- });
9088
- var boxBackgroundSchema = z22.object({
9089
- type: z22.enum(["color", "gradient", "image"]).optional(),
9090
- color: z22.string().nullable().optional(),
9091
- gradient: z22.string().nullable().optional(),
9005
+ var boxRoundedSchema = z21.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
9006
+ var boxBackgroundOverlaySchema = z21.object({
9007
+ type: z21.enum(["none", "color", "gradient"]).nullable().optional(),
9008
+ color: z21.string().nullable().optional(),
9009
+ gradient: z21.string().nullable().optional(),
9010
+ opacity: z21.number().min(0).max(1).nullable().optional()
9011
+ });
9012
+ var boxBackgroundSchema = z21.object({
9013
+ type: z21.enum(["color", "gradient", "image"]).optional(),
9014
+ color: z21.string().nullable().optional(),
9015
+ gradient: z21.string().nullable().optional(),
9092
9016
  image: mediaSchema.nullable().optional(),
9093
- objectFit: z22.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9094
- scale: z22.string().nullable().optional(),
9095
- position: z22.string().nullable().optional(),
9096
- opacity: z22.number().min(0).max(1).nullable().optional(),
9017
+ objectFit: z21.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9018
+ scale: z21.string().nullable().optional(),
9019
+ position: z21.string().nullable().optional(),
9020
+ opacity: z21.number().min(0).max(1).nullable().optional(),
9097
9021
  overlay: boxBackgroundOverlaySchema.nullable().optional(),
9098
- textColor: z22.string().nullable().optional(),
9099
- headingColor: z22.string().nullable().optional()
9022
+ textColor: z21.string().nullable().optional(),
9023
+ headingColor: z21.string().nullable().optional()
9100
9024
  });
9101
- var sectionStylesOverrideSchema = z22.object({
9025
+ var sectionStylesOverrideSchema = z21.object({
9102
9026
  background: boxBackgroundSchema.nullable().optional(),
9103
9027
  spacing: semanticSpacingSchema.nullable().optional(),
9104
- minHeight: z22.enum(["none", "hero", "immersive"]).nullable().optional()
9028
+ minHeight: z21.enum(["none", "hero", "immersive"]).nullable().optional()
9105
9029
  });
9106
- var containerStylesOverrideSchema = z22.object({
9030
+ var containerStylesOverrideSchema = z21.object({
9107
9031
  background: boxBackgroundSchema.nullable().optional(),
9108
9032
  spacing: semanticSpacingSchema.nullable().optional(),
9109
- raised: z22.boolean().nullable().optional(),
9033
+ raised: z21.boolean().nullable().optional(),
9110
9034
  rounded: boxRoundedSchema.nullable().optional(),
9111
- fullWidth: z22.boolean().nullable().optional()
9035
+ fullWidth: z21.boolean().nullable().optional()
9112
9036
  });
9113
- var cardBorderOverrideSchema = z22.object({
9114
- enabled: z22.boolean().nullable().optional(),
9115
- width: z22.enum(["none", "1", "2", "3"]).nullable().optional(),
9116
- colorToken: z22.string().nullable().optional()
9037
+ var cardBorderOverrideSchema = z21.object({
9038
+ enabled: z21.boolean().nullable().optional(),
9039
+ width: z21.enum(["none", "1", "2", "3"]).nullable().optional(),
9040
+ colorToken: z21.string().nullable().optional()
9117
9041
  });
9118
- var cardStylesOverrideSchema = z22.object({
9042
+ var cardStylesOverrideSchema = z21.object({
9119
9043
  background: boxBackgroundSchema.nullable().optional(),
9120
9044
  border: cardBorderOverrideSchema.nullable().optional(),
9121
9045
  spacing: semanticSpacingSchema.nullable().optional(),
9122
- raised: z22.boolean().nullable().optional(),
9046
+ raised: z21.boolean().nullable().optional(),
9123
9047
  rounded: boxRoundedSchema.nullable().optional()
9124
9048
  });
9125
- var blockStyleOverridesSchema = z22.object({
9049
+ var blockStyleOverridesSchema = z21.object({
9126
9050
  sectionStyles: sectionStylesOverrideSchema.nullable().optional(),
9127
9051
  containerStyles: containerStylesOverrideSchema.nullable().optional(),
9128
9052
  cardStyles: cardStylesOverrideSchema.nullable().optional()
9129
9053
  });
9130
- var blockThemeOverrideSchema = z22.object({
9131
- typography: z22.object({
9054
+ var blockThemeOverrideSchema = z21.object({
9055
+ typography: z21.object({
9132
9056
  proseLinkStyle: proseLinkStyleSchema.optional()
9133
9057
  }).optional(),
9134
9058
  styles: blockStyleOverridesSchema.optional()
9135
9059
  });
9136
- var typographyScaleSchema = z22.enum([
9060
+ var typographyScaleSchema = z21.enum([
9137
9061
  // New intuitive names
9138
9062
  "compact",
9139
9063
  // ratio 1.2 (was minorThird)
@@ -9146,9 +9070,9 @@ var typographyScaleSchema = z22.enum([
9146
9070
  "majorThird",
9147
9071
  "perfectFourth"
9148
9072
  ]);
9149
- var typographySchema = z22.object({
9073
+ var typographySchema = z21.object({
9150
9074
  body: bodyTypographyStyleSchema,
9151
- headings: z22.object({
9075
+ headings: z21.object({
9152
9076
  default: headingTypographyStyleSchema,
9153
9077
  h1: headingTypographyOverridesSchema,
9154
9078
  h2: headingTypographyOverridesSchema,
@@ -9161,41 +9085,41 @@ var typographySchema = z22.object({
9161
9085
  scale: typographyScaleSchema,
9162
9086
  proseLinkStyle: proseLinkStyleSchema.optional()
9163
9087
  });
9164
- var spaceSchema = z22.enum(["comfortable", "standard", "dense"]);
9165
- var corners = z22.enum(["square", "soft", "rounded", "pill"]);
9166
- var shadow = z22.object({
9167
- elevation: z22.enum(["none", "low", "medium", "high"]),
9168
- softness: z22.enum(["crisp", "soft", "hard"]).nullable(),
9169
- position: z22.enum(["bottom", "bottom-right"]).default("bottom")
9088
+ var spaceSchema = z21.enum(["comfortable", "standard", "dense"]);
9089
+ var corners = z21.enum(["square", "soft", "rounded", "pill"]);
9090
+ var shadow = z21.object({
9091
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9092
+ softness: z21.enum(["crisp", "soft", "hard"]).nullable(),
9093
+ position: z21.enum(["bottom", "bottom-right"]).default("bottom")
9170
9094
  });
9171
- var border = z22.object({
9172
- width: z22.enum(["none", "hairline", "thin", "thick"]),
9173
- style: z22.enum(["solid", "dashed"])
9095
+ var border = z21.object({
9096
+ width: z21.enum(["none", "hairline", "thin", "thick"]),
9097
+ style: z21.enum(["solid", "dashed"])
9174
9098
  });
9175
- var motion = z22.object({
9176
- level: z22.enum(["off", "low", "medium", "high"]),
9177
- easing: z22.enum(["standard", "snappy", "gentle"]).nullable()
9099
+ var motion = z21.object({
9100
+ level: z21.enum(["off", "low", "medium", "high"]),
9101
+ easing: z21.enum(["standard", "snappy", "gentle"]).nullable()
9178
9102
  });
9179
- var buttonStyle = z22.object({
9103
+ var buttonStyle = z21.object({
9180
9104
  shape: corners
9181
9105
  // Used for --radius-control CSS variable
9182
9106
  });
9183
- var cardStyle = z22.object({
9184
- elevation: z22.enum(["none", "low", "medium", "high"]),
9185
- border: z22.enum(["none", "subtle", "defined"]),
9107
+ var cardStyle = z21.object({
9108
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9109
+ border: z21.enum(["none", "subtle", "defined"]),
9186
9110
  shape: corners,
9187
- headerStyle: z22.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9188
- mediaTreatment: z22.enum(["square", "rounded", "bleed"]).nullable()
9111
+ headerStyle: z21.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9112
+ mediaTreatment: z21.enum(["square", "rounded", "bleed"]).nullable()
9189
9113
  });
9190
- var inputStyle = z22.object({
9114
+ var inputStyle = z21.object({
9191
9115
  shape: corners,
9192
- border: z22.enum(["subtle", "defined", "underline"]),
9193
- focus: z22.enum(["glow", "ring", "underline"]),
9194
- label: z22.enum(["inside", "above"])
9116
+ border: z21.enum(["subtle", "defined", "underline"]),
9117
+ focus: z21.enum(["glow", "ring", "underline"]),
9118
+ label: z21.enum(["inside", "above"])
9195
9119
  });
9196
- var headerVariant = z22.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9197
- var headerPositioning = z22.enum(["static", "sticky", "fixed"]);
9198
- var headerNavStyle = z22.enum([
9120
+ var headerVariant = z21.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9121
+ var headerPositioning = z21.enum(["static", "sticky", "fixed"]);
9122
+ var headerNavStyle = z21.enum([
9199
9123
  "minimal",
9200
9124
  "underline",
9201
9125
  "underline-grow",
@@ -9204,82 +9128,82 @@ var headerNavStyle = z22.enum([
9204
9128
  "frosted",
9205
9129
  "solid"
9206
9130
  ]);
9207
- var navFontWeight = z22.enum(["regular", "medium", "semibold", "bold"]);
9208
- var headerMaxWidth = z22.enum(["container", "full"]);
9209
- var headerContainerSchema = z22.object({
9210
- rounded: z22.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9211
- border: z22.boolean().default(true),
9212
- shadow: z22.boolean().default(true),
9213
- padding: z22.enum(["sm", "md", "lg"]).default("md"),
9214
- tint: z22.string().nullable().optional(),
9215
- opacity: z22.number().min(0).max(1).default(0.12)
9131
+ var navFontWeight = z21.enum(["regular", "medium", "semibold", "bold"]);
9132
+ var headerMaxWidth = z21.enum(["container", "full"]);
9133
+ var headerContainerSchema = z21.object({
9134
+ rounded: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9135
+ border: z21.boolean().default(true),
9136
+ shadow: z21.boolean().default(true),
9137
+ padding: z21.enum(["sm", "md", "lg"]).default("md"),
9138
+ tint: z21.string().nullable().optional(),
9139
+ opacity: z21.number().min(0).max(1).default(0.12)
9216
9140
  }).optional();
9217
9141
  var headerBorderSchema = componentBorderSchema.extend({
9218
- position: z22.enum(["bottom", "top", "both", "none"]).default("bottom")
9142
+ position: z21.enum(["bottom", "top", "both", "none"]).default("bottom")
9219
9143
  }).optional();
9220
- var logoStyleSchema = z22.object({
9221
- fontFamily: z22.enum(["heading", "body"]).default("heading"),
9222
- letterSpacing: z22.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9223
- gradient: z22.boolean().default(false)
9144
+ var logoStyleSchema = z21.object({
9145
+ fontFamily: z21.enum(["heading", "body"]).default("heading"),
9146
+ letterSpacing: z21.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9147
+ gradient: z21.boolean().default(false)
9224
9148
  }).optional();
9225
- var headerLogoTextSchema = z22.object({
9226
- mobileWrapLines: z22.union([z22.literal(1), z22.literal(2)]).optional(),
9227
- mobileMaxWidth: z22.enum(["xs", "sm", "md"]).optional(),
9228
- hideOnShrink: z22.boolean().optional()
9149
+ var headerLogoTextSchema = z21.object({
9150
+ mobileWrapLines: z21.union([z21.literal(1), z21.literal(2)]).optional(),
9151
+ mobileMaxWidth: z21.enum(["xs", "sm", "md"]).optional(),
9152
+ hideOnShrink: z21.boolean().optional()
9229
9153
  }).optional();
9230
- var navEffectsSchema = z22.object({
9231
- underlineGradient: z22.boolean().default(false),
9232
- glow: z22.boolean().default(false),
9233
- glowColor: z22.string().optional(),
9234
- neumorphic: z22.boolean().default(false)
9154
+ var navEffectsSchema = z21.object({
9155
+ underlineGradient: z21.boolean().default(false),
9156
+ glow: z21.boolean().default(false),
9157
+ glowColor: z21.string().optional(),
9158
+ neumorphic: z21.boolean().default(false)
9235
9159
  }).optional();
9236
- var dropdownStyleSchema = z22.object({
9160
+ var dropdownStyleSchema = z21.object({
9237
9161
  // Container styling
9238
- background: z22.string().default("surface"),
9162
+ background: z21.string().default("surface"),
9239
9163
  // color token
9240
- textColor: z22.string().default("text"),
9164
+ textColor: z21.string().default("text"),
9241
9165
  // color token
9242
- borderColor: z22.string().nullable().default("border"),
9166
+ borderColor: z21.string().nullable().default("border"),
9243
9167
  // null = no border
9244
- shadow: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9245
- borderRadius: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9168
+ shadow: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9169
+ borderRadius: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9246
9170
  // Link hover states (explicit control)
9247
- hoverBackground: z22.string().nullable().optional(),
9171
+ hoverBackground: z21.string().nullable().optional(),
9248
9172
  // color token, null = transparent
9249
- hoverTextColor: z22.string().nullable().optional(),
9173
+ hoverTextColor: z21.string().nullable().optional(),
9250
9174
  // color token, null = inherit
9251
9175
  // Typography
9252
- textTransform: z22.enum(["none", "uppercase", "capitalize"]).default("none"),
9253
- letterSpacing: z22.enum(["normal", "wide", "wider"]).default("normal"),
9254
- fontWeight: z22.enum(["regular", "medium", "semibold", "bold"]).optional(),
9176
+ textTransform: z21.enum(["none", "uppercase", "capitalize"]).default("none"),
9177
+ letterSpacing: z21.enum(["normal", "wide", "wider"]).default("normal"),
9178
+ fontWeight: z21.enum(["regular", "medium", "semibold", "bold"]).optional(),
9255
9179
  // optional = inherit from navWeight
9256
- textSize: z22.enum(["xs", "sm", "base", "lg"]).optional()
9180
+ textSize: z21.enum(["xs", "sm", "base", "lg"]).optional()
9257
9181
  // optional = no override (browser default)
9258
9182
  }).optional();
9259
- var headerCtaGapSchema = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9260
- var navContainerSchema = z22.object({
9261
- type: z22.enum(["none", "pill", "glass"]).default("none"),
9262
- tint: z22.string().nullable().optional(),
9263
- opacity: z22.number().min(0).max(1).default(0.15)
9183
+ var headerCtaGapSchema = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9184
+ var navContainerSchema = z21.object({
9185
+ type: z21.enum(["none", "pill", "glass"]).default("none"),
9186
+ tint: z21.string().nullable().optional(),
9187
+ opacity: z21.number().min(0).max(1).default(0.15)
9264
9188
  }).default({ type: "none", tint: null, opacity: 0.15 });
9265
- var headerBackgroundSchema = z22.object({
9266
- type: z22.enum(["color", "gradient", "image"]),
9267
- color: z22.string().nullable().optional(),
9189
+ var headerBackgroundSchema = z21.object({
9190
+ type: z21.enum(["color", "gradient", "image"]),
9191
+ color: z21.string().nullable().optional(),
9268
9192
  gradient: gradientConfigSchema.nullable().optional(),
9269
9193
  image: mediaSchema.nullable().optional(),
9270
- textColor: z22.string().nullable().optional()
9194
+ textColor: z21.string().nullable().optional()
9271
9195
  });
9272
- var headerSchema = z22.object({
9196
+ var headerSchema = z21.object({
9273
9197
  variant: headerVariant,
9274
9198
  positioning: headerPositioning,
9275
- shrinkOnScroll: z22.boolean(),
9199
+ shrinkOnScroll: z21.boolean(),
9276
9200
  maxWidth: headerMaxWidth,
9277
9201
  logoOverride: mediaSchema.nullable().optional(),
9278
9202
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9279
- textColor: z22.string().nullable().optional(),
9203
+ textColor: z21.string().nullable().optional(),
9280
9204
  // Site title and general header text
9281
9205
  navStyle: headerNavStyle,
9282
- navColor: z22.string().nullable().optional(),
9206
+ navColor: z21.string().nullable().optional(),
9283
9207
  // Nav links (inherits textColor if not set)
9284
9208
  navWeight: navFontWeight.default("medium"),
9285
9209
  // New fields for header system enhancement
@@ -9298,50 +9222,50 @@ var headerSchema = z22.object({
9298
9222
  // Dropdown menu styling (nav dropdowns and mobile drawer)
9299
9223
  dropdownStyle: dropdownStyleSchema
9300
9224
  });
9301
- var footerVariant = z22.enum(["simple", "columns", "split"]);
9302
- var footerMaxWidth = z22.enum(["container", "full"]);
9303
- var footerMode = z22.enum(["default", "blocks", "default+blocks", "none"]);
9304
- var footerNavLayoutMode = z22.enum(["stack", "inline", "inline-wrap"]);
9305
- var footerNavLayoutAlign = z22.enum(["start", "center", "end", "space-between"]);
9306
- var footerSpacing = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9307
- var footerLogoPlacement = z22.enum(["left", "right", "above", "below"]);
9308
- var footerLogoSize = z22.enum(["sm", "md", "lg", "xl"]);
9309
- var footerLogoMaxHeight = z22.enum(["sm", "md", "lg", "xl"]);
9310
- var footerBottomTextLinkStyleSchema = z22.object({
9311
- colorToken: z22.string().optional(),
9312
- hoverColorToken: z22.string().nullable().optional(),
9313
- decorationColorToken: z22.string().nullable().optional(),
9314
- underline: z22.boolean().optional()
9315
- });
9316
- var footerBottomBarSchema = z22.object({
9317
- enabled: z22.boolean().optional(),
9318
- fullBleed: z22.boolean().optional(),
9225
+ var footerVariant = z21.enum(["simple", "columns", "split"]);
9226
+ var footerMaxWidth = z21.enum(["container", "full"]);
9227
+ var footerMode = z21.enum(["default", "blocks", "default+blocks", "none"]);
9228
+ var footerNavLayoutMode = z21.enum(["stack", "inline", "inline-wrap"]);
9229
+ var footerNavLayoutAlign = z21.enum(["start", "center", "end", "space-between"]);
9230
+ var footerSpacing = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9231
+ var footerLogoPlacement = z21.enum(["left", "right", "above", "below"]);
9232
+ var footerLogoSize = z21.enum(["sm", "md", "lg", "xl"]);
9233
+ var footerLogoMaxHeight = z21.enum(["sm", "md", "lg", "xl"]);
9234
+ var footerBottomTextLinkStyleSchema = z21.object({
9235
+ colorToken: z21.string().optional(),
9236
+ hoverColorToken: z21.string().nullable().optional(),
9237
+ decorationColorToken: z21.string().nullable().optional(),
9238
+ underline: z21.boolean().optional()
9239
+ });
9240
+ var footerBottomBarSchema = z21.object({
9241
+ enabled: z21.boolean().optional(),
9242
+ fullBleed: z21.boolean().optional(),
9319
9243
  background: headerBackgroundSchema.optional(),
9320
- textColor: z22.string().nullable().optional(),
9321
- textAlign: z22.enum(["left", "center", "right"]).optional(),
9244
+ textColor: z21.string().nullable().optional(),
9245
+ textAlign: z21.enum(["left", "center", "right"]).optional(),
9322
9246
  paddingY: footerSpacing.optional(),
9323
9247
  paddingX: footerSpacing.optional(),
9324
- borderTop: z22.object({
9325
- colorToken: z22.string().nullable().optional(),
9326
- width: z22.enum(["none", "thin", "medium", "thick"]).optional()
9248
+ borderTop: z21.object({
9249
+ colorToken: z21.string().nullable().optional(),
9250
+ width: z21.enum(["none", "thin", "medium", "thick"]).optional()
9327
9251
  }).optional()
9328
9252
  });
9329
- var footerNavLayoutSchema = z22.object({
9253
+ var footerNavLayoutSchema = z21.object({
9330
9254
  layout: footerNavLayoutMode.optional(),
9331
9255
  align: footerNavLayoutAlign.optional(),
9332
9256
  gapX: footerSpacing.optional(),
9333
9257
  gapY: footerSpacing.optional(),
9334
- columns: z22.number().int().min(1).max(6).optional()
9258
+ columns: z21.number().int().min(1).max(6).optional()
9335
9259
  });
9336
- var footerLogoSchema = z22.object({
9337
- showLogo: z22.boolean().default(true),
9338
- showLogoText: z22.boolean().optional(),
9260
+ var footerLogoSchema = z21.object({
9261
+ showLogo: z21.boolean().default(true),
9262
+ showLogoText: z21.boolean().optional(),
9339
9263
  placement: footerLogoPlacement.optional(),
9340
9264
  size: footerLogoSize.optional(),
9341
9265
  maxHeight: footerLogoMaxHeight.optional(),
9342
- align: z22.enum(["start", "center", "end"]).optional()
9266
+ align: z21.enum(["start", "center", "end"]).optional()
9343
9267
  });
9344
- var footerSchema = z22.object({
9268
+ var footerSchema = z21.object({
9345
9269
  /**
9346
9270
  * SDK-only footer rendering mode.
9347
9271
  *
@@ -9350,11 +9274,11 @@ var footerSchema = z22.object({
9350
9274
  mode: footerMode.optional(),
9351
9275
  variant: footerVariant,
9352
9276
  maxWidth: footerMaxWidth,
9353
- showLogoText: z22.boolean().optional(),
9277
+ showLogoText: z21.boolean().optional(),
9354
9278
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9355
9279
  // Footer nav styling (independent from header)
9356
9280
  navStyle: headerNavStyle.default("minimal"),
9357
- navColor: z22.string().nullable().optional(),
9281
+ navColor: z21.string().nullable().optional(),
9358
9282
  navWeight: navFontWeight.default("medium"),
9359
9283
  // Full nav link customization (overrides navStyle if set)
9360
9284
  navLinkStyle: navLinkStyleSchema.optional(),
@@ -9365,15 +9289,15 @@ var footerSchema = z22.object({
9365
9289
  logo: footerLogoSchema.optional(),
9366
9290
  bottomBar: footerBottomBarSchema.optional()
9367
9291
  });
9368
- var containerPaddingPresetSchema = z22.enum(["tight", "compact", "default", "relaxed"]);
9369
- var layoutSchema = z22.object({
9370
- containerPadding: z22.object({
9292
+ var containerPaddingPresetSchema = z21.enum(["tight", "compact", "default", "relaxed"]);
9293
+ var layoutSchema = z21.object({
9294
+ containerPadding: z21.object({
9371
9295
  mobile: containerPaddingPresetSchema.optional(),
9372
9296
  tablet: containerPaddingPresetSchema.optional(),
9373
9297
  desktop: containerPaddingPresetSchema.optional()
9374
9298
  }).optional()
9375
9299
  }).optional();
9376
- var heroTypographySizeSchema = z22.enum([
9300
+ var heroTypographySizeSchema = z21.enum([
9377
9301
  "sm",
9378
9302
  "base",
9379
9303
  "lg",
@@ -9384,14 +9308,14 @@ var heroTypographySizeSchema = z22.enum([
9384
9308
  "5xl",
9385
9309
  "6xl"
9386
9310
  ]);
9387
- var heroTypographyLineHeightSchema = z22.enum(["tight", "snug", "normal", "relaxed"]);
9388
- var heroResponsiveTypographySchema = z22.object({
9311
+ var heroTypographyLineHeightSchema = z21.enum(["tight", "snug", "normal", "relaxed"]);
9312
+ var heroResponsiveTypographySchema = z21.object({
9389
9313
  headlineSize: heroTypographySizeSchema.optional(),
9390
9314
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9391
9315
  subheadlineSize: heroTypographySizeSchema.optional(),
9392
9316
  subheadlineLineHeight: heroTypographyLineHeightSchema.optional()
9393
9317
  });
9394
- var heroTypographySchema = z22.object({
9318
+ var heroTypographySchema = z21.object({
9395
9319
  headlineSize: heroTypographySizeSchema.optional(),
9396
9320
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9397
9321
  subheadlineSize: heroTypographySizeSchema.optional(),
@@ -9400,24 +9324,24 @@ var heroTypographySchema = z22.object({
9400
9324
  microHeadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9401
9325
  microSubheadlineSize: heroTypographySizeSchema.optional(),
9402
9326
  microSubheadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9403
- responsive: z22.object({
9327
+ responsive: z21.object({
9404
9328
  tablet: heroResponsiveTypographySchema.optional(),
9405
9329
  mobile: heroResponsiveTypographySchema.optional()
9406
9330
  }).optional()
9407
9331
  });
9408
- var heroSchema = z22.object({
9332
+ var heroSchema = z21.object({
9409
9333
  typography: heroTypographySchema.optional()
9410
9334
  }).optional();
9411
- var gradientsSchema = z22.object({
9412
- button: z22.string().min(1).nullable().optional(),
9413
- hero: z22.string().min(1).nullable().optional(),
9414
- background: z22.string().min(1).nullable().optional()
9415
- });
9416
- var themeSchema = z22.object({
9417
- name: z22.string().min(1).max(30),
9418
- description: z22.string().min(1).max(400),
9419
- rationale: z22.string().min(1).max(400),
9420
- siteStyleId: z22.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9335
+ var gradientsSchema = z21.object({
9336
+ button: z21.string().min(1).nullable().optional(),
9337
+ hero: z21.string().min(1).nullable().optional(),
9338
+ background: z21.string().min(1).nullable().optional()
9339
+ });
9340
+ var themeSchema = z21.object({
9341
+ name: z21.string().min(1).max(30),
9342
+ description: z21.string().min(1).max(400),
9343
+ rationale: z21.string().min(1).max(400),
9344
+ siteStyleId: z21.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9421
9345
  axes: axesSchema,
9422
9346
  palette: paletteSchema,
9423
9347
  typography: typographySchema,
@@ -9444,16 +9368,16 @@ var themeSchema = z22.object({
9444
9368
  // Block-specific customization (Tier 3)
9445
9369
  // blockCustomVars: Per-block CSS variable overrides as bare values
9446
9370
  // Example: { "event-registration": { "--step-color": "#6d28d9" } }
9447
- blockCustomVars: z22.record(
9448
- z22.string(),
9371
+ blockCustomVars: z21.record(
9372
+ z21.string(),
9449
9373
  // block kind (matches data-block attribute)
9450
- z22.record(z22.string(), z22.string())
9374
+ z21.record(z21.string(), z21.string())
9451
9375
  // { '--var-name': 'value' }
9452
9376
  ).optional(),
9453
9377
  // Structured block-kind theme overrides (v1: typography prose-link style only)
9454
9378
  // Keyed by block kind (usually data-block value like "hero"; "block.hero" also accepted)
9455
- blockOverrides: z22.record(
9456
- z22.string(),
9379
+ blockOverrides: z21.record(
9380
+ z21.string(),
9457
9381
  blockThemeOverrideSchema
9458
9382
  ).optional(),
9459
9383
  // Structured custom CSS rules
@@ -9489,11 +9413,11 @@ var themeSchema = z22.object({
9489
9413
  * }
9490
9414
  * ```
9491
9415
  */
9492
- styleGroups: z22.record(z22.string(), z22.array(z22.string())).optional()
9416
+ styleGroups: z21.record(z21.string(), z21.array(z21.string())).optional()
9493
9417
  });
9494
- var themesTurnSchema = z22.object({
9495
- message: z22.string().min(1),
9496
- themes: z22.array(themeSchema).length(3)
9418
+ var themesTurnSchema = z21.object({
9419
+ message: z21.string().min(1),
9420
+ themes: z21.array(themeSchema).length(3)
9497
9421
  });
9498
9422
 
9499
9423
  // ../theme-core/src/palette/variants/types.ts
@@ -9503,7 +9427,7 @@ function asPaletteVariantId(value) {
9503
9427
  }
9504
9428
  return value;
9505
9429
  }
9506
- var paletteVariantIdSchema = z23.string().min(1).transform((value) => asPaletteVariantId(value));
9430
+ var paletteVariantIdSchema = z22.string().min(1).transform((value) => asPaletteVariantId(value));
9507
9431
  var PALETTE_TOKEN_NAMES = [
9508
9432
  "primary",
9509
9433
  "primaryForeground",
@@ -9519,19 +9443,19 @@ var PALETTE_TOKEN_NAMES = [
9519
9443
  "text",
9520
9444
  "border"
9521
9445
  ];
9522
- var paletteTokenNameSchema = z23.enum(PALETTE_TOKEN_NAMES);
9446
+ var paletteTokenNameSchema = z22.enum(PALETTE_TOKEN_NAMES);
9523
9447
  var HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
9524
- var hexColorSchema = z23.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9448
+ var hexColorSchema = z22.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9525
9449
  var variantPaletteColorSchema = paletteColorSchema.extend({
9526
9450
  name: paletteTokenNameSchema
9527
9451
  });
9528
- var paletteVariantSchema = z23.object({
9452
+ var paletteVariantSchema = z22.object({
9529
9453
  id: paletteVariantIdSchema,
9530
- name: z23.string().min(1),
9531
- description: z23.string().min(1),
9454
+ name: z22.string().min(1),
9455
+ description: z22.string().min(1),
9532
9456
  tags: styleTagsSchema,
9533
- mode: z23.enum(["light", "dark"]),
9534
- colors: z23.array(variantPaletteColorSchema).min(1)
9457
+ mode: z22.enum(["light", "dark"]),
9458
+ colors: z22.array(variantPaletteColorSchema).min(1)
9535
9459
  });
9536
9460
  function definePaletteVariant(input) {
9537
9461
  return {
@@ -9543,7 +9467,7 @@ function definePaletteVariant(input) {
9543
9467
  colors: input.colors
9544
9468
  };
9545
9469
  }
9546
- var paletteOverridesSchema = z23.object({
9470
+ var paletteOverridesSchema = z22.object({
9547
9471
  primary: hexColorSchema.optional(),
9548
9472
  primaryForeground: hexColorSchema.optional(),
9549
9473
  secondary: hexColorSchema.optional(),
@@ -10220,7 +10144,7 @@ var curatedSiteStylesById = new Map(
10220
10144
  );
10221
10145
 
10222
10146
  // ../theme-core/src/site-styles/designState.ts
10223
- import { z as z24 } from "zod";
10147
+ import { z as z23 } from "zod";
10224
10148
 
10225
10149
  // ../theme-core/src/site-styles/rawStyleFields.ts
10226
10150
  var themeV2RuntimeStyleFieldNames = [
@@ -10246,13 +10170,13 @@ var themeV2NormalEditorRawStyleFieldNameSet = new Set(
10246
10170
 
10247
10171
  // ../theme-core/src/site-styles/designState.ts
10248
10172
  var themeV2DesignStateSchemaVersion = 1;
10249
- var designResolutionPolicySchema = z24.enum(["generated", "user", "admin", "sdk"]);
10250
- var runtimeStyleFieldNameSchema = z24.enum(themeV2RuntimeStyleFieldNames);
10251
- var nonEmptyRuntimeStyleFieldNamesSchema = z24.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10173
+ var designResolutionPolicySchema = z23.enum(["generated", "user", "admin", "sdk"]);
10174
+ var runtimeStyleFieldNameSchema = z23.enum(themeV2RuntimeStyleFieldNames);
10175
+ var nonEmptyRuntimeStyleFieldNamesSchema = z23.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10252
10176
  fields3[0],
10253
10177
  ...fields3.slice(1)
10254
10178
  ]);
10255
- var heroLegibilityStrategySchema = z24.enum([
10179
+ var heroLegibilityStrategySchema = z23.enum([
10256
10180
  "none",
10257
10181
  "scrim-gradient",
10258
10182
  "solid-panel"
@@ -10274,66 +10198,66 @@ var userFlushTreatments = uniqueNonEmpty(
10274
10198
  var userFlushBleeds = uniqueNonEmpty(
10275
10199
  userDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10276
10200
  );
10277
- var contentFrameIntentSchema = z24.discriminatedUnion("kind", [
10278
- z24.object({ kind: z24.literal("plain") }).strict(),
10279
- z24.object({
10280
- kind: z24.literal("panel"),
10281
- treatment: z24.enum(userPanelTreatments)
10201
+ var contentFrameIntentSchema = z23.discriminatedUnion("kind", [
10202
+ z23.object({ kind: z23.literal("plain") }).strict(),
10203
+ z23.object({
10204
+ kind: z23.literal("panel"),
10205
+ treatment: z23.enum(userPanelTreatments)
10282
10206
  }).strict(),
10283
- z24.object({
10284
- kind: z24.literal("flush-panel"),
10285
- treatment: z24.enum(userFlushTreatments),
10286
- bleed: z24.enum(userFlushBleeds)
10207
+ z23.object({
10208
+ kind: z23.literal("flush-panel"),
10209
+ treatment: z23.enum(userFlushTreatments),
10210
+ bleed: z23.enum(userFlushBleeds)
10287
10211
  }).strict()
10288
10212
  ]);
10289
- var blockDesignPlanSchema = z24.object({
10290
- blockId: z24.string().min(1).transform(asDesignBlockId),
10291
- blockKind: z24.string().min(1),
10292
- purpose: z24.string().min(1),
10293
- sectionSurface: z24.enum(userDesignOptionCatalog.sectionSurfaces),
10213
+ var blockDesignPlanSchema = z23.object({
10214
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10215
+ blockKind: z23.string().min(1),
10216
+ purpose: z23.string().min(1),
10217
+ sectionSurface: z23.enum(userDesignOptionCatalog.sectionSurfaces),
10294
10218
  contentFrame: contentFrameIntentSchema,
10295
- itemSurface: z24.enum(userDesignOptionCatalog.itemSurfaces),
10296
- transitionAfter: z24.enum(userDesignOptionCatalog.transitions),
10297
- emphasis: z24.enum(userDesignOptionCatalog.emphases),
10219
+ itemSurface: z23.enum(userDesignOptionCatalog.itemSurfaces),
10220
+ transitionAfter: z23.enum(userDesignOptionCatalog.transitions),
10221
+ emphasis: z23.enum(userDesignOptionCatalog.emphases),
10298
10222
  heroLegibility: heroLegibilityStrategySchema.optional()
10299
10223
  }).strict();
10300
- var styleAuthoritySchema = z24.discriminatedUnion("kind", [
10301
- z24.object({
10302
- kind: z24.literal("theme-v2"),
10224
+ var styleAuthoritySchema = z23.discriminatedUnion("kind", [
10225
+ z23.object({
10226
+ kind: z23.literal("theme-v2"),
10303
10227
  source: designResolutionPolicySchema,
10304
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10305
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10306
- templateVersion: z24.number().int().nonnegative(),
10307
- resolverVersion: z24.number().int().nonnegative()
10228
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10229
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10230
+ templateVersion: z23.number().int().nonnegative(),
10231
+ resolverVersion: z23.number().int().nonnegative()
10308
10232
  }).strict(),
10309
- z24.object({
10310
- kind: z24.literal("legacy-raw"),
10311
- reason: z24.enum(["pre-theme-v2", "manual-runtime-fields"])
10233
+ z23.object({
10234
+ kind: z23.literal("legacy-raw"),
10235
+ reason: z23.enum(["pre-theme-v2", "manual-runtime-fields"])
10312
10236
  }).strict(),
10313
- z24.object({
10314
- kind: z24.literal("advanced-detached"),
10315
- reason: z24.literal("detached-custom-runtime-fields")
10237
+ z23.object({
10238
+ kind: z23.literal("advanced-detached"),
10239
+ reason: z23.literal("detached-custom-runtime-fields")
10316
10240
  }).strict()
10317
10241
  ]);
10318
- var blockRuntimeStyleAuthoritySchema = z24.object({
10319
- unit: z24.literal("block-runtime-fields"),
10320
- blockId: z24.string().min(1).transform(asDesignBlockId),
10242
+ var blockRuntimeStyleAuthoritySchema = z23.object({
10243
+ unit: z23.literal("block-runtime-fields"),
10244
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10321
10245
  fields: nonEmptyRuntimeStyleFieldNamesSchema,
10322
10246
  authority: styleAuthoritySchema
10323
10247
  }).strict();
10324
- var persistedPageDesignStateV1Schema = z24.object({
10325
- schemaVersion: z24.literal(themeV2DesignStateSchemaVersion),
10326
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10327
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10328
- templateVersion: z24.number().int().nonnegative(),
10329
- resolverVersion: z24.number().int().nonnegative(),
10330
- rhythmPresetId: z24.string().min(1),
10331
- blocks: z24.array(blockDesignPlanSchema),
10332
- styleAuthorities: z24.array(blockRuntimeStyleAuthoritySchema)
10248
+ var persistedPageDesignStateV1Schema = z23.object({
10249
+ schemaVersion: z23.literal(themeV2DesignStateSchemaVersion),
10250
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10251
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10252
+ templateVersion: z23.number().int().nonnegative(),
10253
+ resolverVersion: z23.number().int().nonnegative(),
10254
+ rhythmPresetId: z23.string().min(1),
10255
+ blocks: z23.array(blockDesignPlanSchema),
10256
+ styleAuthorities: z23.array(blockRuntimeStyleAuthoritySchema)
10333
10257
  }).strict();
10334
10258
 
10335
10259
  // ../theme-core/src/site-styles/generatedSchemas.ts
10336
- import { z as z25 } from "zod";
10260
+ import { z as z24 } from "zod";
10337
10261
  function uniqueNonEmpty2(values) {
10338
10262
  const uniqueValues = [...new Set(values)];
10339
10263
  const firstValue = uniqueValues[0];
@@ -10351,105 +10275,105 @@ var generatedFlushTreatments = uniqueNonEmpty2(
10351
10275
  var generatedFlushBleeds = uniqueNonEmpty2(
10352
10276
  generatedDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10353
10277
  );
10354
- var generatedPanelFrameSchema = z25.object({
10355
- kind: z25.literal("panel"),
10356
- treatment: z25.enum(generatedPanelTreatments)
10278
+ var generatedPanelFrameSchema = z24.object({
10279
+ kind: z24.literal("panel"),
10280
+ treatment: z24.enum(generatedPanelTreatments)
10357
10281
  }).strict();
10358
- var generatedFlushPanelFrameSchema = z25.object({
10359
- kind: z25.literal("flush-panel"),
10360
- treatment: z25.enum(generatedFlushTreatments),
10361
- bleed: z25.enum(generatedFlushBleeds)
10282
+ var generatedFlushPanelFrameSchema = z24.object({
10283
+ kind: z24.literal("flush-panel"),
10284
+ treatment: z24.enum(generatedFlushTreatments),
10285
+ bleed: z24.enum(generatedFlushBleeds)
10362
10286
  }).strict();
10363
- var generatedContentFrameIntentSchema = z25.discriminatedUnion("kind", [
10364
- z25.object({ kind: z25.literal("plain") }).strict(),
10287
+ var generatedContentFrameIntentSchema = z24.discriminatedUnion("kind", [
10288
+ z24.object({ kind: z24.literal("plain") }).strict(),
10365
10289
  generatedPanelFrameSchema,
10366
10290
  generatedFlushPanelFrameSchema
10367
10291
  ]);
10368
- var generatedSiteStyleIdSchema = z25.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10292
+ var generatedSiteStyleIdSchema = z24.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10369
10293
  function generatedChoiceSchema(valueSchema) {
10370
- return z25.discriminatedUnion("kind", [
10371
- z25.object({
10372
- source: z25.literal("generated"),
10373
- kind: z25.literal("auto")
10294
+ return z24.discriminatedUnion("kind", [
10295
+ z24.object({
10296
+ source: z24.literal("generated"),
10297
+ kind: z24.literal("auto")
10374
10298
  }).strict(),
10375
- z25.object({
10376
- source: z25.literal("generated"),
10377
- kind: z25.literal("explicit"),
10299
+ z24.object({
10300
+ source: z24.literal("generated"),
10301
+ kind: z24.literal("explicit"),
10378
10302
  value: valueSchema
10379
10303
  }).strict()
10380
10304
  ]);
10381
10305
  }
10382
- var generatedBlockDesignIntentSchema = z25.object({
10306
+ var generatedBlockDesignIntentSchema = z24.object({
10383
10307
  sectionSurface: generatedChoiceSchema(
10384
- z25.enum(generatedDesignOptionCatalog.sectionSurfaces)
10308
+ z24.enum(generatedDesignOptionCatalog.sectionSurfaces)
10385
10309
  ),
10386
10310
  contentFrame: generatedChoiceSchema(generatedContentFrameIntentSchema),
10387
10311
  itemSurface: generatedChoiceSchema(
10388
- z25.enum(generatedDesignOptionCatalog.itemSurfaces)
10312
+ z24.enum(generatedDesignOptionCatalog.itemSurfaces)
10389
10313
  ),
10390
10314
  transitionAfter: generatedChoiceSchema(
10391
- z25.enum(generatedDesignOptionCatalog.transitions)
10315
+ z24.enum(generatedDesignOptionCatalog.transitions)
10392
10316
  ),
10393
10317
  emphasis: generatedChoiceSchema(
10394
- z25.enum(generatedDesignOptionCatalog.emphases)
10318
+ z24.enum(generatedDesignOptionCatalog.emphases)
10395
10319
  )
10396
10320
  }).strict();
10397
- var generatedMediaCompositionIntentSchema = z25.enum([
10321
+ var generatedMediaCompositionIntentSchema = z24.enum([
10398
10322
  "none",
10399
10323
  "supporting",
10400
10324
  "dominant"
10401
10325
  ]);
10402
- var generatedDecorativeCompositionIntentSchema = z25.enum([
10326
+ var generatedDecorativeCompositionIntentSchema = z24.enum([
10403
10327
  "none",
10404
10328
  "supporting"
10405
10329
  ]);
10406
- var generatedHeroLegibilityStrategySchema = z25.enum([
10330
+ var generatedHeroLegibilityStrategySchema = z24.enum([
10407
10331
  "none",
10408
10332
  "scrim-gradient"
10409
10333
  ]);
10410
- var generatedBlockMediaIntentSchema = z25.object({
10334
+ var generatedBlockMediaIntentSchema = z24.object({
10411
10335
  media: generatedMediaCompositionIntentSchema,
10412
10336
  decorative: generatedDecorativeCompositionIntentSchema,
10413
10337
  heroLegibility: generatedChoiceSchema(generatedHeroLegibilityStrategySchema)
10414
10338
  }).strict();
10415
- var generatedBoundaryIntentSchema = z25.object({
10339
+ var generatedBoundaryIntentSchema = z24.object({
10416
10340
  transitionAfter: generatedChoiceSchema(
10417
- z25.enum(generatedDesignOptionCatalog.transitions)
10341
+ z24.enum(generatedDesignOptionCatalog.transitions)
10418
10342
  )
10419
10343
  }).strict();
10420
- var generatedPageDesignBlockIntentSchema = z25.object({
10421
- blockId: z25.string().min(1),
10422
- blockKind: z25.string().min(1),
10423
- purpose: z25.string().min(1),
10344
+ var generatedPageDesignBlockIntentSchema = z24.object({
10345
+ blockId: z24.string().min(1),
10346
+ blockKind: z24.string().min(1),
10347
+ purpose: z24.string().min(1),
10424
10348
  design: generatedBlockDesignIntentSchema,
10425
10349
  mediaIntent: generatedBlockMediaIntentSchema,
10426
10350
  boundaryIntent: generatedBoundaryIntentSchema
10427
10351
  }).strict();
10428
- var generatedPageDesignIntentSchema = z25.object({
10352
+ var generatedPageDesignIntentSchema = z24.object({
10429
10353
  siteStyleId: generatedSiteStyleIdSchema,
10430
- blocks: z25.array(generatedPageDesignBlockIntentSchema)
10354
+ blocks: z24.array(generatedPageDesignBlockIntentSchema)
10431
10355
  }).strict();
10432
10356
 
10433
10357
  // ../theme-core/src/site-styles/pageDesignIntent.ts
10434
- import { z as z26 } from "zod";
10358
+ import { z as z25 } from "zod";
10435
10359
  var pageDesignIntentSchemaVersion = 1;
10436
- var pageDesignUserPinnedAppearanceChoiceSchema = z26.object({
10437
- kind: z26.literal("user-pinned"),
10438
- value: z26.string().min(1).transform(asAppearancePresetId)
10360
+ var pageDesignUserPinnedAppearanceChoiceSchema = z25.object({
10361
+ kind: z25.literal("user-pinned"),
10362
+ value: z25.string().min(1).transform(asAppearancePresetId)
10439
10363
  }).strict();
10440
- var pageDesignUserPinnedBoundaryChoiceSchema = z26.object({
10441
- kind: z26.literal("user-pinned"),
10442
- value: z26.string().min(1).transform(asBoundaryOptionId)
10364
+ var pageDesignUserPinnedBoundaryChoiceSchema = z25.object({
10365
+ kind: z25.literal("user-pinned"),
10366
+ value: z25.string().min(1).transform(asBoundaryOptionId)
10443
10367
  }).strict();
10444
- var pageDesignBlockLookPinSchema = z26.object({
10445
- blockId: z26.string().min(1).transform(asDesignBlockId),
10446
- blockKind: z26.string().min(1),
10368
+ var pageDesignBlockLookPinSchema = z25.object({
10369
+ blockId: z25.string().min(1).transform(asDesignBlockId),
10370
+ blockKind: z25.string().min(1),
10447
10371
  choice: pageDesignUserPinnedAppearanceChoiceSchema
10448
10372
  }).strict();
10449
- var pageDesignBoundaryPinSchema = z26.object({
10450
- boundaryId: z26.string().min(1).transform(asDesignBoundaryId),
10451
- previousBlockId: z26.string().min(1).transform(asDesignBlockId),
10452
- nextBlockId: z26.string().min(1).transform(asDesignBlockId),
10373
+ var pageDesignBoundaryPinSchema = z25.object({
10374
+ boundaryId: z25.string().min(1).transform(asDesignBoundaryId),
10375
+ previousBlockId: z25.string().min(1).transform(asDesignBlockId),
10376
+ nextBlockId: z25.string().min(1).transform(asDesignBlockId),
10453
10377
  choice: pageDesignUserPinnedBoundaryChoiceSchema
10454
10378
  }).strict().superRefine((pin, ctx) => {
10455
10379
  const expectedBoundaryId = makeBoundaryId(
@@ -10458,18 +10382,18 @@ var pageDesignBoundaryPinSchema = z26.object({
10458
10382
  );
10459
10383
  if (pin.boundaryId !== expectedBoundaryId) {
10460
10384
  ctx.addIssue({
10461
- code: z26.ZodIssueCode.custom,
10385
+ code: z25.ZodIssueCode.custom,
10462
10386
  path: ["boundaryId"],
10463
10387
  message: `Boundary id must match previousBlockId and nextBlockId. Expected ${expectedBoundaryId}.`
10464
10388
  });
10465
10389
  }
10466
10390
  });
10467
- var pageDesignIntentV1Schema = z26.object({
10468
- schemaVersion: z26.literal(pageDesignIntentSchemaVersion),
10469
- siteStyleId: z26.string().min(1).transform(asSiteStyleId),
10470
- pageFlowPresetId: z26.string().min(1).transform(asPageFlowPresetId),
10471
- blockLookPins: z26.array(pageDesignBlockLookPinSchema),
10472
- boundaryPins: z26.array(pageDesignBoundaryPinSchema)
10391
+ var pageDesignIntentV1Schema = z25.object({
10392
+ schemaVersion: z25.literal(pageDesignIntentSchemaVersion),
10393
+ siteStyleId: z25.string().min(1).transform(asSiteStyleId),
10394
+ pageFlowPresetId: z25.string().min(1).transform(asPageFlowPresetId),
10395
+ blockLookPins: z25.array(pageDesignBlockLookPinSchema),
10396
+ boundaryPins: z25.array(pageDesignBoundaryPinSchema)
10473
10397
  }).strict().superRefine((intent, ctx) => {
10474
10398
  addDuplicateStringIssues(ctx, {
10475
10399
  values: intent.blockLookPins.map((pin) => pin.blockId),
@@ -10495,7 +10419,7 @@ function addDuplicateStringIssues(ctx, input) {
10495
10419
  }
10496
10420
  for (const duplicate of duplicates) {
10497
10421
  ctx.addIssue({
10498
- code: z26.ZodIssueCode.custom,
10422
+ code: z25.ZodIssueCode.custom,
10499
10423
  path: [...input.path],
10500
10424
  message: `Duplicate ${input.label}: ${duplicate}.`
10501
10425
  });
@@ -10647,75 +10571,75 @@ var defaultComponentRuntimeRules = defineComponentRuntimeRules({
10647
10571
  });
10648
10572
 
10649
10573
  // ../theme-core/src/site-styles/pageDesignAuthority.ts
10650
- import { z as z27 } from "zod";
10651
- var nonEmptyStringSchema = z27.string().min(1);
10574
+ import { z as z26 } from "zod";
10575
+ var nonEmptyStringSchema = z26.string().min(1);
10652
10576
  var blockContentVersionIdSchema = nonEmptyStringSchema.transform(asBlockContentVersionId);
10653
10577
  var designBlockIdSchema = nonEmptyStringSchema.transform(asDesignBlockId);
10654
10578
  var designPageIdSchema = nonEmptyStringSchema.transform(asDesignPageId);
10655
10579
  var designEntryIdSchema = nonEmptyStringSchema.transform(asDesignEntryId);
10656
- var blockOrderIndexSchema = z27.number().int().nonnegative().transform(asBlockOrderIndex);
10657
- var publishedPageBlockSnapshotSchema = z27.object({
10658
- kind: z27.literal("published-block-content"),
10580
+ var blockOrderIndexSchema = z26.number().int().nonnegative().transform(asBlockOrderIndex);
10581
+ var publishedPageBlockSnapshotSchema = z26.object({
10582
+ kind: z26.literal("published-block-content"),
10659
10583
  blockId: designBlockIdSchema,
10660
10584
  contentVersionId: blockContentVersionIdSchema,
10661
- identifier: z27.string().nullable(),
10585
+ identifier: z26.string().nullable(),
10662
10586
  blockKind: nonEmptyStringSchema,
10663
10587
  orderIndex: blockOrderIndexSchema
10664
10588
  }).strict();
10665
- var draftPageBlockSnapshotSchema = z27.object({
10666
- kind: z27.literal("draft-block-content"),
10589
+ var draftPageBlockSnapshotSchema = z26.object({
10590
+ kind: z26.literal("draft-block-content"),
10667
10591
  blockId: designBlockIdSchema,
10668
10592
  contentVersionId: blockContentVersionIdSchema.nullable(),
10669
- identifier: z27.string().nullable(),
10593
+ identifier: z26.string().nullable(),
10670
10594
  blockKind: nonEmptyStringSchema,
10671
10595
  orderIndex: blockOrderIndexSchema
10672
10596
  }).strict();
10673
- var missingPageBlockSnapshotSchema = z27.object({
10674
- kind: z27.literal("missing-block-content"),
10597
+ var missingPageBlockSnapshotSchema = z26.object({
10598
+ kind: z26.literal("missing-block-content"),
10675
10599
  blockId: designBlockIdSchema,
10676
- identifier: z27.string().nullable(),
10600
+ identifier: z26.string().nullable(),
10677
10601
  blockKind: nonEmptyStringSchema,
10678
10602
  orderIndex: blockOrderIndexSchema,
10679
- reason: z27.enum([
10603
+ reason: z26.enum([
10680
10604
  "new-block",
10681
10605
  "deleted-content-version",
10682
10606
  "unpublished-block"
10683
10607
  ])
10684
10608
  }).strict();
10685
- var pageBlockSnapshotSchema = z27.discriminatedUnion("kind", [
10609
+ var pageBlockSnapshotSchema = z26.discriminatedUnion("kind", [
10686
10610
  publishedPageBlockSnapshotSchema,
10687
10611
  draftPageBlockSnapshotSchema,
10688
10612
  missingPageBlockSnapshotSchema
10689
10613
  ]);
10690
- var publishedPageBlockSequenceSchema = z27.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10691
- var draftPageBlockSequenceSchema = z27.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10692
- var publishedPageDesignVersionDataV1Schema = z27.object({
10693
- schemaVersion: z27.literal(1),
10694
- stage: z27.literal("published"),
10614
+ var publishedPageBlockSequenceSchema = z26.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10615
+ var draftPageBlockSequenceSchema = z26.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10616
+ var publishedPageDesignVersionDataV1Schema = z26.object({
10617
+ schemaVersion: z26.literal(1),
10618
+ stage: z26.literal("published"),
10695
10619
  pageId: designPageIdSchema,
10696
10620
  blockSequence: publishedPageBlockSequenceSchema
10697
10621
  }).strict();
10698
- var draftPageDesignVersionDataV1Schema = z27.object({
10699
- schemaVersion: z27.literal(1),
10700
- stage: z27.literal("draft"),
10622
+ var draftPageDesignVersionDataV1Schema = z26.object({
10623
+ schemaVersion: z26.literal(1),
10624
+ stage: z26.literal("draft"),
10701
10625
  pageId: designPageIdSchema,
10702
10626
  blockSequence: draftPageBlockSequenceSchema
10703
10627
  }).strict();
10704
- var pageDesignVersionDataV1Schema = z27.discriminatedUnion("stage", [
10628
+ var pageDesignVersionDataV1Schema = z26.discriminatedUnion("stage", [
10705
10629
  publishedPageDesignVersionDataV1Schema,
10706
10630
  draftPageDesignVersionDataV1Schema
10707
10631
  ]);
10708
- var contentVersionOwnerSchema = z27.discriminatedUnion("kind", [
10709
- z27.object({
10710
- kind: z27.literal("block"),
10632
+ var contentVersionOwnerSchema = z26.discriminatedUnion("kind", [
10633
+ z26.object({
10634
+ kind: z26.literal("block"),
10711
10635
  blockId: designBlockIdSchema
10712
10636
  }).strict(),
10713
- z27.object({
10714
- kind: z27.literal("entry"),
10637
+ z26.object({
10638
+ kind: z26.literal("entry"),
10715
10639
  entryId: designEntryIdSchema
10716
10640
  }).strict(),
10717
- z27.object({
10718
- kind: z27.literal("page"),
10641
+ z26.object({
10642
+ kind: z26.literal("page"),
10719
10643
  pageId: designPageIdSchema
10720
10644
  }).strict()
10721
10645
  ]);
@@ -10732,7 +10656,7 @@ function collectBlockSequenceIssues(snapshots) {
10732
10656
  snapshots.forEach((snapshot, index) => {
10733
10657
  if (seenBlockIds.has(snapshot.blockId)) {
10734
10658
  issues.push({
10735
- code: z27.ZodIssueCode.custom,
10659
+ code: z26.ZodIssueCode.custom,
10736
10660
  message: `Duplicate blockId in page design blockSequence: ${snapshot.blockId}`,
10737
10661
  path: [index, "blockId"]
10738
10662
  });
@@ -10741,7 +10665,7 @@ function collectBlockSequenceIssues(snapshots) {
10741
10665
  const orderIndex = snapshot.orderIndex;
10742
10666
  if (seenOrderIndexes.has(orderIndex)) {
10743
10667
  issues.push({
10744
- code: z27.ZodIssueCode.custom,
10668
+ code: z26.ZodIssueCode.custom,
10745
10669
  message: `Duplicate orderIndex in page design blockSequence: ${String(orderIndex)}`,
10746
10670
  path: [index, "orderIndex"]
10747
10671
  });
@@ -10749,7 +10673,7 @@ function collectBlockSequenceIssues(snapshots) {
10749
10673
  seenOrderIndexes.add(orderIndex);
10750
10674
  if (previousOrderIndex !== null && orderIndex <= previousOrderIndex) {
10751
10675
  issues.push({
10752
- code: z27.ZodIssueCode.custom,
10676
+ code: z26.ZodIssueCode.custom,
10753
10677
  message: `Expected orderIndex greater than ${String(previousOrderIndex)} for blockSequence position ${String(index)}; received ${String(orderIndex)}.`,
10754
10678
  path: [index, "orderIndex"]
10755
10679
  });
@@ -10802,7 +10726,7 @@ var pageFlowPresets = [
10802
10726
  ];
10803
10727
 
10804
10728
  // ../theme-core/src/site-styles/tokenRecipes.ts
10805
- import { z as z28 } from "zod";
10729
+ import { z as z27 } from "zod";
10806
10730
  var themeTokenRecipeOptions = {
10807
10731
  palette: ["brand-led", "warm-neutral", "high-contrast", "soft-natural"],
10808
10732
  contrast: ["standard", "strong", "maximum"],
@@ -10817,14 +10741,14 @@ var themeTokenRecipeOptions = {
10817
10741
  spacing: ["compact", "regular", "airy"],
10818
10742
  motion: ["none", "subtle", "expressive"]
10819
10743
  };
10820
- var themeTokenRecipesSchema = z28.object({
10821
- palette: z28.enum(themeTokenRecipeOptions.palette),
10822
- contrast: z28.enum(themeTokenRecipeOptions.contrast),
10823
- radius: z28.enum(themeTokenRecipeOptions.radius),
10824
- shadow: z28.enum(themeTokenRecipeOptions.shadow),
10825
- typography: z28.enum(themeTokenRecipeOptions.typography),
10826
- spacing: z28.enum(themeTokenRecipeOptions.spacing),
10827
- motion: z28.enum(themeTokenRecipeOptions.motion)
10744
+ var themeTokenRecipesSchema = z27.object({
10745
+ palette: z27.enum(themeTokenRecipeOptions.palette),
10746
+ contrast: z27.enum(themeTokenRecipeOptions.contrast),
10747
+ radius: z27.enum(themeTokenRecipeOptions.radius),
10748
+ shadow: z27.enum(themeTokenRecipeOptions.shadow),
10749
+ typography: z27.enum(themeTokenRecipeOptions.typography),
10750
+ spacing: z27.enum(themeTokenRecipeOptions.spacing),
10751
+ motion: z27.enum(themeTokenRecipeOptions.motion)
10828
10752
  });
10829
10753
 
10830
10754
  // ../blocks/src/system/designCapabilities.ts
@@ -13101,26 +13025,26 @@ function sectionState(opts) {
13101
13025
  }
13102
13026
 
13103
13027
  // ../blocks/src/system/fragments/types.ts
13104
- import { z as z29 } from "zod";
13028
+ import { z as z28 } from "zod";
13105
13029
  var FRAGMENT_ID_PATTERN = /^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$/i;
13106
13030
  var FIELD_ID_PATTERN = /^[a-z][a-zA-Z0-9_-]*$/;
13107
- var dataLoaderSchema = z29.object({
13108
- endpoint: z29.string().min(1, "Fragment data loader requires an endpoint"),
13109
- params: z29.record(z29.string(), z29.unknown()).default({}),
13110
- mode: z29.enum(["server", "client"]).default("server")
13031
+ var dataLoaderSchema = z28.object({
13032
+ endpoint: z28.string().min(1, "Fragment data loader requires an endpoint"),
13033
+ params: z28.record(z28.string(), z28.unknown()).default({}),
13034
+ mode: z28.enum(["server", "client"]).default("server")
13111
13035
  });
13112
- var fragmentDataSchema = z29.object({
13113
- key: z29.string().min(1, "Fragment data key is required"),
13036
+ var fragmentDataSchema = z28.object({
13037
+ key: z28.string().min(1, "Fragment data key is required"),
13114
13038
  loader: dataLoaderSchema.optional()
13115
13039
  });
13116
- var fragmentConfigSchema = z29.object({
13117
- id: z29.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13118
- title: z29.string().optional(),
13119
- description: z29.string().optional(),
13120
- category: z29.enum(["content", "media", "interactive", "layout"]).optional(),
13121
- icon: z29.string().optional(),
13040
+ var fragmentConfigSchema = z28.object({
13041
+ id: z28.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13042
+ title: z28.string().optional(),
13043
+ description: z28.string().optional(),
13044
+ category: z28.enum(["content", "media", "interactive", "layout"]).optional(),
13045
+ icon: z28.string().optional(),
13122
13046
  fields: fieldSchema.array().default([]),
13123
- layout: z29.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13047
+ layout: z28.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13124
13048
  data: fragmentDataSchema.optional()
13125
13049
  });
13126
13050
  var FragmentConfigError = class extends Error {
@@ -15770,7 +15694,7 @@ var bodyTextBlockDefinition = {
15770
15694
  };
15771
15695
 
15772
15696
  // ../blocks/src/system/blocks/blog-post.tsx
15773
- import { z as z30 } from "zod";
15697
+ import { z as z29 } from "zod";
15774
15698
  var composition = composeFragments([{ fragment: blogFeaturedPostFragment }]);
15775
15699
  var blogPostLayout = section(
15776
15700
  { background: "background", className: "rb-px-6 rb-py-12" },
@@ -15799,17 +15723,17 @@ var blogPostManifest = createBlockManifest({
15799
15723
  additionalFields: composition.fields,
15800
15724
  layout: blogPostLayout
15801
15725
  });
15802
- var blogPostDataSchema = z30.object({
15803
- id: z30.string(),
15804
- title: z30.string(),
15805
- slug: z30.string(),
15806
- path: z30.string(),
15807
- excerpt: z30.string().nullable().optional(),
15808
- image: z30.object({
15809
- url: z30.string().optional().nullable(),
15810
- alt: z30.string().optional().nullable()
15726
+ var blogPostDataSchema = z29.object({
15727
+ id: z29.string(),
15728
+ title: z29.string(),
15729
+ slug: z29.string(),
15730
+ path: z29.string(),
15731
+ excerpt: z29.string().nullable().optional(),
15732
+ image: z29.object({
15733
+ url: z29.string().optional().nullable(),
15734
+ alt: z29.string().optional().nullable()
15811
15735
  }).nullable().optional(),
15812
- publishedAt: z30.string().nullable().optional()
15736
+ publishedAt: z29.string().nullable().optional()
15813
15737
  });
15814
15738
  var blogPostBlockDefinition = {
15815
15739
  manifest: blogPostManifest,
@@ -15818,7 +15742,7 @@ var blogPostBlockDefinition = {
15818
15742
  };
15819
15743
 
15820
15744
  // ../blocks/src/system/blocks/blog-listing.ts
15821
- import { z as z31 } from "zod";
15745
+ import { z as z30 } from "zod";
15822
15746
  var blogListingDataLoader = {
15823
15747
  endpoint: "listPublishedEntries",
15824
15748
  params: {
@@ -16136,24 +16060,24 @@ var blogListingManifest = createBlockManifest({
16136
16060
  spacing: "lg"
16137
16061
  }
16138
16062
  });
16139
- var blogPostListEntrySchema = z31.object({
16140
- id: z31.string(),
16141
- slug: z31.string(),
16142
- path: z31.string(),
16143
- title: z31.string(),
16144
- excerpt: z31.string().nullable().optional(),
16145
- publishedAt: z31.string().nullable().optional(),
16146
- updatedAt: z31.string(),
16147
- status: z31.string(),
16148
- image: z31.object({
16149
- url: z31.string(),
16150
- alt: z31.string().nullable().optional()
16063
+ var blogPostListEntrySchema = z30.object({
16064
+ id: z30.string(),
16065
+ slug: z30.string(),
16066
+ path: z30.string(),
16067
+ title: z30.string(),
16068
+ excerpt: z30.string().nullable().optional(),
16069
+ publishedAt: z30.string().nullable().optional(),
16070
+ updatedAt: z30.string(),
16071
+ status: z30.string(),
16072
+ image: z30.object({
16073
+ url: z30.string(),
16074
+ alt: z30.string().nullable().optional()
16151
16075
  }).nullable().optional()
16152
16076
  });
16153
16077
  var blogListingBlockDefinition = {
16154
16078
  manifest: blogListingManifest,
16155
16079
  dataSchemas: {
16156
- posts: z31.array(blogPostListEntrySchema).optional()
16080
+ posts: z30.array(blogPostListEntrySchema).optional()
16157
16081
  },
16158
16082
  dataLoaders: {
16159
16083
  posts: blogListingDataLoader
@@ -16217,10 +16141,10 @@ var singleButtonBlockDefinition = {
16217
16141
  };
16218
16142
 
16219
16143
  // ../blocks/src/system/blocks/form.tsx
16220
- import { z as z33 } from "zod";
16144
+ import { z as z32 } from "zod";
16221
16145
 
16222
16146
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16223
- import { z as z32 } from "zod";
16147
+ import { z as z31 } from "zod";
16224
16148
 
16225
16149
  // ../blocks/src/contracts/runtime.ts
16226
16150
  function decodeSuccess(value) {
@@ -16268,14 +16192,14 @@ function defineClientOwnedBlockRuntime(runtime) {
16268
16192
  }
16269
16193
 
16270
16194
  // ../blocks/src/contracts/islands.ts
16271
- function isObjectRecord2(value) {
16195
+ function isObjectRecord(value) {
16272
16196
  return typeof value === "object" && value !== null;
16273
16197
  }
16274
16198
  function pickRecordKeys(source, keys) {
16275
16199
  return Object.fromEntries(keys.map((key) => [key, source[key]]));
16276
16200
  }
16277
16201
  function expectEncodedRecord(value, label) {
16278
- if (isObjectRecord2(value)) {
16202
+ if (isObjectRecord(value)) {
16279
16203
  return value;
16280
16204
  }
16281
16205
  throw new Error(`Expected ${label} codec to encode an object`);
@@ -16307,7 +16231,7 @@ function createInteractiveIslandCodec(options) {
16307
16231
  };
16308
16232
  },
16309
16233
  decode: (input) => {
16310
- if (!isObjectRecord2(input)) {
16234
+ if (!isObjectRecord(input)) {
16311
16235
  return decodeFailure([{ path: [], message: "Expected island props object" }]);
16312
16236
  }
16313
16237
  const metaResult = options.meta.decode(pickRecordKeys(input, options.metaKeys));
@@ -16319,7 +16243,7 @@ function createInteractiveIslandCodec(options) {
16319
16243
  });
16320
16244
  }
16321
16245
  const renderInput = input.render;
16322
- if (!isObjectRecord2(renderInput)) {
16246
+ if (!isObjectRecord(renderInput)) {
16323
16247
  renderIssues.push({
16324
16248
  path: ["render"],
16325
16249
  message: "Expected render object"
@@ -16385,75 +16309,75 @@ function groupFormFields(fields3) {
16385
16309
  }
16386
16310
 
16387
16311
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16388
- var formFieldSchema = z32.object({
16389
- id: z32.string(),
16390
- label: z32.string().optional(),
16391
- type: z32.string().optional(),
16392
- required: z32.boolean().optional(),
16393
- placeholder: z32.string().optional(),
16394
- helpText: z32.string().optional(),
16395
- layout: z32.object({
16396
- width: z32.enum(["full", "half"]).optional()
16312
+ var formFieldSchema = z31.object({
16313
+ id: z31.string(),
16314
+ label: z31.string().optional(),
16315
+ type: z31.string().optional(),
16316
+ required: z31.boolean().optional(),
16317
+ placeholder: z31.string().optional(),
16318
+ helpText: z31.string().optional(),
16319
+ layout: z31.object({
16320
+ width: z31.enum(["full", "half"]).optional()
16397
16321
  }).optional(),
16398
- rows: z32.number().optional(),
16399
- options: z32.array(z32.object({
16400
- value: z32.string(),
16401
- label: z32.string()
16322
+ rows: z31.number().optional(),
16323
+ options: z31.array(z31.object({
16324
+ value: z31.string(),
16325
+ label: z31.string()
16402
16326
  })).optional(),
16403
- multiple: z32.boolean().optional(),
16404
- minLength: z32.number().optional(),
16405
- maxLength: z32.number().optional(),
16406
- pattern: z32.string().optional(),
16407
- min: z32.number().optional(),
16408
- max: z32.number().optional()
16409
- });
16410
- var formRecordSchema = z32.object({
16411
- id: z32.string(),
16412
- schemaJson: z32.object({
16413
- fields: z32.array(formFieldSchema).optional()
16327
+ multiple: z31.boolean().optional(),
16328
+ minLength: z31.number().optional(),
16329
+ maxLength: z31.number().optional(),
16330
+ pattern: z31.string().optional(),
16331
+ min: z31.number().optional(),
16332
+ max: z31.number().optional()
16333
+ });
16334
+ var formRecordSchema = z31.object({
16335
+ id: z31.string(),
16336
+ schemaJson: z31.object({
16337
+ fields: z31.array(formFieldSchema).optional()
16414
16338
  }).optional()
16415
16339
  });
16416
- var formFieldGroupSchema = z32.discriminatedUnion("type", [
16417
- z32.object({
16418
- type: z32.literal("single"),
16419
- key: z32.string(),
16340
+ var formFieldGroupSchema = z31.discriminatedUnion("type", [
16341
+ z31.object({
16342
+ type: z31.literal("single"),
16343
+ key: z31.string(),
16420
16344
  field: formFieldSchema
16421
16345
  }),
16422
- z32.object({
16423
- type: z32.literal("row"),
16424
- key: z32.string(),
16425
- fields: z32.tuple([formFieldSchema, formFieldSchema])
16346
+ z31.object({
16347
+ type: z31.literal("row"),
16348
+ key: z31.string(),
16349
+ fields: z31.tuple([formFieldSchema, formFieldSchema])
16426
16350
  })
16427
16351
  ]);
16428
- var formSourceSchema = z32.object({
16352
+ var formSourceSchema = z31.object({
16429
16353
  value: formRecordSchema.optional(),
16430
- siteId: z32.string().optional(),
16431
- apiBaseUrl: z32.string().optional(),
16432
- submitLabel: z32.string().optional(),
16433
- successMessage: z32.string().nullable().optional(),
16434
- className: z32.string().optional(),
16435
- spamProtectionEnabled: z32.boolean().optional()
16436
- });
16437
- var formDisplaySchema = z32.object({
16438
- kind: z32.literal("form"),
16439
- state: z32.enum(["missing", "ready"]),
16440
- className: z32.string().nullable(),
16441
- formId: z32.string().nullable(),
16442
- submitLabel: z32.string(),
16443
- successMessage: z32.string().nullable(),
16354
+ siteId: z31.string().optional(),
16355
+ apiBaseUrl: z31.string().optional(),
16356
+ submitLabel: z31.string().optional(),
16357
+ successMessage: z31.string().nullable().optional(),
16358
+ className: z31.string().optional(),
16359
+ spamProtectionEnabled: z31.boolean().optional()
16360
+ });
16361
+ var formDisplaySchema = z31.object({
16362
+ kind: z31.literal("form"),
16363
+ state: z31.enum(["missing", "ready"]),
16364
+ className: z31.string().nullable(),
16365
+ formId: z31.string().nullable(),
16366
+ submitLabel: z31.string(),
16367
+ successMessage: z31.string().nullable(),
16444
16368
  form: formRecordSchema.nullable(),
16445
- groups: z32.array(formFieldGroupSchema)
16369
+ groups: z31.array(formFieldGroupSchema)
16446
16370
  });
16447
- var formHydrationSchema = z32.object({
16448
- spamProtectionEnabled: z32.boolean().optional()
16371
+ var formHydrationSchema = z31.object({
16372
+ spamProtectionEnabled: z31.boolean().optional()
16449
16373
  });
16450
- var formRenderSchema = z32.object({
16374
+ var formRenderSchema = z31.object({
16451
16375
  display: formDisplaySchema,
16452
16376
  hydration: formHydrationSchema
16453
16377
  });
16454
- var formIslandMetaCodec = createZodCodec(z32.object({
16455
- siteId: z32.string().optional(),
16456
- apiBaseUrl: z32.string().optional()
16378
+ var formIslandMetaCodec = createZodCodec(z31.object({
16379
+ siteId: z31.string().optional(),
16380
+ apiBaseUrl: z31.string().optional()
16457
16381
  }));
16458
16382
  var formIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
16459
16383
  function buildFormDisplay(source) {
@@ -16528,16 +16452,16 @@ var formManifest = createBlockManifest({
16528
16452
  tags: ["form", "contact", "input", "submit", "fields", "signup", "lead-capture"],
16529
16453
  icon: "FormInput"
16530
16454
  });
16531
- var formDataSchema = z33.object({
16532
- id: z33.string(),
16533
- siteId: z33.string(),
16534
- userId: z33.string(),
16535
- name: z33.string(),
16536
- slug: z33.string(),
16537
- schemaJson: z33.any(),
16538
- settingsJson: z33.any().optional(),
16539
- createdAt: z33.string(),
16540
- updatedAt: z33.string()
16455
+ var formDataSchema = z32.object({
16456
+ id: z32.string(),
16457
+ siteId: z32.string(),
16458
+ userId: z32.string(),
16459
+ name: z32.string(),
16460
+ slug: z32.string(),
16461
+ schemaJson: z32.any(),
16462
+ settingsJson: z32.any().optional(),
16463
+ createdAt: z32.string(),
16464
+ updatedAt: z32.string()
16541
16465
  });
16542
16466
  var formBlockDefinition = {
16543
16467
  manifest: formManifest,
@@ -16583,7 +16507,7 @@ var faqBlockDefinition = {
16583
16507
  };
16584
16508
 
16585
16509
  // ../blocks/src/system/transforms/registry/formatting.ts
16586
- import { z as z34 } from "zod";
16510
+ import { z as z33 } from "zod";
16587
16511
  var uppercaseTransform = {
16588
16512
  id: "string.uppercase",
16589
16513
  kind: "string",
@@ -16594,7 +16518,7 @@ var fallbackTransform = {
16594
16518
  id: "value.fallback",
16595
16519
  kind: "formatter",
16596
16520
  summary: "Provide fallback when value is null or undefined",
16597
- schema: z34.object({ fallback: z34.unknown() }),
16521
+ schema: z33.object({ fallback: z33.unknown() }),
16598
16522
  run: (value, options) => value === null || value === void 0 || value === "" ? options.fallback : value
16599
16523
  };
16600
16524
  var dateFormatShort = {
@@ -16641,8 +16565,8 @@ var jsonArrayTransform = {
16641
16565
  return "";
16642
16566
  }
16643
16567
  };
16644
- var marqueeLoopOptionsSchema = z34.object({
16645
- minItems: z34.number().int().min(1).default(10)
16568
+ var marqueeLoopOptionsSchema = z33.object({
16569
+ minItems: z33.number().int().min(1).default(10)
16646
16570
  });
16647
16571
  var marqueeLoopTransform = {
16648
16572
  id: "array.marqueeLoop",
@@ -16670,7 +16594,7 @@ var formattingTransforms = [
16670
16594
  ];
16671
16595
 
16672
16596
  // ../blocks/src/system/transforms/registry/ui.ts
16673
- import { z as z35 } from "zod";
16597
+ import { z as z34 } from "zod";
16674
16598
  var joinClasses3 = (parts) => parts.filter(
16675
16599
  (part) => typeof part === "string" && part.trim().length > 0
16676
16600
  ).join(" ").replace(/\s+/g, " ").trim();
@@ -16730,8 +16654,8 @@ function getNavStyleClasses(navStyle) {
16730
16654
  return baseClasses;
16731
16655
  }
16732
16656
  }
16733
- var headerNavClassOptionsSchema = z35.object({
16734
- base: z35.string().optional()
16657
+ var headerNavClassOptionsSchema = z34.object({
16658
+ base: z34.string().optional()
16735
16659
  });
16736
16660
  var headerNavLinkClassTransform = {
16737
16661
  id: "ui.headerNavLinkClass",
@@ -16814,8 +16738,8 @@ function resolveHeroContentMaxWidth(content) {
16814
16738
  return raw;
16815
16739
  return "default";
16816
16740
  }
16817
- var heroContentWrapperClassSchema = z35.object({
16818
- base: z35.string().optional()
16741
+ var heroContentWrapperClassSchema = z34.object({
16742
+ base: z34.string().optional()
16819
16743
  });
16820
16744
  var heroContentWrapperClassTransform = {
16821
16745
  id: "ui.heroContentWrapperClass",
@@ -16857,8 +16781,8 @@ var heroStackJustifyFromVerticalAlignmentTransform = {
16857
16781
  return vertical === "top" ? "start" : vertical === "bottom" ? "end" : "center";
16858
16782
  }
16859
16783
  };
16860
- var heroGridClassFromVerticalAlignmentSchema = z35.object({
16861
- base: z35.string()
16784
+ var heroGridClassFromVerticalAlignmentSchema = z34.object({
16785
+ base: z34.string()
16862
16786
  });
16863
16787
  var heroGridClassFromVerticalAlignmentTransform = {
16864
16788
  id: "ui.heroGridClassFromVerticalAlignment",
@@ -16872,10 +16796,10 @@ var heroGridClassFromVerticalAlignmentTransform = {
16872
16796
  return joinClasses3([options.base, itemsClass]);
16873
16797
  }
16874
16798
  };
16875
- var imageFragmentClassOptionsSchema = z35.object({
16876
- base: z35.string(),
16877
- whenAuto: z35.string(),
16878
- whenFixed: z35.string()
16799
+ var imageFragmentClassOptionsSchema = z34.object({
16800
+ base: z34.string(),
16801
+ whenAuto: z34.string(),
16802
+ whenFixed: z34.string()
16879
16803
  });
16880
16804
  var imageFragmentClassTransform = {
16881
16805
  id: "ui.imageFragmentClass",
@@ -16891,9 +16815,9 @@ var imageFragmentClassTransform = {
16891
16815
  ]);
16892
16816
  }
16893
16817
  };
16894
- var imageFragmentSizeOptionsSchema = z35.object({
16895
- max: z35.number().int().positive().default(1920),
16896
- quality: z35.number().int().min(1).max(100).default(85)
16818
+ var imageFragmentSizeOptionsSchema = z34.object({
16819
+ max: z34.number().int().positive().default(1920),
16820
+ quality: z34.number().int().min(1).max(100).default(85)
16897
16821
  });
16898
16822
  var imageFragmentSizeTransform = {
16899
16823
  id: "ui.imageFragmentSize",
@@ -16913,9 +16837,9 @@ var imageFragmentSizeTransform = {
16913
16837
  return { width, height, quality, resize: "cover" };
16914
16838
  }
16915
16839
  };
16916
- var conditionalClassOptionsSchema = z35.object({
16917
- whenTrue: z35.string(),
16918
- whenFalse: z35.string()
16840
+ var conditionalClassOptionsSchema = z34.object({
16841
+ whenTrue: z34.string(),
16842
+ whenFalse: z34.string()
16919
16843
  });
16920
16844
  var conditionalClassTransform = {
16921
16845
  id: "ui.conditionalClass",
@@ -16927,9 +16851,9 @@ var conditionalClassTransform = {
16927
16851
  return isTrue ? options.whenTrue : options.whenFalse;
16928
16852
  }
16929
16853
  };
16930
- var twoColumnContainerClassOptionsSchema = z35.object({
16931
- base: z35.string(),
16932
- reverseClass: z35.string()
16854
+ var twoColumnContainerClassOptionsSchema = z34.object({
16855
+ base: z34.string(),
16856
+ reverseClass: z34.string()
16933
16857
  });
16934
16858
  var twoColumnContainerClassTransform = {
16935
16859
  id: "ui.twoColumnContainerClass",
@@ -16944,8 +16868,8 @@ var twoColumnContainerClassTransform = {
16944
16868
  ]);
16945
16869
  }
16946
16870
  };
16947
- var twoColumnFlexBasisOptionsSchema = z35.object({
16948
- side: z35.enum(["image", "text"])
16871
+ var twoColumnFlexBasisOptionsSchema = z34.object({
16872
+ side: z34.enum(["image", "text"])
16949
16873
  });
16950
16874
  var twoColumnFlexBasisTransform = {
16951
16875
  id: "ui.twoColumnFlexBasis",
@@ -16959,8 +16883,8 @@ var twoColumnFlexBasisTransform = {
16959
16883
  return `${percent}%`;
16960
16884
  }
16961
16885
  };
16962
- var columnsDesktopSpanClassOptionsSchema = z35.object({
16963
- base: z35.string().optional()
16886
+ var columnsDesktopSpanClassOptionsSchema = z34.object({
16887
+ base: z34.string().optional()
16964
16888
  });
16965
16889
  var columnsDesktopSpanClassTransform = {
16966
16890
  id: "ui.columnsDesktopSpanClass",
@@ -17002,8 +16926,8 @@ var columnsColsAtTransform = {
17002
16926
  id: "ui.columnsColsAt",
17003
16927
  kind: "formatter",
17004
16928
  summary: "Resolve columns count for a specific breakpoint",
17005
- schema: z35.object({
17006
- breakpoint: z35.enum(["mobile", "md", "lg", "xl"])
16929
+ schema: z34.object({
16930
+ breakpoint: z34.enum(["mobile", "md", "lg", "xl"])
17007
16931
  }),
17008
16932
  run: (value, options) => {
17009
16933
  const content = asPartialObject(value) ?? {};
@@ -17127,7 +17051,7 @@ var uiTransforms = [
17127
17051
  ];
17128
17052
 
17129
17053
  // ../blocks/src/system/transforms/registry/layout.ts
17130
- import { z as z36 } from "zod";
17054
+ import { z as z35 } from "zod";
17131
17055
 
17132
17056
  // ../theme-core/src/palette/utils/colorConversion.ts
17133
17057
  var mod = (a, n) => (a % n + n) % n;
@@ -17198,10 +17122,10 @@ function featuresFromHex(hex) {
17198
17122
  var joinClasses4 = (parts) => parts.filter(
17199
17123
  (part) => typeof part === "string" && part.trim().length > 0
17200
17124
  ).join(" ").replace(/\s+/g, " ").trim();
17201
- var maxWidthClassSchema = z36.object({
17202
- base: z36.string().optional(),
17203
- container: z36.string().optional(),
17204
- full: z36.string().optional()
17125
+ var maxWidthClassSchema = z35.object({
17126
+ base: z35.string().optional(),
17127
+ container: z35.string().optional(),
17128
+ full: z35.string().optional()
17205
17129
  });
17206
17130
  var maxWidthClassTransform = {
17207
17131
  id: "layout.maxWidthClass",
@@ -17217,11 +17141,11 @@ var maxWidthClassTransform = {
17217
17141
  return joinClasses4([base, chosen]);
17218
17142
  }
17219
17143
  };
17220
- var headerRootClassSchema = z36.object({
17221
- base: z36.string().optional(),
17222
- sticky: z36.string().optional(),
17223
- stickyTransparent: z36.string().optional(),
17224
- invert: z36.string().optional()
17144
+ var headerRootClassSchema = z35.object({
17145
+ base: z35.string().optional(),
17146
+ sticky: z35.string().optional(),
17147
+ stickyTransparent: z35.string().optional(),
17148
+ invert: z35.string().optional()
17225
17149
  });
17226
17150
  function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "surface") {
17227
17151
  const backgroundToken = typeof backgroundColor === "string" && backgroundColor.trim().length > 0 ? backgroundColor : defaultToken;
@@ -17342,11 +17266,11 @@ var headerRootClassTransform = {
17342
17266
  return joinClasses4(classes);
17343
17267
  }
17344
17268
  };
17345
- var footerRootClassSchema = z36.object({
17346
- base: z36.string().optional(),
17347
- surface: z36.string().optional(),
17348
- tokenPrefix: z36.string().optional(),
17349
- transparent: z36.string().optional()
17269
+ var footerRootClassSchema = z35.object({
17270
+ base: z35.string().optional(),
17271
+ surface: z35.string().optional(),
17272
+ tokenPrefix: z35.string().optional(),
17273
+ transparent: z35.string().optional()
17350
17274
  });
17351
17275
  var footerRootClassTransform = {
17352
17276
  id: "layout.footerRootClass",
@@ -17450,8 +17374,8 @@ var footerAlignClassMap = {
17450
17374
  end: "rb-justify-end",
17451
17375
  "space-between": "rb-justify-between"
17452
17376
  };
17453
- var footerBottomBarClassSchema = z36.object({
17454
- base: z36.string().optional()
17377
+ var footerBottomBarClassSchema = z35.object({
17378
+ base: z35.string().optional()
17455
17379
  });
17456
17380
  var footerBottomBarClassTransform = {
17457
17381
  id: "layout.footerBottomBarClass",
@@ -17473,10 +17397,10 @@ var footerBottomBarClassTransform = {
17473
17397
  ]);
17474
17398
  }
17475
17399
  };
17476
- var footerBottomBarContainerClassSchema = z36.object({
17477
- base: z36.string().optional(),
17478
- fullBleed: z36.string().optional(),
17479
- contained: z36.string().optional()
17400
+ var footerBottomBarContainerClassSchema = z35.object({
17401
+ base: z35.string().optional(),
17402
+ fullBleed: z35.string().optional(),
17403
+ contained: z35.string().optional()
17480
17404
  });
17481
17405
  var footerBottomBarContainerClassTransform = {
17482
17406
  id: "layout.footerBottomBarContainerClass",
@@ -17561,8 +17485,8 @@ var footerSplitNavSingleClassTransform = {
17561
17485
  ]);
17562
17486
  }
17563
17487
  };
17564
- var footerLogoClassSchema = z36.object({
17565
- base: z36.string().optional()
17488
+ var footerLogoClassSchema = z35.object({
17489
+ base: z35.string().optional()
17566
17490
  });
17567
17491
  var footerLogoClassTransform = {
17568
17492
  id: "layout.footerLogoClass",
@@ -17584,8 +17508,8 @@ var footerLogoClassTransform = {
17584
17508
  ]);
17585
17509
  }
17586
17510
  };
17587
- var footerLogoMediaClassSchema = z36.object({
17588
- base: z36.string().optional()
17511
+ var footerLogoMediaClassSchema = z35.object({
17512
+ base: z35.string().optional()
17589
17513
  });
17590
17514
  var footerLogoMediaClassTransform = {
17591
17515
  id: "layout.footerLogoMediaClass",
@@ -17639,12 +17563,12 @@ var layoutTransforms = [
17639
17563
  ];
17640
17564
 
17641
17565
  // ../blocks/src/system/transforms/registry/media.ts
17642
- import { z as z37 } from "zod";
17643
- var mediaFromUrlOptionsSchema = z37.object({
17644
- width: z37.number().int().positive().optional(),
17645
- height: z37.number().int().positive().optional(),
17646
- quality: z37.number().int().min(1).max(100).optional(),
17647
- resize: z37.enum(["cover", "contain", "fill"]).optional()
17566
+ import { z as z36 } from "zod";
17567
+ var mediaFromUrlOptionsSchema = z36.object({
17568
+ width: z36.number().int().positive().optional(),
17569
+ height: z36.number().int().positive().optional(),
17570
+ quality: z36.number().int().min(1).max(100).optional(),
17571
+ resize: z36.enum(["cover", "contain", "fill"]).optional()
17648
17572
  });
17649
17573
  function maybeBuildSupabaseTransformUrl(inputUrl, options) {
17650
17574
  const width = options.width;
@@ -17692,10 +17616,20 @@ var mediaFromUrl = {
17692
17616
  var mediaTransforms = [mediaFromUrl];
17693
17617
 
17694
17618
  // ../blocks/src/system/transforms/registry/content.ts
17695
- import { z as z38 } from "zod";
17696
- var supportedRichTextTokenSchema = z38.enum(["year", "site_name"]);
17697
- var interpolateRichTextTokensOptionsSchema = z38.object({
17698
- tokens: z38.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17619
+ import { z as z37 } from "zod";
17620
+
17621
+ // ../blocks/src/lib/typeGuards.ts
17622
+ function isRecord2(value) {
17623
+ return typeof value === "object" && value !== null && !Array.isArray(value);
17624
+ }
17625
+ function isObjectRecord2(value) {
17626
+ return typeof value === "object" && value !== null;
17627
+ }
17628
+
17629
+ // ../blocks/src/system/transforms/registry/content.ts
17630
+ var supportedRichTextTokenSchema = z37.enum(["year", "site_name"]);
17631
+ var interpolateRichTextTokensOptionsSchema = z37.object({
17632
+ tokens: z37.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17699
17633
  });
17700
17634
  var richTextTokenPattern = /\{\{\s*([a-zA-Z0-9_]+)\s*\}\}/g;
17701
17635
  function getSiteName(context) {
@@ -19505,7 +19439,7 @@ var mediaTextBlockDefinition = {
19505
19439
  };
19506
19440
 
19507
19441
  // ../blocks/src/system/blocks/appointment-booking.tsx
19508
- import { z as z39 } from "zod";
19442
+ import { z as z38 } from "zod";
19509
19443
  var appointmentBookingManifest = createBlockManifest({
19510
19444
  id: "block.appointment-booking",
19511
19445
  version: "2.0.0",
@@ -19581,11 +19515,11 @@ var appointmentBookingManifest = createBlockManifest({
19581
19515
  })
19582
19516
  ]
19583
19517
  });
19584
- var availabilityDataSchema = z39.object({
19585
- slots: z39.array(z39.object({
19586
- startAt: z39.string(),
19587
- endAt: z39.string(),
19588
- resourceId: z39.string()
19518
+ var availabilityDataSchema = z38.object({
19519
+ slots: z38.array(z38.object({
19520
+ startAt: z38.string(),
19521
+ endAt: z38.string(),
19522
+ resourceId: z38.string()
19589
19523
  }))
19590
19524
  });
19591
19525
  var appointmentBookingBlockDefinition = {
@@ -19610,13 +19544,13 @@ var appointmentBookingBlockDefinition = {
19610
19544
  };
19611
19545
 
19612
19546
  // ../blocks/src/system/blocks/event-registration.ts
19613
- import { z as z47 } from "zod";
19547
+ import { z as z46 } from "zod";
19614
19548
 
19615
19549
  // ../blocks/src/system/blocks/events/shared/schemas.ts
19616
- import { z as z43 } from "zod";
19550
+ import { z as z42 } from "zod";
19617
19551
 
19618
19552
  // ../blocks/src/lib/media.ts
19619
- import z40 from "zod";
19553
+ import z39 from "zod";
19620
19554
  var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19621
19555
  "document",
19622
19556
  "spreadsheet",
@@ -19624,52 +19558,52 @@ var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19624
19558
  "audio",
19625
19559
  "video"
19626
19560
  ];
19627
- var hotspotSchema2 = z40.object({
19628
- x: z40.number().min(0).max(1),
19629
- y: z40.number().min(0).max(1),
19630
- radius: z40.number().optional()
19631
- });
19632
- var rotationSchema2 = z40.union([z40.literal(0), z40.literal(90), z40.literal(180), z40.literal(270)]);
19633
- var rectSchema2 = z40.tuple([z40.number(), z40.number(), z40.number(), z40.number()]);
19634
- var aspectCropSchema2 = z40.object({
19635
- aspect: z40.preprocess((value) => value == null ? void 0 : value, z40.string().optional()),
19636
- rect: z40.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19637
- hotspot: z40.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19638
- rotation: z40.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19639
- });
19640
- var transformSchema2 = z40.object({
19641
- aspectCrops: z40.preprocess((value) => {
19561
+ var hotspotSchema2 = z39.object({
19562
+ x: z39.number().min(0).max(1),
19563
+ y: z39.number().min(0).max(1),
19564
+ radius: z39.number().optional()
19565
+ });
19566
+ var rotationSchema2 = z39.union([z39.literal(0), z39.literal(90), z39.literal(180), z39.literal(270)]);
19567
+ var rectSchema2 = z39.tuple([z39.number(), z39.number(), z39.number(), z39.number()]);
19568
+ var aspectCropSchema2 = z39.object({
19569
+ aspect: z39.preprocess((value) => value == null ? void 0 : value, z39.string().optional()),
19570
+ rect: z39.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19571
+ hotspot: z39.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19572
+ rotation: z39.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19573
+ });
19574
+ var transformSchema2 = z39.object({
19575
+ aspectCrops: z39.preprocess((value) => {
19642
19576
  if (!value || typeof value !== "object" || Array.isArray(value)) {
19643
19577
  return void 0;
19644
19578
  }
19645
19579
  return value;
19646
- }, z40.record(z40.string(), aspectCropSchema2.catch({}))).optional(),
19580
+ }, z39.record(z39.string(), aspectCropSchema2.catch({}))).optional(),
19647
19581
  rect: rectSchema2.optional(),
19648
19582
  hotspot: hotspotSchema2.optional(),
19649
19583
  rotation: rotationSchema2.optional()
19650
19584
  });
19651
- var mediaBaseSchema = z40.object({
19652
- purpose: z40.string().optional(),
19653
- placeholder: z40.boolean().default(true).optional(),
19654
- assetId: z40.string().optional(),
19655
- identifier: z40.string().optional(),
19656
- src: z40.string().optional(),
19657
- alt: z40.string().optional(),
19658
- filename: z40.string().optional(),
19659
- mimeType: z40.string().optional(),
19660
- width: z40.number().optional(),
19661
- height: z40.number().optional(),
19662
- storageBucket: z40.string().optional(),
19663
- storagePath: z40.string().optional(),
19585
+ var mediaBaseSchema = z39.object({
19586
+ purpose: z39.string().optional(),
19587
+ placeholder: z39.boolean().default(true).optional(),
19588
+ assetId: z39.string().optional(),
19589
+ identifier: z39.string().optional(),
19590
+ src: z39.string().optional(),
19591
+ alt: z39.string().optional(),
19592
+ filename: z39.string().optional(),
19593
+ mimeType: z39.string().optional(),
19594
+ width: z39.number().optional(),
19595
+ height: z39.number().optional(),
19596
+ storageBucket: z39.string().optional(),
19597
+ storagePath: z39.string().optional(),
19664
19598
  transform: transformSchema2.optional()
19665
19599
  });
19666
- var imageMediaSchema = mediaBaseSchema.extend({ type: z40.literal("image") });
19667
- var videoMediaSchema = mediaBaseSchema.extend({ type: z40.literal("video") });
19668
- var audioMediaSchema = mediaBaseSchema.extend({ type: z40.literal("audio") });
19669
- var documentMediaSchema = mediaBaseSchema.extend({ type: z40.literal("document") });
19670
- var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z40.literal("spreadsheet") });
19671
- var archiveMediaSchema = mediaBaseSchema.extend({ type: z40.literal("archive") });
19672
- var mediaSchema2 = z40.discriminatedUnion("type", [
19600
+ var imageMediaSchema = mediaBaseSchema.extend({ type: z39.literal("image") });
19601
+ var videoMediaSchema = mediaBaseSchema.extend({ type: z39.literal("video") });
19602
+ var audioMediaSchema = mediaBaseSchema.extend({ type: z39.literal("audio") });
19603
+ var documentMediaSchema = mediaBaseSchema.extend({ type: z39.literal("document") });
19604
+ var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z39.literal("spreadsheet") });
19605
+ var archiveMediaSchema = mediaBaseSchema.extend({ type: z39.literal("archive") });
19606
+ var mediaSchema2 = z39.discriminatedUnion("type", [
19673
19607
  imageMediaSchema,
19674
19608
  videoMediaSchema,
19675
19609
  audioMediaSchema,
@@ -19679,252 +19613,252 @@ var mediaSchema2 = z40.discriminatedUnion("type", [
19679
19613
  ]);
19680
19614
 
19681
19615
  // ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
19682
- import { z as z41 } from "zod";
19683
- var bookingDepositRefundPolicySchema = z41.enum([
19616
+ import { z as z40 } from "zod";
19617
+ var bookingDepositRefundPolicySchema = z40.enum([
19684
19618
  "refundable",
19685
19619
  "non_refundable"
19686
19620
  ]);
19687
- var bookingInstalmentPlanSchema = z41.union([
19688
- z41.object({
19689
- kind: z41.literal("deposit_plus_one_remainder"),
19690
- depositAmountCents: z41.number().int().min(0),
19621
+ var bookingInstalmentPlanSchema = z40.union([
19622
+ z40.object({
19623
+ kind: z40.literal("deposit_plus_one_remainder"),
19624
+ depositAmountCents: z40.number().int().min(0),
19691
19625
  depositRefundability: bookingDepositRefundPolicySchema,
19692
- remainderDueCount: z41.number().int().positive(),
19693
- intervalUnit: z41.enum(["day", "week", "month"])
19626
+ remainderDueCount: z40.number().int().positive(),
19627
+ intervalUnit: z40.enum(["day", "week", "month"])
19694
19628
  }),
19695
- z41.object({
19696
- kind: z41.literal("deposit_plus_scheduled_instalments"),
19697
- depositAmountCents: z41.number().int().min(0),
19629
+ z40.object({
19630
+ kind: z40.literal("deposit_plus_scheduled_instalments"),
19631
+ depositAmountCents: z40.number().int().min(0),
19698
19632
  depositRefundability: bookingDepositRefundPolicySchema,
19699
- instalmentCount: z41.number().int().positive(),
19700
- intervalCount: z41.number().int().positive(),
19701
- intervalUnit: z41.enum(["day", "week", "month"])
19633
+ instalmentCount: z40.number().int().positive(),
19634
+ intervalCount: z40.number().int().positive(),
19635
+ intervalUnit: z40.enum(["day", "week", "month"])
19702
19636
  }),
19703
- z41.object({
19704
- kind: z41.literal("equal_scheduled_instalments"),
19705
- instalmentCount: z41.number().int().positive(),
19706
- intervalCount: z41.number().int().positive(),
19707
- intervalUnit: z41.enum(["day", "week", "month"])
19637
+ z40.object({
19638
+ kind: z40.literal("equal_scheduled_instalments"),
19639
+ instalmentCount: z40.number().int().positive(),
19640
+ intervalCount: z40.number().int().positive(),
19641
+ intervalUnit: z40.enum(["day", "week", "month"])
19708
19642
  })
19709
19643
  ]);
19710
- var bookingFlexibleBalanceDueDateRuleSchema = z41.union([
19711
- z41.object({
19712
- kind: z41.literal("relative_to_start_date"),
19713
- daysBeforeStart: z41.number().int().positive()
19644
+ var bookingFlexibleBalanceDueDateRuleSchema = z40.union([
19645
+ z40.object({
19646
+ kind: z40.literal("relative_to_start_date"),
19647
+ daysBeforeStart: z40.number().int().positive()
19714
19648
  }),
19715
- z41.object({
19716
- kind: z41.literal("fixed_calendar_date"),
19717
- dueAt: z41.string().datetime()
19649
+ z40.object({
19650
+ kind: z40.literal("fixed_calendar_date"),
19651
+ dueAt: z40.string().datetime()
19718
19652
  })
19719
19653
  ]);
19720
- var bookingFlexibleBalanceConfigSchema = z41.object({
19721
- upfrontAmountCents: z41.number().int().min(0),
19654
+ var bookingFlexibleBalanceConfigSchema = z40.object({
19655
+ upfrontAmountCents: z40.number().int().min(0),
19722
19656
  dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
19723
19657
  depositRefundability: bookingDepositRefundPolicySchema
19724
19658
  });
19725
- var blockBookingPaymentCollectionOptionSchema = z41.union([
19726
- z41.object({
19727
- kind: z41.literal("upfront")
19659
+ var blockBookingPaymentCollectionOptionSchema = z40.union([
19660
+ z40.object({
19661
+ kind: z40.literal("upfront")
19728
19662
  }),
19729
- z41.object({
19730
- kind: z41.literal("deferred_manual")
19663
+ z40.object({
19664
+ kind: z40.literal("deferred_manual")
19731
19665
  }),
19732
- z41.object({
19733
- kind: z41.literal("instalment_plan"),
19666
+ z40.object({
19667
+ kind: z40.literal("instalment_plan"),
19734
19668
  plan: bookingInstalmentPlanSchema
19735
19669
  }),
19736
- z41.object({
19737
- kind: z41.literal("flexible_balance"),
19670
+ z40.object({
19671
+ kind: z40.literal("flexible_balance"),
19738
19672
  config: bookingFlexibleBalanceConfigSchema
19739
19673
  })
19740
19674
  ]);
19741
- var blockBookingPaymentTermsSchema = z41.object({
19742
- allowedOptions: z41.array(blockBookingPaymentCollectionOptionSchema).min(1)
19675
+ var blockBookingPaymentTermsSchema = z40.object({
19676
+ allowedOptions: z40.array(blockBookingPaymentCollectionOptionSchema).min(1)
19743
19677
  });
19744
19678
 
19745
19679
  // ../blocks/src/system/blocks/courses/shared/schemas.ts
19746
- import { z as z42 } from "zod";
19747
- var courseVenueSchema = z42.object({
19748
- id: z42.string(),
19749
- name: z42.string(),
19750
- address: z42.string().nullable()
19680
+ import { z as z41 } from "zod";
19681
+ var courseVenueSchema = z41.object({
19682
+ id: z41.string(),
19683
+ name: z41.string(),
19684
+ address: z41.string().nullable()
19685
+ });
19686
+ var courseSessionSchema = z41.object({
19687
+ id: z41.string(),
19688
+ startsAt: z41.string(),
19689
+ endsAt: z41.string(),
19690
+ timeZone: z41.string(),
19691
+ capacityOverride: z41.number().nullable().optional(),
19692
+ overrides: z41.record(z41.string(), z41.unknown()).nullable().optional()
19693
+ });
19694
+ var courseTeamMemberSummarySchema = z41.object({
19695
+ id: z41.string(),
19696
+ name: z41.string(),
19697
+ roleLabel: z41.string().nullable(),
19698
+ summary: z41.string().nullable(),
19699
+ profilePath: z41.string().nullable()
19700
+ });
19701
+ var coursePricingOptionSchema = z41.object({
19702
+ id: z41.string(),
19703
+ name: z41.string(),
19704
+ description: z41.string().nullable(),
19705
+ priceAmount: z41.number(),
19706
+ isActive: z41.boolean(),
19707
+ sortOrder: z41.number(),
19708
+ capacityLimit: z41.number().nullable(),
19709
+ saleStartsAt: z41.string().nullable(),
19710
+ saleEndsAt: z41.string().nullable(),
19711
+ attendanceScope: z41.enum(["in_person", "online", "both"]).nullable().optional()
19712
+ });
19713
+ var coursePricingSchema = z41.object({
19714
+ bookingRequirement: z41.enum(["none", "required"]),
19715
+ pricingStrategy: z41.enum(["free", "single", "tiered"]),
19716
+ currency: z41.string(),
19717
+ singlePriceAmount: z41.number().nullable(),
19718
+ paymentTerms: blockBookingPaymentTermsSchema,
19719
+ options: z41.array(coursePricingOptionSchema)
19720
+ });
19721
+ var publicCourseSchema = z41.object({
19722
+ id: z41.string(),
19723
+ title: z41.string(),
19724
+ slug: z41.string(),
19725
+ description: z41.unknown().nullable(),
19726
+ teamMembers: z41.array(courseTeamMemberSummarySchema).optional(),
19727
+ enrollmentOpen: z41.boolean(),
19728
+ pricing: coursePricingSchema.optional(),
19729
+ priceCents: z41.number().nullable(),
19730
+ currency: z41.string(),
19731
+ paymentTerms: blockBookingPaymentTermsSchema,
19732
+ enrollmentCapacity: z41.number().nullable(),
19733
+ acceptsMemberships: z41.boolean(),
19734
+ status: z41.enum(["active", "draft", "cancelled"]),
19735
+ sessionsCount: z41.number(),
19736
+ enrolledCount: z41.number(),
19737
+ availableSpots: z41.number().nullable(),
19738
+ sessions: z41.array(courseSessionSchema),
19739
+ venue: courseVenueSchema.nullable(),
19740
+ contentEntryId: z41.string().nullable()
19751
19741
  });
19752
- var courseSessionSchema = z42.object({
19742
+ var publicCoursesArraySchema = z41.array(publicCourseSchema);
19743
+
19744
+ // ../blocks/src/system/blocks/events/shared/schemas.ts
19745
+ var eventPresetSchema = z42.enum(["event", "class", "workshop", "retreat", "performance"]);
19746
+ var eventScheduleScopeSchema = z42.enum(["recurring", "oneOff"]);
19747
+ var eventVenueSchema = z42.object({
19753
19748
  id: z42.string(),
19754
- startsAt: z42.string(),
19755
- endsAt: z42.string(),
19756
- timeZone: z42.string(),
19757
- capacityOverride: z42.number().nullable().optional(),
19758
- overrides: z42.record(z42.string(), z42.unknown()).nullable().optional()
19749
+ name: z42.string(),
19750
+ address: z42.string().nullable(),
19751
+ location: z42.object({
19752
+ lat: z42.number(),
19753
+ lng: z42.number()
19754
+ }).nullable()
19759
19755
  });
19760
- var courseTeamMemberSummarySchema = z42.object({
19756
+ var eventCategorySchema = z42.object({
19761
19757
  id: z42.string(),
19762
19758
  name: z42.string(),
19763
- roleLabel: z42.string().nullable(),
19764
- summary: z42.string().nullable(),
19765
- profilePath: z42.string().nullable()
19759
+ color: z42.string().nullable()
19766
19760
  });
19767
- var coursePricingOptionSchema = z42.object({
19761
+ var pricingTypeSchema = z42.enum(["free", "paid", "pass_only", "membership_only"]);
19762
+ var accessRestrictionSchema = z42.enum(["none", "category"]);
19763
+ var eventPricingModeSchema = z42.enum(["single", "ticket_types"]);
19764
+ var publicEventAttendanceModeSchema = z42.enum(["in_person", "online"]);
19765
+ var publicEventAttendanceModeAvailabilitySchema = z42.object({
19766
+ mode: publicEventAttendanceModeSchema,
19767
+ capacity: z42.number().nullable(),
19768
+ registeredCount: z42.number(),
19769
+ availableSpots: z42.number().nullable(),
19770
+ waitlistEnabled: z42.boolean()
19771
+ });
19772
+ var publicEventTicketTypeAvailabilitySchema = z42.union([
19773
+ z42.object({
19774
+ kind: z42.literal("available"),
19775
+ remainingCapacity: z42.number().nullable()
19776
+ }),
19777
+ z42.object({
19778
+ kind: z42.literal("unavailable"),
19779
+ reason: z42.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
19780
+ remainingCapacity: z42.number().nullable()
19781
+ })
19782
+ ]);
19783
+ var publicEventTicketTypeSchema = z42.object({
19768
19784
  id: z42.string(),
19785
+ siteId: z42.string(),
19786
+ eventSeriesId: z42.string(),
19769
19787
  name: z42.string(),
19770
19788
  description: z42.string().nullable(),
19771
19789
  priceAmount: z42.number(),
19772
19790
  isActive: z42.boolean(),
19773
19791
  sortOrder: z42.number(),
19792
+ capacityMode: z42.enum(["limited", "unlimited"]),
19774
19793
  capacityLimit: z42.number().nullable(),
19794
+ attendanceScope: z42.enum(["in_person", "online", "both"]).optional(),
19775
19795
  saleStartsAt: z42.string().nullable(),
19776
19796
  saleEndsAt: z42.string().nullable(),
19777
- attendanceScope: z42.enum(["in_person", "online", "both"]).nullable().optional()
19778
- });
19779
- var coursePricingSchema = z42.object({
19780
- bookingRequirement: z42.enum(["none", "required"]),
19781
- pricingStrategy: z42.enum(["free", "single", "tiered"]),
19782
- currency: z42.string(),
19783
- singlePriceAmount: z42.number().nullable(),
19784
- paymentTerms: blockBookingPaymentTermsSchema,
19785
- options: z42.array(coursePricingOptionSchema)
19786
- });
19787
- var publicCourseSchema = z42.object({
19788
- id: z42.string(),
19789
- title: z42.string(),
19790
- slug: z42.string(),
19791
- description: z42.unknown().nullable(),
19792
- teamMembers: z42.array(courseTeamMemberSummarySchema).optional(),
19793
- enrollmentOpen: z42.boolean(),
19794
- pricing: coursePricingSchema.optional(),
19795
- priceCents: z42.number().nullable(),
19796
- currency: z42.string(),
19797
- paymentTerms: blockBookingPaymentTermsSchema,
19798
- enrollmentCapacity: z42.number().nullable(),
19799
- acceptsMemberships: z42.boolean(),
19800
- status: z42.enum(["active", "draft", "cancelled"]),
19801
- sessionsCount: z42.number(),
19802
- enrolledCount: z42.number(),
19803
- availableSpots: z42.number().nullable(),
19804
- sessions: z42.array(courseSessionSchema),
19805
- venue: courseVenueSchema.nullable(),
19806
- contentEntryId: z42.string().nullable()
19807
- });
19808
- var publicCoursesArraySchema = z42.array(publicCourseSchema);
19809
-
19810
- // ../blocks/src/system/blocks/events/shared/schemas.ts
19811
- var eventPresetSchema = z43.enum(["event", "class", "workshop", "retreat", "performance"]);
19812
- var eventScheduleScopeSchema = z43.enum(["recurring", "oneOff"]);
19813
- var eventVenueSchema = z43.object({
19814
- id: z43.string(),
19815
- name: z43.string(),
19816
- address: z43.string().nullable(),
19817
- location: z43.object({
19818
- lat: z43.number(),
19819
- lng: z43.number()
19820
- }).nullable()
19821
- });
19822
- var eventCategorySchema = z43.object({
19823
- id: z43.string(),
19824
- name: z43.string(),
19825
- color: z43.string().nullable()
19826
- });
19827
- var pricingTypeSchema = z43.enum(["free", "paid", "pass_only", "membership_only"]);
19828
- var accessRestrictionSchema = z43.enum(["none", "category"]);
19829
- var eventPricingModeSchema = z43.enum(["single", "ticket_types"]);
19830
- var publicEventAttendanceModeSchema = z43.enum(["in_person", "online"]);
19831
- var publicEventAttendanceModeAvailabilitySchema = z43.object({
19832
- mode: publicEventAttendanceModeSchema,
19833
- capacity: z43.number().nullable(),
19834
- registeredCount: z43.number(),
19835
- availableSpots: z43.number().nullable(),
19836
- waitlistEnabled: z43.boolean()
19837
- });
19838
- var publicEventTicketTypeAvailabilitySchema = z43.union([
19839
- z43.object({
19840
- kind: z43.literal("available"),
19841
- remainingCapacity: z43.number().nullable()
19842
- }),
19843
- z43.object({
19844
- kind: z43.literal("unavailable"),
19845
- reason: z43.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
19846
- remainingCapacity: z43.number().nullable()
19847
- })
19848
- ]);
19849
- var publicEventTicketTypeSchema = z43.object({
19850
- id: z43.string(),
19851
- siteId: z43.string(),
19852
- eventSeriesId: z43.string(),
19853
- name: z43.string(),
19854
- description: z43.string().nullable(),
19855
- priceAmount: z43.number(),
19856
- isActive: z43.boolean(),
19857
- sortOrder: z43.number(),
19858
- capacityMode: z43.enum(["limited", "unlimited"]),
19859
- capacityLimit: z43.number().nullable(),
19860
- attendanceScope: z43.enum(["in_person", "online", "both"]).optional(),
19861
- saleStartsAt: z43.string().nullable(),
19862
- saleEndsAt: z43.string().nullable(),
19863
19797
  availability: publicEventTicketTypeAvailabilitySchema,
19864
- createdAt: z43.string(),
19865
- updatedAt: z43.string()
19798
+ createdAt: z42.string(),
19799
+ updatedAt: z42.string()
19866
19800
  });
19867
- var publicTeamMemberSummarySchema = z43.object({
19868
- id: z43.string(),
19869
- name: z43.string(),
19870
- roleLabel: z43.string().nullable(),
19871
- summary: z43.string().nullable(),
19872
- profilePath: z43.string().nullable()
19801
+ var publicTeamMemberSummarySchema = z42.object({
19802
+ id: z42.string(),
19803
+ name: z42.string(),
19804
+ roleLabel: z42.string().nullable(),
19805
+ summary: z42.string().nullable(),
19806
+ profilePath: z42.string().nullable()
19873
19807
  });
19874
- var publicEventSchema = z43.object({
19875
- kind: z43.enum(["event", "course_session"]).optional(),
19808
+ var publicEventSchema = z42.object({
19809
+ kind: z42.enum(["event", "course_session"]).optional(),
19876
19810
  eventPreset: eventPresetSchema.optional(),
19877
19811
  scheduleScope: eventScheduleScopeSchema.optional(),
19878
- id: z43.string(),
19879
- occurrenceId: z43.string(),
19880
- seriesId: z43.string(),
19881
- title: z43.string(),
19882
- description: z43.string().nullable(),
19883
- presentation: z43.object({
19884
- cardTitleOverride: z43.string().nullable().optional(),
19885
- summary: z43.string().nullable().optional(),
19812
+ id: z42.string(),
19813
+ occurrenceId: z42.string(),
19814
+ seriesId: z42.string(),
19815
+ title: z42.string(),
19816
+ description: z42.string().nullable(),
19817
+ presentation: z42.object({
19818
+ cardTitleOverride: z42.string().nullable().optional(),
19819
+ summary: z42.string().nullable().optional(),
19886
19820
  image: mediaSchema2.nullable().optional(),
19887
- tags: z43.array(z43.string()).optional(),
19888
- ctaLabel: z43.string().nullable().optional(),
19889
- badges: z43.array(z43.string()).optional()
19821
+ tags: z42.array(z42.string()).optional(),
19822
+ ctaLabel: z42.string().nullable().optional(),
19823
+ badges: z42.array(z42.string()).optional()
19890
19824
  }).optional(),
19891
- slug: z43.string(),
19892
- path: z43.string(),
19893
- requiresRegistration: z43.boolean(),
19894
- deliveryMode: z43.enum(["in_person", "online", "hybrid"]),
19895
- attendanceModes: z43.array(publicEventAttendanceModeAvailabilitySchema),
19896
- startsAt: z43.string(),
19897
- endsAt: z43.string(),
19898
- capacity: z43.number().nullable(),
19899
- registeredCount: z43.number(),
19900
- availableSpots: z43.number().nullable(),
19901
- waitlistEnabled: z43.boolean(),
19825
+ slug: z42.string(),
19826
+ path: z42.string(),
19827
+ requiresRegistration: z42.boolean(),
19828
+ deliveryMode: z42.enum(["in_person", "online", "hybrid"]),
19829
+ attendanceModes: z42.array(publicEventAttendanceModeAvailabilitySchema),
19830
+ startsAt: z42.string(),
19831
+ endsAt: z42.string(),
19832
+ capacity: z42.number().nullable(),
19833
+ registeredCount: z42.number(),
19834
+ availableSpots: z42.number().nullable(),
19835
+ waitlistEnabled: z42.boolean(),
19902
19836
  venue: eventVenueSchema.nullable(),
19903
19837
  eventCategory: eventCategorySchema.nullable(),
19904
- teamMembers: z43.array(publicTeamMemberSummarySchema).optional(),
19905
- status: z43.enum(["active", "draft", "archived"]).optional(),
19906
- timeZone: z43.string(),
19838
+ teamMembers: z42.array(publicTeamMemberSummarySchema).optional(),
19839
+ status: z42.enum(["active", "draft", "archived"]).optional(),
19840
+ timeZone: z42.string(),
19907
19841
  // Pricing & access fields
19908
19842
  pricingType: pricingTypeSchema,
19909
- price: z43.number().nullable(),
19910
- currency: z43.string(),
19843
+ price: z42.number().nullable(),
19844
+ currency: z42.string(),
19911
19845
  paymentTerms: blockBookingPaymentTermsSchema,
19912
19846
  pricingMode: eventPricingModeSchema.optional(),
19913
- ticketTypes: z43.array(publicEventTicketTypeSchema).optional(),
19847
+ ticketTypes: z42.array(publicEventTicketTypeSchema).optional(),
19914
19848
  accessRestriction: accessRestrictionSchema,
19915
- allowedCategoryIds: z43.array(z43.string()),
19916
- requireGuestDetails: z43.boolean().optional(),
19917
- acceptsPasses: z43.boolean().optional(),
19918
- acceptsMemberships: z43.boolean().optional(),
19919
- course: z43.object({
19920
- id: z43.string(),
19849
+ allowedCategoryIds: z42.array(z42.string()),
19850
+ requireGuestDetails: z42.boolean().optional(),
19851
+ acceptsPasses: z42.boolean().optional(),
19852
+ acceptsMemberships: z42.boolean().optional(),
19853
+ course: z42.object({
19854
+ id: z42.string(),
19921
19855
  pricing: coursePricingSchema.optional(),
19922
- priceCents: z43.number().nullable(),
19923
- currency: z43.string(),
19924
- enrollmentOpen: z43.boolean()
19856
+ priceCents: z42.number().nullable(),
19857
+ currency: z42.string(),
19858
+ enrollmentOpen: z42.boolean()
19925
19859
  }).nullable().optional()
19926
19860
  });
19927
- var publicEventsArraySchema = z43.array(publicEventSchema);
19861
+ var publicEventsArraySchema = z42.array(publicEventSchema);
19928
19862
 
19929
19863
  // ../blocks/src/system/blocks/events/shared/fields.ts
19930
19864
  var cardStylingFields = [
@@ -20128,83 +20062,83 @@ function normalizeEventStaffMemberId(value) {
20128
20062
  }
20129
20063
 
20130
20064
  // ../blocks/src/system/blocks/event-registration.shared.ts
20131
- import { z as z44 } from "zod";
20132
- var occurrenceContextSchema = z44.object({
20133
- id: z44.string(),
20134
- seriesId: z44.string(),
20135
- startsAt: z44.string(),
20136
- endsAt: z44.string(),
20137
- timeZone: z44.string(),
20138
- capacityOverride: z44.number().nullable().optional(),
20139
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
20065
+ import { z as z43 } from "zod";
20066
+ var occurrenceContextSchema = z43.object({
20067
+ id: z43.string(),
20068
+ seriesId: z43.string(),
20069
+ startsAt: z43.string(),
20070
+ endsAt: z43.string(),
20071
+ timeZone: z43.string(),
20072
+ capacityOverride: z43.number().nullable().optional(),
20073
+ overrides: z43.record(z43.string(), z43.unknown()).nullable().optional()
20140
20074
  }).nullable();
20141
20075
 
20142
20076
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20143
- import { z as z46 } from "zod";
20077
+ import { z as z45 } from "zod";
20144
20078
 
20145
20079
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
20146
- import { z as z45 } from "zod";
20147
- var previewStageSchema = z45.enum(["preview", "published"]);
20148
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
20149
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
20150
- var eventLayoutSchema = z45.enum(["grid", "stack", "compact"]);
20151
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
20152
- var weekStartSchema = z45.enum(["sunday", "monday"]);
20153
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
20154
- var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
20080
+ import { z as z44 } from "zod";
20081
+ var previewStageSchema = z44.enum(["preview", "published"]);
20082
+ var registrationButtonVariantSchema = z44.enum(["primary", "secondary", "outline"]);
20083
+ var eventButtonVariantSchema = z44.enum(["primary", "secondary", "outline", "link"]);
20084
+ var eventLayoutSchema = z44.enum(["grid", "stack", "compact"]);
20085
+ var columnOptionSchema = z44.enum(["2", "3", "4"]);
20086
+ var weekStartSchema = z44.enum(["sunday", "monday"]);
20087
+ var filterAutoShowSchema = z44.enum(["auto", "always", "never"]);
20088
+ var calendarTabViewsSchema = z44.enum(["both", "month", "week"]);
20155
20089
 
20156
20090
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20157
- var contentEntrySchema = z46.object({
20158
- id: z46.string(),
20159
- slug: z46.string(),
20160
- contentTypeSlug: z46.string()
20161
- });
20162
- var eventRegistrationSourceSchema = z46.object({
20163
- siteId: z46.string().optional(),
20164
- apiBaseUrl: z46.string().optional(),
20165
- portalToken: z46.string().nullable().optional(),
20091
+ var contentEntrySchema = z45.object({
20092
+ id: z45.string(),
20093
+ slug: z45.string(),
20094
+ contentTypeSlug: z45.string()
20095
+ });
20096
+ var eventRegistrationSourceSchema = z45.object({
20097
+ siteId: z45.string().optional(),
20098
+ apiBaseUrl: z45.string().optional(),
20099
+ portalToken: z45.string().nullable().optional(),
20166
20100
  occurrenceContext: occurrenceContextSchema.optional(),
20167
20101
  contentEntry: contentEntrySchema.nullable().optional(),
20168
- events: z46.array(publicEventSchema).nullable().optional(),
20169
- className: z46.string().nullable().optional(),
20170
- buttonText: z46.string().nullable().optional(),
20171
- maxTickets: z46.string().nullable().optional(),
20172
- showVenue: z46.boolean().optional(),
20173
- showCapacity: z46.boolean().optional(),
20174
- successMessage: z46.string().optional(),
20175
- waitlistMessage: z46.string().optional(),
20102
+ events: z45.array(publicEventSchema).nullable().optional(),
20103
+ className: z45.string().nullable().optional(),
20104
+ buttonText: z45.string().nullable().optional(),
20105
+ maxTickets: z45.string().nullable().optional(),
20106
+ showVenue: z45.boolean().optional(),
20107
+ showCapacity: z45.boolean().optional(),
20108
+ successMessage: z45.string().optional(),
20109
+ waitlistMessage: z45.string().optional(),
20176
20110
  buttonVariant: registrationButtonVariantSchema.optional(),
20177
- spamProtectionEnabled: z46.boolean().optional(),
20111
+ spamProtectionEnabled: z45.boolean().optional(),
20178
20112
  stage: previewStageSchema.optional(),
20179
- supportEmail: z46.string().optional()
20113
+ supportEmail: z45.string().optional()
20180
20114
  });
20181
- var eventRegistrationDisplaySchema = z46.object({
20182
- kind: z46.literal("event-registration"),
20183
- state: z46.literal("shell"),
20184
- className: z46.string().nullable(),
20185
- summaryButtonText: z46.string()
20115
+ var eventRegistrationDisplaySchema = z45.object({
20116
+ kind: z45.literal("event-registration"),
20117
+ state: z45.literal("shell"),
20118
+ className: z45.string().nullable(),
20119
+ summaryButtonText: z45.string()
20186
20120
  });
20187
- var eventRegistrationHydrationSchema = z46.object({
20121
+ var eventRegistrationHydrationSchema = z45.object({
20188
20122
  occurrenceContext: occurrenceContextSchema.optional(),
20189
20123
  contentEntry: contentEntrySchema.nullable().optional(),
20190
- events: z46.array(publicEventSchema).nullable().optional(),
20191
- maxTickets: z46.string().optional(),
20192
- showVenue: z46.boolean().optional(),
20193
- showCapacity: z46.boolean().optional(),
20194
- successMessage: z46.string().optional(),
20195
- waitlistMessage: z46.string().optional(),
20124
+ events: z45.array(publicEventSchema).nullable().optional(),
20125
+ maxTickets: z45.string().optional(),
20126
+ showVenue: z45.boolean().optional(),
20127
+ showCapacity: z45.boolean().optional(),
20128
+ successMessage: z45.string().optional(),
20129
+ waitlistMessage: z45.string().optional(),
20196
20130
  buttonVariant: registrationButtonVariantSchema.optional(),
20197
- spamProtectionEnabled: z46.boolean().optional(),
20198
- supportEmail: z46.string().optional()
20131
+ spamProtectionEnabled: z45.boolean().optional(),
20132
+ supportEmail: z45.string().optional()
20199
20133
  });
20200
- var eventRegistrationRenderSchema = z46.object({
20134
+ var eventRegistrationRenderSchema = z45.object({
20201
20135
  display: eventRegistrationDisplaySchema,
20202
20136
  hydration: eventRegistrationHydrationSchema
20203
20137
  });
20204
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
20205
- siteId: z46.string().optional(),
20206
- apiBaseUrl: z46.string().optional(),
20207
- portalToken: z46.string().nullable().optional(),
20138
+ var eventRegistrationIslandMetaCodec = createZodCodec(z45.object({
20139
+ siteId: z45.string().optional(),
20140
+ apiBaseUrl: z45.string().optional(),
20141
+ portalToken: z45.string().nullable().optional(),
20208
20142
  stage: previewStageSchema.optional()
20209
20143
  }));
20210
20144
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20421,7 +20355,7 @@ var eventRegistrationBlockDefinition = {
20421
20355
  manifest: eventRegistrationManifest,
20422
20356
  runtime: eventRegistrationBlockRuntime,
20423
20357
  dataSchemas: {
20424
- events: z47.array(publicEventSchema).optional(),
20358
+ events: z46.array(publicEventSchema).optional(),
20425
20359
  occurrenceContext: occurrenceContextSchema.optional()
20426
20360
  },
20427
20361
  dataLoaders: {
@@ -20444,72 +20378,72 @@ var eventRegistrationBlockDefinition = {
20444
20378
  };
20445
20379
 
20446
20380
  // ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
20447
- import { z as z48 } from "zod";
20448
- var contentEntrySchema2 = z48.object({
20449
- id: z48.string(),
20450
- slug: z48.string(),
20451
- contentTypeSlug: z48.string()
20452
- });
20453
- var courseEntrySubrouteContextSchema = z48.union([
20454
- z48.object({
20455
- kind: z48.literal("course-run"),
20456
- run: z48.object({
20457
- courseId: z48.string(),
20458
- seriesId: z48.string(),
20459
- runSlug: z48.string()
20381
+ import { z as z47 } from "zod";
20382
+ var contentEntrySchema2 = z47.object({
20383
+ id: z47.string(),
20384
+ slug: z47.string(),
20385
+ contentTypeSlug: z47.string()
20386
+ });
20387
+ var courseEntrySubrouteContextSchema = z47.union([
20388
+ z47.object({
20389
+ kind: z47.literal("course-run"),
20390
+ run: z47.object({
20391
+ courseId: z47.string(),
20392
+ seriesId: z47.string(),
20393
+ runSlug: z47.string()
20460
20394
  })
20461
20395
  }),
20462
- z48.object({
20463
- kind: z48.literal("event-occurrence"),
20396
+ z47.object({
20397
+ kind: z47.literal("event-occurrence"),
20464
20398
  occurrence: occurrenceContextSchema
20465
20399
  })
20466
20400
  ]);
20467
- var courseRegistrationSourceSchema = z48.object({
20468
- siteId: z48.string().optional(),
20469
- apiBaseUrl: z48.string().optional(),
20470
- portalToken: z48.string().nullable().optional(),
20401
+ var courseRegistrationSourceSchema = z47.object({
20402
+ siteId: z47.string().optional(),
20403
+ apiBaseUrl: z47.string().optional(),
20404
+ portalToken: z47.string().nullable().optional(),
20471
20405
  contentEntry: contentEntrySchema2.nullable().optional(),
20472
20406
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20473
- courses: z48.array(publicCourseSchema).nullable().optional(),
20474
- className: z48.string().nullable().optional(),
20475
- showSessions: z48.boolean().optional(),
20476
- showPrice: z48.boolean().optional(),
20477
- showCapacity: z48.boolean().optional(),
20478
- showVenue: z48.boolean().optional(),
20479
- successMessage: z48.string().optional(),
20480
- waitlistMessage: z48.string().optional(),
20481
- membershipMessage: z48.string().optional(),
20482
- buttonText: z48.string().nullable().optional(),
20407
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20408
+ className: z47.string().nullable().optional(),
20409
+ showSessions: z47.boolean().optional(),
20410
+ showPrice: z47.boolean().optional(),
20411
+ showCapacity: z47.boolean().optional(),
20412
+ showVenue: z47.boolean().optional(),
20413
+ successMessage: z47.string().optional(),
20414
+ waitlistMessage: z47.string().optional(),
20415
+ membershipMessage: z47.string().optional(),
20416
+ buttonText: z47.string().nullable().optional(),
20483
20417
  buttonVariant: registrationButtonVariantSchema.optional(),
20484
20418
  stage: previewStageSchema.optional()
20485
20419
  });
20486
- var courseRegistrationDisplaySchema = z48.object({
20487
- kind: z48.literal("course-registration"),
20488
- state: z48.literal("shell"),
20489
- className: z48.string().nullable(),
20490
- summaryButtonText: z48.string()
20420
+ var courseRegistrationDisplaySchema = z47.object({
20421
+ kind: z47.literal("course-registration"),
20422
+ state: z47.literal("shell"),
20423
+ className: z47.string().nullable(),
20424
+ summaryButtonText: z47.string()
20491
20425
  });
20492
- var courseRegistrationHydrationSchema = z48.object({
20426
+ var courseRegistrationHydrationSchema = z47.object({
20493
20427
  contentEntry: contentEntrySchema2.nullable().optional(),
20494
20428
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20495
- courses: z48.array(publicCourseSchema).nullable().optional(),
20496
- showSessions: z48.boolean().optional(),
20497
- showPrice: z48.boolean().optional(),
20498
- showCapacity: z48.boolean().optional(),
20499
- showVenue: z48.boolean().optional(),
20500
- successMessage: z48.string().optional(),
20501
- waitlistMessage: z48.string().optional(),
20502
- membershipMessage: z48.string().optional(),
20429
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20430
+ showSessions: z47.boolean().optional(),
20431
+ showPrice: z47.boolean().optional(),
20432
+ showCapacity: z47.boolean().optional(),
20433
+ showVenue: z47.boolean().optional(),
20434
+ successMessage: z47.string().optional(),
20435
+ waitlistMessage: z47.string().optional(),
20436
+ membershipMessage: z47.string().optional(),
20503
20437
  buttonVariant: registrationButtonVariantSchema.optional()
20504
20438
  });
20505
- var courseRegistrationRenderSchema = z48.object({
20439
+ var courseRegistrationRenderSchema = z47.object({
20506
20440
  display: courseRegistrationDisplaySchema,
20507
20441
  hydration: courseRegistrationHydrationSchema
20508
20442
  });
20509
- var courseRegistrationIslandMetaCodec = createZodCodec(z48.object({
20510
- siteId: z48.string().optional(),
20511
- apiBaseUrl: z48.string().optional(),
20512
- portalToken: z48.string().nullable().optional(),
20443
+ var courseRegistrationIslandMetaCodec = createZodCodec(z47.object({
20444
+ siteId: z47.string().optional(),
20445
+ apiBaseUrl: z47.string().optional(),
20446
+ portalToken: z47.string().nullable().optional(),
20513
20447
  stage: previewStageSchema.optional()
20514
20448
  }));
20515
20449
  var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20769,32 +20703,32 @@ var courseRegistrationBlockDefinition = {
20769
20703
  };
20770
20704
 
20771
20705
  // ../blocks/src/system/blocks/event-details.ts
20772
- import { z as z50 } from "zod";
20706
+ import { z as z49 } from "zod";
20773
20707
 
20774
20708
  // ../blocks/src/system/blocks/shop.shared.ts
20775
- import { z as z49 } from "zod";
20776
- var publicPassProductSchema = z49.object({
20777
- id: z49.string(),
20778
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
20779
- name: z49.string(),
20780
- description: z49.string().nullable(),
20781
- price: z49.number(),
20782
- currency: z49.string(),
20783
- creditsTotal: z49.number(),
20784
- pricePerCredit: z49.number(),
20785
- validDays: z49.number().nullable(),
20786
- eligibleCategoryIds: z49.array(z49.string()),
20787
- eligibleCategoryNames: z49.array(z49.string())
20788
- });
20789
- var publicMembershipProductSchema = z49.object({
20790
- id: z49.string(),
20791
- name: z49.string(),
20792
- description: z49.string().nullable(),
20793
- price: z49.number(),
20794
- currency: z49.string(),
20795
- billingInterval: z49.enum(["month", "year"]),
20796
- eligibleCategoryIds: z49.array(z49.string()),
20797
- eligibleCategoryNames: z49.array(z49.string())
20709
+ import { z as z48 } from "zod";
20710
+ var publicPassProductSchema = z48.object({
20711
+ id: z48.string(),
20712
+ productUseCase: z48.enum(["event_pass", "appointment_package"]).default("event_pass"),
20713
+ name: z48.string(),
20714
+ description: z48.string().nullable(),
20715
+ price: z48.number(),
20716
+ currency: z48.string(),
20717
+ creditsTotal: z48.number(),
20718
+ pricePerCredit: z48.number(),
20719
+ validDays: z48.number().nullable(),
20720
+ eligibleCategoryIds: z48.array(z48.string()),
20721
+ eligibleCategoryNames: z48.array(z48.string())
20722
+ });
20723
+ var publicMembershipProductSchema = z48.object({
20724
+ id: z48.string(),
20725
+ name: z48.string(),
20726
+ description: z48.string().nullable(),
20727
+ price: z48.number(),
20728
+ currency: z48.string(),
20729
+ billingInterval: z48.enum(["month", "year"]),
20730
+ eligibleCategoryIds: z48.array(z48.string()),
20731
+ eligibleCategoryNames: z48.array(z48.string())
20798
20732
  });
20799
20733
 
20800
20734
  // ../blocks/src/system/blocks/event-details.ts
@@ -20926,22 +20860,22 @@ var eventDetailsManifest = createBlockManifest({
20926
20860
  })
20927
20861
  ]
20928
20862
  });
20929
- var occurrenceContextSchema2 = z50.object({
20930
- id: z50.string(),
20931
- seriesId: z50.string(),
20932
- startsAt: z50.string(),
20933
- endsAt: z50.string(),
20934
- timeZone: z50.string(),
20935
- capacityOverride: z50.number().nullable().optional(),
20936
- overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
20863
+ var occurrenceContextSchema2 = z49.object({
20864
+ id: z49.string(),
20865
+ seriesId: z49.string(),
20866
+ startsAt: z49.string(),
20867
+ endsAt: z49.string(),
20868
+ timeZone: z49.string(),
20869
+ capacityOverride: z49.number().nullable().optional(),
20870
+ overrides: z49.record(z49.string(), z49.unknown()).nullable().optional()
20937
20871
  }).nullable();
20938
20872
  var eventDetailsBlockDefinition = {
20939
20873
  manifest: eventDetailsManifest,
20940
20874
  dataSchemas: {
20941
- eventDetailsData: z50.object({
20875
+ eventDetailsData: z49.object({
20942
20876
  events: publicEventsArraySchema,
20943
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
20944
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) })
20877
+ sitePasses: z49.object({ passes: z49.array(publicPassProductSchema) }),
20878
+ siteMemberships: z49.object({ memberships: z49.array(publicMembershipProductSchema) })
20945
20879
  }).optional(),
20946
20880
  occurrenceContext: occurrenceContextSchema2.optional()
20947
20881
  },
@@ -21260,7 +21194,7 @@ var eventSpotlightBlockDefinition = {
21260
21194
  };
21261
21195
 
21262
21196
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21263
- import { z as z51 } from "zod";
21197
+ import { z as z50 } from "zod";
21264
21198
 
21265
21199
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
21266
21200
  var COLUMN_CLASSES = {
@@ -21367,87 +21301,87 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
21367
21301
  }
21368
21302
 
21369
21303
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21370
- var cardVariantSchema2 = z51.enum(["default", "variant1", "variant2"]);
21371
- var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
21372
- var eventBlockKindSchema = z51.enum(eventBlockKindValues);
21373
- var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
21374
- var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
21375
- var eventListingSourceSchema = z51.object({
21376
- events: z51.array(publicEventSchema).nullable().optional(),
21377
- siteId: z51.string(),
21378
- apiBaseUrl: z51.string().optional(),
21304
+ var cardVariantSchema2 = z50.enum(["default", "variant1", "variant2"]);
21305
+ var cardOrientationSchema = z50.enum(["vertical", "horizontal"]);
21306
+ var eventBlockKindSchema = z50.enum(eventBlockKindValues);
21307
+ var eventSurfaceScopeSchema = z50.enum(eventSurfaceScopeValues);
21308
+ var eventScheduleScopeSchema2 = z50.enum(eventScheduleScopeValues);
21309
+ var eventListingSourceSchema = z50.object({
21310
+ events: z50.array(publicEventSchema).nullable().optional(),
21311
+ siteId: z50.string(),
21312
+ apiBaseUrl: z50.string().optional(),
21379
21313
  stage: previewStageSchema.optional(),
21380
21314
  layout: eventLayoutSchema.optional(),
21381
21315
  columns: columnOptionSchema.optional(),
21382
- eventsPerPage: z51.string().optional(),
21383
- paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
21384
- seeAllUrl: z51.string().optional(),
21385
- loadMoreText: z51.string().optional(),
21316
+ eventsPerPage: z50.string().optional(),
21317
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]).optional(),
21318
+ seeAllUrl: z50.string().optional(),
21319
+ loadMoreText: z50.string().optional(),
21386
21320
  cardVariant: cardVariantSchema2.optional(),
21387
21321
  buttonVariant: eventButtonVariantSchema.optional(),
21388
- buttonText: z51.string().optional(),
21389
- showVenue: z51.boolean().optional(),
21390
- showMap: z51.boolean().optional(),
21391
- showCapacity: z51.boolean().optional(),
21392
- emptyMessage: z51.string().optional(),
21393
- className: z51.string().optional(),
21394
- showFilters: z51.boolean().nullable().optional(),
21322
+ buttonText: z50.string().optional(),
21323
+ showVenue: z50.boolean().optional(),
21324
+ showMap: z50.boolean().optional(),
21325
+ showCapacity: z50.boolean().optional(),
21326
+ emptyMessage: z50.string().optional(),
21327
+ className: z50.string().optional(),
21328
+ showFilters: z50.boolean().nullable().optional(),
21395
21329
  showCategoryFilter: filterAutoShowSchema.optional(),
21396
- showVenueFilter: z51.boolean().nullable().optional(),
21397
- showStaffFilter: z51.boolean().nullable().optional(),
21330
+ showVenueFilter: z50.boolean().nullable().optional(),
21331
+ showStaffFilter: z50.boolean().nullable().optional(),
21398
21332
  eventKind: eventBlockKindSchema.nullable().optional(),
21399
21333
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
21400
- filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21334
+ filterEventPresets: z50.union([z50.string(), z50.array(z50.string())]).nullable().optional(),
21401
21335
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
21402
- filterCategoryIds: z51.string().nullable().optional(),
21403
- filterStaffMemberId: z51.string().nullable().optional(),
21404
- filterVenueId: z51.string().nullable().optional()
21336
+ filterCategoryIds: z50.string().nullable().optional(),
21337
+ filterStaffMemberId: z50.string().nullable().optional(),
21338
+ filterVenueId: z50.string().nullable().optional()
21405
21339
  });
21406
- var eventListingDisplaySchema = z51.object({
21407
- kind: z51.literal("event-listing"),
21408
- state: z51.enum(["loading", "empty", "ready"]),
21340
+ var eventListingDisplaySchema = z50.object({
21341
+ kind: z50.literal("event-listing"),
21342
+ state: z50.enum(["loading", "empty", "ready"]),
21409
21343
  listLayout: eventLayoutSchema,
21410
- className: z51.string().nullable(),
21411
- emptyMessage: z51.string(),
21412
- loadingMessage: z51.string(),
21413
- containerClass: z51.string(),
21344
+ className: z50.string().nullable(),
21345
+ emptyMessage: z50.string(),
21346
+ loadingMessage: z50.string(),
21347
+ containerClass: z50.string(),
21414
21348
  cardVariant: cardVariantSchema2,
21415
21349
  buttonVariant: eventButtonVariantSchema,
21416
- buttonText: z51.string(),
21417
- showVenue: z51.boolean(),
21418
- showMap: z51.boolean(),
21419
- showCapacity: z51.boolean(),
21350
+ buttonText: z50.string(),
21351
+ showVenue: z50.boolean(),
21352
+ showMap: z50.boolean(),
21353
+ showCapacity: z50.boolean(),
21420
21354
  orientation: cardOrientationSchema,
21421
- events: z51.array(publicEventSchema)
21355
+ events: z50.array(publicEventSchema)
21422
21356
  });
21423
- var eventListingHydrationSchema = z51.object({
21424
- siteId: z51.string(),
21357
+ var eventListingHydrationSchema = z50.object({
21358
+ siteId: z50.string(),
21425
21359
  stage: previewStageSchema.optional(),
21426
- eventsPerPage: z51.string(),
21427
- paginationMode: z51.enum(["loadMore", "seeAllLink"]),
21428
- seeAllUrl: z51.string().optional(),
21429
- loadMoreText: z51.string(),
21430
- showFilters: z51.boolean(),
21360
+ eventsPerPage: z50.string(),
21361
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]),
21362
+ seeAllUrl: z50.string().optional(),
21363
+ loadMoreText: z50.string(),
21364
+ showFilters: z50.boolean(),
21431
21365
  showCategoryFilter: filterAutoShowSchema,
21432
- showVenueFilter: z51.boolean(),
21433
- showStaffFilter: z51.boolean(),
21366
+ showVenueFilter: z50.boolean(),
21367
+ showStaffFilter: z50.boolean(),
21434
21368
  eventKind: eventBlockKindSchema,
21435
21369
  eventSurface: eventSurfaceScopeSchema,
21436
- filterEventPresets: z51.string().nullable(),
21370
+ filterEventPresets: z50.string().nullable(),
21437
21371
  scheduleScope: eventScheduleScopeSchema2,
21438
- filterCategoryIds: z51.string().nullable().optional(),
21439
- filterStaffMemberId: z51.string().nullable().optional(),
21440
- filterVenueId: z51.string().nullable().optional(),
21441
- fetchInitialEventsOnMount: z51.boolean()
21372
+ filterCategoryIds: z50.string().nullable().optional(),
21373
+ filterStaffMemberId: z50.string().nullable().optional(),
21374
+ filterVenueId: z50.string().nullable().optional(),
21375
+ fetchInitialEventsOnMount: z50.boolean()
21442
21376
  });
21443
- var eventListingRenderSchema = z51.object({
21377
+ var eventListingRenderSchema = z50.object({
21444
21378
  display: eventListingDisplaySchema,
21445
21379
  hydration: eventListingHydrationSchema
21446
21380
  });
21447
21381
  var eventListingIslandMetaCodec = createZodCodec(
21448
- z51.object({
21449
- siteId: z51.string(),
21450
- apiBaseUrl: z51.string().optional(),
21382
+ z50.object({
21383
+ siteId: z50.string(),
21384
+ apiBaseUrl: z50.string().optional(),
21451
21385
  stage: previewStageSchema.optional()
21452
21386
  })
21453
21387
  );
@@ -21766,93 +21700,93 @@ var eventListingBlockDefinition = {
21766
21700
  };
21767
21701
 
21768
21702
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
21769
- import { z as z52 } from "zod";
21770
- var displayModeSchema = z52.enum(["combined", "month", "week", "list", "timetable"]);
21771
- var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
21772
- var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
21773
- var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
21774
- var eventCalendarSourceSchema = z52.object(
21703
+ import { z as z51 } from "zod";
21704
+ var displayModeSchema = z51.enum(["combined", "month", "week", "list", "timetable"]);
21705
+ var eventBlockKindSchema2 = z51.enum(eventBlockKindValues);
21706
+ var eventSurfaceScopeSchema2 = z51.enum(eventSurfaceScopeValues);
21707
+ var eventScheduleScopeSchema3 = z51.enum(eventScheduleScopeValues);
21708
+ var eventCalendarSourceSchema = z51.object(
21775
21709
  {
21776
- events: z52.array(publicEventSchema).nullable().optional(),
21777
- siteId: z52.string(),
21778
- apiBaseUrl: z52.string().optional(),
21710
+ events: z51.array(publicEventSchema).nullable().optional(),
21711
+ siteId: z51.string(),
21712
+ apiBaseUrl: z51.string().optional(),
21779
21713
  stage: previewStageSchema.optional(),
21780
21714
  displayMode: displayModeSchema.nullable().optional(),
21781
21715
  listLayout: eventLayoutSchema.optional(),
21782
21716
  listColumns: columnOptionSchema.optional(),
21783
21717
  layout: eventLayoutSchema.optional(),
21784
21718
  columns: columnOptionSchema.optional(),
21785
- eventsPerPage: z52.string().optional(),
21786
- compactEventsPerPage: z52.string().optional(),
21787
- loadMoreText: z52.string().optional(),
21719
+ eventsPerPage: z51.string().optional(),
21720
+ compactEventsPerPage: z51.string().optional(),
21721
+ loadMoreText: z51.string().optional(),
21788
21722
  startOfWeek: weekStartSchema.optional(),
21789
21723
  calendarTabViews: calendarTabViewsSchema.optional(),
21790
- showFilters: z52.boolean().nullable().optional(),
21724
+ showFilters: z51.boolean().nullable().optional(),
21791
21725
  showCategoryFilter: filterAutoShowSchema.optional(),
21792
- showVenueFilter: z52.boolean().nullable().optional(),
21793
- showStaffFilter: z52.boolean().nullable().optional(),
21726
+ showVenueFilter: z51.boolean().nullable().optional(),
21727
+ showStaffFilter: z51.boolean().nullable().optional(),
21794
21728
  kind: eventBlockKindSchema2.nullable().optional(),
21795
21729
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
21796
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21730
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21797
21731
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
21798
- filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21799
- filterStaffMemberId: z52.string().nullable().optional(),
21800
- filterVenueId: z52.string().nullable().optional(),
21732
+ filterCategoryIds: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21733
+ filterStaffMemberId: z51.string().nullable().optional(),
21734
+ filterVenueId: z51.string().nullable().optional(),
21801
21735
  buttonVariant: eventButtonVariantSchema.optional(),
21802
- buttonText: z52.string().optional(),
21803
- showVenue: z52.boolean().nullable().optional(),
21804
- showMap: z52.boolean().nullable().optional(),
21805
- showCapacity: z52.boolean().nullable().optional(),
21806
- emptyMessage: z52.string().optional(),
21807
- className: z52.string().optional()
21736
+ buttonText: z51.string().optional(),
21737
+ showVenue: z51.boolean().nullable().optional(),
21738
+ showMap: z51.boolean().nullable().optional(),
21739
+ showCapacity: z51.boolean().nullable().optional(),
21740
+ emptyMessage: z51.string().optional(),
21741
+ className: z51.string().optional()
21808
21742
  }
21809
21743
  );
21810
- var eventCalendarDisplaySchema = z52.object({
21811
- kind: z52.literal("event-calendar"),
21744
+ var eventCalendarDisplaySchema = z51.object({
21745
+ kind: z51.literal("event-calendar"),
21812
21746
  displayMode: displayModeSchema,
21813
- className: z52.string().nullable(),
21814
- events: z52.array(publicEventSchema),
21747
+ className: z51.string().nullable(),
21748
+ events: z51.array(publicEventSchema),
21815
21749
  listLayout: eventLayoutSchema,
21816
21750
  listColumns: columnOptionSchema,
21817
- eventsPerPage: z52.string(),
21818
- loadMoreText: z52.string(),
21751
+ eventsPerPage: z51.string(),
21752
+ loadMoreText: z51.string(),
21819
21753
  startOfWeek: weekStartSchema,
21820
21754
  calendarTabViews: calendarTabViewsSchema,
21821
- showFilters: z52.boolean(),
21755
+ showFilters: z51.boolean(),
21822
21756
  showCategoryFilter: filterAutoShowSchema,
21823
- showVenueFilter: z52.boolean(),
21824
- showStaffFilter: z52.boolean(),
21757
+ showVenueFilter: z51.boolean(),
21758
+ showStaffFilter: z51.boolean(),
21825
21759
  eventKind: eventBlockKindSchema2,
21826
21760
  eventSurface: eventSurfaceScopeSchema2,
21827
- filterEventPresets: z52.string().nullable(),
21761
+ filterEventPresets: z51.string().nullable(),
21828
21762
  scheduleScope: eventScheduleScopeSchema3,
21829
- filterCategoryIds: z52.string().nullable(),
21830
- filterStaffMemberId: z52.string().nullable(),
21831
- filterVenueId: z52.string().nullable(),
21763
+ filterCategoryIds: z51.string().nullable(),
21764
+ filterStaffMemberId: z51.string().nullable(),
21765
+ filterVenueId: z51.string().nullable(),
21832
21766
  buttonVariant: eventButtonVariantSchema,
21833
- buttonText: z52.string(),
21834
- showVenue: z52.boolean(),
21835
- showMap: z52.boolean(),
21836
- showCapacity: z52.boolean(),
21837
- emptyMessage: z52.string()
21838
- });
21839
- var eventCalendarHydrationSchema = z52.object({
21840
- siteId: z52.string(),
21767
+ buttonText: z51.string(),
21768
+ showVenue: z51.boolean(),
21769
+ showMap: z51.boolean(),
21770
+ showCapacity: z51.boolean(),
21771
+ emptyMessage: z51.string()
21772
+ });
21773
+ var eventCalendarHydrationSchema = z51.object({
21774
+ siteId: z51.string(),
21841
21775
  stage: previewStageSchema.optional(),
21842
- prefetchedEvents: z52.boolean(),
21776
+ prefetchedEvents: z51.boolean(),
21843
21777
  eventKind: eventBlockKindSchema2,
21844
21778
  eventSurface: eventSurfaceScopeSchema2,
21845
- filterEventPresets: z52.string().nullable(),
21779
+ filterEventPresets: z51.string().nullable(),
21846
21780
  scheduleScope: eventScheduleScopeSchema3
21847
21781
  });
21848
- var eventCalendarRenderSchema = z52.object({
21782
+ var eventCalendarRenderSchema = z51.object({
21849
21783
  display: eventCalendarDisplaySchema,
21850
21784
  hydration: eventCalendarHydrationSchema
21851
21785
  });
21852
21786
  var eventCalendarIslandMetaCodec = createZodCodec(
21853
- z52.object({
21854
- siteId: z52.string(),
21855
- apiBaseUrl: z52.string().optional(),
21787
+ z51.object({
21788
+ siteId: z51.string(),
21789
+ apiBaseUrl: z51.string().optional(),
21856
21790
  stage: previewStageSchema.optional()
21857
21791
  })
21858
21792
  );
@@ -22446,7 +22380,7 @@ var eventCalendarBlockDefinition = {
22446
22380
  };
22447
22381
 
22448
22382
  // ../blocks/src/system/blocks/embed.ts
22449
- import { z as z53 } from "zod";
22383
+ import { z as z52 } from "zod";
22450
22384
  var embedFields = [
22451
22385
  // Section heading
22452
22386
  parseFieldDefinition({
@@ -22677,18 +22611,18 @@ var embedManifest = createBlockManifest({
22677
22611
  spacing: "lg"
22678
22612
  }
22679
22613
  });
22680
- var embedEntrySchema = z53.object({
22681
- id: z53.string(),
22682
- identifier: z53.string(),
22683
- title: z53.string(),
22684
- slug: z53.string().nullable().optional(),
22685
- content: z53.record(z53.string(), z53.unknown()).optional(),
22686
- publishedAt: z53.string().nullable().optional()
22614
+ var embedEntrySchema = z52.object({
22615
+ id: z52.string(),
22616
+ identifier: z52.string(),
22617
+ title: z52.string(),
22618
+ slug: z52.string().nullable().optional(),
22619
+ content: z52.record(z52.string(), z52.unknown()).optional(),
22620
+ publishedAt: z52.string().nullable().optional()
22687
22621
  });
22688
22622
  var embedBlockDefinition = {
22689
22623
  manifest: embedManifest,
22690
22624
  dataSchemas: {
22691
- entries: z53.array(embedEntrySchema).optional()
22625
+ entries: z52.array(embedEntrySchema).optional()
22692
22626
  },
22693
22627
  dataLoaders: {
22694
22628
  entries: {
@@ -23863,54 +23797,54 @@ var fileDownloadBlockDefinition = {
23863
23797
  };
23864
23798
 
23865
23799
  // ../blocks/src/system/blocks/shop.ts
23866
- import { z as z57 } from "zod";
23800
+ import { z as z56 } from "zod";
23867
23801
 
23868
23802
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
23869
- import { z as z56 } from "zod";
23803
+ import { z as z55 } from "zod";
23870
23804
 
23871
23805
  // ../blocks/src/system/blocks/products/shared.ts
23872
- import { z as z54 } from "zod";
23873
- var publicProductVariantSchema = z54.object({
23874
- id: z54.string(),
23875
- title: z54.string(),
23876
- sku: z54.string().nullable(),
23877
- priceCents: z54.number(),
23878
- stockQuantity: z54.number().nullable(),
23879
- soldOut: z54.boolean()
23880
- });
23881
- var publicProductSchema = z54.object({
23882
- id: z54.string(),
23883
- contentEntryId: z54.string().nullable(),
23884
- title: z54.string(),
23885
- slug: z54.string(),
23886
- path: z54.string().nullable(),
23887
- status: z54.enum(["draft", "active"]),
23888
- priceCents: z54.number(),
23889
- currency: z54.string(),
23890
- productType: z54.enum(["physical", "digital"]),
23891
- requiresShipping: z54.boolean(),
23892
- hasVariants: z54.boolean(),
23893
- trackInventory: z54.boolean(),
23894
- soldOut: z54.boolean(),
23895
- category: z54.object({
23896
- id: z54.string(),
23897
- name: z54.string(),
23898
- slug: z54.string()
23806
+ import { z as z53 } from "zod";
23807
+ var publicProductVariantSchema = z53.object({
23808
+ id: z53.string(),
23809
+ title: z53.string(),
23810
+ sku: z53.string().nullable(),
23811
+ priceCents: z53.number(),
23812
+ stockQuantity: z53.number().nullable(),
23813
+ soldOut: z53.boolean()
23814
+ });
23815
+ var publicProductSchema = z53.object({
23816
+ id: z53.string(),
23817
+ contentEntryId: z53.string().nullable(),
23818
+ title: z53.string(),
23819
+ slug: z53.string(),
23820
+ path: z53.string().nullable(),
23821
+ status: z53.enum(["draft", "active"]),
23822
+ priceCents: z53.number(),
23823
+ currency: z53.string(),
23824
+ productType: z53.enum(["physical", "digital"]),
23825
+ requiresShipping: z53.boolean(),
23826
+ hasVariants: z53.boolean(),
23827
+ trackInventory: z53.boolean(),
23828
+ soldOut: z53.boolean(),
23829
+ category: z53.object({
23830
+ id: z53.string(),
23831
+ name: z53.string(),
23832
+ slug: z53.string()
23899
23833
  }).nullable(),
23900
- summary: z54.string().nullable(),
23901
- badges: z54.array(z54.string()),
23902
- ctaLabel: z54.string().nullable(),
23903
- body: z54.unknown().nullable(),
23904
- gallery: z54.array(
23905
- z54.object({
23906
- url: z54.string(),
23907
- alt: z54.string().nullable()
23834
+ summary: z53.string().nullable(),
23835
+ badges: z53.array(z53.string()),
23836
+ ctaLabel: z53.string().nullable(),
23837
+ body: z53.unknown().nullable(),
23838
+ gallery: z53.array(
23839
+ z53.object({
23840
+ url: z53.string(),
23841
+ alt: z53.string().nullable()
23908
23842
  })
23909
23843
  ),
23910
- variants: z54.array(publicProductVariantSchema)
23844
+ variants: z53.array(publicProductVariantSchema)
23911
23845
  });
23912
- var publicProductsResponseSchema = z54.object({
23913
- products: z54.array(publicProductSchema)
23846
+ var publicProductsResponseSchema = z53.object({
23847
+ products: z53.array(publicProductSchema)
23914
23848
  });
23915
23849
 
23916
23850
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -23974,26 +23908,26 @@ function deriveCreditProductLabels(products, options = {}) {
23974
23908
  }
23975
23909
 
23976
23910
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
23977
- import { z as z55 } from "zod";
23978
- var storedProductCartItemSchema = z55.object({
23979
- kind: z55.literal("product"),
23980
- productId: z55.string().min(1),
23981
- variantId: z55.string().min(1).optional().nullable(),
23982
- title: z55.string().min(1),
23983
- variantTitle: z55.string().optional().nullable(),
23984
- quantity: z55.number().finite(),
23985
- unitPriceCents: z55.number().finite(),
23986
- currency: z55.string().min(1),
23987
- imageUrl: z55.string().optional().nullable(),
23988
- soldOut: z55.boolean().optional()
23989
- });
23990
- var storedPassCartItemSchema = z55.object({
23991
- kind: z55.literal("pass"),
23992
- passId: z55.string().min(1),
23993
- title: z55.string().min(1),
23994
- quantity: z55.number().finite().optional(),
23995
- unitPriceCents: z55.number().finite(),
23996
- currency: z55.string().min(1)
23911
+ import { z as z54 } from "zod";
23912
+ var storedProductCartItemSchema = z54.object({
23913
+ kind: z54.literal("product"),
23914
+ productId: z54.string().min(1),
23915
+ variantId: z54.string().min(1).optional().nullable(),
23916
+ title: z54.string().min(1),
23917
+ variantTitle: z54.string().optional().nullable(),
23918
+ quantity: z54.number().finite(),
23919
+ unitPriceCents: z54.number().finite(),
23920
+ currency: z54.string().min(1),
23921
+ imageUrl: z54.string().optional().nullable(),
23922
+ soldOut: z54.boolean().optional()
23923
+ });
23924
+ var storedPassCartItemSchema = z54.object({
23925
+ kind: z54.literal("pass"),
23926
+ passId: z54.string().min(1),
23927
+ title: z54.string().min(1),
23928
+ quantity: z54.number().finite().optional(),
23929
+ unitPriceCents: z54.number().finite(),
23930
+ currency: z54.string().min(1)
23997
23931
  });
23998
23932
  function deriveCommerceCheckoutState(state) {
23999
23933
  if (state.items.length === 0) {
@@ -24232,219 +24166,219 @@ function formatValidity(days) {
24232
24166
  }
24233
24167
 
24234
24168
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
24235
- var shopModeSchema = z56.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24236
- var contentEntrySchema3 = z56.object({
24237
- id: z56.string().nullable().optional(),
24238
- slug: z56.string().nullable().optional()
24169
+ var shopModeSchema = z55.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24170
+ var contentEntrySchema3 = z55.object({
24171
+ id: z55.string().nullable().optional(),
24172
+ slug: z55.string().nullable().optional()
24239
24173
  }).nullable();
24240
- var shopSourceSchema = z56.object({
24241
- className: z56.string().nullable().optional(),
24174
+ var shopSourceSchema = z55.object({
24175
+ className: z55.string().nullable().optional(),
24242
24176
  mode: shopModeSchema.optional(),
24243
- heading: z56.string().nullable().optional(),
24244
- productSlug: z56.string().nullable().optional(),
24245
- showPasses: z56.boolean().optional(),
24246
- showMemberships: z56.boolean().optional(),
24247
- layout: z56.enum(["grid", "list"]).optional(),
24248
- columns: z56.string().optional(),
24249
- showDescriptions: z56.boolean().optional(),
24250
- showSummary: z56.boolean().optional(),
24251
- showBody: z56.boolean().optional(),
24252
- showBadges: z56.boolean().optional(),
24253
- showPrices: z56.boolean().optional(),
24254
- showValidityPeriod: z56.boolean().optional(),
24255
- showPricePerCredit: z56.boolean().nullable().optional(),
24256
- passesHeading: z56.string().optional(),
24257
- membershipsHeading: z56.string().optional(),
24258
- buyButtonText: z56.string().optional(),
24259
- addButtonText: z56.string().optional(),
24260
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"]).optional(),
24261
- subscribeButtonText: z56.string().optional(),
24262
- emptyStateText: z56.string().optional(),
24263
- checkoutButtonText: z56.string().optional(),
24264
- clearButtonText: z56.string().optional(),
24265
- submitButtonText: z56.string().optional(),
24177
+ heading: z55.string().nullable().optional(),
24178
+ productSlug: z55.string().nullable().optional(),
24179
+ showPasses: z55.boolean().optional(),
24180
+ showMemberships: z55.boolean().optional(),
24181
+ layout: z55.enum(["grid", "list"]).optional(),
24182
+ columns: z55.string().optional(),
24183
+ showDescriptions: z55.boolean().optional(),
24184
+ showSummary: z55.boolean().optional(),
24185
+ showBody: z55.boolean().optional(),
24186
+ showBadges: z55.boolean().optional(),
24187
+ showPrices: z55.boolean().optional(),
24188
+ showValidityPeriod: z55.boolean().optional(),
24189
+ showPricePerCredit: z55.boolean().nullable().optional(),
24190
+ passesHeading: z55.string().optional(),
24191
+ membershipsHeading: z55.string().optional(),
24192
+ buyButtonText: z55.string().optional(),
24193
+ addButtonText: z55.string().optional(),
24194
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"]).optional(),
24195
+ subscribeButtonText: z55.string().optional(),
24196
+ emptyStateText: z55.string().optional(),
24197
+ checkoutButtonText: z55.string().optional(),
24198
+ clearButtonText: z55.string().optional(),
24199
+ submitButtonText: z55.string().optional(),
24266
24200
  contentEntry: contentEntrySchema3.optional(),
24267
- passes: z56.array(publicPassProductSchema).nullable().optional(),
24268
- memberships: z56.array(publicMembershipProductSchema).nullable().optional(),
24269
- products: z56.array(publicProductSchema).nullable().optional(),
24270
- siteId: z56.string().optional(),
24271
- apiBaseUrl: z56.string().optional(),
24201
+ passes: z55.array(publicPassProductSchema).nullable().optional(),
24202
+ memberships: z55.array(publicMembershipProductSchema).nullable().optional(),
24203
+ products: z55.array(publicProductSchema).nullable().optional(),
24204
+ siteId: z55.string().optional(),
24205
+ apiBaseUrl: z55.string().optional(),
24272
24206
  stage: previewStageSchema.optional()
24273
24207
  });
24274
- var productVariantOptionDisplaySchema = z56.object({
24275
- id: z56.string(),
24276
- label: z56.string(),
24277
- soldOut: z56.boolean()
24278
- });
24279
- var productCardDisplaySchema = z56.object({
24280
- productId: z56.string(),
24281
- title: z56.string(),
24282
- path: z56.string().nullable(),
24283
- summary: z56.string().nullable(),
24284
- priceLabel: z56.string().nullable(),
24285
- badges: z56.array(z56.string()),
24286
- image: z56.object({
24287
- url: z56.string(),
24288
- alt: z56.string().nullable()
24208
+ var productVariantOptionDisplaySchema = z55.object({
24209
+ id: z55.string(),
24210
+ label: z55.string(),
24211
+ soldOut: z55.boolean()
24212
+ });
24213
+ var productCardDisplaySchema = z55.object({
24214
+ productId: z55.string(),
24215
+ title: z55.string(),
24216
+ path: z55.string().nullable(),
24217
+ summary: z55.string().nullable(),
24218
+ priceLabel: z55.string().nullable(),
24219
+ badges: z55.array(z55.string()),
24220
+ image: z55.object({
24221
+ url: z55.string(),
24222
+ alt: z55.string().nullable()
24289
24223
  }).nullable(),
24290
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24291
- selectedVariantId: z56.string().nullable(),
24292
- selectionLabel: z56.string(),
24293
- actionLabel: z56.string(),
24294
- soldOut: z56.boolean()
24295
- });
24296
- var productListDisplaySchema = z56.object({
24297
- kind: z56.literal("product-list"),
24298
- state: z56.enum(["empty", "ready"]),
24299
- heading: z56.string().nullable(),
24300
- className: z56.string().nullable(),
24301
- layout: z56.enum(["grid", "list"]),
24302
- columns: z56.string(),
24303
- emptyMessage: z56.string(),
24304
- cards: z56.array(productCardDisplaySchema)
24305
- });
24306
- var productDetailDisplaySchema = z56.discriminatedUnion("state", [
24307
- z56.object({
24308
- kind: z56.literal("product-detail"),
24309
- state: z56.literal("empty"),
24310
- heading: z56.string().nullable(),
24311
- className: z56.string().nullable(),
24312
- emptyMessage: z56.string()
24224
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24225
+ selectedVariantId: z55.string().nullable(),
24226
+ selectionLabel: z55.string(),
24227
+ actionLabel: z55.string(),
24228
+ soldOut: z55.boolean()
24229
+ });
24230
+ var productListDisplaySchema = z55.object({
24231
+ kind: z55.literal("product-list"),
24232
+ state: z55.enum(["empty", "ready"]),
24233
+ heading: z55.string().nullable(),
24234
+ className: z55.string().nullable(),
24235
+ layout: z55.enum(["grid", "list"]),
24236
+ columns: z55.string(),
24237
+ emptyMessage: z55.string(),
24238
+ cards: z55.array(productCardDisplaySchema)
24239
+ });
24240
+ var productDetailDisplaySchema = z55.discriminatedUnion("state", [
24241
+ z55.object({
24242
+ kind: z55.literal("product-detail"),
24243
+ state: z55.literal("empty"),
24244
+ heading: z55.string().nullable(),
24245
+ className: z55.string().nullable(),
24246
+ emptyMessage: z55.string()
24313
24247
  }),
24314
- z56.object({
24315
- kind: z56.literal("product-detail"),
24316
- state: z56.literal("ready"),
24317
- heading: z56.string().nullable(),
24318
- className: z56.string().nullable(),
24319
- title: z56.string(),
24320
- priceLabel: z56.string(),
24321
- summary: z56.string().nullable(),
24322
- badges: z56.array(z56.string()),
24323
- categoryLabel: z56.string().nullable(),
24324
- gallery: z56.array(z56.object({
24325
- url: z56.string(),
24326
- alt: z56.string().nullable()
24248
+ z55.object({
24249
+ kind: z55.literal("product-detail"),
24250
+ state: z55.literal("ready"),
24251
+ heading: z55.string().nullable(),
24252
+ className: z55.string().nullable(),
24253
+ title: z55.string(),
24254
+ priceLabel: z55.string(),
24255
+ summary: z55.string().nullable(),
24256
+ badges: z55.array(z55.string()),
24257
+ categoryLabel: z55.string().nullable(),
24258
+ gallery: z55.array(z55.object({
24259
+ url: z55.string(),
24260
+ alt: z55.string().nullable()
24327
24261
  })),
24328
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24329
- selectedVariantId: z56.string().nullable(),
24330
- selectionLabel: z56.string(),
24331
- actionLabel: z56.string(),
24332
- soldOut: z56.boolean(),
24333
- body: z56.unknown().nullable()
24262
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24263
+ selectedVariantId: z55.string().nullable(),
24264
+ selectionLabel: z55.string(),
24265
+ actionLabel: z55.string(),
24266
+ soldOut: z55.boolean(),
24267
+ body: z55.unknown().nullable()
24334
24268
  })
24335
24269
  ]);
24336
- var passCardDisplaySchema = z56.object({
24337
- id: z56.string(),
24338
- title: z56.string(),
24339
- description: z56.string().nullable(),
24340
- priceLabel: z56.string(),
24341
- creditsLabel: z56.string(),
24342
- perCreditLabel: z56.string().nullable(),
24343
- validityLabel: z56.string().nullable(),
24344
- actionLabel: z56.string()
24345
- });
24346
- var membershipCardDisplaySchema = z56.object({
24347
- id: z56.string(),
24348
- title: z56.string(),
24349
- description: z56.string().nullable(),
24350
- priceLabel: z56.string(),
24351
- intervalLabel: z56.string(),
24352
- actionLabel: z56.string()
24353
- });
24354
- var passesMembershipsDisplaySchema = z56.object({
24355
- kind: z56.literal("passes-memberships"),
24356
- state: z56.enum(["empty", "ready"]),
24357
- className: z56.string().nullable(),
24358
- layout: z56.enum(["grid", "list"]),
24359
- columns: z56.string(),
24360
- emptyMessage: z56.string(),
24361
- passesHeading: z56.string(),
24362
- membershipsHeading: z56.string(),
24363
- passes: z56.array(passCardDisplaySchema),
24364
- memberships: z56.array(membershipCardDisplaySchema)
24365
- });
24366
- var cartLineDisplaySchema = z56.object({
24367
- key: z56.string(),
24368
- title: z56.string(),
24369
- priceLabel: z56.string(),
24370
- quantity: z56.number(),
24371
- quantityEditable: z56.boolean()
24372
- });
24373
- var cartDisplaySchema = z56.object({
24374
- kind: z56.literal("cart"),
24375
- state: z56.enum(["empty", "ready"]),
24376
- heading: z56.string().nullable(),
24377
- className: z56.string().nullable(),
24378
- emptyMessage: z56.string(),
24379
- supportText: z56.string().nullable(),
24380
- items: z56.array(cartLineDisplaySchema),
24381
- subtotalLabel: z56.string().nullable(),
24382
- checkoutButtonText: z56.string(),
24383
- clearButtonText: z56.string()
24384
- });
24385
- var checkoutDisplaySchema = z56.object({
24386
- kind: z56.literal("checkout"),
24387
- state: z56.enum(["empty", "blocked", "ready"]),
24388
- heading: z56.string().nullable(),
24389
- className: z56.string().nullable(),
24390
- message: z56.string().nullable(),
24391
- submitButtonText: z56.string()
24392
- });
24393
- var passesMembershipsHydrationSchema = z56.object({
24394
- passes: z56.array(publicPassProductSchema),
24395
- memberships: z56.array(publicMembershipProductSchema),
24396
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"])
24397
- });
24398
- var productListHydrationSchema = z56.object({
24399
- products: z56.array(publicProductSchema),
24400
- showSummary: z56.boolean(),
24401
- showBadges: z56.boolean(),
24402
- showPrices: z56.boolean(),
24403
- addButtonText: z56.string()
24404
- });
24405
- var productDetailHydrationSchema = z56.object({
24406
- products: z56.array(publicProductSchema),
24407
- productId: z56.string().nullable(),
24408
- showSummary: z56.boolean(),
24409
- showBadges: z56.boolean(),
24410
- showBody: z56.boolean(),
24411
- addButtonText: z56.string()
24412
- });
24413
- var cartHydrationSchema = z56.object({
24414
- emptyStateText: z56.string(),
24415
- checkoutButtonText: z56.string(),
24416
- clearButtonText: z56.string()
24417
- });
24418
- var checkoutHydrationSchema = z56.object({
24419
- emptyStateText: z56.string(),
24420
- submitButtonText: z56.string()
24421
- });
24422
- var passesMembershipsRenderSchema = z56.object({
24270
+ var passCardDisplaySchema = z55.object({
24271
+ id: z55.string(),
24272
+ title: z55.string(),
24273
+ description: z55.string().nullable(),
24274
+ priceLabel: z55.string(),
24275
+ creditsLabel: z55.string(),
24276
+ perCreditLabel: z55.string().nullable(),
24277
+ validityLabel: z55.string().nullable(),
24278
+ actionLabel: z55.string()
24279
+ });
24280
+ var membershipCardDisplaySchema = z55.object({
24281
+ id: z55.string(),
24282
+ title: z55.string(),
24283
+ description: z55.string().nullable(),
24284
+ priceLabel: z55.string(),
24285
+ intervalLabel: z55.string(),
24286
+ actionLabel: z55.string()
24287
+ });
24288
+ var passesMembershipsDisplaySchema = z55.object({
24289
+ kind: z55.literal("passes-memberships"),
24290
+ state: z55.enum(["empty", "ready"]),
24291
+ className: z55.string().nullable(),
24292
+ layout: z55.enum(["grid", "list"]),
24293
+ columns: z55.string(),
24294
+ emptyMessage: z55.string(),
24295
+ passesHeading: z55.string(),
24296
+ membershipsHeading: z55.string(),
24297
+ passes: z55.array(passCardDisplaySchema),
24298
+ memberships: z55.array(membershipCardDisplaySchema)
24299
+ });
24300
+ var cartLineDisplaySchema = z55.object({
24301
+ key: z55.string(),
24302
+ title: z55.string(),
24303
+ priceLabel: z55.string(),
24304
+ quantity: z55.number(),
24305
+ quantityEditable: z55.boolean()
24306
+ });
24307
+ var cartDisplaySchema = z55.object({
24308
+ kind: z55.literal("cart"),
24309
+ state: z55.enum(["empty", "ready"]),
24310
+ heading: z55.string().nullable(),
24311
+ className: z55.string().nullable(),
24312
+ emptyMessage: z55.string(),
24313
+ supportText: z55.string().nullable(),
24314
+ items: z55.array(cartLineDisplaySchema),
24315
+ subtotalLabel: z55.string().nullable(),
24316
+ checkoutButtonText: z55.string(),
24317
+ clearButtonText: z55.string()
24318
+ });
24319
+ var checkoutDisplaySchema = z55.object({
24320
+ kind: z55.literal("checkout"),
24321
+ state: z55.enum(["empty", "blocked", "ready"]),
24322
+ heading: z55.string().nullable(),
24323
+ className: z55.string().nullable(),
24324
+ message: z55.string().nullable(),
24325
+ submitButtonText: z55.string()
24326
+ });
24327
+ var passesMembershipsHydrationSchema = z55.object({
24328
+ passes: z55.array(publicPassProductSchema),
24329
+ memberships: z55.array(publicMembershipProductSchema),
24330
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"])
24331
+ });
24332
+ var productListHydrationSchema = z55.object({
24333
+ products: z55.array(publicProductSchema),
24334
+ showSummary: z55.boolean(),
24335
+ showBadges: z55.boolean(),
24336
+ showPrices: z55.boolean(),
24337
+ addButtonText: z55.string()
24338
+ });
24339
+ var productDetailHydrationSchema = z55.object({
24340
+ products: z55.array(publicProductSchema),
24341
+ productId: z55.string().nullable(),
24342
+ showSummary: z55.boolean(),
24343
+ showBadges: z55.boolean(),
24344
+ showBody: z55.boolean(),
24345
+ addButtonText: z55.string()
24346
+ });
24347
+ var cartHydrationSchema = z55.object({
24348
+ emptyStateText: z55.string(),
24349
+ checkoutButtonText: z55.string(),
24350
+ clearButtonText: z55.string()
24351
+ });
24352
+ var checkoutHydrationSchema = z55.object({
24353
+ emptyStateText: z55.string(),
24354
+ submitButtonText: z55.string()
24355
+ });
24356
+ var passesMembershipsRenderSchema = z55.object({
24423
24357
  display: passesMembershipsDisplaySchema,
24424
24358
  hydration: passesMembershipsHydrationSchema
24425
24359
  });
24426
- var productListRenderSchema = z56.object({
24360
+ var productListRenderSchema = z55.object({
24427
24361
  display: productListDisplaySchema,
24428
24362
  hydration: productListHydrationSchema
24429
24363
  });
24430
- var productDetailRenderSchema = z56.object({
24364
+ var productDetailRenderSchema = z55.object({
24431
24365
  display: productDetailDisplaySchema,
24432
24366
  hydration: productDetailHydrationSchema
24433
24367
  });
24434
- var cartRenderSchema = z56.object({
24368
+ var cartRenderSchema = z55.object({
24435
24369
  display: cartDisplaySchema,
24436
24370
  hydration: cartHydrationSchema
24437
24371
  });
24438
- var checkoutRenderSchema = z56.object({
24372
+ var checkoutRenderSchema = z55.object({
24439
24373
  display: checkoutDisplaySchema,
24440
24374
  hydration: checkoutHydrationSchema
24441
24375
  });
24442
24376
  function resolveShowPricePerCredit(source) {
24443
24377
  return source.showPricePerCredit ?? true;
24444
24378
  }
24445
- var shopIslandMetaCodec = createZodCodec(z56.object({
24446
- siteId: z56.string().optional(),
24447
- apiBaseUrl: z56.string().optional(),
24379
+ var shopIslandMetaCodec = createZodCodec(z55.object({
24380
+ siteId: z55.string().optional(),
24381
+ apiBaseUrl: z55.string().optional(),
24448
24382
  stage: previewStageSchema.optional()
24449
24383
  }));
24450
24384
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -24826,9 +24760,9 @@ var shopBlockDefinition = {
24826
24760
  runtime: shopBlockRuntime,
24827
24761
  dataSchemas: {
24828
24762
  // listPublicPasses returns { passes: [...] }
24829
- passes: z57.object({ passes: z57.array(publicPassProductSchema) }).optional(),
24763
+ passes: z56.object({ passes: z56.array(publicPassProductSchema) }).optional(),
24830
24764
  // listPublicMemberships returns { memberships: [...] }
24831
- memberships: z57.object({ memberships: z57.array(publicMembershipProductSchema) }).optional()
24765
+ memberships: z56.object({ memberships: z56.array(publicMembershipProductSchema) }).optional()
24832
24766
  },
24833
24767
  dataLoaders: {
24834
24768
  // Load passes for display
@@ -24851,7 +24785,7 @@ var shopBlockDefinition = {
24851
24785
  };
24852
24786
 
24853
24787
  // ../blocks/src/system/blocks/product-list.ts
24854
- import { z as z58 } from "zod";
24788
+ import { z as z57 } from "zod";
24855
24789
  var productListManifest = createBlockManifest({
24856
24790
  id: "block.product-list",
24857
24791
  version: "1.0.0",
@@ -24993,7 +24927,7 @@ var productListBlockDefinition = {
24993
24927
  }
24994
24928
  }
24995
24929
  };
24996
- var productListDataSchema = z58.object({
24930
+ var productListDataSchema = z57.object({
24997
24931
  products: publicProductsResponseSchema.optional()
24998
24932
  });
24999
24933
 
@@ -25263,72 +25197,72 @@ var checkoutBlockDefinition = {
25263
25197
  };
25264
25198
 
25265
25199
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
25266
- import { z as z59 } from "zod";
25267
- var publicGiftCardOfferSchema = z59.object({
25268
- id: z59.string(),
25269
- kind: z59.literal("gift_card"),
25270
- title: z59.string(),
25271
- description: z59.string().nullable(),
25272
- sortOrder: z59.number().int(),
25273
- giftCard: z59.object({
25274
- fixedDenominations: z59.array(z59.number().int().positive()),
25275
- customAmountEnabled: z59.boolean(),
25276
- customAmountMinCents: z59.number().int().positive(),
25277
- customAmountMaxCents: z59.number().int().positive()
25200
+ import { z as z58 } from "zod";
25201
+ var publicGiftCardOfferSchema = z58.object({
25202
+ id: z58.string(),
25203
+ kind: z58.literal("gift_card"),
25204
+ title: z58.string(),
25205
+ description: z58.string().nullable(),
25206
+ sortOrder: z58.number().int(),
25207
+ giftCard: z58.object({
25208
+ fixedDenominations: z58.array(z58.number().int().positive()),
25209
+ customAmountEnabled: z58.boolean(),
25210
+ customAmountMinCents: z58.number().int().positive(),
25211
+ customAmountMaxCents: z58.number().int().positive()
25278
25212
  }),
25279
- voucher: z59.null()
25280
- });
25281
- var publicVoucherOfferSchema = z59.object({
25282
- id: z59.string(),
25283
- kind: z59.literal("voucher"),
25284
- title: z59.string(),
25285
- description: z59.string().nullable(),
25286
- sortOrder: z59.number().int(),
25287
- giftCard: z59.null(),
25288
- voucher: z59.object({
25289
- purchaseAmountCents: z59.number().int().positive()
25213
+ voucher: z58.null()
25214
+ });
25215
+ var publicVoucherOfferSchema = z58.object({
25216
+ id: z58.string(),
25217
+ kind: z58.literal("voucher"),
25218
+ title: z58.string(),
25219
+ description: z58.string().nullable(),
25220
+ sortOrder: z58.number().int(),
25221
+ giftCard: z58.null(),
25222
+ voucher: z58.object({
25223
+ purchaseAmountCents: z58.number().int().positive()
25290
25224
  })
25291
25225
  });
25292
- var publicGiftingOffersResponseSchema = z59.object({
25293
- currency: z59.string(),
25294
- giftCards: z59.array(publicGiftCardOfferSchema),
25295
- vouchers: z59.array(publicVoucherOfferSchema)
25226
+ var publicGiftingOffersResponseSchema = z58.object({
25227
+ currency: z58.string(),
25228
+ giftCards: z58.array(publicGiftCardOfferSchema),
25229
+ vouchers: z58.array(publicVoucherOfferSchema)
25296
25230
  });
25297
- var giftingSourceSchema = z59.object({
25298
- siteId: z59.string().optional(),
25299
- apiBaseUrl: z59.string().optional(),
25231
+ var giftingSourceSchema = z58.object({
25232
+ siteId: z58.string().optional(),
25233
+ apiBaseUrl: z58.string().optional(),
25300
25234
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
25301
- className: z59.string().nullable().optional(),
25302
- heading: z59.string().nullable().optional(),
25303
- intro: z59.string().nullable().optional(),
25304
- giftCardsHeading: z59.string().nullable().optional(),
25305
- vouchersHeading: z59.string().nullable().optional(),
25306
- emptyStateText: z59.string().nullable().optional(),
25307
- checkoutButtonText: z59.string().nullable().optional(),
25308
- successMessage: z59.string().nullable().optional()
25309
- });
25310
- var giftingDisplaySchema = z59.object({
25311
- kind: z59.literal("gifting"),
25312
- state: z59.literal("ready"),
25313
- className: z59.string().nullable(),
25314
- heading: z59.string(),
25315
- intro: z59.string().nullable(),
25316
- giftCardsHeading: z59.string(),
25317
- vouchersHeading: z59.string(),
25318
- emptyStateText: z59.string()
25319
- });
25320
- var giftingHydrationSchema = z59.object({
25235
+ className: z58.string().nullable().optional(),
25236
+ heading: z58.string().nullable().optional(),
25237
+ intro: z58.string().nullable().optional(),
25238
+ giftCardsHeading: z58.string().nullable().optional(),
25239
+ vouchersHeading: z58.string().nullable().optional(),
25240
+ emptyStateText: z58.string().nullable().optional(),
25241
+ checkoutButtonText: z58.string().nullable().optional(),
25242
+ successMessage: z58.string().nullable().optional()
25243
+ });
25244
+ var giftingDisplaySchema = z58.object({
25245
+ kind: z58.literal("gifting"),
25246
+ state: z58.literal("ready"),
25247
+ className: z58.string().nullable(),
25248
+ heading: z58.string(),
25249
+ intro: z58.string().nullable(),
25250
+ giftCardsHeading: z58.string(),
25251
+ vouchersHeading: z58.string(),
25252
+ emptyStateText: z58.string()
25253
+ });
25254
+ var giftingHydrationSchema = z58.object({
25321
25255
  offers: publicGiftingOffersResponseSchema.nullable(),
25322
- checkoutButtonText: z59.string(),
25323
- successMessage: z59.string()
25256
+ checkoutButtonText: z58.string(),
25257
+ successMessage: z58.string()
25324
25258
  });
25325
- var giftingRenderSchema = z59.object({
25259
+ var giftingRenderSchema = z58.object({
25326
25260
  display: giftingDisplaySchema,
25327
25261
  hydration: giftingHydrationSchema
25328
25262
  });
25329
- var giftingIslandMetaCodec = createZodCodec(z59.object({
25330
- siteId: z59.string().optional(),
25331
- apiBaseUrl: z59.string().optional()
25263
+ var giftingIslandMetaCodec = createZodCodec(z58.object({
25264
+ siteId: z58.string().optional(),
25265
+ apiBaseUrl: z58.string().optional()
25332
25266
  }));
25333
25267
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
25334
25268
  "siteId",
@@ -25499,7 +25433,7 @@ var giftingBlockDefinition = {
25499
25433
  };
25500
25434
 
25501
25435
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25502
- import { z as z60 } from "zod";
25436
+ import { z as z59 } from "zod";
25503
25437
 
25504
25438
  // ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
25505
25439
  function getPresetFields(preset2, options) {
@@ -25553,49 +25487,49 @@ function withOptionalPhone(fields3, includePhone) {
25553
25487
  }
25554
25488
 
25555
25489
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25556
- var newsletterPresetSchema = z60.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25557
- var newsletterFieldSchema = z60.object({
25558
- id: z60.string(),
25559
- type: z60.enum(["email", "text"]),
25560
- label: z60.string(),
25561
- required: z60.boolean(),
25562
- placeholder: z60.string().optional()
25563
- });
25564
- var newsletterSourceSchema = z60.object({
25565
- siteId: z60.string().optional(),
25566
- apiBaseUrl: z60.string().optional(),
25567
- listId: z60.string().nullable().optional(),
25490
+ var newsletterPresetSchema = z59.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25491
+ var newsletterFieldSchema = z59.object({
25492
+ id: z59.string(),
25493
+ type: z59.enum(["email", "text"]),
25494
+ label: z59.string(),
25495
+ required: z59.boolean(),
25496
+ placeholder: z59.string().optional()
25497
+ });
25498
+ var newsletterSourceSchema = z59.object({
25499
+ siteId: z59.string().optional(),
25500
+ apiBaseUrl: z59.string().optional(),
25501
+ listId: z59.string().nullable().optional(),
25568
25502
  preset: newsletterPresetSchema.optional(),
25569
- includePhone: z60.boolean().optional(),
25570
- buttonLabel: z60.string().nullable().optional(),
25571
- successMessage: z60.string().nullable().optional(),
25572
- privacyNote: z60.string().nullable().optional(),
25573
- tags: z60.string().nullable().optional(),
25574
- spamProtectionEnabled: z60.boolean().optional(),
25575
- className: z60.string().nullable().optional()
25576
- });
25577
- var newsletterDisplaySchema = z60.object({
25578
- kind: z60.literal("newsletter-form"),
25579
- className: z60.string().nullable(),
25580
- buttonLabel: z60.string(),
25581
- successMessage: z60.string().nullable(),
25582
- privacyNote: z60.string().nullable(),
25583
- fields: z60.array(newsletterFieldSchema)
25584
- });
25585
- var newsletterHydrationSchema = z60.object({
25586
- listId: z60.string().nullable().optional(),
25503
+ includePhone: z59.boolean().optional(),
25504
+ buttonLabel: z59.string().nullable().optional(),
25505
+ successMessage: z59.string().nullable().optional(),
25506
+ privacyNote: z59.string().nullable().optional(),
25507
+ tags: z59.string().nullable().optional(),
25508
+ spamProtectionEnabled: z59.boolean().optional(),
25509
+ className: z59.string().nullable().optional()
25510
+ });
25511
+ var newsletterDisplaySchema = z59.object({
25512
+ kind: z59.literal("newsletter-form"),
25513
+ className: z59.string().nullable(),
25514
+ buttonLabel: z59.string(),
25515
+ successMessage: z59.string().nullable(),
25516
+ privacyNote: z59.string().nullable(),
25517
+ fields: z59.array(newsletterFieldSchema)
25518
+ });
25519
+ var newsletterHydrationSchema = z59.object({
25520
+ listId: z59.string().nullable().optional(),
25587
25521
  preset: newsletterPresetSchema,
25588
- includePhone: z60.boolean(),
25589
- tags: z60.string().nullable().optional(),
25590
- spamProtectionEnabled: z60.boolean().optional()
25522
+ includePhone: z59.boolean(),
25523
+ tags: z59.string().nullable().optional(),
25524
+ spamProtectionEnabled: z59.boolean().optional()
25591
25525
  });
25592
- var newsletterRenderSchema = z60.object({
25526
+ var newsletterRenderSchema = z59.object({
25593
25527
  display: newsletterDisplaySchema,
25594
25528
  hydration: newsletterHydrationSchema
25595
25529
  });
25596
- var newsletterIslandMetaCodec = createZodCodec(z60.object({
25597
- siteId: z60.string().optional(),
25598
- apiBaseUrl: z60.string().optional()
25530
+ var newsletterIslandMetaCodec = createZodCodec(z59.object({
25531
+ siteId: z59.string().optional(),
25532
+ apiBaseUrl: z59.string().optional()
25599
25533
  }));
25600
25534
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
25601
25535
  function buildNewsletterDisplay(source) {
@@ -25716,23 +25650,23 @@ var newsletterSignupBlockDefinition = {
25716
25650
  };
25717
25651
 
25718
25652
  // ../blocks/src/system/blocks/team-members.ts
25719
- import { z as z61 } from "zod";
25653
+ import { z as z60 } from "zod";
25720
25654
  var ITEM_NAME2 = "member";
25721
25655
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
25722
25656
  message: "Team member photos must be image media"
25723
25657
  }).nullable();
25724
- var teamMemberDataSchema = z61.object({
25725
- _type: z61.literal("teamMember"),
25726
- id: z61.string(),
25727
- name: z61.string(),
25728
- role: z61.string().nullable(),
25729
- roleLabel: z61.string().nullable(),
25730
- bio: z61.string().nullable(),
25731
- summary: z61.string().nullable(),
25658
+ var teamMemberDataSchema = z60.object({
25659
+ _type: z60.literal("teamMember"),
25660
+ id: z60.string(),
25661
+ name: z60.string(),
25662
+ role: z60.string().nullable(),
25663
+ roleLabel: z60.string().nullable(),
25664
+ bio: z60.string().nullable(),
25665
+ summary: z60.string().nullable(),
25732
25666
  photo: teamMemberPhotoSchema,
25733
- profilePath: z61.string().nullable()
25667
+ profilePath: z60.string().nullable()
25734
25668
  });
25735
- var teamMembersDataSchema = z61.array(teamMemberDataSchema);
25669
+ var teamMembersDataSchema = z60.array(teamMemberDataSchema);
25736
25670
  var dynamicSourceWhen = { equals: "site_staff" };
25737
25671
  var manualSourceWhen = { equals: "site_staff", not: true };
25738
25672
  var headingNode = text(
@@ -27506,10 +27440,10 @@ function normalizeDataLoaders(def) {
27506
27440
  }
27507
27441
  function normalizeContent(block) {
27508
27442
  const source = block.draftContent ?? block.content ?? block.publishedContent ?? {};
27509
- if (!isObjectRecord(source)) return {};
27443
+ if (!isObjectRecord2(source)) return {};
27510
27444
  if ("data" in source) {
27511
27445
  const data = source.data;
27512
- if (isObjectRecord(data)) {
27446
+ if (isObjectRecord2(data)) {
27513
27447
  return data;
27514
27448
  }
27515
27449
  if (data === null || data === void 0) {
@@ -27634,7 +27568,7 @@ async function prefetchBlockData(page, context, options) {
27634
27568
 
27635
27569
  // ../blocks/src/system/data/normalizeLoaderParams.ts
27636
27570
  function toStringParams(value) {
27637
- if (!isObjectRecord(value)) return {};
27571
+ if (!isObjectRecord2(value)) return {};
27638
27572
  const out = {};
27639
27573
  for (const [k, v] of Object.entries(value)) {
27640
27574
  if (typeof v === "string") out[k] = v;
@@ -27692,6 +27626,74 @@ function normalizeLoaderParams(endpoint, params, context) {
27692
27626
  return out;
27693
27627
  }
27694
27628
 
27629
+ // ../api/src/aiPlayground.ts
27630
+ import { z as z61 } from "zod";
27631
+ var Rfc6902PatchOp = z61.discriminatedUnion("op", [
27632
+ // Standard RFC-6902 operations
27633
+ z61.object({
27634
+ op: z61.literal("add"),
27635
+ path: z61.string(),
27636
+ value: z61.unknown()
27637
+ }),
27638
+ z61.object({
27639
+ op: z61.literal("remove"),
27640
+ path: z61.string()
27641
+ }),
27642
+ z61.object({
27643
+ op: z61.literal("replace"),
27644
+ path: z61.string(),
27645
+ value: z61.unknown()
27646
+ }),
27647
+ z61.object({
27648
+ op: z61.literal("move"),
27649
+ from: z61.string(),
27650
+ path: z61.string()
27651
+ }),
27652
+ z61.object({
27653
+ op: z61.literal("copy"),
27654
+ from: z61.string(),
27655
+ path: z61.string()
27656
+ }),
27657
+ // Block-level operations (Phase 2)
27658
+ z61.object({
27659
+ op: z61.literal("add_block"),
27660
+ blockKind: z61.string(),
27661
+ afterBlockId: z61.string().nullable(),
27662
+ content: z61.record(z61.string(), z61.unknown()),
27663
+ rationale: z61.string()
27664
+ }),
27665
+ z61.object({
27666
+ op: z61.literal("delete_block"),
27667
+ blockId: z61.string(),
27668
+ rationale: z61.string()
27669
+ }),
27670
+ z61.object({
27671
+ op: z61.literal("reorder_block"),
27672
+ blockId: z61.string(),
27673
+ afterBlockId: z61.string().nullable(),
27674
+ rationale: z61.string()
27675
+ })
27676
+ ]);
27677
+ var PlaygroundProposeRequest = z61.object({
27678
+ request: z61.string().min(1).max(2e3)
27679
+ });
27680
+ var MultiPagePatchEnvelope = z61.object({
27681
+ pageId: z61.string(),
27682
+ blockId: z61.string().optional(),
27683
+ // Not present for page-level ops
27684
+ blockKind: z61.string().optional(),
27685
+ blockPurpose: z61.string().optional().nullable(),
27686
+ ops: z61.array(Rfc6902PatchOp),
27687
+ rationale: z61.string(),
27688
+ currentContent: z61.record(z61.string(), z61.unknown()).optional()
27689
+ });
27690
+ var MultiPageUpdateResponse = z61.object({
27691
+ patches: z61.array(MultiPagePatchEnvelope),
27692
+ assistantMessage: z61.string(),
27693
+ pagesModified: z61.number(),
27694
+ toolCallsUsed: z61.number()
27695
+ });
27696
+
27695
27697
  // src/data/prefetchBlockData.ts
27696
27698
  var SUPPORTED_LOADER_ENDPOINTS2 = [
27697
27699
  "listPublishedEntries",