@riverbankcms/sdk 0.88.0 → 0.90.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/README.md +27 -4
  2. package/dist/{PreviewEditorSidebar-EVRS3C7T.mjs → PreviewEditorSidebar-KVXNF3VW.mjs} +3 -3
  3. package/dist/{PreviewEditorUI-54WD4IGE.mjs → PreviewEditorUI-J3JN5Z7T.mjs} +3 -3
  4. package/dist/SdkPreviewModeRuntime-UBL6MSNP.mjs +8 -0
  5. package/dist/_dts/ai/src/contracts/proposals.d.ts +216 -0
  6. package/dist/_dts/altcha/src/AltchaWidget.d.ts +1 -1
  7. package/dist/_dts/api/src/accessAdmin.d.ts +7 -0
  8. package/dist/_dts/api/src/bookingOperations.d.ts +2 -0
  9. package/dist/_dts/api/src/bookingRecords.d.ts +4 -2
  10. package/dist/_dts/api/src/bookings.d.ts +3 -1
  11. package/dist/_dts/api/src/endpoints.d.ts +8 -0
  12. package/dist/_dts/api/src/index.d.ts +7 -6
  13. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +15 -5
  14. package/dist/_dts/api/src/request.d.ts +21 -0
  15. package/dist/_dts/api/src/sdk-event-upsert.d.ts +3 -1
  16. package/dist/_dts/api/src/sdkContracts.d.ts +2 -0
  17. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +5 -1
  18. package/dist/_dts/api/src/siteMembers.d.ts +6 -1
  19. package/dist/_dts/api/src/types.d.ts +4 -2
  20. package/dist/_dts/api/src/url.d.ts +6 -3
  21. package/dist/_dts/block-form/src/utils/visibleWhen.d.ts +1 -0
  22. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailCard.d.ts +5 -1
  23. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailGrid.d.ts +9 -1
  24. package/dist/_dts/block-form/src/widgets/RepeaterField/components/index.d.ts +1 -0
  25. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +7 -11
  26. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +6 -0
  27. package/dist/_dts/blocks/src/index.d.ts +2 -1
  28. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +14 -6
  29. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -4
  30. package/dist/_dts/blocks/src/system/blocks/hero.d.ts +0 -2
  31. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +3 -3
  32. package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +8 -0
  33. package/dist/_dts/blocks/src/system/constants/events.d.ts +4 -1
  34. package/dist/_dts/blocks/src/system/icons/cta.d.ts +3 -3
  35. package/dist/_dts/blocks/src/system/icons/index.d.ts +1 -0
  36. package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -2
  37. package/dist/_dts/blocks/src/system/icons/semantic.d.ts +3 -3
  38. package/dist/_dts/blocks/src/system/icons/svg.d.ts +72 -0
  39. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +3 -1
  40. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -0
  41. package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +18 -5
  42. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +51 -6
  43. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +24 -0
  44. package/dist/_dts/blocks/src/system/runtime/hooks/loadStateError.d.ts +1 -0
  45. package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableDates.d.ts +1 -1
  46. package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableDates.state.d.ts +55 -0
  47. package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableSlots.state.d.ts +39 -0
  48. package/dist/_dts/blocks/src/system/runtime/hooks/useBookingFormConfig.d.ts +4 -27
  49. package/dist/_dts/blocks/src/system/runtime/hooks/useBookingFormConfig.state.d.ts +40 -0
  50. package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +20 -0
  51. package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.state.d.ts +31 -0
  52. package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.d.ts +3 -3
  53. package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.state.d.ts +39 -0
  54. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +2 -2
  55. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +1 -17
  56. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +5 -9
  57. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +5 -9
  58. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +2 -1
  59. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +24 -0
  60. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +5 -0
  61. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.d.ts +4 -4
  62. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.state.d.ts +50 -0
  63. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -2
  64. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +21 -0
  65. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +1 -1
  66. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +11 -1
  67. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +2 -1
  68. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +11 -1
  69. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventPaginatedListView.client.d.ts +1 -1
  70. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/calendarViewOptions.d.ts +10 -0
  71. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventProductEligibility.d.ts +24 -0
  72. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.client.state.d.ts +24 -2
  73. package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.state.d.ts +24 -0
  74. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +5 -2
  75. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout-form.d.ts +2 -2
  76. package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.state.d.ts +35 -0
  77. package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
  78. package/dist/_dts/content-model/src/entry-slots/sdkBlocks.d.ts +21 -0
  79. package/dist/_dts/content-model/src/entry-slots/types.d.ts +61 -0
  80. package/dist/_dts/core/src/branded.d.ts +7 -0
  81. package/dist/_dts/core/src/index.d.ts +1 -0
  82. package/dist/_dts/core/src/money-input.d.ts +18 -0
  83. package/dist/_dts/core/src/site-route-target.d.ts +40 -0
  84. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +209 -2
  85. package/dist/_dts/media-core/src/fileDomain.d.ts +4 -0
  86. package/dist/_dts/media-editor/src/MediaEditor.d.ts +2 -1
  87. package/dist/_dts/media-editor/src/fieldUi.d.ts +6 -0
  88. package/dist/_dts/media-editor/src/index.d.ts +1 -1
  89. package/dist/_dts/preview-next/src/client/index.d.ts +1 -0
  90. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -2
  91. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -2
  92. package/dist/_dts/preview-next/src/client/preview/PreviewThemedSiteDocument.d.ts +3 -2
  93. package/dist/_dts/preview-next/src/client/preview/SiteChromeEditableSurface.d.ts +2 -2
  94. package/dist/_dts/preview-next/src/client/preview/themeRuntime.d.ts +6 -0
  95. package/dist/_dts/preview-next/src/client/sdk/SdkPreviewMode.d.ts +2 -1
  96. package/dist/_dts/sdk/src/cli/commands/pull-dated-offering-scope.d.ts +10 -0
  97. package/dist/_dts/sdk/src/cli/content/reader.d.ts +12 -5
  98. package/dist/_dts/sdk/src/client/management/types.d.ts +6 -55
  99. package/dist/_dts/sdk/src/client/runtimeCachePolicy.d.ts +160 -0
  100. package/dist/_dts/sdk/src/client/types.d.ts +26 -1
  101. package/dist/_dts/sdk/src/components.d.ts +1 -0
  102. package/dist/_dts/sdk/src/config/field-definitions.d.ts +3 -1
  103. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +3 -1
  104. package/dist/_dts/sdk/src/index.d.ts +3 -1
  105. package/dist/_dts/sdk/src/next/types.d.ts +8 -11
  106. package/dist/_dts/sdk/src/preview-next/client/index.d.ts +1 -1
  107. package/dist/_dts/sdk/src/rendering/blocks-theme-scope.d.ts +2 -1
  108. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +8 -7
  109. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +5 -6
  110. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
  111. package/dist/_dts/sdk/src/rendering/server.d.ts +1 -0
  112. package/dist/_dts/sdk/src/rendering/themeRuntime.d.ts +26 -0
  113. package/dist/_dts/sdk/src/version.d.ts +1 -1
  114. package/dist/_dts/site-commands/src/commands.d.ts +18 -0
  115. package/dist/_dts/theme-core/src/ResponsiveScope.d.ts +12 -0
  116. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -1
  117. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +2 -2
  118. package/dist/_dts/theme-core/src/buttons/types.d.ts +5 -5
  119. package/dist/_dts/theme-core/src/cards/types.d.ts +2 -2
  120. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  121. package/dist/_dts/theme-core/src/index.d.ts +2 -0
  122. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +21 -21
  123. package/dist/_dts/theme-core/src/schema.d.ts +18 -18
  124. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -2
  125. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  126. package/dist/_dts/theme-core/src/site-styles/logoBranding.d.ts +4 -4
  127. package/dist/_dts/theme-core/src/themeRuntime.d.ts +11 -0
  128. package/dist/{chunk-ER4UIW4X.mjs → chunk-AEOYWPE4.mjs} +91 -55
  129. package/dist/{chunk-O4LVYUVH.mjs → chunk-BOQXMCSP.mjs} +147 -101
  130. package/dist/{chunk-HVOBXA3Y.mjs → chunk-GSPFFUVB.mjs} +2 -2
  131. package/dist/{chunk-7KOO7RPP.mjs → chunk-PMBB6MQ7.mjs} +2273 -1113
  132. package/dist/{chunk-K3JWH6HE.mjs → chunk-RQ3XZ4SJ.mjs} +9 -1
  133. package/dist/{chunk-YDMBIIS5.mjs → chunk-UG7I7S7W.mjs} +1 -1
  134. package/dist/cli/index.mjs +1564 -546
  135. package/dist/cli/init-docs/content/cli-reference.md +6 -1
  136. package/dist/cli/init-docs/content/content-management.md +27 -0
  137. package/dist/client/{accordion-PT5CGW5N.mjs → accordion-GXQNWQ6O.mjs} +2 -2
  138. package/dist/client/{bookingForm-2HLRTEYS.mjs → bookingForm-STLUJ36H.mjs} +206 -335
  139. package/dist/client/bookings.mjs +821 -413
  140. package/dist/client/{carousel-Z2LKYSWA.mjs → carousel-CVRN6EPP.mjs} +4 -3
  141. package/dist/client/{cart-ND5IK4A6.mjs → cart-IYIBA5CL.mjs} +8 -8
  142. package/dist/client/{checkout-EYUSGAY7.mjs → checkout-O3BGM4GS.mjs} +8 -8
  143. package/dist/client/chunk-4RTFGHZN.mjs +433 -0
  144. package/dist/client/{chunk-DIRW2LNG.mjs → chunk-6DPXDOIL.mjs} +336 -225
  145. package/dist/client/chunk-6N7YRNYU.mjs +183 -0
  146. package/dist/client/{chunk-O5JNI3E4.mjs → chunk-7DH35FGA.mjs} +2 -2
  147. package/dist/client/{chunk-S4G65LGR.mjs → chunk-D3ETC2SU.mjs} +1 -1
  148. package/dist/client/{chunk-BAWHZ5GM.mjs → chunk-DAS5CIER.mjs} +460 -157
  149. package/dist/client/{chunk-6DVPO44G.mjs → chunk-FHU6PFPM.mjs} +1 -1
  150. package/dist/client/{chunk-SDIYSQAY.mjs → chunk-HIHOQGIP.mjs} +2 -3
  151. package/dist/client/{chunk-BL66UWGD.mjs → chunk-MFPKS6QS.mjs} +13 -16
  152. package/dist/client/{chunk-X7GVFB7Y.mjs → chunk-NBFRJ5NB.mjs} +157 -5
  153. package/dist/client/{chunk-WCVK4MBJ.mjs → chunk-VFHZLZAC.mjs} +1 -1
  154. package/dist/client/{chunk-GOFO7HRH.mjs → chunk-WHZQDPBZ.mjs} +19 -1
  155. package/dist/client/{chunk-MHBEWDT7.mjs → chunk-Z62JYS5O.mjs} +122 -50
  156. package/dist/client/client.mjs +5979 -5198
  157. package/dist/client/{courseRegistration-H3AZBUEG.mjs → courseRegistration-2D3ACMJR.mjs} +20 -58
  158. package/dist/client/{eventCalendar-FPKJGLGS.mjs → eventCalendar-QY4UZUFF.mjs} +11 -11
  159. package/dist/client/{eventCombined-QCGIZBUY.mjs → eventCombined-RRCDKJC2.mjs} +11 -11
  160. package/dist/client/{eventDetails-HIT3BJWU.mjs → eventDetails-YO335BUT.mjs} +11 -11
  161. package/dist/client/{eventListing-R4HNWJDN.mjs → eventListing-PXA6GFQ3.mjs} +11 -11
  162. package/dist/client/{eventRegistration-Q7BYY5HF.mjs → eventRegistration-2ZHEDDXO.mjs} +11 -11
  163. package/dist/client/{form-NI6YOG6S.mjs → form-ZS6KX4U2.mjs} +7 -7
  164. package/dist/client/{headerSection-SDYGII36.mjs → headerSection-QK5SLIIB.mjs} +3 -3
  165. package/dist/client/hooks.mjs +1102 -1029
  166. package/dist/client/{locationMap-BDETEUQD.mjs → locationMap-GFNIUD2X.mjs} +3 -3
  167. package/dist/client/{newsletterForm-EKYIU67X.mjs → newsletterForm-PGLTTCUG.mjs} +61 -25
  168. package/dist/client/{productDetail-5UTGNN76.mjs → productDetail-OPBE5ZPI.mjs} +8 -8
  169. package/dist/client/{productList-7YA5KXZQ.mjs → productList-NI72Q62Z.mjs} +8 -8
  170. package/dist/client/rendering/client.mjs +4390 -4245
  171. package/dist/client/rendering/islands.mjs +19 -19
  172. package/dist/client/rendering.mjs +3327 -3181
  173. package/dist/client/{shop-AIMUMZYC.mjs → shop-3ZQPEWYI.mjs} +8 -8
  174. package/dist/client/spam-protection.mjs +4 -5
  175. package/dist/preview-next/before-render.mjs +20 -2
  176. package/dist/preview-next/client/runtime.mjs +5 -5
  177. package/dist/preview-next/middleware.mjs +18 -0
  178. package/dist/{sdk-runtime-NW472WNT.mjs → sdk-runtime-FSHXCWDS.mjs} +6 -6
  179. package/dist/server/components.mjs +2580 -2783
  180. package/dist/server/config-validation.mjs +1334 -1261
  181. package/dist/server/config.mjs +1334 -1261
  182. package/dist/server/data.mjs +1102 -1029
  183. package/dist/server/index.mjs +1097 -476
  184. package/dist/server/navigation.mjs +20 -30
  185. package/dist/server/next.mjs +3282 -2847
  186. package/dist/server/page-converter.mjs +1009 -946
  187. package/dist/server/prebuild.mjs +1 -1
  188. package/dist/server/rendering/server.mjs +2580 -2783
  189. package/dist/server/rendering.mjs +2586 -2789
  190. package/dist/server/routing.mjs +1440 -1053
  191. package/dist/server/server.mjs +1886 -1153
  192. package/dist/server/theme-bridge.mjs +34 -5
  193. package/dist/styles/index.css +26 -0
  194. package/package.json +3 -2
  195. package/dist/SdkPreviewModeRuntime-ZALZDJEK.mjs +0 -8
  196. package/dist/client/chunk-H4MHEXYS.mjs +0 -184
  197. package/dist/client/chunk-ZFHRN6W2.mjs +0 -66
  198. /package/dist/client/{chunk-LI2C6M5O.mjs → chunk-25W2EQUN.mjs} +0 -0
@@ -1817,6 +1817,24 @@ var ENDPOINT_DEFINITIONS = {
1817
1817
  auth: "user",
1818
1818
  responseKind: "json"
1819
1819
  },
1820
+ resendSiteInvitation: {
1821
+ path: "/sites/{siteId}/members/invitations/{invitationId}/resend",
1822
+ method: "POST",
1823
+ errors: [
1824
+ "auth:forbidden",
1825
+ "resource:not_found",
1826
+ "validation:invalid_input",
1827
+ "external:service_error",
1828
+ "server:internal_error"
1829
+ ],
1830
+ tags: [
1831
+ "site-{siteId}",
1832
+ "site-members-{siteId}",
1833
+ "site-invite-{invitationId}"
1834
+ ],
1835
+ auth: "user",
1836
+ responseKind: "json"
1837
+ },
1820
1838
  transferSiteOwnership: {
1821
1839
  path: "/sites/{siteId}/members/transfer-ownership",
1822
1840
  method: "POST",
@@ -6759,7 +6777,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
6759
6777
  );
6760
6778
 
6761
6779
  // ../api/src/sdkConfig/contracts.ts
6762
- import { z as z65 } from "zod";
6780
+ import { z as z63 } from "zod";
6763
6781
 
6764
6782
  // ../blocks/src/system/manifest/augmentManifest.ts
6765
6783
  function augmentManifest(manifest) {
@@ -7085,12 +7103,17 @@ var visibleWhenPredicateSchema = z4.object({
7085
7103
  minItems: z4.number().int().nonnegative().optional(),
7086
7104
  maxItems: z4.number().int().nonnegative().optional()
7087
7105
  });
7088
- var visibleWhenSchema = z4.union([
7089
- visibleWhenPredicateSchema,
7090
- z4.object({
7091
- allOf: z4.array(visibleWhenPredicateSchema).min(1)
7092
- })
7093
- ]);
7106
+ var visibleWhenSchema = z4.lazy(
7107
+ () => z4.union([
7108
+ visibleWhenPredicateSchema,
7109
+ z4.object({
7110
+ allOf: z4.array(visibleWhenSchema).min(1)
7111
+ }),
7112
+ z4.object({
7113
+ anyOf: z4.array(visibleWhenSchema).min(1)
7114
+ })
7115
+ ])
7116
+ );
7094
7117
  var uiSchema = z4.object({
7095
7118
  widget: z4.string().optional(),
7096
7119
  // Container/widget presets (used by Group/Repeater widgets themselves, not for widget selection)
@@ -20076,9 +20099,6 @@ var heroCopyFragment = defineFragment({
20076
20099
  maxLength: 600
20077
20100
  }
20078
20101
  ],
20079
- // Layout order is [eyebrow, headline, subheadline]. The hero block's
20080
- // `splitEditorial` variant reads these nodes by index; keep the order stable
20081
- // (it fails fast at import if the count changes).
20082
20102
  layout: [
20083
20103
  text(
20084
20104
  {
@@ -22316,32 +22336,6 @@ var splitReverseLayout = splitLayoutWith([
22316
22336
  splitContentColumn,
22317
22337
  splitImageColumn
22318
22338
  ]);
22319
- var heroEyebrowNode = heroCopyFragment.layout[0];
22320
- var heroHeadlineNode = heroCopyFragment.layout[1];
22321
- var heroSubheadlineNode = heroCopyFragment.layout[2];
22322
- var heroCtaRowNode = heroCtaRowFragment.layout[0];
22323
- if (!heroEyebrowNode || !heroHeadlineNode || !heroSubheadlineNode || !heroCtaRowNode) {
22324
- throw new Error("Hero copy/CTA fragments are missing their expected layout nodes.");
22325
- }
22326
- var heroEditorialBottomRow = inline(
22327
- {
22328
- gap: "lg",
22329
- align: "end",
22330
- justify: "start",
22331
- wrap: true,
22332
- className: "rb-w-full"
22333
- },
22334
- [heroSubheadlineNode, heroCtaRowNode]
22335
- );
22336
- var splitEditorialContentColumn = heroContentWrapper(
22337
- [heroEyebrowNode, heroHeadlineNode, heroEditorialBottomRow],
22338
- "md",
22339
- "rb-w-full rb-text-left"
22340
- );
22341
- var splitEditorialLayout = splitLayoutWith([
22342
- splitEditorialContentColumn,
22343
- splitImageColumn
22344
- ]);
22345
22339
  var heroConfig = {
22346
22340
  id: "block.hero",
22347
22341
  title: "Hero",
@@ -22365,7 +22359,8 @@ var heroConfig = {
22365
22359
  id: "imageShape",
22366
22360
  label: "Image shape",
22367
22361
  defaultValue: "default",
22368
- uiIntent: "display"
22362
+ uiIntent: "display",
22363
+ visibleWhen: { field: "variant", oneOf: ["split", "splitReverse"] }
22369
22364
  })
22370
22365
  ],
22371
22366
  layout: classicLayout,
@@ -22373,8 +22368,7 @@ var heroConfig = {
22373
22368
  classic: classicLayout,
22374
22369
  micro: microLayout,
22375
22370
  split: splitLayout,
22376
- splitReverse: splitReverseLayout,
22377
- splitEditorial: splitEditorialLayout
22371
+ splitReverse: splitReverseLayout
22378
22372
  },
22379
22373
  defaultVariant: "classic",
22380
22374
  description: "Hero section with headline, subtitle, and repeatable CTAs.",
@@ -24250,8 +24244,10 @@ function resolveGeneratedHeroLayoutStyles(content) {
24250
24244
  return isPlainObject(raw) ? raw : null;
24251
24245
  }
24252
24246
  function readHeroLayoutString(content, generatedKey, fallbackKey = generatedKey) {
24247
+ const explicitValue = readString(content, fallbackKey);
24248
+ if (explicitValue !== void 0) return explicitValue;
24253
24249
  const generated = resolveGeneratedHeroLayoutStyles(content);
24254
- return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : readString(content, fallbackKey);
24250
+ return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : void 0;
24255
24251
  }
24256
24252
  function resolveHeroVariant(content) {
24257
24253
  const variant = readString(content, "variant");
@@ -24264,7 +24260,7 @@ function resolveHeroContentAlignment(content) {
24264
24260
  const raw = readHeroLayoutString(content, "contentAlignment");
24265
24261
  if (raw === "left" || raw === "center" || raw === "right") return raw;
24266
24262
  const variant = resolveHeroVariant(content);
24267
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "left";
24263
+ if (variant === "split" || variant === "splitReverse") return "left";
24268
24264
  return "center";
24269
24265
  }
24270
24266
  function resolveHeroVerticalAlignment(content) {
@@ -24274,7 +24270,7 @@ function resolveHeroVerticalAlignment(content) {
24274
24270
  const minHeight = sectionStyles?.minHeight;
24275
24271
  if (minHeight === "banner" || minHeight === "hero" || minHeight === "immersive") return "center";
24276
24272
  const variant = resolveHeroVariant(content);
24277
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "center";
24273
+ if (variant === "split" || variant === "splitReverse") return "center";
24278
24274
  return "top";
24279
24275
  }
24280
24276
  function resolveHeroContentMaxWidth(content) {
@@ -27843,9 +27839,6 @@ var appointmentBookingBlockDefinition = {
27843
27839
  }
27844
27840
  };
27845
27841
 
27846
- // ../blocks/src/system/blocks/event-registration.ts
27847
- import { z as z47 } from "zod";
27848
-
27849
27842
  // ../blocks/src/system/blocks/events/shared/schemas.ts
27850
27843
  import { z as z43 } from "zod";
27851
27844
 
@@ -28460,24 +28453,57 @@ function normalizeEventStaffMemberId(value) {
28460
28453
  return trimmed ? trimmed : null;
28461
28454
  }
28462
28455
 
28463
- // ../blocks/src/system/blocks/event-registration.shared.ts
28456
+ // ../blocks/src/system/blocks/shop.shared.ts
28464
28457
  import { z as z44 } from "zod";
28465
- var occurrenceContextSchema = z44.object({
28458
+ var publicPassProductSchema = z44.object({
28466
28459
  id: z44.string(),
28467
- seriesId: z44.string(),
28468
- startsAt: z44.string(),
28469
- endsAt: z44.string(),
28470
- timeZone: z44.string(),
28471
- capacityOverride: z44.number().nullable().optional(),
28472
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
28460
+ productUseCase: z44.enum(["event_pass", "appointment_package"]).default("event_pass"),
28461
+ name: z44.string(),
28462
+ description: z44.string().nullable(),
28463
+ price: z44.number(),
28464
+ currency: z44.string(),
28465
+ creditsTotal: z44.number(),
28466
+ pricePerCredit: z44.number(),
28467
+ validDays: z44.number().nullable(),
28468
+ eligibleCategoryIds: z44.array(z44.string()),
28469
+ eligibleCategoryNames: z44.array(z44.string())
28470
+ });
28471
+ var publicPassProductCollectionSchema = z44.object({
28472
+ passes: z44.array(publicPassProductSchema)
28473
+ });
28474
+ var publicMembershipProductSchema = z44.object({
28475
+ id: z44.string(),
28476
+ name: z44.string(),
28477
+ description: z44.string().nullable(),
28478
+ price: z44.number(),
28479
+ currency: z44.string(),
28480
+ billingInterval: z44.enum(["month", "year"]),
28481
+ eligibleCategoryIds: z44.array(z44.string()),
28482
+ eligibleCategoryNames: z44.array(z44.string())
28483
+ });
28484
+ var publicMembershipProductCollectionSchema = z44.object({
28485
+ memberships: z44.array(publicMembershipProductSchema)
28486
+ });
28487
+
28488
+ // ../blocks/src/system/blocks/event-registration.shared.ts
28489
+ import { z as z45 } from "zod";
28490
+ var occurrenceContextSchema = z45.object({
28491
+ id: z45.string(),
28492
+ seriesId: z45.string(),
28493
+ startsAt: z45.string(),
28494
+ endsAt: z45.string(),
28495
+ timeZone: z45.string(),
28496
+ capacityOverride: z45.number().nullable().optional(),
28497
+ overrides: z45.record(z45.string(), z45.unknown()).nullable().optional()
28473
28498
  }).nullable();
28474
28499
 
28475
28500
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28476
- import { z as z46 } from "zod";
28501
+ import { z as z47 } from "zod";
28477
28502
 
28478
28503
  // ../blocks/src/system/constants/events.ts
28479
28504
  var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
28480
- var eventCalendarDisplayModeValues = ["combined", "month", "week", "list", "timetable"];
28505
+ var eventCalendarDisplayModeValues = ["combined", "calendar", "list", "timetable"];
28506
+ var eventCalendarDefaultViewValues = ["month", "week"];
28481
28507
  var eventCalendarListLayoutValues = ["stack", "grid", "compact"];
28482
28508
  var eventCalendarListLayoutOptions = [
28483
28509
  { id: "stack", label: "Stack" },
@@ -28487,6 +28513,9 @@ var eventCalendarListLayoutOptions = [
28487
28513
  function isEventCalendarDisplayMode(value) {
28488
28514
  return typeof value === "string" && eventCalendarDisplayModeValues.includes(value);
28489
28515
  }
28516
+ function isEventCalendarDefaultView(value) {
28517
+ return typeof value === "string" && eventCalendarDefaultViewValues.includes(value);
28518
+ }
28490
28519
  function isEventCalendarListLayout(value) {
28491
28520
  return typeof value === "string" && eventCalendarListLayoutValues.includes(value);
28492
28521
  }
@@ -28627,16 +28656,17 @@ function readAmount(value) {
28627
28656
  }
28628
28657
 
28629
28658
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
28630
- import { z as z45 } from "zod";
28631
- var previewStageSchema = z45.enum(["preview", "published"]);
28632
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
28633
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
28634
- var eventLayoutSchema = z45.enum(eventCalendarListLayoutValues);
28635
- var eventCalendarDisplayModeSchema = z45.enum(eventCalendarDisplayModeValues);
28636
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
28637
- var weekStartSchema = z45.enum(["sunday", "monday"]);
28638
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
28639
- var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
28659
+ import { z as z46 } from "zod";
28660
+ var previewStageSchema = z46.enum(["preview", "published"]);
28661
+ var registrationButtonVariantSchema = z46.enum(["primary", "secondary", "outline"]);
28662
+ var eventButtonVariantSchema = z46.enum(["primary", "secondary", "outline", "link"]);
28663
+ var eventLayoutSchema = z46.enum(eventCalendarListLayoutValues);
28664
+ var eventCalendarDisplayModeSchema = z46.enum(eventCalendarDisplayModeValues);
28665
+ var eventCalendarDefaultViewSchema = z46.enum(eventCalendarDefaultViewValues);
28666
+ var columnOptionSchema = z46.enum(["2", "3", "4"]);
28667
+ var weekStartSchema = z46.enum(["sunday", "monday"]);
28668
+ var filterAutoShowSchema = z46.enum(["auto", "always", "never"]);
28669
+ var calendarTabViewsSchema = z46.enum(["both", "month", "week"]);
28640
28670
 
28641
28671
  // ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
28642
28672
  function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
@@ -28654,7 +28684,7 @@ function eventMatchesOccurrenceId(event, occurrenceId) {
28654
28684
  function findPreSelectedEvent(input) {
28655
28685
  const occurrenceContext = input.occurrenceContext;
28656
28686
  if (!occurrenceContext) {
28657
- return null;
28687
+ return input.scopedEvents.length === 1 ? input.scopedEvents[0] ?? null : null;
28658
28688
  }
28659
28689
  const contextDate = getBookingLocalDateKey(toScheduledBookingDateTime({
28660
28690
  startsAt: occurrenceContext.startsAt,
@@ -28696,68 +28726,72 @@ function toRegistrationEvents(events) {
28696
28726
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28697
28727
  var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
28698
28728
  var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
28699
- var contentEntrySchema = z46.object({
28700
- id: z46.string(),
28701
- slug: z46.string(),
28702
- contentTypeSlug: z46.string()
28729
+ var contentEntrySchema = z47.object({
28730
+ id: z47.string(),
28731
+ slug: z47.string(),
28732
+ contentTypeSlug: z47.string()
28703
28733
  });
28704
- var eventRegistrationPublicEventSchema = z46.preprocess(
28734
+ var eventRegistrationPublicEventSchema = z47.preprocess(
28705
28735
  normalizeEventRegistrationEventInput,
28706
28736
  publicEventSchema
28707
28737
  );
28708
- var eventRegistrationSourceSchema = z46.object({
28709
- siteId: z46.string().optional(),
28710
- apiBaseUrl: z46.string().optional(),
28711
- portalToken: z46.string().nullable().optional(),
28712
- previewToken: z46.string().nullable().optional(),
28738
+ var eventRegistrationSourceSchema = z47.object({
28739
+ siteId: z47.string().optional(),
28740
+ apiBaseUrl: z47.string().optional(),
28741
+ portalToken: z47.string().nullable().optional(),
28742
+ previewToken: z47.string().nullable().optional(),
28713
28743
  occurrenceContext: occurrenceContextSchema.optional(),
28714
28744
  contentEntry: contentEntrySchema.nullable().optional(),
28715
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28716
- className: z46.string().nullable().optional(),
28717
- buttonText: z46.string().nullable().optional(),
28718
- maxTickets: z46.string().nullable().optional(),
28719
- showVenue: z46.boolean().optional(),
28720
- showCapacity: z46.boolean().optional(),
28721
- successMessage: z46.string().optional(),
28722
- waitlistMessage: z46.string().optional(),
28745
+ events: z47.array(eventRegistrationPublicEventSchema).nullable().optional(),
28746
+ className: z47.string().nullable().optional(),
28747
+ buttonText: z47.string().nullable().optional(),
28748
+ maxTickets: z47.string().nullable().optional(),
28749
+ showVenue: z47.boolean().optional(),
28750
+ showCapacity: z47.boolean().optional(),
28751
+ successMessage: z47.string().optional(),
28752
+ waitlistMessage: z47.string().optional(),
28723
28753
  buttonVariant: registrationButtonVariantSchema.optional(),
28724
- overlayEnabled: z46.boolean().optional(),
28725
- spamProtectionEnabled: z46.boolean().optional(),
28754
+ overlayEnabled: z47.boolean().optional(),
28755
+ spamProtectionEnabled: z47.boolean().optional(),
28726
28756
  stage: previewStageSchema.optional(),
28727
- supportEmail: z46.string().optional()
28728
- });
28729
- var eventRegistrationDisplaySchema = z46.object({
28730
- kind: z46.literal("event-registration"),
28731
- state: z46.literal("generic-shell"),
28732
- className: z46.string().nullable(),
28733
- titleText: z46.string(),
28734
- bodyText: z46.string(),
28735
- stepLabels: z46.array(z46.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
28736
- summaryButtonText: z46.string()
28737
- });
28738
- var eventRegistrationHydrationSchema = z46.object({
28757
+ supportEmail: z47.string().optional(),
28758
+ sitePasses: publicPassProductCollectionSchema.nullable().optional(),
28759
+ siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
28760
+ });
28761
+ var eventRegistrationDisplaySchema = z47.object({
28762
+ kind: z47.literal("event-registration"),
28763
+ state: z47.literal("generic-shell"),
28764
+ className: z47.string().nullable(),
28765
+ titleText: z47.string(),
28766
+ bodyText: z47.string(),
28767
+ stepLabels: z47.array(z47.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
28768
+ summaryButtonText: z47.string()
28769
+ });
28770
+ var eventRegistrationHydrationSchema = z47.object({
28739
28771
  occurrenceContext: occurrenceContextSchema.optional(),
28740
28772
  contentEntry: contentEntrySchema.nullable().optional(),
28741
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28742
- maxTickets: z46.string().optional(),
28743
- showVenue: z46.boolean().optional(),
28744
- showCapacity: z46.boolean().optional(),
28745
- successMessage: z46.string().optional(),
28746
- waitlistMessage: z46.string().optional(),
28773
+ events: z47.array(eventRegistrationPublicEventSchema).nullable().optional(),
28774
+ maxTickets: z47.string().optional(),
28775
+ showVenue: z47.boolean().optional(),
28776
+ showCapacity: z47.boolean().optional(),
28777
+ successMessage: z47.string().optional(),
28778
+ waitlistMessage: z47.string().optional(),
28747
28779
  buttonVariant: registrationButtonVariantSchema.optional(),
28748
- overlayEnabled: z46.boolean().optional(),
28749
- spamProtectionEnabled: z46.boolean().optional(),
28750
- supportEmail: z46.string().optional()
28780
+ overlayEnabled: z47.boolean().optional(),
28781
+ spamProtectionEnabled: z47.boolean().optional(),
28782
+ supportEmail: z47.string().optional(),
28783
+ sitePasses: publicPassProductCollectionSchema.nullable().optional(),
28784
+ siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
28751
28785
  });
28752
- var eventRegistrationRenderSchema = z46.object({
28786
+ var eventRegistrationRenderSchema = z47.object({
28753
28787
  display: eventRegistrationDisplaySchema,
28754
28788
  hydration: eventRegistrationHydrationSchema
28755
28789
  });
28756
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
28757
- siteId: z46.string().optional(),
28758
- apiBaseUrl: z46.string().optional(),
28759
- portalToken: z46.string().nullable().optional(),
28760
- previewToken: z46.string().nullable().optional(),
28790
+ var eventRegistrationIslandMetaCodec = createZodCodec(z47.object({
28791
+ siteId: z47.string().optional(),
28792
+ apiBaseUrl: z47.string().optional(),
28793
+ portalToken: z47.string().nullable().optional(),
28794
+ previewToken: z47.string().nullable().optional(),
28761
28795
  stage: previewStageSchema.optional()
28762
28796
  }));
28763
28797
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -28863,7 +28897,9 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
28863
28897
  buttonVariant: source.buttonVariant,
28864
28898
  overlayEnabled: source.overlayEnabled,
28865
28899
  spamProtectionEnabled: source.spamProtectionEnabled,
28866
- supportEmail: source.supportEmail
28900
+ supportEmail: source.supportEmail,
28901
+ sitePasses: source.sitePasses ?? null,
28902
+ siteMemberships: source.siteMemberships ?? null
28867
28903
  }
28868
28904
  })
28869
28905
  });
@@ -29045,6 +29081,8 @@ var eventRegistrationManifest = createBlockManifest({
29045
29081
  },
29046
29082
  // Event data from loader
29047
29083
  events: { $bind: { from: "data.events" } },
29084
+ sitePasses: { $bind: { from: "data.sitePasses" } },
29085
+ siteMemberships: { $bind: { from: "data.siteMemberships" } },
29048
29086
  // Stage for preview mode (allows registering for draft events)
29049
29087
  stage: {
29050
29088
  $bind: { from: "$root.previewStage", fallback: "published" }
@@ -29063,7 +29101,9 @@ var eventRegistrationBlockDefinition = {
29063
29101
  manifest: eventRegistrationManifest,
29064
29102
  runtime: eventRegistrationBlockRuntime,
29065
29103
  dataSchemas: {
29066
- events: z47.array(publicEventSchema).optional(),
29104
+ events: publicEventsArraySchema.optional(),
29105
+ sitePasses: publicPassProductCollectionSchema.optional(),
29106
+ siteMemberships: publicMembershipProductCollectionSchema.optional(),
29067
29107
  occurrenceContext: occurrenceContextSchema.optional()
29068
29108
  },
29069
29109
  dataLoaders: {
@@ -29082,6 +29122,20 @@ var eventRegistrationBlockDefinition = {
29082
29122
  entryId: { $bind: { from: "$root.contentEntry._entryId", fallback: "" } }
29083
29123
  },
29084
29124
  mode: "server"
29125
+ },
29126
+ sitePasses: {
29127
+ endpoint: "listPublicPasses",
29128
+ params: {
29129
+ siteId: { $bind: { from: "$root.siteId" } }
29130
+ },
29131
+ mode: "server"
29132
+ },
29133
+ siteMemberships: {
29134
+ endpoint: "listPublicMemberships",
29135
+ params: {
29136
+ siteId: { $bind: { from: "$root.siteId" } }
29137
+ },
29138
+ mode: "server"
29085
29139
  }
29086
29140
  }
29087
29141
  };
@@ -29413,35 +29467,7 @@ var courseRegistrationBlockDefinition = {
29413
29467
  };
29414
29468
 
29415
29469
  // ../blocks/src/system/blocks/event-details.ts
29416
- import { z as z50 } from "zod";
29417
-
29418
- // ../blocks/src/system/blocks/shop.shared.ts
29419
29470
  import { z as z49 } from "zod";
29420
- var publicPassProductSchema = z49.object({
29421
- id: z49.string(),
29422
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
29423
- name: z49.string(),
29424
- description: z49.string().nullable(),
29425
- price: z49.number(),
29426
- currency: z49.string(),
29427
- creditsTotal: z49.number(),
29428
- pricePerCredit: z49.number(),
29429
- validDays: z49.number().nullable(),
29430
- eligibleCategoryIds: z49.array(z49.string()),
29431
- eligibleCategoryNames: z49.array(z49.string())
29432
- });
29433
- var publicMembershipProductSchema = z49.object({
29434
- id: z49.string(),
29435
- name: z49.string(),
29436
- description: z49.string().nullable(),
29437
- price: z49.number(),
29438
- currency: z49.string(),
29439
- billingInterval: z49.enum(["month", "year"]),
29440
- eligibleCategoryIds: z49.array(z49.string()),
29441
- eligibleCategoryNames: z49.array(z49.string())
29442
- });
29443
-
29444
- // ../blocks/src/system/blocks/event-details.ts
29445
29471
  var eventDetailsManifest = createBlockManifest({
29446
29472
  id: "block.event-details",
29447
29473
  version: "1.0.0",
@@ -29573,40 +29599,40 @@ var eventDetailsManifest = createBlockManifest({
29573
29599
  })
29574
29600
  ]
29575
29601
  });
29576
- var occurrenceContextSchema2 = z50.object({
29577
- id: z50.string(),
29578
- seriesId: z50.string(),
29579
- startsAt: z50.string(),
29580
- endsAt: z50.string(),
29581
- timeZone: z50.string(),
29582
- capacityOverride: z50.number().nullable().optional(),
29583
- overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
29602
+ var occurrenceContextSchema2 = z49.object({
29603
+ id: z49.string(),
29604
+ seriesId: z49.string(),
29605
+ startsAt: z49.string(),
29606
+ endsAt: z49.string(),
29607
+ timeZone: z49.string(),
29608
+ capacityOverride: z49.number().nullable().optional(),
29609
+ overrides: z49.record(z49.string(), z49.unknown()).nullable().optional()
29584
29610
  }).nullable();
29585
- var eventAutoApplyDiscountPreviewBaseSchema = z50.object({
29586
- id: z50.string(),
29587
- publicLabel: z50.string(),
29588
- description: z50.string().nullable(),
29589
- minTicketsRequired: z50.number().nullable()
29611
+ var eventAutoApplyDiscountPreviewBaseSchema = z49.object({
29612
+ id: z49.string(),
29613
+ publicLabel: z49.string(),
29614
+ description: z49.string().nullable(),
29615
+ minTicketsRequired: z49.number().nullable()
29590
29616
  });
29591
- var eventAutoApplyDiscountPreviewSchema = z50.discriminatedUnion("discountType", [
29617
+ var eventAutoApplyDiscountPreviewSchema = z49.discriminatedUnion("discountType", [
29592
29618
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29593
- discountType: z50.literal("percent"),
29594
- discountPercent: z50.number(),
29595
- discountAmountCents: z50.null()
29619
+ discountType: z49.literal("percent"),
29620
+ discountPercent: z49.number(),
29621
+ discountAmountCents: z49.null()
29596
29622
  }),
29597
29623
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29598
- discountType: z50.literal("fixed"),
29599
- discountPercent: z50.null(),
29600
- discountAmountCents: z50.number()
29624
+ discountType: z49.literal("fixed"),
29625
+ discountPercent: z49.null(),
29626
+ discountAmountCents: z49.number()
29601
29627
  })
29602
29628
  ]);
29603
29629
  var eventDetailsBlockDefinition = {
29604
29630
  manifest: eventDetailsManifest,
29605
29631
  dataSchemas: {
29606
- eventDetailsData: z50.object({
29632
+ eventDetailsData: z49.object({
29607
29633
  events: publicEventsArraySchema,
29608
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
29609
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) }),
29634
+ sitePasses: publicPassProductCollectionSchema,
29635
+ siteMemberships: publicMembershipProductCollectionSchema,
29610
29636
  autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
29611
29637
  }).optional(),
29612
29638
  occurrenceContext: occurrenceContextSchema2.optional()
@@ -29930,7 +29956,7 @@ var eventSpotlightBlockDefinition = {
29930
29956
  };
29931
29957
 
29932
29958
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
29933
- import { z as z52 } from "zod";
29959
+ import { z as z51 } from "zod";
29934
29960
 
29935
29961
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
29936
29962
  var COLUMN_CLASSES = {
@@ -30038,16 +30064,16 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
30038
30064
  }
30039
30065
 
30040
30066
  // ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
30041
- import { z as z51 } from "zod";
30067
+ import { z as z50 } from "zod";
30042
30068
  var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
30043
- var eventPageSizeSchema = z51.union([
30044
- z51.literal(3),
30045
- z51.literal(6),
30046
- z51.literal(10),
30047
- z51.literal(12),
30048
- z51.literal(20),
30049
- z51.literal(24),
30050
- z51.literal(30)
30069
+ var eventPageSizeSchema = z50.union([
30070
+ z50.literal(3),
30071
+ z50.literal(6),
30072
+ z50.literal(10),
30073
+ z50.literal(12),
30074
+ z50.literal(20),
30075
+ z50.literal(24),
30076
+ z50.literal(30)
30051
30077
  ]);
30052
30078
  var eventPageSizeSet = new Set(eventPageSizeValues);
30053
30079
  function resolveEventPageSize(value, fallback = 12) {
@@ -30057,15 +30083,15 @@ function resolveEventPageSize(value, fallback = 12) {
30057
30083
  function resolveEventCalendarListPageSize(input) {
30058
30084
  return resolveEventPageSize(input.eventsPerPage);
30059
30085
  }
30060
- var eventListPaginationActionSchema = z51.discriminatedUnion("kind", [
30061
- z51.object({
30062
- kind: z51.literal("loadMore"),
30063
- label: z51.string()
30086
+ var eventListPaginationActionSchema = z50.discriminatedUnion("kind", [
30087
+ z50.object({
30088
+ kind: z50.literal("loadMore"),
30089
+ label: z50.string()
30064
30090
  }),
30065
- z51.object({
30066
- kind: z51.literal("seeAllLink"),
30067
- label: z51.string(),
30068
- href: z51.string()
30091
+ z50.object({
30092
+ kind: z50.literal("seeAllLink"),
30093
+ label: z50.string(),
30094
+ href: z50.string()
30069
30095
  })
30070
30096
  ]);
30071
30097
  function resolveEventListPaginationAction(input) {
@@ -30078,89 +30104,89 @@ function resolveEventListPaginationAction(input) {
30078
30104
  }
30079
30105
 
30080
30106
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
30081
- var legacyEventCardVariantSchema = z52.enum(["variant1", "variant2"]);
30082
- var eventCardVariantInputSchema = z52.union([
30107
+ var legacyEventCardVariantSchema = z51.enum(["variant1", "variant2"]);
30108
+ var eventCardVariantInputSchema = z51.union([
30083
30109
  cardVariantRoleSchema,
30084
30110
  legacyEventCardVariantSchema
30085
30111
  ]);
30086
- var cardOrientationSchema = z52.enum(["vertical", "horizontal"]);
30087
- var eventBlockKindSchema = z52.enum(eventBlockKindValues);
30088
- var eventSurfaceScopeSchema = z52.enum(eventSurfaceScopeValues);
30089
- var eventScheduleScopeSchema2 = z52.enum(eventScheduleScopeValues);
30090
- var eventListingSourceSchema = z52.object({
30091
- events: z52.array(publicEventSchema).nullable().optional(),
30092
- siteId: z52.string(),
30093
- apiBaseUrl: z52.string().optional(),
30112
+ var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
30113
+ var eventBlockKindSchema = z51.enum(eventBlockKindValues);
30114
+ var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
30115
+ var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
30116
+ var eventListingSourceSchema = z51.object({
30117
+ events: z51.array(publicEventSchema).nullable().optional(),
30118
+ siteId: z51.string(),
30119
+ apiBaseUrl: z51.string().optional(),
30094
30120
  stage: previewStageSchema.optional(),
30095
30121
  layout: eventLayoutSchema.optional(),
30096
30122
  columns: columnOptionSchema.optional(),
30097
- eventsPerPage: z52.string().optional(),
30098
- paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
30099
- seeAllUrl: z52.string().optional(),
30100
- loadMoreText: z52.string().optional(),
30123
+ eventsPerPage: z51.string().optional(),
30124
+ paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
30125
+ seeAllUrl: z51.string().optional(),
30126
+ loadMoreText: z51.string().optional(),
30101
30127
  cardVariant: eventCardVariantInputSchema.optional(),
30102
30128
  buttonVariant: eventButtonVariantSchema.optional(),
30103
- buttonText: z52.string().optional(),
30104
- showVenue: z52.boolean().optional(),
30105
- showMap: z52.boolean().optional(),
30106
- showCapacity: z52.boolean().optional(),
30107
- emptyMessage: z52.string().optional(),
30108
- className: z52.string().optional(),
30109
- showFilters: z52.boolean().nullable().optional(),
30129
+ buttonText: z51.string().optional(),
30130
+ showVenue: z51.boolean().optional(),
30131
+ showMap: z51.boolean().optional(),
30132
+ showCapacity: z51.boolean().optional(),
30133
+ emptyMessage: z51.string().optional(),
30134
+ className: z51.string().optional(),
30135
+ showFilters: z51.boolean().nullable().optional(),
30110
30136
  showCategoryFilter: filterAutoShowSchema.optional(),
30111
- showVenueFilter: z52.boolean().nullable().optional(),
30112
- showStaffFilter: z52.boolean().nullable().optional(),
30137
+ showVenueFilter: z51.boolean().nullable().optional(),
30138
+ showStaffFilter: z51.boolean().nullable().optional(),
30113
30139
  eventKind: eventBlockKindSchema.nullable().optional(),
30114
30140
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
30115
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30141
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
30116
30142
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
30117
- filterCategoryIds: z52.string().nullable().optional(),
30118
- filterStaffMemberId: z52.string().nullable().optional(),
30119
- filterVenueId: z52.string().nullable().optional()
30143
+ filterCategoryIds: z51.string().nullable().optional(),
30144
+ filterStaffMemberId: z51.string().nullable().optional(),
30145
+ filterVenueId: z51.string().nullable().optional()
30120
30146
  });
30121
- var eventListingDisplaySchema = z52.object({
30122
- kind: z52.literal("event-listing"),
30123
- state: z52.enum(["loading", "empty", "ready"]),
30147
+ var eventListingDisplaySchema = z51.object({
30148
+ kind: z51.literal("event-listing"),
30149
+ state: z51.enum(["loading", "empty", "ready"]),
30124
30150
  listLayout: eventLayoutSchema,
30125
- className: z52.string().nullable(),
30126
- emptyMessage: z52.string(),
30127
- loadingMessage: z52.string(),
30128
- containerClass: z52.string(),
30151
+ className: z51.string().nullable(),
30152
+ emptyMessage: z51.string(),
30153
+ loadingMessage: z51.string(),
30154
+ containerClass: z51.string(),
30129
30155
  cardVariant: cardVariantRoleSchema,
30130
30156
  buttonVariant: eventButtonVariantSchema,
30131
- buttonText: z52.string(),
30132
- showVenue: z52.boolean(),
30133
- showMap: z52.boolean(),
30134
- showCapacity: z52.boolean(),
30157
+ buttonText: z51.string(),
30158
+ showVenue: z51.boolean(),
30159
+ showMap: z51.boolean(),
30160
+ showCapacity: z51.boolean(),
30135
30161
  orientation: cardOrientationSchema,
30136
- events: z52.array(publicEventSchema)
30162
+ events: z51.array(publicEventSchema)
30137
30163
  });
30138
- var eventListingHydrationSchema = z52.object({
30139
- siteId: z52.string(),
30164
+ var eventListingHydrationSchema = z51.object({
30165
+ siteId: z51.string(),
30140
30166
  stage: previewStageSchema.optional(),
30141
30167
  eventsPerPage: eventPageSizeSchema,
30142
30168
  paginationAction: eventListPaginationActionSchema,
30143
- showFilters: z52.boolean(),
30169
+ showFilters: z51.boolean(),
30144
30170
  showCategoryFilter: filterAutoShowSchema,
30145
- showVenueFilter: z52.boolean(),
30146
- showStaffFilter: z52.boolean(),
30171
+ showVenueFilter: z51.boolean(),
30172
+ showStaffFilter: z51.boolean(),
30147
30173
  eventKind: eventBlockKindSchema,
30148
30174
  eventSurface: eventSurfaceScopeSchema,
30149
- filterEventPresets: z52.string().nullable(),
30175
+ filterEventPresets: z51.string().nullable(),
30150
30176
  scheduleScope: eventScheduleScopeSchema2,
30151
- filterCategoryIds: z52.string().nullable().optional(),
30152
- filterStaffMemberId: z52.string().nullable().optional(),
30153
- filterVenueId: z52.string().nullable().optional(),
30154
- fetchInitialEventsOnMount: z52.boolean()
30177
+ filterCategoryIds: z51.string().nullable().optional(),
30178
+ filterStaffMemberId: z51.string().nullable().optional(),
30179
+ filterVenueId: z51.string().nullable().optional(),
30180
+ fetchInitialEventsOnMount: z51.boolean()
30155
30181
  });
30156
- var eventListingRenderSchema = z52.object({
30182
+ var eventListingRenderSchema = z51.object({
30157
30183
  display: eventListingDisplaySchema,
30158
30184
  hydration: eventListingHydrationSchema
30159
30185
  });
30160
30186
  var eventListingIslandMetaCodec = createZodCodec(
30161
- z52.object({
30162
- siteId: z52.string(),
30163
- apiBaseUrl: z52.string().optional(),
30187
+ z51.object({
30188
+ siteId: z51.string(),
30189
+ apiBaseUrl: z51.string().optional(),
30164
30190
  stage: previewStageSchema.optional()
30165
30191
  })
30166
30192
  );
@@ -30527,15 +30553,15 @@ var eventListingBlockDefinition = {
30527
30553
  };
30528
30554
 
30529
30555
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
30530
- import { z as z53 } from "zod";
30531
- var eventBlockKindSchema2 = z53.enum(eventBlockKindValues);
30532
- var eventSurfaceScopeSchema2 = z53.enum(eventSurfaceScopeValues);
30533
- var eventScheduleScopeSchema3 = z53.enum(eventScheduleScopeValues);
30534
- var eventCalendarSourceSchema = z53.object(
30556
+ import { z as z52 } from "zod";
30557
+ var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
30558
+ var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
30559
+ var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
30560
+ var eventCalendarSourceSchema = z52.object(
30535
30561
  {
30536
- events: z53.array(publicEventSchema).nullable().optional(),
30537
- siteId: z53.string(),
30538
- apiBaseUrl: z53.string().optional(),
30562
+ events: z52.array(publicEventSchema).nullable().optional(),
30563
+ siteId: z52.string(),
30564
+ apiBaseUrl: z52.string().optional(),
30539
30565
  stage: previewStageSchema.optional(),
30540
30566
  variant: eventCalendarDisplayModeSchema.nullable().optional(),
30541
30567
  displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
@@ -30543,78 +30569,80 @@ var eventCalendarSourceSchema = z53.object(
30543
30569
  listColumns: columnOptionSchema.optional(),
30544
30570
  layout: eventLayoutSchema.optional(),
30545
30571
  columns: columnOptionSchema.optional(),
30546
- eventsPerPage: z53.string().optional(),
30547
- paginationMode: z53.enum(["loadMore", "seeAllLink"]).optional(),
30548
- seeAllUrl: z53.string().optional(),
30549
- loadMoreText: z53.string().optional(),
30572
+ eventsPerPage: z52.string().optional(),
30573
+ paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
30574
+ seeAllUrl: z52.string().optional(),
30575
+ loadMoreText: z52.string().optional(),
30550
30576
  startOfWeek: weekStartSchema.optional(),
30551
30577
  calendarTabViews: calendarTabViewsSchema.optional(),
30552
- showFilters: z53.boolean().nullable().optional(),
30578
+ defaultCalendarView: eventCalendarDefaultViewSchema.optional(),
30579
+ showFilters: z52.boolean().nullable().optional(),
30553
30580
  showCategoryFilter: filterAutoShowSchema.optional(),
30554
- showVenueFilter: z53.boolean().nullable().optional(),
30555
- showStaffFilter: z53.boolean().nullable().optional(),
30581
+ showVenueFilter: z52.boolean().nullable().optional(),
30582
+ showStaffFilter: z52.boolean().nullable().optional(),
30556
30583
  kind: eventBlockKindSchema2.nullable().optional(),
30557
30584
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
30558
- filterEventPresets: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30585
+ filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30559
30586
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
30560
- filterCategoryIds: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30561
- filterStaffMemberId: z53.string().nullable().optional(),
30562
- filterVenueId: z53.string().nullable().optional(),
30587
+ filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30588
+ filterStaffMemberId: z52.string().nullable().optional(),
30589
+ filterVenueId: z52.string().nullable().optional(),
30563
30590
  buttonVariant: eventButtonVariantSchema.optional(),
30564
- buttonText: z53.string().optional(),
30565
- showVenue: z53.boolean().nullable().optional(),
30566
- showMap: z53.boolean().nullable().optional(),
30567
- showCapacity: z53.boolean().nullable().optional(),
30568
- emptyMessage: z53.string().optional(),
30569
- className: z53.string().optional()
30591
+ buttonText: z52.string().optional(),
30592
+ showVenue: z52.boolean().nullable().optional(),
30593
+ showMap: z52.boolean().nullable().optional(),
30594
+ showCapacity: z52.boolean().nullable().optional(),
30595
+ emptyMessage: z52.string().optional(),
30596
+ className: z52.string().optional()
30570
30597
  }
30571
30598
  );
30572
- var eventCalendarDisplaySchema = z53.object({
30573
- kind: z53.literal("event-calendar"),
30599
+ var eventCalendarDisplaySchema = z52.object({
30600
+ kind: z52.literal("event-calendar"),
30574
30601
  displayMode: eventCalendarDisplayModeSchema,
30575
- className: z53.string().nullable(),
30576
- events: z53.array(publicEventSchema),
30602
+ className: z52.string().nullable(),
30603
+ events: z52.array(publicEventSchema),
30577
30604
  listLayout: eventLayoutSchema,
30578
30605
  listColumns: columnOptionSchema,
30579
30606
  eventsPerPage: eventPageSizeSchema,
30580
30607
  paginationAction: eventListPaginationActionSchema,
30581
30608
  startOfWeek: weekStartSchema,
30582
30609
  calendarTabViews: calendarTabViewsSchema,
30583
- showFilters: z53.boolean(),
30610
+ defaultCalendarView: eventCalendarDefaultViewSchema,
30611
+ showFilters: z52.boolean(),
30584
30612
  showCategoryFilter: filterAutoShowSchema,
30585
- showVenueFilter: z53.boolean(),
30586
- showStaffFilter: z53.boolean(),
30613
+ showVenueFilter: z52.boolean(),
30614
+ showStaffFilter: z52.boolean(),
30587
30615
  eventKind: eventBlockKindSchema2,
30588
30616
  eventSurface: eventSurfaceScopeSchema2,
30589
- filterEventPresets: z53.string().nullable(),
30617
+ filterEventPresets: z52.string().nullable(),
30590
30618
  scheduleScope: eventScheduleScopeSchema3,
30591
- filterCategoryIds: z53.string().nullable(),
30592
- filterStaffMemberId: z53.string().nullable(),
30593
- filterVenueId: z53.string().nullable(),
30619
+ filterCategoryIds: z52.string().nullable(),
30620
+ filterStaffMemberId: z52.string().nullable(),
30621
+ filterVenueId: z52.string().nullable(),
30594
30622
  buttonVariant: eventButtonVariantSchema,
30595
- buttonText: z53.string(),
30596
- showVenue: z53.boolean(),
30597
- showMap: z53.boolean(),
30598
- showCapacity: z53.boolean(),
30599
- emptyMessage: z53.string()
30600
- });
30601
- var eventCalendarHydrationSchema = z53.object({
30602
- siteId: z53.string(),
30623
+ buttonText: z52.string(),
30624
+ showVenue: z52.boolean(),
30625
+ showMap: z52.boolean(),
30626
+ showCapacity: z52.boolean(),
30627
+ emptyMessage: z52.string()
30628
+ });
30629
+ var eventCalendarHydrationSchema = z52.object({
30630
+ siteId: z52.string(),
30603
30631
  stage: previewStageSchema.optional(),
30604
- prefetchedEvents: z53.boolean(),
30632
+ prefetchedEvents: z52.boolean(),
30605
30633
  eventKind: eventBlockKindSchema2,
30606
30634
  eventSurface: eventSurfaceScopeSchema2,
30607
- filterEventPresets: z53.string().nullable(),
30635
+ filterEventPresets: z52.string().nullable(),
30608
30636
  scheduleScope: eventScheduleScopeSchema3
30609
30637
  });
30610
- var eventCalendarRenderSchema = z53.object({
30638
+ var eventCalendarRenderSchema = z52.object({
30611
30639
  display: eventCalendarDisplaySchema,
30612
30640
  hydration: eventCalendarHydrationSchema
30613
30641
  });
30614
30642
  var eventCalendarIslandMetaCodec = createZodCodec(
30615
- z53.object({
30616
- siteId: z53.string(),
30617
- apiBaseUrl: z53.string().optional(),
30643
+ z52.object({
30644
+ siteId: z52.string(),
30645
+ apiBaseUrl: z52.string().optional(),
30618
30646
  stage: previewStageSchema.optional()
30619
30647
  })
30620
30648
  );
@@ -30644,6 +30672,7 @@ function buildEventCalendarDisplay(source) {
30644
30672
  }),
30645
30673
  startOfWeek: source.startOfWeek ?? "monday",
30646
30674
  calendarTabViews: source.calendarTabViews ?? "both",
30675
+ defaultCalendarView: source.defaultCalendarView ?? "month",
30647
30676
  showFilters: source.showFilters ?? true,
30648
30677
  showCategoryFilter: source.showCategoryFilter ?? "auto",
30649
30678
  showVenueFilter: source.showVenueFilter ?? false,
@@ -30706,6 +30735,9 @@ function normalizeEventCalendarContent(content) {
30706
30735
  ...variant ? { variant } : {},
30707
30736
  displayMode: normalizeEventCalendarDisplayMode(record.displayMode),
30708
30737
  listLayout: normalizeEventCalendarListLayout(record.listLayout),
30738
+ defaultCalendarView: normalizeEventCalendarDefaultView(
30739
+ record.defaultCalendarView
30740
+ ),
30709
30741
  kind,
30710
30742
  eventSurface: normalizeEventSurfaceScope(record.eventSurface),
30711
30743
  filterEventPresets: normalizeEventSurfacePresets(record.filterEventPresets),
@@ -30723,6 +30755,9 @@ function normalizeEventCalendarDisplayMode(value) {
30723
30755
  function normalizeEventCalendarListLayout(value) {
30724
30756
  return isEventCalendarListLayout(value) ? value : void 0;
30725
30757
  }
30758
+ function normalizeEventCalendarDefaultView(value) {
30759
+ return isEventCalendarDefaultView(value) ? value : void 0;
30760
+ }
30726
30761
  var eventCalendarLayout = [
30727
30762
  styledSection({
30728
30763
  children: sectionContainer(
@@ -30782,6 +30817,9 @@ var eventCalendarLayout = [
30782
30817
  calendarTabViews: {
30783
30818
  $bind: { from: "content.calendarTabViews", fallback: "both" }
30784
30819
  },
30820
+ defaultCalendarView: {
30821
+ $bind: { from: "content.defaultCalendarView", fallback: "month" }
30822
+ },
30785
30823
  // Filtering options
30786
30824
  showFilters: {
30787
30825
  $bind: { from: "content.showFilters", fallback: true }
@@ -30848,8 +30886,7 @@ var eventCalendarAdditionalFields = [
30848
30886
  defaultValue: "combined",
30849
30887
  options: [
30850
30888
  { value: "combined", label: "Combined (List + Calendar tabs)" },
30851
- { value: "month", label: "Month calendar" },
30852
- { value: "week", label: "Week agenda" },
30889
+ { value: "calendar", label: "Calendar" },
30853
30890
  { value: "timetable", label: "Timetable" },
30854
30891
  { value: "list", label: "List" }
30855
30892
  ],
@@ -30888,7 +30925,12 @@ var eventCalendarAdditionalFields = [
30888
30925
  ],
30889
30926
  ui: {
30890
30927
  intent: "display",
30891
- visibleWhen: { field: "listLayout", equals: "grid" }
30928
+ visibleWhen: {
30929
+ allOf: [
30930
+ { field: "variant", oneOf: ["combined", "list"] },
30931
+ { field: "listLayout", equals: "grid" }
30932
+ ]
30933
+ }
30892
30934
  }
30893
30935
  },
30894
30936
  {
@@ -30936,7 +30978,12 @@ var eventCalendarAdditionalFields = [
30936
30978
  required: false,
30937
30979
  ui: {
30938
30980
  intent: "display",
30939
- visibleWhen: { field: "paginationMode", equals: "seeAllLink" }
30981
+ visibleWhen: {
30982
+ allOf: [
30983
+ { field: "variant", oneOf: ["combined", "list"] },
30984
+ { field: "paginationMode", equals: "seeAllLink" }
30985
+ ]
30986
+ }
30940
30987
  }
30941
30988
  },
30942
30989
  {
@@ -30969,7 +31016,7 @@ var eventCalendarAdditionalFields = [
30969
31016
  intent: "display",
30970
31017
  visibleWhen: {
30971
31018
  field: "variant",
30972
- oneOf: ["combined", "month", "week"]
31019
+ oneOf: ["combined", "calendar", "timetable"]
30973
31020
  }
30974
31021
  }
30975
31022
  },
@@ -30992,6 +31039,33 @@ var eventCalendarAdditionalFields = [
30992
31039
  visibleWhen: { field: "variant", equals: "combined" }
30993
31040
  }
30994
31041
  },
31042
+ {
31043
+ id: "defaultCalendarView",
31044
+ type: "select",
31045
+ label: "Calendar view",
31046
+ description: "Choose the standalone calendar view, or the first view in combined mode",
31047
+ required: false,
31048
+ multiple: false,
31049
+ defaultValue: "month",
31050
+ options: [
31051
+ { value: "month", label: "Month" },
31052
+ { value: "week", label: "Week" }
31053
+ ],
31054
+ ui: {
31055
+ intent: "display",
31056
+ visibleWhen: {
31057
+ anyOf: [
31058
+ { field: "variant", equals: "calendar" },
31059
+ {
31060
+ allOf: [
31061
+ { field: "variant", equals: "combined" },
31062
+ { field: "calendarTabViews", equals: "both" }
31063
+ ]
31064
+ }
31065
+ ]
31066
+ }
31067
+ }
31068
+ },
30995
31069
  // Filtering options
30996
31070
  {
30997
31071
  id: "kind",
@@ -31019,7 +31093,7 @@ var eventCalendarAdditionalFields = [
31019
31093
  intent: "display",
31020
31094
  visibleWhen: {
31021
31095
  field: "variant",
31022
- oneOf: ["combined", "list", "timetable"]
31096
+ oneOf: ["combined", "calendar", "list", "timetable"]
31023
31097
  }
31024
31098
  }
31025
31099
  },
@@ -31039,8 +31113,10 @@ var eventCalendarAdditionalFields = [
31039
31113
  ui: {
31040
31114
  intent: "display",
31041
31115
  visibleWhen: {
31042
- field: "variant",
31043
- oneOf: ["combined", "list", "timetable"]
31116
+ allOf: [
31117
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31118
+ { field: "showFilters", equals: true }
31119
+ ]
31044
31120
  }
31045
31121
  }
31046
31122
  },
@@ -31054,8 +31130,10 @@ var eventCalendarAdditionalFields = [
31054
31130
  ui: {
31055
31131
  intent: "display",
31056
31132
  visibleWhen: {
31057
- field: "variant",
31058
- oneOf: ["combined", "list", "timetable"]
31133
+ allOf: [
31134
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31135
+ { field: "showFilters", equals: true }
31136
+ ]
31059
31137
  }
31060
31138
  }
31061
31139
  },
@@ -31069,8 +31147,10 @@ var eventCalendarAdditionalFields = [
31069
31147
  ui: {
31070
31148
  intent: "display",
31071
31149
  visibleWhen: {
31072
- field: "variant",
31073
- oneOf: ["combined", "list", "timetable"]
31150
+ allOf: [
31151
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31152
+ { field: "showFilters", equals: true }
31153
+ ]
31074
31154
  }
31075
31155
  }
31076
31156
  },
@@ -31084,8 +31164,15 @@ var eventCalendarAdditionalFields = [
31084
31164
  ui: {
31085
31165
  intent: "display",
31086
31166
  visibleWhen: {
31087
- field: "variant",
31088
- oneOf: ["combined", "list", "week", "timetable"]
31167
+ anyOf: [
31168
+ { field: "variant", oneOf: ["combined", "list", "timetable"] },
31169
+ {
31170
+ allOf: [
31171
+ { field: "variant", equals: "calendar" },
31172
+ { field: "defaultCalendarView", equals: "week" }
31173
+ ]
31174
+ }
31175
+ ]
31089
31176
  }
31090
31177
  }
31091
31178
  },
@@ -31201,8 +31288,7 @@ var eventCalendarAdditionalFields = [
31201
31288
  ];
31202
31289
  var eventCalendarVariants = {
31203
31290
  combined: eventCalendarLayout[0],
31204
- month: eventCalendarLayout[0],
31205
- week: eventCalendarLayout[0],
31291
+ calendar: eventCalendarLayout[0],
31206
31292
  timetable: eventCalendarLayout[0],
31207
31293
  list: eventCalendarLayout[0]
31208
31294
  };
@@ -31214,8 +31300,7 @@ var eventCalendarDerivedFields = [
31214
31300
  multiple: false,
31215
31301
  options: [
31216
31302
  { value: "combined" },
31217
- { value: "month" },
31218
- { value: "week" },
31303
+ { value: "calendar" },
31219
31304
  { value: "timetable" },
31220
31305
  { value: "list" }
31221
31306
  ]
@@ -31228,6 +31313,13 @@ var eventCalendarDerivedFields = [
31228
31313
  options: eventCalendarListLayoutOptions.map((option) => ({
31229
31314
  value: option.id
31230
31315
  }))
31316
+ },
31317
+ {
31318
+ id: "defaultCalendarView",
31319
+ type: "select",
31320
+ required: false,
31321
+ multiple: false,
31322
+ options: [{ value: "month" }, { value: "week" }]
31231
31323
  }
31232
31324
  ];
31233
31325
  var eventCalendarContentShape = {
@@ -31276,8 +31368,7 @@ var eventCalendarConfig = {
31276
31368
  defaultVariant: "combined",
31277
31369
  variantOptions: {
31278
31370
  combined: { label: "Combined" },
31279
- month: { label: "Month" },
31280
- week: { label: "Week" },
31371
+ calendar: { label: "Calendar" },
31281
31372
  timetable: { label: "Timetable" },
31282
31373
  list: { label: "List" }
31283
31374
  }
@@ -31323,7 +31414,7 @@ var eventCalendarBlockDefinition = {
31323
31414
  };
31324
31415
 
31325
31416
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31326
- import { z as z54 } from "zod";
31417
+ import { z as z53 } from "zod";
31327
31418
 
31328
31419
  // ../blocks/src/system/blocks/offerings-preview/model.ts
31329
31420
  var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
@@ -31415,13 +31506,13 @@ function isRecord5(value) {
31415
31506
  }
31416
31507
 
31417
31508
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31418
- var publicRouteCandidatesSchema = z54.object({
31419
- routes: z54.array(z54.object({
31420
- entityId: z54.string(),
31421
- path: z54.string(),
31422
- title: z54.string(),
31423
- kind: z54.enum(["page", "content"]),
31424
- contentTypeKey: z54.string().nullable().optional()
31509
+ var publicRouteCandidatesSchema = z53.object({
31510
+ routes: z53.array(z53.object({
31511
+ entityId: z53.string(),
31512
+ path: z53.string(),
31513
+ title: z53.string(),
31514
+ kind: z53.enum(["page", "content"]),
31515
+ contentTypeKey: z53.string().nullable().optional()
31425
31516
  }))
31426
31517
  });
31427
31518
  var groupOverrideFields = [
@@ -31819,7 +31910,7 @@ function isRecord6(value) {
31819
31910
  }
31820
31911
 
31821
31912
  // ../blocks/src/system/blocks/embed.ts
31822
- import { z as z55 } from "zod";
31913
+ import { z as z54 } from "zod";
31823
31914
  var embedFields = [
31824
31915
  // Section heading
31825
31916
  parseFieldDefinition({
@@ -32050,18 +32141,18 @@ var embedManifest = createBlockManifest({
32050
32141
  spacing: "lg"
32051
32142
  }
32052
32143
  });
32053
- var embedEntrySchema = z55.object({
32054
- id: z55.string(),
32055
- identifier: z55.string(),
32056
- title: z55.string(),
32057
- slug: z55.string().nullable().optional(),
32058
- content: z55.record(z55.string(), z55.unknown()).optional(),
32059
- publishedAt: z55.string().nullable().optional()
32144
+ var embedEntrySchema = z54.object({
32145
+ id: z54.string(),
32146
+ identifier: z54.string(),
32147
+ title: z54.string(),
32148
+ slug: z54.string().nullable().optional(),
32149
+ content: z54.record(z54.string(), z54.unknown()).optional(),
32150
+ publishedAt: z54.string().nullable().optional()
32060
32151
  });
32061
32152
  var embedBlockDefinition = {
32062
32153
  manifest: embedManifest,
32063
32154
  dataSchemas: {
32064
- entries: z55.array(embedEntrySchema).optional()
32155
+ entries: z54.array(embedEntrySchema).optional()
32065
32156
  },
32066
32157
  dataLoaders: {
32067
32158
  entries: {
@@ -33244,53 +33335,50 @@ var fileDownloadBlockDefinition = {
33244
33335
  manifest: fileDownloadManifest
33245
33336
  };
33246
33337
 
33247
- // ../blocks/src/system/blocks/shop.ts
33248
- import { z as z59 } from "zod";
33249
-
33250
33338
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33251
- import { z as z58 } from "zod";
33339
+ import { z as z57 } from "zod";
33252
33340
 
33253
33341
  // ../blocks/src/system/blocks/products/shared.ts
33254
- import { z as z56 } from "zod";
33255
- var publicProductVariantSchema = z56.object({
33256
- id: z56.string(),
33257
- title: z56.string(),
33258
- sku: z56.string().nullable(),
33259
- priceCents: z56.number(),
33260
- stockQuantity: z56.number().nullable(),
33261
- soldOut: z56.boolean()
33262
- });
33263
- var publicProductSchema = z56.object({
33264
- id: z56.string(),
33265
- contentEntryId: z56.string().nullable(),
33266
- title: z56.string(),
33267
- slug: z56.string(),
33268
- path: z56.string().nullable(),
33269
- status: z56.enum(["draft", "active"]),
33270
- priceCents: z56.number(),
33271
- currency: z56.string(),
33272
- productType: z56.enum(["physical", "digital"]),
33273
- requiresShipping: z56.boolean(),
33274
- hasVariants: z56.boolean(),
33275
- trackInventory: z56.boolean(),
33276
- soldOut: z56.boolean(),
33277
- category: z56.object({
33278
- id: z56.string(),
33279
- name: z56.string(),
33280
- slug: z56.string()
33342
+ import { z as z55 } from "zod";
33343
+ var publicProductVariantSchema = z55.object({
33344
+ id: z55.string(),
33345
+ title: z55.string(),
33346
+ sku: z55.string().nullable(),
33347
+ priceCents: z55.number(),
33348
+ stockQuantity: z55.number().nullable(),
33349
+ soldOut: z55.boolean()
33350
+ });
33351
+ var publicProductSchema = z55.object({
33352
+ id: z55.string(),
33353
+ contentEntryId: z55.string().nullable(),
33354
+ title: z55.string(),
33355
+ slug: z55.string(),
33356
+ path: z55.string().nullable(),
33357
+ status: z55.enum(["draft", "active"]),
33358
+ priceCents: z55.number(),
33359
+ currency: z55.string(),
33360
+ productType: z55.enum(["physical", "digital"]),
33361
+ requiresShipping: z55.boolean(),
33362
+ hasVariants: z55.boolean(),
33363
+ trackInventory: z55.boolean(),
33364
+ soldOut: z55.boolean(),
33365
+ category: z55.object({
33366
+ id: z55.string(),
33367
+ name: z55.string(),
33368
+ slug: z55.string()
33281
33369
  }).nullable(),
33282
- summary: z56.string().nullable(),
33283
- body: z56.unknown().nullable(),
33284
- gallery: z56.array(
33285
- z56.object({
33286
- url: z56.string(),
33287
- alt: z56.string().nullable()
33370
+ summary: z55.string().nullable(),
33371
+ body: z55.unknown().nullable(),
33372
+ gallery: z55.array(
33373
+ z55.object({
33374
+ url: z55.string(),
33375
+ alt: z55.string().nullable()
33288
33376
  })
33289
33377
  ),
33290
- variants: z56.array(publicProductVariantSchema)
33378
+ variants: z55.array(publicProductVariantSchema)
33291
33379
  });
33292
- var publicProductsResponseSchema = z56.object({
33293
- products: z56.array(publicProductSchema)
33380
+ var publicProductsResponseSchema = z55.object({
33381
+ products: z55.array(publicProductSchema)
33294
33382
  });
33295
33383
 
33296
33384
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -33354,27 +33442,27 @@ function deriveCreditProductLabels(products, options = {}) {
33354
33442
  }
33355
33443
 
33356
33444
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
33357
- import { z as z57 } from "zod";
33358
- var storedProductCartItemSchema = z57.object({
33359
- kind: z57.literal("product"),
33360
- productId: z57.string().min(1),
33361
- productCategoryId: z57.string().min(1).optional().nullable(),
33362
- variantId: z57.string().min(1).optional().nullable(),
33363
- title: z57.string().min(1),
33364
- variantTitle: z57.string().optional().nullable(),
33365
- quantity: z57.number().finite(),
33366
- unitPriceCents: z57.number().finite(),
33367
- currency: z57.string().min(1),
33368
- imageUrl: z57.string().optional().nullable(),
33369
- soldOut: z57.boolean().optional()
33370
- });
33371
- var storedPassCartItemSchema = z57.object({
33372
- kind: z57.literal("pass"),
33373
- passId: z57.string().min(1),
33374
- title: z57.string().min(1),
33375
- quantity: z57.number().finite().optional(),
33376
- unitPriceCents: z57.number().finite(),
33377
- currency: z57.string().min(1)
33445
+ import { z as z56 } from "zod";
33446
+ var storedProductCartItemSchema = z56.object({
33447
+ kind: z56.literal("product"),
33448
+ productId: z56.string().min(1),
33449
+ productCategoryId: z56.string().min(1).optional().nullable(),
33450
+ variantId: z56.string().min(1).optional().nullable(),
33451
+ title: z56.string().min(1),
33452
+ variantTitle: z56.string().optional().nullable(),
33453
+ quantity: z56.number().finite(),
33454
+ unitPriceCents: z56.number().finite(),
33455
+ currency: z56.string().min(1),
33456
+ imageUrl: z56.string().optional().nullable(),
33457
+ soldOut: z56.boolean().optional()
33458
+ });
33459
+ var storedPassCartItemSchema = z56.object({
33460
+ kind: z56.literal("pass"),
33461
+ passId: z56.string().min(1),
33462
+ title: z56.string().min(1),
33463
+ quantity: z56.number().finite().optional(),
33464
+ unitPriceCents: z56.number().finite(),
33465
+ currency: z56.string().min(1)
33378
33466
  });
33379
33467
  function deriveCommerceCheckoutState(state) {
33380
33468
  if (state.items.length === 0) {
@@ -33608,214 +33696,214 @@ function formatValidity(days) {
33608
33696
  }
33609
33697
 
33610
33698
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33611
- var shopModeSchema = z58.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
33612
- var contentEntrySchema3 = z58.object({
33613
- id: z58.string().nullable().optional(),
33614
- slug: z58.string().nullable().optional()
33699
+ var shopModeSchema = z57.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
33700
+ var contentEntrySchema3 = z57.object({
33701
+ id: z57.string().nullable().optional(),
33702
+ slug: z57.string().nullable().optional()
33615
33703
  }).nullable();
33616
- var shopSourceSchema = z58.object({
33617
- className: z58.string().nullable().optional(),
33704
+ var shopSourceSchema = z57.object({
33705
+ className: z57.string().nullable().optional(),
33618
33706
  mode: shopModeSchema.optional(),
33619
- heading: z58.string().nullable().optional(),
33620
- productSlug: z58.string().nullable().optional(),
33621
- showPasses: z58.boolean().optional(),
33622
- showMemberships: z58.boolean().optional(),
33623
- layout: z58.enum(["grid", "list"]).optional(),
33624
- columns: z58.string().optional(),
33625
- showDescriptions: z58.boolean().optional(),
33626
- showSummary: z58.boolean().optional(),
33627
- showBody: z58.boolean().optional(),
33628
- showPrices: z58.boolean().optional(),
33629
- showValidityPeriod: z58.boolean().optional(),
33630
- showPricePerCredit: z58.boolean().nullable().optional(),
33631
- passesHeading: z58.string().optional(),
33632
- membershipsHeading: z58.string().optional(),
33633
- buyButtonText: z58.string().optional(),
33634
- addButtonText: z58.string().optional(),
33635
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"]).optional(),
33636
- subscribeButtonText: z58.string().optional(),
33637
- emptyStateText: z58.string().optional(),
33638
- checkoutButtonText: z58.string().optional(),
33639
- clearButtonText: z58.string().optional(),
33640
- submitButtonText: z58.string().optional(),
33707
+ heading: z57.string().nullable().optional(),
33708
+ productSlug: z57.string().nullable().optional(),
33709
+ showPasses: z57.boolean().optional(),
33710
+ showMemberships: z57.boolean().optional(),
33711
+ layout: z57.enum(["grid", "list"]).optional(),
33712
+ columns: z57.string().optional(),
33713
+ showDescriptions: z57.boolean().optional(),
33714
+ showSummary: z57.boolean().optional(),
33715
+ showBody: z57.boolean().optional(),
33716
+ showPrices: z57.boolean().optional(),
33717
+ showValidityPeriod: z57.boolean().optional(),
33718
+ showPricePerCredit: z57.boolean().nullable().optional(),
33719
+ passesHeading: z57.string().optional(),
33720
+ membershipsHeading: z57.string().optional(),
33721
+ buyButtonText: z57.string().optional(),
33722
+ addButtonText: z57.string().optional(),
33723
+ passPurchaseMode: z57.enum(["add_to_cart", "buy_now"]).optional(),
33724
+ subscribeButtonText: z57.string().optional(),
33725
+ emptyStateText: z57.string().optional(),
33726
+ checkoutButtonText: z57.string().optional(),
33727
+ clearButtonText: z57.string().optional(),
33728
+ submitButtonText: z57.string().optional(),
33641
33729
  contentEntry: contentEntrySchema3.optional(),
33642
- passes: z58.array(publicPassProductSchema).nullable().optional(),
33643
- memberships: z58.array(publicMembershipProductSchema).nullable().optional(),
33644
- products: z58.array(publicProductSchema).nullable().optional(),
33645
- siteId: z58.string().optional(),
33646
- apiBaseUrl: z58.string().optional(),
33730
+ passes: z57.array(publicPassProductSchema).nullable().optional(),
33731
+ memberships: z57.array(publicMembershipProductSchema).nullable().optional(),
33732
+ products: z57.array(publicProductSchema).nullable().optional(),
33733
+ siteId: z57.string().optional(),
33734
+ apiBaseUrl: z57.string().optional(),
33647
33735
  stage: previewStageSchema.optional()
33648
33736
  });
33649
- var productVariantOptionDisplaySchema = z58.object({
33650
- id: z58.string(),
33651
- label: z58.string(),
33652
- soldOut: z58.boolean()
33653
- });
33654
- var productCardDisplaySchema = z58.object({
33655
- productId: z58.string(),
33656
- title: z58.string(),
33657
- path: z58.string().nullable(),
33658
- summary: z58.string().nullable(),
33659
- priceLabel: z58.string().nullable(),
33660
- image: z58.object({
33661
- url: z58.string(),
33662
- alt: z58.string().nullable()
33737
+ var productVariantOptionDisplaySchema = z57.object({
33738
+ id: z57.string(),
33739
+ label: z57.string(),
33740
+ soldOut: z57.boolean()
33741
+ });
33742
+ var productCardDisplaySchema = z57.object({
33743
+ productId: z57.string(),
33744
+ title: z57.string(),
33745
+ path: z57.string().nullable(),
33746
+ summary: z57.string().nullable(),
33747
+ priceLabel: z57.string().nullable(),
33748
+ image: z57.object({
33749
+ url: z57.string(),
33750
+ alt: z57.string().nullable()
33663
33751
  }).nullable(),
33664
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33665
- selectedVariantId: z58.string().nullable(),
33666
- selectionLabel: z58.string(),
33667
- actionLabel: z58.string(),
33668
- soldOut: z58.boolean()
33669
- });
33670
- var productListDisplaySchema = z58.object({
33671
- kind: z58.literal("product-list"),
33672
- state: z58.enum(["empty", "ready"]),
33673
- heading: z58.string().nullable(),
33674
- className: z58.string().nullable(),
33675
- layout: z58.enum(["grid", "list"]),
33676
- columns: z58.string(),
33677
- emptyMessage: z58.string(),
33678
- cards: z58.array(productCardDisplaySchema)
33679
- });
33680
- var productDetailDisplaySchema = z58.discriminatedUnion("state", [
33681
- z58.object({
33682
- kind: z58.literal("product-detail"),
33683
- state: z58.literal("empty"),
33684
- heading: z58.string().nullable(),
33685
- className: z58.string().nullable(),
33686
- emptyMessage: z58.string()
33752
+ variantOptions: z57.array(productVariantOptionDisplaySchema),
33753
+ selectedVariantId: z57.string().nullable(),
33754
+ selectionLabel: z57.string(),
33755
+ actionLabel: z57.string(),
33756
+ soldOut: z57.boolean()
33757
+ });
33758
+ var productListDisplaySchema = z57.object({
33759
+ kind: z57.literal("product-list"),
33760
+ state: z57.enum(["empty", "ready"]),
33761
+ heading: z57.string().nullable(),
33762
+ className: z57.string().nullable(),
33763
+ layout: z57.enum(["grid", "list"]),
33764
+ columns: z57.string(),
33765
+ emptyMessage: z57.string(),
33766
+ cards: z57.array(productCardDisplaySchema)
33767
+ });
33768
+ var productDetailDisplaySchema = z57.discriminatedUnion("state", [
33769
+ z57.object({
33770
+ kind: z57.literal("product-detail"),
33771
+ state: z57.literal("empty"),
33772
+ heading: z57.string().nullable(),
33773
+ className: z57.string().nullable(),
33774
+ emptyMessage: z57.string()
33687
33775
  }),
33688
- z58.object({
33689
- kind: z58.literal("product-detail"),
33690
- state: z58.literal("ready"),
33691
- heading: z58.string().nullable(),
33692
- className: z58.string().nullable(),
33693
- title: z58.string(),
33694
- priceLabel: z58.string(),
33695
- summary: z58.string().nullable(),
33696
- categoryLabel: z58.string().nullable(),
33697
- gallery: z58.array(z58.object({
33698
- url: z58.string(),
33699
- alt: z58.string().nullable()
33776
+ z57.object({
33777
+ kind: z57.literal("product-detail"),
33778
+ state: z57.literal("ready"),
33779
+ heading: z57.string().nullable(),
33780
+ className: z57.string().nullable(),
33781
+ title: z57.string(),
33782
+ priceLabel: z57.string(),
33783
+ summary: z57.string().nullable(),
33784
+ categoryLabel: z57.string().nullable(),
33785
+ gallery: z57.array(z57.object({
33786
+ url: z57.string(),
33787
+ alt: z57.string().nullable()
33700
33788
  })),
33701
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33702
- selectedVariantId: z58.string().nullable(),
33703
- selectionLabel: z58.string(),
33704
- actionLabel: z58.string(),
33705
- soldOut: z58.boolean(),
33706
- body: z58.unknown().nullable()
33789
+ variantOptions: z57.array(productVariantOptionDisplaySchema),
33790
+ selectedVariantId: z57.string().nullable(),
33791
+ selectionLabel: z57.string(),
33792
+ actionLabel: z57.string(),
33793
+ soldOut: z57.boolean(),
33794
+ body: z57.unknown().nullable()
33707
33795
  })
33708
33796
  ]);
33709
- var passCardDisplaySchema = z58.object({
33710
- id: z58.string(),
33711
- title: z58.string(),
33712
- description: z58.string().nullable(),
33713
- priceLabel: z58.string(),
33714
- creditsLabel: z58.string(),
33715
- perCreditLabel: z58.string().nullable(),
33716
- validityLabel: z58.string().nullable(),
33717
- actionLabel: z58.string()
33718
- });
33719
- var membershipCardDisplaySchema = z58.object({
33720
- id: z58.string(),
33721
- title: z58.string(),
33722
- description: z58.string().nullable(),
33723
- priceLabel: z58.string(),
33724
- intervalLabel: z58.string(),
33725
- actionLabel: z58.string()
33726
- });
33727
- var passesMembershipsDisplaySchema = z58.object({
33728
- kind: z58.literal("passes-memberships"),
33729
- state: z58.enum(["empty", "ready"]),
33730
- className: z58.string().nullable(),
33731
- layout: z58.enum(["grid", "list"]),
33732
- columns: z58.string(),
33733
- emptyMessage: z58.string(),
33734
- passesHeading: z58.string(),
33735
- membershipsHeading: z58.string(),
33736
- passes: z58.array(passCardDisplaySchema),
33737
- memberships: z58.array(membershipCardDisplaySchema)
33738
- });
33739
- var cartLineDisplaySchema = z58.object({
33740
- key: z58.string(),
33741
- title: z58.string(),
33742
- priceLabel: z58.string(),
33743
- quantity: z58.number(),
33744
- quantityEditable: z58.boolean()
33745
- });
33746
- var cartDisplaySchema = z58.object({
33747
- kind: z58.literal("cart"),
33748
- state: z58.enum(["empty", "ready"]),
33749
- heading: z58.string().nullable(),
33750
- className: z58.string().nullable(),
33751
- emptyMessage: z58.string(),
33752
- supportText: z58.string().nullable(),
33753
- items: z58.array(cartLineDisplaySchema),
33754
- subtotalLabel: z58.string().nullable(),
33755
- checkoutButtonText: z58.string(),
33756
- clearButtonText: z58.string()
33757
- });
33758
- var checkoutDisplaySchema = z58.object({
33759
- kind: z58.literal("checkout"),
33760
- state: z58.enum(["empty", "blocked", "ready"]),
33761
- heading: z58.string().nullable(),
33762
- className: z58.string().nullable(),
33763
- message: z58.string().nullable(),
33764
- submitButtonText: z58.string()
33765
- });
33766
- var passesMembershipsHydrationSchema = z58.object({
33767
- passes: z58.array(publicPassProductSchema),
33768
- memberships: z58.array(publicMembershipProductSchema),
33769
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"])
33770
- });
33771
- var productListHydrationSchema = z58.object({
33772
- products: z58.array(publicProductSchema),
33773
- showSummary: z58.boolean(),
33774
- showPrices: z58.boolean(),
33775
- addButtonText: z58.string()
33776
- });
33777
- var productDetailHydrationSchema = z58.object({
33778
- products: z58.array(publicProductSchema),
33779
- productId: z58.string().nullable(),
33780
- showSummary: z58.boolean(),
33781
- showBody: z58.boolean(),
33782
- addButtonText: z58.string()
33783
- });
33784
- var cartHydrationSchema = z58.object({
33785
- emptyStateText: z58.string(),
33786
- checkoutButtonText: z58.string(),
33787
- clearButtonText: z58.string()
33788
- });
33789
- var checkoutHydrationSchema = z58.object({
33790
- emptyStateText: z58.string(),
33791
- submitButtonText: z58.string()
33792
- });
33793
- var passesMembershipsRenderSchema = z58.object({
33797
+ var passCardDisplaySchema = z57.object({
33798
+ id: z57.string(),
33799
+ title: z57.string(),
33800
+ description: z57.string().nullable(),
33801
+ priceLabel: z57.string(),
33802
+ creditsLabel: z57.string(),
33803
+ perCreditLabel: z57.string().nullable(),
33804
+ validityLabel: z57.string().nullable(),
33805
+ actionLabel: z57.string()
33806
+ });
33807
+ var membershipCardDisplaySchema = z57.object({
33808
+ id: z57.string(),
33809
+ title: z57.string(),
33810
+ description: z57.string().nullable(),
33811
+ priceLabel: z57.string(),
33812
+ intervalLabel: z57.string(),
33813
+ actionLabel: z57.string()
33814
+ });
33815
+ var passesMembershipsDisplaySchema = z57.object({
33816
+ kind: z57.literal("passes-memberships"),
33817
+ state: z57.enum(["empty", "ready"]),
33818
+ className: z57.string().nullable(),
33819
+ layout: z57.enum(["grid", "list"]),
33820
+ columns: z57.string(),
33821
+ emptyMessage: z57.string(),
33822
+ passesHeading: z57.string(),
33823
+ membershipsHeading: z57.string(),
33824
+ passes: z57.array(passCardDisplaySchema),
33825
+ memberships: z57.array(membershipCardDisplaySchema)
33826
+ });
33827
+ var cartLineDisplaySchema = z57.object({
33828
+ key: z57.string(),
33829
+ title: z57.string(),
33830
+ priceLabel: z57.string(),
33831
+ quantity: z57.number(),
33832
+ quantityEditable: z57.boolean()
33833
+ });
33834
+ var cartDisplaySchema = z57.object({
33835
+ kind: z57.literal("cart"),
33836
+ state: z57.enum(["empty", "ready"]),
33837
+ heading: z57.string().nullable(),
33838
+ className: z57.string().nullable(),
33839
+ emptyMessage: z57.string(),
33840
+ supportText: z57.string().nullable(),
33841
+ items: z57.array(cartLineDisplaySchema),
33842
+ subtotalLabel: z57.string().nullable(),
33843
+ checkoutButtonText: z57.string(),
33844
+ clearButtonText: z57.string()
33845
+ });
33846
+ var checkoutDisplaySchema = z57.object({
33847
+ kind: z57.literal("checkout"),
33848
+ state: z57.enum(["empty", "blocked", "ready"]),
33849
+ heading: z57.string().nullable(),
33850
+ className: z57.string().nullable(),
33851
+ message: z57.string().nullable(),
33852
+ submitButtonText: z57.string()
33853
+ });
33854
+ var passesMembershipsHydrationSchema = z57.object({
33855
+ passes: z57.array(publicPassProductSchema),
33856
+ memberships: z57.array(publicMembershipProductSchema),
33857
+ passPurchaseMode: z57.enum(["add_to_cart", "buy_now"])
33858
+ });
33859
+ var productListHydrationSchema = z57.object({
33860
+ products: z57.array(publicProductSchema),
33861
+ showSummary: z57.boolean(),
33862
+ showPrices: z57.boolean(),
33863
+ addButtonText: z57.string()
33864
+ });
33865
+ var productDetailHydrationSchema = z57.object({
33866
+ products: z57.array(publicProductSchema),
33867
+ productId: z57.string().nullable(),
33868
+ showSummary: z57.boolean(),
33869
+ showBody: z57.boolean(),
33870
+ addButtonText: z57.string()
33871
+ });
33872
+ var cartHydrationSchema = z57.object({
33873
+ emptyStateText: z57.string(),
33874
+ checkoutButtonText: z57.string(),
33875
+ clearButtonText: z57.string()
33876
+ });
33877
+ var checkoutHydrationSchema = z57.object({
33878
+ emptyStateText: z57.string(),
33879
+ submitButtonText: z57.string()
33880
+ });
33881
+ var passesMembershipsRenderSchema = z57.object({
33794
33882
  display: passesMembershipsDisplaySchema,
33795
33883
  hydration: passesMembershipsHydrationSchema
33796
33884
  });
33797
- var productListRenderSchema = z58.object({
33885
+ var productListRenderSchema = z57.object({
33798
33886
  display: productListDisplaySchema,
33799
33887
  hydration: productListHydrationSchema
33800
33888
  });
33801
- var productDetailRenderSchema = z58.object({
33889
+ var productDetailRenderSchema = z57.object({
33802
33890
  display: productDetailDisplaySchema,
33803
33891
  hydration: productDetailHydrationSchema
33804
33892
  });
33805
- var cartRenderSchema = z58.object({
33893
+ var cartRenderSchema = z57.object({
33806
33894
  display: cartDisplaySchema,
33807
33895
  hydration: cartHydrationSchema
33808
33896
  });
33809
- var checkoutRenderSchema = z58.object({
33897
+ var checkoutRenderSchema = z57.object({
33810
33898
  display: checkoutDisplaySchema,
33811
33899
  hydration: checkoutHydrationSchema
33812
33900
  });
33813
33901
  function resolveShowPricePerCredit(source) {
33814
33902
  return source.showPricePerCredit ?? true;
33815
33903
  }
33816
- var shopIslandMetaCodec = createZodCodec(z58.object({
33817
- siteId: z58.string().optional(),
33818
- apiBaseUrl: z58.string().optional(),
33904
+ var shopIslandMetaCodec = createZodCodec(z57.object({
33905
+ siteId: z57.string().optional(),
33906
+ apiBaseUrl: z57.string().optional(),
33819
33907
  stage: previewStageSchema.optional()
33820
33908
  }));
33821
33909
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -34193,9 +34281,9 @@ var shopBlockDefinition = {
34193
34281
  runtime: shopBlockRuntime,
34194
34282
  dataSchemas: {
34195
34283
  // listPublicPasses returns { passes: [...] }
34196
- passes: z59.object({ passes: z59.array(publicPassProductSchema) }).optional(),
34284
+ passes: publicPassProductCollectionSchema.optional(),
34197
34285
  // listPublicMemberships returns { memberships: [...] }
34198
- memberships: z59.object({ memberships: z59.array(publicMembershipProductSchema) }).optional()
34286
+ memberships: publicMembershipProductCollectionSchema.optional()
34199
34287
  },
34200
34288
  dataLoaders: {
34201
34289
  // Load passes for display
@@ -34218,7 +34306,7 @@ var shopBlockDefinition = {
34218
34306
  };
34219
34307
 
34220
34308
  // ../blocks/src/system/blocks/product-list.ts
34221
- import { z as z60 } from "zod";
34309
+ import { z as z58 } from "zod";
34222
34310
  var productListManifest = createBlockManifest({
34223
34311
  id: "block.product-list",
34224
34312
  version: "1.0.0",
@@ -34351,7 +34439,7 @@ var productListBlockDefinition = {
34351
34439
  }
34352
34440
  }
34353
34441
  };
34354
- var productListDataSchema = z60.object({
34442
+ var productListDataSchema = z58.object({
34355
34443
  products: publicProductsResponseSchema.optional()
34356
34444
  });
34357
34445
 
@@ -34612,72 +34700,72 @@ var checkoutBlockDefinition = {
34612
34700
  };
34613
34701
 
34614
34702
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
34615
- import { z as z61 } from "zod";
34616
- var publicGiftCardOfferSchema = z61.object({
34617
- id: z61.string(),
34618
- kind: z61.literal("gift_card"),
34619
- title: z61.string(),
34620
- description: z61.string().nullable(),
34621
- sortOrder: z61.number().int(),
34622
- giftCard: z61.object({
34623
- fixedDenominations: z61.array(z61.number().int().positive()),
34624
- customAmountEnabled: z61.boolean(),
34625
- customAmountMinCents: z61.number().int().positive(),
34626
- customAmountMaxCents: z61.number().int().positive()
34703
+ import { z as z59 } from "zod";
34704
+ var publicGiftCardOfferSchema = z59.object({
34705
+ id: z59.string(),
34706
+ kind: z59.literal("gift_card"),
34707
+ title: z59.string(),
34708
+ description: z59.string().nullable(),
34709
+ sortOrder: z59.number().int(),
34710
+ giftCard: z59.object({
34711
+ fixedDenominations: z59.array(z59.number().int().positive()),
34712
+ customAmountEnabled: z59.boolean(),
34713
+ customAmountMinCents: z59.number().int().positive(),
34714
+ customAmountMaxCents: z59.number().int().positive()
34627
34715
  }),
34628
- voucher: z61.null()
34629
- });
34630
- var publicVoucherOfferSchema = z61.object({
34631
- id: z61.string(),
34632
- kind: z61.literal("voucher"),
34633
- title: z61.string(),
34634
- description: z61.string().nullable(),
34635
- sortOrder: z61.number().int(),
34636
- giftCard: z61.null(),
34637
- voucher: z61.object({
34638
- purchaseAmountCents: z61.number().int().positive()
34716
+ voucher: z59.null()
34717
+ });
34718
+ var publicVoucherOfferSchema = z59.object({
34719
+ id: z59.string(),
34720
+ kind: z59.literal("voucher"),
34721
+ title: z59.string(),
34722
+ description: z59.string().nullable(),
34723
+ sortOrder: z59.number().int(),
34724
+ giftCard: z59.null(),
34725
+ voucher: z59.object({
34726
+ purchaseAmountCents: z59.number().int().positive()
34639
34727
  })
34640
34728
  });
34641
- var publicGiftingOffersResponseSchema = z61.object({
34642
- currency: z61.string(),
34643
- giftCards: z61.array(publicGiftCardOfferSchema),
34644
- vouchers: z61.array(publicVoucherOfferSchema)
34729
+ var publicGiftingOffersResponseSchema = z59.object({
34730
+ currency: z59.string(),
34731
+ giftCards: z59.array(publicGiftCardOfferSchema),
34732
+ vouchers: z59.array(publicVoucherOfferSchema)
34645
34733
  });
34646
- var giftingSourceSchema = z61.object({
34647
- siteId: z61.string().optional(),
34648
- apiBaseUrl: z61.string().optional(),
34734
+ var giftingSourceSchema = z59.object({
34735
+ siteId: z59.string().optional(),
34736
+ apiBaseUrl: z59.string().optional(),
34649
34737
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
34650
- className: z61.string().nullable().optional(),
34651
- heading: z61.string().nullable().optional(),
34652
- intro: z61.string().nullable().optional(),
34653
- giftCardsHeading: z61.string().nullable().optional(),
34654
- vouchersHeading: z61.string().nullable().optional(),
34655
- emptyStateText: z61.string().nullable().optional(),
34656
- checkoutButtonText: z61.string().nullable().optional(),
34657
- successMessage: z61.string().nullable().optional()
34658
- });
34659
- var giftingDisplaySchema = z61.object({
34660
- kind: z61.literal("gifting"),
34661
- state: z61.literal("ready"),
34662
- className: z61.string().nullable(),
34663
- heading: z61.string(),
34664
- intro: z61.string().nullable(),
34665
- giftCardsHeading: z61.string(),
34666
- vouchersHeading: z61.string(),
34667
- emptyStateText: z61.string()
34668
- });
34669
- var giftingHydrationSchema = z61.object({
34738
+ className: z59.string().nullable().optional(),
34739
+ heading: z59.string().nullable().optional(),
34740
+ intro: z59.string().nullable().optional(),
34741
+ giftCardsHeading: z59.string().nullable().optional(),
34742
+ vouchersHeading: z59.string().nullable().optional(),
34743
+ emptyStateText: z59.string().nullable().optional(),
34744
+ checkoutButtonText: z59.string().nullable().optional(),
34745
+ successMessage: z59.string().nullable().optional()
34746
+ });
34747
+ var giftingDisplaySchema = z59.object({
34748
+ kind: z59.literal("gifting"),
34749
+ state: z59.literal("ready"),
34750
+ className: z59.string().nullable(),
34751
+ heading: z59.string(),
34752
+ intro: z59.string().nullable(),
34753
+ giftCardsHeading: z59.string(),
34754
+ vouchersHeading: z59.string(),
34755
+ emptyStateText: z59.string()
34756
+ });
34757
+ var giftingHydrationSchema = z59.object({
34670
34758
  offers: publicGiftingOffersResponseSchema.nullable(),
34671
- checkoutButtonText: z61.string(),
34672
- successMessage: z61.string()
34759
+ checkoutButtonText: z59.string(),
34760
+ successMessage: z59.string()
34673
34761
  });
34674
- var giftingRenderSchema = z61.object({
34762
+ var giftingRenderSchema = z59.object({
34675
34763
  display: giftingDisplaySchema,
34676
34764
  hydration: giftingHydrationSchema
34677
34765
  });
34678
- var giftingIslandMetaCodec = createZodCodec(z61.object({
34679
- siteId: z61.string().optional(),
34680
- apiBaseUrl: z61.string().optional()
34766
+ var giftingIslandMetaCodec = createZodCodec(z59.object({
34767
+ siteId: z59.string().optional(),
34768
+ apiBaseUrl: z59.string().optional()
34681
34769
  }));
34682
34770
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
34683
34771
  "siteId",
@@ -34848,7 +34936,7 @@ var giftingBlockDefinition = {
34848
34936
  };
34849
34937
 
34850
34938
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34851
- import { z as z62 } from "zod";
34939
+ import { z as z60 } from "zod";
34852
34940
 
34853
34941
  // ../blocks/src/system/blocks/newsletter-signup-destination.ts
34854
34942
  function parseNewsletterSignupBlockId(value) {
@@ -34955,65 +35043,65 @@ function withOptionalPhone(fields3, includePhone) {
34955
35043
  }
34956
35044
 
34957
35045
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34958
- var newsletterPresetSchema = z62.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
34959
- var newsletterDestinationProviderSchema = z62.enum(["riverbank", "mailchimp"]);
34960
- var newsletterFieldSchema = z62.object({
34961
- id: z62.string(),
34962
- type: z62.enum(["email", "text"]),
34963
- label: z62.string(),
34964
- required: z62.boolean(),
34965
- placeholder: z62.string().optional()
34966
- });
34967
- var newsletterSignupBlockIdSchema = z62.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
34968
- var signedNewsletterDestinationRefSchema = z62.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
34969
- var newsletterPublicDestinationRefSchema = z62.discriminatedUnion("tag", [
34970
- z62.object({
34971
- tag: z62.literal("block_ref"),
35046
+ var newsletterPresetSchema = z60.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
35047
+ var newsletterDestinationProviderSchema = z60.enum(["riverbank", "mailchimp"]);
35048
+ var newsletterFieldSchema = z60.object({
35049
+ id: z60.string(),
35050
+ type: z60.enum(["email", "text"]),
35051
+ label: z60.string(),
35052
+ required: z60.boolean(),
35053
+ placeholder: z60.string().optional()
35054
+ });
35055
+ var newsletterSignupBlockIdSchema = z60.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
35056
+ var signedNewsletterDestinationRefSchema = z60.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
35057
+ var newsletterPublicDestinationRefSchema = z60.discriminatedUnion("tag", [
35058
+ z60.object({
35059
+ tag: z60.literal("block_ref"),
34972
35060
  blockId: newsletterSignupBlockIdSchema
34973
35061
  }),
34974
- z62.object({
34975
- tag: z62.literal("signed_destination_ref"),
35062
+ z60.object({
35063
+ tag: z60.literal("signed_destination_ref"),
34976
35064
  token: signedNewsletterDestinationRefSchema
34977
35065
  })
34978
35066
  ]);
34979
- var newsletterSourceSchema = z62.object({
34980
- blockId: z62.string().nullable().optional(),
34981
- siteId: z62.string().optional(),
34982
- apiBaseUrl: z62.string().optional(),
34983
- listId: z62.string().nullable().optional(),
35067
+ var newsletterSourceSchema = z60.object({
35068
+ blockId: z60.string().nullable().optional(),
35069
+ siteId: z60.string().optional(),
35070
+ apiBaseUrl: z60.string().optional(),
35071
+ listId: z60.string().nullable().optional(),
34984
35072
  destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
34985
35073
  preset: newsletterPresetSchema.optional(),
34986
- includePhone: z62.boolean().optional(),
34987
- buttonLabel: z62.string().nullable().optional(),
34988
- successMessage: z62.string().nullable().optional(),
34989
- privacyNote: z62.string().nullable().optional(),
34990
- tags: z62.string().nullable().optional(),
34991
- spamProtectionEnabled: z62.boolean().optional(),
34992
- className: z62.string().nullable().optional()
34993
- });
34994
- var newsletterDisplaySchema = z62.object({
34995
- kind: z62.literal("newsletter-form"),
34996
- className: z62.string().nullable(),
34997
- buttonLabel: z62.string(),
34998
- successMessage: z62.string().nullable(),
34999
- privacyNote: z62.string().nullable(),
35000
- fields: z62.array(newsletterFieldSchema)
35001
- });
35002
- var newsletterHydrationSchema = z62.object({
35074
+ includePhone: z60.boolean().optional(),
35075
+ buttonLabel: z60.string().nullable().optional(),
35076
+ successMessage: z60.string().nullable().optional(),
35077
+ privacyNote: z60.string().nullable().optional(),
35078
+ tags: z60.string().nullable().optional(),
35079
+ spamProtectionEnabled: z60.boolean().optional(),
35080
+ className: z60.string().nullable().optional()
35081
+ });
35082
+ var newsletterDisplaySchema = z60.object({
35083
+ kind: z60.literal("newsletter-form"),
35084
+ className: z60.string().nullable(),
35085
+ buttonLabel: z60.string(),
35086
+ successMessage: z60.string().nullable(),
35087
+ privacyNote: z60.string().nullable(),
35088
+ fields: z60.array(newsletterFieldSchema)
35089
+ });
35090
+ var newsletterHydrationSchema = z60.object({
35003
35091
  destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
35004
- listId: z62.string().nullable().optional(),
35092
+ listId: z60.string().nullable().optional(),
35005
35093
  preset: newsletterPresetSchema,
35006
- includePhone: z62.boolean(),
35007
- tags: z62.string().nullable().optional(),
35008
- spamProtectionEnabled: z62.boolean().optional()
35094
+ includePhone: z60.boolean(),
35095
+ tags: z60.string().nullable().optional(),
35096
+ spamProtectionEnabled: z60.boolean().optional()
35009
35097
  });
35010
- var newsletterRenderSchema = z62.object({
35098
+ var newsletterRenderSchema = z60.object({
35011
35099
  display: newsletterDisplaySchema,
35012
35100
  hydration: newsletterHydrationSchema
35013
35101
  });
35014
- var newsletterIslandMetaCodec = createZodCodec(z62.object({
35015
- siteId: z62.string().optional(),
35016
- apiBaseUrl: z62.string().optional()
35102
+ var newsletterIslandMetaCodec = createZodCodec(z60.object({
35103
+ siteId: z60.string().optional(),
35104
+ apiBaseUrl: z60.string().optional()
35017
35105
  }));
35018
35106
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
35019
35107
  function buildNewsletterDisplay(source) {
@@ -35152,23 +35240,23 @@ var newsletterSignupBlockDefinition = {
35152
35240
  };
35153
35241
 
35154
35242
  // ../blocks/src/system/blocks/team-members.ts
35155
- import { z as z63 } from "zod";
35243
+ import { z as z61 } from "zod";
35156
35244
  var ITEM_NAME2 = "member";
35157
35245
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
35158
35246
  message: "Team member photos must be image media"
35159
35247
  }).nullable();
35160
- var teamMemberDataSchema = z63.object({
35161
- _type: z63.literal("teamMember"),
35162
- id: z63.string(),
35163
- name: z63.string(),
35164
- role: z63.string().nullable(),
35165
- roleLabel: z63.string().nullable(),
35166
- bio: z63.string().nullable(),
35167
- summary: z63.string().nullable(),
35248
+ var teamMemberDataSchema = z61.object({
35249
+ _type: z61.literal("teamMember"),
35250
+ id: z61.string(),
35251
+ name: z61.string(),
35252
+ role: z61.string().nullable(),
35253
+ roleLabel: z61.string().nullable(),
35254
+ bio: z61.string().nullable(),
35255
+ summary: z61.string().nullable(),
35168
35256
  photo: teamMemberPhotoSchema,
35169
- profilePath: z63.string().nullable()
35257
+ profilePath: z61.string().nullable()
35170
35258
  });
35171
- var teamMembersDataSchema = z63.array(teamMemberDataSchema);
35259
+ var teamMembersDataSchema = z61.array(teamMemberDataSchema);
35172
35260
  var dynamicSourceWhen = { equals: "site_staff" };
35173
35261
  var manualSourceWhen = { equals: "site_staff", not: true };
35174
35262
  var headingNode = text(
@@ -36060,13 +36148,6 @@ var systemBlockDefinitionsRaw = [
36060
36148
  weight: "featured",
36061
36149
  bias: "clear",
36062
36150
  surfaces: heroSectionSurfaces
36063
- }),
36064
- layoutProfile({
36065
- variantKey: "splitEditorial",
36066
- family: "split",
36067
- weight: "featured",
36068
- bias: "clear",
36069
- surfaces: heroSectionSurfaces
36070
36151
  })
36071
36152
  ]
36072
36153
  })),
@@ -36310,9 +36391,8 @@ var systemBlockDefinitionsRaw = [
36310
36391
  flow: offeringsFlow,
36311
36392
  layoutProfiles: [
36312
36393
  layoutProfile({ variantKey: "combined", family: "grid", weight: "standard" }),
36394
+ layoutProfile({ variantKey: "calendar", family: "stack", weight: "standard" }),
36313
36395
  layoutProfile({ variantKey: "list", family: "stack", weight: "standard" }),
36314
- layoutProfile({ variantKey: "month", family: "grid", weight: "standard" }),
36315
- layoutProfile({ variantKey: "week", family: "stack", weight: "standard" }),
36316
36396
  layoutProfile({ variantKey: "timetable", family: "stack", weight: "standard" })
36317
36397
  ]
36318
36398
  })),
@@ -36875,10 +36955,7 @@ function normalizeRenderStage(stage) {
36875
36955
  return stage === "preview" ? "preview" : "published";
36876
36956
  }
36877
36957
  function isRouteVisibleInStage(routeEntry, stageInput) {
36878
- const stage = normalizeRenderStage(stageInput);
36879
- if (stage === "preview" || !isRouteRecord(routeEntry)) {
36880
- return true;
36881
- }
36958
+ if (normalizeRenderStage(stageInput) === "preview" || !isRouteRecord(routeEntry)) return true;
36882
36959
  const status = routeEntry.status;
36883
36960
  return !(typeof status === "string" && status !== "published");
36884
36961
  }
@@ -36887,52 +36964,45 @@ function extractRouteHref(candidate, stageInput = "published") {
36887
36964
  const trimmed = candidate.trim();
36888
36965
  return trimmed.length > 0 ? trimmed : null;
36889
36966
  }
36890
- if (!isRouteRecord(candidate)) {
36891
- return null;
36892
- }
36893
- const stage = normalizeRenderStage(stageInput);
36894
- const fields3 = stage === "preview" ? ["draftPath", "path", "href", "url"] : ["path", "href", "url"];
36967
+ if (!isRouteRecord(candidate)) return null;
36968
+ const fields3 = normalizeRenderStage(stageInput) === "preview" ? [
36969
+ "draftPath",
36970
+ "path",
36971
+ "href",
36972
+ "url"
36973
+ ] : [
36974
+ "path",
36975
+ "href",
36976
+ "url"
36977
+ ];
36895
36978
  for (const field of fields3) {
36896
36979
  const value = candidate[field];
36897
- if (typeof value === "string" && value.trim().length > 0) {
36898
- return value.trim();
36899
- }
36980
+ if (typeof value === "string" && value.trim().length > 0) return value.trim();
36900
36981
  }
36901
36982
  return null;
36902
36983
  }
36903
36984
  function extractRouteUpdatedAt(candidate) {
36904
- if (!isRouteRecord(candidate)) {
36905
- return null;
36906
- }
36907
- const fields3 = [
36985
+ if (!isRouteRecord(candidate)) return null;
36986
+ for (const field of [
36908
36987
  "updatedAt",
36909
36988
  "updated_at",
36910
36989
  "publishedAt",
36911
36990
  "published_at",
36912
36991
  "modifiedAt",
36913
36992
  "modified_at"
36914
- ];
36915
- for (const field of fields3) {
36993
+ ]) {
36916
36994
  const value = candidate[field];
36917
- if (typeof value === "string" && value.length > 0) {
36918
- return value;
36919
- }
36995
+ if (typeof value === "string" && value.length > 0) return value;
36920
36996
  }
36921
36997
  return null;
36922
36998
  }
36923
36999
  function resolveRouteTargetForStage(routeIdValue, routes, stageInput) {
36924
37000
  const routeId = typeof routeIdValue === "string" ? routeIdValue : null;
36925
- if (!routeId || !routes) {
36926
- return null;
36927
- }
37001
+ if (!routeId || !routes) return null;
36928
37002
  const routeEntry = routes[routeId];
36929
- if (!isRouteVisibleInStage(routeEntry, stageInput)) {
36930
- return null;
36931
- }
37003
+ if (!isRouteVisibleInStage(routeEntry, stageInput)) return null;
36932
37004
  const href = extractRouteHref(routeEntry, stageInput);
36933
- if (!href) {
36934
- return null;
36935
- }
37005
+ if (!href) return null;
36936
37006
  return {
36937
37007
  routeId,
36938
37008
  href,
@@ -37968,42 +38038,45 @@ import { jsx as jsx5 } from "react/jsx-runtime";
37968
38038
  import * as React from "react";
37969
38039
  import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
37970
38040
 
38041
+ // ../theme-core/src/ResponsiveScope.tsx
38042
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
38043
+
37971
38044
  // ../theme-core/src/fonts/uploadFormat.ts
37972
38045
  var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
37973
38046
 
37974
38047
  // ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
37975
- import { z as z64 } from "zod";
37976
- var themeBridgeConfigSchema = z64.object({
37977
- tokens: z64.record(z64.string(), z64.string()),
37978
- typography: z64.object({
37979
- headingFamily: z64.string().optional(),
37980
- bodyFamily: z64.string().optional(),
37981
- headingWeight: z64.number().optional(),
37982
- bodyWeight: z64.number().optional()
38048
+ import { z as z62 } from "zod";
38049
+ var themeBridgeConfigSchema = z62.object({
38050
+ tokens: z62.record(z62.string(), z62.string()),
38051
+ typography: z62.object({
38052
+ headingFamily: z62.string().optional(),
38053
+ bodyFamily: z62.string().optional(),
38054
+ headingWeight: z62.number().optional(),
38055
+ bodyWeight: z62.number().optional()
37983
38056
  }).optional(),
37984
- spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
37985
- corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
37986
- shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
37987
- components: z64.object({
37988
- buttons: z64.union([
37989
- z64.boolean(),
37990
- z64.object({
37991
- variants: z64.array(z64.enum(["primary", "secondary", "outline", "ghost"])).optional()
38057
+ spacing: z62.enum(["comfortable", "standard", "dense"]).optional(),
38058
+ corners: z62.enum(["square", "soft", "rounded", "pill"]).optional(),
38059
+ shadows: z62.enum(["none", "low", "medium", "high"]).optional(),
38060
+ components: z62.object({
38061
+ buttons: z62.union([
38062
+ z62.boolean(),
38063
+ z62.object({
38064
+ variants: z62.array(z62.enum(["primary", "secondary", "outline", "ghost"])).optional()
37992
38065
  })
37993
38066
  ]).optional(),
37994
- cards: z64.union([
37995
- z64.boolean(),
37996
- z64.object({
37997
- variants: z64.array(z64.enum(["default", "elevated", "outlined"])).optional()
38067
+ cards: z62.union([
38068
+ z62.boolean(),
38069
+ z62.object({
38070
+ variants: z62.array(z62.enum(["default", "elevated", "outlined"])).optional()
37998
38071
  })
37999
38072
  ]).optional(),
38000
- inputs: z64.boolean().optional()
38073
+ inputs: z62.boolean().optional()
38001
38074
  }).optional(),
38002
- overrides: z64.record(z64.string(), z64.string()).optional()
38075
+ overrides: z62.record(z62.string(), z62.string()).optional()
38003
38076
  }).passthrough();
38004
38077
 
38005
38078
  // ../theme-core/src/siteChrome.tsx
38006
- import { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
38079
+ import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
38007
38080
 
38008
38081
  // ../blocks/src/system/runtime/bindings.ts
38009
38082
  var shouldLogWarnings = isNonProductionEnv();
@@ -38368,17 +38441,17 @@ function normalizeLoaderParams(endpoint, params, context) {
38368
38441
  function unsafeRetypeZodSchema(schema) {
38369
38442
  return schema;
38370
38443
  }
38371
- var navIdListSchema = z65.preprocess((value) => {
38444
+ var navIdListSchema = z63.preprocess((value) => {
38372
38445
  if (!Array.isArray(value)) return void 0;
38373
38446
  const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
38374
38447
  return filtered.length > 0 ? filtered : void 0;
38375
- }, z65.array(z65.string()).max(200).optional());
38376
- var dashboardNavVisibilityBaseSchema = z65.object({
38377
- mode: z65.enum(["augment", "restrict"]).optional(),
38448
+ }, z63.array(z63.string()).max(200).optional());
38449
+ var dashboardNavVisibilityBaseSchema = z63.object({
38450
+ mode: z63.enum(["augment", "restrict"]).optional(),
38378
38451
  allowIds: navIdListSchema,
38379
38452
  denyIds: navIdListSchema
38380
38453
  }).strip();
38381
- var dashboardNavVisibilityRolesSchema = z65.object({
38454
+ var dashboardNavVisibilityRolesSchema = z63.object({
38382
38455
  administrator: dashboardNavVisibilityBaseSchema.optional(),
38383
38456
  editor: dashboardNavVisibilityBaseSchema.optional(),
38384
38457
  team_member: dashboardNavVisibilityBaseSchema.optional()
@@ -38386,63 +38459,63 @@ var dashboardNavVisibilityRolesSchema = z65.object({
38386
38459
  var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
38387
38460
  roles: dashboardNavVisibilityRolesSchema
38388
38461
  }).strip();
38389
- var dashboardNavigationConfigSchema = z65.object({
38462
+ var dashboardNavigationConfigSchema = z63.object({
38390
38463
  siteNav: dashboardNavVisibilitySchema.optional(),
38391
38464
  settingsNav: dashboardNavVisibilitySchema.optional()
38392
38465
  }).strip();
38393
- var dashboardConfigSchema = z65.object({
38394
- previewEditingEnabled: z65.boolean().optional(),
38466
+ var dashboardConfigSchema = z63.object({
38467
+ previewEditingEnabled: z63.boolean().optional(),
38395
38468
  navigation: dashboardNavigationConfigSchema.optional()
38396
38469
  }).strip();
38397
38470
  var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
38398
38471
  var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
38399
- var sdkLoaderEndpointSchema = z65.enum(SUPPORTED_LOADER_ENDPOINTS);
38400
- var loaderFallbackScalarSchema = z65.union([
38401
- z65.string(),
38402
- z65.number(),
38403
- z65.boolean(),
38404
- z65.null()
38472
+ var sdkLoaderEndpointSchema = z63.enum(SUPPORTED_LOADER_ENDPOINTS);
38473
+ var loaderFallbackScalarSchema = z63.union([
38474
+ z63.string(),
38475
+ z63.number(),
38476
+ z63.boolean(),
38477
+ z63.null()
38405
38478
  ]);
38406
- var loaderParamBindingSchema = z65.object({
38407
- $bind: z65.object({
38408
- from: z65.string().min(1, "Binding path is required"),
38479
+ var loaderParamBindingSchema = z63.object({
38480
+ $bind: z63.object({
38481
+ from: z63.string().min(1, "Binding path is required"),
38409
38482
  fallback: loaderFallbackScalarSchema.optional()
38410
38483
  })
38411
38484
  });
38412
- var loaderParamValueSchema = z65.union([
38413
- z65.string(),
38414
- z65.number(),
38415
- z65.boolean(),
38485
+ var loaderParamValueSchema = z63.union([
38486
+ z63.string(),
38487
+ z63.number(),
38488
+ z63.boolean(),
38416
38489
  loaderParamBindingSchema
38417
38490
  ]);
38418
- var sdkConfigLoaderSchema = z65.object({
38491
+ var sdkConfigLoaderSchema = z63.object({
38419
38492
  endpoint: sdkLoaderEndpointSchema,
38420
- params: z65.record(z65.string(), loaderParamValueSchema),
38421
- mode: z65.enum(["server", "client"]).default("server")
38493
+ params: z63.record(z63.string(), loaderParamValueSchema),
38494
+ mode: z63.enum(["server", "client"]).default("server")
38422
38495
  });
38423
- var sdkDataLoadersSchema = z65.record(z65.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
38424
- var sdkCustomBlockIdSchema = z65.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
38496
+ var sdkDataLoadersSchema = z63.record(z63.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
38497
+ var sdkCustomBlockIdSchema = z63.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
38425
38498
  message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
38426
38499
  }).transform((value) => value);
38427
- var sdkCustomBlockInputSchema = z65.object({
38500
+ var sdkCustomBlockInputSchema = z63.object({
38428
38501
  id: sdkCustomBlockIdSchema,
38429
- title: z65.string().min(1),
38430
- titleSource: z65.union([z65.string().min(1), z65.array(z65.string().min(1)).min(1)]).optional(),
38431
- description: z65.string().optional(),
38502
+ title: z63.string().min(1),
38503
+ titleSource: z63.union([z63.string().min(1), z63.array(z63.string().min(1)).min(1)]).optional(),
38504
+ description: z63.string().optional(),
38432
38505
  category: blockCategoryEnum,
38433
- icon: z65.string().optional(),
38434
- tags: z65.array(z65.string()).optional(),
38506
+ icon: z63.string().optional(),
38507
+ tags: z63.array(z63.string()).optional(),
38435
38508
  fields: fieldDefinitionInputSchema.array().min(1),
38436
38509
  dataLoaders: sdkDataLoadersSchema,
38437
38510
  layout: NodeSchema.optional(),
38438
- variants: z65.record(z65.string().min(1), NodeSchema).optional(),
38439
- defaultVariant: z65.string().min(1).optional(),
38440
- variantOptions: z65.record(
38441
- z65.string().min(1),
38442
- z65.object({
38443
- label: z65.string().min(1).optional(),
38444
- description: z65.string().min(1).optional(),
38445
- icon: z65.string().min(1).optional()
38511
+ variants: z63.record(z63.string().min(1), NodeSchema).optional(),
38512
+ defaultVariant: z63.string().min(1).optional(),
38513
+ variantOptions: z63.record(
38514
+ z63.string().min(1),
38515
+ z63.object({
38516
+ label: z63.string().min(1).optional(),
38517
+ description: z63.string().min(1).optional(),
38518
+ icon: z63.string().min(1).optional()
38446
38519
  })
38447
38520
  ).optional(),
38448
38521
  previewCustomize: previewCustomizeManifestCurationSchema.optional()
@@ -38453,7 +38526,7 @@ var sdkCustomBlockInputSchema = z65.object({
38453
38526
  const exists = data.fields.some((field) => field.id === source);
38454
38527
  if (!exists) {
38455
38528
  ctx.addIssue({
38456
- code: z65.ZodIssueCode.custom,
38529
+ code: z63.ZodIssueCode.custom,
38457
38530
  message: `titleSource must reference a valid field ID (got "${source}")`,
38458
38531
  path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
38459
38532
  });
@@ -38462,7 +38535,7 @@ var sdkCustomBlockInputSchema = z65.object({
38462
38535
  }
38463
38536
  if (data.layout && data.variants) {
38464
38537
  ctx.addIssue({
38465
- code: z65.ZodIssueCode.custom,
38538
+ code: z63.ZodIssueCode.custom,
38466
38539
  message: "Custom block must define either `layout` or `variants`, not both",
38467
38540
  path: ["variants"]
38468
38541
  });
@@ -38471,14 +38544,14 @@ var sdkCustomBlockInputSchema = z65.object({
38471
38544
  const keys = Object.keys(data.variants);
38472
38545
  if (keys.length === 0) {
38473
38546
  ctx.addIssue({
38474
- code: z65.ZodIssueCode.custom,
38547
+ code: z63.ZodIssueCode.custom,
38475
38548
  message: "`variants` must contain at least one variant key",
38476
38549
  path: ["variants"]
38477
38550
  });
38478
38551
  }
38479
38552
  if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
38480
38553
  ctx.addIssue({
38481
- code: z65.ZodIssueCode.custom,
38554
+ code: z63.ZodIssueCode.custom,
38482
38555
  message: "`defaultVariant` must be a key present in `variants`",
38483
38556
  path: ["defaultVariant"]
38484
38557
  });
@@ -38487,7 +38560,7 @@ var sdkCustomBlockInputSchema = z65.object({
38487
38560
  for (const key of Object.keys(data.variantOptions)) {
38488
38561
  if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
38489
38562
  ctx.addIssue({
38490
- code: z65.ZodIssueCode.custom,
38563
+ code: z63.ZodIssueCode.custom,
38491
38564
  message: "`variantOptions` key must exist in `variants`",
38492
38565
  path: ["variantOptions", key]
38493
38566
  });
@@ -38496,78 +38569,78 @@ var sdkCustomBlockInputSchema = z65.object({
38496
38569
  }
38497
38570
  }
38498
38571
  });
38499
- var sdkBlockFieldExtensionInputSchema = z65.object({
38572
+ var sdkBlockFieldExtensionInputSchema = z63.object({
38500
38573
  fields: fieldDefinitionInputSchema.array().min(1)
38501
38574
  });
38502
- var sdkBlockFieldExtensionsInputSchema = z65.record(
38503
- z65.string().min(1),
38575
+ var sdkBlockFieldExtensionsInputSchema = z63.record(
38576
+ z63.string().min(1),
38504
38577
  sdkBlockFieldExtensionInputSchema
38505
38578
  );
38506
- var sdkThemePaletteSchema = z65.record(z65.string(), z65.string());
38507
- var sdkThemeConfigSchema = z65.object({
38579
+ var sdkThemePaletteSchema = z63.record(z63.string(), z63.string());
38580
+ var sdkThemeConfigSchema = z63.object({
38508
38581
  palette: sdkThemePaletteSchema
38509
38582
  });
38510
- var sdkSectionBackgroundSchema = z65.object({
38511
- id: z65.string().min(1),
38512
- label: z65.string().min(1),
38513
- token: z65.string().min(1)
38583
+ var sdkSectionBackgroundSchema = z63.object({
38584
+ id: z63.string().min(1),
38585
+ label: z63.string().min(1),
38586
+ token: z63.string().min(1)
38514
38587
  });
38515
- var sdkSectionOptionsConfigSchema = z65.object({
38516
- backgroundColor: z65.boolean().optional(),
38517
- backgroundImage: z65.boolean().optional(),
38518
- backgroundGradient: z65.boolean().optional(),
38519
- spacing: z65.union([z65.array(z65.enum(["compact", "default", "spacious"])), z65.boolean()]).optional(),
38520
- textColor: z65.boolean().optional()
38588
+ var sdkSectionOptionsConfigSchema = z63.object({
38589
+ backgroundColor: z63.boolean().optional(),
38590
+ backgroundImage: z63.boolean().optional(),
38591
+ backgroundGradient: z63.boolean().optional(),
38592
+ spacing: z63.union([z63.array(z63.enum(["compact", "default", "spacious"])), z63.boolean()]).optional(),
38593
+ textColor: z63.boolean().optional()
38521
38594
  });
38522
- var sdkContainerOptionsConfigSchema = z65.object({
38523
- maxWidth: z65.union([z65.array(z65.enum(["narrow", "default", "wide", "full"])), z65.boolean()]).optional(),
38524
- alignment: z65.union([z65.array(z65.enum(["left", "center", "right"])), z65.boolean()]).optional()
38595
+ var sdkContainerOptionsConfigSchema = z63.object({
38596
+ maxWidth: z63.union([z63.array(z63.enum(["narrow", "default", "wide", "full"])), z63.boolean()]).optional(),
38597
+ alignment: z63.union([z63.array(z63.enum(["left", "center", "right"])), z63.boolean()]).optional()
38525
38598
  });
38526
- var sdkSiteStyleConfigSchema = z65.object({
38527
- sectionBackgrounds: z65.array(sdkSectionBackgroundSchema).optional(),
38599
+ var sdkSiteStyleConfigSchema = z63.object({
38600
+ sectionBackgrounds: z63.array(sdkSectionBackgroundSchema).optional(),
38528
38601
  sectionOptions: sdkSectionOptionsConfigSchema.optional(),
38529
38602
  containerOptions: sdkContainerOptionsConfigSchema.optional()
38530
38603
  });
38531
- var sdkSiteLayoutConfigSchema = z65.object({
38532
- footerBlocks: z65.array(
38533
- z65.object({
38534
- id: z65.string().min(1).optional(),
38535
- kind: z65.string().min(1),
38536
- content: z65.record(z65.string(), z65.unknown()).optional()
38604
+ var sdkSiteLayoutConfigSchema = z63.object({
38605
+ footerBlocks: z63.array(
38606
+ z63.object({
38607
+ id: z63.string().min(1).optional(),
38608
+ kind: z63.string().min(1),
38609
+ content: z63.record(z63.string(), z63.unknown()).optional()
38537
38610
  })
38538
38611
  ).optional()
38539
38612
  });
38540
- var sdkFieldSelectOptionSchema = z65.object({
38541
- value: z65.string(),
38542
- label: z65.string()
38613
+ var sdkFieldSelectOptionSchema = z63.object({
38614
+ value: z63.string(),
38615
+ label: z63.string()
38543
38616
  });
38544
- var sdkBlockFieldConfigSchema = z65.object({
38545
- options: z65.array(sdkFieldSelectOptionSchema).optional()
38617
+ var sdkBlockFieldConfigSchema = z63.object({
38618
+ options: z63.array(sdkFieldSelectOptionSchema).optional()
38546
38619
  });
38547
- var sdkBlockFieldOptionsMapSchema = z65.record(
38548
- z65.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
38620
+ var sdkBlockFieldOptionsMapSchema = z63.record(
38621
+ z63.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
38549
38622
  message: "Block ID must be 'block.*' or 'custom.*' format"
38550
38623
  }),
38551
- z65.record(z65.string().min(1), sdkBlockFieldConfigSchema)
38624
+ z63.record(z63.string().min(1), sdkBlockFieldConfigSchema)
38552
38625
  ).optional();
38553
- var sdkContentTypeTemplateConfigSchema = z65.object({
38554
- blocks: z65.array(z65.unknown())
38626
+ var sdkContentTypeTemplateConfigSchema = z63.object({
38627
+ blocks: z63.array(z63.unknown())
38555
38628
  }).passthrough();
38556
- var sdkContentTypeOrderingConfigSchema = z65.object({
38557
- mode: z65.enum(["default", "manual"]).optional()
38629
+ var sdkContentTypeOrderingConfigSchema = z63.object({
38630
+ mode: z63.enum(["default", "manual"]).optional()
38558
38631
  }).optional();
38559
- var sdkContentTypeConfigSchema = z65.object({
38560
- key: z65.string().min(1),
38561
- fields: z65.array(z65.unknown()),
38632
+ var sdkContentTypeConfigSchema = z63.object({
38633
+ key: z63.string().min(1),
38634
+ fields: z63.array(z63.unknown()),
38562
38635
  ordering: sdkContentTypeOrderingConfigSchema,
38563
38636
  template: sdkContentTypeTemplateConfigSchema.nullable().optional()
38564
38637
  }).passthrough();
38565
- var sdkContentConfigSchema = z65.object({
38566
- contentTypes: z65.array(sdkContentTypeConfigSchema).optional(),
38567
- pages: z65.array(z65.unknown()).optional(),
38568
- entries: z65.array(z65.unknown()).optional(),
38569
- navigationMenus: z65.array(z65.unknown()).optional(),
38570
- settings: z65.unknown().optional()
38638
+ var sdkContentConfigSchema = z63.object({
38639
+ contentTypes: z63.array(sdkContentTypeConfigSchema).optional(),
38640
+ pages: z63.array(z63.unknown()).optional(),
38641
+ entries: z63.array(z63.unknown()).optional(),
38642
+ navigationMenus: z63.array(z63.unknown()).optional(),
38643
+ settings: z63.unknown().optional()
38571
38644
  }).passthrough();
38572
38645
  var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
38573
38646
  var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
@@ -38582,62 +38655,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
38582
38655
  var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
38583
38656
  var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
38584
38657
  var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
38585
- var sdkWorkflowIdSchema = z65.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
38658
+ var sdkWorkflowIdSchema = z63.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
38586
38659
  message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
38587
38660
  });
38588
- var sdkWorkflowEndpointSchema = z65.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
38589
- var sdkWorkflowManualTriggerSchema = z65.object({
38590
- type: z65.literal("manual")
38661
+ var sdkWorkflowEndpointSchema = z63.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
38662
+ var sdkWorkflowManualTriggerSchema = z63.object({
38663
+ type: z63.literal("manual")
38591
38664
  }).strict();
38592
- var sdkWorkflowTriggerFieldSchema = z65.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
38665
+ var sdkWorkflowTriggerFieldSchema = z63.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
38593
38666
  message: "Workflow trigger fields must be top-level content field IDs, not paths"
38594
38667
  });
38595
- var sdkWorkflowFieldChangedConditionSchema = z65.object({
38668
+ var sdkWorkflowFieldChangedConditionSchema = z63.object({
38596
38669
  field: sdkWorkflowTriggerFieldSchema,
38597
- changed: z65.literal(true)
38670
+ changed: z63.literal(true)
38598
38671
  }).strict();
38599
- var sdkWorkflowFieldEmptyConditionSchema = z65.object({
38672
+ var sdkWorkflowFieldEmptyConditionSchema = z63.object({
38600
38673
  field: sdkWorkflowTriggerFieldSchema,
38601
- isEmpty: z65.boolean()
38674
+ isEmpty: z63.boolean()
38602
38675
  }).strict();
38603
- var sdkWorkflowEntryDraftUpdatedTriggerSchema = z65.object({
38604
- type: z65.literal("entry.draft.updated"),
38605
- when: z65.array(
38606
- z65.union([
38676
+ var sdkWorkflowEntryDraftUpdatedTriggerSchema = z63.object({
38677
+ type: z63.literal("entry.draft.updated"),
38678
+ when: z63.array(
38679
+ z63.union([
38607
38680
  sdkWorkflowFieldChangedConditionSchema,
38608
38681
  sdkWorkflowFieldEmptyConditionSchema
38609
38682
  ])
38610
38683
  ).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
38611
38684
  }).strict();
38612
- var sdkWorkflowTriggerSchema = z65.discriminatedUnion("type", [
38685
+ var sdkWorkflowTriggerSchema = z63.discriminatedUnion("type", [
38613
38686
  sdkWorkflowManualTriggerSchema,
38614
38687
  sdkWorkflowEntryDraftUpdatedTriggerSchema
38615
38688
  ]);
38616
- var sdkWorkflowConfirmationSchema = z65.object({
38617
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
38618
- body: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
38689
+ var sdkWorkflowConfirmationSchema = z63.object({
38690
+ title: z63.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
38691
+ body: z63.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
38619
38692
  }).strict();
38620
- var sdkWorkflowConfigSchema = z65.object({
38693
+ var sdkWorkflowConfigSchema = z63.object({
38621
38694
  id: sdkWorkflowIdSchema,
38622
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
38623
- description: z65.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
38624
- contentType: z65.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
38695
+ title: z63.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
38696
+ description: z63.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
38697
+ contentType: z63.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
38625
38698
  endpoint: sdkWorkflowEndpointSchema,
38626
- triggers: z65.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
38699
+ triggers: z63.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
38627
38700
  confirmation: sdkWorkflowConfirmationSchema.optional()
38628
38701
  }).strict();
38629
- var sdkWorkflowsSchema = z65.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
38702
+ var sdkWorkflowsSchema = z63.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
38630
38703
  const ids = workflows.map((workflow) => workflow.id);
38631
38704
  return ids.length === new Set(ids).size;
38632
38705
  }, { message: "Workflow IDs must be unique" }).optional();
38633
- var riverbankSiteConfigInputSchema = z65.object({
38634
- siteId: z65.string().uuid(),
38635
- previewUrl: z65.string().url().optional(),
38636
- liveUrl: z65.string().url().optional(),
38706
+ var riverbankSiteConfigInputSchema = z63.object({
38707
+ siteId: z63.string().uuid(),
38708
+ previewUrl: z63.string().url().optional(),
38709
+ liveUrl: z63.string().url().optional(),
38637
38710
  theme: sdkThemeConfigSchema.optional(),
38638
38711
  styles: sdkSiteStyleConfigSchema.optional(),
38639
38712
  layout: sdkSiteLayoutConfigSchema.optional(),
38640
- customBlocks: z65.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
38713
+ customBlocks: z63.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
38641
38714
  const ids = blocks.map((b) => b.id);
38642
38715
  return ids.length === new Set(ids).size;
38643
38716
  }, { message: "Block IDs must be unique" }).optional(),
@@ -38645,50 +38718,50 @@ var riverbankSiteConfigInputSchema = z65.object({
38645
38718
  blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
38646
38719
  workflows: sdkWorkflowsSchema,
38647
38720
  content: sdkContentConfigSchema.optional(),
38648
- contentDir: z65.string().optional(),
38649
- sync: z65.object({
38650
- existingEntries: z65.enum(["skip", "update"]).optional()
38721
+ contentDir: z63.string().optional(),
38722
+ sync: z63.object({
38723
+ existingEntries: z63.enum(["skip", "update"]).optional()
38651
38724
  }).optional(),
38652
- deploy: z65.object({
38653
- verifyCommand: z65.string().optional(),
38654
- prebuildOutput: z65.string().optional()
38725
+ deploy: z63.object({
38726
+ verifyCommand: z63.string().optional(),
38727
+ prebuildOutput: z63.string().optional()
38655
38728
  }).optional(),
38656
- themeSource: z65.enum(["local", "cms"]).optional(),
38657
- activeTheme: z65.string().optional(),
38658
- enablePortal: z65.boolean().optional(),
38729
+ themeSource: z63.enum(["local", "cms"]).optional(),
38730
+ activeTheme: z63.string().optional(),
38731
+ enablePortal: z63.boolean().optional(),
38659
38732
  dashboard: dashboardConfigSchema.optional()
38660
38733
  }).strict();
38661
- var pushSdkConfigBodySchema = z65.object({
38734
+ var pushSdkConfigBodySchema = z63.object({
38662
38735
  config: riverbankSiteConfigInputSchema,
38663
- forceContentTypes: z65.boolean().optional()
38736
+ forceContentTypes: z63.boolean().optional()
38664
38737
  }).strict();
38665
38738
 
38666
38739
  // ../api/src/siteOnboarding.ts
38667
- import { z as z66 } from "zod";
38740
+ import { z as z64 } from "zod";
38668
38741
  var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
38669
38742
  configure_appointments: {
38670
38743
  requirementId: "configure_appointments",
38671
38744
  reason: "launch_anyway"
38672
38745
  }
38673
38746
  };
38674
- var acknowledgeLaunchRequirementRequestSchema = z66.discriminatedUnion(
38747
+ var acknowledgeLaunchRequirementRequestSchema = z64.discriminatedUnion(
38675
38748
  "requirementId",
38676
38749
  [
38677
- z66.object({
38678
- requirementId: z66.literal("review_generated_site")
38750
+ z64.object({
38751
+ requirementId: z64.literal("review_generated_site")
38679
38752
  }),
38680
- z66.object({
38681
- requirementId: z66.literal(
38753
+ z64.object({
38754
+ requirementId: z64.literal(
38682
38755
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
38683
38756
  ),
38684
- overrideReason: z66.literal(
38757
+ overrideReason: z64.literal(
38685
38758
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
38686
38759
  )
38687
38760
  })
38688
38761
  ]
38689
38762
  );
38690
- var goLiveSiteRequestSchema = z66.object({
38691
- acceptExtraSiteCharge: z66.boolean().optional()
38763
+ var goLiveSiteRequestSchema = z64.object({
38764
+ acceptExtraSiteCharge: z64.boolean().optional()
38692
38765
  });
38693
38766
 
38694
38767
  // ../surfaces/src/index.ts
@@ -38772,7 +38845,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
38772
38845
  ];
38773
38846
 
38774
38847
  // ../api/src/bookingVerticals.ts
38775
- import { z as z67 } from "zod";
38848
+ import { z as z65 } from "zod";
38776
38849
  var VERTICAL_IDS = [
38777
38850
  "yoga_wellness",
38778
38851
  "fitness_pt",
@@ -38937,39 +39010,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
38937
39010
  }
38938
39011
  return [...issues];
38939
39012
  }
38940
- var VerticalIdSchema = z67.string().trim().transform((value, ctx) => {
39013
+ var VerticalIdSchema = z65.string().trim().transform((value, ctx) => {
38941
39014
  const parsed = parseVerticalId(value);
38942
39015
  if (!parsed) {
38943
39016
  ctx.addIssue({
38944
- code: z67.ZodIssueCode.custom,
39017
+ code: z65.ZodIssueCode.custom,
38945
39018
  message: "Unknown booking vertical"
38946
39019
  });
38947
- return z67.NEVER;
39020
+ return z65.NEVER;
38948
39021
  }
38949
39022
  return parsed;
38950
39023
  });
38951
- var VerticalPresetIdSchema = z67.string().trim().transform((value, ctx) => {
39024
+ var VerticalPresetIdSchema = z65.string().trim().transform((value, ctx) => {
38952
39025
  const parsed = parseVerticalPresetId(value);
38953
39026
  if (!parsed) {
38954
39027
  ctx.addIssue({
38955
- code: z67.ZodIssueCode.custom,
39028
+ code: z65.ZodIssueCode.custom,
38956
39029
  message: "Unknown booking preset"
38957
39030
  });
38958
- return z67.NEVER;
39031
+ return z65.NEVER;
38959
39032
  }
38960
39033
  return parsed;
38961
39034
  });
38962
- var BookingVerticalConfigSchema = z67.object({
39035
+ var BookingVerticalConfigSchema = z65.object({
38963
39036
  verticalId: VerticalIdSchema.nullable(),
38964
- selectedPresetIds: z67.array(VerticalPresetIdSchema).max(20)
39037
+ selectedPresetIds: z65.array(VerticalPresetIdSchema).max(20)
38965
39038
  }).transform((value, ctx) => {
38966
39039
  const resolved = resolveSiteVerticalBookingConfig(value);
38967
39040
  if (resolved.kind === "invalid") {
38968
39041
  ctx.addIssue({
38969
- code: z67.ZodIssueCode.custom,
39042
+ code: z65.ZodIssueCode.custom,
38970
39043
  message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
38971
39044
  });
38972
- return z67.NEVER;
39045
+ return z65.NEVER;
38973
39046
  }
38974
39047
  return resolved.config;
38975
39048
  });
@@ -38996,51 +39069,51 @@ function isRecord8(value) {
38996
39069
  }
38997
39070
 
38998
39071
  // ../api/src/appointmentSetup.ts
38999
- import { z as z68 } from "zod";
39072
+ import { z as z66 } from "zod";
39000
39073
  var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
39001
- var appointmentSetupRefSchema = z68.discriminatedUnion("kind", [
39002
- z68.object({ kind: z68.literal("existing"), id: z68.string().min(1) }),
39003
- z68.object({ kind: z68.literal("new"), draftId: z68.string().min(1) })
39074
+ var appointmentSetupRefSchema = z66.discriminatedUnion("kind", [
39075
+ z66.object({ kind: z66.literal("existing"), id: z66.string().min(1) }),
39076
+ z66.object({ kind: z66.literal("new"), draftId: z66.string().min(1) })
39004
39077
  ]);
39005
- var appointmentSetupVenueChoiceSchema = z68.discriminatedUnion("kind", [
39006
- z68.object({ kind: z68.literal("none") }),
39007
- z68.object({ kind: z68.literal("existing"), venueId: z68.string().min(1) }),
39008
- z68.object({
39009
- kind: z68.literal("create"),
39010
- draftId: z68.string().min(1),
39011
- title: z68.string().trim().min(1),
39012
- description: z68.string().nullable(),
39013
- timezone: z68.string().trim().min(1).nullable(),
39014
- addressJson: z68.record(z68.string(), z68.unknown()),
39015
- locationJson: z68.object({ lat: z68.number(), lng: z68.number() }).nullable()
39078
+ var appointmentSetupVenueChoiceSchema = z66.discriminatedUnion("kind", [
39079
+ z66.object({ kind: z66.literal("none") }),
39080
+ z66.object({ kind: z66.literal("existing"), venueId: z66.string().min(1) }),
39081
+ z66.object({
39082
+ kind: z66.literal("create"),
39083
+ draftId: z66.string().min(1),
39084
+ title: z66.string().trim().min(1),
39085
+ description: z66.string().nullable(),
39086
+ timezone: z66.string().trim().min(1).nullable(),
39087
+ addressJson: z66.record(z66.string(), z66.unknown()),
39088
+ locationJson: z66.object({ lat: z66.number(), lng: z66.number() }).nullable()
39016
39089
  })
39017
39090
  ]);
39018
- var appointmentSetupPaymentDraftSchema = z68.object({
39019
- priceType: z68.union([z68.literal("free"), z68.literal("paid")])
39020
- });
39021
- var appointmentSetupServiceAssignmentDraftSchema = z68.discriminatedUnion("kind", [
39022
- z68.object({ kind: z68.literal("all_practitioners") }),
39023
- z68.object({
39024
- kind: z68.literal("selected_practitioners"),
39025
- resourceRefs: z68.array(appointmentSetupRefSchema)
39091
+ var appointmentSetupPaymentDraftSchema = z66.object({
39092
+ priceType: z66.union([z66.literal("free"), z66.literal("paid")])
39093
+ });
39094
+ var appointmentSetupServiceAssignmentDraftSchema = z66.discriminatedUnion("kind", [
39095
+ z66.object({ kind: z66.literal("all_practitioners") }),
39096
+ z66.object({
39097
+ kind: z66.literal("selected_practitioners"),
39098
+ resourceRefs: z66.array(appointmentSetupRefSchema)
39026
39099
  })
39027
39100
  ]);
39028
- var appointmentSetupServiceDraftSchema = z68.object({
39101
+ var appointmentSetupServiceDraftSchema = z66.object({
39029
39102
  ref: appointmentSetupRefSchema,
39030
- title: z68.string().trim().min(1),
39031
- description: z68.string().nullable(),
39032
- durationMinutes: z68.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
39033
- prepMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39034
- cleanupMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39035
- priceAmount: z68.number().int().nonnegative().nullable(),
39036
- isActive: z68.boolean(),
39037
- locationType: z68.union([
39038
- z68.literal("virtual"),
39039
- z68.literal("in_person"),
39040
- z68.literal("hybrid")
39103
+ title: z66.string().trim().min(1),
39104
+ description: z66.string().nullable(),
39105
+ durationMinutes: z66.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
39106
+ prepMinutes: z66.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39107
+ cleanupMinutes: z66.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39108
+ priceAmount: z66.number().int().nonnegative().nullable(),
39109
+ isActive: z66.boolean(),
39110
+ locationType: z66.union([
39111
+ z66.literal("virtual"),
39112
+ z66.literal("in_person"),
39113
+ z66.literal("hybrid")
39041
39114
  ]),
39042
39115
  venue: appointmentSetupVenueChoiceSchema,
39043
- timezone: z68.string().trim().min(1).nullable(),
39116
+ timezone: z66.string().trim().min(1).nullable(),
39044
39117
  payment: appointmentSetupPaymentDraftSchema,
39045
39118
  assignment: appointmentSetupServiceAssignmentDraftSchema
39046
39119
  }).superRefine((service, ctx) => {
@@ -39059,49 +39132,49 @@ var appointmentSetupServiceDraftSchema = z68.object({
39059
39132
  });
39060
39133
  }
39061
39134
  });
39062
- var appointmentSetupPractitionerDraftSchema = z68.object({
39135
+ var appointmentSetupPractitionerDraftSchema = z66.object({
39063
39136
  ref: appointmentSetupRefSchema,
39064
- displayName: z68.string().trim().min(1),
39065
- bio: z68.string().nullable(),
39066
- timezone: z68.string().trim().min(1),
39067
- colorHex: z68.string().nullable()
39068
- });
39069
- var appointmentSetupWeeklyWindowDraftSchema = z68.object({
39070
- weekday: z68.number().int().min(0).max(6),
39071
- startTime: z68.string(),
39072
- endTime: z68.string()
39073
- });
39074
- var appointmentSetupStartTimePolicyDraftSchema = z68.discriminatedUnion("kind", [
39075
- z68.object({ kind: z68.literal("automatic_spacing") }),
39076
- z68.object({
39077
- kind: z68.literal("regular_interval"),
39078
- intervalMinutes: z68.union([
39079
- z68.literal(10),
39080
- z68.literal(15),
39081
- z68.literal(20),
39082
- z68.literal(30),
39083
- z68.literal(45),
39084
- z68.literal(60)
39137
+ displayName: z66.string().trim().min(1),
39138
+ bio: z66.string().nullable(),
39139
+ timezone: z66.string().trim().min(1),
39140
+ colorHex: z66.string().nullable()
39141
+ });
39142
+ var appointmentSetupWeeklyWindowDraftSchema = z66.object({
39143
+ weekday: z66.number().int().min(0).max(6),
39144
+ startTime: z66.string(),
39145
+ endTime: z66.string()
39146
+ });
39147
+ var appointmentSetupStartTimePolicyDraftSchema = z66.discriminatedUnion("kind", [
39148
+ z66.object({ kind: z66.literal("automatic_spacing") }),
39149
+ z66.object({
39150
+ kind: z66.literal("regular_interval"),
39151
+ intervalMinutes: z66.union([
39152
+ z66.literal(10),
39153
+ z66.literal(15),
39154
+ z66.literal(20),
39155
+ z66.literal(30),
39156
+ z66.literal(45),
39157
+ z66.literal(60)
39085
39158
  ])
39086
39159
  })
39087
39160
  ]);
39088
- var appointmentSetupAvailabilityDraftSchema = z68.object({
39089
- kind: z68.literal("weekly_windows"),
39161
+ var appointmentSetupAvailabilityDraftSchema = z66.object({
39162
+ kind: z66.literal("weekly_windows"),
39090
39163
  resourceRef: appointmentSetupRefSchema,
39091
39164
  serviceRef: appointmentSetupRefSchema.nullable(),
39092
- windows: z68.array(appointmentSetupWeeklyWindowDraftSchema),
39165
+ windows: z66.array(appointmentSetupWeeklyWindowDraftSchema),
39093
39166
  startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
39094
39167
  });
39095
39168
  var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
39096
39169
  var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
39097
- var appointmentSetupBookingNoticeSchema = z68.object({
39098
- minLeadMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
39099
- maxBookingNoticeMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
39100
- });
39101
- var applyAppointmentSetupRequestSchema = z68.object({
39102
- services: z68.array(appointmentSetupServiceDraftSchema),
39103
- practitioners: z68.array(appointmentSetupPractitionerDraftSchema),
39104
- availability: z68.array(appointmentSetupAvailabilityDraftSchema),
39170
+ var appointmentSetupBookingNoticeSchema = z66.object({
39171
+ minLeadMinutes: z66.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
39172
+ maxBookingNoticeMinutes: z66.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
39173
+ });
39174
+ var applyAppointmentSetupRequestSchema = z66.object({
39175
+ services: z66.array(appointmentSetupServiceDraftSchema),
39176
+ practitioners: z66.array(appointmentSetupPractitionerDraftSchema),
39177
+ availability: z66.array(appointmentSetupAvailabilityDraftSchema),
39105
39178
  bookingNotice: appointmentSetupBookingNoticeSchema
39106
39179
  });
39107
39180
 
@@ -39134,24 +39207,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
39134
39207
  ];
39135
39208
 
39136
39209
  // ../api/src/siteBanner.ts
39137
- import { z as z69 } from "zod";
39210
+ import { z as z67 } from "zod";
39138
39211
  var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
39139
39212
  var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
39140
39213
  var SITE_BANNER_MAX_TEXT_LENGTH = 320;
39141
39214
  var SITE_BANNER_MAX_PARAGRAPHS = 2;
39142
- var siteBannerScopeSchema = z69.enum(SITE_BANNER_SCOPE_VALUES);
39143
- var siteBannerToneSchema = z69.enum(SITE_BANNER_TONE_VALUES);
39144
- var siteBannerBodySchema = z69.unknown().transform(unwrapRichTextValue);
39145
- var siteBannerCtaSchema = z69.object({
39146
- label: z69.string().trim().min(1),
39215
+ var siteBannerScopeSchema = z67.enum(SITE_BANNER_SCOPE_VALUES);
39216
+ var siteBannerToneSchema = z67.enum(SITE_BANNER_TONE_VALUES);
39217
+ var siteBannerBodySchema = z67.unknown().transform(unwrapRichTextValue);
39218
+ var siteBannerCtaSchema = z67.object({
39219
+ label: z67.string().trim().min(1),
39147
39220
  link: linkPayloadSchema
39148
39221
  });
39149
- var siteBannerSettingsSchema = z69.discriminatedUnion("enabled", [
39150
- z69.object({
39151
- enabled: z69.literal(false)
39222
+ var siteBannerSettingsSchema = z67.discriminatedUnion("enabled", [
39223
+ z67.object({
39224
+ enabled: z67.literal(false)
39152
39225
  }),
39153
- z69.object({
39154
- enabled: z69.literal(true),
39226
+ z67.object({
39227
+ enabled: z67.literal(true),
39155
39228
  scope: siteBannerScopeSchema,
39156
39229
  tone: siteBannerToneSchema,
39157
39230
  body: siteBannerBodySchema,
@@ -39165,7 +39238,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
39165
39238
  const analysis = analyzeSiteBannerBody(value.body);
39166
39239
  for (const issue of analysis.issues) {
39167
39240
  ctx.addIssue({
39168
- code: z69.ZodIssueCode.custom,
39241
+ code: z67.ZodIssueCode.custom,
39169
39242
  path: ["body"],
39170
39243
  message: siteBannerBodyIssueMessage(issue)
39171
39244
  });
@@ -39427,71 +39500,71 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
39427
39500
  var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
39428
39501
 
39429
39502
  // ../api/src/aiPlayground.ts
39430
- import { z as z70 } from "zod";
39431
- var Rfc6902PatchOp = z70.discriminatedUnion("op", [
39503
+ import { z as z68 } from "zod";
39504
+ var Rfc6902PatchOp = z68.discriminatedUnion("op", [
39432
39505
  // Standard RFC-6902 operations
39433
- z70.object({
39434
- op: z70.literal("add"),
39435
- path: z70.string(),
39436
- value: z70.unknown()
39506
+ z68.object({
39507
+ op: z68.literal("add"),
39508
+ path: z68.string(),
39509
+ value: z68.unknown()
39437
39510
  }),
39438
- z70.object({
39439
- op: z70.literal("remove"),
39440
- path: z70.string()
39511
+ z68.object({
39512
+ op: z68.literal("remove"),
39513
+ path: z68.string()
39441
39514
  }),
39442
- z70.object({
39443
- op: z70.literal("replace"),
39444
- path: z70.string(),
39445
- value: z70.unknown()
39515
+ z68.object({
39516
+ op: z68.literal("replace"),
39517
+ path: z68.string(),
39518
+ value: z68.unknown()
39446
39519
  }),
39447
- z70.object({
39448
- op: z70.literal("move"),
39449
- from: z70.string(),
39450
- path: z70.string()
39520
+ z68.object({
39521
+ op: z68.literal("move"),
39522
+ from: z68.string(),
39523
+ path: z68.string()
39451
39524
  }),
39452
- z70.object({
39453
- op: z70.literal("copy"),
39454
- from: z70.string(),
39455
- path: z70.string()
39525
+ z68.object({
39526
+ op: z68.literal("copy"),
39527
+ from: z68.string(),
39528
+ path: z68.string()
39456
39529
  }),
39457
39530
  // Block-level operations (Phase 2)
39458
- z70.object({
39459
- op: z70.literal("add_block"),
39460
- blockKind: z70.string(),
39461
- afterBlockId: z70.string().nullable(),
39462
- content: z70.record(z70.string(), z70.unknown()),
39463
- rationale: z70.string()
39531
+ z68.object({
39532
+ op: z68.literal("add_block"),
39533
+ blockKind: z68.string(),
39534
+ afterBlockId: z68.string().nullable(),
39535
+ content: z68.record(z68.string(), z68.unknown()),
39536
+ rationale: z68.string()
39464
39537
  }),
39465
- z70.object({
39466
- op: z70.literal("delete_block"),
39467
- blockId: z70.string(),
39468
- rationale: z70.string()
39538
+ z68.object({
39539
+ op: z68.literal("delete_block"),
39540
+ blockId: z68.string(),
39541
+ rationale: z68.string()
39469
39542
  }),
39470
- z70.object({
39471
- op: z70.literal("reorder_block"),
39472
- blockId: z70.string(),
39473
- afterBlockId: z70.string().nullable(),
39474
- rationale: z70.string()
39543
+ z68.object({
39544
+ op: z68.literal("reorder_block"),
39545
+ blockId: z68.string(),
39546
+ afterBlockId: z68.string().nullable(),
39547
+ rationale: z68.string()
39475
39548
  })
39476
39549
  ]);
39477
- var PlaygroundProposeRequest = z70.object({
39478
- request: z70.string().min(1).max(2e3)
39550
+ var PlaygroundProposeRequest = z68.object({
39551
+ request: z68.string().min(1).max(2e3)
39479
39552
  });
39480
- var MultiPagePatchEnvelope = z70.object({
39481
- pageId: z70.string(),
39482
- blockId: z70.string().optional(),
39553
+ var MultiPagePatchEnvelope = z68.object({
39554
+ pageId: z68.string(),
39555
+ blockId: z68.string().optional(),
39483
39556
  // Not present for page-level ops
39484
- blockKind: z70.string().optional(),
39485
- blockPurpose: z70.string().optional().nullable(),
39486
- ops: z70.array(Rfc6902PatchOp),
39487
- rationale: z70.string(),
39488
- currentContent: z70.record(z70.string(), z70.unknown()).optional()
39489
- });
39490
- var MultiPageUpdateResponse = z70.object({
39491
- patches: z70.array(MultiPagePatchEnvelope),
39492
- assistantMessage: z70.string(),
39493
- pagesModified: z70.number(),
39494
- toolCallsUsed: z70.number()
39557
+ blockKind: z68.string().optional(),
39558
+ blockPurpose: z68.string().optional().nullable(),
39559
+ ops: z68.array(Rfc6902PatchOp),
39560
+ rationale: z68.string(),
39561
+ currentContent: z68.record(z68.string(), z68.unknown()).optional()
39562
+ });
39563
+ var MultiPageUpdateResponse = z68.object({
39564
+ patches: z68.array(MultiPagePatchEnvelope),
39565
+ assistantMessage: z68.string(),
39566
+ pagesModified: z68.number(),
39567
+ toolCallsUsed: z68.number()
39495
39568
  });
39496
39569
 
39497
39570
  // src/data/prefetchBlockData.ts