@riverbankcms/sdk 0.127.0 → 0.129.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 (178) hide show
  1. package/README.md +33 -0
  2. package/dist/{PreviewEditorSidebar-BXtfF7tp.mjs → PreviewEditorSidebar-B43CJ0g_.mjs} +9 -33
  3. package/dist/{PreviewEditorUI-Dou73Q0K.mjs → PreviewEditorUI-DHirVkeM.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-DgFDIwvK.mjs → PreviewQueryProvider-B1kbhaJD.mjs} +1 -1
  5. package/dist/SdkPreviewModeRuntime-BJumZy1B.mjs +11209 -0
  6. package/dist/{SiteChromeCustomizeContext-DZiDBAYu.mjs → SiteChromeCustomizeContext-D9SlpwEj.mjs} +31757 -1621
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +288 -36
  8. package/dist/_dts/api/src/bookingClosures.d.ts +19 -3
  9. package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -3
  10. package/dist/_dts/api/src/bookingRecords.d.ts +0 -13
  11. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +2 -2
  12. package/dist/_dts/api/src/communications.d.ts +2 -1
  13. package/dist/_dts/api/src/contactFormSummary.d.ts +15 -0
  14. package/dist/_dts/api/src/contentRuntime.d.ts +2 -5
  15. package/dist/_dts/api/src/endpoints.d.ts +1 -1
  16. package/dist/_dts/api/src/footerSettings.d.ts +11 -0
  17. package/dist/_dts/api/src/index.d.ts +2 -1
  18. package/dist/_dts/api/src/occurrenceScheduling.d.ts +48 -0
  19. package/dist/_dts/api/src/participantMessaging.d.ts +5 -3
  20. package/dist/_dts/api/src/publicExperience/siteEndpoints.d.ts +7 -0
  21. package/dist/_dts/api/src/sdkContracts.d.ts +7 -5
  22. package/dist/_dts/api/src/siteOperations.d.ts +12 -3
  23. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +3 -2
  24. package/dist/_dts/blocks/src/PageRenderer.d.ts +20 -10
  25. package/dist/_dts/blocks/src/client/form.d.ts +1 -0
  26. package/dist/_dts/blocks/src/client/newsletter-form.d.ts +1 -0
  27. package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -0
  28. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -8
  29. package/dist/_dts/blocks/src/index.d.ts +2 -1
  30. package/dist/_dts/blocks/src/pageRendererBoundaries.d.ts +30 -0
  31. package/dist/_dts/blocks/src/pageRenderingMode.d.ts +37 -0
  32. package/dist/_dts/blocks/src/rendering/server.d.ts +1 -1
  33. package/dist/_dts/blocks/src/server.d.ts +1 -1
  34. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +41 -0
  35. package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +14 -23
  36. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +1 -1
  37. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +109 -23
  38. package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
  39. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +42 -108
  40. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -54
  41. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +1 -1
  42. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +26 -0
  43. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +8 -0
  44. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +21 -0
  45. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +29 -78
  46. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
  47. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +3 -6
  48. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +27 -8
  49. package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +21 -0
  50. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +3 -1
  51. package/dist/_dts/content-editor/src/FooterEngagementEditorFields.d.ts +31 -0
  52. package/dist/_dts/content-editor/src/FooterEngagementEditorPanel.d.ts +17 -0
  53. package/dist/_dts/content-editor/src/footerComposer.d.ts +3 -0
  54. package/dist/_dts/content-editor/src/footerEngagementDraft.d.ts +57 -0
  55. package/dist/_dts/content-editor/src/footerEngagementEditor.d.ts +11 -0
  56. package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +13 -0
  57. package/dist/_dts/content-editor/src/index.d.ts +1 -0
  58. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +35 -0
  59. package/dist/_dts/core/src/footer-arrangement.d.ts +2 -0
  60. package/dist/_dts/core/src/footer-composition-types.d.ts +118 -0
  61. package/dist/_dts/core/src/footer-composition.d.ts +7 -116
  62. package/dist/_dts/core/src/footer-engagement.d.ts +30 -0
  63. package/dist/_dts/core/src/index.d.ts +4 -0
  64. package/dist/_dts/core/src/newsletter-signup-destination.d.ts +38 -0
  65. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +73 -6
  66. package/dist/_dts/db/src/index.d.ts +1 -0
  67. package/dist/_dts/db/src/schemas/forms.d.ts +72 -2
  68. package/dist/_dts/db/src/schemas/standard-contact.d.ts +114 -0
  69. package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +2 -0
  70. package/dist/_dts/preview-next/src/client/blocks/previewBatchLoaderParams.d.ts +6 -0
  71. package/dist/_dts/preview-next/src/client/index.d.ts +47 -47
  72. package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +2 -5
  73. package/dist/_dts/preview-next/src/client/preview/EntrySlotBlockEditorPanel.d.ts +2 -5
  74. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -5
  75. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -4
  76. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +19 -7
  77. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +30 -23
  78. package/dist/_dts/preview-next/src/client/preview/PreviewThemedSiteDocument.d.ts +18 -5
  79. package/dist/_dts/preview-next/src/client/preview/themeRuntime.d.ts +9 -0
  80. package/dist/_dts/preview-next/src/client/sdk/SdkPreviewMode.d.ts +21 -6
  81. package/dist/_dts/preview-next/src/client/sdk-runtime.d.ts +8 -8
  82. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +6 -5
  83. package/dist/_dts/sdk/src/cli/commands/push/execute/footer.d.ts +9 -0
  84. package/dist/_dts/sdk/src/cli/content/footerFile.d.ts +10 -0
  85. package/dist/_dts/sdk/src/cli/content/reader.d.ts +3 -5
  86. package/dist/_dts/sdk/src/cli/site-commands/footerCommands.d.ts +15 -3
  87. package/dist/_dts/sdk/src/client/combineAbortSignals.d.ts +2 -0
  88. package/dist/_dts/sdk/src/client/management/types.d.ts +6 -15
  89. package/dist/_dts/sdk/src/client/types.d.ts +10 -2
  90. package/dist/_dts/sdk/src/client/wholeSeriesReadOperations.d.ts +11 -0
  91. package/dist/_dts/sdk/src/config/types.d.ts +1 -1
  92. package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
  93. package/dist/_dts/sdk/src/contracts/event-registration-content.d.ts +16 -0
  94. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -15
  95. package/dist/_dts/sdk/src/next/catch-all.d.ts +6 -0
  96. package/dist/_dts/sdk/src/next/index.d.ts +2 -1
  97. package/dist/_dts/sdk/src/next/renderSdkContent.d.ts +33 -0
  98. package/dist/_dts/sdk/src/next/types.d.ts +23 -9
  99. package/dist/_dts/sdk/src/preview-next/before-render.d.ts +4 -6
  100. package/dist/_dts/sdk/src/preview-next/client/index.d.ts +3 -3
  101. package/dist/_dts/sdk/src/preview-next/client/runtime.d.ts +1 -1
  102. package/dist/_dts/sdk/src/public-api/contracts.d.ts +4 -18
  103. package/dist/_dts/sdk/src/public-api/teamMemberContracts.d.ts +17 -0
  104. package/dist/_dts/sdk/src/public-api/wholeSeriesContracts.d.ts +2 -0
  105. package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +32 -3
  106. package/dist/_dts/sdk/src/rendering/components/Block.shared.d.ts +13 -2
  107. package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +31 -18
  108. package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +20 -9
  109. package/dist/_dts/sdk/src/rendering/index.d.ts +8 -4
  110. package/dist/_dts/sdk/src/rendering/mediaAssets.d.ts +8 -2
  111. package/dist/_dts/sdk/src/rendering/renderingMode.d.ts +23 -0
  112. package/dist/_dts/sdk/src/rendering/server.d.ts +5 -3
  113. package/dist/_dts/sdk/src/rendering/themeRuntime.d.ts +6 -0
  114. package/dist/_dts/sdk/src/version.d.ts +1 -1
  115. package/dist/_dts/site-commands/src/commandContract.d.ts +8 -1
  116. package/dist/_dts/site-commands/src/commands.d.ts +16 -2
  117. package/dist/_dts/theme-core/src/header/paintTargets.d.ts +10 -4
  118. package/dist/_dts/theme-core/src/header/surfaceRules.d.ts +2 -3
  119. package/dist/cli/index.mjs +5535 -4835
  120. package/dist/cli/init-docs/content/workflow-preview-mode.md +24 -11
  121. package/dist/client/{courseRegistration-DTEYWL6Z.mjs → CourseRegistrationWizard-xRmA7REV.mjs} +329 -49
  122. package/dist/client/{DiscountCodeDisclosure-BDFRp8Y7.mjs → DiscountCodeDisclosure-B9vriL5C.mjs} +1 -1
  123. package/dist/client/{EventCombined.client-DJgF1_lf.mjs → EventCombined.client-BgVnVTlz.mjs} +2 -2
  124. package/dist/client/{EventListing.client-CnWGNjOr.mjs → EventListing.client-CqdsO7jO.mjs} +2 -2
  125. package/dist/client/{LeafletStaticMap-BISs9Bl7.mjs → LeafletStaticMap-CKPxot9M.mjs} +1 -1
  126. package/dist/client/{StepIndicator-D8gVYkK-.mjs → StepIndicator-DGCYuBJ1.mjs} +2 -2
  127. package/dist/client/{accordion-DFDajgDz.mjs → accordion-BfN5Eqd-.mjs} +1 -1
  128. package/dist/client/{bookingForm-Bdqj9-52.mjs → bookingForm-DOvCpBFP.mjs} +5 -5
  129. package/dist/client/{carousel-Cvqf-kN8.mjs → carousel-DPNmiH0f.mjs} +1 -1
  130. package/dist/client/{cart-CuH2TJXP.mjs → cart--egVXlrR.mjs} +3 -3
  131. package/dist/client/{checkout-CMNPpejZ.mjs → checkout-DywWtMcq.mjs} +3 -3
  132. package/dist/client/client.mjs +5324 -4942
  133. package/dist/client/courseRegistration-Dk9qFVwt.mjs +46 -0
  134. package/dist/client/{eventCalendar-BW-XoxZ0.mjs → eventCalendar-Bkz2HjlS.mjs} +4 -4
  135. package/dist/client/{eventCombined-Bpn7s0y9.mjs → eventCombined-D4kipYWg.mjs} +2 -2
  136. package/dist/client/{eventDetails-D2uUSTMH.mjs → eventDetails-Dz_5ix2Q.mjs} +56 -35
  137. package/dist/client/{eventListing-CVr1c094.mjs → eventListing-D0vm-zST.mjs} +2 -2
  138. package/dist/client/{eventRegistration-Dv4AvkMw.mjs → eventRegistration-Cw1E4Q4p.mjs} +58 -6
  139. package/dist/client/{form-DxdKf9fs.mjs → form-C2Zf1n3K.mjs} +1 -1
  140. package/dist/client/{headerSection-BaXI5Sro.mjs → headerSection-CP05gzdc.mjs} +2 -2
  141. package/dist/client/hooks.mjs +212 -61
  142. package/dist/client/{locationMap-BEtW2fKz.mjs → locationMap-Cl3x9PYJ.mjs} +2 -2
  143. package/dist/client/{newsletterForm-BKKs0S4R.mjs → newsletterForm-DyEJoClm.mjs} +26 -20
  144. package/dist/client/{pricing-ClkqcElA.mjs → pricing-DGuNR1W4.mjs} +1 -1
  145. package/dist/client/{productDetail-H-ru8dyy.mjs → productDetail-Cq-HrGew.mjs} +3 -3
  146. package/dist/client/{productList-Buyi5c0C.mjs → productList-DbB3jwqd.mjs} +3 -3
  147. package/dist/client/{propsDecoder-BF7i6Ijg.mjs → propsDecoder-CiTuhUwY.mjs} +130 -87
  148. package/dist/client/rendering/client.mjs +416 -208
  149. package/dist/client/rendering/islands.mjs +18 -18
  150. package/dist/client/rendering.mjs +6026 -5596
  151. package/dist/client/{scrollToBlock-D_7t8yWb.mjs → scrollToBlock-CShkRqab.mjs} +1 -1
  152. package/dist/client/{shop-CF7SZQNX.mjs → shop-Cu4Ib-ZA.mjs} +5 -5
  153. package/dist/client/{shop-commerce-DA7_Rq5p.mjs → shop-commerce-BzpsOdh7.mjs} +4 -4
  154. package/dist/client/{shop-commerce-store-BmLqW7Gh.mjs → shop-commerce-store-DaE7Fhj8.mjs} +1 -1
  155. package/dist/client/{shopShared-WL-E1znM.mjs → shopShared-cF0c20vB.mjs} +2 -2
  156. package/dist/client/{useEventFilters-rc8VLeLV.mjs → useEventFilters-QZ3HMgaJ.mjs} +2 -2
  157. package/dist/client/{usePolling-1ncrfd4S.mjs → usePolling-BKf0GcE-.mjs} +2 -2
  158. package/dist/preview-next/before-render.mjs +11 -4
  159. package/dist/preview-next/client/runtime.mjs +4 -4
  160. package/dist/preview-next/middleware.mjs +1 -1
  161. package/dist/{previewAuthStore-Dev9CdG9.mjs → previewAuthStore-BesgU5Xu.mjs} +1 -1
  162. package/dist/{sdk-runtime-BnrCCFJq.mjs → sdk-runtime-CfZd5pAm.mjs} +2 -2
  163. package/dist/{separator-CFvBx2yl.mjs → separator-DkTe68HE.mjs} +1 -1
  164. package/dist/server/components.mjs +950 -639
  165. package/dist/server/config-validation.mjs +209 -61
  166. package/dist/server/config.mjs +209 -61
  167. package/dist/server/data.mjs +212 -61
  168. package/dist/server/index.mjs +40 -16
  169. package/dist/server/next.mjs +1181 -835
  170. package/dist/server/page-converter.mjs +211 -64
  171. package/dist/server/prebuild.mjs +1 -1
  172. package/dist/server/rendering/server.mjs +974 -637
  173. package/dist/server/rendering.mjs +980 -644
  174. package/dist/server/routing.mjs +254 -80
  175. package/dist/server/server.mjs +252 -77
  176. package/package.json +1 -1
  177. package/dist/SdkPreviewModeRuntime-B0HPXr-l.mjs +0 -39546
  178. package/dist/client/MagicLinkForm-b5E_HoG9.mjs +0 -327
@@ -454,6 +454,11 @@ function addLocalScheduleDays(date, days) {
454
454
  };
455
455
  }
456
456
  //#endregion
457
+ //#region ../core/src/newsletter-signup-destination.ts
458
+ function parseNewsletterSignupDestinationProvider(value) {
459
+ return value === "riverbank" || value === "mailchimp" ? value : null;
460
+ }
461
+ //#endregion
457
462
  //#region ../blocks/src/contracts/runtime.ts
458
463
  function decodeSuccess(value) {
459
464
  return {
@@ -1448,7 +1453,7 @@ const publicWholeSeriesOfferingSchema = z$1.object({
1448
1453
  });
1449
1454
  /** Deployed course blocks retain this schema alias for stored content. */
1450
1455
  const publicCourseSchema = publicWholeSeriesOfferingSchema;
1451
- z$1.array(publicWholeSeriesOfferingSchema);
1456
+ const publicCoursesArraySchema = z$1.array(publicWholeSeriesOfferingSchema);
1452
1457
  //#endregion
1453
1458
  //#region ../blocks/src/system/constants/events.ts
1454
1459
  const eventCalendarDisplayModeValues = [
@@ -9691,6 +9696,22 @@ function normalizeBlockLayout(layout) {
9691
9696
  function deriveComponentName(id) {
9692
9697
  return `${id.replace(/^block\./, "").replace(/-/g, ".").replace(/([a-z])([A-Z])/g, "$1.$2").toLowerCase()}.default`;
9693
9698
  }
9699
+ //#endregion
9700
+ //#region ../blocks/src/system/blocks/event-registration.shared.ts
9701
+ /**
9702
+ * Flat occurrence context passed from `PageRenderer.$root.occurrenceContext`.
9703
+ * Kept in a shared module so the block definition and runtime contracts can
9704
+ * depend on the same schema without creating an initialization cycle.
9705
+ */
9706
+ const occurrenceContextSchema = z$1.object({
9707
+ id: z$1.string(),
9708
+ seriesId: z$1.string(),
9709
+ startsAt: z$1.string(),
9710
+ endsAt: z$1.string(),
9711
+ timeZone: z$1.string(),
9712
+ capacityOverride: z$1.number().nullable().optional(),
9713
+ overrides: z$1.record(z$1.string(), z$1.unknown()).nullable().optional()
9714
+ }).nullable();
9694
9715
  createBlockManifest({
9695
9716
  id: "block.event-details",
9696
9717
  version: "1.0.0",
@@ -9845,15 +9866,6 @@ createBlockManifest({
9845
9866
  })], { gap: "lg" })
9846
9867
  })]
9847
9868
  });
9848
- const occurrenceContextSchema$1 = z$1.object({
9849
- id: z$1.string(),
9850
- seriesId: z$1.string(),
9851
- startsAt: z$1.string(),
9852
- endsAt: z$1.string(),
9853
- timeZone: z$1.string(),
9854
- capacityOverride: z$1.number().nullable().optional(),
9855
- overrides: z$1.record(z$1.string(), z$1.unknown()).nullable().optional()
9856
- }).nullable();
9857
9869
  const eventAutoApplyDiscountPreviewBaseSchema = z$1.object({
9858
9870
  id: z$1.string(),
9859
9871
  publicLabel: z$1.string(),
@@ -9874,7 +9886,7 @@ z$1.object({
9874
9886
  sitePasses: publicPassProductCollectionSchema,
9875
9887
  siteMemberships: publicMembershipProductCollectionSchema,
9876
9888
  autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
9877
- }).optional(), occurrenceContextSchema$1.optional();
9889
+ }).optional(), occurrenceContextSchema.optional();
9878
9890
  //#endregion
9879
9891
  //#region ../blocks/src/contracts/non-block-islands.ts
9880
9892
  const accordionIslandSchema = z$1.object({
@@ -10113,22 +10125,6 @@ const eventCombinedInteractiveIslandPropsCodec = createInteractiveIslandCodec({
10113
10125
  })
10114
10126
  });
10115
10127
  //#endregion
10116
- //#region ../blocks/src/system/blocks/event-registration.shared.ts
10117
- /**
10118
- * Flat occurrence context passed from `PageRenderer.$root.occurrenceContext`.
10119
- * Kept in a shared module so the block definition and runtime contracts can
10120
- * depend on the same schema without creating an initialization cycle.
10121
- */
10122
- const occurrenceContextSchema = z$1.object({
10123
- id: z$1.string(),
10124
- seriesId: z$1.string(),
10125
- startsAt: z$1.string(),
10126
- endsAt: z$1.string(),
10127
- timeZone: z$1.string(),
10128
- capacityOverride: z$1.number().nullable().optional(),
10129
- overrides: z$1.record(z$1.string(), z$1.unknown()).nullable().optional()
10130
- }).nullable();
10131
- //#endregion
10132
10128
  //#region ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
10133
10129
  /**
10134
10130
  * Steps that are part of the main wizard and should show the step indicator
@@ -10245,28 +10241,37 @@ const EVENT_REGISTRATION_SHELL_STEP_LABELS = [
10245
10241
  "Payment"
10246
10242
  ];
10247
10243
  const eventRegistrationPublicEventSchema = z$1.preprocess(normalizeEventRegistrationEventInput, publicEventSchema);
10248
- const eventRegistrationSourceSchema = z$1.object({
10249
- siteId: z$1.string().optional(),
10250
- apiBaseUrl: z$1.string().optional(),
10251
- portalToken: z$1.string().nullable().optional(),
10252
- previewToken: z$1.string().nullable().optional(),
10244
+ const eventRegistrationHydrationSchemaShape = {
10253
10245
  occurrenceContext: occurrenceContextSchema.optional(),
10254
10246
  subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
10255
10247
  events: z$1.array(eventRegistrationPublicEventSchema).nullable().optional(),
10256
- className: z$1.string().nullable().optional(),
10257
- buttonText: z$1.string().nullable().optional(),
10258
- maxTickets: z$1.string().nullable().optional(),
10248
+ wholeSeriesOfferings: publicCoursesArraySchema.nullable().optional(),
10249
+ wholeSeriesOffering: publicCourseSchema.nullable().optional(),
10250
+ maxTickets: z$1.string().optional(),
10259
10251
  showVenue: z$1.boolean().optional(),
10260
10252
  showCapacity: z$1.boolean().optional(),
10253
+ showSessions: z$1.boolean().optional(),
10254
+ showPrice: z$1.boolean().optional(),
10261
10255
  successMessage: z$1.string().optional(),
10262
10256
  waitlistMessage: z$1.string().optional(),
10257
+ membershipMessage: z$1.string().optional(),
10263
10258
  buttonVariant: registrationButtonVariantSchema.optional(),
10264
10259
  overlayEnabled: z$1.boolean().optional(),
10265
10260
  spamProtectionEnabled: z$1.boolean().optional(),
10266
- stage: previewStageSchema.optional(),
10267
10261
  supportEmail: z$1.string().optional(),
10268
10262
  sitePasses: publicPassProductCollectionSchema.nullable().optional(),
10269
10263
  siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
10264
+ };
10265
+ const eventRegistrationSourceSchema = z$1.object({
10266
+ siteId: z$1.string().optional(),
10267
+ apiBaseUrl: z$1.string().optional(),
10268
+ portalToken: z$1.string().nullable().optional(),
10269
+ previewToken: z$1.string().nullable().optional(),
10270
+ ...eventRegistrationHydrationSchemaShape,
10271
+ className: z$1.string().nullable().optional(),
10272
+ buttonText: z$1.string().nullable().optional(),
10273
+ maxTickets: z$1.string().nullable().optional(),
10274
+ stage: previewStageSchema.optional()
10270
10275
  });
10271
10276
  const eventRegistrationDisplaySchema = z$1.object({
10272
10277
  kind: z$1.literal("event-registration"),
@@ -10277,22 +10282,7 @@ const eventRegistrationDisplaySchema = z$1.object({
10277
10282
  stepLabels: z$1.array(z$1.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
10278
10283
  summaryButtonText: z$1.string()
10279
10284
  });
10280
- const eventRegistrationHydrationSchema = z$1.object({
10281
- occurrenceContext: occurrenceContextSchema.optional(),
10282
- subject: eventRegistrationPageSurfaceSubjectSchema.nullable().optional(),
10283
- events: z$1.array(eventRegistrationPublicEventSchema).nullable().optional(),
10284
- maxTickets: z$1.string().optional(),
10285
- showVenue: z$1.boolean().optional(),
10286
- showCapacity: z$1.boolean().optional(),
10287
- successMessage: z$1.string().optional(),
10288
- waitlistMessage: z$1.string().optional(),
10289
- buttonVariant: registrationButtonVariantSchema.optional(),
10290
- overlayEnabled: z$1.boolean().optional(),
10291
- spamProtectionEnabled: z$1.boolean().optional(),
10292
- supportEmail: z$1.string().optional(),
10293
- sitePasses: publicPassProductCollectionSchema.nullable().optional(),
10294
- siteMemberships: publicMembershipProductCollectionSchema.nullable().optional()
10295
- });
10285
+ const eventRegistrationHydrationSchema = z$1.object(eventRegistrationHydrationSchemaShape);
10296
10286
  const eventRegistrationRenderSchema = z$1.object({
10297
10287
  display: eventRegistrationDisplaySchema,
10298
10288
  hydration: eventRegistrationHydrationSchema
@@ -10373,11 +10363,16 @@ const eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
10373
10363
  occurrenceContext: source.occurrenceContext ?? null,
10374
10364
  subject: source.subject ?? null,
10375
10365
  events: source.events ?? null,
10366
+ wholeSeriesOfferings: source.wholeSeriesOfferings ?? null,
10367
+ wholeSeriesOffering: source.wholeSeriesOffering ?? null,
10376
10368
  maxTickets: source.maxTickets ?? void 0,
10377
10369
  showVenue: source.showVenue,
10378
10370
  showCapacity: source.showCapacity,
10371
+ showSessions: source.showSessions,
10372
+ showPrice: source.showPrice,
10379
10373
  successMessage: source.successMessage,
10380
10374
  waitlistMessage: source.waitlistMessage,
10375
+ membershipMessage: source.membershipMessage,
10381
10376
  buttonVariant: source.buttonVariant,
10382
10377
  overlayEnabled: source.overlayEnabled,
10383
10378
  spamProtectionEnabled: source.spamProtectionEnabled,
@@ -10655,9 +10650,6 @@ function parseSignedNewsletterDestinationRef(value) {
10655
10650
  const trimmed = parseTrimmedString(value);
10656
10651
  return trimmed && SIGNED_DESTINATION_REF_PATTERN.test(trimmed) ? trimmed : null;
10657
10652
  }
10658
- function parseNewsletterSignupDestinationProvider(value) {
10659
- return value === "riverbank" || value === "mailchimp" ? value : null;
10660
- }
10661
10653
  function buildNewsletterSignupBlockRef(blockId) {
10662
10654
  const parsed = parseNewsletterSignupBlockId(blockId);
10663
10655
  return parsed ? {
@@ -10804,19 +10796,9 @@ const newsletterFieldSchema = z$1.object({
10804
10796
  });
10805
10797
  const newsletterSignupBlockIdSchema = z$1.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
10806
10798
  const signedNewsletterDestinationRefSchema = z$1.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
10807
- const newsletterPublicDestinationRefSchema = z$1.discriminatedUnion("tag", [z$1.object({
10808
- tag: z$1.literal("block_ref"),
10809
- blockId: newsletterSignupBlockIdSchema
10810
- }), z$1.object({
10811
- tag: z$1.literal("signed_destination_ref"),
10812
- token: signedNewsletterDestinationRefSchema
10813
- })]);
10814
- const newsletterSourceSchema = z$1.object({
10815
- blockId: z$1.string().nullable().optional(),
10799
+ const newsletterSourceCommonSchema = z$1.object({
10816
10800
  siteId: z$1.string().optional(),
10817
10801
  apiBaseUrl: z$1.string().optional(),
10818
- listId: z$1.string().nullable().optional(),
10819
- destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
10820
10802
  preset: newsletterPresetSchema.optional(),
10821
10803
  includePhone: z$1.boolean().optional(),
10822
10804
  buttonLabel: z$1.string().nullable().optional(),
@@ -10827,6 +10809,25 @@ const newsletterSourceSchema = z$1.object({
10827
10809
  spamProtectionEnabled: z$1.boolean().optional(),
10828
10810
  className: z$1.string().nullable().optional()
10829
10811
  });
10812
+ const newsletterSourceSchema = z$1.discriminatedUnion("source", [
10813
+ newsletterSourceCommonSchema.extend({
10814
+ source: z$1.literal("block"),
10815
+ blockId: z$1.string().nullable().optional(),
10816
+ listId: z$1.string().nullable().optional(),
10817
+ destinationProvider: newsletterDestinationProviderSchema.nullable().optional()
10818
+ }),
10819
+ newsletterSourceCommonSchema.extend({
10820
+ source: z$1.literal("signed-footer"),
10821
+ destinationRef: z$1.object({
10822
+ tag: z$1.literal("signed_destination_ref"),
10823
+ token: signedNewsletterDestinationRefSchema
10824
+ })
10825
+ }),
10826
+ newsletterSourceCommonSchema.extend({
10827
+ source: z$1.literal("legacy-direct-list"),
10828
+ listId: z$1.string().nullable()
10829
+ })
10830
+ ]);
10830
10831
  const newsletterDisplaySchema = z$1.object({
10831
10832
  kind: z$1.literal("newsletter-form"),
10832
10833
  className: z$1.string().nullable(),
@@ -10837,8 +10838,26 @@ const newsletterDisplaySchema = z$1.object({
10837
10838
  fields: z$1.array(newsletterFieldSchema)
10838
10839
  });
10839
10840
  const newsletterHydrationSchema = z$1.object({
10840
- destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
10841
- listId: z$1.string().nullable().optional(),
10841
+ target: z$1.discriminatedUnion("tag", [
10842
+ z$1.object({
10843
+ tag: z$1.literal("block-source"),
10844
+ destinationRef: z$1.object({
10845
+ tag: z$1.literal("block_ref"),
10846
+ blockId: newsletterSignupBlockIdSchema
10847
+ }).nullable()
10848
+ }),
10849
+ z$1.object({
10850
+ tag: z$1.literal("signed-footer-source"),
10851
+ destinationRef: z$1.object({
10852
+ tag: z$1.literal("signed_destination_ref"),
10853
+ token: signedNewsletterDestinationRefSchema
10854
+ })
10855
+ }),
10856
+ z$1.object({
10857
+ tag: z$1.literal("legacy-direct-list"),
10858
+ listId: z$1.string().nullable()
10859
+ })
10860
+ ]),
10842
10861
  preset: newsletterPresetSchema,
10843
10862
  includePhone: z$1.boolean(),
10844
10863
  tags: z$1.string().nullable().optional(),
@@ -10866,28 +10885,52 @@ function buildNewsletterDisplay(source) {
10866
10885
  fields: getPresetFields(preset, { includePhone })
10867
10886
  };
10868
10887
  }
10869
- const newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
10870
- runtime: defineProgressiveBlockRuntime({
10871
- kind: "progressive",
10872
- contracts: {
10873
- source: createZodCodec(newsletterSourceSchema),
10874
- render: createZodCodec(newsletterRenderSchema)
10875
- },
10876
- buildRender: (source) => {
10877
- const runtimeSource = deriveNewsletterSignupRuntimeSource(source);
10888
+ const newsletterFormBlockRuntime = defineProgressiveBlockRuntime({
10889
+ kind: "progressive",
10890
+ contracts: {
10891
+ source: createZodCodec(newsletterSourceSchema),
10892
+ render: createZodCodec(newsletterRenderSchema)
10893
+ },
10894
+ buildRender: (source) => {
10895
+ const runtimeSource = source.source === "block" ? deriveNewsletterSignupRuntimeSource(source) : null;
10896
+ return {
10897
+ display: buildNewsletterDisplay(source),
10898
+ hydration: {
10899
+ target: projectNewsletterFormHydrationTarget(source),
10900
+ preset: source.preset ?? "emailOnly",
10901
+ includePhone: source.includePhone ?? false,
10902
+ tags: runtimeSource ? runtimeSource.tags : source.tags,
10903
+ spamProtectionEnabled: source.spamProtectionEnabled
10904
+ }
10905
+ };
10906
+ }
10907
+ });
10908
+ function projectNewsletterFormHydrationTarget(source) {
10909
+ switch (source.source) {
10910
+ case "block": {
10911
+ const destinationRef = buildNewsletterSignupBlockRef(source.blockId);
10912
+ if (destinationRef?.tag === "block_ref") return {
10913
+ tag: "block-source",
10914
+ destinationRef
10915
+ };
10878
10916
  return {
10879
- display: buildNewsletterDisplay(source),
10880
- hydration: {
10881
- destinationRef: buildNewsletterSignupBlockRef(source.blockId),
10882
- listId: runtimeSource.listId,
10883
- preset: source.preset ?? "emailOnly",
10884
- includePhone: source.includePhone ?? false,
10885
- tags: runtimeSource.tags,
10886
- spamProtectionEnabled: source.spamProtectionEnabled
10887
- }
10917
+ tag: "legacy-direct-list",
10918
+ listId: source.listId ?? null
10888
10919
  };
10889
10920
  }
10890
- }),
10921
+ case "signed-footer": return {
10922
+ tag: "signed-footer-source",
10923
+ destinationRef: source.destinationRef
10924
+ };
10925
+ case "legacy-direct-list": return {
10926
+ tag: "legacy-direct-list",
10927
+ listId: source.listId
10928
+ };
10929
+ default: return assertNever$2(source);
10930
+ }
10931
+ }
10932
+ const newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
10933
+ runtime: newsletterFormBlockRuntime,
10891
10934
  mode: "newsletter-form",
10892
10935
  meta: newsletterIslandMetaCodec,
10893
10936
  metaKeys: newsletterIslandMetaKeys,