@riverbankcms/sdk 0.146.0 → 0.147.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.
- package/CHANGELOG.md +12 -0
- package/dist/{PreviewEditorSidebar-kg2r2Fyi.mjs → PreviewEditorSidebar-DtpB3_sS.mjs} +51 -33
- package/dist/{PreviewEditorUI-sWMLp5dT.mjs → PreviewEditorUI-DxTLgaHo.mjs} +3 -3
- package/dist/{PreviewQueryProvider-Cg51xq1w.mjs → PreviewQueryProvider-Dd4dxOiU.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-h2ti3Hch.mjs → SdkPreviewModeRuntime-DMMNCngt.mjs} +39 -12
- package/dist/{SiteChromeCustomizeContext-DEACFH9m.mjs → SiteChromeCustomizeContext-DQXZXiqS.mjs} +2499 -1682
- package/dist/_dts/ai/src/contracts/proposals.d.ts +198 -0
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +18 -0
- package/dist/_dts/api/src/accountApi.d.ts +5 -5
- package/dist/_dts/api/src/bookingConfig.d.ts +16 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -13
- package/dist/_dts/api/src/bookingOperations.d.ts +2 -44
- package/dist/_dts/api/src/bookingPeople.d.ts +92 -0
- package/dist/_dts/api/src/bookingPeopleEndpointDefinitions.d.ts +38 -0
- package/dist/_dts/api/src/bookingRecords.d.ts +11 -49
- package/dist/_dts/api/src/bookingSettingsSections.d.ts +1 -1
- package/dist/_dts/api/src/bookings.d.ts +1 -0
- package/dist/_dts/api/src/endpoints.d.ts +587 -561
- package/dist/_dts/api/src/eventManagementContracts.d.ts +23 -8
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +1 -1
- package/dist/_dts/api/src/index.d.ts +3 -2
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
- package/dist/_dts/api/src/launchReadiness.d.ts +1 -6
- package/dist/_dts/api/src/mailingListIntegration.d.ts +6 -0
- package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +1 -1
- package/dist/_dts/api/src/newsletterEndpointDefinitions.d.ts +15 -0
- package/dist/_dts/api/src/occurrenceScheduling.d.ts +19 -0
- package/dist/_dts/api/src/publicAppointmentBookingContracts.d.ts +48 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +7 -0
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +15 -0
- package/dist/_dts/api/src/sdkCourseBooking.d.ts +4 -4
- package/dist/_dts/api/src/siteLifecycleEndpoints.d.ts +61 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +5 -18
- package/dist/_dts/api/src/siteOnboarding.d.ts +2 -14
- package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -4
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +8 -0
- package/dist/_dts/blocks/src/index.d.ts +1 -1
- package/dist/_dts/blocks/src/pageRenderAdmission.d.ts +22 -4
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/appointments.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.completion.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +19 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-choice.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-note.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.mailing-list-state.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.reserved-fields.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-handler.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.submit-success.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/AttendeeDetailsStep.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SuccessStep.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/sessionStorage.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.block-submission.d.ts +2 -4
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/BookingMailingListNote.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/shared/mailingListSignupCopy.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -2
- package/dist/_dts/blocks/src/system/transforms/registry/core.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +1 -3
- package/dist/_dts/core/src/index.d.ts +1 -1
- package/dist/_dts/core/src/mailing-list-runtime.d.ts +15 -0
- package/dist/_dts/core/src/mailing-list-setup.d.ts +2 -0
- package/dist/_dts/core/src/mailing-list-submission.d.ts +6 -0
- package/dist/_dts/core/src/navigation-portal-labels.d.ts +9 -0
- package/dist/_dts/core/src/participants.d.ts +0 -38
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +102 -22
- package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +7 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +4 -3
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +2 -2
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/footer/effectiveNavLinkStyle.d.ts +13 -0
- package/dist/_dts/theme-core/src/footer/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/effectiveNavLinkStyle.d.ts +17 -0
- package/dist/_dts/theme-core/src/header/generateHeaderLogoStyles.d.ts +15 -0
- package/dist/_dts/theme-core/src/header/generateHeaderNavLinkStyles.d.ts +4 -0
- package/dist/_dts/theme-core/src/header/index.d.ts +3 -0
- package/dist/_dts/theme-core/src/header/legacyNavLinkStyle.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/openingForegroundProjection.d.ts +7 -0
- package/dist/_dts/theme-core/src/header/rootPaint.d.ts +4 -0
- package/dist/_dts/theme-core/src/navigation/effectPolicy.d.ts +38 -0
- package/dist/_dts/theme-core/src/navigation/generateNavLinkCSS.d.ts +4 -0
- package/dist/_dts/theme-core/src/navigation/types.d.ts +4 -0
- package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +1 -1
- package/dist/_dts/theme-core/src/surfaces/foregroundContract.d.ts +7 -0
- package/dist/_dts/theme-core/src/surfaces/foregroundInteraction.d.ts +29 -22
- package/dist/_dts/theme-core/src/surfaces/foregroundRoles.d.ts +10 -2
- package/dist/_dts/theme-core/src/surfaces/resolveSurfaceForeground.d.ts +9 -0
- package/dist/_dts/theme-core/src/utils/cssDeclarations.d.ts +2 -0
- package/dist/_dts/ui/src/badge.d.ts +2 -1
- package/dist/_dts/ui/src/button.d.ts +1 -1
- package/dist/_dts/ui/src/combobox-keys.d.ts +23 -0
- package/dist/_dts/ui/src/combobox-rows.d.ts +34 -0
- package/dist/_dts/ui/src/combobox.d.ts +26 -1
- package/dist/_dts/ui/src/date-picker.d.ts +5 -8
- package/dist/_dts/ui/src/editor-item-card.d.ts +1 -0
- package/dist/_dts/ui/src/field-trigger.d.ts +39 -0
- package/dist/_dts/ui/src/fieldControl.d.ts +27 -0
- package/dist/_dts/ui/src/index.d.ts +4 -1
- package/dist/_dts/ui/src/native-select.d.ts +8 -0
- package/dist/_dts/ui/src/popover.d.ts +7 -1
- package/dist/_dts/ui/src/segmented-control.d.ts +4 -0
- package/dist/_dts/ui/src/surface.d.ts +1 -1
- package/dist/client/{BookingConsentAgreement-BQKL045f.mjs → BookingMailingListNote-1n4Ch_u_.mjs} +15 -4
- package/dist/client/{CheckboxChoice--W2n6yKs.mjs → CheckboxChoice-B33MqoUo.mjs} +1 -1
- package/dist/client/{DiscountCodeDisclosure-CsOtjFY7.mjs → DiscountCodeDisclosure-CKJtz0mY.mjs} +1 -1
- package/dist/client/{EventCombined.client-BdRjVbhH.mjs → EventCombined.client-C0pgma9y.mjs} +7 -7
- package/dist/client/{EventListing.client-DBxC6xOU.mjs → EventListing.client-4fhLOvHP.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-mHEJKrTs.mjs → LeafletStaticMap-DScC4F3w.mjs} +1 -1
- package/dist/client/{scrollToBlock-BNgaEUpo.mjs → TerminalPanel-B5ZUsYhe.mjs} +77 -77
- package/dist/client/{ThemedButton-CE5KYT6z.mjs → ThemedButton-DoVIV1Ao.mjs} +2 -2
- package/dist/client/{accordion-BEQNSptH.mjs → accordion-CoT5g7zo.mjs} +1 -1
- package/dist/client/{bookingForm-AMr-s5vw.mjs → bookingForm-BWxB46xD.mjs} +226 -106
- package/dist/client/bookings.mjs +367 -188
- package/dist/client/{carousel-Bbt_QgJy.mjs → carousel-DtNYWFd3.mjs} +2 -2
- package/dist/client/{carousel.client-jahpU9Vz.mjs → carousel.client-A2lG-9od.mjs} +1 -1
- package/dist/client/{cart-CnWi30zJ.mjs → cart-z4qZih1Y.mjs} +3 -3
- package/dist/client/{checkout-f3nkWgd4.mjs → checkout-DpL7euFH.mjs} +3 -3
- package/dist/client/{checkoutUrls-CW3-78uu.mjs → checkoutUrls-BEfR7kVu.mjs} +1 -1
- package/dist/client/client.mjs +2125 -1420
- package/dist/client/{colorStyles-CuJBiS-1.mjs → colorStyles-j5U9v5JA.mjs} +5 -1
- package/dist/client/{context-Bc8T6pCe.mjs → context-C8TinPJc.mjs} +1 -1
- package/dist/client/{dates-DUsCEzLb.mjs → dates-vwwxTeB0.mjs} +2 -2
- package/dist/client/{eventCalendar-CKwgXui5.mjs → eventCalendar-DIbHfJXO.mjs} +10 -10
- package/dist/client/{eventCombined-CBAOSTGR.mjs → eventCombined-DoGMJ6cg.mjs} +4 -4
- package/dist/client/{eventDetails-Dh-_WiBD.mjs → eventDetails-BjN9v6a1.mjs} +4 -4
- package/dist/client/{eventListing-CA3frIH5.mjs → eventListing-DajjWgOv.mjs} +4 -4
- package/dist/client/{eventRegistration-BHtsgdcg.mjs → eventRegistration-DMq9gMA-.mjs} +109 -41
- package/dist/client/{form-C2h3YAcg.mjs → form-Qf6qTbos.mjs} +5 -5
- package/dist/client/{headerSection-lwMuMTH9.mjs → headerSection-D7qJrqFX.mjs} +3 -3
- package/dist/client/hooks.mjs +661 -116
- package/dist/client/{locationMap-DJ2bLODV.mjs → locationMap-CCF9-t_0.mjs} +4 -4
- package/dist/client/{FieldValidationMessage-AYanWFb-.mjs → mailingListSignupCopy-DZSHZrm6.mjs} +14 -1
- package/dist/client/{media-BtJ37tzS.mjs → media-CwBGetqC.mjs} +1 -1
- package/dist/client/{newsletterForm-8Pu5K32g.mjs → newsletterForm-DzCLSP4S.mjs} +6 -6
- package/dist/client/{pricing-HHx3IgBz.mjs → pricing-Cgxv2KLC.mjs} +1 -1
- package/dist/client/{productDetail-C_1odnAf.mjs → productDetail-ru9w5GHx.mjs} +3 -3
- package/dist/client/{productList-CtCv-Nmx.mjs → productList-zaapKSl-.mjs} +3 -3
- package/dist/client/{propsDecoder-Dcgsncxb.mjs → propsDecoder-CwvvNOHx.mjs} +52 -6
- package/dist/client/rendering/client.mjs +951 -369
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +2153 -1393
- package/dist/client/{routeIslandApiConfig-CWLP7wu3.mjs → routeIslandApiConfig-BwVFo0Y4.mjs} +1 -1
- package/dist/client/{shop-commerce-B88zmWWo.mjs → shop-commerce-De7gEnkA.mjs} +8 -8
- package/dist/client/{shop-commerce-store-DtSfkKuX.mjs → shop-commerce-store-B3MCxIBW.mjs} +1 -1
- package/dist/client/{shop-DQXrQ8kJ.mjs → shop-mktkXvbV.mjs} +7 -7
- package/dist/client/{shopShared-cuaONpkJ.mjs → shopShared-TqExh235.mjs} +5 -5
- package/dist/client/{useEventFilters-Bukew6Gb.mjs → useEventFilters-n_OjkIjX.mjs} +8 -8
- package/dist/preview-next/before-render.mjs +122 -50
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/editor-base.css +53 -2
- package/dist/preview-next/editor-chrome.css +7 -4
- package/dist/preview-next/keepAlive.mjs +122 -50
- package/dist/preview-next/middleware.mjs +122 -50
- package/dist/{previewAuthStore-h5IgbSp4.mjs → previewAuthStore-C_EHQ5XA.mjs} +122 -50
- package/dist/{sdk-runtime-DTc1uIXn.mjs → sdk-runtime-BIkJg5y1.mjs} +2 -2
- package/dist/{separator-BpHS1KZK.mjs → separator-C9qDP95Z.mjs} +1 -1
- package/dist/server/components.mjs +25345 -24942
- package/dist/server/config-validation.mjs +711 -163
- package/dist/server/config.mjs +711 -163
- package/dist/server/data.mjs +709 -162
- package/dist/server/index.mjs +123 -51
- package/dist/server/navigation.mjs +13 -2
- package/dist/server/next.mjs +4538 -4169
- package/dist/server/page-converter.mjs +107 -64
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +2509 -2104
- package/dist/server/rendering.mjs +25526 -25104
- package/dist/server/routing.mjs +750 -289
- package/dist/server/server.mjs +671 -148
- package/dist/server/theme-bridge.mjs +66 -17
- package/dist/server/theme.mjs +5 -1
- package/dist/styles/index.css +32 -4
- package/package.json +1 -1
- package/dist/_dts/core/src/participant-identity.d.ts +0 -135
|
@@ -124,13 +124,16 @@ const SURFACE_FOREGROUND_CSS_VARS = {
|
|
|
124
124
|
text: "--rb-surface-text-color",
|
|
125
125
|
heading: "--rb-surface-heading-color",
|
|
126
126
|
link: "--rb-surface-link-color",
|
|
127
|
+
linkHover: "--rb-surface-link-hover-color",
|
|
127
128
|
supporting: "--rb-surface-supporting-color"
|
|
128
129
|
};
|
|
129
130
|
const DEFAULT_SURFACE_TEXT_COLOR = "rgb(var(--tb-text, 17 24 39))";
|
|
131
|
+
const DEFAULT_SURFACE_LINK_COLOR = "rgb(var(--tb-primary, var(--tb-text, 17 24 39)))";
|
|
130
132
|
const DEFAULT_ROLE_FALLBACKS = {
|
|
131
133
|
text: DEFAULT_SURFACE_TEXT_COLOR,
|
|
132
134
|
heading: DEFAULT_SURFACE_TEXT_COLOR,
|
|
133
|
-
link:
|
|
135
|
+
link: DEFAULT_SURFACE_LINK_COLOR,
|
|
136
|
+
linkHover: DEFAULT_SURFACE_LINK_COLOR,
|
|
134
137
|
supporting: "rgb(var(--tb-mutedText, 100 116 139))"
|
|
135
138
|
};
|
|
136
139
|
function requireSurfaceColorValue(role, value) {
|
|
@@ -142,6 +145,7 @@ function surfaceForegroundValue(role, outsideProviderFallback = DEFAULT_ROLE_FAL
|
|
|
142
145
|
const roleVariable = SURFACE_FOREGROUND_CSS_VARS[role];
|
|
143
146
|
const fallback = requireSurfaceColorValue("fallback", outsideProviderFallback);
|
|
144
147
|
if (role === "text") return `var(${roleVariable}, ${fallback})`;
|
|
148
|
+
if (role === "linkHover") return `var(${roleVariable}, ${surfaceForegroundValue("link", fallback)})`;
|
|
145
149
|
return `var(${roleVariable}, var(${SURFACE_FOREGROUND_CSS_VARS.text}, ${fallback}))`;
|
|
146
150
|
}
|
|
147
151
|
function surfaceForegroundValueWithOpacity(role, opacityPercent) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { H as calendarWindowPageSchema } from "./propsDecoder-
|
|
2
|
+
import { H as calendarWindowPageSchema } from "./propsDecoder-CwvvNOHx.mjs";
|
|
3
3
|
import { createContext, useContext, useMemo } from "react";
|
|
4
4
|
import { jsx } from "react/jsx-runtime";
|
|
5
5
|
//#region ../blocks/src/system/runtime/api/deduplication.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { $t as
|
|
2
|
-
import { a as canJoinEventWaitlistOnAnyMode, p as isEventFull } from "./pricing-
|
|
1
|
+
import { $t as formatBookingDate, Sn as assertNever, dn as toScheduledBookingDateTime, dt as resolveRuntimeEventDestination, en as formatBookingDateParts, ln as toBookingTimeZone, rn as formatBookingTime, un as toScheduledBookingDateRange } from "./propsDecoder-CwvvNOHx.mjs";
|
|
2
|
+
import { a as canJoinEventWaitlistOnAnyMode, p as isEventFull } from "./pricing-Cgxv2KLC.mjs";
|
|
3
3
|
//#region ../blocks/src/system/runtime/nodes/events/domain/cta.ts
|
|
4
4
|
/**
|
|
5
5
|
* Booking call-to-action resolution for events: where an event links to and
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { O as clsx } from "./colorStyles-
|
|
3
|
-
import { A as buildEventCalendarListingRender, W as resolveCalendarReadProfile, at as getDayOfWeek, ct as isSameCalendarDay, et as MONTH_NAMES, it as formatDateKey, lt as isToday, ot as getOrderedDayNames, q as buildEventRuntimeFilters, st as getWeekCalendarDays, t as defineIslandPropsDecoder, tt as addDays } from "./propsDecoder-
|
|
4
|
-
import { o as EventFilters, s as formatEventTeacherLine, t as useEventFilters } from "./useEventFilters-
|
|
5
|
-
import { d as getEventAvailabilityStatus, o as formatEventRemainingPlaces, p as isEventFull } from "./pricing-
|
|
6
|
-
import { a as formatTime, c as getLocalDateKey, d as resolveEventLinkProps, l as getLocalMinuteOfDay, o as groupEventsByDate, s as resolveEventTimeZone } from "./dates-
|
|
7
|
-
import { a as WeekAgendaView, c as CalendarDayCell, d as useCalendarEvents, i as useHydrationReady, l as EventModalProvider, o as CalendarNavigationChevron, r as EventModals, s as CalendarDayHeaders, t as EventCombinedClient, u as useEventModal } from "./EventCombined.client-
|
|
8
|
-
import { t as BlockApiProvider } from "./context-
|
|
9
|
-
import { n as ThemedButtonLink, t as ThemedButton } from "./ThemedButton-
|
|
2
|
+
import { O as clsx } from "./colorStyles-j5U9v5JA.mjs";
|
|
3
|
+
import { A as buildEventCalendarListingRender, W as resolveCalendarReadProfile, at as getDayOfWeek, ct as isSameCalendarDay, et as MONTH_NAMES, it as formatDateKey, lt as isToday, ot as getOrderedDayNames, q as buildEventRuntimeFilters, st as getWeekCalendarDays, t as defineIslandPropsDecoder, tt as addDays } from "./propsDecoder-CwvvNOHx.mjs";
|
|
4
|
+
import { o as EventFilters, s as formatEventTeacherLine, t as useEventFilters } from "./useEventFilters-n_OjkIjX.mjs";
|
|
5
|
+
import { d as getEventAvailabilityStatus, o as formatEventRemainingPlaces, p as isEventFull } from "./pricing-Cgxv2KLC.mjs";
|
|
6
|
+
import { a as formatTime, c as getLocalDateKey, d as resolveEventLinkProps, l as getLocalMinuteOfDay, o as groupEventsByDate, s as resolveEventTimeZone } from "./dates-vwwxTeB0.mjs";
|
|
7
|
+
import { a as WeekAgendaView, c as CalendarDayCell, d as useCalendarEvents, i as useHydrationReady, l as EventModalProvider, o as CalendarNavigationChevron, r as EventModals, s as CalendarDayHeaders, t as EventCombinedClient, u as useEventModal } from "./EventCombined.client-C0pgma9y.mjs";
|
|
8
|
+
import { t as BlockApiProvider } from "./context-C8TinPJc.mjs";
|
|
9
|
+
import { n as ThemedButtonLink, t as ThemedButton } from "./ThemedButton-DoVIV1Ao.mjs";
|
|
10
10
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
11
|
-
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-
|
|
12
|
-
import { n as EventListingController } from "./EventListing.client-
|
|
11
|
+
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-BwVFo0Y4.mjs";
|
|
12
|
+
import { n as EventListingController } from "./EventListing.client-4fhLOvHP.mjs";
|
|
13
13
|
import { useEffect, useId, useMemo, useState } from "react";
|
|
14
14
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
15
15
|
//#region ../calendar/src/lane-packing.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as defineIslandPropsDecoder } from "./propsDecoder-
|
|
2
|
-
import { n as EventCombinedIslandClient } from "./EventCombined.client-
|
|
3
|
-
import { t as BlockApiProvider } from "./context-
|
|
1
|
+
import { t as defineIslandPropsDecoder } from "./propsDecoder-CwvvNOHx.mjs";
|
|
2
|
+
import { n as EventCombinedIslandClient } from "./EventCombined.client-C0pgma9y.mjs";
|
|
3
|
+
import { t as BlockApiProvider } from "./context-C8TinPJc.mjs";
|
|
4
4
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
5
|
-
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-
|
|
5
|
+
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-BwVFo0Y4.mjs";
|
|
6
6
|
import "react";
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
8
|
//#region src/rendering/islands/enhancers/eventCombined.tsx
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Jt as CANCELLED_SESSION_STATUS, M as resolveEventRegistrationScopedEvents, Yt as resolveWholeSeriesBookingPhase,
|
|
2
|
-
import { l as formatTotalCapacity, n as formatEventPriceAmount, t as formatEventPrice } from "./pricing-
|
|
3
|
-
import { d as resolveEventLinkProps, r as formatEventDateParts } from "./dates-
|
|
1
|
+
import { Jt as CANCELLED_SESSION_STATUS, M as resolveEventRegistrationScopedEvents, Yt as resolveWholeSeriesBookingPhase, an as getBookingLocalDateKey, bn as formatCurrencyAmount, dn as toScheduledBookingDateTime, fn as formatBookingPriceDisplay, gn as publicEventPricingDisplay, hn as publicEventPricingCurrency, ln as toBookingTimeZone, mn as isPublicEventPricingOptionDisplayable, t as defineIslandPropsDecoder, yn as publicEventPricingType } from "./propsDecoder-CwvvNOHx.mjs";
|
|
2
|
+
import { l as formatTotalCapacity, n as formatEventPriceAmount, t as formatEventPrice } from "./pricing-Cgxv2KLC.mjs";
|
|
3
|
+
import { d as resolveEventLinkProps, r as formatEventDateParts } from "./dates-vwwxTeB0.mjs";
|
|
4
4
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
5
|
-
import { t as LeafletStaticMap } from "./LeafletStaticMap-
|
|
5
|
+
import { t as LeafletStaticMap } from "./LeafletStaticMap-DScC4F3w.mjs";
|
|
6
6
|
import "react";
|
|
7
7
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
8
8
|
//#region ../blocks/src/system/runtime/nodes/events/shared/eventProductEligibility.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as defineIslandPropsDecoder } from "./propsDecoder-
|
|
2
|
-
import { t as BlockApiProvider } from "./context-
|
|
1
|
+
import { t as defineIslandPropsDecoder } from "./propsDecoder-CwvvNOHx.mjs";
|
|
2
|
+
import { t as BlockApiProvider } from "./context-C8TinPJc.mjs";
|
|
3
3
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
4
|
-
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-
|
|
5
|
-
import { t as EventListingClient } from "./EventListing.client-
|
|
4
|
+
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-BwVFo0Y4.mjs";
|
|
5
|
+
import { t as EventListingClient } from "./EventListing.client-4fhLOvHP.mjs";
|
|
6
6
|
import "react";
|
|
7
7
|
import { jsx } from "react/jsx-runtime";
|
|
8
8
|
//#region src/rendering/islands/enhancers/eventListing.tsx
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { a as
|
|
3
|
-
import { C as resolveDiscountContext, D as WIZARD_STEPS, E as toRegistrationRequestSubject, M as resolveEventRegistrationScopedEvents, O as getStepNumber,
|
|
4
|
-
import { a as canJoinEventWaitlistOnAnyMode, c as formatTicketTypeRemaining, f as getRemainingPlaces, h as selectMostOpenCapacitySource, i as canJoinEventWaitlist, m as selectEventCapacitySource, o as formatEventRemainingPlaces, p as isEventFull, r as formatEventPriceDisplay, s as formatRemainingPlaces, u as getEventAvailability } from "./pricing-
|
|
5
|
-
import { n as useBlockApi, r as BlockApiError, t as BlockApiProvider } from "./context-
|
|
2
|
+
import { a as buildBookingPaymentSelectionViewModel, i as usePolling, n as BookingConsentAgreement, o as resolveBookingPaymentDueNowCents, r as StepIndicator$1, s as formatPrice, t as BookingMailingListNote } from "./BookingMailingListNote-1n4Ch_u_.mjs";
|
|
3
|
+
import { $t as formatBookingDate, C as resolveDiscountContext, D as WIZARD_STEPS, E as toRegistrationRequestSubject, M as resolveEventRegistrationScopedEvents, O as getStepNumber, S as findPreSelectedEvent, T as resolveRegistrationTarget, Vt as assertNever, Zt as resolveBookingSignupOffer, _ as buildEventRegistrationDisplayFromScopedEvents, _n as publicEventPricingOptions, b as toWholeSeriesRegistrationEvents, bn as formatCurrencyAmount, dn as toScheduledBookingDateTime, ft as groupPublicEventsByRun, hn as publicEventPricingCurrency, k as getWizardStepsForContext, ln as toBookingTimeZone, rn as formatBookingTime, t as defineIslandPropsDecoder, tn as formatBookingDateTime, v as getRegistrationStartAt, vn as publicEventPricingStrategy, w as resolveEventRequiresPayment, x as findEventByOccurrenceId, xn as parseCurrencyCode, y as toRegistrationEvents, yn as publicEventPricingType } from "./propsDecoder-CwvvNOHx.mjs";
|
|
4
|
+
import { a as canJoinEventWaitlistOnAnyMode, c as formatTicketTypeRemaining, f as getRemainingPlaces, h as selectMostOpenCapacitySource, i as canJoinEventWaitlist, m as selectEventCapacitySource, o as formatEventRemainingPlaces, p as isEventFull, r as formatEventPriceDisplay, s as formatRemainingPlaces, u as getEventAvailability } from "./pricing-Cgxv2KLC.mjs";
|
|
5
|
+
import { n as useBlockApi, r as BlockApiError, t as BlockApiProvider } from "./context-C8TinPJc.mjs";
|
|
6
6
|
import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
|
|
7
|
-
import {
|
|
8
|
-
import { t as
|
|
9
|
-
import { i as SpinnerNode, t as ThemedButton } from "./ThemedButton-
|
|
7
|
+
import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-CKJtz0mY.mjs";
|
|
8
|
+
import { a as useDiscountCodeUi, i as CheckIcon, n as StateIcon, r as scrollToBlock, t as TerminalPanel } from "./TerminalPanel-B5ZUsYhe.mjs";
|
|
9
|
+
import { i as SpinnerNode, t as ThemedButton } from "./ThemedButton-DoVIV1Ao.mjs";
|
|
10
10
|
import { t as FeedbackMessage } from "./FeedbackMessage-CtLvvS_d.mjs";
|
|
11
|
-
import {
|
|
12
|
-
import { t as buildCheckoutReturnUrls } from "./checkoutUrls-
|
|
13
|
-
import { t as CheckboxChoice } from "./CheckboxChoice
|
|
11
|
+
import { i as getFieldValidationControlProps, r as FieldValidationMessage } from "./mailingListSignupCopy-DZSHZrm6.mjs";
|
|
12
|
+
import { t as buildCheckoutReturnUrls } from "./checkoutUrls-BEfR7kVu.mjs";
|
|
13
|
+
import { t as CheckboxChoice } from "./CheckboxChoice-B33MqoUo.mjs";
|
|
14
14
|
import { t as createBodyThemePortalRoot } from "./themePortalRoot-AGs4cE7t.mjs";
|
|
15
15
|
import { n as consumeSearchParams } from "./urlParams-D71VXFGx.mjs";
|
|
16
16
|
import { t as CrossIcon } from "./CrossIcon-Dn1KRKW5.mjs";
|
|
17
17
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
18
|
-
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-
|
|
18
|
+
import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-BwVFo0Y4.mjs";
|
|
19
19
|
import { t as createLucideIcon } from "./createLucideIcon-PaLVMov4.mjs";
|
|
20
20
|
import { t as ModalShell } from "./ModalShell-CqkBvBIC.mjs";
|
|
21
21
|
import React, { useCallback, useEffect, useId, useLayoutEffect, useMemo, useReducer, useRef, useState, useSyncExternalStore } from "react";
|
|
@@ -833,7 +833,8 @@ function createInitialRegistrationFormData() {
|
|
|
833
833
|
email: "",
|
|
834
834
|
phone: "",
|
|
835
835
|
notes: "",
|
|
836
|
-
consentAccepted: false
|
|
836
|
+
consentAccepted: false,
|
|
837
|
+
mailingListOptIn: false
|
|
837
838
|
};
|
|
838
839
|
}
|
|
839
840
|
function validateFormData(formData, requiresConsent = false) {
|
|
@@ -1906,7 +1907,10 @@ async function handleCheckoutReturn(options, deps, returnContextRef) {
|
|
|
1906
1907
|
}
|
|
1907
1908
|
const { checkoutAttemptId } = command;
|
|
1908
1909
|
const pending = deps.getPendingRegistration(siteId, checkoutAttemptId);
|
|
1909
|
-
returnContextRef.current = {
|
|
1910
|
+
returnContextRef.current = {
|
|
1911
|
+
checkoutAttemptId,
|
|
1912
|
+
mailingListSignupNote: pending?.mailingListSignupNote
|
|
1913
|
+
};
|
|
1910
1914
|
if (pending) restorePendingPresentation(options, pending);
|
|
1911
1915
|
options.setStep("verifying-payment");
|
|
1912
1916
|
try {
|
|
@@ -1927,7 +1931,10 @@ function completeVerifiedRegistration(options, deps, returnContext) {
|
|
|
1927
1931
|
const siteId = options.api.config.siteId;
|
|
1928
1932
|
const checkoutAttemptId = returnContext?.checkoutAttemptId;
|
|
1929
1933
|
if (siteId && checkoutAttemptId) deps.clearPendingRegistration(siteId, checkoutAttemptId);
|
|
1930
|
-
options.setRegistrationResult({
|
|
1934
|
+
options.setRegistrationResult({
|
|
1935
|
+
status: "confirmed",
|
|
1936
|
+
mailingListSignupNote: returnContext?.mailingListSignupNote
|
|
1937
|
+
});
|
|
1931
1938
|
options.setStep("success");
|
|
1932
1939
|
}
|
|
1933
1940
|
function useEventRegistrationStripeReturnWithDeps(options, deps) {
|
|
@@ -2000,6 +2007,9 @@ function registrationErrorPresentation(error) {
|
|
|
2000
2007
|
}
|
|
2001
2008
|
//#endregion
|
|
2002
2009
|
//#region ../blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.ts
|
|
2010
|
+
function wantsMailingListSignup(options) {
|
|
2011
|
+
return options.mailingListSignup !== null && options.formData.mailingListOptIn === true;
|
|
2012
|
+
}
|
|
2003
2013
|
function createClientCommandId(cryptoSource = {
|
|
2004
2014
|
randomUUID: globalThis.crypto.randomUUID?.bind(globalThis.crypto),
|
|
2005
2015
|
getRandomValues: (bytes) => globalThis.crypto.getRandomValues(bytes)
|
|
@@ -2097,7 +2107,8 @@ async function completeRegistrationSubmission(options, deps, prepared, result, s
|
|
|
2097
2107
|
case "paymentStatusRequired":
|
|
2098
2108
|
options.setPaymentStatusRecovery({
|
|
2099
2109
|
kind: "ready",
|
|
2100
|
-
subject: result.subject
|
|
2110
|
+
subject: result.subject,
|
|
2111
|
+
mailingListSignupNote: result.mailingListSignupNote
|
|
2101
2112
|
});
|
|
2102
2113
|
options.setStep("payment-status");
|
|
2103
2114
|
return {
|
|
@@ -2106,14 +2117,15 @@ async function completeRegistrationSubmission(options, deps, prepared, result, s
|
|
|
2106
2117
|
};
|
|
2107
2118
|
case "checkoutRequired":
|
|
2108
2119
|
options.setPendingRegistrationReference(result.reference);
|
|
2109
|
-
savePendingCheckout(options, deps, prepared, result.submissionId, result.reference);
|
|
2120
|
+
savePendingCheckout(options, deps, prepared, result.submissionId, result.reference, result.mailingListSignupNote);
|
|
2110
2121
|
options.setStep("redirecting");
|
|
2111
2122
|
return redirectToCheckout(result.checkoutUrl, submitOptions);
|
|
2112
2123
|
case "waitlisted":
|
|
2113
2124
|
options.setRegistrationResult({
|
|
2114
2125
|
status: "waitlist",
|
|
2115
2126
|
title: "Added to waitlist",
|
|
2116
|
-
message: result.waitlist.message
|
|
2127
|
+
message: result.waitlist.message,
|
|
2128
|
+
mailingListSignupNote: result.mailingListSignupNote
|
|
2117
2129
|
});
|
|
2118
2130
|
break;
|
|
2119
2131
|
case "bookingComplete":
|
|
@@ -2121,7 +2133,8 @@ async function completeRegistrationSubmission(options, deps, prepared, result, s
|
|
|
2121
2133
|
options.setPendingRegistrationReference(result.reference);
|
|
2122
2134
|
options.setRegistrationResult({
|
|
2123
2135
|
status: "confirmed",
|
|
2124
|
-
message: result.summary.paymentMethod === "pass" ? result.summary.message : void 0
|
|
2136
|
+
message: result.summary.paymentMethod === "pass" ? result.summary.message : void 0,
|
|
2137
|
+
mailingListSignupNote: result.mailingListSignupNote
|
|
2125
2138
|
});
|
|
2126
2139
|
break;
|
|
2127
2140
|
}
|
|
@@ -2180,7 +2193,7 @@ function resolveSelectionSnapshot(method, passId, membershipId, bundleProductId,
|
|
|
2180
2193
|
if (method === "free") return { method };
|
|
2181
2194
|
throw new Error("Choose an available payment option.");
|
|
2182
2195
|
}
|
|
2183
|
-
function savePendingCheckout(options, deps, prepared, checkoutAttemptId, reference) {
|
|
2196
|
+
function savePendingCheckout(options, deps, prepared, checkoutAttemptId, reference, mailingListSignupNote) {
|
|
2184
2197
|
const siteId = options.api.config.siteId;
|
|
2185
2198
|
if (!siteId) return;
|
|
2186
2199
|
deps.savePendingRegistration(siteId, checkoutAttemptId, {
|
|
@@ -2189,7 +2202,8 @@ function savePendingCheckout(options, deps, prepared, checkoutAttemptId, referen
|
|
|
2189
2202
|
ticketSelections: prepared.ticketSelections,
|
|
2190
2203
|
selectedEventId: options.registrationTarget?.selectedEventId ?? null,
|
|
2191
2204
|
selectedAttendanceMode: options.selectedAttendanceMode,
|
|
2192
|
-
paymentSelection: prepared.selectionSnapshot
|
|
2205
|
+
paymentSelection: prepared.selectionSnapshot,
|
|
2206
|
+
mailingListSignupNote
|
|
2193
2207
|
});
|
|
2194
2208
|
}
|
|
2195
2209
|
function redirectToCheckout(checkoutUrl, submitOptions) {
|
|
@@ -2203,7 +2217,7 @@ function redirectToCheckout(checkoutUrl, submitOptions) {
|
|
|
2203
2217
|
};
|
|
2204
2218
|
}
|
|
2205
2219
|
function registrationRequestIntentKey(request) {
|
|
2206
|
-
const { registrationCommandId: _command, altchaSolution: _proof, checkout, ...intent } = request;
|
|
2220
|
+
const { registrationCommandId: _command, altchaSolution: _proof, mailingListOptIn: _marketingConsent, checkout, ...intent } = request;
|
|
2207
2221
|
return JSON.stringify({
|
|
2208
2222
|
...intent,
|
|
2209
2223
|
checkout: checkout ? {
|
|
@@ -2228,6 +2242,7 @@ function buildRegistrationRequest(options, prepared, method, passId, membershipI
|
|
|
2228
2242
|
phone: options.formData.phone.trim() || void 0,
|
|
2229
2243
|
notes: options.formData.notes.trim() || void 0,
|
|
2230
2244
|
consentAccepted: options.formData.consentAccepted,
|
|
2245
|
+
mailingListOptIn: wantsMailingListSignup(options),
|
|
2231
2246
|
altchaSolution: options.altchaSolution,
|
|
2232
2247
|
paymentMethod: method,
|
|
2233
2248
|
customerPassId: method === "pass" ? passId : void 0,
|
|
@@ -2462,13 +2477,17 @@ function isCheckableRecovery(state) {
|
|
|
2462
2477
|
function assistanceRequired(recovery) {
|
|
2463
2478
|
return {
|
|
2464
2479
|
kind: "assistanceRequired",
|
|
2465
|
-
subject: recovery.subject
|
|
2480
|
+
subject: recovery.subject,
|
|
2481
|
+
mailingListSignupNote: recovery.mailingListSignupNote
|
|
2466
2482
|
};
|
|
2467
2483
|
}
|
|
2468
2484
|
function applyStatusOutcome(outcome, recovery, setters, setRecovery) {
|
|
2469
2485
|
if (outcome.kind === "resolved") {
|
|
2470
2486
|
setters.setPendingRegistrationReference(outcome.reference);
|
|
2471
|
-
setters.setRegistrationResult({
|
|
2487
|
+
setters.setRegistrationResult({
|
|
2488
|
+
status: "confirmed",
|
|
2489
|
+
mailingListSignupNote: recovery.mailingListSignupNote
|
|
2490
|
+
});
|
|
2472
2491
|
setRecovery(null);
|
|
2473
2492
|
setters.setStep("success");
|
|
2474
2493
|
return;
|
|
@@ -2597,6 +2616,7 @@ function useEventRegistrationWizardWithDeps(options, deps) {
|
|
|
2597
2616
|
const paymentSelection = flowState.paymentSelection;
|
|
2598
2617
|
const [selectedEvent, setSelectedEvent] = useState(preSelectedEvent ?? null);
|
|
2599
2618
|
const [formData, setFormData] = useState(createInitialRegistrationFormData);
|
|
2619
|
+
const mailingListSignup = resolveBookingSignupOffer(options.mailingList, options.siteName);
|
|
2600
2620
|
const [errors, setErrors] = useState({});
|
|
2601
2621
|
const [guests, setGuests] = useState([]);
|
|
2602
2622
|
const [guestErrors, setGuestErrors] = useState({});
|
|
@@ -3043,6 +3063,7 @@ function useEventRegistrationWizardWithDeps(options, deps) {
|
|
|
3043
3063
|
ticketSelections,
|
|
3044
3064
|
selectedSlidingAmount,
|
|
3045
3065
|
formData,
|
|
3066
|
+
mailingListSignup,
|
|
3046
3067
|
altchaSolution,
|
|
3047
3068
|
requireGuestDetails,
|
|
3048
3069
|
guests,
|
|
@@ -3139,6 +3160,7 @@ function useEventRegistrationWizardWithDeps(options, deps) {
|
|
|
3139
3160
|
hasValidTicketSelection,
|
|
3140
3161
|
eventRequiresPayment,
|
|
3141
3162
|
formData,
|
|
3163
|
+
mailingListSignup,
|
|
3142
3164
|
setFormData,
|
|
3143
3165
|
errors,
|
|
3144
3166
|
guests,
|
|
@@ -4598,13 +4620,31 @@ function NotesField({ id, onChange, value }) {
|
|
|
4598
4620
|
})]
|
|
4599
4621
|
});
|
|
4600
4622
|
}
|
|
4623
|
+
function MailingListOptInField({ signup, formData, onChange }) {
|
|
4624
|
+
if (!signup) return null;
|
|
4625
|
+
return /* @__PURE__ */ jsxs("div", {
|
|
4626
|
+
className: "er-field",
|
|
4627
|
+
children: [/* @__PURE__ */ jsx(CheckboxChoice, {
|
|
4628
|
+
checked: formData.mailingListOptIn === true,
|
|
4629
|
+
onChange: (event) => onChange({
|
|
4630
|
+
...formData,
|
|
4631
|
+
mailingListOptIn: event.target.checked
|
|
4632
|
+
}),
|
|
4633
|
+
label: `Email me news and updates from ${signup.siteName}.`,
|
|
4634
|
+
presentation: "row"
|
|
4635
|
+
}), /* @__PURE__ */ jsx("p", {
|
|
4636
|
+
className: "er-text er-text--muted",
|
|
4637
|
+
children: "Optional. You can unsubscribe at any time."
|
|
4638
|
+
})]
|
|
4639
|
+
});
|
|
4640
|
+
}
|
|
4601
4641
|
/**
|
|
4602
4642
|
* Attendee Details Step
|
|
4603
4643
|
*
|
|
4604
4644
|
* Collects attendee information: name, email, phone, and notes.
|
|
4605
4645
|
* Validates required fields and displays errors.
|
|
4606
4646
|
*/
|
|
4607
|
-
const AttendeeDetailsStep = ({ formData, onChange, errors, emailLocked = false, onLogout, ticketsCount = 1, requireGuestDetails = false, guests = [], onGuestsChange, guestErrors = {}, guestSectionShake = false, onGuestShakeEnd, consent }) => {
|
|
4647
|
+
const AttendeeDetailsStep = ({ formData, onChange, errors, emailLocked = false, onLogout, ticketsCount = 1, requireGuestDetails = false, guests = [], onGuestsChange, guestErrors = {}, guestSectionShake = false, onGuestShakeEnd, consent, mailingListSignup }) => {
|
|
4608
4648
|
const idBase = useId();
|
|
4609
4649
|
const nameId = `${idBase}-name`;
|
|
4610
4650
|
const emailId = `${idBase}-email`;
|
|
@@ -4713,6 +4753,11 @@ const AttendeeDetailsStep = ({ formData, onChange, errors, emailLocked = false,
|
|
|
4713
4753
|
placeholder: "(optional)"
|
|
4714
4754
|
})]
|
|
4715
4755
|
}),
|
|
4756
|
+
/* @__PURE__ */ jsx(MailingListOptInField, {
|
|
4757
|
+
signup: mailingListSignup,
|
|
4758
|
+
formData,
|
|
4759
|
+
onChange
|
|
4760
|
+
}),
|
|
4716
4761
|
/* @__PURE__ */ jsx(NotesField, {
|
|
4717
4762
|
id: notesId,
|
|
4718
4763
|
value: formData.notes,
|
|
@@ -5206,7 +5251,8 @@ function AttendeeDetailsContent(props) {
|
|
|
5206
5251
|
guestErrors: wizard.guestErrors,
|
|
5207
5252
|
guestSectionShake: wizard.guestSectionShake,
|
|
5208
5253
|
onGuestShakeEnd: wizard.handleGuestShakeEnd,
|
|
5209
|
-
consent: (wizard.selectedEvent ?? wizard.preSelectedEvent)?.consent ?? null
|
|
5254
|
+
consent: (wizard.selectedEvent ?? wizard.preSelectedEvent)?.consent ?? null,
|
|
5255
|
+
mailingListSignup: wizard.mailingListSignup
|
|
5210
5256
|
}),
|
|
5211
5257
|
props.showSpamProtection && /* @__PURE__ */ jsx("div", {
|
|
5212
5258
|
className: "er-altcha",
|
|
@@ -5408,6 +5454,10 @@ function PaymentStatusStep(props) {
|
|
|
5408
5454
|
"aria-atomic": "true",
|
|
5409
5455
|
children: props.state.kind === "checking" ? "Checking payment…" : view.title
|
|
5410
5456
|
})] }),
|
|
5457
|
+
secondaryBody: props.state.mailingListSignupNote ? /* @__PURE__ */ jsx(BookingMailingListNote, {
|
|
5458
|
+
note: props.state.mailingListSignupNote,
|
|
5459
|
+
context: "booking"
|
|
5460
|
+
}) : void 0,
|
|
5411
5461
|
actionsClassName: "er-button-group",
|
|
5412
5462
|
actions: view.action ? /* @__PURE__ */ jsx("button", {
|
|
5413
5463
|
type: "button",
|
|
@@ -5440,7 +5490,7 @@ function StepIndicator(props) {
|
|
|
5440
5490
|
*
|
|
5441
5491
|
* Displays registration confirmation with a success icon and message.
|
|
5442
5492
|
*/
|
|
5443
|
-
const SuccessStep = ({ title, message, variant = "success" }) => {
|
|
5493
|
+
const SuccessStep = ({ title, message, variant = "success", mailingListSignupNote, context = "booking" }) => {
|
|
5444
5494
|
return /* @__PURE__ */ jsx(TerminalPanel, {
|
|
5445
5495
|
tone: variant === "info" ? "info" : "success",
|
|
5446
5496
|
className: "er-center",
|
|
@@ -5481,7 +5531,11 @@ const SuccessStep = ({ title, message, variant = "success" }) => {
|
|
|
5481
5531
|
})
|
|
5482
5532
|
}),
|
|
5483
5533
|
title: title ?? (variant === "info" ? "Already Registered" : "Registration Confirmed!"),
|
|
5484
|
-
body: message
|
|
5534
|
+
body: message,
|
|
5535
|
+
secondaryBody: mailingListSignupNote ? /* @__PURE__ */ jsx(BookingMailingListNote, {
|
|
5536
|
+
note: mailingListSignupNote,
|
|
5537
|
+
context
|
|
5538
|
+
}) : void 0
|
|
5485
5539
|
});
|
|
5486
5540
|
};
|
|
5487
5541
|
//#endregion
|
|
@@ -5652,11 +5706,10 @@ function EventRegistrationTerminalState(props) {
|
|
|
5652
5706
|
onReturnToPayment: wizard.handleReturnToPayment,
|
|
5653
5707
|
onReturnToBooking: wizard.handleReturnToBooking
|
|
5654
5708
|
}) : null;
|
|
5655
|
-
case "success": return
|
|
5656
|
-
|
|
5657
|
-
|
|
5658
|
-
|
|
5659
|
-
}) : null;
|
|
5709
|
+
case "success": return /* @__PURE__ */ jsx(EventRegistrationSuccess, {
|
|
5710
|
+
wizard,
|
|
5711
|
+
fallbackMessage: props.successMessage
|
|
5712
|
+
});
|
|
5660
5713
|
case "error": return /* @__PURE__ */ jsx(ErrorStep, {
|
|
5661
5714
|
message: wizard.errorMessage,
|
|
5662
5715
|
action: wizard.errorAction,
|
|
@@ -5669,6 +5722,17 @@ function EventRegistrationTerminalState(props) {
|
|
|
5669
5722
|
case "select-payment": return null;
|
|
5670
5723
|
}
|
|
5671
5724
|
}
|
|
5725
|
+
function EventRegistrationSuccess(props) {
|
|
5726
|
+
const result = props.wizard.registrationResult;
|
|
5727
|
+
if (!result) return null;
|
|
5728
|
+
return /* @__PURE__ */ jsx(SuccessStep, {
|
|
5729
|
+
title: result.title,
|
|
5730
|
+
variant: result.variant,
|
|
5731
|
+
message: result.message ?? props.fallbackMessage,
|
|
5732
|
+
mailingListSignupNote: result.mailingListSignupNote,
|
|
5733
|
+
context: result.status === "waitlist" ? "waitlist" : "booking"
|
|
5734
|
+
});
|
|
5735
|
+
}
|
|
5672
5736
|
function EventRegistrationSurface(props) {
|
|
5673
5737
|
const { wizard } = props;
|
|
5674
5738
|
const mainRef = useRef(null);
|
|
@@ -5864,19 +5928,23 @@ function getWizardStepLabel(input) {
|
|
|
5864
5928
|
case "payment-failed": return "";
|
|
5865
5929
|
}
|
|
5866
5930
|
}
|
|
5931
|
+
function useConfiguredEventRegistrationWizard(props) {
|
|
5932
|
+
return useEventRegistrationWizard({
|
|
5933
|
+
anchorId: EVENT_REGISTRATION_ANCHOR_ID,
|
|
5934
|
+
occurrenceContext: props.occurrenceContext ?? null,
|
|
5935
|
+
subject: props.subject ?? null,
|
|
5936
|
+
events: props.events ?? [],
|
|
5937
|
+
maxTicketsNum: normalizeEventRegistrationMaxTickets(props.maxTickets ?? "5"),
|
|
5938
|
+
mailingList: props.mailingList,
|
|
5939
|
+
siteName: props.siteName
|
|
5940
|
+
});
|
|
5941
|
+
}
|
|
5867
5942
|
function EventRegistrationWizard(props) {
|
|
5868
|
-
const { occurrenceContext, subject, events,
|
|
5869
|
-
const maxTicketsNum = normalizeEventRegistrationMaxTickets(maxTickets);
|
|
5943
|
+
const { occurrenceContext, subject, events, showVenue = true, showCapacity = true, successMessage = "Thank you for registering! Check your email for confirmation details.", buttonText = "Complete Registration", buttonVariant = "primary", className, spamProtectionEnabled, supportEmail } = props;
|
|
5870
5944
|
const showSpamProtection = spamProtectionEnabled ?? isSpamProtectionEnabled();
|
|
5871
5945
|
const registrationRootClassName = `event-registration ${className || ""}`;
|
|
5872
5946
|
const registrationRootRef = React.useRef(null);
|
|
5873
|
-
const wizard =
|
|
5874
|
-
anchorId: EVENT_REGISTRATION_ANCHOR_ID,
|
|
5875
|
-
occurrenceContext: occurrenceContext ?? null,
|
|
5876
|
-
subject: subject ?? null,
|
|
5877
|
-
events: events ?? [],
|
|
5878
|
-
maxTicketsNum
|
|
5879
|
-
});
|
|
5947
|
+
const wizard = useConfiguredEventRegistrationWizard(props);
|
|
5880
5948
|
useEventCheckoutHandoffRestore(wizard.step === "redirecting");
|
|
5881
5949
|
const [bookingOverlayOpen, setBookingOverlayOpen] = useState(false);
|
|
5882
5950
|
const [floatingPortalRoot, setFloatingPortalRoot] = useState(null);
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { O as clsx } from "./colorStyles-
|
|
3
|
-
import { Ut as err, Vt as assertNever, Wt as ok, t as defineIslandPropsDecoder } from "./propsDecoder-
|
|
4
|
-
import { n as useBlockApi, t as BlockApiProvider } from "./context-
|
|
2
|
+
import { O as clsx } from "./colorStyles-j5U9v5JA.mjs";
|
|
3
|
+
import { Ut as err, Vt as assertNever, Wt as ok, t as defineIslandPropsDecoder } from "./propsDecoder-CwvvNOHx.mjs";
|
|
4
|
+
import { n as useBlockApi, t as BlockApiProvider } from "./context-C8TinPJc.mjs";
|
|
5
5
|
import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
|
|
6
|
-
import { t as ThemedButton } from "./ThemedButton-
|
|
6
|
+
import { t as ThemedButton } from "./ThemedButton-DoVIV1Ao.mjs";
|
|
7
7
|
import { t as FeedbackMessage } from "./FeedbackMessage-CtLvvS_d.mjs";
|
|
8
|
-
import { t as CheckboxChoice } from "./CheckboxChoice
|
|
8
|
+
import { t as CheckboxChoice } from "./CheckboxChoice-B33MqoUo.mjs";
|
|
9
9
|
import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
|
|
10
10
|
import { useReducer, useRef, useState } from "react";
|
|
11
11
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { j as staticHeaderChromeRuntime, r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-
|
|
3
|
-
import { n as ThemedButtonLink, t as ThemedButton } from "./ThemedButton-
|
|
2
|
+
import { j as staticHeaderChromeRuntime, r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-CwvvNOHx.mjs";
|
|
3
|
+
import { n as ThemedButtonLink, t as ThemedButton } from "./ThemedButton-DoVIV1Ao.mjs";
|
|
4
4
|
import { t as resolveDedicatedCheckoutPath } from "./checkoutRoute-ClwHwYVA.mjs";
|
|
5
|
-
import { n as useCommerceCart } from "./shop-commerce-store-
|
|
5
|
+
import { n as useCommerceCart } from "./shop-commerce-store-B3MCxIBW.mjs";
|
|
6
6
|
import { t as ModalShell } from "./ModalShell-CqkBvBIC.mjs";
|
|
7
7
|
import * as React$1 from "react";
|
|
8
8
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|