@riverbankcms/sdk 0.60.7 → 0.60.11

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 (44) hide show
  1. package/dist/_dts/api/src/index.d.ts +2 -1
  2. package/dist/_dts/api/src/navigation/linkValue.d.ts +15 -2
  3. package/dist/_dts/api/src/navigation.d.ts +2 -0
  4. package/dist/_dts/blocks/src/index.d.ts +2 -1
  5. package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +185 -0
  6. package/dist/_dts/blocks/src/system/manifest/index.d.ts +1 -0
  7. package/dist/_dts/blocks/src/system/manifest/validation.d.ts +2 -84
  8. package/dist/_dts/blocks/src/system/node/fragments/ctaButton.d.ts +2 -2
  9. package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +2 -1
  10. package/dist/_dts/blocks/src/system/types/link.d.ts +100 -2
  11. package/dist/_dts/db/src/schemas/forms.d.ts +24 -3
  12. package/dist/_dts/editor-blocks/src/widgets/link/LinkSummary.d.ts +1 -1
  13. package/dist/_dts/editor-blocks/src/widgets/link/LinkWidget.d.ts +1 -1
  14. package/dist/_dts/editor-blocks/src/widgets/link/utils.d.ts +1 -1
  15. package/dist/_dts/sdk/src/config/typed-entries.d.ts +36 -1
  16. package/dist/_dts/sdk/src/contracts/content.d.ts +13 -2
  17. package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
  18. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +1 -0
  19. package/dist/_dts/sdk/src/version.d.ts +1 -1
  20. package/dist/_dts/theme-core/src/buttons/classNames.d.ts +21 -0
  21. package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
  22. package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -0
  23. package/dist/cli/index.mjs +736 -427
  24. package/dist/client/bookings.mjs +746 -149
  25. package/dist/client/client.mjs +40389 -39847
  26. package/dist/client/hooks.mjs +1737 -1735
  27. package/dist/client/rendering/client.mjs +351 -113
  28. package/dist/client/rendering/islands.mjs +4549 -4366
  29. package/dist/client/rendering.mjs +1915 -1373
  30. package/dist/preview-next/client/runtime.mjs +1509 -945
  31. package/dist/server/components.mjs +3148 -2781
  32. package/dist/server/config-validation.mjs +1727 -1725
  33. package/dist/server/config.mjs +1727 -1725
  34. package/dist/server/data.mjs +1737 -1735
  35. package/dist/server/index.mjs +1 -1
  36. package/dist/server/next.mjs +3193 -2826
  37. package/dist/server/page-converter.mjs +10 -10
  38. package/dist/server/prebuild.mjs +1 -1
  39. package/dist/server/rendering/server.mjs +3161 -2794
  40. package/dist/server/rendering.mjs +3161 -2794
  41. package/dist/server/routing.mjs +297 -314
  42. package/dist/server/server.mjs +1738 -1736
  43. package/package.json +1 -1
  44. package/dist/_dts/blocks/src/system/runtime/shared/themedButtonClass.d.ts +0 -11
@@ -7576,74 +7576,6 @@ function isNavigationMenuValidationItem(value) {
7576
7576
  return typeof value.label === "string";
7577
7577
  }
7578
7578
 
7579
- // ../api/src/aiPlayground.ts
7580
- import { z as z8 } from "zod";
7581
- var Rfc6902PatchOp = z8.discriminatedUnion("op", [
7582
- // Standard RFC-6902 operations
7583
- z8.object({
7584
- op: z8.literal("add"),
7585
- path: z8.string(),
7586
- value: z8.unknown()
7587
- }),
7588
- z8.object({
7589
- op: z8.literal("remove"),
7590
- path: z8.string()
7591
- }),
7592
- z8.object({
7593
- op: z8.literal("replace"),
7594
- path: z8.string(),
7595
- value: z8.unknown()
7596
- }),
7597
- z8.object({
7598
- op: z8.literal("move"),
7599
- from: z8.string(),
7600
- path: z8.string()
7601
- }),
7602
- z8.object({
7603
- op: z8.literal("copy"),
7604
- from: z8.string(),
7605
- path: z8.string()
7606
- }),
7607
- // Block-level operations (Phase 2)
7608
- z8.object({
7609
- op: z8.literal("add_block"),
7610
- blockKind: z8.string(),
7611
- afterBlockId: z8.string().nullable(),
7612
- content: z8.record(z8.string(), z8.unknown()),
7613
- rationale: z8.string()
7614
- }),
7615
- z8.object({
7616
- op: z8.literal("delete_block"),
7617
- blockId: z8.string(),
7618
- rationale: z8.string()
7619
- }),
7620
- z8.object({
7621
- op: z8.literal("reorder_block"),
7622
- blockId: z8.string(),
7623
- afterBlockId: z8.string().nullable(),
7624
- rationale: z8.string()
7625
- })
7626
- ]);
7627
- var PlaygroundProposeRequest = z8.object({
7628
- request: z8.string().min(1).max(2e3)
7629
- });
7630
- var MultiPagePatchEnvelope = z8.object({
7631
- pageId: z8.string(),
7632
- blockId: z8.string().optional(),
7633
- // Not present for page-level ops
7634
- blockKind: z8.string().optional(),
7635
- blockPurpose: z8.string().optional().nullable(),
7636
- ops: z8.array(Rfc6902PatchOp),
7637
- rationale: z8.string(),
7638
- currentContent: z8.record(z8.string(), z8.unknown()).optional()
7639
- });
7640
- var MultiPageUpdateResponse = z8.object({
7641
- patches: z8.array(MultiPagePatchEnvelope),
7642
- assistantMessage: z8.string(),
7643
- pagesModified: z8.number(),
7644
- toolCallsUsed: z8.number()
7645
- });
7646
-
7647
7579
  // ../blocks/src/system/manifest/augmentManifest.ts
7648
7580
  function augmentManifest(manifest) {
7649
7581
  let augmentedFields = manifest.fields ?? [];
@@ -7701,11 +7633,6 @@ function registerManifest(manifest) {
7701
7633
  return manifest;
7702
7634
  }
7703
7635
 
7704
- // ../blocks/src/lib/typeGuards.ts
7705
- function isRecord2(value) {
7706
- return typeof value === "object" && value !== null && !Array.isArray(value);
7707
- }
7708
-
7709
7636
  // ../theme-core/src/site-styles/types.ts
7710
7637
  function asDesignBlockId(value) {
7711
7638
  return brandNonEmptyString(value, "DesignBlockId");
@@ -8013,10 +7940,10 @@ function assertUniqueLayoutProfileKeys(profiles) {
8013
7940
  }
8014
7941
 
8015
7942
  // ../theme-core/src/buttons/personalities/types.ts
8016
- import { z as z11 } from "zod";
7943
+ import { z as z10 } from "zod";
8017
7944
 
8018
7945
  // ../theme-core/src/buttons/types.ts
8019
- import { z as z9 } from "zod";
7946
+ import { z as z8 } from "zod";
8020
7947
  var VARIANT_ROLES = [
8021
7948
  "primary",
8022
7949
  "secondary",
@@ -8026,22 +7953,22 @@ var VARIANT_ROLES = [
8026
7953
  "tertiary",
8027
7954
  "accent"
8028
7955
  ];
8029
- var cornerStyleSchema = z9.enum(["square", "rounded", "pill"]);
8030
- var shadowSizeSchema = z9.enum(["none", "low", "medium", "high"]);
8031
- var textTransformSchema = z9.enum(["none", "uppercase", "lowercase", "capitalize"]);
8032
- var fontWeightSchema = z9.union([z9.literal(500), z9.literal(600), z9.literal(700)]);
8033
- var buttonTypographySchema = z9.enum(["body", "heading"]);
8034
- var letterSpacingSchema = z9.enum(["tight", "normal", "loose"]);
8035
- var hoverTransformSchema = z9.enum(["none", "lift", "scale", "press"]);
8036
- var hoverColorSchema = z9.enum(["none", "brighten", "darken", "saturate", "token"]);
8037
- var buttonPaddingPresetSchema = z9.enum(["compact", "default", "spacious"]);
8038
- var gradientStyleSchema = z9.enum(["linear", "radial", "conic"]);
8039
- var gradientSharpnessSchema = z9.enum(["smooth", "medium", "hard"]);
8040
- var prioritySchema = z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]);
8041
- var variantRoleSchema = z9.enum(VARIANT_ROLES);
8042
- var buttonSizeNameSchema = z9.enum(["sm", "md", "lg", "xl"]);
7956
+ var cornerStyleSchema = z8.enum(["square", "rounded", "pill"]);
7957
+ var shadowSizeSchema = z8.enum(["none", "low", "medium", "high"]);
7958
+ var textTransformSchema = z8.enum(["none", "uppercase", "lowercase", "capitalize"]);
7959
+ var fontWeightSchema = z8.union([z8.literal(500), z8.literal(600), z8.literal(700)]);
7960
+ var buttonTypographySchema = z8.enum(["body", "heading"]);
7961
+ var letterSpacingSchema = z8.enum(["tight", "normal", "loose"]);
7962
+ var hoverTransformSchema = z8.enum(["none", "lift", "scale", "press"]);
7963
+ var hoverColorSchema = z8.enum(["none", "brighten", "darken", "saturate", "token"]);
7964
+ var buttonPaddingPresetSchema = z8.enum(["compact", "default", "spacious"]);
7965
+ var gradientStyleSchema = z8.enum(["linear", "radial", "conic"]);
7966
+ var gradientSharpnessSchema = z8.enum(["smooth", "medium", "hard"]);
7967
+ var prioritySchema = z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]);
7968
+ var variantRoleSchema = z8.enum(VARIANT_ROLES);
7969
+ var buttonSizeNameSchema = z8.enum(["sm", "md", "lg", "xl"]);
8043
7970
  var PADDING_TOKEN_PATTERN = /^(?:0|\d+(?:\.\d+)?(?:rem|em|px|%))$/;
8044
- var paddingShorthandSchema = z9.string().refine(
7971
+ var paddingShorthandSchema = z8.string().refine(
8045
7972
  (value) => {
8046
7973
  const parts = value.split(/\s+/).filter(Boolean);
8047
7974
  return parts.length === 2 && parts.every((token) => PADDING_TOKEN_PATTERN.test(token));
@@ -8050,11 +7977,11 @@ var paddingShorthandSchema = z9.string().refine(
8050
7977
  message: 'Padding must be two space-separated CSS length tokens (e.g. "0.5rem 1rem"). Use `0` for zero.'
8051
7978
  }
8052
7979
  );
8053
- var buttonSizeConfigSchema = z9.object({
7980
+ var buttonSizeConfigSchema = z8.object({
8054
7981
  padding: paddingShorthandSchema,
8055
- fontSize: z9.string().optional()
7982
+ fontSize: z8.string().optional()
8056
7983
  });
8057
- var buttonSizesSchema = z9.object({
7984
+ var buttonSizesSchema = z8.object({
8058
7985
  sm: buttonSizeConfigSchema,
8059
7986
  md: buttonSizeConfigSchema,
8060
7987
  lg: buttonSizeConfigSchema,
@@ -8065,9 +7992,9 @@ var buttonSizesSchema = z9.object({
8065
7992
  lg,
8066
7993
  xl: xl ?? lg
8067
7994
  }));
8068
- var buttonGlobalSettingsSchema = z9.object({
7995
+ var buttonGlobalSettingsSchema = z8.object({
8069
7996
  cornerStyle: cornerStyleSchema,
8070
- cornerRadius: z9.number().min(0).max(24).optional(),
7997
+ cornerRadius: z8.number().min(0).max(24).optional(),
8071
7998
  shadow: shadowSizeSchema,
8072
7999
  textTransform: textTransformSchema,
8073
8000
  fontWeight: fontWeightSchema,
@@ -8077,104 +8004,104 @@ var buttonGlobalSettingsSchema = z9.object({
8077
8004
  * by the current generator and will be removed once the legacy
8078
8005
  * `primitives/content/components/Button.tsx` slot exports are deleted.
8079
8006
  */
8080
- borderWidth: z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]),
8007
+ borderWidth: z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]),
8081
8008
  // === Family-level typography ===
8082
8009
  // Typography source (body or heading) — selects which theme typography pool to inherit
8083
8010
  typography: buttonTypographySchema.optional(),
8084
8011
  // Font size for all variants in the family (Tailwind token, e.g. "text-xs", "text-sm")
8085
8012
  // Sized variants get this as default; fixed variants inherit unless they override.
8086
8013
  // Size class CSS may still override at run time for sized variants.
8087
- fontSize: z9.string().optional(),
8014
+ fontSize: z8.string().optional(),
8088
8015
  // Letter spacing applied to all variants
8089
8016
  letterSpacing: letterSpacingSchema.optional(),
8090
8017
  // Italic style
8091
- italic: z9.boolean().optional(),
8018
+ italic: z8.boolean().optional(),
8092
8019
  // Padding preset (applies to sized variants without a sizes config)
8093
8020
  paddingPreset: buttonPaddingPresetSchema.optional(),
8094
8021
  hoverTransform: hoverTransformSchema,
8095
8022
  hoverColor: hoverColorSchema,
8096
8023
  // When hoverColor is 'token', this specifies which token to use
8097
- hoverColorToken: z9.string().optional(),
8024
+ hoverColorToken: z8.string().optional(),
8098
8025
  // Gradient settings (if any variant uses gradients)
8099
8026
  gradientStyle: gradientStyleSchema.optional(),
8100
- gradientAngle: z9.number().min(0).max(360).optional(),
8027
+ gradientAngle: z8.number().min(0).max(360).optional(),
8101
8028
  gradientSharpness: gradientSharpnessSchema.optional()
8102
8029
  });
8103
- var gradientDirectionSchema = z9.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8104
- var buttonBackgroundSchema = z9.discriminatedUnion("type", [
8105
- z9.object({ type: z9.literal("solid"), colorToken: z9.string() }),
8106
- z9.object({
8107
- type: z9.literal("gradient"),
8108
- stops: z9.array(z9.string()).min(2),
8030
+ var gradientDirectionSchema = z8.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8031
+ var buttonBackgroundSchema = z8.discriminatedUnion("type", [
8032
+ z8.object({ type: z8.literal("solid"), colorToken: z8.string() }),
8033
+ z8.object({
8034
+ type: z8.literal("gradient"),
8035
+ stops: z8.array(z8.string()).min(2),
8109
8036
  direction: gradientDirectionSchema
8110
8037
  }),
8111
- z9.object({ type: z9.literal("transparent") })
8038
+ z8.object({ type: z8.literal("transparent") })
8112
8039
  ]);
8113
- var effectApplicationSchema = z9.object({
8114
- effectId: z9.string(),
8115
- options: z9.record(z9.string(), z9.any()).optional()
8116
- });
8117
- var buttonBorderSchema = z9.object({
8118
- widthClass: z9.string(),
8119
- colorToken: z9.string()
8120
- });
8121
- var variantShadowSchema = z9.object({
8122
- elevation: z9.enum(["none", "low", "medium", "high"]),
8123
- softness: z9.enum(["crisp", "soft", "hard"]).nullable(),
8124
- position: z9.enum(["bottom", "bottom-right"]).default("bottom")
8125
- });
8126
- var variantEffectsSchema = z9.object({
8127
- base: z9.array(effectApplicationSchema).optional(),
8128
- hover: z9.array(effectApplicationSchema).optional(),
8129
- active: z9.array(effectApplicationSchema).optional(),
8130
- focus: z9.array(effectApplicationSchema).optional()
8131
- });
8132
- var variantSizeOverridesSchema = z9.object({
8040
+ var effectApplicationSchema = z8.object({
8041
+ effectId: z8.string(),
8042
+ options: z8.record(z8.string(), z8.any()).optional()
8043
+ });
8044
+ var buttonBorderSchema = z8.object({
8045
+ widthClass: z8.string(),
8046
+ colorToken: z8.string()
8047
+ });
8048
+ var variantShadowSchema = z8.object({
8049
+ elevation: z8.enum(["none", "low", "medium", "high"]),
8050
+ softness: z8.enum(["crisp", "soft", "hard"]).nullable(),
8051
+ position: z8.enum(["bottom", "bottom-right"]).default("bottom")
8052
+ });
8053
+ var variantEffectsSchema = z8.object({
8054
+ base: z8.array(effectApplicationSchema).optional(),
8055
+ hover: z8.array(effectApplicationSchema).optional(),
8056
+ active: z8.array(effectApplicationSchema).optional(),
8057
+ focus: z8.array(effectApplicationSchema).optional()
8058
+ });
8059
+ var variantSizeOverridesSchema = z8.object({
8133
8060
  sm: buttonSizeConfigSchema.optional(),
8134
8061
  md: buttonSizeConfigSchema.optional(),
8135
8062
  lg: buttonSizeConfigSchema.optional(),
8136
8063
  xl: buttonSizeConfigSchema.optional()
8137
8064
  });
8138
- var buttonVariantSchema = z9.object({
8139
- id: z9.string(),
8140
- name: z9.string().min(1).max(20),
8141
- enabled: z9.boolean(),
8065
+ var buttonVariantSchema = z8.object({
8066
+ id: z8.string(),
8067
+ name: z8.string().min(1).max(20),
8068
+ enabled: z8.boolean(),
8142
8069
  priority: prioritySchema,
8143
8070
  // Base appearance (token-based)
8144
8071
  background: buttonBackgroundSchema,
8145
- textColorToken: z9.string(),
8072
+ textColorToken: z8.string(),
8146
8073
  /** Tailwind radius token (e.g. `'rounded-md'`). Omit to inherit from `global.cornerStyle`. */
8147
- borderRadius: z9.string().optional(),
8074
+ borderRadius: z8.string().optional(),
8148
8075
  // Optional shadow override (uses theme.shadow if not specified)
8149
8076
  shadow: variantShadowSchema.optional(),
8150
8077
  // Border (optional)
8151
8078
  border: buttonBorderSchema.optional(),
8152
8079
  // Hover background token (per-variant override, takes precedence over global hoverColorToken)
8153
- hoverBackgroundToken: z9.string().optional(),
8080
+ hoverBackgroundToken: z8.string().optional(),
8154
8081
  // Effect composition
8155
8082
  effects: variantEffectsSchema.optional(),
8156
8083
  // Per-variant size overrides — see VariantSizeOverrides
8157
8084
  sizes: variantSizeOverridesSchema.optional()
8158
8085
  });
8159
- var buttonSystemSchema = z9.object({
8086
+ var buttonSystemSchema = z8.object({
8160
8087
  global: buttonGlobalSettingsSchema,
8161
- variants: z9.array(buttonVariantSchema).min(1).max(6),
8088
+ variants: z8.array(buttonVariantSchema).min(1).max(6),
8162
8089
  sizes: buttonSizesSchema.optional()
8163
8090
  });
8164
8091
 
8165
8092
  // ../theme-core/src/site-styles/styleTags.ts
8166
- import { z as z10 } from "zod";
8093
+ import { z as z9 } from "zod";
8167
8094
  var STYLE_AXIS_VALUES = {
8168
8095
  tone: ["minimal", "classic", "bold"],
8169
8096
  energy: ["calm", "vibrant"],
8170
8097
  motion: ["subtle", "standard", "expressive"],
8171
8098
  era: ["editorial", "modern", "organic", "technical", "retro"]
8172
8099
  };
8173
- var styleTagsSchema = z10.object({
8174
- tone: z10.enum(STYLE_AXIS_VALUES.tone).optional(),
8175
- energy: z10.enum(STYLE_AXIS_VALUES.energy).optional(),
8176
- motion: z10.enum(STYLE_AXIS_VALUES.motion).optional(),
8177
- era: z10.enum(STYLE_AXIS_VALUES.era).optional()
8100
+ var styleTagsSchema = z9.object({
8101
+ tone: z9.enum(STYLE_AXIS_VALUES.tone).optional(),
8102
+ energy: z9.enum(STYLE_AXIS_VALUES.energy).optional(),
8103
+ motion: z9.enum(STYLE_AXIS_VALUES.motion).optional(),
8104
+ era: z9.enum(STYLE_AXIS_VALUES.era).optional()
8178
8105
  });
8179
8106
 
8180
8107
  // ../theme-core/src/buttons/personalities/types.ts
@@ -8184,11 +8111,11 @@ function asButtonPersonalityId(value) {
8184
8111
  }
8185
8112
  return value;
8186
8113
  }
8187
- var buttonPersonalityIdSchema = z11.string().min(1).transform((value) => asButtonPersonalityId(value));
8188
- var buttonPersonalitySchema = z11.object({
8114
+ var buttonPersonalityIdSchema = z10.string().min(1).transform((value) => asButtonPersonalityId(value));
8115
+ var buttonPersonalitySchema = z10.object({
8189
8116
  id: buttonPersonalityIdSchema,
8190
- name: z11.string().min(1),
8191
- description: z11.string().min(1),
8117
+ name: z10.string().min(1),
8118
+ description: z10.string().min(1),
8192
8119
  tags: styleTagsSchema,
8193
8120
  buttonSystem: buttonSystemSchema
8194
8121
  });
@@ -8727,51 +8654,51 @@ var personalitiesById = new Map(
8727
8654
  );
8728
8655
 
8729
8656
  // ../theme-core/src/palette/variants/types.ts
8730
- import { z as z23 } from "zod";
8657
+ import { z as z22 } from "zod";
8731
8658
 
8732
8659
  // ../theme-core/src/schema.ts
8733
- import { z as z22 } from "zod";
8660
+ import { z as z21 } from "zod";
8734
8661
 
8735
8662
  // ../theme-core/src/lib/media.ts
8736
- import z12 from "zod";
8737
- var hotspotSchema = z12.object({
8738
- x: z12.number().min(0).max(1),
8739
- y: z12.number().min(0).max(1),
8740
- radius: z12.number().optional()
8741
- });
8742
- var rotationSchema = z12.union([z12.literal(0), z12.literal(90), z12.literal(180), z12.literal(270)]);
8743
- var rectSchema = z12.tuple([z12.number(), z12.number(), z12.number(), z12.number()]);
8744
- var aspectCropSchema = z12.object({
8745
- aspect: z12.preprocess((value) => value == null ? void 0 : value, z12.string().optional()),
8746
- rect: z12.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8747
- hotspot: z12.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8748
- rotation: z12.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8749
- });
8750
- var transformSchema = z12.object({
8751
- aspectCrops: z12.preprocess((value) => {
8663
+ import z11 from "zod";
8664
+ var hotspotSchema = z11.object({
8665
+ x: z11.number().min(0).max(1),
8666
+ y: z11.number().min(0).max(1),
8667
+ radius: z11.number().optional()
8668
+ });
8669
+ var rotationSchema = z11.union([z11.literal(0), z11.literal(90), z11.literal(180), z11.literal(270)]);
8670
+ var rectSchema = z11.tuple([z11.number(), z11.number(), z11.number(), z11.number()]);
8671
+ var aspectCropSchema = z11.object({
8672
+ aspect: z11.preprocess((value) => value == null ? void 0 : value, z11.string().optional()),
8673
+ rect: z11.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8674
+ hotspot: z11.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8675
+ rotation: z11.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8676
+ });
8677
+ var transformSchema = z11.object({
8678
+ aspectCrops: z11.preprocess((value) => {
8752
8679
  if (!value || typeof value !== "object" || Array.isArray(value)) {
8753
8680
  return void 0;
8754
8681
  }
8755
8682
  return value;
8756
- }, z12.record(z12.string(), aspectCropSchema.catch({}))).optional(),
8683
+ }, z11.record(z11.string(), aspectCropSchema.catch({}))).optional(),
8757
8684
  rect: rectSchema.optional(),
8758
8685
  hotspot: hotspotSchema.optional(),
8759
8686
  rotation: rotationSchema.optional()
8760
8687
  });
8761
- var mediaSchema = z12.object({
8762
- type: z12.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8763
- purpose: z12.string().optional(),
8764
- placeholder: z12.boolean().default(true).optional(),
8765
- assetId: z12.string().optional(),
8766
- identifier: z12.string().optional(),
8767
- src: z12.string().optional(),
8768
- alt: z12.string().optional(),
8769
- filename: z12.string().optional(),
8770
- mimeType: z12.string().optional(),
8771
- width: z12.number().optional(),
8772
- height: z12.number().optional(),
8773
- storageBucket: z12.string().optional(),
8774
- storagePath: z12.string().optional(),
8688
+ var mediaSchema = z11.object({
8689
+ type: z11.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8690
+ purpose: z11.string().optional(),
8691
+ placeholder: z11.boolean().default(true).optional(),
8692
+ assetId: z11.string().optional(),
8693
+ identifier: z11.string().optional(),
8694
+ src: z11.string().optional(),
8695
+ alt: z11.string().optional(),
8696
+ filename: z11.string().optional(),
8697
+ mimeType: z11.string().optional(),
8698
+ width: z11.number().optional(),
8699
+ height: z11.number().optional(),
8700
+ storageBucket: z11.string().optional(),
8701
+ storagePath: z11.string().optional(),
8775
8702
  transform: transformSchema.optional()
8776
8703
  });
8777
8704
 
@@ -8779,48 +8706,48 @@ var mediaSchema = z12.object({
8779
8706
  var BUTTON_SIZE_NAMES = buttonSizeNameSchema.options;
8780
8707
 
8781
8708
  // ../theme-core/src/cards/types.ts
8782
- import { z as z13 } from "zod";
8783
- var cardSpacingSchema = z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8784
- var gradientDirectionSchema2 = z13.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8785
- var cardBackgroundSchema = z13.discriminatedUnion("type", [
8786
- z13.object({ type: z13.literal("solid"), colorToken: z13.string() }),
8787
- z13.object({
8788
- type: z13.literal("gradient"),
8789
- fromToken: z13.string(),
8790
- toToken: z13.string(),
8709
+ import { z as z12 } from "zod";
8710
+ var cardSpacingSchema = z12.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8711
+ var gradientDirectionSchema2 = z12.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8712
+ var cardBackgroundSchema = z12.discriminatedUnion("type", [
8713
+ z12.object({ type: z12.literal("solid"), colorToken: z12.string() }),
8714
+ z12.object({
8715
+ type: z12.literal("gradient"),
8716
+ fromToken: z12.string(),
8717
+ toToken: z12.string(),
8791
8718
  direction: gradientDirectionSchema2
8792
8719
  }),
8793
- z13.object({ type: z13.literal("transparent") })
8720
+ z12.object({ type: z12.literal("transparent") })
8794
8721
  ]);
8795
- var cardBorderSchema = z13.object({
8796
- widthClass: z13.string(),
8797
- colorToken: z13.string()
8798
- });
8799
- var cardVariantSchema = z13.object({
8800
- id: z13.string(),
8801
- name: z13.string().min(1).max(20),
8802
- enabled: z13.boolean(),
8803
- priority: z13.union([z13.literal(1), z13.literal(2), z13.literal(3)]),
8722
+ var cardBorderSchema = z12.object({
8723
+ widthClass: z12.string(),
8724
+ colorToken: z12.string()
8725
+ });
8726
+ var cardVariantSchema = z12.object({
8727
+ id: z12.string(),
8728
+ name: z12.string().min(1).max(20),
8729
+ enabled: z12.boolean(),
8730
+ priority: z12.union([z12.literal(1), z12.literal(2), z12.literal(3)]),
8804
8731
  // Appearance (token-based)
8805
8732
  background: cardBackgroundSchema,
8806
8733
  spacing: cardSpacingSchema,
8807
8734
  // Optional overrides (uses theme defaults if not specified)
8808
- shadow: z13.object({
8809
- elevation: z13.enum(["none", "low", "medium", "high"]),
8810
- softness: z13.enum(["crisp", "soft", "hard"]).nullable(),
8811
- position: z13.enum(["bottom", "bottom-right"]).default("bottom")
8735
+ shadow: z12.object({
8736
+ elevation: z12.enum(["none", "low", "medium", "high"]),
8737
+ softness: z12.enum(["crisp", "soft", "hard"]).nullable(),
8738
+ position: z12.enum(["bottom", "bottom-right"]).default("bottom")
8812
8739
  }).optional(),
8813
- corners: z13.enum(["square", "soft", "rounded", "pill"]).optional(),
8740
+ corners: z12.enum(["square", "soft", "rounded", "pill"]).optional(),
8814
8741
  // Border (optional)
8815
8742
  border: cardBorderSchema.optional()
8816
8743
  });
8817
- var cardSystemSchema = z13.object({
8818
- variants: z13.array(cardVariantSchema).min(1).max(3)
8744
+ var cardSystemSchema = z12.object({
8745
+ variants: z12.array(cardVariantSchema).min(1).max(3)
8819
8746
  });
8820
8747
 
8821
8748
  // ../theme-core/src/accordions/types.ts
8822
- import { z as z14 } from "zod";
8823
- var accordionIconSchema = z14.enum([
8749
+ import { z as z13 } from "zod";
8750
+ var accordionIconSchema = z13.enum([
8824
8751
  "plus-minus",
8825
8752
  // + becomes - (swap or rotate 90°)
8826
8753
  "chevron",
@@ -8832,180 +8759,180 @@ var accordionIconSchema = z14.enum([
8832
8759
  "circle-plus-minus"
8833
8760
  // ⊕ becomes ⊖ (swap with fade)
8834
8761
  ]);
8835
- var accordionSystemSchema = z14.object({
8762
+ var accordionSystemSchema = z13.object({
8836
8763
  // Visual styling (solid color only - gradients can be added later if needed)
8837
- background: z14.object({
8838
- type: z14.literal("solid"),
8839
- colorToken: z14.string()
8764
+ background: z13.object({
8765
+ type: z13.literal("solid"),
8766
+ colorToken: z13.string()
8840
8767
  }),
8841
8768
  // Spacing (padding inside items)
8842
- spacing: z14.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8769
+ spacing: z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8843
8770
  // Border radius (null = inherit from theme.corners)
8844
- corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8771
+ corners: z13.enum(["square", "soft", "rounded", "pill"]).nullable(),
8845
8772
  // Border styling (null = inherit from theme.border)
8846
- border: z14.object({
8847
- widthClass: z14.string(),
8773
+ border: z13.object({
8774
+ widthClass: z13.string(),
8848
8775
  // e.g., 'border', 'border-2', 'border-0'
8849
- colorToken: z14.string()
8776
+ colorToken: z13.string()
8850
8777
  }).nullable(),
8851
8778
  // Shadow (null = inherit from theme.shadow)
8852
- shadow: z14.object({
8853
- elevation: z14.enum(["none", "low", "medium", "high"]),
8854
- softness: z14.enum(["soft", "crisp", "hard"]).nullable(),
8855
- position: z14.enum(["bottom", "bottom-right"])
8779
+ shadow: z13.object({
8780
+ elevation: z13.enum(["none", "low", "medium", "high"]),
8781
+ softness: z13.enum(["soft", "crisp", "hard"]).nullable(),
8782
+ position: z13.enum(["bottom", "bottom-right"])
8856
8783
  }).nullable(),
8857
8784
  // Icon style and animation
8858
- icon: z14.object({
8785
+ icon: z13.object({
8859
8786
  style: accordionIconSchema,
8860
- position: z14.enum(["left", "right"]),
8861
- size: z14.enum(["sm", "md", "lg"])
8787
+ position: z13.enum(["left", "right"]),
8788
+ size: z13.enum(["sm", "md", "lg"])
8862
8789
  }),
8863
8790
  // Trigger (question) styling
8864
- trigger: z14.object({
8865
- textColorToken: z14.string(),
8866
- fontWeight: z14.enum(["regular", "medium", "semibold", "bold"]).nullable()
8791
+ trigger: z13.object({
8792
+ textColorToken: z13.string(),
8793
+ fontWeight: z13.enum(["regular", "medium", "semibold", "bold"]).nullable()
8867
8794
  // null = inherit from theme
8868
8795
  }),
8869
8796
  // Hover state styling
8870
- hover: z14.object({
8871
- backgroundColorToken: z14.string().optional(),
8872
- textColorToken: z14.string().optional(),
8873
- borderColorToken: z14.string().optional()
8797
+ hover: z13.object({
8798
+ backgroundColorToken: z13.string().optional(),
8799
+ textColorToken: z13.string().optional(),
8800
+ borderColorToken: z13.string().optional()
8874
8801
  }),
8875
8802
  // Content (answer) styling
8876
- content: z14.object({
8877
- textColorToken: z14.string()
8803
+ content: z13.object({
8804
+ textColorToken: z13.string()
8878
8805
  })
8879
8806
  });
8880
8807
 
8881
8808
  // ../theme-core/src/inputs/types.ts
8882
- import { z as z15 } from "zod";
8883
- var inputSystemSchema = z15.object({
8809
+ import { z as z14 } from "zod";
8810
+ var inputSystemSchema = z14.object({
8884
8811
  // Base styling (applied to all inputs)
8885
- base: z15.object({
8886
- background: z15.union([
8887
- z15.object({
8888
- type: z15.literal("solid"),
8889
- colorToken: z15.string()
8812
+ base: z14.object({
8813
+ background: z14.union([
8814
+ z14.object({
8815
+ type: z14.literal("solid"),
8816
+ colorToken: z14.string()
8890
8817
  }),
8891
- z15.object({
8892
- type: z15.literal("transparent")
8818
+ z14.object({
8819
+ type: z14.literal("transparent")
8893
8820
  })
8894
8821
  ]),
8895
- textColorToken: z15.string(),
8896
- border: z15.object({
8897
- widthClass: z15.string(),
8822
+ textColorToken: z14.string(),
8823
+ border: z14.object({
8824
+ widthClass: z14.string(),
8898
8825
  // e.g., 'border', 'border-2'
8899
- colorToken: z15.string(),
8900
- style: z15.enum(["all", "underline"]).optional()
8826
+ colorToken: z14.string(),
8827
+ style: z14.enum(["all", "underline"]).optional()
8901
8828
  }),
8902
- corners: z15.enum(["square", "soft", "rounded", "pill"]).nullable(),
8829
+ corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8903
8830
  // null = inherit from theme.corners
8904
- shadow: z15.object({
8905
- elevation: z15.enum(["none", "low", "medium"]),
8906
- softness: z15.enum(["soft", "crisp", "hard"]).nullable()
8831
+ shadow: z14.object({
8832
+ elevation: z14.enum(["none", "low", "medium"]),
8833
+ softness: z14.enum(["soft", "crisp", "hard"]).nullable()
8907
8834
  }).nullable(),
8908
- spacing: z15.enum(["compact", "cozy", "medium", "comfortable"]),
8835
+ spacing: z14.enum(["compact", "cozy", "medium", "comfortable"]),
8909
8836
  // padding inside inputs
8910
- fontSize: z15.enum(["sm", "base", "lg"])
8837
+ fontSize: z14.enum(["sm", "base", "lg"])
8911
8838
  }),
8912
8839
  // Label styling
8913
- label: z15.object({
8914
- textColorToken: z15.string(),
8915
- fontWeight: z15.enum(["regular", "medium", "semibold", "bold", "black"]),
8916
- fontSize: z15.enum(["2xs", "xs", "sm", "base"]),
8917
- textTransform: z15.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8918
- letterSpacing: z15.enum(["normal", "wide", "wider", "widest"]).optional(),
8919
- opacity: z15.number().min(0.2).max(1).optional()
8840
+ label: z14.object({
8841
+ textColorToken: z14.string(),
8842
+ fontWeight: z14.enum(["regular", "medium", "semibold", "bold", "black"]),
8843
+ fontSize: z14.enum(["2xs", "xs", "sm", "base"]),
8844
+ textTransform: z14.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8845
+ letterSpacing: z14.enum(["normal", "wide", "wider", "widest"]).optional(),
8846
+ opacity: z14.number().min(0.2).max(1).optional()
8920
8847
  }),
8921
8848
  // Focus state
8922
- focus: z15.object({
8923
- ringColorToken: z15.string(),
8924
- ringWidth: z15.enum(["0", "1", "2", "3"]),
8925
- borderColorToken: z15.string().optional()
8849
+ focus: z14.object({
8850
+ ringColorToken: z14.string(),
8851
+ ringWidth: z14.enum(["0", "1", "2", "3"]),
8852
+ borderColorToken: z14.string().optional()
8926
8853
  // Change border color on focus
8927
8854
  }),
8928
8855
  // Error state (for validation feedback)
8929
- error: z15.object({
8930
- borderColorToken: z15.string(),
8931
- textColorToken: z15.string()
8856
+ error: z14.object({
8857
+ borderColorToken: z14.string(),
8858
+ textColorToken: z14.string()
8932
8859
  }),
8933
8860
  // Disabled state
8934
- disabled: z15.object({
8935
- backgroundColorToken: z15.string(),
8936
- textColorToken: z15.string(),
8937
- opacity: z15.number().min(0.3).max(0.7)
8861
+ disabled: z14.object({
8862
+ backgroundColorToken: z14.string(),
8863
+ textColorToken: z14.string(),
8864
+ opacity: z14.number().min(0.3).max(0.7)
8938
8865
  })
8939
8866
  });
8940
8867
 
8941
8868
  // ../theme-core/src/gradients/types.ts
8942
- import { z as z16 } from "zod";
8943
- var gradientStopSchema = z16.object({
8944
- color: z16.string(),
8869
+ import { z as z15 } from "zod";
8870
+ var gradientStopSchema = z15.object({
8871
+ color: z15.string(),
8945
8872
  // Theme color token name (e.g., 'primary-500')
8946
- position: z16.number().min(0).max(100)
8873
+ position: z15.number().min(0).max(100)
8947
8874
  // Percentage 0-100
8948
8875
  });
8949
- var gradientConfigSchema = z16.object({
8950
- type: z16.enum(["linear", "radial"]),
8951
- angle: z16.number().min(0).max(360).optional(),
8876
+ var gradientConfigSchema = z15.object({
8877
+ type: z15.enum(["linear", "radial"]),
8878
+ angle: z15.number().min(0).max(360).optional(),
8952
8879
  // For linear gradients (degrees)
8953
- position: z16.string().optional(),
8880
+ position: z15.string().optional(),
8954
8881
  // For radial gradients ('center', 'top left', etc.)
8955
- stops: z16.array(gradientStopSchema).min(2)
8882
+ stops: z15.array(gradientStopSchema).min(2)
8956
8883
  });
8957
8884
 
8958
8885
  // ../theme-core/src/navigation/types.ts
8959
- import { z as z18 } from "zod";
8886
+ import { z as z17 } from "zod";
8960
8887
 
8961
8888
  // ../theme-core/src/interactive/baseSchema.ts
8962
- import { z as z17 } from "zod";
8963
- var interactiveTypographySchema = z17.object({
8889
+ import { z as z16 } from "zod";
8890
+ var interactiveTypographySchema = z16.object({
8964
8891
  /** Font family source */
8965
- typography: z17.enum(["body", "heading"]).default("body"),
8892
+ typography: z16.enum(["body", "heading"]).default("body"),
8966
8893
  /** Font weight */
8967
- fontWeight: z17.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8894
+ fontWeight: z16.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8968
8895
  /** Text transform */
8969
- textTransform: z17.enum(["none", "uppercase", "capitalize"]).default("none"),
8896
+ textTransform: z16.enum(["none", "uppercase", "capitalize"]).default("none"),
8970
8897
  /** Italic style */
8971
- italic: z17.boolean().default(false)
8898
+ italic: z16.boolean().default(false)
8972
8899
  });
8973
- var effectApplicationSchema2 = z17.object({
8900
+ var effectApplicationSchema2 = z16.object({
8974
8901
  /** Effect preset ID */
8975
- effectId: z17.string(),
8902
+ effectId: z16.string(),
8976
8903
  /** User-provided customization options */
8977
- options: z17.record(z17.string(), z17.any()).optional()
8904
+ options: z16.record(z16.string(), z16.any()).optional()
8978
8905
  });
8979
- var effectCompositionSchema = z17.object({
8906
+ var effectCompositionSchema = z16.object({
8980
8907
  /** Effects always applied */
8981
- base: z17.array(effectApplicationSchema2).optional(),
8908
+ base: z16.array(effectApplicationSchema2).optional(),
8982
8909
  /** Effects applied on hover */
8983
- hover: z17.array(effectApplicationSchema2).optional(),
8910
+ hover: z16.array(effectApplicationSchema2).optional(),
8984
8911
  /** Effects applied on active/pressed */
8985
- active: z17.array(effectApplicationSchema2).optional(),
8912
+ active: z16.array(effectApplicationSchema2).optional(),
8986
8913
  /** Effects applied on focus */
8987
- focus: z17.array(effectApplicationSchema2).optional()
8914
+ focus: z16.array(effectApplicationSchema2).optional()
8988
8915
  });
8989
8916
 
8990
8917
  // ../theme-core/src/navigation/types.ts
8991
- var navLinkPaddingSchema = z18.enum(["none", "compact", "default"]);
8992
- var navLinkPaddingXSchema = z18.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8993
- var navLinkBorderRadiusSchema = z18.enum(["none", "sm", "md", "full"]);
8994
- var navLinkTextSizeSchema = z18.enum(["xs", "sm", "base", "lg"]);
8995
- var navLinkLetterSpacingSchema = z18.enum(["normal", "wide", "wider", "widest"]);
8996
- var navLinkStyleSchema = z18.object({
8918
+ var navLinkPaddingSchema = z17.enum(["none", "compact", "default"]);
8919
+ var navLinkPaddingXSchema = z17.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8920
+ var navLinkBorderRadiusSchema = z17.enum(["none", "sm", "md", "full"]);
8921
+ var navLinkTextSizeSchema = z17.enum(["xs", "sm", "base", "lg"]);
8922
+ var navLinkLetterSpacingSchema = z17.enum(["normal", "wide", "wider", "widest"]);
8923
+ var navLinkStyleSchema = z17.object({
8997
8924
  /** Display name for the style */
8998
- name: z18.string().min(1).max(30).optional(),
8925
+ name: z17.string().min(1).max(30).optional(),
8999
8926
  /** Typography settings (inherited from interactive base) */
9000
8927
  ...interactiveTypographySchema.shape,
9001
8928
  /** Text color token */
9002
- colorToken: z18.string().default("text"),
8929
+ colorToken: z17.string().default("text"),
9003
8930
  /** Optional text size override */
9004
8931
  textSize: navLinkTextSizeSchema.optional(),
9005
8932
  /** Optional letter spacing override */
9006
8933
  letterSpacing: navLinkLetterSpacingSchema.optional(),
9007
8934
  /** Hover/active color token (for color-change effects) */
9008
- hoverColorToken: z18.string().nullable().optional(),
8935
+ hoverColorToken: z17.string().nullable().optional(),
9009
8936
  /** Padding preset */
9010
8937
  padding: navLinkPaddingSchema.default("compact"),
9011
8938
  /** Horizontal padding override (overrides horizontal component of padding preset) */
@@ -9017,7 +8944,7 @@ var navLinkStyleSchema = z18.object({
9017
8944
  });
9018
8945
 
9019
8946
  // ../theme-core/src/customCss/validation.ts
9020
- import { z as z19 } from "zod";
8947
+ import { z as z18 } from "zod";
9021
8948
  var FORBIDDEN_SELECTORS = [":root", "html", "body"];
9022
8949
  var UNIVERSAL_SELECTOR = "*";
9023
8950
  var REMOTE_URL_PATTERN = /url\s*\(\s*['"]?(https?:|\/\/)/i;
@@ -9059,7 +8986,7 @@ function containsForbiddenSelector(selector) {
9059
8986
  }
9060
8987
  return false;
9061
8988
  }
9062
- var selectorSchema = z19.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
8989
+ var selectorSchema = z18.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
9063
8990
  (s) => !containsForbiddenSelector(s),
9064
8991
  { message: "Global selectors (:root, html, body, *) are not allowed" }
9065
8992
  );
@@ -9069,38 +8996,38 @@ function containsRemoteUrl(value) {
9069
8996
  function containsJavascriptUrl(value) {
9070
8997
  return JAVASCRIPT_URL_PATTERN.test(value);
9071
8998
  }
9072
- var declarationValueSchema = z19.string().max(500, "Declaration value too long (max 500 characters)").refine(
8999
+ var declarationValueSchema = z18.string().max(500, "Declaration value too long (max 500 characters)").refine(
9073
9000
  (v) => !containsRemoteUrl(v),
9074
9001
  { message: "Remote url() references are not allowed. Use local paths, data URIs, or fragment IDs." }
9075
9002
  ).refine(
9076
9003
  (v) => !containsJavascriptUrl(v),
9077
9004
  { message: "javascript: URLs are not allowed" }
9078
9005
  );
9079
- var declarationsSchema = z19.record(
9080
- z19.string().min(1).max(100),
9006
+ var declarationsSchema = z18.record(
9007
+ z18.string().min(1).max(100),
9081
9008
  // property name
9082
9009
  declarationValueSchema
9083
9010
  // property value
9084
9011
  );
9085
- var customCssRuleSchema = z19.object({
9086
- id: z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
9012
+ var customCssRuleSchema = z18.object({
9013
+ id: z18.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
9087
9014
  selector: selectorSchema,
9088
9015
  declarations: declarationsSchema
9089
9016
  });
9090
9017
  var blockCustomCssRuleSchema = customCssRuleSchema.extend({
9091
- blockKind: z19.string().min(1, "Block kind is required").max(50, "Block kind too long")
9018
+ blockKind: z18.string().min(1, "Block kind is required").max(50, "Block kind too long")
9092
9019
  });
9093
- var customCssRulesSchema = z19.array(customCssRuleSchema).optional();
9094
- var blockCustomCssRulesSchema = z19.array(blockCustomCssRuleSchema).optional();
9020
+ var customCssRulesSchema = z18.array(customCssRuleSchema).optional();
9021
+ var blockCustomCssRulesSchema = z18.array(blockCustomCssRuleSchema).optional();
9095
9022
 
9096
9023
  // ../theme-core/src/customCss/atRuleValidation.ts
9097
- import { z as z20 } from "zod";
9024
+ import { z as z19 } from "zod";
9098
9025
  var KEYFRAME_OFFSET_PATTERN = /^(from|to|\d{1,3}%)$/i;
9099
9026
  var ANIMATION_NAME_PATTERN = /^[a-zA-Z_-][a-zA-Z0-9_-]*$/;
9100
9027
  var BLOCKED_AT_RULES = ["@import", "@charset"];
9101
9028
  var BLOCKED_AT_RULE_PATTERN = /@(?:import|charset)\b/i;
9102
- var ruleIdSchema = z20.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
9103
- var nestedRuleSchema = z20.object({
9029
+ var ruleIdSchema = z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
9030
+ var nestedRuleSchema = z19.object({
9104
9031
  selector: selectorSchema,
9105
9032
  declarations: declarationsSchema
9106
9033
  });
@@ -9112,146 +9039,146 @@ function isValidKeyframeOffset(offset) {
9112
9039
  const value = parseInt(match[1], 10);
9113
9040
  return value >= 0 && value <= 100;
9114
9041
  }
9115
- var keyframeOffsetSchema = z20.string().transform((offset) => offset.trim()).refine(
9042
+ var keyframeOffsetSchema = z19.string().transform((offset) => offset.trim()).refine(
9116
9043
  (offset) => KEYFRAME_OFFSET_PATTERN.test(offset),
9117
9044
  { message: 'Invalid keyframe offset. Use percentages (0%, 50%, 100%) or "from"/"to"' }
9118
9045
  ).refine(
9119
9046
  isValidKeyframeOffset,
9120
9047
  { message: "Keyframe offset must be between 0% and 100%" }
9121
9048
  );
9122
- var animationNameSchema = z20.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
9049
+ var animationNameSchema = z19.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
9123
9050
  (name) => ANIMATION_NAME_PATTERN.test(name),
9124
9051
  { message: "Invalid animation name. Use letters, numbers, dashes, underscores (start with letter, dash, or underscore)" }
9125
9052
  );
9126
- var keyframeSchema = z20.object({
9053
+ var keyframeSchema = z19.object({
9127
9054
  offset: keyframeOffsetSchema,
9128
9055
  declarations: declarationsSchema
9129
9056
  });
9130
- var keyframesAtRuleSchema = z20.object({
9057
+ var keyframesAtRuleSchema = z19.object({
9131
9058
  id: ruleIdSchema,
9132
- type: z20.literal("keyframes"),
9059
+ type: z19.literal("keyframes"),
9133
9060
  name: animationNameSchema,
9134
- frames: z20.array(keyframeSchema).min(1, "At least one keyframe is required")
9061
+ frames: z19.array(keyframeSchema).min(1, "At least one keyframe is required")
9135
9062
  });
9136
- var fontFaceDeclarationsSchema = z20.record(z20.string().min(1).max(100), declarationValueSchema).refine(
9063
+ var fontFaceDeclarationsSchema = z19.record(z19.string().min(1).max(100), declarationValueSchema).refine(
9137
9064
  (decls) => "fontFamily" in decls || "font-family" in decls,
9138
9065
  { message: "font-family is required in @font-face" }
9139
9066
  );
9140
- var fontFaceAtRuleSchema = z20.object({
9067
+ var fontFaceAtRuleSchema = z19.object({
9141
9068
  id: ruleIdSchema,
9142
- type: z20.literal("font-face"),
9069
+ type: z19.literal("font-face"),
9143
9070
  declarations: fontFaceDeclarationsSchema
9144
9071
  });
9145
- var mediaQuerySchema = z20.string().min(1, "Media query is required").max(200, "Media query too long");
9146
- var mediaAtRuleSchema = z20.object({
9072
+ var mediaQuerySchema = z19.string().min(1, "Media query is required").max(200, "Media query too long");
9073
+ var mediaAtRuleSchema = z19.object({
9147
9074
  id: ruleIdSchema,
9148
- type: z20.literal("media"),
9075
+ type: z19.literal("media"),
9149
9076
  query: mediaQuerySchema,
9150
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
9077
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
9151
9078
  });
9152
- var supportsConditionSchema = z20.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
9153
- var supportsAtRuleSchema = z20.object({
9079
+ var supportsConditionSchema = z19.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
9080
+ var supportsAtRuleSchema = z19.object({
9154
9081
  id: ruleIdSchema,
9155
- type: z20.literal("supports"),
9082
+ type: z19.literal("supports"),
9156
9083
  condition: supportsConditionSchema,
9157
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
9084
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
9158
9085
  });
9159
9086
  function containsBlockedAtRule(css) {
9160
9087
  return BLOCKED_AT_RULE_PATTERN.test(css);
9161
9088
  }
9162
- var rawCssSchema = z20.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
9089
+ var rawCssSchema = z19.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
9163
9090
  (css) => css.trim().startsWith("@"),
9164
9091
  { message: "Raw at-rule must start with @" }
9165
9092
  ).refine(
9166
9093
  (css) => !containsBlockedAtRule(css),
9167
9094
  { message: `Blocked at-rules: ${BLOCKED_AT_RULES.join(", ")}. Use typed at-rules or local assets instead.` }
9168
9095
  );
9169
- var rawAtRuleSchema = z20.object({
9096
+ var rawAtRuleSchema = z19.object({
9170
9097
  id: ruleIdSchema,
9171
- type: z20.literal("raw"),
9098
+ type: z19.literal("raw"),
9172
9099
  css: rawCssSchema
9173
9100
  });
9174
- var customCssAtRuleSchema = z20.discriminatedUnion("type", [
9101
+ var customCssAtRuleSchema = z19.discriminatedUnion("type", [
9175
9102
  keyframesAtRuleSchema,
9176
9103
  fontFaceAtRuleSchema,
9177
9104
  mediaAtRuleSchema,
9178
9105
  supportsAtRuleSchema,
9179
9106
  rawAtRuleSchema
9180
9107
  ]);
9181
- var customCssAtRulesSchema = z20.array(customCssAtRuleSchema).optional();
9108
+ var customCssAtRulesSchema = z19.array(customCssAtRuleSchema).optional();
9182
9109
 
9183
9110
  // ../theme-core/src/shared/componentStyles.ts
9184
- import { z as z21 } from "zod";
9185
- var componentBorderSchema = z21.object({
9186
- width: z21.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
9187
- style: z21.enum(["solid", "dashed"]).default("solid"),
9188
- colorToken: z21.string().optional()
9111
+ import { z as z20 } from "zod";
9112
+ var componentBorderSchema = z20.object({
9113
+ width: z20.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
9114
+ style: z20.enum(["solid", "dashed"]).default("solid"),
9115
+ colorToken: z20.string().optional()
9189
9116
  // defaults to "border" if not set
9190
9117
  });
9191
- var componentShadowSchema = z21.object({
9192
- elevation: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
9118
+ var componentShadowSchema = z20.object({
9119
+ elevation: z20.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
9193
9120
  });
9194
9121
 
9195
9122
  // ../theme-core/src/schema.ts
9196
- var axesSchema = z22.object({
9197
- tone: z22.enum(["minimal", "classic", "bold"]),
9198
- energy: z22.enum(["calm", "vibrant"]),
9199
- density: z22.enum(["airy", "regular", "compact"]),
9200
- mediaBias: z22.enum(["text", "media", "mixed"]),
9201
- conversionBias: z22.enum(["low", "med", "high"]),
9202
- motion: z22.enum(["subtle", "standard", "expressive"])
9203
- });
9204
- var colourHexString = z22.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
9205
- var paletteColorSchema = z22.object({
9206
- name: z22.string().min(1),
9123
+ var axesSchema = z21.object({
9124
+ tone: z21.enum(["minimal", "classic", "bold"]),
9125
+ energy: z21.enum(["calm", "vibrant"]),
9126
+ density: z21.enum(["airy", "regular", "compact"]),
9127
+ mediaBias: z21.enum(["text", "media", "mixed"]),
9128
+ conversionBias: z21.enum(["low", "med", "high"]),
9129
+ motion: z21.enum(["subtle", "standard", "expressive"])
9130
+ });
9131
+ var colourHexString = z21.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
9132
+ var paletteColorSchema = z21.object({
9133
+ name: z21.string().min(1),
9207
9134
  hex: colourHexString
9208
9135
  });
9209
- var paletteMetaSchema = z22.object({
9210
- mode: z22.enum(["light", "dark"])
9136
+ var paletteMetaSchema = z21.object({
9137
+ mode: z21.enum(["light", "dark"])
9211
9138
  });
9212
- var paletteSchema = z22.object({
9213
- colors: z22.array(paletteColorSchema),
9139
+ var paletteSchema = z21.object({
9140
+ colors: z21.array(paletteColorSchema),
9214
9141
  meta: paletteMetaSchema
9215
9142
  });
9216
- var typographyStyleSchema = z22.object({
9217
- family: z22.string().min(1),
9218
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]),
9219
- letterSpacing: z22.enum(["tight", "normal", "loose"]),
9220
- lineHeight: z22.enum(["normal", "relaxed", "loose"])
9143
+ var typographyStyleSchema = z21.object({
9144
+ family: z21.string().min(1),
9145
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]),
9146
+ letterSpacing: z21.enum(["tight", "normal", "loose"]),
9147
+ lineHeight: z21.enum(["normal", "relaxed", "loose"])
9221
9148
  });
9222
9149
  var bodyTypographyStyleSchema = typographyStyleSchema.extend({
9223
- size: z22.enum(["md", "lg", "xl"])
9150
+ size: z21.enum(["md", "lg", "xl"])
9224
9151
  });
9225
- var headingSizeSchema = z22.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
9226
- var headingTypographyOverridesSchema = z22.object({
9227
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
9228
- letterSpacing: z22.enum(["tight", "normal", "loose"]).nullable().optional(),
9152
+ var headingSizeSchema = z21.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
9153
+ var headingTypographyOverridesSchema = z21.object({
9154
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
9155
+ letterSpacing: z21.enum(["tight", "normal", "loose"]).nullable().optional(),
9229
9156
  size: headingSizeSchema.nullable().optional(),
9230
- lineHeight: z22.enum(["normal", "relaxed", "loose"]).nullable().optional(),
9231
- italic: z22.boolean().nullable().optional(),
9232
- colorToken: z22.string().min(1).nullable().optional()
9157
+ lineHeight: z21.enum(["normal", "relaxed", "loose"]).nullable().optional(),
9158
+ italic: z21.boolean().nullable().optional(),
9159
+ colorToken: z21.string().min(1).nullable().optional()
9233
9160
  // Palette token name for heading color
9234
9161
  });
9235
9162
  var headingTypographyStyleSchema = typographyStyleSchema.extend({
9236
- case: z22.enum(["uppercase", "normal", "smallCaps"]).nullable(),
9237
- italic: z22.boolean().nullable(),
9238
- colorToken: z22.string().min(1).nullable().optional()
9163
+ case: z21.enum(["uppercase", "normal", "smallCaps"]).nullable(),
9164
+ italic: z21.boolean().nullable(),
9165
+ colorToken: z21.string().min(1).nullable().optional()
9239
9166
  // Palette token name for heading color
9240
9167
  });
9241
- var proseLinkUnderlineStyleSchema = z22.enum(["solid", "dotted", "dashed"]);
9242
- var proseLinkUnderlineThicknessSchema = z22.enum(["auto", "fromFont", "thin", "medium", "thick"]);
9243
- var proseLinkUnderlineOffsetSchema = z22.enum(["auto", "tight", "normal", "loose"]);
9244
- var proseLinkStyleSchema = z22.object({
9245
- colorToken: z22.string().min(1).optional(),
9246
- hoverColorToken: z22.string().min(1).optional(),
9247
- underline: z22.boolean().optional(),
9248
- decorationColorToken: z22.string().min(1).optional(),
9249
- hoverDecorationColorToken: z22.string().min(1).optional(),
9168
+ var proseLinkUnderlineStyleSchema = z21.enum(["solid", "dotted", "dashed"]);
9169
+ var proseLinkUnderlineThicknessSchema = z21.enum(["auto", "fromFont", "thin", "medium", "thick"]);
9170
+ var proseLinkUnderlineOffsetSchema = z21.enum(["auto", "tight", "normal", "loose"]);
9171
+ var proseLinkStyleSchema = z21.object({
9172
+ colorToken: z21.string().min(1).optional(),
9173
+ hoverColorToken: z21.string().min(1).optional(),
9174
+ underline: z21.boolean().optional(),
9175
+ decorationColorToken: z21.string().min(1).optional(),
9176
+ hoverDecorationColorToken: z21.string().min(1).optional(),
9250
9177
  underlineStyle: proseLinkUnderlineStyleSchema.optional(),
9251
9178
  underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
9252
9179
  underlineOffset: proseLinkUnderlineOffsetSchema.optional()
9253
9180
  });
9254
- var semanticSpacingSchema = z22.enum([
9181
+ var semanticSpacingSchema = z21.enum([
9255
9182
  "none",
9256
9183
  "compact",
9257
9184
  "cozy",
@@ -9259,62 +9186,62 @@ var semanticSpacingSchema = z22.enum([
9259
9186
  "comfortable",
9260
9187
  "spacious"
9261
9188
  ]);
9262
- var boxRoundedSchema = z22.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
9263
- var boxBackgroundOverlaySchema = z22.object({
9264
- type: z22.enum(["none", "color", "gradient"]).nullable().optional(),
9265
- color: z22.string().nullable().optional(),
9266
- gradient: z22.string().nullable().optional(),
9267
- opacity: z22.number().min(0).max(1).nullable().optional()
9268
- });
9269
- var boxBackgroundSchema = z22.object({
9270
- type: z22.enum(["color", "gradient", "image"]).optional(),
9271
- color: z22.string().nullable().optional(),
9272
- gradient: z22.string().nullable().optional(),
9189
+ var boxRoundedSchema = z21.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
9190
+ var boxBackgroundOverlaySchema = z21.object({
9191
+ type: z21.enum(["none", "color", "gradient"]).nullable().optional(),
9192
+ color: z21.string().nullable().optional(),
9193
+ gradient: z21.string().nullable().optional(),
9194
+ opacity: z21.number().min(0).max(1).nullable().optional()
9195
+ });
9196
+ var boxBackgroundSchema = z21.object({
9197
+ type: z21.enum(["color", "gradient", "image"]).optional(),
9198
+ color: z21.string().nullable().optional(),
9199
+ gradient: z21.string().nullable().optional(),
9273
9200
  image: mediaSchema.nullable().optional(),
9274
- objectFit: z22.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9275
- scale: z22.string().nullable().optional(),
9276
- position: z22.string().nullable().optional(),
9277
- opacity: z22.number().min(0).max(1).nullable().optional(),
9201
+ objectFit: z21.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9202
+ scale: z21.string().nullable().optional(),
9203
+ position: z21.string().nullable().optional(),
9204
+ opacity: z21.number().min(0).max(1).nullable().optional(),
9278
9205
  overlay: boxBackgroundOverlaySchema.nullable().optional(),
9279
- textColor: z22.string().nullable().optional(),
9280
- headingColor: z22.string().nullable().optional()
9206
+ textColor: z21.string().nullable().optional(),
9207
+ headingColor: z21.string().nullable().optional()
9281
9208
  });
9282
- var sectionStylesOverrideSchema = z22.object({
9209
+ var sectionStylesOverrideSchema = z21.object({
9283
9210
  background: boxBackgroundSchema.nullable().optional(),
9284
9211
  spacing: semanticSpacingSchema.nullable().optional(),
9285
- minHeight: z22.enum(["none", "hero", "immersive"]).nullable().optional()
9212
+ minHeight: z21.enum(["none", "hero", "immersive"]).nullable().optional()
9286
9213
  });
9287
- var containerStylesOverrideSchema = z22.object({
9214
+ var containerStylesOverrideSchema = z21.object({
9288
9215
  background: boxBackgroundSchema.nullable().optional(),
9289
9216
  spacing: semanticSpacingSchema.nullable().optional(),
9290
- raised: z22.boolean().nullable().optional(),
9217
+ raised: z21.boolean().nullable().optional(),
9291
9218
  rounded: boxRoundedSchema.nullable().optional(),
9292
- fullWidth: z22.boolean().nullable().optional()
9219
+ fullWidth: z21.boolean().nullable().optional()
9293
9220
  });
9294
- var cardBorderOverrideSchema = z22.object({
9295
- enabled: z22.boolean().nullable().optional(),
9296
- width: z22.enum(["none", "1", "2", "3"]).nullable().optional(),
9297
- colorToken: z22.string().nullable().optional()
9221
+ var cardBorderOverrideSchema = z21.object({
9222
+ enabled: z21.boolean().nullable().optional(),
9223
+ width: z21.enum(["none", "1", "2", "3"]).nullable().optional(),
9224
+ colorToken: z21.string().nullable().optional()
9298
9225
  });
9299
- var cardStylesOverrideSchema = z22.object({
9226
+ var cardStylesOverrideSchema = z21.object({
9300
9227
  background: boxBackgroundSchema.nullable().optional(),
9301
9228
  border: cardBorderOverrideSchema.nullable().optional(),
9302
9229
  spacing: semanticSpacingSchema.nullable().optional(),
9303
- raised: z22.boolean().nullable().optional(),
9230
+ raised: z21.boolean().nullable().optional(),
9304
9231
  rounded: boxRoundedSchema.nullable().optional()
9305
9232
  });
9306
- var blockStyleOverridesSchema = z22.object({
9233
+ var blockStyleOverridesSchema = z21.object({
9307
9234
  sectionStyles: sectionStylesOverrideSchema.nullable().optional(),
9308
9235
  containerStyles: containerStylesOverrideSchema.nullable().optional(),
9309
9236
  cardStyles: cardStylesOverrideSchema.nullable().optional()
9310
9237
  });
9311
- var blockThemeOverrideSchema = z22.object({
9312
- typography: z22.object({
9238
+ var blockThemeOverrideSchema = z21.object({
9239
+ typography: z21.object({
9313
9240
  proseLinkStyle: proseLinkStyleSchema.optional()
9314
9241
  }).optional(),
9315
9242
  styles: blockStyleOverridesSchema.optional()
9316
9243
  });
9317
- var typographyScaleSchema = z22.enum([
9244
+ var typographyScaleSchema = z21.enum([
9318
9245
  // New intuitive names
9319
9246
  "compact",
9320
9247
  // ratio 1.2 (was minorThird)
@@ -9327,9 +9254,9 @@ var typographyScaleSchema = z22.enum([
9327
9254
  "majorThird",
9328
9255
  "perfectFourth"
9329
9256
  ]);
9330
- var typographySchema = z22.object({
9257
+ var typographySchema = z21.object({
9331
9258
  body: bodyTypographyStyleSchema,
9332
- headings: z22.object({
9259
+ headings: z21.object({
9333
9260
  default: headingTypographyStyleSchema,
9334
9261
  h1: headingTypographyOverridesSchema,
9335
9262
  h2: headingTypographyOverridesSchema,
@@ -9342,41 +9269,41 @@ var typographySchema = z22.object({
9342
9269
  scale: typographyScaleSchema,
9343
9270
  proseLinkStyle: proseLinkStyleSchema.optional()
9344
9271
  });
9345
- var spaceSchema = z22.enum(["comfortable", "standard", "dense"]);
9346
- var corners = z22.enum(["square", "soft", "rounded", "pill"]);
9347
- var shadow = z22.object({
9348
- elevation: z22.enum(["none", "low", "medium", "high"]),
9349
- softness: z22.enum(["crisp", "soft", "hard"]).nullable(),
9350
- position: z22.enum(["bottom", "bottom-right"]).default("bottom")
9272
+ var spaceSchema = z21.enum(["comfortable", "standard", "dense"]);
9273
+ var corners = z21.enum(["square", "soft", "rounded", "pill"]);
9274
+ var shadow = z21.object({
9275
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9276
+ softness: z21.enum(["crisp", "soft", "hard"]).nullable(),
9277
+ position: z21.enum(["bottom", "bottom-right"]).default("bottom")
9351
9278
  });
9352
- var border = z22.object({
9353
- width: z22.enum(["none", "hairline", "thin", "thick"]),
9354
- style: z22.enum(["solid", "dashed"])
9279
+ var border = z21.object({
9280
+ width: z21.enum(["none", "hairline", "thin", "thick"]),
9281
+ style: z21.enum(["solid", "dashed"])
9355
9282
  });
9356
- var motion = z22.object({
9357
- level: z22.enum(["off", "low", "medium", "high"]),
9358
- easing: z22.enum(["standard", "snappy", "gentle"]).nullable()
9283
+ var motion = z21.object({
9284
+ level: z21.enum(["off", "low", "medium", "high"]),
9285
+ easing: z21.enum(["standard", "snappy", "gentle"]).nullable()
9359
9286
  });
9360
- var buttonStyle = z22.object({
9287
+ var buttonStyle = z21.object({
9361
9288
  shape: corners
9362
9289
  // Used for --radius-control CSS variable
9363
9290
  });
9364
- var cardStyle = z22.object({
9365
- elevation: z22.enum(["none", "low", "medium", "high"]),
9366
- border: z22.enum(["none", "subtle", "defined"]),
9291
+ var cardStyle = z21.object({
9292
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9293
+ border: z21.enum(["none", "subtle", "defined"]),
9367
9294
  shape: corners,
9368
- headerStyle: z22.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9369
- mediaTreatment: z22.enum(["square", "rounded", "bleed"]).nullable()
9295
+ headerStyle: z21.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9296
+ mediaTreatment: z21.enum(["square", "rounded", "bleed"]).nullable()
9370
9297
  });
9371
- var inputStyle = z22.object({
9298
+ var inputStyle = z21.object({
9372
9299
  shape: corners,
9373
- border: z22.enum(["subtle", "defined", "underline"]),
9374
- focus: z22.enum(["glow", "ring", "underline"]),
9375
- label: z22.enum(["inside", "above"])
9300
+ border: z21.enum(["subtle", "defined", "underline"]),
9301
+ focus: z21.enum(["glow", "ring", "underline"]),
9302
+ label: z21.enum(["inside", "above"])
9376
9303
  });
9377
- var headerVariant = z22.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9378
- var headerPositioning = z22.enum(["static", "sticky", "fixed"]);
9379
- var headerNavStyle = z22.enum([
9304
+ var headerVariant = z21.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9305
+ var headerPositioning = z21.enum(["static", "sticky", "fixed"]);
9306
+ var headerNavStyle = z21.enum([
9380
9307
  "minimal",
9381
9308
  "underline",
9382
9309
  "underline-grow",
@@ -9385,82 +9312,82 @@ var headerNavStyle = z22.enum([
9385
9312
  "frosted",
9386
9313
  "solid"
9387
9314
  ]);
9388
- var navFontWeight = z22.enum(["regular", "medium", "semibold", "bold"]);
9389
- var headerMaxWidth = z22.enum(["container", "full"]);
9390
- var headerContainerSchema = z22.object({
9391
- rounded: z22.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9392
- border: z22.boolean().default(true),
9393
- shadow: z22.boolean().default(true),
9394
- padding: z22.enum(["sm", "md", "lg"]).default("md"),
9395
- tint: z22.string().nullable().optional(),
9396
- opacity: z22.number().min(0).max(1).default(0.12)
9315
+ var navFontWeight = z21.enum(["regular", "medium", "semibold", "bold"]);
9316
+ var headerMaxWidth = z21.enum(["container", "full"]);
9317
+ var headerContainerSchema = z21.object({
9318
+ rounded: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9319
+ border: z21.boolean().default(true),
9320
+ shadow: z21.boolean().default(true),
9321
+ padding: z21.enum(["sm", "md", "lg"]).default("md"),
9322
+ tint: z21.string().nullable().optional(),
9323
+ opacity: z21.number().min(0).max(1).default(0.12)
9397
9324
  }).optional();
9398
9325
  var headerBorderSchema = componentBorderSchema.extend({
9399
- position: z22.enum(["bottom", "top", "both", "none"]).default("bottom")
9326
+ position: z21.enum(["bottom", "top", "both", "none"]).default("bottom")
9400
9327
  }).optional();
9401
- var logoStyleSchema = z22.object({
9402
- fontFamily: z22.enum(["heading", "body"]).default("heading"),
9403
- letterSpacing: z22.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9404
- gradient: z22.boolean().default(false)
9328
+ var logoStyleSchema = z21.object({
9329
+ fontFamily: z21.enum(["heading", "body"]).default("heading"),
9330
+ letterSpacing: z21.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9331
+ gradient: z21.boolean().default(false)
9405
9332
  }).optional();
9406
- var headerLogoTextSchema = z22.object({
9407
- mobileWrapLines: z22.union([z22.literal(1), z22.literal(2)]).optional(),
9408
- mobileMaxWidth: z22.enum(["xs", "sm", "md"]).optional(),
9409
- hideOnShrink: z22.boolean().optional()
9333
+ var headerLogoTextSchema = z21.object({
9334
+ mobileWrapLines: z21.union([z21.literal(1), z21.literal(2)]).optional(),
9335
+ mobileMaxWidth: z21.enum(["xs", "sm", "md"]).optional(),
9336
+ hideOnShrink: z21.boolean().optional()
9410
9337
  }).optional();
9411
- var navEffectsSchema = z22.object({
9412
- underlineGradient: z22.boolean().default(false),
9413
- glow: z22.boolean().default(false),
9414
- glowColor: z22.string().optional(),
9415
- neumorphic: z22.boolean().default(false)
9338
+ var navEffectsSchema = z21.object({
9339
+ underlineGradient: z21.boolean().default(false),
9340
+ glow: z21.boolean().default(false),
9341
+ glowColor: z21.string().optional(),
9342
+ neumorphic: z21.boolean().default(false)
9416
9343
  }).optional();
9417
- var dropdownStyleSchema = z22.object({
9344
+ var dropdownStyleSchema = z21.object({
9418
9345
  // Container styling
9419
- background: z22.string().default("surface"),
9346
+ background: z21.string().default("surface"),
9420
9347
  // color token
9421
- textColor: z22.string().default("text"),
9348
+ textColor: z21.string().default("text"),
9422
9349
  // color token
9423
- borderColor: z22.string().nullable().default("border"),
9350
+ borderColor: z21.string().nullable().default("border"),
9424
9351
  // null = no border
9425
- shadow: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9426
- borderRadius: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9352
+ shadow: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9353
+ borderRadius: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9427
9354
  // Link hover states (explicit control)
9428
- hoverBackground: z22.string().nullable().optional(),
9355
+ hoverBackground: z21.string().nullable().optional(),
9429
9356
  // color token, null = transparent
9430
- hoverTextColor: z22.string().nullable().optional(),
9357
+ hoverTextColor: z21.string().nullable().optional(),
9431
9358
  // color token, null = inherit
9432
9359
  // Typography
9433
- textTransform: z22.enum(["none", "uppercase", "capitalize"]).default("none"),
9434
- letterSpacing: z22.enum(["normal", "wide", "wider"]).default("normal"),
9435
- fontWeight: z22.enum(["regular", "medium", "semibold", "bold"]).optional(),
9360
+ textTransform: z21.enum(["none", "uppercase", "capitalize"]).default("none"),
9361
+ letterSpacing: z21.enum(["normal", "wide", "wider"]).default("normal"),
9362
+ fontWeight: z21.enum(["regular", "medium", "semibold", "bold"]).optional(),
9436
9363
  // optional = inherit from navWeight
9437
- textSize: z22.enum(["xs", "sm", "base", "lg"]).optional()
9364
+ textSize: z21.enum(["xs", "sm", "base", "lg"]).optional()
9438
9365
  // optional = no override (browser default)
9439
9366
  }).optional();
9440
- var headerCtaGapSchema = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9441
- var navContainerSchema = z22.object({
9442
- type: z22.enum(["none", "pill", "glass"]).default("none"),
9443
- tint: z22.string().nullable().optional(),
9444
- opacity: z22.number().min(0).max(1).default(0.15)
9367
+ var headerCtaGapSchema = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9368
+ var navContainerSchema = z21.object({
9369
+ type: z21.enum(["none", "pill", "glass"]).default("none"),
9370
+ tint: z21.string().nullable().optional(),
9371
+ opacity: z21.number().min(0).max(1).default(0.15)
9445
9372
  }).default({ type: "none", tint: null, opacity: 0.15 });
9446
- var headerBackgroundSchema = z22.object({
9447
- type: z22.enum(["color", "gradient", "image"]),
9448
- color: z22.string().nullable().optional(),
9373
+ var headerBackgroundSchema = z21.object({
9374
+ type: z21.enum(["color", "gradient", "image"]),
9375
+ color: z21.string().nullable().optional(),
9449
9376
  gradient: gradientConfigSchema.nullable().optional(),
9450
9377
  image: mediaSchema.nullable().optional(),
9451
- textColor: z22.string().nullable().optional()
9378
+ textColor: z21.string().nullable().optional()
9452
9379
  });
9453
- var headerSchema = z22.object({
9380
+ var headerSchema = z21.object({
9454
9381
  variant: headerVariant,
9455
9382
  positioning: headerPositioning,
9456
- shrinkOnScroll: z22.boolean(),
9383
+ shrinkOnScroll: z21.boolean(),
9457
9384
  maxWidth: headerMaxWidth,
9458
9385
  logoOverride: mediaSchema.nullable().optional(),
9459
9386
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9460
- textColor: z22.string().nullable().optional(),
9387
+ textColor: z21.string().nullable().optional(),
9461
9388
  // Site title and general header text
9462
9389
  navStyle: headerNavStyle,
9463
- navColor: z22.string().nullable().optional(),
9390
+ navColor: z21.string().nullable().optional(),
9464
9391
  // Nav links (inherits textColor if not set)
9465
9392
  navWeight: navFontWeight.default("medium"),
9466
9393
  // New fields for header system enhancement
@@ -9479,50 +9406,50 @@ var headerSchema = z22.object({
9479
9406
  // Dropdown menu styling (nav dropdowns and mobile drawer)
9480
9407
  dropdownStyle: dropdownStyleSchema
9481
9408
  });
9482
- var footerVariant = z22.enum(["simple", "columns", "split"]);
9483
- var footerMaxWidth = z22.enum(["container", "full"]);
9484
- var footerMode = z22.enum(["default", "blocks", "default+blocks", "none"]);
9485
- var footerNavLayoutMode = z22.enum(["stack", "inline", "inline-wrap"]);
9486
- var footerNavLayoutAlign = z22.enum(["start", "center", "end", "space-between"]);
9487
- var footerSpacing = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9488
- var footerLogoPlacement = z22.enum(["left", "right", "above", "below"]);
9489
- var footerLogoSize = z22.enum(["sm", "md", "lg", "xl"]);
9490
- var footerLogoMaxHeight = z22.enum(["sm", "md", "lg", "xl"]);
9491
- var footerBottomTextLinkStyleSchema = z22.object({
9492
- colorToken: z22.string().optional(),
9493
- hoverColorToken: z22.string().nullable().optional(),
9494
- decorationColorToken: z22.string().nullable().optional(),
9495
- underline: z22.boolean().optional()
9496
- });
9497
- var footerBottomBarSchema = z22.object({
9498
- enabled: z22.boolean().optional(),
9499
- fullBleed: z22.boolean().optional(),
9409
+ var footerVariant = z21.enum(["simple", "columns", "split"]);
9410
+ var footerMaxWidth = z21.enum(["container", "full"]);
9411
+ var footerMode = z21.enum(["default", "blocks", "default+blocks", "none"]);
9412
+ var footerNavLayoutMode = z21.enum(["stack", "inline", "inline-wrap"]);
9413
+ var footerNavLayoutAlign = z21.enum(["start", "center", "end", "space-between"]);
9414
+ var footerSpacing = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9415
+ var footerLogoPlacement = z21.enum(["left", "right", "above", "below"]);
9416
+ var footerLogoSize = z21.enum(["sm", "md", "lg", "xl"]);
9417
+ var footerLogoMaxHeight = z21.enum(["sm", "md", "lg", "xl"]);
9418
+ var footerBottomTextLinkStyleSchema = z21.object({
9419
+ colorToken: z21.string().optional(),
9420
+ hoverColorToken: z21.string().nullable().optional(),
9421
+ decorationColorToken: z21.string().nullable().optional(),
9422
+ underline: z21.boolean().optional()
9423
+ });
9424
+ var footerBottomBarSchema = z21.object({
9425
+ enabled: z21.boolean().optional(),
9426
+ fullBleed: z21.boolean().optional(),
9500
9427
  background: headerBackgroundSchema.optional(),
9501
- textColor: z22.string().nullable().optional(),
9502
- textAlign: z22.enum(["left", "center", "right"]).optional(),
9428
+ textColor: z21.string().nullable().optional(),
9429
+ textAlign: z21.enum(["left", "center", "right"]).optional(),
9503
9430
  paddingY: footerSpacing.optional(),
9504
9431
  paddingX: footerSpacing.optional(),
9505
- borderTop: z22.object({
9506
- colorToken: z22.string().nullable().optional(),
9507
- width: z22.enum(["none", "thin", "medium", "thick"]).optional()
9432
+ borderTop: z21.object({
9433
+ colorToken: z21.string().nullable().optional(),
9434
+ width: z21.enum(["none", "thin", "medium", "thick"]).optional()
9508
9435
  }).optional()
9509
9436
  });
9510
- var footerNavLayoutSchema = z22.object({
9437
+ var footerNavLayoutSchema = z21.object({
9511
9438
  layout: footerNavLayoutMode.optional(),
9512
9439
  align: footerNavLayoutAlign.optional(),
9513
9440
  gapX: footerSpacing.optional(),
9514
9441
  gapY: footerSpacing.optional(),
9515
- columns: z22.number().int().min(1).max(6).optional()
9442
+ columns: z21.number().int().min(1).max(6).optional()
9516
9443
  });
9517
- var footerLogoSchema = z22.object({
9518
- showLogo: z22.boolean().default(true),
9519
- showLogoText: z22.boolean().optional(),
9444
+ var footerLogoSchema = z21.object({
9445
+ showLogo: z21.boolean().default(true),
9446
+ showLogoText: z21.boolean().optional(),
9520
9447
  placement: footerLogoPlacement.optional(),
9521
9448
  size: footerLogoSize.optional(),
9522
9449
  maxHeight: footerLogoMaxHeight.optional(),
9523
- align: z22.enum(["start", "center", "end"]).optional()
9450
+ align: z21.enum(["start", "center", "end"]).optional()
9524
9451
  });
9525
- var footerSchema = z22.object({
9452
+ var footerSchema = z21.object({
9526
9453
  /**
9527
9454
  * SDK-only footer rendering mode.
9528
9455
  *
@@ -9531,11 +9458,11 @@ var footerSchema = z22.object({
9531
9458
  mode: footerMode.optional(),
9532
9459
  variant: footerVariant,
9533
9460
  maxWidth: footerMaxWidth,
9534
- showLogoText: z22.boolean().optional(),
9461
+ showLogoText: z21.boolean().optional(),
9535
9462
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9536
9463
  // Footer nav styling (independent from header)
9537
9464
  navStyle: headerNavStyle.default("minimal"),
9538
- navColor: z22.string().nullable().optional(),
9465
+ navColor: z21.string().nullable().optional(),
9539
9466
  navWeight: navFontWeight.default("medium"),
9540
9467
  // Full nav link customization (overrides navStyle if set)
9541
9468
  navLinkStyle: navLinkStyleSchema.optional(),
@@ -9546,15 +9473,15 @@ var footerSchema = z22.object({
9546
9473
  logo: footerLogoSchema.optional(),
9547
9474
  bottomBar: footerBottomBarSchema.optional()
9548
9475
  });
9549
- var containerPaddingPresetSchema = z22.enum(["tight", "compact", "default", "relaxed"]);
9550
- var layoutSchema = z22.object({
9551
- containerPadding: z22.object({
9476
+ var containerPaddingPresetSchema = z21.enum(["tight", "compact", "default", "relaxed"]);
9477
+ var layoutSchema = z21.object({
9478
+ containerPadding: z21.object({
9552
9479
  mobile: containerPaddingPresetSchema.optional(),
9553
9480
  tablet: containerPaddingPresetSchema.optional(),
9554
9481
  desktop: containerPaddingPresetSchema.optional()
9555
9482
  }).optional()
9556
9483
  }).optional();
9557
- var heroTypographySizeSchema = z22.enum([
9484
+ var heroTypographySizeSchema = z21.enum([
9558
9485
  "sm",
9559
9486
  "base",
9560
9487
  "lg",
@@ -9565,14 +9492,14 @@ var heroTypographySizeSchema = z22.enum([
9565
9492
  "5xl",
9566
9493
  "6xl"
9567
9494
  ]);
9568
- var heroTypographyLineHeightSchema = z22.enum(["tight", "snug", "normal", "relaxed"]);
9569
- var heroResponsiveTypographySchema = z22.object({
9495
+ var heroTypographyLineHeightSchema = z21.enum(["tight", "snug", "normal", "relaxed"]);
9496
+ var heroResponsiveTypographySchema = z21.object({
9570
9497
  headlineSize: heroTypographySizeSchema.optional(),
9571
9498
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9572
9499
  subheadlineSize: heroTypographySizeSchema.optional(),
9573
9500
  subheadlineLineHeight: heroTypographyLineHeightSchema.optional()
9574
9501
  });
9575
- var heroTypographySchema = z22.object({
9502
+ var heroTypographySchema = z21.object({
9576
9503
  headlineSize: heroTypographySizeSchema.optional(),
9577
9504
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9578
9505
  subheadlineSize: heroTypographySizeSchema.optional(),
@@ -9581,24 +9508,24 @@ var heroTypographySchema = z22.object({
9581
9508
  microHeadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9582
9509
  microSubheadlineSize: heroTypographySizeSchema.optional(),
9583
9510
  microSubheadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9584
- responsive: z22.object({
9511
+ responsive: z21.object({
9585
9512
  tablet: heroResponsiveTypographySchema.optional(),
9586
9513
  mobile: heroResponsiveTypographySchema.optional()
9587
9514
  }).optional()
9588
9515
  });
9589
- var heroSchema = z22.object({
9516
+ var heroSchema = z21.object({
9590
9517
  typography: heroTypographySchema.optional()
9591
9518
  }).optional();
9592
- var gradientsSchema = z22.object({
9593
- button: z22.string().min(1).nullable().optional(),
9594
- hero: z22.string().min(1).nullable().optional(),
9595
- background: z22.string().min(1).nullable().optional()
9596
- });
9597
- var themeSchema = z22.object({
9598
- name: z22.string().min(1).max(30),
9599
- description: z22.string().min(1).max(400),
9600
- rationale: z22.string().min(1).max(400),
9601
- siteStyleId: z22.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9519
+ var gradientsSchema = z21.object({
9520
+ button: z21.string().min(1).nullable().optional(),
9521
+ hero: z21.string().min(1).nullable().optional(),
9522
+ background: z21.string().min(1).nullable().optional()
9523
+ });
9524
+ var themeSchema = z21.object({
9525
+ name: z21.string().min(1).max(30),
9526
+ description: z21.string().min(1).max(400),
9527
+ rationale: z21.string().min(1).max(400),
9528
+ siteStyleId: z21.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9602
9529
  axes: axesSchema,
9603
9530
  palette: paletteSchema,
9604
9531
  typography: typographySchema,
@@ -9625,16 +9552,16 @@ var themeSchema = z22.object({
9625
9552
  // Block-specific customization (Tier 3)
9626
9553
  // blockCustomVars: Per-block CSS variable overrides as bare values
9627
9554
  // Example: { "event-registration": { "--step-color": "#6d28d9" } }
9628
- blockCustomVars: z22.record(
9629
- z22.string(),
9555
+ blockCustomVars: z21.record(
9556
+ z21.string(),
9630
9557
  // block kind (matches data-block attribute)
9631
- z22.record(z22.string(), z22.string())
9558
+ z21.record(z21.string(), z21.string())
9632
9559
  // { '--var-name': 'value' }
9633
9560
  ).optional(),
9634
9561
  // Structured block-kind theme overrides (v1: typography prose-link style only)
9635
9562
  // Keyed by block kind (usually data-block value like "hero"; "block.hero" also accepted)
9636
- blockOverrides: z22.record(
9637
- z22.string(),
9563
+ blockOverrides: z21.record(
9564
+ z21.string(),
9638
9565
  blockThemeOverrideSchema
9639
9566
  ).optional(),
9640
9567
  // Structured custom CSS rules
@@ -9670,11 +9597,11 @@ var themeSchema = z22.object({
9670
9597
  * }
9671
9598
  * ```
9672
9599
  */
9673
- styleGroups: z22.record(z22.string(), z22.array(z22.string())).optional()
9600
+ styleGroups: z21.record(z21.string(), z21.array(z21.string())).optional()
9674
9601
  });
9675
- var themesTurnSchema = z22.object({
9676
- message: z22.string().min(1),
9677
- themes: z22.array(themeSchema).length(3)
9602
+ var themesTurnSchema = z21.object({
9603
+ message: z21.string().min(1),
9604
+ themes: z21.array(themeSchema).length(3)
9678
9605
  });
9679
9606
 
9680
9607
  // ../theme-core/src/palette/variants/types.ts
@@ -9684,7 +9611,7 @@ function asPaletteVariantId(value) {
9684
9611
  }
9685
9612
  return value;
9686
9613
  }
9687
- var paletteVariantIdSchema = z23.string().min(1).transform((value) => asPaletteVariantId(value));
9614
+ var paletteVariantIdSchema = z22.string().min(1).transform((value) => asPaletteVariantId(value));
9688
9615
  var PALETTE_TOKEN_NAMES = [
9689
9616
  "primary",
9690
9617
  "primaryForeground",
@@ -9700,19 +9627,19 @@ var PALETTE_TOKEN_NAMES = [
9700
9627
  "text",
9701
9628
  "border"
9702
9629
  ];
9703
- var paletteTokenNameSchema = z23.enum(PALETTE_TOKEN_NAMES);
9630
+ var paletteTokenNameSchema = z22.enum(PALETTE_TOKEN_NAMES);
9704
9631
  var HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
9705
- var hexColorSchema = z23.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9632
+ var hexColorSchema = z22.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9706
9633
  var variantPaletteColorSchema = paletteColorSchema.extend({
9707
9634
  name: paletteTokenNameSchema
9708
9635
  });
9709
- var paletteVariantSchema = z23.object({
9636
+ var paletteVariantSchema = z22.object({
9710
9637
  id: paletteVariantIdSchema,
9711
- name: z23.string().min(1),
9712
- description: z23.string().min(1),
9638
+ name: z22.string().min(1),
9639
+ description: z22.string().min(1),
9713
9640
  tags: styleTagsSchema,
9714
- mode: z23.enum(["light", "dark"]),
9715
- colors: z23.array(variantPaletteColorSchema).min(1)
9641
+ mode: z22.enum(["light", "dark"]),
9642
+ colors: z22.array(variantPaletteColorSchema).min(1)
9716
9643
  });
9717
9644
  function definePaletteVariant(input) {
9718
9645
  return {
@@ -9724,7 +9651,7 @@ function definePaletteVariant(input) {
9724
9651
  colors: input.colors
9725
9652
  };
9726
9653
  }
9727
- var paletteOverridesSchema = z23.object({
9654
+ var paletteOverridesSchema = z22.object({
9728
9655
  primary: hexColorSchema.optional(),
9729
9656
  primaryForeground: hexColorSchema.optional(),
9730
9657
  secondary: hexColorSchema.optional(),
@@ -10401,7 +10328,7 @@ var curatedSiteStylesById = new Map(
10401
10328
  );
10402
10329
 
10403
10330
  // ../theme-core/src/site-styles/designState.ts
10404
- import { z as z24 } from "zod";
10331
+ import { z as z23 } from "zod";
10405
10332
 
10406
10333
  // ../theme-core/src/site-styles/rawStyleFields.ts
10407
10334
  var themeV2RuntimeStyleFieldNames = [
@@ -10427,13 +10354,13 @@ var themeV2NormalEditorRawStyleFieldNameSet = new Set(
10427
10354
 
10428
10355
  // ../theme-core/src/site-styles/designState.ts
10429
10356
  var themeV2DesignStateSchemaVersion = 1;
10430
- var designResolutionPolicySchema = z24.enum(["generated", "user", "admin", "sdk"]);
10431
- var runtimeStyleFieldNameSchema = z24.enum(themeV2RuntimeStyleFieldNames);
10432
- var nonEmptyRuntimeStyleFieldNamesSchema = z24.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10357
+ var designResolutionPolicySchema = z23.enum(["generated", "user", "admin", "sdk"]);
10358
+ var runtimeStyleFieldNameSchema = z23.enum(themeV2RuntimeStyleFieldNames);
10359
+ var nonEmptyRuntimeStyleFieldNamesSchema = z23.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10433
10360
  fields3[0],
10434
10361
  ...fields3.slice(1)
10435
10362
  ]);
10436
- var heroLegibilityStrategySchema = z24.enum([
10363
+ var heroLegibilityStrategySchema = z23.enum([
10437
10364
  "none",
10438
10365
  "scrim-gradient",
10439
10366
  "solid-panel"
@@ -10455,66 +10382,66 @@ var userFlushTreatments = uniqueNonEmpty(
10455
10382
  var userFlushBleeds = uniqueNonEmpty(
10456
10383
  userDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10457
10384
  );
10458
- var contentFrameIntentSchema = z24.discriminatedUnion("kind", [
10459
- z24.object({ kind: z24.literal("plain") }).strict(),
10460
- z24.object({
10461
- kind: z24.literal("panel"),
10462
- treatment: z24.enum(userPanelTreatments)
10385
+ var contentFrameIntentSchema = z23.discriminatedUnion("kind", [
10386
+ z23.object({ kind: z23.literal("plain") }).strict(),
10387
+ z23.object({
10388
+ kind: z23.literal("panel"),
10389
+ treatment: z23.enum(userPanelTreatments)
10463
10390
  }).strict(),
10464
- z24.object({
10465
- kind: z24.literal("flush-panel"),
10466
- treatment: z24.enum(userFlushTreatments),
10467
- bleed: z24.enum(userFlushBleeds)
10391
+ z23.object({
10392
+ kind: z23.literal("flush-panel"),
10393
+ treatment: z23.enum(userFlushTreatments),
10394
+ bleed: z23.enum(userFlushBleeds)
10468
10395
  }).strict()
10469
10396
  ]);
10470
- var blockDesignPlanSchema = z24.object({
10471
- blockId: z24.string().min(1).transform(asDesignBlockId),
10472
- blockKind: z24.string().min(1),
10473
- purpose: z24.string().min(1),
10474
- sectionSurface: z24.enum(userDesignOptionCatalog.sectionSurfaces),
10397
+ var blockDesignPlanSchema = z23.object({
10398
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10399
+ blockKind: z23.string().min(1),
10400
+ purpose: z23.string().min(1),
10401
+ sectionSurface: z23.enum(userDesignOptionCatalog.sectionSurfaces),
10475
10402
  contentFrame: contentFrameIntentSchema,
10476
- itemSurface: z24.enum(userDesignOptionCatalog.itemSurfaces),
10477
- transitionAfter: z24.enum(userDesignOptionCatalog.transitions),
10478
- emphasis: z24.enum(userDesignOptionCatalog.emphases),
10403
+ itemSurface: z23.enum(userDesignOptionCatalog.itemSurfaces),
10404
+ transitionAfter: z23.enum(userDesignOptionCatalog.transitions),
10405
+ emphasis: z23.enum(userDesignOptionCatalog.emphases),
10479
10406
  heroLegibility: heroLegibilityStrategySchema.optional()
10480
10407
  }).strict();
10481
- var styleAuthoritySchema = z24.discriminatedUnion("kind", [
10482
- z24.object({
10483
- kind: z24.literal("theme-v2"),
10408
+ var styleAuthoritySchema = z23.discriminatedUnion("kind", [
10409
+ z23.object({
10410
+ kind: z23.literal("theme-v2"),
10484
10411
  source: designResolutionPolicySchema,
10485
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10486
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10487
- templateVersion: z24.number().int().nonnegative(),
10488
- resolverVersion: z24.number().int().nonnegative()
10412
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10413
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10414
+ templateVersion: z23.number().int().nonnegative(),
10415
+ resolverVersion: z23.number().int().nonnegative()
10489
10416
  }).strict(),
10490
- z24.object({
10491
- kind: z24.literal("legacy-raw"),
10492
- reason: z24.enum(["pre-theme-v2", "manual-runtime-fields"])
10417
+ z23.object({
10418
+ kind: z23.literal("legacy-raw"),
10419
+ reason: z23.enum(["pre-theme-v2", "manual-runtime-fields"])
10493
10420
  }).strict(),
10494
- z24.object({
10495
- kind: z24.literal("advanced-detached"),
10496
- reason: z24.literal("detached-custom-runtime-fields")
10421
+ z23.object({
10422
+ kind: z23.literal("advanced-detached"),
10423
+ reason: z23.literal("detached-custom-runtime-fields")
10497
10424
  }).strict()
10498
10425
  ]);
10499
- var blockRuntimeStyleAuthoritySchema = z24.object({
10500
- unit: z24.literal("block-runtime-fields"),
10501
- blockId: z24.string().min(1).transform(asDesignBlockId),
10426
+ var blockRuntimeStyleAuthoritySchema = z23.object({
10427
+ unit: z23.literal("block-runtime-fields"),
10428
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10502
10429
  fields: nonEmptyRuntimeStyleFieldNamesSchema,
10503
10430
  authority: styleAuthoritySchema
10504
10431
  }).strict();
10505
- var persistedPageDesignStateV1Schema = z24.object({
10506
- schemaVersion: z24.literal(themeV2DesignStateSchemaVersion),
10507
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10508
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10509
- templateVersion: z24.number().int().nonnegative(),
10510
- resolverVersion: z24.number().int().nonnegative(),
10511
- rhythmPresetId: z24.string().min(1),
10512
- blocks: z24.array(blockDesignPlanSchema),
10513
- styleAuthorities: z24.array(blockRuntimeStyleAuthoritySchema)
10432
+ var persistedPageDesignStateV1Schema = z23.object({
10433
+ schemaVersion: z23.literal(themeV2DesignStateSchemaVersion),
10434
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10435
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10436
+ templateVersion: z23.number().int().nonnegative(),
10437
+ resolverVersion: z23.number().int().nonnegative(),
10438
+ rhythmPresetId: z23.string().min(1),
10439
+ blocks: z23.array(blockDesignPlanSchema),
10440
+ styleAuthorities: z23.array(blockRuntimeStyleAuthoritySchema)
10514
10441
  }).strict();
10515
10442
 
10516
10443
  // ../theme-core/src/site-styles/generatedSchemas.ts
10517
- import { z as z25 } from "zod";
10444
+ import { z as z24 } from "zod";
10518
10445
  function uniqueNonEmpty2(values) {
10519
10446
  const uniqueValues = [...new Set(values)];
10520
10447
  const firstValue = uniqueValues[0];
@@ -10532,105 +10459,105 @@ var generatedFlushTreatments = uniqueNonEmpty2(
10532
10459
  var generatedFlushBleeds = uniqueNonEmpty2(
10533
10460
  generatedDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10534
10461
  );
10535
- var generatedPanelFrameSchema = z25.object({
10536
- kind: z25.literal("panel"),
10537
- treatment: z25.enum(generatedPanelTreatments)
10462
+ var generatedPanelFrameSchema = z24.object({
10463
+ kind: z24.literal("panel"),
10464
+ treatment: z24.enum(generatedPanelTreatments)
10538
10465
  }).strict();
10539
- var generatedFlushPanelFrameSchema = z25.object({
10540
- kind: z25.literal("flush-panel"),
10541
- treatment: z25.enum(generatedFlushTreatments),
10542
- bleed: z25.enum(generatedFlushBleeds)
10466
+ var generatedFlushPanelFrameSchema = z24.object({
10467
+ kind: z24.literal("flush-panel"),
10468
+ treatment: z24.enum(generatedFlushTreatments),
10469
+ bleed: z24.enum(generatedFlushBleeds)
10543
10470
  }).strict();
10544
- var generatedContentFrameIntentSchema = z25.discriminatedUnion("kind", [
10545
- z25.object({ kind: z25.literal("plain") }).strict(),
10471
+ var generatedContentFrameIntentSchema = z24.discriminatedUnion("kind", [
10472
+ z24.object({ kind: z24.literal("plain") }).strict(),
10546
10473
  generatedPanelFrameSchema,
10547
10474
  generatedFlushPanelFrameSchema
10548
10475
  ]);
10549
- var generatedSiteStyleIdSchema = z25.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10476
+ var generatedSiteStyleIdSchema = z24.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10550
10477
  function generatedChoiceSchema(valueSchema) {
10551
- return z25.discriminatedUnion("kind", [
10552
- z25.object({
10553
- source: z25.literal("generated"),
10554
- kind: z25.literal("auto")
10478
+ return z24.discriminatedUnion("kind", [
10479
+ z24.object({
10480
+ source: z24.literal("generated"),
10481
+ kind: z24.literal("auto")
10555
10482
  }).strict(),
10556
- z25.object({
10557
- source: z25.literal("generated"),
10558
- kind: z25.literal("explicit"),
10483
+ z24.object({
10484
+ source: z24.literal("generated"),
10485
+ kind: z24.literal("explicit"),
10559
10486
  value: valueSchema
10560
10487
  }).strict()
10561
10488
  ]);
10562
10489
  }
10563
- var generatedBlockDesignIntentSchema = z25.object({
10490
+ var generatedBlockDesignIntentSchema = z24.object({
10564
10491
  sectionSurface: generatedChoiceSchema(
10565
- z25.enum(generatedDesignOptionCatalog.sectionSurfaces)
10492
+ z24.enum(generatedDesignOptionCatalog.sectionSurfaces)
10566
10493
  ),
10567
10494
  contentFrame: generatedChoiceSchema(generatedContentFrameIntentSchema),
10568
10495
  itemSurface: generatedChoiceSchema(
10569
- z25.enum(generatedDesignOptionCatalog.itemSurfaces)
10496
+ z24.enum(generatedDesignOptionCatalog.itemSurfaces)
10570
10497
  ),
10571
10498
  transitionAfter: generatedChoiceSchema(
10572
- z25.enum(generatedDesignOptionCatalog.transitions)
10499
+ z24.enum(generatedDesignOptionCatalog.transitions)
10573
10500
  ),
10574
10501
  emphasis: generatedChoiceSchema(
10575
- z25.enum(generatedDesignOptionCatalog.emphases)
10502
+ z24.enum(generatedDesignOptionCatalog.emphases)
10576
10503
  )
10577
10504
  }).strict();
10578
- var generatedMediaCompositionIntentSchema = z25.enum([
10505
+ var generatedMediaCompositionIntentSchema = z24.enum([
10579
10506
  "none",
10580
10507
  "supporting",
10581
10508
  "dominant"
10582
10509
  ]);
10583
- var generatedDecorativeCompositionIntentSchema = z25.enum([
10510
+ var generatedDecorativeCompositionIntentSchema = z24.enum([
10584
10511
  "none",
10585
10512
  "supporting"
10586
10513
  ]);
10587
- var generatedHeroLegibilityStrategySchema = z25.enum([
10514
+ var generatedHeroLegibilityStrategySchema = z24.enum([
10588
10515
  "none",
10589
10516
  "scrim-gradient"
10590
10517
  ]);
10591
- var generatedBlockMediaIntentSchema = z25.object({
10518
+ var generatedBlockMediaIntentSchema = z24.object({
10592
10519
  media: generatedMediaCompositionIntentSchema,
10593
10520
  decorative: generatedDecorativeCompositionIntentSchema,
10594
10521
  heroLegibility: generatedChoiceSchema(generatedHeroLegibilityStrategySchema)
10595
10522
  }).strict();
10596
- var generatedBoundaryIntentSchema = z25.object({
10523
+ var generatedBoundaryIntentSchema = z24.object({
10597
10524
  transitionAfter: generatedChoiceSchema(
10598
- z25.enum(generatedDesignOptionCatalog.transitions)
10525
+ z24.enum(generatedDesignOptionCatalog.transitions)
10599
10526
  )
10600
10527
  }).strict();
10601
- var generatedPageDesignBlockIntentSchema = z25.object({
10602
- blockId: z25.string().min(1),
10603
- blockKind: z25.string().min(1),
10604
- purpose: z25.string().min(1),
10528
+ var generatedPageDesignBlockIntentSchema = z24.object({
10529
+ blockId: z24.string().min(1),
10530
+ blockKind: z24.string().min(1),
10531
+ purpose: z24.string().min(1),
10605
10532
  design: generatedBlockDesignIntentSchema,
10606
10533
  mediaIntent: generatedBlockMediaIntentSchema,
10607
10534
  boundaryIntent: generatedBoundaryIntentSchema
10608
10535
  }).strict();
10609
- var generatedPageDesignIntentSchema = z25.object({
10536
+ var generatedPageDesignIntentSchema = z24.object({
10610
10537
  siteStyleId: generatedSiteStyleIdSchema,
10611
- blocks: z25.array(generatedPageDesignBlockIntentSchema)
10538
+ blocks: z24.array(generatedPageDesignBlockIntentSchema)
10612
10539
  }).strict();
10613
10540
 
10614
10541
  // ../theme-core/src/site-styles/pageDesignIntent.ts
10615
- import { z as z26 } from "zod";
10542
+ import { z as z25 } from "zod";
10616
10543
  var pageDesignIntentSchemaVersion = 1;
10617
- var pageDesignUserPinnedAppearanceChoiceSchema = z26.object({
10618
- kind: z26.literal("user-pinned"),
10619
- value: z26.string().min(1).transform(asAppearancePresetId)
10544
+ var pageDesignUserPinnedAppearanceChoiceSchema = z25.object({
10545
+ kind: z25.literal("user-pinned"),
10546
+ value: z25.string().min(1).transform(asAppearancePresetId)
10620
10547
  }).strict();
10621
- var pageDesignUserPinnedBoundaryChoiceSchema = z26.object({
10622
- kind: z26.literal("user-pinned"),
10623
- value: z26.string().min(1).transform(asBoundaryOptionId)
10548
+ var pageDesignUserPinnedBoundaryChoiceSchema = z25.object({
10549
+ kind: z25.literal("user-pinned"),
10550
+ value: z25.string().min(1).transform(asBoundaryOptionId)
10624
10551
  }).strict();
10625
- var pageDesignBlockLookPinSchema = z26.object({
10626
- blockId: z26.string().min(1).transform(asDesignBlockId),
10627
- blockKind: z26.string().min(1),
10552
+ var pageDesignBlockLookPinSchema = z25.object({
10553
+ blockId: z25.string().min(1).transform(asDesignBlockId),
10554
+ blockKind: z25.string().min(1),
10628
10555
  choice: pageDesignUserPinnedAppearanceChoiceSchema
10629
10556
  }).strict();
10630
- var pageDesignBoundaryPinSchema = z26.object({
10631
- boundaryId: z26.string().min(1).transform(asDesignBoundaryId),
10632
- previousBlockId: z26.string().min(1).transform(asDesignBlockId),
10633
- nextBlockId: z26.string().min(1).transform(asDesignBlockId),
10557
+ var pageDesignBoundaryPinSchema = z25.object({
10558
+ boundaryId: z25.string().min(1).transform(asDesignBoundaryId),
10559
+ previousBlockId: z25.string().min(1).transform(asDesignBlockId),
10560
+ nextBlockId: z25.string().min(1).transform(asDesignBlockId),
10634
10561
  choice: pageDesignUserPinnedBoundaryChoiceSchema
10635
10562
  }).strict().superRefine((pin, ctx) => {
10636
10563
  const expectedBoundaryId = makeBoundaryId(
@@ -10639,18 +10566,18 @@ var pageDesignBoundaryPinSchema = z26.object({
10639
10566
  );
10640
10567
  if (pin.boundaryId !== expectedBoundaryId) {
10641
10568
  ctx.addIssue({
10642
- code: z26.ZodIssueCode.custom,
10569
+ code: z25.ZodIssueCode.custom,
10643
10570
  path: ["boundaryId"],
10644
10571
  message: `Boundary id must match previousBlockId and nextBlockId. Expected ${expectedBoundaryId}.`
10645
10572
  });
10646
10573
  }
10647
10574
  });
10648
- var pageDesignIntentV1Schema = z26.object({
10649
- schemaVersion: z26.literal(pageDesignIntentSchemaVersion),
10650
- siteStyleId: z26.string().min(1).transform(asSiteStyleId),
10651
- pageFlowPresetId: z26.string().min(1).transform(asPageFlowPresetId),
10652
- blockLookPins: z26.array(pageDesignBlockLookPinSchema),
10653
- boundaryPins: z26.array(pageDesignBoundaryPinSchema)
10575
+ var pageDesignIntentV1Schema = z25.object({
10576
+ schemaVersion: z25.literal(pageDesignIntentSchemaVersion),
10577
+ siteStyleId: z25.string().min(1).transform(asSiteStyleId),
10578
+ pageFlowPresetId: z25.string().min(1).transform(asPageFlowPresetId),
10579
+ blockLookPins: z25.array(pageDesignBlockLookPinSchema),
10580
+ boundaryPins: z25.array(pageDesignBoundaryPinSchema)
10654
10581
  }).strict().superRefine((intent, ctx) => {
10655
10582
  addDuplicateStringIssues(ctx, {
10656
10583
  values: intent.blockLookPins.map((pin) => pin.blockId),
@@ -10676,7 +10603,7 @@ function addDuplicateStringIssues(ctx, input) {
10676
10603
  }
10677
10604
  for (const duplicate of duplicates) {
10678
10605
  ctx.addIssue({
10679
- code: z26.ZodIssueCode.custom,
10606
+ code: z25.ZodIssueCode.custom,
10680
10607
  path: [...input.path],
10681
10608
  message: `Duplicate ${input.label}: ${duplicate}.`
10682
10609
  });
@@ -10828,75 +10755,75 @@ var defaultComponentRuntimeRules = defineComponentRuntimeRules({
10828
10755
  });
10829
10756
 
10830
10757
  // ../theme-core/src/site-styles/pageDesignAuthority.ts
10831
- import { z as z27 } from "zod";
10832
- var nonEmptyStringSchema = z27.string().min(1);
10758
+ import { z as z26 } from "zod";
10759
+ var nonEmptyStringSchema = z26.string().min(1);
10833
10760
  var blockContentVersionIdSchema = nonEmptyStringSchema.transform(asBlockContentVersionId);
10834
10761
  var designBlockIdSchema = nonEmptyStringSchema.transform(asDesignBlockId);
10835
10762
  var designPageIdSchema = nonEmptyStringSchema.transform(asDesignPageId);
10836
10763
  var designEntryIdSchema = nonEmptyStringSchema.transform(asDesignEntryId);
10837
- var blockOrderIndexSchema = z27.number().int().nonnegative().transform(asBlockOrderIndex);
10838
- var publishedPageBlockSnapshotSchema = z27.object({
10839
- kind: z27.literal("published-block-content"),
10764
+ var blockOrderIndexSchema = z26.number().int().nonnegative().transform(asBlockOrderIndex);
10765
+ var publishedPageBlockSnapshotSchema = z26.object({
10766
+ kind: z26.literal("published-block-content"),
10840
10767
  blockId: designBlockIdSchema,
10841
10768
  contentVersionId: blockContentVersionIdSchema,
10842
- identifier: z27.string().nullable(),
10769
+ identifier: z26.string().nullable(),
10843
10770
  blockKind: nonEmptyStringSchema,
10844
10771
  orderIndex: blockOrderIndexSchema
10845
10772
  }).strict();
10846
- var draftPageBlockSnapshotSchema = z27.object({
10847
- kind: z27.literal("draft-block-content"),
10773
+ var draftPageBlockSnapshotSchema = z26.object({
10774
+ kind: z26.literal("draft-block-content"),
10848
10775
  blockId: designBlockIdSchema,
10849
10776
  contentVersionId: blockContentVersionIdSchema.nullable(),
10850
- identifier: z27.string().nullable(),
10777
+ identifier: z26.string().nullable(),
10851
10778
  blockKind: nonEmptyStringSchema,
10852
10779
  orderIndex: blockOrderIndexSchema
10853
10780
  }).strict();
10854
- var missingPageBlockSnapshotSchema = z27.object({
10855
- kind: z27.literal("missing-block-content"),
10781
+ var missingPageBlockSnapshotSchema = z26.object({
10782
+ kind: z26.literal("missing-block-content"),
10856
10783
  blockId: designBlockIdSchema,
10857
- identifier: z27.string().nullable(),
10784
+ identifier: z26.string().nullable(),
10858
10785
  blockKind: nonEmptyStringSchema,
10859
10786
  orderIndex: blockOrderIndexSchema,
10860
- reason: z27.enum([
10787
+ reason: z26.enum([
10861
10788
  "new-block",
10862
10789
  "deleted-content-version",
10863
10790
  "unpublished-block"
10864
10791
  ])
10865
10792
  }).strict();
10866
- var pageBlockSnapshotSchema = z27.discriminatedUnion("kind", [
10793
+ var pageBlockSnapshotSchema = z26.discriminatedUnion("kind", [
10867
10794
  publishedPageBlockSnapshotSchema,
10868
10795
  draftPageBlockSnapshotSchema,
10869
10796
  missingPageBlockSnapshotSchema
10870
10797
  ]);
10871
- var publishedPageBlockSequenceSchema = z27.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10872
- var draftPageBlockSequenceSchema = z27.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10873
- var publishedPageDesignVersionDataV1Schema = z27.object({
10874
- schemaVersion: z27.literal(1),
10875
- stage: z27.literal("published"),
10798
+ var publishedPageBlockSequenceSchema = z26.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10799
+ var draftPageBlockSequenceSchema = z26.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10800
+ var publishedPageDesignVersionDataV1Schema = z26.object({
10801
+ schemaVersion: z26.literal(1),
10802
+ stage: z26.literal("published"),
10876
10803
  pageId: designPageIdSchema,
10877
10804
  blockSequence: publishedPageBlockSequenceSchema
10878
10805
  }).strict();
10879
- var draftPageDesignVersionDataV1Schema = z27.object({
10880
- schemaVersion: z27.literal(1),
10881
- stage: z27.literal("draft"),
10806
+ var draftPageDesignVersionDataV1Schema = z26.object({
10807
+ schemaVersion: z26.literal(1),
10808
+ stage: z26.literal("draft"),
10882
10809
  pageId: designPageIdSchema,
10883
10810
  blockSequence: draftPageBlockSequenceSchema
10884
10811
  }).strict();
10885
- var pageDesignVersionDataV1Schema = z27.discriminatedUnion("stage", [
10812
+ var pageDesignVersionDataV1Schema = z26.discriminatedUnion("stage", [
10886
10813
  publishedPageDesignVersionDataV1Schema,
10887
10814
  draftPageDesignVersionDataV1Schema
10888
10815
  ]);
10889
- var contentVersionOwnerSchema = z27.discriminatedUnion("kind", [
10890
- z27.object({
10891
- kind: z27.literal("block"),
10816
+ var contentVersionOwnerSchema = z26.discriminatedUnion("kind", [
10817
+ z26.object({
10818
+ kind: z26.literal("block"),
10892
10819
  blockId: designBlockIdSchema
10893
10820
  }).strict(),
10894
- z27.object({
10895
- kind: z27.literal("entry"),
10821
+ z26.object({
10822
+ kind: z26.literal("entry"),
10896
10823
  entryId: designEntryIdSchema
10897
10824
  }).strict(),
10898
- z27.object({
10899
- kind: z27.literal("page"),
10825
+ z26.object({
10826
+ kind: z26.literal("page"),
10900
10827
  pageId: designPageIdSchema
10901
10828
  }).strict()
10902
10829
  ]);
@@ -10913,7 +10840,7 @@ function collectBlockSequenceIssues(snapshots) {
10913
10840
  snapshots.forEach((snapshot, index) => {
10914
10841
  if (seenBlockIds.has(snapshot.blockId)) {
10915
10842
  issues.push({
10916
- code: z27.ZodIssueCode.custom,
10843
+ code: z26.ZodIssueCode.custom,
10917
10844
  message: `Duplicate blockId in page design blockSequence: ${snapshot.blockId}`,
10918
10845
  path: [index, "blockId"]
10919
10846
  });
@@ -10922,7 +10849,7 @@ function collectBlockSequenceIssues(snapshots) {
10922
10849
  const orderIndex = snapshot.orderIndex;
10923
10850
  if (seenOrderIndexes.has(orderIndex)) {
10924
10851
  issues.push({
10925
- code: z27.ZodIssueCode.custom,
10852
+ code: z26.ZodIssueCode.custom,
10926
10853
  message: `Duplicate orderIndex in page design blockSequence: ${String(orderIndex)}`,
10927
10854
  path: [index, "orderIndex"]
10928
10855
  });
@@ -10930,7 +10857,7 @@ function collectBlockSequenceIssues(snapshots) {
10930
10857
  seenOrderIndexes.add(orderIndex);
10931
10858
  if (previousOrderIndex !== null && orderIndex <= previousOrderIndex) {
10932
10859
  issues.push({
10933
- code: z27.ZodIssueCode.custom,
10860
+ code: z26.ZodIssueCode.custom,
10934
10861
  message: `Expected orderIndex greater than ${String(previousOrderIndex)} for blockSequence position ${String(index)}; received ${String(orderIndex)}.`,
10935
10862
  path: [index, "orderIndex"]
10936
10863
  });
@@ -10983,7 +10910,7 @@ var pageFlowPresets = [
10983
10910
  ];
10984
10911
 
10985
10912
  // ../theme-core/src/site-styles/tokenRecipes.ts
10986
- import { z as z28 } from "zod";
10913
+ import { z as z27 } from "zod";
10987
10914
  var themeTokenRecipeOptions = {
10988
10915
  palette: ["brand-led", "warm-neutral", "high-contrast", "soft-natural"],
10989
10916
  contrast: ["standard", "strong", "maximum"],
@@ -10998,14 +10925,14 @@ var themeTokenRecipeOptions = {
10998
10925
  spacing: ["compact", "regular", "airy"],
10999
10926
  motion: ["none", "subtle", "expressive"]
11000
10927
  };
11001
- var themeTokenRecipesSchema = z28.object({
11002
- palette: z28.enum(themeTokenRecipeOptions.palette),
11003
- contrast: z28.enum(themeTokenRecipeOptions.contrast),
11004
- radius: z28.enum(themeTokenRecipeOptions.radius),
11005
- shadow: z28.enum(themeTokenRecipeOptions.shadow),
11006
- typography: z28.enum(themeTokenRecipeOptions.typography),
11007
- spacing: z28.enum(themeTokenRecipeOptions.spacing),
11008
- motion: z28.enum(themeTokenRecipeOptions.motion)
10928
+ var themeTokenRecipesSchema = z27.object({
10929
+ palette: z27.enum(themeTokenRecipeOptions.palette),
10930
+ contrast: z27.enum(themeTokenRecipeOptions.contrast),
10931
+ radius: z27.enum(themeTokenRecipeOptions.radius),
10932
+ shadow: z27.enum(themeTokenRecipeOptions.shadow),
10933
+ typography: z27.enum(themeTokenRecipeOptions.typography),
10934
+ spacing: z27.enum(themeTokenRecipeOptions.spacing),
10935
+ motion: z27.enum(themeTokenRecipeOptions.motion)
11009
10936
  });
11010
10937
 
11011
10938
  // ../blocks/src/system/designCapabilities.ts
@@ -13271,26 +13198,26 @@ function sectionState(opts) {
13271
13198
  }
13272
13199
 
13273
13200
  // ../blocks/src/system/fragments/types.ts
13274
- import { z as z29 } from "zod";
13201
+ import { z as z28 } from "zod";
13275
13202
  var FRAGMENT_ID_PATTERN = /^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$/i;
13276
13203
  var FIELD_ID_PATTERN = /^[a-z][a-zA-Z0-9_-]*$/;
13277
- var dataLoaderSchema = z29.object({
13278
- endpoint: z29.string().min(1, "Fragment data loader requires an endpoint"),
13279
- params: z29.record(z29.string(), z29.unknown()).default({}),
13280
- mode: z29.enum(["server", "client"]).default("server")
13204
+ var dataLoaderSchema = z28.object({
13205
+ endpoint: z28.string().min(1, "Fragment data loader requires an endpoint"),
13206
+ params: z28.record(z28.string(), z28.unknown()).default({}),
13207
+ mode: z28.enum(["server", "client"]).default("server")
13281
13208
  });
13282
- var fragmentDataSchema = z29.object({
13283
- key: z29.string().min(1, "Fragment data key is required"),
13209
+ var fragmentDataSchema = z28.object({
13210
+ key: z28.string().min(1, "Fragment data key is required"),
13284
13211
  loader: dataLoaderSchema.optional()
13285
13212
  });
13286
- var fragmentConfigSchema = z29.object({
13287
- id: z29.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13288
- title: z29.string().optional(),
13289
- description: z29.string().optional(),
13290
- category: z29.enum(["content", "media", "interactive", "layout"]).optional(),
13291
- icon: z29.string().optional(),
13213
+ var fragmentConfigSchema = z28.object({
13214
+ id: z28.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13215
+ title: z28.string().optional(),
13216
+ description: z28.string().optional(),
13217
+ category: z28.enum(["content", "media", "interactive", "layout"]).optional(),
13218
+ icon: z28.string().optional(),
13292
13219
  fields: fieldSchema.array().default([]),
13293
- layout: z29.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13220
+ layout: z28.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13294
13221
  data: fragmentDataSchema.optional()
13295
13222
  });
13296
13223
  var FragmentConfigError = class extends Error {
@@ -15940,7 +15867,7 @@ var bodyTextBlockDefinition = {
15940
15867
  };
15941
15868
 
15942
15869
  // ../blocks/src/system/blocks/blog-post.tsx
15943
- import { z as z30 } from "zod";
15870
+ import { z as z29 } from "zod";
15944
15871
  var composition = composeFragments([{ fragment: blogFeaturedPostFragment }]);
15945
15872
  var blogPostLayout = section(
15946
15873
  { background: "background", className: "rb-px-6 rb-py-12" },
@@ -15969,17 +15896,17 @@ var blogPostManifest = createBlockManifest({
15969
15896
  additionalFields: composition.fields,
15970
15897
  layout: blogPostLayout
15971
15898
  });
15972
- var blogPostDataSchema = z30.object({
15973
- id: z30.string(),
15974
- title: z30.string(),
15975
- slug: z30.string(),
15976
- path: z30.string(),
15977
- excerpt: z30.string().nullable().optional(),
15978
- image: z30.object({
15979
- url: z30.string().optional().nullable(),
15980
- alt: z30.string().optional().nullable()
15899
+ var blogPostDataSchema = z29.object({
15900
+ id: z29.string(),
15901
+ title: z29.string(),
15902
+ slug: z29.string(),
15903
+ path: z29.string(),
15904
+ excerpt: z29.string().nullable().optional(),
15905
+ image: z29.object({
15906
+ url: z29.string().optional().nullable(),
15907
+ alt: z29.string().optional().nullable()
15981
15908
  }).nullable().optional(),
15982
- publishedAt: z30.string().nullable().optional()
15909
+ publishedAt: z29.string().nullable().optional()
15983
15910
  });
15984
15911
  var blogPostBlockDefinition = {
15985
15912
  manifest: blogPostManifest,
@@ -15988,7 +15915,7 @@ var blogPostBlockDefinition = {
15988
15915
  };
15989
15916
 
15990
15917
  // ../blocks/src/system/blocks/blog-listing.ts
15991
- import { z as z31 } from "zod";
15918
+ import { z as z30 } from "zod";
15992
15919
  var blogListingDataLoader = {
15993
15920
  endpoint: "listPublishedEntries",
15994
15921
  params: {
@@ -16306,24 +16233,24 @@ var blogListingManifest = createBlockManifest({
16306
16233
  spacing: "lg"
16307
16234
  }
16308
16235
  });
16309
- var blogPostListEntrySchema = z31.object({
16310
- id: z31.string(),
16311
- slug: z31.string(),
16312
- path: z31.string(),
16313
- title: z31.string(),
16314
- excerpt: z31.string().nullable().optional(),
16315
- publishedAt: z31.string().nullable().optional(),
16316
- updatedAt: z31.string(),
16317
- status: z31.string(),
16318
- image: z31.object({
16319
- url: z31.string(),
16320
- alt: z31.string().nullable().optional()
16236
+ var blogPostListEntrySchema = z30.object({
16237
+ id: z30.string(),
16238
+ slug: z30.string(),
16239
+ path: z30.string(),
16240
+ title: z30.string(),
16241
+ excerpt: z30.string().nullable().optional(),
16242
+ publishedAt: z30.string().nullable().optional(),
16243
+ updatedAt: z30.string(),
16244
+ status: z30.string(),
16245
+ image: z30.object({
16246
+ url: z30.string(),
16247
+ alt: z30.string().nullable().optional()
16321
16248
  }).nullable().optional()
16322
16249
  });
16323
16250
  var blogListingBlockDefinition = {
16324
16251
  manifest: blogListingManifest,
16325
16252
  dataSchemas: {
16326
- posts: z31.array(blogPostListEntrySchema).optional()
16253
+ posts: z30.array(blogPostListEntrySchema).optional()
16327
16254
  },
16328
16255
  dataLoaders: {
16329
16256
  posts: blogListingDataLoader
@@ -16387,10 +16314,10 @@ var singleButtonBlockDefinition = {
16387
16314
  };
16388
16315
 
16389
16316
  // ../blocks/src/system/blocks/form.tsx
16390
- import { z as z33 } from "zod";
16317
+ import { z as z32 } from "zod";
16391
16318
 
16392
16319
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16393
- import { z as z32 } from "zod";
16320
+ import { z as z31 } from "zod";
16394
16321
 
16395
16322
  // ../blocks/src/contracts/runtime.ts
16396
16323
  function decodeSuccess(value) {
@@ -16555,75 +16482,75 @@ function groupFormFields(fields3) {
16555
16482
  }
16556
16483
 
16557
16484
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16558
- var formFieldSchema = z32.object({
16559
- id: z32.string(),
16560
- label: z32.string().optional(),
16561
- type: z32.string().optional(),
16562
- required: z32.boolean().optional(),
16563
- placeholder: z32.string().optional(),
16564
- helpText: z32.string().optional(),
16565
- layout: z32.object({
16566
- width: z32.enum(["full", "half"]).optional()
16485
+ var formFieldSchema = z31.object({
16486
+ id: z31.string(),
16487
+ label: z31.string().optional(),
16488
+ type: z31.string().optional(),
16489
+ required: z31.boolean().optional(),
16490
+ placeholder: z31.string().optional(),
16491
+ helpText: z31.string().optional(),
16492
+ layout: z31.object({
16493
+ width: z31.enum(["full", "half"]).optional()
16567
16494
  }).optional(),
16568
- rows: z32.number().optional(),
16569
- options: z32.array(z32.object({
16570
- value: z32.string(),
16571
- label: z32.string()
16495
+ rows: z31.number().optional(),
16496
+ options: z31.array(z31.object({
16497
+ value: z31.string(),
16498
+ label: z31.string()
16572
16499
  })).optional(),
16573
- multiple: z32.boolean().optional(),
16574
- minLength: z32.number().optional(),
16575
- maxLength: z32.number().optional(),
16576
- pattern: z32.string().optional(),
16577
- min: z32.number().optional(),
16578
- max: z32.number().optional()
16579
- });
16580
- var formRecordSchema = z32.object({
16581
- id: z32.string(),
16582
- schemaJson: z32.object({
16583
- fields: z32.array(formFieldSchema).optional()
16500
+ multiple: z31.boolean().optional(),
16501
+ minLength: z31.number().optional(),
16502
+ maxLength: z31.number().optional(),
16503
+ pattern: z31.string().optional(),
16504
+ min: z31.number().optional(),
16505
+ max: z31.number().optional()
16506
+ });
16507
+ var formRecordSchema = z31.object({
16508
+ id: z31.string(),
16509
+ schemaJson: z31.object({
16510
+ fields: z31.array(formFieldSchema).optional()
16584
16511
  }).optional()
16585
16512
  });
16586
- var formFieldGroupSchema = z32.discriminatedUnion("type", [
16587
- z32.object({
16588
- type: z32.literal("single"),
16589
- key: z32.string(),
16513
+ var formFieldGroupSchema = z31.discriminatedUnion("type", [
16514
+ z31.object({
16515
+ type: z31.literal("single"),
16516
+ key: z31.string(),
16590
16517
  field: formFieldSchema
16591
16518
  }),
16592
- z32.object({
16593
- type: z32.literal("row"),
16594
- key: z32.string(),
16595
- fields: z32.tuple([formFieldSchema, formFieldSchema])
16519
+ z31.object({
16520
+ type: z31.literal("row"),
16521
+ key: z31.string(),
16522
+ fields: z31.tuple([formFieldSchema, formFieldSchema])
16596
16523
  })
16597
16524
  ]);
16598
- var formSourceSchema = z32.object({
16525
+ var formSourceSchema = z31.object({
16599
16526
  value: formRecordSchema.optional(),
16600
- siteId: z32.string().optional(),
16601
- apiBaseUrl: z32.string().optional(),
16602
- submitLabel: z32.string().optional(),
16603
- successMessage: z32.string().nullable().optional(),
16604
- className: z32.string().optional(),
16605
- spamProtectionEnabled: z32.boolean().optional()
16606
- });
16607
- var formDisplaySchema = z32.object({
16608
- kind: z32.literal("form"),
16609
- state: z32.enum(["missing", "ready"]),
16610
- className: z32.string().nullable(),
16611
- formId: z32.string().nullable(),
16612
- submitLabel: z32.string(),
16613
- successMessage: z32.string().nullable(),
16527
+ siteId: z31.string().optional(),
16528
+ apiBaseUrl: z31.string().optional(),
16529
+ submitLabel: z31.string().optional(),
16530
+ successMessage: z31.string().nullable().optional(),
16531
+ className: z31.string().optional(),
16532
+ spamProtectionEnabled: z31.boolean().optional()
16533
+ });
16534
+ var formDisplaySchema = z31.object({
16535
+ kind: z31.literal("form"),
16536
+ state: z31.enum(["missing", "ready"]),
16537
+ className: z31.string().nullable(),
16538
+ formId: z31.string().nullable(),
16539
+ submitLabel: z31.string(),
16540
+ successMessage: z31.string().nullable(),
16614
16541
  form: formRecordSchema.nullable(),
16615
- groups: z32.array(formFieldGroupSchema)
16542
+ groups: z31.array(formFieldGroupSchema)
16616
16543
  });
16617
- var formHydrationSchema = z32.object({
16618
- spamProtectionEnabled: z32.boolean().optional()
16544
+ var formHydrationSchema = z31.object({
16545
+ spamProtectionEnabled: z31.boolean().optional()
16619
16546
  });
16620
- var formRenderSchema = z32.object({
16547
+ var formRenderSchema = z31.object({
16621
16548
  display: formDisplaySchema,
16622
16549
  hydration: formHydrationSchema
16623
16550
  });
16624
- var formIslandMetaCodec = createZodCodec(z32.object({
16625
- siteId: z32.string().optional(),
16626
- apiBaseUrl: z32.string().optional()
16551
+ var formIslandMetaCodec = createZodCodec(z31.object({
16552
+ siteId: z31.string().optional(),
16553
+ apiBaseUrl: z31.string().optional()
16627
16554
  }));
16628
16555
  var formIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
16629
16556
  function buildFormDisplay(source) {
@@ -16698,16 +16625,16 @@ var formManifest = createBlockManifest({
16698
16625
  tags: ["form", "contact", "input", "submit", "fields", "signup", "lead-capture"],
16699
16626
  icon: "FormInput"
16700
16627
  });
16701
- var formDataSchema = z33.object({
16702
- id: z33.string(),
16703
- siteId: z33.string(),
16704
- userId: z33.string(),
16705
- name: z33.string(),
16706
- slug: z33.string(),
16707
- schemaJson: z33.any(),
16708
- settingsJson: z33.any().optional(),
16709
- createdAt: z33.string(),
16710
- updatedAt: z33.string()
16628
+ var formDataSchema = z32.object({
16629
+ id: z32.string(),
16630
+ siteId: z32.string(),
16631
+ userId: z32.string(),
16632
+ name: z32.string(),
16633
+ slug: z32.string(),
16634
+ schemaJson: z32.any(),
16635
+ settingsJson: z32.any().optional(),
16636
+ createdAt: z32.string(),
16637
+ updatedAt: z32.string()
16711
16638
  });
16712
16639
  var formBlockDefinition = {
16713
16640
  manifest: formManifest,
@@ -16753,7 +16680,7 @@ var faqBlockDefinition = {
16753
16680
  };
16754
16681
 
16755
16682
  // ../blocks/src/system/transforms/registry/formatting.ts
16756
- import { z as z34 } from "zod";
16683
+ import { z as z33 } from "zod";
16757
16684
  var uppercaseTransform = {
16758
16685
  id: "string.uppercase",
16759
16686
  kind: "string",
@@ -16764,7 +16691,7 @@ var fallbackTransform = {
16764
16691
  id: "value.fallback",
16765
16692
  kind: "formatter",
16766
16693
  summary: "Provide fallback when value is null or undefined",
16767
- schema: z34.object({ fallback: z34.unknown() }),
16694
+ schema: z33.object({ fallback: z33.unknown() }),
16768
16695
  run: (value, options) => value === null || value === void 0 || value === "" ? options.fallback : value
16769
16696
  };
16770
16697
  var dateFormatShort = {
@@ -16811,8 +16738,8 @@ var jsonArrayTransform = {
16811
16738
  return "";
16812
16739
  }
16813
16740
  };
16814
- var marqueeLoopOptionsSchema = z34.object({
16815
- minItems: z34.number().int().min(1).default(10)
16741
+ var marqueeLoopOptionsSchema = z33.object({
16742
+ minItems: z33.number().int().min(1).default(10)
16816
16743
  });
16817
16744
  var marqueeLoopTransform = {
16818
16745
  id: "array.marqueeLoop",
@@ -16840,7 +16767,7 @@ var formattingTransforms = [
16840
16767
  ];
16841
16768
 
16842
16769
  // ../blocks/src/system/transforms/registry/ui.ts
16843
- import { z as z35 } from "zod";
16770
+ import { z as z34 } from "zod";
16844
16771
  var joinClasses3 = (parts) => parts.filter(
16845
16772
  (part) => typeof part === "string" && part.trim().length > 0
16846
16773
  ).join(" ").replace(/\s+/g, " ").trim();
@@ -16900,8 +16827,8 @@ function getNavStyleClasses(navStyle) {
16900
16827
  return baseClasses;
16901
16828
  }
16902
16829
  }
16903
- var headerNavClassOptionsSchema = z35.object({
16904
- base: z35.string().optional()
16830
+ var headerNavClassOptionsSchema = z34.object({
16831
+ base: z34.string().optional()
16905
16832
  });
16906
16833
  var headerNavLinkClassTransform = {
16907
16834
  id: "ui.headerNavLinkClass",
@@ -16984,8 +16911,8 @@ function resolveHeroContentMaxWidth(content) {
16984
16911
  return raw;
16985
16912
  return "default";
16986
16913
  }
16987
- var heroContentWrapperClassSchema = z35.object({
16988
- base: z35.string().optional()
16914
+ var heroContentWrapperClassSchema = z34.object({
16915
+ base: z34.string().optional()
16989
16916
  });
16990
16917
  var heroContentWrapperClassTransform = {
16991
16918
  id: "ui.heroContentWrapperClass",
@@ -17027,8 +16954,8 @@ var heroStackJustifyFromVerticalAlignmentTransform = {
17027
16954
  return vertical === "top" ? "start" : vertical === "bottom" ? "end" : "center";
17028
16955
  }
17029
16956
  };
17030
- var heroGridClassFromVerticalAlignmentSchema = z35.object({
17031
- base: z35.string()
16957
+ var heroGridClassFromVerticalAlignmentSchema = z34.object({
16958
+ base: z34.string()
17032
16959
  });
17033
16960
  var heroGridClassFromVerticalAlignmentTransform = {
17034
16961
  id: "ui.heroGridClassFromVerticalAlignment",
@@ -17042,10 +16969,10 @@ var heroGridClassFromVerticalAlignmentTransform = {
17042
16969
  return joinClasses3([options.base, itemsClass]);
17043
16970
  }
17044
16971
  };
17045
- var imageFragmentClassOptionsSchema = z35.object({
17046
- base: z35.string(),
17047
- whenAuto: z35.string(),
17048
- whenFixed: z35.string()
16972
+ var imageFragmentClassOptionsSchema = z34.object({
16973
+ base: z34.string(),
16974
+ whenAuto: z34.string(),
16975
+ whenFixed: z34.string()
17049
16976
  });
17050
16977
  var imageFragmentClassTransform = {
17051
16978
  id: "ui.imageFragmentClass",
@@ -17061,9 +16988,9 @@ var imageFragmentClassTransform = {
17061
16988
  ]);
17062
16989
  }
17063
16990
  };
17064
- var imageFragmentSizeOptionsSchema = z35.object({
17065
- max: z35.number().int().positive().default(1920),
17066
- quality: z35.number().int().min(1).max(100).default(85)
16991
+ var imageFragmentSizeOptionsSchema = z34.object({
16992
+ max: z34.number().int().positive().default(1920),
16993
+ quality: z34.number().int().min(1).max(100).default(85)
17067
16994
  });
17068
16995
  var imageFragmentSizeTransform = {
17069
16996
  id: "ui.imageFragmentSize",
@@ -17083,9 +17010,9 @@ var imageFragmentSizeTransform = {
17083
17010
  return { width, height, quality, resize: "cover" };
17084
17011
  }
17085
17012
  };
17086
- var conditionalClassOptionsSchema = z35.object({
17087
- whenTrue: z35.string(),
17088
- whenFalse: z35.string()
17013
+ var conditionalClassOptionsSchema = z34.object({
17014
+ whenTrue: z34.string(),
17015
+ whenFalse: z34.string()
17089
17016
  });
17090
17017
  var conditionalClassTransform = {
17091
17018
  id: "ui.conditionalClass",
@@ -17097,9 +17024,9 @@ var conditionalClassTransform = {
17097
17024
  return isTrue ? options.whenTrue : options.whenFalse;
17098
17025
  }
17099
17026
  };
17100
- var twoColumnContainerClassOptionsSchema = z35.object({
17101
- base: z35.string(),
17102
- reverseClass: z35.string()
17027
+ var twoColumnContainerClassOptionsSchema = z34.object({
17028
+ base: z34.string(),
17029
+ reverseClass: z34.string()
17103
17030
  });
17104
17031
  var twoColumnContainerClassTransform = {
17105
17032
  id: "ui.twoColumnContainerClass",
@@ -17114,8 +17041,8 @@ var twoColumnContainerClassTransform = {
17114
17041
  ]);
17115
17042
  }
17116
17043
  };
17117
- var twoColumnFlexBasisOptionsSchema = z35.object({
17118
- side: z35.enum(["image", "text"])
17044
+ var twoColumnFlexBasisOptionsSchema = z34.object({
17045
+ side: z34.enum(["image", "text"])
17119
17046
  });
17120
17047
  var twoColumnFlexBasisTransform = {
17121
17048
  id: "ui.twoColumnFlexBasis",
@@ -17129,8 +17056,8 @@ var twoColumnFlexBasisTransform = {
17129
17056
  return `${percent}%`;
17130
17057
  }
17131
17058
  };
17132
- var columnsDesktopSpanClassOptionsSchema = z35.object({
17133
- base: z35.string().optional()
17059
+ var columnsDesktopSpanClassOptionsSchema = z34.object({
17060
+ base: z34.string().optional()
17134
17061
  });
17135
17062
  var columnsDesktopSpanClassTransform = {
17136
17063
  id: "ui.columnsDesktopSpanClass",
@@ -17172,8 +17099,8 @@ var columnsColsAtTransform = {
17172
17099
  id: "ui.columnsColsAt",
17173
17100
  kind: "formatter",
17174
17101
  summary: "Resolve columns count for a specific breakpoint",
17175
- schema: z35.object({
17176
- breakpoint: z35.enum(["mobile", "md", "lg", "xl"])
17102
+ schema: z34.object({
17103
+ breakpoint: z34.enum(["mobile", "md", "lg", "xl"])
17177
17104
  }),
17178
17105
  run: (value, options) => {
17179
17106
  const content = asPartialObject(value) ?? {};
@@ -17297,7 +17224,7 @@ var uiTransforms = [
17297
17224
  ];
17298
17225
 
17299
17226
  // ../blocks/src/system/transforms/registry/layout.ts
17300
- import { z as z36 } from "zod";
17227
+ import { z as z35 } from "zod";
17301
17228
 
17302
17229
  // ../theme-core/src/palette/utils/colorConversion.ts
17303
17230
  var mod = (a, n) => (a % n + n) % n;
@@ -17368,10 +17295,10 @@ function featuresFromHex(hex) {
17368
17295
  var joinClasses4 = (parts) => parts.filter(
17369
17296
  (part) => typeof part === "string" && part.trim().length > 0
17370
17297
  ).join(" ").replace(/\s+/g, " ").trim();
17371
- var maxWidthClassSchema = z36.object({
17372
- base: z36.string().optional(),
17373
- container: z36.string().optional(),
17374
- full: z36.string().optional()
17298
+ var maxWidthClassSchema = z35.object({
17299
+ base: z35.string().optional(),
17300
+ container: z35.string().optional(),
17301
+ full: z35.string().optional()
17375
17302
  });
17376
17303
  var maxWidthClassTransform = {
17377
17304
  id: "layout.maxWidthClass",
@@ -17387,11 +17314,11 @@ var maxWidthClassTransform = {
17387
17314
  return joinClasses4([base, chosen]);
17388
17315
  }
17389
17316
  };
17390
- var headerRootClassSchema = z36.object({
17391
- base: z36.string().optional(),
17392
- sticky: z36.string().optional(),
17393
- stickyTransparent: z36.string().optional(),
17394
- invert: z36.string().optional()
17317
+ var headerRootClassSchema = z35.object({
17318
+ base: z35.string().optional(),
17319
+ sticky: z35.string().optional(),
17320
+ stickyTransparent: z35.string().optional(),
17321
+ invert: z35.string().optional()
17395
17322
  });
17396
17323
  function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "surface") {
17397
17324
  const backgroundToken = typeof backgroundColor === "string" && backgroundColor.trim().length > 0 ? backgroundColor : defaultToken;
@@ -17512,11 +17439,11 @@ var headerRootClassTransform = {
17512
17439
  return joinClasses4(classes);
17513
17440
  }
17514
17441
  };
17515
- var footerRootClassSchema = z36.object({
17516
- base: z36.string().optional(),
17517
- surface: z36.string().optional(),
17518
- tokenPrefix: z36.string().optional(),
17519
- transparent: z36.string().optional()
17442
+ var footerRootClassSchema = z35.object({
17443
+ base: z35.string().optional(),
17444
+ surface: z35.string().optional(),
17445
+ tokenPrefix: z35.string().optional(),
17446
+ transparent: z35.string().optional()
17520
17447
  });
17521
17448
  var footerRootClassTransform = {
17522
17449
  id: "layout.footerRootClass",
@@ -17620,8 +17547,8 @@ var footerAlignClassMap = {
17620
17547
  end: "rb-justify-end",
17621
17548
  "space-between": "rb-justify-between"
17622
17549
  };
17623
- var footerBottomBarClassSchema = z36.object({
17624
- base: z36.string().optional()
17550
+ var footerBottomBarClassSchema = z35.object({
17551
+ base: z35.string().optional()
17625
17552
  });
17626
17553
  var footerBottomBarClassTransform = {
17627
17554
  id: "layout.footerBottomBarClass",
@@ -17643,10 +17570,10 @@ var footerBottomBarClassTransform = {
17643
17570
  ]);
17644
17571
  }
17645
17572
  };
17646
- var footerBottomBarContainerClassSchema = z36.object({
17647
- base: z36.string().optional(),
17648
- fullBleed: z36.string().optional(),
17649
- contained: z36.string().optional()
17573
+ var footerBottomBarContainerClassSchema = z35.object({
17574
+ base: z35.string().optional(),
17575
+ fullBleed: z35.string().optional(),
17576
+ contained: z35.string().optional()
17650
17577
  });
17651
17578
  var footerBottomBarContainerClassTransform = {
17652
17579
  id: "layout.footerBottomBarContainerClass",
@@ -17731,8 +17658,8 @@ var footerSplitNavSingleClassTransform = {
17731
17658
  ]);
17732
17659
  }
17733
17660
  };
17734
- var footerLogoClassSchema = z36.object({
17735
- base: z36.string().optional()
17661
+ var footerLogoClassSchema = z35.object({
17662
+ base: z35.string().optional()
17736
17663
  });
17737
17664
  var footerLogoClassTransform = {
17738
17665
  id: "layout.footerLogoClass",
@@ -17754,8 +17681,8 @@ var footerLogoClassTransform = {
17754
17681
  ]);
17755
17682
  }
17756
17683
  };
17757
- var footerLogoMediaClassSchema = z36.object({
17758
- base: z36.string().optional()
17684
+ var footerLogoMediaClassSchema = z35.object({
17685
+ base: z35.string().optional()
17759
17686
  });
17760
17687
  var footerLogoMediaClassTransform = {
17761
17688
  id: "layout.footerLogoMediaClass",
@@ -17809,12 +17736,12 @@ var layoutTransforms = [
17809
17736
  ];
17810
17737
 
17811
17738
  // ../blocks/src/system/transforms/registry/media.ts
17812
- import { z as z37 } from "zod";
17813
- var mediaFromUrlOptionsSchema = z37.object({
17814
- width: z37.number().int().positive().optional(),
17815
- height: z37.number().int().positive().optional(),
17816
- quality: z37.number().int().min(1).max(100).optional(),
17817
- resize: z37.enum(["cover", "contain", "fill"]).optional()
17739
+ import { z as z36 } from "zod";
17740
+ var mediaFromUrlOptionsSchema = z36.object({
17741
+ width: z36.number().int().positive().optional(),
17742
+ height: z36.number().int().positive().optional(),
17743
+ quality: z36.number().int().min(1).max(100).optional(),
17744
+ resize: z36.enum(["cover", "contain", "fill"]).optional()
17818
17745
  });
17819
17746
  function maybeBuildSupabaseTransformUrl(inputUrl, options) {
17820
17747
  const width = options.width;
@@ -17862,10 +17789,17 @@ var mediaFromUrl = {
17862
17789
  var mediaTransforms = [mediaFromUrl];
17863
17790
 
17864
17791
  // ../blocks/src/system/transforms/registry/content.ts
17865
- import { z as z38 } from "zod";
17866
- var supportedRichTextTokenSchema = z38.enum(["year", "site_name"]);
17867
- var interpolateRichTextTokensOptionsSchema = z38.object({
17868
- tokens: z38.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17792
+ import { z as z37 } from "zod";
17793
+
17794
+ // ../blocks/src/lib/typeGuards.ts
17795
+ function isRecord2(value) {
17796
+ return typeof value === "object" && value !== null && !Array.isArray(value);
17797
+ }
17798
+
17799
+ // ../blocks/src/system/transforms/registry/content.ts
17800
+ var supportedRichTextTokenSchema = z37.enum(["year", "site_name"]);
17801
+ var interpolateRichTextTokensOptionsSchema = z37.object({
17802
+ tokens: z37.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17869
17803
  });
17870
17804
  var richTextTokenPattern = /\{\{\s*([a-zA-Z0-9_]+)\s*\}\}/g;
17871
17805
  function getSiteName(context) {
@@ -19675,7 +19609,7 @@ var mediaTextBlockDefinition = {
19675
19609
  };
19676
19610
 
19677
19611
  // ../blocks/src/system/blocks/appointment-booking.tsx
19678
- import { z as z39 } from "zod";
19612
+ import { z as z38 } from "zod";
19679
19613
  var appointmentBookingManifest = createBlockManifest({
19680
19614
  id: "block.appointment-booking",
19681
19615
  version: "2.0.0",
@@ -19751,11 +19685,11 @@ var appointmentBookingManifest = createBlockManifest({
19751
19685
  })
19752
19686
  ]
19753
19687
  });
19754
- var availabilityDataSchema = z39.object({
19755
- slots: z39.array(z39.object({
19756
- startAt: z39.string(),
19757
- endAt: z39.string(),
19758
- resourceId: z39.string()
19688
+ var availabilityDataSchema = z38.object({
19689
+ slots: z38.array(z38.object({
19690
+ startAt: z38.string(),
19691
+ endAt: z38.string(),
19692
+ resourceId: z38.string()
19759
19693
  }))
19760
19694
  });
19761
19695
  var appointmentBookingBlockDefinition = {
@@ -19780,13 +19714,13 @@ var appointmentBookingBlockDefinition = {
19780
19714
  };
19781
19715
 
19782
19716
  // ../blocks/src/system/blocks/event-registration.ts
19783
- import { z as z47 } from "zod";
19717
+ import { z as z46 } from "zod";
19784
19718
 
19785
19719
  // ../blocks/src/system/blocks/events/shared/schemas.ts
19786
- import { z as z43 } from "zod";
19720
+ import { z as z42 } from "zod";
19787
19721
 
19788
19722
  // ../blocks/src/lib/media.ts
19789
- import z40 from "zod";
19723
+ import z39 from "zod";
19790
19724
  var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19791
19725
  "document",
19792
19726
  "spreadsheet",
@@ -19794,52 +19728,52 @@ var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19794
19728
  "audio",
19795
19729
  "video"
19796
19730
  ];
19797
- var hotspotSchema2 = z40.object({
19798
- x: z40.number().min(0).max(1),
19799
- y: z40.number().min(0).max(1),
19800
- radius: z40.number().optional()
19801
- });
19802
- var rotationSchema2 = z40.union([z40.literal(0), z40.literal(90), z40.literal(180), z40.literal(270)]);
19803
- var rectSchema2 = z40.tuple([z40.number(), z40.number(), z40.number(), z40.number()]);
19804
- var aspectCropSchema2 = z40.object({
19805
- aspect: z40.preprocess((value) => value == null ? void 0 : value, z40.string().optional()),
19806
- rect: z40.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19807
- hotspot: z40.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19808
- rotation: z40.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19809
- });
19810
- var transformSchema2 = z40.object({
19811
- aspectCrops: z40.preprocess((value) => {
19731
+ var hotspotSchema2 = z39.object({
19732
+ x: z39.number().min(0).max(1),
19733
+ y: z39.number().min(0).max(1),
19734
+ radius: z39.number().optional()
19735
+ });
19736
+ var rotationSchema2 = z39.union([z39.literal(0), z39.literal(90), z39.literal(180), z39.literal(270)]);
19737
+ var rectSchema2 = z39.tuple([z39.number(), z39.number(), z39.number(), z39.number()]);
19738
+ var aspectCropSchema2 = z39.object({
19739
+ aspect: z39.preprocess((value) => value == null ? void 0 : value, z39.string().optional()),
19740
+ rect: z39.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19741
+ hotspot: z39.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19742
+ rotation: z39.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19743
+ });
19744
+ var transformSchema2 = z39.object({
19745
+ aspectCrops: z39.preprocess((value) => {
19812
19746
  if (!value || typeof value !== "object" || Array.isArray(value)) {
19813
19747
  return void 0;
19814
19748
  }
19815
19749
  return value;
19816
- }, z40.record(z40.string(), aspectCropSchema2.catch({}))).optional(),
19750
+ }, z39.record(z39.string(), aspectCropSchema2.catch({}))).optional(),
19817
19751
  rect: rectSchema2.optional(),
19818
19752
  hotspot: hotspotSchema2.optional(),
19819
19753
  rotation: rotationSchema2.optional()
19820
19754
  });
19821
- var mediaBaseSchema = z40.object({
19822
- purpose: z40.string().optional(),
19823
- placeholder: z40.boolean().default(true).optional(),
19824
- assetId: z40.string().optional(),
19825
- identifier: z40.string().optional(),
19826
- src: z40.string().optional(),
19827
- alt: z40.string().optional(),
19828
- filename: z40.string().optional(),
19829
- mimeType: z40.string().optional(),
19830
- width: z40.number().optional(),
19831
- height: z40.number().optional(),
19832
- storageBucket: z40.string().optional(),
19833
- storagePath: z40.string().optional(),
19755
+ var mediaBaseSchema = z39.object({
19756
+ purpose: z39.string().optional(),
19757
+ placeholder: z39.boolean().default(true).optional(),
19758
+ assetId: z39.string().optional(),
19759
+ identifier: z39.string().optional(),
19760
+ src: z39.string().optional(),
19761
+ alt: z39.string().optional(),
19762
+ filename: z39.string().optional(),
19763
+ mimeType: z39.string().optional(),
19764
+ width: z39.number().optional(),
19765
+ height: z39.number().optional(),
19766
+ storageBucket: z39.string().optional(),
19767
+ storagePath: z39.string().optional(),
19834
19768
  transform: transformSchema2.optional()
19835
19769
  });
19836
- var imageMediaSchema = mediaBaseSchema.extend({ type: z40.literal("image") });
19837
- var videoMediaSchema = mediaBaseSchema.extend({ type: z40.literal("video") });
19838
- var audioMediaSchema = mediaBaseSchema.extend({ type: z40.literal("audio") });
19839
- var documentMediaSchema = mediaBaseSchema.extend({ type: z40.literal("document") });
19840
- var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z40.literal("spreadsheet") });
19841
- var archiveMediaSchema = mediaBaseSchema.extend({ type: z40.literal("archive") });
19842
- var mediaSchema2 = z40.discriminatedUnion("type", [
19770
+ var imageMediaSchema = mediaBaseSchema.extend({ type: z39.literal("image") });
19771
+ var videoMediaSchema = mediaBaseSchema.extend({ type: z39.literal("video") });
19772
+ var audioMediaSchema = mediaBaseSchema.extend({ type: z39.literal("audio") });
19773
+ var documentMediaSchema = mediaBaseSchema.extend({ type: z39.literal("document") });
19774
+ var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z39.literal("spreadsheet") });
19775
+ var archiveMediaSchema = mediaBaseSchema.extend({ type: z39.literal("archive") });
19776
+ var mediaSchema2 = z39.discriminatedUnion("type", [
19843
19777
  imageMediaSchema,
19844
19778
  videoMediaSchema,
19845
19779
  audioMediaSchema,
@@ -19849,252 +19783,252 @@ var mediaSchema2 = z40.discriminatedUnion("type", [
19849
19783
  ]);
19850
19784
 
19851
19785
  // ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
19852
- import { z as z41 } from "zod";
19853
- var bookingDepositRefundPolicySchema = z41.enum([
19786
+ import { z as z40 } from "zod";
19787
+ var bookingDepositRefundPolicySchema = z40.enum([
19854
19788
  "refundable",
19855
19789
  "non_refundable"
19856
19790
  ]);
19857
- var bookingInstalmentPlanSchema = z41.union([
19858
- z41.object({
19859
- kind: z41.literal("deposit_plus_one_remainder"),
19860
- depositAmountCents: z41.number().int().min(0),
19791
+ var bookingInstalmentPlanSchema = z40.union([
19792
+ z40.object({
19793
+ kind: z40.literal("deposit_plus_one_remainder"),
19794
+ depositAmountCents: z40.number().int().min(0),
19861
19795
  depositRefundability: bookingDepositRefundPolicySchema,
19862
- remainderDueCount: z41.number().int().positive(),
19863
- intervalUnit: z41.enum(["day", "week", "month"])
19796
+ remainderDueCount: z40.number().int().positive(),
19797
+ intervalUnit: z40.enum(["day", "week", "month"])
19864
19798
  }),
19865
- z41.object({
19866
- kind: z41.literal("deposit_plus_scheduled_instalments"),
19867
- depositAmountCents: z41.number().int().min(0),
19799
+ z40.object({
19800
+ kind: z40.literal("deposit_plus_scheduled_instalments"),
19801
+ depositAmountCents: z40.number().int().min(0),
19868
19802
  depositRefundability: bookingDepositRefundPolicySchema,
19869
- instalmentCount: z41.number().int().positive(),
19870
- intervalCount: z41.number().int().positive(),
19871
- intervalUnit: z41.enum(["day", "week", "month"])
19803
+ instalmentCount: z40.number().int().positive(),
19804
+ intervalCount: z40.number().int().positive(),
19805
+ intervalUnit: z40.enum(["day", "week", "month"])
19872
19806
  }),
19873
- z41.object({
19874
- kind: z41.literal("equal_scheduled_instalments"),
19875
- instalmentCount: z41.number().int().positive(),
19876
- intervalCount: z41.number().int().positive(),
19877
- intervalUnit: z41.enum(["day", "week", "month"])
19807
+ z40.object({
19808
+ kind: z40.literal("equal_scheduled_instalments"),
19809
+ instalmentCount: z40.number().int().positive(),
19810
+ intervalCount: z40.number().int().positive(),
19811
+ intervalUnit: z40.enum(["day", "week", "month"])
19878
19812
  })
19879
19813
  ]);
19880
- var bookingFlexibleBalanceDueDateRuleSchema = z41.union([
19881
- z41.object({
19882
- kind: z41.literal("relative_to_start_date"),
19883
- daysBeforeStart: z41.number().int().positive()
19814
+ var bookingFlexibleBalanceDueDateRuleSchema = z40.union([
19815
+ z40.object({
19816
+ kind: z40.literal("relative_to_start_date"),
19817
+ daysBeforeStart: z40.number().int().positive()
19884
19818
  }),
19885
- z41.object({
19886
- kind: z41.literal("fixed_calendar_date"),
19887
- dueAt: z41.string().datetime()
19819
+ z40.object({
19820
+ kind: z40.literal("fixed_calendar_date"),
19821
+ dueAt: z40.string().datetime()
19888
19822
  })
19889
19823
  ]);
19890
- var bookingFlexibleBalanceConfigSchema = z41.object({
19891
- upfrontAmountCents: z41.number().int().min(0),
19824
+ var bookingFlexibleBalanceConfigSchema = z40.object({
19825
+ upfrontAmountCents: z40.number().int().min(0),
19892
19826
  dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
19893
19827
  depositRefundability: bookingDepositRefundPolicySchema
19894
19828
  });
19895
- var blockBookingPaymentCollectionOptionSchema = z41.union([
19896
- z41.object({
19897
- kind: z41.literal("upfront")
19829
+ var blockBookingPaymentCollectionOptionSchema = z40.union([
19830
+ z40.object({
19831
+ kind: z40.literal("upfront")
19898
19832
  }),
19899
- z41.object({
19900
- kind: z41.literal("deferred_manual")
19833
+ z40.object({
19834
+ kind: z40.literal("deferred_manual")
19901
19835
  }),
19902
- z41.object({
19903
- kind: z41.literal("instalment_plan"),
19836
+ z40.object({
19837
+ kind: z40.literal("instalment_plan"),
19904
19838
  plan: bookingInstalmentPlanSchema
19905
19839
  }),
19906
- z41.object({
19907
- kind: z41.literal("flexible_balance"),
19840
+ z40.object({
19841
+ kind: z40.literal("flexible_balance"),
19908
19842
  config: bookingFlexibleBalanceConfigSchema
19909
19843
  })
19910
19844
  ]);
19911
- var blockBookingPaymentTermsSchema = z41.object({
19912
- allowedOptions: z41.array(blockBookingPaymentCollectionOptionSchema).min(1)
19845
+ var blockBookingPaymentTermsSchema = z40.object({
19846
+ allowedOptions: z40.array(blockBookingPaymentCollectionOptionSchema).min(1)
19913
19847
  });
19914
19848
 
19915
19849
  // ../blocks/src/system/blocks/courses/shared/schemas.ts
19916
- import { z as z42 } from "zod";
19917
- var courseVenueSchema = z42.object({
19918
- id: z42.string(),
19919
- name: z42.string(),
19920
- address: z42.string().nullable()
19850
+ import { z as z41 } from "zod";
19851
+ var courseVenueSchema = z41.object({
19852
+ id: z41.string(),
19853
+ name: z41.string(),
19854
+ address: z41.string().nullable()
19855
+ });
19856
+ var courseSessionSchema = z41.object({
19857
+ id: z41.string(),
19858
+ startsAt: z41.string(),
19859
+ endsAt: z41.string(),
19860
+ timeZone: z41.string(),
19861
+ capacityOverride: z41.number().nullable().optional(),
19862
+ overrides: z41.record(z41.string(), z41.unknown()).nullable().optional()
19863
+ });
19864
+ var courseTeamMemberSummarySchema = z41.object({
19865
+ id: z41.string(),
19866
+ name: z41.string(),
19867
+ roleLabel: z41.string().nullable(),
19868
+ summary: z41.string().nullable(),
19869
+ profilePath: z41.string().nullable()
19870
+ });
19871
+ var coursePricingOptionSchema = z41.object({
19872
+ id: z41.string(),
19873
+ name: z41.string(),
19874
+ description: z41.string().nullable(),
19875
+ priceAmount: z41.number(),
19876
+ isActive: z41.boolean(),
19877
+ sortOrder: z41.number(),
19878
+ capacityLimit: z41.number().nullable(),
19879
+ saleStartsAt: z41.string().nullable(),
19880
+ saleEndsAt: z41.string().nullable(),
19881
+ attendanceScope: z41.enum(["in_person", "online", "both"]).nullable().optional()
19882
+ });
19883
+ var coursePricingSchema = z41.object({
19884
+ bookingRequirement: z41.enum(["none", "required"]),
19885
+ pricingStrategy: z41.enum(["free", "single", "tiered"]),
19886
+ currency: z41.string(),
19887
+ singlePriceAmount: z41.number().nullable(),
19888
+ paymentTerms: blockBookingPaymentTermsSchema,
19889
+ options: z41.array(coursePricingOptionSchema)
19890
+ });
19891
+ var publicCourseSchema = z41.object({
19892
+ id: z41.string(),
19893
+ title: z41.string(),
19894
+ slug: z41.string(),
19895
+ description: z41.unknown().nullable(),
19896
+ teamMembers: z41.array(courseTeamMemberSummarySchema).optional(),
19897
+ enrollmentOpen: z41.boolean(),
19898
+ pricing: coursePricingSchema.optional(),
19899
+ priceCents: z41.number().nullable(),
19900
+ currency: z41.string(),
19901
+ paymentTerms: blockBookingPaymentTermsSchema,
19902
+ enrollmentCapacity: z41.number().nullable(),
19903
+ acceptsMemberships: z41.boolean(),
19904
+ status: z41.enum(["active", "draft", "cancelled"]),
19905
+ sessionsCount: z41.number(),
19906
+ enrolledCount: z41.number(),
19907
+ availableSpots: z41.number().nullable(),
19908
+ sessions: z41.array(courseSessionSchema),
19909
+ venue: courseVenueSchema.nullable(),
19910
+ contentEntryId: z41.string().nullable()
19921
19911
  });
19922
- var courseSessionSchema = z42.object({
19912
+ var publicCoursesArraySchema = z41.array(publicCourseSchema);
19913
+
19914
+ // ../blocks/src/system/blocks/events/shared/schemas.ts
19915
+ var eventPresetSchema = z42.enum(["event", "class", "workshop", "retreat", "performance"]);
19916
+ var eventScheduleScopeSchema = z42.enum(["recurring", "oneOff"]);
19917
+ var eventVenueSchema = z42.object({
19923
19918
  id: z42.string(),
19924
- startsAt: z42.string(),
19925
- endsAt: z42.string(),
19926
- timeZone: z42.string(),
19927
- capacityOverride: z42.number().nullable().optional(),
19928
- overrides: z42.record(z42.string(), z42.unknown()).nullable().optional()
19919
+ name: z42.string(),
19920
+ address: z42.string().nullable(),
19921
+ location: z42.object({
19922
+ lat: z42.number(),
19923
+ lng: z42.number()
19924
+ }).nullable()
19929
19925
  });
19930
- var courseTeamMemberSummarySchema = z42.object({
19926
+ var eventCategorySchema = z42.object({
19931
19927
  id: z42.string(),
19932
19928
  name: z42.string(),
19933
- roleLabel: z42.string().nullable(),
19934
- summary: z42.string().nullable(),
19935
- profilePath: z42.string().nullable()
19929
+ color: z42.string().nullable()
19936
19930
  });
19937
- var coursePricingOptionSchema = z42.object({
19931
+ var pricingTypeSchema = z42.enum(["free", "paid", "pass_only", "membership_only"]);
19932
+ var accessRestrictionSchema = z42.enum(["none", "category"]);
19933
+ var eventPricingModeSchema = z42.enum(["single", "ticket_types"]);
19934
+ var publicEventAttendanceModeSchema = z42.enum(["in_person", "online"]);
19935
+ var publicEventAttendanceModeAvailabilitySchema = z42.object({
19936
+ mode: publicEventAttendanceModeSchema,
19937
+ capacity: z42.number().nullable(),
19938
+ registeredCount: z42.number(),
19939
+ availableSpots: z42.number().nullable(),
19940
+ waitlistEnabled: z42.boolean()
19941
+ });
19942
+ var publicEventTicketTypeAvailabilitySchema = z42.union([
19943
+ z42.object({
19944
+ kind: z42.literal("available"),
19945
+ remainingCapacity: z42.number().nullable()
19946
+ }),
19947
+ z42.object({
19948
+ kind: z42.literal("unavailable"),
19949
+ reason: z42.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
19950
+ remainingCapacity: z42.number().nullable()
19951
+ })
19952
+ ]);
19953
+ var publicEventTicketTypeSchema = z42.object({
19938
19954
  id: z42.string(),
19955
+ siteId: z42.string(),
19956
+ eventSeriesId: z42.string(),
19939
19957
  name: z42.string(),
19940
19958
  description: z42.string().nullable(),
19941
19959
  priceAmount: z42.number(),
19942
19960
  isActive: z42.boolean(),
19943
19961
  sortOrder: z42.number(),
19962
+ capacityMode: z42.enum(["limited", "unlimited"]),
19944
19963
  capacityLimit: z42.number().nullable(),
19964
+ attendanceScope: z42.enum(["in_person", "online", "both"]).optional(),
19945
19965
  saleStartsAt: z42.string().nullable(),
19946
19966
  saleEndsAt: z42.string().nullable(),
19947
- attendanceScope: z42.enum(["in_person", "online", "both"]).nullable().optional()
19948
- });
19949
- var coursePricingSchema = z42.object({
19950
- bookingRequirement: z42.enum(["none", "required"]),
19951
- pricingStrategy: z42.enum(["free", "single", "tiered"]),
19952
- currency: z42.string(),
19953
- singlePriceAmount: z42.number().nullable(),
19954
- paymentTerms: blockBookingPaymentTermsSchema,
19955
- options: z42.array(coursePricingOptionSchema)
19956
- });
19957
- var publicCourseSchema = z42.object({
19958
- id: z42.string(),
19959
- title: z42.string(),
19960
- slug: z42.string(),
19961
- description: z42.unknown().nullable(),
19962
- teamMembers: z42.array(courseTeamMemberSummarySchema).optional(),
19963
- enrollmentOpen: z42.boolean(),
19964
- pricing: coursePricingSchema.optional(),
19965
- priceCents: z42.number().nullable(),
19966
- currency: z42.string(),
19967
- paymentTerms: blockBookingPaymentTermsSchema,
19968
- enrollmentCapacity: z42.number().nullable(),
19969
- acceptsMemberships: z42.boolean(),
19970
- status: z42.enum(["active", "draft", "cancelled"]),
19971
- sessionsCount: z42.number(),
19972
- enrolledCount: z42.number(),
19973
- availableSpots: z42.number().nullable(),
19974
- sessions: z42.array(courseSessionSchema),
19975
- venue: courseVenueSchema.nullable(),
19976
- contentEntryId: z42.string().nullable()
19977
- });
19978
- var publicCoursesArraySchema = z42.array(publicCourseSchema);
19979
-
19980
- // ../blocks/src/system/blocks/events/shared/schemas.ts
19981
- var eventPresetSchema = z43.enum(["event", "class", "workshop", "retreat", "performance"]);
19982
- var eventScheduleScopeSchema = z43.enum(["recurring", "oneOff"]);
19983
- var eventVenueSchema = z43.object({
19984
- id: z43.string(),
19985
- name: z43.string(),
19986
- address: z43.string().nullable(),
19987
- location: z43.object({
19988
- lat: z43.number(),
19989
- lng: z43.number()
19990
- }).nullable()
19991
- });
19992
- var eventCategorySchema = z43.object({
19993
- id: z43.string(),
19994
- name: z43.string(),
19995
- color: z43.string().nullable()
19996
- });
19997
- var pricingTypeSchema = z43.enum(["free", "paid", "pass_only", "membership_only"]);
19998
- var accessRestrictionSchema = z43.enum(["none", "category"]);
19999
- var eventPricingModeSchema = z43.enum(["single", "ticket_types"]);
20000
- var publicEventAttendanceModeSchema = z43.enum(["in_person", "online"]);
20001
- var publicEventAttendanceModeAvailabilitySchema = z43.object({
20002
- mode: publicEventAttendanceModeSchema,
20003
- capacity: z43.number().nullable(),
20004
- registeredCount: z43.number(),
20005
- availableSpots: z43.number().nullable(),
20006
- waitlistEnabled: z43.boolean()
20007
- });
20008
- var publicEventTicketTypeAvailabilitySchema = z43.union([
20009
- z43.object({
20010
- kind: z43.literal("available"),
20011
- remainingCapacity: z43.number().nullable()
20012
- }),
20013
- z43.object({
20014
- kind: z43.literal("unavailable"),
20015
- reason: z43.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
20016
- remainingCapacity: z43.number().nullable()
20017
- })
20018
- ]);
20019
- var publicEventTicketTypeSchema = z43.object({
20020
- id: z43.string(),
20021
- siteId: z43.string(),
20022
- eventSeriesId: z43.string(),
20023
- name: z43.string(),
20024
- description: z43.string().nullable(),
20025
- priceAmount: z43.number(),
20026
- isActive: z43.boolean(),
20027
- sortOrder: z43.number(),
20028
- capacityMode: z43.enum(["limited", "unlimited"]),
20029
- capacityLimit: z43.number().nullable(),
20030
- attendanceScope: z43.enum(["in_person", "online", "both"]).optional(),
20031
- saleStartsAt: z43.string().nullable(),
20032
- saleEndsAt: z43.string().nullable(),
20033
19967
  availability: publicEventTicketTypeAvailabilitySchema,
20034
- createdAt: z43.string(),
20035
- updatedAt: z43.string()
19968
+ createdAt: z42.string(),
19969
+ updatedAt: z42.string()
20036
19970
  });
20037
- var publicTeamMemberSummarySchema = z43.object({
20038
- id: z43.string(),
20039
- name: z43.string(),
20040
- roleLabel: z43.string().nullable(),
20041
- summary: z43.string().nullable(),
20042
- profilePath: z43.string().nullable()
19971
+ var publicTeamMemberSummarySchema = z42.object({
19972
+ id: z42.string(),
19973
+ name: z42.string(),
19974
+ roleLabel: z42.string().nullable(),
19975
+ summary: z42.string().nullable(),
19976
+ profilePath: z42.string().nullable()
20043
19977
  });
20044
- var publicEventSchema = z43.object({
20045
- kind: z43.enum(["event", "course_session"]).optional(),
19978
+ var publicEventSchema = z42.object({
19979
+ kind: z42.enum(["event", "course_session"]).optional(),
20046
19980
  eventPreset: eventPresetSchema.optional(),
20047
19981
  scheduleScope: eventScheduleScopeSchema.optional(),
20048
- id: z43.string(),
20049
- occurrenceId: z43.string(),
20050
- seriesId: z43.string(),
20051
- title: z43.string(),
20052
- description: z43.string().nullable(),
20053
- presentation: z43.object({
20054
- cardTitleOverride: z43.string().nullable().optional(),
20055
- summary: z43.string().nullable().optional(),
19982
+ id: z42.string(),
19983
+ occurrenceId: z42.string(),
19984
+ seriesId: z42.string(),
19985
+ title: z42.string(),
19986
+ description: z42.string().nullable(),
19987
+ presentation: z42.object({
19988
+ cardTitleOverride: z42.string().nullable().optional(),
19989
+ summary: z42.string().nullable().optional(),
20056
19990
  image: mediaSchema2.nullable().optional(),
20057
- tags: z43.array(z43.string()).optional(),
20058
- ctaLabel: z43.string().nullable().optional(),
20059
- badges: z43.array(z43.string()).optional()
19991
+ tags: z42.array(z42.string()).optional(),
19992
+ ctaLabel: z42.string().nullable().optional(),
19993
+ badges: z42.array(z42.string()).optional()
20060
19994
  }).optional(),
20061
- slug: z43.string(),
20062
- path: z43.string(),
20063
- requiresRegistration: z43.boolean(),
20064
- deliveryMode: z43.enum(["in_person", "online", "hybrid"]),
20065
- attendanceModes: z43.array(publicEventAttendanceModeAvailabilitySchema),
20066
- startsAt: z43.string(),
20067
- endsAt: z43.string(),
20068
- capacity: z43.number().nullable(),
20069
- registeredCount: z43.number(),
20070
- availableSpots: z43.number().nullable(),
20071
- waitlistEnabled: z43.boolean(),
19995
+ slug: z42.string(),
19996
+ path: z42.string(),
19997
+ requiresRegistration: z42.boolean(),
19998
+ deliveryMode: z42.enum(["in_person", "online", "hybrid"]),
19999
+ attendanceModes: z42.array(publicEventAttendanceModeAvailabilitySchema),
20000
+ startsAt: z42.string(),
20001
+ endsAt: z42.string(),
20002
+ capacity: z42.number().nullable(),
20003
+ registeredCount: z42.number(),
20004
+ availableSpots: z42.number().nullable(),
20005
+ waitlistEnabled: z42.boolean(),
20072
20006
  venue: eventVenueSchema.nullable(),
20073
20007
  eventCategory: eventCategorySchema.nullable(),
20074
- teamMembers: z43.array(publicTeamMemberSummarySchema).optional(),
20075
- status: z43.enum(["active", "draft", "archived"]).optional(),
20076
- timeZone: z43.string(),
20008
+ teamMembers: z42.array(publicTeamMemberSummarySchema).optional(),
20009
+ status: z42.enum(["active", "draft", "archived"]).optional(),
20010
+ timeZone: z42.string(),
20077
20011
  // Pricing & access fields
20078
20012
  pricingType: pricingTypeSchema,
20079
- price: z43.number().nullable(),
20080
- currency: z43.string(),
20013
+ price: z42.number().nullable(),
20014
+ currency: z42.string(),
20081
20015
  paymentTerms: blockBookingPaymentTermsSchema,
20082
20016
  pricingMode: eventPricingModeSchema.optional(),
20083
- ticketTypes: z43.array(publicEventTicketTypeSchema).optional(),
20017
+ ticketTypes: z42.array(publicEventTicketTypeSchema).optional(),
20084
20018
  accessRestriction: accessRestrictionSchema,
20085
- allowedCategoryIds: z43.array(z43.string()),
20086
- requireGuestDetails: z43.boolean().optional(),
20087
- acceptsPasses: z43.boolean().optional(),
20088
- acceptsMemberships: z43.boolean().optional(),
20089
- course: z43.object({
20090
- id: z43.string(),
20019
+ allowedCategoryIds: z42.array(z42.string()),
20020
+ requireGuestDetails: z42.boolean().optional(),
20021
+ acceptsPasses: z42.boolean().optional(),
20022
+ acceptsMemberships: z42.boolean().optional(),
20023
+ course: z42.object({
20024
+ id: z42.string(),
20091
20025
  pricing: coursePricingSchema.optional(),
20092
- priceCents: z43.number().nullable(),
20093
- currency: z43.string(),
20094
- enrollmentOpen: z43.boolean()
20026
+ priceCents: z42.number().nullable(),
20027
+ currency: z42.string(),
20028
+ enrollmentOpen: z42.boolean()
20095
20029
  }).nullable().optional()
20096
20030
  });
20097
- var publicEventsArraySchema = z43.array(publicEventSchema);
20031
+ var publicEventsArraySchema = z42.array(publicEventSchema);
20098
20032
 
20099
20033
  // ../blocks/src/system/blocks/events/shared/fields.ts
20100
20034
  var cardStylingFields = [
@@ -20298,83 +20232,83 @@ function normalizeEventStaffMemberId(value) {
20298
20232
  }
20299
20233
 
20300
20234
  // ../blocks/src/system/blocks/event-registration.shared.ts
20301
- import { z as z44 } from "zod";
20302
- var occurrenceContextSchema = z44.object({
20303
- id: z44.string(),
20304
- seriesId: z44.string(),
20305
- startsAt: z44.string(),
20306
- endsAt: z44.string(),
20307
- timeZone: z44.string(),
20308
- capacityOverride: z44.number().nullable().optional(),
20309
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
20235
+ import { z as z43 } from "zod";
20236
+ var occurrenceContextSchema = z43.object({
20237
+ id: z43.string(),
20238
+ seriesId: z43.string(),
20239
+ startsAt: z43.string(),
20240
+ endsAt: z43.string(),
20241
+ timeZone: z43.string(),
20242
+ capacityOverride: z43.number().nullable().optional(),
20243
+ overrides: z43.record(z43.string(), z43.unknown()).nullable().optional()
20310
20244
  }).nullable();
20311
20245
 
20312
20246
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20313
- import { z as z46 } from "zod";
20247
+ import { z as z45 } from "zod";
20314
20248
 
20315
20249
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
20316
- import { z as z45 } from "zod";
20317
- var previewStageSchema = z45.enum(["preview", "published"]);
20318
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
20319
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
20320
- var eventLayoutSchema = z45.enum(["grid", "stack", "compact"]);
20321
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
20322
- var weekStartSchema = z45.enum(["sunday", "monday"]);
20323
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
20324
- var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
20250
+ import { z as z44 } from "zod";
20251
+ var previewStageSchema = z44.enum(["preview", "published"]);
20252
+ var registrationButtonVariantSchema = z44.enum(["primary", "secondary", "outline"]);
20253
+ var eventButtonVariantSchema = z44.enum(["primary", "secondary", "outline", "link"]);
20254
+ var eventLayoutSchema = z44.enum(["grid", "stack", "compact"]);
20255
+ var columnOptionSchema = z44.enum(["2", "3", "4"]);
20256
+ var weekStartSchema = z44.enum(["sunday", "monday"]);
20257
+ var filterAutoShowSchema = z44.enum(["auto", "always", "never"]);
20258
+ var calendarTabViewsSchema = z44.enum(["both", "month", "week"]);
20325
20259
 
20326
20260
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20327
- var contentEntrySchema = z46.object({
20328
- id: z46.string(),
20329
- slug: z46.string(),
20330
- contentTypeSlug: z46.string()
20331
- });
20332
- var eventRegistrationSourceSchema = z46.object({
20333
- siteId: z46.string().optional(),
20334
- apiBaseUrl: z46.string().optional(),
20335
- portalToken: z46.string().nullable().optional(),
20261
+ var contentEntrySchema = z45.object({
20262
+ id: z45.string(),
20263
+ slug: z45.string(),
20264
+ contentTypeSlug: z45.string()
20265
+ });
20266
+ var eventRegistrationSourceSchema = z45.object({
20267
+ siteId: z45.string().optional(),
20268
+ apiBaseUrl: z45.string().optional(),
20269
+ portalToken: z45.string().nullable().optional(),
20336
20270
  occurrenceContext: occurrenceContextSchema.optional(),
20337
20271
  contentEntry: contentEntrySchema.nullable().optional(),
20338
- events: z46.array(publicEventSchema).nullable().optional(),
20339
- className: z46.string().nullable().optional(),
20340
- buttonText: z46.string().nullable().optional(),
20341
- maxTickets: z46.string().nullable().optional(),
20342
- showVenue: z46.boolean().optional(),
20343
- showCapacity: z46.boolean().optional(),
20344
- successMessage: z46.string().optional(),
20345
- waitlistMessage: z46.string().optional(),
20272
+ events: z45.array(publicEventSchema).nullable().optional(),
20273
+ className: z45.string().nullable().optional(),
20274
+ buttonText: z45.string().nullable().optional(),
20275
+ maxTickets: z45.string().nullable().optional(),
20276
+ showVenue: z45.boolean().optional(),
20277
+ showCapacity: z45.boolean().optional(),
20278
+ successMessage: z45.string().optional(),
20279
+ waitlistMessage: z45.string().optional(),
20346
20280
  buttonVariant: registrationButtonVariantSchema.optional(),
20347
- spamProtectionEnabled: z46.boolean().optional(),
20281
+ spamProtectionEnabled: z45.boolean().optional(),
20348
20282
  stage: previewStageSchema.optional(),
20349
- supportEmail: z46.string().optional()
20283
+ supportEmail: z45.string().optional()
20350
20284
  });
20351
- var eventRegistrationDisplaySchema = z46.object({
20352
- kind: z46.literal("event-registration"),
20353
- state: z46.literal("shell"),
20354
- className: z46.string().nullable(),
20355
- summaryButtonText: z46.string()
20285
+ var eventRegistrationDisplaySchema = z45.object({
20286
+ kind: z45.literal("event-registration"),
20287
+ state: z45.literal("shell"),
20288
+ className: z45.string().nullable(),
20289
+ summaryButtonText: z45.string()
20356
20290
  });
20357
- var eventRegistrationHydrationSchema = z46.object({
20291
+ var eventRegistrationHydrationSchema = z45.object({
20358
20292
  occurrenceContext: occurrenceContextSchema.optional(),
20359
20293
  contentEntry: contentEntrySchema.nullable().optional(),
20360
- events: z46.array(publicEventSchema).nullable().optional(),
20361
- maxTickets: z46.string().optional(),
20362
- showVenue: z46.boolean().optional(),
20363
- showCapacity: z46.boolean().optional(),
20364
- successMessage: z46.string().optional(),
20365
- waitlistMessage: z46.string().optional(),
20294
+ events: z45.array(publicEventSchema).nullable().optional(),
20295
+ maxTickets: z45.string().optional(),
20296
+ showVenue: z45.boolean().optional(),
20297
+ showCapacity: z45.boolean().optional(),
20298
+ successMessage: z45.string().optional(),
20299
+ waitlistMessage: z45.string().optional(),
20366
20300
  buttonVariant: registrationButtonVariantSchema.optional(),
20367
- spamProtectionEnabled: z46.boolean().optional(),
20368
- supportEmail: z46.string().optional()
20301
+ spamProtectionEnabled: z45.boolean().optional(),
20302
+ supportEmail: z45.string().optional()
20369
20303
  });
20370
- var eventRegistrationRenderSchema = z46.object({
20304
+ var eventRegistrationRenderSchema = z45.object({
20371
20305
  display: eventRegistrationDisplaySchema,
20372
20306
  hydration: eventRegistrationHydrationSchema
20373
20307
  });
20374
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
20375
- siteId: z46.string().optional(),
20376
- apiBaseUrl: z46.string().optional(),
20377
- portalToken: z46.string().nullable().optional(),
20308
+ var eventRegistrationIslandMetaCodec = createZodCodec(z45.object({
20309
+ siteId: z45.string().optional(),
20310
+ apiBaseUrl: z45.string().optional(),
20311
+ portalToken: z45.string().nullable().optional(),
20378
20312
  stage: previewStageSchema.optional()
20379
20313
  }));
20380
20314
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20591,7 +20525,7 @@ var eventRegistrationBlockDefinition = {
20591
20525
  manifest: eventRegistrationManifest,
20592
20526
  runtime: eventRegistrationBlockRuntime,
20593
20527
  dataSchemas: {
20594
- events: z47.array(publicEventSchema).optional(),
20528
+ events: z46.array(publicEventSchema).optional(),
20595
20529
  occurrenceContext: occurrenceContextSchema.optional()
20596
20530
  },
20597
20531
  dataLoaders: {
@@ -20614,72 +20548,72 @@ var eventRegistrationBlockDefinition = {
20614
20548
  };
20615
20549
 
20616
20550
  // ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
20617
- import { z as z48 } from "zod";
20618
- var contentEntrySchema2 = z48.object({
20619
- id: z48.string(),
20620
- slug: z48.string(),
20621
- contentTypeSlug: z48.string()
20622
- });
20623
- var courseEntrySubrouteContextSchema = z48.union([
20624
- z48.object({
20625
- kind: z48.literal("course-run"),
20626
- run: z48.object({
20627
- courseId: z48.string(),
20628
- seriesId: z48.string(),
20629
- runSlug: z48.string()
20551
+ import { z as z47 } from "zod";
20552
+ var contentEntrySchema2 = z47.object({
20553
+ id: z47.string(),
20554
+ slug: z47.string(),
20555
+ contentTypeSlug: z47.string()
20556
+ });
20557
+ var courseEntrySubrouteContextSchema = z47.union([
20558
+ z47.object({
20559
+ kind: z47.literal("course-run"),
20560
+ run: z47.object({
20561
+ courseId: z47.string(),
20562
+ seriesId: z47.string(),
20563
+ runSlug: z47.string()
20630
20564
  })
20631
20565
  }),
20632
- z48.object({
20633
- kind: z48.literal("event-occurrence"),
20566
+ z47.object({
20567
+ kind: z47.literal("event-occurrence"),
20634
20568
  occurrence: occurrenceContextSchema
20635
20569
  })
20636
20570
  ]);
20637
- var courseRegistrationSourceSchema = z48.object({
20638
- siteId: z48.string().optional(),
20639
- apiBaseUrl: z48.string().optional(),
20640
- portalToken: z48.string().nullable().optional(),
20571
+ var courseRegistrationSourceSchema = z47.object({
20572
+ siteId: z47.string().optional(),
20573
+ apiBaseUrl: z47.string().optional(),
20574
+ portalToken: z47.string().nullable().optional(),
20641
20575
  contentEntry: contentEntrySchema2.nullable().optional(),
20642
20576
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20643
- courses: z48.array(publicCourseSchema).nullable().optional(),
20644
- className: z48.string().nullable().optional(),
20645
- showSessions: z48.boolean().optional(),
20646
- showPrice: z48.boolean().optional(),
20647
- showCapacity: z48.boolean().optional(),
20648
- showVenue: z48.boolean().optional(),
20649
- successMessage: z48.string().optional(),
20650
- waitlistMessage: z48.string().optional(),
20651
- membershipMessage: z48.string().optional(),
20652
- buttonText: z48.string().nullable().optional(),
20577
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20578
+ className: z47.string().nullable().optional(),
20579
+ showSessions: z47.boolean().optional(),
20580
+ showPrice: z47.boolean().optional(),
20581
+ showCapacity: z47.boolean().optional(),
20582
+ showVenue: z47.boolean().optional(),
20583
+ successMessage: z47.string().optional(),
20584
+ waitlistMessage: z47.string().optional(),
20585
+ membershipMessage: z47.string().optional(),
20586
+ buttonText: z47.string().nullable().optional(),
20653
20587
  buttonVariant: registrationButtonVariantSchema.optional(),
20654
20588
  stage: previewStageSchema.optional()
20655
20589
  });
20656
- var courseRegistrationDisplaySchema = z48.object({
20657
- kind: z48.literal("course-registration"),
20658
- state: z48.literal("shell"),
20659
- className: z48.string().nullable(),
20660
- summaryButtonText: z48.string()
20590
+ var courseRegistrationDisplaySchema = z47.object({
20591
+ kind: z47.literal("course-registration"),
20592
+ state: z47.literal("shell"),
20593
+ className: z47.string().nullable(),
20594
+ summaryButtonText: z47.string()
20661
20595
  });
20662
- var courseRegistrationHydrationSchema = z48.object({
20596
+ var courseRegistrationHydrationSchema = z47.object({
20663
20597
  contentEntry: contentEntrySchema2.nullable().optional(),
20664
20598
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20665
- courses: z48.array(publicCourseSchema).nullable().optional(),
20666
- showSessions: z48.boolean().optional(),
20667
- showPrice: z48.boolean().optional(),
20668
- showCapacity: z48.boolean().optional(),
20669
- showVenue: z48.boolean().optional(),
20670
- successMessage: z48.string().optional(),
20671
- waitlistMessage: z48.string().optional(),
20672
- membershipMessage: z48.string().optional(),
20599
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20600
+ showSessions: z47.boolean().optional(),
20601
+ showPrice: z47.boolean().optional(),
20602
+ showCapacity: z47.boolean().optional(),
20603
+ showVenue: z47.boolean().optional(),
20604
+ successMessage: z47.string().optional(),
20605
+ waitlistMessage: z47.string().optional(),
20606
+ membershipMessage: z47.string().optional(),
20673
20607
  buttonVariant: registrationButtonVariantSchema.optional()
20674
20608
  });
20675
- var courseRegistrationRenderSchema = z48.object({
20609
+ var courseRegistrationRenderSchema = z47.object({
20676
20610
  display: courseRegistrationDisplaySchema,
20677
20611
  hydration: courseRegistrationHydrationSchema
20678
20612
  });
20679
- var courseRegistrationIslandMetaCodec = createZodCodec(z48.object({
20680
- siteId: z48.string().optional(),
20681
- apiBaseUrl: z48.string().optional(),
20682
- portalToken: z48.string().nullable().optional(),
20613
+ var courseRegistrationIslandMetaCodec = createZodCodec(z47.object({
20614
+ siteId: z47.string().optional(),
20615
+ apiBaseUrl: z47.string().optional(),
20616
+ portalToken: z47.string().nullable().optional(),
20683
20617
  stage: previewStageSchema.optional()
20684
20618
  }));
20685
20619
  var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20939,32 +20873,32 @@ var courseRegistrationBlockDefinition = {
20939
20873
  };
20940
20874
 
20941
20875
  // ../blocks/src/system/blocks/event-details.ts
20942
- import { z as z50 } from "zod";
20876
+ import { z as z49 } from "zod";
20943
20877
 
20944
20878
  // ../blocks/src/system/blocks/shop.shared.ts
20945
- import { z as z49 } from "zod";
20946
- var publicPassProductSchema = z49.object({
20947
- id: z49.string(),
20948
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
20949
- name: z49.string(),
20950
- description: z49.string().nullable(),
20951
- price: z49.number(),
20952
- currency: z49.string(),
20953
- creditsTotal: z49.number(),
20954
- pricePerCredit: z49.number(),
20955
- validDays: z49.number().nullable(),
20956
- eligibleCategoryIds: z49.array(z49.string()),
20957
- eligibleCategoryNames: z49.array(z49.string())
20958
- });
20959
- var publicMembershipProductSchema = z49.object({
20960
- id: z49.string(),
20961
- name: z49.string(),
20962
- description: z49.string().nullable(),
20963
- price: z49.number(),
20964
- currency: z49.string(),
20965
- billingInterval: z49.enum(["month", "year"]),
20966
- eligibleCategoryIds: z49.array(z49.string()),
20967
- eligibleCategoryNames: z49.array(z49.string())
20879
+ import { z as z48 } from "zod";
20880
+ var publicPassProductSchema = z48.object({
20881
+ id: z48.string(),
20882
+ productUseCase: z48.enum(["event_pass", "appointment_package"]).default("event_pass"),
20883
+ name: z48.string(),
20884
+ description: z48.string().nullable(),
20885
+ price: z48.number(),
20886
+ currency: z48.string(),
20887
+ creditsTotal: z48.number(),
20888
+ pricePerCredit: z48.number(),
20889
+ validDays: z48.number().nullable(),
20890
+ eligibleCategoryIds: z48.array(z48.string()),
20891
+ eligibleCategoryNames: z48.array(z48.string())
20892
+ });
20893
+ var publicMembershipProductSchema = z48.object({
20894
+ id: z48.string(),
20895
+ name: z48.string(),
20896
+ description: z48.string().nullable(),
20897
+ price: z48.number(),
20898
+ currency: z48.string(),
20899
+ billingInterval: z48.enum(["month", "year"]),
20900
+ eligibleCategoryIds: z48.array(z48.string()),
20901
+ eligibleCategoryNames: z48.array(z48.string())
20968
20902
  });
20969
20903
 
20970
20904
  // ../blocks/src/system/blocks/event-details.ts
@@ -21096,22 +21030,22 @@ var eventDetailsManifest = createBlockManifest({
21096
21030
  })
21097
21031
  ]
21098
21032
  });
21099
- var occurrenceContextSchema2 = z50.object({
21100
- id: z50.string(),
21101
- seriesId: z50.string(),
21102
- startsAt: z50.string(),
21103
- endsAt: z50.string(),
21104
- timeZone: z50.string(),
21105
- capacityOverride: z50.number().nullable().optional(),
21106
- overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
21033
+ var occurrenceContextSchema2 = z49.object({
21034
+ id: z49.string(),
21035
+ seriesId: z49.string(),
21036
+ startsAt: z49.string(),
21037
+ endsAt: z49.string(),
21038
+ timeZone: z49.string(),
21039
+ capacityOverride: z49.number().nullable().optional(),
21040
+ overrides: z49.record(z49.string(), z49.unknown()).nullable().optional()
21107
21041
  }).nullable();
21108
21042
  var eventDetailsBlockDefinition = {
21109
21043
  manifest: eventDetailsManifest,
21110
21044
  dataSchemas: {
21111
- eventDetailsData: z50.object({
21045
+ eventDetailsData: z49.object({
21112
21046
  events: publicEventsArraySchema,
21113
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
21114
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) })
21047
+ sitePasses: z49.object({ passes: z49.array(publicPassProductSchema) }),
21048
+ siteMemberships: z49.object({ memberships: z49.array(publicMembershipProductSchema) })
21115
21049
  }).optional(),
21116
21050
  occurrenceContext: occurrenceContextSchema2.optional()
21117
21051
  },
@@ -21430,7 +21364,7 @@ var eventSpotlightBlockDefinition = {
21430
21364
  };
21431
21365
 
21432
21366
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21433
- import { z as z51 } from "zod";
21367
+ import { z as z50 } from "zod";
21434
21368
 
21435
21369
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
21436
21370
  var COLUMN_CLASSES = {
@@ -21537,87 +21471,87 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
21537
21471
  }
21538
21472
 
21539
21473
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21540
- var cardVariantSchema2 = z51.enum(["default", "variant1", "variant2"]);
21541
- var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
21542
- var eventBlockKindSchema = z51.enum(eventBlockKindValues);
21543
- var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
21544
- var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
21545
- var eventListingSourceSchema = z51.object({
21546
- events: z51.array(publicEventSchema).nullable().optional(),
21547
- siteId: z51.string(),
21548
- apiBaseUrl: z51.string().optional(),
21474
+ var cardVariantSchema2 = z50.enum(["default", "variant1", "variant2"]);
21475
+ var cardOrientationSchema = z50.enum(["vertical", "horizontal"]);
21476
+ var eventBlockKindSchema = z50.enum(eventBlockKindValues);
21477
+ var eventSurfaceScopeSchema = z50.enum(eventSurfaceScopeValues);
21478
+ var eventScheduleScopeSchema2 = z50.enum(eventScheduleScopeValues);
21479
+ var eventListingSourceSchema = z50.object({
21480
+ events: z50.array(publicEventSchema).nullable().optional(),
21481
+ siteId: z50.string(),
21482
+ apiBaseUrl: z50.string().optional(),
21549
21483
  stage: previewStageSchema.optional(),
21550
21484
  layout: eventLayoutSchema.optional(),
21551
21485
  columns: columnOptionSchema.optional(),
21552
- eventsPerPage: z51.string().optional(),
21553
- paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
21554
- seeAllUrl: z51.string().optional(),
21555
- loadMoreText: z51.string().optional(),
21486
+ eventsPerPage: z50.string().optional(),
21487
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]).optional(),
21488
+ seeAllUrl: z50.string().optional(),
21489
+ loadMoreText: z50.string().optional(),
21556
21490
  cardVariant: cardVariantSchema2.optional(),
21557
21491
  buttonVariant: eventButtonVariantSchema.optional(),
21558
- buttonText: z51.string().optional(),
21559
- showVenue: z51.boolean().optional(),
21560
- showMap: z51.boolean().optional(),
21561
- showCapacity: z51.boolean().optional(),
21562
- emptyMessage: z51.string().optional(),
21563
- className: z51.string().optional(),
21564
- showFilters: z51.boolean().nullable().optional(),
21492
+ buttonText: z50.string().optional(),
21493
+ showVenue: z50.boolean().optional(),
21494
+ showMap: z50.boolean().optional(),
21495
+ showCapacity: z50.boolean().optional(),
21496
+ emptyMessage: z50.string().optional(),
21497
+ className: z50.string().optional(),
21498
+ showFilters: z50.boolean().nullable().optional(),
21565
21499
  showCategoryFilter: filterAutoShowSchema.optional(),
21566
- showVenueFilter: z51.boolean().nullable().optional(),
21567
- showStaffFilter: z51.boolean().nullable().optional(),
21500
+ showVenueFilter: z50.boolean().nullable().optional(),
21501
+ showStaffFilter: z50.boolean().nullable().optional(),
21568
21502
  eventKind: eventBlockKindSchema.nullable().optional(),
21569
21503
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
21570
- filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21504
+ filterEventPresets: z50.union([z50.string(), z50.array(z50.string())]).nullable().optional(),
21571
21505
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
21572
- filterCategoryIds: z51.string().nullable().optional(),
21573
- filterStaffMemberId: z51.string().nullable().optional(),
21574
- filterVenueId: z51.string().nullable().optional()
21506
+ filterCategoryIds: z50.string().nullable().optional(),
21507
+ filterStaffMemberId: z50.string().nullable().optional(),
21508
+ filterVenueId: z50.string().nullable().optional()
21575
21509
  });
21576
- var eventListingDisplaySchema = z51.object({
21577
- kind: z51.literal("event-listing"),
21578
- state: z51.enum(["loading", "empty", "ready"]),
21510
+ var eventListingDisplaySchema = z50.object({
21511
+ kind: z50.literal("event-listing"),
21512
+ state: z50.enum(["loading", "empty", "ready"]),
21579
21513
  listLayout: eventLayoutSchema,
21580
- className: z51.string().nullable(),
21581
- emptyMessage: z51.string(),
21582
- loadingMessage: z51.string(),
21583
- containerClass: z51.string(),
21514
+ className: z50.string().nullable(),
21515
+ emptyMessage: z50.string(),
21516
+ loadingMessage: z50.string(),
21517
+ containerClass: z50.string(),
21584
21518
  cardVariant: cardVariantSchema2,
21585
21519
  buttonVariant: eventButtonVariantSchema,
21586
- buttonText: z51.string(),
21587
- showVenue: z51.boolean(),
21588
- showMap: z51.boolean(),
21589
- showCapacity: z51.boolean(),
21520
+ buttonText: z50.string(),
21521
+ showVenue: z50.boolean(),
21522
+ showMap: z50.boolean(),
21523
+ showCapacity: z50.boolean(),
21590
21524
  orientation: cardOrientationSchema,
21591
- events: z51.array(publicEventSchema)
21525
+ events: z50.array(publicEventSchema)
21592
21526
  });
21593
- var eventListingHydrationSchema = z51.object({
21594
- siteId: z51.string(),
21527
+ var eventListingHydrationSchema = z50.object({
21528
+ siteId: z50.string(),
21595
21529
  stage: previewStageSchema.optional(),
21596
- eventsPerPage: z51.string(),
21597
- paginationMode: z51.enum(["loadMore", "seeAllLink"]),
21598
- seeAllUrl: z51.string().optional(),
21599
- loadMoreText: z51.string(),
21600
- showFilters: z51.boolean(),
21530
+ eventsPerPage: z50.string(),
21531
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]),
21532
+ seeAllUrl: z50.string().optional(),
21533
+ loadMoreText: z50.string(),
21534
+ showFilters: z50.boolean(),
21601
21535
  showCategoryFilter: filterAutoShowSchema,
21602
- showVenueFilter: z51.boolean(),
21603
- showStaffFilter: z51.boolean(),
21536
+ showVenueFilter: z50.boolean(),
21537
+ showStaffFilter: z50.boolean(),
21604
21538
  eventKind: eventBlockKindSchema,
21605
21539
  eventSurface: eventSurfaceScopeSchema,
21606
- filterEventPresets: z51.string().nullable(),
21540
+ filterEventPresets: z50.string().nullable(),
21607
21541
  scheduleScope: eventScheduleScopeSchema2,
21608
- filterCategoryIds: z51.string().nullable().optional(),
21609
- filterStaffMemberId: z51.string().nullable().optional(),
21610
- filterVenueId: z51.string().nullable().optional(),
21611
- fetchInitialEventsOnMount: z51.boolean()
21542
+ filterCategoryIds: z50.string().nullable().optional(),
21543
+ filterStaffMemberId: z50.string().nullable().optional(),
21544
+ filterVenueId: z50.string().nullable().optional(),
21545
+ fetchInitialEventsOnMount: z50.boolean()
21612
21546
  });
21613
- var eventListingRenderSchema = z51.object({
21547
+ var eventListingRenderSchema = z50.object({
21614
21548
  display: eventListingDisplaySchema,
21615
21549
  hydration: eventListingHydrationSchema
21616
21550
  });
21617
21551
  var eventListingIslandMetaCodec = createZodCodec(
21618
- z51.object({
21619
- siteId: z51.string(),
21620
- apiBaseUrl: z51.string().optional(),
21552
+ z50.object({
21553
+ siteId: z50.string(),
21554
+ apiBaseUrl: z50.string().optional(),
21621
21555
  stage: previewStageSchema.optional()
21622
21556
  })
21623
21557
  );
@@ -21936,93 +21870,93 @@ var eventListingBlockDefinition = {
21936
21870
  };
21937
21871
 
21938
21872
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
21939
- import { z as z52 } from "zod";
21940
- var displayModeSchema = z52.enum(["combined", "month", "week", "list", "timetable"]);
21941
- var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
21942
- var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
21943
- var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
21944
- var eventCalendarSourceSchema = z52.object(
21873
+ import { z as z51 } from "zod";
21874
+ var displayModeSchema = z51.enum(["combined", "month", "week", "list", "timetable"]);
21875
+ var eventBlockKindSchema2 = z51.enum(eventBlockKindValues);
21876
+ var eventSurfaceScopeSchema2 = z51.enum(eventSurfaceScopeValues);
21877
+ var eventScheduleScopeSchema3 = z51.enum(eventScheduleScopeValues);
21878
+ var eventCalendarSourceSchema = z51.object(
21945
21879
  {
21946
- events: z52.array(publicEventSchema).nullable().optional(),
21947
- siteId: z52.string(),
21948
- apiBaseUrl: z52.string().optional(),
21880
+ events: z51.array(publicEventSchema).nullable().optional(),
21881
+ siteId: z51.string(),
21882
+ apiBaseUrl: z51.string().optional(),
21949
21883
  stage: previewStageSchema.optional(),
21950
21884
  displayMode: displayModeSchema.nullable().optional(),
21951
21885
  listLayout: eventLayoutSchema.optional(),
21952
21886
  listColumns: columnOptionSchema.optional(),
21953
21887
  layout: eventLayoutSchema.optional(),
21954
21888
  columns: columnOptionSchema.optional(),
21955
- eventsPerPage: z52.string().optional(),
21956
- compactEventsPerPage: z52.string().optional(),
21957
- loadMoreText: z52.string().optional(),
21889
+ eventsPerPage: z51.string().optional(),
21890
+ compactEventsPerPage: z51.string().optional(),
21891
+ loadMoreText: z51.string().optional(),
21958
21892
  startOfWeek: weekStartSchema.optional(),
21959
21893
  calendarTabViews: calendarTabViewsSchema.optional(),
21960
- showFilters: z52.boolean().nullable().optional(),
21894
+ showFilters: z51.boolean().nullable().optional(),
21961
21895
  showCategoryFilter: filterAutoShowSchema.optional(),
21962
- showVenueFilter: z52.boolean().nullable().optional(),
21963
- showStaffFilter: z52.boolean().nullable().optional(),
21896
+ showVenueFilter: z51.boolean().nullable().optional(),
21897
+ showStaffFilter: z51.boolean().nullable().optional(),
21964
21898
  kind: eventBlockKindSchema2.nullable().optional(),
21965
21899
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
21966
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21900
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21967
21901
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
21968
- filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21969
- filterStaffMemberId: z52.string().nullable().optional(),
21970
- filterVenueId: z52.string().nullable().optional(),
21902
+ filterCategoryIds: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21903
+ filterStaffMemberId: z51.string().nullable().optional(),
21904
+ filterVenueId: z51.string().nullable().optional(),
21971
21905
  buttonVariant: eventButtonVariantSchema.optional(),
21972
- buttonText: z52.string().optional(),
21973
- showVenue: z52.boolean().nullable().optional(),
21974
- showMap: z52.boolean().nullable().optional(),
21975
- showCapacity: z52.boolean().nullable().optional(),
21976
- emptyMessage: z52.string().optional(),
21977
- className: z52.string().optional()
21906
+ buttonText: z51.string().optional(),
21907
+ showVenue: z51.boolean().nullable().optional(),
21908
+ showMap: z51.boolean().nullable().optional(),
21909
+ showCapacity: z51.boolean().nullable().optional(),
21910
+ emptyMessage: z51.string().optional(),
21911
+ className: z51.string().optional()
21978
21912
  }
21979
21913
  );
21980
- var eventCalendarDisplaySchema = z52.object({
21981
- kind: z52.literal("event-calendar"),
21914
+ var eventCalendarDisplaySchema = z51.object({
21915
+ kind: z51.literal("event-calendar"),
21982
21916
  displayMode: displayModeSchema,
21983
- className: z52.string().nullable(),
21984
- events: z52.array(publicEventSchema),
21917
+ className: z51.string().nullable(),
21918
+ events: z51.array(publicEventSchema),
21985
21919
  listLayout: eventLayoutSchema,
21986
21920
  listColumns: columnOptionSchema,
21987
- eventsPerPage: z52.string(),
21988
- loadMoreText: z52.string(),
21921
+ eventsPerPage: z51.string(),
21922
+ loadMoreText: z51.string(),
21989
21923
  startOfWeek: weekStartSchema,
21990
21924
  calendarTabViews: calendarTabViewsSchema,
21991
- showFilters: z52.boolean(),
21925
+ showFilters: z51.boolean(),
21992
21926
  showCategoryFilter: filterAutoShowSchema,
21993
- showVenueFilter: z52.boolean(),
21994
- showStaffFilter: z52.boolean(),
21927
+ showVenueFilter: z51.boolean(),
21928
+ showStaffFilter: z51.boolean(),
21995
21929
  eventKind: eventBlockKindSchema2,
21996
21930
  eventSurface: eventSurfaceScopeSchema2,
21997
- filterEventPresets: z52.string().nullable(),
21931
+ filterEventPresets: z51.string().nullable(),
21998
21932
  scheduleScope: eventScheduleScopeSchema3,
21999
- filterCategoryIds: z52.string().nullable(),
22000
- filterStaffMemberId: z52.string().nullable(),
22001
- filterVenueId: z52.string().nullable(),
21933
+ filterCategoryIds: z51.string().nullable(),
21934
+ filterStaffMemberId: z51.string().nullable(),
21935
+ filterVenueId: z51.string().nullable(),
22002
21936
  buttonVariant: eventButtonVariantSchema,
22003
- buttonText: z52.string(),
22004
- showVenue: z52.boolean(),
22005
- showMap: z52.boolean(),
22006
- showCapacity: z52.boolean(),
22007
- emptyMessage: z52.string()
22008
- });
22009
- var eventCalendarHydrationSchema = z52.object({
22010
- siteId: z52.string(),
21937
+ buttonText: z51.string(),
21938
+ showVenue: z51.boolean(),
21939
+ showMap: z51.boolean(),
21940
+ showCapacity: z51.boolean(),
21941
+ emptyMessage: z51.string()
21942
+ });
21943
+ var eventCalendarHydrationSchema = z51.object({
21944
+ siteId: z51.string(),
22011
21945
  stage: previewStageSchema.optional(),
22012
- prefetchedEvents: z52.boolean(),
21946
+ prefetchedEvents: z51.boolean(),
22013
21947
  eventKind: eventBlockKindSchema2,
22014
21948
  eventSurface: eventSurfaceScopeSchema2,
22015
- filterEventPresets: z52.string().nullable(),
21949
+ filterEventPresets: z51.string().nullable(),
22016
21950
  scheduleScope: eventScheduleScopeSchema3
22017
21951
  });
22018
- var eventCalendarRenderSchema = z52.object({
21952
+ var eventCalendarRenderSchema = z51.object({
22019
21953
  display: eventCalendarDisplaySchema,
22020
21954
  hydration: eventCalendarHydrationSchema
22021
21955
  });
22022
21956
  var eventCalendarIslandMetaCodec = createZodCodec(
22023
- z52.object({
22024
- siteId: z52.string(),
22025
- apiBaseUrl: z52.string().optional(),
21957
+ z51.object({
21958
+ siteId: z51.string(),
21959
+ apiBaseUrl: z51.string().optional(),
22026
21960
  stage: previewStageSchema.optional()
22027
21961
  })
22028
21962
  );
@@ -22616,7 +22550,7 @@ var eventCalendarBlockDefinition = {
22616
22550
  };
22617
22551
 
22618
22552
  // ../blocks/src/system/blocks/embed.ts
22619
- import { z as z53 } from "zod";
22553
+ import { z as z52 } from "zod";
22620
22554
  var embedFields = [
22621
22555
  // Section heading
22622
22556
  parseFieldDefinition({
@@ -22847,18 +22781,18 @@ var embedManifest = createBlockManifest({
22847
22781
  spacing: "lg"
22848
22782
  }
22849
22783
  });
22850
- var embedEntrySchema = z53.object({
22851
- id: z53.string(),
22852
- identifier: z53.string(),
22853
- title: z53.string(),
22854
- slug: z53.string().nullable().optional(),
22855
- content: z53.record(z53.string(), z53.unknown()).optional(),
22856
- publishedAt: z53.string().nullable().optional()
22784
+ var embedEntrySchema = z52.object({
22785
+ id: z52.string(),
22786
+ identifier: z52.string(),
22787
+ title: z52.string(),
22788
+ slug: z52.string().nullable().optional(),
22789
+ content: z52.record(z52.string(), z52.unknown()).optional(),
22790
+ publishedAt: z52.string().nullable().optional()
22857
22791
  });
22858
22792
  var embedBlockDefinition = {
22859
22793
  manifest: embedManifest,
22860
22794
  dataSchemas: {
22861
- entries: z53.array(embedEntrySchema).optional()
22795
+ entries: z52.array(embedEntrySchema).optional()
22862
22796
  },
22863
22797
  dataLoaders: {
22864
22798
  entries: {
@@ -24033,54 +23967,54 @@ var fileDownloadBlockDefinition = {
24033
23967
  };
24034
23968
 
24035
23969
  // ../blocks/src/system/blocks/shop.ts
24036
- import { z as z57 } from "zod";
23970
+ import { z as z56 } from "zod";
24037
23971
 
24038
23972
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
24039
- import { z as z56 } from "zod";
23973
+ import { z as z55 } from "zod";
24040
23974
 
24041
23975
  // ../blocks/src/system/blocks/products/shared.ts
24042
- import { z as z54 } from "zod";
24043
- var publicProductVariantSchema = z54.object({
24044
- id: z54.string(),
24045
- title: z54.string(),
24046
- sku: z54.string().nullable(),
24047
- priceCents: z54.number(),
24048
- stockQuantity: z54.number().nullable(),
24049
- soldOut: z54.boolean()
24050
- });
24051
- var publicProductSchema = z54.object({
24052
- id: z54.string(),
24053
- contentEntryId: z54.string().nullable(),
24054
- title: z54.string(),
24055
- slug: z54.string(),
24056
- path: z54.string().nullable(),
24057
- status: z54.enum(["draft", "active"]),
24058
- priceCents: z54.number(),
24059
- currency: z54.string(),
24060
- productType: z54.enum(["physical", "digital"]),
24061
- requiresShipping: z54.boolean(),
24062
- hasVariants: z54.boolean(),
24063
- trackInventory: z54.boolean(),
24064
- soldOut: z54.boolean(),
24065
- category: z54.object({
24066
- id: z54.string(),
24067
- name: z54.string(),
24068
- slug: z54.string()
23976
+ import { z as z53 } from "zod";
23977
+ var publicProductVariantSchema = z53.object({
23978
+ id: z53.string(),
23979
+ title: z53.string(),
23980
+ sku: z53.string().nullable(),
23981
+ priceCents: z53.number(),
23982
+ stockQuantity: z53.number().nullable(),
23983
+ soldOut: z53.boolean()
23984
+ });
23985
+ var publicProductSchema = z53.object({
23986
+ id: z53.string(),
23987
+ contentEntryId: z53.string().nullable(),
23988
+ title: z53.string(),
23989
+ slug: z53.string(),
23990
+ path: z53.string().nullable(),
23991
+ status: z53.enum(["draft", "active"]),
23992
+ priceCents: z53.number(),
23993
+ currency: z53.string(),
23994
+ productType: z53.enum(["physical", "digital"]),
23995
+ requiresShipping: z53.boolean(),
23996
+ hasVariants: z53.boolean(),
23997
+ trackInventory: z53.boolean(),
23998
+ soldOut: z53.boolean(),
23999
+ category: z53.object({
24000
+ id: z53.string(),
24001
+ name: z53.string(),
24002
+ slug: z53.string()
24069
24003
  }).nullable(),
24070
- summary: z54.string().nullable(),
24071
- badges: z54.array(z54.string()),
24072
- ctaLabel: z54.string().nullable(),
24073
- body: z54.unknown().nullable(),
24074
- gallery: z54.array(
24075
- z54.object({
24076
- url: z54.string(),
24077
- alt: z54.string().nullable()
24004
+ summary: z53.string().nullable(),
24005
+ badges: z53.array(z53.string()),
24006
+ ctaLabel: z53.string().nullable(),
24007
+ body: z53.unknown().nullable(),
24008
+ gallery: z53.array(
24009
+ z53.object({
24010
+ url: z53.string(),
24011
+ alt: z53.string().nullable()
24078
24012
  })
24079
24013
  ),
24080
- variants: z54.array(publicProductVariantSchema)
24014
+ variants: z53.array(publicProductVariantSchema)
24081
24015
  });
24082
- var publicProductsResponseSchema = z54.object({
24083
- products: z54.array(publicProductSchema)
24016
+ var publicProductsResponseSchema = z53.object({
24017
+ products: z53.array(publicProductSchema)
24084
24018
  });
24085
24019
 
24086
24020
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -24144,26 +24078,26 @@ function deriveCreditProductLabels(products, options = {}) {
24144
24078
  }
24145
24079
 
24146
24080
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
24147
- import { z as z55 } from "zod";
24148
- var storedProductCartItemSchema = z55.object({
24149
- kind: z55.literal("product"),
24150
- productId: z55.string().min(1),
24151
- variantId: z55.string().min(1).optional().nullable(),
24152
- title: z55.string().min(1),
24153
- variantTitle: z55.string().optional().nullable(),
24154
- quantity: z55.number().finite(),
24155
- unitPriceCents: z55.number().finite(),
24156
- currency: z55.string().min(1),
24157
- imageUrl: z55.string().optional().nullable(),
24158
- soldOut: z55.boolean().optional()
24159
- });
24160
- var storedPassCartItemSchema = z55.object({
24161
- kind: z55.literal("pass"),
24162
- passId: z55.string().min(1),
24163
- title: z55.string().min(1),
24164
- quantity: z55.number().finite().optional(),
24165
- unitPriceCents: z55.number().finite(),
24166
- currency: z55.string().min(1)
24081
+ import { z as z54 } from "zod";
24082
+ var storedProductCartItemSchema = z54.object({
24083
+ kind: z54.literal("product"),
24084
+ productId: z54.string().min(1),
24085
+ variantId: z54.string().min(1).optional().nullable(),
24086
+ title: z54.string().min(1),
24087
+ variantTitle: z54.string().optional().nullable(),
24088
+ quantity: z54.number().finite(),
24089
+ unitPriceCents: z54.number().finite(),
24090
+ currency: z54.string().min(1),
24091
+ imageUrl: z54.string().optional().nullable(),
24092
+ soldOut: z54.boolean().optional()
24093
+ });
24094
+ var storedPassCartItemSchema = z54.object({
24095
+ kind: z54.literal("pass"),
24096
+ passId: z54.string().min(1),
24097
+ title: z54.string().min(1),
24098
+ quantity: z54.number().finite().optional(),
24099
+ unitPriceCents: z54.number().finite(),
24100
+ currency: z54.string().min(1)
24167
24101
  });
24168
24102
  function deriveCommerceCheckoutState(state) {
24169
24103
  if (state.items.length === 0) {
@@ -24402,219 +24336,219 @@ function formatValidity(days) {
24402
24336
  }
24403
24337
 
24404
24338
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
24405
- var shopModeSchema = z56.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24406
- var contentEntrySchema3 = z56.object({
24407
- id: z56.string().nullable().optional(),
24408
- slug: z56.string().nullable().optional()
24339
+ var shopModeSchema = z55.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24340
+ var contentEntrySchema3 = z55.object({
24341
+ id: z55.string().nullable().optional(),
24342
+ slug: z55.string().nullable().optional()
24409
24343
  }).nullable();
24410
- var shopSourceSchema = z56.object({
24411
- className: z56.string().nullable().optional(),
24344
+ var shopSourceSchema = z55.object({
24345
+ className: z55.string().nullable().optional(),
24412
24346
  mode: shopModeSchema.optional(),
24413
- heading: z56.string().nullable().optional(),
24414
- productSlug: z56.string().nullable().optional(),
24415
- showPasses: z56.boolean().optional(),
24416
- showMemberships: z56.boolean().optional(),
24417
- layout: z56.enum(["grid", "list"]).optional(),
24418
- columns: z56.string().optional(),
24419
- showDescriptions: z56.boolean().optional(),
24420
- showSummary: z56.boolean().optional(),
24421
- showBody: z56.boolean().optional(),
24422
- showBadges: z56.boolean().optional(),
24423
- showPrices: z56.boolean().optional(),
24424
- showValidityPeriod: z56.boolean().optional(),
24425
- showPricePerCredit: z56.boolean().nullable().optional(),
24426
- passesHeading: z56.string().optional(),
24427
- membershipsHeading: z56.string().optional(),
24428
- buyButtonText: z56.string().optional(),
24429
- addButtonText: z56.string().optional(),
24430
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"]).optional(),
24431
- subscribeButtonText: z56.string().optional(),
24432
- emptyStateText: z56.string().optional(),
24433
- checkoutButtonText: z56.string().optional(),
24434
- clearButtonText: z56.string().optional(),
24435
- submitButtonText: z56.string().optional(),
24347
+ heading: z55.string().nullable().optional(),
24348
+ productSlug: z55.string().nullable().optional(),
24349
+ showPasses: z55.boolean().optional(),
24350
+ showMemberships: z55.boolean().optional(),
24351
+ layout: z55.enum(["grid", "list"]).optional(),
24352
+ columns: z55.string().optional(),
24353
+ showDescriptions: z55.boolean().optional(),
24354
+ showSummary: z55.boolean().optional(),
24355
+ showBody: z55.boolean().optional(),
24356
+ showBadges: z55.boolean().optional(),
24357
+ showPrices: z55.boolean().optional(),
24358
+ showValidityPeriod: z55.boolean().optional(),
24359
+ showPricePerCredit: z55.boolean().nullable().optional(),
24360
+ passesHeading: z55.string().optional(),
24361
+ membershipsHeading: z55.string().optional(),
24362
+ buyButtonText: z55.string().optional(),
24363
+ addButtonText: z55.string().optional(),
24364
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"]).optional(),
24365
+ subscribeButtonText: z55.string().optional(),
24366
+ emptyStateText: z55.string().optional(),
24367
+ checkoutButtonText: z55.string().optional(),
24368
+ clearButtonText: z55.string().optional(),
24369
+ submitButtonText: z55.string().optional(),
24436
24370
  contentEntry: contentEntrySchema3.optional(),
24437
- passes: z56.array(publicPassProductSchema).nullable().optional(),
24438
- memberships: z56.array(publicMembershipProductSchema).nullable().optional(),
24439
- products: z56.array(publicProductSchema).nullable().optional(),
24440
- siteId: z56.string().optional(),
24441
- apiBaseUrl: z56.string().optional(),
24371
+ passes: z55.array(publicPassProductSchema).nullable().optional(),
24372
+ memberships: z55.array(publicMembershipProductSchema).nullable().optional(),
24373
+ products: z55.array(publicProductSchema).nullable().optional(),
24374
+ siteId: z55.string().optional(),
24375
+ apiBaseUrl: z55.string().optional(),
24442
24376
  stage: previewStageSchema.optional()
24443
24377
  });
24444
- var productVariantOptionDisplaySchema = z56.object({
24445
- id: z56.string(),
24446
- label: z56.string(),
24447
- soldOut: z56.boolean()
24448
- });
24449
- var productCardDisplaySchema = z56.object({
24450
- productId: z56.string(),
24451
- title: z56.string(),
24452
- path: z56.string().nullable(),
24453
- summary: z56.string().nullable(),
24454
- priceLabel: z56.string().nullable(),
24455
- badges: z56.array(z56.string()),
24456
- image: z56.object({
24457
- url: z56.string(),
24458
- alt: z56.string().nullable()
24378
+ var productVariantOptionDisplaySchema = z55.object({
24379
+ id: z55.string(),
24380
+ label: z55.string(),
24381
+ soldOut: z55.boolean()
24382
+ });
24383
+ var productCardDisplaySchema = z55.object({
24384
+ productId: z55.string(),
24385
+ title: z55.string(),
24386
+ path: z55.string().nullable(),
24387
+ summary: z55.string().nullable(),
24388
+ priceLabel: z55.string().nullable(),
24389
+ badges: z55.array(z55.string()),
24390
+ image: z55.object({
24391
+ url: z55.string(),
24392
+ alt: z55.string().nullable()
24459
24393
  }).nullable(),
24460
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24461
- selectedVariantId: z56.string().nullable(),
24462
- selectionLabel: z56.string(),
24463
- actionLabel: z56.string(),
24464
- soldOut: z56.boolean()
24465
- });
24466
- var productListDisplaySchema = z56.object({
24467
- kind: z56.literal("product-list"),
24468
- state: z56.enum(["empty", "ready"]),
24469
- heading: z56.string().nullable(),
24470
- className: z56.string().nullable(),
24471
- layout: z56.enum(["grid", "list"]),
24472
- columns: z56.string(),
24473
- emptyMessage: z56.string(),
24474
- cards: z56.array(productCardDisplaySchema)
24475
- });
24476
- var productDetailDisplaySchema = z56.discriminatedUnion("state", [
24477
- z56.object({
24478
- kind: z56.literal("product-detail"),
24479
- state: z56.literal("empty"),
24480
- heading: z56.string().nullable(),
24481
- className: z56.string().nullable(),
24482
- emptyMessage: z56.string()
24394
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24395
+ selectedVariantId: z55.string().nullable(),
24396
+ selectionLabel: z55.string(),
24397
+ actionLabel: z55.string(),
24398
+ soldOut: z55.boolean()
24399
+ });
24400
+ var productListDisplaySchema = z55.object({
24401
+ kind: z55.literal("product-list"),
24402
+ state: z55.enum(["empty", "ready"]),
24403
+ heading: z55.string().nullable(),
24404
+ className: z55.string().nullable(),
24405
+ layout: z55.enum(["grid", "list"]),
24406
+ columns: z55.string(),
24407
+ emptyMessage: z55.string(),
24408
+ cards: z55.array(productCardDisplaySchema)
24409
+ });
24410
+ var productDetailDisplaySchema = z55.discriminatedUnion("state", [
24411
+ z55.object({
24412
+ kind: z55.literal("product-detail"),
24413
+ state: z55.literal("empty"),
24414
+ heading: z55.string().nullable(),
24415
+ className: z55.string().nullable(),
24416
+ emptyMessage: z55.string()
24483
24417
  }),
24484
- z56.object({
24485
- kind: z56.literal("product-detail"),
24486
- state: z56.literal("ready"),
24487
- heading: z56.string().nullable(),
24488
- className: z56.string().nullable(),
24489
- title: z56.string(),
24490
- priceLabel: z56.string(),
24491
- summary: z56.string().nullable(),
24492
- badges: z56.array(z56.string()),
24493
- categoryLabel: z56.string().nullable(),
24494
- gallery: z56.array(z56.object({
24495
- url: z56.string(),
24496
- alt: z56.string().nullable()
24418
+ z55.object({
24419
+ kind: z55.literal("product-detail"),
24420
+ state: z55.literal("ready"),
24421
+ heading: z55.string().nullable(),
24422
+ className: z55.string().nullable(),
24423
+ title: z55.string(),
24424
+ priceLabel: z55.string(),
24425
+ summary: z55.string().nullable(),
24426
+ badges: z55.array(z55.string()),
24427
+ categoryLabel: z55.string().nullable(),
24428
+ gallery: z55.array(z55.object({
24429
+ url: z55.string(),
24430
+ alt: z55.string().nullable()
24497
24431
  })),
24498
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24499
- selectedVariantId: z56.string().nullable(),
24500
- selectionLabel: z56.string(),
24501
- actionLabel: z56.string(),
24502
- soldOut: z56.boolean(),
24503
- body: z56.unknown().nullable()
24432
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24433
+ selectedVariantId: z55.string().nullable(),
24434
+ selectionLabel: z55.string(),
24435
+ actionLabel: z55.string(),
24436
+ soldOut: z55.boolean(),
24437
+ body: z55.unknown().nullable()
24504
24438
  })
24505
24439
  ]);
24506
- var passCardDisplaySchema = z56.object({
24507
- id: z56.string(),
24508
- title: z56.string(),
24509
- description: z56.string().nullable(),
24510
- priceLabel: z56.string(),
24511
- creditsLabel: z56.string(),
24512
- perCreditLabel: z56.string().nullable(),
24513
- validityLabel: z56.string().nullable(),
24514
- actionLabel: z56.string()
24515
- });
24516
- var membershipCardDisplaySchema = z56.object({
24517
- id: z56.string(),
24518
- title: z56.string(),
24519
- description: z56.string().nullable(),
24520
- priceLabel: z56.string(),
24521
- intervalLabel: z56.string(),
24522
- actionLabel: z56.string()
24523
- });
24524
- var passesMembershipsDisplaySchema = z56.object({
24525
- kind: z56.literal("passes-memberships"),
24526
- state: z56.enum(["empty", "ready"]),
24527
- className: z56.string().nullable(),
24528
- layout: z56.enum(["grid", "list"]),
24529
- columns: z56.string(),
24530
- emptyMessage: z56.string(),
24531
- passesHeading: z56.string(),
24532
- membershipsHeading: z56.string(),
24533
- passes: z56.array(passCardDisplaySchema),
24534
- memberships: z56.array(membershipCardDisplaySchema)
24535
- });
24536
- var cartLineDisplaySchema = z56.object({
24537
- key: z56.string(),
24538
- title: z56.string(),
24539
- priceLabel: z56.string(),
24540
- quantity: z56.number(),
24541
- quantityEditable: z56.boolean()
24542
- });
24543
- var cartDisplaySchema = z56.object({
24544
- kind: z56.literal("cart"),
24545
- state: z56.enum(["empty", "ready"]),
24546
- heading: z56.string().nullable(),
24547
- className: z56.string().nullable(),
24548
- emptyMessage: z56.string(),
24549
- supportText: z56.string().nullable(),
24550
- items: z56.array(cartLineDisplaySchema),
24551
- subtotalLabel: z56.string().nullable(),
24552
- checkoutButtonText: z56.string(),
24553
- clearButtonText: z56.string()
24554
- });
24555
- var checkoutDisplaySchema = z56.object({
24556
- kind: z56.literal("checkout"),
24557
- state: z56.enum(["empty", "blocked", "ready"]),
24558
- heading: z56.string().nullable(),
24559
- className: z56.string().nullable(),
24560
- message: z56.string().nullable(),
24561
- submitButtonText: z56.string()
24562
- });
24563
- var passesMembershipsHydrationSchema = z56.object({
24564
- passes: z56.array(publicPassProductSchema),
24565
- memberships: z56.array(publicMembershipProductSchema),
24566
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"])
24567
- });
24568
- var productListHydrationSchema = z56.object({
24569
- products: z56.array(publicProductSchema),
24570
- showSummary: z56.boolean(),
24571
- showBadges: z56.boolean(),
24572
- showPrices: z56.boolean(),
24573
- addButtonText: z56.string()
24574
- });
24575
- var productDetailHydrationSchema = z56.object({
24576
- products: z56.array(publicProductSchema),
24577
- productId: z56.string().nullable(),
24578
- showSummary: z56.boolean(),
24579
- showBadges: z56.boolean(),
24580
- showBody: z56.boolean(),
24581
- addButtonText: z56.string()
24582
- });
24583
- var cartHydrationSchema = z56.object({
24584
- emptyStateText: z56.string(),
24585
- checkoutButtonText: z56.string(),
24586
- clearButtonText: z56.string()
24587
- });
24588
- var checkoutHydrationSchema = z56.object({
24589
- emptyStateText: z56.string(),
24590
- submitButtonText: z56.string()
24591
- });
24592
- var passesMembershipsRenderSchema = z56.object({
24440
+ var passCardDisplaySchema = z55.object({
24441
+ id: z55.string(),
24442
+ title: z55.string(),
24443
+ description: z55.string().nullable(),
24444
+ priceLabel: z55.string(),
24445
+ creditsLabel: z55.string(),
24446
+ perCreditLabel: z55.string().nullable(),
24447
+ validityLabel: z55.string().nullable(),
24448
+ actionLabel: z55.string()
24449
+ });
24450
+ var membershipCardDisplaySchema = z55.object({
24451
+ id: z55.string(),
24452
+ title: z55.string(),
24453
+ description: z55.string().nullable(),
24454
+ priceLabel: z55.string(),
24455
+ intervalLabel: z55.string(),
24456
+ actionLabel: z55.string()
24457
+ });
24458
+ var passesMembershipsDisplaySchema = z55.object({
24459
+ kind: z55.literal("passes-memberships"),
24460
+ state: z55.enum(["empty", "ready"]),
24461
+ className: z55.string().nullable(),
24462
+ layout: z55.enum(["grid", "list"]),
24463
+ columns: z55.string(),
24464
+ emptyMessage: z55.string(),
24465
+ passesHeading: z55.string(),
24466
+ membershipsHeading: z55.string(),
24467
+ passes: z55.array(passCardDisplaySchema),
24468
+ memberships: z55.array(membershipCardDisplaySchema)
24469
+ });
24470
+ var cartLineDisplaySchema = z55.object({
24471
+ key: z55.string(),
24472
+ title: z55.string(),
24473
+ priceLabel: z55.string(),
24474
+ quantity: z55.number(),
24475
+ quantityEditable: z55.boolean()
24476
+ });
24477
+ var cartDisplaySchema = z55.object({
24478
+ kind: z55.literal("cart"),
24479
+ state: z55.enum(["empty", "ready"]),
24480
+ heading: z55.string().nullable(),
24481
+ className: z55.string().nullable(),
24482
+ emptyMessage: z55.string(),
24483
+ supportText: z55.string().nullable(),
24484
+ items: z55.array(cartLineDisplaySchema),
24485
+ subtotalLabel: z55.string().nullable(),
24486
+ checkoutButtonText: z55.string(),
24487
+ clearButtonText: z55.string()
24488
+ });
24489
+ var checkoutDisplaySchema = z55.object({
24490
+ kind: z55.literal("checkout"),
24491
+ state: z55.enum(["empty", "blocked", "ready"]),
24492
+ heading: z55.string().nullable(),
24493
+ className: z55.string().nullable(),
24494
+ message: z55.string().nullable(),
24495
+ submitButtonText: z55.string()
24496
+ });
24497
+ var passesMembershipsHydrationSchema = z55.object({
24498
+ passes: z55.array(publicPassProductSchema),
24499
+ memberships: z55.array(publicMembershipProductSchema),
24500
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"])
24501
+ });
24502
+ var productListHydrationSchema = z55.object({
24503
+ products: z55.array(publicProductSchema),
24504
+ showSummary: z55.boolean(),
24505
+ showBadges: z55.boolean(),
24506
+ showPrices: z55.boolean(),
24507
+ addButtonText: z55.string()
24508
+ });
24509
+ var productDetailHydrationSchema = z55.object({
24510
+ products: z55.array(publicProductSchema),
24511
+ productId: z55.string().nullable(),
24512
+ showSummary: z55.boolean(),
24513
+ showBadges: z55.boolean(),
24514
+ showBody: z55.boolean(),
24515
+ addButtonText: z55.string()
24516
+ });
24517
+ var cartHydrationSchema = z55.object({
24518
+ emptyStateText: z55.string(),
24519
+ checkoutButtonText: z55.string(),
24520
+ clearButtonText: z55.string()
24521
+ });
24522
+ var checkoutHydrationSchema = z55.object({
24523
+ emptyStateText: z55.string(),
24524
+ submitButtonText: z55.string()
24525
+ });
24526
+ var passesMembershipsRenderSchema = z55.object({
24593
24527
  display: passesMembershipsDisplaySchema,
24594
24528
  hydration: passesMembershipsHydrationSchema
24595
24529
  });
24596
- var productListRenderSchema = z56.object({
24530
+ var productListRenderSchema = z55.object({
24597
24531
  display: productListDisplaySchema,
24598
24532
  hydration: productListHydrationSchema
24599
24533
  });
24600
- var productDetailRenderSchema = z56.object({
24534
+ var productDetailRenderSchema = z55.object({
24601
24535
  display: productDetailDisplaySchema,
24602
24536
  hydration: productDetailHydrationSchema
24603
24537
  });
24604
- var cartRenderSchema = z56.object({
24538
+ var cartRenderSchema = z55.object({
24605
24539
  display: cartDisplaySchema,
24606
24540
  hydration: cartHydrationSchema
24607
24541
  });
24608
- var checkoutRenderSchema = z56.object({
24542
+ var checkoutRenderSchema = z55.object({
24609
24543
  display: checkoutDisplaySchema,
24610
24544
  hydration: checkoutHydrationSchema
24611
24545
  });
24612
24546
  function resolveShowPricePerCredit(source) {
24613
24547
  return source.showPricePerCredit ?? true;
24614
24548
  }
24615
- var shopIslandMetaCodec = createZodCodec(z56.object({
24616
- siteId: z56.string().optional(),
24617
- apiBaseUrl: z56.string().optional(),
24549
+ var shopIslandMetaCodec = createZodCodec(z55.object({
24550
+ siteId: z55.string().optional(),
24551
+ apiBaseUrl: z55.string().optional(),
24618
24552
  stage: previewStageSchema.optional()
24619
24553
  }));
24620
24554
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -24996,9 +24930,9 @@ var shopBlockDefinition = {
24996
24930
  runtime: shopBlockRuntime,
24997
24931
  dataSchemas: {
24998
24932
  // listPublicPasses returns { passes: [...] }
24999
- passes: z57.object({ passes: z57.array(publicPassProductSchema) }).optional(),
24933
+ passes: z56.object({ passes: z56.array(publicPassProductSchema) }).optional(),
25000
24934
  // listPublicMemberships returns { memberships: [...] }
25001
- memberships: z57.object({ memberships: z57.array(publicMembershipProductSchema) }).optional()
24935
+ memberships: z56.object({ memberships: z56.array(publicMembershipProductSchema) }).optional()
25002
24936
  },
25003
24937
  dataLoaders: {
25004
24938
  // Load passes for display
@@ -25021,7 +24955,7 @@ var shopBlockDefinition = {
25021
24955
  };
25022
24956
 
25023
24957
  // ../blocks/src/system/blocks/product-list.ts
25024
- import { z as z58 } from "zod";
24958
+ import { z as z57 } from "zod";
25025
24959
  var productListManifest = createBlockManifest({
25026
24960
  id: "block.product-list",
25027
24961
  version: "1.0.0",
@@ -25163,7 +25097,7 @@ var productListBlockDefinition = {
25163
25097
  }
25164
25098
  }
25165
25099
  };
25166
- var productListDataSchema = z58.object({
25100
+ var productListDataSchema = z57.object({
25167
25101
  products: publicProductsResponseSchema.optional()
25168
25102
  });
25169
25103
 
@@ -25433,72 +25367,72 @@ var checkoutBlockDefinition = {
25433
25367
  };
25434
25368
 
25435
25369
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
25436
- import { z as z59 } from "zod";
25437
- var publicGiftCardOfferSchema = z59.object({
25438
- id: z59.string(),
25439
- kind: z59.literal("gift_card"),
25440
- title: z59.string(),
25441
- description: z59.string().nullable(),
25442
- sortOrder: z59.number().int(),
25443
- giftCard: z59.object({
25444
- fixedDenominations: z59.array(z59.number().int().positive()),
25445
- customAmountEnabled: z59.boolean(),
25446
- customAmountMinCents: z59.number().int().positive(),
25447
- customAmountMaxCents: z59.number().int().positive()
25370
+ import { z as z58 } from "zod";
25371
+ var publicGiftCardOfferSchema = z58.object({
25372
+ id: z58.string(),
25373
+ kind: z58.literal("gift_card"),
25374
+ title: z58.string(),
25375
+ description: z58.string().nullable(),
25376
+ sortOrder: z58.number().int(),
25377
+ giftCard: z58.object({
25378
+ fixedDenominations: z58.array(z58.number().int().positive()),
25379
+ customAmountEnabled: z58.boolean(),
25380
+ customAmountMinCents: z58.number().int().positive(),
25381
+ customAmountMaxCents: z58.number().int().positive()
25448
25382
  }),
25449
- voucher: z59.null()
25450
- });
25451
- var publicVoucherOfferSchema = z59.object({
25452
- id: z59.string(),
25453
- kind: z59.literal("voucher"),
25454
- title: z59.string(),
25455
- description: z59.string().nullable(),
25456
- sortOrder: z59.number().int(),
25457
- giftCard: z59.null(),
25458
- voucher: z59.object({
25459
- purchaseAmountCents: z59.number().int().positive()
25383
+ voucher: z58.null()
25384
+ });
25385
+ var publicVoucherOfferSchema = z58.object({
25386
+ id: z58.string(),
25387
+ kind: z58.literal("voucher"),
25388
+ title: z58.string(),
25389
+ description: z58.string().nullable(),
25390
+ sortOrder: z58.number().int(),
25391
+ giftCard: z58.null(),
25392
+ voucher: z58.object({
25393
+ purchaseAmountCents: z58.number().int().positive()
25460
25394
  })
25461
25395
  });
25462
- var publicGiftingOffersResponseSchema = z59.object({
25463
- currency: z59.string(),
25464
- giftCards: z59.array(publicGiftCardOfferSchema),
25465
- vouchers: z59.array(publicVoucherOfferSchema)
25396
+ var publicGiftingOffersResponseSchema = z58.object({
25397
+ currency: z58.string(),
25398
+ giftCards: z58.array(publicGiftCardOfferSchema),
25399
+ vouchers: z58.array(publicVoucherOfferSchema)
25466
25400
  });
25467
- var giftingSourceSchema = z59.object({
25468
- siteId: z59.string().optional(),
25469
- apiBaseUrl: z59.string().optional(),
25401
+ var giftingSourceSchema = z58.object({
25402
+ siteId: z58.string().optional(),
25403
+ apiBaseUrl: z58.string().optional(),
25470
25404
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
25471
- className: z59.string().nullable().optional(),
25472
- heading: z59.string().nullable().optional(),
25473
- intro: z59.string().nullable().optional(),
25474
- giftCardsHeading: z59.string().nullable().optional(),
25475
- vouchersHeading: z59.string().nullable().optional(),
25476
- emptyStateText: z59.string().nullable().optional(),
25477
- checkoutButtonText: z59.string().nullable().optional(),
25478
- successMessage: z59.string().nullable().optional()
25479
- });
25480
- var giftingDisplaySchema = z59.object({
25481
- kind: z59.literal("gifting"),
25482
- state: z59.literal("ready"),
25483
- className: z59.string().nullable(),
25484
- heading: z59.string(),
25485
- intro: z59.string().nullable(),
25486
- giftCardsHeading: z59.string(),
25487
- vouchersHeading: z59.string(),
25488
- emptyStateText: z59.string()
25489
- });
25490
- var giftingHydrationSchema = z59.object({
25405
+ className: z58.string().nullable().optional(),
25406
+ heading: z58.string().nullable().optional(),
25407
+ intro: z58.string().nullable().optional(),
25408
+ giftCardsHeading: z58.string().nullable().optional(),
25409
+ vouchersHeading: z58.string().nullable().optional(),
25410
+ emptyStateText: z58.string().nullable().optional(),
25411
+ checkoutButtonText: z58.string().nullable().optional(),
25412
+ successMessage: z58.string().nullable().optional()
25413
+ });
25414
+ var giftingDisplaySchema = z58.object({
25415
+ kind: z58.literal("gifting"),
25416
+ state: z58.literal("ready"),
25417
+ className: z58.string().nullable(),
25418
+ heading: z58.string(),
25419
+ intro: z58.string().nullable(),
25420
+ giftCardsHeading: z58.string(),
25421
+ vouchersHeading: z58.string(),
25422
+ emptyStateText: z58.string()
25423
+ });
25424
+ var giftingHydrationSchema = z58.object({
25491
25425
  offers: publicGiftingOffersResponseSchema.nullable(),
25492
- checkoutButtonText: z59.string(),
25493
- successMessage: z59.string()
25426
+ checkoutButtonText: z58.string(),
25427
+ successMessage: z58.string()
25494
25428
  });
25495
- var giftingRenderSchema = z59.object({
25429
+ var giftingRenderSchema = z58.object({
25496
25430
  display: giftingDisplaySchema,
25497
25431
  hydration: giftingHydrationSchema
25498
25432
  });
25499
- var giftingIslandMetaCodec = createZodCodec(z59.object({
25500
- siteId: z59.string().optional(),
25501
- apiBaseUrl: z59.string().optional()
25433
+ var giftingIslandMetaCodec = createZodCodec(z58.object({
25434
+ siteId: z58.string().optional(),
25435
+ apiBaseUrl: z58.string().optional()
25502
25436
  }));
25503
25437
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
25504
25438
  "siteId",
@@ -25669,7 +25603,7 @@ var giftingBlockDefinition = {
25669
25603
  };
25670
25604
 
25671
25605
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25672
- import { z as z60 } from "zod";
25606
+ import { z as z59 } from "zod";
25673
25607
 
25674
25608
  // ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
25675
25609
  function getPresetFields(preset2, options) {
@@ -25723,49 +25657,49 @@ function withOptionalPhone(fields3, includePhone) {
25723
25657
  }
25724
25658
 
25725
25659
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25726
- var newsletterPresetSchema = z60.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25727
- var newsletterFieldSchema = z60.object({
25728
- id: z60.string(),
25729
- type: z60.enum(["email", "text"]),
25730
- label: z60.string(),
25731
- required: z60.boolean(),
25732
- placeholder: z60.string().optional()
25733
- });
25734
- var newsletterSourceSchema = z60.object({
25735
- siteId: z60.string().optional(),
25736
- apiBaseUrl: z60.string().optional(),
25737
- listId: z60.string().nullable().optional(),
25660
+ var newsletterPresetSchema = z59.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25661
+ var newsletterFieldSchema = z59.object({
25662
+ id: z59.string(),
25663
+ type: z59.enum(["email", "text"]),
25664
+ label: z59.string(),
25665
+ required: z59.boolean(),
25666
+ placeholder: z59.string().optional()
25667
+ });
25668
+ var newsletterSourceSchema = z59.object({
25669
+ siteId: z59.string().optional(),
25670
+ apiBaseUrl: z59.string().optional(),
25671
+ listId: z59.string().nullable().optional(),
25738
25672
  preset: newsletterPresetSchema.optional(),
25739
- includePhone: z60.boolean().optional(),
25740
- buttonLabel: z60.string().nullable().optional(),
25741
- successMessage: z60.string().nullable().optional(),
25742
- privacyNote: z60.string().nullable().optional(),
25743
- tags: z60.string().nullable().optional(),
25744
- spamProtectionEnabled: z60.boolean().optional(),
25745
- className: z60.string().nullable().optional()
25746
- });
25747
- var newsletterDisplaySchema = z60.object({
25748
- kind: z60.literal("newsletter-form"),
25749
- className: z60.string().nullable(),
25750
- buttonLabel: z60.string(),
25751
- successMessage: z60.string().nullable(),
25752
- privacyNote: z60.string().nullable(),
25753
- fields: z60.array(newsletterFieldSchema)
25754
- });
25755
- var newsletterHydrationSchema = z60.object({
25756
- listId: z60.string().nullable().optional(),
25673
+ includePhone: z59.boolean().optional(),
25674
+ buttonLabel: z59.string().nullable().optional(),
25675
+ successMessage: z59.string().nullable().optional(),
25676
+ privacyNote: z59.string().nullable().optional(),
25677
+ tags: z59.string().nullable().optional(),
25678
+ spamProtectionEnabled: z59.boolean().optional(),
25679
+ className: z59.string().nullable().optional()
25680
+ });
25681
+ var newsletterDisplaySchema = z59.object({
25682
+ kind: z59.literal("newsletter-form"),
25683
+ className: z59.string().nullable(),
25684
+ buttonLabel: z59.string(),
25685
+ successMessage: z59.string().nullable(),
25686
+ privacyNote: z59.string().nullable(),
25687
+ fields: z59.array(newsletterFieldSchema)
25688
+ });
25689
+ var newsletterHydrationSchema = z59.object({
25690
+ listId: z59.string().nullable().optional(),
25757
25691
  preset: newsletterPresetSchema,
25758
- includePhone: z60.boolean(),
25759
- tags: z60.string().nullable().optional(),
25760
- spamProtectionEnabled: z60.boolean().optional()
25692
+ includePhone: z59.boolean(),
25693
+ tags: z59.string().nullable().optional(),
25694
+ spamProtectionEnabled: z59.boolean().optional()
25761
25695
  });
25762
- var newsletterRenderSchema = z60.object({
25696
+ var newsletterRenderSchema = z59.object({
25763
25697
  display: newsletterDisplaySchema,
25764
25698
  hydration: newsletterHydrationSchema
25765
25699
  });
25766
- var newsletterIslandMetaCodec = createZodCodec(z60.object({
25767
- siteId: z60.string().optional(),
25768
- apiBaseUrl: z60.string().optional()
25700
+ var newsletterIslandMetaCodec = createZodCodec(z59.object({
25701
+ siteId: z59.string().optional(),
25702
+ apiBaseUrl: z59.string().optional()
25769
25703
  }));
25770
25704
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
25771
25705
  function buildNewsletterDisplay(source) {
@@ -25886,23 +25820,23 @@ var newsletterSignupBlockDefinition = {
25886
25820
  };
25887
25821
 
25888
25822
  // ../blocks/src/system/blocks/team-members.ts
25889
- import { z as z61 } from "zod";
25823
+ import { z as z60 } from "zod";
25890
25824
  var ITEM_NAME2 = "member";
25891
25825
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
25892
25826
  message: "Team member photos must be image media"
25893
25827
  }).nullable();
25894
- var teamMemberDataSchema = z61.object({
25895
- _type: z61.literal("teamMember"),
25896
- id: z61.string(),
25897
- name: z61.string(),
25898
- role: z61.string().nullable(),
25899
- roleLabel: z61.string().nullable(),
25900
- bio: z61.string().nullable(),
25901
- summary: z61.string().nullable(),
25828
+ var teamMemberDataSchema = z60.object({
25829
+ _type: z60.literal("teamMember"),
25830
+ id: z60.string(),
25831
+ name: z60.string(),
25832
+ role: z60.string().nullable(),
25833
+ roleLabel: z60.string().nullable(),
25834
+ bio: z60.string().nullable(),
25835
+ summary: z60.string().nullable(),
25902
25836
  photo: teamMemberPhotoSchema,
25903
- profilePath: z61.string().nullable()
25837
+ profilePath: z60.string().nullable()
25904
25838
  });
25905
- var teamMembersDataSchema = z61.array(teamMemberDataSchema);
25839
+ var teamMembersDataSchema = z60.array(teamMemberDataSchema);
25906
25840
  var dynamicSourceWhen = { equals: "site_staff" };
25907
25841
  var manualSourceWhen = { equals: "site_staff", not: true };
25908
25842
  var headingNode = text(
@@ -27458,6 +27392,74 @@ var builtinTransformDefinitions = [
27458
27392
  ];
27459
27393
  var defaultTransforms = createTransformRegistry(builtinTransformDefinitions);
27460
27394
 
27395
+ // ../api/src/aiPlayground.ts
27396
+ import { z as z61 } from "zod";
27397
+ var Rfc6902PatchOp = z61.discriminatedUnion("op", [
27398
+ // Standard RFC-6902 operations
27399
+ z61.object({
27400
+ op: z61.literal("add"),
27401
+ path: z61.string(),
27402
+ value: z61.unknown()
27403
+ }),
27404
+ z61.object({
27405
+ op: z61.literal("remove"),
27406
+ path: z61.string()
27407
+ }),
27408
+ z61.object({
27409
+ op: z61.literal("replace"),
27410
+ path: z61.string(),
27411
+ value: z61.unknown()
27412
+ }),
27413
+ z61.object({
27414
+ op: z61.literal("move"),
27415
+ from: z61.string(),
27416
+ path: z61.string()
27417
+ }),
27418
+ z61.object({
27419
+ op: z61.literal("copy"),
27420
+ from: z61.string(),
27421
+ path: z61.string()
27422
+ }),
27423
+ // Block-level operations (Phase 2)
27424
+ z61.object({
27425
+ op: z61.literal("add_block"),
27426
+ blockKind: z61.string(),
27427
+ afterBlockId: z61.string().nullable(),
27428
+ content: z61.record(z61.string(), z61.unknown()),
27429
+ rationale: z61.string()
27430
+ }),
27431
+ z61.object({
27432
+ op: z61.literal("delete_block"),
27433
+ blockId: z61.string(),
27434
+ rationale: z61.string()
27435
+ }),
27436
+ z61.object({
27437
+ op: z61.literal("reorder_block"),
27438
+ blockId: z61.string(),
27439
+ afterBlockId: z61.string().nullable(),
27440
+ rationale: z61.string()
27441
+ })
27442
+ ]);
27443
+ var PlaygroundProposeRequest = z61.object({
27444
+ request: z61.string().min(1).max(2e3)
27445
+ });
27446
+ var MultiPagePatchEnvelope = z61.object({
27447
+ pageId: z61.string(),
27448
+ blockId: z61.string().optional(),
27449
+ // Not present for page-level ops
27450
+ blockKind: z61.string().optional(),
27451
+ blockPurpose: z61.string().optional().nullable(),
27452
+ ops: z61.array(Rfc6902PatchOp),
27453
+ rationale: z61.string(),
27454
+ currentContent: z61.record(z61.string(), z61.unknown()).optional()
27455
+ });
27456
+ var MultiPageUpdateResponse = z61.object({
27457
+ patches: z61.array(MultiPagePatchEnvelope),
27458
+ assistantMessage: z61.string(),
27459
+ pagesModified: z61.number(),
27460
+ toolCallsUsed: z61.number()
27461
+ });
27462
+
27461
27463
  // src/config/content-validation.ts
27462
27464
  import { z as z62 } from "zod";
27463
27465