@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
@@ -6770,7 +6770,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
6770
6770
  );
6771
6771
 
6772
6772
  // ../api/src/sdkConfig/contracts.ts
6773
- import { z as z65 } from "zod";
6773
+ import { z as z63 } from "zod";
6774
6774
 
6775
6775
  // ../blocks/src/system/manifest/augmentManifest.ts
6776
6776
  function augmentManifest(manifest) {
@@ -7096,12 +7096,17 @@ var visibleWhenPredicateSchema = z4.object({
7096
7096
  minItems: z4.number().int().nonnegative().optional(),
7097
7097
  maxItems: z4.number().int().nonnegative().optional()
7098
7098
  });
7099
- var visibleWhenSchema = z4.union([
7100
- visibleWhenPredicateSchema,
7101
- z4.object({
7102
- allOf: z4.array(visibleWhenPredicateSchema).min(1)
7103
- })
7104
- ]);
7099
+ var visibleWhenSchema = z4.lazy(
7100
+ () => z4.union([
7101
+ visibleWhenPredicateSchema,
7102
+ z4.object({
7103
+ allOf: z4.array(visibleWhenSchema).min(1)
7104
+ }),
7105
+ z4.object({
7106
+ anyOf: z4.array(visibleWhenSchema).min(1)
7107
+ })
7108
+ ])
7109
+ );
7105
7110
  var uiSchema = z4.object({
7106
7111
  widget: z4.string().optional(),
7107
7112
  // Container/widget presets (used by Group/Repeater widgets themselves, not for widget selection)
@@ -20087,9 +20092,6 @@ var heroCopyFragment = defineFragment({
20087
20092
  maxLength: 600
20088
20093
  }
20089
20094
  ],
20090
- // Layout order is [eyebrow, headline, subheadline]. The hero block's
20091
- // `splitEditorial` variant reads these nodes by index; keep the order stable
20092
- // (it fails fast at import if the count changes).
20093
20095
  layout: [
20094
20096
  text(
20095
20097
  {
@@ -22327,32 +22329,6 @@ var splitReverseLayout = splitLayoutWith([
22327
22329
  splitContentColumn,
22328
22330
  splitImageColumn
22329
22331
  ]);
22330
- var heroEyebrowNode = heroCopyFragment.layout[0];
22331
- var heroHeadlineNode = heroCopyFragment.layout[1];
22332
- var heroSubheadlineNode = heroCopyFragment.layout[2];
22333
- var heroCtaRowNode = heroCtaRowFragment.layout[0];
22334
- if (!heroEyebrowNode || !heroHeadlineNode || !heroSubheadlineNode || !heroCtaRowNode) {
22335
- throw new Error("Hero copy/CTA fragments are missing their expected layout nodes.");
22336
- }
22337
- var heroEditorialBottomRow = inline(
22338
- {
22339
- gap: "lg",
22340
- align: "end",
22341
- justify: "start",
22342
- wrap: true,
22343
- className: "rb-w-full"
22344
- },
22345
- [heroSubheadlineNode, heroCtaRowNode]
22346
- );
22347
- var splitEditorialContentColumn = heroContentWrapper(
22348
- [heroEyebrowNode, heroHeadlineNode, heroEditorialBottomRow],
22349
- "md",
22350
- "rb-w-full rb-text-left"
22351
- );
22352
- var splitEditorialLayout = splitLayoutWith([
22353
- splitEditorialContentColumn,
22354
- splitImageColumn
22355
- ]);
22356
22332
  var heroConfig = {
22357
22333
  id: "block.hero",
22358
22334
  title: "Hero",
@@ -22376,7 +22352,8 @@ var heroConfig = {
22376
22352
  id: "imageShape",
22377
22353
  label: "Image shape",
22378
22354
  defaultValue: "default",
22379
- uiIntent: "display"
22355
+ uiIntent: "display",
22356
+ visibleWhen: { field: "variant", oneOf: ["split", "splitReverse"] }
22380
22357
  })
22381
22358
  ],
22382
22359
  layout: classicLayout,
@@ -22384,8 +22361,7 @@ var heroConfig = {
22384
22361
  classic: classicLayout,
22385
22362
  micro: microLayout,
22386
22363
  split: splitLayout,
22387
- splitReverse: splitReverseLayout,
22388
- splitEditorial: splitEditorialLayout
22364
+ splitReverse: splitReverseLayout
22389
22365
  },
22390
22366
  defaultVariant: "classic",
22391
22367
  description: "Hero section with headline, subtitle, and repeatable CTAs.",
@@ -24261,8 +24237,10 @@ function resolveGeneratedHeroLayoutStyles(content) {
24261
24237
  return isPlainObject(raw) ? raw : null;
24262
24238
  }
24263
24239
  function readHeroLayoutString(content, generatedKey, fallbackKey = generatedKey) {
24240
+ const explicitValue = readString(content, fallbackKey);
24241
+ if (explicitValue !== void 0) return explicitValue;
24264
24242
  const generated = resolveGeneratedHeroLayoutStyles(content);
24265
- return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : readString(content, fallbackKey);
24243
+ return generated && typeof generated[generatedKey] === "string" ? generated[generatedKey] : void 0;
24266
24244
  }
24267
24245
  function resolveHeroVariant(content) {
24268
24246
  const variant = readString(content, "variant");
@@ -24275,7 +24253,7 @@ function resolveHeroContentAlignment(content) {
24275
24253
  const raw = readHeroLayoutString(content, "contentAlignment");
24276
24254
  if (raw === "left" || raw === "center" || raw === "right") return raw;
24277
24255
  const variant = resolveHeroVariant(content);
24278
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "left";
24256
+ if (variant === "split" || variant === "splitReverse") return "left";
24279
24257
  return "center";
24280
24258
  }
24281
24259
  function resolveHeroVerticalAlignment(content) {
@@ -24285,7 +24263,7 @@ function resolveHeroVerticalAlignment(content) {
24285
24263
  const minHeight = sectionStyles?.minHeight;
24286
24264
  if (minHeight === "banner" || minHeight === "hero" || minHeight === "immersive") return "center";
24287
24265
  const variant = resolveHeroVariant(content);
24288
- if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "center";
24266
+ if (variant === "split" || variant === "splitReverse") return "center";
24289
24267
  return "top";
24290
24268
  }
24291
24269
  function resolveHeroContentMaxWidth(content) {
@@ -27854,9 +27832,6 @@ var appointmentBookingBlockDefinition = {
27854
27832
  }
27855
27833
  };
27856
27834
 
27857
- // ../blocks/src/system/blocks/event-registration.ts
27858
- import { z as z47 } from "zod";
27859
-
27860
27835
  // ../blocks/src/system/blocks/events/shared/schemas.ts
27861
27836
  import { z as z43 } from "zod";
27862
27837
 
@@ -28471,24 +28446,57 @@ function normalizeEventStaffMemberId(value) {
28471
28446
  return trimmed ? trimmed : null;
28472
28447
  }
28473
28448
 
28474
- // ../blocks/src/system/blocks/event-registration.shared.ts
28449
+ // ../blocks/src/system/blocks/shop.shared.ts
28475
28450
  import { z as z44 } from "zod";
28476
- var occurrenceContextSchema = z44.object({
28451
+ var publicPassProductSchema = z44.object({
28452
+ id: z44.string(),
28453
+ productUseCase: z44.enum(["event_pass", "appointment_package"]).default("event_pass"),
28454
+ name: z44.string(),
28455
+ description: z44.string().nullable(),
28456
+ price: z44.number(),
28457
+ currency: z44.string(),
28458
+ creditsTotal: z44.number(),
28459
+ pricePerCredit: z44.number(),
28460
+ validDays: z44.number().nullable(),
28461
+ eligibleCategoryIds: z44.array(z44.string()),
28462
+ eligibleCategoryNames: z44.array(z44.string())
28463
+ });
28464
+ var publicPassProductCollectionSchema = z44.object({
28465
+ passes: z44.array(publicPassProductSchema)
28466
+ });
28467
+ var publicMembershipProductSchema = z44.object({
28477
28468
  id: z44.string(),
28478
- seriesId: z44.string(),
28479
- startsAt: z44.string(),
28480
- endsAt: z44.string(),
28481
- timeZone: z44.string(),
28482
- capacityOverride: z44.number().nullable().optional(),
28483
- overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
28469
+ name: z44.string(),
28470
+ description: z44.string().nullable(),
28471
+ price: z44.number(),
28472
+ currency: z44.string(),
28473
+ billingInterval: z44.enum(["month", "year"]),
28474
+ eligibleCategoryIds: z44.array(z44.string()),
28475
+ eligibleCategoryNames: z44.array(z44.string())
28476
+ });
28477
+ var publicMembershipProductCollectionSchema = z44.object({
28478
+ memberships: z44.array(publicMembershipProductSchema)
28479
+ });
28480
+
28481
+ // ../blocks/src/system/blocks/event-registration.shared.ts
28482
+ import { z as z45 } from "zod";
28483
+ var occurrenceContextSchema = z45.object({
28484
+ id: z45.string(),
28485
+ seriesId: z45.string(),
28486
+ startsAt: z45.string(),
28487
+ endsAt: z45.string(),
28488
+ timeZone: z45.string(),
28489
+ capacityOverride: z45.number().nullable().optional(),
28490
+ overrides: z45.record(z45.string(), z45.unknown()).nullable().optional()
28484
28491
  }).nullable();
28485
28492
 
28486
28493
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28487
- import { z as z46 } from "zod";
28494
+ import { z as z47 } from "zod";
28488
28495
 
28489
28496
  // ../blocks/src/system/constants/events.ts
28490
28497
  var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
28491
- var eventCalendarDisplayModeValues = ["combined", "month", "week", "list", "timetable"];
28498
+ var eventCalendarDisplayModeValues = ["combined", "calendar", "list", "timetable"];
28499
+ var eventCalendarDefaultViewValues = ["month", "week"];
28492
28500
  var eventCalendarListLayoutValues = ["stack", "grid", "compact"];
28493
28501
  var eventCalendarListLayoutOptions = [
28494
28502
  { id: "stack", label: "Stack" },
@@ -28498,6 +28506,9 @@ var eventCalendarListLayoutOptions = [
28498
28506
  function isEventCalendarDisplayMode(value) {
28499
28507
  return typeof value === "string" && eventCalendarDisplayModeValues.includes(value);
28500
28508
  }
28509
+ function isEventCalendarDefaultView(value) {
28510
+ return typeof value === "string" && eventCalendarDefaultViewValues.includes(value);
28511
+ }
28501
28512
  function isEventCalendarListLayout(value) {
28502
28513
  return typeof value === "string" && eventCalendarListLayoutValues.includes(value);
28503
28514
  }
@@ -28638,16 +28649,17 @@ function readAmount(value) {
28638
28649
  }
28639
28650
 
28640
28651
  // ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
28641
- import { z as z45 } from "zod";
28642
- var previewStageSchema = z45.enum(["preview", "published"]);
28643
- var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
28644
- var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
28645
- var eventLayoutSchema = z45.enum(eventCalendarListLayoutValues);
28646
- var eventCalendarDisplayModeSchema = z45.enum(eventCalendarDisplayModeValues);
28647
- var columnOptionSchema = z45.enum(["2", "3", "4"]);
28648
- var weekStartSchema = z45.enum(["sunday", "monday"]);
28649
- var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
28650
- var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
28652
+ import { z as z46 } from "zod";
28653
+ var previewStageSchema = z46.enum(["preview", "published"]);
28654
+ var registrationButtonVariantSchema = z46.enum(["primary", "secondary", "outline"]);
28655
+ var eventButtonVariantSchema = z46.enum(["primary", "secondary", "outline", "link"]);
28656
+ var eventLayoutSchema = z46.enum(eventCalendarListLayoutValues);
28657
+ var eventCalendarDisplayModeSchema = z46.enum(eventCalendarDisplayModeValues);
28658
+ var eventCalendarDefaultViewSchema = z46.enum(eventCalendarDefaultViewValues);
28659
+ var columnOptionSchema = z46.enum(["2", "3", "4"]);
28660
+ var weekStartSchema = z46.enum(["sunday", "monday"]);
28661
+ var filterAutoShowSchema = z46.enum(["auto", "always", "never"]);
28662
+ var calendarTabViewsSchema = z46.enum(["both", "month", "week"]);
28651
28663
 
28652
28664
  // ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
28653
28665
  function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
@@ -28665,7 +28677,7 @@ function eventMatchesOccurrenceId(event, occurrenceId) {
28665
28677
  function findPreSelectedEvent(input) {
28666
28678
  const occurrenceContext = input.occurrenceContext;
28667
28679
  if (!occurrenceContext) {
28668
- return null;
28680
+ return input.scopedEvents.length === 1 ? input.scopedEvents[0] ?? null : null;
28669
28681
  }
28670
28682
  const contextDate = getBookingLocalDateKey(toScheduledBookingDateTime({
28671
28683
  startsAt: occurrenceContext.startsAt,
@@ -28707,68 +28719,72 @@ function toRegistrationEvents(events) {
28707
28719
  // ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
28708
28720
  var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
28709
28721
  var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
28710
- var contentEntrySchema = z46.object({
28711
- id: z46.string(),
28712
- slug: z46.string(),
28713
- contentTypeSlug: z46.string()
28722
+ var contentEntrySchema = z47.object({
28723
+ id: z47.string(),
28724
+ slug: z47.string(),
28725
+ contentTypeSlug: z47.string()
28714
28726
  });
28715
- var eventRegistrationPublicEventSchema = z46.preprocess(
28727
+ var eventRegistrationPublicEventSchema = z47.preprocess(
28716
28728
  normalizeEventRegistrationEventInput,
28717
28729
  publicEventSchema
28718
28730
  );
28719
- var eventRegistrationSourceSchema = z46.object({
28720
- siteId: z46.string().optional(),
28721
- apiBaseUrl: z46.string().optional(),
28722
- portalToken: z46.string().nullable().optional(),
28723
- previewToken: z46.string().nullable().optional(),
28731
+ var eventRegistrationSourceSchema = z47.object({
28732
+ siteId: z47.string().optional(),
28733
+ apiBaseUrl: z47.string().optional(),
28734
+ portalToken: z47.string().nullable().optional(),
28735
+ previewToken: z47.string().nullable().optional(),
28724
28736
  occurrenceContext: occurrenceContextSchema.optional(),
28725
28737
  contentEntry: contentEntrySchema.nullable().optional(),
28726
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28727
- className: z46.string().nullable().optional(),
28728
- buttonText: z46.string().nullable().optional(),
28729
- maxTickets: z46.string().nullable().optional(),
28730
- showVenue: z46.boolean().optional(),
28731
- showCapacity: z46.boolean().optional(),
28732
- successMessage: z46.string().optional(),
28733
- waitlistMessage: z46.string().optional(),
28738
+ events: z47.array(eventRegistrationPublicEventSchema).nullable().optional(),
28739
+ className: z47.string().nullable().optional(),
28740
+ buttonText: z47.string().nullable().optional(),
28741
+ maxTickets: z47.string().nullable().optional(),
28742
+ showVenue: z47.boolean().optional(),
28743
+ showCapacity: z47.boolean().optional(),
28744
+ successMessage: z47.string().optional(),
28745
+ waitlistMessage: z47.string().optional(),
28734
28746
  buttonVariant: registrationButtonVariantSchema.optional(),
28735
- overlayEnabled: z46.boolean().optional(),
28736
- spamProtectionEnabled: z46.boolean().optional(),
28747
+ overlayEnabled: z47.boolean().optional(),
28748
+ spamProtectionEnabled: z47.boolean().optional(),
28737
28749
  stage: previewStageSchema.optional(),
28738
- supportEmail: z46.string().optional()
28739
- });
28740
- var eventRegistrationDisplaySchema = z46.object({
28741
- kind: z46.literal("event-registration"),
28742
- state: z46.literal("generic-shell"),
28743
- className: z46.string().nullable(),
28744
- titleText: z46.string(),
28745
- bodyText: z46.string(),
28746
- stepLabels: z46.array(z46.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
28747
- summaryButtonText: z46.string()
28748
- });
28749
- var eventRegistrationHydrationSchema = z46.object({
28750
+ supportEmail: z47.string().optional(),
28751
+ sitePasses: publicPassProductCollectionSchema.nullable().optional(),
28752
+ siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
28753
+ });
28754
+ var eventRegistrationDisplaySchema = z47.object({
28755
+ kind: z47.literal("event-registration"),
28756
+ state: z47.literal("generic-shell"),
28757
+ className: z47.string().nullable(),
28758
+ titleText: z47.string(),
28759
+ bodyText: z47.string(),
28760
+ stepLabels: z47.array(z47.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
28761
+ summaryButtonText: z47.string()
28762
+ });
28763
+ var eventRegistrationHydrationSchema = z47.object({
28750
28764
  occurrenceContext: occurrenceContextSchema.optional(),
28751
28765
  contentEntry: contentEntrySchema.nullable().optional(),
28752
- events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
28753
- maxTickets: z46.string().optional(),
28754
- showVenue: z46.boolean().optional(),
28755
- showCapacity: z46.boolean().optional(),
28756
- successMessage: z46.string().optional(),
28757
- waitlistMessage: z46.string().optional(),
28766
+ events: z47.array(eventRegistrationPublicEventSchema).nullable().optional(),
28767
+ maxTickets: z47.string().optional(),
28768
+ showVenue: z47.boolean().optional(),
28769
+ showCapacity: z47.boolean().optional(),
28770
+ successMessage: z47.string().optional(),
28771
+ waitlistMessage: z47.string().optional(),
28758
28772
  buttonVariant: registrationButtonVariantSchema.optional(),
28759
- overlayEnabled: z46.boolean().optional(),
28760
- spamProtectionEnabled: z46.boolean().optional(),
28761
- supportEmail: z46.string().optional()
28773
+ overlayEnabled: z47.boolean().optional(),
28774
+ spamProtectionEnabled: z47.boolean().optional(),
28775
+ supportEmail: z47.string().optional(),
28776
+ sitePasses: publicPassProductCollectionSchema.nullable().optional(),
28777
+ siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
28762
28778
  });
28763
- var eventRegistrationRenderSchema = z46.object({
28779
+ var eventRegistrationRenderSchema = z47.object({
28764
28780
  display: eventRegistrationDisplaySchema,
28765
28781
  hydration: eventRegistrationHydrationSchema
28766
28782
  });
28767
- var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
28768
- siteId: z46.string().optional(),
28769
- apiBaseUrl: z46.string().optional(),
28770
- portalToken: z46.string().nullable().optional(),
28771
- previewToken: z46.string().nullable().optional(),
28783
+ var eventRegistrationIslandMetaCodec = createZodCodec(z47.object({
28784
+ siteId: z47.string().optional(),
28785
+ apiBaseUrl: z47.string().optional(),
28786
+ portalToken: z47.string().nullable().optional(),
28787
+ previewToken: z47.string().nullable().optional(),
28772
28788
  stage: previewStageSchema.optional()
28773
28789
  }));
28774
28790
  var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -28874,7 +28890,9 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
28874
28890
  buttonVariant: source.buttonVariant,
28875
28891
  overlayEnabled: source.overlayEnabled,
28876
28892
  spamProtectionEnabled: source.spamProtectionEnabled,
28877
- supportEmail: source.supportEmail
28893
+ supportEmail: source.supportEmail,
28894
+ sitePasses: source.sitePasses ?? null,
28895
+ siteMemberships: source.siteMemberships ?? null
28878
28896
  }
28879
28897
  })
28880
28898
  });
@@ -29056,6 +29074,8 @@ var eventRegistrationManifest = createBlockManifest({
29056
29074
  },
29057
29075
  // Event data from loader
29058
29076
  events: { $bind: { from: "data.events" } },
29077
+ sitePasses: { $bind: { from: "data.sitePasses" } },
29078
+ siteMemberships: { $bind: { from: "data.siteMemberships" } },
29059
29079
  // Stage for preview mode (allows registering for draft events)
29060
29080
  stage: {
29061
29081
  $bind: { from: "$root.previewStage", fallback: "published" }
@@ -29074,7 +29094,9 @@ var eventRegistrationBlockDefinition = {
29074
29094
  manifest: eventRegistrationManifest,
29075
29095
  runtime: eventRegistrationBlockRuntime,
29076
29096
  dataSchemas: {
29077
- events: z47.array(publicEventSchema).optional(),
29097
+ events: publicEventsArraySchema.optional(),
29098
+ sitePasses: publicPassProductCollectionSchema.optional(),
29099
+ siteMemberships: publicMembershipProductCollectionSchema.optional(),
29078
29100
  occurrenceContext: occurrenceContextSchema.optional()
29079
29101
  },
29080
29102
  dataLoaders: {
@@ -29093,6 +29115,20 @@ var eventRegistrationBlockDefinition = {
29093
29115
  entryId: { $bind: { from: "$root.contentEntry._entryId", fallback: "" } }
29094
29116
  },
29095
29117
  mode: "server"
29118
+ },
29119
+ sitePasses: {
29120
+ endpoint: "listPublicPasses",
29121
+ params: {
29122
+ siteId: { $bind: { from: "$root.siteId" } }
29123
+ },
29124
+ mode: "server"
29125
+ },
29126
+ siteMemberships: {
29127
+ endpoint: "listPublicMemberships",
29128
+ params: {
29129
+ siteId: { $bind: { from: "$root.siteId" } }
29130
+ },
29131
+ mode: "server"
29096
29132
  }
29097
29133
  }
29098
29134
  };
@@ -29424,35 +29460,7 @@ var courseRegistrationBlockDefinition = {
29424
29460
  };
29425
29461
 
29426
29462
  // ../blocks/src/system/blocks/event-details.ts
29427
- import { z as z50 } from "zod";
29428
-
29429
- // ../blocks/src/system/blocks/shop.shared.ts
29430
29463
  import { z as z49 } from "zod";
29431
- var publicPassProductSchema = z49.object({
29432
- id: z49.string(),
29433
- productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
29434
- name: z49.string(),
29435
- description: z49.string().nullable(),
29436
- price: z49.number(),
29437
- currency: z49.string(),
29438
- creditsTotal: z49.number(),
29439
- pricePerCredit: z49.number(),
29440
- validDays: z49.number().nullable(),
29441
- eligibleCategoryIds: z49.array(z49.string()),
29442
- eligibleCategoryNames: z49.array(z49.string())
29443
- });
29444
- var publicMembershipProductSchema = z49.object({
29445
- id: z49.string(),
29446
- name: z49.string(),
29447
- description: z49.string().nullable(),
29448
- price: z49.number(),
29449
- currency: z49.string(),
29450
- billingInterval: z49.enum(["month", "year"]),
29451
- eligibleCategoryIds: z49.array(z49.string()),
29452
- eligibleCategoryNames: z49.array(z49.string())
29453
- });
29454
-
29455
- // ../blocks/src/system/blocks/event-details.ts
29456
29464
  var eventDetailsManifest = createBlockManifest({
29457
29465
  id: "block.event-details",
29458
29466
  version: "1.0.0",
@@ -29584,40 +29592,40 @@ var eventDetailsManifest = createBlockManifest({
29584
29592
  })
29585
29593
  ]
29586
29594
  });
29587
- var occurrenceContextSchema2 = z50.object({
29588
- id: z50.string(),
29589
- seriesId: z50.string(),
29590
- startsAt: z50.string(),
29591
- endsAt: z50.string(),
29592
- timeZone: z50.string(),
29593
- capacityOverride: z50.number().nullable().optional(),
29594
- overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
29595
+ var occurrenceContextSchema2 = z49.object({
29596
+ id: z49.string(),
29597
+ seriesId: z49.string(),
29598
+ startsAt: z49.string(),
29599
+ endsAt: z49.string(),
29600
+ timeZone: z49.string(),
29601
+ capacityOverride: z49.number().nullable().optional(),
29602
+ overrides: z49.record(z49.string(), z49.unknown()).nullable().optional()
29595
29603
  }).nullable();
29596
- var eventAutoApplyDiscountPreviewBaseSchema = z50.object({
29597
- id: z50.string(),
29598
- publicLabel: z50.string(),
29599
- description: z50.string().nullable(),
29600
- minTicketsRequired: z50.number().nullable()
29604
+ var eventAutoApplyDiscountPreviewBaseSchema = z49.object({
29605
+ id: z49.string(),
29606
+ publicLabel: z49.string(),
29607
+ description: z49.string().nullable(),
29608
+ minTicketsRequired: z49.number().nullable()
29601
29609
  });
29602
- var eventAutoApplyDiscountPreviewSchema = z50.discriminatedUnion("discountType", [
29610
+ var eventAutoApplyDiscountPreviewSchema = z49.discriminatedUnion("discountType", [
29603
29611
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29604
- discountType: z50.literal("percent"),
29605
- discountPercent: z50.number(),
29606
- discountAmountCents: z50.null()
29612
+ discountType: z49.literal("percent"),
29613
+ discountPercent: z49.number(),
29614
+ discountAmountCents: z49.null()
29607
29615
  }),
29608
29616
  eventAutoApplyDiscountPreviewBaseSchema.extend({
29609
- discountType: z50.literal("fixed"),
29610
- discountPercent: z50.null(),
29611
- discountAmountCents: z50.number()
29617
+ discountType: z49.literal("fixed"),
29618
+ discountPercent: z49.null(),
29619
+ discountAmountCents: z49.number()
29612
29620
  })
29613
29621
  ]);
29614
29622
  var eventDetailsBlockDefinition = {
29615
29623
  manifest: eventDetailsManifest,
29616
29624
  dataSchemas: {
29617
- eventDetailsData: z50.object({
29625
+ eventDetailsData: z49.object({
29618
29626
  events: publicEventsArraySchema,
29619
- sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
29620
- siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) }),
29627
+ sitePasses: publicPassProductCollectionSchema,
29628
+ siteMemberships: publicMembershipProductCollectionSchema,
29621
29629
  autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
29622
29630
  }).optional(),
29623
29631
  occurrenceContext: occurrenceContextSchema2.optional()
@@ -29941,7 +29949,7 @@ var eventSpotlightBlockDefinition = {
29941
29949
  };
29942
29950
 
29943
29951
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
29944
- import { z as z52 } from "zod";
29952
+ import { z as z51 } from "zod";
29945
29953
 
29946
29954
  // ../blocks/src/system/runtime/nodes/events/shared/utils.ts
29947
29955
  var COLUMN_CLASSES = {
@@ -30049,16 +30057,16 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
30049
30057
  }
30050
30058
 
30051
30059
  // ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
30052
- import { z as z51 } from "zod";
30060
+ import { z as z50 } from "zod";
30053
30061
  var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
30054
- var eventPageSizeSchema = z51.union([
30055
- z51.literal(3),
30056
- z51.literal(6),
30057
- z51.literal(10),
30058
- z51.literal(12),
30059
- z51.literal(20),
30060
- z51.literal(24),
30061
- z51.literal(30)
30062
+ var eventPageSizeSchema = z50.union([
30063
+ z50.literal(3),
30064
+ z50.literal(6),
30065
+ z50.literal(10),
30066
+ z50.literal(12),
30067
+ z50.literal(20),
30068
+ z50.literal(24),
30069
+ z50.literal(30)
30062
30070
  ]);
30063
30071
  var eventPageSizeSet = new Set(eventPageSizeValues);
30064
30072
  function resolveEventPageSize(value, fallback = 12) {
@@ -30068,15 +30076,15 @@ function resolveEventPageSize(value, fallback = 12) {
30068
30076
  function resolveEventCalendarListPageSize(input) {
30069
30077
  return resolveEventPageSize(input.eventsPerPage);
30070
30078
  }
30071
- var eventListPaginationActionSchema = z51.discriminatedUnion("kind", [
30072
- z51.object({
30073
- kind: z51.literal("loadMore"),
30074
- label: z51.string()
30079
+ var eventListPaginationActionSchema = z50.discriminatedUnion("kind", [
30080
+ z50.object({
30081
+ kind: z50.literal("loadMore"),
30082
+ label: z50.string()
30075
30083
  }),
30076
- z51.object({
30077
- kind: z51.literal("seeAllLink"),
30078
- label: z51.string(),
30079
- href: z51.string()
30084
+ z50.object({
30085
+ kind: z50.literal("seeAllLink"),
30086
+ label: z50.string(),
30087
+ href: z50.string()
30080
30088
  })
30081
30089
  ]);
30082
30090
  function resolveEventListPaginationAction(input) {
@@ -30089,89 +30097,89 @@ function resolveEventListPaginationAction(input) {
30089
30097
  }
30090
30098
 
30091
30099
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
30092
- var legacyEventCardVariantSchema = z52.enum(["variant1", "variant2"]);
30093
- var eventCardVariantInputSchema = z52.union([
30100
+ var legacyEventCardVariantSchema = z51.enum(["variant1", "variant2"]);
30101
+ var eventCardVariantInputSchema = z51.union([
30094
30102
  cardVariantRoleSchema,
30095
30103
  legacyEventCardVariantSchema
30096
30104
  ]);
30097
- var cardOrientationSchema = z52.enum(["vertical", "horizontal"]);
30098
- var eventBlockKindSchema = z52.enum(eventBlockKindValues);
30099
- var eventSurfaceScopeSchema = z52.enum(eventSurfaceScopeValues);
30100
- var eventScheduleScopeSchema2 = z52.enum(eventScheduleScopeValues);
30101
- var eventListingSourceSchema = z52.object({
30102
- events: z52.array(publicEventSchema).nullable().optional(),
30103
- siteId: z52.string(),
30104
- apiBaseUrl: z52.string().optional(),
30105
+ var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
30106
+ var eventBlockKindSchema = z51.enum(eventBlockKindValues);
30107
+ var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
30108
+ var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
30109
+ var eventListingSourceSchema = z51.object({
30110
+ events: z51.array(publicEventSchema).nullable().optional(),
30111
+ siteId: z51.string(),
30112
+ apiBaseUrl: z51.string().optional(),
30105
30113
  stage: previewStageSchema.optional(),
30106
30114
  layout: eventLayoutSchema.optional(),
30107
30115
  columns: columnOptionSchema.optional(),
30108
- eventsPerPage: z52.string().optional(),
30109
- paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
30110
- seeAllUrl: z52.string().optional(),
30111
- loadMoreText: z52.string().optional(),
30116
+ eventsPerPage: z51.string().optional(),
30117
+ paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
30118
+ seeAllUrl: z51.string().optional(),
30119
+ loadMoreText: z51.string().optional(),
30112
30120
  cardVariant: eventCardVariantInputSchema.optional(),
30113
30121
  buttonVariant: eventButtonVariantSchema.optional(),
30114
- buttonText: z52.string().optional(),
30115
- showVenue: z52.boolean().optional(),
30116
- showMap: z52.boolean().optional(),
30117
- showCapacity: z52.boolean().optional(),
30118
- emptyMessage: z52.string().optional(),
30119
- className: z52.string().optional(),
30120
- showFilters: z52.boolean().nullable().optional(),
30122
+ buttonText: z51.string().optional(),
30123
+ showVenue: z51.boolean().optional(),
30124
+ showMap: z51.boolean().optional(),
30125
+ showCapacity: z51.boolean().optional(),
30126
+ emptyMessage: z51.string().optional(),
30127
+ className: z51.string().optional(),
30128
+ showFilters: z51.boolean().nullable().optional(),
30121
30129
  showCategoryFilter: filterAutoShowSchema.optional(),
30122
- showVenueFilter: z52.boolean().nullable().optional(),
30123
- showStaffFilter: z52.boolean().nullable().optional(),
30130
+ showVenueFilter: z51.boolean().nullable().optional(),
30131
+ showStaffFilter: z51.boolean().nullable().optional(),
30124
30132
  eventKind: eventBlockKindSchema.nullable().optional(),
30125
30133
  eventSurface: eventSurfaceScopeSchema.nullable().optional(),
30126
- filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30134
+ filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
30127
30135
  scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
30128
- filterCategoryIds: z52.string().nullable().optional(),
30129
- filterStaffMemberId: z52.string().nullable().optional(),
30130
- filterVenueId: z52.string().nullable().optional()
30136
+ filterCategoryIds: z51.string().nullable().optional(),
30137
+ filterStaffMemberId: z51.string().nullable().optional(),
30138
+ filterVenueId: z51.string().nullable().optional()
30131
30139
  });
30132
- var eventListingDisplaySchema = z52.object({
30133
- kind: z52.literal("event-listing"),
30134
- state: z52.enum(["loading", "empty", "ready"]),
30140
+ var eventListingDisplaySchema = z51.object({
30141
+ kind: z51.literal("event-listing"),
30142
+ state: z51.enum(["loading", "empty", "ready"]),
30135
30143
  listLayout: eventLayoutSchema,
30136
- className: z52.string().nullable(),
30137
- emptyMessage: z52.string(),
30138
- loadingMessage: z52.string(),
30139
- containerClass: z52.string(),
30144
+ className: z51.string().nullable(),
30145
+ emptyMessage: z51.string(),
30146
+ loadingMessage: z51.string(),
30147
+ containerClass: z51.string(),
30140
30148
  cardVariant: cardVariantRoleSchema,
30141
30149
  buttonVariant: eventButtonVariantSchema,
30142
- buttonText: z52.string(),
30143
- showVenue: z52.boolean(),
30144
- showMap: z52.boolean(),
30145
- showCapacity: z52.boolean(),
30150
+ buttonText: z51.string(),
30151
+ showVenue: z51.boolean(),
30152
+ showMap: z51.boolean(),
30153
+ showCapacity: z51.boolean(),
30146
30154
  orientation: cardOrientationSchema,
30147
- events: z52.array(publicEventSchema)
30155
+ events: z51.array(publicEventSchema)
30148
30156
  });
30149
- var eventListingHydrationSchema = z52.object({
30150
- siteId: z52.string(),
30157
+ var eventListingHydrationSchema = z51.object({
30158
+ siteId: z51.string(),
30151
30159
  stage: previewStageSchema.optional(),
30152
30160
  eventsPerPage: eventPageSizeSchema,
30153
30161
  paginationAction: eventListPaginationActionSchema,
30154
- showFilters: z52.boolean(),
30162
+ showFilters: z51.boolean(),
30155
30163
  showCategoryFilter: filterAutoShowSchema,
30156
- showVenueFilter: z52.boolean(),
30157
- showStaffFilter: z52.boolean(),
30164
+ showVenueFilter: z51.boolean(),
30165
+ showStaffFilter: z51.boolean(),
30158
30166
  eventKind: eventBlockKindSchema,
30159
30167
  eventSurface: eventSurfaceScopeSchema,
30160
- filterEventPresets: z52.string().nullable(),
30168
+ filterEventPresets: z51.string().nullable(),
30161
30169
  scheduleScope: eventScheduleScopeSchema2,
30162
- filterCategoryIds: z52.string().nullable().optional(),
30163
- filterStaffMemberId: z52.string().nullable().optional(),
30164
- filterVenueId: z52.string().nullable().optional(),
30165
- fetchInitialEventsOnMount: z52.boolean()
30170
+ filterCategoryIds: z51.string().nullable().optional(),
30171
+ filterStaffMemberId: z51.string().nullable().optional(),
30172
+ filterVenueId: z51.string().nullable().optional(),
30173
+ fetchInitialEventsOnMount: z51.boolean()
30166
30174
  });
30167
- var eventListingRenderSchema = z52.object({
30175
+ var eventListingRenderSchema = z51.object({
30168
30176
  display: eventListingDisplaySchema,
30169
30177
  hydration: eventListingHydrationSchema
30170
30178
  });
30171
30179
  var eventListingIslandMetaCodec = createZodCodec(
30172
- z52.object({
30173
- siteId: z52.string(),
30174
- apiBaseUrl: z52.string().optional(),
30180
+ z51.object({
30181
+ siteId: z51.string(),
30182
+ apiBaseUrl: z51.string().optional(),
30175
30183
  stage: previewStageSchema.optional()
30176
30184
  })
30177
30185
  );
@@ -30538,15 +30546,15 @@ var eventListingBlockDefinition = {
30538
30546
  };
30539
30547
 
30540
30548
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
30541
- import { z as z53 } from "zod";
30542
- var eventBlockKindSchema2 = z53.enum(eventBlockKindValues);
30543
- var eventSurfaceScopeSchema2 = z53.enum(eventSurfaceScopeValues);
30544
- var eventScheduleScopeSchema3 = z53.enum(eventScheduleScopeValues);
30545
- var eventCalendarSourceSchema = z53.object(
30549
+ import { z as z52 } from "zod";
30550
+ var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
30551
+ var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
30552
+ var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
30553
+ var eventCalendarSourceSchema = z52.object(
30546
30554
  {
30547
- events: z53.array(publicEventSchema).nullable().optional(),
30548
- siteId: z53.string(),
30549
- apiBaseUrl: z53.string().optional(),
30555
+ events: z52.array(publicEventSchema).nullable().optional(),
30556
+ siteId: z52.string(),
30557
+ apiBaseUrl: z52.string().optional(),
30550
30558
  stage: previewStageSchema.optional(),
30551
30559
  variant: eventCalendarDisplayModeSchema.nullable().optional(),
30552
30560
  displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
@@ -30554,78 +30562,80 @@ var eventCalendarSourceSchema = z53.object(
30554
30562
  listColumns: columnOptionSchema.optional(),
30555
30563
  layout: eventLayoutSchema.optional(),
30556
30564
  columns: columnOptionSchema.optional(),
30557
- eventsPerPage: z53.string().optional(),
30558
- paginationMode: z53.enum(["loadMore", "seeAllLink"]).optional(),
30559
- seeAllUrl: z53.string().optional(),
30560
- loadMoreText: z53.string().optional(),
30565
+ eventsPerPage: z52.string().optional(),
30566
+ paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
30567
+ seeAllUrl: z52.string().optional(),
30568
+ loadMoreText: z52.string().optional(),
30561
30569
  startOfWeek: weekStartSchema.optional(),
30562
30570
  calendarTabViews: calendarTabViewsSchema.optional(),
30563
- showFilters: z53.boolean().nullable().optional(),
30571
+ defaultCalendarView: eventCalendarDefaultViewSchema.optional(),
30572
+ showFilters: z52.boolean().nullable().optional(),
30564
30573
  showCategoryFilter: filterAutoShowSchema.optional(),
30565
- showVenueFilter: z53.boolean().nullable().optional(),
30566
- showStaffFilter: z53.boolean().nullable().optional(),
30574
+ showVenueFilter: z52.boolean().nullable().optional(),
30575
+ showStaffFilter: z52.boolean().nullable().optional(),
30567
30576
  kind: eventBlockKindSchema2.nullable().optional(),
30568
30577
  eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
30569
- filterEventPresets: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30578
+ filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30570
30579
  scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
30571
- filterCategoryIds: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
30572
- filterStaffMemberId: z53.string().nullable().optional(),
30573
- filterVenueId: z53.string().nullable().optional(),
30580
+ filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
30581
+ filterStaffMemberId: z52.string().nullable().optional(),
30582
+ filterVenueId: z52.string().nullable().optional(),
30574
30583
  buttonVariant: eventButtonVariantSchema.optional(),
30575
- buttonText: z53.string().optional(),
30576
- showVenue: z53.boolean().nullable().optional(),
30577
- showMap: z53.boolean().nullable().optional(),
30578
- showCapacity: z53.boolean().nullable().optional(),
30579
- emptyMessage: z53.string().optional(),
30580
- className: z53.string().optional()
30584
+ buttonText: z52.string().optional(),
30585
+ showVenue: z52.boolean().nullable().optional(),
30586
+ showMap: z52.boolean().nullable().optional(),
30587
+ showCapacity: z52.boolean().nullable().optional(),
30588
+ emptyMessage: z52.string().optional(),
30589
+ className: z52.string().optional()
30581
30590
  }
30582
30591
  );
30583
- var eventCalendarDisplaySchema = z53.object({
30584
- kind: z53.literal("event-calendar"),
30592
+ var eventCalendarDisplaySchema = z52.object({
30593
+ kind: z52.literal("event-calendar"),
30585
30594
  displayMode: eventCalendarDisplayModeSchema,
30586
- className: z53.string().nullable(),
30587
- events: z53.array(publicEventSchema),
30595
+ className: z52.string().nullable(),
30596
+ events: z52.array(publicEventSchema),
30588
30597
  listLayout: eventLayoutSchema,
30589
30598
  listColumns: columnOptionSchema,
30590
30599
  eventsPerPage: eventPageSizeSchema,
30591
30600
  paginationAction: eventListPaginationActionSchema,
30592
30601
  startOfWeek: weekStartSchema,
30593
30602
  calendarTabViews: calendarTabViewsSchema,
30594
- showFilters: z53.boolean(),
30603
+ defaultCalendarView: eventCalendarDefaultViewSchema,
30604
+ showFilters: z52.boolean(),
30595
30605
  showCategoryFilter: filterAutoShowSchema,
30596
- showVenueFilter: z53.boolean(),
30597
- showStaffFilter: z53.boolean(),
30606
+ showVenueFilter: z52.boolean(),
30607
+ showStaffFilter: z52.boolean(),
30598
30608
  eventKind: eventBlockKindSchema2,
30599
30609
  eventSurface: eventSurfaceScopeSchema2,
30600
- filterEventPresets: z53.string().nullable(),
30610
+ filterEventPresets: z52.string().nullable(),
30601
30611
  scheduleScope: eventScheduleScopeSchema3,
30602
- filterCategoryIds: z53.string().nullable(),
30603
- filterStaffMemberId: z53.string().nullable(),
30604
- filterVenueId: z53.string().nullable(),
30612
+ filterCategoryIds: z52.string().nullable(),
30613
+ filterStaffMemberId: z52.string().nullable(),
30614
+ filterVenueId: z52.string().nullable(),
30605
30615
  buttonVariant: eventButtonVariantSchema,
30606
- buttonText: z53.string(),
30607
- showVenue: z53.boolean(),
30608
- showMap: z53.boolean(),
30609
- showCapacity: z53.boolean(),
30610
- emptyMessage: z53.string()
30611
- });
30612
- var eventCalendarHydrationSchema = z53.object({
30613
- siteId: z53.string(),
30616
+ buttonText: z52.string(),
30617
+ showVenue: z52.boolean(),
30618
+ showMap: z52.boolean(),
30619
+ showCapacity: z52.boolean(),
30620
+ emptyMessage: z52.string()
30621
+ });
30622
+ var eventCalendarHydrationSchema = z52.object({
30623
+ siteId: z52.string(),
30614
30624
  stage: previewStageSchema.optional(),
30615
- prefetchedEvents: z53.boolean(),
30625
+ prefetchedEvents: z52.boolean(),
30616
30626
  eventKind: eventBlockKindSchema2,
30617
30627
  eventSurface: eventSurfaceScopeSchema2,
30618
- filterEventPresets: z53.string().nullable(),
30628
+ filterEventPresets: z52.string().nullable(),
30619
30629
  scheduleScope: eventScheduleScopeSchema3
30620
30630
  });
30621
- var eventCalendarRenderSchema = z53.object({
30631
+ var eventCalendarRenderSchema = z52.object({
30622
30632
  display: eventCalendarDisplaySchema,
30623
30633
  hydration: eventCalendarHydrationSchema
30624
30634
  });
30625
30635
  var eventCalendarIslandMetaCodec = createZodCodec(
30626
- z53.object({
30627
- siteId: z53.string(),
30628
- apiBaseUrl: z53.string().optional(),
30636
+ z52.object({
30637
+ siteId: z52.string(),
30638
+ apiBaseUrl: z52.string().optional(),
30629
30639
  stage: previewStageSchema.optional()
30630
30640
  })
30631
30641
  );
@@ -30655,6 +30665,7 @@ function buildEventCalendarDisplay(source) {
30655
30665
  }),
30656
30666
  startOfWeek: source.startOfWeek ?? "monday",
30657
30667
  calendarTabViews: source.calendarTabViews ?? "both",
30668
+ defaultCalendarView: source.defaultCalendarView ?? "month",
30658
30669
  showFilters: source.showFilters ?? true,
30659
30670
  showCategoryFilter: source.showCategoryFilter ?? "auto",
30660
30671
  showVenueFilter: source.showVenueFilter ?? false,
@@ -30717,6 +30728,9 @@ function normalizeEventCalendarContent(content) {
30717
30728
  ...variant ? { variant } : {},
30718
30729
  displayMode: normalizeEventCalendarDisplayMode(record.displayMode),
30719
30730
  listLayout: normalizeEventCalendarListLayout(record.listLayout),
30731
+ defaultCalendarView: normalizeEventCalendarDefaultView(
30732
+ record.defaultCalendarView
30733
+ ),
30720
30734
  kind,
30721
30735
  eventSurface: normalizeEventSurfaceScope(record.eventSurface),
30722
30736
  filterEventPresets: normalizeEventSurfacePresets(record.filterEventPresets),
@@ -30734,6 +30748,9 @@ function normalizeEventCalendarDisplayMode(value) {
30734
30748
  function normalizeEventCalendarListLayout(value) {
30735
30749
  return isEventCalendarListLayout(value) ? value : void 0;
30736
30750
  }
30751
+ function normalizeEventCalendarDefaultView(value) {
30752
+ return isEventCalendarDefaultView(value) ? value : void 0;
30753
+ }
30737
30754
  var eventCalendarLayout = [
30738
30755
  styledSection({
30739
30756
  children: sectionContainer(
@@ -30793,6 +30810,9 @@ var eventCalendarLayout = [
30793
30810
  calendarTabViews: {
30794
30811
  $bind: { from: "content.calendarTabViews", fallback: "both" }
30795
30812
  },
30813
+ defaultCalendarView: {
30814
+ $bind: { from: "content.defaultCalendarView", fallback: "month" }
30815
+ },
30796
30816
  // Filtering options
30797
30817
  showFilters: {
30798
30818
  $bind: { from: "content.showFilters", fallback: true }
@@ -30859,8 +30879,7 @@ var eventCalendarAdditionalFields = [
30859
30879
  defaultValue: "combined",
30860
30880
  options: [
30861
30881
  { value: "combined", label: "Combined (List + Calendar tabs)" },
30862
- { value: "month", label: "Month calendar" },
30863
- { value: "week", label: "Week agenda" },
30882
+ { value: "calendar", label: "Calendar" },
30864
30883
  { value: "timetable", label: "Timetable" },
30865
30884
  { value: "list", label: "List" }
30866
30885
  ],
@@ -30899,7 +30918,12 @@ var eventCalendarAdditionalFields = [
30899
30918
  ],
30900
30919
  ui: {
30901
30920
  intent: "display",
30902
- visibleWhen: { field: "listLayout", equals: "grid" }
30921
+ visibleWhen: {
30922
+ allOf: [
30923
+ { field: "variant", oneOf: ["combined", "list"] },
30924
+ { field: "listLayout", equals: "grid" }
30925
+ ]
30926
+ }
30903
30927
  }
30904
30928
  },
30905
30929
  {
@@ -30947,7 +30971,12 @@ var eventCalendarAdditionalFields = [
30947
30971
  required: false,
30948
30972
  ui: {
30949
30973
  intent: "display",
30950
- visibleWhen: { field: "paginationMode", equals: "seeAllLink" }
30974
+ visibleWhen: {
30975
+ allOf: [
30976
+ { field: "variant", oneOf: ["combined", "list"] },
30977
+ { field: "paginationMode", equals: "seeAllLink" }
30978
+ ]
30979
+ }
30951
30980
  }
30952
30981
  },
30953
30982
  {
@@ -30980,7 +31009,7 @@ var eventCalendarAdditionalFields = [
30980
31009
  intent: "display",
30981
31010
  visibleWhen: {
30982
31011
  field: "variant",
30983
- oneOf: ["combined", "month", "week"]
31012
+ oneOf: ["combined", "calendar", "timetable"]
30984
31013
  }
30985
31014
  }
30986
31015
  },
@@ -31003,6 +31032,33 @@ var eventCalendarAdditionalFields = [
31003
31032
  visibleWhen: { field: "variant", equals: "combined" }
31004
31033
  }
31005
31034
  },
31035
+ {
31036
+ id: "defaultCalendarView",
31037
+ type: "select",
31038
+ label: "Calendar view",
31039
+ description: "Choose the standalone calendar view, or the first view in combined mode",
31040
+ required: false,
31041
+ multiple: false,
31042
+ defaultValue: "month",
31043
+ options: [
31044
+ { value: "month", label: "Month" },
31045
+ { value: "week", label: "Week" }
31046
+ ],
31047
+ ui: {
31048
+ intent: "display",
31049
+ visibleWhen: {
31050
+ anyOf: [
31051
+ { field: "variant", equals: "calendar" },
31052
+ {
31053
+ allOf: [
31054
+ { field: "variant", equals: "combined" },
31055
+ { field: "calendarTabViews", equals: "both" }
31056
+ ]
31057
+ }
31058
+ ]
31059
+ }
31060
+ }
31061
+ },
31006
31062
  // Filtering options
31007
31063
  {
31008
31064
  id: "kind",
@@ -31030,7 +31086,7 @@ var eventCalendarAdditionalFields = [
31030
31086
  intent: "display",
31031
31087
  visibleWhen: {
31032
31088
  field: "variant",
31033
- oneOf: ["combined", "list", "timetable"]
31089
+ oneOf: ["combined", "calendar", "list", "timetable"]
31034
31090
  }
31035
31091
  }
31036
31092
  },
@@ -31050,8 +31106,10 @@ var eventCalendarAdditionalFields = [
31050
31106
  ui: {
31051
31107
  intent: "display",
31052
31108
  visibleWhen: {
31053
- field: "variant",
31054
- oneOf: ["combined", "list", "timetable"]
31109
+ allOf: [
31110
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31111
+ { field: "showFilters", equals: true }
31112
+ ]
31055
31113
  }
31056
31114
  }
31057
31115
  },
@@ -31065,8 +31123,10 @@ var eventCalendarAdditionalFields = [
31065
31123
  ui: {
31066
31124
  intent: "display",
31067
31125
  visibleWhen: {
31068
- field: "variant",
31069
- oneOf: ["combined", "list", "timetable"]
31126
+ allOf: [
31127
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31128
+ { field: "showFilters", equals: true }
31129
+ ]
31070
31130
  }
31071
31131
  }
31072
31132
  },
@@ -31080,8 +31140,10 @@ var eventCalendarAdditionalFields = [
31080
31140
  ui: {
31081
31141
  intent: "display",
31082
31142
  visibleWhen: {
31083
- field: "variant",
31084
- oneOf: ["combined", "list", "timetable"]
31143
+ allOf: [
31144
+ { field: "variant", oneOf: ["combined", "calendar", "list", "timetable"] },
31145
+ { field: "showFilters", equals: true }
31146
+ ]
31085
31147
  }
31086
31148
  }
31087
31149
  },
@@ -31095,8 +31157,15 @@ var eventCalendarAdditionalFields = [
31095
31157
  ui: {
31096
31158
  intent: "display",
31097
31159
  visibleWhen: {
31098
- field: "variant",
31099
- oneOf: ["combined", "list", "week", "timetable"]
31160
+ anyOf: [
31161
+ { field: "variant", oneOf: ["combined", "list", "timetable"] },
31162
+ {
31163
+ allOf: [
31164
+ { field: "variant", equals: "calendar" },
31165
+ { field: "defaultCalendarView", equals: "week" }
31166
+ ]
31167
+ }
31168
+ ]
31100
31169
  }
31101
31170
  }
31102
31171
  },
@@ -31212,8 +31281,7 @@ var eventCalendarAdditionalFields = [
31212
31281
  ];
31213
31282
  var eventCalendarVariants = {
31214
31283
  combined: eventCalendarLayout[0],
31215
- month: eventCalendarLayout[0],
31216
- week: eventCalendarLayout[0],
31284
+ calendar: eventCalendarLayout[0],
31217
31285
  timetable: eventCalendarLayout[0],
31218
31286
  list: eventCalendarLayout[0]
31219
31287
  };
@@ -31225,8 +31293,7 @@ var eventCalendarDerivedFields = [
31225
31293
  multiple: false,
31226
31294
  options: [
31227
31295
  { value: "combined" },
31228
- { value: "month" },
31229
- { value: "week" },
31296
+ { value: "calendar" },
31230
31297
  { value: "timetable" },
31231
31298
  { value: "list" }
31232
31299
  ]
@@ -31239,6 +31306,13 @@ var eventCalendarDerivedFields = [
31239
31306
  options: eventCalendarListLayoutOptions.map((option) => ({
31240
31307
  value: option.id
31241
31308
  }))
31309
+ },
31310
+ {
31311
+ id: "defaultCalendarView",
31312
+ type: "select",
31313
+ required: false,
31314
+ multiple: false,
31315
+ options: [{ value: "month" }, { value: "week" }]
31242
31316
  }
31243
31317
  ];
31244
31318
  var eventCalendarContentShape = {
@@ -31287,8 +31361,7 @@ var eventCalendarConfig = {
31287
31361
  defaultVariant: "combined",
31288
31362
  variantOptions: {
31289
31363
  combined: { label: "Combined" },
31290
- month: { label: "Month" },
31291
- week: { label: "Week" },
31364
+ calendar: { label: "Calendar" },
31292
31365
  timetable: { label: "Timetable" },
31293
31366
  list: { label: "List" }
31294
31367
  }
@@ -31334,7 +31407,7 @@ var eventCalendarBlockDefinition = {
31334
31407
  };
31335
31408
 
31336
31409
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31337
- import { z as z54 } from "zod";
31410
+ import { z as z53 } from "zod";
31338
31411
 
31339
31412
  // ../blocks/src/system/blocks/offerings-preview/model.ts
31340
31413
  var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
@@ -31426,13 +31499,13 @@ function isRecord5(value) {
31426
31499
  }
31427
31500
 
31428
31501
  // ../blocks/src/system/blocks/offerings-preview/index.ts
31429
- var publicRouteCandidatesSchema = z54.object({
31430
- routes: z54.array(z54.object({
31431
- entityId: z54.string(),
31432
- path: z54.string(),
31433
- title: z54.string(),
31434
- kind: z54.enum(["page", "content"]),
31435
- contentTypeKey: z54.string().nullable().optional()
31502
+ var publicRouteCandidatesSchema = z53.object({
31503
+ routes: z53.array(z53.object({
31504
+ entityId: z53.string(),
31505
+ path: z53.string(),
31506
+ title: z53.string(),
31507
+ kind: z53.enum(["page", "content"]),
31508
+ contentTypeKey: z53.string().nullable().optional()
31436
31509
  }))
31437
31510
  });
31438
31511
  var groupOverrideFields = [
@@ -31830,7 +31903,7 @@ function isRecord6(value) {
31830
31903
  }
31831
31904
 
31832
31905
  // ../blocks/src/system/blocks/embed.ts
31833
- import { z as z55 } from "zod";
31906
+ import { z as z54 } from "zod";
31834
31907
  var embedFields = [
31835
31908
  // Section heading
31836
31909
  parseFieldDefinition({
@@ -32061,18 +32134,18 @@ var embedManifest = createBlockManifest({
32061
32134
  spacing: "lg"
32062
32135
  }
32063
32136
  });
32064
- var embedEntrySchema = z55.object({
32065
- id: z55.string(),
32066
- identifier: z55.string(),
32067
- title: z55.string(),
32068
- slug: z55.string().nullable().optional(),
32069
- content: z55.record(z55.string(), z55.unknown()).optional(),
32070
- publishedAt: z55.string().nullable().optional()
32137
+ var embedEntrySchema = z54.object({
32138
+ id: z54.string(),
32139
+ identifier: z54.string(),
32140
+ title: z54.string(),
32141
+ slug: z54.string().nullable().optional(),
32142
+ content: z54.record(z54.string(), z54.unknown()).optional(),
32143
+ publishedAt: z54.string().nullable().optional()
32071
32144
  });
32072
32145
  var embedBlockDefinition = {
32073
32146
  manifest: embedManifest,
32074
32147
  dataSchemas: {
32075
- entries: z55.array(embedEntrySchema).optional()
32148
+ entries: z54.array(embedEntrySchema).optional()
32076
32149
  },
32077
32150
  dataLoaders: {
32078
32151
  entries: {
@@ -33255,53 +33328,50 @@ var fileDownloadBlockDefinition = {
33255
33328
  manifest: fileDownloadManifest
33256
33329
  };
33257
33330
 
33258
- // ../blocks/src/system/blocks/shop.ts
33259
- import { z as z59 } from "zod";
33260
-
33261
33331
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33262
- import { z as z58 } from "zod";
33332
+ import { z as z57 } from "zod";
33263
33333
 
33264
33334
  // ../blocks/src/system/blocks/products/shared.ts
33265
- import { z as z56 } from "zod";
33266
- var publicProductVariantSchema = z56.object({
33267
- id: z56.string(),
33268
- title: z56.string(),
33269
- sku: z56.string().nullable(),
33270
- priceCents: z56.number(),
33271
- stockQuantity: z56.number().nullable(),
33272
- soldOut: z56.boolean()
33273
- });
33274
- var publicProductSchema = z56.object({
33275
- id: z56.string(),
33276
- contentEntryId: z56.string().nullable(),
33277
- title: z56.string(),
33278
- slug: z56.string(),
33279
- path: z56.string().nullable(),
33280
- status: z56.enum(["draft", "active"]),
33281
- priceCents: z56.number(),
33282
- currency: z56.string(),
33283
- productType: z56.enum(["physical", "digital"]),
33284
- requiresShipping: z56.boolean(),
33285
- hasVariants: z56.boolean(),
33286
- trackInventory: z56.boolean(),
33287
- soldOut: z56.boolean(),
33288
- category: z56.object({
33289
- id: z56.string(),
33290
- name: z56.string(),
33291
- slug: z56.string()
33335
+ import { z as z55 } from "zod";
33336
+ var publicProductVariantSchema = z55.object({
33337
+ id: z55.string(),
33338
+ title: z55.string(),
33339
+ sku: z55.string().nullable(),
33340
+ priceCents: z55.number(),
33341
+ stockQuantity: z55.number().nullable(),
33342
+ soldOut: z55.boolean()
33343
+ });
33344
+ var publicProductSchema = z55.object({
33345
+ id: z55.string(),
33346
+ contentEntryId: z55.string().nullable(),
33347
+ title: z55.string(),
33348
+ slug: z55.string(),
33349
+ path: z55.string().nullable(),
33350
+ status: z55.enum(["draft", "active"]),
33351
+ priceCents: z55.number(),
33352
+ currency: z55.string(),
33353
+ productType: z55.enum(["physical", "digital"]),
33354
+ requiresShipping: z55.boolean(),
33355
+ hasVariants: z55.boolean(),
33356
+ trackInventory: z55.boolean(),
33357
+ soldOut: z55.boolean(),
33358
+ category: z55.object({
33359
+ id: z55.string(),
33360
+ name: z55.string(),
33361
+ slug: z55.string()
33292
33362
  }).nullable(),
33293
- summary: z56.string().nullable(),
33294
- body: z56.unknown().nullable(),
33295
- gallery: z56.array(
33296
- z56.object({
33297
- url: z56.string(),
33298
- alt: z56.string().nullable()
33363
+ summary: z55.string().nullable(),
33364
+ body: z55.unknown().nullable(),
33365
+ gallery: z55.array(
33366
+ z55.object({
33367
+ url: z55.string(),
33368
+ alt: z55.string().nullable()
33299
33369
  })
33300
33370
  ),
33301
- variants: z56.array(publicProductVariantSchema)
33371
+ variants: z55.array(publicProductVariantSchema)
33302
33372
  });
33303
- var publicProductsResponseSchema = z56.object({
33304
- products: z56.array(publicProductSchema)
33373
+ var publicProductsResponseSchema = z55.object({
33374
+ products: z55.array(publicProductSchema)
33305
33375
  });
33306
33376
 
33307
33377
  // ../blocks/src/system/runtime/api/creditProducts.ts
@@ -33365,27 +33435,27 @@ function deriveCreditProductLabels(products, options = {}) {
33365
33435
  }
33366
33436
 
33367
33437
  // ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
33368
- import { z as z57 } from "zod";
33369
- var storedProductCartItemSchema = z57.object({
33370
- kind: z57.literal("product"),
33371
- productId: z57.string().min(1),
33372
- productCategoryId: z57.string().min(1).optional().nullable(),
33373
- variantId: z57.string().min(1).optional().nullable(),
33374
- title: z57.string().min(1),
33375
- variantTitle: z57.string().optional().nullable(),
33376
- quantity: z57.number().finite(),
33377
- unitPriceCents: z57.number().finite(),
33378
- currency: z57.string().min(1),
33379
- imageUrl: z57.string().optional().nullable(),
33380
- soldOut: z57.boolean().optional()
33381
- });
33382
- var storedPassCartItemSchema = z57.object({
33383
- kind: z57.literal("pass"),
33384
- passId: z57.string().min(1),
33385
- title: z57.string().min(1),
33386
- quantity: z57.number().finite().optional(),
33387
- unitPriceCents: z57.number().finite(),
33388
- currency: z57.string().min(1)
33438
+ import { z as z56 } from "zod";
33439
+ var storedProductCartItemSchema = z56.object({
33440
+ kind: z56.literal("product"),
33441
+ productId: z56.string().min(1),
33442
+ productCategoryId: z56.string().min(1).optional().nullable(),
33443
+ variantId: z56.string().min(1).optional().nullable(),
33444
+ title: z56.string().min(1),
33445
+ variantTitle: z56.string().optional().nullable(),
33446
+ quantity: z56.number().finite(),
33447
+ unitPriceCents: z56.number().finite(),
33448
+ currency: z56.string().min(1),
33449
+ imageUrl: z56.string().optional().nullable(),
33450
+ soldOut: z56.boolean().optional()
33451
+ });
33452
+ var storedPassCartItemSchema = z56.object({
33453
+ kind: z56.literal("pass"),
33454
+ passId: z56.string().min(1),
33455
+ title: z56.string().min(1),
33456
+ quantity: z56.number().finite().optional(),
33457
+ unitPriceCents: z56.number().finite(),
33458
+ currency: z56.string().min(1)
33389
33459
  });
33390
33460
  function deriveCommerceCheckoutState(state) {
33391
33461
  if (state.items.length === 0) {
@@ -33619,214 +33689,214 @@ function formatValidity(days) {
33619
33689
  }
33620
33690
 
33621
33691
  // ../blocks/src/system/runtime/nodes/shop.interactive.ts
33622
- var shopModeSchema = z58.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
33623
- var contentEntrySchema3 = z58.object({
33624
- id: z58.string().nullable().optional(),
33625
- slug: z58.string().nullable().optional()
33692
+ var shopModeSchema = z57.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
33693
+ var contentEntrySchema3 = z57.object({
33694
+ id: z57.string().nullable().optional(),
33695
+ slug: z57.string().nullable().optional()
33626
33696
  }).nullable();
33627
- var shopSourceSchema = z58.object({
33628
- className: z58.string().nullable().optional(),
33697
+ var shopSourceSchema = z57.object({
33698
+ className: z57.string().nullable().optional(),
33629
33699
  mode: shopModeSchema.optional(),
33630
- heading: z58.string().nullable().optional(),
33631
- productSlug: z58.string().nullable().optional(),
33632
- showPasses: z58.boolean().optional(),
33633
- showMemberships: z58.boolean().optional(),
33634
- layout: z58.enum(["grid", "list"]).optional(),
33635
- columns: z58.string().optional(),
33636
- showDescriptions: z58.boolean().optional(),
33637
- showSummary: z58.boolean().optional(),
33638
- showBody: z58.boolean().optional(),
33639
- showPrices: z58.boolean().optional(),
33640
- showValidityPeriod: z58.boolean().optional(),
33641
- showPricePerCredit: z58.boolean().nullable().optional(),
33642
- passesHeading: z58.string().optional(),
33643
- membershipsHeading: z58.string().optional(),
33644
- buyButtonText: z58.string().optional(),
33645
- addButtonText: z58.string().optional(),
33646
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"]).optional(),
33647
- subscribeButtonText: z58.string().optional(),
33648
- emptyStateText: z58.string().optional(),
33649
- checkoutButtonText: z58.string().optional(),
33650
- clearButtonText: z58.string().optional(),
33651
- submitButtonText: z58.string().optional(),
33700
+ heading: z57.string().nullable().optional(),
33701
+ productSlug: z57.string().nullable().optional(),
33702
+ showPasses: z57.boolean().optional(),
33703
+ showMemberships: z57.boolean().optional(),
33704
+ layout: z57.enum(["grid", "list"]).optional(),
33705
+ columns: z57.string().optional(),
33706
+ showDescriptions: z57.boolean().optional(),
33707
+ showSummary: z57.boolean().optional(),
33708
+ showBody: z57.boolean().optional(),
33709
+ showPrices: z57.boolean().optional(),
33710
+ showValidityPeriod: z57.boolean().optional(),
33711
+ showPricePerCredit: z57.boolean().nullable().optional(),
33712
+ passesHeading: z57.string().optional(),
33713
+ membershipsHeading: z57.string().optional(),
33714
+ buyButtonText: z57.string().optional(),
33715
+ addButtonText: z57.string().optional(),
33716
+ passPurchaseMode: z57.enum(["add_to_cart", "buy_now"]).optional(),
33717
+ subscribeButtonText: z57.string().optional(),
33718
+ emptyStateText: z57.string().optional(),
33719
+ checkoutButtonText: z57.string().optional(),
33720
+ clearButtonText: z57.string().optional(),
33721
+ submitButtonText: z57.string().optional(),
33652
33722
  contentEntry: contentEntrySchema3.optional(),
33653
- passes: z58.array(publicPassProductSchema).nullable().optional(),
33654
- memberships: z58.array(publicMembershipProductSchema).nullable().optional(),
33655
- products: z58.array(publicProductSchema).nullable().optional(),
33656
- siteId: z58.string().optional(),
33657
- apiBaseUrl: z58.string().optional(),
33723
+ passes: z57.array(publicPassProductSchema).nullable().optional(),
33724
+ memberships: z57.array(publicMembershipProductSchema).nullable().optional(),
33725
+ products: z57.array(publicProductSchema).nullable().optional(),
33726
+ siteId: z57.string().optional(),
33727
+ apiBaseUrl: z57.string().optional(),
33658
33728
  stage: previewStageSchema.optional()
33659
33729
  });
33660
- var productVariantOptionDisplaySchema = z58.object({
33661
- id: z58.string(),
33662
- label: z58.string(),
33663
- soldOut: z58.boolean()
33664
- });
33665
- var productCardDisplaySchema = z58.object({
33666
- productId: z58.string(),
33667
- title: z58.string(),
33668
- path: z58.string().nullable(),
33669
- summary: z58.string().nullable(),
33670
- priceLabel: z58.string().nullable(),
33671
- image: z58.object({
33672
- url: z58.string(),
33673
- alt: z58.string().nullable()
33730
+ var productVariantOptionDisplaySchema = z57.object({
33731
+ id: z57.string(),
33732
+ label: z57.string(),
33733
+ soldOut: z57.boolean()
33734
+ });
33735
+ var productCardDisplaySchema = z57.object({
33736
+ productId: z57.string(),
33737
+ title: z57.string(),
33738
+ path: z57.string().nullable(),
33739
+ summary: z57.string().nullable(),
33740
+ priceLabel: z57.string().nullable(),
33741
+ image: z57.object({
33742
+ url: z57.string(),
33743
+ alt: z57.string().nullable()
33674
33744
  }).nullable(),
33675
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33676
- selectedVariantId: z58.string().nullable(),
33677
- selectionLabel: z58.string(),
33678
- actionLabel: z58.string(),
33679
- soldOut: z58.boolean()
33680
- });
33681
- var productListDisplaySchema = z58.object({
33682
- kind: z58.literal("product-list"),
33683
- state: z58.enum(["empty", "ready"]),
33684
- heading: z58.string().nullable(),
33685
- className: z58.string().nullable(),
33686
- layout: z58.enum(["grid", "list"]),
33687
- columns: z58.string(),
33688
- emptyMessage: z58.string(),
33689
- cards: z58.array(productCardDisplaySchema)
33690
- });
33691
- var productDetailDisplaySchema = z58.discriminatedUnion("state", [
33692
- z58.object({
33693
- kind: z58.literal("product-detail"),
33694
- state: z58.literal("empty"),
33695
- heading: z58.string().nullable(),
33696
- className: z58.string().nullable(),
33697
- emptyMessage: z58.string()
33745
+ variantOptions: z57.array(productVariantOptionDisplaySchema),
33746
+ selectedVariantId: z57.string().nullable(),
33747
+ selectionLabel: z57.string(),
33748
+ actionLabel: z57.string(),
33749
+ soldOut: z57.boolean()
33750
+ });
33751
+ var productListDisplaySchema = z57.object({
33752
+ kind: z57.literal("product-list"),
33753
+ state: z57.enum(["empty", "ready"]),
33754
+ heading: z57.string().nullable(),
33755
+ className: z57.string().nullable(),
33756
+ layout: z57.enum(["grid", "list"]),
33757
+ columns: z57.string(),
33758
+ emptyMessage: z57.string(),
33759
+ cards: z57.array(productCardDisplaySchema)
33760
+ });
33761
+ var productDetailDisplaySchema = z57.discriminatedUnion("state", [
33762
+ z57.object({
33763
+ kind: z57.literal("product-detail"),
33764
+ state: z57.literal("empty"),
33765
+ heading: z57.string().nullable(),
33766
+ className: z57.string().nullable(),
33767
+ emptyMessage: z57.string()
33698
33768
  }),
33699
- z58.object({
33700
- kind: z58.literal("product-detail"),
33701
- state: z58.literal("ready"),
33702
- heading: z58.string().nullable(),
33703
- className: z58.string().nullable(),
33704
- title: z58.string(),
33705
- priceLabel: z58.string(),
33706
- summary: z58.string().nullable(),
33707
- categoryLabel: z58.string().nullable(),
33708
- gallery: z58.array(z58.object({
33709
- url: z58.string(),
33710
- alt: z58.string().nullable()
33769
+ z57.object({
33770
+ kind: z57.literal("product-detail"),
33771
+ state: z57.literal("ready"),
33772
+ heading: z57.string().nullable(),
33773
+ className: z57.string().nullable(),
33774
+ title: z57.string(),
33775
+ priceLabel: z57.string(),
33776
+ summary: z57.string().nullable(),
33777
+ categoryLabel: z57.string().nullable(),
33778
+ gallery: z57.array(z57.object({
33779
+ url: z57.string(),
33780
+ alt: z57.string().nullable()
33711
33781
  })),
33712
- variantOptions: z58.array(productVariantOptionDisplaySchema),
33713
- selectedVariantId: z58.string().nullable(),
33714
- selectionLabel: z58.string(),
33715
- actionLabel: z58.string(),
33716
- soldOut: z58.boolean(),
33717
- body: z58.unknown().nullable()
33782
+ variantOptions: z57.array(productVariantOptionDisplaySchema),
33783
+ selectedVariantId: z57.string().nullable(),
33784
+ selectionLabel: z57.string(),
33785
+ actionLabel: z57.string(),
33786
+ soldOut: z57.boolean(),
33787
+ body: z57.unknown().nullable()
33718
33788
  })
33719
33789
  ]);
33720
- var passCardDisplaySchema = z58.object({
33721
- id: z58.string(),
33722
- title: z58.string(),
33723
- description: z58.string().nullable(),
33724
- priceLabel: z58.string(),
33725
- creditsLabel: z58.string(),
33726
- perCreditLabel: z58.string().nullable(),
33727
- validityLabel: z58.string().nullable(),
33728
- actionLabel: z58.string()
33729
- });
33730
- var membershipCardDisplaySchema = z58.object({
33731
- id: z58.string(),
33732
- title: z58.string(),
33733
- description: z58.string().nullable(),
33734
- priceLabel: z58.string(),
33735
- intervalLabel: z58.string(),
33736
- actionLabel: z58.string()
33737
- });
33738
- var passesMembershipsDisplaySchema = z58.object({
33739
- kind: z58.literal("passes-memberships"),
33740
- state: z58.enum(["empty", "ready"]),
33741
- className: z58.string().nullable(),
33742
- layout: z58.enum(["grid", "list"]),
33743
- columns: z58.string(),
33744
- emptyMessage: z58.string(),
33745
- passesHeading: z58.string(),
33746
- membershipsHeading: z58.string(),
33747
- passes: z58.array(passCardDisplaySchema),
33748
- memberships: z58.array(membershipCardDisplaySchema)
33749
- });
33750
- var cartLineDisplaySchema = z58.object({
33751
- key: z58.string(),
33752
- title: z58.string(),
33753
- priceLabel: z58.string(),
33754
- quantity: z58.number(),
33755
- quantityEditable: z58.boolean()
33756
- });
33757
- var cartDisplaySchema = z58.object({
33758
- kind: z58.literal("cart"),
33759
- state: z58.enum(["empty", "ready"]),
33760
- heading: z58.string().nullable(),
33761
- className: z58.string().nullable(),
33762
- emptyMessage: z58.string(),
33763
- supportText: z58.string().nullable(),
33764
- items: z58.array(cartLineDisplaySchema),
33765
- subtotalLabel: z58.string().nullable(),
33766
- checkoutButtonText: z58.string(),
33767
- clearButtonText: z58.string()
33768
- });
33769
- var checkoutDisplaySchema = z58.object({
33770
- kind: z58.literal("checkout"),
33771
- state: z58.enum(["empty", "blocked", "ready"]),
33772
- heading: z58.string().nullable(),
33773
- className: z58.string().nullable(),
33774
- message: z58.string().nullable(),
33775
- submitButtonText: z58.string()
33776
- });
33777
- var passesMembershipsHydrationSchema = z58.object({
33778
- passes: z58.array(publicPassProductSchema),
33779
- memberships: z58.array(publicMembershipProductSchema),
33780
- passPurchaseMode: z58.enum(["add_to_cart", "buy_now"])
33781
- });
33782
- var productListHydrationSchema = z58.object({
33783
- products: z58.array(publicProductSchema),
33784
- showSummary: z58.boolean(),
33785
- showPrices: z58.boolean(),
33786
- addButtonText: z58.string()
33787
- });
33788
- var productDetailHydrationSchema = z58.object({
33789
- products: z58.array(publicProductSchema),
33790
- productId: z58.string().nullable(),
33791
- showSummary: z58.boolean(),
33792
- showBody: z58.boolean(),
33793
- addButtonText: z58.string()
33794
- });
33795
- var cartHydrationSchema = z58.object({
33796
- emptyStateText: z58.string(),
33797
- checkoutButtonText: z58.string(),
33798
- clearButtonText: z58.string()
33799
- });
33800
- var checkoutHydrationSchema = z58.object({
33801
- emptyStateText: z58.string(),
33802
- submitButtonText: z58.string()
33803
- });
33804
- var passesMembershipsRenderSchema = z58.object({
33790
+ var passCardDisplaySchema = z57.object({
33791
+ id: z57.string(),
33792
+ title: z57.string(),
33793
+ description: z57.string().nullable(),
33794
+ priceLabel: z57.string(),
33795
+ creditsLabel: z57.string(),
33796
+ perCreditLabel: z57.string().nullable(),
33797
+ validityLabel: z57.string().nullable(),
33798
+ actionLabel: z57.string()
33799
+ });
33800
+ var membershipCardDisplaySchema = z57.object({
33801
+ id: z57.string(),
33802
+ title: z57.string(),
33803
+ description: z57.string().nullable(),
33804
+ priceLabel: z57.string(),
33805
+ intervalLabel: z57.string(),
33806
+ actionLabel: z57.string()
33807
+ });
33808
+ var passesMembershipsDisplaySchema = z57.object({
33809
+ kind: z57.literal("passes-memberships"),
33810
+ state: z57.enum(["empty", "ready"]),
33811
+ className: z57.string().nullable(),
33812
+ layout: z57.enum(["grid", "list"]),
33813
+ columns: z57.string(),
33814
+ emptyMessage: z57.string(),
33815
+ passesHeading: z57.string(),
33816
+ membershipsHeading: z57.string(),
33817
+ passes: z57.array(passCardDisplaySchema),
33818
+ memberships: z57.array(membershipCardDisplaySchema)
33819
+ });
33820
+ var cartLineDisplaySchema = z57.object({
33821
+ key: z57.string(),
33822
+ title: z57.string(),
33823
+ priceLabel: z57.string(),
33824
+ quantity: z57.number(),
33825
+ quantityEditable: z57.boolean()
33826
+ });
33827
+ var cartDisplaySchema = z57.object({
33828
+ kind: z57.literal("cart"),
33829
+ state: z57.enum(["empty", "ready"]),
33830
+ heading: z57.string().nullable(),
33831
+ className: z57.string().nullable(),
33832
+ emptyMessage: z57.string(),
33833
+ supportText: z57.string().nullable(),
33834
+ items: z57.array(cartLineDisplaySchema),
33835
+ subtotalLabel: z57.string().nullable(),
33836
+ checkoutButtonText: z57.string(),
33837
+ clearButtonText: z57.string()
33838
+ });
33839
+ var checkoutDisplaySchema = z57.object({
33840
+ kind: z57.literal("checkout"),
33841
+ state: z57.enum(["empty", "blocked", "ready"]),
33842
+ heading: z57.string().nullable(),
33843
+ className: z57.string().nullable(),
33844
+ message: z57.string().nullable(),
33845
+ submitButtonText: z57.string()
33846
+ });
33847
+ var passesMembershipsHydrationSchema = z57.object({
33848
+ passes: z57.array(publicPassProductSchema),
33849
+ memberships: z57.array(publicMembershipProductSchema),
33850
+ passPurchaseMode: z57.enum(["add_to_cart", "buy_now"])
33851
+ });
33852
+ var productListHydrationSchema = z57.object({
33853
+ products: z57.array(publicProductSchema),
33854
+ showSummary: z57.boolean(),
33855
+ showPrices: z57.boolean(),
33856
+ addButtonText: z57.string()
33857
+ });
33858
+ var productDetailHydrationSchema = z57.object({
33859
+ products: z57.array(publicProductSchema),
33860
+ productId: z57.string().nullable(),
33861
+ showSummary: z57.boolean(),
33862
+ showBody: z57.boolean(),
33863
+ addButtonText: z57.string()
33864
+ });
33865
+ var cartHydrationSchema = z57.object({
33866
+ emptyStateText: z57.string(),
33867
+ checkoutButtonText: z57.string(),
33868
+ clearButtonText: z57.string()
33869
+ });
33870
+ var checkoutHydrationSchema = z57.object({
33871
+ emptyStateText: z57.string(),
33872
+ submitButtonText: z57.string()
33873
+ });
33874
+ var passesMembershipsRenderSchema = z57.object({
33805
33875
  display: passesMembershipsDisplaySchema,
33806
33876
  hydration: passesMembershipsHydrationSchema
33807
33877
  });
33808
- var productListRenderSchema = z58.object({
33878
+ var productListRenderSchema = z57.object({
33809
33879
  display: productListDisplaySchema,
33810
33880
  hydration: productListHydrationSchema
33811
33881
  });
33812
- var productDetailRenderSchema = z58.object({
33882
+ var productDetailRenderSchema = z57.object({
33813
33883
  display: productDetailDisplaySchema,
33814
33884
  hydration: productDetailHydrationSchema
33815
33885
  });
33816
- var cartRenderSchema = z58.object({
33886
+ var cartRenderSchema = z57.object({
33817
33887
  display: cartDisplaySchema,
33818
33888
  hydration: cartHydrationSchema
33819
33889
  });
33820
- var checkoutRenderSchema = z58.object({
33890
+ var checkoutRenderSchema = z57.object({
33821
33891
  display: checkoutDisplaySchema,
33822
33892
  hydration: checkoutHydrationSchema
33823
33893
  });
33824
33894
  function resolveShowPricePerCredit(source) {
33825
33895
  return source.showPricePerCredit ?? true;
33826
33896
  }
33827
- var shopIslandMetaCodec = createZodCodec(z58.object({
33828
- siteId: z58.string().optional(),
33829
- apiBaseUrl: z58.string().optional(),
33897
+ var shopIslandMetaCodec = createZodCodec(z57.object({
33898
+ siteId: z57.string().optional(),
33899
+ apiBaseUrl: z57.string().optional(),
33830
33900
  stage: previewStageSchema.optional()
33831
33901
  }));
33832
33902
  var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
@@ -34204,9 +34274,9 @@ var shopBlockDefinition = {
34204
34274
  runtime: shopBlockRuntime,
34205
34275
  dataSchemas: {
34206
34276
  // listPublicPasses returns { passes: [...] }
34207
- passes: z59.object({ passes: z59.array(publicPassProductSchema) }).optional(),
34277
+ passes: publicPassProductCollectionSchema.optional(),
34208
34278
  // listPublicMemberships returns { memberships: [...] }
34209
- memberships: z59.object({ memberships: z59.array(publicMembershipProductSchema) }).optional()
34279
+ memberships: publicMembershipProductCollectionSchema.optional()
34210
34280
  },
34211
34281
  dataLoaders: {
34212
34282
  // Load passes for display
@@ -34229,7 +34299,7 @@ var shopBlockDefinition = {
34229
34299
  };
34230
34300
 
34231
34301
  // ../blocks/src/system/blocks/product-list.ts
34232
- import { z as z60 } from "zod";
34302
+ import { z as z58 } from "zod";
34233
34303
  var productListManifest = createBlockManifest({
34234
34304
  id: "block.product-list",
34235
34305
  version: "1.0.0",
@@ -34362,7 +34432,7 @@ var productListBlockDefinition = {
34362
34432
  }
34363
34433
  }
34364
34434
  };
34365
- var productListDataSchema = z60.object({
34435
+ var productListDataSchema = z58.object({
34366
34436
  products: publicProductsResponseSchema.optional()
34367
34437
  });
34368
34438
 
@@ -34623,72 +34693,72 @@ var checkoutBlockDefinition = {
34623
34693
  };
34624
34694
 
34625
34695
  // ../blocks/src/system/runtime/nodes/gifting.interactive.ts
34626
- import { z as z61 } from "zod";
34627
- var publicGiftCardOfferSchema = z61.object({
34628
- id: z61.string(),
34629
- kind: z61.literal("gift_card"),
34630
- title: z61.string(),
34631
- description: z61.string().nullable(),
34632
- sortOrder: z61.number().int(),
34633
- giftCard: z61.object({
34634
- fixedDenominations: z61.array(z61.number().int().positive()),
34635
- customAmountEnabled: z61.boolean(),
34636
- customAmountMinCents: z61.number().int().positive(),
34637
- customAmountMaxCents: z61.number().int().positive()
34696
+ import { z as z59 } from "zod";
34697
+ var publicGiftCardOfferSchema = z59.object({
34698
+ id: z59.string(),
34699
+ kind: z59.literal("gift_card"),
34700
+ title: z59.string(),
34701
+ description: z59.string().nullable(),
34702
+ sortOrder: z59.number().int(),
34703
+ giftCard: z59.object({
34704
+ fixedDenominations: z59.array(z59.number().int().positive()),
34705
+ customAmountEnabled: z59.boolean(),
34706
+ customAmountMinCents: z59.number().int().positive(),
34707
+ customAmountMaxCents: z59.number().int().positive()
34638
34708
  }),
34639
- voucher: z61.null()
34640
- });
34641
- var publicVoucherOfferSchema = z61.object({
34642
- id: z61.string(),
34643
- kind: z61.literal("voucher"),
34644
- title: z61.string(),
34645
- description: z61.string().nullable(),
34646
- sortOrder: z61.number().int(),
34647
- giftCard: z61.null(),
34648
- voucher: z61.object({
34649
- purchaseAmountCents: z61.number().int().positive()
34709
+ voucher: z59.null()
34710
+ });
34711
+ var publicVoucherOfferSchema = z59.object({
34712
+ id: z59.string(),
34713
+ kind: z59.literal("voucher"),
34714
+ title: z59.string(),
34715
+ description: z59.string().nullable(),
34716
+ sortOrder: z59.number().int(),
34717
+ giftCard: z59.null(),
34718
+ voucher: z59.object({
34719
+ purchaseAmountCents: z59.number().int().positive()
34650
34720
  })
34651
34721
  });
34652
- var publicGiftingOffersResponseSchema = z61.object({
34653
- currency: z61.string(),
34654
- giftCards: z61.array(publicGiftCardOfferSchema),
34655
- vouchers: z61.array(publicVoucherOfferSchema)
34722
+ var publicGiftingOffersResponseSchema = z59.object({
34723
+ currency: z59.string(),
34724
+ giftCards: z59.array(publicGiftCardOfferSchema),
34725
+ vouchers: z59.array(publicVoucherOfferSchema)
34656
34726
  });
34657
- var giftingSourceSchema = z61.object({
34658
- siteId: z61.string().optional(),
34659
- apiBaseUrl: z61.string().optional(),
34727
+ var giftingSourceSchema = z59.object({
34728
+ siteId: z59.string().optional(),
34729
+ apiBaseUrl: z59.string().optional(),
34660
34730
  offers: publicGiftingOffersResponseSchema.nullable().optional(),
34661
- className: z61.string().nullable().optional(),
34662
- heading: z61.string().nullable().optional(),
34663
- intro: z61.string().nullable().optional(),
34664
- giftCardsHeading: z61.string().nullable().optional(),
34665
- vouchersHeading: z61.string().nullable().optional(),
34666
- emptyStateText: z61.string().nullable().optional(),
34667
- checkoutButtonText: z61.string().nullable().optional(),
34668
- successMessage: z61.string().nullable().optional()
34669
- });
34670
- var giftingDisplaySchema = z61.object({
34671
- kind: z61.literal("gifting"),
34672
- state: z61.literal("ready"),
34673
- className: z61.string().nullable(),
34674
- heading: z61.string(),
34675
- intro: z61.string().nullable(),
34676
- giftCardsHeading: z61.string(),
34677
- vouchersHeading: z61.string(),
34678
- emptyStateText: z61.string()
34679
- });
34680
- var giftingHydrationSchema = z61.object({
34731
+ className: z59.string().nullable().optional(),
34732
+ heading: z59.string().nullable().optional(),
34733
+ intro: z59.string().nullable().optional(),
34734
+ giftCardsHeading: z59.string().nullable().optional(),
34735
+ vouchersHeading: z59.string().nullable().optional(),
34736
+ emptyStateText: z59.string().nullable().optional(),
34737
+ checkoutButtonText: z59.string().nullable().optional(),
34738
+ successMessage: z59.string().nullable().optional()
34739
+ });
34740
+ var giftingDisplaySchema = z59.object({
34741
+ kind: z59.literal("gifting"),
34742
+ state: z59.literal("ready"),
34743
+ className: z59.string().nullable(),
34744
+ heading: z59.string(),
34745
+ intro: z59.string().nullable(),
34746
+ giftCardsHeading: z59.string(),
34747
+ vouchersHeading: z59.string(),
34748
+ emptyStateText: z59.string()
34749
+ });
34750
+ var giftingHydrationSchema = z59.object({
34681
34751
  offers: publicGiftingOffersResponseSchema.nullable(),
34682
- checkoutButtonText: z61.string(),
34683
- successMessage: z61.string()
34752
+ checkoutButtonText: z59.string(),
34753
+ successMessage: z59.string()
34684
34754
  });
34685
- var giftingRenderSchema = z61.object({
34755
+ var giftingRenderSchema = z59.object({
34686
34756
  display: giftingDisplaySchema,
34687
34757
  hydration: giftingHydrationSchema
34688
34758
  });
34689
- var giftingIslandMetaCodec = createZodCodec(z61.object({
34690
- siteId: z61.string().optional(),
34691
- apiBaseUrl: z61.string().optional()
34759
+ var giftingIslandMetaCodec = createZodCodec(z59.object({
34760
+ siteId: z59.string().optional(),
34761
+ apiBaseUrl: z59.string().optional()
34692
34762
  }));
34693
34763
  var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
34694
34764
  "siteId",
@@ -34859,7 +34929,7 @@ var giftingBlockDefinition = {
34859
34929
  };
34860
34930
 
34861
34931
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34862
- import { z as z62 } from "zod";
34932
+ import { z as z60 } from "zod";
34863
34933
 
34864
34934
  // ../blocks/src/system/blocks/newsletter-signup-destination.ts
34865
34935
  function parseNewsletterSignupBlockId(value) {
@@ -34966,65 +35036,65 @@ function withOptionalPhone(fields3, includePhone) {
34966
35036
  }
34967
35037
 
34968
35038
  // ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
34969
- var newsletterPresetSchema = z62.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
34970
- var newsletterDestinationProviderSchema = z62.enum(["riverbank", "mailchimp"]);
34971
- var newsletterFieldSchema = z62.object({
34972
- id: z62.string(),
34973
- type: z62.enum(["email", "text"]),
34974
- label: z62.string(),
34975
- required: z62.boolean(),
34976
- placeholder: z62.string().optional()
34977
- });
34978
- var newsletterSignupBlockIdSchema = z62.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
34979
- var signedNewsletterDestinationRefSchema = z62.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
34980
- var newsletterPublicDestinationRefSchema = z62.discriminatedUnion("tag", [
34981
- z62.object({
34982
- tag: z62.literal("block_ref"),
35039
+ var newsletterPresetSchema = z60.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
35040
+ var newsletterDestinationProviderSchema = z60.enum(["riverbank", "mailchimp"]);
35041
+ var newsletterFieldSchema = z60.object({
35042
+ id: z60.string(),
35043
+ type: z60.enum(["email", "text"]),
35044
+ label: z60.string(),
35045
+ required: z60.boolean(),
35046
+ placeholder: z60.string().optional()
35047
+ });
35048
+ var newsletterSignupBlockIdSchema = z60.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
35049
+ var signedNewsletterDestinationRefSchema = z60.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
35050
+ var newsletterPublicDestinationRefSchema = z60.discriminatedUnion("tag", [
35051
+ z60.object({
35052
+ tag: z60.literal("block_ref"),
34983
35053
  blockId: newsletterSignupBlockIdSchema
34984
35054
  }),
34985
- z62.object({
34986
- tag: z62.literal("signed_destination_ref"),
35055
+ z60.object({
35056
+ tag: z60.literal("signed_destination_ref"),
34987
35057
  token: signedNewsletterDestinationRefSchema
34988
35058
  })
34989
35059
  ]);
34990
- var newsletterSourceSchema = z62.object({
34991
- blockId: z62.string().nullable().optional(),
34992
- siteId: z62.string().optional(),
34993
- apiBaseUrl: z62.string().optional(),
34994
- listId: z62.string().nullable().optional(),
35060
+ var newsletterSourceSchema = z60.object({
35061
+ blockId: z60.string().nullable().optional(),
35062
+ siteId: z60.string().optional(),
35063
+ apiBaseUrl: z60.string().optional(),
35064
+ listId: z60.string().nullable().optional(),
34995
35065
  destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
34996
35066
  preset: newsletterPresetSchema.optional(),
34997
- includePhone: z62.boolean().optional(),
34998
- buttonLabel: z62.string().nullable().optional(),
34999
- successMessage: z62.string().nullable().optional(),
35000
- privacyNote: z62.string().nullable().optional(),
35001
- tags: z62.string().nullable().optional(),
35002
- spamProtectionEnabled: z62.boolean().optional(),
35003
- className: z62.string().nullable().optional()
35004
- });
35005
- var newsletterDisplaySchema = z62.object({
35006
- kind: z62.literal("newsletter-form"),
35007
- className: z62.string().nullable(),
35008
- buttonLabel: z62.string(),
35009
- successMessage: z62.string().nullable(),
35010
- privacyNote: z62.string().nullable(),
35011
- fields: z62.array(newsletterFieldSchema)
35012
- });
35013
- var newsletterHydrationSchema = z62.object({
35067
+ includePhone: z60.boolean().optional(),
35068
+ buttonLabel: z60.string().nullable().optional(),
35069
+ successMessage: z60.string().nullable().optional(),
35070
+ privacyNote: z60.string().nullable().optional(),
35071
+ tags: z60.string().nullable().optional(),
35072
+ spamProtectionEnabled: z60.boolean().optional(),
35073
+ className: z60.string().nullable().optional()
35074
+ });
35075
+ var newsletterDisplaySchema = z60.object({
35076
+ kind: z60.literal("newsletter-form"),
35077
+ className: z60.string().nullable(),
35078
+ buttonLabel: z60.string(),
35079
+ successMessage: z60.string().nullable(),
35080
+ privacyNote: z60.string().nullable(),
35081
+ fields: z60.array(newsletterFieldSchema)
35082
+ });
35083
+ var newsletterHydrationSchema = z60.object({
35014
35084
  destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
35015
- listId: z62.string().nullable().optional(),
35085
+ listId: z60.string().nullable().optional(),
35016
35086
  preset: newsletterPresetSchema,
35017
- includePhone: z62.boolean(),
35018
- tags: z62.string().nullable().optional(),
35019
- spamProtectionEnabled: z62.boolean().optional()
35087
+ includePhone: z60.boolean(),
35088
+ tags: z60.string().nullable().optional(),
35089
+ spamProtectionEnabled: z60.boolean().optional()
35020
35090
  });
35021
- var newsletterRenderSchema = z62.object({
35091
+ var newsletterRenderSchema = z60.object({
35022
35092
  display: newsletterDisplaySchema,
35023
35093
  hydration: newsletterHydrationSchema
35024
35094
  });
35025
- var newsletterIslandMetaCodec = createZodCodec(z62.object({
35026
- siteId: z62.string().optional(),
35027
- apiBaseUrl: z62.string().optional()
35095
+ var newsletterIslandMetaCodec = createZodCodec(z60.object({
35096
+ siteId: z60.string().optional(),
35097
+ apiBaseUrl: z60.string().optional()
35028
35098
  }));
35029
35099
  var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
35030
35100
  function buildNewsletterDisplay(source) {
@@ -35163,23 +35233,23 @@ var newsletterSignupBlockDefinition = {
35163
35233
  };
35164
35234
 
35165
35235
  // ../blocks/src/system/blocks/team-members.ts
35166
- import { z as z63 } from "zod";
35236
+ import { z as z61 } from "zod";
35167
35237
  var ITEM_NAME2 = "member";
35168
35238
  var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
35169
35239
  message: "Team member photos must be image media"
35170
35240
  }).nullable();
35171
- var teamMemberDataSchema = z63.object({
35172
- _type: z63.literal("teamMember"),
35173
- id: z63.string(),
35174
- name: z63.string(),
35175
- role: z63.string().nullable(),
35176
- roleLabel: z63.string().nullable(),
35177
- bio: z63.string().nullable(),
35178
- summary: z63.string().nullable(),
35241
+ var teamMemberDataSchema = z61.object({
35242
+ _type: z61.literal("teamMember"),
35243
+ id: z61.string(),
35244
+ name: z61.string(),
35245
+ role: z61.string().nullable(),
35246
+ roleLabel: z61.string().nullable(),
35247
+ bio: z61.string().nullable(),
35248
+ summary: z61.string().nullable(),
35179
35249
  photo: teamMemberPhotoSchema,
35180
- profilePath: z63.string().nullable()
35250
+ profilePath: z61.string().nullable()
35181
35251
  });
35182
- var teamMembersDataSchema = z63.array(teamMemberDataSchema);
35252
+ var teamMembersDataSchema = z61.array(teamMemberDataSchema);
35183
35253
  var dynamicSourceWhen = { equals: "site_staff" };
35184
35254
  var manualSourceWhen = { equals: "site_staff", not: true };
35185
35255
  var headingNode = text(
@@ -36071,13 +36141,6 @@ var systemBlockDefinitionsRaw = [
36071
36141
  weight: "featured",
36072
36142
  bias: "clear",
36073
36143
  surfaces: heroSectionSurfaces
36074
- }),
36075
- layoutProfile({
36076
- variantKey: "splitEditorial",
36077
- family: "split",
36078
- weight: "featured",
36079
- bias: "clear",
36080
- surfaces: heroSectionSurfaces
36081
36144
  })
36082
36145
  ]
36083
36146
  })),
@@ -36321,9 +36384,8 @@ var systemBlockDefinitionsRaw = [
36321
36384
  flow: offeringsFlow,
36322
36385
  layoutProfiles: [
36323
36386
  layoutProfile({ variantKey: "combined", family: "grid", weight: "standard" }),
36387
+ layoutProfile({ variantKey: "calendar", family: "stack", weight: "standard" }),
36324
36388
  layoutProfile({ variantKey: "list", family: "stack", weight: "standard" }),
36325
- layoutProfile({ variantKey: "month", family: "grid", weight: "standard" }),
36326
- layoutProfile({ variantKey: "week", family: "stack", weight: "standard" }),
36327
36389
  layoutProfile({ variantKey: "timetable", family: "stack", weight: "standard" })
36328
36390
  ]
36329
36391
  })),
@@ -36886,10 +36948,7 @@ function normalizeRenderStage(stage) {
36886
36948
  return stage === "preview" ? "preview" : "published";
36887
36949
  }
36888
36950
  function isRouteVisibleInStage(routeEntry, stageInput) {
36889
- const stage = normalizeRenderStage(stageInput);
36890
- if (stage === "preview" || !isRouteRecord(routeEntry)) {
36891
- return true;
36892
- }
36951
+ if (normalizeRenderStage(stageInput) === "preview" || !isRouteRecord(routeEntry)) return true;
36893
36952
  const status = routeEntry.status;
36894
36953
  return !(typeof status === "string" && status !== "published");
36895
36954
  }
@@ -36898,52 +36957,45 @@ function extractRouteHref(candidate, stageInput = "published") {
36898
36957
  const trimmed = candidate.trim();
36899
36958
  return trimmed.length > 0 ? trimmed : null;
36900
36959
  }
36901
- if (!isRouteRecord(candidate)) {
36902
- return null;
36903
- }
36904
- const stage = normalizeRenderStage(stageInput);
36905
- const fields3 = stage === "preview" ? ["draftPath", "path", "href", "url"] : ["path", "href", "url"];
36960
+ if (!isRouteRecord(candidate)) return null;
36961
+ const fields3 = normalizeRenderStage(stageInput) === "preview" ? [
36962
+ "draftPath",
36963
+ "path",
36964
+ "href",
36965
+ "url"
36966
+ ] : [
36967
+ "path",
36968
+ "href",
36969
+ "url"
36970
+ ];
36906
36971
  for (const field of fields3) {
36907
36972
  const value = candidate[field];
36908
- if (typeof value === "string" && value.trim().length > 0) {
36909
- return value.trim();
36910
- }
36973
+ if (typeof value === "string" && value.trim().length > 0) return value.trim();
36911
36974
  }
36912
36975
  return null;
36913
36976
  }
36914
36977
  function extractRouteUpdatedAt(candidate) {
36915
- if (!isRouteRecord(candidate)) {
36916
- return null;
36917
- }
36918
- const fields3 = [
36978
+ if (!isRouteRecord(candidate)) return null;
36979
+ for (const field of [
36919
36980
  "updatedAt",
36920
36981
  "updated_at",
36921
36982
  "publishedAt",
36922
36983
  "published_at",
36923
36984
  "modifiedAt",
36924
36985
  "modified_at"
36925
- ];
36926
- for (const field of fields3) {
36986
+ ]) {
36927
36987
  const value = candidate[field];
36928
- if (typeof value === "string" && value.length > 0) {
36929
- return value;
36930
- }
36988
+ if (typeof value === "string" && value.length > 0) return value;
36931
36989
  }
36932
36990
  return null;
36933
36991
  }
36934
36992
  function resolveRouteTargetForStage(routeIdValue, routes, stageInput) {
36935
36993
  const routeId = typeof routeIdValue === "string" ? routeIdValue : null;
36936
- if (!routeId || !routes) {
36937
- return null;
36938
- }
36994
+ if (!routeId || !routes) return null;
36939
36995
  const routeEntry = routes[routeId];
36940
- if (!isRouteVisibleInStage(routeEntry, stageInput)) {
36941
- return null;
36942
- }
36996
+ if (!isRouteVisibleInStage(routeEntry, stageInput)) return null;
36943
36997
  const href = extractRouteHref(routeEntry, stageInput);
36944
- if (!href) {
36945
- return null;
36946
- }
36998
+ if (!href) return null;
36947
36999
  return {
36948
37000
  routeId,
36949
37001
  href,
@@ -37979,42 +38031,45 @@ import { jsx as jsx5 } from "react/jsx-runtime";
37979
38031
  import * as React from "react";
37980
38032
  import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
37981
38033
 
38034
+ // ../theme-core/src/ResponsiveScope.tsx
38035
+ import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
38036
+
37982
38037
  // ../theme-core/src/fonts/uploadFormat.ts
37983
38038
  var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
37984
38039
 
37985
38040
  // ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
37986
- import { z as z64 } from "zod";
37987
- var themeBridgeConfigSchema = z64.object({
37988
- tokens: z64.record(z64.string(), z64.string()),
37989
- typography: z64.object({
37990
- headingFamily: z64.string().optional(),
37991
- bodyFamily: z64.string().optional(),
37992
- headingWeight: z64.number().optional(),
37993
- bodyWeight: z64.number().optional()
38041
+ import { z as z62 } from "zod";
38042
+ var themeBridgeConfigSchema = z62.object({
38043
+ tokens: z62.record(z62.string(), z62.string()),
38044
+ typography: z62.object({
38045
+ headingFamily: z62.string().optional(),
38046
+ bodyFamily: z62.string().optional(),
38047
+ headingWeight: z62.number().optional(),
38048
+ bodyWeight: z62.number().optional()
37994
38049
  }).optional(),
37995
- spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
37996
- corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
37997
- shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
37998
- components: z64.object({
37999
- buttons: z64.union([
38000
- z64.boolean(),
38001
- z64.object({
38002
- variants: z64.array(z64.enum(["primary", "secondary", "outline", "ghost"])).optional()
38050
+ spacing: z62.enum(["comfortable", "standard", "dense"]).optional(),
38051
+ corners: z62.enum(["square", "soft", "rounded", "pill"]).optional(),
38052
+ shadows: z62.enum(["none", "low", "medium", "high"]).optional(),
38053
+ components: z62.object({
38054
+ buttons: z62.union([
38055
+ z62.boolean(),
38056
+ z62.object({
38057
+ variants: z62.array(z62.enum(["primary", "secondary", "outline", "ghost"])).optional()
38003
38058
  })
38004
38059
  ]).optional(),
38005
- cards: z64.union([
38006
- z64.boolean(),
38007
- z64.object({
38008
- variants: z64.array(z64.enum(["default", "elevated", "outlined"])).optional()
38060
+ cards: z62.union([
38061
+ z62.boolean(),
38062
+ z62.object({
38063
+ variants: z62.array(z62.enum(["default", "elevated", "outlined"])).optional()
38009
38064
  })
38010
38065
  ]).optional(),
38011
- inputs: z64.boolean().optional()
38066
+ inputs: z62.boolean().optional()
38012
38067
  }).optional(),
38013
- overrides: z64.record(z64.string(), z64.string()).optional()
38068
+ overrides: z62.record(z62.string(), z62.string()).optional()
38014
38069
  }).passthrough();
38015
38070
 
38016
38071
  // ../theme-core/src/siteChrome.tsx
38017
- import { Fragment as Fragment2, jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
38072
+ import { Fragment as Fragment2, jsx as jsx8, jsxs as jsxs6 } from "react/jsx-runtime";
38018
38073
 
38019
38074
  // ../blocks/src/system/runtime/bindings.ts
38020
38075
  var shouldLogWarnings = isNonProductionEnv();
@@ -38379,17 +38434,17 @@ function normalizeLoaderParams(endpoint, params, context) {
38379
38434
  function unsafeRetypeZodSchema(schema) {
38380
38435
  return schema;
38381
38436
  }
38382
- var navIdListSchema = z65.preprocess((value) => {
38437
+ var navIdListSchema = z63.preprocess((value) => {
38383
38438
  if (!Array.isArray(value)) return void 0;
38384
38439
  const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
38385
38440
  return filtered.length > 0 ? filtered : void 0;
38386
- }, z65.array(z65.string()).max(200).optional());
38387
- var dashboardNavVisibilityBaseSchema = z65.object({
38388
- mode: z65.enum(["augment", "restrict"]).optional(),
38441
+ }, z63.array(z63.string()).max(200).optional());
38442
+ var dashboardNavVisibilityBaseSchema = z63.object({
38443
+ mode: z63.enum(["augment", "restrict"]).optional(),
38389
38444
  allowIds: navIdListSchema,
38390
38445
  denyIds: navIdListSchema
38391
38446
  }).strip();
38392
- var dashboardNavVisibilityRolesSchema = z65.object({
38447
+ var dashboardNavVisibilityRolesSchema = z63.object({
38393
38448
  administrator: dashboardNavVisibilityBaseSchema.optional(),
38394
38449
  editor: dashboardNavVisibilityBaseSchema.optional(),
38395
38450
  team_member: dashboardNavVisibilityBaseSchema.optional()
@@ -38397,63 +38452,63 @@ var dashboardNavVisibilityRolesSchema = z65.object({
38397
38452
  var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
38398
38453
  roles: dashboardNavVisibilityRolesSchema
38399
38454
  }).strip();
38400
- var dashboardNavigationConfigSchema = z65.object({
38455
+ var dashboardNavigationConfigSchema = z63.object({
38401
38456
  siteNav: dashboardNavVisibilitySchema.optional(),
38402
38457
  settingsNav: dashboardNavVisibilitySchema.optional()
38403
38458
  }).strip();
38404
- var dashboardConfigSchema = z65.object({
38405
- previewEditingEnabled: z65.boolean().optional(),
38459
+ var dashboardConfigSchema = z63.object({
38460
+ previewEditingEnabled: z63.boolean().optional(),
38406
38461
  navigation: dashboardNavigationConfigSchema.optional()
38407
38462
  }).strip();
38408
38463
  var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
38409
38464
  var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
38410
- var sdkLoaderEndpointSchema = z65.enum(SUPPORTED_LOADER_ENDPOINTS);
38411
- var loaderFallbackScalarSchema = z65.union([
38412
- z65.string(),
38413
- z65.number(),
38414
- z65.boolean(),
38415
- z65.null()
38465
+ var sdkLoaderEndpointSchema = z63.enum(SUPPORTED_LOADER_ENDPOINTS);
38466
+ var loaderFallbackScalarSchema = z63.union([
38467
+ z63.string(),
38468
+ z63.number(),
38469
+ z63.boolean(),
38470
+ z63.null()
38416
38471
  ]);
38417
- var loaderParamBindingSchema = z65.object({
38418
- $bind: z65.object({
38419
- from: z65.string().min(1, "Binding path is required"),
38472
+ var loaderParamBindingSchema = z63.object({
38473
+ $bind: z63.object({
38474
+ from: z63.string().min(1, "Binding path is required"),
38420
38475
  fallback: loaderFallbackScalarSchema.optional()
38421
38476
  })
38422
38477
  });
38423
- var loaderParamValueSchema = z65.union([
38424
- z65.string(),
38425
- z65.number(),
38426
- z65.boolean(),
38478
+ var loaderParamValueSchema = z63.union([
38479
+ z63.string(),
38480
+ z63.number(),
38481
+ z63.boolean(),
38427
38482
  loaderParamBindingSchema
38428
38483
  ]);
38429
- var sdkConfigLoaderSchema = z65.object({
38484
+ var sdkConfigLoaderSchema = z63.object({
38430
38485
  endpoint: sdkLoaderEndpointSchema,
38431
- params: z65.record(z65.string(), loaderParamValueSchema),
38432
- mode: z65.enum(["server", "client"]).default("server")
38486
+ params: z63.record(z63.string(), loaderParamValueSchema),
38487
+ mode: z63.enum(["server", "client"]).default("server")
38433
38488
  });
38434
- var sdkDataLoadersSchema = z65.record(z65.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
38435
- var sdkCustomBlockIdSchema = z65.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
38489
+ var sdkDataLoadersSchema = z63.record(z63.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
38490
+ var sdkCustomBlockIdSchema = z63.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
38436
38491
  message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
38437
38492
  }).transform((value) => value);
38438
- var sdkCustomBlockInputSchema = z65.object({
38493
+ var sdkCustomBlockInputSchema = z63.object({
38439
38494
  id: sdkCustomBlockIdSchema,
38440
- title: z65.string().min(1),
38441
- titleSource: z65.union([z65.string().min(1), z65.array(z65.string().min(1)).min(1)]).optional(),
38442
- description: z65.string().optional(),
38495
+ title: z63.string().min(1),
38496
+ titleSource: z63.union([z63.string().min(1), z63.array(z63.string().min(1)).min(1)]).optional(),
38497
+ description: z63.string().optional(),
38443
38498
  category: blockCategoryEnum,
38444
- icon: z65.string().optional(),
38445
- tags: z65.array(z65.string()).optional(),
38499
+ icon: z63.string().optional(),
38500
+ tags: z63.array(z63.string()).optional(),
38446
38501
  fields: fieldDefinitionInputSchema.array().min(1),
38447
38502
  dataLoaders: sdkDataLoadersSchema,
38448
38503
  layout: NodeSchema.optional(),
38449
- variants: z65.record(z65.string().min(1), NodeSchema).optional(),
38450
- defaultVariant: z65.string().min(1).optional(),
38451
- variantOptions: z65.record(
38452
- z65.string().min(1),
38453
- z65.object({
38454
- label: z65.string().min(1).optional(),
38455
- description: z65.string().min(1).optional(),
38456
- icon: z65.string().min(1).optional()
38504
+ variants: z63.record(z63.string().min(1), NodeSchema).optional(),
38505
+ defaultVariant: z63.string().min(1).optional(),
38506
+ variantOptions: z63.record(
38507
+ z63.string().min(1),
38508
+ z63.object({
38509
+ label: z63.string().min(1).optional(),
38510
+ description: z63.string().min(1).optional(),
38511
+ icon: z63.string().min(1).optional()
38457
38512
  })
38458
38513
  ).optional(),
38459
38514
  previewCustomize: previewCustomizeManifestCurationSchema.optional()
@@ -38464,7 +38519,7 @@ var sdkCustomBlockInputSchema = z65.object({
38464
38519
  const exists = data.fields.some((field) => field.id === source);
38465
38520
  if (!exists) {
38466
38521
  ctx.addIssue({
38467
- code: z65.ZodIssueCode.custom,
38522
+ code: z63.ZodIssueCode.custom,
38468
38523
  message: `titleSource must reference a valid field ID (got "${source}")`,
38469
38524
  path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
38470
38525
  });
@@ -38473,7 +38528,7 @@ var sdkCustomBlockInputSchema = z65.object({
38473
38528
  }
38474
38529
  if (data.layout && data.variants) {
38475
38530
  ctx.addIssue({
38476
- code: z65.ZodIssueCode.custom,
38531
+ code: z63.ZodIssueCode.custom,
38477
38532
  message: "Custom block must define either `layout` or `variants`, not both",
38478
38533
  path: ["variants"]
38479
38534
  });
@@ -38482,14 +38537,14 @@ var sdkCustomBlockInputSchema = z65.object({
38482
38537
  const keys = Object.keys(data.variants);
38483
38538
  if (keys.length === 0) {
38484
38539
  ctx.addIssue({
38485
- code: z65.ZodIssueCode.custom,
38540
+ code: z63.ZodIssueCode.custom,
38486
38541
  message: "`variants` must contain at least one variant key",
38487
38542
  path: ["variants"]
38488
38543
  });
38489
38544
  }
38490
38545
  if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
38491
38546
  ctx.addIssue({
38492
- code: z65.ZodIssueCode.custom,
38547
+ code: z63.ZodIssueCode.custom,
38493
38548
  message: "`defaultVariant` must be a key present in `variants`",
38494
38549
  path: ["defaultVariant"]
38495
38550
  });
@@ -38498,7 +38553,7 @@ var sdkCustomBlockInputSchema = z65.object({
38498
38553
  for (const key of Object.keys(data.variantOptions)) {
38499
38554
  if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
38500
38555
  ctx.addIssue({
38501
- code: z65.ZodIssueCode.custom,
38556
+ code: z63.ZodIssueCode.custom,
38502
38557
  message: "`variantOptions` key must exist in `variants`",
38503
38558
  path: ["variantOptions", key]
38504
38559
  });
@@ -38507,78 +38562,78 @@ var sdkCustomBlockInputSchema = z65.object({
38507
38562
  }
38508
38563
  }
38509
38564
  });
38510
- var sdkBlockFieldExtensionInputSchema = z65.object({
38565
+ var sdkBlockFieldExtensionInputSchema = z63.object({
38511
38566
  fields: fieldDefinitionInputSchema.array().min(1)
38512
38567
  });
38513
- var sdkBlockFieldExtensionsInputSchema = z65.record(
38514
- z65.string().min(1),
38568
+ var sdkBlockFieldExtensionsInputSchema = z63.record(
38569
+ z63.string().min(1),
38515
38570
  sdkBlockFieldExtensionInputSchema
38516
38571
  );
38517
- var sdkThemePaletteSchema = z65.record(z65.string(), z65.string());
38518
- var sdkThemeConfigSchema = z65.object({
38572
+ var sdkThemePaletteSchema = z63.record(z63.string(), z63.string());
38573
+ var sdkThemeConfigSchema = z63.object({
38519
38574
  palette: sdkThemePaletteSchema
38520
38575
  });
38521
- var sdkSectionBackgroundSchema = z65.object({
38522
- id: z65.string().min(1),
38523
- label: z65.string().min(1),
38524
- token: z65.string().min(1)
38576
+ var sdkSectionBackgroundSchema = z63.object({
38577
+ id: z63.string().min(1),
38578
+ label: z63.string().min(1),
38579
+ token: z63.string().min(1)
38525
38580
  });
38526
- var sdkSectionOptionsConfigSchema = z65.object({
38527
- backgroundColor: z65.boolean().optional(),
38528
- backgroundImage: z65.boolean().optional(),
38529
- backgroundGradient: z65.boolean().optional(),
38530
- spacing: z65.union([z65.array(z65.enum(["compact", "default", "spacious"])), z65.boolean()]).optional(),
38531
- textColor: z65.boolean().optional()
38581
+ var sdkSectionOptionsConfigSchema = z63.object({
38582
+ backgroundColor: z63.boolean().optional(),
38583
+ backgroundImage: z63.boolean().optional(),
38584
+ backgroundGradient: z63.boolean().optional(),
38585
+ spacing: z63.union([z63.array(z63.enum(["compact", "default", "spacious"])), z63.boolean()]).optional(),
38586
+ textColor: z63.boolean().optional()
38532
38587
  });
38533
- var sdkContainerOptionsConfigSchema = z65.object({
38534
- maxWidth: z65.union([z65.array(z65.enum(["narrow", "default", "wide", "full"])), z65.boolean()]).optional(),
38535
- alignment: z65.union([z65.array(z65.enum(["left", "center", "right"])), z65.boolean()]).optional()
38588
+ var sdkContainerOptionsConfigSchema = z63.object({
38589
+ maxWidth: z63.union([z63.array(z63.enum(["narrow", "default", "wide", "full"])), z63.boolean()]).optional(),
38590
+ alignment: z63.union([z63.array(z63.enum(["left", "center", "right"])), z63.boolean()]).optional()
38536
38591
  });
38537
- var sdkSiteStyleConfigSchema = z65.object({
38538
- sectionBackgrounds: z65.array(sdkSectionBackgroundSchema).optional(),
38592
+ var sdkSiteStyleConfigSchema = z63.object({
38593
+ sectionBackgrounds: z63.array(sdkSectionBackgroundSchema).optional(),
38539
38594
  sectionOptions: sdkSectionOptionsConfigSchema.optional(),
38540
38595
  containerOptions: sdkContainerOptionsConfigSchema.optional()
38541
38596
  });
38542
- var sdkSiteLayoutConfigSchema = z65.object({
38543
- footerBlocks: z65.array(
38544
- z65.object({
38545
- id: z65.string().min(1).optional(),
38546
- kind: z65.string().min(1),
38547
- content: z65.record(z65.string(), z65.unknown()).optional()
38597
+ var sdkSiteLayoutConfigSchema = z63.object({
38598
+ footerBlocks: z63.array(
38599
+ z63.object({
38600
+ id: z63.string().min(1).optional(),
38601
+ kind: z63.string().min(1),
38602
+ content: z63.record(z63.string(), z63.unknown()).optional()
38548
38603
  })
38549
38604
  ).optional()
38550
38605
  });
38551
- var sdkFieldSelectOptionSchema = z65.object({
38552
- value: z65.string(),
38553
- label: z65.string()
38606
+ var sdkFieldSelectOptionSchema = z63.object({
38607
+ value: z63.string(),
38608
+ label: z63.string()
38554
38609
  });
38555
- var sdkBlockFieldConfigSchema = z65.object({
38556
- options: z65.array(sdkFieldSelectOptionSchema).optional()
38610
+ var sdkBlockFieldConfigSchema = z63.object({
38611
+ options: z63.array(sdkFieldSelectOptionSchema).optional()
38557
38612
  });
38558
- var sdkBlockFieldOptionsMapSchema = z65.record(
38559
- z65.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
38613
+ var sdkBlockFieldOptionsMapSchema = z63.record(
38614
+ z63.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
38560
38615
  message: "Block ID must be 'block.*' or 'custom.*' format"
38561
38616
  }),
38562
- z65.record(z65.string().min(1), sdkBlockFieldConfigSchema)
38617
+ z63.record(z63.string().min(1), sdkBlockFieldConfigSchema)
38563
38618
  ).optional();
38564
- var sdkContentTypeTemplateConfigSchema = z65.object({
38565
- blocks: z65.array(z65.unknown())
38619
+ var sdkContentTypeTemplateConfigSchema = z63.object({
38620
+ blocks: z63.array(z63.unknown())
38566
38621
  }).passthrough();
38567
- var sdkContentTypeOrderingConfigSchema = z65.object({
38568
- mode: z65.enum(["default", "manual"]).optional()
38622
+ var sdkContentTypeOrderingConfigSchema = z63.object({
38623
+ mode: z63.enum(["default", "manual"]).optional()
38569
38624
  }).optional();
38570
- var sdkContentTypeConfigSchema = z65.object({
38571
- key: z65.string().min(1),
38572
- fields: z65.array(z65.unknown()),
38625
+ var sdkContentTypeConfigSchema = z63.object({
38626
+ key: z63.string().min(1),
38627
+ fields: z63.array(z63.unknown()),
38573
38628
  ordering: sdkContentTypeOrderingConfigSchema,
38574
38629
  template: sdkContentTypeTemplateConfigSchema.nullable().optional()
38575
38630
  }).passthrough();
38576
- var sdkContentConfigSchema = z65.object({
38577
- contentTypes: z65.array(sdkContentTypeConfigSchema).optional(),
38578
- pages: z65.array(z65.unknown()).optional(),
38579
- entries: z65.array(z65.unknown()).optional(),
38580
- navigationMenus: z65.array(z65.unknown()).optional(),
38581
- settings: z65.unknown().optional()
38631
+ var sdkContentConfigSchema = z63.object({
38632
+ contentTypes: z63.array(sdkContentTypeConfigSchema).optional(),
38633
+ pages: z63.array(z63.unknown()).optional(),
38634
+ entries: z63.array(z63.unknown()).optional(),
38635
+ navigationMenus: z63.array(z63.unknown()).optional(),
38636
+ settings: z63.unknown().optional()
38582
38637
  }).passthrough();
38583
38638
  var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
38584
38639
  var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
@@ -38593,62 +38648,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
38593
38648
  var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
38594
38649
  var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
38595
38650
  var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
38596
- var sdkWorkflowIdSchema = z65.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
38651
+ var sdkWorkflowIdSchema = z63.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
38597
38652
  message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
38598
38653
  });
38599
- 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 "/"' });
38600
- var sdkWorkflowManualTriggerSchema = z65.object({
38601
- type: z65.literal("manual")
38654
+ 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 "/"' });
38655
+ var sdkWorkflowManualTriggerSchema = z63.object({
38656
+ type: z63.literal("manual")
38602
38657
  }).strict();
38603
- var sdkWorkflowTriggerFieldSchema = z65.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
38658
+ var sdkWorkflowTriggerFieldSchema = z63.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
38604
38659
  message: "Workflow trigger fields must be top-level content field IDs, not paths"
38605
38660
  });
38606
- var sdkWorkflowFieldChangedConditionSchema = z65.object({
38661
+ var sdkWorkflowFieldChangedConditionSchema = z63.object({
38607
38662
  field: sdkWorkflowTriggerFieldSchema,
38608
- changed: z65.literal(true)
38663
+ changed: z63.literal(true)
38609
38664
  }).strict();
38610
- var sdkWorkflowFieldEmptyConditionSchema = z65.object({
38665
+ var sdkWorkflowFieldEmptyConditionSchema = z63.object({
38611
38666
  field: sdkWorkflowTriggerFieldSchema,
38612
- isEmpty: z65.boolean()
38667
+ isEmpty: z63.boolean()
38613
38668
  }).strict();
38614
- var sdkWorkflowEntryDraftUpdatedTriggerSchema = z65.object({
38615
- type: z65.literal("entry.draft.updated"),
38616
- when: z65.array(
38617
- z65.union([
38669
+ var sdkWorkflowEntryDraftUpdatedTriggerSchema = z63.object({
38670
+ type: z63.literal("entry.draft.updated"),
38671
+ when: z63.array(
38672
+ z63.union([
38618
38673
  sdkWorkflowFieldChangedConditionSchema,
38619
38674
  sdkWorkflowFieldEmptyConditionSchema
38620
38675
  ])
38621
38676
  ).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
38622
38677
  }).strict();
38623
- var sdkWorkflowTriggerSchema = z65.discriminatedUnion("type", [
38678
+ var sdkWorkflowTriggerSchema = z63.discriminatedUnion("type", [
38624
38679
  sdkWorkflowManualTriggerSchema,
38625
38680
  sdkWorkflowEntryDraftUpdatedTriggerSchema
38626
38681
  ]);
38627
- var sdkWorkflowConfirmationSchema = z65.object({
38628
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
38629
- body: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
38682
+ var sdkWorkflowConfirmationSchema = z63.object({
38683
+ title: z63.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
38684
+ body: z63.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
38630
38685
  }).strict();
38631
- var sdkWorkflowConfigSchema = z65.object({
38686
+ var sdkWorkflowConfigSchema = z63.object({
38632
38687
  id: sdkWorkflowIdSchema,
38633
- title: z65.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
38634
- description: z65.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
38635
- contentType: z65.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
38688
+ title: z63.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
38689
+ description: z63.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
38690
+ contentType: z63.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
38636
38691
  endpoint: sdkWorkflowEndpointSchema,
38637
- triggers: z65.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
38692
+ triggers: z63.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
38638
38693
  confirmation: sdkWorkflowConfirmationSchema.optional()
38639
38694
  }).strict();
38640
- var sdkWorkflowsSchema = z65.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
38695
+ var sdkWorkflowsSchema = z63.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
38641
38696
  const ids = workflows.map((workflow) => workflow.id);
38642
38697
  return ids.length === new Set(ids).size;
38643
38698
  }, { message: "Workflow IDs must be unique" }).optional();
38644
- var riverbankSiteConfigInputSchema = z65.object({
38645
- siteId: z65.string().uuid(),
38646
- previewUrl: z65.string().url().optional(),
38647
- liveUrl: z65.string().url().optional(),
38699
+ var riverbankSiteConfigInputSchema = z63.object({
38700
+ siteId: z63.string().uuid(),
38701
+ previewUrl: z63.string().url().optional(),
38702
+ liveUrl: z63.string().url().optional(),
38648
38703
  theme: sdkThemeConfigSchema.optional(),
38649
38704
  styles: sdkSiteStyleConfigSchema.optional(),
38650
38705
  layout: sdkSiteLayoutConfigSchema.optional(),
38651
- customBlocks: z65.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
38706
+ customBlocks: z63.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
38652
38707
  const ids = blocks.map((b) => b.id);
38653
38708
  return ids.length === new Set(ids).size;
38654
38709
  }, { message: "Block IDs must be unique" }).optional(),
@@ -38656,50 +38711,50 @@ var riverbankSiteConfigInputSchema = z65.object({
38656
38711
  blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
38657
38712
  workflows: sdkWorkflowsSchema,
38658
38713
  content: sdkContentConfigSchema.optional(),
38659
- contentDir: z65.string().optional(),
38660
- sync: z65.object({
38661
- existingEntries: z65.enum(["skip", "update"]).optional()
38714
+ contentDir: z63.string().optional(),
38715
+ sync: z63.object({
38716
+ existingEntries: z63.enum(["skip", "update"]).optional()
38662
38717
  }).optional(),
38663
- deploy: z65.object({
38664
- verifyCommand: z65.string().optional(),
38665
- prebuildOutput: z65.string().optional()
38718
+ deploy: z63.object({
38719
+ verifyCommand: z63.string().optional(),
38720
+ prebuildOutput: z63.string().optional()
38666
38721
  }).optional(),
38667
- themeSource: z65.enum(["local", "cms"]).optional(),
38668
- activeTheme: z65.string().optional(),
38669
- enablePortal: z65.boolean().optional(),
38722
+ themeSource: z63.enum(["local", "cms"]).optional(),
38723
+ activeTheme: z63.string().optional(),
38724
+ enablePortal: z63.boolean().optional(),
38670
38725
  dashboard: dashboardConfigSchema.optional()
38671
38726
  }).strict();
38672
- var pushSdkConfigBodySchema = z65.object({
38727
+ var pushSdkConfigBodySchema = z63.object({
38673
38728
  config: riverbankSiteConfigInputSchema,
38674
- forceContentTypes: z65.boolean().optional()
38729
+ forceContentTypes: z63.boolean().optional()
38675
38730
  }).strict();
38676
38731
 
38677
38732
  // ../api/src/siteOnboarding.ts
38678
- import { z as z66 } from "zod";
38733
+ import { z as z64 } from "zod";
38679
38734
  var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
38680
38735
  configure_appointments: {
38681
38736
  requirementId: "configure_appointments",
38682
38737
  reason: "launch_anyway"
38683
38738
  }
38684
38739
  };
38685
- var acknowledgeLaunchRequirementRequestSchema = z66.discriminatedUnion(
38740
+ var acknowledgeLaunchRequirementRequestSchema = z64.discriminatedUnion(
38686
38741
  "requirementId",
38687
38742
  [
38688
- z66.object({
38689
- requirementId: z66.literal("review_generated_site")
38743
+ z64.object({
38744
+ requirementId: z64.literal("review_generated_site")
38690
38745
  }),
38691
- z66.object({
38692
- requirementId: z66.literal(
38746
+ z64.object({
38747
+ requirementId: z64.literal(
38693
38748
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
38694
38749
  ),
38695
- overrideReason: z66.literal(
38750
+ overrideReason: z64.literal(
38696
38751
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
38697
38752
  )
38698
38753
  })
38699
38754
  ]
38700
38755
  );
38701
- var goLiveSiteRequestSchema = z66.object({
38702
- acceptExtraSiteCharge: z66.boolean().optional()
38756
+ var goLiveSiteRequestSchema = z64.object({
38757
+ acceptExtraSiteCharge: z64.boolean().optional()
38703
38758
  });
38704
38759
 
38705
38760
  // ../surfaces/src/index.ts
@@ -38783,7 +38838,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
38783
38838
  ];
38784
38839
 
38785
38840
  // ../api/src/bookingVerticals.ts
38786
- import { z as z67 } from "zod";
38841
+ import { z as z65 } from "zod";
38787
38842
  var VERTICAL_IDS = [
38788
38843
  "yoga_wellness",
38789
38844
  "fitness_pt",
@@ -38948,39 +39003,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
38948
39003
  }
38949
39004
  return [...issues];
38950
39005
  }
38951
- var VerticalIdSchema = z67.string().trim().transform((value, ctx) => {
39006
+ var VerticalIdSchema = z65.string().trim().transform((value, ctx) => {
38952
39007
  const parsed = parseVerticalId(value);
38953
39008
  if (!parsed) {
38954
39009
  ctx.addIssue({
38955
- code: z67.ZodIssueCode.custom,
39010
+ code: z65.ZodIssueCode.custom,
38956
39011
  message: "Unknown booking vertical"
38957
39012
  });
38958
- return z67.NEVER;
39013
+ return z65.NEVER;
38959
39014
  }
38960
39015
  return parsed;
38961
39016
  });
38962
- var VerticalPresetIdSchema = z67.string().trim().transform((value, ctx) => {
39017
+ var VerticalPresetIdSchema = z65.string().trim().transform((value, ctx) => {
38963
39018
  const parsed = parseVerticalPresetId(value);
38964
39019
  if (!parsed) {
38965
39020
  ctx.addIssue({
38966
- code: z67.ZodIssueCode.custom,
39021
+ code: z65.ZodIssueCode.custom,
38967
39022
  message: "Unknown booking preset"
38968
39023
  });
38969
- return z67.NEVER;
39024
+ return z65.NEVER;
38970
39025
  }
38971
39026
  return parsed;
38972
39027
  });
38973
- var BookingVerticalConfigSchema = z67.object({
39028
+ var BookingVerticalConfigSchema = z65.object({
38974
39029
  verticalId: VerticalIdSchema.nullable(),
38975
- selectedPresetIds: z67.array(VerticalPresetIdSchema).max(20)
39030
+ selectedPresetIds: z65.array(VerticalPresetIdSchema).max(20)
38976
39031
  }).transform((value, ctx) => {
38977
39032
  const resolved = resolveSiteVerticalBookingConfig(value);
38978
39033
  if (resolved.kind === "invalid") {
38979
39034
  ctx.addIssue({
38980
- code: z67.ZodIssueCode.custom,
39035
+ code: z65.ZodIssueCode.custom,
38981
39036
  message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
38982
39037
  });
38983
- return z67.NEVER;
39038
+ return z65.NEVER;
38984
39039
  }
38985
39040
  return resolved.config;
38986
39041
  });
@@ -39007,51 +39062,51 @@ function isRecord8(value) {
39007
39062
  }
39008
39063
 
39009
39064
  // ../api/src/appointmentSetup.ts
39010
- import { z as z68 } from "zod";
39065
+ import { z as z66 } from "zod";
39011
39066
  var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
39012
- var appointmentSetupRefSchema = z68.discriminatedUnion("kind", [
39013
- z68.object({ kind: z68.literal("existing"), id: z68.string().min(1) }),
39014
- z68.object({ kind: z68.literal("new"), draftId: z68.string().min(1) })
39067
+ var appointmentSetupRefSchema = z66.discriminatedUnion("kind", [
39068
+ z66.object({ kind: z66.literal("existing"), id: z66.string().min(1) }),
39069
+ z66.object({ kind: z66.literal("new"), draftId: z66.string().min(1) })
39015
39070
  ]);
39016
- var appointmentSetupVenueChoiceSchema = z68.discriminatedUnion("kind", [
39017
- z68.object({ kind: z68.literal("none") }),
39018
- z68.object({ kind: z68.literal("existing"), venueId: z68.string().min(1) }),
39019
- z68.object({
39020
- kind: z68.literal("create"),
39021
- draftId: z68.string().min(1),
39022
- title: z68.string().trim().min(1),
39023
- description: z68.string().nullable(),
39024
- timezone: z68.string().trim().min(1).nullable(),
39025
- addressJson: z68.record(z68.string(), z68.unknown()),
39026
- locationJson: z68.object({ lat: z68.number(), lng: z68.number() }).nullable()
39071
+ var appointmentSetupVenueChoiceSchema = z66.discriminatedUnion("kind", [
39072
+ z66.object({ kind: z66.literal("none") }),
39073
+ z66.object({ kind: z66.literal("existing"), venueId: z66.string().min(1) }),
39074
+ z66.object({
39075
+ kind: z66.literal("create"),
39076
+ draftId: z66.string().min(1),
39077
+ title: z66.string().trim().min(1),
39078
+ description: z66.string().nullable(),
39079
+ timezone: z66.string().trim().min(1).nullable(),
39080
+ addressJson: z66.record(z66.string(), z66.unknown()),
39081
+ locationJson: z66.object({ lat: z66.number(), lng: z66.number() }).nullable()
39027
39082
  })
39028
39083
  ]);
39029
- var appointmentSetupPaymentDraftSchema = z68.object({
39030
- priceType: z68.union([z68.literal("free"), z68.literal("paid")])
39031
- });
39032
- var appointmentSetupServiceAssignmentDraftSchema = z68.discriminatedUnion("kind", [
39033
- z68.object({ kind: z68.literal("all_practitioners") }),
39034
- z68.object({
39035
- kind: z68.literal("selected_practitioners"),
39036
- resourceRefs: z68.array(appointmentSetupRefSchema)
39084
+ var appointmentSetupPaymentDraftSchema = z66.object({
39085
+ priceType: z66.union([z66.literal("free"), z66.literal("paid")])
39086
+ });
39087
+ var appointmentSetupServiceAssignmentDraftSchema = z66.discriminatedUnion("kind", [
39088
+ z66.object({ kind: z66.literal("all_practitioners") }),
39089
+ z66.object({
39090
+ kind: z66.literal("selected_practitioners"),
39091
+ resourceRefs: z66.array(appointmentSetupRefSchema)
39037
39092
  })
39038
39093
  ]);
39039
- var appointmentSetupServiceDraftSchema = z68.object({
39094
+ var appointmentSetupServiceDraftSchema = z66.object({
39040
39095
  ref: appointmentSetupRefSchema,
39041
- title: z68.string().trim().min(1),
39042
- description: z68.string().nullable(),
39043
- durationMinutes: z68.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
39044
- prepMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39045
- cleanupMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39046
- priceAmount: z68.number().int().nonnegative().nullable(),
39047
- isActive: z68.boolean(),
39048
- locationType: z68.union([
39049
- z68.literal("virtual"),
39050
- z68.literal("in_person"),
39051
- z68.literal("hybrid")
39096
+ title: z66.string().trim().min(1),
39097
+ description: z66.string().nullable(),
39098
+ durationMinutes: z66.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
39099
+ prepMinutes: z66.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39100
+ cleanupMinutes: z66.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
39101
+ priceAmount: z66.number().int().nonnegative().nullable(),
39102
+ isActive: z66.boolean(),
39103
+ locationType: z66.union([
39104
+ z66.literal("virtual"),
39105
+ z66.literal("in_person"),
39106
+ z66.literal("hybrid")
39052
39107
  ]),
39053
39108
  venue: appointmentSetupVenueChoiceSchema,
39054
- timezone: z68.string().trim().min(1).nullable(),
39109
+ timezone: z66.string().trim().min(1).nullable(),
39055
39110
  payment: appointmentSetupPaymentDraftSchema,
39056
39111
  assignment: appointmentSetupServiceAssignmentDraftSchema
39057
39112
  }).superRefine((service, ctx) => {
@@ -39070,49 +39125,49 @@ var appointmentSetupServiceDraftSchema = z68.object({
39070
39125
  });
39071
39126
  }
39072
39127
  });
39073
- var appointmentSetupPractitionerDraftSchema = z68.object({
39128
+ var appointmentSetupPractitionerDraftSchema = z66.object({
39074
39129
  ref: appointmentSetupRefSchema,
39075
- displayName: z68.string().trim().min(1),
39076
- bio: z68.string().nullable(),
39077
- timezone: z68.string().trim().min(1),
39078
- colorHex: z68.string().nullable()
39079
- });
39080
- var appointmentSetupWeeklyWindowDraftSchema = z68.object({
39081
- weekday: z68.number().int().min(0).max(6),
39082
- startTime: z68.string(),
39083
- endTime: z68.string()
39084
- });
39085
- var appointmentSetupStartTimePolicyDraftSchema = z68.discriminatedUnion("kind", [
39086
- z68.object({ kind: z68.literal("automatic_spacing") }),
39087
- z68.object({
39088
- kind: z68.literal("regular_interval"),
39089
- intervalMinutes: z68.union([
39090
- z68.literal(10),
39091
- z68.literal(15),
39092
- z68.literal(20),
39093
- z68.literal(30),
39094
- z68.literal(45),
39095
- z68.literal(60)
39130
+ displayName: z66.string().trim().min(1),
39131
+ bio: z66.string().nullable(),
39132
+ timezone: z66.string().trim().min(1),
39133
+ colorHex: z66.string().nullable()
39134
+ });
39135
+ var appointmentSetupWeeklyWindowDraftSchema = z66.object({
39136
+ weekday: z66.number().int().min(0).max(6),
39137
+ startTime: z66.string(),
39138
+ endTime: z66.string()
39139
+ });
39140
+ var appointmentSetupStartTimePolicyDraftSchema = z66.discriminatedUnion("kind", [
39141
+ z66.object({ kind: z66.literal("automatic_spacing") }),
39142
+ z66.object({
39143
+ kind: z66.literal("regular_interval"),
39144
+ intervalMinutes: z66.union([
39145
+ z66.literal(10),
39146
+ z66.literal(15),
39147
+ z66.literal(20),
39148
+ z66.literal(30),
39149
+ z66.literal(45),
39150
+ z66.literal(60)
39096
39151
  ])
39097
39152
  })
39098
39153
  ]);
39099
- var appointmentSetupAvailabilityDraftSchema = z68.object({
39100
- kind: z68.literal("weekly_windows"),
39154
+ var appointmentSetupAvailabilityDraftSchema = z66.object({
39155
+ kind: z66.literal("weekly_windows"),
39101
39156
  resourceRef: appointmentSetupRefSchema,
39102
39157
  serviceRef: appointmentSetupRefSchema.nullable(),
39103
- windows: z68.array(appointmentSetupWeeklyWindowDraftSchema),
39158
+ windows: z66.array(appointmentSetupWeeklyWindowDraftSchema),
39104
39159
  startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
39105
39160
  });
39106
39161
  var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
39107
39162
  var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
39108
- var appointmentSetupBookingNoticeSchema = z68.object({
39109
- minLeadMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
39110
- maxBookingNoticeMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
39111
- });
39112
- var applyAppointmentSetupRequestSchema = z68.object({
39113
- services: z68.array(appointmentSetupServiceDraftSchema),
39114
- practitioners: z68.array(appointmentSetupPractitionerDraftSchema),
39115
- availability: z68.array(appointmentSetupAvailabilityDraftSchema),
39163
+ var appointmentSetupBookingNoticeSchema = z66.object({
39164
+ minLeadMinutes: z66.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
39165
+ maxBookingNoticeMinutes: z66.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
39166
+ });
39167
+ var applyAppointmentSetupRequestSchema = z66.object({
39168
+ services: z66.array(appointmentSetupServiceDraftSchema),
39169
+ practitioners: z66.array(appointmentSetupPractitionerDraftSchema),
39170
+ availability: z66.array(appointmentSetupAvailabilityDraftSchema),
39116
39171
  bookingNotice: appointmentSetupBookingNoticeSchema
39117
39172
  });
39118
39173
 
@@ -39145,24 +39200,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
39145
39200
  ];
39146
39201
 
39147
39202
  // ../api/src/siteBanner.ts
39148
- import { z as z69 } from "zod";
39203
+ import { z as z67 } from "zod";
39149
39204
  var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
39150
39205
  var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
39151
39206
  var SITE_BANNER_MAX_TEXT_LENGTH = 320;
39152
39207
  var SITE_BANNER_MAX_PARAGRAPHS = 2;
39153
- var siteBannerScopeSchema = z69.enum(SITE_BANNER_SCOPE_VALUES);
39154
- var siteBannerToneSchema = z69.enum(SITE_BANNER_TONE_VALUES);
39155
- var siteBannerBodySchema = z69.unknown().transform(unwrapRichTextValue);
39156
- var siteBannerCtaSchema = z69.object({
39157
- label: z69.string().trim().min(1),
39208
+ var siteBannerScopeSchema = z67.enum(SITE_BANNER_SCOPE_VALUES);
39209
+ var siteBannerToneSchema = z67.enum(SITE_BANNER_TONE_VALUES);
39210
+ var siteBannerBodySchema = z67.unknown().transform(unwrapRichTextValue);
39211
+ var siteBannerCtaSchema = z67.object({
39212
+ label: z67.string().trim().min(1),
39158
39213
  link: linkPayloadSchema
39159
39214
  });
39160
- var siteBannerSettingsSchema = z69.discriminatedUnion("enabled", [
39161
- z69.object({
39162
- enabled: z69.literal(false)
39215
+ var siteBannerSettingsSchema = z67.discriminatedUnion("enabled", [
39216
+ z67.object({
39217
+ enabled: z67.literal(false)
39163
39218
  }),
39164
- z69.object({
39165
- enabled: z69.literal(true),
39219
+ z67.object({
39220
+ enabled: z67.literal(true),
39166
39221
  scope: siteBannerScopeSchema,
39167
39222
  tone: siteBannerToneSchema,
39168
39223
  body: siteBannerBodySchema,
@@ -39176,7 +39231,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
39176
39231
  const analysis = analyzeSiteBannerBody(value.body);
39177
39232
  for (const issue of analysis.issues) {
39178
39233
  ctx.addIssue({
39179
- code: z69.ZodIssueCode.custom,
39234
+ code: z67.ZodIssueCode.custom,
39180
39235
  path: ["body"],
39181
39236
  message: siteBannerBodyIssueMessage(issue)
39182
39237
  });
@@ -39438,71 +39493,71 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
39438
39493
  var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
39439
39494
 
39440
39495
  // ../api/src/aiPlayground.ts
39441
- import { z as z70 } from "zod";
39442
- var Rfc6902PatchOp = z70.discriminatedUnion("op", [
39496
+ import { z as z68 } from "zod";
39497
+ var Rfc6902PatchOp = z68.discriminatedUnion("op", [
39443
39498
  // Standard RFC-6902 operations
39444
- z70.object({
39445
- op: z70.literal("add"),
39446
- path: z70.string(),
39447
- value: z70.unknown()
39499
+ z68.object({
39500
+ op: z68.literal("add"),
39501
+ path: z68.string(),
39502
+ value: z68.unknown()
39448
39503
  }),
39449
- z70.object({
39450
- op: z70.literal("remove"),
39451
- path: z70.string()
39504
+ z68.object({
39505
+ op: z68.literal("remove"),
39506
+ path: z68.string()
39452
39507
  }),
39453
- z70.object({
39454
- op: z70.literal("replace"),
39455
- path: z70.string(),
39456
- value: z70.unknown()
39508
+ z68.object({
39509
+ op: z68.literal("replace"),
39510
+ path: z68.string(),
39511
+ value: z68.unknown()
39457
39512
  }),
39458
- z70.object({
39459
- op: z70.literal("move"),
39460
- from: z70.string(),
39461
- path: z70.string()
39513
+ z68.object({
39514
+ op: z68.literal("move"),
39515
+ from: z68.string(),
39516
+ path: z68.string()
39462
39517
  }),
39463
- z70.object({
39464
- op: z70.literal("copy"),
39465
- from: z70.string(),
39466
- path: z70.string()
39518
+ z68.object({
39519
+ op: z68.literal("copy"),
39520
+ from: z68.string(),
39521
+ path: z68.string()
39467
39522
  }),
39468
39523
  // Block-level operations (Phase 2)
39469
- z70.object({
39470
- op: z70.literal("add_block"),
39471
- blockKind: z70.string(),
39472
- afterBlockId: z70.string().nullable(),
39473
- content: z70.record(z70.string(), z70.unknown()),
39474
- rationale: z70.string()
39524
+ z68.object({
39525
+ op: z68.literal("add_block"),
39526
+ blockKind: z68.string(),
39527
+ afterBlockId: z68.string().nullable(),
39528
+ content: z68.record(z68.string(), z68.unknown()),
39529
+ rationale: z68.string()
39475
39530
  }),
39476
- z70.object({
39477
- op: z70.literal("delete_block"),
39478
- blockId: z70.string(),
39479
- rationale: z70.string()
39531
+ z68.object({
39532
+ op: z68.literal("delete_block"),
39533
+ blockId: z68.string(),
39534
+ rationale: z68.string()
39480
39535
  }),
39481
- z70.object({
39482
- op: z70.literal("reorder_block"),
39483
- blockId: z70.string(),
39484
- afterBlockId: z70.string().nullable(),
39485
- rationale: z70.string()
39536
+ z68.object({
39537
+ op: z68.literal("reorder_block"),
39538
+ blockId: z68.string(),
39539
+ afterBlockId: z68.string().nullable(),
39540
+ rationale: z68.string()
39486
39541
  })
39487
39542
  ]);
39488
- var PlaygroundProposeRequest = z70.object({
39489
- request: z70.string().min(1).max(2e3)
39543
+ var PlaygroundProposeRequest = z68.object({
39544
+ request: z68.string().min(1).max(2e3)
39490
39545
  });
39491
- var MultiPagePatchEnvelope = z70.object({
39492
- pageId: z70.string(),
39493
- blockId: z70.string().optional(),
39546
+ var MultiPagePatchEnvelope = z68.object({
39547
+ pageId: z68.string(),
39548
+ blockId: z68.string().optional(),
39494
39549
  // Not present for page-level ops
39495
- blockKind: z70.string().optional(),
39496
- blockPurpose: z70.string().optional().nullable(),
39497
- ops: z70.array(Rfc6902PatchOp),
39498
- rationale: z70.string(),
39499
- currentContent: z70.record(z70.string(), z70.unknown()).optional()
39500
- });
39501
- var MultiPageUpdateResponse = z70.object({
39502
- patches: z70.array(MultiPagePatchEnvelope),
39503
- assistantMessage: z70.string(),
39504
- pagesModified: z70.number(),
39505
- toolCallsUsed: z70.number()
39550
+ blockKind: z68.string().optional(),
39551
+ blockPurpose: z68.string().optional().nullable(),
39552
+ ops: z68.array(Rfc6902PatchOp),
39553
+ rationale: z68.string(),
39554
+ currentContent: z68.record(z68.string(), z68.unknown()).optional()
39555
+ });
39556
+ var MultiPageUpdateResponse = z68.object({
39557
+ patches: z68.array(MultiPagePatchEnvelope),
39558
+ assistantMessage: z68.string(),
39559
+ pagesModified: z68.number(),
39560
+ toolCallsUsed: z68.number()
39506
39561
  });
39507
39562
 
39508
39563
  // src/data/prefetchBlockData.ts