@riverbankcms/sdk 0.130.2 → 0.132.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 +3 -3
- package/dist/{PreviewEditorSidebar-BY-1QdE2.mjs → PreviewEditorSidebar-DKQ5eFK9.mjs} +351 -95
- package/dist/{PreviewEditorUI-BS34jI9_.mjs → PreviewEditorUI-CNTcOjCC.mjs} +3 -3
- package/dist/{PreviewQueryProvider-BD0kOjtI.mjs → PreviewQueryProvider-D51gQaG3.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-B1pWnhu-.mjs → SdkPreviewModeRuntime-DJu3qu33.mjs} +48 -9
- package/dist/{SiteChromeCustomizeContext-BhUG_72i.mjs → SiteChromeCustomizeContext-2TzT3vbj.mjs} +6417 -4184
- package/dist/_dts/ai/src/contracts/proposals.d.ts +723 -151
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +151 -64
- package/dist/_dts/api/src/bookingConfig.d.ts +13 -9
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +8 -19
- package/dist/_dts/api/src/bookingManagementEventEndpointTypes.d.ts +31 -2
- package/dist/_dts/api/src/bookingVerticals.d.ts +1 -140
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +45 -12
- package/dist/_dts/api/src/contentRuntime.d.ts +2 -1
- package/dist/_dts/api/src/courses.d.ts +1 -19
- package/dist/_dts/api/src/endpoints.d.ts +466 -346
- package/dist/_dts/api/src/event-destination-policy.d.ts +1 -1
- package/dist/_dts/api/src/eventManagementContracts.d.ts +91 -1
- package/dist/_dts/api/src/eventManagementEndpointDefinitions.d.ts +32 -0
- package/dist/_dts/api/src/giftingDashboard.d.ts +117 -0
- package/dist/_dts/api/src/giftingEndpointDefinitions.d.ts +124 -0
- package/dist/_dts/api/src/index.d.ts +4 -4
- package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -1
- package/dist/_dts/api/src/indexExtendedTypes.d.ts +1 -1
- package/dist/_dts/api/src/media.d.ts +1 -0
- package/dist/_dts/api/src/navigation/dashboardBookingsNav.d.ts +3 -4
- package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +11 -0
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +25 -12
- package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +2 -0
- package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +1 -0
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -2
- package/dist/_dts/api/src/sdkBookingVerticalContracts.d.ts +29 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +9 -32
- package/dist/_dts/api/src/sdkEndpointDefinitions.d.ts +23 -0
- package/dist/_dts/api/src/sdkSettingsContracts.d.ts +25 -0
- package/dist/_dts/api/src/sdkThemeCatalogContracts.d.ts +20 -0
- package/dist/_dts/api/src/sdkThemeWire.d.ts +16 -6
- package/dist/_dts/api/src/siteOnboarding.d.ts +3 -3
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +4 -10
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +0 -3
- package/dist/_dts/api/src/types.d.ts +1 -2
- package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -13
- package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +9 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +26 -44
- package/dist/_dts/blocks/src/index.d.ts +1 -1
- package/dist/_dts/blocks/src/subroutes/fold.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/courses/shared/index.d.ts +0 -3
- package/dist/_dts/blocks/src/system/blocks/courses/shared/pricing.d.ts +2 -50
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +1 -929
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -97
- package/dist/_dts/blocks/src/system/blocks/event-details.d.ts +39 -6
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +3 -3
- package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -3
- package/dist/_dts/blocks/src/system/blocks/events/shared/filtering.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +6 -6
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +2 -9
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/index.d.ts +3 -0
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/pricing.d.ts +50 -0
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/schemas.d.ts +135 -0
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +81 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -9
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +1 -1
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +7 -8
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +45 -72
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -36
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +2 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.client.d.ts +4 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +19 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +25 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +75 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/view.d.ts +4 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +5 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +5 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/RegistrationClosedState.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/SiteCreditPreviewPanel.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/siteCreditPreview.d.ts +51 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/BookingModeStep.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/CheckIcon.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/ErrorStep.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/MembershipHero.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PaymentFailedStep.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/StepIndicator.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/VerifyingTimeoutStep.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationActiveSteps.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/CourseRegistrationErrorBoundary.d.ts → event-registration/whole-series/WholeSeriesRegistrationErrorBoundary.d.ts} +5 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationTerminalContent.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/WholeSeriesRegistrationWizard.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/components.d.ts +45 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/index.d.ts +4 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/presentation.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/pricing.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/types.d.ts +18 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseEligibility.d.ts → event-registration/whole-series/useWholeSeriesEligibility.d.ts} +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesPaymentVerification.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationActions.d.ts +35 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseRegistrationPortal.d.ts → event-registration/whole-series/useWholeSeriesRegistrationPortal.d.ts} +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationSelection.d.ts +35 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/useWholeSeriesRegistrationWizard.d.ts +185 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/useCourseWaitlistSelection.d.ts → event-registration/whole-series/useWholeSeriesWaitlistSelection.d.ts} +5 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/utils.d.ts +4 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.contract.d.ts +5 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/whole-series-registration.headless.planning.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/wholeSeriesPageSurfaceScope.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration/courseRegistrationViewState.d.ts → event-registration/whole-series/wholeSeriesRegistrationViewState.d.ts} +7 -7
- package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/wizardSteps.d.ts +4 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +24 -54
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +12 -11
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.server.d.ts +3 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventSpotlight.d.ts +3 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +3 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventDetailModal.d.ts +4 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModalCloseButton.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +4 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +19 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/MagicLinkForm.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/DiscountCodeDisclosure.d.ts +12 -12
- package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +1 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/boxStyleClassNames.d.ts +30 -11
- package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +15 -4
- package/dist/_dts/blocks/src/system/transforms/registry/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -4
- package/dist/_dts/commerce/src/purchase/bookingInstalmentSchedule.d.ts +13 -0
- package/dist/_dts/commerce/src/purchase/cancellationPolicy.d.ts +7 -0
- package/dist/_dts/commerce/src/purchase/canonicalRefundPlanner.d.ts +48 -0
- package/dist/_dts/commerce/src/purchase/checkoutCollectionPlan.d.ts +39 -0
- package/dist/_dts/commerce/src/purchase/checkoutCommitPlan.d.ts +40 -0
- package/dist/_dts/commerce/src/purchase/checkoutDiscountContextPlanning.d.ts +80 -0
- package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -0
- package/dist/_dts/commerce/src/purchase/checkoutOrderItemProjection.d.ts +22 -0
- package/dist/_dts/commerce/src/purchase/checkoutPaymentFlow.d.ts +50 -0
- package/dist/_dts/commerce/src/purchase/checkoutPaymentPlanPlanning.d.ts +30 -0
- package/dist/_dts/commerce/src/purchase/checkoutPaymentTermPlanning.d.ts +10 -0
- package/dist/_dts/commerce/src/purchase/checkoutPaymentTerms.d.ts +53 -0
- package/dist/_dts/commerce/src/purchase/checkoutQuantity.d.ts +8 -0
- package/dist/_dts/commerce/src/purchase/checkoutSessionMetadata.d.ts +76 -0
- package/dist/_dts/commerce/src/purchase/checkoutSettlement.d.ts +46 -0
- package/dist/_dts/commerce/src/purchase/checkoutStripeFinalizationPlanning.d.ts +12 -0
- package/dist/_dts/commerce/src/purchase/checkoutStripeSessionPlanning.d.ts +125 -0
- package/dist/_dts/commerce/src/purchase/checkoutValidatedItemPlanning.d.ts +55 -0
- package/dist/_dts/commerce/src/purchase/confirmationEmailPayment.d.ts +91 -0
- package/dist/_dts/commerce/src/purchase/discountApplication.d.ts +74 -0
- package/dist/_dts/commerce/src/purchase/index.d.ts +55 -0
- package/dist/_dts/commerce/src/purchase/oneTimeCheckoutPlanning.d.ts +86 -0
- package/dist/_dts/commerce/src/purchase/order-number.d.ts +33 -0
- package/dist/_dts/commerce/src/purchase/orderCancellationPlan.d.ts +19 -0
- package/dist/_dts/commerce/src/purchase/orderCompletionEmailPlan.d.ts +71 -0
- package/dist/_dts/commerce/src/purchase/orderConfirmationPlanning.d.ts +120 -0
- package/dist/_dts/commerce/src/purchase/orderFulfillmentPlan.d.ts +81 -0
- package/dist/_dts/commerce/src/purchase/orderFulfillmentResult.d.ts +8 -0
- package/dist/_dts/commerce/src/purchase/orderHistoryLedgerFilters.d.ts +1 -0
- package/dist/_dts/commerce/src/purchase/orderHistorySource.d.ts +11 -0
- package/dist/_dts/commerce/src/purchase/orderInstalmentAdminSettlement.d.ts +43 -0
- package/dist/_dts/commerce/src/purchase/orderInstalmentClosure.d.ts +29 -0
- package/dist/_dts/commerce/src/purchase/orderInstalmentLifecycle.d.ts +44 -0
- package/dist/_dts/commerce/src/purchase/orderInstalmentPayoff.d.ts +24 -0
- package/dist/_dts/commerce/src/purchase/orderInstalmentPlan.d.ts +40 -0
- package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +151 -0
- package/dist/_dts/commerce/src/purchase/orderItemSupport.d.ts +14 -0
- package/dist/_dts/commerce/src/purchase/orderListFilters.d.ts +3 -0
- package/dist/_dts/commerce/src/purchase/orderPaymentLinkPlanning.d.ts +60 -0
- package/dist/_dts/commerce/src/purchase/orderPaymentReceipt.d.ts +184 -0
- package/dist/_dts/commerce/src/purchase/orderPaymentState.d.ts +135 -0
- package/dist/_dts/commerce/src/purchase/orderPlanningTypes.d.ts +102 -0
- package/dist/_dts/commerce/src/purchase/orderRefundPlanning.d.ts +50 -0
- package/dist/_dts/commerce/src/purchase/orderRefundPolicy.d.ts +36 -0
- package/dist/_dts/commerce/src/purchase/orderTotals.d.ts +23 -0
- package/dist/_dts/commerce/src/purchase/orderTypes.d.ts +39 -0
- package/dist/_dts/commerce/src/purchase/pendingCheckoutSessionClaim.d.ts +1 -0
- package/dist/_dts/commerce/src/purchase/persistedCheckoutLines.d.ts +27 -0
- package/dist/_dts/commerce/src/purchase/protectedDepositRefundPolicy.d.ts +86 -0
- package/dist/_dts/commerce/src/purchase/refundPolicy.d.ts +8 -0
- package/dist/_dts/commerce/src/purchase/refundRailSplit.d.ts +40 -0
- package/dist/_dts/commerce/src/purchase/result.d.ts +2 -0
- package/dist/_dts/commerce/src/purchase/settlement.d.ts +97 -0
- package/dist/_dts/commerce/src/purchase/shopRefundPlanning.d.ts +43 -0
- package/dist/_dts/commerce/src/purchase/stateTransitions.d.ts +31 -0
- package/dist/_dts/commerce/src/purchase/stripeMinimumCharge.d.ts +10 -0
- package/dist/_dts/commerce/src/purchase/types.d.ts +168 -0
- package/dist/_dts/commerce/src/shop/shipmentEligibility.d.ts +14 -0
- package/dist/_dts/commerce/src/utils/assertNever.d.ts +1 -0
- package/dist/_dts/content-model/src/content-types/builtin-schemas.d.ts +4 -0
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +4 -0
- package/dist/_dts/core/src/booking-vertical-catalog.d.ts +741 -0
- package/dist/_dts/core/src/booking-vertical-config.d.ts +66 -0
- package/dist/_dts/core/src/booking-vertical-definitions.d.ts +68 -0
- package/dist/_dts/{api/src/bookingVerticalPreset.d.ts → core/src/booking-vertical-preset.d.ts} +1 -1
- package/dist/_dts/core/src/booking-verticals.d.ts +98 -0
- package/dist/_dts/core/src/event-page-selection.d.ts +22 -0
- package/dist/_dts/core/src/event-pricing.d.ts +5 -0
- package/dist/_dts/core/src/event-series-behaviour.d.ts +16 -0
- package/dist/_dts/core/src/index.d.ts +3 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +72 -0
- package/dist/_dts/db/src/schemas/forms.d.ts +4 -4
- package/dist/_dts/media-core/src/fileUploadCompletion.d.ts +3 -0
- package/dist/_dts/media-core/src/fileUploadDurableFinalization.d.ts +2 -0
- package/dist/_dts/media-core/src/identifiers.d.ts +10 -0
- package/dist/_dts/media-core/src/mediaWriteNormalizer.d.ts +2 -6
- package/dist/_dts/media-core/src/types.d.ts +2 -1
- package/dist/_dts/media-editor/src/index.d.ts +2 -2
- package/dist/_dts/media-editor/src/mediaSelection.d.ts +1 -22
- package/dist/_dts/media-editor/src/useMediaSelection.d.ts +0 -9
- package/dist/_dts/preview-next/src/client/preview/ButtonHoverRoleControls.d.ts +10 -0
- package/dist/_dts/preview-next/src/client/preview/ButtonStylePicker.d.ts +3 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/StyleConfiguratorWarningNotice.d.ts +7 -0
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -1
- package/dist/_dts/sdk/src/client/eventSubrouteReadOperations.d.ts +11 -0
- package/dist/_dts/sdk/src/client/types.d.ts +12 -5
- package/dist/_dts/sdk/src/components.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/page.d.ts +2 -13
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -16
- package/dist/_dts/sdk/src/next/pageMetadataProjection.d.ts +7 -0
- package/dist/_dts/sdk/src/next/resolveEventPageSubroute.d.ts +12 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -19
- package/dist/_dts/sdk/src/public-api/eventSubrouteContracts.d.ts +12 -0
- package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/client.d.ts +44 -0
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
- package/dist/_dts/sdk/src/routing/entrySubroutes.d.ts +1 -1
- package/dist/_dts/sdk/src/routing/resolveOccurrence.d.ts +4 -3
- package/dist/_dts/sdk/src/routing/resolvePageContent.d.ts +7 -3
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/contextualHover.d.ts +41 -0
- package/dist/_dts/theme-core/src/buttons/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +3 -0
- package/dist/_dts/theme-core/src/buttons/resolveButtonHoverTreatment.d.ts +14 -0
- package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +21 -4
- package/dist/_dts/theme-core/src/buttons/styles/recipes/flatInk.d.ts +92 -0
- package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +10 -150
- package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +57 -102
- package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +50 -2
- package/dist/_dts/theme-core/src/buttons/types.d.ts +29 -0
- package/dist/_dts/theme-core/src/cards/types.d.ts +3 -25
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +21 -6
- package/dist/_dts/theme-core/src/schema.d.ts +21 -33
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +27 -0
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +27 -0
- package/dist/_dts/theme-core/src/site-styles/buttonSelectionCompiler.d.ts +18 -0
- package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +21 -0
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +2 -11
- package/dist/_dts/theme-core/src/site-styles/selectionFallbackWarning.d.ts +15 -0
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +13 -1
- package/dist/_dts/ui/src/navigation-tabs.d.ts +2 -0
- package/dist/client/{DiscountCodeDisclosure-BPZ-yfGI.mjs → DiscountCodeDisclosure-DO7llLxm.mjs} +12 -12
- package/dist/client/{EventCombined.client-Cjt3kKYR.mjs → EventCombined.client-xID7zN__.mjs} +36 -48
- package/dist/client/{EventListing.client-DY9dn6Fh.mjs → EventListing.client-CriBslp0.mjs} +2 -2
- package/dist/client/{LeafletStaticMap--2c61XYn.mjs → LeafletStaticMap-DYmHnM8g.mjs} +1 -1
- package/dist/client/{StepIndicator-CLjQhkDb.mjs → StepIndicator-CGixP_LW.mjs} +2 -2
- package/dist/client/{CourseRegistrationWizard-DGW9F0SQ.mjs → WholeSeriesRegistrationWizard-BEjzSiOA.mjs} +1408 -1245
- package/dist/client/{accordion-_boYwHHi.mjs → accordion-CgFbnnnQ.mjs} +1 -1
- package/dist/client/{bookingForm--AqEfyBX.mjs → bookingForm-dUyGpbxc.mjs} +5 -5
- package/dist/client/bookings.mjs +635 -471
- package/dist/client/{carousel-CVI2dqZr.mjs → carousel-BvBwkUzx.mjs} +1 -1
- package/dist/client/{cart-DR6IiPz9.mjs → cart-DiZENT2E.mjs} +3 -3
- package/dist/client/{checkout-CsrGAfQt.mjs → checkout-Dq13KIgR.mjs} +3 -3
- package/dist/client/client.mjs +6291 -3452
- package/dist/client/{courseRegistration-aNJVaLa3.mjs → courseRegistration-CKC5NmyH.mjs} +10 -4
- package/dist/client/{eventCalendar-OZ7h59VN.mjs → eventCalendar-BF0Jatfw.mjs} +40 -43
- package/dist/client/{eventCombined-BbJ6bFKz.mjs → eventCombined-BuoCF8je.mjs} +2 -2
- package/dist/client/{eventDetails-BLyUBiCT.mjs → eventDetails-CKwh0S9s.mjs} +276 -94
- package/dist/client/{eventListing-DuP1yhBS.mjs → eventListing-eUxaWFaB.mjs} +2 -2
- package/dist/client/{eventRegistration-BXyECPa-.mjs → eventRegistration-CfkNOkPb.mjs} +625 -132
- package/dist/client/{form-BA4t3kKU.mjs → form-C17H1c_H.mjs} +1 -1
- package/dist/client/{headerSection-CpNaJxhW.mjs → headerSection-DEwUmrtt.mjs} +2 -2
- package/dist/client/hooks.mjs +1312 -481
- package/dist/client/{locationMap-3HGMCL7_.mjs → locationMap-Pf2QwuvW.mjs} +2 -2
- package/dist/client/{newsletterForm-C2s6Mw67.mjs → newsletterForm-BWQAH5Sv.mjs} +1 -1
- package/dist/client/pricing-CVdvbopJ.mjs +195 -0
- package/dist/client/{productDetail-C9joWhdE.mjs → productDetail-BZi1Fa_G.mjs} +3 -3
- package/dist/client/{productList-CjzdU3pB.mjs → productList-qq-55DNk.mjs} +3 -3
- package/dist/client/{propsDecoder-CBPGXEYX.mjs → propsDecoder-BxmqPKdP.mjs} +412 -196
- package/dist/client/rendering/client.mjs +5685 -4037
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +7006 -4124
- package/dist/client/{scrollToBlock-DZ73aEX6.mjs → scrollToBlock-B3CcKdtG.mjs} +1 -1
- package/dist/client/{shop-CQRai7hj.mjs → shop-DNWJPut5.mjs} +5 -5
- package/dist/client/{shop-commerce-hP9UboOx.mjs → shop-commerce-BhvQCosS.mjs} +4 -4
- package/dist/client/{shop-commerce-store-DiD5a32e.mjs → shop-commerce-store-B04sCNnW.mjs} +1 -1
- package/dist/client/{shopShared-DP8DXTkF.mjs → shopShared-DNNgZlmW.mjs} +2 -2
- package/dist/client/{useEventFilters-pF_OJNQP.mjs → useEventFilters-CUmhE24_.mjs} +195 -6
- package/dist/client/{usePolling-Cls91SD2.mjs → usePolling-M5jG675x.mjs} +3 -3
- package/dist/preview-next/before-render.mjs +247 -60
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/keepAlive.mjs +247 -60
- package/dist/preview-next/middleware.mjs +247 -60
- package/dist/{previewAuthStore-CX1C_KJ4.mjs → previewAuthStore-BFKd4LrN.mjs} +247 -60
- package/dist/{sdk-runtime-5CcPAI14.mjs → sdk-runtime-BEXb1wqo.mjs} +2 -2
- package/dist/{separator-BXlYN_gr.mjs → separator-DGMuip1D.mjs} +1 -1
- package/dist/server/components.mjs +3461 -1577
- package/dist/server/config-validation.mjs +1312 -482
- package/dist/server/config.mjs +1312 -482
- package/dist/server/data.mjs +1312 -481
- package/dist/server/index.mjs +289 -81
- package/dist/server/manifest.mjs +0 -1
- package/dist/server/next.mjs +3576 -1689
- package/dist/server/page-converter.mjs +797 -250
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +3461 -1576
- package/dist/server/rendering.mjs +3461 -1577
- package/dist/server/routing.mjs +1555 -616
- package/dist/server/server.mjs +1352 -560
- package/dist/server/theme-bridge.mjs +1992 -931
- package/dist/server/theme.mjs +346 -133
- package/dist/styles/index.css +1602 -796
- package/package.json +1 -1
- package/dist/_dts/api/src/bookingVerticalCatalog.d.ts +0 -746
- package/dist/_dts/api/src/eventSeriesPresentationPreset.d.ts +0 -12
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/CourseRegistrationWizard.d.ts +0 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/StepIndicator.d.ts +0 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/components.d.ts +0 -45
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/pricing.d.ts +0 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCoursePaymentVerification.d.ts +0 -9
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationActions.d.ts +0 -35
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationSelection.d.ts +0 -31
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +0 -102
- package/dist/client/eventProductEligibility-AVxyCB1u.mjs +0 -50
- package/dist/client/pricing-BiqIMgZk.mjs +0 -174
- /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/PortalAuthSidebar.d.ts +0 -0
- /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/SuccessStep.d.ts +0 -0
- /package/dist/_dts/blocks/src/system/runtime/nodes/{course-registration → event-registration/whole-series}/WaitlistStep.d.ts +0 -0
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { WholeSeriesRegistrationClientProps } from './types';
|
|
2
|
+
import { type WholeSeriesRegistrationPresentationKind } from './presentation';
|
|
3
|
+
type WholeSeriesRegistrationWizardProps = WholeSeriesRegistrationClientProps & Readonly<{
|
|
4
|
+
/** Temporary adapter input while persisted Course blocks are cut over. */
|
|
5
|
+
presentationKind?: WholeSeriesRegistrationPresentationKind;
|
|
6
|
+
}>;
|
|
7
|
+
export declare function WholeSeriesRegistrationWizard(props: WholeSeriesRegistrationWizardProps): import("react").JSX.Element;
|
|
8
|
+
export {};
|
package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/components.d.ts
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series';
|
|
3
|
+
import { type ResolvedWholeSeriesPricingState } from '../../../../blocks/events/whole-series';
|
|
4
|
+
import type { FormData } from './types';
|
|
5
|
+
interface RunCardProps {
|
|
6
|
+
run: PublicWholeSeriesOffering;
|
|
7
|
+
isSelected: boolean;
|
|
8
|
+
onSelect: () => void;
|
|
9
|
+
showSessions: boolean;
|
|
10
|
+
showPrice: boolean;
|
|
11
|
+
showCapacity: boolean;
|
|
12
|
+
showVenue: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function RunCard({ run, isSelected, onSelect, showSessions, showPrice, showCapacity, showVenue, }: RunCardProps): React.JSX.Element;
|
|
15
|
+
interface RunSummaryProps {
|
|
16
|
+
run: PublicWholeSeriesOffering;
|
|
17
|
+
pricing: ResolvedWholeSeriesPricingState;
|
|
18
|
+
showSessions: boolean;
|
|
19
|
+
showVenue: boolean;
|
|
20
|
+
showPrice: boolean;
|
|
21
|
+
showMembershipNote: boolean;
|
|
22
|
+
}
|
|
23
|
+
export declare function RunSummary({ run, pricing, showSessions, showVenue, showPrice, showMembershipNote, }: RunSummaryProps): React.JSX.Element;
|
|
24
|
+
interface WholeSeriesPricingSelectorProps {
|
|
25
|
+
pricing: ResolvedWholeSeriesPricingState;
|
|
26
|
+
selectedPricingOptionId: string | null;
|
|
27
|
+
onSelect: (pricingOptionId: string) => void;
|
|
28
|
+
}
|
|
29
|
+
export declare function WholeSeriesPricingSelector({ pricing, selectedPricingOptionId, onSelect, }: WholeSeriesPricingSelectorProps): React.JSX.Element | null;
|
|
30
|
+
interface WholeSeriesSlidingScaleInputProps {
|
|
31
|
+
pricing: ResolvedWholeSeriesPricingState;
|
|
32
|
+
value: string;
|
|
33
|
+
onChange: (value: string) => void;
|
|
34
|
+
}
|
|
35
|
+
export declare function WholeSeriesSlidingScaleInput({ pricing, value, onChange, }: WholeSeriesSlidingScaleInputProps): React.JSX.Element | null;
|
|
36
|
+
interface EnrollmentFormProps {
|
|
37
|
+
formData: FormData;
|
|
38
|
+
errors: Partial<Record<keyof FormData, string>>;
|
|
39
|
+
onChange: (data: FormData) => void;
|
|
40
|
+
isEmailLocked: boolean;
|
|
41
|
+
isLoading: boolean;
|
|
42
|
+
onLogout?: () => void;
|
|
43
|
+
}
|
|
44
|
+
export declare function EnrollmentForm({ formData, errors, onChange, isEmailLocked, isLoading, onLogout, }: EnrollmentFormProps): React.JSX.Element;
|
|
45
|
+
export {};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Run Registration Block Module
|
|
3
3
|
*
|
|
4
|
-
* Exports types, utilities, and components for
|
|
4
|
+
* Exports types, utilities, and components for run enrollment.
|
|
5
5
|
*/
|
|
6
|
-
export type { EnrollmentStep, BookingMode, FormData, PortalAuthState, EnrollmentResult, ButtonVariant,
|
|
7
|
-
export { formatPrice, formatDate, formatTime, formatDateTime, validateFormData, buildCheckoutReturnUrls,
|
|
6
|
+
export type { EnrollmentStep, BookingMode, FormData, PortalAuthState, EnrollmentResult, ButtonVariant, WholeSeriesRegistrationBaseProps, WholeSeriesRegistrationServerProps, WholeSeriesRegistrationClientProps, } from './types';
|
|
7
|
+
export { formatPrice, formatDate, formatTime, formatDateTime, validateFormData, buildCheckoutReturnUrls, WHOLE_SERIES_REGISTRATION_ANCHOR_ID, } from './utils';
|
|
8
8
|
export { WIZARD_STEPS, STEP_LABELS, getWizardStepsForContext, getStepNumber, getStepLabel, getStepLabels, } from './wizardSteps';
|
|
9
9
|
export { CheckIcon } from './CheckIcon';
|
|
10
10
|
export { StepIndicator } from './StepIndicator';
|
package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/presentation.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type WholeSeriesRegistrationPresentationKind = 'event' | 'temporary-course-adapter';
|
|
2
|
+
export type WholeSeriesRegistrationPresentation = Readonly<{
|
|
3
|
+
dataBlock: 'event-registration' | 'course-registration';
|
|
4
|
+
anchorId: 'event-registration' | 'course-registration';
|
|
5
|
+
rootClass: 'event-registration' | 'course-registration';
|
|
6
|
+
}>;
|
|
7
|
+
export declare function resolveWholeSeriesRegistrationPresentation(kind: WholeSeriesRegistrationPresentationKind): WholeSeriesRegistrationPresentation;
|
package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/whole-series/pricing.d.ts
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ResolvedWholeSeriesPricingState } from '../../../../blocks/events/whole-series';
|
|
2
|
+
export type WholeSeriesPricingSelection = Readonly<{
|
|
3
|
+
pricingOptionId: string | null;
|
|
4
|
+
slidingAmountInput: string;
|
|
5
|
+
}>;
|
|
6
|
+
export declare function parseCurrencyInputToCents(value: string): number | null;
|
|
7
|
+
export declare function formatCentsAsCurrencyInput(amount: number): string;
|
|
8
|
+
export declare function getMissingWholeSeriesPricingSelectionMessage(pricing: ResolvedWholeSeriesPricingState | null): string | null;
|
|
9
|
+
export declare function buildWholeSeriesPricingOptionPayload(pricing: ResolvedWholeSeriesPricingState | null): {
|
|
10
|
+
pricingOptionId?: string;
|
|
11
|
+
selectedSlidingAmount?: number;
|
|
12
|
+
};
|
|
13
|
+
export declare function resolveHasWholeSeriesPayment(pricing: ResolvedWholeSeriesPricingState | null): boolean;
|
|
14
|
+
export declare function defaultWholeSeriesPricingSelection(pricing: ResolvedWholeSeriesPricingState, previousOptionId: string | null): WholeSeriesPricingSelection;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Run Registration Block Types
|
|
3
3
|
*
|
|
4
4
|
* Shared types for server and client components.
|
|
5
5
|
*/
|
|
6
|
-
import type {
|
|
7
|
-
import type { ButtonVariant as SharedButtonVariant } from '
|
|
8
|
-
import type { EventRegistrationPageSurfaceSubject } from '../
|
|
9
|
-
export type { FormData } from '
|
|
6
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series';
|
|
7
|
+
import type { ButtonVariant as SharedButtonVariant } from '../../../shared';
|
|
8
|
+
import type { EventRegistrationPageSurfaceSubject } from '../eventScope';
|
|
9
|
+
export type { FormData } from '../../../shared';
|
|
10
10
|
export type ButtonVariant = SharedButtonVariant;
|
|
11
11
|
/**
|
|
12
12
|
* Enrollment wizard step
|
|
13
13
|
*/
|
|
14
|
-
export type EnrollmentStep = 'select-
|
|
14
|
+
export type EnrollmentStep = 'select-run' | 'enter-details' | 'booking-mode' | 'select-payment' | 'submitting' | 'redirecting' | 'verifying-payment' | 'verifying-timeout' | 'payment-failed' | 'success' | 'waitlist' | 'error';
|
|
15
15
|
/**
|
|
16
16
|
* Booking mode for payment selection
|
|
17
17
|
*/
|
|
@@ -28,7 +28,7 @@ export type EnrollmentResult = {
|
|
|
28
28
|
waitlistPosition?: number;
|
|
29
29
|
usedMembership?: boolean;
|
|
30
30
|
};
|
|
31
|
-
export type
|
|
31
|
+
export type WholeSeriesRegistrationWizardActionResult = Readonly<{
|
|
32
32
|
kind: 'state-updated';
|
|
33
33
|
}> | Readonly<{
|
|
34
34
|
kind: 'checkout-redirect';
|
|
@@ -45,14 +45,14 @@ export type CourseRegistrationWizardActionResult = Readonly<{
|
|
|
45
45
|
/**
|
|
46
46
|
* Base props shared between server and client components
|
|
47
47
|
*/
|
|
48
|
-
export interface
|
|
49
|
-
/** Native page-surface subject for series/offering-owned
|
|
48
|
+
export interface WholeSeriesRegistrationBaseProps {
|
|
49
|
+
/** Native page-surface subject for series/offering-owned run pages. */
|
|
50
50
|
subject?: EventRegistrationPageSurfaceSubject | null;
|
|
51
|
-
/** List of available
|
|
52
|
-
|
|
53
|
-
/** Display the list of
|
|
51
|
+
/** List of available runs from data loader */
|
|
52
|
+
runs?: PublicWholeSeriesOffering[] | null;
|
|
53
|
+
/** Display the list of run sessions */
|
|
54
54
|
showSessions?: boolean;
|
|
55
|
-
/** Display the
|
|
55
|
+
/** Display the run price */
|
|
56
56
|
showPrice?: boolean;
|
|
57
57
|
/** Display remaining enrollment capacity */
|
|
58
58
|
showCapacity?: boolean;
|
|
@@ -74,7 +74,7 @@ export interface CourseRegistrationBaseProps {
|
|
|
74
74
|
/**
|
|
75
75
|
* Server component props (extends base with SSR-specific fields)
|
|
76
76
|
*/
|
|
77
|
-
export interface
|
|
77
|
+
export interface WholeSeriesRegistrationServerProps extends WholeSeriesRegistrationBaseProps {
|
|
78
78
|
blockId?: string | null;
|
|
79
79
|
siteId?: string;
|
|
80
80
|
/** API base URL for client-side fetching */
|
|
@@ -88,16 +88,18 @@ export interface CourseRegistrationServerProps extends CourseRegistrationBasePro
|
|
|
88
88
|
/**
|
|
89
89
|
* Client component props
|
|
90
90
|
*/
|
|
91
|
-
export interface
|
|
91
|
+
export interface WholeSeriesRegistrationClientProps extends WholeSeriesRegistrationBaseProps {
|
|
92
92
|
/** @deprecated Site ID is now provided by BlockApiProvider context */
|
|
93
93
|
siteId?: string;
|
|
94
94
|
/** @deprecated Stage is now controlled by BlockApiProvider's isPreview config */
|
|
95
95
|
stage?: 'preview' | 'published';
|
|
96
96
|
}
|
|
97
|
-
export type
|
|
97
|
+
export type WholeSeriesRegistrationWizardOptions = Readonly<{
|
|
98
98
|
/**
|
|
99
99
|
* Receives checkout destinations for headless consumers. The default UI
|
|
100
100
|
* navigates automatically when this callback is absent.
|
|
101
101
|
*/
|
|
102
102
|
onCheckoutRedirect?: (checkoutUrl: string) => void;
|
|
103
|
+
/** Internal render anchor; the Course adapter preserves existing return URLs. */
|
|
104
|
+
anchorId?: 'event-registration' | 'course-registration';
|
|
103
105
|
}>;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
import type { BlockApiClient } from '
|
|
3
|
-
import type { WholeSeriesEligibilityResponse } from '
|
|
1
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series';
|
|
2
|
+
import type { BlockApiClient } from '../../../api';
|
|
3
|
+
import type { WholeSeriesEligibilityResponse } from '../../../api/types';
|
|
4
4
|
import type { PortalAuthState } from './types';
|
|
5
5
|
export type PaymentChoice = 'checkout' | 'membership';
|
|
6
|
-
export declare function
|
|
6
|
+
export declare function useWholeSeriesEligibility(input: Readonly<{
|
|
7
7
|
api: BlockApiClient;
|
|
8
|
-
|
|
8
|
+
selectedRun: PublicWholeSeriesOffering | null;
|
|
9
9
|
hasPaidSelection: boolean;
|
|
10
10
|
portalAuthState: PortalAuthState;
|
|
11
11
|
waitlistClaimToken: string | null;
|
|
12
12
|
}>): {
|
|
13
13
|
eligibilityLoading: boolean;
|
|
14
14
|
eligibilityError: string | null;
|
|
15
|
-
|
|
15
|
+
runEligibility: WholeSeriesEligibilityResponse | null;
|
|
16
16
|
eligibleMemberships: Readonly<{
|
|
17
17
|
customerMembershipId: string;
|
|
18
18
|
membershipName: string;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { BlockApiClient } from '../../../api';
|
|
2
|
+
import type { EnrollmentResult, EnrollmentStep } from './types';
|
|
3
|
+
import type { WholeSeriesRegistrationLocation } from './useWholeSeriesRegistrationSelection';
|
|
4
|
+
type VerificationSetters = Readonly<{
|
|
5
|
+
setStep: (step: EnrollmentStep) => void;
|
|
6
|
+
setErrorMessage: (message: string) => void;
|
|
7
|
+
setEnrollmentResult: (result: EnrollmentResult) => void;
|
|
8
|
+
}>;
|
|
9
|
+
export declare function useWholeSeriesPaymentVerification(api: BlockApiClient, setters: VerificationSetters, anchorId?: string, location?: WholeSeriesRegistrationLocation): void;
|
|
10
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { PublicWholeSeriesOffering, ResolvedWholeSeriesPricingState } from '../../../../blocks/events/whole-series';
|
|
2
|
+
import type { BlockApiClient } from '../../../api';
|
|
3
|
+
import type { WholeSeriesEligibilityResponse } from '../../../api/types';
|
|
4
|
+
import type { WholeSeriesRegistrationWizardActionResult, WholeSeriesRegistrationWizardOptions, EnrollmentResult, EnrollmentStep, FormData, PortalAuthState } from './types';
|
|
5
|
+
import type { PaymentChoice } from './useWholeSeriesEligibility';
|
|
6
|
+
type Membership = Readonly<{
|
|
7
|
+
customerMembershipId: string;
|
|
8
|
+
membershipName: string;
|
|
9
|
+
}>;
|
|
10
|
+
type ActionState = Readonly<{
|
|
11
|
+
api: BlockApiClient;
|
|
12
|
+
selectedRun: PublicWholeSeriesOffering | null;
|
|
13
|
+
pricing: ResolvedWholeSeriesPricingState | null;
|
|
14
|
+
formData: FormData;
|
|
15
|
+
portalAuthState: PortalAuthState;
|
|
16
|
+
eligibility: WholeSeriesEligibilityResponse | null;
|
|
17
|
+
eligibleMemberships: readonly Membership[];
|
|
18
|
+
paymentChoice: PaymentChoice;
|
|
19
|
+
selectedMembershipId: string | null;
|
|
20
|
+
claimToken: string | null;
|
|
21
|
+
hasClaim: boolean;
|
|
22
|
+
altchaSolution: string | null;
|
|
23
|
+
discountCode: string;
|
|
24
|
+
options: WholeSeriesRegistrationWizardOptions;
|
|
25
|
+
}>;
|
|
26
|
+
export declare function useWholeSeriesRegistrationActions(state: ActionState, setStep: (step: EnrollmentStep) => void): {
|
|
27
|
+
errors: Partial<Record<keyof FormData, string>>;
|
|
28
|
+
enrollmentResult: EnrollmentResult | null;
|
|
29
|
+
errorMessage: string;
|
|
30
|
+
reportError: (message: string) => void;
|
|
31
|
+
recordEnrollmentResult: (result: EnrollmentResult) => void;
|
|
32
|
+
handleSubmit: () => Promise<WholeSeriesRegistrationWizardActionResult>;
|
|
33
|
+
handlePaymentContinue: () => Promise<WholeSeriesRegistrationWizardActionResult>;
|
|
34
|
+
};
|
|
35
|
+
export {};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { BlockApiClient } from '
|
|
1
|
+
import type { BlockApiClient } from '../../../api';
|
|
2
2
|
import type { FormData, PortalAuthState } from './types';
|
|
3
|
-
export declare function
|
|
3
|
+
export declare function useWholeSeriesRegistrationPortal(api: BlockApiClient): {
|
|
4
4
|
formData: FormData;
|
|
5
5
|
updateFormData: (updater: FormData | ((current: FormData) => FormData)) => void;
|
|
6
6
|
portalAuthState: PortalAuthState;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series';
|
|
2
|
+
import type { WholeSeriesRegistrationClientProps, EnrollmentStep } from './types';
|
|
3
|
+
export type WholeSeriesRegistrationLocation = Readonly<{
|
|
4
|
+
search: string;
|
|
5
|
+
hash: string;
|
|
6
|
+
}>;
|
|
7
|
+
export declare function getWholeSeriesCheckoutSessionId(location?: WholeSeriesRegistrationLocation): string | null;
|
|
8
|
+
export declare function useWholeSeriesRegistrationSelection(props: WholeSeriesRegistrationClientProps, location?: WholeSeriesRegistrationLocation): {
|
|
9
|
+
scopedRuns: readonly PublicWholeSeriesOffering[];
|
|
10
|
+
step: EnrollmentStep;
|
|
11
|
+
goToStep: (nextStep: EnrollmentStep) => void;
|
|
12
|
+
selectedRun: PublicWholeSeriesOffering | null;
|
|
13
|
+
chooseRun: (run: PublicWholeSeriesOffering) => void;
|
|
14
|
+
selectedPricingOptionId: string | null;
|
|
15
|
+
choosePricingOption: (pricingOptionId: string | null) => void;
|
|
16
|
+
selectedSlidingAmountInput: string;
|
|
17
|
+
changeSlidingAmount: (amount: string) => void;
|
|
18
|
+
selectedRunPricing: Readonly<{
|
|
19
|
+
currency: string;
|
|
20
|
+
display: import("../../../../blocks/events/whole-series").WholeSeriesPriceDisplay;
|
|
21
|
+
selectableOptions: readonly import("../../../../blocks/events/whole-series").WholeSeriesPricingOption[];
|
|
22
|
+
requiresSelection: boolean;
|
|
23
|
+
selectedOption: import("../../../../blocks/events/whole-series").WholeSeriesPricingOption | null;
|
|
24
|
+
slidingScale: Readonly<{
|
|
25
|
+
minAmount: number;
|
|
26
|
+
maxAmount: number;
|
|
27
|
+
suggestedAmount: number | null;
|
|
28
|
+
}> | null;
|
|
29
|
+
selectedSlidingAmount: number | null;
|
|
30
|
+
selectedPriceAmount: number | null;
|
|
31
|
+
selectedRequiresPayment: boolean;
|
|
32
|
+
hasPaidSelection: boolean;
|
|
33
|
+
hasFreeSelection: boolean;
|
|
34
|
+
}> | null;
|
|
35
|
+
};
|
|
@@ -0,0 +1,185 @@
|
|
|
1
|
+
import { useBlockApi } from '../../../api';
|
|
2
|
+
import type { UseWaitlistClaimResult } from '../../../shared/useWaitlistClaim';
|
|
3
|
+
import { useDiscountCodeUi } from '../useDiscountCodeUi';
|
|
4
|
+
import type { BookingMode, WholeSeriesRegistrationClientProps, WholeSeriesRegistrationWizardOptions } from './types';
|
|
5
|
+
import { deriveWholeSeriesRegistrationViewState } from './wholeSeriesRegistrationViewState';
|
|
6
|
+
import { useWholeSeriesEligibility } from './useWholeSeriesEligibility';
|
|
7
|
+
import { useWholeSeriesRegistrationActions } from './useWholeSeriesRegistrationActions';
|
|
8
|
+
import { useWholeSeriesRegistrationPortal } from './useWholeSeriesRegistrationPortal';
|
|
9
|
+
import { useWholeSeriesRegistrationSelection } from './useWholeSeriesRegistrationSelection';
|
|
10
|
+
import type { WholeSeriesRegistrationLocation } from './useWholeSeriesRegistrationSelection';
|
|
11
|
+
export declare function useWholeSeriesRegistrationWizard(props: WholeSeriesRegistrationClientProps, options?: WholeSeriesRegistrationWizardOptions): {
|
|
12
|
+
handleRunSelect: (run: NonNullable<WizardParts["selection"]["selectedRun"]>) => void;
|
|
13
|
+
handleRetry: () => void;
|
|
14
|
+
handleBookingModeChange: (mode: BookingMode) => void;
|
|
15
|
+
handleLogout: (() => void) | undefined;
|
|
16
|
+
selectedRunPricingPayload: {
|
|
17
|
+
pricingOptionId?: string;
|
|
18
|
+
selectedSlidingAmount?: number;
|
|
19
|
+
};
|
|
20
|
+
hasRunPayment: boolean;
|
|
21
|
+
canUseMembership: boolean;
|
|
22
|
+
hasPreSelectedRun: boolean;
|
|
23
|
+
wizardSteps: readonly import("./types").EnrollmentStep[];
|
|
24
|
+
currentStepNumber: number;
|
|
25
|
+
totalSteps: number;
|
|
26
|
+
stepLabels: string[];
|
|
27
|
+
showPortalAuthSidebar: boolean;
|
|
28
|
+
waitlistClaim: UseWaitlistClaimResult;
|
|
29
|
+
bookingMode: BookingMode;
|
|
30
|
+
altchaSolution: string | null;
|
|
31
|
+
setAltchaSolution: (solution: string | null) => void;
|
|
32
|
+
showSpamProtection: boolean;
|
|
33
|
+
discountUiOpen: boolean;
|
|
34
|
+
setDiscountUiOpen: (isOpen: boolean) => void;
|
|
35
|
+
discountCode: string;
|
|
36
|
+
setDiscountCode: (code: string) => void;
|
|
37
|
+
discountsAvailable: boolean;
|
|
38
|
+
manualCodeEntryAllowed: boolean;
|
|
39
|
+
discountsAvailableLoading: boolean;
|
|
40
|
+
errors: Partial<Record<keyof import("./types").FormData, string>>;
|
|
41
|
+
enrollmentResult: import("./types").EnrollmentResult | null;
|
|
42
|
+
errorMessage: string;
|
|
43
|
+
reportError: (message: string) => void;
|
|
44
|
+
recordEnrollmentResult: (result: import("./types").EnrollmentResult) => void;
|
|
45
|
+
handleSubmit: () => Promise<import("./types").WholeSeriesRegistrationWizardActionResult>;
|
|
46
|
+
handlePaymentContinue: () => Promise<import("./types").WholeSeriesRegistrationWizardActionResult>;
|
|
47
|
+
eligibilityLoading: boolean;
|
|
48
|
+
eligibilityError: string | null;
|
|
49
|
+
runEligibility: import("../../../api/types").WholeSeriesEligibilityResponse | null;
|
|
50
|
+
eligibleMemberships: Readonly<{
|
|
51
|
+
customerMembershipId: string;
|
|
52
|
+
membershipName: string;
|
|
53
|
+
}>[];
|
|
54
|
+
paymentChoice: import("./useWholeSeriesEligibility").PaymentChoice;
|
|
55
|
+
choosePaymentChoice: (choice: import("./useWholeSeriesEligibility").PaymentChoice) => void;
|
|
56
|
+
selectedMembershipId: string | null;
|
|
57
|
+
chooseMembership: (membershipId: string | null) => void;
|
|
58
|
+
formData: import("./types").FormData;
|
|
59
|
+
updateFormData: (updater: import("./types").FormData | ((current: import("./types").FormData) => import("./types").FormData)) => void;
|
|
60
|
+
portalAuthState: import("./types").PortalAuthState;
|
|
61
|
+
scopedRuns: readonly import("../../../..").PublicCourse[];
|
|
62
|
+
step: import("./types").EnrollmentStep;
|
|
63
|
+
goToStep: (nextStep: import("./types").EnrollmentStep) => void;
|
|
64
|
+
selectedRun: import("../../../..").PublicCourse | null;
|
|
65
|
+
chooseRun: (run: import("../../../..").PublicCourse) => void;
|
|
66
|
+
selectedPricingOptionId: string | null;
|
|
67
|
+
choosePricingOption: (pricingOptionId: string | null) => void;
|
|
68
|
+
selectedSlidingAmountInput: string;
|
|
69
|
+
changeSlidingAmount: (amount: string) => void;
|
|
70
|
+
selectedRunPricing: Readonly<{
|
|
71
|
+
currency: string;
|
|
72
|
+
display: import("../../../../blocks/events/whole-series").WholeSeriesPriceDisplay;
|
|
73
|
+
selectableOptions: readonly import("../../../../blocks/events/whole-series").WholeSeriesPricingOption[];
|
|
74
|
+
requiresSelection: boolean;
|
|
75
|
+
selectedOption: import("../../../../blocks/events/whole-series").WholeSeriesPricingOption | null;
|
|
76
|
+
slidingScale: Readonly<{
|
|
77
|
+
minAmount: number;
|
|
78
|
+
maxAmount: number;
|
|
79
|
+
suggestedAmount: number | null;
|
|
80
|
+
}> | null;
|
|
81
|
+
selectedSlidingAmount: number | null;
|
|
82
|
+
selectedPriceAmount: number | null;
|
|
83
|
+
selectedRequiresPayment: boolean;
|
|
84
|
+
hasPaidSelection: boolean;
|
|
85
|
+
hasFreeSelection: boolean;
|
|
86
|
+
}> | null;
|
|
87
|
+
api: import("../../../api").BlockApiClient;
|
|
88
|
+
};
|
|
89
|
+
export type WholeSeriesRegistrationWizardDeps = Readonly<{
|
|
90
|
+
readLocation: () => WholeSeriesRegistrationLocation;
|
|
91
|
+
}>;
|
|
92
|
+
export declare function useWholeSeriesRegistrationWizardWithDeps(deps: WholeSeriesRegistrationWizardDeps, props: WholeSeriesRegistrationClientProps, options?: WholeSeriesRegistrationWizardOptions): {
|
|
93
|
+
handleRunSelect: (run: NonNullable<WizardParts["selection"]["selectedRun"]>) => void;
|
|
94
|
+
handleRetry: () => void;
|
|
95
|
+
handleBookingModeChange: (mode: BookingMode) => void;
|
|
96
|
+
handleLogout: (() => void) | undefined;
|
|
97
|
+
selectedRunPricingPayload: {
|
|
98
|
+
pricingOptionId?: string;
|
|
99
|
+
selectedSlidingAmount?: number;
|
|
100
|
+
};
|
|
101
|
+
hasRunPayment: boolean;
|
|
102
|
+
canUseMembership: boolean;
|
|
103
|
+
hasPreSelectedRun: boolean;
|
|
104
|
+
wizardSteps: readonly import("./types").EnrollmentStep[];
|
|
105
|
+
currentStepNumber: number;
|
|
106
|
+
totalSteps: number;
|
|
107
|
+
stepLabels: string[];
|
|
108
|
+
showPortalAuthSidebar: boolean;
|
|
109
|
+
waitlistClaim: UseWaitlistClaimResult;
|
|
110
|
+
bookingMode: BookingMode;
|
|
111
|
+
altchaSolution: string | null;
|
|
112
|
+
setAltchaSolution: (solution: string | null) => void;
|
|
113
|
+
showSpamProtection: boolean;
|
|
114
|
+
discountUiOpen: boolean;
|
|
115
|
+
setDiscountUiOpen: (isOpen: boolean) => void;
|
|
116
|
+
discountCode: string;
|
|
117
|
+
setDiscountCode: (code: string) => void;
|
|
118
|
+
discountsAvailable: boolean;
|
|
119
|
+
manualCodeEntryAllowed: boolean;
|
|
120
|
+
discountsAvailableLoading: boolean;
|
|
121
|
+
errors: Partial<Record<keyof import("./types").FormData, string>>;
|
|
122
|
+
enrollmentResult: import("./types").EnrollmentResult | null;
|
|
123
|
+
errorMessage: string;
|
|
124
|
+
reportError: (message: string) => void;
|
|
125
|
+
recordEnrollmentResult: (result: import("./types").EnrollmentResult) => void;
|
|
126
|
+
handleSubmit: () => Promise<import("./types").WholeSeriesRegistrationWizardActionResult>;
|
|
127
|
+
handlePaymentContinue: () => Promise<import("./types").WholeSeriesRegistrationWizardActionResult>;
|
|
128
|
+
eligibilityLoading: boolean;
|
|
129
|
+
eligibilityError: string | null;
|
|
130
|
+
runEligibility: import("../../../api/types").WholeSeriesEligibilityResponse | null;
|
|
131
|
+
eligibleMemberships: Readonly<{
|
|
132
|
+
customerMembershipId: string;
|
|
133
|
+
membershipName: string;
|
|
134
|
+
}>[];
|
|
135
|
+
paymentChoice: import("./useWholeSeriesEligibility").PaymentChoice;
|
|
136
|
+
choosePaymentChoice: (choice: import("./useWholeSeriesEligibility").PaymentChoice) => void;
|
|
137
|
+
selectedMembershipId: string | null;
|
|
138
|
+
chooseMembership: (membershipId: string | null) => void;
|
|
139
|
+
formData: import("./types").FormData;
|
|
140
|
+
updateFormData: (updater: import("./types").FormData | ((current: import("./types").FormData) => import("./types").FormData)) => void;
|
|
141
|
+
portalAuthState: import("./types").PortalAuthState;
|
|
142
|
+
scopedRuns: readonly import("../../../..").PublicCourse[];
|
|
143
|
+
step: import("./types").EnrollmentStep;
|
|
144
|
+
goToStep: (nextStep: import("./types").EnrollmentStep) => void;
|
|
145
|
+
selectedRun: import("../../../..").PublicCourse | null;
|
|
146
|
+
chooseRun: (run: import("../../../..").PublicCourse) => void;
|
|
147
|
+
selectedPricingOptionId: string | null;
|
|
148
|
+
choosePricingOption: (pricingOptionId: string | null) => void;
|
|
149
|
+
selectedSlidingAmountInput: string;
|
|
150
|
+
changeSlidingAmount: (amount: string) => void;
|
|
151
|
+
selectedRunPricing: Readonly<{
|
|
152
|
+
currency: string;
|
|
153
|
+
display: import("../../../../blocks/events/whole-series").WholeSeriesPriceDisplay;
|
|
154
|
+
selectableOptions: readonly import("../../../../blocks/events/whole-series").WholeSeriesPricingOption[];
|
|
155
|
+
requiresSelection: boolean;
|
|
156
|
+
selectedOption: import("../../../../blocks/events/whole-series").WholeSeriesPricingOption | null;
|
|
157
|
+
slidingScale: Readonly<{
|
|
158
|
+
minAmount: number;
|
|
159
|
+
maxAmount: number;
|
|
160
|
+
suggestedAmount: number | null;
|
|
161
|
+
}> | null;
|
|
162
|
+
selectedSlidingAmount: number | null;
|
|
163
|
+
selectedPriceAmount: number | null;
|
|
164
|
+
selectedRequiresPayment: boolean;
|
|
165
|
+
hasPaidSelection: boolean;
|
|
166
|
+
hasFreeSelection: boolean;
|
|
167
|
+
}> | null;
|
|
168
|
+
api: import("../../../api").BlockApiClient;
|
|
169
|
+
};
|
|
170
|
+
type WizardParts = Readonly<{
|
|
171
|
+
api: ReturnType<typeof useBlockApi>;
|
|
172
|
+
selection: ReturnType<typeof useWholeSeriesRegistrationSelection>;
|
|
173
|
+
portal: ReturnType<typeof useWholeSeriesRegistrationPortal>;
|
|
174
|
+
eligibility: ReturnType<typeof useWholeSeriesEligibility>;
|
|
175
|
+
actions: ReturnType<typeof useWholeSeriesRegistrationActions>;
|
|
176
|
+
discountUi: ReturnType<typeof useDiscountCodeUi>;
|
|
177
|
+
waitlistClaim: UseWaitlistClaimResult;
|
|
178
|
+
view: ReturnType<typeof deriveWholeSeriesRegistrationViewState>;
|
|
179
|
+
bookingMode: BookingMode;
|
|
180
|
+
setBookingMode: (mode: BookingMode) => void;
|
|
181
|
+
altchaSolution: string | null;
|
|
182
|
+
setAltchaSolution: (solution: string | null) => void;
|
|
183
|
+
anchorId: 'event-registration' | 'course-registration';
|
|
184
|
+
}>;
|
|
185
|
+
export {};
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series';
|
|
2
2
|
import type { EnrollmentStep, FormData } from './types';
|
|
3
|
-
import type { useWaitlistClaim } from '
|
|
3
|
+
import type { useWaitlistClaim } from '../../../shared/useWaitlistClaim';
|
|
4
4
|
type WaitlistClaimState = ReturnType<typeof useWaitlistClaim>;
|
|
5
|
-
export declare function
|
|
5
|
+
export declare function useWholeSeriesWaitlistSelection(input: Readonly<{
|
|
6
6
|
waitlistClaim: WaitlistClaimState;
|
|
7
|
-
|
|
7
|
+
scopedRuns: readonly PublicWholeSeriesOffering[];
|
|
8
8
|
step: EnrollmentStep;
|
|
9
9
|
goToStep: (step: EnrollmentStep) => void;
|
|
10
|
-
|
|
10
|
+
chooseRun: (run: PublicWholeSeriesOffering) => void;
|
|
11
11
|
updateFormData: (updater: (current: FormData) => FormData) => void;
|
|
12
12
|
reportError: (message: string) => void;
|
|
13
13
|
}>): void;
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Run Registration Utilities
|
|
3
3
|
*
|
|
4
|
-
* Formatting and validation helpers for
|
|
4
|
+
* Formatting and validation helpers for run registration.
|
|
5
5
|
*/
|
|
6
|
-
export { buildCheckoutReturnUrls, formatPrice, validateFormData } from '
|
|
6
|
+
export { buildCheckoutReturnUrls, formatPrice, validateFormData, } from '../../../shared';
|
|
7
7
|
/**
|
|
8
8
|
* Format a date string to a localized date.
|
|
9
9
|
*
|
|
@@ -40,4 +40,4 @@ export declare function formatDateTime(dateString: string, options?: {
|
|
|
40
40
|
/**
|
|
41
41
|
* Anchor ID for the registration block, used for scroll targeting.
|
|
42
42
|
*/
|
|
43
|
-
export declare const
|
|
43
|
+
export declare const WHOLE_SERIES_REGISTRATION_ANCHOR_ID = "event-registration";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { BlockBookingPaymentTerms } from '
|
|
2
|
-
import type { PublicTeamMemberSummary } from '
|
|
3
|
-
import type {
|
|
1
|
+
import type { BlockBookingPaymentTerms } from '../../../../blocks/shared/bookingPaymentTerms';
|
|
2
|
+
import type { PublicTeamMemberSummary } from '../../../../blocks/shared/teamMembers';
|
|
3
|
+
import type { WholeSeriesRegistrationClientProps, EnrollmentResult, FormData } from './types';
|
|
4
4
|
export type WholeSeriesRegistrationPricingOptionInput = Readonly<{
|
|
5
5
|
id: string;
|
|
6
6
|
name: string;
|
|
@@ -33,9 +33,7 @@ export type WholeSeriesRegistrationPricingInput = (WholeSeriesRegistrationPricin
|
|
|
33
33
|
suggestedAmountCents: number | null;
|
|
34
34
|
}>);
|
|
35
35
|
export type WholeSeriesRegistrationRunInput = Readonly<{
|
|
36
|
-
/**
|
|
37
|
-
runId: string;
|
|
38
|
-
/** Offering identity owning this run in the public course experience. */
|
|
36
|
+
/** Offering identity owning this run in the public run experience. */
|
|
39
37
|
eventOfferingId: string;
|
|
40
38
|
registrationTarget: Readonly<{
|
|
41
39
|
kind: 'event_series_whole_series';
|
|
@@ -158,7 +156,7 @@ export type WholeSeriesRegistrationRunsModel = Readonly<{
|
|
|
158
156
|
scoped: readonly WholeSeriesRegistrationRun[];
|
|
159
157
|
selected: WholeSeriesRegistrationRun | null;
|
|
160
158
|
hasPreSelectedRun: boolean;
|
|
161
|
-
subject:
|
|
159
|
+
subject: WholeSeriesRegistrationClientProps['subject'];
|
|
162
160
|
}>;
|
|
163
161
|
export type WholeSeriesRegistrationPricingModel = Readonly<{
|
|
164
162
|
currency: string | null;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ResolvedWholeSeriesPricingState } from '../../../../blocks/events/whole-series';
|
|
2
2
|
import type { EnrollmentStep } from './types';
|
|
3
3
|
import type { HeadlessWholeSeriesRegistrationFlow, WholeSeriesRegistrationFlowStatus, WholeSeriesRegistrationFlowStep, WholeSeriesRegistrationFlowView, WholeSeriesRegistrationPaymentSelection, WholeSeriesRegistrationPricingModel } from './whole-series-registration.headless.contract';
|
|
4
4
|
export declare function deriveWholeSeriesRegistrationSteps(input: Readonly<{
|
|
@@ -19,7 +19,7 @@ export declare function resolveWholeSeriesRegistrationView(wizard: Readonly<{
|
|
|
19
19
|
enrollmentResult: HeadlessWholeSeriesRegistrationFlow['terminal']['result'];
|
|
20
20
|
errorMessage: string;
|
|
21
21
|
}>): WholeSeriesRegistrationFlowView;
|
|
22
|
-
export declare function resolveWholeSeriesPricingSelection(pricing:
|
|
22
|
+
export declare function resolveWholeSeriesPricingSelection(pricing: ResolvedWholeSeriesPricingState | null): WholeSeriesRegistrationPricingModel['selection'];
|
|
23
23
|
export declare function resolveWholeSeriesPaymentSelection(input: Readonly<{
|
|
24
24
|
paymentChoice: 'checkout' | 'membership';
|
|
25
25
|
selectedMembershipId: string | null;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type EventPageSurfaceSubject, type EventPageSurfaceSubjectParseError } from '../../../../../../../core/src/index';
|
|
2
|
+
import type { PublicWholeSeriesOffering } from '../../../../blocks/events/whole-series/types';
|
|
3
|
+
export type WholeSeriesPageSurfaceScope = Readonly<{
|
|
4
|
+
kind: 'absent';
|
|
5
|
+
}> | Readonly<{
|
|
6
|
+
kind: 'scoped';
|
|
7
|
+
subject: EventPageSurfaceSubject;
|
|
8
|
+
runs: readonly PublicWholeSeriesOffering[];
|
|
9
|
+
}> | Readonly<{
|
|
10
|
+
kind: 'unsupported';
|
|
11
|
+
reason: EventPageSurfaceSubjectParseError['kind'];
|
|
12
|
+
}>;
|
|
13
|
+
/**
|
|
14
|
+
* Resolves native run-page ownership without falling back to entry or slug
|
|
15
|
+
* coincidence when a page-surface subject is present but invalid.
|
|
16
|
+
*/
|
|
17
|
+
export declare function resolveWholeSeriesPageSurfaceScope(runs: readonly PublicWholeSeriesOffering[], subjectValue: unknown): WholeSeriesPageSurfaceScope;
|
|
@@ -1,18 +1,18 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PublicWholeSeriesOffering, ResolvedWholeSeriesPricingState } from '../../../../blocks/events/whole-series';
|
|
2
2
|
import type { BookingMode, EnrollmentStep, PortalAuthState } from './types';
|
|
3
|
-
export declare function
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
pricing:
|
|
3
|
+
export declare function deriveWholeSeriesRegistrationViewState(input: Readonly<{
|
|
4
|
+
scopedRuns: readonly PublicWholeSeriesOffering[];
|
|
5
|
+
selectedRun: PublicWholeSeriesOffering | null;
|
|
6
|
+
pricing: ResolvedWholeSeriesPricingState | null;
|
|
7
7
|
portalAuthState: PortalAuthState;
|
|
8
8
|
eligibleMembershipCount: number;
|
|
9
9
|
bookingMode: BookingMode;
|
|
10
10
|
step: EnrollmentStep;
|
|
11
11
|
waitlistRequiresPortalLogin: boolean;
|
|
12
12
|
}>): {
|
|
13
|
-
|
|
13
|
+
hasRunPayment: boolean;
|
|
14
14
|
canUseMembership: boolean;
|
|
15
|
-
|
|
15
|
+
hasPreSelectedRun: boolean;
|
|
16
16
|
wizardSteps: readonly EnrollmentStep[];
|
|
17
17
|
currentStepNumber: number;
|
|
18
18
|
totalSteps: number;
|