@riverbankcms/sdk 0.89.1 → 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 (161) hide show
  1. package/README.md +27 -4
  2. package/dist/{PreviewEditorSidebar-JDR64FEC.mjs → PreviewEditorSidebar-KVXNF3VW.mjs} +3 -3
  3. package/dist/{PreviewEditorUI-67TMJMAF.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/bookingOperations.d.ts +2 -0
  8. package/dist/_dts/api/src/bookingRecords.d.ts +4 -2
  9. package/dist/_dts/api/src/bookings.d.ts +3 -1
  10. package/dist/_dts/api/src/index.d.ts +6 -5
  11. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +15 -5
  12. package/dist/_dts/api/src/request.d.ts +21 -0
  13. package/dist/_dts/api/src/sdk-event-upsert.d.ts +3 -1
  14. package/dist/_dts/api/src/sdkContracts.d.ts +2 -0
  15. package/dist/_dts/api/src/types.d.ts +3 -1
  16. package/dist/_dts/api/src/url.d.ts +6 -3
  17. package/dist/_dts/block-form/src/utils/visibleWhen.d.ts +1 -0
  18. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailCard.d.ts +5 -1
  19. package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterThumbnailGrid.d.ts +9 -1
  20. package/dist/_dts/block-form/src/widgets/RepeaterField/components/index.d.ts +1 -0
  21. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +7 -11
  22. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +6 -0
  23. package/dist/_dts/blocks/src/index.d.ts +2 -1
  24. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +14 -6
  25. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -4
  26. package/dist/_dts/blocks/src/system/blocks/hero.d.ts +0 -2
  27. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +3 -3
  28. package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +8 -0
  29. package/dist/_dts/blocks/src/system/constants/events.d.ts +4 -1
  30. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +3 -1
  31. package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -0
  32. package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +17 -5
  33. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +51 -6
  34. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +24 -0
  35. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +2 -2
  36. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +1 -17
  37. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +5 -9
  38. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +5 -9
  39. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +2 -1
  40. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +24 -0
  41. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +5 -0
  42. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.d.ts +4 -4
  43. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.state.d.ts +50 -0
  44. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -2
  45. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +21 -0
  46. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +1 -1
  47. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +11 -1
  48. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +2 -1
  49. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +11 -1
  50. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/calendarViewOptions.d.ts +10 -0
  51. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventProductEligibility.d.ts +24 -0
  52. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +5 -2
  53. package/dist/_dts/blocks/src/system/runtime/nodes/shop-checkout-form.d.ts +2 -2
  54. package/dist/_dts/content-model/src/entry-slots/index.d.ts +1 -0
  55. package/dist/_dts/content-model/src/entry-slots/sdkBlocks.d.ts +21 -0
  56. package/dist/_dts/content-model/src/entry-slots/types.d.ts +7 -0
  57. package/dist/_dts/core/src/money-input.d.ts +18 -0
  58. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +50 -0
  59. package/dist/_dts/media-editor/src/MediaEditor.d.ts +2 -1
  60. package/dist/_dts/media-editor/src/fieldUi.d.ts +6 -0
  61. package/dist/_dts/media-editor/src/index.d.ts +1 -1
  62. package/dist/_dts/preview-next/src/client/index.d.ts +1 -0
  63. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -2
  64. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -2
  65. package/dist/_dts/preview-next/src/client/preview/PreviewThemedSiteDocument.d.ts +3 -2
  66. package/dist/_dts/preview-next/src/client/preview/SiteChromeEditableSurface.d.ts +2 -2
  67. package/dist/_dts/preview-next/src/client/preview/themeRuntime.d.ts +6 -0
  68. package/dist/_dts/preview-next/src/client/sdk/SdkPreviewMode.d.ts +2 -1
  69. package/dist/_dts/sdk/src/cli/commands/pull-dated-offering-scope.d.ts +10 -0
  70. package/dist/_dts/sdk/src/cli/content/reader.d.ts +12 -5
  71. package/dist/_dts/sdk/src/client/management/types.d.ts +6 -55
  72. package/dist/_dts/sdk/src/components.d.ts +1 -0
  73. package/dist/_dts/sdk/src/config/field-definitions.d.ts +3 -1
  74. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +3 -1
  75. package/dist/_dts/sdk/src/next/types.d.ts +8 -11
  76. package/dist/_dts/sdk/src/preview-next/client/index.d.ts +1 -1
  77. package/dist/_dts/sdk/src/rendering/blocks-theme-scope.d.ts +2 -1
  78. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +8 -7
  79. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +5 -6
  80. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
  81. package/dist/_dts/sdk/src/rendering/server.d.ts +1 -0
  82. package/dist/_dts/sdk/src/rendering/themeRuntime.d.ts +26 -0
  83. package/dist/_dts/sdk/src/version.d.ts +1 -1
  84. package/dist/_dts/site-commands/src/commands.d.ts +18 -0
  85. package/dist/_dts/theme-core/src/ResponsiveScope.d.ts +12 -0
  86. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -1
  87. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +2 -2
  88. package/dist/_dts/theme-core/src/buttons/types.d.ts +5 -5
  89. package/dist/_dts/theme-core/src/cards/types.d.ts +2 -2
  90. package/dist/_dts/theme-core/src/index.d.ts +2 -0
  91. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +21 -21
  92. package/dist/_dts/theme-core/src/schema.d.ts +18 -18
  93. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +2 -2
  94. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
  95. package/dist/_dts/theme-core/src/site-styles/logoBranding.d.ts +4 -4
  96. package/dist/_dts/theme-core/src/themeRuntime.d.ts +11 -0
  97. package/dist/{chunk-HKJQERFR.mjs → chunk-AEOYWPE4.mjs} +91 -55
  98. package/dist/{chunk-F645A5UV.mjs → chunk-BOQXMCSP.mjs} +129 -101
  99. package/dist/{chunk-ZQRBLCW5.mjs → chunk-GSPFFUVB.mjs} +2 -2
  100. package/dist/{chunk-7YUAXONX.mjs → chunk-PMBB6MQ7.mjs} +1280 -774
  101. package/dist/{chunk-TGBJWKMP.mjs → chunk-RQ3XZ4SJ.mjs} +9 -1
  102. package/dist/{chunk-7N46MZHI.mjs → chunk-UG7I7S7W.mjs} +1 -1
  103. package/dist/cli/index.mjs +899 -531
  104. package/dist/cli/init-docs/content/cli-reference.md +6 -1
  105. package/dist/cli/init-docs/content/content-management.md +27 -0
  106. package/dist/client/{accordion-MUCVNGQ7.mjs → accordion-GXQNWQ6O.mjs} +1 -1
  107. package/dist/client/{bookingForm-PKD6EFIE.mjs → bookingForm-STLUJ36H.mjs} +25 -270
  108. package/dist/client/bookings.mjs +432 -269
  109. package/dist/client/{carousel-3TKQSNJC.mjs → carousel-CVRN6EPP.mjs} +1 -1
  110. package/dist/client/{cart-6XHSZK23.mjs → cart-IYIBA5CL.mjs} +5 -6
  111. package/dist/client/{checkout-FVSPM6FI.mjs → checkout-O3BGM4GS.mjs} +5 -6
  112. package/dist/client/chunk-4RTFGHZN.mjs +433 -0
  113. package/dist/client/{chunk-UQFY4AHX.mjs → chunk-6DPXDOIL.mjs} +65 -28
  114. package/dist/client/{chunk-ZT5XE7FK.mjs → chunk-D3ETC2SU.mjs} +1 -1
  115. package/dist/client/{chunk-CQKKFEQD.mjs → chunk-DAS5CIER.mjs} +274 -105
  116. package/dist/client/{chunk-SDIYSQAY.mjs → chunk-HIHOQGIP.mjs} +2 -3
  117. package/dist/client/{chunk-ZJZZA5EP.mjs → chunk-MFPKS6QS.mjs} +11 -14
  118. package/dist/client/{chunk-EY42X22F.mjs → chunk-NBFRJ5NB.mjs} +156 -4
  119. package/dist/client/{chunk-VGLXACVK.mjs → chunk-VFHZLZAC.mjs} +1 -1
  120. package/dist/client/{chunk-STJ2NCQM.mjs → chunk-WHZQDPBZ.mjs} +19 -1
  121. package/dist/client/{chunk-RSQWWUAD.mjs → chunk-Z62JYS5O.mjs} +3 -3
  122. package/dist/client/client.mjs +3292 -2827
  123. package/dist/client/{courseRegistration-ATZSYDHM.mjs → courseRegistration-2D3ACMJR.mjs} +18 -56
  124. package/dist/client/{eventCalendar-6T2UGKKP.mjs → eventCalendar-QY4UZUFF.mjs} +8 -9
  125. package/dist/client/{eventCombined-Q4VANXVF.mjs → eventCombined-RRCDKJC2.mjs} +8 -9
  126. package/dist/client/{eventDetails-DW37E7VW.mjs → eventDetails-YO335BUT.mjs} +8 -9
  127. package/dist/client/{eventListing-XURTSAUW.mjs → eventListing-PXA6GFQ3.mjs} +8 -9
  128. package/dist/client/{eventRegistration-MRKEVAXW.mjs → eventRegistration-2ZHEDDXO.mjs} +8 -9
  129. package/dist/client/{form-WZZFFGMU.mjs → form-ZS6KX4U2.mjs} +6 -6
  130. package/dist/client/{headerSection-EQYVQBLM.mjs → headerSection-QK5SLIIB.mjs} +2 -2
  131. package/dist/client/hooks.mjs +1084 -1029
  132. package/dist/client/{locationMap-MFF5VAZR.mjs → locationMap-GFNIUD2X.mjs} +2 -2
  133. package/dist/client/{newsletterForm-JQ77UYIE.mjs → newsletterForm-PGLTTCUG.mjs} +4 -4
  134. package/dist/client/{productDetail-25LMT3IZ.mjs → productDetail-OPBE5ZPI.mjs} +5 -6
  135. package/dist/client/{productList-5ABEMKUG.mjs → productList-NI72Q62Z.mjs} +5 -6
  136. package/dist/client/rendering/client.mjs +2692 -2285
  137. package/dist/client/rendering/islands.mjs +18 -18
  138. package/dist/client/rendering.mjs +2611 -2156
  139. package/dist/client/{shop-OMMQZ6YO.mjs → shop-3ZQPEWYI.mjs} +5 -6
  140. package/dist/client/spam-protection.mjs +4 -5
  141. package/dist/preview-next/before-render.mjs +2 -2
  142. package/dist/preview-next/client/runtime.mjs +5 -5
  143. package/dist/{sdk-runtime-WNLBZ3ZH.mjs → sdk-runtime-FSHXCWDS.mjs} +6 -6
  144. package/dist/server/components.mjs +1722 -1453
  145. package/dist/server/config-validation.mjs +1316 -1261
  146. package/dist/server/config.mjs +1316 -1261
  147. package/dist/server/data.mjs +1084 -1029
  148. package/dist/server/index.mjs +135 -100
  149. package/dist/server/navigation.mjs +20 -30
  150. package/dist/server/next.mjs +1782 -1500
  151. package/dist/server/page-converter.mjs +1009 -946
  152. package/dist/server/prebuild.mjs +1 -1
  153. package/dist/server/rendering/server.mjs +1722 -1453
  154. package/dist/server/rendering.mjs +1728 -1459
  155. package/dist/server/routing.mjs +1127 -1045
  156. package/dist/server/server.mjs +1219 -1129
  157. package/dist/server/theme-bridge.mjs +8 -5
  158. package/package.json +2 -2
  159. package/dist/SdkPreviewModeRuntime-ZBEMRV7N.mjs +0 -8
  160. package/dist/client/chunk-LQFDYWPJ.mjs +0 -184
  161. package/dist/client/chunk-ZFHRN6W2.mjs +0 -66
@@ -6777,7 +6777,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
6777
6777
  );
6778
6778
 
6779
6779
  // ../api/src/sdkConfig/contracts.ts
6780
- import { z as z65 } from "zod";
6780
+ import { z as z63 } from "zod";
6781
6781
 
6782
6782
  // ../blocks/src/system/manifest/augmentManifest.ts
6783
6783
  function augmentManifest(manifest) {
@@ -7103,12 +7103,17 @@ var visibleWhenPredicateSchema = z4.object({
7103
7103
  minItems: z4.number().int().nonnegative().optional(),
7104
7104
  maxItems: z4.number().int().nonnegative().optional()
7105
7105
  });
7106
- var visibleWhenSchema = z4.union([
7107
- visibleWhenPredicateSchema,
7108
- z4.object({
7109
- allOf: z4.array(visibleWhenPredicateSchema).min(1)
7110
- })
7111
- ]);
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
+ );
7112
7117
  var uiSchema = z4.object({
7113
7118
  widget: z4.string().optional(),
7114
7119
  // Container/widget presets (used by Group/Repeater widgets themselves, not for widget selection)
@@ -20094,9 +20099,6 @@ var heroCopyFragment = defineFragment({
20094
20099
  maxLength: 600
20095
20100
  }
20096
20101
  ],
20097
- // Layout order is [eyebrow, headline, subheadline]. The hero block's
20098
- // `splitEditorial` variant reads these nodes by index; keep the order stable
20099
- // (it fails fast at import if the count changes).
20100
20102
  layout: [
20101
20103
  text(
20102
20104
  {
@@ -22334,32 +22336,6 @@ var splitReverseLayout = splitLayoutWith([
22334
22336
  splitContentColumn,
22335
22337
  splitImageColumn
22336
22338
  ]);
22337
- var heroEyebrowNode = heroCopyFragment.layout[0];
22338
- var heroHeadlineNode = heroCopyFragment.layout[1];
22339
- var heroSubheadlineNode = heroCopyFragment.layout[2];
22340
- var heroCtaRowNode = heroCtaRowFragment.layout[0];
22341
- if (!heroEyebrowNode || !heroHeadlineNode || !heroSubheadlineNode || !heroCtaRowNode) {
22342
- throw new Error("Hero copy/CTA fragments are missing their expected layout nodes.");
22343
- }
22344
- var heroEditorialBottomRow = inline(
22345
- {
22346
- gap: "lg",
22347
- align: "end",
22348
- justify: "start",
22349
- wrap: true,
22350
- className: "rb-w-full"
22351
- },
22352
- [heroSubheadlineNode, heroCtaRowNode]
22353
- );
22354
- var splitEditorialContentColumn = heroContentWrapper(
22355
- [heroEyebrowNode, heroHeadlineNode, heroEditorialBottomRow],
22356
- "md",
22357
- "rb-w-full rb-text-left"
22358
- );
22359
- var splitEditorialLayout = splitLayoutWith([
22360
- splitEditorialContentColumn,
22361
- splitImageColumn
22362
- ]);
22363
22339
  var heroConfig = {
22364
22340
  id: "block.hero",
22365
22341
  title: "Hero",
@@ -22383,7 +22359,8 @@ var heroConfig = {
22383
22359
  id: "imageShape",
22384
22360
  label: "Image shape",
22385
22361
  defaultValue: "default",
22386
- uiIntent: "display"
22362
+ uiIntent: "display",
22363
+ visibleWhen: { field: "variant", oneOf: ["split", "splitReverse"] }
22387
22364
  })
22388
22365
  ],
22389
22366
  layout: classicLayout,
@@ -22391,8 +22368,7 @@ var heroConfig = {
22391
22368
  classic: classicLayout,
22392
22369
  micro: microLayout,
22393
22370
  split: splitLayout,
22394
- splitReverse: splitReverseLayout,
22395
- splitEditorial: splitEditorialLayout
22371
+ splitReverse: splitReverseLayout
22396
22372
  },
22397
22373
  defaultVariant: "classic",
22398
22374
  description: "Hero section with headline, subtitle, and repeatable CTAs.",
@@ -24268,8 +24244,10 @@ function resolveGeneratedHeroLayoutStyles(content) {
24268
24244
  return isPlainObject(raw) ? raw : null;
24269
24245
  }
24270
24246
  function readHeroLayoutString(content, generatedKey, fallbackKey = generatedKey) {
24247
+ const explicitValue = readString(content, fallbackKey);
24248
+ if (explicitValue !== void 0) return explicitValue;
24271
24249
  const generated = resolveGeneratedHeroLayoutStyles(content);
24272
- return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : readString(content, fallbackKey);
24250
+ return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : void 0;
24273
24251
  }
24274
24252
  function resolveHeroVariant(content) {
24275
24253
  const variant = readString(content, "variant");
@@ -24282,7 +24260,7 @@ function resolveHeroContentAlignment(content) {
24282
24260
  const raw = readHeroLayoutString(content, "contentAlignment");
24283
24261
  if (raw === "left" || raw === "center" || raw === "right") return raw;
24284
24262
  const variant = resolveHeroVariant(content);
24285
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "left";
24263
+ if (variant === "split" || variant === "splitReverse") return "left";
24286
24264
  return "center";
24287
24265
  }
24288
24266
  function resolveHeroVerticalAlignment(content) {
@@ -24292,7 +24270,7 @@ function resolveHeroVerticalAlignment(content) {
24292
24270
  const minHeight = sectionStyles?.minHeight;
24293
24271
  if (minHeight === "banner" || minHeight === "hero" || minHeight === "immersive") return "center";
24294
24272
  const variant = resolveHeroVariant(content);
24295
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "center";
24273
+ if (variant === "split" || variant === "splitReverse") return "center";
24296
24274
  return "top";
24297
24275
  }
24298
24276
  function resolveHeroContentMaxWidth(content) {
@@ -27861,9 +27839,6 @@ var appointmentBookingBlockDefinition = {
27861
27839
  }
27862
27840
  };
27863
27841
 
27864
- // ../blocks/src/system/blocks/event-registration.ts
27865
- import { z as z47 } from "zod";
27866
-
27867
27842
  // ../blocks/src/system/blocks/events/shared/schemas.ts
27868
27843
  import { z as z43 } from "zod";
27869
27844
 
@@ -28478,24 +28453,57 @@ function normalizeEventStaffMemberId(value) {
28478
28453
  return trimmed ? trimmed : null;
28479
28454
  }
28480
28455
 
28481
- // ../blocks/src/system/blocks/event-registration.shared.ts
28456
+ // ../blocks/src/system/blocks/shop.shared.ts
28482
28457
  import { z as z44 } from "zod";
28483
- var occurrenceContextSchema = z44.object({
28458
+ var publicPassProductSchema = z44.object({
28459
+ id: z44.string(),
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({
28484
28475
  id: z44.string(),
28485
- seriesId: z44.string(),
28486
- startsAt: z44.string(),
28487
- endsAt: z44.string(),
28488
- timeZone: z44.string(),
28489
- capacityOverride: z44.number().nullable().optional(),
28490
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
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()
28491
28498
  }).nullable();
28492
28499
 
28493
28500
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28494
- import { z as z46 } from "zod";
28501
+ import { z as z47 } from "zod";
28495
28502
 
28496
28503
  // ../blocks/src/system/constants/events.ts
28497
28504
  var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
28498
- var eventCalendarDisplayModeValues = ["combined", "month", "week", "list", "timetable"];
28505
+ var eventCalendarDisplayModeValues = ["combined", "calendar", "list", "timetable"];
28506
+ var eventCalendarDefaultViewValues = ["month", "week"];
28499
28507
  var eventCalendarListLayoutValues = ["stack", "grid", "compact"];
28500
28508
  var eventCalendarListLayoutOptions = [
28501
28509
  { id: "stack", label: "Stack" },
@@ -28505,6 +28513,9 @@ var eventCalendarListLayoutOptions = [
28505
28513
  function isEventCalendarDisplayMode(value) {
28506
28514
  return typeof value === "string" && eventCalendarDisplayModeValues.includes(value);
28507
28515
  }
28516
+ function isEventCalendarDefaultView(value) {
28517
+ return typeof value === "string" && eventCalendarDefaultViewValues.includes(value);
28518
+ }
28508
28519
  function isEventCalendarListLayout(value) {
28509
28520
  return typeof value === "string" && eventCalendarListLayoutValues.includes(value);
28510
28521
  }
@@ -28645,16 +28656,17 @@ function readAmount(value) {
28645
28656
  }
28646
28657
 
28647
28658
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
28648
- import { z as z45 } from "zod";
28649
- var previewStageSchema = z45.enum(["preview", "published"]);
28650
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
28651
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
28652
- var eventLayoutSchema = z45.enum(eventCalendarListLayoutValues);
28653
- var eventCalendarDisplayModeSchema = z45.enum(eventCalendarDisplayModeValues);
28654
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
28655
- var weekStartSchema = z45.enum(["sunday", "monday"]);
28656
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
28657
- 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"]);
28658
28670
 
28659
28671
  // ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
28660
28672
  function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
@@ -28672,7 +28684,7 @@ function eventMatchesOccurrenceId(event, occurrenceId) {
28672
28684
  function findPreSelectedEvent(input) {
28673
28685
  const occurrenceContext = input.occurrenceContext;
28674
28686
  if (!occurrenceContext) {
28675
- return null;
28687
+ return input.scopedEvents.length === 1 ? input.scopedEvents[0] ?? null : null;
28676
28688
  }
28677
28689
  const contextDate = getBookingLocalDateKey(toScheduledBookingDateTime({
28678
28690
  startsAt: occurrenceContext.startsAt,
@@ -28714,68 +28726,72 @@ function toRegistrationEvents(events) {
28714
28726
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28715
28727
  var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
28716
28728
  var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
28717
- var contentEntrySchema = z46.object({
28718
- id: z46.string(),
28719
- slug: z46.string(),
28720
- contentTypeSlug: z46.string()
28729
+ var contentEntrySchema = z47.object({
28730
+ id: z47.string(),
28731
+ slug: z47.string(),
28732
+ contentTypeSlug: z47.string()
28721
28733
  });
28722
- var eventRegistrationPublicEventSchema = z46.preprocess(
28734
+ var eventRegistrationPublicEventSchema = z47.preprocess(
28723
28735
  normalizeEventRegistrationEventInput,
28724
28736
  publicEventSchema
28725
28737
  );
28726
- var eventRegistrationSourceSchema = z46.object({
28727
- siteId: z46.string().optional(),
28728
- apiBaseUrl: z46.string().optional(),
28729
- portalToken: z46.string().nullable().optional(),
28730
- 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(),
28731
28743
  occurrenceContext: occurrenceContextSchema.optional(),
28732
28744
  contentEntry: contentEntrySchema.nullable().optional(),
28733
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28734
- className: z46.string().nullable().optional(),
28735
- buttonText: z46.string().nullable().optional(),
28736
- maxTickets: z46.string().nullable().optional(),
28737
- showVenue: z46.boolean().optional(),
28738
- showCapacity: z46.boolean().optional(),
28739
- successMessage: z46.string().optional(),
28740
- 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(),
28741
28753
  buttonVariant: registrationButtonVariantSchema.optional(),
28742
- overlayEnabled: z46.boolean().optional(),
28743
- spamProtectionEnabled: z46.boolean().optional(),
28754
+ overlayEnabled: z47.boolean().optional(),
28755
+ spamProtectionEnabled: z47.boolean().optional(),
28744
28756
  stage: previewStageSchema.optional(),
28745
- supportEmail: z46.string().optional()
28746
- });
28747
- var eventRegistrationDisplaySchema = z46.object({
28748
- kind: z46.literal("event-registration"),
28749
- state: z46.literal("generic-shell"),
28750
- className: z46.string().nullable(),
28751
- titleText: z46.string(),
28752
- bodyText: z46.string(),
28753
- stepLabels: z46.array(z46.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
28754
- summaryButtonText: z46.string()
28755
- });
28756
- 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({
28757
28771
  occurrenceContext: occurrenceContextSchema.optional(),
28758
28772
  contentEntry: contentEntrySchema.nullable().optional(),
28759
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28760
- maxTickets: z46.string().optional(),
28761
- showVenue: z46.boolean().optional(),
28762
- showCapacity: z46.boolean().optional(),
28763
- successMessage: z46.string().optional(),
28764
- 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(),
28765
28779
  buttonVariant: registrationButtonVariantSchema.optional(),
28766
- overlayEnabled: z46.boolean().optional(),
28767
- spamProtectionEnabled: z46.boolean().optional(),
28768
- 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()
28769
28785
  });
28770
- var eventRegistrationRenderSchema = z46.object({
28786
+ var eventRegistrationRenderSchema = z47.object({
28771
28787
  display: eventRegistrationDisplaySchema,
28772
28788
  hydration: eventRegistrationHydrationSchema
28773
28789
  });
28774
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
28775
- siteId: z46.string().optional(),
28776
- apiBaseUrl: z46.string().optional(),
28777
- portalToken: z46.string().nullable().optional(),
28778
- 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(),
28779
28795
  stage: previewStageSchema.optional()
28780
28796
  }));
28781
28797
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -28881,7 +28897,9 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
28881
28897
  buttonVariant: source.buttonVariant,
28882
28898
  overlayEnabled: source.overlayEnabled,
28883
28899
  spamProtectionEnabled: source.spamProtectionEnabled,
28884
- supportEmail: source.supportEmail
28900
+ supportEmail: source.supportEmail,
28901
+ sitePasses: source.sitePasses ?? null,
28902
+ siteMemberships: source.siteMemberships ?? null
28885
28903
  }
28886
28904
  })
28887
28905
  });
@@ -29063,6 +29081,8 @@ var eventRegistrationManifest = createBlockManifest({
29063
29081
  },
29064
29082
  // Event data from loader
29065
29083
  events: { $bind: { from: "data.events" } },
29084
+ sitePasses: { $bind: { from: "data.sitePasses" } },
29085
+ siteMemberships: { $bind: { from: "data.siteMemberships" } },
29066
29086
  // Stage for preview mode (allows registering for draft events)
29067
29087
  stage: {
29068
29088
  $bind: { from: "$root.previewStage", fallback: "published" }
@@ -29081,7 +29101,9 @@ var eventRegistrationBlockDefinition = {
29081
29101
  manifest: eventRegistrationManifest,
29082
29102
  runtime: eventRegistrationBlockRuntime,
29083
29103
  dataSchemas: {
29084
- events: z47.array(publicEventSchema).optional(),
29104
+ events: publicEventsArraySchema.optional(),
29105
+ sitePasses: publicPassProductCollectionSchema.optional(),
29106
+ siteMemberships: publicMembershipProductCollectionSchema.optional(),
29085
29107
  occurrenceContext: occurrenceContextSchema.optional()
29086
29108
  },
29087
29109
  dataLoaders: {
@@ -29100,6 +29122,20 @@ var eventRegistrationBlockDefinition = {
29100
29122
  entryId: { $bind: { from: "$root.contentEntry._entryId", fallback: "" } }
29101
29123
  },
29102
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"
29103
29139
  }
29104
29140
  }
29105
29141
  };
@@ -29431,35 +29467,7 @@ var courseRegistrationBlockDefinition = {
29431
29467
  };
29432
29468
 
29433
29469
  // ../blocks/src/system/blocks/event-details.ts
29434
- import { z as z50 } from "zod";
29435
-
29436
- // ../blocks/src/system/blocks/shop.shared.ts
29437
29470
  import { z as z49 } from "zod";
29438
- var publicPassProductSchema = z49.object({
29439
- id: z49.string(),
29440
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
29441
- name: z49.string(),
29442
- description: z49.string().nullable(),
29443
- price: z49.number(),
29444
- currency: z49.string(),
29445
- creditsTotal: z49.number(),
29446
- pricePerCredit: z49.number(),
29447
- validDays: z49.number().nullable(),
29448
- eligibleCategoryIds: z49.array(z49.string()),
29449
- eligibleCategoryNames: z49.array(z49.string())
29450
- });
29451
- var publicMembershipProductSchema = z49.object({
29452
- id: z49.string(),
29453
- name: z49.string(),
29454
- description: z49.string().nullable(),
29455
- price: z49.number(),
29456
- currency: z49.string(),
29457
- billingInterval: z49.enum(["month", "year"]),
29458
- eligibleCategoryIds: z49.array(z49.string()),
29459
- eligibleCategoryNames: z49.array(z49.string())
29460
- });
29461
-
29462
- // ../blocks/src/system/blocks/event-details.ts
29463
29471
  var eventDetailsManifest = createBlockManifest({
29464
29472
  id: "block.event-details",
29465
29473
  version: "1.0.0",
@@ -29591,40 +29599,40 @@ var eventDetailsManifest = createBlockManifest({
29591
29599
  })
29592
29600
  ]
29593
29601
  });
29594
- var occurrenceContextSchema2 = z50.object({
29595
- id: z50.string(),
29596
- seriesId: z50.string(),
29597
- startsAt: z50.string(),
29598
- endsAt: z50.string(),
29599
- timeZone: z50.string(),
29600
- capacityOverride: z50.number().nullable().optional(),
29601
- 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()
29602
29610
  }).nullable();
29603
- var eventAutoApplyDiscountPreviewBaseSchema = z50.object({
29604
- id: z50.string(),
29605
- publicLabel: z50.string(),
29606
- description: z50.string().nullable(),
29607
- 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()
29608
29616
  });
29609
- var eventAutoApplyDiscountPreviewSchema = z50.discriminatedUnion("discountType", [
29617
+ var eventAutoApplyDiscountPreviewSchema = z49.discriminatedUnion("discountType", [
29610
29618
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29611
- discountType: z50.literal("percent"),
29612
- discountPercent: z50.number(),
29613
- discountAmountCents: z50.null()
29619
+ discountType: z49.literal("percent"),
29620
+ discountPercent: z49.number(),
29621
+ discountAmountCents: z49.null()
29614
29622
  }),
29615
29623
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29616
- discountType: z50.literal("fixed"),
29617
- discountPercent: z50.null(),
29618
- discountAmountCents: z50.number()
29624
+ discountType: z49.literal("fixed"),
29625
+ discountPercent: z49.null(),
29626
+ discountAmountCents: z49.number()
29619
29627
  })
29620
29628
  ]);
29621
29629
  var eventDetailsBlockDefinition = {
29622
29630
  manifest: eventDetailsManifest,
29623
29631
  dataSchemas: {
29624
- eventDetailsData: z50.object({
29632
+ eventDetailsData: z49.object({
29625
29633
  events: publicEventsArraySchema,
29626
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
29627
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) }),
29634
+ sitePasses: publicPassProductCollectionSchema,
29635
+ siteMemberships: publicMembershipProductCollectionSchema,
29628
29636
  autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
29629
29637
  }).optional(),
29630
29638
  occurrenceContext: occurrenceContextSchema2.optional()
@@ -29948,7 +29956,7 @@ var eventSpotlightBlockDefinition = {
29948
29956
  };
29949
29957
 
29950
29958
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
29951
- import { z as z52 } from "zod";
29959
+ import { z as z51 } from "zod";
29952
29960
 
29953
29961
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
29954
29962
  var COLUMN_CLASSES = {
@@ -30056,16 +30064,16 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
30056
30064
  }
30057
30065
 
30058
30066
  // ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
30059
- import { z as z51 } from "zod";
30067
+ import { z as z50 } from "zod";
30060
30068
  var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
30061
- var eventPageSizeSchema = z51.union([
30062
- z51.literal(3),
30063
- z51.literal(6),
30064
- z51.literal(10),
30065
- z51.literal(12),
30066
- z51.literal(20),
30067
- z51.literal(24),
30068
- 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)
30069
30077
  ]);
30070
30078
  var eventPageSizeSet = new Set(eventPageSizeValues);
30071
30079
  function resolveEventPageSize(value, fallback = 12) {
@@ -30075,15 +30083,15 @@ function resolveEventPageSize(value, fallback = 12) {
30075
30083
  function resolveEventCalendarListPageSize(input) {
30076
30084
  return resolveEventPageSize(input.eventsPerPage);
30077
30085
  }
30078
- var eventListPaginationActionSchema = z51.discriminatedUnion("kind", [
30079
- z51.object({
30080
- kind: z51.literal("loadMore"),
30081
- label: z51.string()
30086
+ var eventListPaginationActionSchema = z50.discriminatedUnion("kind", [
30087
+ z50.object({
30088
+ kind: z50.literal("loadMore"),
30089
+ label: z50.string()
30082
30090
  }),
30083
- z51.object({
30084
- kind: z51.literal("seeAllLink"),
30085
- label: z51.string(),
30086
- href: z51.string()
30091
+ z50.object({
30092
+ kind: z50.literal("seeAllLink"),
30093
+ label: z50.string(),
30094
+ href: z50.string()
30087
30095
  })
30088
30096
  ]);
30089
30097
  function resolveEventListPaginationAction(input) {
@@ -30096,89 +30104,89 @@ function resolveEventListPaginationAction(input) {
30096
30104
  }
30097
30105
 
30098
30106
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
30099
- var legacyEventCardVariantSchema = z52.enum(["variant1", "variant2"]);
30100
- var eventCardVariantInputSchema = z52.union([
30107
+ var legacyEventCardVariantSchema = z51.enum(["variant1", "variant2"]);
30108
+ var eventCardVariantInputSchema = z51.union([
30101
30109
  cardVariantRoleSchema,
30102
30110
  legacyEventCardVariantSchema
30103
30111
  ]);
30104
- var cardOrientationSchema = z52.enum(["vertical", "horizontal"]);
30105
- var eventBlockKindSchema = z52.enum(eventBlockKindValues);
30106
- var eventSurfaceScopeSchema = z52.enum(eventSurfaceScopeValues);
30107
- var eventScheduleScopeSchema2 = z52.enum(eventScheduleScopeValues);
30108
- var eventListingSourceSchema = z52.object({
30109
- events: z52.array(publicEventSchema).nullable().optional(),
30110
- siteId: z52.string(),
30111
- 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(),
30112
30120
  stage: previewStageSchema.optional(),
30113
30121
  layout: eventLayoutSchema.optional(),
30114
30122
  columns: columnOptionSchema.optional(),
30115
- eventsPerPage: z52.string().optional(),
30116
- paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
30117
- seeAllUrl: z52.string().optional(),
30118
- 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(),
30119
30127
  cardVariant: eventCardVariantInputSchema.optional(),
30120
30128
  buttonVariant: eventButtonVariantSchema.optional(),
30121
- buttonText: z52.string().optional(),
30122
- showVenue: z52.boolean().optional(),
30123
- showMap: z52.boolean().optional(),
30124
- showCapacity: z52.boolean().optional(),
30125
- emptyMessage: z52.string().optional(),
30126
- className: z52.string().optional(),
30127
- 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(),
30128
30136
  showCategoryFilter: filterAutoShowSchema.optional(),
30129
- showVenueFilter: z52.boolean().nullable().optional(),
30130
- showStaffFilter: z52.boolean().nullable().optional(),
30137
+ showVenueFilter: z51.boolean().nullable().optional(),
30138
+ showStaffFilter: z51.boolean().nullable().optional(),
30131
30139
  eventKind: eventBlockKindSchema.nullable().optional(),
30132
30140
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
30133
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30141
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
30134
30142
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
30135
- filterCategoryIds: z52.string().nullable().optional(),
30136
- filterStaffMemberId: z52.string().nullable().optional(),
30137
- filterVenueId: z52.string().nullable().optional()
30143
+ filterCategoryIds: z51.string().nullable().optional(),
30144
+ filterStaffMemberId: z51.string().nullable().optional(),
30145
+ filterVenueId: z51.string().nullable().optional()
30138
30146
  });
30139
- var eventListingDisplaySchema = z52.object({
30140
- kind: z52.literal("event-listing"),
30141
- state: z52.enum(["loading", "empty", "ready"]),
30147
+ var eventListingDisplaySchema = z51.object({
30148
+ kind: z51.literal("event-listing"),
30149
+ state: z51.enum(["loading", "empty", "ready"]),
30142
30150
  listLayout: eventLayoutSchema,
30143
- className: z52.string().nullable(),
30144
- emptyMessage: z52.string(),
30145
- loadingMessage: z52.string(),
30146
- containerClass: z52.string(),
30151
+ className: z51.string().nullable(),
30152
+ emptyMessage: z51.string(),
30153
+ loadingMessage: z51.string(),
30154
+ containerClass: z51.string(),
30147
30155
  cardVariant: cardVariantRoleSchema,
30148
30156
  buttonVariant: eventButtonVariantSchema,
30149
- buttonText: z52.string(),
30150
- showVenue: z52.boolean(),
30151
- showMap: z52.boolean(),
30152
- showCapacity: z52.boolean(),
30157
+ buttonText: z51.string(),
30158
+ showVenue: z51.boolean(),
30159
+ showMap: z51.boolean(),
30160
+ showCapacity: z51.boolean(),
30153
30161
  orientation: cardOrientationSchema,
30154
- events: z52.array(publicEventSchema)
30162
+ events: z51.array(publicEventSchema)
30155
30163
  });
30156
- var eventListingHydrationSchema = z52.object({
30157
- siteId: z52.string(),
30164
+ var eventListingHydrationSchema = z51.object({
30165
+ siteId: z51.string(),
30158
30166
  stage: previewStageSchema.optional(),
30159
30167
  eventsPerPage: eventPageSizeSchema,
30160
30168
  paginationAction: eventListPaginationActionSchema,
30161
- showFilters: z52.boolean(),
30169
+ showFilters: z51.boolean(),
30162
30170
  showCategoryFilter: filterAutoShowSchema,
30163
- showVenueFilter: z52.boolean(),
30164
- showStaffFilter: z52.boolean(),
30171
+ showVenueFilter: z51.boolean(),
30172
+ showStaffFilter: z51.boolean(),
30165
30173
  eventKind: eventBlockKindSchema,
30166
30174
  eventSurface: eventSurfaceScopeSchema,
30167
- filterEventPresets: z52.string().nullable(),
30175
+ filterEventPresets: z51.string().nullable(),
30168
30176
  scheduleScope: eventScheduleScopeSchema2,
30169
- filterCategoryIds: z52.string().nullable().optional(),
30170
- filterStaffMemberId: z52.string().nullable().optional(),
30171
- filterVenueId: z52.string().nullable().optional(),
30172
- 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()
30173
30181
  });
30174
- var eventListingRenderSchema = z52.object({
30182
+ var eventListingRenderSchema = z51.object({
30175
30183
  display: eventListingDisplaySchema,
30176
30184
  hydration: eventListingHydrationSchema
30177
30185
  });
30178
30186
  var eventListingIslandMetaCodec = createZodCodec(
30179
- z52.object({
30180
- siteId: z52.string(),
30181
- apiBaseUrl: z52.string().optional(),
30187
+ z51.object({
30188
+ siteId: z51.string(),
30189
+ apiBaseUrl: z51.string().optional(),
30182
30190
  stage: previewStageSchema.optional()
30183
30191
  })
30184
30192
  );
@@ -30545,15 +30553,15 @@ var eventListingBlockDefinition = {
30545
30553
  };
30546
30554
 
30547
30555
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
30548
- import { z as z53 } from "zod";
30549
- var eventBlockKindSchema2 = z53.enum(eventBlockKindValues);
30550
- var eventSurfaceScopeSchema2 = z53.enum(eventSurfaceScopeValues);
30551
- var eventScheduleScopeSchema3 = z53.enum(eventScheduleScopeValues);
30552
- 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(
30553
30561
  {
30554
- events: z53.array(publicEventSchema).nullable().optional(),
30555
- siteId: z53.string(),
30556
- apiBaseUrl: z53.string().optional(),
30562
+ events: z52.array(publicEventSchema).nullable().optional(),
30563
+ siteId: z52.string(),
30564
+ apiBaseUrl: z52.string().optional(),
30557
30565
  stage: previewStageSchema.optional(),
30558
30566
  variant: eventCalendarDisplayModeSchema.nullable().optional(),
30559
30567
  displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
@@ -30561,78 +30569,80 @@ var eventCalendarSourceSchema = z53.object(
30561
30569
  listColumns: columnOptionSchema.optional(),
30562
30570
  layout: eventLayoutSchema.optional(),
30563
30571
  columns: columnOptionSchema.optional(),
30564
- eventsPerPage: z53.string().optional(),
30565
- paginationMode: z53.enum(["loadMore", "seeAllLink"]).optional(),
30566
- seeAllUrl: z53.string().optional(),
30567
- 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(),
30568
30576
  startOfWeek: weekStartSchema.optional(),
30569
30577
  calendarTabViews: calendarTabViewsSchema.optional(),
30570
- showFilters: z53.boolean().nullable().optional(),
30578
+ defaultCalendarView: eventCalendarDefaultViewSchema.optional(),
30579
+ showFilters: z52.boolean().nullable().optional(),
30571
30580
  showCategoryFilter: filterAutoShowSchema.optional(),
30572
- showVenueFilter: z53.boolean().nullable().optional(),
30573
- showStaffFilter: z53.boolean().nullable().optional(),
30581
+ showVenueFilter: z52.boolean().nullable().optional(),
30582
+ showStaffFilter: z52.boolean().nullable().optional(),
30574
30583
  kind: eventBlockKindSchema2.nullable().optional(),
30575
30584
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
30576
- filterEventPresets: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30585
+ filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30577
30586
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
30578
- filterCategoryIds: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30579
- filterStaffMemberId: z53.string().nullable().optional(),
30580
- 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(),
30581
30590
  buttonVariant: eventButtonVariantSchema.optional(),
30582
- buttonText: z53.string().optional(),
30583
- showVenue: z53.boolean().nullable().optional(),
30584
- showMap: z53.boolean().nullable().optional(),
30585
- showCapacity: z53.boolean().nullable().optional(),
30586
- emptyMessage: z53.string().optional(),
30587
- 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()
30588
30597
  }
30589
30598
  );
30590
- var eventCalendarDisplaySchema = z53.object({
30591
- kind: z53.literal("event-calendar"),
30599
+ var eventCalendarDisplaySchema = z52.object({
30600
+ kind: z52.literal("event-calendar"),
30592
30601
  displayMode: eventCalendarDisplayModeSchema,
30593
- className: z53.string().nullable(),
30594
- events: z53.array(publicEventSchema),
30602
+ className: z52.string().nullable(),
30603
+ events: z52.array(publicEventSchema),
30595
30604
  listLayout: eventLayoutSchema,
30596
30605
  listColumns: columnOptionSchema,
30597
30606
  eventsPerPage: eventPageSizeSchema,
30598
30607
  paginationAction: eventListPaginationActionSchema,
30599
30608
  startOfWeek: weekStartSchema,
30600
30609
  calendarTabViews: calendarTabViewsSchema,
30601
- showFilters: z53.boolean(),
30610
+ defaultCalendarView: eventCalendarDefaultViewSchema,
30611
+ showFilters: z52.boolean(),
30602
30612
  showCategoryFilter: filterAutoShowSchema,
30603
- showVenueFilter: z53.boolean(),
30604
- showStaffFilter: z53.boolean(),
30613
+ showVenueFilter: z52.boolean(),
30614
+ showStaffFilter: z52.boolean(),
30605
30615
  eventKind: eventBlockKindSchema2,
30606
30616
  eventSurface: eventSurfaceScopeSchema2,
30607
- filterEventPresets: z53.string().nullable(),
30617
+ filterEventPresets: z52.string().nullable(),
30608
30618
  scheduleScope: eventScheduleScopeSchema3,
30609
- filterCategoryIds: z53.string().nullable(),
30610
- filterStaffMemberId: z53.string().nullable(),
30611
- filterVenueId: z53.string().nullable(),
30619
+ filterCategoryIds: z52.string().nullable(),
30620
+ filterStaffMemberId: z52.string().nullable(),
30621
+ filterVenueId: z52.string().nullable(),
30612
30622
  buttonVariant: eventButtonVariantSchema,
30613
- buttonText: z53.string(),
30614
- showVenue: z53.boolean(),
30615
- showMap: z53.boolean(),
30616
- showCapacity: z53.boolean(),
30617
- emptyMessage: z53.string()
30618
- });
30619
- var eventCalendarHydrationSchema = z53.object({
30620
- 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(),
30621
30631
  stage: previewStageSchema.optional(),
30622
- prefetchedEvents: z53.boolean(),
30632
+ prefetchedEvents: z52.boolean(),
30623
30633
  eventKind: eventBlockKindSchema2,
30624
30634
  eventSurface: eventSurfaceScopeSchema2,
30625
- filterEventPresets: z53.string().nullable(),
30635
+ filterEventPresets: z52.string().nullable(),
30626
30636
  scheduleScope: eventScheduleScopeSchema3
30627
30637
  });
30628
- var eventCalendarRenderSchema = z53.object({
30638
+ var eventCalendarRenderSchema = z52.object({
30629
30639
  display: eventCalendarDisplaySchema,
30630
30640
  hydration: eventCalendarHydrationSchema
30631
30641
  });
30632
30642
  var eventCalendarIslandMetaCodec = createZodCodec(
30633
- z53.object({
30634
- siteId: z53.string(),
30635
- apiBaseUrl: z53.string().optional(),
30643
+ z52.object({
30644
+ siteId: z52.string(),
30645
+ apiBaseUrl: z52.string().optional(),
30636
30646
  stage: previewStageSchema.optional()
30637
30647
  })
30638
30648
  );
@@ -30662,6 +30672,7 @@ function buildEventCalendarDisplay(source) {
30662
30672
  }),
30663
30673
  startOfWeek: source.startOfWeek ?? "monday",
30664
30674
  calendarTabViews: source.calendarTabViews ?? "both",
30675
+ defaultCalendarView: source.defaultCalendarView ?? "month",
30665
30676
  showFilters: source.showFilters ?? true,
30666
30677
  showCategoryFilter: source.showCategoryFilter ?? "auto",
30667
30678
  showVenueFilter: source.showVenueFilter ?? false,
@@ -30724,6 +30735,9 @@ function normalizeEventCalendarContent(content) {
30724
30735
  ...variant ? { variant } : {},
30725
30736
  displayMode: normalizeEventCalendarDisplayMode(record.displayMode),
30726
30737
  listLayout: normalizeEventCalendarListLayout(record.listLayout),
30738
+ defaultCalendarView: normalizeEventCalendarDefaultView(
30739
+ record.defaultCalendarView
30740
+ ),
30727
30741
  kind,
30728
30742
  eventSurface: normalizeEventSurfaceScope(record.eventSurface),
30729
30743
  filterEventPresets: normalizeEventSurfacePresets(record.filterEventPresets),
@@ -30741,6 +30755,9 @@ function normalizeEventCalendarDisplayMode(value) {
30741
30755
  function normalizeEventCalendarListLayout(value) {
30742
30756
  return isEventCalendarListLayout(value) ? value : void 0;
30743
30757
  }
30758
+ function normalizeEventCalendarDefaultView(value) {
30759
+ return isEventCalendarDefaultView(value) ? value : void 0;
30760
+ }
30744
30761
  var eventCalendarLayout = [
30745
30762
  styledSection({
30746
30763
  children: sectionContainer(
@@ -30800,6 +30817,9 @@ var eventCalendarLayout = [
30800
30817
  calendarTabViews: {
30801
30818
  $bind: { from: "content.calendarTabViews", fallback: "both" }
30802
30819
  },
30820
+ defaultCalendarView: {
30821
+ $bind: { from: "content.defaultCalendarView", fallback: "month" }
30822
+ },
30803
30823
  // Filtering options
30804
30824
  showFilters: {
30805
30825
  $bind: { from: "content.showFilters", fallback: true }
@@ -30866,8 +30886,7 @@ var eventCalendarAdditionalFields = [
30866
30886
  defaultValue: "combined",
30867
30887
  options: [
30868
30888
  { value: "combined", label: "Combined (List + Calendar tabs)" },
30869
- { value: "month", label: "Month calendar" },
30870
- { value: "week", label: "Week agenda" },
30889
+ { value: "calendar", label: "Calendar" },
30871
30890
  { value: "timetable", label: "Timetable" },
30872
30891
  { value: "list", label: "List" }
30873
30892
  ],
@@ -30906,7 +30925,12 @@ var eventCalendarAdditionalFields = [
30906
30925
  ],
30907
30926
  ui: {
30908
30927
  intent: "display",
30909
- visibleWhen: { field: "listLayout", equals: "grid" }
30928
+ visibleWhen: {
30929
+ allOf: [
30930
+ { field: "variant", oneOf: ["combined", "list"] },
30931
+ { field: "listLayout", equals: "grid" }
30932
+ ]
30933
+ }
30910
30934
  }
30911
30935
  },
30912
30936
  {
@@ -30954,7 +30978,12 @@ var eventCalendarAdditionalFields = [
30954
30978
  required: false,
30955
30979
  ui: {
30956
30980
  intent: "display",
30957
- visibleWhen: { field: "paginationMode", equals: "seeAllLink" }
30981
+ visibleWhen: {
30982
+ allOf: [
30983
+ { field: "variant", oneOf: ["combined", "list"] },
30984
+ { field: "paginationMode", equals: "seeAllLink" }
30985
+ ]
30986
+ }
30958
30987
  }
30959
30988
  },
30960
30989
  {
@@ -30987,7 +31016,7 @@ var eventCalendarAdditionalFields = [
30987
31016
  intent: "display",
30988
31017
  visibleWhen: {
30989
31018
  field: "variant",
30990
- oneOf: ["combined", "month", "week"]
31019
+ oneOf: ["combined", "calendar", "timetable"]
30991
31020
  }
30992
31021
  }
30993
31022
  },
@@ -31010,6 +31039,33 @@ var eventCalendarAdditionalFields = [
31010
31039
  visibleWhen: { field: "variant", equals: "combined" }
31011
31040
  }
31012
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
+ },
31013
31069
  // Filtering options
31014
31070
  {
31015
31071
  id: "kind",
@@ -31037,7 +31093,7 @@ var eventCalendarAdditionalFields = [
31037
31093
  intent: "display",
31038
31094
  visibleWhen: {
31039
31095
  field: "variant",
31040
- oneOf: ["combined", "list", "timetable"]
31096
+ oneOf: ["combined", "calendar", "list", "timetable"]
31041
31097
  }
31042
31098
  }
31043
31099
  },
@@ -31057,8 +31113,10 @@ var eventCalendarAdditionalFields = [
31057
31113
  ui: {
31058
31114
  intent: "display",
31059
31115
  visibleWhen: {
31060
- field: "variant",
31061
- oneOf: ["combined", "list", "timetable"]
31116
+ allOf: [
31117
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31118
+ { field: "showFilters", equals: true }
31119
+ ]
31062
31120
  }
31063
31121
  }
31064
31122
  },
@@ -31072,8 +31130,10 @@ var eventCalendarAdditionalFields = [
31072
31130
  ui: {
31073
31131
  intent: "display",
31074
31132
  visibleWhen: {
31075
- field: "variant",
31076
- oneOf: ["combined", "list", "timetable"]
31133
+ allOf: [
31134
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31135
+ { field: "showFilters", equals: true }
31136
+ ]
31077
31137
  }
31078
31138
  }
31079
31139
  },
@@ -31087,8 +31147,10 @@ var eventCalendarAdditionalFields = [
31087
31147
  ui: {
31088
31148
  intent: "display",
31089
31149
  visibleWhen: {
31090
- field: "variant",
31091
- oneOf: ["combined", "list", "timetable"]
31150
+ allOf: [
31151
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31152
+ { field: "showFilters", equals: true }
31153
+ ]
31092
31154
  }
31093
31155
  }
31094
31156
  },
@@ -31102,8 +31164,15 @@ var eventCalendarAdditionalFields = [
31102
31164
  ui: {
31103
31165
  intent: "display",
31104
31166
  visibleWhen: {
31105
- field: "variant",
31106
- 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
+ ]
31107
31176
  }
31108
31177
  }
31109
31178
  },
@@ -31219,8 +31288,7 @@ var eventCalendarAdditionalFields = [
31219
31288
  ];
31220
31289
  var eventCalendarVariants = {
31221
31290
  combined: eventCalendarLayout[0],
31222
- month: eventCalendarLayout[0],
31223
- week: eventCalendarLayout[0],
31291
+ calendar: eventCalendarLayout[0],
31224
31292
  timetable: eventCalendarLayout[0],
31225
31293
  list: eventCalendarLayout[0]
31226
31294
  };
@@ -31232,8 +31300,7 @@ var eventCalendarDerivedFields = [
31232
31300
  multiple: false,
31233
31301
  options: [
31234
31302
  { value: "combined" },
31235
- { value: "month" },
31236
- { value: "week" },
31303
+ { value: "calendar" },
31237
31304
  { value: "timetable" },
31238
31305
  { value: "list" }
31239
31306
  ]
@@ -31246,6 +31313,13 @@ var eventCalendarDerivedFields = [
31246
31313
  options: eventCalendarListLayoutOptions.map((option) => ({
31247
31314
  value: option.id
31248
31315
  }))
31316
+ },
31317
+ {
31318
+ id: "defaultCalendarView",
31319
+ type: "select",
31320
+ required: false,
31321
+ multiple: false,
31322
+ options: [{ value: "month" }, { value: "week" }]
31249
31323
  }
31250
31324
  ];
31251
31325
  var eventCalendarContentShape = {
@@ -31294,8 +31368,7 @@ var eventCalendarConfig = {
31294
31368
  defaultVariant: "combined",
31295
31369
  variantOptions: {
31296
31370
  combined: { label: "Combined" },
31297
- month: { label: "Month" },
31298
- week: { label: "Week" },
31371
+ calendar: { label: "Calendar" },
31299
31372
  timetable: { label: "Timetable" },
31300
31373
  list: { label: "List" }
31301
31374
  }
@@ -31341,7 +31414,7 @@ var eventCalendarBlockDefinition = {
31341
31414
  };
31342
31415
 
31343
31416
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31344
- import { z as z54 } from "zod";
31417
+ import { z as z53 } from "zod";
31345
31418
 
31346
31419
  // ../blocks/src/system/blocks/offerings-preview/model.ts
31347
31420
  var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
@@ -31433,13 +31506,13 @@ function isRecord5(value) {
31433
31506
  }
31434
31507
 
31435
31508
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31436
- var publicRouteCandidatesSchema = z54.object({
31437
- routes: z54.array(z54.object({
31438
- entityId: z54.string(),
31439
- path: z54.string(),
31440
- title: z54.string(),
31441
- kind: z54.enum(["page", "content"]),
31442
- 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()
31443
31516
  }))
31444
31517
  });
31445
31518
  var groupOverrideFields = [
@@ -31837,7 +31910,7 @@ function isRecord6(value) {
31837
31910
  }
31838
31911
 
31839
31912
  // ../blocks/src/system/blocks/embed.ts
31840
- import { z as z55 } from "zod";
31913
+ import { z as z54 } from "zod";
31841
31914
  var embedFields = [
31842
31915
  // Section heading
31843
31916
  parseFieldDefinition({
@@ -32068,18 +32141,18 @@ var embedManifest = createBlockManifest({
32068
32141
  spacing: "lg"
32069
32142
  }
32070
32143
  });
32071
- var embedEntrySchema = z55.object({
32072
- id: z55.string(),
32073
- identifier: z55.string(),
32074
- title: z55.string(),
32075
- slug: z55.string().nullable().optional(),
32076
- content: z55.record(z55.string(), z55.unknown()).optional(),
32077
- 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()
32078
32151
  });
32079
32152
  var embedBlockDefinition = {
32080
32153
  manifest: embedManifest,
32081
32154
  dataSchemas: {
32082
- entries: z55.array(embedEntrySchema).optional()
32155
+ entries: z54.array(embedEntrySchema).optional()
32083
32156
  },
32084
32157
  dataLoaders: {
32085
32158
  entries: {
@@ -33262,53 +33335,50 @@ var fileDownloadBlockDefinition = {
33262
33335
  manifest: fileDownloadManifest
33263
33336
  };
33264
33337
 
33265
- // ../blocks/src/system/blocks/shop.ts
33266
- import { z as z59 } from "zod";
33267
-
33268
33338
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33269
- import { z as z58 } from "zod";
33339
+ import { z as z57 } from "zod";
33270
33340
 
33271
33341
  // ../blocks/src/system/blocks/products/shared.ts
33272
- import { z as z56 } from "zod";
33273
- var publicProductVariantSchema = z56.object({
33274
- id: z56.string(),
33275
- title: z56.string(),
33276
- sku: z56.string().nullable(),
33277
- priceCents: z56.number(),
33278
- stockQuantity: z56.number().nullable(),
33279
- soldOut: z56.boolean()
33280
- });
33281
- var publicProductSchema = z56.object({
33282
- id: z56.string(),
33283
- contentEntryId: z56.string().nullable(),
33284
- title: z56.string(),
33285
- slug: z56.string(),
33286
- path: z56.string().nullable(),
33287
- status: z56.enum(["draft", "active"]),
33288
- priceCents: z56.number(),
33289
- currency: z56.string(),
33290
- productType: z56.enum(["physical", "digital"]),
33291
- requiresShipping: z56.boolean(),
33292
- hasVariants: z56.boolean(),
33293
- trackInventory: z56.boolean(),
33294
- soldOut: z56.boolean(),
33295
- category: z56.object({
33296
- id: z56.string(),
33297
- name: z56.string(),
33298
- 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()
33299
33369
  }).nullable(),
33300
- summary: z56.string().nullable(),
33301
- body: z56.unknown().nullable(),
33302
- gallery: z56.array(
33303
- z56.object({
33304
- url: z56.string(),
33305
- 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()
33306
33376
  })
33307
33377
  ),
33308
- variants: z56.array(publicProductVariantSchema)
33378
+ variants: z55.array(publicProductVariantSchema)
33309
33379
  });
33310
- var publicProductsResponseSchema = z56.object({
33311
- products: z56.array(publicProductSchema)
33380
+ var publicProductsResponseSchema = z55.object({
33381
+ products: z55.array(publicProductSchema)
33312
33382
  });
33313
33383
 
33314
33384
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -33372,27 +33442,27 @@ function deriveCreditProductLabels(products, options = {}) {
33372
33442
  }
33373
33443
 
33374
33444
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
33375
- import { z as z57 } from "zod";
33376
- var storedProductCartItemSchema = z57.object({
33377
- kind: z57.literal("product"),
33378
- productId: z57.string().min(1),
33379
- productCategoryId: z57.string().min(1).optional().nullable(),
33380
- variantId: z57.string().min(1).optional().nullable(),
33381
- title: z57.string().min(1),
33382
- variantTitle: z57.string().optional().nullable(),
33383
- quantity: z57.number().finite(),
33384
- unitPriceCents: z57.number().finite(),
33385
- currency: z57.string().min(1),
33386
- imageUrl: z57.string().optional().nullable(),
33387
- soldOut: z57.boolean().optional()
33388
- });
33389
- var storedPassCartItemSchema = z57.object({
33390
- kind: z57.literal("pass"),
33391
- passId: z57.string().min(1),
33392
- title: z57.string().min(1),
33393
- quantity: z57.number().finite().optional(),
33394
- unitPriceCents: z57.number().finite(),
33395
- 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)
33396
33466
  });
33397
33467
  function deriveCommerceCheckoutState(state) {
33398
33468
  if (state.items.length === 0) {
@@ -33626,214 +33696,214 @@ function formatValidity(days) {
33626
33696
  }
33627
33697
 
33628
33698
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33629
- var shopModeSchema = z58.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
33630
- var contentEntrySchema3 = z58.object({
33631
- id: z58.string().nullable().optional(),
33632
- 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()
33633
33703
  }).nullable();
33634
- var shopSourceSchema = z58.object({
33635
- className: z58.string().nullable().optional(),
33704
+ var shopSourceSchema = z57.object({
33705
+ className: z57.string().nullable().optional(),
33636
33706
  mode: shopModeSchema.optional(),
33637
- heading: z58.string().nullable().optional(),
33638
- productSlug: z58.string().nullable().optional(),
33639
- showPasses: z58.boolean().optional(),
33640
- showMemberships: z58.boolean().optional(),
33641
- layout: z58.enum(["grid", "list"]).optional(),
33642
- columns: z58.string().optional(),
33643
- showDescriptions: z58.boolean().optional(),
33644
- showSummary: z58.boolean().optional(),
33645
- showBody: z58.boolean().optional(),
33646
- showPrices: z58.boolean().optional(),
33647
- showValidityPeriod: z58.boolean().optional(),
33648
- showPricePerCredit: z58.boolean().nullable().optional(),
33649
- passesHeading: z58.string().optional(),
33650
- membershipsHeading: z58.string().optional(),
33651
- buyButtonText: z58.string().optional(),
33652
- addButtonText: z58.string().optional(),
33653
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"]).optional(),
33654
- subscribeButtonText: z58.string().optional(),
33655
- emptyStateText: z58.string().optional(),
33656
- checkoutButtonText: z58.string().optional(),
33657
- clearButtonText: z58.string().optional(),
33658
- 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(),
33659
33729
  contentEntry: contentEntrySchema3.optional(),
33660
- passes: z58.array(publicPassProductSchema).nullable().optional(),
33661
- memberships: z58.array(publicMembershipProductSchema).nullable().optional(),
33662
- products: z58.array(publicProductSchema).nullable().optional(),
33663
- siteId: z58.string().optional(),
33664
- 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(),
33665
33735
  stage: previewStageSchema.optional()
33666
33736
  });
33667
- var productVariantOptionDisplaySchema = z58.object({
33668
- id: z58.string(),
33669
- label: z58.string(),
33670
- soldOut: z58.boolean()
33671
- });
33672
- var productCardDisplaySchema = z58.object({
33673
- productId: z58.string(),
33674
- title: z58.string(),
33675
- path: z58.string().nullable(),
33676
- summary: z58.string().nullable(),
33677
- priceLabel: z58.string().nullable(),
33678
- image: z58.object({
33679
- url: z58.string(),
33680
- 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()
33681
33751
  }).nullable(),
33682
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33683
- selectedVariantId: z58.string().nullable(),
33684
- selectionLabel: z58.string(),
33685
- actionLabel: z58.string(),
33686
- soldOut: z58.boolean()
33687
- });
33688
- var productListDisplaySchema = z58.object({
33689
- kind: z58.literal("product-list"),
33690
- state: z58.enum(["empty", "ready"]),
33691
- heading: z58.string().nullable(),
33692
- className: z58.string().nullable(),
33693
- layout: z58.enum(["grid", "list"]),
33694
- columns: z58.string(),
33695
- emptyMessage: z58.string(),
33696
- cards: z58.array(productCardDisplaySchema)
33697
- });
33698
- var productDetailDisplaySchema = z58.discriminatedUnion("state", [
33699
- z58.object({
33700
- kind: z58.literal("product-detail"),
33701
- state: z58.literal("empty"),
33702
- heading: z58.string().nullable(),
33703
- className: z58.string().nullable(),
33704
- 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()
33705
33775
  }),
33706
- z58.object({
33707
- kind: z58.literal("product-detail"),
33708
- state: z58.literal("ready"),
33709
- heading: z58.string().nullable(),
33710
- className: z58.string().nullable(),
33711
- title: z58.string(),
33712
- priceLabel: z58.string(),
33713
- summary: z58.string().nullable(),
33714
- categoryLabel: z58.string().nullable(),
33715
- gallery: z58.array(z58.object({
33716
- url: z58.string(),
33717
- 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()
33718
33788
  })),
33719
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33720
- selectedVariantId: z58.string().nullable(),
33721
- selectionLabel: z58.string(),
33722
- actionLabel: z58.string(),
33723
- soldOut: z58.boolean(),
33724
- 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()
33725
33795
  })
33726
33796
  ]);
33727
- var passCardDisplaySchema = z58.object({
33728
- id: z58.string(),
33729
- title: z58.string(),
33730
- description: z58.string().nullable(),
33731
- priceLabel: z58.string(),
33732
- creditsLabel: z58.string(),
33733
- perCreditLabel: z58.string().nullable(),
33734
- validityLabel: z58.string().nullable(),
33735
- actionLabel: z58.string()
33736
- });
33737
- var membershipCardDisplaySchema = z58.object({
33738
- id: z58.string(),
33739
- title: z58.string(),
33740
- description: z58.string().nullable(),
33741
- priceLabel: z58.string(),
33742
- intervalLabel: z58.string(),
33743
- actionLabel: z58.string()
33744
- });
33745
- var passesMembershipsDisplaySchema = z58.object({
33746
- kind: z58.literal("passes-memberships"),
33747
- state: z58.enum(["empty", "ready"]),
33748
- className: z58.string().nullable(),
33749
- layout: z58.enum(["grid", "list"]),
33750
- columns: z58.string(),
33751
- emptyMessage: z58.string(),
33752
- passesHeading: z58.string(),
33753
- membershipsHeading: z58.string(),
33754
- passes: z58.array(passCardDisplaySchema),
33755
- memberships: z58.array(membershipCardDisplaySchema)
33756
- });
33757
- var cartLineDisplaySchema = z58.object({
33758
- key: z58.string(),
33759
- title: z58.string(),
33760
- priceLabel: z58.string(),
33761
- quantity: z58.number(),
33762
- quantityEditable: z58.boolean()
33763
- });
33764
- var cartDisplaySchema = z58.object({
33765
- kind: z58.literal("cart"),
33766
- state: z58.enum(["empty", "ready"]),
33767
- heading: z58.string().nullable(),
33768
- className: z58.string().nullable(),
33769
- emptyMessage: z58.string(),
33770
- supportText: z58.string().nullable(),
33771
- items: z58.array(cartLineDisplaySchema),
33772
- subtotalLabel: z58.string().nullable(),
33773
- checkoutButtonText: z58.string(),
33774
- clearButtonText: z58.string()
33775
- });
33776
- var checkoutDisplaySchema = z58.object({
33777
- kind: z58.literal("checkout"),
33778
- state: z58.enum(["empty", "blocked", "ready"]),
33779
- heading: z58.string().nullable(),
33780
- className: z58.string().nullable(),
33781
- message: z58.string().nullable(),
33782
- submitButtonText: z58.string()
33783
- });
33784
- var passesMembershipsHydrationSchema = z58.object({
33785
- passes: z58.array(publicPassProductSchema),
33786
- memberships: z58.array(publicMembershipProductSchema),
33787
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"])
33788
- });
33789
- var productListHydrationSchema = z58.object({
33790
- products: z58.array(publicProductSchema),
33791
- showSummary: z58.boolean(),
33792
- showPrices: z58.boolean(),
33793
- addButtonText: z58.string()
33794
- });
33795
- var productDetailHydrationSchema = z58.object({
33796
- products: z58.array(publicProductSchema),
33797
- productId: z58.string().nullable(),
33798
- showSummary: z58.boolean(),
33799
- showBody: z58.boolean(),
33800
- addButtonText: z58.string()
33801
- });
33802
- var cartHydrationSchema = z58.object({
33803
- emptyStateText: z58.string(),
33804
- checkoutButtonText: z58.string(),
33805
- clearButtonText: z58.string()
33806
- });
33807
- var checkoutHydrationSchema = z58.object({
33808
- emptyStateText: z58.string(),
33809
- submitButtonText: z58.string()
33810
- });
33811
- 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({
33812
33882
  display: passesMembershipsDisplaySchema,
33813
33883
  hydration: passesMembershipsHydrationSchema
33814
33884
  });
33815
- var productListRenderSchema = z58.object({
33885
+ var productListRenderSchema = z57.object({
33816
33886
  display: productListDisplaySchema,
33817
33887
  hydration: productListHydrationSchema
33818
33888
  });
33819
- var productDetailRenderSchema = z58.object({
33889
+ var productDetailRenderSchema = z57.object({
33820
33890
  display: productDetailDisplaySchema,
33821
33891
  hydration: productDetailHydrationSchema
33822
33892
  });
33823
- var cartRenderSchema = z58.object({
33893
+ var cartRenderSchema = z57.object({
33824
33894
  display: cartDisplaySchema,
33825
33895
  hydration: cartHydrationSchema
33826
33896
  });
33827
- var checkoutRenderSchema = z58.object({
33897
+ var checkoutRenderSchema = z57.object({
33828
33898
  display: checkoutDisplaySchema,
33829
33899
  hydration: checkoutHydrationSchema
33830
33900
  });
33831
33901
  function resolveShowPricePerCredit(source) {
33832
33902
  return source.showPricePerCredit ?? true;
33833
33903
  }
33834
- var shopIslandMetaCodec = createZodCodec(z58.object({
33835
- siteId: z58.string().optional(),
33836
- apiBaseUrl: z58.string().optional(),
33904
+ var shopIslandMetaCodec = createZodCodec(z57.object({
33905
+ siteId: z57.string().optional(),
33906
+ apiBaseUrl: z57.string().optional(),
33837
33907
  stage: previewStageSchema.optional()
33838
33908
  }));
33839
33909
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -34211,9 +34281,9 @@ var shopBlockDefinition = {
34211
34281
  runtime: shopBlockRuntime,
34212
34282
  dataSchemas: {
34213
34283
  // listPublicPasses returns { passes: [...] }
34214
- passes: z59.object({ passes: z59.array(publicPassProductSchema) }).optional(),
34284
+ passes: publicPassProductCollectionSchema.optional(),
34215
34285
  // listPublicMemberships returns { memberships: [...] }
34216
- memberships: z59.object({ memberships: z59.array(publicMembershipProductSchema) }).optional()
34286
+ memberships: publicMembershipProductCollectionSchema.optional()
34217
34287
  },
34218
34288
  dataLoaders: {
34219
34289
  // Load passes for display
@@ -34236,7 +34306,7 @@ var shopBlockDefinition = {
34236
34306
  };
34237
34307
 
34238
34308
  // ../blocks/src/system/blocks/product-list.ts
34239
- import { z as z60 } from "zod";
34309
+ import { z as z58 } from "zod";
34240
34310
  var productListManifest = createBlockManifest({
34241
34311
  id: "block.product-list",
34242
34312
  version: "1.0.0",
@@ -34369,7 +34439,7 @@ var productListBlockDefinition = {
34369
34439
  }
34370
34440
  }
34371
34441
  };
34372
- var productListDataSchema = z60.object({
34442
+ var productListDataSchema = z58.object({
34373
34443
  products: publicProductsResponseSchema.optional()
34374
34444
  });
34375
34445
 
@@ -34630,72 +34700,72 @@ var checkoutBlockDefinition = {
34630
34700
  };
34631
34701
 
34632
34702
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
34633
- import { z as z61 } from "zod";
34634
- var publicGiftCardOfferSchema = z61.object({
34635
- id: z61.string(),
34636
- kind: z61.literal("gift_card"),
34637
- title: z61.string(),
34638
- description: z61.string().nullable(),
34639
- sortOrder: z61.number().int(),
34640
- giftCard: z61.object({
34641
- fixedDenominations: z61.array(z61.number().int().positive()),
34642
- customAmountEnabled: z61.boolean(),
34643
- customAmountMinCents: z61.number().int().positive(),
34644
- 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()
34645
34715
  }),
34646
- voucher: z61.null()
34647
- });
34648
- var publicVoucherOfferSchema = z61.object({
34649
- id: z61.string(),
34650
- kind: z61.literal("voucher"),
34651
- title: z61.string(),
34652
- description: z61.string().nullable(),
34653
- sortOrder: z61.number().int(),
34654
- giftCard: z61.null(),
34655
- voucher: z61.object({
34656
- 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()
34657
34727
  })
34658
34728
  });
34659
- var publicGiftingOffersResponseSchema = z61.object({
34660
- currency: z61.string(),
34661
- giftCards: z61.array(publicGiftCardOfferSchema),
34662
- vouchers: z61.array(publicVoucherOfferSchema)
34729
+ var publicGiftingOffersResponseSchema = z59.object({
34730
+ currency: z59.string(),
34731
+ giftCards: z59.array(publicGiftCardOfferSchema),
34732
+ vouchers: z59.array(publicVoucherOfferSchema)
34663
34733
  });
34664
- var giftingSourceSchema = z61.object({
34665
- siteId: z61.string().optional(),
34666
- apiBaseUrl: z61.string().optional(),
34734
+ var giftingSourceSchema = z59.object({
34735
+ siteId: z59.string().optional(),
34736
+ apiBaseUrl: z59.string().optional(),
34667
34737
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
34668
- className: z61.string().nullable().optional(),
34669
- heading: z61.string().nullable().optional(),
34670
- intro: z61.string().nullable().optional(),
34671
- giftCardsHeading: z61.string().nullable().optional(),
34672
- vouchersHeading: z61.string().nullable().optional(),
34673
- emptyStateText: z61.string().nullable().optional(),
34674
- checkoutButtonText: z61.string().nullable().optional(),
34675
- successMessage: z61.string().nullable().optional()
34676
- });
34677
- var giftingDisplaySchema = z61.object({
34678
- kind: z61.literal("gifting"),
34679
- state: z61.literal("ready"),
34680
- className: z61.string().nullable(),
34681
- heading: z61.string(),
34682
- intro: z61.string().nullable(),
34683
- giftCardsHeading: z61.string(),
34684
- vouchersHeading: z61.string(),
34685
- emptyStateText: z61.string()
34686
- });
34687
- 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({
34688
34758
  offers: publicGiftingOffersResponseSchema.nullable(),
34689
- checkoutButtonText: z61.string(),
34690
- successMessage: z61.string()
34759
+ checkoutButtonText: z59.string(),
34760
+ successMessage: z59.string()
34691
34761
  });
34692
- var giftingRenderSchema = z61.object({
34762
+ var giftingRenderSchema = z59.object({
34693
34763
  display: giftingDisplaySchema,
34694
34764
  hydration: giftingHydrationSchema
34695
34765
  });
34696
- var giftingIslandMetaCodec = createZodCodec(z61.object({
34697
- siteId: z61.string().optional(),
34698
- apiBaseUrl: z61.string().optional()
34766
+ var giftingIslandMetaCodec = createZodCodec(z59.object({
34767
+ siteId: z59.string().optional(),
34768
+ apiBaseUrl: z59.string().optional()
34699
34769
  }));
34700
34770
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
34701
34771
  "siteId",
@@ -34866,7 +34936,7 @@ var giftingBlockDefinition = {
34866
34936
  };
34867
34937
 
34868
34938
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34869
- import { z as z62 } from "zod";
34939
+ import { z as z60 } from "zod";
34870
34940
 
34871
34941
  // ../blocks/src/system/blocks/newsletter-signup-destination.ts
34872
34942
  function parseNewsletterSignupBlockId(value) {
@@ -34973,65 +35043,65 @@ function withOptionalPhone(fields3, includePhone) {
34973
35043
  }
34974
35044
 
34975
35045
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34976
- var newsletterPresetSchema = z62.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
34977
- var newsletterDestinationProviderSchema = z62.enum(["riverbank", "mailchimp"]);
34978
- var newsletterFieldSchema = z62.object({
34979
- id: z62.string(),
34980
- type: z62.enum(["email", "text"]),
34981
- label: z62.string(),
34982
- required: z62.boolean(),
34983
- placeholder: z62.string().optional()
34984
- });
34985
- var newsletterSignupBlockIdSchema = z62.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
34986
- var signedNewsletterDestinationRefSchema = z62.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
34987
- var newsletterPublicDestinationRefSchema = z62.discriminatedUnion("tag", [
34988
- z62.object({
34989
- 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"),
34990
35060
  blockId: newsletterSignupBlockIdSchema
34991
35061
  }),
34992
- z62.object({
34993
- tag: z62.literal("signed_destination_ref"),
35062
+ z60.object({
35063
+ tag: z60.literal("signed_destination_ref"),
34994
35064
  token: signedNewsletterDestinationRefSchema
34995
35065
  })
34996
35066
  ]);
34997
- var newsletterSourceSchema = z62.object({
34998
- blockId: z62.string().nullable().optional(),
34999
- siteId: z62.string().optional(),
35000
- apiBaseUrl: z62.string().optional(),
35001
- 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(),
35002
35072
  destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
35003
35073
  preset: newsletterPresetSchema.optional(),
35004
- includePhone: z62.boolean().optional(),
35005
- buttonLabel: z62.string().nullable().optional(),
35006
- successMessage: z62.string().nullable().optional(),
35007
- privacyNote: z62.string().nullable().optional(),
35008
- tags: z62.string().nullable().optional(),
35009
- spamProtectionEnabled: z62.boolean().optional(),
35010
- className: z62.string().nullable().optional()
35011
- });
35012
- var newsletterDisplaySchema = z62.object({
35013
- kind: z62.literal("newsletter-form"),
35014
- className: z62.string().nullable(),
35015
- buttonLabel: z62.string(),
35016
- successMessage: z62.string().nullable(),
35017
- privacyNote: z62.string().nullable(),
35018
- fields: z62.array(newsletterFieldSchema)
35019
- });
35020
- 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({
35021
35091
  destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
35022
- listId: z62.string().nullable().optional(),
35092
+ listId: z60.string().nullable().optional(),
35023
35093
  preset: newsletterPresetSchema,
35024
- includePhone: z62.boolean(),
35025
- tags: z62.string().nullable().optional(),
35026
- spamProtectionEnabled: z62.boolean().optional()
35094
+ includePhone: z60.boolean(),
35095
+ tags: z60.string().nullable().optional(),
35096
+ spamProtectionEnabled: z60.boolean().optional()
35027
35097
  });
35028
- var newsletterRenderSchema = z62.object({
35098
+ var newsletterRenderSchema = z60.object({
35029
35099
  display: newsletterDisplaySchema,
35030
35100
  hydration: newsletterHydrationSchema
35031
35101
  });
35032
- var newsletterIslandMetaCodec = createZodCodec(z62.object({
35033
- siteId: z62.string().optional(),
35034
- apiBaseUrl: z62.string().optional()
35102
+ var newsletterIslandMetaCodec = createZodCodec(z60.object({
35103
+ siteId: z60.string().optional(),
35104
+ apiBaseUrl: z60.string().optional()
35035
35105
  }));
35036
35106
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
35037
35107
  function buildNewsletterDisplay(source) {
@@ -35170,23 +35240,23 @@ var newsletterSignupBlockDefinition = {
35170
35240
  };
35171
35241
 
35172
35242
  // ../blocks/src/system/blocks/team-members.ts
35173
- import { z as z63 } from "zod";
35243
+ import { z as z61 } from "zod";
35174
35244
  var ITEM_NAME2 = "member";
35175
35245
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
35176
35246
  message: "Team member photos must be image media"
35177
35247
  }).nullable();
35178
- var teamMemberDataSchema = z63.object({
35179
- _type: z63.literal("teamMember"),
35180
- id: z63.string(),
35181
- name: z63.string(),
35182
- role: z63.string().nullable(),
35183
- roleLabel: z63.string().nullable(),
35184
- bio: z63.string().nullable(),
35185
- 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(),
35186
35256
  photo: teamMemberPhotoSchema,
35187
- profilePath: z63.string().nullable()
35257
+ profilePath: z61.string().nullable()
35188
35258
  });
35189
- var teamMembersDataSchema = z63.array(teamMemberDataSchema);
35259
+ var teamMembersDataSchema = z61.array(teamMemberDataSchema);
35190
35260
  var dynamicSourceWhen = { equals: "site_staff" };
35191
35261
  var manualSourceWhen = { equals: "site_staff", not: true };
35192
35262
  var headingNode = text(
@@ -36078,13 +36148,6 @@ var systemBlockDefinitionsRaw = [
36078
36148
  weight: "featured",
36079
36149
  bias: "clear",
36080
36150
  surfaces: heroSectionSurfaces
36081
- }),
36082
- layoutProfile({
36083
- variantKey: "splitEditorial",
36084
- family: "split",
36085
- weight: "featured",
36086
- bias: "clear",
36087
- surfaces: heroSectionSurfaces
36088
36151
  })
36089
36152
  ]
36090
36153
  })),
@@ -36328,9 +36391,8 @@ var systemBlockDefinitionsRaw = [
36328
36391
  flow: offeringsFlow,
36329
36392
  layoutProfiles: [
36330
36393
  layoutProfile({ variantKey: "combined", family: "grid", weight: "standard" }),
36394
+ layoutProfile({ variantKey: "calendar", family: "stack", weight: "standard" }),
36331
36395
  layoutProfile({ variantKey: "list", family: "stack", weight: "standard" }),
36332
- layoutProfile({ variantKey: "month", family: "grid", weight: "standard" }),
36333
- layoutProfile({ variantKey: "week", family: "stack", weight: "standard" }),
36334
36396
  layoutProfile({ variantKey: "timetable", family: "stack", weight: "standard" })
36335
36397
  ]
36336
36398
  })),
@@ -36893,10 +36955,7 @@ function normalizeRenderStage(stage) {
36893
36955
  return stage === "preview" ? "preview" : "published";
36894
36956
  }
36895
36957
  function isRouteVisibleInStage(routeEntry, stageInput) {
36896
- const stage = normalizeRenderStage(stageInput);
36897
- if (stage === "preview" || !isRouteRecord(routeEntry)) {
36898
- return true;
36899
- }
36958
+ if (normalizeRenderStage(stageInput) === "preview" || !isRouteRecord(routeEntry)) return true;
36900
36959
  const status = routeEntry.status;
36901
36960
  return !(typeof status === "string" && status !== "published");
36902
36961
  }
@@ -36905,52 +36964,45 @@ function extractRouteHref(candidate, stageInput = "published") {
36905
36964
  const trimmed = candidate.trim();
36906
36965
  return trimmed.length > 0 ? trimmed : null;
36907
36966
  }
36908
- if (!isRouteRecord(candidate)) {
36909
- return null;
36910
- }
36911
- const stage = normalizeRenderStage(stageInput);
36912
- 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
+ ];
36913
36978
  for (const field of fields3) {
36914
36979
  const value = candidate[field];
36915
- if (typeof value === "string" && value.trim().length > 0) {
36916
- return value.trim();
36917
- }
36980
+ if (typeof value === "string" && value.trim().length > 0) return value.trim();
36918
36981
  }
36919
36982
  return null;
36920
36983
  }
36921
36984
  function extractRouteUpdatedAt(candidate) {
36922
- if (!isRouteRecord(candidate)) {
36923
- return null;
36924
- }
36925
- const fields3 = [
36985
+ if (!isRouteRecord(candidate)) return null;
36986
+ for (const field of [
36926
36987
  "updatedAt",
36927
36988
  "updated_at",
36928
36989
  "publishedAt",
36929
36990
  "published_at",
36930
36991
  "modifiedAt",
36931
36992
  "modified_at"
36932
- ];
36933
- for (const field of fields3) {
36993
+ ]) {
36934
36994
  const value = candidate[field];
36935
- if (typeof value === "string" && value.length > 0) {
36936
- return value;
36937
- }
36995
+ if (typeof value === "string" && value.length > 0) return value;
36938
36996
  }
36939
36997
  return null;
36940
36998
  }
36941
36999
  function resolveRouteTargetForStage(routeIdValue, routes, stageInput) {
36942
37000
  const routeId = typeof routeIdValue === "string" ? routeIdValue : null;
36943
- if (!routeId || !routes) {
36944
- return null;
36945
- }
37001
+ if (!routeId || !routes) return null;
36946
37002
  const routeEntry = routes[routeId];
36947
- if (!isRouteVisibleInStage(routeEntry, stageInput)) {
36948
- return null;
36949
- }
37003
+ if (!isRouteVisibleInStage(routeEntry, stageInput)) return null;
36950
37004
  const href = extractRouteHref(routeEntry, stageInput);
36951
- if (!href) {
36952
- return null;
36953
- }
37005
+ if (!href) return null;
36954
37006
  return {
36955
37007
  routeId,
36956
37008
  href,
@@ -37986,42 +38038,45 @@ import { jsx as jsx5 } from "react/jsx-runtime";
37986
38038
  import * as React from "react";
37987
38039
  import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
37988
38040
 
38041
+ // ../theme-core/src/ResponsiveScope.tsx
38042
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
38043
+
37989
38044
  // ../theme-core/src/fonts/uploadFormat.ts
37990
38045
  var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
37991
38046
 
37992
38047
  // ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
37993
- import { z as z64 } from "zod";
37994
- var themeBridgeConfigSchema = z64.object({
37995
- tokens: z64.record(z64.string(), z64.string()),
37996
- typography: z64.object({
37997
- headingFamily: z64.string().optional(),
37998
- bodyFamily: z64.string().optional(),
37999
- headingWeight: z64.number().optional(),
38000
- 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()
38001
38056
  }).optional(),
38002
- spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
38003
- corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
38004
- shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
38005
- components: z64.object({
38006
- buttons: z64.union([
38007
- z64.boolean(),
38008
- z64.object({
38009
- 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()
38010
38065
  })
38011
38066
  ]).optional(),
38012
- cards: z64.union([
38013
- z64.boolean(),
38014
- z64.object({
38015
- 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()
38016
38071
  })
38017
38072
  ]).optional(),
38018
- inputs: z64.boolean().optional()
38073
+ inputs: z62.boolean().optional()
38019
38074
  }).optional(),
38020
- overrides: z64.record(z64.string(), z64.string()).optional()
38075
+ overrides: z62.record(z62.string(), z62.string()).optional()
38021
38076
  }).passthrough();
38022
38077
 
38023
38078
  // ../theme-core/src/siteChrome.tsx
38024
- 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";
38025
38080
 
38026
38081
  // ../blocks/src/system/runtime/bindings.ts
38027
38082
  var shouldLogWarnings = isNonProductionEnv();
@@ -38386,17 +38441,17 @@ function normalizeLoaderParams(endpoint, params, context) {
38386
38441
  function unsafeRetypeZodSchema(schema) {
38387
38442
  return schema;
38388
38443
  }
38389
- var navIdListSchema = z65.preprocess((value) => {
38444
+ var navIdListSchema = z63.preprocess((value) => {
38390
38445
  if (!Array.isArray(value)) return void 0;
38391
38446
  const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
38392
38447
  return filtered.length > 0 ? filtered : void 0;
38393
- }, z65.array(z65.string()).max(200).optional());
38394
- var dashboardNavVisibilityBaseSchema = z65.object({
38395
- 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(),
38396
38451
  allowIds: navIdListSchema,
38397
38452
  denyIds: navIdListSchema
38398
38453
  }).strip();
38399
- var dashboardNavVisibilityRolesSchema = z65.object({
38454
+ var dashboardNavVisibilityRolesSchema = z63.object({
38400
38455
  administrator: dashboardNavVisibilityBaseSchema.optional(),
38401
38456
  editor: dashboardNavVisibilityBaseSchema.optional(),
38402
38457
  team_member: dashboardNavVisibilityBaseSchema.optional()
@@ -38404,63 +38459,63 @@ var dashboardNavVisibilityRolesSchema = z65.object({
38404
38459
  var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
38405
38460
  roles: dashboardNavVisibilityRolesSchema
38406
38461
  }).strip();
38407
- var dashboardNavigationConfigSchema = z65.object({
38462
+ var dashboardNavigationConfigSchema = z63.object({
38408
38463
  siteNav: dashboardNavVisibilitySchema.optional(),
38409
38464
  settingsNav: dashboardNavVisibilitySchema.optional()
38410
38465
  }).strip();
38411
- var dashboardConfigSchema = z65.object({
38412
- previewEditingEnabled: z65.boolean().optional(),
38466
+ var dashboardConfigSchema = z63.object({
38467
+ previewEditingEnabled: z63.boolean().optional(),
38413
38468
  navigation: dashboardNavigationConfigSchema.optional()
38414
38469
  }).strip();
38415
38470
  var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
38416
38471
  var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
38417
- var sdkLoaderEndpointSchema = z65.enum(SUPPORTED_LOADER_ENDPOINTS);
38418
- var loaderFallbackScalarSchema = z65.union([
38419
- z65.string(),
38420
- z65.number(),
38421
- z65.boolean(),
38422
- 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()
38423
38478
  ]);
38424
- var loaderParamBindingSchema = z65.object({
38425
- $bind: z65.object({
38426
- 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"),
38427
38482
  fallback: loaderFallbackScalarSchema.optional()
38428
38483
  })
38429
38484
  });
38430
- var loaderParamValueSchema = z65.union([
38431
- z65.string(),
38432
- z65.number(),
38433
- z65.boolean(),
38485
+ var loaderParamValueSchema = z63.union([
38486
+ z63.string(),
38487
+ z63.number(),
38488
+ z63.boolean(),
38434
38489
  loaderParamBindingSchema
38435
38490
  ]);
38436
- var sdkConfigLoaderSchema = z65.object({
38491
+ var sdkConfigLoaderSchema = z63.object({
38437
38492
  endpoint: sdkLoaderEndpointSchema,
38438
- params: z65.record(z65.string(), loaderParamValueSchema),
38439
- mode: z65.enum(["server", "client"]).default("server")
38493
+ params: z63.record(z63.string(), loaderParamValueSchema),
38494
+ mode: z63.enum(["server", "client"]).default("server")
38440
38495
  });
38441
- var sdkDataLoadersSchema = z65.record(z65.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
38442
- 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-]*$/, {
38443
38498
  message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
38444
38499
  }).transform((value) => value);
38445
- var sdkCustomBlockInputSchema = z65.object({
38500
+ var sdkCustomBlockInputSchema = z63.object({
38446
38501
  id: sdkCustomBlockIdSchema,
38447
- title: z65.string().min(1),
38448
- titleSource: z65.union([z65.string().min(1), z65.array(z65.string().min(1)).min(1)]).optional(),
38449
- 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(),
38450
38505
  category: blockCategoryEnum,
38451
- icon: z65.string().optional(),
38452
- tags: z65.array(z65.string()).optional(),
38506
+ icon: z63.string().optional(),
38507
+ tags: z63.array(z63.string()).optional(),
38453
38508
  fields: fieldDefinitionInputSchema.array().min(1),
38454
38509
  dataLoaders: sdkDataLoadersSchema,
38455
38510
  layout: NodeSchema.optional(),
38456
- variants: z65.record(z65.string().min(1), NodeSchema).optional(),
38457
- defaultVariant: z65.string().min(1).optional(),
38458
- variantOptions: z65.record(
38459
- z65.string().min(1),
38460
- z65.object({
38461
- label: z65.string().min(1).optional(),
38462
- description: z65.string().min(1).optional(),
38463
- 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()
38464
38519
  })
38465
38520
  ).optional(),
38466
38521
  previewCustomize: previewCustomizeManifestCurationSchema.optional()
@@ -38471,7 +38526,7 @@ var sdkCustomBlockInputSchema = z65.object({
38471
38526
  const exists = data.fields.some((field) => field.id === source);
38472
38527
  if (!exists) {
38473
38528
  ctx.addIssue({
38474
- code: z65.ZodIssueCode.custom,
38529
+ code: z63.ZodIssueCode.custom,
38475
38530
  message: `titleSource must reference a valid field ID (got "${source}")`,
38476
38531
  path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
38477
38532
  });
@@ -38480,7 +38535,7 @@ var sdkCustomBlockInputSchema = z65.object({
38480
38535
  }
38481
38536
  if (data.layout && data.variants) {
38482
38537
  ctx.addIssue({
38483
- code: z65.ZodIssueCode.custom,
38538
+ code: z63.ZodIssueCode.custom,
38484
38539
  message: "Custom block must define either `layout` or `variants`, not both",
38485
38540
  path: ["variants"]
38486
38541
  });
@@ -38489,14 +38544,14 @@ var sdkCustomBlockInputSchema = z65.object({
38489
38544
  const keys = Object.keys(data.variants);
38490
38545
  if (keys.length === 0) {
38491
38546
  ctx.addIssue({
38492
- code: z65.ZodIssueCode.custom,
38547
+ code: z63.ZodIssueCode.custom,
38493
38548
  message: "`variants` must contain at least one variant key",
38494
38549
  path: ["variants"]
38495
38550
  });
38496
38551
  }
38497
38552
  if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
38498
38553
  ctx.addIssue({
38499
- code: z65.ZodIssueCode.custom,
38554
+ code: z63.ZodIssueCode.custom,
38500
38555
  message: "`defaultVariant` must be a key present in `variants`",
38501
38556
  path: ["defaultVariant"]
38502
38557
  });
@@ -38505,7 +38560,7 @@ var sdkCustomBlockInputSchema = z65.object({
38505
38560
  for (const key of Object.keys(data.variantOptions)) {
38506
38561
  if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
38507
38562
  ctx.addIssue({
38508
- code: z65.ZodIssueCode.custom,
38563
+ code: z63.ZodIssueCode.custom,
38509
38564
  message: "`variantOptions` key must exist in `variants`",
38510
38565
  path: ["variantOptions", key]
38511
38566
  });
@@ -38514,78 +38569,78 @@ var sdkCustomBlockInputSchema = z65.object({
38514
38569
  }
38515
38570
  }
38516
38571
  });
38517
- var sdkBlockFieldExtensionInputSchema = z65.object({
38572
+ var sdkBlockFieldExtensionInputSchema = z63.object({
38518
38573
  fields: fieldDefinitionInputSchema.array().min(1)
38519
38574
  });
38520
- var sdkBlockFieldExtensionsInputSchema = z65.record(
38521
- z65.string().min(1),
38575
+ var sdkBlockFieldExtensionsInputSchema = z63.record(
38576
+ z63.string().min(1),
38522
38577
  sdkBlockFieldExtensionInputSchema
38523
38578
  );
38524
- var sdkThemePaletteSchema = z65.record(z65.string(), z65.string());
38525
- var sdkThemeConfigSchema = z65.object({
38579
+ var sdkThemePaletteSchema = z63.record(z63.string(), z63.string());
38580
+ var sdkThemeConfigSchema = z63.object({
38526
38581
  palette: sdkThemePaletteSchema
38527
38582
  });
38528
- var sdkSectionBackgroundSchema = z65.object({
38529
- id: z65.string().min(1),
38530
- label: z65.string().min(1),
38531
- 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)
38532
38587
  });
38533
- var sdkSectionOptionsConfigSchema = z65.object({
38534
- backgroundColor: z65.boolean().optional(),
38535
- backgroundImage: z65.boolean().optional(),
38536
- backgroundGradient: z65.boolean().optional(),
38537
- spacing: z65.union([z65.array(z65.enum(["compact", "default", "spacious"])), z65.boolean()]).optional(),
38538
- 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()
38539
38594
  });
38540
- var sdkContainerOptionsConfigSchema = z65.object({
38541
- maxWidth: z65.union([z65.array(z65.enum(["narrow", "default", "wide", "full"])), z65.boolean()]).optional(),
38542
- 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()
38543
38598
  });
38544
- var sdkSiteStyleConfigSchema = z65.object({
38545
- sectionBackgrounds: z65.array(sdkSectionBackgroundSchema).optional(),
38599
+ var sdkSiteStyleConfigSchema = z63.object({
38600
+ sectionBackgrounds: z63.array(sdkSectionBackgroundSchema).optional(),
38546
38601
  sectionOptions: sdkSectionOptionsConfigSchema.optional(),
38547
38602
  containerOptions: sdkContainerOptionsConfigSchema.optional()
38548
38603
  });
38549
- var sdkSiteLayoutConfigSchema = z65.object({
38550
- footerBlocks: z65.array(
38551
- z65.object({
38552
- id: z65.string().min(1).optional(),
38553
- kind: z65.string().min(1),
38554
- 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()
38555
38610
  })
38556
38611
  ).optional()
38557
38612
  });
38558
- var sdkFieldSelectOptionSchema = z65.object({
38559
- value: z65.string(),
38560
- label: z65.string()
38613
+ var sdkFieldSelectOptionSchema = z63.object({
38614
+ value: z63.string(),
38615
+ label: z63.string()
38561
38616
  });
38562
- var sdkBlockFieldConfigSchema = z65.object({
38563
- options: z65.array(sdkFieldSelectOptionSchema).optional()
38617
+ var sdkBlockFieldConfigSchema = z63.object({
38618
+ options: z63.array(sdkFieldSelectOptionSchema).optional()
38564
38619
  });
38565
- var sdkBlockFieldOptionsMapSchema = z65.record(
38566
- 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-]*$/, {
38567
38622
  message: "Block ID must be 'block.*' or 'custom.*' format"
38568
38623
  }),
38569
- z65.record(z65.string().min(1), sdkBlockFieldConfigSchema)
38624
+ z63.record(z63.string().min(1), sdkBlockFieldConfigSchema)
38570
38625
  ).optional();
38571
- var sdkContentTypeTemplateConfigSchema = z65.object({
38572
- blocks: z65.array(z65.unknown())
38626
+ var sdkContentTypeTemplateConfigSchema = z63.object({
38627
+ blocks: z63.array(z63.unknown())
38573
38628
  }).passthrough();
38574
- var sdkContentTypeOrderingConfigSchema = z65.object({
38575
- mode: z65.enum(["default", "manual"]).optional()
38629
+ var sdkContentTypeOrderingConfigSchema = z63.object({
38630
+ mode: z63.enum(["default", "manual"]).optional()
38576
38631
  }).optional();
38577
- var sdkContentTypeConfigSchema = z65.object({
38578
- key: z65.string().min(1),
38579
- fields: z65.array(z65.unknown()),
38632
+ var sdkContentTypeConfigSchema = z63.object({
38633
+ key: z63.string().min(1),
38634
+ fields: z63.array(z63.unknown()),
38580
38635
  ordering: sdkContentTypeOrderingConfigSchema,
38581
38636
  template: sdkContentTypeTemplateConfigSchema.nullable().optional()
38582
38637
  }).passthrough();
38583
- var sdkContentConfigSchema = z65.object({
38584
- contentTypes: z65.array(sdkContentTypeConfigSchema).optional(),
38585
- pages: z65.array(z65.unknown()).optional(),
38586
- entries: z65.array(z65.unknown()).optional(),
38587
- navigationMenus: z65.array(z65.unknown()).optional(),
38588
- 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()
38589
38644
  }).passthrough();
38590
38645
  var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
38591
38646
  var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
@@ -38600,62 +38655,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
38600
38655
  var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
38601
38656
  var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
38602
38657
  var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
38603
- 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, {
38604
38659
  message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
38605
38660
  });
38606
- 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 "/"' });
38607
- var sdkWorkflowManualTriggerSchema = z65.object({
38608
- 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")
38609
38664
  }).strict();
38610
- 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("."), {
38611
38666
  message: "Workflow trigger fields must be top-level content field IDs, not paths"
38612
38667
  });
38613
- var sdkWorkflowFieldChangedConditionSchema = z65.object({
38668
+ var sdkWorkflowFieldChangedConditionSchema = z63.object({
38614
38669
  field: sdkWorkflowTriggerFieldSchema,
38615
- changed: z65.literal(true)
38670
+ changed: z63.literal(true)
38616
38671
  }).strict();
38617
- var sdkWorkflowFieldEmptyConditionSchema = z65.object({
38672
+ var sdkWorkflowFieldEmptyConditionSchema = z63.object({
38618
38673
  field: sdkWorkflowTriggerFieldSchema,
38619
- isEmpty: z65.boolean()
38674
+ isEmpty: z63.boolean()
38620
38675
  }).strict();
38621
- var sdkWorkflowEntryDraftUpdatedTriggerSchema = z65.object({
38622
- type: z65.literal("entry.draft.updated"),
38623
- when: z65.array(
38624
- z65.union([
38676
+ var sdkWorkflowEntryDraftUpdatedTriggerSchema = z63.object({
38677
+ type: z63.literal("entry.draft.updated"),
38678
+ when: z63.array(
38679
+ z63.union([
38625
38680
  sdkWorkflowFieldChangedConditionSchema,
38626
38681
  sdkWorkflowFieldEmptyConditionSchema
38627
38682
  ])
38628
38683
  ).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
38629
38684
  }).strict();
38630
- var sdkWorkflowTriggerSchema = z65.discriminatedUnion("type", [
38685
+ var sdkWorkflowTriggerSchema = z63.discriminatedUnion("type", [
38631
38686
  sdkWorkflowManualTriggerSchema,
38632
38687
  sdkWorkflowEntryDraftUpdatedTriggerSchema
38633
38688
  ]);
38634
- var sdkWorkflowConfirmationSchema = z65.object({
38635
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
38636
- 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()
38637
38692
  }).strict();
38638
- var sdkWorkflowConfigSchema = z65.object({
38693
+ var sdkWorkflowConfigSchema = z63.object({
38639
38694
  id: sdkWorkflowIdSchema,
38640
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
38641
- description: z65.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
38642
- 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),
38643
38698
  endpoint: sdkWorkflowEndpointSchema,
38644
- 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),
38645
38700
  confirmation: sdkWorkflowConfirmationSchema.optional()
38646
38701
  }).strict();
38647
- 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) => {
38648
38703
  const ids = workflows.map((workflow) => workflow.id);
38649
38704
  return ids.length === new Set(ids).size;
38650
38705
  }, { message: "Workflow IDs must be unique" }).optional();
38651
- var riverbankSiteConfigInputSchema = z65.object({
38652
- siteId: z65.string().uuid(),
38653
- previewUrl: z65.string().url().optional(),
38654
- 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(),
38655
38710
  theme: sdkThemeConfigSchema.optional(),
38656
38711
  styles: sdkSiteStyleConfigSchema.optional(),
38657
38712
  layout: sdkSiteLayoutConfigSchema.optional(),
38658
- 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) => {
38659
38714
  const ids = blocks.map((b) => b.id);
38660
38715
  return ids.length === new Set(ids).size;
38661
38716
  }, { message: "Block IDs must be unique" }).optional(),
@@ -38663,50 +38718,50 @@ var riverbankSiteConfigInputSchema = z65.object({
38663
38718
  blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
38664
38719
  workflows: sdkWorkflowsSchema,
38665
38720
  content: sdkContentConfigSchema.optional(),
38666
- contentDir: z65.string().optional(),
38667
- sync: z65.object({
38668
- existingEntries: z65.enum(["skip", "update"]).optional()
38721
+ contentDir: z63.string().optional(),
38722
+ sync: z63.object({
38723
+ existingEntries: z63.enum(["skip", "update"]).optional()
38669
38724
  }).optional(),
38670
- deploy: z65.object({
38671
- verifyCommand: z65.string().optional(),
38672
- prebuildOutput: z65.string().optional()
38725
+ deploy: z63.object({
38726
+ verifyCommand: z63.string().optional(),
38727
+ prebuildOutput: z63.string().optional()
38673
38728
  }).optional(),
38674
- themeSource: z65.enum(["local", "cms"]).optional(),
38675
- activeTheme: z65.string().optional(),
38676
- enablePortal: z65.boolean().optional(),
38729
+ themeSource: z63.enum(["local", "cms"]).optional(),
38730
+ activeTheme: z63.string().optional(),
38731
+ enablePortal: z63.boolean().optional(),
38677
38732
  dashboard: dashboardConfigSchema.optional()
38678
38733
  }).strict();
38679
- var pushSdkConfigBodySchema = z65.object({
38734
+ var pushSdkConfigBodySchema = z63.object({
38680
38735
  config: riverbankSiteConfigInputSchema,
38681
- forceContentTypes: z65.boolean().optional()
38736
+ forceContentTypes: z63.boolean().optional()
38682
38737
  }).strict();
38683
38738
 
38684
38739
  // ../api/src/siteOnboarding.ts
38685
- import { z as z66 } from "zod";
38740
+ import { z as z64 } from "zod";
38686
38741
  var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
38687
38742
  configure_appointments: {
38688
38743
  requirementId: "configure_appointments",
38689
38744
  reason: "launch_anyway"
38690
38745
  }
38691
38746
  };
38692
- var acknowledgeLaunchRequirementRequestSchema = z66.discriminatedUnion(
38747
+ var acknowledgeLaunchRequirementRequestSchema = z64.discriminatedUnion(
38693
38748
  "requirementId",
38694
38749
  [
38695
- z66.object({
38696
- requirementId: z66.literal("review_generated_site")
38750
+ z64.object({
38751
+ requirementId: z64.literal("review_generated_site")
38697
38752
  }),
38698
- z66.object({
38699
- requirementId: z66.literal(
38753
+ z64.object({
38754
+ requirementId: z64.literal(
38700
38755
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
38701
38756
  ),
38702
- overrideReason: z66.literal(
38757
+ overrideReason: z64.literal(
38703
38758
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
38704
38759
  )
38705
38760
  })
38706
38761
  ]
38707
38762
  );
38708
- var goLiveSiteRequestSchema = z66.object({
38709
- acceptExtraSiteCharge: z66.boolean().optional()
38763
+ var goLiveSiteRequestSchema = z64.object({
38764
+ acceptExtraSiteCharge: z64.boolean().optional()
38710
38765
  });
38711
38766
 
38712
38767
  // ../surfaces/src/index.ts
@@ -38790,7 +38845,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
38790
38845
  ];
38791
38846
 
38792
38847
  // ../api/src/bookingVerticals.ts
38793
- import { z as z67 } from "zod";
38848
+ import { z as z65 } from "zod";
38794
38849
  var VERTICAL_IDS = [
38795
38850
  "yoga_wellness",
38796
38851
  "fitness_pt",
@@ -38955,39 +39010,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
38955
39010
  }
38956
39011
  return [...issues];
38957
39012
  }
38958
- var VerticalIdSchema = z67.string().trim().transform((value, ctx) => {
39013
+ var VerticalIdSchema = z65.string().trim().transform((value, ctx) => {
38959
39014
  const parsed = parseVerticalId(value);
38960
39015
  if (!parsed) {
38961
39016
  ctx.addIssue({
38962
- code: z67.ZodIssueCode.custom,
39017
+ code: z65.ZodIssueCode.custom,
38963
39018
  message: "Unknown booking vertical"
38964
39019
  });
38965
- return z67.NEVER;
39020
+ return z65.NEVER;
38966
39021
  }
38967
39022
  return parsed;
38968
39023
  });
38969
- var VerticalPresetIdSchema = z67.string().trim().transform((value, ctx) => {
39024
+ var VerticalPresetIdSchema = z65.string().trim().transform((value, ctx) => {
38970
39025
  const parsed = parseVerticalPresetId(value);
38971
39026
  if (!parsed) {
38972
39027
  ctx.addIssue({
38973
- code: z67.ZodIssueCode.custom,
39028
+ code: z65.ZodIssueCode.custom,
38974
39029
  message: "Unknown booking preset"
38975
39030
  });
38976
- return z67.NEVER;
39031
+ return z65.NEVER;
38977
39032
  }
38978
39033
  return parsed;
38979
39034
  });
38980
- var BookingVerticalConfigSchema = z67.object({
39035
+ var BookingVerticalConfigSchema = z65.object({
38981
39036
  verticalId: VerticalIdSchema.nullable(),
38982
- selectedPresetIds: z67.array(VerticalPresetIdSchema).max(20)
39037
+ selectedPresetIds: z65.array(VerticalPresetIdSchema).max(20)
38983
39038
  }).transform((value, ctx) => {
38984
39039
  const resolved = resolveSiteVerticalBookingConfig(value);
38985
39040
  if (resolved.kind === "invalid") {
38986
39041
  ctx.addIssue({
38987
- code: z67.ZodIssueCode.custom,
39042
+ code: z65.ZodIssueCode.custom,
38988
39043
  message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
38989
39044
  });
38990
- return z67.NEVER;
39045
+ return z65.NEVER;
38991
39046
  }
38992
39047
  return resolved.config;
38993
39048
  });
@@ -39014,51 +39069,51 @@ function isRecord8(value) {
39014
39069
  }
39015
39070
 
39016
39071
  // ../api/src/appointmentSetup.ts
39017
- import { z as z68 } from "zod";
39072
+ import { z as z66 } from "zod";
39018
39073
  var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
39019
- var appointmentSetupRefSchema = z68.discriminatedUnion("kind", [
39020
- z68.object({ kind: z68.literal("existing"), id: z68.string().min(1) }),
39021
- 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) })
39022
39077
  ]);
39023
- var appointmentSetupVenueChoiceSchema = z68.discriminatedUnion("kind", [
39024
- z68.object({ kind: z68.literal("none") }),
39025
- z68.object({ kind: z68.literal("existing"), venueId: z68.string().min(1) }),
39026
- z68.object({
39027
- kind: z68.literal("create"),
39028
- draftId: z68.string().min(1),
39029
- title: z68.string().trim().min(1),
39030
- description: z68.string().nullable(),
39031
- timezone: z68.string().trim().min(1).nullable(),
39032
- addressJson: z68.record(z68.string(), z68.unknown()),
39033
- 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()
39034
39089
  })
39035
39090
  ]);
39036
- var appointmentSetupPaymentDraftSchema = z68.object({
39037
- priceType: z68.union([z68.literal("free"), z68.literal("paid")])
39038
- });
39039
- var appointmentSetupServiceAssignmentDraftSchema = z68.discriminatedUnion("kind", [
39040
- z68.object({ kind: z68.literal("all_practitioners") }),
39041
- z68.object({
39042
- kind: z68.literal("selected_practitioners"),
39043
- 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)
39044
39099
  })
39045
39100
  ]);
39046
- var appointmentSetupServiceDraftSchema = z68.object({
39101
+ var appointmentSetupServiceDraftSchema = z66.object({
39047
39102
  ref: appointmentSetupRefSchema,
39048
- title: z68.string().trim().min(1),
39049
- description: z68.string().nullable(),
39050
- durationMinutes: z68.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
39051
- prepMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39052
- cleanupMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39053
- priceAmount: z68.number().int().nonnegative().nullable(),
39054
- isActive: z68.boolean(),
39055
- locationType: z68.union([
39056
- z68.literal("virtual"),
39057
- z68.literal("in_person"),
39058
- 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")
39059
39114
  ]),
39060
39115
  venue: appointmentSetupVenueChoiceSchema,
39061
- timezone: z68.string().trim().min(1).nullable(),
39116
+ timezone: z66.string().trim().min(1).nullable(),
39062
39117
  payment: appointmentSetupPaymentDraftSchema,
39063
39118
  assignment: appointmentSetupServiceAssignmentDraftSchema
39064
39119
  }).superRefine((service, ctx) => {
@@ -39077,49 +39132,49 @@ var appointmentSetupServiceDraftSchema = z68.object({
39077
39132
  });
39078
39133
  }
39079
39134
  });
39080
- var appointmentSetupPractitionerDraftSchema = z68.object({
39135
+ var appointmentSetupPractitionerDraftSchema = z66.object({
39081
39136
  ref: appointmentSetupRefSchema,
39082
- displayName: z68.string().trim().min(1),
39083
- bio: z68.string().nullable(),
39084
- timezone: z68.string().trim().min(1),
39085
- colorHex: z68.string().nullable()
39086
- });
39087
- var appointmentSetupWeeklyWindowDraftSchema = z68.object({
39088
- weekday: z68.number().int().min(0).max(6),
39089
- startTime: z68.string(),
39090
- endTime: z68.string()
39091
- });
39092
- var appointmentSetupStartTimePolicyDraftSchema = z68.discriminatedUnion("kind", [
39093
- z68.object({ kind: z68.literal("automatic_spacing") }),
39094
- z68.object({
39095
- kind: z68.literal("regular_interval"),
39096
- intervalMinutes: z68.union([
39097
- z68.literal(10),
39098
- z68.literal(15),
39099
- z68.literal(20),
39100
- z68.literal(30),
39101
- z68.literal(45),
39102
- 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)
39103
39158
  ])
39104
39159
  })
39105
39160
  ]);
39106
- var appointmentSetupAvailabilityDraftSchema = z68.object({
39107
- kind: z68.literal("weekly_windows"),
39161
+ var appointmentSetupAvailabilityDraftSchema = z66.object({
39162
+ kind: z66.literal("weekly_windows"),
39108
39163
  resourceRef: appointmentSetupRefSchema,
39109
39164
  serviceRef: appointmentSetupRefSchema.nullable(),
39110
- windows: z68.array(appointmentSetupWeeklyWindowDraftSchema),
39165
+ windows: z66.array(appointmentSetupWeeklyWindowDraftSchema),
39111
39166
  startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
39112
39167
  });
39113
39168
  var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
39114
39169
  var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
39115
- var appointmentSetupBookingNoticeSchema = z68.object({
39116
- minLeadMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
39117
- maxBookingNoticeMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
39118
- });
39119
- var applyAppointmentSetupRequestSchema = z68.object({
39120
- services: z68.array(appointmentSetupServiceDraftSchema),
39121
- practitioners: z68.array(appointmentSetupPractitionerDraftSchema),
39122
- 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),
39123
39178
  bookingNotice: appointmentSetupBookingNoticeSchema
39124
39179
  });
39125
39180
 
@@ -39152,24 +39207,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
39152
39207
  ];
39153
39208
 
39154
39209
  // ../api/src/siteBanner.ts
39155
- import { z as z69 } from "zod";
39210
+ import { z as z67 } from "zod";
39156
39211
  var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
39157
39212
  var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
39158
39213
  var SITE_BANNER_MAX_TEXT_LENGTH = 320;
39159
39214
  var SITE_BANNER_MAX_PARAGRAPHS = 2;
39160
- var siteBannerScopeSchema = z69.enum(SITE_BANNER_SCOPE_VALUES);
39161
- var siteBannerToneSchema = z69.enum(SITE_BANNER_TONE_VALUES);
39162
- var siteBannerBodySchema = z69.unknown().transform(unwrapRichTextValue);
39163
- var siteBannerCtaSchema = z69.object({
39164
- 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),
39165
39220
  link: linkPayloadSchema
39166
39221
  });
39167
- var siteBannerSettingsSchema = z69.discriminatedUnion("enabled", [
39168
- z69.object({
39169
- enabled: z69.literal(false)
39222
+ var siteBannerSettingsSchema = z67.discriminatedUnion("enabled", [
39223
+ z67.object({
39224
+ enabled: z67.literal(false)
39170
39225
  }),
39171
- z69.object({
39172
- enabled: z69.literal(true),
39226
+ z67.object({
39227
+ enabled: z67.literal(true),
39173
39228
  scope: siteBannerScopeSchema,
39174
39229
  tone: siteBannerToneSchema,
39175
39230
  body: siteBannerBodySchema,
@@ -39183,7 +39238,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
39183
39238
  const analysis = analyzeSiteBannerBody(value.body);
39184
39239
  for (const issue of analysis.issues) {
39185
39240
  ctx.addIssue({
39186
- code: z69.ZodIssueCode.custom,
39241
+ code: z67.ZodIssueCode.custom,
39187
39242
  path: ["body"],
39188
39243
  message: siteBannerBodyIssueMessage(issue)
39189
39244
  });
@@ -39445,71 +39500,71 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
39445
39500
  var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
39446
39501
 
39447
39502
  // ../api/src/aiPlayground.ts
39448
- import { z as z70 } from "zod";
39449
- var Rfc6902PatchOp = z70.discriminatedUnion("op", [
39503
+ import { z as z68 } from "zod";
39504
+ var Rfc6902PatchOp = z68.discriminatedUnion("op", [
39450
39505
  // Standard RFC-6902 operations
39451
- z70.object({
39452
- op: z70.literal("add"),
39453
- path: z70.string(),
39454
- value: z70.unknown()
39506
+ z68.object({
39507
+ op: z68.literal("add"),
39508
+ path: z68.string(),
39509
+ value: z68.unknown()
39455
39510
  }),
39456
- z70.object({
39457
- op: z70.literal("remove"),
39458
- path: z70.string()
39511
+ z68.object({
39512
+ op: z68.literal("remove"),
39513
+ path: z68.string()
39459
39514
  }),
39460
- z70.object({
39461
- op: z70.literal("replace"),
39462
- path: z70.string(),
39463
- value: z70.unknown()
39515
+ z68.object({
39516
+ op: z68.literal("replace"),
39517
+ path: z68.string(),
39518
+ value: z68.unknown()
39464
39519
  }),
39465
- z70.object({
39466
- op: z70.literal("move"),
39467
- from: z70.string(),
39468
- path: z70.string()
39520
+ z68.object({
39521
+ op: z68.literal("move"),
39522
+ from: z68.string(),
39523
+ path: z68.string()
39469
39524
  }),
39470
- z70.object({
39471
- op: z70.literal("copy"),
39472
- from: z70.string(),
39473
- path: z70.string()
39525
+ z68.object({
39526
+ op: z68.literal("copy"),
39527
+ from: z68.string(),
39528
+ path: z68.string()
39474
39529
  }),
39475
39530
  // Block-level operations (Phase 2)
39476
- z70.object({
39477
- op: z70.literal("add_block"),
39478
- blockKind: z70.string(),
39479
- afterBlockId: z70.string().nullable(),
39480
- content: z70.record(z70.string(), z70.unknown()),
39481
- 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()
39482
39537
  }),
39483
- z70.object({
39484
- op: z70.literal("delete_block"),
39485
- blockId: z70.string(),
39486
- rationale: z70.string()
39538
+ z68.object({
39539
+ op: z68.literal("delete_block"),
39540
+ blockId: z68.string(),
39541
+ rationale: z68.string()
39487
39542
  }),
39488
- z70.object({
39489
- op: z70.literal("reorder_block"),
39490
- blockId: z70.string(),
39491
- afterBlockId: z70.string().nullable(),
39492
- 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()
39493
39548
  })
39494
39549
  ]);
39495
- var PlaygroundProposeRequest = z70.object({
39496
- request: z70.string().min(1).max(2e3)
39550
+ var PlaygroundProposeRequest = z68.object({
39551
+ request: z68.string().min(1).max(2e3)
39497
39552
  });
39498
- var MultiPagePatchEnvelope = z70.object({
39499
- pageId: z70.string(),
39500
- blockId: z70.string().optional(),
39553
+ var MultiPagePatchEnvelope = z68.object({
39554
+ pageId: z68.string(),
39555
+ blockId: z68.string().optional(),
39501
39556
  // Not present for page-level ops
39502
- blockKind: z70.string().optional(),
39503
- blockPurpose: z70.string().optional().nullable(),
39504
- ops: z70.array(Rfc6902PatchOp),
39505
- rationale: z70.string(),
39506
- currentContent: z70.record(z70.string(), z70.unknown()).optional()
39507
- });
39508
- var MultiPageUpdateResponse = z70.object({
39509
- patches: z70.array(MultiPagePatchEnvelope),
39510
- assistantMessage: z70.string(),
39511
- pagesModified: z70.number(),
39512
- 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()
39513
39568
  });
39514
39569
 
39515
39570
  // src/data/prefetchBlockData.ts