@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
@@ -7385,74 +7385,6 @@ function parsePublicProductCategorySelector(value) {
7385
7385
  return void 0;
7386
7386
  }
7387
7387
 
7388
- // ../api/src/aiPlayground.ts
7389
- import { z as z8 } from "zod";
7390
- var Rfc6902PatchOp = z8.discriminatedUnion("op", [
7391
- // Standard RFC-6902 operations
7392
- z8.object({
7393
- op: z8.literal("add"),
7394
- path: z8.string(),
7395
- value: z8.unknown()
7396
- }),
7397
- z8.object({
7398
- op: z8.literal("remove"),
7399
- path: z8.string()
7400
- }),
7401
- z8.object({
7402
- op: z8.literal("replace"),
7403
- path: z8.string(),
7404
- value: z8.unknown()
7405
- }),
7406
- z8.object({
7407
- op: z8.literal("move"),
7408
- from: z8.string(),
7409
- path: z8.string()
7410
- }),
7411
- z8.object({
7412
- op: z8.literal("copy"),
7413
- from: z8.string(),
7414
- path: z8.string()
7415
- }),
7416
- // Block-level operations (Phase 2)
7417
- z8.object({
7418
- op: z8.literal("add_block"),
7419
- blockKind: z8.string(),
7420
- afterBlockId: z8.string().nullable(),
7421
- content: z8.record(z8.string(), z8.unknown()),
7422
- rationale: z8.string()
7423
- }),
7424
- z8.object({
7425
- op: z8.literal("delete_block"),
7426
- blockId: z8.string(),
7427
- rationale: z8.string()
7428
- }),
7429
- z8.object({
7430
- op: z8.literal("reorder_block"),
7431
- blockId: z8.string(),
7432
- afterBlockId: z8.string().nullable(),
7433
- rationale: z8.string()
7434
- })
7435
- ]);
7436
- var PlaygroundProposeRequest = z8.object({
7437
- request: z8.string().min(1).max(2e3)
7438
- });
7439
- var MultiPagePatchEnvelope = z8.object({
7440
- pageId: z8.string(),
7441
- blockId: z8.string().optional(),
7442
- // Not present for page-level ops
7443
- blockKind: z8.string().optional(),
7444
- blockPurpose: z8.string().optional().nullable(),
7445
- ops: z8.array(Rfc6902PatchOp),
7446
- rationale: z8.string(),
7447
- currentContent: z8.record(z8.string(), z8.unknown()).optional()
7448
- });
7449
- var MultiPageUpdateResponse = z8.object({
7450
- patches: z8.array(MultiPagePatchEnvelope),
7451
- assistantMessage: z8.string(),
7452
- pagesModified: z8.number(),
7453
- toolCallsUsed: z8.number()
7454
- });
7455
-
7456
7388
  // ../blocks/src/system/manifest/augmentManifest.ts
7457
7389
  function augmentManifest(manifest) {
7458
7390
  let augmentedFields = manifest.fields ?? [];
@@ -7510,14 +7442,6 @@ function registerManifest(manifest) {
7510
7442
  return manifest;
7511
7443
  }
7512
7444
 
7513
- // ../blocks/src/lib/typeGuards.ts
7514
- function isRecord2(value) {
7515
- return typeof value === "object" && value !== null && !Array.isArray(value);
7516
- }
7517
- function isObjectRecord(value) {
7518
- return typeof value === "object" && value !== null;
7519
- }
7520
-
7521
7445
  // ../theme-core/src/site-styles/types.ts
7522
7446
  function asDesignBlockId(value) {
7523
7447
  return brandNonEmptyString(value, "DesignBlockId");
@@ -7825,10 +7749,10 @@ function assertUniqueLayoutProfileKeys(profiles) {
7825
7749
  }
7826
7750
 
7827
7751
  // ../theme-core/src/buttons/personalities/types.ts
7828
- import { z as z11 } from "zod";
7752
+ import { z as z10 } from "zod";
7829
7753
 
7830
7754
  // ../theme-core/src/buttons/types.ts
7831
- import { z as z9 } from "zod";
7755
+ import { z as z8 } from "zod";
7832
7756
  var VARIANT_ROLES = [
7833
7757
  "primary",
7834
7758
  "secondary",
@@ -7838,22 +7762,22 @@ var VARIANT_ROLES = [
7838
7762
  "tertiary",
7839
7763
  "accent"
7840
7764
  ];
7841
- var cornerStyleSchema = z9.enum(["square", "rounded", "pill"]);
7842
- var shadowSizeSchema = z9.enum(["none", "low", "medium", "high"]);
7843
- var textTransformSchema = z9.enum(["none", "uppercase", "lowercase", "capitalize"]);
7844
- var fontWeightSchema = z9.union([z9.literal(500), z9.literal(600), z9.literal(700)]);
7845
- var buttonTypographySchema = z9.enum(["body", "heading"]);
7846
- var letterSpacingSchema = z9.enum(["tight", "normal", "loose"]);
7847
- var hoverTransformSchema = z9.enum(["none", "lift", "scale", "press"]);
7848
- var hoverColorSchema = z9.enum(["none", "brighten", "darken", "saturate", "token"]);
7849
- var buttonPaddingPresetSchema = z9.enum(["compact", "default", "spacious"]);
7850
- var gradientStyleSchema = z9.enum(["linear", "radial", "conic"]);
7851
- var gradientSharpnessSchema = z9.enum(["smooth", "medium", "hard"]);
7852
- var prioritySchema = z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]);
7853
- var variantRoleSchema = z9.enum(VARIANT_ROLES);
7854
- var buttonSizeNameSchema = z9.enum(["sm", "md", "lg", "xl"]);
7765
+ var cornerStyleSchema = z8.enum(["square", "rounded", "pill"]);
7766
+ var shadowSizeSchema = z8.enum(["none", "low", "medium", "high"]);
7767
+ var textTransformSchema = z8.enum(["none", "uppercase", "lowercase", "capitalize"]);
7768
+ var fontWeightSchema = z8.union([z8.literal(500), z8.literal(600), z8.literal(700)]);
7769
+ var buttonTypographySchema = z8.enum(["body", "heading"]);
7770
+ var letterSpacingSchema = z8.enum(["tight", "normal", "loose"]);
7771
+ var hoverTransformSchema = z8.enum(["none", "lift", "scale", "press"]);
7772
+ var hoverColorSchema = z8.enum(["none", "brighten", "darken", "saturate", "token"]);
7773
+ var buttonPaddingPresetSchema = z8.enum(["compact", "default", "spacious"]);
7774
+ var gradientStyleSchema = z8.enum(["linear", "radial", "conic"]);
7775
+ var gradientSharpnessSchema = z8.enum(["smooth", "medium", "hard"]);
7776
+ var prioritySchema = z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]);
7777
+ var variantRoleSchema = z8.enum(VARIANT_ROLES);
7778
+ var buttonSizeNameSchema = z8.enum(["sm", "md", "lg", "xl"]);
7855
7779
  var PADDING_TOKEN_PATTERN = /^(?:0|\d+(?:\.\d+)?(?:rem|em|px|%))$/;
7856
- var paddingShorthandSchema = z9.string().refine(
7780
+ var paddingShorthandSchema = z8.string().refine(
7857
7781
  (value) => {
7858
7782
  const parts = value.split(/\s+/).filter(Boolean);
7859
7783
  return parts.length === 2 && parts.every((token) => PADDING_TOKEN_PATTERN.test(token));
@@ -7862,11 +7786,11 @@ var paddingShorthandSchema = z9.string().refine(
7862
7786
  message: 'Padding must be two space-separated CSS length tokens (e.g. "0.5rem 1rem"). Use `0` for zero.'
7863
7787
  }
7864
7788
  );
7865
- var buttonSizeConfigSchema = z9.object({
7789
+ var buttonSizeConfigSchema = z8.object({
7866
7790
  padding: paddingShorthandSchema,
7867
- fontSize: z9.string().optional()
7791
+ fontSize: z8.string().optional()
7868
7792
  });
7869
- var buttonSizesSchema = z9.object({
7793
+ var buttonSizesSchema = z8.object({
7870
7794
  sm: buttonSizeConfigSchema,
7871
7795
  md: buttonSizeConfigSchema,
7872
7796
  lg: buttonSizeConfigSchema,
@@ -7877,9 +7801,9 @@ var buttonSizesSchema = z9.object({
7877
7801
  lg,
7878
7802
  xl: xl ?? lg
7879
7803
  }));
7880
- var buttonGlobalSettingsSchema = z9.object({
7804
+ var buttonGlobalSettingsSchema = z8.object({
7881
7805
  cornerStyle: cornerStyleSchema,
7882
- cornerRadius: z9.number().min(0).max(24).optional(),
7806
+ cornerRadius: z8.number().min(0).max(24).optional(),
7883
7807
  shadow: shadowSizeSchema,
7884
7808
  textTransform: textTransformSchema,
7885
7809
  fontWeight: fontWeightSchema,
@@ -7889,104 +7813,104 @@ var buttonGlobalSettingsSchema = z9.object({
7889
7813
  * by the current generator and will be removed once the legacy
7890
7814
  * `primitives/content/components/Button.tsx` slot exports are deleted.
7891
7815
  */
7892
- borderWidth: z9.union([z9.literal(1), z9.literal(2), z9.literal(3)]),
7816
+ borderWidth: z8.union([z8.literal(1), z8.literal(2), z8.literal(3)]),
7893
7817
  // === Family-level typography ===
7894
7818
  // Typography source (body or heading) — selects which theme typography pool to inherit
7895
7819
  typography: buttonTypographySchema.optional(),
7896
7820
  // Font size for all variants in the family (Tailwind token, e.g. "text-xs", "text-sm")
7897
7821
  // Sized variants get this as default; fixed variants inherit unless they override.
7898
7822
  // Size class CSS may still override at run time for sized variants.
7899
- fontSize: z9.string().optional(),
7823
+ fontSize: z8.string().optional(),
7900
7824
  // Letter spacing applied to all variants
7901
7825
  letterSpacing: letterSpacingSchema.optional(),
7902
7826
  // Italic style
7903
- italic: z9.boolean().optional(),
7827
+ italic: z8.boolean().optional(),
7904
7828
  // Padding preset (applies to sized variants without a sizes config)
7905
7829
  paddingPreset: buttonPaddingPresetSchema.optional(),
7906
7830
  hoverTransform: hoverTransformSchema,
7907
7831
  hoverColor: hoverColorSchema,
7908
7832
  // When hoverColor is 'token', this specifies which token to use
7909
- hoverColorToken: z9.string().optional(),
7833
+ hoverColorToken: z8.string().optional(),
7910
7834
  // Gradient settings (if any variant uses gradients)
7911
7835
  gradientStyle: gradientStyleSchema.optional(),
7912
- gradientAngle: z9.number().min(0).max(360).optional(),
7836
+ gradientAngle: z8.number().min(0).max(360).optional(),
7913
7837
  gradientSharpness: gradientSharpnessSchema.optional()
7914
7838
  });
7915
- var gradientDirectionSchema = z9.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
7916
- var buttonBackgroundSchema = z9.discriminatedUnion("type", [
7917
- z9.object({ type: z9.literal("solid"), colorToken: z9.string() }),
7918
- z9.object({
7919
- type: z9.literal("gradient"),
7920
- stops: z9.array(z9.string()).min(2),
7839
+ var gradientDirectionSchema = z8.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
7840
+ var buttonBackgroundSchema = z8.discriminatedUnion("type", [
7841
+ z8.object({ type: z8.literal("solid"), colorToken: z8.string() }),
7842
+ z8.object({
7843
+ type: z8.literal("gradient"),
7844
+ stops: z8.array(z8.string()).min(2),
7921
7845
  direction: gradientDirectionSchema
7922
7846
  }),
7923
- z9.object({ type: z9.literal("transparent") })
7847
+ z8.object({ type: z8.literal("transparent") })
7924
7848
  ]);
7925
- var effectApplicationSchema = z9.object({
7926
- effectId: z9.string(),
7927
- options: z9.record(z9.string(), z9.any()).optional()
7928
- });
7929
- var buttonBorderSchema = z9.object({
7930
- widthClass: z9.string(),
7931
- colorToken: z9.string()
7932
- });
7933
- var variantShadowSchema = z9.object({
7934
- elevation: z9.enum(["none", "low", "medium", "high"]),
7935
- softness: z9.enum(["crisp", "soft", "hard"]).nullable(),
7936
- position: z9.enum(["bottom", "bottom-right"]).default("bottom")
7937
- });
7938
- var variantEffectsSchema = z9.object({
7939
- base: z9.array(effectApplicationSchema).optional(),
7940
- hover: z9.array(effectApplicationSchema).optional(),
7941
- active: z9.array(effectApplicationSchema).optional(),
7942
- focus: z9.array(effectApplicationSchema).optional()
7943
- });
7944
- var variantSizeOverridesSchema = z9.object({
7849
+ var effectApplicationSchema = z8.object({
7850
+ effectId: z8.string(),
7851
+ options: z8.record(z8.string(), z8.any()).optional()
7852
+ });
7853
+ var buttonBorderSchema = z8.object({
7854
+ widthClass: z8.string(),
7855
+ colorToken: z8.string()
7856
+ });
7857
+ var variantShadowSchema = z8.object({
7858
+ elevation: z8.enum(["none", "low", "medium", "high"]),
7859
+ softness: z8.enum(["crisp", "soft", "hard"]).nullable(),
7860
+ position: z8.enum(["bottom", "bottom-right"]).default("bottom")
7861
+ });
7862
+ var variantEffectsSchema = z8.object({
7863
+ base: z8.array(effectApplicationSchema).optional(),
7864
+ hover: z8.array(effectApplicationSchema).optional(),
7865
+ active: z8.array(effectApplicationSchema).optional(),
7866
+ focus: z8.array(effectApplicationSchema).optional()
7867
+ });
7868
+ var variantSizeOverridesSchema = z8.object({
7945
7869
  sm: buttonSizeConfigSchema.optional(),
7946
7870
  md: buttonSizeConfigSchema.optional(),
7947
7871
  lg: buttonSizeConfigSchema.optional(),
7948
7872
  xl: buttonSizeConfigSchema.optional()
7949
7873
  });
7950
- var buttonVariantSchema = z9.object({
7951
- id: z9.string(),
7952
- name: z9.string().min(1).max(20),
7953
- enabled: z9.boolean(),
7874
+ var buttonVariantSchema = z8.object({
7875
+ id: z8.string(),
7876
+ name: z8.string().min(1).max(20),
7877
+ enabled: z8.boolean(),
7954
7878
  priority: prioritySchema,
7955
7879
  // Base appearance (token-based)
7956
7880
  background: buttonBackgroundSchema,
7957
- textColorToken: z9.string(),
7881
+ textColorToken: z8.string(),
7958
7882
  /** Tailwind radius token (e.g. `'rounded-md'`). Omit to inherit from `global.cornerStyle`. */
7959
- borderRadius: z9.string().optional(),
7883
+ borderRadius: z8.string().optional(),
7960
7884
  // Optional shadow override (uses theme.shadow if not specified)
7961
7885
  shadow: variantShadowSchema.optional(),
7962
7886
  // Border (optional)
7963
7887
  border: buttonBorderSchema.optional(),
7964
7888
  // Hover background token (per-variant override, takes precedence over global hoverColorToken)
7965
- hoverBackgroundToken: z9.string().optional(),
7889
+ hoverBackgroundToken: z8.string().optional(),
7966
7890
  // Effect composition
7967
7891
  effects: variantEffectsSchema.optional(),
7968
7892
  // Per-variant size overrides — see VariantSizeOverrides
7969
7893
  sizes: variantSizeOverridesSchema.optional()
7970
7894
  });
7971
- var buttonSystemSchema = z9.object({
7895
+ var buttonSystemSchema = z8.object({
7972
7896
  global: buttonGlobalSettingsSchema,
7973
- variants: z9.array(buttonVariantSchema).min(1).max(6),
7897
+ variants: z8.array(buttonVariantSchema).min(1).max(6),
7974
7898
  sizes: buttonSizesSchema.optional()
7975
7899
  });
7976
7900
 
7977
7901
  // ../theme-core/src/site-styles/styleTags.ts
7978
- import { z as z10 } from "zod";
7902
+ import { z as z9 } from "zod";
7979
7903
  var STYLE_AXIS_VALUES = {
7980
7904
  tone: ["minimal", "classic", "bold"],
7981
7905
  energy: ["calm", "vibrant"],
7982
7906
  motion: ["subtle", "standard", "expressive"],
7983
7907
  era: ["editorial", "modern", "organic", "technical", "retro"]
7984
7908
  };
7985
- var styleTagsSchema = z10.object({
7986
- tone: z10.enum(STYLE_AXIS_VALUES.tone).optional(),
7987
- energy: z10.enum(STYLE_AXIS_VALUES.energy).optional(),
7988
- motion: z10.enum(STYLE_AXIS_VALUES.motion).optional(),
7989
- era: z10.enum(STYLE_AXIS_VALUES.era).optional()
7909
+ var styleTagsSchema = z9.object({
7910
+ tone: z9.enum(STYLE_AXIS_VALUES.tone).optional(),
7911
+ energy: z9.enum(STYLE_AXIS_VALUES.energy).optional(),
7912
+ motion: z9.enum(STYLE_AXIS_VALUES.motion).optional(),
7913
+ era: z9.enum(STYLE_AXIS_VALUES.era).optional()
7990
7914
  });
7991
7915
 
7992
7916
  // ../theme-core/src/buttons/personalities/types.ts
@@ -7996,11 +7920,11 @@ function asButtonPersonalityId(value) {
7996
7920
  }
7997
7921
  return value;
7998
7922
  }
7999
- var buttonPersonalityIdSchema = z11.string().min(1).transform((value) => asButtonPersonalityId(value));
8000
- var buttonPersonalitySchema = z11.object({
7923
+ var buttonPersonalityIdSchema = z10.string().min(1).transform((value) => asButtonPersonalityId(value));
7924
+ var buttonPersonalitySchema = z10.object({
8001
7925
  id: buttonPersonalityIdSchema,
8002
- name: z11.string().min(1),
8003
- description: z11.string().min(1),
7926
+ name: z10.string().min(1),
7927
+ description: z10.string().min(1),
8004
7928
  tags: styleTagsSchema,
8005
7929
  buttonSystem: buttonSystemSchema
8006
7930
  });
@@ -8539,51 +8463,51 @@ var personalitiesById = new Map(
8539
8463
  );
8540
8464
 
8541
8465
  // ../theme-core/src/palette/variants/types.ts
8542
- import { z as z23 } from "zod";
8466
+ import { z as z22 } from "zod";
8543
8467
 
8544
8468
  // ../theme-core/src/schema.ts
8545
- import { z as z22 } from "zod";
8469
+ import { z as z21 } from "zod";
8546
8470
 
8547
8471
  // ../theme-core/src/lib/media.ts
8548
- import z12 from "zod";
8549
- var hotspotSchema = z12.object({
8550
- x: z12.number().min(0).max(1),
8551
- y: z12.number().min(0).max(1),
8552
- radius: z12.number().optional()
8553
- });
8554
- var rotationSchema = z12.union([z12.literal(0), z12.literal(90), z12.literal(180), z12.literal(270)]);
8555
- var rectSchema = z12.tuple([z12.number(), z12.number(), z12.number(), z12.number()]);
8556
- var aspectCropSchema = z12.object({
8557
- aspect: z12.preprocess((value) => value == null ? void 0 : value, z12.string().optional()),
8558
- rect: z12.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8559
- hotspot: z12.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8560
- rotation: z12.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8561
- });
8562
- var transformSchema = z12.object({
8563
- aspectCrops: z12.preprocess((value) => {
8472
+ import z11 from "zod";
8473
+ var hotspotSchema = z11.object({
8474
+ x: z11.number().min(0).max(1),
8475
+ y: z11.number().min(0).max(1),
8476
+ radius: z11.number().optional()
8477
+ });
8478
+ var rotationSchema = z11.union([z11.literal(0), z11.literal(90), z11.literal(180), z11.literal(270)]);
8479
+ var rectSchema = z11.tuple([z11.number(), z11.number(), z11.number(), z11.number()]);
8480
+ var aspectCropSchema = z11.object({
8481
+ aspect: z11.preprocess((value) => value == null ? void 0 : value, z11.string().optional()),
8482
+ rect: z11.preprocess((value) => value == null ? void 0 : value, rectSchema.optional()),
8483
+ hotspot: z11.preprocess((value) => value == null ? void 0 : value, hotspotSchema.optional()),
8484
+ rotation: z11.preprocess((value) => value == null ? void 0 : value, rotationSchema.optional())
8485
+ });
8486
+ var transformSchema = z11.object({
8487
+ aspectCrops: z11.preprocess((value) => {
8564
8488
  if (!value || typeof value !== "object" || Array.isArray(value)) {
8565
8489
  return void 0;
8566
8490
  }
8567
8491
  return value;
8568
- }, z12.record(z12.string(), aspectCropSchema.catch({}))).optional(),
8492
+ }, z11.record(z11.string(), aspectCropSchema.catch({}))).optional(),
8569
8493
  rect: rectSchema.optional(),
8570
8494
  hotspot: hotspotSchema.optional(),
8571
8495
  rotation: rotationSchema.optional()
8572
8496
  });
8573
- var mediaSchema = z12.object({
8574
- type: z12.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8575
- purpose: z12.string().optional(),
8576
- placeholder: z12.boolean().default(true).optional(),
8577
- assetId: z12.string().optional(),
8578
- identifier: z12.string().optional(),
8579
- src: z12.string().optional(),
8580
- alt: z12.string().optional(),
8581
- filename: z12.string().optional(),
8582
- mimeType: z12.string().optional(),
8583
- width: z12.number().optional(),
8584
- height: z12.number().optional(),
8585
- storageBucket: z12.string().optional(),
8586
- storagePath: z12.string().optional(),
8497
+ var mediaSchema = z11.object({
8498
+ type: z11.enum(["image", "video", "audio", "document", "spreadsheet", "archive"]),
8499
+ purpose: z11.string().optional(),
8500
+ placeholder: z11.boolean().default(true).optional(),
8501
+ assetId: z11.string().optional(),
8502
+ identifier: z11.string().optional(),
8503
+ src: z11.string().optional(),
8504
+ alt: z11.string().optional(),
8505
+ filename: z11.string().optional(),
8506
+ mimeType: z11.string().optional(),
8507
+ width: z11.number().optional(),
8508
+ height: z11.number().optional(),
8509
+ storageBucket: z11.string().optional(),
8510
+ storagePath: z11.string().optional(),
8587
8511
  transform: transformSchema.optional()
8588
8512
  });
8589
8513
 
@@ -8591,48 +8515,48 @@ var mediaSchema = z12.object({
8591
8515
  var BUTTON_SIZE_NAMES = buttonSizeNameSchema.options;
8592
8516
 
8593
8517
  // ../theme-core/src/cards/types.ts
8594
- import { z as z13 } from "zod";
8595
- var cardSpacingSchema = z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8596
- var gradientDirectionSchema2 = z13.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8597
- var cardBackgroundSchema = z13.discriminatedUnion("type", [
8598
- z13.object({ type: z13.literal("solid"), colorToken: z13.string() }),
8599
- z13.object({
8600
- type: z13.literal("gradient"),
8601
- fromToken: z13.string(),
8602
- toToken: z13.string(),
8518
+ import { z as z12 } from "zod";
8519
+ var cardSpacingSchema = z12.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
8520
+ var gradientDirectionSchema2 = z12.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
8521
+ var cardBackgroundSchema = z12.discriminatedUnion("type", [
8522
+ z12.object({ type: z12.literal("solid"), colorToken: z12.string() }),
8523
+ z12.object({
8524
+ type: z12.literal("gradient"),
8525
+ fromToken: z12.string(),
8526
+ toToken: z12.string(),
8603
8527
  direction: gradientDirectionSchema2
8604
8528
  }),
8605
- z13.object({ type: z13.literal("transparent") })
8529
+ z12.object({ type: z12.literal("transparent") })
8606
8530
  ]);
8607
- var cardBorderSchema = z13.object({
8608
- widthClass: z13.string(),
8609
- colorToken: z13.string()
8610
- });
8611
- var cardVariantSchema = z13.object({
8612
- id: z13.string(),
8613
- name: z13.string().min(1).max(20),
8614
- enabled: z13.boolean(),
8615
- priority: z13.union([z13.literal(1), z13.literal(2), z13.literal(3)]),
8531
+ var cardBorderSchema = z12.object({
8532
+ widthClass: z12.string(),
8533
+ colorToken: z12.string()
8534
+ });
8535
+ var cardVariantSchema = z12.object({
8536
+ id: z12.string(),
8537
+ name: z12.string().min(1).max(20),
8538
+ enabled: z12.boolean(),
8539
+ priority: z12.union([z12.literal(1), z12.literal(2), z12.literal(3)]),
8616
8540
  // Appearance (token-based)
8617
8541
  background: cardBackgroundSchema,
8618
8542
  spacing: cardSpacingSchema,
8619
8543
  // Optional overrides (uses theme defaults if not specified)
8620
- shadow: z13.object({
8621
- elevation: z13.enum(["none", "low", "medium", "high"]),
8622
- softness: z13.enum(["crisp", "soft", "hard"]).nullable(),
8623
- position: z13.enum(["bottom", "bottom-right"]).default("bottom")
8544
+ shadow: z12.object({
8545
+ elevation: z12.enum(["none", "low", "medium", "high"]),
8546
+ softness: z12.enum(["crisp", "soft", "hard"]).nullable(),
8547
+ position: z12.enum(["bottom", "bottom-right"]).default("bottom")
8624
8548
  }).optional(),
8625
- corners: z13.enum(["square", "soft", "rounded", "pill"]).optional(),
8549
+ corners: z12.enum(["square", "soft", "rounded", "pill"]).optional(),
8626
8550
  // Border (optional)
8627
8551
  border: cardBorderSchema.optional()
8628
8552
  });
8629
- var cardSystemSchema = z13.object({
8630
- variants: z13.array(cardVariantSchema).min(1).max(3)
8553
+ var cardSystemSchema = z12.object({
8554
+ variants: z12.array(cardVariantSchema).min(1).max(3)
8631
8555
  });
8632
8556
 
8633
8557
  // ../theme-core/src/accordions/types.ts
8634
- import { z as z14 } from "zod";
8635
- var accordionIconSchema = z14.enum([
8558
+ import { z as z13 } from "zod";
8559
+ var accordionIconSchema = z13.enum([
8636
8560
  "plus-minus",
8637
8561
  // + becomes - (swap or rotate 90°)
8638
8562
  "chevron",
@@ -8644,180 +8568,180 @@ var accordionIconSchema = z14.enum([
8644
8568
  "circle-plus-minus"
8645
8569
  // ⊕ becomes ⊖ (swap with fade)
8646
8570
  ]);
8647
- var accordionSystemSchema = z14.object({
8571
+ var accordionSystemSchema = z13.object({
8648
8572
  // Visual styling (solid color only - gradients can be added later if needed)
8649
- background: z14.object({
8650
- type: z14.literal("solid"),
8651
- colorToken: z14.string()
8573
+ background: z13.object({
8574
+ type: z13.literal("solid"),
8575
+ colorToken: z13.string()
8652
8576
  }),
8653
8577
  // Spacing (padding inside items)
8654
- spacing: z14.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8578
+ spacing: z13.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]),
8655
8579
  // Border radius (null = inherit from theme.corners)
8656
- corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8580
+ corners: z13.enum(["square", "soft", "rounded", "pill"]).nullable(),
8657
8581
  // Border styling (null = inherit from theme.border)
8658
- border: z14.object({
8659
- widthClass: z14.string(),
8582
+ border: z13.object({
8583
+ widthClass: z13.string(),
8660
8584
  // e.g., 'border', 'border-2', 'border-0'
8661
- colorToken: z14.string()
8585
+ colorToken: z13.string()
8662
8586
  }).nullable(),
8663
8587
  // Shadow (null = inherit from theme.shadow)
8664
- shadow: z14.object({
8665
- elevation: z14.enum(["none", "low", "medium", "high"]),
8666
- softness: z14.enum(["soft", "crisp", "hard"]).nullable(),
8667
- position: z14.enum(["bottom", "bottom-right"])
8588
+ shadow: z13.object({
8589
+ elevation: z13.enum(["none", "low", "medium", "high"]),
8590
+ softness: z13.enum(["soft", "crisp", "hard"]).nullable(),
8591
+ position: z13.enum(["bottom", "bottom-right"])
8668
8592
  }).nullable(),
8669
8593
  // Icon style and animation
8670
- icon: z14.object({
8594
+ icon: z13.object({
8671
8595
  style: accordionIconSchema,
8672
- position: z14.enum(["left", "right"]),
8673
- size: z14.enum(["sm", "md", "lg"])
8596
+ position: z13.enum(["left", "right"]),
8597
+ size: z13.enum(["sm", "md", "lg"])
8674
8598
  }),
8675
8599
  // Trigger (question) styling
8676
- trigger: z14.object({
8677
- textColorToken: z14.string(),
8678
- fontWeight: z14.enum(["regular", "medium", "semibold", "bold"]).nullable()
8600
+ trigger: z13.object({
8601
+ textColorToken: z13.string(),
8602
+ fontWeight: z13.enum(["regular", "medium", "semibold", "bold"]).nullable()
8679
8603
  // null = inherit from theme
8680
8604
  }),
8681
8605
  // Hover state styling
8682
- hover: z14.object({
8683
- backgroundColorToken: z14.string().optional(),
8684
- textColorToken: z14.string().optional(),
8685
- borderColorToken: z14.string().optional()
8606
+ hover: z13.object({
8607
+ backgroundColorToken: z13.string().optional(),
8608
+ textColorToken: z13.string().optional(),
8609
+ borderColorToken: z13.string().optional()
8686
8610
  }),
8687
8611
  // Content (answer) styling
8688
- content: z14.object({
8689
- textColorToken: z14.string()
8612
+ content: z13.object({
8613
+ textColorToken: z13.string()
8690
8614
  })
8691
8615
  });
8692
8616
 
8693
8617
  // ../theme-core/src/inputs/types.ts
8694
- import { z as z15 } from "zod";
8695
- var inputSystemSchema = z15.object({
8618
+ import { z as z14 } from "zod";
8619
+ var inputSystemSchema = z14.object({
8696
8620
  // Base styling (applied to all inputs)
8697
- base: z15.object({
8698
- background: z15.union([
8699
- z15.object({
8700
- type: z15.literal("solid"),
8701
- colorToken: z15.string()
8621
+ base: z14.object({
8622
+ background: z14.union([
8623
+ z14.object({
8624
+ type: z14.literal("solid"),
8625
+ colorToken: z14.string()
8702
8626
  }),
8703
- z15.object({
8704
- type: z15.literal("transparent")
8627
+ z14.object({
8628
+ type: z14.literal("transparent")
8705
8629
  })
8706
8630
  ]),
8707
- textColorToken: z15.string(),
8708
- border: z15.object({
8709
- widthClass: z15.string(),
8631
+ textColorToken: z14.string(),
8632
+ border: z14.object({
8633
+ widthClass: z14.string(),
8710
8634
  // e.g., 'border', 'border-2'
8711
- colorToken: z15.string(),
8712
- style: z15.enum(["all", "underline"]).optional()
8635
+ colorToken: z14.string(),
8636
+ style: z14.enum(["all", "underline"]).optional()
8713
8637
  }),
8714
- corners: z15.enum(["square", "soft", "rounded", "pill"]).nullable(),
8638
+ corners: z14.enum(["square", "soft", "rounded", "pill"]).nullable(),
8715
8639
  // null = inherit from theme.corners
8716
- shadow: z15.object({
8717
- elevation: z15.enum(["none", "low", "medium"]),
8718
- softness: z15.enum(["soft", "crisp", "hard"]).nullable()
8640
+ shadow: z14.object({
8641
+ elevation: z14.enum(["none", "low", "medium"]),
8642
+ softness: z14.enum(["soft", "crisp", "hard"]).nullable()
8719
8643
  }).nullable(),
8720
- spacing: z15.enum(["compact", "cozy", "medium", "comfortable"]),
8644
+ spacing: z14.enum(["compact", "cozy", "medium", "comfortable"]),
8721
8645
  // padding inside inputs
8722
- fontSize: z15.enum(["sm", "base", "lg"])
8646
+ fontSize: z14.enum(["sm", "base", "lg"])
8723
8647
  }),
8724
8648
  // Label styling
8725
- label: z15.object({
8726
- textColorToken: z15.string(),
8727
- fontWeight: z15.enum(["regular", "medium", "semibold", "bold", "black"]),
8728
- fontSize: z15.enum(["2xs", "xs", "sm", "base"]),
8729
- textTransform: z15.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8730
- letterSpacing: z15.enum(["normal", "wide", "wider", "widest"]).optional(),
8731
- opacity: z15.number().min(0.2).max(1).optional()
8649
+ label: z14.object({
8650
+ textColorToken: z14.string(),
8651
+ fontWeight: z14.enum(["regular", "medium", "semibold", "bold", "black"]),
8652
+ fontSize: z14.enum(["2xs", "xs", "sm", "base"]),
8653
+ textTransform: z14.enum(["none", "uppercase", "lowercase", "capitalize"]).optional(),
8654
+ letterSpacing: z14.enum(["normal", "wide", "wider", "widest"]).optional(),
8655
+ opacity: z14.number().min(0.2).max(1).optional()
8732
8656
  }),
8733
8657
  // Focus state
8734
- focus: z15.object({
8735
- ringColorToken: z15.string(),
8736
- ringWidth: z15.enum(["0", "1", "2", "3"]),
8737
- borderColorToken: z15.string().optional()
8658
+ focus: z14.object({
8659
+ ringColorToken: z14.string(),
8660
+ ringWidth: z14.enum(["0", "1", "2", "3"]),
8661
+ borderColorToken: z14.string().optional()
8738
8662
  // Change border color on focus
8739
8663
  }),
8740
8664
  // Error state (for validation feedback)
8741
- error: z15.object({
8742
- borderColorToken: z15.string(),
8743
- textColorToken: z15.string()
8665
+ error: z14.object({
8666
+ borderColorToken: z14.string(),
8667
+ textColorToken: z14.string()
8744
8668
  }),
8745
8669
  // Disabled state
8746
- disabled: z15.object({
8747
- backgroundColorToken: z15.string(),
8748
- textColorToken: z15.string(),
8749
- opacity: z15.number().min(0.3).max(0.7)
8670
+ disabled: z14.object({
8671
+ backgroundColorToken: z14.string(),
8672
+ textColorToken: z14.string(),
8673
+ opacity: z14.number().min(0.3).max(0.7)
8750
8674
  })
8751
8675
  });
8752
8676
 
8753
8677
  // ../theme-core/src/gradients/types.ts
8754
- import { z as z16 } from "zod";
8755
- var gradientStopSchema = z16.object({
8756
- color: z16.string(),
8678
+ import { z as z15 } from "zod";
8679
+ var gradientStopSchema = z15.object({
8680
+ color: z15.string(),
8757
8681
  // Theme color token name (e.g., 'primary-500')
8758
- position: z16.number().min(0).max(100)
8682
+ position: z15.number().min(0).max(100)
8759
8683
  // Percentage 0-100
8760
8684
  });
8761
- var gradientConfigSchema = z16.object({
8762
- type: z16.enum(["linear", "radial"]),
8763
- angle: z16.number().min(0).max(360).optional(),
8685
+ var gradientConfigSchema = z15.object({
8686
+ type: z15.enum(["linear", "radial"]),
8687
+ angle: z15.number().min(0).max(360).optional(),
8764
8688
  // For linear gradients (degrees)
8765
- position: z16.string().optional(),
8689
+ position: z15.string().optional(),
8766
8690
  // For radial gradients ('center', 'top left', etc.)
8767
- stops: z16.array(gradientStopSchema).min(2)
8691
+ stops: z15.array(gradientStopSchema).min(2)
8768
8692
  });
8769
8693
 
8770
8694
  // ../theme-core/src/navigation/types.ts
8771
- import { z as z18 } from "zod";
8695
+ import { z as z17 } from "zod";
8772
8696
 
8773
8697
  // ../theme-core/src/interactive/baseSchema.ts
8774
- import { z as z17 } from "zod";
8775
- var interactiveTypographySchema = z17.object({
8698
+ import { z as z16 } from "zod";
8699
+ var interactiveTypographySchema = z16.object({
8776
8700
  /** Font family source */
8777
- typography: z17.enum(["body", "heading"]).default("body"),
8701
+ typography: z16.enum(["body", "heading"]).default("body"),
8778
8702
  /** Font weight */
8779
- fontWeight: z17.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8703
+ fontWeight: z16.enum(["regular", "medium", "semibold", "bold"]).default("medium"),
8780
8704
  /** Text transform */
8781
- textTransform: z17.enum(["none", "uppercase", "capitalize"]).default("none"),
8705
+ textTransform: z16.enum(["none", "uppercase", "capitalize"]).default("none"),
8782
8706
  /** Italic style */
8783
- italic: z17.boolean().default(false)
8707
+ italic: z16.boolean().default(false)
8784
8708
  });
8785
- var effectApplicationSchema2 = z17.object({
8709
+ var effectApplicationSchema2 = z16.object({
8786
8710
  /** Effect preset ID */
8787
- effectId: z17.string(),
8711
+ effectId: z16.string(),
8788
8712
  /** User-provided customization options */
8789
- options: z17.record(z17.string(), z17.any()).optional()
8713
+ options: z16.record(z16.string(), z16.any()).optional()
8790
8714
  });
8791
- var effectCompositionSchema = z17.object({
8715
+ var effectCompositionSchema = z16.object({
8792
8716
  /** Effects always applied */
8793
- base: z17.array(effectApplicationSchema2).optional(),
8717
+ base: z16.array(effectApplicationSchema2).optional(),
8794
8718
  /** Effects applied on hover */
8795
- hover: z17.array(effectApplicationSchema2).optional(),
8719
+ hover: z16.array(effectApplicationSchema2).optional(),
8796
8720
  /** Effects applied on active/pressed */
8797
- active: z17.array(effectApplicationSchema2).optional(),
8721
+ active: z16.array(effectApplicationSchema2).optional(),
8798
8722
  /** Effects applied on focus */
8799
- focus: z17.array(effectApplicationSchema2).optional()
8723
+ focus: z16.array(effectApplicationSchema2).optional()
8800
8724
  });
8801
8725
 
8802
8726
  // ../theme-core/src/navigation/types.ts
8803
- var navLinkPaddingSchema = z18.enum(["none", "compact", "default"]);
8804
- var navLinkPaddingXSchema = z18.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8805
- var navLinkBorderRadiusSchema = z18.enum(["none", "sm", "md", "full"]);
8806
- var navLinkTextSizeSchema = z18.enum(["xs", "sm", "base", "lg"]);
8807
- var navLinkLetterSpacingSchema = z18.enum(["normal", "wide", "wider", "widest"]);
8808
- var navLinkStyleSchema = z18.object({
8727
+ var navLinkPaddingSchema = z17.enum(["none", "compact", "default"]);
8728
+ var navLinkPaddingXSchema = z17.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
8729
+ var navLinkBorderRadiusSchema = z17.enum(["none", "sm", "md", "full"]);
8730
+ var navLinkTextSizeSchema = z17.enum(["xs", "sm", "base", "lg"]);
8731
+ var navLinkLetterSpacingSchema = z17.enum(["normal", "wide", "wider", "widest"]);
8732
+ var navLinkStyleSchema = z17.object({
8809
8733
  /** Display name for the style */
8810
- name: z18.string().min(1).max(30).optional(),
8734
+ name: z17.string().min(1).max(30).optional(),
8811
8735
  /** Typography settings (inherited from interactive base) */
8812
8736
  ...interactiveTypographySchema.shape,
8813
8737
  /** Text color token */
8814
- colorToken: z18.string().default("text"),
8738
+ colorToken: z17.string().default("text"),
8815
8739
  /** Optional text size override */
8816
8740
  textSize: navLinkTextSizeSchema.optional(),
8817
8741
  /** Optional letter spacing override */
8818
8742
  letterSpacing: navLinkLetterSpacingSchema.optional(),
8819
8743
  /** Hover/active color token (for color-change effects) */
8820
- hoverColorToken: z18.string().nullable().optional(),
8744
+ hoverColorToken: z17.string().nullable().optional(),
8821
8745
  /** Padding preset */
8822
8746
  padding: navLinkPaddingSchema.default("compact"),
8823
8747
  /** Horizontal padding override (overrides horizontal component of padding preset) */
@@ -8829,7 +8753,7 @@ var navLinkStyleSchema = z18.object({
8829
8753
  });
8830
8754
 
8831
8755
  // ../theme-core/src/customCss/validation.ts
8832
- import { z as z19 } from "zod";
8756
+ import { z as z18 } from "zod";
8833
8757
  var FORBIDDEN_SELECTORS = [":root", "html", "body"];
8834
8758
  var UNIVERSAL_SELECTOR = "*";
8835
8759
  var REMOTE_URL_PATTERN = /url\s*\(\s*['"]?(https?:|\/\/)/i;
@@ -8871,7 +8795,7 @@ function containsForbiddenSelector(selector) {
8871
8795
  }
8872
8796
  return false;
8873
8797
  }
8874
- var selectorSchema = z19.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
8798
+ var selectorSchema = z18.string().min(1, "Selector cannot be empty").max(200, "Selector too long (max 200 characters)").refine(
8875
8799
  (s) => !containsForbiddenSelector(s),
8876
8800
  { message: "Global selectors (:root, html, body, *) are not allowed" }
8877
8801
  );
@@ -8881,38 +8805,38 @@ function containsRemoteUrl(value) {
8881
8805
  function containsJavascriptUrl(value) {
8882
8806
  return JAVASCRIPT_URL_PATTERN.test(value);
8883
8807
  }
8884
- var declarationValueSchema = z19.string().max(500, "Declaration value too long (max 500 characters)").refine(
8808
+ var declarationValueSchema = z18.string().max(500, "Declaration value too long (max 500 characters)").refine(
8885
8809
  (v) => !containsRemoteUrl(v),
8886
8810
  { message: "Remote url() references are not allowed. Use local paths, data URIs, or fragment IDs." }
8887
8811
  ).refine(
8888
8812
  (v) => !containsJavascriptUrl(v),
8889
8813
  { message: "javascript: URLs are not allowed" }
8890
8814
  );
8891
- var declarationsSchema = z19.record(
8892
- z19.string().min(1).max(100),
8815
+ var declarationsSchema = z18.record(
8816
+ z18.string().min(1).max(100),
8893
8817
  // property name
8894
8818
  declarationValueSchema
8895
8819
  // property value
8896
8820
  );
8897
- var customCssRuleSchema = z19.object({
8898
- id: z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
8821
+ var customCssRuleSchema = z18.object({
8822
+ id: z18.string().min(1, "Rule ID is required").max(50, "Rule ID too long"),
8899
8823
  selector: selectorSchema,
8900
8824
  declarations: declarationsSchema
8901
8825
  });
8902
8826
  var blockCustomCssRuleSchema = customCssRuleSchema.extend({
8903
- blockKind: z19.string().min(1, "Block kind is required").max(50, "Block kind too long")
8827
+ blockKind: z18.string().min(1, "Block kind is required").max(50, "Block kind too long")
8904
8828
  });
8905
- var customCssRulesSchema = z19.array(customCssRuleSchema).optional();
8906
- var blockCustomCssRulesSchema = z19.array(blockCustomCssRuleSchema).optional();
8829
+ var customCssRulesSchema = z18.array(customCssRuleSchema).optional();
8830
+ var blockCustomCssRulesSchema = z18.array(blockCustomCssRuleSchema).optional();
8907
8831
 
8908
8832
  // ../theme-core/src/customCss/atRuleValidation.ts
8909
- import { z as z20 } from "zod";
8833
+ import { z as z19 } from "zod";
8910
8834
  var KEYFRAME_OFFSET_PATTERN = /^(from|to|\d{1,3}%)$/i;
8911
8835
  var ANIMATION_NAME_PATTERN = /^[a-zA-Z_-][a-zA-Z0-9_-]*$/;
8912
8836
  var BLOCKED_AT_RULES = ["@import", "@charset"];
8913
8837
  var BLOCKED_AT_RULE_PATTERN = /@(?:import|charset)\b/i;
8914
- var ruleIdSchema = z20.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
8915
- var nestedRuleSchema = z20.object({
8838
+ var ruleIdSchema = z19.string().min(1, "Rule ID is required").max(50, "Rule ID too long");
8839
+ var nestedRuleSchema = z19.object({
8916
8840
  selector: selectorSchema,
8917
8841
  declarations: declarationsSchema
8918
8842
  });
@@ -8924,146 +8848,146 @@ function isValidKeyframeOffset(offset) {
8924
8848
  const value = parseInt(match[1], 10);
8925
8849
  return value >= 0 && value <= 100;
8926
8850
  }
8927
- var keyframeOffsetSchema = z20.string().transform((offset) => offset.trim()).refine(
8851
+ var keyframeOffsetSchema = z19.string().transform((offset) => offset.trim()).refine(
8928
8852
  (offset) => KEYFRAME_OFFSET_PATTERN.test(offset),
8929
8853
  { message: 'Invalid keyframe offset. Use percentages (0%, 50%, 100%) or "from"/"to"' }
8930
8854
  ).refine(
8931
8855
  isValidKeyframeOffset,
8932
8856
  { message: "Keyframe offset must be between 0% and 100%" }
8933
8857
  );
8934
- var animationNameSchema = z20.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
8858
+ var animationNameSchema = z19.string().min(1, "Animation name is required").max(50, "Animation name too long").refine(
8935
8859
  (name) => ANIMATION_NAME_PATTERN.test(name),
8936
8860
  { message: "Invalid animation name. Use letters, numbers, dashes, underscores (start with letter, dash, or underscore)" }
8937
8861
  );
8938
- var keyframeSchema = z20.object({
8862
+ var keyframeSchema = z19.object({
8939
8863
  offset: keyframeOffsetSchema,
8940
8864
  declarations: declarationsSchema
8941
8865
  });
8942
- var keyframesAtRuleSchema = z20.object({
8866
+ var keyframesAtRuleSchema = z19.object({
8943
8867
  id: ruleIdSchema,
8944
- type: z20.literal("keyframes"),
8868
+ type: z19.literal("keyframes"),
8945
8869
  name: animationNameSchema,
8946
- frames: z20.array(keyframeSchema).min(1, "At least one keyframe is required")
8870
+ frames: z19.array(keyframeSchema).min(1, "At least one keyframe is required")
8947
8871
  });
8948
- var fontFaceDeclarationsSchema = z20.record(z20.string().min(1).max(100), declarationValueSchema).refine(
8872
+ var fontFaceDeclarationsSchema = z19.record(z19.string().min(1).max(100), declarationValueSchema).refine(
8949
8873
  (decls) => "fontFamily" in decls || "font-family" in decls,
8950
8874
  { message: "font-family is required in @font-face" }
8951
8875
  );
8952
- var fontFaceAtRuleSchema = z20.object({
8876
+ var fontFaceAtRuleSchema = z19.object({
8953
8877
  id: ruleIdSchema,
8954
- type: z20.literal("font-face"),
8878
+ type: z19.literal("font-face"),
8955
8879
  declarations: fontFaceDeclarationsSchema
8956
8880
  });
8957
- var mediaQuerySchema = z20.string().min(1, "Media query is required").max(200, "Media query too long");
8958
- var mediaAtRuleSchema = z20.object({
8881
+ var mediaQuerySchema = z19.string().min(1, "Media query is required").max(200, "Media query too long");
8882
+ var mediaAtRuleSchema = z19.object({
8959
8883
  id: ruleIdSchema,
8960
- type: z20.literal("media"),
8884
+ type: z19.literal("media"),
8961
8885
  query: mediaQuerySchema,
8962
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
8886
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
8963
8887
  });
8964
- var supportsConditionSchema = z20.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
8965
- var supportsAtRuleSchema = z20.object({
8888
+ var supportsConditionSchema = z19.string().min(1, "Supports condition is required").max(200, "Supports condition too long");
8889
+ var supportsAtRuleSchema = z19.object({
8966
8890
  id: ruleIdSchema,
8967
- type: z20.literal("supports"),
8891
+ type: z19.literal("supports"),
8968
8892
  condition: supportsConditionSchema,
8969
- rules: z20.array(nestedRuleSchema).min(1, "At least one rule is required")
8893
+ rules: z19.array(nestedRuleSchema).min(1, "At least one rule is required")
8970
8894
  });
8971
8895
  function containsBlockedAtRule(css) {
8972
8896
  return BLOCKED_AT_RULE_PATTERN.test(css);
8973
8897
  }
8974
- var rawCssSchema = z20.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
8898
+ var rawCssSchema = z19.string().min(1, "CSS is required").max(5e3, "Raw CSS too long (max 5000 characters)").refine(
8975
8899
  (css) => css.trim().startsWith("@"),
8976
8900
  { message: "Raw at-rule must start with @" }
8977
8901
  ).refine(
8978
8902
  (css) => !containsBlockedAtRule(css),
8979
8903
  { message: `Blocked at-rules: ${BLOCKED_AT_RULES.join(", ")}. Use typed at-rules or local assets instead.` }
8980
8904
  );
8981
- var rawAtRuleSchema = z20.object({
8905
+ var rawAtRuleSchema = z19.object({
8982
8906
  id: ruleIdSchema,
8983
- type: z20.literal("raw"),
8907
+ type: z19.literal("raw"),
8984
8908
  css: rawCssSchema
8985
8909
  });
8986
- var customCssAtRuleSchema = z20.discriminatedUnion("type", [
8910
+ var customCssAtRuleSchema = z19.discriminatedUnion("type", [
8987
8911
  keyframesAtRuleSchema,
8988
8912
  fontFaceAtRuleSchema,
8989
8913
  mediaAtRuleSchema,
8990
8914
  supportsAtRuleSchema,
8991
8915
  rawAtRuleSchema
8992
8916
  ]);
8993
- var customCssAtRulesSchema = z20.array(customCssAtRuleSchema).optional();
8917
+ var customCssAtRulesSchema = z19.array(customCssAtRuleSchema).optional();
8994
8918
 
8995
8919
  // ../theme-core/src/shared/componentStyles.ts
8996
- import { z as z21 } from "zod";
8997
- var componentBorderSchema = z21.object({
8998
- width: z21.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
8999
- style: z21.enum(["solid", "dashed"]).default("solid"),
9000
- colorToken: z21.string().optional()
8920
+ import { z as z20 } from "zod";
8921
+ var componentBorderSchema = z20.object({
8922
+ width: z20.enum(["none", "hairline", "thin", "medium", "thick"]).default("none"),
8923
+ style: z20.enum(["solid", "dashed"]).default("solid"),
8924
+ colorToken: z20.string().optional()
9001
8925
  // defaults to "border" if not set
9002
8926
  });
9003
- var componentShadowSchema = z21.object({
9004
- elevation: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
8927
+ var componentShadowSchema = z20.object({
8928
+ elevation: z20.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("sm")
9005
8929
  });
9006
8930
 
9007
8931
  // ../theme-core/src/schema.ts
9008
- var axesSchema = z22.object({
9009
- tone: z22.enum(["minimal", "classic", "bold"]),
9010
- energy: z22.enum(["calm", "vibrant"]),
9011
- density: z22.enum(["airy", "regular", "compact"]),
9012
- mediaBias: z22.enum(["text", "media", "mixed"]),
9013
- conversionBias: z22.enum(["low", "med", "high"]),
9014
- motion: z22.enum(["subtle", "standard", "expressive"])
9015
- });
9016
- var colourHexString = z22.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
9017
- var paletteColorSchema = z22.object({
9018
- name: z22.string().min(1),
8932
+ var axesSchema = z21.object({
8933
+ tone: z21.enum(["minimal", "classic", "bold"]),
8934
+ energy: z21.enum(["calm", "vibrant"]),
8935
+ density: z21.enum(["airy", "regular", "compact"]),
8936
+ mediaBias: z21.enum(["text", "media", "mixed"]),
8937
+ conversionBias: z21.enum(["low", "med", "high"]),
8938
+ motion: z21.enum(["subtle", "standard", "expressive"])
8939
+ });
8940
+ var colourHexString = z21.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
8941
+ var paletteColorSchema = z21.object({
8942
+ name: z21.string().min(1),
9019
8943
  hex: colourHexString
9020
8944
  });
9021
- var paletteMetaSchema = z22.object({
9022
- mode: z22.enum(["light", "dark"])
8945
+ var paletteMetaSchema = z21.object({
8946
+ mode: z21.enum(["light", "dark"])
9023
8947
  });
9024
- var paletteSchema = z22.object({
9025
- colors: z22.array(paletteColorSchema),
8948
+ var paletteSchema = z21.object({
8949
+ colors: z21.array(paletteColorSchema),
9026
8950
  meta: paletteMetaSchema
9027
8951
  });
9028
- var typographyStyleSchema = z22.object({
9029
- family: z22.string().min(1),
9030
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]),
9031
- letterSpacing: z22.enum(["tight", "normal", "loose"]),
9032
- lineHeight: z22.enum(["normal", "relaxed", "loose"])
8952
+ var typographyStyleSchema = z21.object({
8953
+ family: z21.string().min(1),
8954
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]),
8955
+ letterSpacing: z21.enum(["tight", "normal", "loose"]),
8956
+ lineHeight: z21.enum(["normal", "relaxed", "loose"])
9033
8957
  });
9034
8958
  var bodyTypographyStyleSchema = typographyStyleSchema.extend({
9035
- size: z22.enum(["md", "lg", "xl"])
8959
+ size: z21.enum(["md", "lg", "xl"])
9036
8960
  });
9037
- var headingSizeSchema = z22.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
9038
- var headingTypographyOverridesSchema = z22.object({
9039
- weight: z22.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
9040
- letterSpacing: z22.enum(["tight", "normal", "loose"]).nullable().optional(),
8961
+ var headingSizeSchema = z21.enum(["xs", "sm", "md", "lg", "xl", "2xl"]);
8962
+ var headingTypographyOverridesSchema = z21.object({
8963
+ weight: z21.enum(["light", "regular", "medium", "semibold", "bold"]).nullable().optional(),
8964
+ letterSpacing: z21.enum(["tight", "normal", "loose"]).nullable().optional(),
9041
8965
  size: headingSizeSchema.nullable().optional(),
9042
- lineHeight: z22.enum(["normal", "relaxed", "loose"]).nullable().optional(),
9043
- italic: z22.boolean().nullable().optional(),
9044
- colorToken: z22.string().min(1).nullable().optional()
8966
+ lineHeight: z21.enum(["normal", "relaxed", "loose"]).nullable().optional(),
8967
+ italic: z21.boolean().nullable().optional(),
8968
+ colorToken: z21.string().min(1).nullable().optional()
9045
8969
  // Palette token name for heading color
9046
8970
  });
9047
8971
  var headingTypographyStyleSchema = typographyStyleSchema.extend({
9048
- case: z22.enum(["uppercase", "normal", "smallCaps"]).nullable(),
9049
- italic: z22.boolean().nullable(),
9050
- colorToken: z22.string().min(1).nullable().optional()
8972
+ case: z21.enum(["uppercase", "normal", "smallCaps"]).nullable(),
8973
+ italic: z21.boolean().nullable(),
8974
+ colorToken: z21.string().min(1).nullable().optional()
9051
8975
  // Palette token name for heading color
9052
8976
  });
9053
- var proseLinkUnderlineStyleSchema = z22.enum(["solid", "dotted", "dashed"]);
9054
- var proseLinkUnderlineThicknessSchema = z22.enum(["auto", "fromFont", "thin", "medium", "thick"]);
9055
- var proseLinkUnderlineOffsetSchema = z22.enum(["auto", "tight", "normal", "loose"]);
9056
- var proseLinkStyleSchema = z22.object({
9057
- colorToken: z22.string().min(1).optional(),
9058
- hoverColorToken: z22.string().min(1).optional(),
9059
- underline: z22.boolean().optional(),
9060
- decorationColorToken: z22.string().min(1).optional(),
9061
- hoverDecorationColorToken: z22.string().min(1).optional(),
8977
+ var proseLinkUnderlineStyleSchema = z21.enum(["solid", "dotted", "dashed"]);
8978
+ var proseLinkUnderlineThicknessSchema = z21.enum(["auto", "fromFont", "thin", "medium", "thick"]);
8979
+ var proseLinkUnderlineOffsetSchema = z21.enum(["auto", "tight", "normal", "loose"]);
8980
+ var proseLinkStyleSchema = z21.object({
8981
+ colorToken: z21.string().min(1).optional(),
8982
+ hoverColorToken: z21.string().min(1).optional(),
8983
+ underline: z21.boolean().optional(),
8984
+ decorationColorToken: z21.string().min(1).optional(),
8985
+ hoverDecorationColorToken: z21.string().min(1).optional(),
9062
8986
  underlineStyle: proseLinkUnderlineStyleSchema.optional(),
9063
8987
  underlineThickness: proseLinkUnderlineThicknessSchema.optional(),
9064
8988
  underlineOffset: proseLinkUnderlineOffsetSchema.optional()
9065
8989
  });
9066
- var semanticSpacingSchema = z22.enum([
8990
+ var semanticSpacingSchema = z21.enum([
9067
8991
  "none",
9068
8992
  "compact",
9069
8993
  "cozy",
@@ -9071,62 +8995,62 @@ var semanticSpacingSchema = z22.enum([
9071
8995
  "comfortable",
9072
8996
  "spacious"
9073
8997
  ]);
9074
- var boxRoundedSchema = z22.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
9075
- var boxBackgroundOverlaySchema = z22.object({
9076
- type: z22.enum(["none", "color", "gradient"]).nullable().optional(),
9077
- color: z22.string().nullable().optional(),
9078
- gradient: z22.string().nullable().optional(),
9079
- opacity: z22.number().min(0).max(1).nullable().optional()
9080
- });
9081
- var boxBackgroundSchema = z22.object({
9082
- type: z22.enum(["color", "gradient", "image"]).optional(),
9083
- color: z22.string().nullable().optional(),
9084
- gradient: z22.string().nullable().optional(),
8998
+ var boxRoundedSchema = z21.enum(["none", "sm", "md", "lg", "xl", "2xl", "full"]);
8999
+ var boxBackgroundOverlaySchema = z21.object({
9000
+ type: z21.enum(["none", "color", "gradient"]).nullable().optional(),
9001
+ color: z21.string().nullable().optional(),
9002
+ gradient: z21.string().nullable().optional(),
9003
+ opacity: z21.number().min(0).max(1).nullable().optional()
9004
+ });
9005
+ var boxBackgroundSchema = z21.object({
9006
+ type: z21.enum(["color", "gradient", "image"]).optional(),
9007
+ color: z21.string().nullable().optional(),
9008
+ gradient: z21.string().nullable().optional(),
9085
9009
  image: mediaSchema.nullable().optional(),
9086
- objectFit: z22.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9087
- scale: z22.string().nullable().optional(),
9088
- position: z22.string().nullable().optional(),
9089
- opacity: z22.number().min(0).max(1).nullable().optional(),
9010
+ objectFit: z21.enum(["fill", "fit", "original", "custom"]).nullable().optional(),
9011
+ scale: z21.string().nullable().optional(),
9012
+ position: z21.string().nullable().optional(),
9013
+ opacity: z21.number().min(0).max(1).nullable().optional(),
9090
9014
  overlay: boxBackgroundOverlaySchema.nullable().optional(),
9091
- textColor: z22.string().nullable().optional(),
9092
- headingColor: z22.string().nullable().optional()
9015
+ textColor: z21.string().nullable().optional(),
9016
+ headingColor: z21.string().nullable().optional()
9093
9017
  });
9094
- var sectionStylesOverrideSchema = z22.object({
9018
+ var sectionStylesOverrideSchema = z21.object({
9095
9019
  background: boxBackgroundSchema.nullable().optional(),
9096
9020
  spacing: semanticSpacingSchema.nullable().optional(),
9097
- minHeight: z22.enum(["none", "hero", "immersive"]).nullable().optional()
9021
+ minHeight: z21.enum(["none", "hero", "immersive"]).nullable().optional()
9098
9022
  });
9099
- var containerStylesOverrideSchema = z22.object({
9023
+ var containerStylesOverrideSchema = z21.object({
9100
9024
  background: boxBackgroundSchema.nullable().optional(),
9101
9025
  spacing: semanticSpacingSchema.nullable().optional(),
9102
- raised: z22.boolean().nullable().optional(),
9026
+ raised: z21.boolean().nullable().optional(),
9103
9027
  rounded: boxRoundedSchema.nullable().optional(),
9104
- fullWidth: z22.boolean().nullable().optional()
9028
+ fullWidth: z21.boolean().nullable().optional()
9105
9029
  });
9106
- var cardBorderOverrideSchema = z22.object({
9107
- enabled: z22.boolean().nullable().optional(),
9108
- width: z22.enum(["none", "1", "2", "3"]).nullable().optional(),
9109
- colorToken: z22.string().nullable().optional()
9030
+ var cardBorderOverrideSchema = z21.object({
9031
+ enabled: z21.boolean().nullable().optional(),
9032
+ width: z21.enum(["none", "1", "2", "3"]).nullable().optional(),
9033
+ colorToken: z21.string().nullable().optional()
9110
9034
  });
9111
- var cardStylesOverrideSchema = z22.object({
9035
+ var cardStylesOverrideSchema = z21.object({
9112
9036
  background: boxBackgroundSchema.nullable().optional(),
9113
9037
  border: cardBorderOverrideSchema.nullable().optional(),
9114
9038
  spacing: semanticSpacingSchema.nullable().optional(),
9115
- raised: z22.boolean().nullable().optional(),
9039
+ raised: z21.boolean().nullable().optional(),
9116
9040
  rounded: boxRoundedSchema.nullable().optional()
9117
9041
  });
9118
- var blockStyleOverridesSchema = z22.object({
9042
+ var blockStyleOverridesSchema = z21.object({
9119
9043
  sectionStyles: sectionStylesOverrideSchema.nullable().optional(),
9120
9044
  containerStyles: containerStylesOverrideSchema.nullable().optional(),
9121
9045
  cardStyles: cardStylesOverrideSchema.nullable().optional()
9122
9046
  });
9123
- var blockThemeOverrideSchema = z22.object({
9124
- typography: z22.object({
9047
+ var blockThemeOverrideSchema = z21.object({
9048
+ typography: z21.object({
9125
9049
  proseLinkStyle: proseLinkStyleSchema.optional()
9126
9050
  }).optional(),
9127
9051
  styles: blockStyleOverridesSchema.optional()
9128
9052
  });
9129
- var typographyScaleSchema = z22.enum([
9053
+ var typographyScaleSchema = z21.enum([
9130
9054
  // New intuitive names
9131
9055
  "compact",
9132
9056
  // ratio 1.2 (was minorThird)
@@ -9139,9 +9063,9 @@ var typographyScaleSchema = z22.enum([
9139
9063
  "majorThird",
9140
9064
  "perfectFourth"
9141
9065
  ]);
9142
- var typographySchema = z22.object({
9066
+ var typographySchema = z21.object({
9143
9067
  body: bodyTypographyStyleSchema,
9144
- headings: z22.object({
9068
+ headings: z21.object({
9145
9069
  default: headingTypographyStyleSchema,
9146
9070
  h1: headingTypographyOverridesSchema,
9147
9071
  h2: headingTypographyOverridesSchema,
@@ -9154,41 +9078,41 @@ var typographySchema = z22.object({
9154
9078
  scale: typographyScaleSchema,
9155
9079
  proseLinkStyle: proseLinkStyleSchema.optional()
9156
9080
  });
9157
- var spaceSchema = z22.enum(["comfortable", "standard", "dense"]);
9158
- var corners = z22.enum(["square", "soft", "rounded", "pill"]);
9159
- var shadow = z22.object({
9160
- elevation: z22.enum(["none", "low", "medium", "high"]),
9161
- softness: z22.enum(["crisp", "soft", "hard"]).nullable(),
9162
- position: z22.enum(["bottom", "bottom-right"]).default("bottom")
9081
+ var spaceSchema = z21.enum(["comfortable", "standard", "dense"]);
9082
+ var corners = z21.enum(["square", "soft", "rounded", "pill"]);
9083
+ var shadow = z21.object({
9084
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9085
+ softness: z21.enum(["crisp", "soft", "hard"]).nullable(),
9086
+ position: z21.enum(["bottom", "bottom-right"]).default("bottom")
9163
9087
  });
9164
- var border = z22.object({
9165
- width: z22.enum(["none", "hairline", "thin", "thick"]),
9166
- style: z22.enum(["solid", "dashed"])
9088
+ var border = z21.object({
9089
+ width: z21.enum(["none", "hairline", "thin", "thick"]),
9090
+ style: z21.enum(["solid", "dashed"])
9167
9091
  });
9168
- var motion = z22.object({
9169
- level: z22.enum(["off", "low", "medium", "high"]),
9170
- easing: z22.enum(["standard", "snappy", "gentle"]).nullable()
9092
+ var motion = z21.object({
9093
+ level: z21.enum(["off", "low", "medium", "high"]),
9094
+ easing: z21.enum(["standard", "snappy", "gentle"]).nullable()
9171
9095
  });
9172
- var buttonStyle = z22.object({
9096
+ var buttonStyle = z21.object({
9173
9097
  shape: corners
9174
9098
  // Used for --radius-control CSS variable
9175
9099
  });
9176
- var cardStyle = z22.object({
9177
- elevation: z22.enum(["none", "low", "medium", "high"]),
9178
- border: z22.enum(["none", "subtle", "defined"]),
9100
+ var cardStyle = z21.object({
9101
+ elevation: z21.enum(["none", "low", "medium", "high"]),
9102
+ border: z21.enum(["none", "subtle", "defined"]),
9179
9103
  shape: corners,
9180
- headerStyle: z22.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9181
- mediaTreatment: z22.enum(["square", "rounded", "bleed"]).nullable()
9104
+ headerStyle: z21.enum(["plain", "accentBar", "subtleBg"]).nullable(),
9105
+ mediaTreatment: z21.enum(["square", "rounded", "bleed"]).nullable()
9182
9106
  });
9183
- var inputStyle = z22.object({
9107
+ var inputStyle = z21.object({
9184
9108
  shape: corners,
9185
- border: z22.enum(["subtle", "defined", "underline"]),
9186
- focus: z22.enum(["glow", "ring", "underline"]),
9187
- label: z22.enum(["inside", "above"])
9109
+ border: z21.enum(["subtle", "defined", "underline"]),
9110
+ focus: z21.enum(["glow", "ring", "underline"]),
9111
+ label: z21.enum(["inside", "above"])
9188
9112
  });
9189
- var headerVariant = z22.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9190
- var headerPositioning = z22.enum(["static", "sticky", "fixed"]);
9191
- var headerNavStyle = z22.enum([
9113
+ var headerVariant = z21.enum(["classic", "centered", "transparent", "floating", "editorial"]);
9114
+ var headerPositioning = z21.enum(["static", "sticky", "fixed"]);
9115
+ var headerNavStyle = z21.enum([
9192
9116
  "minimal",
9193
9117
  "underline",
9194
9118
  "underline-grow",
@@ -9197,82 +9121,82 @@ var headerNavStyle = z22.enum([
9197
9121
  "frosted",
9198
9122
  "solid"
9199
9123
  ]);
9200
- var navFontWeight = z22.enum(["regular", "medium", "semibold", "bold"]);
9201
- var headerMaxWidth = z22.enum(["container", "full"]);
9202
- var headerContainerSchema = z22.object({
9203
- rounded: z22.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9204
- border: z22.boolean().default(true),
9205
- shadow: z22.boolean().default(true),
9206
- padding: z22.enum(["sm", "md", "lg"]).default("md"),
9207
- tint: z22.string().nullable().optional(),
9208
- opacity: z22.number().min(0).max(1).default(0.12)
9124
+ var navFontWeight = z21.enum(["regular", "medium", "semibold", "bold"]);
9125
+ var headerMaxWidth = z21.enum(["container", "full"]);
9126
+ var headerContainerSchema = z21.object({
9127
+ rounded: z21.enum(["none", "sm", "md", "lg", "xl", "2xl"]).default("xl"),
9128
+ border: z21.boolean().default(true),
9129
+ shadow: z21.boolean().default(true),
9130
+ padding: z21.enum(["sm", "md", "lg"]).default("md"),
9131
+ tint: z21.string().nullable().optional(),
9132
+ opacity: z21.number().min(0).max(1).default(0.12)
9209
9133
  }).optional();
9210
9134
  var headerBorderSchema = componentBorderSchema.extend({
9211
- position: z22.enum(["bottom", "top", "both", "none"]).default("bottom")
9135
+ position: z21.enum(["bottom", "top", "both", "none"]).default("bottom")
9212
9136
  }).optional();
9213
- var logoStyleSchema = z22.object({
9214
- fontFamily: z22.enum(["heading", "body"]).default("heading"),
9215
- letterSpacing: z22.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9216
- gradient: z22.boolean().default(false)
9137
+ var logoStyleSchema = z21.object({
9138
+ fontFamily: z21.enum(["heading", "body"]).default("heading"),
9139
+ letterSpacing: z21.enum(["normal", "wide", "wider", "widest"]).default("normal"),
9140
+ gradient: z21.boolean().default(false)
9217
9141
  }).optional();
9218
- var headerLogoTextSchema = z22.object({
9219
- mobileWrapLines: z22.union([z22.literal(1), z22.literal(2)]).optional(),
9220
- mobileMaxWidth: z22.enum(["xs", "sm", "md"]).optional(),
9221
- hideOnShrink: z22.boolean().optional()
9142
+ var headerLogoTextSchema = z21.object({
9143
+ mobileWrapLines: z21.union([z21.literal(1), z21.literal(2)]).optional(),
9144
+ mobileMaxWidth: z21.enum(["xs", "sm", "md"]).optional(),
9145
+ hideOnShrink: z21.boolean().optional()
9222
9146
  }).optional();
9223
- var navEffectsSchema = z22.object({
9224
- underlineGradient: z22.boolean().default(false),
9225
- glow: z22.boolean().default(false),
9226
- glowColor: z22.string().optional(),
9227
- neumorphic: z22.boolean().default(false)
9147
+ var navEffectsSchema = z21.object({
9148
+ underlineGradient: z21.boolean().default(false),
9149
+ glow: z21.boolean().default(false),
9150
+ glowColor: z21.string().optional(),
9151
+ neumorphic: z21.boolean().default(false)
9228
9152
  }).optional();
9229
- var dropdownStyleSchema = z22.object({
9153
+ var dropdownStyleSchema = z21.object({
9230
9154
  // Container styling
9231
- background: z22.string().default("surface"),
9155
+ background: z21.string().default("surface"),
9232
9156
  // color token
9233
- textColor: z22.string().default("text"),
9157
+ textColor: z21.string().default("text"),
9234
9158
  // color token
9235
- borderColor: z22.string().nullable().default("border"),
9159
+ borderColor: z21.string().nullable().default("border"),
9236
9160
  // null = no border
9237
- shadow: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9238
- borderRadius: z22.enum(["none", "sm", "md", "lg"]).default("md"),
9161
+ shadow: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9162
+ borderRadius: z21.enum(["none", "sm", "md", "lg"]).default("md"),
9239
9163
  // Link hover states (explicit control)
9240
- hoverBackground: z22.string().nullable().optional(),
9164
+ hoverBackground: z21.string().nullable().optional(),
9241
9165
  // color token, null = transparent
9242
- hoverTextColor: z22.string().nullable().optional(),
9166
+ hoverTextColor: z21.string().nullable().optional(),
9243
9167
  // color token, null = inherit
9244
9168
  // Typography
9245
- textTransform: z22.enum(["none", "uppercase", "capitalize"]).default("none"),
9246
- letterSpacing: z22.enum(["normal", "wide", "wider"]).default("normal"),
9247
- fontWeight: z22.enum(["regular", "medium", "semibold", "bold"]).optional(),
9169
+ textTransform: z21.enum(["none", "uppercase", "capitalize"]).default("none"),
9170
+ letterSpacing: z21.enum(["normal", "wide", "wider"]).default("normal"),
9171
+ fontWeight: z21.enum(["regular", "medium", "semibold", "bold"]).optional(),
9248
9172
  // optional = inherit from navWeight
9249
- textSize: z22.enum(["xs", "sm", "base", "lg"]).optional()
9173
+ textSize: z21.enum(["xs", "sm", "base", "lg"]).optional()
9250
9174
  // optional = no override (browser default)
9251
9175
  }).optional();
9252
- var headerCtaGapSchema = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9253
- var navContainerSchema = z22.object({
9254
- type: z22.enum(["none", "pill", "glass"]).default("none"),
9255
- tint: z22.string().nullable().optional(),
9256
- opacity: z22.number().min(0).max(1).default(0.15)
9176
+ var headerCtaGapSchema = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9177
+ var navContainerSchema = z21.object({
9178
+ type: z21.enum(["none", "pill", "glass"]).default("none"),
9179
+ tint: z21.string().nullable().optional(),
9180
+ opacity: z21.number().min(0).max(1).default(0.15)
9257
9181
  }).default({ type: "none", tint: null, opacity: 0.15 });
9258
- var headerBackgroundSchema = z22.object({
9259
- type: z22.enum(["color", "gradient", "image"]),
9260
- color: z22.string().nullable().optional(),
9182
+ var headerBackgroundSchema = z21.object({
9183
+ type: z21.enum(["color", "gradient", "image"]),
9184
+ color: z21.string().nullable().optional(),
9261
9185
  gradient: gradientConfigSchema.nullable().optional(),
9262
9186
  image: mediaSchema.nullable().optional(),
9263
- textColor: z22.string().nullable().optional()
9187
+ textColor: z21.string().nullable().optional()
9264
9188
  });
9265
- var headerSchema = z22.object({
9189
+ var headerSchema = z21.object({
9266
9190
  variant: headerVariant,
9267
9191
  positioning: headerPositioning,
9268
- shrinkOnScroll: z22.boolean(),
9192
+ shrinkOnScroll: z21.boolean(),
9269
9193
  maxWidth: headerMaxWidth,
9270
9194
  logoOverride: mediaSchema.nullable().optional(),
9271
9195
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9272
- textColor: z22.string().nullable().optional(),
9196
+ textColor: z21.string().nullable().optional(),
9273
9197
  // Site title and general header text
9274
9198
  navStyle: headerNavStyle,
9275
- navColor: z22.string().nullable().optional(),
9199
+ navColor: z21.string().nullable().optional(),
9276
9200
  // Nav links (inherits textColor if not set)
9277
9201
  navWeight: navFontWeight.default("medium"),
9278
9202
  // New fields for header system enhancement
@@ -9291,50 +9215,50 @@ var headerSchema = z22.object({
9291
9215
  // Dropdown menu styling (nav dropdowns and mobile drawer)
9292
9216
  dropdownStyle: dropdownStyleSchema
9293
9217
  });
9294
- var footerVariant = z22.enum(["simple", "columns", "split"]);
9295
- var footerMaxWidth = z22.enum(["container", "full"]);
9296
- var footerMode = z22.enum(["default", "blocks", "default+blocks", "none"]);
9297
- var footerNavLayoutMode = z22.enum(["stack", "inline", "inline-wrap"]);
9298
- var footerNavLayoutAlign = z22.enum(["start", "center", "end", "space-between"]);
9299
- var footerSpacing = z22.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9300
- var footerLogoPlacement = z22.enum(["left", "right", "above", "below"]);
9301
- var footerLogoSize = z22.enum(["sm", "md", "lg", "xl"]);
9302
- var footerLogoMaxHeight = z22.enum(["sm", "md", "lg", "xl"]);
9303
- var footerBottomTextLinkStyleSchema = z22.object({
9304
- colorToken: z22.string().optional(),
9305
- hoverColorToken: z22.string().nullable().optional(),
9306
- decorationColorToken: z22.string().nullable().optional(),
9307
- underline: z22.boolean().optional()
9308
- });
9309
- var footerBottomBarSchema = z22.object({
9310
- enabled: z22.boolean().optional(),
9311
- fullBleed: z22.boolean().optional(),
9218
+ var footerVariant = z21.enum(["simple", "columns", "split"]);
9219
+ var footerMaxWidth = z21.enum(["container", "full"]);
9220
+ var footerMode = z21.enum(["default", "blocks", "default+blocks", "none"]);
9221
+ var footerNavLayoutMode = z21.enum(["stack", "inline", "inline-wrap"]);
9222
+ var footerNavLayoutAlign = z21.enum(["start", "center", "end", "space-between"]);
9223
+ var footerSpacing = z21.enum(["none", "tight", "compact", "default", "relaxed", "spacious"]);
9224
+ var footerLogoPlacement = z21.enum(["left", "right", "above", "below"]);
9225
+ var footerLogoSize = z21.enum(["sm", "md", "lg", "xl"]);
9226
+ var footerLogoMaxHeight = z21.enum(["sm", "md", "lg", "xl"]);
9227
+ var footerBottomTextLinkStyleSchema = z21.object({
9228
+ colorToken: z21.string().optional(),
9229
+ hoverColorToken: z21.string().nullable().optional(),
9230
+ decorationColorToken: z21.string().nullable().optional(),
9231
+ underline: z21.boolean().optional()
9232
+ });
9233
+ var footerBottomBarSchema = z21.object({
9234
+ enabled: z21.boolean().optional(),
9235
+ fullBleed: z21.boolean().optional(),
9312
9236
  background: headerBackgroundSchema.optional(),
9313
- textColor: z22.string().nullable().optional(),
9314
- textAlign: z22.enum(["left", "center", "right"]).optional(),
9237
+ textColor: z21.string().nullable().optional(),
9238
+ textAlign: z21.enum(["left", "center", "right"]).optional(),
9315
9239
  paddingY: footerSpacing.optional(),
9316
9240
  paddingX: footerSpacing.optional(),
9317
- borderTop: z22.object({
9318
- colorToken: z22.string().nullable().optional(),
9319
- width: z22.enum(["none", "thin", "medium", "thick"]).optional()
9241
+ borderTop: z21.object({
9242
+ colorToken: z21.string().nullable().optional(),
9243
+ width: z21.enum(["none", "thin", "medium", "thick"]).optional()
9320
9244
  }).optional()
9321
9245
  });
9322
- var footerNavLayoutSchema = z22.object({
9246
+ var footerNavLayoutSchema = z21.object({
9323
9247
  layout: footerNavLayoutMode.optional(),
9324
9248
  align: footerNavLayoutAlign.optional(),
9325
9249
  gapX: footerSpacing.optional(),
9326
9250
  gapY: footerSpacing.optional(),
9327
- columns: z22.number().int().min(1).max(6).optional()
9251
+ columns: z21.number().int().min(1).max(6).optional()
9328
9252
  });
9329
- var footerLogoSchema = z22.object({
9330
- showLogo: z22.boolean().default(true),
9331
- showLogoText: z22.boolean().optional(),
9253
+ var footerLogoSchema = z21.object({
9254
+ showLogo: z21.boolean().default(true),
9255
+ showLogoText: z21.boolean().optional(),
9332
9256
  placement: footerLogoPlacement.optional(),
9333
9257
  size: footerLogoSize.optional(),
9334
9258
  maxHeight: footerLogoMaxHeight.optional(),
9335
- align: z22.enum(["start", "center", "end"]).optional()
9259
+ align: z21.enum(["start", "center", "end"]).optional()
9336
9260
  });
9337
- var footerSchema = z22.object({
9261
+ var footerSchema = z21.object({
9338
9262
  /**
9339
9263
  * SDK-only footer rendering mode.
9340
9264
  *
@@ -9343,11 +9267,11 @@ var footerSchema = z22.object({
9343
9267
  mode: footerMode.optional(),
9344
9268
  variant: footerVariant,
9345
9269
  maxWidth: footerMaxWidth,
9346
- showLogoText: z22.boolean().optional(),
9270
+ showLogoText: z21.boolean().optional(),
9347
9271
  background: headerBackgroundSchema.default({ type: "color", color: "surface" }),
9348
9272
  // Footer nav styling (independent from header)
9349
9273
  navStyle: headerNavStyle.default("minimal"),
9350
- navColor: z22.string().nullable().optional(),
9274
+ navColor: z21.string().nullable().optional(),
9351
9275
  navWeight: navFontWeight.default("medium"),
9352
9276
  // Full nav link customization (overrides navStyle if set)
9353
9277
  navLinkStyle: navLinkStyleSchema.optional(),
@@ -9358,15 +9282,15 @@ var footerSchema = z22.object({
9358
9282
  logo: footerLogoSchema.optional(),
9359
9283
  bottomBar: footerBottomBarSchema.optional()
9360
9284
  });
9361
- var containerPaddingPresetSchema = z22.enum(["tight", "compact", "default", "relaxed"]);
9362
- var layoutSchema = z22.object({
9363
- containerPadding: z22.object({
9285
+ var containerPaddingPresetSchema = z21.enum(["tight", "compact", "default", "relaxed"]);
9286
+ var layoutSchema = z21.object({
9287
+ containerPadding: z21.object({
9364
9288
  mobile: containerPaddingPresetSchema.optional(),
9365
9289
  tablet: containerPaddingPresetSchema.optional(),
9366
9290
  desktop: containerPaddingPresetSchema.optional()
9367
9291
  }).optional()
9368
9292
  }).optional();
9369
- var heroTypographySizeSchema = z22.enum([
9293
+ var heroTypographySizeSchema = z21.enum([
9370
9294
  "sm",
9371
9295
  "base",
9372
9296
  "lg",
@@ -9377,14 +9301,14 @@ var heroTypographySizeSchema = z22.enum([
9377
9301
  "5xl",
9378
9302
  "6xl"
9379
9303
  ]);
9380
- var heroTypographyLineHeightSchema = z22.enum(["tight", "snug", "normal", "relaxed"]);
9381
- var heroResponsiveTypographySchema = z22.object({
9304
+ var heroTypographyLineHeightSchema = z21.enum(["tight", "snug", "normal", "relaxed"]);
9305
+ var heroResponsiveTypographySchema = z21.object({
9382
9306
  headlineSize: heroTypographySizeSchema.optional(),
9383
9307
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9384
9308
  subheadlineSize: heroTypographySizeSchema.optional(),
9385
9309
  subheadlineLineHeight: heroTypographyLineHeightSchema.optional()
9386
9310
  });
9387
- var heroTypographySchema = z22.object({
9311
+ var heroTypographySchema = z21.object({
9388
9312
  headlineSize: heroTypographySizeSchema.optional(),
9389
9313
  headlineLineHeight: heroTypographyLineHeightSchema.optional(),
9390
9314
  subheadlineSize: heroTypographySizeSchema.optional(),
@@ -9393,24 +9317,24 @@ var heroTypographySchema = z22.object({
9393
9317
  microHeadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9394
9318
  microSubheadlineSize: heroTypographySizeSchema.optional(),
9395
9319
  microSubheadlineLineHeight: heroTypographyLineHeightSchema.optional(),
9396
- responsive: z22.object({
9320
+ responsive: z21.object({
9397
9321
  tablet: heroResponsiveTypographySchema.optional(),
9398
9322
  mobile: heroResponsiveTypographySchema.optional()
9399
9323
  }).optional()
9400
9324
  });
9401
- var heroSchema = z22.object({
9325
+ var heroSchema = z21.object({
9402
9326
  typography: heroTypographySchema.optional()
9403
9327
  }).optional();
9404
- var gradientsSchema = z22.object({
9405
- button: z22.string().min(1).nullable().optional(),
9406
- hero: z22.string().min(1).nullable().optional(),
9407
- background: z22.string().min(1).nullable().optional()
9408
- });
9409
- var themeSchema = z22.object({
9410
- name: z22.string().min(1).max(30),
9411
- description: z22.string().min(1).max(400),
9412
- rationale: z22.string().min(1).max(400),
9413
- siteStyleId: z22.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9328
+ var gradientsSchema = z21.object({
9329
+ button: z21.string().min(1).nullable().optional(),
9330
+ hero: z21.string().min(1).nullable().optional(),
9331
+ background: z21.string().min(1).nullable().optional()
9332
+ });
9333
+ var themeSchema = z21.object({
9334
+ name: z21.string().min(1).max(30),
9335
+ description: z21.string().min(1).max(400),
9336
+ rationale: z21.string().min(1).max(400),
9337
+ siteStyleId: z21.string().min(1).transform((value) => asSiteStyleId(value)).optional(),
9414
9338
  axes: axesSchema,
9415
9339
  palette: paletteSchema,
9416
9340
  typography: typographySchema,
@@ -9437,16 +9361,16 @@ var themeSchema = z22.object({
9437
9361
  // Block-specific customization (Tier 3)
9438
9362
  // blockCustomVars: Per-block CSS variable overrides as bare values
9439
9363
  // Example: { "event-registration": { "--step-color": "#6d28d9" } }
9440
- blockCustomVars: z22.record(
9441
- z22.string(),
9364
+ blockCustomVars: z21.record(
9365
+ z21.string(),
9442
9366
  // block kind (matches data-block attribute)
9443
- z22.record(z22.string(), z22.string())
9367
+ z21.record(z21.string(), z21.string())
9444
9368
  // { '--var-name': 'value' }
9445
9369
  ).optional(),
9446
9370
  // Structured block-kind theme overrides (v1: typography prose-link style only)
9447
9371
  // Keyed by block kind (usually data-block value like "hero"; "block.hero" also accepted)
9448
- blockOverrides: z22.record(
9449
- z22.string(),
9372
+ blockOverrides: z21.record(
9373
+ z21.string(),
9450
9374
  blockThemeOverrideSchema
9451
9375
  ).optional(),
9452
9376
  // Structured custom CSS rules
@@ -9482,11 +9406,11 @@ var themeSchema = z22.object({
9482
9406
  * }
9483
9407
  * ```
9484
9408
  */
9485
- styleGroups: z22.record(z22.string(), z22.array(z22.string())).optional()
9409
+ styleGroups: z21.record(z21.string(), z21.array(z21.string())).optional()
9486
9410
  });
9487
- var themesTurnSchema = z22.object({
9488
- message: z22.string().min(1),
9489
- themes: z22.array(themeSchema).length(3)
9411
+ var themesTurnSchema = z21.object({
9412
+ message: z21.string().min(1),
9413
+ themes: z21.array(themeSchema).length(3)
9490
9414
  });
9491
9415
 
9492
9416
  // ../theme-core/src/palette/variants/types.ts
@@ -9496,7 +9420,7 @@ function asPaletteVariantId(value) {
9496
9420
  }
9497
9421
  return value;
9498
9422
  }
9499
- var paletteVariantIdSchema = z23.string().min(1).transform((value) => asPaletteVariantId(value));
9423
+ var paletteVariantIdSchema = z22.string().min(1).transform((value) => asPaletteVariantId(value));
9500
9424
  var PALETTE_TOKEN_NAMES = [
9501
9425
  "primary",
9502
9426
  "primaryForeground",
@@ -9512,19 +9436,19 @@ var PALETTE_TOKEN_NAMES = [
9512
9436
  "text",
9513
9437
  "border"
9514
9438
  ];
9515
- var paletteTokenNameSchema = z23.enum(PALETTE_TOKEN_NAMES);
9439
+ var paletteTokenNameSchema = z22.enum(PALETTE_TOKEN_NAMES);
9516
9440
  var HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
9517
- var hexColorSchema = z23.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9441
+ var hexColorSchema = z22.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
9518
9442
  var variantPaletteColorSchema = paletteColorSchema.extend({
9519
9443
  name: paletteTokenNameSchema
9520
9444
  });
9521
- var paletteVariantSchema = z23.object({
9445
+ var paletteVariantSchema = z22.object({
9522
9446
  id: paletteVariantIdSchema,
9523
- name: z23.string().min(1),
9524
- description: z23.string().min(1),
9447
+ name: z22.string().min(1),
9448
+ description: z22.string().min(1),
9525
9449
  tags: styleTagsSchema,
9526
- mode: z23.enum(["light", "dark"]),
9527
- colors: z23.array(variantPaletteColorSchema).min(1)
9450
+ mode: z22.enum(["light", "dark"]),
9451
+ colors: z22.array(variantPaletteColorSchema).min(1)
9528
9452
  });
9529
9453
  function definePaletteVariant(input) {
9530
9454
  return {
@@ -9536,7 +9460,7 @@ function definePaletteVariant(input) {
9536
9460
  colors: input.colors
9537
9461
  };
9538
9462
  }
9539
- var paletteOverridesSchema = z23.object({
9463
+ var paletteOverridesSchema = z22.object({
9540
9464
  primary: hexColorSchema.optional(),
9541
9465
  primaryForeground: hexColorSchema.optional(),
9542
9466
  secondary: hexColorSchema.optional(),
@@ -10213,7 +10137,7 @@ var curatedSiteStylesById = new Map(
10213
10137
  );
10214
10138
 
10215
10139
  // ../theme-core/src/site-styles/designState.ts
10216
- import { z as z24 } from "zod";
10140
+ import { z as z23 } from "zod";
10217
10141
 
10218
10142
  // ../theme-core/src/site-styles/rawStyleFields.ts
10219
10143
  var themeV2RuntimeStyleFieldNames = [
@@ -10239,13 +10163,13 @@ var themeV2NormalEditorRawStyleFieldNameSet = new Set(
10239
10163
 
10240
10164
  // ../theme-core/src/site-styles/designState.ts
10241
10165
  var themeV2DesignStateSchemaVersion = 1;
10242
- var designResolutionPolicySchema = z24.enum(["generated", "user", "admin", "sdk"]);
10243
- var runtimeStyleFieldNameSchema = z24.enum(themeV2RuntimeStyleFieldNames);
10244
- var nonEmptyRuntimeStyleFieldNamesSchema = z24.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10166
+ var designResolutionPolicySchema = z23.enum(["generated", "user", "admin", "sdk"]);
10167
+ var runtimeStyleFieldNameSchema = z23.enum(themeV2RuntimeStyleFieldNames);
10168
+ var nonEmptyRuntimeStyleFieldNamesSchema = z23.array(runtimeStyleFieldNameSchema).min(1).transform((fields3) => [
10245
10169
  fields3[0],
10246
10170
  ...fields3.slice(1)
10247
10171
  ]);
10248
- var heroLegibilityStrategySchema = z24.enum([
10172
+ var heroLegibilityStrategySchema = z23.enum([
10249
10173
  "none",
10250
10174
  "scrim-gradient",
10251
10175
  "solid-panel"
@@ -10267,66 +10191,66 @@ var userFlushTreatments = uniqueNonEmpty(
10267
10191
  var userFlushBleeds = uniqueNonEmpty(
10268
10192
  userDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10269
10193
  );
10270
- var contentFrameIntentSchema = z24.discriminatedUnion("kind", [
10271
- z24.object({ kind: z24.literal("plain") }).strict(),
10272
- z24.object({
10273
- kind: z24.literal("panel"),
10274
- treatment: z24.enum(userPanelTreatments)
10194
+ var contentFrameIntentSchema = z23.discriminatedUnion("kind", [
10195
+ z23.object({ kind: z23.literal("plain") }).strict(),
10196
+ z23.object({
10197
+ kind: z23.literal("panel"),
10198
+ treatment: z23.enum(userPanelTreatments)
10275
10199
  }).strict(),
10276
- z24.object({
10277
- kind: z24.literal("flush-panel"),
10278
- treatment: z24.enum(userFlushTreatments),
10279
- bleed: z24.enum(userFlushBleeds)
10200
+ z23.object({
10201
+ kind: z23.literal("flush-panel"),
10202
+ treatment: z23.enum(userFlushTreatments),
10203
+ bleed: z23.enum(userFlushBleeds)
10280
10204
  }).strict()
10281
10205
  ]);
10282
- var blockDesignPlanSchema = z24.object({
10283
- blockId: z24.string().min(1).transform(asDesignBlockId),
10284
- blockKind: z24.string().min(1),
10285
- purpose: z24.string().min(1),
10286
- sectionSurface: z24.enum(userDesignOptionCatalog.sectionSurfaces),
10206
+ var blockDesignPlanSchema = z23.object({
10207
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10208
+ blockKind: z23.string().min(1),
10209
+ purpose: z23.string().min(1),
10210
+ sectionSurface: z23.enum(userDesignOptionCatalog.sectionSurfaces),
10287
10211
  contentFrame: contentFrameIntentSchema,
10288
- itemSurface: z24.enum(userDesignOptionCatalog.itemSurfaces),
10289
- transitionAfter: z24.enum(userDesignOptionCatalog.transitions),
10290
- emphasis: z24.enum(userDesignOptionCatalog.emphases),
10212
+ itemSurface: z23.enum(userDesignOptionCatalog.itemSurfaces),
10213
+ transitionAfter: z23.enum(userDesignOptionCatalog.transitions),
10214
+ emphasis: z23.enum(userDesignOptionCatalog.emphases),
10291
10215
  heroLegibility: heroLegibilityStrategySchema.optional()
10292
10216
  }).strict();
10293
- var styleAuthoritySchema = z24.discriminatedUnion("kind", [
10294
- z24.object({
10295
- kind: z24.literal("theme-v2"),
10217
+ var styleAuthoritySchema = z23.discriminatedUnion("kind", [
10218
+ z23.object({
10219
+ kind: z23.literal("theme-v2"),
10296
10220
  source: designResolutionPolicySchema,
10297
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10298
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10299
- templateVersion: z24.number().int().nonnegative(),
10300
- resolverVersion: z24.number().int().nonnegative()
10221
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10222
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10223
+ templateVersion: z23.number().int().nonnegative(),
10224
+ resolverVersion: z23.number().int().nonnegative()
10301
10225
  }).strict(),
10302
- z24.object({
10303
- kind: z24.literal("legacy-raw"),
10304
- reason: z24.enum(["pre-theme-v2", "manual-runtime-fields"])
10226
+ z23.object({
10227
+ kind: z23.literal("legacy-raw"),
10228
+ reason: z23.enum(["pre-theme-v2", "manual-runtime-fields"])
10305
10229
  }).strict(),
10306
- z24.object({
10307
- kind: z24.literal("advanced-detached"),
10308
- reason: z24.literal("detached-custom-runtime-fields")
10230
+ z23.object({
10231
+ kind: z23.literal("advanced-detached"),
10232
+ reason: z23.literal("detached-custom-runtime-fields")
10309
10233
  }).strict()
10310
10234
  ]);
10311
- var blockRuntimeStyleAuthoritySchema = z24.object({
10312
- unit: z24.literal("block-runtime-fields"),
10313
- blockId: z24.string().min(1).transform(asDesignBlockId),
10235
+ var blockRuntimeStyleAuthoritySchema = z23.object({
10236
+ unit: z23.literal("block-runtime-fields"),
10237
+ blockId: z23.string().min(1).transform(asDesignBlockId),
10314
10238
  fields: nonEmptyRuntimeStyleFieldNamesSchema,
10315
10239
  authority: styleAuthoritySchema
10316
10240
  }).strict();
10317
- var persistedPageDesignStateV1Schema = z24.object({
10318
- schemaVersion: z24.literal(themeV2DesignStateSchemaVersion),
10319
- siteStyleId: z24.string().min(1).transform(asSiteStyleId),
10320
- templateId: z24.string().min(1).transform(asDesignSystemTemplateId),
10321
- templateVersion: z24.number().int().nonnegative(),
10322
- resolverVersion: z24.number().int().nonnegative(),
10323
- rhythmPresetId: z24.string().min(1),
10324
- blocks: z24.array(blockDesignPlanSchema),
10325
- styleAuthorities: z24.array(blockRuntimeStyleAuthoritySchema)
10241
+ var persistedPageDesignStateV1Schema = z23.object({
10242
+ schemaVersion: z23.literal(themeV2DesignStateSchemaVersion),
10243
+ siteStyleId: z23.string().min(1).transform(asSiteStyleId),
10244
+ templateId: z23.string().min(1).transform(asDesignSystemTemplateId),
10245
+ templateVersion: z23.number().int().nonnegative(),
10246
+ resolverVersion: z23.number().int().nonnegative(),
10247
+ rhythmPresetId: z23.string().min(1),
10248
+ blocks: z23.array(blockDesignPlanSchema),
10249
+ styleAuthorities: z23.array(blockRuntimeStyleAuthoritySchema)
10326
10250
  }).strict();
10327
10251
 
10328
10252
  // ../theme-core/src/site-styles/generatedSchemas.ts
10329
- import { z as z25 } from "zod";
10253
+ import { z as z24 } from "zod";
10330
10254
  function uniqueNonEmpty2(values) {
10331
10255
  const uniqueValues = [...new Set(values)];
10332
10256
  const firstValue = uniqueValues[0];
@@ -10344,105 +10268,105 @@ var generatedFlushTreatments = uniqueNonEmpty2(
10344
10268
  var generatedFlushBleeds = uniqueNonEmpty2(
10345
10269
  generatedDesignOptionCatalog.contentFrames.filter((frame) => frame.kind === "flush-panel").map((frame) => frame.bleed)
10346
10270
  );
10347
- var generatedPanelFrameSchema = z25.object({
10348
- kind: z25.literal("panel"),
10349
- treatment: z25.enum(generatedPanelTreatments)
10271
+ var generatedPanelFrameSchema = z24.object({
10272
+ kind: z24.literal("panel"),
10273
+ treatment: z24.enum(generatedPanelTreatments)
10350
10274
  }).strict();
10351
- var generatedFlushPanelFrameSchema = z25.object({
10352
- kind: z25.literal("flush-panel"),
10353
- treatment: z25.enum(generatedFlushTreatments),
10354
- bleed: z25.enum(generatedFlushBleeds)
10275
+ var generatedFlushPanelFrameSchema = z24.object({
10276
+ kind: z24.literal("flush-panel"),
10277
+ treatment: z24.enum(generatedFlushTreatments),
10278
+ bleed: z24.enum(generatedFlushBleeds)
10355
10279
  }).strict();
10356
- var generatedContentFrameIntentSchema = z25.discriminatedUnion("kind", [
10357
- z25.object({ kind: z25.literal("plain") }).strict(),
10280
+ var generatedContentFrameIntentSchema = z24.discriminatedUnion("kind", [
10281
+ z24.object({ kind: z24.literal("plain") }).strict(),
10358
10282
  generatedPanelFrameSchema,
10359
10283
  generatedFlushPanelFrameSchema
10360
10284
  ]);
10361
- var generatedSiteStyleIdSchema = z25.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10285
+ var generatedSiteStyleIdSchema = z24.enum(curatedSiteStyleIdValues).transform(asSiteStyleId);
10362
10286
  function generatedChoiceSchema(valueSchema) {
10363
- return z25.discriminatedUnion("kind", [
10364
- z25.object({
10365
- source: z25.literal("generated"),
10366
- kind: z25.literal("auto")
10287
+ return z24.discriminatedUnion("kind", [
10288
+ z24.object({
10289
+ source: z24.literal("generated"),
10290
+ kind: z24.literal("auto")
10367
10291
  }).strict(),
10368
- z25.object({
10369
- source: z25.literal("generated"),
10370
- kind: z25.literal("explicit"),
10292
+ z24.object({
10293
+ source: z24.literal("generated"),
10294
+ kind: z24.literal("explicit"),
10371
10295
  value: valueSchema
10372
10296
  }).strict()
10373
10297
  ]);
10374
10298
  }
10375
- var generatedBlockDesignIntentSchema = z25.object({
10299
+ var generatedBlockDesignIntentSchema = z24.object({
10376
10300
  sectionSurface: generatedChoiceSchema(
10377
- z25.enum(generatedDesignOptionCatalog.sectionSurfaces)
10301
+ z24.enum(generatedDesignOptionCatalog.sectionSurfaces)
10378
10302
  ),
10379
10303
  contentFrame: generatedChoiceSchema(generatedContentFrameIntentSchema),
10380
10304
  itemSurface: generatedChoiceSchema(
10381
- z25.enum(generatedDesignOptionCatalog.itemSurfaces)
10305
+ z24.enum(generatedDesignOptionCatalog.itemSurfaces)
10382
10306
  ),
10383
10307
  transitionAfter: generatedChoiceSchema(
10384
- z25.enum(generatedDesignOptionCatalog.transitions)
10308
+ z24.enum(generatedDesignOptionCatalog.transitions)
10385
10309
  ),
10386
10310
  emphasis: generatedChoiceSchema(
10387
- z25.enum(generatedDesignOptionCatalog.emphases)
10311
+ z24.enum(generatedDesignOptionCatalog.emphases)
10388
10312
  )
10389
10313
  }).strict();
10390
- var generatedMediaCompositionIntentSchema = z25.enum([
10314
+ var generatedMediaCompositionIntentSchema = z24.enum([
10391
10315
  "none",
10392
10316
  "supporting",
10393
10317
  "dominant"
10394
10318
  ]);
10395
- var generatedDecorativeCompositionIntentSchema = z25.enum([
10319
+ var generatedDecorativeCompositionIntentSchema = z24.enum([
10396
10320
  "none",
10397
10321
  "supporting"
10398
10322
  ]);
10399
- var generatedHeroLegibilityStrategySchema = z25.enum([
10323
+ var generatedHeroLegibilityStrategySchema = z24.enum([
10400
10324
  "none",
10401
10325
  "scrim-gradient"
10402
10326
  ]);
10403
- var generatedBlockMediaIntentSchema = z25.object({
10327
+ var generatedBlockMediaIntentSchema = z24.object({
10404
10328
  media: generatedMediaCompositionIntentSchema,
10405
10329
  decorative: generatedDecorativeCompositionIntentSchema,
10406
10330
  heroLegibility: generatedChoiceSchema(generatedHeroLegibilityStrategySchema)
10407
10331
  }).strict();
10408
- var generatedBoundaryIntentSchema = z25.object({
10332
+ var generatedBoundaryIntentSchema = z24.object({
10409
10333
  transitionAfter: generatedChoiceSchema(
10410
- z25.enum(generatedDesignOptionCatalog.transitions)
10334
+ z24.enum(generatedDesignOptionCatalog.transitions)
10411
10335
  )
10412
10336
  }).strict();
10413
- var generatedPageDesignBlockIntentSchema = z25.object({
10414
- blockId: z25.string().min(1),
10415
- blockKind: z25.string().min(1),
10416
- purpose: z25.string().min(1),
10337
+ var generatedPageDesignBlockIntentSchema = z24.object({
10338
+ blockId: z24.string().min(1),
10339
+ blockKind: z24.string().min(1),
10340
+ purpose: z24.string().min(1),
10417
10341
  design: generatedBlockDesignIntentSchema,
10418
10342
  mediaIntent: generatedBlockMediaIntentSchema,
10419
10343
  boundaryIntent: generatedBoundaryIntentSchema
10420
10344
  }).strict();
10421
- var generatedPageDesignIntentSchema = z25.object({
10345
+ var generatedPageDesignIntentSchema = z24.object({
10422
10346
  siteStyleId: generatedSiteStyleIdSchema,
10423
- blocks: z25.array(generatedPageDesignBlockIntentSchema)
10347
+ blocks: z24.array(generatedPageDesignBlockIntentSchema)
10424
10348
  }).strict();
10425
10349
 
10426
10350
  // ../theme-core/src/site-styles/pageDesignIntent.ts
10427
- import { z as z26 } from "zod";
10351
+ import { z as z25 } from "zod";
10428
10352
  var pageDesignIntentSchemaVersion = 1;
10429
- var pageDesignUserPinnedAppearanceChoiceSchema = z26.object({
10430
- kind: z26.literal("user-pinned"),
10431
- value: z26.string().min(1).transform(asAppearancePresetId)
10353
+ var pageDesignUserPinnedAppearanceChoiceSchema = z25.object({
10354
+ kind: z25.literal("user-pinned"),
10355
+ value: z25.string().min(1).transform(asAppearancePresetId)
10432
10356
  }).strict();
10433
- var pageDesignUserPinnedBoundaryChoiceSchema = z26.object({
10434
- kind: z26.literal("user-pinned"),
10435
- value: z26.string().min(1).transform(asBoundaryOptionId)
10357
+ var pageDesignUserPinnedBoundaryChoiceSchema = z25.object({
10358
+ kind: z25.literal("user-pinned"),
10359
+ value: z25.string().min(1).transform(asBoundaryOptionId)
10436
10360
  }).strict();
10437
- var pageDesignBlockLookPinSchema = z26.object({
10438
- blockId: z26.string().min(1).transform(asDesignBlockId),
10439
- blockKind: z26.string().min(1),
10361
+ var pageDesignBlockLookPinSchema = z25.object({
10362
+ blockId: z25.string().min(1).transform(asDesignBlockId),
10363
+ blockKind: z25.string().min(1),
10440
10364
  choice: pageDesignUserPinnedAppearanceChoiceSchema
10441
10365
  }).strict();
10442
- var pageDesignBoundaryPinSchema = z26.object({
10443
- boundaryId: z26.string().min(1).transform(asDesignBoundaryId),
10444
- previousBlockId: z26.string().min(1).transform(asDesignBlockId),
10445
- nextBlockId: z26.string().min(1).transform(asDesignBlockId),
10366
+ var pageDesignBoundaryPinSchema = z25.object({
10367
+ boundaryId: z25.string().min(1).transform(asDesignBoundaryId),
10368
+ previousBlockId: z25.string().min(1).transform(asDesignBlockId),
10369
+ nextBlockId: z25.string().min(1).transform(asDesignBlockId),
10446
10370
  choice: pageDesignUserPinnedBoundaryChoiceSchema
10447
10371
  }).strict().superRefine((pin, ctx) => {
10448
10372
  const expectedBoundaryId = makeBoundaryId(
@@ -10451,18 +10375,18 @@ var pageDesignBoundaryPinSchema = z26.object({
10451
10375
  );
10452
10376
  if (pin.boundaryId !== expectedBoundaryId) {
10453
10377
  ctx.addIssue({
10454
- code: z26.ZodIssueCode.custom,
10378
+ code: z25.ZodIssueCode.custom,
10455
10379
  path: ["boundaryId"],
10456
10380
  message: `Boundary id must match previousBlockId and nextBlockId. Expected ${expectedBoundaryId}.`
10457
10381
  });
10458
10382
  }
10459
10383
  });
10460
- var pageDesignIntentV1Schema = z26.object({
10461
- schemaVersion: z26.literal(pageDesignIntentSchemaVersion),
10462
- siteStyleId: z26.string().min(1).transform(asSiteStyleId),
10463
- pageFlowPresetId: z26.string().min(1).transform(asPageFlowPresetId),
10464
- blockLookPins: z26.array(pageDesignBlockLookPinSchema),
10465
- boundaryPins: z26.array(pageDesignBoundaryPinSchema)
10384
+ var pageDesignIntentV1Schema = z25.object({
10385
+ schemaVersion: z25.literal(pageDesignIntentSchemaVersion),
10386
+ siteStyleId: z25.string().min(1).transform(asSiteStyleId),
10387
+ pageFlowPresetId: z25.string().min(1).transform(asPageFlowPresetId),
10388
+ blockLookPins: z25.array(pageDesignBlockLookPinSchema),
10389
+ boundaryPins: z25.array(pageDesignBoundaryPinSchema)
10466
10390
  }).strict().superRefine((intent, ctx) => {
10467
10391
  addDuplicateStringIssues(ctx, {
10468
10392
  values: intent.blockLookPins.map((pin) => pin.blockId),
@@ -10488,7 +10412,7 @@ function addDuplicateStringIssues(ctx, input) {
10488
10412
  }
10489
10413
  for (const duplicate of duplicates) {
10490
10414
  ctx.addIssue({
10491
- code: z26.ZodIssueCode.custom,
10415
+ code: z25.ZodIssueCode.custom,
10492
10416
  path: [...input.path],
10493
10417
  message: `Duplicate ${input.label}: ${duplicate}.`
10494
10418
  });
@@ -10640,75 +10564,75 @@ var defaultComponentRuntimeRules = defineComponentRuntimeRules({
10640
10564
  });
10641
10565
 
10642
10566
  // ../theme-core/src/site-styles/pageDesignAuthority.ts
10643
- import { z as z27 } from "zod";
10644
- var nonEmptyStringSchema = z27.string().min(1);
10567
+ import { z as z26 } from "zod";
10568
+ var nonEmptyStringSchema = z26.string().min(1);
10645
10569
  var blockContentVersionIdSchema = nonEmptyStringSchema.transform(asBlockContentVersionId);
10646
10570
  var designBlockIdSchema = nonEmptyStringSchema.transform(asDesignBlockId);
10647
10571
  var designPageIdSchema = nonEmptyStringSchema.transform(asDesignPageId);
10648
10572
  var designEntryIdSchema = nonEmptyStringSchema.transform(asDesignEntryId);
10649
- var blockOrderIndexSchema = z27.number().int().nonnegative().transform(asBlockOrderIndex);
10650
- var publishedPageBlockSnapshotSchema = z27.object({
10651
- kind: z27.literal("published-block-content"),
10573
+ var blockOrderIndexSchema = z26.number().int().nonnegative().transform(asBlockOrderIndex);
10574
+ var publishedPageBlockSnapshotSchema = z26.object({
10575
+ kind: z26.literal("published-block-content"),
10652
10576
  blockId: designBlockIdSchema,
10653
10577
  contentVersionId: blockContentVersionIdSchema,
10654
- identifier: z27.string().nullable(),
10578
+ identifier: z26.string().nullable(),
10655
10579
  blockKind: nonEmptyStringSchema,
10656
10580
  orderIndex: blockOrderIndexSchema
10657
10581
  }).strict();
10658
- var draftPageBlockSnapshotSchema = z27.object({
10659
- kind: z27.literal("draft-block-content"),
10582
+ var draftPageBlockSnapshotSchema = z26.object({
10583
+ kind: z26.literal("draft-block-content"),
10660
10584
  blockId: designBlockIdSchema,
10661
10585
  contentVersionId: blockContentVersionIdSchema.nullable(),
10662
- identifier: z27.string().nullable(),
10586
+ identifier: z26.string().nullable(),
10663
10587
  blockKind: nonEmptyStringSchema,
10664
10588
  orderIndex: blockOrderIndexSchema
10665
10589
  }).strict();
10666
- var missingPageBlockSnapshotSchema = z27.object({
10667
- kind: z27.literal("missing-block-content"),
10590
+ var missingPageBlockSnapshotSchema = z26.object({
10591
+ kind: z26.literal("missing-block-content"),
10668
10592
  blockId: designBlockIdSchema,
10669
- identifier: z27.string().nullable(),
10593
+ identifier: z26.string().nullable(),
10670
10594
  blockKind: nonEmptyStringSchema,
10671
10595
  orderIndex: blockOrderIndexSchema,
10672
- reason: z27.enum([
10596
+ reason: z26.enum([
10673
10597
  "new-block",
10674
10598
  "deleted-content-version",
10675
10599
  "unpublished-block"
10676
10600
  ])
10677
10601
  }).strict();
10678
- var pageBlockSnapshotSchema = z27.discriminatedUnion("kind", [
10602
+ var pageBlockSnapshotSchema = z26.discriminatedUnion("kind", [
10679
10603
  publishedPageBlockSnapshotSchema,
10680
10604
  draftPageBlockSnapshotSchema,
10681
10605
  missingPageBlockSnapshotSchema
10682
10606
  ]);
10683
- var publishedPageBlockSequenceSchema = z27.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10684
- var draftPageBlockSequenceSchema = z27.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10685
- var publishedPageDesignVersionDataV1Schema = z27.object({
10686
- schemaVersion: z27.literal(1),
10687
- stage: z27.literal("published"),
10607
+ var publishedPageBlockSequenceSchema = z26.array(publishedPageBlockSnapshotSchema).superRefine(validateBlockSequence);
10608
+ var draftPageBlockSequenceSchema = z26.array(pageBlockSnapshotSchema).superRefine(validateBlockSequence);
10609
+ var publishedPageDesignVersionDataV1Schema = z26.object({
10610
+ schemaVersion: z26.literal(1),
10611
+ stage: z26.literal("published"),
10688
10612
  pageId: designPageIdSchema,
10689
10613
  blockSequence: publishedPageBlockSequenceSchema
10690
10614
  }).strict();
10691
- var draftPageDesignVersionDataV1Schema = z27.object({
10692
- schemaVersion: z27.literal(1),
10693
- stage: z27.literal("draft"),
10615
+ var draftPageDesignVersionDataV1Schema = z26.object({
10616
+ schemaVersion: z26.literal(1),
10617
+ stage: z26.literal("draft"),
10694
10618
  pageId: designPageIdSchema,
10695
10619
  blockSequence: draftPageBlockSequenceSchema
10696
10620
  }).strict();
10697
- var pageDesignVersionDataV1Schema = z27.discriminatedUnion("stage", [
10621
+ var pageDesignVersionDataV1Schema = z26.discriminatedUnion("stage", [
10698
10622
  publishedPageDesignVersionDataV1Schema,
10699
10623
  draftPageDesignVersionDataV1Schema
10700
10624
  ]);
10701
- var contentVersionOwnerSchema = z27.discriminatedUnion("kind", [
10702
- z27.object({
10703
- kind: z27.literal("block"),
10625
+ var contentVersionOwnerSchema = z26.discriminatedUnion("kind", [
10626
+ z26.object({
10627
+ kind: z26.literal("block"),
10704
10628
  blockId: designBlockIdSchema
10705
10629
  }).strict(),
10706
- z27.object({
10707
- kind: z27.literal("entry"),
10630
+ z26.object({
10631
+ kind: z26.literal("entry"),
10708
10632
  entryId: designEntryIdSchema
10709
10633
  }).strict(),
10710
- z27.object({
10711
- kind: z27.literal("page"),
10634
+ z26.object({
10635
+ kind: z26.literal("page"),
10712
10636
  pageId: designPageIdSchema
10713
10637
  }).strict()
10714
10638
  ]);
@@ -10725,7 +10649,7 @@ function collectBlockSequenceIssues(snapshots) {
10725
10649
  snapshots.forEach((snapshot, index) => {
10726
10650
  if (seenBlockIds.has(snapshot.blockId)) {
10727
10651
  issues.push({
10728
- code: z27.ZodIssueCode.custom,
10652
+ code: z26.ZodIssueCode.custom,
10729
10653
  message: `Duplicate blockId in page design blockSequence: ${snapshot.blockId}`,
10730
10654
  path: [index, "blockId"]
10731
10655
  });
@@ -10734,7 +10658,7 @@ function collectBlockSequenceIssues(snapshots) {
10734
10658
  const orderIndex = snapshot.orderIndex;
10735
10659
  if (seenOrderIndexes.has(orderIndex)) {
10736
10660
  issues.push({
10737
- code: z27.ZodIssueCode.custom,
10661
+ code: z26.ZodIssueCode.custom,
10738
10662
  message: `Duplicate orderIndex in page design blockSequence: ${String(orderIndex)}`,
10739
10663
  path: [index, "orderIndex"]
10740
10664
  });
@@ -10742,7 +10666,7 @@ function collectBlockSequenceIssues(snapshots) {
10742
10666
  seenOrderIndexes.add(orderIndex);
10743
10667
  if (previousOrderIndex !== null && orderIndex <= previousOrderIndex) {
10744
10668
  issues.push({
10745
- code: z27.ZodIssueCode.custom,
10669
+ code: z26.ZodIssueCode.custom,
10746
10670
  message: `Expected orderIndex greater than ${String(previousOrderIndex)} for blockSequence position ${String(index)}; received ${String(orderIndex)}.`,
10747
10671
  path: [index, "orderIndex"]
10748
10672
  });
@@ -10795,7 +10719,7 @@ var pageFlowPresets = [
10795
10719
  ];
10796
10720
 
10797
10721
  // ../theme-core/src/site-styles/tokenRecipes.ts
10798
- import { z as z28 } from "zod";
10722
+ import { z as z27 } from "zod";
10799
10723
  var themeTokenRecipeOptions = {
10800
10724
  palette: ["brand-led", "warm-neutral", "high-contrast", "soft-natural"],
10801
10725
  contrast: ["standard", "strong", "maximum"],
@@ -10810,14 +10734,14 @@ var themeTokenRecipeOptions = {
10810
10734
  spacing: ["compact", "regular", "airy"],
10811
10735
  motion: ["none", "subtle", "expressive"]
10812
10736
  };
10813
- var themeTokenRecipesSchema = z28.object({
10814
- palette: z28.enum(themeTokenRecipeOptions.palette),
10815
- contrast: z28.enum(themeTokenRecipeOptions.contrast),
10816
- radius: z28.enum(themeTokenRecipeOptions.radius),
10817
- shadow: z28.enum(themeTokenRecipeOptions.shadow),
10818
- typography: z28.enum(themeTokenRecipeOptions.typography),
10819
- spacing: z28.enum(themeTokenRecipeOptions.spacing),
10820
- motion: z28.enum(themeTokenRecipeOptions.motion)
10737
+ var themeTokenRecipesSchema = z27.object({
10738
+ palette: z27.enum(themeTokenRecipeOptions.palette),
10739
+ contrast: z27.enum(themeTokenRecipeOptions.contrast),
10740
+ radius: z27.enum(themeTokenRecipeOptions.radius),
10741
+ shadow: z27.enum(themeTokenRecipeOptions.shadow),
10742
+ typography: z27.enum(themeTokenRecipeOptions.typography),
10743
+ spacing: z27.enum(themeTokenRecipeOptions.spacing),
10744
+ motion: z27.enum(themeTokenRecipeOptions.motion)
10821
10745
  });
10822
10746
 
10823
10747
  // ../blocks/src/system/designCapabilities.ts
@@ -13094,26 +13018,26 @@ function sectionState(opts) {
13094
13018
  }
13095
13019
 
13096
13020
  // ../blocks/src/system/fragments/types.ts
13097
- import { z as z29 } from "zod";
13021
+ import { z as z28 } from "zod";
13098
13022
  var FRAGMENT_ID_PATTERN = /^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$/i;
13099
13023
  var FIELD_ID_PATTERN = /^[a-z][a-zA-Z0-9_-]*$/;
13100
- var dataLoaderSchema = z29.object({
13101
- endpoint: z29.string().min(1, "Fragment data loader requires an endpoint"),
13102
- params: z29.record(z29.string(), z29.unknown()).default({}),
13103
- mode: z29.enum(["server", "client"]).default("server")
13024
+ var dataLoaderSchema = z28.object({
13025
+ endpoint: z28.string().min(1, "Fragment data loader requires an endpoint"),
13026
+ params: z28.record(z28.string(), z28.unknown()).default({}),
13027
+ mode: z28.enum(["server", "client"]).default("server")
13104
13028
  });
13105
- var fragmentDataSchema = z29.object({
13106
- key: z29.string().min(1, "Fragment data key is required"),
13029
+ var fragmentDataSchema = z28.object({
13030
+ key: z28.string().min(1, "Fragment data key is required"),
13107
13031
  loader: dataLoaderSchema.optional()
13108
13032
  });
13109
- var fragmentConfigSchema = z29.object({
13110
- id: z29.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13111
- title: z29.string().optional(),
13112
- description: z29.string().optional(),
13113
- category: z29.enum(["content", "media", "interactive", "layout"]).optional(),
13114
- icon: z29.string().optional(),
13033
+ var fragmentConfigSchema = z28.object({
13034
+ id: z28.string().min(1, "Fragment id is required").regex(FRAGMENT_ID_PATTERN, "Fragment id must be alphanumeric with optional . _ - separators"),
13035
+ title: z28.string().optional(),
13036
+ description: z28.string().optional(),
13037
+ category: z28.enum(["content", "media", "interactive", "layout"]).optional(),
13038
+ icon: z28.string().optional(),
13115
13039
  fields: fieldSchema.array().default([]),
13116
- layout: z29.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13040
+ layout: z28.union([NodeSchema, NodeSchema.array()]).transform((value) => Array.isArray(value) ? value : [value]),
13117
13041
  data: fragmentDataSchema.optional()
13118
13042
  });
13119
13043
  var FragmentConfigError = class extends Error {
@@ -15763,7 +15687,7 @@ var bodyTextBlockDefinition = {
15763
15687
  };
15764
15688
 
15765
15689
  // ../blocks/src/system/blocks/blog-post.tsx
15766
- import { z as z30 } from "zod";
15690
+ import { z as z29 } from "zod";
15767
15691
  var composition = composeFragments([{ fragment: blogFeaturedPostFragment }]);
15768
15692
  var blogPostLayout = section(
15769
15693
  { background: "background", className: "rb-px-6 rb-py-12" },
@@ -15792,17 +15716,17 @@ var blogPostManifest = createBlockManifest({
15792
15716
  additionalFields: composition.fields,
15793
15717
  layout: blogPostLayout
15794
15718
  });
15795
- var blogPostDataSchema = z30.object({
15796
- id: z30.string(),
15797
- title: z30.string(),
15798
- slug: z30.string(),
15799
- path: z30.string(),
15800
- excerpt: z30.string().nullable().optional(),
15801
- image: z30.object({
15802
- url: z30.string().optional().nullable(),
15803
- alt: z30.string().optional().nullable()
15719
+ var blogPostDataSchema = z29.object({
15720
+ id: z29.string(),
15721
+ title: z29.string(),
15722
+ slug: z29.string(),
15723
+ path: z29.string(),
15724
+ excerpt: z29.string().nullable().optional(),
15725
+ image: z29.object({
15726
+ url: z29.string().optional().nullable(),
15727
+ alt: z29.string().optional().nullable()
15804
15728
  }).nullable().optional(),
15805
- publishedAt: z30.string().nullable().optional()
15729
+ publishedAt: z29.string().nullable().optional()
15806
15730
  });
15807
15731
  var blogPostBlockDefinition = {
15808
15732
  manifest: blogPostManifest,
@@ -15811,7 +15735,7 @@ var blogPostBlockDefinition = {
15811
15735
  };
15812
15736
 
15813
15737
  // ../blocks/src/system/blocks/blog-listing.ts
15814
- import { z as z31 } from "zod";
15738
+ import { z as z30 } from "zod";
15815
15739
  var blogListingDataLoader = {
15816
15740
  endpoint: "listPublishedEntries",
15817
15741
  params: {
@@ -16129,24 +16053,24 @@ var blogListingManifest = createBlockManifest({
16129
16053
  spacing: "lg"
16130
16054
  }
16131
16055
  });
16132
- var blogPostListEntrySchema = z31.object({
16133
- id: z31.string(),
16134
- slug: z31.string(),
16135
- path: z31.string(),
16136
- title: z31.string(),
16137
- excerpt: z31.string().nullable().optional(),
16138
- publishedAt: z31.string().nullable().optional(),
16139
- updatedAt: z31.string(),
16140
- status: z31.string(),
16141
- image: z31.object({
16142
- url: z31.string(),
16143
- alt: z31.string().nullable().optional()
16056
+ var blogPostListEntrySchema = z30.object({
16057
+ id: z30.string(),
16058
+ slug: z30.string(),
16059
+ path: z30.string(),
16060
+ title: z30.string(),
16061
+ excerpt: z30.string().nullable().optional(),
16062
+ publishedAt: z30.string().nullable().optional(),
16063
+ updatedAt: z30.string(),
16064
+ status: z30.string(),
16065
+ image: z30.object({
16066
+ url: z30.string(),
16067
+ alt: z30.string().nullable().optional()
16144
16068
  }).nullable().optional()
16145
16069
  });
16146
16070
  var blogListingBlockDefinition = {
16147
16071
  manifest: blogListingManifest,
16148
16072
  dataSchemas: {
16149
- posts: z31.array(blogPostListEntrySchema).optional()
16073
+ posts: z30.array(blogPostListEntrySchema).optional()
16150
16074
  },
16151
16075
  dataLoaders: {
16152
16076
  posts: blogListingDataLoader
@@ -16210,10 +16134,10 @@ var singleButtonBlockDefinition = {
16210
16134
  };
16211
16135
 
16212
16136
  // ../blocks/src/system/blocks/form.tsx
16213
- import { z as z33 } from "zod";
16137
+ import { z as z32 } from "zod";
16214
16138
 
16215
16139
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16216
- import { z as z32 } from "zod";
16140
+ import { z as z31 } from "zod";
16217
16141
 
16218
16142
  // ../blocks/src/contracts/runtime.ts
16219
16143
  function decodeSuccess(value) {
@@ -16261,14 +16185,14 @@ function defineClientOwnedBlockRuntime(runtime) {
16261
16185
  }
16262
16186
 
16263
16187
  // ../blocks/src/contracts/islands.ts
16264
- function isObjectRecord2(value) {
16188
+ function isObjectRecord(value) {
16265
16189
  return typeof value === "object" && value !== null;
16266
16190
  }
16267
16191
  function pickRecordKeys(source, keys) {
16268
16192
  return Object.fromEntries(keys.map((key) => [key, source[key]]));
16269
16193
  }
16270
16194
  function expectEncodedRecord(value, label) {
16271
- if (isObjectRecord2(value)) {
16195
+ if (isObjectRecord(value)) {
16272
16196
  return value;
16273
16197
  }
16274
16198
  throw new Error(`Expected ${label} codec to encode an object`);
@@ -16300,7 +16224,7 @@ function createInteractiveIslandCodec(options) {
16300
16224
  };
16301
16225
  },
16302
16226
  decode: (input) => {
16303
- if (!isObjectRecord2(input)) {
16227
+ if (!isObjectRecord(input)) {
16304
16228
  return decodeFailure([{ path: [], message: "Expected island props object" }]);
16305
16229
  }
16306
16230
  const metaResult = options.meta.decode(pickRecordKeys(input, options.metaKeys));
@@ -16312,7 +16236,7 @@ function createInteractiveIslandCodec(options) {
16312
16236
  });
16313
16237
  }
16314
16238
  const renderInput = input.render;
16315
- if (!isObjectRecord2(renderInput)) {
16239
+ if (!isObjectRecord(renderInput)) {
16316
16240
  renderIssues.push({
16317
16241
  path: ["render"],
16318
16242
  message: "Expected render object"
@@ -16378,75 +16302,75 @@ function groupFormFields(fields3) {
16378
16302
  }
16379
16303
 
16380
16304
  // ../blocks/src/system/runtime/nodes/form.interactive.ts
16381
- var formFieldSchema = z32.object({
16382
- id: z32.string(),
16383
- label: z32.string().optional(),
16384
- type: z32.string().optional(),
16385
- required: z32.boolean().optional(),
16386
- placeholder: z32.string().optional(),
16387
- helpText: z32.string().optional(),
16388
- layout: z32.object({
16389
- width: z32.enum(["full", "half"]).optional()
16305
+ var formFieldSchema = z31.object({
16306
+ id: z31.string(),
16307
+ label: z31.string().optional(),
16308
+ type: z31.string().optional(),
16309
+ required: z31.boolean().optional(),
16310
+ placeholder: z31.string().optional(),
16311
+ helpText: z31.string().optional(),
16312
+ layout: z31.object({
16313
+ width: z31.enum(["full", "half"]).optional()
16390
16314
  }).optional(),
16391
- rows: z32.number().optional(),
16392
- options: z32.array(z32.object({
16393
- value: z32.string(),
16394
- label: z32.string()
16315
+ rows: z31.number().optional(),
16316
+ options: z31.array(z31.object({
16317
+ value: z31.string(),
16318
+ label: z31.string()
16395
16319
  })).optional(),
16396
- multiple: z32.boolean().optional(),
16397
- minLength: z32.number().optional(),
16398
- maxLength: z32.number().optional(),
16399
- pattern: z32.string().optional(),
16400
- min: z32.number().optional(),
16401
- max: z32.number().optional()
16402
- });
16403
- var formRecordSchema = z32.object({
16404
- id: z32.string(),
16405
- schemaJson: z32.object({
16406
- fields: z32.array(formFieldSchema).optional()
16320
+ multiple: z31.boolean().optional(),
16321
+ minLength: z31.number().optional(),
16322
+ maxLength: z31.number().optional(),
16323
+ pattern: z31.string().optional(),
16324
+ min: z31.number().optional(),
16325
+ max: z31.number().optional()
16326
+ });
16327
+ var formRecordSchema = z31.object({
16328
+ id: z31.string(),
16329
+ schemaJson: z31.object({
16330
+ fields: z31.array(formFieldSchema).optional()
16407
16331
  }).optional()
16408
16332
  });
16409
- var formFieldGroupSchema = z32.discriminatedUnion("type", [
16410
- z32.object({
16411
- type: z32.literal("single"),
16412
- key: z32.string(),
16333
+ var formFieldGroupSchema = z31.discriminatedUnion("type", [
16334
+ z31.object({
16335
+ type: z31.literal("single"),
16336
+ key: z31.string(),
16413
16337
  field: formFieldSchema
16414
16338
  }),
16415
- z32.object({
16416
- type: z32.literal("row"),
16417
- key: z32.string(),
16418
- fields: z32.tuple([formFieldSchema, formFieldSchema])
16339
+ z31.object({
16340
+ type: z31.literal("row"),
16341
+ key: z31.string(),
16342
+ fields: z31.tuple([formFieldSchema, formFieldSchema])
16419
16343
  })
16420
16344
  ]);
16421
- var formSourceSchema = z32.object({
16345
+ var formSourceSchema = z31.object({
16422
16346
  value: formRecordSchema.optional(),
16423
- siteId: z32.string().optional(),
16424
- apiBaseUrl: z32.string().optional(),
16425
- submitLabel: z32.string().optional(),
16426
- successMessage: z32.string().nullable().optional(),
16427
- className: z32.string().optional(),
16428
- spamProtectionEnabled: z32.boolean().optional()
16429
- });
16430
- var formDisplaySchema = z32.object({
16431
- kind: z32.literal("form"),
16432
- state: z32.enum(["missing", "ready"]),
16433
- className: z32.string().nullable(),
16434
- formId: z32.string().nullable(),
16435
- submitLabel: z32.string(),
16436
- successMessage: z32.string().nullable(),
16347
+ siteId: z31.string().optional(),
16348
+ apiBaseUrl: z31.string().optional(),
16349
+ submitLabel: z31.string().optional(),
16350
+ successMessage: z31.string().nullable().optional(),
16351
+ className: z31.string().optional(),
16352
+ spamProtectionEnabled: z31.boolean().optional()
16353
+ });
16354
+ var formDisplaySchema = z31.object({
16355
+ kind: z31.literal("form"),
16356
+ state: z31.enum(["missing", "ready"]),
16357
+ className: z31.string().nullable(),
16358
+ formId: z31.string().nullable(),
16359
+ submitLabel: z31.string(),
16360
+ successMessage: z31.string().nullable(),
16437
16361
  form: formRecordSchema.nullable(),
16438
- groups: z32.array(formFieldGroupSchema)
16362
+ groups: z31.array(formFieldGroupSchema)
16439
16363
  });
16440
- var formHydrationSchema = z32.object({
16441
- spamProtectionEnabled: z32.boolean().optional()
16364
+ var formHydrationSchema = z31.object({
16365
+ spamProtectionEnabled: z31.boolean().optional()
16442
16366
  });
16443
- var formRenderSchema = z32.object({
16367
+ var formRenderSchema = z31.object({
16444
16368
  display: formDisplaySchema,
16445
16369
  hydration: formHydrationSchema
16446
16370
  });
16447
- var formIslandMetaCodec = createZodCodec(z32.object({
16448
- siteId: z32.string().optional(),
16449
- apiBaseUrl: z32.string().optional()
16371
+ var formIslandMetaCodec = createZodCodec(z31.object({
16372
+ siteId: z31.string().optional(),
16373
+ apiBaseUrl: z31.string().optional()
16450
16374
  }));
16451
16375
  var formIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
16452
16376
  function buildFormDisplay(source) {
@@ -16521,16 +16445,16 @@ var formManifest = createBlockManifest({
16521
16445
  tags: ["form", "contact", "input", "submit", "fields", "signup", "lead-capture"],
16522
16446
  icon: "FormInput"
16523
16447
  });
16524
- var formDataSchema = z33.object({
16525
- id: z33.string(),
16526
- siteId: z33.string(),
16527
- userId: z33.string(),
16528
- name: z33.string(),
16529
- slug: z33.string(),
16530
- schemaJson: z33.any(),
16531
- settingsJson: z33.any().optional(),
16532
- createdAt: z33.string(),
16533
- updatedAt: z33.string()
16448
+ var formDataSchema = z32.object({
16449
+ id: z32.string(),
16450
+ siteId: z32.string(),
16451
+ userId: z32.string(),
16452
+ name: z32.string(),
16453
+ slug: z32.string(),
16454
+ schemaJson: z32.any(),
16455
+ settingsJson: z32.any().optional(),
16456
+ createdAt: z32.string(),
16457
+ updatedAt: z32.string()
16534
16458
  });
16535
16459
  var formBlockDefinition = {
16536
16460
  manifest: formManifest,
@@ -16576,7 +16500,7 @@ var faqBlockDefinition = {
16576
16500
  };
16577
16501
 
16578
16502
  // ../blocks/src/system/transforms/registry/formatting.ts
16579
- import { z as z34 } from "zod";
16503
+ import { z as z33 } from "zod";
16580
16504
  var uppercaseTransform = {
16581
16505
  id: "string.uppercase",
16582
16506
  kind: "string",
@@ -16587,7 +16511,7 @@ var fallbackTransform = {
16587
16511
  id: "value.fallback",
16588
16512
  kind: "formatter",
16589
16513
  summary: "Provide fallback when value is null or undefined",
16590
- schema: z34.object({ fallback: z34.unknown() }),
16514
+ schema: z33.object({ fallback: z33.unknown() }),
16591
16515
  run: (value, options) => value === null || value === void 0 || value === "" ? options.fallback : value
16592
16516
  };
16593
16517
  var dateFormatShort = {
@@ -16634,8 +16558,8 @@ var jsonArrayTransform = {
16634
16558
  return "";
16635
16559
  }
16636
16560
  };
16637
- var marqueeLoopOptionsSchema = z34.object({
16638
- minItems: z34.number().int().min(1).default(10)
16561
+ var marqueeLoopOptionsSchema = z33.object({
16562
+ minItems: z33.number().int().min(1).default(10)
16639
16563
  });
16640
16564
  var marqueeLoopTransform = {
16641
16565
  id: "array.marqueeLoop",
@@ -16663,7 +16587,7 @@ var formattingTransforms = [
16663
16587
  ];
16664
16588
 
16665
16589
  // ../blocks/src/system/transforms/registry/ui.ts
16666
- import { z as z35 } from "zod";
16590
+ import { z as z34 } from "zod";
16667
16591
  var joinClasses3 = (parts) => parts.filter(
16668
16592
  (part) => typeof part === "string" && part.trim().length > 0
16669
16593
  ).join(" ").replace(/\s+/g, " ").trim();
@@ -16723,8 +16647,8 @@ function getNavStyleClasses(navStyle) {
16723
16647
  return baseClasses;
16724
16648
  }
16725
16649
  }
16726
- var headerNavClassOptionsSchema = z35.object({
16727
- base: z35.string().optional()
16650
+ var headerNavClassOptionsSchema = z34.object({
16651
+ base: z34.string().optional()
16728
16652
  });
16729
16653
  var headerNavLinkClassTransform = {
16730
16654
  id: "ui.headerNavLinkClass",
@@ -16807,8 +16731,8 @@ function resolveHeroContentMaxWidth(content) {
16807
16731
  return raw;
16808
16732
  return "default";
16809
16733
  }
16810
- var heroContentWrapperClassSchema = z35.object({
16811
- base: z35.string().optional()
16734
+ var heroContentWrapperClassSchema = z34.object({
16735
+ base: z34.string().optional()
16812
16736
  });
16813
16737
  var heroContentWrapperClassTransform = {
16814
16738
  id: "ui.heroContentWrapperClass",
@@ -16850,8 +16774,8 @@ var heroStackJustifyFromVerticalAlignmentTransform = {
16850
16774
  return vertical === "top" ? "start" : vertical === "bottom" ? "end" : "center";
16851
16775
  }
16852
16776
  };
16853
- var heroGridClassFromVerticalAlignmentSchema = z35.object({
16854
- base: z35.string()
16777
+ var heroGridClassFromVerticalAlignmentSchema = z34.object({
16778
+ base: z34.string()
16855
16779
  });
16856
16780
  var heroGridClassFromVerticalAlignmentTransform = {
16857
16781
  id: "ui.heroGridClassFromVerticalAlignment",
@@ -16865,10 +16789,10 @@ var heroGridClassFromVerticalAlignmentTransform = {
16865
16789
  return joinClasses3([options.base, itemsClass]);
16866
16790
  }
16867
16791
  };
16868
- var imageFragmentClassOptionsSchema = z35.object({
16869
- base: z35.string(),
16870
- whenAuto: z35.string(),
16871
- whenFixed: z35.string()
16792
+ var imageFragmentClassOptionsSchema = z34.object({
16793
+ base: z34.string(),
16794
+ whenAuto: z34.string(),
16795
+ whenFixed: z34.string()
16872
16796
  });
16873
16797
  var imageFragmentClassTransform = {
16874
16798
  id: "ui.imageFragmentClass",
@@ -16884,9 +16808,9 @@ var imageFragmentClassTransform = {
16884
16808
  ]);
16885
16809
  }
16886
16810
  };
16887
- var imageFragmentSizeOptionsSchema = z35.object({
16888
- max: z35.number().int().positive().default(1920),
16889
- quality: z35.number().int().min(1).max(100).default(85)
16811
+ var imageFragmentSizeOptionsSchema = z34.object({
16812
+ max: z34.number().int().positive().default(1920),
16813
+ quality: z34.number().int().min(1).max(100).default(85)
16890
16814
  });
16891
16815
  var imageFragmentSizeTransform = {
16892
16816
  id: "ui.imageFragmentSize",
@@ -16906,9 +16830,9 @@ var imageFragmentSizeTransform = {
16906
16830
  return { width, height, quality, resize: "cover" };
16907
16831
  }
16908
16832
  };
16909
- var conditionalClassOptionsSchema = z35.object({
16910
- whenTrue: z35.string(),
16911
- whenFalse: z35.string()
16833
+ var conditionalClassOptionsSchema = z34.object({
16834
+ whenTrue: z34.string(),
16835
+ whenFalse: z34.string()
16912
16836
  });
16913
16837
  var conditionalClassTransform = {
16914
16838
  id: "ui.conditionalClass",
@@ -16920,9 +16844,9 @@ var conditionalClassTransform = {
16920
16844
  return isTrue ? options.whenTrue : options.whenFalse;
16921
16845
  }
16922
16846
  };
16923
- var twoColumnContainerClassOptionsSchema = z35.object({
16924
- base: z35.string(),
16925
- reverseClass: z35.string()
16847
+ var twoColumnContainerClassOptionsSchema = z34.object({
16848
+ base: z34.string(),
16849
+ reverseClass: z34.string()
16926
16850
  });
16927
16851
  var twoColumnContainerClassTransform = {
16928
16852
  id: "ui.twoColumnContainerClass",
@@ -16937,8 +16861,8 @@ var twoColumnContainerClassTransform = {
16937
16861
  ]);
16938
16862
  }
16939
16863
  };
16940
- var twoColumnFlexBasisOptionsSchema = z35.object({
16941
- side: z35.enum(["image", "text"])
16864
+ var twoColumnFlexBasisOptionsSchema = z34.object({
16865
+ side: z34.enum(["image", "text"])
16942
16866
  });
16943
16867
  var twoColumnFlexBasisTransform = {
16944
16868
  id: "ui.twoColumnFlexBasis",
@@ -16952,8 +16876,8 @@ var twoColumnFlexBasisTransform = {
16952
16876
  return `${percent}%`;
16953
16877
  }
16954
16878
  };
16955
- var columnsDesktopSpanClassOptionsSchema = z35.object({
16956
- base: z35.string().optional()
16879
+ var columnsDesktopSpanClassOptionsSchema = z34.object({
16880
+ base: z34.string().optional()
16957
16881
  });
16958
16882
  var columnsDesktopSpanClassTransform = {
16959
16883
  id: "ui.columnsDesktopSpanClass",
@@ -16995,8 +16919,8 @@ var columnsColsAtTransform = {
16995
16919
  id: "ui.columnsColsAt",
16996
16920
  kind: "formatter",
16997
16921
  summary: "Resolve columns count for a specific breakpoint",
16998
- schema: z35.object({
16999
- breakpoint: z35.enum(["mobile", "md", "lg", "xl"])
16922
+ schema: z34.object({
16923
+ breakpoint: z34.enum(["mobile", "md", "lg", "xl"])
17000
16924
  }),
17001
16925
  run: (value, options) => {
17002
16926
  const content = asPartialObject(value) ?? {};
@@ -17120,7 +17044,7 @@ var uiTransforms = [
17120
17044
  ];
17121
17045
 
17122
17046
  // ../blocks/src/system/transforms/registry/layout.ts
17123
- import { z as z36 } from "zod";
17047
+ import { z as z35 } from "zod";
17124
17048
 
17125
17049
  // ../theme-core/src/palette/utils/colorConversion.ts
17126
17050
  var mod = (a, n) => (a % n + n) % n;
@@ -17191,10 +17115,10 @@ function featuresFromHex(hex) {
17191
17115
  var joinClasses4 = (parts) => parts.filter(
17192
17116
  (part) => typeof part === "string" && part.trim().length > 0
17193
17117
  ).join(" ").replace(/\s+/g, " ").trim();
17194
- var maxWidthClassSchema = z36.object({
17195
- base: z36.string().optional(),
17196
- container: z36.string().optional(),
17197
- full: z36.string().optional()
17118
+ var maxWidthClassSchema = z35.object({
17119
+ base: z35.string().optional(),
17120
+ container: z35.string().optional(),
17121
+ full: z35.string().optional()
17198
17122
  });
17199
17123
  var maxWidthClassTransform = {
17200
17124
  id: "layout.maxWidthClass",
@@ -17210,11 +17134,11 @@ var maxWidthClassTransform = {
17210
17134
  return joinClasses4([base, chosen]);
17211
17135
  }
17212
17136
  };
17213
- var headerRootClassSchema = z36.object({
17214
- base: z36.string().optional(),
17215
- sticky: z36.string().optional(),
17216
- stickyTransparent: z36.string().optional(),
17217
- invert: z36.string().optional()
17137
+ var headerRootClassSchema = z35.object({
17138
+ base: z35.string().optional(),
17139
+ sticky: z35.string().optional(),
17140
+ stickyTransparent: z35.string().optional(),
17141
+ invert: z35.string().optional()
17218
17142
  });
17219
17143
  function resolveBackgroundVisualStyles(backgroundColor, tokens, defaultToken = "surface") {
17220
17144
  const backgroundToken = typeof backgroundColor === "string" && backgroundColor.trim().length > 0 ? backgroundColor : defaultToken;
@@ -17335,11 +17259,11 @@ var headerRootClassTransform = {
17335
17259
  return joinClasses4(classes);
17336
17260
  }
17337
17261
  };
17338
- var footerRootClassSchema = z36.object({
17339
- base: z36.string().optional(),
17340
- surface: z36.string().optional(),
17341
- tokenPrefix: z36.string().optional(),
17342
- transparent: z36.string().optional()
17262
+ var footerRootClassSchema = z35.object({
17263
+ base: z35.string().optional(),
17264
+ surface: z35.string().optional(),
17265
+ tokenPrefix: z35.string().optional(),
17266
+ transparent: z35.string().optional()
17343
17267
  });
17344
17268
  var footerRootClassTransform = {
17345
17269
  id: "layout.footerRootClass",
@@ -17443,8 +17367,8 @@ var footerAlignClassMap = {
17443
17367
  end: "rb-justify-end",
17444
17368
  "space-between": "rb-justify-between"
17445
17369
  };
17446
- var footerBottomBarClassSchema = z36.object({
17447
- base: z36.string().optional()
17370
+ var footerBottomBarClassSchema = z35.object({
17371
+ base: z35.string().optional()
17448
17372
  });
17449
17373
  var footerBottomBarClassTransform = {
17450
17374
  id: "layout.footerBottomBarClass",
@@ -17466,10 +17390,10 @@ var footerBottomBarClassTransform = {
17466
17390
  ]);
17467
17391
  }
17468
17392
  };
17469
- var footerBottomBarContainerClassSchema = z36.object({
17470
- base: z36.string().optional(),
17471
- fullBleed: z36.string().optional(),
17472
- contained: z36.string().optional()
17393
+ var footerBottomBarContainerClassSchema = z35.object({
17394
+ base: z35.string().optional(),
17395
+ fullBleed: z35.string().optional(),
17396
+ contained: z35.string().optional()
17473
17397
  });
17474
17398
  var footerBottomBarContainerClassTransform = {
17475
17399
  id: "layout.footerBottomBarContainerClass",
@@ -17554,8 +17478,8 @@ var footerSplitNavSingleClassTransform = {
17554
17478
  ]);
17555
17479
  }
17556
17480
  };
17557
- var footerLogoClassSchema = z36.object({
17558
- base: z36.string().optional()
17481
+ var footerLogoClassSchema = z35.object({
17482
+ base: z35.string().optional()
17559
17483
  });
17560
17484
  var footerLogoClassTransform = {
17561
17485
  id: "layout.footerLogoClass",
@@ -17577,8 +17501,8 @@ var footerLogoClassTransform = {
17577
17501
  ]);
17578
17502
  }
17579
17503
  };
17580
- var footerLogoMediaClassSchema = z36.object({
17581
- base: z36.string().optional()
17504
+ var footerLogoMediaClassSchema = z35.object({
17505
+ base: z35.string().optional()
17582
17506
  });
17583
17507
  var footerLogoMediaClassTransform = {
17584
17508
  id: "layout.footerLogoMediaClass",
@@ -17632,12 +17556,12 @@ var layoutTransforms = [
17632
17556
  ];
17633
17557
 
17634
17558
  // ../blocks/src/system/transforms/registry/media.ts
17635
- import { z as z37 } from "zod";
17636
- var mediaFromUrlOptionsSchema = z37.object({
17637
- width: z37.number().int().positive().optional(),
17638
- height: z37.number().int().positive().optional(),
17639
- quality: z37.number().int().min(1).max(100).optional(),
17640
- resize: z37.enum(["cover", "contain", "fill"]).optional()
17559
+ import { z as z36 } from "zod";
17560
+ var mediaFromUrlOptionsSchema = z36.object({
17561
+ width: z36.number().int().positive().optional(),
17562
+ height: z36.number().int().positive().optional(),
17563
+ quality: z36.number().int().min(1).max(100).optional(),
17564
+ resize: z36.enum(["cover", "contain", "fill"]).optional()
17641
17565
  });
17642
17566
  function maybeBuildSupabaseTransformUrl(inputUrl, options) {
17643
17567
  const width = options.width;
@@ -17685,10 +17609,20 @@ var mediaFromUrl = {
17685
17609
  var mediaTransforms = [mediaFromUrl];
17686
17610
 
17687
17611
  // ../blocks/src/system/transforms/registry/content.ts
17688
- import { z as z38 } from "zod";
17689
- var supportedRichTextTokenSchema = z38.enum(["year", "site_name"]);
17690
- var interpolateRichTextTokensOptionsSchema = z38.object({
17691
- tokens: z38.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17612
+ import { z as z37 } from "zod";
17613
+
17614
+ // ../blocks/src/lib/typeGuards.ts
17615
+ function isRecord2(value) {
17616
+ return typeof value === "object" && value !== null && !Array.isArray(value);
17617
+ }
17618
+ function isObjectRecord2(value) {
17619
+ return typeof value === "object" && value !== null;
17620
+ }
17621
+
17622
+ // ../blocks/src/system/transforms/registry/content.ts
17623
+ var supportedRichTextTokenSchema = z37.enum(["year", "site_name"]);
17624
+ var interpolateRichTextTokensOptionsSchema = z37.object({
17625
+ tokens: z37.array(supportedRichTextTokenSchema).default(["year", "site_name"])
17692
17626
  });
17693
17627
  var richTextTokenPattern = /\{\{\s*([a-zA-Z0-9_]+)\s*\}\}/g;
17694
17628
  function getSiteName(context) {
@@ -19498,7 +19432,7 @@ var mediaTextBlockDefinition = {
19498
19432
  };
19499
19433
 
19500
19434
  // ../blocks/src/system/blocks/appointment-booking.tsx
19501
- import { z as z39 } from "zod";
19435
+ import { z as z38 } from "zod";
19502
19436
  var appointmentBookingManifest = createBlockManifest({
19503
19437
  id: "block.appointment-booking",
19504
19438
  version: "2.0.0",
@@ -19574,11 +19508,11 @@ var appointmentBookingManifest = createBlockManifest({
19574
19508
  })
19575
19509
  ]
19576
19510
  });
19577
- var availabilityDataSchema = z39.object({
19578
- slots: z39.array(z39.object({
19579
- startAt: z39.string(),
19580
- endAt: z39.string(),
19581
- resourceId: z39.string()
19511
+ var availabilityDataSchema = z38.object({
19512
+ slots: z38.array(z38.object({
19513
+ startAt: z38.string(),
19514
+ endAt: z38.string(),
19515
+ resourceId: z38.string()
19582
19516
  }))
19583
19517
  });
19584
19518
  var appointmentBookingBlockDefinition = {
@@ -19603,13 +19537,13 @@ var appointmentBookingBlockDefinition = {
19603
19537
  };
19604
19538
 
19605
19539
  // ../blocks/src/system/blocks/event-registration.ts
19606
- import { z as z47 } from "zod";
19540
+ import { z as z46 } from "zod";
19607
19541
 
19608
19542
  // ../blocks/src/system/blocks/events/shared/schemas.ts
19609
- import { z as z43 } from "zod";
19543
+ import { z as z42 } from "zod";
19610
19544
 
19611
19545
  // ../blocks/src/lib/media.ts
19612
- import z40 from "zod";
19546
+ import z39 from "zod";
19613
19547
  var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19614
19548
  "document",
19615
19549
  "spreadsheet",
@@ -19617,52 +19551,52 @@ var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
19617
19551
  "audio",
19618
19552
  "video"
19619
19553
  ];
19620
- var hotspotSchema2 = z40.object({
19621
- x: z40.number().min(0).max(1),
19622
- y: z40.number().min(0).max(1),
19623
- radius: z40.number().optional()
19624
- });
19625
- var rotationSchema2 = z40.union([z40.literal(0), z40.literal(90), z40.literal(180), z40.literal(270)]);
19626
- var rectSchema2 = z40.tuple([z40.number(), z40.number(), z40.number(), z40.number()]);
19627
- var aspectCropSchema2 = z40.object({
19628
- aspect: z40.preprocess((value) => value == null ? void 0 : value, z40.string().optional()),
19629
- rect: z40.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19630
- hotspot: z40.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19631
- rotation: z40.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19632
- });
19633
- var transformSchema2 = z40.object({
19634
- aspectCrops: z40.preprocess((value) => {
19554
+ var hotspotSchema2 = z39.object({
19555
+ x: z39.number().min(0).max(1),
19556
+ y: z39.number().min(0).max(1),
19557
+ radius: z39.number().optional()
19558
+ });
19559
+ var rotationSchema2 = z39.union([z39.literal(0), z39.literal(90), z39.literal(180), z39.literal(270)]);
19560
+ var rectSchema2 = z39.tuple([z39.number(), z39.number(), z39.number(), z39.number()]);
19561
+ var aspectCropSchema2 = z39.object({
19562
+ aspect: z39.preprocess((value) => value == null ? void 0 : value, z39.string().optional()),
19563
+ rect: z39.preprocess((value) => value == null ? void 0 : value, rectSchema2.optional()),
19564
+ hotspot: z39.preprocess((value) => value == null ? void 0 : value, hotspotSchema2.optional()),
19565
+ rotation: z39.preprocess((value) => value == null ? void 0 : value, rotationSchema2.optional())
19566
+ });
19567
+ var transformSchema2 = z39.object({
19568
+ aspectCrops: z39.preprocess((value) => {
19635
19569
  if (!value || typeof value !== "object" || Array.isArray(value)) {
19636
19570
  return void 0;
19637
19571
  }
19638
19572
  return value;
19639
- }, z40.record(z40.string(), aspectCropSchema2.catch({}))).optional(),
19573
+ }, z39.record(z39.string(), aspectCropSchema2.catch({}))).optional(),
19640
19574
  rect: rectSchema2.optional(),
19641
19575
  hotspot: hotspotSchema2.optional(),
19642
19576
  rotation: rotationSchema2.optional()
19643
19577
  });
19644
- var mediaBaseSchema = z40.object({
19645
- purpose: z40.string().optional(),
19646
- placeholder: z40.boolean().default(true).optional(),
19647
- assetId: z40.string().optional(),
19648
- identifier: z40.string().optional(),
19649
- src: z40.string().optional(),
19650
- alt: z40.string().optional(),
19651
- filename: z40.string().optional(),
19652
- mimeType: z40.string().optional(),
19653
- width: z40.number().optional(),
19654
- height: z40.number().optional(),
19655
- storageBucket: z40.string().optional(),
19656
- storagePath: z40.string().optional(),
19578
+ var mediaBaseSchema = z39.object({
19579
+ purpose: z39.string().optional(),
19580
+ placeholder: z39.boolean().default(true).optional(),
19581
+ assetId: z39.string().optional(),
19582
+ identifier: z39.string().optional(),
19583
+ src: z39.string().optional(),
19584
+ alt: z39.string().optional(),
19585
+ filename: z39.string().optional(),
19586
+ mimeType: z39.string().optional(),
19587
+ width: z39.number().optional(),
19588
+ height: z39.number().optional(),
19589
+ storageBucket: z39.string().optional(),
19590
+ storagePath: z39.string().optional(),
19657
19591
  transform: transformSchema2.optional()
19658
19592
  });
19659
- var imageMediaSchema = mediaBaseSchema.extend({ type: z40.literal("image") });
19660
- var videoMediaSchema = mediaBaseSchema.extend({ type: z40.literal("video") });
19661
- var audioMediaSchema = mediaBaseSchema.extend({ type: z40.literal("audio") });
19662
- var documentMediaSchema = mediaBaseSchema.extend({ type: z40.literal("document") });
19663
- var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z40.literal("spreadsheet") });
19664
- var archiveMediaSchema = mediaBaseSchema.extend({ type: z40.literal("archive") });
19665
- var mediaSchema2 = z40.discriminatedUnion("type", [
19593
+ var imageMediaSchema = mediaBaseSchema.extend({ type: z39.literal("image") });
19594
+ var videoMediaSchema = mediaBaseSchema.extend({ type: z39.literal("video") });
19595
+ var audioMediaSchema = mediaBaseSchema.extend({ type: z39.literal("audio") });
19596
+ var documentMediaSchema = mediaBaseSchema.extend({ type: z39.literal("document") });
19597
+ var spreadsheetMediaSchema = mediaBaseSchema.extend({ type: z39.literal("spreadsheet") });
19598
+ var archiveMediaSchema = mediaBaseSchema.extend({ type: z39.literal("archive") });
19599
+ var mediaSchema2 = z39.discriminatedUnion("type", [
19666
19600
  imageMediaSchema,
19667
19601
  videoMediaSchema,
19668
19602
  audioMediaSchema,
@@ -19672,252 +19606,252 @@ var mediaSchema2 = z40.discriminatedUnion("type", [
19672
19606
  ]);
19673
19607
 
19674
19608
  // ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
19675
- import { z as z41 } from "zod";
19676
- var bookingDepositRefundPolicySchema = z41.enum([
19609
+ import { z as z40 } from "zod";
19610
+ var bookingDepositRefundPolicySchema = z40.enum([
19677
19611
  "refundable",
19678
19612
  "non_refundable"
19679
19613
  ]);
19680
- var bookingInstalmentPlanSchema = z41.union([
19681
- z41.object({
19682
- kind: z41.literal("deposit_plus_one_remainder"),
19683
- depositAmountCents: z41.number().int().min(0),
19614
+ var bookingInstalmentPlanSchema = z40.union([
19615
+ z40.object({
19616
+ kind: z40.literal("deposit_plus_one_remainder"),
19617
+ depositAmountCents: z40.number().int().min(0),
19684
19618
  depositRefundability: bookingDepositRefundPolicySchema,
19685
- remainderDueCount: z41.number().int().positive(),
19686
- intervalUnit: z41.enum(["day", "week", "month"])
19619
+ remainderDueCount: z40.number().int().positive(),
19620
+ intervalUnit: z40.enum(["day", "week", "month"])
19687
19621
  }),
19688
- z41.object({
19689
- kind: z41.literal("deposit_plus_scheduled_instalments"),
19690
- depositAmountCents: z41.number().int().min(0),
19622
+ z40.object({
19623
+ kind: z40.literal("deposit_plus_scheduled_instalments"),
19624
+ depositAmountCents: z40.number().int().min(0),
19691
19625
  depositRefundability: bookingDepositRefundPolicySchema,
19692
- instalmentCount: z41.number().int().positive(),
19693
- intervalCount: z41.number().int().positive(),
19694
- intervalUnit: z41.enum(["day", "week", "month"])
19626
+ instalmentCount: z40.number().int().positive(),
19627
+ intervalCount: z40.number().int().positive(),
19628
+ intervalUnit: z40.enum(["day", "week", "month"])
19695
19629
  }),
19696
- z41.object({
19697
- kind: z41.literal("equal_scheduled_instalments"),
19698
- instalmentCount: z41.number().int().positive(),
19699
- intervalCount: z41.number().int().positive(),
19700
- intervalUnit: z41.enum(["day", "week", "month"])
19630
+ z40.object({
19631
+ kind: z40.literal("equal_scheduled_instalments"),
19632
+ instalmentCount: z40.number().int().positive(),
19633
+ intervalCount: z40.number().int().positive(),
19634
+ intervalUnit: z40.enum(["day", "week", "month"])
19701
19635
  })
19702
19636
  ]);
19703
- var bookingFlexibleBalanceDueDateRuleSchema = z41.union([
19704
- z41.object({
19705
- kind: z41.literal("relative_to_start_date"),
19706
- daysBeforeStart: z41.number().int().positive()
19637
+ var bookingFlexibleBalanceDueDateRuleSchema = z40.union([
19638
+ z40.object({
19639
+ kind: z40.literal("relative_to_start_date"),
19640
+ daysBeforeStart: z40.number().int().positive()
19707
19641
  }),
19708
- z41.object({
19709
- kind: z41.literal("fixed_calendar_date"),
19710
- dueAt: z41.string().datetime()
19642
+ z40.object({
19643
+ kind: z40.literal("fixed_calendar_date"),
19644
+ dueAt: z40.string().datetime()
19711
19645
  })
19712
19646
  ]);
19713
- var bookingFlexibleBalanceConfigSchema = z41.object({
19714
- upfrontAmountCents: z41.number().int().min(0),
19647
+ var bookingFlexibleBalanceConfigSchema = z40.object({
19648
+ upfrontAmountCents: z40.number().int().min(0),
19715
19649
  dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
19716
19650
  depositRefundability: bookingDepositRefundPolicySchema
19717
19651
  });
19718
- var blockBookingPaymentCollectionOptionSchema = z41.union([
19719
- z41.object({
19720
- kind: z41.literal("upfront")
19652
+ var blockBookingPaymentCollectionOptionSchema = z40.union([
19653
+ z40.object({
19654
+ kind: z40.literal("upfront")
19721
19655
  }),
19722
- z41.object({
19723
- kind: z41.literal("deferred_manual")
19656
+ z40.object({
19657
+ kind: z40.literal("deferred_manual")
19724
19658
  }),
19725
- z41.object({
19726
- kind: z41.literal("instalment_plan"),
19659
+ z40.object({
19660
+ kind: z40.literal("instalment_plan"),
19727
19661
  plan: bookingInstalmentPlanSchema
19728
19662
  }),
19729
- z41.object({
19730
- kind: z41.literal("flexible_balance"),
19663
+ z40.object({
19664
+ kind: z40.literal("flexible_balance"),
19731
19665
  config: bookingFlexibleBalanceConfigSchema
19732
19666
  })
19733
19667
  ]);
19734
- var blockBookingPaymentTermsSchema = z41.object({
19735
- allowedOptions: z41.array(blockBookingPaymentCollectionOptionSchema).min(1)
19668
+ var blockBookingPaymentTermsSchema = z40.object({
19669
+ allowedOptions: z40.array(blockBookingPaymentCollectionOptionSchema).min(1)
19736
19670
  });
19737
19671
 
19738
19672
  // ../blocks/src/system/blocks/courses/shared/schemas.ts
19739
- import { z as z42 } from "zod";
19740
- var courseVenueSchema = z42.object({
19741
- id: z42.string(),
19742
- name: z42.string(),
19743
- address: z42.string().nullable()
19673
+ import { z as z41 } from "zod";
19674
+ var courseVenueSchema = z41.object({
19675
+ id: z41.string(),
19676
+ name: z41.string(),
19677
+ address: z41.string().nullable()
19678
+ });
19679
+ var courseSessionSchema = z41.object({
19680
+ id: z41.string(),
19681
+ startsAt: z41.string(),
19682
+ endsAt: z41.string(),
19683
+ timeZone: z41.string(),
19684
+ capacityOverride: z41.number().nullable().optional(),
19685
+ overrides: z41.record(z41.string(), z41.unknown()).nullable().optional()
19686
+ });
19687
+ var courseTeamMemberSummarySchema = z41.object({
19688
+ id: z41.string(),
19689
+ name: z41.string(),
19690
+ roleLabel: z41.string().nullable(),
19691
+ summary: z41.string().nullable(),
19692
+ profilePath: z41.string().nullable()
19693
+ });
19694
+ var coursePricingOptionSchema = z41.object({
19695
+ id: z41.string(),
19696
+ name: z41.string(),
19697
+ description: z41.string().nullable(),
19698
+ priceAmount: z41.number(),
19699
+ isActive: z41.boolean(),
19700
+ sortOrder: z41.number(),
19701
+ capacityLimit: z41.number().nullable(),
19702
+ saleStartsAt: z41.string().nullable(),
19703
+ saleEndsAt: z41.string().nullable(),
19704
+ attendanceScope: z41.enum(["in_person", "online", "both"]).nullable().optional()
19705
+ });
19706
+ var coursePricingSchema = z41.object({
19707
+ bookingRequirement: z41.enum(["none", "required"]),
19708
+ pricingStrategy: z41.enum(["free", "single", "tiered"]),
19709
+ currency: z41.string(),
19710
+ singlePriceAmount: z41.number().nullable(),
19711
+ paymentTerms: blockBookingPaymentTermsSchema,
19712
+ options: z41.array(coursePricingOptionSchema)
19713
+ });
19714
+ var publicCourseSchema = z41.object({
19715
+ id: z41.string(),
19716
+ title: z41.string(),
19717
+ slug: z41.string(),
19718
+ description: z41.unknown().nullable(),
19719
+ teamMembers: z41.array(courseTeamMemberSummarySchema).optional(),
19720
+ enrollmentOpen: z41.boolean(),
19721
+ pricing: coursePricingSchema.optional(),
19722
+ priceCents: z41.number().nullable(),
19723
+ currency: z41.string(),
19724
+ paymentTerms: blockBookingPaymentTermsSchema,
19725
+ enrollmentCapacity: z41.number().nullable(),
19726
+ acceptsMemberships: z41.boolean(),
19727
+ status: z41.enum(["active", "draft", "cancelled"]),
19728
+ sessionsCount: z41.number(),
19729
+ enrolledCount: z41.number(),
19730
+ availableSpots: z41.number().nullable(),
19731
+ sessions: z41.array(courseSessionSchema),
19732
+ venue: courseVenueSchema.nullable(),
19733
+ contentEntryId: z41.string().nullable()
19744
19734
  });
19745
- var courseSessionSchema = z42.object({
19735
+ var publicCoursesArraySchema = z41.array(publicCourseSchema);
19736
+
19737
+ // ../blocks/src/system/blocks/events/shared/schemas.ts
19738
+ var eventPresetSchema = z42.enum(["event", "class", "workshop", "retreat", "performance"]);
19739
+ var eventScheduleScopeSchema = z42.enum(["recurring", "oneOff"]);
19740
+ var eventVenueSchema = z42.object({
19746
19741
  id: z42.string(),
19747
- startsAt: z42.string(),
19748
- endsAt: z42.string(),
19749
- timeZone: z42.string(),
19750
- capacityOverride: z42.number().nullable().optional(),
19751
- overrides: z42.record(z42.string(), z42.unknown()).nullable().optional()
19742
+ name: z42.string(),
19743
+ address: z42.string().nullable(),
19744
+ location: z42.object({
19745
+ lat: z42.number(),
19746
+ lng: z42.number()
19747
+ }).nullable()
19752
19748
  });
19753
- var courseTeamMemberSummarySchema = z42.object({
19749
+ var eventCategorySchema = z42.object({
19754
19750
  id: z42.string(),
19755
19751
  name: z42.string(),
19756
- roleLabel: z42.string().nullable(),
19757
- summary: z42.string().nullable(),
19758
- profilePath: z42.string().nullable()
19752
+ color: z42.string().nullable()
19759
19753
  });
19760
- var coursePricingOptionSchema = z42.object({
19754
+ var pricingTypeSchema = z42.enum(["free", "paid", "pass_only", "membership_only"]);
19755
+ var accessRestrictionSchema = z42.enum(["none", "category"]);
19756
+ var eventPricingModeSchema = z42.enum(["single", "ticket_types"]);
19757
+ var publicEventAttendanceModeSchema = z42.enum(["in_person", "online"]);
19758
+ var publicEventAttendanceModeAvailabilitySchema = z42.object({
19759
+ mode: publicEventAttendanceModeSchema,
19760
+ capacity: z42.number().nullable(),
19761
+ registeredCount: z42.number(),
19762
+ availableSpots: z42.number().nullable(),
19763
+ waitlistEnabled: z42.boolean()
19764
+ });
19765
+ var publicEventTicketTypeAvailabilitySchema = z42.union([
19766
+ z42.object({
19767
+ kind: z42.literal("available"),
19768
+ remainingCapacity: z42.number().nullable()
19769
+ }),
19770
+ z42.object({
19771
+ kind: z42.literal("unavailable"),
19772
+ reason: z42.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
19773
+ remainingCapacity: z42.number().nullable()
19774
+ })
19775
+ ]);
19776
+ var publicEventTicketTypeSchema = z42.object({
19761
19777
  id: z42.string(),
19778
+ siteId: z42.string(),
19779
+ eventSeriesId: z42.string(),
19762
19780
  name: z42.string(),
19763
19781
  description: z42.string().nullable(),
19764
19782
  priceAmount: z42.number(),
19765
19783
  isActive: z42.boolean(),
19766
19784
  sortOrder: z42.number(),
19785
+ capacityMode: z42.enum(["limited", "unlimited"]),
19767
19786
  capacityLimit: z42.number().nullable(),
19787
+ attendanceScope: z42.enum(["in_person", "online", "both"]).optional(),
19768
19788
  saleStartsAt: z42.string().nullable(),
19769
19789
  saleEndsAt: z42.string().nullable(),
19770
- attendanceScope: z42.enum(["in_person", "online", "both"]).nullable().optional()
19771
- });
19772
- var coursePricingSchema = z42.object({
19773
- bookingRequirement: z42.enum(["none", "required"]),
19774
- pricingStrategy: z42.enum(["free", "single", "tiered"]),
19775
- currency: z42.string(),
19776
- singlePriceAmount: z42.number().nullable(),
19777
- paymentTerms: blockBookingPaymentTermsSchema,
19778
- options: z42.array(coursePricingOptionSchema)
19779
- });
19780
- var publicCourseSchema = z42.object({
19781
- id: z42.string(),
19782
- title: z42.string(),
19783
- slug: z42.string(),
19784
- description: z42.unknown().nullable(),
19785
- teamMembers: z42.array(courseTeamMemberSummarySchema).optional(),
19786
- enrollmentOpen: z42.boolean(),
19787
- pricing: coursePricingSchema.optional(),
19788
- priceCents: z42.number().nullable(),
19789
- currency: z42.string(),
19790
- paymentTerms: blockBookingPaymentTermsSchema,
19791
- enrollmentCapacity: z42.number().nullable(),
19792
- acceptsMemberships: z42.boolean(),
19793
- status: z42.enum(["active", "draft", "cancelled"]),
19794
- sessionsCount: z42.number(),
19795
- enrolledCount: z42.number(),
19796
- availableSpots: z42.number().nullable(),
19797
- sessions: z42.array(courseSessionSchema),
19798
- venue: courseVenueSchema.nullable(),
19799
- contentEntryId: z42.string().nullable()
19800
- });
19801
- var publicCoursesArraySchema = z42.array(publicCourseSchema);
19802
-
19803
- // ../blocks/src/system/blocks/events/shared/schemas.ts
19804
- var eventPresetSchema = z43.enum(["event", "class", "workshop", "retreat", "performance"]);
19805
- var eventScheduleScopeSchema = z43.enum(["recurring", "oneOff"]);
19806
- var eventVenueSchema = z43.object({
19807
- id: z43.string(),
19808
- name: z43.string(),
19809
- address: z43.string().nullable(),
19810
- location: z43.object({
19811
- lat: z43.number(),
19812
- lng: z43.number()
19813
- }).nullable()
19814
- });
19815
- var eventCategorySchema = z43.object({
19816
- id: z43.string(),
19817
- name: z43.string(),
19818
- color: z43.string().nullable()
19819
- });
19820
- var pricingTypeSchema = z43.enum(["free", "paid", "pass_only", "membership_only"]);
19821
- var accessRestrictionSchema = z43.enum(["none", "category"]);
19822
- var eventPricingModeSchema = z43.enum(["single", "ticket_types"]);
19823
- var publicEventAttendanceModeSchema = z43.enum(["in_person", "online"]);
19824
- var publicEventAttendanceModeAvailabilitySchema = z43.object({
19825
- mode: publicEventAttendanceModeSchema,
19826
- capacity: z43.number().nullable(),
19827
- registeredCount: z43.number(),
19828
- availableSpots: z43.number().nullable(),
19829
- waitlistEnabled: z43.boolean()
19830
- });
19831
- var publicEventTicketTypeAvailabilitySchema = z43.union([
19832
- z43.object({
19833
- kind: z43.literal("available"),
19834
- remainingCapacity: z43.number().nullable()
19835
- }),
19836
- z43.object({
19837
- kind: z43.literal("unavailable"),
19838
- reason: z43.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
19839
- remainingCapacity: z43.number().nullable()
19840
- })
19841
- ]);
19842
- var publicEventTicketTypeSchema = z43.object({
19843
- id: z43.string(),
19844
- siteId: z43.string(),
19845
- eventSeriesId: z43.string(),
19846
- name: z43.string(),
19847
- description: z43.string().nullable(),
19848
- priceAmount: z43.number(),
19849
- isActive: z43.boolean(),
19850
- sortOrder: z43.number(),
19851
- capacityMode: z43.enum(["limited", "unlimited"]),
19852
- capacityLimit: z43.number().nullable(),
19853
- attendanceScope: z43.enum(["in_person", "online", "both"]).optional(),
19854
- saleStartsAt: z43.string().nullable(),
19855
- saleEndsAt: z43.string().nullable(),
19856
19790
  availability: publicEventTicketTypeAvailabilitySchema,
19857
- createdAt: z43.string(),
19858
- updatedAt: z43.string()
19791
+ createdAt: z42.string(),
19792
+ updatedAt: z42.string()
19859
19793
  });
19860
- var publicTeamMemberSummarySchema = z43.object({
19861
- id: z43.string(),
19862
- name: z43.string(),
19863
- roleLabel: z43.string().nullable(),
19864
- summary: z43.string().nullable(),
19865
- profilePath: z43.string().nullable()
19794
+ var publicTeamMemberSummarySchema = z42.object({
19795
+ id: z42.string(),
19796
+ name: z42.string(),
19797
+ roleLabel: z42.string().nullable(),
19798
+ summary: z42.string().nullable(),
19799
+ profilePath: z42.string().nullable()
19866
19800
  });
19867
- var publicEventSchema = z43.object({
19868
- kind: z43.enum(["event", "course_session"]).optional(),
19801
+ var publicEventSchema = z42.object({
19802
+ kind: z42.enum(["event", "course_session"]).optional(),
19869
19803
  eventPreset: eventPresetSchema.optional(),
19870
19804
  scheduleScope: eventScheduleScopeSchema.optional(),
19871
- id: z43.string(),
19872
- occurrenceId: z43.string(),
19873
- seriesId: z43.string(),
19874
- title: z43.string(),
19875
- description: z43.string().nullable(),
19876
- presentation: z43.object({
19877
- cardTitleOverride: z43.string().nullable().optional(),
19878
- summary: z43.string().nullable().optional(),
19805
+ id: z42.string(),
19806
+ occurrenceId: z42.string(),
19807
+ seriesId: z42.string(),
19808
+ title: z42.string(),
19809
+ description: z42.string().nullable(),
19810
+ presentation: z42.object({
19811
+ cardTitleOverride: z42.string().nullable().optional(),
19812
+ summary: z42.string().nullable().optional(),
19879
19813
  image: mediaSchema2.nullable().optional(),
19880
- tags: z43.array(z43.string()).optional(),
19881
- ctaLabel: z43.string().nullable().optional(),
19882
- badges: z43.array(z43.string()).optional()
19814
+ tags: z42.array(z42.string()).optional(),
19815
+ ctaLabel: z42.string().nullable().optional(),
19816
+ badges: z42.array(z42.string()).optional()
19883
19817
  }).optional(),
19884
- slug: z43.string(),
19885
- path: z43.string(),
19886
- requiresRegistration: z43.boolean(),
19887
- deliveryMode: z43.enum(["in_person", "online", "hybrid"]),
19888
- attendanceModes: z43.array(publicEventAttendanceModeAvailabilitySchema),
19889
- startsAt: z43.string(),
19890
- endsAt: z43.string(),
19891
- capacity: z43.number().nullable(),
19892
- registeredCount: z43.number(),
19893
- availableSpots: z43.number().nullable(),
19894
- waitlistEnabled: z43.boolean(),
19818
+ slug: z42.string(),
19819
+ path: z42.string(),
19820
+ requiresRegistration: z42.boolean(),
19821
+ deliveryMode: z42.enum(["in_person", "online", "hybrid"]),
19822
+ attendanceModes: z42.array(publicEventAttendanceModeAvailabilitySchema),
19823
+ startsAt: z42.string(),
19824
+ endsAt: z42.string(),
19825
+ capacity: z42.number().nullable(),
19826
+ registeredCount: z42.number(),
19827
+ availableSpots: z42.number().nullable(),
19828
+ waitlistEnabled: z42.boolean(),
19895
19829
  venue: eventVenueSchema.nullable(),
19896
19830
  eventCategory: eventCategorySchema.nullable(),
19897
- teamMembers: z43.array(publicTeamMemberSummarySchema).optional(),
19898
- status: z43.enum(["active", "draft", "archived"]).optional(),
19899
- timeZone: z43.string(),
19831
+ teamMembers: z42.array(publicTeamMemberSummarySchema).optional(),
19832
+ status: z42.enum(["active", "draft", "archived"]).optional(),
19833
+ timeZone: z42.string(),
19900
19834
  // Pricing & access fields
19901
19835
  pricingType: pricingTypeSchema,
19902
- price: z43.number().nullable(),
19903
- currency: z43.string(),
19836
+ price: z42.number().nullable(),
19837
+ currency: z42.string(),
19904
19838
  paymentTerms: blockBookingPaymentTermsSchema,
19905
19839
  pricingMode: eventPricingModeSchema.optional(),
19906
- ticketTypes: z43.array(publicEventTicketTypeSchema).optional(),
19840
+ ticketTypes: z42.array(publicEventTicketTypeSchema).optional(),
19907
19841
  accessRestriction: accessRestrictionSchema,
19908
- allowedCategoryIds: z43.array(z43.string()),
19909
- requireGuestDetails: z43.boolean().optional(),
19910
- acceptsPasses: z43.boolean().optional(),
19911
- acceptsMemberships: z43.boolean().optional(),
19912
- course: z43.object({
19913
- id: z43.string(),
19842
+ allowedCategoryIds: z42.array(z42.string()),
19843
+ requireGuestDetails: z42.boolean().optional(),
19844
+ acceptsPasses: z42.boolean().optional(),
19845
+ acceptsMemberships: z42.boolean().optional(),
19846
+ course: z42.object({
19847
+ id: z42.string(),
19914
19848
  pricing: coursePricingSchema.optional(),
19915
- priceCents: z43.number().nullable(),
19916
- currency: z43.string(),
19917
- enrollmentOpen: z43.boolean()
19849
+ priceCents: z42.number().nullable(),
19850
+ currency: z42.string(),
19851
+ enrollmentOpen: z42.boolean()
19918
19852
  }).nullable().optional()
19919
19853
  });
19920
- var publicEventsArraySchema = z43.array(publicEventSchema);
19854
+ var publicEventsArraySchema = z42.array(publicEventSchema);
19921
19855
 
19922
19856
  // ../blocks/src/system/blocks/events/shared/fields.ts
19923
19857
  var cardStylingFields = [
@@ -20121,83 +20055,83 @@ function normalizeEventStaffMemberId(value) {
20121
20055
  }
20122
20056
 
20123
20057
  // ../blocks/src/system/blocks/event-registration.shared.ts
20124
- import { z as z44 } from "zod";
20125
- var occurrenceContextSchema = z44.object({
20126
- id: z44.string(),
20127
- seriesId: z44.string(),
20128
- startsAt: z44.string(),
20129
- endsAt: z44.string(),
20130
- timeZone: z44.string(),
20131
- capacityOverride: z44.number().nullable().optional(),
20132
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
20058
+ import { z as z43 } from "zod";
20059
+ var occurrenceContextSchema = z43.object({
20060
+ id: z43.string(),
20061
+ seriesId: z43.string(),
20062
+ startsAt: z43.string(),
20063
+ endsAt: z43.string(),
20064
+ timeZone: z43.string(),
20065
+ capacityOverride: z43.number().nullable().optional(),
20066
+ overrides: z43.record(z43.string(), z43.unknown()).nullable().optional()
20133
20067
  }).nullable();
20134
20068
 
20135
20069
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20136
- import { z as z46 } from "zod";
20070
+ import { z as z45 } from "zod";
20137
20071
 
20138
20072
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
20139
- import { z as z45 } from "zod";
20140
- var previewStageSchema = z45.enum(["preview", "published"]);
20141
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
20142
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
20143
- var eventLayoutSchema = z45.enum(["grid", "stack", "compact"]);
20144
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
20145
- var weekStartSchema = z45.enum(["sunday", "monday"]);
20146
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
20147
- var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
20073
+ import { z as z44 } from "zod";
20074
+ var previewStageSchema = z44.enum(["preview", "published"]);
20075
+ var registrationButtonVariantSchema = z44.enum(["primary", "secondary", "outline"]);
20076
+ var eventButtonVariantSchema = z44.enum(["primary", "secondary", "outline", "link"]);
20077
+ var eventLayoutSchema = z44.enum(["grid", "stack", "compact"]);
20078
+ var columnOptionSchema = z44.enum(["2", "3", "4"]);
20079
+ var weekStartSchema = z44.enum(["sunday", "monday"]);
20080
+ var filterAutoShowSchema = z44.enum(["auto", "always", "never"]);
20081
+ var calendarTabViewsSchema = z44.enum(["both", "month", "week"]);
20148
20082
 
20149
20083
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
20150
- var contentEntrySchema = z46.object({
20151
- id: z46.string(),
20152
- slug: z46.string(),
20153
- contentTypeSlug: z46.string()
20154
- });
20155
- var eventRegistrationSourceSchema = z46.object({
20156
- siteId: z46.string().optional(),
20157
- apiBaseUrl: z46.string().optional(),
20158
- portalToken: z46.string().nullable().optional(),
20084
+ var contentEntrySchema = z45.object({
20085
+ id: z45.string(),
20086
+ slug: z45.string(),
20087
+ contentTypeSlug: z45.string()
20088
+ });
20089
+ var eventRegistrationSourceSchema = z45.object({
20090
+ siteId: z45.string().optional(),
20091
+ apiBaseUrl: z45.string().optional(),
20092
+ portalToken: z45.string().nullable().optional(),
20159
20093
  occurrenceContext: occurrenceContextSchema.optional(),
20160
20094
  contentEntry: contentEntrySchema.nullable().optional(),
20161
- events: z46.array(publicEventSchema).nullable().optional(),
20162
- className: z46.string().nullable().optional(),
20163
- buttonText: z46.string().nullable().optional(),
20164
- maxTickets: z46.string().nullable().optional(),
20165
- showVenue: z46.boolean().optional(),
20166
- showCapacity: z46.boolean().optional(),
20167
- successMessage: z46.string().optional(),
20168
- waitlistMessage: z46.string().optional(),
20095
+ events: z45.array(publicEventSchema).nullable().optional(),
20096
+ className: z45.string().nullable().optional(),
20097
+ buttonText: z45.string().nullable().optional(),
20098
+ maxTickets: z45.string().nullable().optional(),
20099
+ showVenue: z45.boolean().optional(),
20100
+ showCapacity: z45.boolean().optional(),
20101
+ successMessage: z45.string().optional(),
20102
+ waitlistMessage: z45.string().optional(),
20169
20103
  buttonVariant: registrationButtonVariantSchema.optional(),
20170
- spamProtectionEnabled: z46.boolean().optional(),
20104
+ spamProtectionEnabled: z45.boolean().optional(),
20171
20105
  stage: previewStageSchema.optional(),
20172
- supportEmail: z46.string().optional()
20106
+ supportEmail: z45.string().optional()
20173
20107
  });
20174
- var eventRegistrationDisplaySchema = z46.object({
20175
- kind: z46.literal("event-registration"),
20176
- state: z46.literal("shell"),
20177
- className: z46.string().nullable(),
20178
- summaryButtonText: z46.string()
20108
+ var eventRegistrationDisplaySchema = z45.object({
20109
+ kind: z45.literal("event-registration"),
20110
+ state: z45.literal("shell"),
20111
+ className: z45.string().nullable(),
20112
+ summaryButtonText: z45.string()
20179
20113
  });
20180
- var eventRegistrationHydrationSchema = z46.object({
20114
+ var eventRegistrationHydrationSchema = z45.object({
20181
20115
  occurrenceContext: occurrenceContextSchema.optional(),
20182
20116
  contentEntry: contentEntrySchema.nullable().optional(),
20183
- events: z46.array(publicEventSchema).nullable().optional(),
20184
- maxTickets: z46.string().optional(),
20185
- showVenue: z46.boolean().optional(),
20186
- showCapacity: z46.boolean().optional(),
20187
- successMessage: z46.string().optional(),
20188
- waitlistMessage: z46.string().optional(),
20117
+ events: z45.array(publicEventSchema).nullable().optional(),
20118
+ maxTickets: z45.string().optional(),
20119
+ showVenue: z45.boolean().optional(),
20120
+ showCapacity: z45.boolean().optional(),
20121
+ successMessage: z45.string().optional(),
20122
+ waitlistMessage: z45.string().optional(),
20189
20123
  buttonVariant: registrationButtonVariantSchema.optional(),
20190
- spamProtectionEnabled: z46.boolean().optional(),
20191
- supportEmail: z46.string().optional()
20124
+ spamProtectionEnabled: z45.boolean().optional(),
20125
+ supportEmail: z45.string().optional()
20192
20126
  });
20193
- var eventRegistrationRenderSchema = z46.object({
20127
+ var eventRegistrationRenderSchema = z45.object({
20194
20128
  display: eventRegistrationDisplaySchema,
20195
20129
  hydration: eventRegistrationHydrationSchema
20196
20130
  });
20197
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
20198
- siteId: z46.string().optional(),
20199
- apiBaseUrl: z46.string().optional(),
20200
- portalToken: z46.string().nullable().optional(),
20131
+ var eventRegistrationIslandMetaCodec = createZodCodec(z45.object({
20132
+ siteId: z45.string().optional(),
20133
+ apiBaseUrl: z45.string().optional(),
20134
+ portalToken: z45.string().nullable().optional(),
20201
20135
  stage: previewStageSchema.optional()
20202
20136
  }));
20203
20137
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20414,7 +20348,7 @@ var eventRegistrationBlockDefinition = {
20414
20348
  manifest: eventRegistrationManifest,
20415
20349
  runtime: eventRegistrationBlockRuntime,
20416
20350
  dataSchemas: {
20417
- events: z47.array(publicEventSchema).optional(),
20351
+ events: z46.array(publicEventSchema).optional(),
20418
20352
  occurrenceContext: occurrenceContextSchema.optional()
20419
20353
  },
20420
20354
  dataLoaders: {
@@ -20437,72 +20371,72 @@ var eventRegistrationBlockDefinition = {
20437
20371
  };
20438
20372
 
20439
20373
  // ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
20440
- import { z as z48 } from "zod";
20441
- var contentEntrySchema2 = z48.object({
20442
- id: z48.string(),
20443
- slug: z48.string(),
20444
- contentTypeSlug: z48.string()
20445
- });
20446
- var courseEntrySubrouteContextSchema = z48.union([
20447
- z48.object({
20448
- kind: z48.literal("course-run"),
20449
- run: z48.object({
20450
- courseId: z48.string(),
20451
- seriesId: z48.string(),
20452
- runSlug: z48.string()
20374
+ import { z as z47 } from "zod";
20375
+ var contentEntrySchema2 = z47.object({
20376
+ id: z47.string(),
20377
+ slug: z47.string(),
20378
+ contentTypeSlug: z47.string()
20379
+ });
20380
+ var courseEntrySubrouteContextSchema = z47.union([
20381
+ z47.object({
20382
+ kind: z47.literal("course-run"),
20383
+ run: z47.object({
20384
+ courseId: z47.string(),
20385
+ seriesId: z47.string(),
20386
+ runSlug: z47.string()
20453
20387
  })
20454
20388
  }),
20455
- z48.object({
20456
- kind: z48.literal("event-occurrence"),
20389
+ z47.object({
20390
+ kind: z47.literal("event-occurrence"),
20457
20391
  occurrence: occurrenceContextSchema
20458
20392
  })
20459
20393
  ]);
20460
- var courseRegistrationSourceSchema = z48.object({
20461
- siteId: z48.string().optional(),
20462
- apiBaseUrl: z48.string().optional(),
20463
- portalToken: z48.string().nullable().optional(),
20394
+ var courseRegistrationSourceSchema = z47.object({
20395
+ siteId: z47.string().optional(),
20396
+ apiBaseUrl: z47.string().optional(),
20397
+ portalToken: z47.string().nullable().optional(),
20464
20398
  contentEntry: contentEntrySchema2.nullable().optional(),
20465
20399
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20466
- courses: z48.array(publicCourseSchema).nullable().optional(),
20467
- className: z48.string().nullable().optional(),
20468
- showSessions: z48.boolean().optional(),
20469
- showPrice: z48.boolean().optional(),
20470
- showCapacity: z48.boolean().optional(),
20471
- showVenue: z48.boolean().optional(),
20472
- successMessage: z48.string().optional(),
20473
- waitlistMessage: z48.string().optional(),
20474
- membershipMessage: z48.string().optional(),
20475
- buttonText: z48.string().nullable().optional(),
20400
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20401
+ className: z47.string().nullable().optional(),
20402
+ showSessions: z47.boolean().optional(),
20403
+ showPrice: z47.boolean().optional(),
20404
+ showCapacity: z47.boolean().optional(),
20405
+ showVenue: z47.boolean().optional(),
20406
+ successMessage: z47.string().optional(),
20407
+ waitlistMessage: z47.string().optional(),
20408
+ membershipMessage: z47.string().optional(),
20409
+ buttonText: z47.string().nullable().optional(),
20476
20410
  buttonVariant: registrationButtonVariantSchema.optional(),
20477
20411
  stage: previewStageSchema.optional()
20478
20412
  });
20479
- var courseRegistrationDisplaySchema = z48.object({
20480
- kind: z48.literal("course-registration"),
20481
- state: z48.literal("shell"),
20482
- className: z48.string().nullable(),
20483
- summaryButtonText: z48.string()
20413
+ var courseRegistrationDisplaySchema = z47.object({
20414
+ kind: z47.literal("course-registration"),
20415
+ state: z47.literal("shell"),
20416
+ className: z47.string().nullable(),
20417
+ summaryButtonText: z47.string()
20484
20418
  });
20485
- var courseRegistrationHydrationSchema = z48.object({
20419
+ var courseRegistrationHydrationSchema = z47.object({
20486
20420
  contentEntry: contentEntrySchema2.nullable().optional(),
20487
20421
  entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
20488
- courses: z48.array(publicCourseSchema).nullable().optional(),
20489
- showSessions: z48.boolean().optional(),
20490
- showPrice: z48.boolean().optional(),
20491
- showCapacity: z48.boolean().optional(),
20492
- showVenue: z48.boolean().optional(),
20493
- successMessage: z48.string().optional(),
20494
- waitlistMessage: z48.string().optional(),
20495
- membershipMessage: z48.string().optional(),
20422
+ courses: z47.array(publicCourseSchema).nullable().optional(),
20423
+ showSessions: z47.boolean().optional(),
20424
+ showPrice: z47.boolean().optional(),
20425
+ showCapacity: z47.boolean().optional(),
20426
+ showVenue: z47.boolean().optional(),
20427
+ successMessage: z47.string().optional(),
20428
+ waitlistMessage: z47.string().optional(),
20429
+ membershipMessage: z47.string().optional(),
20496
20430
  buttonVariant: registrationButtonVariantSchema.optional()
20497
20431
  });
20498
- var courseRegistrationRenderSchema = z48.object({
20432
+ var courseRegistrationRenderSchema = z47.object({
20499
20433
  display: courseRegistrationDisplaySchema,
20500
20434
  hydration: courseRegistrationHydrationSchema
20501
20435
  });
20502
- var courseRegistrationIslandMetaCodec = createZodCodec(z48.object({
20503
- siteId: z48.string().optional(),
20504
- apiBaseUrl: z48.string().optional(),
20505
- portalToken: z48.string().nullable().optional(),
20436
+ var courseRegistrationIslandMetaCodec = createZodCodec(z47.object({
20437
+ siteId: z47.string().optional(),
20438
+ apiBaseUrl: z47.string().optional(),
20439
+ portalToken: z47.string().nullable().optional(),
20506
20440
  stage: previewStageSchema.optional()
20507
20441
  }));
20508
20442
  var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -20762,32 +20696,32 @@ var courseRegistrationBlockDefinition = {
20762
20696
  };
20763
20697
 
20764
20698
  // ../blocks/src/system/blocks/event-details.ts
20765
- import { z as z50 } from "zod";
20699
+ import { z as z49 } from "zod";
20766
20700
 
20767
20701
  // ../blocks/src/system/blocks/shop.shared.ts
20768
- import { z as z49 } from "zod";
20769
- var publicPassProductSchema = z49.object({
20770
- id: z49.string(),
20771
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
20772
- name: z49.string(),
20773
- description: z49.string().nullable(),
20774
- price: z49.number(),
20775
- currency: z49.string(),
20776
- creditsTotal: z49.number(),
20777
- pricePerCredit: z49.number(),
20778
- validDays: z49.number().nullable(),
20779
- eligibleCategoryIds: z49.array(z49.string()),
20780
- eligibleCategoryNames: z49.array(z49.string())
20781
- });
20782
- var publicMembershipProductSchema = z49.object({
20783
- id: z49.string(),
20784
- name: z49.string(),
20785
- description: z49.string().nullable(),
20786
- price: z49.number(),
20787
- currency: z49.string(),
20788
- billingInterval: z49.enum(["month", "year"]),
20789
- eligibleCategoryIds: z49.array(z49.string()),
20790
- eligibleCategoryNames: z49.array(z49.string())
20702
+ import { z as z48 } from "zod";
20703
+ var publicPassProductSchema = z48.object({
20704
+ id: z48.string(),
20705
+ productUseCase: z48.enum(["event_pass", "appointment_package"]).default("event_pass"),
20706
+ name: z48.string(),
20707
+ description: z48.string().nullable(),
20708
+ price: z48.number(),
20709
+ currency: z48.string(),
20710
+ creditsTotal: z48.number(),
20711
+ pricePerCredit: z48.number(),
20712
+ validDays: z48.number().nullable(),
20713
+ eligibleCategoryIds: z48.array(z48.string()),
20714
+ eligibleCategoryNames: z48.array(z48.string())
20715
+ });
20716
+ var publicMembershipProductSchema = z48.object({
20717
+ id: z48.string(),
20718
+ name: z48.string(),
20719
+ description: z48.string().nullable(),
20720
+ price: z48.number(),
20721
+ currency: z48.string(),
20722
+ billingInterval: z48.enum(["month", "year"]),
20723
+ eligibleCategoryIds: z48.array(z48.string()),
20724
+ eligibleCategoryNames: z48.array(z48.string())
20791
20725
  });
20792
20726
 
20793
20727
  // ../blocks/src/system/blocks/event-details.ts
@@ -20919,22 +20853,22 @@ var eventDetailsManifest = createBlockManifest({
20919
20853
  })
20920
20854
  ]
20921
20855
  });
20922
- var occurrenceContextSchema2 = z50.object({
20923
- id: z50.string(),
20924
- seriesId: z50.string(),
20925
- startsAt: z50.string(),
20926
- endsAt: z50.string(),
20927
- timeZone: z50.string(),
20928
- capacityOverride: z50.number().nullable().optional(),
20929
- overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
20856
+ var occurrenceContextSchema2 = z49.object({
20857
+ id: z49.string(),
20858
+ seriesId: z49.string(),
20859
+ startsAt: z49.string(),
20860
+ endsAt: z49.string(),
20861
+ timeZone: z49.string(),
20862
+ capacityOverride: z49.number().nullable().optional(),
20863
+ overrides: z49.record(z49.string(), z49.unknown()).nullable().optional()
20930
20864
  }).nullable();
20931
20865
  var eventDetailsBlockDefinition = {
20932
20866
  manifest: eventDetailsManifest,
20933
20867
  dataSchemas: {
20934
- eventDetailsData: z50.object({
20868
+ eventDetailsData: z49.object({
20935
20869
  events: publicEventsArraySchema,
20936
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
20937
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) })
20870
+ sitePasses: z49.object({ passes: z49.array(publicPassProductSchema) }),
20871
+ siteMemberships: z49.object({ memberships: z49.array(publicMembershipProductSchema) })
20938
20872
  }).optional(),
20939
20873
  occurrenceContext: occurrenceContextSchema2.optional()
20940
20874
  },
@@ -21253,7 +21187,7 @@ var eventSpotlightBlockDefinition = {
21253
21187
  };
21254
21188
 
21255
21189
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21256
- import { z as z51 } from "zod";
21190
+ import { z as z50 } from "zod";
21257
21191
 
21258
21192
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
21259
21193
  var COLUMN_CLASSES = {
@@ -21360,87 +21294,87 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
21360
21294
  }
21361
21295
 
21362
21296
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
21363
- var cardVariantSchema2 = z51.enum(["default", "variant1", "variant2"]);
21364
- var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
21365
- var eventBlockKindSchema = z51.enum(eventBlockKindValues);
21366
- var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
21367
- var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
21368
- var eventListingSourceSchema = z51.object({
21369
- events: z51.array(publicEventSchema).nullable().optional(),
21370
- siteId: z51.string(),
21371
- apiBaseUrl: z51.string().optional(),
21297
+ var cardVariantSchema2 = z50.enum(["default", "variant1", "variant2"]);
21298
+ var cardOrientationSchema = z50.enum(["vertical", "horizontal"]);
21299
+ var eventBlockKindSchema = z50.enum(eventBlockKindValues);
21300
+ var eventSurfaceScopeSchema = z50.enum(eventSurfaceScopeValues);
21301
+ var eventScheduleScopeSchema2 = z50.enum(eventScheduleScopeValues);
21302
+ var eventListingSourceSchema = z50.object({
21303
+ events: z50.array(publicEventSchema).nullable().optional(),
21304
+ siteId: z50.string(),
21305
+ apiBaseUrl: z50.string().optional(),
21372
21306
  stage: previewStageSchema.optional(),
21373
21307
  layout: eventLayoutSchema.optional(),
21374
21308
  columns: columnOptionSchema.optional(),
21375
- eventsPerPage: z51.string().optional(),
21376
- paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
21377
- seeAllUrl: z51.string().optional(),
21378
- loadMoreText: z51.string().optional(),
21309
+ eventsPerPage: z50.string().optional(),
21310
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]).optional(),
21311
+ seeAllUrl: z50.string().optional(),
21312
+ loadMoreText: z50.string().optional(),
21379
21313
  cardVariant: cardVariantSchema2.optional(),
21380
21314
  buttonVariant: eventButtonVariantSchema.optional(),
21381
- buttonText: z51.string().optional(),
21382
- showVenue: z51.boolean().optional(),
21383
- showMap: z51.boolean().optional(),
21384
- showCapacity: z51.boolean().optional(),
21385
- emptyMessage: z51.string().optional(),
21386
- className: z51.string().optional(),
21387
- showFilters: z51.boolean().nullable().optional(),
21315
+ buttonText: z50.string().optional(),
21316
+ showVenue: z50.boolean().optional(),
21317
+ showMap: z50.boolean().optional(),
21318
+ showCapacity: z50.boolean().optional(),
21319
+ emptyMessage: z50.string().optional(),
21320
+ className: z50.string().optional(),
21321
+ showFilters: z50.boolean().nullable().optional(),
21388
21322
  showCategoryFilter: filterAutoShowSchema.optional(),
21389
- showVenueFilter: z51.boolean().nullable().optional(),
21390
- showStaffFilter: z51.boolean().nullable().optional(),
21323
+ showVenueFilter: z50.boolean().nullable().optional(),
21324
+ showStaffFilter: z50.boolean().nullable().optional(),
21391
21325
  eventKind: eventBlockKindSchema.nullable().optional(),
21392
21326
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
21393
- filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21327
+ filterEventPresets: z50.union([z50.string(), z50.array(z50.string())]).nullable().optional(),
21394
21328
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
21395
- filterCategoryIds: z51.string().nullable().optional(),
21396
- filterStaffMemberId: z51.string().nullable().optional(),
21397
- filterVenueId: z51.string().nullable().optional()
21329
+ filterCategoryIds: z50.string().nullable().optional(),
21330
+ filterStaffMemberId: z50.string().nullable().optional(),
21331
+ filterVenueId: z50.string().nullable().optional()
21398
21332
  });
21399
- var eventListingDisplaySchema = z51.object({
21400
- kind: z51.literal("event-listing"),
21401
- state: z51.enum(["loading", "empty", "ready"]),
21333
+ var eventListingDisplaySchema = z50.object({
21334
+ kind: z50.literal("event-listing"),
21335
+ state: z50.enum(["loading", "empty", "ready"]),
21402
21336
  listLayout: eventLayoutSchema,
21403
- className: z51.string().nullable(),
21404
- emptyMessage: z51.string(),
21405
- loadingMessage: z51.string(),
21406
- containerClass: z51.string(),
21337
+ className: z50.string().nullable(),
21338
+ emptyMessage: z50.string(),
21339
+ loadingMessage: z50.string(),
21340
+ containerClass: z50.string(),
21407
21341
  cardVariant: cardVariantSchema2,
21408
21342
  buttonVariant: eventButtonVariantSchema,
21409
- buttonText: z51.string(),
21410
- showVenue: z51.boolean(),
21411
- showMap: z51.boolean(),
21412
- showCapacity: z51.boolean(),
21343
+ buttonText: z50.string(),
21344
+ showVenue: z50.boolean(),
21345
+ showMap: z50.boolean(),
21346
+ showCapacity: z50.boolean(),
21413
21347
  orientation: cardOrientationSchema,
21414
- events: z51.array(publicEventSchema)
21348
+ events: z50.array(publicEventSchema)
21415
21349
  });
21416
- var eventListingHydrationSchema = z51.object({
21417
- siteId: z51.string(),
21350
+ var eventListingHydrationSchema = z50.object({
21351
+ siteId: z50.string(),
21418
21352
  stage: previewStageSchema.optional(),
21419
- eventsPerPage: z51.string(),
21420
- paginationMode: z51.enum(["loadMore", "seeAllLink"]),
21421
- seeAllUrl: z51.string().optional(),
21422
- loadMoreText: z51.string(),
21423
- showFilters: z51.boolean(),
21353
+ eventsPerPage: z50.string(),
21354
+ paginationMode: z50.enum(["loadMore", "seeAllLink"]),
21355
+ seeAllUrl: z50.string().optional(),
21356
+ loadMoreText: z50.string(),
21357
+ showFilters: z50.boolean(),
21424
21358
  showCategoryFilter: filterAutoShowSchema,
21425
- showVenueFilter: z51.boolean(),
21426
- showStaffFilter: z51.boolean(),
21359
+ showVenueFilter: z50.boolean(),
21360
+ showStaffFilter: z50.boolean(),
21427
21361
  eventKind: eventBlockKindSchema,
21428
21362
  eventSurface: eventSurfaceScopeSchema,
21429
- filterEventPresets: z51.string().nullable(),
21363
+ filterEventPresets: z50.string().nullable(),
21430
21364
  scheduleScope: eventScheduleScopeSchema2,
21431
- filterCategoryIds: z51.string().nullable().optional(),
21432
- filterStaffMemberId: z51.string().nullable().optional(),
21433
- filterVenueId: z51.string().nullable().optional(),
21434
- fetchInitialEventsOnMount: z51.boolean()
21365
+ filterCategoryIds: z50.string().nullable().optional(),
21366
+ filterStaffMemberId: z50.string().nullable().optional(),
21367
+ filterVenueId: z50.string().nullable().optional(),
21368
+ fetchInitialEventsOnMount: z50.boolean()
21435
21369
  });
21436
- var eventListingRenderSchema = z51.object({
21370
+ var eventListingRenderSchema = z50.object({
21437
21371
  display: eventListingDisplaySchema,
21438
21372
  hydration: eventListingHydrationSchema
21439
21373
  });
21440
21374
  var eventListingIslandMetaCodec = createZodCodec(
21441
- z51.object({
21442
- siteId: z51.string(),
21443
- apiBaseUrl: z51.string().optional(),
21375
+ z50.object({
21376
+ siteId: z50.string(),
21377
+ apiBaseUrl: z50.string().optional(),
21444
21378
  stage: previewStageSchema.optional()
21445
21379
  })
21446
21380
  );
@@ -21759,93 +21693,93 @@ var eventListingBlockDefinition = {
21759
21693
  };
21760
21694
 
21761
21695
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
21762
- import { z as z52 } from "zod";
21763
- var displayModeSchema = z52.enum(["combined", "month", "week", "list", "timetable"]);
21764
- var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
21765
- var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
21766
- var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
21767
- var eventCalendarSourceSchema = z52.object(
21696
+ import { z as z51 } from "zod";
21697
+ var displayModeSchema = z51.enum(["combined", "month", "week", "list", "timetable"]);
21698
+ var eventBlockKindSchema2 = z51.enum(eventBlockKindValues);
21699
+ var eventSurfaceScopeSchema2 = z51.enum(eventSurfaceScopeValues);
21700
+ var eventScheduleScopeSchema3 = z51.enum(eventScheduleScopeValues);
21701
+ var eventCalendarSourceSchema = z51.object(
21768
21702
  {
21769
- events: z52.array(publicEventSchema).nullable().optional(),
21770
- siteId: z52.string(),
21771
- apiBaseUrl: z52.string().optional(),
21703
+ events: z51.array(publicEventSchema).nullable().optional(),
21704
+ siteId: z51.string(),
21705
+ apiBaseUrl: z51.string().optional(),
21772
21706
  stage: previewStageSchema.optional(),
21773
21707
  displayMode: displayModeSchema.nullable().optional(),
21774
21708
  listLayout: eventLayoutSchema.optional(),
21775
21709
  listColumns: columnOptionSchema.optional(),
21776
21710
  layout: eventLayoutSchema.optional(),
21777
21711
  columns: columnOptionSchema.optional(),
21778
- eventsPerPage: z52.string().optional(),
21779
- compactEventsPerPage: z52.string().optional(),
21780
- loadMoreText: z52.string().optional(),
21712
+ eventsPerPage: z51.string().optional(),
21713
+ compactEventsPerPage: z51.string().optional(),
21714
+ loadMoreText: z51.string().optional(),
21781
21715
  startOfWeek: weekStartSchema.optional(),
21782
21716
  calendarTabViews: calendarTabViewsSchema.optional(),
21783
- showFilters: z52.boolean().nullable().optional(),
21717
+ showFilters: z51.boolean().nullable().optional(),
21784
21718
  showCategoryFilter: filterAutoShowSchema.optional(),
21785
- showVenueFilter: z52.boolean().nullable().optional(),
21786
- showStaffFilter: z52.boolean().nullable().optional(),
21719
+ showVenueFilter: z51.boolean().nullable().optional(),
21720
+ showStaffFilter: z51.boolean().nullable().optional(),
21787
21721
  kind: eventBlockKindSchema2.nullable().optional(),
21788
21722
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
21789
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21723
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21790
21724
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
21791
- filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
21792
- filterStaffMemberId: z52.string().nullable().optional(),
21793
- filterVenueId: z52.string().nullable().optional(),
21725
+ filterCategoryIds: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
21726
+ filterStaffMemberId: z51.string().nullable().optional(),
21727
+ filterVenueId: z51.string().nullable().optional(),
21794
21728
  buttonVariant: eventButtonVariantSchema.optional(),
21795
- buttonText: z52.string().optional(),
21796
- showVenue: z52.boolean().nullable().optional(),
21797
- showMap: z52.boolean().nullable().optional(),
21798
- showCapacity: z52.boolean().nullable().optional(),
21799
- emptyMessage: z52.string().optional(),
21800
- className: z52.string().optional()
21729
+ buttonText: z51.string().optional(),
21730
+ showVenue: z51.boolean().nullable().optional(),
21731
+ showMap: z51.boolean().nullable().optional(),
21732
+ showCapacity: z51.boolean().nullable().optional(),
21733
+ emptyMessage: z51.string().optional(),
21734
+ className: z51.string().optional()
21801
21735
  }
21802
21736
  );
21803
- var eventCalendarDisplaySchema = z52.object({
21804
- kind: z52.literal("event-calendar"),
21737
+ var eventCalendarDisplaySchema = z51.object({
21738
+ kind: z51.literal("event-calendar"),
21805
21739
  displayMode: displayModeSchema,
21806
- className: z52.string().nullable(),
21807
- events: z52.array(publicEventSchema),
21740
+ className: z51.string().nullable(),
21741
+ events: z51.array(publicEventSchema),
21808
21742
  listLayout: eventLayoutSchema,
21809
21743
  listColumns: columnOptionSchema,
21810
- eventsPerPage: z52.string(),
21811
- loadMoreText: z52.string(),
21744
+ eventsPerPage: z51.string(),
21745
+ loadMoreText: z51.string(),
21812
21746
  startOfWeek: weekStartSchema,
21813
21747
  calendarTabViews: calendarTabViewsSchema,
21814
- showFilters: z52.boolean(),
21748
+ showFilters: z51.boolean(),
21815
21749
  showCategoryFilter: filterAutoShowSchema,
21816
- showVenueFilter: z52.boolean(),
21817
- showStaffFilter: z52.boolean(),
21750
+ showVenueFilter: z51.boolean(),
21751
+ showStaffFilter: z51.boolean(),
21818
21752
  eventKind: eventBlockKindSchema2,
21819
21753
  eventSurface: eventSurfaceScopeSchema2,
21820
- filterEventPresets: z52.string().nullable(),
21754
+ filterEventPresets: z51.string().nullable(),
21821
21755
  scheduleScope: eventScheduleScopeSchema3,
21822
- filterCategoryIds: z52.string().nullable(),
21823
- filterStaffMemberId: z52.string().nullable(),
21824
- filterVenueId: z52.string().nullable(),
21756
+ filterCategoryIds: z51.string().nullable(),
21757
+ filterStaffMemberId: z51.string().nullable(),
21758
+ filterVenueId: z51.string().nullable(),
21825
21759
  buttonVariant: eventButtonVariantSchema,
21826
- buttonText: z52.string(),
21827
- showVenue: z52.boolean(),
21828
- showMap: z52.boolean(),
21829
- showCapacity: z52.boolean(),
21830
- emptyMessage: z52.string()
21831
- });
21832
- var eventCalendarHydrationSchema = z52.object({
21833
- siteId: z52.string(),
21760
+ buttonText: z51.string(),
21761
+ showVenue: z51.boolean(),
21762
+ showMap: z51.boolean(),
21763
+ showCapacity: z51.boolean(),
21764
+ emptyMessage: z51.string()
21765
+ });
21766
+ var eventCalendarHydrationSchema = z51.object({
21767
+ siteId: z51.string(),
21834
21768
  stage: previewStageSchema.optional(),
21835
- prefetchedEvents: z52.boolean(),
21769
+ prefetchedEvents: z51.boolean(),
21836
21770
  eventKind: eventBlockKindSchema2,
21837
21771
  eventSurface: eventSurfaceScopeSchema2,
21838
- filterEventPresets: z52.string().nullable(),
21772
+ filterEventPresets: z51.string().nullable(),
21839
21773
  scheduleScope: eventScheduleScopeSchema3
21840
21774
  });
21841
- var eventCalendarRenderSchema = z52.object({
21775
+ var eventCalendarRenderSchema = z51.object({
21842
21776
  display: eventCalendarDisplaySchema,
21843
21777
  hydration: eventCalendarHydrationSchema
21844
21778
  });
21845
21779
  var eventCalendarIslandMetaCodec = createZodCodec(
21846
- z52.object({
21847
- siteId: z52.string(),
21848
- apiBaseUrl: z52.string().optional(),
21780
+ z51.object({
21781
+ siteId: z51.string(),
21782
+ apiBaseUrl: z51.string().optional(),
21849
21783
  stage: previewStageSchema.optional()
21850
21784
  })
21851
21785
  );
@@ -22439,7 +22373,7 @@ var eventCalendarBlockDefinition = {
22439
22373
  };
22440
22374
 
22441
22375
  // ../blocks/src/system/blocks/embed.ts
22442
- import { z as z53 } from "zod";
22376
+ import { z as z52 } from "zod";
22443
22377
  var embedFields = [
22444
22378
  // Section heading
22445
22379
  parseFieldDefinition({
@@ -22670,18 +22604,18 @@ var embedManifest = createBlockManifest({
22670
22604
  spacing: "lg"
22671
22605
  }
22672
22606
  });
22673
- var embedEntrySchema = z53.object({
22674
- id: z53.string(),
22675
- identifier: z53.string(),
22676
- title: z53.string(),
22677
- slug: z53.string().nullable().optional(),
22678
- content: z53.record(z53.string(), z53.unknown()).optional(),
22679
- publishedAt: z53.string().nullable().optional()
22607
+ var embedEntrySchema = z52.object({
22608
+ id: z52.string(),
22609
+ identifier: z52.string(),
22610
+ title: z52.string(),
22611
+ slug: z52.string().nullable().optional(),
22612
+ content: z52.record(z52.string(), z52.unknown()).optional(),
22613
+ publishedAt: z52.string().nullable().optional()
22680
22614
  });
22681
22615
  var embedBlockDefinition = {
22682
22616
  manifest: embedManifest,
22683
22617
  dataSchemas: {
22684
- entries: z53.array(embedEntrySchema).optional()
22618
+ entries: z52.array(embedEntrySchema).optional()
22685
22619
  },
22686
22620
  dataLoaders: {
22687
22621
  entries: {
@@ -23856,54 +23790,54 @@ var fileDownloadBlockDefinition = {
23856
23790
  };
23857
23791
 
23858
23792
  // ../blocks/src/system/blocks/shop.ts
23859
- import { z as z57 } from "zod";
23793
+ import { z as z56 } from "zod";
23860
23794
 
23861
23795
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
23862
- import { z as z56 } from "zod";
23796
+ import { z as z55 } from "zod";
23863
23797
 
23864
23798
  // ../blocks/src/system/blocks/products/shared.ts
23865
- import { z as z54 } from "zod";
23866
- var publicProductVariantSchema = z54.object({
23867
- id: z54.string(),
23868
- title: z54.string(),
23869
- sku: z54.string().nullable(),
23870
- priceCents: z54.number(),
23871
- stockQuantity: z54.number().nullable(),
23872
- soldOut: z54.boolean()
23873
- });
23874
- var publicProductSchema = z54.object({
23875
- id: z54.string(),
23876
- contentEntryId: z54.string().nullable(),
23877
- title: z54.string(),
23878
- slug: z54.string(),
23879
- path: z54.string().nullable(),
23880
- status: z54.enum(["draft", "active"]),
23881
- priceCents: z54.number(),
23882
- currency: z54.string(),
23883
- productType: z54.enum(["physical", "digital"]),
23884
- requiresShipping: z54.boolean(),
23885
- hasVariants: z54.boolean(),
23886
- trackInventory: z54.boolean(),
23887
- soldOut: z54.boolean(),
23888
- category: z54.object({
23889
- id: z54.string(),
23890
- name: z54.string(),
23891
- slug: z54.string()
23799
+ import { z as z53 } from "zod";
23800
+ var publicProductVariantSchema = z53.object({
23801
+ id: z53.string(),
23802
+ title: z53.string(),
23803
+ sku: z53.string().nullable(),
23804
+ priceCents: z53.number(),
23805
+ stockQuantity: z53.number().nullable(),
23806
+ soldOut: z53.boolean()
23807
+ });
23808
+ var publicProductSchema = z53.object({
23809
+ id: z53.string(),
23810
+ contentEntryId: z53.string().nullable(),
23811
+ title: z53.string(),
23812
+ slug: z53.string(),
23813
+ path: z53.string().nullable(),
23814
+ status: z53.enum(["draft", "active"]),
23815
+ priceCents: z53.number(),
23816
+ currency: z53.string(),
23817
+ productType: z53.enum(["physical", "digital"]),
23818
+ requiresShipping: z53.boolean(),
23819
+ hasVariants: z53.boolean(),
23820
+ trackInventory: z53.boolean(),
23821
+ soldOut: z53.boolean(),
23822
+ category: z53.object({
23823
+ id: z53.string(),
23824
+ name: z53.string(),
23825
+ slug: z53.string()
23892
23826
  }).nullable(),
23893
- summary: z54.string().nullable(),
23894
- badges: z54.array(z54.string()),
23895
- ctaLabel: z54.string().nullable(),
23896
- body: z54.unknown().nullable(),
23897
- gallery: z54.array(
23898
- z54.object({
23899
- url: z54.string(),
23900
- alt: z54.string().nullable()
23827
+ summary: z53.string().nullable(),
23828
+ badges: z53.array(z53.string()),
23829
+ ctaLabel: z53.string().nullable(),
23830
+ body: z53.unknown().nullable(),
23831
+ gallery: z53.array(
23832
+ z53.object({
23833
+ url: z53.string(),
23834
+ alt: z53.string().nullable()
23901
23835
  })
23902
23836
  ),
23903
- variants: z54.array(publicProductVariantSchema)
23837
+ variants: z53.array(publicProductVariantSchema)
23904
23838
  });
23905
- var publicProductsResponseSchema = z54.object({
23906
- products: z54.array(publicProductSchema)
23839
+ var publicProductsResponseSchema = z53.object({
23840
+ products: z53.array(publicProductSchema)
23907
23841
  });
23908
23842
 
23909
23843
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -23967,26 +23901,26 @@ function deriveCreditProductLabels(products, options = {}) {
23967
23901
  }
23968
23902
 
23969
23903
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
23970
- import { z as z55 } from "zod";
23971
- var storedProductCartItemSchema = z55.object({
23972
- kind: z55.literal("product"),
23973
- productId: z55.string().min(1),
23974
- variantId: z55.string().min(1).optional().nullable(),
23975
- title: z55.string().min(1),
23976
- variantTitle: z55.string().optional().nullable(),
23977
- quantity: z55.number().finite(),
23978
- unitPriceCents: z55.number().finite(),
23979
- currency: z55.string().min(1),
23980
- imageUrl: z55.string().optional().nullable(),
23981
- soldOut: z55.boolean().optional()
23982
- });
23983
- var storedPassCartItemSchema = z55.object({
23984
- kind: z55.literal("pass"),
23985
- passId: z55.string().min(1),
23986
- title: z55.string().min(1),
23987
- quantity: z55.number().finite().optional(),
23988
- unitPriceCents: z55.number().finite(),
23989
- currency: z55.string().min(1)
23904
+ import { z as z54 } from "zod";
23905
+ var storedProductCartItemSchema = z54.object({
23906
+ kind: z54.literal("product"),
23907
+ productId: z54.string().min(1),
23908
+ variantId: z54.string().min(1).optional().nullable(),
23909
+ title: z54.string().min(1),
23910
+ variantTitle: z54.string().optional().nullable(),
23911
+ quantity: z54.number().finite(),
23912
+ unitPriceCents: z54.number().finite(),
23913
+ currency: z54.string().min(1),
23914
+ imageUrl: z54.string().optional().nullable(),
23915
+ soldOut: z54.boolean().optional()
23916
+ });
23917
+ var storedPassCartItemSchema = z54.object({
23918
+ kind: z54.literal("pass"),
23919
+ passId: z54.string().min(1),
23920
+ title: z54.string().min(1),
23921
+ quantity: z54.number().finite().optional(),
23922
+ unitPriceCents: z54.number().finite(),
23923
+ currency: z54.string().min(1)
23990
23924
  });
23991
23925
  function deriveCommerceCheckoutState(state) {
23992
23926
  if (state.items.length === 0) {
@@ -24225,219 +24159,219 @@ function formatValidity(days) {
24225
24159
  }
24226
24160
 
24227
24161
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
24228
- var shopModeSchema = z56.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24229
- var contentEntrySchema3 = z56.object({
24230
- id: z56.string().nullable().optional(),
24231
- slug: z56.string().nullable().optional()
24162
+ var shopModeSchema = z55.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
24163
+ var contentEntrySchema3 = z55.object({
24164
+ id: z55.string().nullable().optional(),
24165
+ slug: z55.string().nullable().optional()
24232
24166
  }).nullable();
24233
- var shopSourceSchema = z56.object({
24234
- className: z56.string().nullable().optional(),
24167
+ var shopSourceSchema = z55.object({
24168
+ className: z55.string().nullable().optional(),
24235
24169
  mode: shopModeSchema.optional(),
24236
- heading: z56.string().nullable().optional(),
24237
- productSlug: z56.string().nullable().optional(),
24238
- showPasses: z56.boolean().optional(),
24239
- showMemberships: z56.boolean().optional(),
24240
- layout: z56.enum(["grid", "list"]).optional(),
24241
- columns: z56.string().optional(),
24242
- showDescriptions: z56.boolean().optional(),
24243
- showSummary: z56.boolean().optional(),
24244
- showBody: z56.boolean().optional(),
24245
- showBadges: z56.boolean().optional(),
24246
- showPrices: z56.boolean().optional(),
24247
- showValidityPeriod: z56.boolean().optional(),
24248
- showPricePerCredit: z56.boolean().nullable().optional(),
24249
- passesHeading: z56.string().optional(),
24250
- membershipsHeading: z56.string().optional(),
24251
- buyButtonText: z56.string().optional(),
24252
- addButtonText: z56.string().optional(),
24253
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"]).optional(),
24254
- subscribeButtonText: z56.string().optional(),
24255
- emptyStateText: z56.string().optional(),
24256
- checkoutButtonText: z56.string().optional(),
24257
- clearButtonText: z56.string().optional(),
24258
- submitButtonText: z56.string().optional(),
24170
+ heading: z55.string().nullable().optional(),
24171
+ productSlug: z55.string().nullable().optional(),
24172
+ showPasses: z55.boolean().optional(),
24173
+ showMemberships: z55.boolean().optional(),
24174
+ layout: z55.enum(["grid", "list"]).optional(),
24175
+ columns: z55.string().optional(),
24176
+ showDescriptions: z55.boolean().optional(),
24177
+ showSummary: z55.boolean().optional(),
24178
+ showBody: z55.boolean().optional(),
24179
+ showBadges: z55.boolean().optional(),
24180
+ showPrices: z55.boolean().optional(),
24181
+ showValidityPeriod: z55.boolean().optional(),
24182
+ showPricePerCredit: z55.boolean().nullable().optional(),
24183
+ passesHeading: z55.string().optional(),
24184
+ membershipsHeading: z55.string().optional(),
24185
+ buyButtonText: z55.string().optional(),
24186
+ addButtonText: z55.string().optional(),
24187
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"]).optional(),
24188
+ subscribeButtonText: z55.string().optional(),
24189
+ emptyStateText: z55.string().optional(),
24190
+ checkoutButtonText: z55.string().optional(),
24191
+ clearButtonText: z55.string().optional(),
24192
+ submitButtonText: z55.string().optional(),
24259
24193
  contentEntry: contentEntrySchema3.optional(),
24260
- passes: z56.array(publicPassProductSchema).nullable().optional(),
24261
- memberships: z56.array(publicMembershipProductSchema).nullable().optional(),
24262
- products: z56.array(publicProductSchema).nullable().optional(),
24263
- siteId: z56.string().optional(),
24264
- apiBaseUrl: z56.string().optional(),
24194
+ passes: z55.array(publicPassProductSchema).nullable().optional(),
24195
+ memberships: z55.array(publicMembershipProductSchema).nullable().optional(),
24196
+ products: z55.array(publicProductSchema).nullable().optional(),
24197
+ siteId: z55.string().optional(),
24198
+ apiBaseUrl: z55.string().optional(),
24265
24199
  stage: previewStageSchema.optional()
24266
24200
  });
24267
- var productVariantOptionDisplaySchema = z56.object({
24268
- id: z56.string(),
24269
- label: z56.string(),
24270
- soldOut: z56.boolean()
24271
- });
24272
- var productCardDisplaySchema = z56.object({
24273
- productId: z56.string(),
24274
- title: z56.string(),
24275
- path: z56.string().nullable(),
24276
- summary: z56.string().nullable(),
24277
- priceLabel: z56.string().nullable(),
24278
- badges: z56.array(z56.string()),
24279
- image: z56.object({
24280
- url: z56.string(),
24281
- alt: z56.string().nullable()
24201
+ var productVariantOptionDisplaySchema = z55.object({
24202
+ id: z55.string(),
24203
+ label: z55.string(),
24204
+ soldOut: z55.boolean()
24205
+ });
24206
+ var productCardDisplaySchema = z55.object({
24207
+ productId: z55.string(),
24208
+ title: z55.string(),
24209
+ path: z55.string().nullable(),
24210
+ summary: z55.string().nullable(),
24211
+ priceLabel: z55.string().nullable(),
24212
+ badges: z55.array(z55.string()),
24213
+ image: z55.object({
24214
+ url: z55.string(),
24215
+ alt: z55.string().nullable()
24282
24216
  }).nullable(),
24283
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24284
- selectedVariantId: z56.string().nullable(),
24285
- selectionLabel: z56.string(),
24286
- actionLabel: z56.string(),
24287
- soldOut: z56.boolean()
24288
- });
24289
- var productListDisplaySchema = z56.object({
24290
- kind: z56.literal("product-list"),
24291
- state: z56.enum(["empty", "ready"]),
24292
- heading: z56.string().nullable(),
24293
- className: z56.string().nullable(),
24294
- layout: z56.enum(["grid", "list"]),
24295
- columns: z56.string(),
24296
- emptyMessage: z56.string(),
24297
- cards: z56.array(productCardDisplaySchema)
24298
- });
24299
- var productDetailDisplaySchema = z56.discriminatedUnion("state", [
24300
- z56.object({
24301
- kind: z56.literal("product-detail"),
24302
- state: z56.literal("empty"),
24303
- heading: z56.string().nullable(),
24304
- className: z56.string().nullable(),
24305
- emptyMessage: z56.string()
24217
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24218
+ selectedVariantId: z55.string().nullable(),
24219
+ selectionLabel: z55.string(),
24220
+ actionLabel: z55.string(),
24221
+ soldOut: z55.boolean()
24222
+ });
24223
+ var productListDisplaySchema = z55.object({
24224
+ kind: z55.literal("product-list"),
24225
+ state: z55.enum(["empty", "ready"]),
24226
+ heading: z55.string().nullable(),
24227
+ className: z55.string().nullable(),
24228
+ layout: z55.enum(["grid", "list"]),
24229
+ columns: z55.string(),
24230
+ emptyMessage: z55.string(),
24231
+ cards: z55.array(productCardDisplaySchema)
24232
+ });
24233
+ var productDetailDisplaySchema = z55.discriminatedUnion("state", [
24234
+ z55.object({
24235
+ kind: z55.literal("product-detail"),
24236
+ state: z55.literal("empty"),
24237
+ heading: z55.string().nullable(),
24238
+ className: z55.string().nullable(),
24239
+ emptyMessage: z55.string()
24306
24240
  }),
24307
- z56.object({
24308
- kind: z56.literal("product-detail"),
24309
- state: z56.literal("ready"),
24310
- heading: z56.string().nullable(),
24311
- className: z56.string().nullable(),
24312
- title: z56.string(),
24313
- priceLabel: z56.string(),
24314
- summary: z56.string().nullable(),
24315
- badges: z56.array(z56.string()),
24316
- categoryLabel: z56.string().nullable(),
24317
- gallery: z56.array(z56.object({
24318
- url: z56.string(),
24319
- alt: z56.string().nullable()
24241
+ z55.object({
24242
+ kind: z55.literal("product-detail"),
24243
+ state: z55.literal("ready"),
24244
+ heading: z55.string().nullable(),
24245
+ className: z55.string().nullable(),
24246
+ title: z55.string(),
24247
+ priceLabel: z55.string(),
24248
+ summary: z55.string().nullable(),
24249
+ badges: z55.array(z55.string()),
24250
+ categoryLabel: z55.string().nullable(),
24251
+ gallery: z55.array(z55.object({
24252
+ url: z55.string(),
24253
+ alt: z55.string().nullable()
24320
24254
  })),
24321
- variantOptions: z56.array(productVariantOptionDisplaySchema),
24322
- selectedVariantId: z56.string().nullable(),
24323
- selectionLabel: z56.string(),
24324
- actionLabel: z56.string(),
24325
- soldOut: z56.boolean(),
24326
- body: z56.unknown().nullable()
24255
+ variantOptions: z55.array(productVariantOptionDisplaySchema),
24256
+ selectedVariantId: z55.string().nullable(),
24257
+ selectionLabel: z55.string(),
24258
+ actionLabel: z55.string(),
24259
+ soldOut: z55.boolean(),
24260
+ body: z55.unknown().nullable()
24327
24261
  })
24328
24262
  ]);
24329
- var passCardDisplaySchema = z56.object({
24330
- id: z56.string(),
24331
- title: z56.string(),
24332
- description: z56.string().nullable(),
24333
- priceLabel: z56.string(),
24334
- creditsLabel: z56.string(),
24335
- perCreditLabel: z56.string().nullable(),
24336
- validityLabel: z56.string().nullable(),
24337
- actionLabel: z56.string()
24338
- });
24339
- var membershipCardDisplaySchema = z56.object({
24340
- id: z56.string(),
24341
- title: z56.string(),
24342
- description: z56.string().nullable(),
24343
- priceLabel: z56.string(),
24344
- intervalLabel: z56.string(),
24345
- actionLabel: z56.string()
24346
- });
24347
- var passesMembershipsDisplaySchema = z56.object({
24348
- kind: z56.literal("passes-memberships"),
24349
- state: z56.enum(["empty", "ready"]),
24350
- className: z56.string().nullable(),
24351
- layout: z56.enum(["grid", "list"]),
24352
- columns: z56.string(),
24353
- emptyMessage: z56.string(),
24354
- passesHeading: z56.string(),
24355
- membershipsHeading: z56.string(),
24356
- passes: z56.array(passCardDisplaySchema),
24357
- memberships: z56.array(membershipCardDisplaySchema)
24358
- });
24359
- var cartLineDisplaySchema = z56.object({
24360
- key: z56.string(),
24361
- title: z56.string(),
24362
- priceLabel: z56.string(),
24363
- quantity: z56.number(),
24364
- quantityEditable: z56.boolean()
24365
- });
24366
- var cartDisplaySchema = z56.object({
24367
- kind: z56.literal("cart"),
24368
- state: z56.enum(["empty", "ready"]),
24369
- heading: z56.string().nullable(),
24370
- className: z56.string().nullable(),
24371
- emptyMessage: z56.string(),
24372
- supportText: z56.string().nullable(),
24373
- items: z56.array(cartLineDisplaySchema),
24374
- subtotalLabel: z56.string().nullable(),
24375
- checkoutButtonText: z56.string(),
24376
- clearButtonText: z56.string()
24377
- });
24378
- var checkoutDisplaySchema = z56.object({
24379
- kind: z56.literal("checkout"),
24380
- state: z56.enum(["empty", "blocked", "ready"]),
24381
- heading: z56.string().nullable(),
24382
- className: z56.string().nullable(),
24383
- message: z56.string().nullable(),
24384
- submitButtonText: z56.string()
24385
- });
24386
- var passesMembershipsHydrationSchema = z56.object({
24387
- passes: z56.array(publicPassProductSchema),
24388
- memberships: z56.array(publicMembershipProductSchema),
24389
- passPurchaseMode: z56.enum(["add_to_cart", "buy_now"])
24390
- });
24391
- var productListHydrationSchema = z56.object({
24392
- products: z56.array(publicProductSchema),
24393
- showSummary: z56.boolean(),
24394
- showBadges: z56.boolean(),
24395
- showPrices: z56.boolean(),
24396
- addButtonText: z56.string()
24397
- });
24398
- var productDetailHydrationSchema = z56.object({
24399
- products: z56.array(publicProductSchema),
24400
- productId: z56.string().nullable(),
24401
- showSummary: z56.boolean(),
24402
- showBadges: z56.boolean(),
24403
- showBody: z56.boolean(),
24404
- addButtonText: z56.string()
24405
- });
24406
- var cartHydrationSchema = z56.object({
24407
- emptyStateText: z56.string(),
24408
- checkoutButtonText: z56.string(),
24409
- clearButtonText: z56.string()
24410
- });
24411
- var checkoutHydrationSchema = z56.object({
24412
- emptyStateText: z56.string(),
24413
- submitButtonText: z56.string()
24414
- });
24415
- var passesMembershipsRenderSchema = z56.object({
24263
+ var passCardDisplaySchema = z55.object({
24264
+ id: z55.string(),
24265
+ title: z55.string(),
24266
+ description: z55.string().nullable(),
24267
+ priceLabel: z55.string(),
24268
+ creditsLabel: z55.string(),
24269
+ perCreditLabel: z55.string().nullable(),
24270
+ validityLabel: z55.string().nullable(),
24271
+ actionLabel: z55.string()
24272
+ });
24273
+ var membershipCardDisplaySchema = z55.object({
24274
+ id: z55.string(),
24275
+ title: z55.string(),
24276
+ description: z55.string().nullable(),
24277
+ priceLabel: z55.string(),
24278
+ intervalLabel: z55.string(),
24279
+ actionLabel: z55.string()
24280
+ });
24281
+ var passesMembershipsDisplaySchema = z55.object({
24282
+ kind: z55.literal("passes-memberships"),
24283
+ state: z55.enum(["empty", "ready"]),
24284
+ className: z55.string().nullable(),
24285
+ layout: z55.enum(["grid", "list"]),
24286
+ columns: z55.string(),
24287
+ emptyMessage: z55.string(),
24288
+ passesHeading: z55.string(),
24289
+ membershipsHeading: z55.string(),
24290
+ passes: z55.array(passCardDisplaySchema),
24291
+ memberships: z55.array(membershipCardDisplaySchema)
24292
+ });
24293
+ var cartLineDisplaySchema = z55.object({
24294
+ key: z55.string(),
24295
+ title: z55.string(),
24296
+ priceLabel: z55.string(),
24297
+ quantity: z55.number(),
24298
+ quantityEditable: z55.boolean()
24299
+ });
24300
+ var cartDisplaySchema = z55.object({
24301
+ kind: z55.literal("cart"),
24302
+ state: z55.enum(["empty", "ready"]),
24303
+ heading: z55.string().nullable(),
24304
+ className: z55.string().nullable(),
24305
+ emptyMessage: z55.string(),
24306
+ supportText: z55.string().nullable(),
24307
+ items: z55.array(cartLineDisplaySchema),
24308
+ subtotalLabel: z55.string().nullable(),
24309
+ checkoutButtonText: z55.string(),
24310
+ clearButtonText: z55.string()
24311
+ });
24312
+ var checkoutDisplaySchema = z55.object({
24313
+ kind: z55.literal("checkout"),
24314
+ state: z55.enum(["empty", "blocked", "ready"]),
24315
+ heading: z55.string().nullable(),
24316
+ className: z55.string().nullable(),
24317
+ message: z55.string().nullable(),
24318
+ submitButtonText: z55.string()
24319
+ });
24320
+ var passesMembershipsHydrationSchema = z55.object({
24321
+ passes: z55.array(publicPassProductSchema),
24322
+ memberships: z55.array(publicMembershipProductSchema),
24323
+ passPurchaseMode: z55.enum(["add_to_cart", "buy_now"])
24324
+ });
24325
+ var productListHydrationSchema = z55.object({
24326
+ products: z55.array(publicProductSchema),
24327
+ showSummary: z55.boolean(),
24328
+ showBadges: z55.boolean(),
24329
+ showPrices: z55.boolean(),
24330
+ addButtonText: z55.string()
24331
+ });
24332
+ var productDetailHydrationSchema = z55.object({
24333
+ products: z55.array(publicProductSchema),
24334
+ productId: z55.string().nullable(),
24335
+ showSummary: z55.boolean(),
24336
+ showBadges: z55.boolean(),
24337
+ showBody: z55.boolean(),
24338
+ addButtonText: z55.string()
24339
+ });
24340
+ var cartHydrationSchema = z55.object({
24341
+ emptyStateText: z55.string(),
24342
+ checkoutButtonText: z55.string(),
24343
+ clearButtonText: z55.string()
24344
+ });
24345
+ var checkoutHydrationSchema = z55.object({
24346
+ emptyStateText: z55.string(),
24347
+ submitButtonText: z55.string()
24348
+ });
24349
+ var passesMembershipsRenderSchema = z55.object({
24416
24350
  display: passesMembershipsDisplaySchema,
24417
24351
  hydration: passesMembershipsHydrationSchema
24418
24352
  });
24419
- var productListRenderSchema = z56.object({
24353
+ var productListRenderSchema = z55.object({
24420
24354
  display: productListDisplaySchema,
24421
24355
  hydration: productListHydrationSchema
24422
24356
  });
24423
- var productDetailRenderSchema = z56.object({
24357
+ var productDetailRenderSchema = z55.object({
24424
24358
  display: productDetailDisplaySchema,
24425
24359
  hydration: productDetailHydrationSchema
24426
24360
  });
24427
- var cartRenderSchema = z56.object({
24361
+ var cartRenderSchema = z55.object({
24428
24362
  display: cartDisplaySchema,
24429
24363
  hydration: cartHydrationSchema
24430
24364
  });
24431
- var checkoutRenderSchema = z56.object({
24365
+ var checkoutRenderSchema = z55.object({
24432
24366
  display: checkoutDisplaySchema,
24433
24367
  hydration: checkoutHydrationSchema
24434
24368
  });
24435
24369
  function resolveShowPricePerCredit(source) {
24436
24370
  return source.showPricePerCredit ?? true;
24437
24371
  }
24438
- var shopIslandMetaCodec = createZodCodec(z56.object({
24439
- siteId: z56.string().optional(),
24440
- apiBaseUrl: z56.string().optional(),
24372
+ var shopIslandMetaCodec = createZodCodec(z55.object({
24373
+ siteId: z55.string().optional(),
24374
+ apiBaseUrl: z55.string().optional(),
24441
24375
  stage: previewStageSchema.optional()
24442
24376
  }));
24443
24377
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -24819,9 +24753,9 @@ var shopBlockDefinition = {
24819
24753
  runtime: shopBlockRuntime,
24820
24754
  dataSchemas: {
24821
24755
  // listPublicPasses returns { passes: [...] }
24822
- passes: z57.object({ passes: z57.array(publicPassProductSchema) }).optional(),
24756
+ passes: z56.object({ passes: z56.array(publicPassProductSchema) }).optional(),
24823
24757
  // listPublicMemberships returns { memberships: [...] }
24824
- memberships: z57.object({ memberships: z57.array(publicMembershipProductSchema) }).optional()
24758
+ memberships: z56.object({ memberships: z56.array(publicMembershipProductSchema) }).optional()
24825
24759
  },
24826
24760
  dataLoaders: {
24827
24761
  // Load passes for display
@@ -24844,7 +24778,7 @@ var shopBlockDefinition = {
24844
24778
  };
24845
24779
 
24846
24780
  // ../blocks/src/system/blocks/product-list.ts
24847
- import { z as z58 } from "zod";
24781
+ import { z as z57 } from "zod";
24848
24782
  var productListManifest = createBlockManifest({
24849
24783
  id: "block.product-list",
24850
24784
  version: "1.0.0",
@@ -24986,7 +24920,7 @@ var productListBlockDefinition = {
24986
24920
  }
24987
24921
  }
24988
24922
  };
24989
- var productListDataSchema = z58.object({
24923
+ var productListDataSchema = z57.object({
24990
24924
  products: publicProductsResponseSchema.optional()
24991
24925
  });
24992
24926
 
@@ -25256,72 +25190,72 @@ var checkoutBlockDefinition = {
25256
25190
  };
25257
25191
 
25258
25192
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
25259
- import { z as z59 } from "zod";
25260
- var publicGiftCardOfferSchema = z59.object({
25261
- id: z59.string(),
25262
- kind: z59.literal("gift_card"),
25263
- title: z59.string(),
25264
- description: z59.string().nullable(),
25265
- sortOrder: z59.number().int(),
25266
- giftCard: z59.object({
25267
- fixedDenominations: z59.array(z59.number().int().positive()),
25268
- customAmountEnabled: z59.boolean(),
25269
- customAmountMinCents: z59.number().int().positive(),
25270
- customAmountMaxCents: z59.number().int().positive()
25193
+ import { z as z58 } from "zod";
25194
+ var publicGiftCardOfferSchema = z58.object({
25195
+ id: z58.string(),
25196
+ kind: z58.literal("gift_card"),
25197
+ title: z58.string(),
25198
+ description: z58.string().nullable(),
25199
+ sortOrder: z58.number().int(),
25200
+ giftCard: z58.object({
25201
+ fixedDenominations: z58.array(z58.number().int().positive()),
25202
+ customAmountEnabled: z58.boolean(),
25203
+ customAmountMinCents: z58.number().int().positive(),
25204
+ customAmountMaxCents: z58.number().int().positive()
25271
25205
  }),
25272
- voucher: z59.null()
25273
- });
25274
- var publicVoucherOfferSchema = z59.object({
25275
- id: z59.string(),
25276
- kind: z59.literal("voucher"),
25277
- title: z59.string(),
25278
- description: z59.string().nullable(),
25279
- sortOrder: z59.number().int(),
25280
- giftCard: z59.null(),
25281
- voucher: z59.object({
25282
- purchaseAmountCents: z59.number().int().positive()
25206
+ voucher: z58.null()
25207
+ });
25208
+ var publicVoucherOfferSchema = z58.object({
25209
+ id: z58.string(),
25210
+ kind: z58.literal("voucher"),
25211
+ title: z58.string(),
25212
+ description: z58.string().nullable(),
25213
+ sortOrder: z58.number().int(),
25214
+ giftCard: z58.null(),
25215
+ voucher: z58.object({
25216
+ purchaseAmountCents: z58.number().int().positive()
25283
25217
  })
25284
25218
  });
25285
- var publicGiftingOffersResponseSchema = z59.object({
25286
- currency: z59.string(),
25287
- giftCards: z59.array(publicGiftCardOfferSchema),
25288
- vouchers: z59.array(publicVoucherOfferSchema)
25219
+ var publicGiftingOffersResponseSchema = z58.object({
25220
+ currency: z58.string(),
25221
+ giftCards: z58.array(publicGiftCardOfferSchema),
25222
+ vouchers: z58.array(publicVoucherOfferSchema)
25289
25223
  });
25290
- var giftingSourceSchema = z59.object({
25291
- siteId: z59.string().optional(),
25292
- apiBaseUrl: z59.string().optional(),
25224
+ var giftingSourceSchema = z58.object({
25225
+ siteId: z58.string().optional(),
25226
+ apiBaseUrl: z58.string().optional(),
25293
25227
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
25294
- className: z59.string().nullable().optional(),
25295
- heading: z59.string().nullable().optional(),
25296
- intro: z59.string().nullable().optional(),
25297
- giftCardsHeading: z59.string().nullable().optional(),
25298
- vouchersHeading: z59.string().nullable().optional(),
25299
- emptyStateText: z59.string().nullable().optional(),
25300
- checkoutButtonText: z59.string().nullable().optional(),
25301
- successMessage: z59.string().nullable().optional()
25302
- });
25303
- var giftingDisplaySchema = z59.object({
25304
- kind: z59.literal("gifting"),
25305
- state: z59.literal("ready"),
25306
- className: z59.string().nullable(),
25307
- heading: z59.string(),
25308
- intro: z59.string().nullable(),
25309
- giftCardsHeading: z59.string(),
25310
- vouchersHeading: z59.string(),
25311
- emptyStateText: z59.string()
25312
- });
25313
- var giftingHydrationSchema = z59.object({
25228
+ className: z58.string().nullable().optional(),
25229
+ heading: z58.string().nullable().optional(),
25230
+ intro: z58.string().nullable().optional(),
25231
+ giftCardsHeading: z58.string().nullable().optional(),
25232
+ vouchersHeading: z58.string().nullable().optional(),
25233
+ emptyStateText: z58.string().nullable().optional(),
25234
+ checkoutButtonText: z58.string().nullable().optional(),
25235
+ successMessage: z58.string().nullable().optional()
25236
+ });
25237
+ var giftingDisplaySchema = z58.object({
25238
+ kind: z58.literal("gifting"),
25239
+ state: z58.literal("ready"),
25240
+ className: z58.string().nullable(),
25241
+ heading: z58.string(),
25242
+ intro: z58.string().nullable(),
25243
+ giftCardsHeading: z58.string(),
25244
+ vouchersHeading: z58.string(),
25245
+ emptyStateText: z58.string()
25246
+ });
25247
+ var giftingHydrationSchema = z58.object({
25314
25248
  offers: publicGiftingOffersResponseSchema.nullable(),
25315
- checkoutButtonText: z59.string(),
25316
- successMessage: z59.string()
25249
+ checkoutButtonText: z58.string(),
25250
+ successMessage: z58.string()
25317
25251
  });
25318
- var giftingRenderSchema = z59.object({
25252
+ var giftingRenderSchema = z58.object({
25319
25253
  display: giftingDisplaySchema,
25320
25254
  hydration: giftingHydrationSchema
25321
25255
  });
25322
- var giftingIslandMetaCodec = createZodCodec(z59.object({
25323
- siteId: z59.string().optional(),
25324
- apiBaseUrl: z59.string().optional()
25256
+ var giftingIslandMetaCodec = createZodCodec(z58.object({
25257
+ siteId: z58.string().optional(),
25258
+ apiBaseUrl: z58.string().optional()
25325
25259
  }));
25326
25260
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
25327
25261
  "siteId",
@@ -25492,7 +25426,7 @@ var giftingBlockDefinition = {
25492
25426
  };
25493
25427
 
25494
25428
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25495
- import { z as z60 } from "zod";
25429
+ import { z as z59 } from "zod";
25496
25430
 
25497
25431
  // ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
25498
25432
  function getPresetFields(preset2, options) {
@@ -25546,49 +25480,49 @@ function withOptionalPhone(fields3, includePhone) {
25546
25480
  }
25547
25481
 
25548
25482
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
25549
- var newsletterPresetSchema = z60.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25550
- var newsletterFieldSchema = z60.object({
25551
- id: z60.string(),
25552
- type: z60.enum(["email", "text"]),
25553
- label: z60.string(),
25554
- required: z60.boolean(),
25555
- placeholder: z60.string().optional()
25556
- });
25557
- var newsletterSourceSchema = z60.object({
25558
- siteId: z60.string().optional(),
25559
- apiBaseUrl: z60.string().optional(),
25560
- listId: z60.string().nullable().optional(),
25483
+ var newsletterPresetSchema = z59.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
25484
+ var newsletterFieldSchema = z59.object({
25485
+ id: z59.string(),
25486
+ type: z59.enum(["email", "text"]),
25487
+ label: z59.string(),
25488
+ required: z59.boolean(),
25489
+ placeholder: z59.string().optional()
25490
+ });
25491
+ var newsletterSourceSchema = z59.object({
25492
+ siteId: z59.string().optional(),
25493
+ apiBaseUrl: z59.string().optional(),
25494
+ listId: z59.string().nullable().optional(),
25561
25495
  preset: newsletterPresetSchema.optional(),
25562
- includePhone: z60.boolean().optional(),
25563
- buttonLabel: z60.string().nullable().optional(),
25564
- successMessage: z60.string().nullable().optional(),
25565
- privacyNote: z60.string().nullable().optional(),
25566
- tags: z60.string().nullable().optional(),
25567
- spamProtectionEnabled: z60.boolean().optional(),
25568
- className: z60.string().nullable().optional()
25569
- });
25570
- var newsletterDisplaySchema = z60.object({
25571
- kind: z60.literal("newsletter-form"),
25572
- className: z60.string().nullable(),
25573
- buttonLabel: z60.string(),
25574
- successMessage: z60.string().nullable(),
25575
- privacyNote: z60.string().nullable(),
25576
- fields: z60.array(newsletterFieldSchema)
25577
- });
25578
- var newsletterHydrationSchema = z60.object({
25579
- listId: z60.string().nullable().optional(),
25496
+ includePhone: z59.boolean().optional(),
25497
+ buttonLabel: z59.string().nullable().optional(),
25498
+ successMessage: z59.string().nullable().optional(),
25499
+ privacyNote: z59.string().nullable().optional(),
25500
+ tags: z59.string().nullable().optional(),
25501
+ spamProtectionEnabled: z59.boolean().optional(),
25502
+ className: z59.string().nullable().optional()
25503
+ });
25504
+ var newsletterDisplaySchema = z59.object({
25505
+ kind: z59.literal("newsletter-form"),
25506
+ className: z59.string().nullable(),
25507
+ buttonLabel: z59.string(),
25508
+ successMessage: z59.string().nullable(),
25509
+ privacyNote: z59.string().nullable(),
25510
+ fields: z59.array(newsletterFieldSchema)
25511
+ });
25512
+ var newsletterHydrationSchema = z59.object({
25513
+ listId: z59.string().nullable().optional(),
25580
25514
  preset: newsletterPresetSchema,
25581
- includePhone: z60.boolean(),
25582
- tags: z60.string().nullable().optional(),
25583
- spamProtectionEnabled: z60.boolean().optional()
25515
+ includePhone: z59.boolean(),
25516
+ tags: z59.string().nullable().optional(),
25517
+ spamProtectionEnabled: z59.boolean().optional()
25584
25518
  });
25585
- var newsletterRenderSchema = z60.object({
25519
+ var newsletterRenderSchema = z59.object({
25586
25520
  display: newsletterDisplaySchema,
25587
25521
  hydration: newsletterHydrationSchema
25588
25522
  });
25589
- var newsletterIslandMetaCodec = createZodCodec(z60.object({
25590
- siteId: z60.string().optional(),
25591
- apiBaseUrl: z60.string().optional()
25523
+ var newsletterIslandMetaCodec = createZodCodec(z59.object({
25524
+ siteId: z59.string().optional(),
25525
+ apiBaseUrl: z59.string().optional()
25592
25526
  }));
25593
25527
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
25594
25528
  function buildNewsletterDisplay(source) {
@@ -25709,23 +25643,23 @@ var newsletterSignupBlockDefinition = {
25709
25643
  };
25710
25644
 
25711
25645
  // ../blocks/src/system/blocks/team-members.ts
25712
- import { z as z61 } from "zod";
25646
+ import { z as z60 } from "zod";
25713
25647
  var ITEM_NAME2 = "member";
25714
25648
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
25715
25649
  message: "Team member photos must be image media"
25716
25650
  }).nullable();
25717
- var teamMemberDataSchema = z61.object({
25718
- _type: z61.literal("teamMember"),
25719
- id: z61.string(),
25720
- name: z61.string(),
25721
- role: z61.string().nullable(),
25722
- roleLabel: z61.string().nullable(),
25723
- bio: z61.string().nullable(),
25724
- summary: z61.string().nullable(),
25651
+ var teamMemberDataSchema = z60.object({
25652
+ _type: z60.literal("teamMember"),
25653
+ id: z60.string(),
25654
+ name: z60.string(),
25655
+ role: z60.string().nullable(),
25656
+ roleLabel: z60.string().nullable(),
25657
+ bio: z60.string().nullable(),
25658
+ summary: z60.string().nullable(),
25725
25659
  photo: teamMemberPhotoSchema,
25726
- profilePath: z61.string().nullable()
25660
+ profilePath: z60.string().nullable()
25727
25661
  });
25728
- var teamMembersDataSchema = z61.array(teamMemberDataSchema);
25662
+ var teamMembersDataSchema = z60.array(teamMemberDataSchema);
25729
25663
  var dynamicSourceWhen = { equals: "site_staff" };
25730
25664
  var manualSourceWhen = { equals: "site_staff", not: true };
25731
25665
  var headingNode = text(
@@ -27499,10 +27433,10 @@ function normalizeDataLoaders(def) {
27499
27433
  }
27500
27434
  function normalizeContent(block) {
27501
27435
  const source = block.draftContent ?? block.content ?? block.publishedContent ?? {};
27502
- if (!isObjectRecord(source)) return {};
27436
+ if (!isObjectRecord2(source)) return {};
27503
27437
  if ("data" in source) {
27504
27438
  const data = source.data;
27505
- if (isObjectRecord(data)) {
27439
+ if (isObjectRecord2(data)) {
27506
27440
  return data;
27507
27441
  }
27508
27442
  if (data === null || data === void 0) {
@@ -27627,7 +27561,7 @@ async function prefetchBlockData(page, context, options) {
27627
27561
 
27628
27562
  // ../blocks/src/system/data/normalizeLoaderParams.ts
27629
27563
  function toStringParams(value) {
27630
- if (!isObjectRecord(value)) return {};
27564
+ if (!isObjectRecord2(value)) return {};
27631
27565
  const out = {};
27632
27566
  for (const [k, v] of Object.entries(value)) {
27633
27567
  if (typeof v === "string") out[k] = v;
@@ -27685,6 +27619,74 @@ function normalizeLoaderParams(endpoint, params, context) {
27685
27619
  return out;
27686
27620
  }
27687
27621
 
27622
+ // ../api/src/aiPlayground.ts
27623
+ import { z as z61 } from "zod";
27624
+ var Rfc6902PatchOp = z61.discriminatedUnion("op", [
27625
+ // Standard RFC-6902 operations
27626
+ z61.object({
27627
+ op: z61.literal("add"),
27628
+ path: z61.string(),
27629
+ value: z61.unknown()
27630
+ }),
27631
+ z61.object({
27632
+ op: z61.literal("remove"),
27633
+ path: z61.string()
27634
+ }),
27635
+ z61.object({
27636
+ op: z61.literal("replace"),
27637
+ path: z61.string(),
27638
+ value: z61.unknown()
27639
+ }),
27640
+ z61.object({
27641
+ op: z61.literal("move"),
27642
+ from: z61.string(),
27643
+ path: z61.string()
27644
+ }),
27645
+ z61.object({
27646
+ op: z61.literal("copy"),
27647
+ from: z61.string(),
27648
+ path: z61.string()
27649
+ }),
27650
+ // Block-level operations (Phase 2)
27651
+ z61.object({
27652
+ op: z61.literal("add_block"),
27653
+ blockKind: z61.string(),
27654
+ afterBlockId: z61.string().nullable(),
27655
+ content: z61.record(z61.string(), z61.unknown()),
27656
+ rationale: z61.string()
27657
+ }),
27658
+ z61.object({
27659
+ op: z61.literal("delete_block"),
27660
+ blockId: z61.string(),
27661
+ rationale: z61.string()
27662
+ }),
27663
+ z61.object({
27664
+ op: z61.literal("reorder_block"),
27665
+ blockId: z61.string(),
27666
+ afterBlockId: z61.string().nullable(),
27667
+ rationale: z61.string()
27668
+ })
27669
+ ]);
27670
+ var PlaygroundProposeRequest = z61.object({
27671
+ request: z61.string().min(1).max(2e3)
27672
+ });
27673
+ var MultiPagePatchEnvelope = z61.object({
27674
+ pageId: z61.string(),
27675
+ blockId: z61.string().optional(),
27676
+ // Not present for page-level ops
27677
+ blockKind: z61.string().optional(),
27678
+ blockPurpose: z61.string().optional().nullable(),
27679
+ ops: z61.array(Rfc6902PatchOp),
27680
+ rationale: z61.string(),
27681
+ currentContent: z61.record(z61.string(), z61.unknown()).optional()
27682
+ });
27683
+ var MultiPageUpdateResponse = z61.object({
27684
+ patches: z61.array(MultiPagePatchEnvelope),
27685
+ assistantMessage: z61.string(),
27686
+ pagesModified: z61.number(),
27687
+ toolCallsUsed: z61.number()
27688
+ });
27689
+
27688
27690
  // src/data/prefetchBlockData.ts
27689
27691
  var SUPPORTED_LOADER_ENDPOINTS2 = [
27690
27692
  "listPublishedEntries",