@riverbankcms/sdk 0.140.0 → 0.142.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 (145) hide show
  1. package/dist/{PreviewEditorSidebar-CUyTzd5z.mjs → PreviewEditorSidebar-Dk6Dt11f.mjs} +24 -15
  2. package/dist/{PreviewEditorUI-Agkw4v5i.mjs → PreviewEditorUI-D6EQTsCA.mjs} +3 -3
  3. package/dist/{PreviewQueryProvider-CN0ewic5.mjs → PreviewQueryProvider-CC-EPkyQ.mjs} +1 -1
  4. package/dist/{SdkPreviewModeRuntime-DdbeAdS8.mjs → SdkPreviewModeRuntime-DH1n4ytY.mjs} +85 -54
  5. package/dist/{SiteChromeCustomizeContext-CqGOz-Kv.mjs → SiteChromeCustomizeContext-DunIzY0K.mjs} +797 -216
  6. package/dist/_dts/api/src/billing.d.ts +6 -1
  7. package/dist/_dts/api/src/bookingConfig.d.ts +1 -1
  8. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +2 -2
  9. package/dist/_dts/api/src/contentRuntime.d.ts +12 -31
  10. package/dist/_dts/api/src/domainConnection.d.ts +4 -0
  11. package/dist/_dts/api/src/endpoints.d.ts +0 -27
  12. package/dist/_dts/api/src/footerCompositionContracts.d.ts +25 -0
  13. package/dist/_dts/api/src/index.d.ts +2 -2
  14. package/dist/_dts/api/src/launchReadiness.d.ts +1 -0
  15. package/dist/_dts/api/src/navigation/dashboardSiteNav.d.ts +2 -1
  16. package/dist/_dts/api/src/publicBookingService.d.ts +1 -0
  17. package/dist/_dts/api/src/sdkConfig/layout.d.ts +13 -0
  18. package/dist/_dts/api/src/sdkContracts.d.ts +3 -8
  19. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +3 -26
  20. package/dist/_dts/api/src/siteOnboarding.d.ts +7 -0
  21. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -31
  22. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +6 -1
  23. package/dist/_dts/billing/src/site-arrangements.d.ts +18 -5
  24. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -0
  25. package/dist/_dts/blocks/src/pageRendererContracts.d.ts +2 -0
  26. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -0
  27. package/dist/_dts/blocks/src/system/blocks/events/eventSelectionFields.d.ts +122 -0
  28. package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +2 -1
  29. package/dist/_dts/blocks/src/system/blocks/events/shared/eventSelection.d.ts +11 -0
  30. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +56 -0
  31. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +8 -0
  32. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +47 -47
  34. package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +5 -0
  35. package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
  36. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +27 -1
  37. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +12 -180
  38. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +6 -90
  39. package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.d.ts +2 -1
  40. package/dist/_dts/blocks/src/system/runtime/nodes/appointment-services.d.ts +5 -1
  41. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +4 -0
  42. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.state.d.ts +5 -0
  43. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.d.ts +3 -0
  44. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useDiscountCodeUi.state.d.ts +10 -3
  45. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventCheckoutHandoffRestore.d.ts +9 -0
  46. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +4 -5
  47. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useSettledCommerceView.d.ts +37 -0
  48. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +4 -3
  49. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
  50. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +11 -101
  51. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +63 -2
  52. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listOptions.d.ts +2 -0
  53. package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +12 -0
  54. package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +4 -0
  55. package/dist/_dts/commerce/src/purchase/stripeCommissionMetadata.d.ts +1 -2
  56. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +3102 -3122
  57. package/dist/_dts/editor-blocks/src/block-editor/ColourFieldOptionsProvider.d.ts +7 -0
  58. package/dist/_dts/editor-blocks/src/block-editor/colourFieldVisibility.d.ts +7 -0
  59. package/dist/_dts/editor-blocks/src/block-editor/preparedManifest.d.ts +2 -0
  60. package/dist/_dts/editor-blocks/src/index.d.ts +1 -0
  61. package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +27 -1
  62. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +2 -2
  63. package/dist/_dts/preview-next/src/client/preview/PreviewFooterEditorPanel.d.ts +3 -6
  64. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -2
  65. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -2
  66. package/dist/_dts/preview-next/src/client/preview/footerInspection.d.ts +16 -0
  67. package/dist/_dts/preview-next/src/client/preview/sdkConfig.d.ts +6 -0
  68. package/dist/_dts/sdk/src/config/types.d.ts +2 -18
  69. package/dist/_dts/sdk/src/config/validation.d.ts +6 -0
  70. package/dist/_dts/sdk/src/public-api/contracts.d.ts +4 -1
  71. package/dist/_dts/sdk/src/version.d.ts +1 -1
  72. package/dist/_dts/theme-core/src/ThemeFontLoader.d.ts +17 -1
  73. package/dist/_dts/theme-core/src/buttons/affordanceSuppression.d.ts +17 -0
  74. package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +1 -1
  75. package/dist/_dts/theme-core/src/buttons/classNames.d.ts +16 -0
  76. package/dist/_dts/theme-core/src/buttons/generateButtonCss.d.ts +0 -6
  77. package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +4 -4
  78. package/dist/_dts/theme-core/src/footer/mode.d.ts +10 -1
  79. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  80. package/dist/_dts/theme-core/src/hosted-booking-appearance.d.ts +54 -12
  81. package/dist/_dts/theme-core/src/index.d.ts +1 -1
  82. package/dist/_dts/theme-core/src/schema.d.ts +1 -7
  83. package/dist/_dts/theme-core/src/site-styles/effectivePageDesign.d.ts +32 -0
  84. package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
  85. package/dist/client/{BookingConsentAgreement-CuKa82V4.mjs → BookingConsentAgreement-CnJeq3_r.mjs} +2 -2
  86. package/dist/client/{DiscountCodeDisclosure-BbYieKWB.mjs → DiscountCodeDisclosure-BINEO6J9.mjs} +1 -1
  87. package/dist/client/{EventCombined.client-LTfR1Aby.mjs → EventCombined.client-srxNQ6sZ.mjs} +11 -15
  88. package/dist/client/{EventListing.client-DUHpYSuo.mjs → EventListing.client-DbyVyGkX.mjs} +4 -17
  89. package/dist/client/{LeafletStaticMap-CHRupL6m.mjs → LeafletStaticMap-B-wpijzL.mjs} +1 -1
  90. package/dist/client/{accordion-6HiIFxNL.mjs → accordion-B-iUXU7n.mjs} +1 -1
  91. package/dist/client/{bookingForm-Dlmid43H.mjs → bookingForm-BXYPke5q.mjs} +5 -5
  92. package/dist/client/bookings.mjs +194 -102
  93. package/dist/client/{carousel-DmkZRRq_.mjs → carousel-Cr4aj63H.mjs} +1 -1
  94. package/dist/client/{cart-CIC24330.mjs → cart-DibP9WWa.mjs} +3 -3
  95. package/dist/client/{checkout-D1Zw9imo.mjs → checkout-CrSBVnL8.mjs} +3 -3
  96. package/dist/client/client.mjs +643 -192
  97. package/dist/client/{context-Cy1OayHx.mjs → context-Ces-AgdR.mjs} +1 -1
  98. package/dist/client/{dates-aDcfoLHr.mjs → dates-BXyNeNhB.mjs} +2 -2
  99. package/dist/client/{eventCalendar-FQxMPAjf.mjs → eventCalendar-HwpPeqrH.mjs} +11 -7
  100. package/dist/client/{eventCombined-Dr3ac6Hb.mjs → eventCombined-BpFUkuEI.mjs} +3 -3
  101. package/dist/client/{eventDetails-D-AzUHFQ.mjs → eventDetails-DK_agiWy.mjs} +4 -4
  102. package/dist/client/{eventListing-B3XxBf3i.mjs → eventListing-DhzHqP1c.mjs} +3 -3
  103. package/dist/client/{eventRegistration-I6EaokFD.mjs → eventRegistration-BdQ_Dn2d.mjs} +124 -32
  104. package/dist/client/{form-BbWckVWY.mjs → form-B1frcuzy.mjs} +2 -2
  105. package/dist/client/{headerSection-C9qU4Y7x.mjs → headerSection-CT5z460s.mjs} +2 -2
  106. package/dist/client/hooks.mjs +274 -45
  107. package/dist/client/{locationMap-CLCShvlG.mjs → locationMap-CIQXB9i2.mjs} +2 -2
  108. package/dist/client/{newsletterForm-Briukxzi.mjs → newsletterForm-BYNYZSes.mjs} +23 -10
  109. package/dist/client/{pricing-Copadu-2.mjs → pricing-CbTlAsmt.mjs} +1 -1
  110. package/dist/client/{productDetail-oujlRd-r.mjs → productDetail-CR7Z3yjS.mjs} +3 -3
  111. package/dist/client/{productList-BRiIRUcd.mjs → productList-DXj00vzR.mjs} +3 -3
  112. package/dist/client/{propsDecoder-CB2KS_ko.mjs → propsDecoder-DiLiBdek.mjs} +57 -16
  113. package/dist/client/rendering/client.mjs +476 -132
  114. package/dist/client/rendering/islands.mjs +17 -17
  115. package/dist/client/rendering.mjs +686 -195
  116. package/dist/client/{scrollToBlock-B1IS1_ua.mjs → scrollToBlock-CrcbBf0h.mjs} +28 -11
  117. package/dist/client/{shop-Vn6yNFED.mjs → shop-DgqiB_1b.mjs} +6 -6
  118. package/dist/client/{shop-commerce-BVTqipYp.mjs → shop-commerce-D_J781in.mjs} +5 -5
  119. package/dist/client/{shop-commerce-store-BVnJVy7v.mjs → shop-commerce-store-PGUbDwqe.mjs} +1 -1
  120. package/dist/client/{shopShared-COIeK77T.mjs → shopShared-C_Bb2zwG.mjs} +3 -3
  121. package/dist/client/{useEventFilters-DzIUcS9n.mjs → useEventFilters-CM17Xpr1.mjs} +17 -11
  122. package/dist/preview-next/before-render.mjs +0 -37
  123. package/dist/preview-next/client/runtime.mjs +4 -4
  124. package/dist/preview-next/editor-chrome.css +4 -8
  125. package/dist/preview-next/keepAlive.mjs +0 -37
  126. package/dist/preview-next/middleware.mjs +0 -37
  127. package/dist/{previewAuthStore-Gjb6r6vz.mjs → previewAuthStore-oVttoRDO.mjs} +0 -37
  128. package/dist/{sdk-runtime-CnCLvZRv.mjs → sdk-runtime-DhmuRhIX.mjs} +2 -2
  129. package/dist/{separator-DKDRJ1oH.mjs → separator-C3hlg9LH.mjs} +1 -1
  130. package/dist/server/components.mjs +452 -111
  131. package/dist/server/config-validation.mjs +263 -40
  132. package/dist/server/config.mjs +263 -40
  133. package/dist/server/data.mjs +274 -45
  134. package/dist/server/index.mjs +1 -38
  135. package/dist/server/next.mjs +427 -119
  136. package/dist/server/page-converter.mjs +208 -33
  137. package/dist/server/prebuild.mjs +1 -1
  138. package/dist/server/rendering/server.mjs +467 -119
  139. package/dist/server/rendering.mjs +467 -117
  140. package/dist/server/routing.mjs +301 -50
  141. package/dist/server/server.mjs +275 -83
  142. package/dist/server/theme-bridge.mjs +57 -23
  143. package/dist/server/theme.mjs +11 -9
  144. package/dist/styles/index.css +28 -2
  145. package/package.json +1 -1
@@ -3,18 +3,22 @@ import type { EligibilityData } from './types';
3
3
  export type EligibilityLookupState = {
4
4
  tag: 'idle';
5
5
  eligibility: null;
6
+ settledRequestKey: null;
6
7
  error: null;
7
8
  } | {
8
9
  tag: 'loading';
9
10
  eligibility: EligibilityData | null;
11
+ settledRequestKey: string | null;
10
12
  error: null;
11
13
  } | {
12
14
  tag: 'resolved';
13
15
  eligibility: EligibilityData;
16
+ settledRequestKey: string;
14
17
  error: null;
15
18
  } | {
16
19
  tag: 'failed';
17
20
  eligibility: null;
21
+ settledRequestKey: null;
18
22
  error: string;
19
23
  };
20
24
  export type EligibilityLookupAction = {
@@ -24,6 +28,7 @@ export type EligibilityLookupAction = {
24
28
  } | {
25
29
  type: 'resolved';
26
30
  eligibility: EligibilityData;
31
+ requestKey: string;
27
32
  } | {
28
33
  type: 'failed';
29
34
  message: string;
@@ -13,4 +13,7 @@ export declare function useDiscountCodeUi(options: {
13
13
  manualCodeEntryAllowed: boolean;
14
14
  autoAppliedDiscount: import("../../api/types").AutoAppliedDiscountPreview | null;
15
15
  discountsAvailableLoading: boolean;
16
+ discountAvailabilityRequestKey: string;
17
+ settledDiscountAvailabilityRequestKey: string | null;
16
18
  };
19
+ export type UseDiscountCodeUiResult = ReturnType<typeof useDiscountCodeUi>;
@@ -11,14 +11,19 @@ type DiscountAvailabilityState = Readonly<{
11
11
  tag: 'disabled';
12
12
  }> | Readonly<{
13
13
  tag: 'loading';
14
- }> | Readonly<{
14
+ previous: SettledDiscountAvailabilityState | null;
15
+ }> | SettledDiscountAvailabilityState | Readonly<{
16
+ tag: 'error';
17
+ requestKey: string;
18
+ }>;
19
+ type SettledDiscountAvailabilityState = Readonly<{
15
20
  tag: 'unavailable';
21
+ requestKey: string;
16
22
  }> | Readonly<{
17
23
  tag: 'available';
24
+ requestKey: string;
18
25
  manualCodeEntryAllowed: boolean;
19
26
  autoAppliedDiscount: AutoAppliedDiscountPreview | null;
20
- }> | Readonly<{
21
- tag: 'error';
22
27
  }>;
23
28
  export type DiscountCodeUiState = Readonly<{
24
29
  discountUiOpen: boolean;
@@ -31,9 +36,11 @@ export type DiscountCodeUiEvent = Readonly<{
31
36
  type: 'availability-loading';
32
37
  }> | Readonly<{
33
38
  type: 'availability-loaded';
39
+ requestKey: string;
34
40
  response: DiscountsAvailableResponse;
35
41
  }> | Readonly<{
36
42
  type: 'availability-failed';
43
+ requestKey: string;
37
44
  }> | Readonly<{
38
45
  type: 'discount-code-changed';
39
46
  code: string;
@@ -0,0 +1,9 @@
1
+ type CheckoutHandoffRestoreDeps = Readonly<{
2
+ addPageShowListener: (listener: (event: PageTransitionEvent) => void) => void;
3
+ removePageShowListener: (listener: (event: PageTransitionEvent) => void) => void;
4
+ reloadAtRegistration: () => void;
5
+ }>;
6
+ export declare function eventRegistrationReloadTarget(location: Pick<Location, 'pathname' | 'search'>): string;
7
+ export declare function useEventCheckoutHandoffRestore(active: boolean): void;
8
+ export declare function useEventCheckoutHandoffRestoreWithDeps(active: boolean, deps: CheckoutHandoffRestoreDeps): void;
9
+ export {};
@@ -1,5 +1,4 @@
1
1
  import type { EventRegistrationErrorAction } from '../../../../../../commerce/src/purchase/index';
2
- import type { DiscountContext } from '../../api/types';
3
2
  import type { EventTicketSelectionLine, EventRegistrationClientProps, EligibilityData, FormData, Guest, GuestErrors, PaymentSelection, PaymentStepState, PublicEvent, RegistrationEvent, RegistrationResult, RegistrationStep } from './types';
4
3
  import { usePortalAuth, useEligibility, useExistingEventRegistration } from './hooks';
5
4
  import { useWaitlistClaim } from '../../shared/useWaitlistClaim';
@@ -81,7 +80,7 @@ export declare function useEventRegistrationWizard(options: UseEventRegistration
81
80
  }> | null;
82
81
  slidingScaleSelectionMessage: string | null;
83
82
  selectedTicketType: import("../../..").EventRegistrationPricingOption | null;
84
- ticketSelectionSummaryLines: {
83
+ ticketSelectionSummaryLines: readonly {
85
84
  pricingOptionId: string | null;
86
85
  label: string;
87
86
  quantity: number;
@@ -145,7 +144,7 @@ export declare function useEventRegistrationWizard(options: UseEventRegistration
145
144
  manualCodeEntryAllowed: boolean;
146
145
  autoAppliedDiscount: import("../../api/types").AutoAppliedDiscountPreview | null;
147
146
  discountsAvailableLoading: boolean;
148
- discountContext: DiscountContext | null;
147
+ discountContext: import("../../api").DiscountContext | null;
149
148
  shouldShowDiscountToggle: boolean;
150
149
  verification: import("./useEventRegistrationStripeReturn").EventRegistrationStripeReturnResult;
151
150
  handleDetailsComplete: () => Promise<EventRegistrationDetailsCompleteResult>;
@@ -207,7 +206,7 @@ export declare function useEventRegistrationWizardWithDeps(options: UseEventRegi
207
206
  }> | null;
208
207
  slidingScaleSelectionMessage: string | null;
209
208
  selectedTicketType: import("../../..").EventRegistrationPricingOption | null;
210
- ticketSelectionSummaryLines: {
209
+ ticketSelectionSummaryLines: readonly {
211
210
  pricingOptionId: string | null;
212
211
  label: string;
213
212
  quantity: number;
@@ -271,7 +270,7 @@ export declare function useEventRegistrationWizardWithDeps(options: UseEventRegi
271
270
  manualCodeEntryAllowed: boolean;
272
271
  autoAppliedDiscount: import("../../api/types").AutoAppliedDiscountPreview | null;
273
272
  discountsAvailableLoading: boolean;
274
- discountContext: DiscountContext | null;
273
+ discountContext: import("../../api").DiscountContext | null;
275
274
  shouldShowDiscountToggle: boolean;
276
275
  verification: import("./useEventRegistrationStripeReturn").EventRegistrationStripeReturnResult;
277
276
  handleDetailsComplete: () => Promise<EventRegistrationDetailsCompleteResult>;
@@ -0,0 +1,37 @@
1
+ import type { BlockApiClient } from '../../api';
2
+ import type { DiscountContext } from '../../api/types';
3
+ import type { UseEligibilityResult } from './hooks';
4
+ import type { EligibilityData, PaymentSelection, RegistrationEvent } from './types';
5
+ import type { useDiscountCodeUi } from './useDiscountCodeUi';
6
+ export declare function useSettledCommerceView(input: Readonly<{
7
+ api: BlockApiClient;
8
+ useDiscountCodeUi: typeof useDiscountCodeUi;
9
+ eligibilityResult: UseEligibilityResult;
10
+ eligibility: EligibilityData | null;
11
+ currentEvent: RegistrationEvent | null;
12
+ paymentSelection: PaymentSelection;
13
+ eventRequiresPayment: boolean;
14
+ ticketsCount: number;
15
+ }>): {
16
+ discountUi: {
17
+ discountUiOpen: boolean;
18
+ setDiscountUiOpen: (isOpen: boolean) => void;
19
+ discountCode: string;
20
+ setDiscountCode: (code: string) => void;
21
+ discountsAvailable: boolean;
22
+ manualCodeEntryAllowed: boolean;
23
+ autoAppliedDiscount: import("../../api/types").AutoAppliedDiscountPreview | null;
24
+ discountsAvailableLoading: boolean;
25
+ discountAvailabilityRequestKey: string;
26
+ settledDiscountAvailabilityRequestKey: string | null;
27
+ };
28
+ discountContext: DiscountContext | null;
29
+ ticketSelectionSubtotalCents: number | null;
30
+ ticketSelectionSummaryLines: readonly {
31
+ pricingOptionId: string | null;
32
+ label: string;
33
+ quantity: number;
34
+ unitPriceCents: number;
35
+ subtotalCents: number;
36
+ }[];
37
+ };
@@ -3,7 +3,7 @@ import type { PublicEvent, ButtonVariant, EventLayout, ColumnOption, WeekStart,
3
3
  import type { CardRole } from "../../../../../../theme-core/src/cards/index";
4
4
  import { type CalendarViewLoadState } from "../../hooks/useCalendarEvents";
5
5
  import type { EventCombinedInteractiveIslandProps } from "./EventCombined.interactive";
6
- import type { EventCollectionHydration } from './shared/eventCollectionContract';
6
+ import type { EventCollectionHydration } from "./shared/eventCollectionContract";
7
7
  import { type CalendarDate, type CalendarViewport } from "./shared";
8
8
  import { type EventListPaginationAction, type EventPageSize } from "./shared/listOptions";
9
9
  import { type CalendarViewToggleOption } from "./shared/calendarViewOptions";
@@ -25,6 +25,7 @@ export type EventCombinedClientProps = Readonly<{
25
25
  eventSurface?: EventSurfaceScope | null;
26
26
  filterEventPresets?: string | null;
27
27
  scheduleScope?: EventScheduleScope | null;
28
+ seriesIds?: string | null;
28
29
  filterCategoryIds?: string | null;
29
30
  filterStaffMemberId?: string | null;
30
31
  filterVenueId?: string | null;
@@ -36,8 +37,8 @@ export type EventCombinedClientProps = Readonly<{
36
37
  buttonText?: string;
37
38
  emptyMessage?: string;
38
39
  className?: string;
39
- calendarContext: EventCollectionHydration['calendarContext'];
40
- calendarWindow?: EventCollectionHydration['calendarWindow'];
40
+ calendarContext: EventCollectionHydration["calendarContext"];
41
+ calendarWindow?: EventCollectionHydration["calendarWindow"];
41
42
  }>;
42
43
  export type EventCombinedIslandClientProps = EventCombinedInteractiveIslandProps;
43
44
  type EventCombinedCalendarTabProps = Readonly<{
@@ -42,6 +42,7 @@ export declare const eventCombinedBlockRuntime: Readonly<{
42
42
  eventSurface?: import("../../..").EventSurfaceScope | null;
43
43
  filterEventPresets?: readonly string[] | string | null;
44
44
  scheduleScope?: import("../../..").EventScheduleScope | null;
45
+ seriesIds?: readonly string[] | string | null;
45
46
  filterCategoryIds?: readonly string[] | string | null;
46
47
  filterStaffMemberId?: string | null;
47
48
  filterVenueId?: string | null;
@@ -98,6 +99,7 @@ export declare const eventCombinedBlockRuntime: Readonly<{
98
99
  eventSurface?: import("../../..").EventSurfaceScope | null;
99
100
  filterEventPresets?: readonly string[] | string | null;
100
101
  scheduleScope?: import("../../..").EventScheduleScope | null;
102
+ seriesIds?: readonly string[] | string | null;
101
103
  filterCategoryIds?: readonly string[] | string | null;
102
104
  filterStaffMemberId?: string | null;
103
105
  filterVenueId?: string | null;
@@ -133,6 +135,7 @@ export declare const eventCombinedBlockRuntime: Readonly<{
133
135
  eventSurface?: import("../../..").EventSurfaceScope | null;
134
136
  filterEventPresets?: readonly string[] | string | null;
135
137
  scheduleScope?: import("../../..").EventScheduleScope | null;
138
+ seriesIds?: readonly string[] | string | null;
136
139
  filterCategoryIds?: readonly string[] | string | null;
137
140
  filterStaffMemberId?: string | null;
138
141
  filterVenueId?: string | null;
@@ -1,8 +1,9 @@
1
+ import type { EventCollectionSourceProps } from "./shared/eventCollectionContract";
1
2
  import { type CardRole } from "../../../../../../theme-core/src/cards/index";
2
3
  import type { ButtonVariant, CardOrientation, ColumnOption, EventLayout, EventScheduleScope, EventSurfaceScope, FilterAutoShow, PublicEvent } from "../../../blocks/events/shared/types";
3
4
  import { type InteractiveIslandProps } from "../../../../contracts/islands";
4
5
  import { type EventListPaginationAction, type EventListPaginationMode, type EventPageSize } from "./shared/listOptions";
5
- export type EventListingSourceProps = Readonly<{
6
+ export type EventListingSourceProps = Pick<EventCollectionSourceProps, "showFilters" | "showCategoryFilter" | "showVenueFilter" | "showStaffFilter" | "eventSurface" | "filterEventPresets" | "scheduleScope" | "seriesIds" | "filterCategoryIds" | "filterStaffMemberId" | "filterVenueId"> & Readonly<{
6
7
  events?: PublicEvent[] | null;
7
8
  siteId: string;
8
9
  apiBaseUrl?: string;
@@ -21,16 +22,6 @@ export type EventListingSourceProps = Readonly<{
21
22
  showCapacity?: boolean;
22
23
  emptyMessage?: string;
23
24
  className?: string;
24
- showFilters?: boolean | null;
25
- showCategoryFilter?: FilterAutoShow;
26
- showVenueFilter?: boolean | null;
27
- showStaffFilter?: boolean | null;
28
- eventSurface?: EventSurfaceScope | null;
29
- filterEventPresets?: readonly string[] | string | null;
30
- scheduleScope?: EventScheduleScope | null;
31
- filterCategoryIds?: readonly string[] | string | null;
32
- filterStaffMemberId?: string | null;
33
- filterVenueId?: string | null;
34
25
  }>;
35
26
  export type EventListingDisplay = Readonly<{
36
27
  kind: "event-listing";
@@ -61,6 +52,7 @@ export type EventListingHydration = Readonly<{
61
52
  eventSurface: EventSurfaceScope;
62
53
  filterEventPresets: string | null;
63
54
  scheduleScope: EventScheduleScope;
55
+ seriesIds?: string | null;
64
56
  filterCategoryIds?: string | null;
65
57
  filterStaffMemberId?: string | null;
66
58
  filterVenueId?: string | null;
@@ -74,36 +66,7 @@ type EventListingIslandMeta = Readonly<{
74
66
  export type EventListingInteractiveIslandProps = InteractiveIslandProps<EventListingIslandMeta, "event-listing", typeof eventListingBlockRuntime>;
75
67
  export declare const eventListingBlockRuntime: Readonly<{
76
68
  kind: "progressive";
77
- buildRender: (source: Readonly<{
78
- events?: PublicEvent[] | null;
79
- siteId: string;
80
- apiBaseUrl?: string;
81
- stage?: "preview" | "published";
82
- layout?: EventLayout;
83
- columns?: ColumnOption;
84
- eventsPerPage?: string;
85
- paginationMode?: EventListPaginationMode;
86
- seeAllUrl?: string;
87
- loadMoreText?: string;
88
- cardRole?: CardRole;
89
- buttonVariant?: ButtonVariant;
90
- buttonText?: string;
91
- showVenue?: boolean;
92
- showMap?: boolean;
93
- showCapacity?: boolean;
94
- emptyMessage?: string;
95
- className?: string;
96
- showFilters?: boolean | null;
97
- showCategoryFilter?: FilterAutoShow;
98
- showVenueFilter?: boolean | null;
99
- showStaffFilter?: boolean | null;
100
- eventSurface?: EventSurfaceScope | null;
101
- filterEventPresets?: readonly string[] | string | null;
102
- scheduleScope?: EventScheduleScope | null;
103
- filterCategoryIds?: readonly string[] | string | null;
104
- filterStaffMemberId?: string | null;
105
- filterVenueId?: string | null;
106
- }>) => Readonly<{
69
+ buildRender: (source: EventListingSourceProps) => Readonly<{
107
70
  display: Readonly<{
108
71
  kind: "event-listing";
109
72
  state: "loading" | "empty" | "ready";
@@ -133,6 +96,7 @@ export declare const eventListingBlockRuntime: Readonly<{
133
96
  eventSurface: EventSurfaceScope;
134
97
  filterEventPresets: string | null;
135
98
  scheduleScope: EventScheduleScope;
99
+ seriesIds?: string | null;
136
100
  filterCategoryIds?: string | null;
137
101
  filterStaffMemberId?: string | null;
138
102
  filterVenueId?: string | null;
@@ -141,66 +105,8 @@ export declare const eventListingBlockRuntime: Readonly<{
141
105
  }>;
142
106
  contracts: Readonly<{
143
107
  source: Readonly<{
144
- encode: (value: Readonly<{
145
- events?: PublicEvent[] | null;
146
- siteId: string;
147
- apiBaseUrl?: string;
148
- stage?: "preview" | "published";
149
- layout?: EventLayout;
150
- columns?: ColumnOption;
151
- eventsPerPage?: string;
152
- paginationMode?: EventListPaginationMode;
153
- seeAllUrl?: string;
154
- loadMoreText?: string;
155
- cardRole?: CardRole;
156
- buttonVariant?: ButtonVariant;
157
- buttonText?: string;
158
- showVenue?: boolean;
159
- showMap?: boolean;
160
- showCapacity?: boolean;
161
- emptyMessage?: string;
162
- className?: string;
163
- showFilters?: boolean | null;
164
- showCategoryFilter?: FilterAutoShow;
165
- showVenueFilter?: boolean | null;
166
- showStaffFilter?: boolean | null;
167
- eventSurface?: EventSurfaceScope | null;
168
- filterEventPresets?: readonly string[] | string | null;
169
- scheduleScope?: EventScheduleScope | null;
170
- filterCategoryIds?: readonly string[] | string | null;
171
- filterStaffMemberId?: string | null;
172
- filterVenueId?: string | null;
173
- }>) => unknown;
174
- decode: (input: unknown) => import("../../../../contracts").DecodeResult<Readonly<{
175
- events?: PublicEvent[] | null;
176
- siteId: string;
177
- apiBaseUrl?: string;
178
- stage?: "preview" | "published";
179
- layout?: EventLayout;
180
- columns?: ColumnOption;
181
- eventsPerPage?: string;
182
- paginationMode?: EventListPaginationMode;
183
- seeAllUrl?: string;
184
- loadMoreText?: string;
185
- cardRole?: CardRole;
186
- buttonVariant?: ButtonVariant;
187
- buttonText?: string;
188
- showVenue?: boolean;
189
- showMap?: boolean;
190
- showCapacity?: boolean;
191
- emptyMessage?: string;
192
- className?: string;
193
- showFilters?: boolean | null;
194
- showCategoryFilter?: FilterAutoShow;
195
- showVenueFilter?: boolean | null;
196
- showStaffFilter?: boolean | null;
197
- eventSurface?: EventSurfaceScope | null;
198
- filterEventPresets?: readonly string[] | string | null;
199
- scheduleScope?: EventScheduleScope | null;
200
- filterCategoryIds?: readonly string[] | string | null;
201
- filterStaffMemberId?: string | null;
202
- filterVenueId?: string | null;
203
- }>>;
108
+ encode: (value: EventListingSourceProps) => unknown;
109
+ decode: (input: unknown) => import("../../../../contracts").DecodeResult<EventListingSourceProps>;
204
110
  }>;
205
111
  render: Readonly<{
206
112
  encode: (value: Readonly<{
@@ -233,6 +139,7 @@ export declare const eventListingBlockRuntime: Readonly<{
233
139
  eventSurface: EventSurfaceScope;
234
140
  filterEventPresets: string | null;
235
141
  scheduleScope: EventScheduleScope;
142
+ seriesIds?: string | null;
236
143
  filterCategoryIds?: string | null;
237
144
  filterStaffMemberId?: string | null;
238
145
  filterVenueId?: string | null;
@@ -269,6 +176,7 @@ export declare const eventListingBlockRuntime: Readonly<{
269
176
  eventSurface: EventSurfaceScope;
270
177
  filterEventPresets: string | null;
271
178
  scheduleScope: EventScheduleScope;
179
+ seriesIds?: string | null;
272
180
  filterCategoryIds?: string | null;
273
181
  filterStaffMemberId?: string | null;
274
182
  filterVenueId?: string | null;
@@ -317,6 +225,7 @@ export declare const eventListingInteractiveIslandPropsCodec: Readonly<{
317
225
  eventSurface: EventSurfaceScope;
318
226
  filterEventPresets: string | null;
319
227
  scheduleScope: EventScheduleScope;
228
+ seriesIds?: string | null;
320
229
  filterCategoryIds?: string | null;
321
230
  filterStaffMemberId?: string | null;
322
231
  filterVenueId?: string | null;
@@ -362,6 +271,7 @@ export declare const eventListingInteractiveIslandPropsCodec: Readonly<{
362
271
  eventSurface: EventSurfaceScope;
363
272
  filterEventPresets: string | null;
364
273
  scheduleScope: EventScheduleScope;
274
+ seriesIds?: string | null;
365
275
  filterCategoryIds?: string | null;
366
276
  filterStaffMemberId?: string | null;
367
277
  filterVenueId?: string | null;
@@ -1,8 +1,8 @@
1
1
  import { z } from "zod";
2
- import { type CalendarWindowPage } from '../../../../blocks/events/shared/calendarWindow';
2
+ import { type CalendarWindowPage } from "../../../../blocks/events/shared/calendarWindow";
3
3
  import { type CardRole } from "../../../../../../../theme-core/src/cards/index";
4
4
  import { type BookingTimeZone } from "../../../../../../../core/src/index";
5
- import type { CalendarDate } from '../../../../../../../calendar/src/index';
5
+ import type { CalendarDate } from "../../../../../../../calendar/src/index";
6
6
  import type { ButtonVariant, CalendarTabViews, CalendarView, ColumnOption, EventLayout, EventScheduleScope, EventSurfaceScope, FilterAutoShow, PublicEvent, WeekStart } from "../../../../blocks/events/shared/types";
7
7
  import { type EventListPaginationAction, type EventListPaginationMode, type EventPageSize } from "./listOptions";
8
8
  import type { EventListingDisplay } from "../EventListing.interactive";
@@ -28,6 +28,7 @@ export type EventCollectionSourceProps = Readonly<{
28
28
  eventSurface?: EventSurfaceScope | null;
29
29
  filterEventPresets?: readonly string[] | string | null;
30
30
  scheduleScope?: EventScheduleScope | null;
31
+ seriesIds?: readonly string[] | string | null;
31
32
  filterCategoryIds?: readonly string[] | string | null;
32
33
  filterStaffMemberId?: string | null;
33
34
  filterVenueId?: string | null;
@@ -57,6 +58,7 @@ export type EventCollectionDisplay = Readonly<{
57
58
  eventSurface: EventSurfaceScope;
58
59
  filterEventPresets: string | null;
59
60
  scheduleScope: EventScheduleScope;
61
+ seriesIds?: string | null;
60
62
  filterCategoryIds: string | null;
61
63
  filterStaffMemberId: string | null;
62
64
  filterVenueId: string | null;
@@ -102,6 +104,7 @@ export declare const eventCollectionFilterSourceSchemaShape: {
102
104
  recurring: "recurring";
103
105
  oneOff: "oneOff";
104
106
  }>>>;
107
+ readonly seriesIds: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
105
108
  readonly filterCategoryIds: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
106
109
  readonly filterStaffMemberId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
107
110
  readonly filterVenueId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -147,6 +150,7 @@ export declare const eventCollectionSourceSchemaShape: {
147
150
  recurring: "recurring";
148
151
  oneOff: "oneOff";
149
152
  }>>>;
153
+ readonly seriesIds: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
150
154
  readonly filterCategoryIds: z.ZodOptional<z.ZodNullable<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>>;
151
155
  readonly filterStaffMemberId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
152
156
  readonly filterVenueId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
@@ -601,6 +605,20 @@ export declare const eventCollectionSourceSchemaShape: {
601
605
  }, z.core.$strip>;
602
606
  }, z.core.$strip>]>>;
603
607
  }, z.core.$strip>;
608
+ cancellationPolicy: z.ZodObject<{
609
+ refunds: z.ZodObject<{
610
+ mode: z.ZodEnum<{
611
+ never: "never";
612
+ always: "always";
613
+ cutoff: "cutoff";
614
+ }>;
615
+ cutoffHours: z.ZodNumber;
616
+ method: z.ZodEnum<{
617
+ site_credit: "site_credit";
618
+ original_payment_method: "original_payment_method";
619
+ }>;
620
+ }, z.core.$strip>;
621
+ }, z.core.$strip>;
604
622
  consent: z.ZodNullable<z.ZodType<Readonly<{
605
623
  requirementId: string;
606
624
  title: string;
@@ -1072,6 +1090,20 @@ export declare const eventCollectionSourceSchemaShape: {
1072
1090
  }, z.core.$strip>;
1073
1091
  }, z.core.$strip>]>>;
1074
1092
  }, z.core.$strip>;
1093
+ cancellationPolicy: z.ZodObject<{
1094
+ refunds: z.ZodObject<{
1095
+ mode: z.ZodEnum<{
1096
+ never: "never";
1097
+ always: "always";
1098
+ cutoff: "cutoff";
1099
+ }>;
1100
+ cutoffHours: z.ZodNumber;
1101
+ method: z.ZodEnum<{
1102
+ site_credit: "site_credit";
1103
+ original_payment_method: "original_payment_method";
1104
+ }>;
1105
+ }, z.core.$strip>;
1106
+ }, z.core.$strip>;
1075
1107
  consent: z.ZodNullable<z.ZodType<Readonly<{
1076
1108
  requirementId: string;
1077
1109
  title: string;
@@ -1603,6 +1635,20 @@ export declare const eventCollectionDisplaySchemaShape: {
1603
1635
  }, z.core.$strip>;
1604
1636
  }, z.core.$strip>]>>;
1605
1637
  }, z.core.$strip>;
1638
+ cancellationPolicy: z.ZodObject<{
1639
+ refunds: z.ZodObject<{
1640
+ mode: z.ZodEnum<{
1641
+ never: "never";
1642
+ always: "always";
1643
+ cutoff: "cutoff";
1644
+ }>;
1645
+ cutoffHours: z.ZodNumber;
1646
+ method: z.ZodEnum<{
1647
+ site_credit: "site_credit";
1648
+ original_payment_method: "original_payment_method";
1649
+ }>;
1650
+ }, z.core.$strip>;
1651
+ }, z.core.$strip>;
1606
1652
  consent: z.ZodNullable<z.ZodType<Readonly<{
1607
1653
  requirementId: string;
1608
1654
  title: string;
@@ -2074,6 +2120,20 @@ export declare const eventCollectionDisplaySchemaShape: {
2074
2120
  }, z.core.$strip>;
2075
2121
  }, z.core.$strip>]>>;
2076
2122
  }, z.core.$strip>;
2123
+ cancellationPolicy: z.ZodObject<{
2124
+ refunds: z.ZodObject<{
2125
+ mode: z.ZodEnum<{
2126
+ never: "never";
2127
+ always: "always";
2128
+ cutoff: "cutoff";
2129
+ }>;
2130
+ cutoffHours: z.ZodNumber;
2131
+ method: z.ZodEnum<{
2132
+ site_credit: "site_credit";
2133
+ original_payment_method: "original_payment_method";
2134
+ }>;
2135
+ }, z.core.$strip>;
2136
+ }, z.core.$strip>;
2077
2137
  consent: z.ZodNullable<z.ZodType<Readonly<{
2078
2138
  requirementId: string;
2079
2139
  title: string;
@@ -2162,6 +2222,7 @@ export declare const eventCollectionDisplaySchemaShape: {
2162
2222
  recurring: "recurring";
2163
2223
  oneOff: "oneOff";
2164
2224
  }>;
2225
+ readonly seriesIds: z.ZodOptional<z.ZodNullable<z.ZodString>>;
2165
2226
  readonly filterCategoryIds: z.ZodNullable<z.ZodString>;
2166
2227
  readonly filterStaffMemberId: z.ZodNullable<z.ZodString>;
2167
2228
  readonly filterVenueId: z.ZodNullable<z.ZodString>;
@@ -27,6 +27,7 @@ export declare function resolveEventListPaginationAction(input: {
27
27
  defaultLabel?: string;
28
28
  }): EventListPaginationAction;
29
29
  export type EventRuntimeFilters = Readonly<{
30
+ seriesIds?: string;
30
31
  categoryIds?: string;
31
32
  staffMemberId?: string;
32
33
  venueId?: string;
@@ -36,6 +37,7 @@ export type EventRuntimeFilters = Readonly<{
36
37
  }>;
37
38
  export type EventRuntimeFiltersDraft = Writable<EventRuntimeFilters>;
38
39
  export type EventRuntimeFilterInput = Readonly<{
40
+ seriesIds?: string | null;
39
41
  eventSurface?: EventSurfaceScope | null;
40
42
  filterEventPresets?: string | null;
41
43
  scheduleScope?: EventScheduleScope | null;
@@ -1,5 +1,17 @@
1
1
  import { z } from 'zod';
2
2
  import { type TransformDefinition } from './core';
3
+ declare const selectionParamSchema: z.ZodObject<{
4
+ key: z.ZodEnum<{
5
+ scheduleScope: "scheduleScope";
6
+ eventSurface: "eventSurface";
7
+ seriesIds: "seriesIds";
8
+ filterEventPresets: "filterEventPresets";
9
+ filterCategoryIds: "filterCategoryIds";
10
+ filterStaffMemberId: "filterStaffMemberId";
11
+ filterVenueId: "filterVenueId";
12
+ }>;
13
+ }, z.core.$strip>;
14
+ export declare const eventCalendarSelectionParam: TransformDefinition<z.infer<typeof selectionParamSchema>>;
3
15
  declare const readJobSchema: z.ZodObject<{
4
16
  job: z.ZodEnum<{
5
17
  calendar: "calendar";
@@ -6,6 +6,10 @@ export type BookingInstalmentScheduleRow = Readonly<{
6
6
  dueAt: string;
7
7
  amountCents: number;
8
8
  }>;
9
+ export declare function resolveBookingInitialInstalmentAmountCents(input: Readonly<{
10
+ totalAmountCents: number;
11
+ plan: BookingInstalmentPlanConfig;
12
+ }>): number;
9
13
  export declare function buildBookingInstalmentSchedule(input: Readonly<{
10
14
  anchorAt: string;
11
15
  totalAmountCents: number;
@@ -1,7 +1,7 @@
1
1
  import { type Result } from '../../../core/src/index';
2
2
  import { z } from 'zod';
3
3
  /** Reasons are payment evidence, not an independent pricing policy. */
4
- export declare const STRIPE_COMMISSION_FREE_REASONS: readonly ["managed_billing", "no_commission_plan", "billing_evidence_invalid", "fee_rounds_to_zero", "non_commissionable_scope", "payment_not_stripe"];
4
+ export declare const STRIPE_COMMISSION_FREE_REASONS: readonly ["managed_billing", "no_commission_plan", "billing_evidence_invalid", "fee_rounds_to_zero", "payment_not_stripe"];
5
5
  export type StripeCommissionFreeReason = (typeof STRIPE_COMMISSION_FREE_REASONS)[number];
6
6
  declare const commissionEvidenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
7
7
  currency: z.ZodOptional<z.ZodString>;
@@ -12,7 +12,6 @@ declare const commissionEvidenceSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
12
12
  no_commission_plan: "no_commission_plan";
13
13
  billing_evidence_invalid: "billing_evidence_invalid";
14
14
  fee_rounds_to_zero: "fee_rounds_to_zero";
15
- non_commissionable_scope: "non_commissionable_scope";
16
15
  payment_not_stripe: "payment_not_stripe";
17
16
  }>;
18
17
  }, z.core.$strip>, z.ZodObject<{