@riverbankcms/sdk 0.136.0 → 0.138.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 +109 -0
- package/README.md +7 -4
- package/dist/{PreviewEditorSidebar-BU5ZlhQR.mjs → PreviewEditorSidebar-BVPur_CU.mjs} +12 -18
- package/dist/{PreviewEditorUI-9XkHL-bC.mjs → PreviewEditorUI-DLhWX8oh.mjs} +3 -3
- package/dist/{PreviewQueryProvider-wbEpXryy.mjs → PreviewQueryProvider-BguJY1SW.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-CnWmj-2B.mjs → SdkPreviewModeRuntime-Tda6qw4z.mjs} +1375 -495
- package/dist/{SiteChromeCustomizeContext-B6d5zkog.mjs → SiteChromeCustomizeContext-BHFgMjde.mjs} +35665 -33602
- package/dist/_dts/ai/src/contracts/proposals.d.ts +7226 -3057
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +1223 -811
- package/dist/_dts/ai/src/designer/themePatch.d.ts +5 -10
- package/dist/_dts/api/src/accessAdmin.d.ts +16 -18
- package/dist/_dts/api/src/accountApi.d.ts +49 -2
- package/dist/_dts/api/src/appointmentServiceContracts.d.ts +83 -0
- package/dist/_dts/api/src/appointmentServiceLocation.d.ts +12 -0
- package/dist/_dts/api/src/appointmentServiceVisibility.d.ts +14 -0
- package/dist/_dts/api/src/appointmentSetup.d.ts +8 -0
- package/dist/_dts/api/src/bookingConfig.d.ts +35 -87
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +1 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +2 -69
- package/dist/_dts/api/src/bookingRecords.d.ts +2 -2
- package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +2 -2
- package/dist/_dts/api/src/bookingServicePricing.d.ts +47 -0
- package/dist/_dts/api/src/bookings.d.ts +2 -2
- package/dist/_dts/api/src/cache-tags.d.ts +7 -2
- package/dist/_dts/api/src/common/index.d.ts +1 -0
- package/dist/_dts/api/src/common/zodFieldErrors.d.ts +34 -0
- package/dist/_dts/api/src/communications.d.ts +14 -8
- package/dist/_dts/api/src/contentRuntime.d.ts +3 -6
- package/dist/_dts/api/src/domainConnection.d.ts +41 -0
- package/dist/_dts/api/src/endpoints.d.ts +1636 -1637
- package/dist/_dts/api/src/eventAttendanceLabels.d.ts +2 -2
- package/dist/_dts/api/src/eventManagementContracts.d.ts +10 -14
- package/dist/_dts/api/src/index.d.ts +11 -9
- 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 +19 -2
- package/dist/_dts/api/src/occurrenceScheduling.d.ts +1 -1
- package/dist/_dts/api/src/participantMessaging.d.ts +3 -3
- package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
- package/dist/_dts/api/src/publicBookingAvailabilityEndpointDefinitions.d.ts +62 -0
- package/dist/_dts/api/src/publicBookingService.d.ts +109 -2
- package/dist/_dts/api/src/publicEventCheckoutEndpointDefinitions.d.ts +27 -0
- package/dist/_dts/api/src/publicEventEndpointDefinitions.d.ts +7 -0
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +2 -1
- package/dist/_dts/api/src/publicExperience/eventEndpoints.d.ts +30 -148
- package/dist/_dts/api/src/publicExperience/sharedTypes.d.ts +8 -26
- package/dist/_dts/api/src/publicExperience/siteEndpoints.d.ts +5 -13
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +2 -3
- package/dist/_dts/api/src/schemas/admin-allowed-domains.d.ts +76 -0
- package/dist/_dts/api/src/schemas/admin-observability-logs.d.ts +61 -0
- package/dist/_dts/api/src/schemas/admin-users.d.ts +80 -0
- package/dist/_dts/api/src/schemas/newsletter-memberships.d.ts +98 -0
- package/dist/_dts/api/src/schemas/sdk-entries.d.ts +128 -0
- package/dist/_dts/api/src/schemas/site-api-keys.d.ts +112 -0
- package/dist/_dts/api/src/schemas/support.d.ts +35 -0
- package/dist/_dts/api/src/sdk-event-booking-offer.d.ts +14 -0
- package/dist/_dts/api/src/sdk-event-payment-terms.d.ts +4 -16
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +11 -21
- package/dist/_dts/api/src/sdkContracts.d.ts +8 -23
- package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +37 -0
- package/dist/_dts/api/src/sdkMediaContracts.d.ts +40 -0
- package/dist/_dts/api/src/sdkMediaEndpointDefinitions.d.ts +66 -0
- package/dist/_dts/api/src/sdkThemeWire.d.ts +157 -146
- package/dist/_dts/api/src/siteInfrastructure.d.ts +37 -37
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +35 -54
- package/dist/_dts/api/src/siteOnboarding.d.ts +3 -3
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +38 -16
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +37 -17
- package/dist/_dts/api/src/types.d.ts +2 -2
- package/dist/_dts/api/src/{wholeSeriesOfferings.d.ts → wholeSeriesRuns.d.ts} +11 -67
- package/dist/_dts/block-form/src/FormRenderer.d.ts +3 -1
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +2 -1
- package/dist/_dts/block-form/src/backend/types.d.ts +2 -0
- package/dist/_dts/block-form/src/context/FormFocusContext.d.ts +7 -0
- package/dist/_dts/block-form/src/index.d.ts +2 -0
- package/dist/_dts/block-form/src/manifest/ManifestForm.d.ts +2 -1
- package/dist/_dts/block-form/src/utils/promotedFieldBackend.d.ts +8 -0
- package/dist/_dts/block-form/src/utils/promotedFieldPlan.d.ts +18 -0
- package/dist/_dts/block-form/src/utils/resolvePromotedFields.d.ts +8 -1
- package/dist/_dts/blocks/src/BlockErrorBoundary.d.ts +46 -0
- package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -141
- package/dist/_dts/blocks/src/contracts/index.d.ts +2 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +12 -6
- package/dist/_dts/blocks/src/index.d.ts +1 -0
- package/dist/_dts/blocks/src/pageRenderAudience.d.ts +54 -0
- package/dist/_dts/blocks/src/pageRenderDiagnostics.d.ts +26 -0
- package/dist/_dts/blocks/src/pageRenderPlan.d.ts +116 -0
- package/dist/_dts/blocks/src/pageRenderPreparation.d.ts +109 -0
- package/dist/_dts/blocks/src/pageRendererBoundaries.d.ts +1 -0
- package/dist/_dts/blocks/src/pageRendererContracts.d.ts +154 -0
- package/dist/_dts/blocks/src/portal/types.d.ts +1 -1
- package/dist/_dts/blocks/src/server.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +12 -20
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/events/eventCalendarDataLoaders.d.ts +3 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/calendarWindow.d.ts +95 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/runGrouping.d.ts +37 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +1046 -773
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +59 -46
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -3
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +161 -161
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +13 -6
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +10 -4
- package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +2 -2
- package/dist/_dts/blocks/src/system/constants/events.d.ts +4 -0
- package/dist/_dts/blocks/src/system/customize/facets.d.ts +4 -4
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/publicLoaderCachePolicy.d.ts +5 -9
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +83 -83
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +12 -3
- package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -8
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/types/core.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/events.d.ts +12 -20
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +32 -37
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +15 -18
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +11 -8
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +38 -22
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/WholeSeriesPricingDisplay.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +16 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/ErrorStep.d.ts +3 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizardActions.d.ts +4 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/PaymentSelectionStep.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +5 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.planning.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationCompletion.d.ts +15 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationDerivations.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationErrorPresentation.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationErrorRecovery.d.ts +25 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationEventAdapter.d.ts +14 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationSurface.d.ts +3 -21
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/registrationWizardContext.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/siteCreditPreview.d.ts +0 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/ticketSelectionLines.d.ts +14 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +13 -15
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +9 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +25 -23
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useWaitlistClaimRestoration.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/utils.d.ts +11 -4
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +8 -13
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +11 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/capacity.d.ts +164 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/cta.d.ts +29 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +47 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/index.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/people.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/pricing.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/OfferingTitle.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +1080 -560
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventProductEligibility.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/index.d.ts +3 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listingLayout.d.ts +23 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +7 -7
- package/dist/_dts/blocks/src/system/transforms/registry/eventCalendar.d.ts +11 -0
- package/dist/_dts/commerce/src/moneyReport.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/checkoutErrorCodes.d.ts +1 -1
- package/dist/_dts/commerce/src/purchase/event-registration-errors.d.ts +57 -0
- package/dist/_dts/commerce/src/purchase/eventOrderOptionSnapshot.d.ts +3 -0
- package/dist/_dts/commerce/src/purchase/index.d.ts +1 -0
- package/dist/_dts/commerce/src/purchase/orderItemMetadata.d.ts +6 -3
- package/dist/_dts/commerce/src/purchase/types.d.ts +3 -2
- package/dist/_dts/commerce/src/waitlists.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +4 -0
- package/dist/_dts/content-editor/src/controller/useBlockedPublishPlan.d.ts +11 -0
- package/dist/_dts/content-editor/src/hooks/applyBlockedPublishPlan.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/blockedPublishPlan.d.ts +13 -5
- package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +5 -1
- package/dist/_dts/content-editor/src/hooks/validateBlocksForPublish.d.ts +34 -2
- package/dist/_dts/content-editor/src/index.d.ts +2 -1
- package/dist/_dts/content-editor/src/ui/blockValidationManifestRegistry.d.ts +2 -0
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +4 -2
- package/dist/_dts/content-editor/src/ui/stores/types.d.ts +27 -5
- package/dist/_dts/content-model/src/content-types/schema.d.ts +3 -3
- package/dist/_dts/content-model/src/templates/defaults.d.ts +11 -0
- package/dist/_dts/core/src/branded.d.ts +28 -9
- package/dist/_dts/core/src/event-booking-offer-parser.d.ts +82 -0
- package/dist/_dts/core/src/event-booking-offer.d.ts +89 -0
- package/dist/_dts/core/src/event-page-surface-subject.d.ts +81 -4
- package/dist/_dts/core/src/event-pricing.d.ts +81 -89
- package/dist/_dts/core/src/index.d.ts +3 -0
- package/dist/_dts/core/src/non-empty-array.d.ts +3 -0
- package/dist/_dts/core/src/whole-series-run-schedule.d.ts +92 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +495 -279
- package/dist/_dts/db/src/index.d.ts +1 -0
- package/dist/_dts/db/src/utils/postgrestFilter.d.ts +2 -0
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +2 -6
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +4 -2
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockValidationManifests.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +22 -7
- package/dist/_dts/editor-blocks/src/block-editor/useSettingsFieldFocus.d.ts +18 -0
- package/dist/_dts/media-core/src/bulkDeletePlanning.d.ts +4 -0
- package/dist/_dts/media-core/src/fileDomain.d.ts +3 -0
- package/dist/_dts/preview-next/src/client/blocks/previewBatchLoaderParams.d.ts +2 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +3 -2
- package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +2 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlSaveRequest.d.ts +51 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +24 -2
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +23 -1
- package/dist/_dts/preview-next/src/client/preview/usePersistedHeaderPreferences.d.ts +8 -0
- package/dist/_dts/sdk/src/client/{eventSubrouteReadOperations.d.ts → publicEventReadOperations.d.ts} +4 -3
- package/dist/_dts/sdk/src/client/types.d.ts +6 -10
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -3
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +5 -0
- package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +2 -3
- package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +8 -8
- package/dist/_dts/sdk/src/next/tags.d.ts +5 -8
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -26
- package/dist/_dts/sdk/src/rendering/helpers/footerPageOutline.d.ts +9 -1
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +6 -53
- package/dist/_dts/sdk/src/rendering/server.d.ts +1 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/accordions/types.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/styles/recipes/flatInk.d.ts +25 -25
- package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +25 -25
- package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +7 -7
- package/dist/_dts/theme-core/src/buttons/types.d.ts +22 -22
- package/dist/_dts/theme-core/src/cards/types.d.ts +49 -49
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/gradients/types.d.ts +5 -0
- package/dist/_dts/theme-core/src/header/interactionPalette.d.ts +26 -3
- package/dist/_dts/theme-core/src/inputs/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +195 -195
- package/dist/_dts/theme-core/src/navigation/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/palette/colors.d.ts +1 -1
- package/dist/_dts/theme-core/src/palette/curated/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/schema.d.ts +258 -257
- package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/cardRoleVocabulary.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +43 -3
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +10 -0
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +4 -4
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/headerBrandPresentation.d.ts +63 -0
- package/dist/_dts/theme-core/src/site-styles/headerBytesComparison.d.ts +30 -0
- package/dist/_dts/theme-core/src/site-styles/headerInteractionPalette.d.ts +50 -1
- package/dist/_dts/theme-core/src/site-styles/headerLayoutCatalog.d.ts +48 -9
- package/dist/_dts/theme-core/src/site-styles/headerPreferences.d.ts +162 -0
- package/dist/_dts/theme-core/src/site-styles/headerPreferencesPersistence.d.ts +73 -0
- package/dist/_dts/theme-core/src/site-styles/headerRecompile.d.ts +118 -0
- package/dist/_dts/theme-core/src/site-styles/headerStyleCompiler.d.ts +10 -1
- package/dist/_dts/theme-core/src/site-styles/headerStyleDefaults.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/headerStyleRecipe.d.ts +7 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +5 -0
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/siteChromeBackgrounds.d.ts +20 -1
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +43 -2
- package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
- package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +3 -3
- package/dist/_dts/ui/src/badge.d.ts +1 -1
- package/dist/_dts/ui/src/button.d.ts +2 -2
- package/dist/client/{BookingConsentAgreement-DCch21a6.mjs → BookingConsentAgreement-DQUik1Mx.mjs} +2 -2
- package/dist/client/{DiscountCodeDisclosure-DIj1T59K.mjs → DiscountCodeDisclosure-CU67Q4vH.mjs} +1 -1
- package/dist/client/{EventCombined.client-BWVNlXTx.mjs → EventCombined.client-a02TXUgg.mjs} +233 -348
- package/dist/client/{EventListing.client-DVFCDe3i.mjs → EventListing.client-99qx7jFl.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-BY5mIHw9.mjs → LeafletStaticMap-CWzcq73L.mjs} +1 -1
- package/dist/client/{accordion-CK29E8rG.mjs → accordion-D1nb3-Oj.mjs} +1 -1
- package/dist/client/{bookingForm-DFvnet-N.mjs → bookingForm-BGrmLhaO.mjs} +5 -5
- package/dist/client/bookings.mjs +10555 -10475
- package/dist/client/{carousel-BVU5NQlb.mjs → carousel-DSmOx3ad.mjs} +1 -1
- package/dist/client/{cart-BNItcZVa.mjs → cart-COWeOIUk.mjs} +3 -3
- package/dist/client/{checkout-Bu6iCdkP.mjs → checkout-CeysaIJK.mjs} +3 -3
- package/dist/client/client.mjs +58968 -57441
- package/dist/client/{context-BImarOAq.mjs → context-DBzX85Xc.mjs} +46 -18
- package/dist/client/dates-DCYhZBlW.mjs +264 -0
- package/dist/client/{eventCalendar-DS2h-UXD.mjs → eventCalendar-BgsN73Ul.mjs} +21 -44
- package/dist/client/{eventCombined-Drt4Oq9p.mjs → eventCombined-DcZQAMQP.mjs} +3 -3
- package/dist/client/{eventDetails-Bl2vWgTX.mjs → eventDetails-BWwGJ54l.mjs} +131 -51
- package/dist/client/{eventListing-CS7PHY7v.mjs → eventListing-DqYqV8vp.mjs} +3 -3
- package/dist/client/{eventRegistration-D-j8eNy2.mjs → eventRegistration-DQGDgu_e.mjs} +1122 -803
- package/dist/client/{form-RMpoLTyr.mjs → form-ClfpasVT.mjs} +2 -2
- package/dist/client/{headerSection-BYE3Lb3k.mjs → headerSection-BuOMe98N.mjs} +2 -2
- package/dist/client/hooks.mjs +9630 -9526
- package/dist/client/{locationMap-BxSr7Kkh.mjs → locationMap-CEqu_sfa.mjs} +2 -2
- package/dist/client/{newsletterForm-DerbXwFC.mjs → newsletterForm-IbrHjMxy.mjs} +2 -2
- package/dist/client/pricing-xj7MPZlK.mjs +314 -0
- package/dist/client/{productDetail-4SZCLhAf.mjs → productDetail-vxqTt5Xj.mjs} +3 -3
- package/dist/client/{productList-D7AP4GNq.mjs → productList-OTdZu8sb.mjs} +3 -3
- package/dist/client/{propsDecoder-pzBeCh14.mjs → propsDecoder-CY9gGEF7.mjs} +786 -1194
- package/dist/client/rendering/client.mjs +11481 -10469
- package/dist/client/rendering/islands.mjs +17 -17
- package/dist/client/rendering.mjs +26871 -25232
- package/dist/client/{scrollToBlock-CduAKf8T.mjs → scrollToBlock--BFV6kl-.mjs} +1 -1
- package/dist/client/{shop-Cp5p_kGe.mjs → shop-CP4YbDL9.mjs} +6 -6
- package/dist/client/{shop-commerce-DicXYaYX.mjs → shop-commerce-APs4XBXE.mjs} +5 -5
- package/dist/client/{shop-commerce-store-CGWnpY4K.mjs → shop-commerce-store-CAVLxLFr.mjs} +1 -1
- package/dist/client/{shopShared-BDf9ljkm.mjs → shopShared-BnSRrwXI.mjs} +3 -3
- package/dist/client/{useEventFilters-DeeyGYuk.mjs → useEventFilters-1a1by4c8.mjs} +33 -18
- package/dist/preview-next/before-render.mjs +186 -148
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/keepAlive.mjs +186 -148
- package/dist/preview-next/middleware.mjs +186 -148
- package/dist/{previewAuthStore-DbqBol0V.mjs → previewAuthStore-BkEgnYPP.mjs} +186 -148
- package/dist/{sdk-runtime-19MO27F0.mjs → sdk-runtime-DwGfsT0S.mjs} +2 -2
- package/dist/{separator-DaPLtJ1f.mjs → separator-BeqDLneQ.mjs} +1 -1
- package/dist/server/components.mjs +53243 -51879
- package/dist/server/config-validation.mjs +1015 -906
- package/dist/server/config.mjs +1019 -910
- package/dist/server/data.mjs +10304 -10200
- package/dist/server/index.mjs +217 -198
- package/dist/server/next/tags.mjs +18 -4
- package/dist/server/next.mjs +62787 -61617
- package/dist/server/page-converter.mjs +797 -917
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +52557 -51365
- package/dist/server/rendering.mjs +54373 -53054
- package/dist/server/routing.mjs +13274 -13142
- package/dist/server/server.mjs +1076 -1154
- package/dist/server/theme-bridge.mjs +69 -9
- package/dist/server/theme.mjs +27 -8
- package/dist/styles/index.css +32 -1
- package/package.json +1 -1
- package/dist/_dts/api/src/publicExperience/wholeSeriesEndpoints.d.ts +0 -65
- package/dist/_dts/api/src/publicWholeSeriesEndpointDefinitions.d.ts +0 -20
- package/dist/_dts/api/src/sdk-event-pricing.d.ts +0 -61
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/index.d.ts +0 -3
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/pricing.d.ts +0 -50
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/schemas.d.ts +0 -135
- package/dist/_dts/blocks/src/system/blocks/events/whole-series/types.d.ts +0 -87
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCapacity.d.ts +0 -48
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/pricing.d.ts +0 -17
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +0 -100
- package/dist/_dts/sdk/src/client/wholeSeriesReadOperations.d.ts +0 -11
- package/dist/_dts/sdk/src/public-api/wholeSeriesContracts.d.ts +0 -2
- /package/dist/_dts/blocks/src/system/runtime/nodes/events/{shared → domain}/destination.d.ts +0 -0
|
@@ -33,7 +33,7 @@ export type OccurrenceId = Brand<string, 'OccurrenceId'>;
|
|
|
33
33
|
export type EventOfferingId = Brand<string, 'EventOfferingId'>;
|
|
34
34
|
export type EventSeriesId = Brand<string, 'EventSeriesId'>;
|
|
35
35
|
export type EventPageRouteSlug = Brand<string, 'EventPageRouteSlug'>;
|
|
36
|
-
export type
|
|
36
|
+
export type EventAttendeeTicketLineId = Brand<string, 'EventAttendeeTicketLineId'>;
|
|
37
37
|
export type EventSeriesRegistrationId = Brand<string, 'EventSeriesRegistrationId'>;
|
|
38
38
|
export type EventCategoryId = Brand<string, 'EventCategoryId'>;
|
|
39
39
|
export type VenueId = Brand<string, 'VenueId'>;
|
|
@@ -71,8 +71,12 @@ export type FormId = Brand<string, 'FormId'>;
|
|
|
71
71
|
export type FormSubmissionId = Brand<string, 'FormSubmissionId'>;
|
|
72
72
|
export type PassId = Brand<string, 'PassId'>;
|
|
73
73
|
export type MembershipId = Brand<string, 'MembershipId'>;
|
|
74
|
-
|
|
75
|
-
|
|
74
|
+
/**
|
|
75
|
+
* Historical identity carried by pre-cutover order-item metadata under the
|
|
76
|
+
* `courseId` wire key. There is no live Course entity: this brand exists only
|
|
77
|
+
* so historical snapshots decode to something typed. Parse-only by design.
|
|
78
|
+
*/
|
|
79
|
+
export type RetiredCourseId = Brand<string, 'RetiredCourseId'>;
|
|
76
80
|
export type CustomerId = Brand<string, 'CustomerId'>;
|
|
77
81
|
export type OrderId = Brand<string, 'OrderId'>;
|
|
78
82
|
export type OrderItemId = Brand<string, 'OrderItemId'>;
|
|
@@ -84,6 +88,18 @@ export type OrderPaymentPlanInstalmentId = Brand<string, 'OrderPaymentPlanInstal
|
|
|
84
88
|
export type ManualPaymentOperationId = Brand<string, 'ManualPaymentOperationId'>;
|
|
85
89
|
export type CheckoutLineId = Brand<string, 'CheckoutLineId'>;
|
|
86
90
|
export type AttendeeId = Brand<string, 'AttendeeId'>;
|
|
91
|
+
/** Client-generated identity for one registration submission (#1273). */
|
|
92
|
+
export type EventRegistrationCommandId = Brand<string, 'EventRegistrationCommandId'>;
|
|
93
|
+
/**
|
|
94
|
+
* The command *row* that records one registration submission.
|
|
95
|
+
*
|
|
96
|
+
* Distinct from `EventRegistrationCommandId`, which is the client's own id for
|
|
97
|
+
* the submission. Both are UUIDs and both travel together through the order
|
|
98
|
+
* projection, so the type is what stops one being handed over where the other
|
|
99
|
+
* is meant.
|
|
100
|
+
*/
|
|
101
|
+
export type EventRegistrationCommandRowId = Brand<string, 'EventRegistrationCommandRowId'>;
|
|
102
|
+
export type EventRegistrationProjectionClaimToken = Brand<string, 'EventRegistrationProjectionClaimToken'>;
|
|
87
103
|
export type CustomerPassId = Brand<string, 'CustomerPassId'>;
|
|
88
104
|
export type CustomerMembershipId = Brand<string, 'CustomerMembershipId'>;
|
|
89
105
|
export type AppointmentId = Brand<string, 'AppointmentId'>;
|
|
@@ -169,7 +185,7 @@ export declare const unsafeAsOccurrenceId: (id: string) => OccurrenceId;
|
|
|
169
185
|
export declare const unsafeAsEventOfferingId: (id: string) => EventOfferingId;
|
|
170
186
|
export declare const unsafeAsEventSeriesId: (id: string) => EventSeriesId;
|
|
171
187
|
export declare const unsafeAsEventPageRouteSlug: (value: string) => EventPageRouteSlug;
|
|
172
|
-
export declare const
|
|
188
|
+
export declare const unsafeAsEventAttendeeTicketLineId: (id: string) => EventAttendeeTicketLineId;
|
|
173
189
|
export declare const unsafeAsEventSeriesRegistrationId: (id: string) => EventSeriesRegistrationId;
|
|
174
190
|
export declare const unsafeAsEventCategoryId: (id: string) => EventCategoryId;
|
|
175
191
|
export declare const unsafeAsVenueId: (id: string) => VenueId;
|
|
@@ -207,8 +223,6 @@ export declare const unsafeAsFormId: (id: string) => FormId;
|
|
|
207
223
|
export declare const unsafeAsFormSubmissionId: (id: string) => FormSubmissionId;
|
|
208
224
|
export declare const unsafeAsPassId: (id: string) => PassId;
|
|
209
225
|
export declare const unsafeAsMembershipId: (id: string) => MembershipId;
|
|
210
|
-
export declare const unsafeAsCourseId: (id: string) => CourseId;
|
|
211
|
-
export declare const unsafeAsCourseProgramId: (id: string) => CourseProgramId;
|
|
212
226
|
export declare const unsafeAsCustomerId: (id: string) => CustomerId;
|
|
213
227
|
export declare const unsafeAsOrderId: (id: string) => OrderId;
|
|
214
228
|
export declare const unsafeAsOrderItemId: (id: string) => OrderItemId;
|
|
@@ -220,6 +234,9 @@ export declare const unsafeAsOrderPaymentPlanInstalmentId: (id: string) => Order
|
|
|
220
234
|
export declare const unsafeAsManualPaymentOperationId: (id: string) => ManualPaymentOperationId;
|
|
221
235
|
export declare const unsafeAsCheckoutLineId: (id: string) => CheckoutLineId;
|
|
222
236
|
export declare const unsafeAsAttendeeId: (id: string) => AttendeeId;
|
|
237
|
+
export declare const unsafeAsEventRegistrationCommandId: (id: string) => EventRegistrationCommandId;
|
|
238
|
+
export declare const unsafeAsEventRegistrationCommandRowId: (id: string) => EventRegistrationCommandRowId;
|
|
239
|
+
export declare const unsafeAsEventRegistrationProjectionClaimToken: (id: string) => EventRegistrationProjectionClaimToken;
|
|
223
240
|
export declare const unsafeAsCustomerPassId: (id: string) => CustomerPassId;
|
|
224
241
|
export declare const unsafeAsCustomerMembershipId: (id: string) => CustomerMembershipId;
|
|
225
242
|
export declare const unsafeAsAppointmentId: (id: string) => AppointmentId;
|
|
@@ -277,8 +294,7 @@ export declare const parsePageId: (value: unknown) => Result<PageId, BrandedIdPa
|
|
|
277
294
|
export declare const parsePageSurfaceId: (value: unknown) => Result<PageSurfaceId, BrandedIdParseError>;
|
|
278
295
|
export declare const parseOccurrenceId: (value: unknown) => Result<OccurrenceId, BrandedIdParseError>;
|
|
279
296
|
export declare const parseEventOfferingId: (value: unknown) => Result<EventOfferingId, BrandedIdParseError>;
|
|
280
|
-
export declare const
|
|
281
|
-
export declare const parseTicketTypeId: (value: unknown) => Result<TicketTypeId, BrandedIdParseError>;
|
|
297
|
+
export declare const parseEventAttendeeTicketLineId: (value: unknown) => Result<EventAttendeeTicketLineId, BrandedIdParseError>;
|
|
282
298
|
export declare const parsePricingOptionId: (value: unknown) => Result<PricingOptionId, BrandedIdParseError>;
|
|
283
299
|
export declare const parseUserId: (value: unknown) => Result<UserId, BrandedIdParseError>;
|
|
284
300
|
export declare const parseProductId: (value: unknown) => Result<ProductId, BrandedIdParseError>;
|
|
@@ -292,7 +308,7 @@ export declare const parseNavigationMenuId: (value: unknown) => Result<Navigatio
|
|
|
292
308
|
export declare const parseNavigationItemId: (value: unknown) => Result<NavigationItemId, BrandedIdParseError>;
|
|
293
309
|
export declare const parsePassId: (value: unknown) => Result<PassId, BrandedIdParseError>;
|
|
294
310
|
export declare const parseMembershipId: (value: unknown) => Result<MembershipId, BrandedIdParseError>;
|
|
295
|
-
export declare const
|
|
311
|
+
export declare const parseRetiredCourseId: (value: unknown) => Result<RetiredCourseId, BrandedIdParseError>;
|
|
296
312
|
export declare const parseFormId: (value: unknown) => Result<FormId, BrandedIdParseError>;
|
|
297
313
|
export declare const parseAppointmentId: (value: unknown) => Result<AppointmentId, BrandedIdParseError>;
|
|
298
314
|
export declare const parseAppointmentServiceId: (value: unknown) => Result<AppointmentServiceId, BrandedIdParseError>;
|
|
@@ -300,6 +316,9 @@ export declare const parseAppointmentResourceId: (value: unknown) => Result<Appo
|
|
|
300
316
|
export declare const parseAppointmentReservationId: (value: unknown) => Result<AppointmentReservationId, BrandedIdParseError>;
|
|
301
317
|
export declare const parseAppointmentReservationRunId: (value: unknown) => Result<AppointmentReservationRunId, BrandedIdParseError>;
|
|
302
318
|
export declare const parseAttendeeId: (value: unknown) => Result<AttendeeId, BrandedIdParseError>;
|
|
319
|
+
export declare const parseEventRegistrationCommandId: (value: unknown) => Result<EventRegistrationCommandId, BrandedIdParseError>;
|
|
320
|
+
export declare const parseEventRegistrationCommandRowId: (value: unknown) => Result<EventRegistrationCommandRowId, BrandedIdParseError>;
|
|
321
|
+
export declare const parseEventRegistrationProjectionClaimToken: (value: unknown) => Result<EventRegistrationProjectionClaimToken, BrandedIdParseError>;
|
|
303
322
|
export declare const parseDatedOfferingCapacityHoldId: (value: unknown) => Result<DatedOfferingCapacityHoldId, BrandedIdParseError>;
|
|
304
323
|
export declare const parseDatedOfferingCapacityHoldAuditRef: (value: unknown) => Result<DatedOfferingCapacityHoldAuditRef, BrandedIdParseError>;
|
|
305
324
|
export declare const parseDatedOfferingRevocationAuditEventId: (value: unknown) => Result<DatedOfferingRevocationAuditEventId, BrandedIdParseError>;
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
import { type EventPricing } from './event-booking-offer';
|
|
2
|
+
import { type CentsParseError } from './money-input';
|
|
3
|
+
import { type Result } from './result';
|
|
4
|
+
import { type ReadonlyNonEmptyArray } from './non-empty-array';
|
|
5
|
+
export type EventPricingOptionParseInput = Readonly<{
|
|
6
|
+
id: unknown;
|
|
7
|
+
name: unknown;
|
|
8
|
+
description: unknown;
|
|
9
|
+
priceAmount: unknown;
|
|
10
|
+
isActive: unknown;
|
|
11
|
+
sortOrder: unknown;
|
|
12
|
+
capacityLimit: unknown;
|
|
13
|
+
saleStartsAt: unknown;
|
|
14
|
+
saleEndsAt: unknown;
|
|
15
|
+
attendanceScope: unknown;
|
|
16
|
+
recipeIdentifier: unknown;
|
|
17
|
+
}>;
|
|
18
|
+
export type EventPricingParseInput = Readonly<{
|
|
19
|
+
pricingStrategy: unknown;
|
|
20
|
+
currency: unknown;
|
|
21
|
+
singlePriceAmount: unknown;
|
|
22
|
+
slidingMinAmount: unknown;
|
|
23
|
+
slidingMaxAmount: unknown;
|
|
24
|
+
slidingSuggestedAmount: unknown;
|
|
25
|
+
options: unknown;
|
|
26
|
+
}>;
|
|
27
|
+
export type EventPricingParseIssue = Readonly<{
|
|
28
|
+
kind: 'invalid_strategy';
|
|
29
|
+
value: unknown;
|
|
30
|
+
}> | Readonly<{
|
|
31
|
+
kind: 'invalid_currency';
|
|
32
|
+
value: unknown;
|
|
33
|
+
}> | Readonly<{
|
|
34
|
+
kind: 'unexpected_value';
|
|
35
|
+
field: AmountField | 'options';
|
|
36
|
+
}> | Readonly<{
|
|
37
|
+
kind: 'invalid_amount';
|
|
38
|
+
field: AmountField;
|
|
39
|
+
error: CentsParseError;
|
|
40
|
+
}> | Readonly<{
|
|
41
|
+
kind: 'invalid_sliding_range';
|
|
42
|
+
}> | Readonly<{
|
|
43
|
+
kind: 'suggested_outside_range';
|
|
44
|
+
}> | Readonly<{
|
|
45
|
+
kind: 'tiered_options_empty';
|
|
46
|
+
}> | Readonly<{
|
|
47
|
+
kind: 'invalid_option';
|
|
48
|
+
index: number;
|
|
49
|
+
issue: EventPricingOptionParseIssue;
|
|
50
|
+
}>;
|
|
51
|
+
export type EventPricingOptionParseIssue = Readonly<{
|
|
52
|
+
kind: 'invalid_id';
|
|
53
|
+
}> | Readonly<{
|
|
54
|
+
kind: 'invalid_name';
|
|
55
|
+
}> | Readonly<{
|
|
56
|
+
kind: 'invalid_description';
|
|
57
|
+
}> | Readonly<{
|
|
58
|
+
kind: 'invalid_price';
|
|
59
|
+
error: CentsParseError;
|
|
60
|
+
}> | Readonly<{
|
|
61
|
+
kind: 'invalid_active';
|
|
62
|
+
}> | Readonly<{
|
|
63
|
+
kind: 'invalid_sort_order';
|
|
64
|
+
}> | Readonly<{
|
|
65
|
+
kind: 'invalid_capacity';
|
|
66
|
+
}> | Readonly<{
|
|
67
|
+
kind: 'invalid_sale_start';
|
|
68
|
+
}> | Readonly<{
|
|
69
|
+
kind: 'invalid_sale_end';
|
|
70
|
+
}> | Readonly<{
|
|
71
|
+
kind: 'invalid_sale_window';
|
|
72
|
+
}> | Readonly<{
|
|
73
|
+
kind: 'invalid_object';
|
|
74
|
+
}> | Readonly<{
|
|
75
|
+
kind: 'invalid_attendance_scope';
|
|
76
|
+
}> | Readonly<{
|
|
77
|
+
kind: 'invalid_recipe_identifier';
|
|
78
|
+
}>;
|
|
79
|
+
export type NonEmptyEventPricingIssues<TIssue> = ReadonlyNonEmptyArray<TIssue>;
|
|
80
|
+
type AmountField = 'singlePriceAmount' | 'slidingMinAmount' | 'slidingMaxAmount' | 'slidingSuggestedAmount';
|
|
81
|
+
export declare function parseEventPricing(input: EventPricingParseInput): Result<EventPricing, NonEmptyEventPricingIssues<EventPricingParseIssue>>;
|
|
82
|
+
export {};
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { PricingOptionId } from './branded';
|
|
2
|
+
import type { CurrencyCode } from './currency-format';
|
|
3
|
+
import type { NonNegativeCents, PositiveCents } from './money-input';
|
|
4
|
+
import { type Result } from './result';
|
|
5
|
+
export declare const EVENT_PRICING_STRATEGIES: readonly ["free", "single", "tiered", "sliding_scale"];
|
|
6
|
+
export type EventPricingStrategy = (typeof EVENT_PRICING_STRATEGIES)[number];
|
|
7
|
+
export type EventBookingRequirement = 'none' | 'required';
|
|
8
|
+
export type EventPricingAttendanceScope = 'in_person' | 'online' | 'both';
|
|
9
|
+
export type EventPricingOption = Readonly<{
|
|
10
|
+
id: PricingOptionId;
|
|
11
|
+
name: string;
|
|
12
|
+
description: string | null;
|
|
13
|
+
priceAmount: NonNegativeCents;
|
|
14
|
+
isActive: boolean;
|
|
15
|
+
sortOrder: number;
|
|
16
|
+
capacityLimit: number | null;
|
|
17
|
+
saleStartsAt: string | null;
|
|
18
|
+
saleEndsAt: string | null;
|
|
19
|
+
attendanceScope: EventPricingAttendanceScope;
|
|
20
|
+
recipeIdentifier: string | null;
|
|
21
|
+
}>;
|
|
22
|
+
export type NonEmptyEventPricingOptions<TOption> = readonly [
|
|
23
|
+
TOption,
|
|
24
|
+
...TOption[]
|
|
25
|
+
];
|
|
26
|
+
export type EventPricingValueTypes = Readonly<{
|
|
27
|
+
currency: unknown;
|
|
28
|
+
positiveAmount: unknown;
|
|
29
|
+
nonNegativeAmount: unknown;
|
|
30
|
+
option: unknown;
|
|
31
|
+
}>;
|
|
32
|
+
export type CanonicalEventPricingValueTypes = Readonly<{
|
|
33
|
+
currency: CurrencyCode;
|
|
34
|
+
positiveAmount: PositiveCents;
|
|
35
|
+
nonNegativeAmount: NonNegativeCents;
|
|
36
|
+
option: EventPricingOption;
|
|
37
|
+
}>;
|
|
38
|
+
export type EventFreePricing<TCurrency = CurrencyCode> = Readonly<{
|
|
39
|
+
kind: 'free';
|
|
40
|
+
currency: TCurrency;
|
|
41
|
+
}>;
|
|
42
|
+
export type EventSinglePricing<TCurrency = CurrencyCode, TPositiveAmount = PositiveCents> = Readonly<{
|
|
43
|
+
kind: 'single';
|
|
44
|
+
currency: TCurrency;
|
|
45
|
+
amount: TPositiveAmount;
|
|
46
|
+
}>;
|
|
47
|
+
export type EventTieredPricing<TCurrency = CurrencyCode, TOption = EventPricingOption> = Readonly<{
|
|
48
|
+
kind: 'tiered';
|
|
49
|
+
currency: TCurrency;
|
|
50
|
+
options: NonEmptyEventPricingOptions<TOption>;
|
|
51
|
+
}>;
|
|
52
|
+
export type EventSlidingScalePricing<TCurrency = CurrencyCode, TPositiveAmount = PositiveCents, TNonNegativeAmount = NonNegativeCents> = Readonly<{
|
|
53
|
+
kind: 'sliding_scale';
|
|
54
|
+
currency: TCurrency;
|
|
55
|
+
minimum: TNonNegativeAmount;
|
|
56
|
+
maximum: TPositiveAmount;
|
|
57
|
+
suggested: TNonNegativeAmount | null;
|
|
58
|
+
}>;
|
|
59
|
+
export type EventPricing<TValues extends EventPricingValueTypes = CanonicalEventPricingValueTypes> = EventFreePricing<TValues['currency']> | EventSinglePricing<TValues['currency'], TValues['positiveAmount']> | EventTieredPricing<TValues['currency'], TValues['option']> | EventSlidingScalePricing<TValues['currency'], TValues['positiveAmount'], TValues['nonNegativeAmount']>;
|
|
60
|
+
export type EventBookingOffer<TPaymentTerms, TValues extends EventPricingValueTypes = CanonicalEventPricingValueTypes> = Readonly<{
|
|
61
|
+
bookingRequirement: 'none';
|
|
62
|
+
pricing: EventFreePricing<TValues['currency']>;
|
|
63
|
+
paymentTerms: TPaymentTerms;
|
|
64
|
+
}> | Readonly<{
|
|
65
|
+
bookingRequirement: 'required';
|
|
66
|
+
pricing: EventPricing<TValues>;
|
|
67
|
+
paymentTerms: TPaymentTerms;
|
|
68
|
+
}>;
|
|
69
|
+
export type EventBookingOfferIssue = Readonly<{
|
|
70
|
+
kind: 'invalid_booking_requirement';
|
|
71
|
+
value: unknown;
|
|
72
|
+
}> | Readonly<{
|
|
73
|
+
kind: 'paid_without_registration';
|
|
74
|
+
}>;
|
|
75
|
+
export declare function createEventBookingOffer<TPaymentTerms, TValues extends EventPricingValueTypes>(input: Readonly<{
|
|
76
|
+
bookingRequirement: unknown;
|
|
77
|
+
pricing: EventPricing<TValues>;
|
|
78
|
+
paymentTerms: TPaymentTerms;
|
|
79
|
+
}>): Result<EventBookingOffer<TPaymentTerms, TValues>, EventBookingOfferIssue>;
|
|
80
|
+
type PayableEventPricingValues = Readonly<{
|
|
81
|
+
currency: unknown;
|
|
82
|
+
positiveAmount: number;
|
|
83
|
+
nonNegativeAmount: number;
|
|
84
|
+
option: Readonly<{
|
|
85
|
+
priceAmount: number;
|
|
86
|
+
}>;
|
|
87
|
+
}>;
|
|
88
|
+
export declare function eventPricingRequiresPayment<TValues extends PayableEventPricingValues>(pricing: EventPricing<TValues>): boolean;
|
|
89
|
+
export {};
|
|
@@ -15,35 +15,93 @@ export type EventPageSurfaceSubjectRefWire = Readonly<{
|
|
|
15
15
|
eventOfferingId: string;
|
|
16
16
|
}>;
|
|
17
17
|
export type EventPageSurfaceBookingScope = 'single_occurrence' | 'whole_series';
|
|
18
|
+
/**
|
|
19
|
+
* Which renderer owns the URLs a page surface fronts.
|
|
20
|
+
*
|
|
21
|
+
* The site's Event destination policy, read through this subject's preset,
|
|
22
|
+
* settles this before any public Event record is loaded. Carrying it on the
|
|
23
|
+
* subject is what lets a route tell "this system-managed Event has no dates to
|
|
24
|
+
* show" apart from "this URL was never a system-managed Event", so a run whose
|
|
25
|
+
* public facts are withheld cannot quietly hand its URL back to whatever CMS
|
|
26
|
+
* content sits underneath it.
|
|
27
|
+
*
|
|
28
|
+
* Optional for now: the wire declares it, and a surface that has not been given
|
|
29
|
+
* one leaves the routed Event record as the only authority, exactly as before.
|
|
30
|
+
*/
|
|
31
|
+
export type EventPageSurfaceDestinationMode = 'cms-managed' | 'system-managed';
|
|
18
32
|
export type EventSeriesPageSurfaceSubject = Readonly<{
|
|
19
33
|
kind: 'eventSeries';
|
|
20
34
|
eventSeriesId: EventSeriesId;
|
|
21
35
|
bookingScope: 'single_occurrence';
|
|
36
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
22
37
|
}> | Readonly<{
|
|
23
38
|
kind: 'eventSeries';
|
|
24
39
|
eventSeriesId: EventSeriesId;
|
|
25
40
|
bookingScope: 'whole_series';
|
|
26
41
|
isWholeSeriesBooking: true;
|
|
42
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
27
43
|
}>;
|
|
28
44
|
export type EventSeriesPageSurfaceSubjectWire = Readonly<{
|
|
29
45
|
kind: 'eventSeries';
|
|
30
46
|
eventSeriesId: string;
|
|
31
47
|
bookingScope: 'single_occurrence';
|
|
48
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
32
49
|
}> | Readonly<{
|
|
33
50
|
kind: 'eventSeries';
|
|
34
51
|
eventSeriesId: string;
|
|
35
52
|
bookingScope: 'whole_series';
|
|
36
53
|
isWholeSeriesBooking: true;
|
|
54
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
37
55
|
}>;
|
|
38
|
-
|
|
56
|
+
/**
|
|
57
|
+
* An offering page, and the runs it speaks for.
|
|
58
|
+
*
|
|
59
|
+
* `catalogueEventSeriesIds` is the offering's catalogue: every run it has,
|
|
60
|
+
* whatever the run's lifecycle and wherever the run's content is published. A
|
|
61
|
+
* finished run belongs here, because it is the informational fallback a parent
|
|
62
|
+
* page shows when nothing is bookable; so does a run that was given its own
|
|
63
|
+
* authored page, because the chooser links to that page rather than pretending
|
|
64
|
+
* the run is not the offering's.
|
|
65
|
+
*
|
|
66
|
+
* That is deliberately *not* the same question as which runs' content this
|
|
67
|
+
* page renders. Content ownership is settled where the offering's route is
|
|
68
|
+
* projected, and it is right for it to exclude an independently authored run.
|
|
69
|
+
* Answering both questions with one list is how the narrower answer ends up
|
|
70
|
+
* deciding whether the offering has anything on at all.
|
|
71
|
+
*
|
|
72
|
+
* `bookingScope` is read off the offering's own runs rather than assumed: an
|
|
73
|
+
* offering can front an ordinary Event as well as a whole-series one.
|
|
74
|
+
* `isWholeSeriesBooking` is derived from it, exactly as it is for a series
|
|
75
|
+
* subject, because a page's data loaders can only branch on a flag.
|
|
76
|
+
*/
|
|
77
|
+
export type EventOfferingPageSurfaceSubject = Readonly<{
|
|
39
78
|
kind: 'eventOffering';
|
|
40
79
|
eventOfferingId: EventOfferingId;
|
|
41
|
-
|
|
80
|
+
catalogueEventSeriesIds: readonly EventSeriesId[];
|
|
81
|
+
bookingScope: 'single_occurrence';
|
|
82
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
83
|
+
}> | Readonly<{
|
|
84
|
+
kind: 'eventOffering';
|
|
85
|
+
eventOfferingId: EventOfferingId;
|
|
86
|
+
catalogueEventSeriesIds: readonly EventSeriesId[];
|
|
87
|
+
bookingScope: 'whole_series';
|
|
88
|
+
isWholeSeriesBooking: true;
|
|
89
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
42
90
|
}>;
|
|
91
|
+
export type EventPageSurfaceSubject = EventSeriesPageSurfaceSubject | EventOfferingPageSurfaceSubject;
|
|
43
92
|
export type EventPageSurfaceSubjectWire = EventSeriesPageSurfaceSubjectWire | Readonly<{
|
|
44
93
|
kind: 'eventOffering';
|
|
45
94
|
eventOfferingId: string;
|
|
46
|
-
|
|
95
|
+
catalogueEventSeriesIds: readonly string[];
|
|
96
|
+
bookingScope: 'single_occurrence';
|
|
97
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
98
|
+
}> | Readonly<{
|
|
99
|
+
kind: 'eventOffering';
|
|
100
|
+
eventOfferingId: string;
|
|
101
|
+
catalogueEventSeriesIds: readonly string[];
|
|
102
|
+
bookingScope: 'whole_series';
|
|
103
|
+
isWholeSeriesBooking: true;
|
|
104
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
47
105
|
}>;
|
|
48
106
|
export type EventPageSurfaceSubjectParseError = Readonly<{
|
|
49
107
|
kind: 'notObject';
|
|
@@ -59,7 +117,26 @@ export type EventPageSurfaceSubjectParseError = Readonly<{
|
|
|
59
117
|
}> | Readonly<{
|
|
60
118
|
kind: 'invalidEventOfferingId';
|
|
61
119
|
error: BrandedIdParseError;
|
|
120
|
+
}> | Readonly<{
|
|
121
|
+
kind: 'invalidEventOfferingBookingScope';
|
|
122
|
+
bookingScope: unknown;
|
|
123
|
+
}> | Readonly<{
|
|
124
|
+
kind: 'invalidEventOfferingCatalogue';
|
|
125
|
+
catalogue: unknown;
|
|
62
126
|
}>;
|
|
63
|
-
export declare function createEventSeriesPageSurfaceSubject(eventSeriesId: EventSeriesId, bookingScope: EventPageSurfaceBookingScope): EventSeriesPageSurfaceSubject;
|
|
127
|
+
export declare function createEventSeriesPageSurfaceSubject(eventSeriesId: EventSeriesId, bookingScope: EventPageSurfaceBookingScope, eventDestinationMode?: EventPageSurfaceDestinationMode): EventSeriesPageSurfaceSubject;
|
|
128
|
+
export declare function createEventOfferingPageSurfaceSubject(eventOfferingId: EventOfferingId, input: Readonly<{
|
|
129
|
+
catalogueEventSeriesIds: readonly EventSeriesId[];
|
|
130
|
+
bookingScope: EventPageSurfaceBookingScope;
|
|
131
|
+
eventDestinationMode?: EventPageSurfaceDestinationMode;
|
|
132
|
+
}>): EventOfferingPageSurfaceSubject;
|
|
133
|
+
/**
|
|
134
|
+
* Read the destination mode off a wire value.
|
|
135
|
+
*
|
|
136
|
+
* Absent or unrecognised reads as absent, which leaves the routed Event record
|
|
137
|
+
* as the only authority — the behaviour every caller had before the field
|
|
138
|
+
* existed.
|
|
139
|
+
*/
|
|
140
|
+
export declare function parseEventPageSurfaceDestinationMode(value: unknown): EventPageSurfaceDestinationMode | undefined;
|
|
64
141
|
export declare function parseEventPageSurfaceSubject(value: unknown): Result<EventPageSurfaceSubject, EventPageSurfaceSubjectParseError>;
|
|
65
142
|
export declare function toEventPageSurfaceSubjectWire(subject: EventPageSurfaceSubject): EventPageSurfaceSubjectWire;
|
|
@@ -1,118 +1,109 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export type PublicEventPricingType =
|
|
5
|
-
export type
|
|
6
|
-
kind:
|
|
7
|
-
|
|
8
|
-
}> | Readonly<{
|
|
9
|
-
kind: "exact";
|
|
10
|
-
amount: number;
|
|
11
|
-
currency: string;
|
|
12
|
-
}> | Readonly<{
|
|
13
|
-
kind: "from";
|
|
14
|
-
amount: number;
|
|
15
|
-
currency: string;
|
|
1
|
+
import type { EventPricing, EventPricingStrategy } from './event-booking-offer';
|
|
2
|
+
import { type CurrencyDecimals } from './currency-format';
|
|
3
|
+
import { type PlanningClock } from './planner';
|
|
4
|
+
export type PublicEventPricingType = 'free' | 'paid' | 'external';
|
|
5
|
+
export type PublicEventPricingOptionAvailability = Readonly<{
|
|
6
|
+
kind: 'available';
|
|
7
|
+
remainingPlaces: number | null;
|
|
16
8
|
}> | Readonly<{
|
|
17
|
-
kind:
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
9
|
+
kind: 'unavailable';
|
|
10
|
+
reason: 'inactive' | 'not_on_sale_yet' | 'sale_ended' | 'sold_out' | 'attendance_mode_unavailable' | 'overallCapacityUnavailable';
|
|
11
|
+
remainingPlaces: number | null;
|
|
12
|
+
}>;
|
|
13
|
+
export type PublicEventPricingOption = Readonly<{
|
|
14
|
+
id: string;
|
|
15
|
+
name: string;
|
|
16
|
+
description: string | null;
|
|
17
|
+
priceAmount: number;
|
|
18
|
+
isActive: boolean;
|
|
19
|
+
sortOrder: number;
|
|
20
|
+
attendanceScope: 'in_person' | 'online' | 'both';
|
|
21
|
+
saleStartsAt: string | null;
|
|
22
|
+
saleEndsAt: string | null;
|
|
23
|
+
availability: PublicEventPricingOptionAvailability;
|
|
29
24
|
}>;
|
|
30
25
|
export type PublicEventFreePriceDisplay = Readonly<{
|
|
31
|
-
kind:
|
|
26
|
+
kind: 'free';
|
|
32
27
|
currency: string;
|
|
33
28
|
}>;
|
|
34
29
|
export type PublicEventExactPriceDisplay = Readonly<{
|
|
35
|
-
kind:
|
|
30
|
+
kind: 'exact';
|
|
36
31
|
amount: number;
|
|
37
32
|
currency: string;
|
|
38
33
|
}>;
|
|
39
34
|
export type PublicEventExternalPriceDisplay = Readonly<{
|
|
40
|
-
kind:
|
|
35
|
+
kind: 'external';
|
|
41
36
|
label: string;
|
|
42
37
|
}>;
|
|
43
|
-
export type
|
|
44
|
-
kind:
|
|
38
|
+
export type PublicEventPricingOptionPriceDisplay = PublicEventFreePriceDisplay | PublicEventExactPriceDisplay | Readonly<{
|
|
39
|
+
kind: 'from';
|
|
45
40
|
amount: number;
|
|
46
41
|
currency: string;
|
|
47
42
|
}> | Readonly<{
|
|
48
|
-
kind:
|
|
43
|
+
kind: 'range';
|
|
49
44
|
minAmount: number;
|
|
50
45
|
maxAmount: number;
|
|
46
|
+
suggestedAmount?: number | null;
|
|
51
47
|
currency: string;
|
|
52
48
|
}> | Readonly<{
|
|
53
|
-
kind:
|
|
49
|
+
kind: 'mixed';
|
|
54
50
|
paidFromAmount: number;
|
|
55
51
|
paidToAmount: number;
|
|
56
52
|
currency: string;
|
|
57
53
|
}> | Readonly<{
|
|
58
|
-
kind:
|
|
54
|
+
kind: 'unavailable';
|
|
59
55
|
currency: string;
|
|
60
56
|
}>;
|
|
61
|
-
export type PublicEventPriceDisplay =
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
}>;
|
|
65
|
-
export type PublicEventPricing<TTicketType = never> = Readonly<{
|
|
66
|
-
kind: "drop_in";
|
|
57
|
+
export type PublicEventPriceDisplay = PublicEventPricingOptionPriceDisplay | PublicEventExternalPriceDisplay;
|
|
58
|
+
export type SharedPricingPriceDisplay = PublicEventPricingOptionPriceDisplay;
|
|
59
|
+
type PublicEventPricingValues = Readonly<{
|
|
67
60
|
currency: string;
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
kind:
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
currency: string;
|
|
94
|
-
}>;
|
|
95
|
-
}> | Readonly<{
|
|
96
|
-
kind: "whole_series";
|
|
97
|
-
display: Readonly<{
|
|
98
|
-
kind: "whole_series";
|
|
99
|
-
display: PublicWholeSeriesPriceDisplay;
|
|
100
|
-
}>;
|
|
101
|
-
}> | Readonly<{
|
|
102
|
-
kind: "external";
|
|
103
|
-
display: Readonly<{
|
|
104
|
-
kind: "external";
|
|
105
|
-
label: string;
|
|
61
|
+
positiveAmount: number;
|
|
62
|
+
nonNegativeAmount: number;
|
|
63
|
+
option: PublicEventPricingOption;
|
|
64
|
+
}>;
|
|
65
|
+
export type PublicManagedEventPricing = EventPricing<PublicEventPricingValues>;
|
|
66
|
+
export type PublicEventPricing = PublicManagedEventPricing | Readonly<{
|
|
67
|
+
kind: 'external';
|
|
68
|
+
label: string;
|
|
69
|
+
}>;
|
|
70
|
+
/** Capacity closes booking, but does not make an otherwise eligible price unknown. */
|
|
71
|
+
export declare function isPublicEventPricingOptionDisplayable(option: Pick<PublicEventPricingOption, 'isActive' | 'availability'>): boolean;
|
|
72
|
+
export declare function publicEventPricingDisplay(pricing: PublicEventPricing): PublicEventPriceDisplay;
|
|
73
|
+
export declare function publicEventPricingType(pricing: PublicEventPricing): PublicEventPricingType;
|
|
74
|
+
export declare function publicEventPricingCurrency(pricing: PublicEventPricing): string | null;
|
|
75
|
+
export declare function publicEventScalarPrice(pricing: PublicEventPricing): number | null;
|
|
76
|
+
export declare function publicEventPricingStrategy(pricing: PublicEventPricing): EventPricingStrategy | undefined;
|
|
77
|
+
export declare function publicEventPricingOptions(pricing: PublicEventPricing): readonly PublicEventPricingOption[];
|
|
78
|
+
export type CanonicalEventPriceDisplay = PublicEventPricingOptionPriceDisplay;
|
|
79
|
+
type DisplayableEventPricingValues = Readonly<{
|
|
80
|
+
currency: string;
|
|
81
|
+
positiveAmount: number;
|
|
82
|
+
nonNegativeAmount: number;
|
|
83
|
+
option: Readonly<{
|
|
84
|
+
priceAmount: number;
|
|
85
|
+
isActive: boolean;
|
|
106
86
|
}>;
|
|
107
87
|
}>;
|
|
108
|
-
export
|
|
109
|
-
export
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
export type
|
|
88
|
+
export type PricingOptionsDisplayPurpose = 'configured' | 'available_now';
|
|
89
|
+
export type PricingOptionForDisplay = Readonly<{
|
|
90
|
+
priceAmount: number;
|
|
91
|
+
isActive: boolean;
|
|
92
|
+
saleStartsAt?: string | null;
|
|
93
|
+
saleEndsAt?: string | null;
|
|
94
|
+
}>;
|
|
95
|
+
export type PricingOptionSaleWindowState = 'open' | 'not_started' | 'ended';
|
|
96
|
+
export declare function resolvePricingOptionSaleWindowState(option: Pick<PricingOptionForDisplay, 'saleStartsAt' | 'saleEndsAt'>, now: Date): PricingOptionSaleWindowState;
|
|
97
|
+
export declare function resolveExactOrFreePriceDisplay(amount: number | null | undefined, currency: string): PublicEventPricingOptionPriceDisplay;
|
|
98
|
+
export declare function resolvePricingOptionsPriceDisplay(input: Readonly<{
|
|
99
|
+
options: readonly PricingOptionForDisplay[];
|
|
100
|
+
currency: string;
|
|
101
|
+
purpose: PricingOptionsDisplayPurpose;
|
|
102
|
+
now?: Date;
|
|
103
|
+
clock?: PlanningClock;
|
|
104
|
+
}>): PublicEventPricingOptionPriceDisplay;
|
|
105
|
+
/** Derives configured price presentation directly from canonical pricing. */
|
|
106
|
+
export declare function canonicalEventPricingDisplay<TValues extends DisplayableEventPricingValues>(pricing: EventPricing<TValues>): CanonicalEventPriceDisplay;
|
|
116
107
|
export type FormatBookingPriceDisplayOptions = Readonly<{
|
|
117
108
|
/** Trailing-decimal policy passed through to the currency formatter. */
|
|
118
109
|
decimals?: CurrencyDecimals;
|
|
@@ -126,6 +117,7 @@ export type FormatBookingPriceDisplayOptions = Readonly<{
|
|
|
126
117
|
* should route through here so labels never drift. Adding a variant to the ADT
|
|
127
118
|
* breaks compilation here (via `assertNever`) until it is handled.
|
|
128
119
|
*/
|
|
129
|
-
export declare function formatBookingPriceDisplay(display:
|
|
120
|
+
export declare function formatBookingPriceDisplay(display: PublicEventPriceDisplay, options?: FormatBookingPriceDisplayOptions): string;
|
|
130
121
|
/** Render an event's price directly from its pricing value. */
|
|
131
|
-
export declare function formatEventPricing(pricing: PublicEventPricing
|
|
122
|
+
export declare function formatEventPricing(pricing: PublicEventPricing, options?: FormatBookingPriceDisplayOptions): string;
|
|
123
|
+
export {};
|
|
@@ -6,6 +6,8 @@ export * from './demo-claim-access';
|
|
|
6
6
|
export * from './demo-lifecycle-status';
|
|
7
7
|
export * from './demo-runtime';
|
|
8
8
|
export * from './collections';
|
|
9
|
+
export * from './event-booking-offer';
|
|
10
|
+
export * from './event-booking-offer-parser';
|
|
9
11
|
export * from './event-pricing';
|
|
10
12
|
export * from './event-page-surface-subject';
|
|
11
13
|
export * from './event-page-selection';
|
|
@@ -60,5 +62,6 @@ export * from './site-route-target';
|
|
|
60
62
|
export { disabledSelection, enabledSelection, plannerNoChange, plannerPatch, plannerUpdate, resolvePlanningDateInput, resolvePlanningNow, resolvePlanningNowDate, systemPlanningClock, } from './planner';
|
|
61
63
|
export type { DisabledSelection, EnabledSelection, OptionalSelection, PlannerNoChange, PlannerPatch, PlannerUpdate, PlanningClock, PlanningDateInput, PlanningTimeOptions, } from './planner';
|
|
62
64
|
export { isValidBookingTimeZone, parseBookingTimeZone, type BookingTimeZone, type BookingTimeZoneParseError, } from './booking-time-zone';
|
|
65
|
+
export { CANCELLED_SESSION_STATUS, firstLiveRunSessionStartMs, isWholeSeriesRegistrationOpen, orderedLiveRunSessions, resolveWholeSeriesBookingPhase, resolveWholeSeriesRunLifecycle, type WholeSeriesBookingPhase, type WholeSeriesRunLifecycle, type WholeSeriesScheduleSession, } from './whole-series-run-schedule';
|
|
63
66
|
export * from './booking-verticals';
|
|
64
67
|
export * from './event-series-behaviour';
|
|
@@ -1,4 +1,7 @@
|
|
|
1
1
|
import { type Result } from './result';
|
|
2
2
|
export type NonEmptyArray<T> = [T, ...T[]];
|
|
3
|
+
export type ReadonlyNonEmptyArray<T> = readonly [T, ...T[]];
|
|
3
4
|
export declare function fromArray<T>(items: readonly T[]): Result<NonEmptyArray<T>, 'empty_array'>;
|
|
4
5
|
export declare function mapNonEmptyArray<T, U>(items: NonEmptyArray<T>, map: (item: T, index: number) => U): NonEmptyArray<U>;
|
|
6
|
+
export declare function fromReadonlyArray<T>(items: readonly T[]): Result<ReadonlyNonEmptyArray<T>, 'empty_array'>;
|
|
7
|
+
export declare function mapReadonlyNonEmptyArray<T, U>(items: ReadonlyNonEmptyArray<T>, map: (item: T, index: number) => U): ReadonlyNonEmptyArray<U>;
|