@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
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import type { SystemBlockComponent } from './system';
|
|
2
|
+
import type { RouteMap } from './system/transforms';
|
|
3
|
+
import type { ResolveImageUrlContext } from './system/runtime/nodes/media';
|
|
4
|
+
import { type PageThemeResources } from './pageRenderingMode';
|
|
5
|
+
import type { PresentationBlock } from './pageRenderAdmission';
|
|
6
|
+
import type { RenderAudience } from './pageRenderAudience';
|
|
7
|
+
import type { PageRuntimeBoundary } from './pageRendererBoundaries';
|
|
8
|
+
import type { BlockOverrideProps, PageRendererDataContext } from './pageRendererContracts';
|
|
9
|
+
import { type PageBlockRenderPlanEntry, type PageRenderPlan } from './pageRenderPlan';
|
|
10
|
+
/**
|
|
11
|
+
* What preparing a block produced.
|
|
12
|
+
*
|
|
13
|
+
* - `plan-decided` — nothing to prepare; the plan already settled this
|
|
14
|
+
* entry (a diagnostic, or an override with no
|
|
15
|
+
* definition behind it).
|
|
16
|
+
* - `content` — the props and component the block will render with.
|
|
17
|
+
* - `editor-unpreviewable` — relaxed editor validation rejected the draft.
|
|
18
|
+
* - `render-threw` — building the element threw. Authoring keeps the
|
|
19
|
+
* entry and diagnoses it; public drops the entry
|
|
20
|
+
* entirely (see `preparePageRender`).
|
|
21
|
+
*/
|
|
22
|
+
export type PreparedBlockRender = Readonly<{
|
|
23
|
+
kind: 'plan-decided';
|
|
24
|
+
}> | Readonly<{
|
|
25
|
+
kind: 'content';
|
|
26
|
+
baseProps: BlockOverrideProps;
|
|
27
|
+
component: SystemBlockComponent<Record<string, unknown>> | undefined;
|
|
28
|
+
hasResolvedData: boolean;
|
|
29
|
+
routes: RouteMap | undefined;
|
|
30
|
+
}> | Readonly<{
|
|
31
|
+
kind: 'editor-unpreviewable';
|
|
32
|
+
}> | Readonly<{
|
|
33
|
+
kind: 'render-threw';
|
|
34
|
+
}>;
|
|
35
|
+
export type PreparedPlanEntry = Readonly<{
|
|
36
|
+
entry: PageBlockRenderPlanEntry;
|
|
37
|
+
prepared: PreparedBlockRender;
|
|
38
|
+
}>;
|
|
39
|
+
export type PageRenderPreparation = Readonly<{
|
|
40
|
+
entries: readonly PreparedPlanEntry[];
|
|
41
|
+
/**
|
|
42
|
+
* Plan entries whose element construction threw, in page order.
|
|
43
|
+
*
|
|
44
|
+
* The whole entry rather than its block, because a public render drops these
|
|
45
|
+
* from `entries` before anything downstream can guard them, so the render edge
|
|
46
|
+
* has to replay the overrides-only guard over the entry's own `override`.
|
|
47
|
+
*/
|
|
48
|
+
constructionFailures: readonly PageBlockRenderPlanEntry[];
|
|
49
|
+
runtimeBoundaries: readonly PageRuntimeBoundary[] | undefined;
|
|
50
|
+
}>;
|
|
51
|
+
export type PreparePageRenderInput = Readonly<{
|
|
52
|
+
plan: PageRenderPlan;
|
|
53
|
+
audience: RenderAudience;
|
|
54
|
+
dataContext: PageRendererDataContext | undefined;
|
|
55
|
+
routeMap: RouteMap | undefined;
|
|
56
|
+
themeResources: PageThemeResources;
|
|
57
|
+
imageResolveContext: ResolveImageUrlContext;
|
|
58
|
+
previewStage: 'published' | 'preview';
|
|
59
|
+
}>;
|
|
60
|
+
/**
|
|
61
|
+
* Stage two of the render plan.
|
|
62
|
+
*
|
|
63
|
+
* `buildPageRenderPlan` decides everything knowable from the page and the block
|
|
64
|
+
* registries. This pass decides everything knowable once the *render* inputs are
|
|
65
|
+
* in scope — routes, resolved data, theme resources — which is where content
|
|
66
|
+
* parsing, link hydration and data resolution can throw.
|
|
67
|
+
*
|
|
68
|
+
* Why a second stage rather than folding `render-threw` into `buildPageRenderPlan`
|
|
69
|
+
* with the other three reasons: the work that throws reads `dataContext`,
|
|
70
|
+
* `routeMap` and `themeResources`, none of which are plan inputs. Adding them
|
|
71
|
+
* would make every plan entry a fresh object on every render whose `dataContext`
|
|
72
|
+
* identity changed, and entry identity is exactly what `MemoBlockSection`'s
|
|
73
|
+
* comparator uses to skip a block subtree. So the decision moves as early as its
|
|
74
|
+
* inputs allow — before any wrapper markup exists — and no earlier.
|
|
75
|
+
*
|
|
76
|
+
* Pure, and memoised by the caller. Failures come back as data so the logging
|
|
77
|
+
* stays at the edge (decision D3), matching `buildPageRenderPlan`.
|
|
78
|
+
*/
|
|
79
|
+
export declare function preparePageRender(input: PreparePageRenderInput): PageRenderPreparation;
|
|
80
|
+
/**
|
|
81
|
+
* The serialisable prop bundle every block component and override receives.
|
|
82
|
+
*
|
|
83
|
+
* Shared by the with-definition and override-without-definition paths, which
|
|
84
|
+
* differ only in the content and resolved data they pass in.
|
|
85
|
+
*/
|
|
86
|
+
export declare function buildBlockOverrideProps(input: Readonly<{
|
|
87
|
+
content: Record<string, unknown>;
|
|
88
|
+
data: Record<string, unknown> | undefined;
|
|
89
|
+
block: PresentationBlock;
|
|
90
|
+
themeResources: PageThemeResources;
|
|
91
|
+
dataContext: PageRendererDataContext | undefined;
|
|
92
|
+
imageResolveContext: ResolveImageUrlContext;
|
|
93
|
+
}>): BlockOverrideProps;
|
|
94
|
+
/** What this render is *about* — the entry, occurrence or surface in scope. */
|
|
95
|
+
export declare function blockSubjectProps(dataContext: PageRendererDataContext | undefined): {
|
|
96
|
+
occurrenceContext: Readonly<{
|
|
97
|
+
id: string;
|
|
98
|
+
seriesId: string;
|
|
99
|
+
startsAt: string;
|
|
100
|
+
endsAt: string;
|
|
101
|
+
timeZone: string;
|
|
102
|
+
capacityOverride?: number | null;
|
|
103
|
+
overrides?: Record<string, unknown> | null;
|
|
104
|
+
}> | null;
|
|
105
|
+
entrySubrouteContext: import("../../core/src/index").EventPageSubrouteContext | null;
|
|
106
|
+
contentEntry: Record<string, unknown> | null;
|
|
107
|
+
pageSurface: Record<string, unknown> | null;
|
|
108
|
+
subject: import("../../core/src/index").EventPageSurfaceSubjectWire | null;
|
|
109
|
+
};
|
|
@@ -4,6 +4,7 @@ import type { Block } from './structure/schema';
|
|
|
4
4
|
export type PageBlockPosition = 'only' | 'first' | 'middle' | 'last';
|
|
5
5
|
export type PageRuntimeBoundary = CompiledBoundaryRuntime<string>;
|
|
6
6
|
export type PageBoundaryWrapper = (boundary: PageRuntimeBoundary, rendered: React.ReactNode) => React.ReactNode;
|
|
7
|
+
export declare const boundaryKey: (previousBlockId: string, nextBlockId: string) => string;
|
|
7
8
|
export declare function isSiteStyleTransitionStyleGroup(value: string | undefined): value is string;
|
|
8
9
|
export declare function boundaryMapForAdjacentBlockIds(boundaries: readonly PageRuntimeBoundary[]): ReadonlyMap<string, PageRuntimeBoundary>;
|
|
9
10
|
export declare function boundaryBetweenBlocks(previousBlock: Block | null, nextBlock: Block | null, boundaries: ReadonlyMap<string, PageRuntimeBoundary>): PageRuntimeBoundary | null;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import type * as React from 'react';
|
|
2
|
+
import type { Theme } from '../../theme-core/src/schema';
|
|
3
|
+
import type { ThemeTokens } from './system/theme';
|
|
4
|
+
import type { SdkCustomBlock } from './system/manifest/schema';
|
|
5
|
+
import type { MediaAssetIndexItem, ResolveImageUrlContext, ResolveImageUrlContextInput } from './system/runtime/nodes/media';
|
|
6
|
+
import type { RouteMap } from './system/transforms';
|
|
7
|
+
import type { BookingOfferingPresetSummary } from './system/blocks/offerings-preview/model';
|
|
8
|
+
/**
|
|
9
|
+
* Occurrence context for event pages.
|
|
10
|
+
* Passed through to blocks that need occurrence information (e.g., event-registration).
|
|
11
|
+
*/
|
|
12
|
+
export type OccurrenceContextData = import('../../core/src/index').EventOccurrenceContextData;
|
|
13
|
+
/**
|
|
14
|
+
* Event-occurrence subroute context.
|
|
15
|
+
*/
|
|
16
|
+
export type EntrySubrouteContextData = import('../../core/src/index').EventPageSubrouteContext;
|
|
17
|
+
/**
|
|
18
|
+
* Props passed to block override components.
|
|
19
|
+
*
|
|
20
|
+
* These props are RSC-safe (no functions) so overrides can be Client Components.
|
|
21
|
+
* Unlike internal SDK block components, overrides don't receive `registry` or
|
|
22
|
+
* `fragmentRegistry` which contain function references that can't cross the
|
|
23
|
+
* RSC serialization boundary.
|
|
24
|
+
*
|
|
25
|
+
* @example
|
|
26
|
+
* ```tsx
|
|
27
|
+
* 'use client';
|
|
28
|
+
*
|
|
29
|
+
* import type { BlockOverrideProps, HeroContent } from '@riverbankcms/sdk/rendering';
|
|
30
|
+
*
|
|
31
|
+
* export function CustomHero({ content, theme, data }: BlockOverrideProps<HeroContent>) {
|
|
32
|
+
* const [expanded, setExpanded] = useState(false);
|
|
33
|
+
* return <div>...</div>;
|
|
34
|
+
* }
|
|
35
|
+
* ```
|
|
36
|
+
*/
|
|
37
|
+
export type BlockOverrideProps<TContent = Record<string, unknown>> = {
|
|
38
|
+
/** Block content data */
|
|
39
|
+
content: TContent;
|
|
40
|
+
/** Theme tokens for styling */
|
|
41
|
+
theme?: ThemeTokens;
|
|
42
|
+
/** Full theme configuration */
|
|
43
|
+
themeConfig?: Theme;
|
|
44
|
+
/** Pre-fetched data from data loaders */
|
|
45
|
+
data?: Record<string, unknown>;
|
|
46
|
+
/** Site UUID (useful for media URL resolution in override components) */
|
|
47
|
+
siteId?: string;
|
|
48
|
+
/** Dashboard API URL for client-side block runtime calls. */
|
|
49
|
+
apiBaseUrl?: string;
|
|
50
|
+
/** Canonical site timezone for calendar/date behavior. */
|
|
51
|
+
bookingTimeZone?: string;
|
|
52
|
+
/** Customer portal token for Bearer-authenticated block runtime calls. */
|
|
53
|
+
portalToken?: string | null;
|
|
54
|
+
/** Preview bearer token for preview-aware block runtime calls. */
|
|
55
|
+
previewToken?: string | null;
|
|
56
|
+
/** Render stage for preview-aware block runtime calls. */
|
|
57
|
+
stage?: 'published' | 'preview';
|
|
58
|
+
/** Event-occurrence context for template-aware block overrides. */
|
|
59
|
+
occurrenceContext?: OccurrenceContextData | null;
|
|
60
|
+
/** Generic entry subroute context for template-aware block overrides. */
|
|
61
|
+
entrySubrouteContext?: EntrySubrouteContextData | null;
|
|
62
|
+
/** Content entry context for template-aware block overrides. */
|
|
63
|
+
contentEntry?: Record<string, unknown> | null;
|
|
64
|
+
/** Native page-surface context for template-aware block overrides. */
|
|
65
|
+
pageSurface?: Record<string, unknown> | null;
|
|
66
|
+
/** Subject descriptor for native page-surface block overrides. */
|
|
67
|
+
subject?: import('../../core/src/index').EventPageSurfaceSubjectWire | null;
|
|
68
|
+
/** Supabase project URL (useful for media URL resolution in override components) */
|
|
69
|
+
supabaseUrl?: string;
|
|
70
|
+
/** Full image-resolution context including canonical media sidecars. */
|
|
71
|
+
imageResolveContext?: ResolveImageUrlContext;
|
|
72
|
+
/** Block instance ID (null for unsaved blocks) */
|
|
73
|
+
blockId: string | null;
|
|
74
|
+
/** Block kind identifier (e.g., "block.hero" or "custom.my-block") */
|
|
75
|
+
blockKind: string;
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* Block override component type.
|
|
79
|
+
*
|
|
80
|
+
* Override components can be either Server Components or Client Components.
|
|
81
|
+
* They receive only serializable props (no functions) to support RSC boundaries.
|
|
82
|
+
*
|
|
83
|
+
* @example Server Component override
|
|
84
|
+
* ```tsx
|
|
85
|
+
* export function CustomHero({ content, theme, data }: BlockOverrideProps<HeroContent>) {
|
|
86
|
+
* return <div className="custom-hero">...</div>;
|
|
87
|
+
* }
|
|
88
|
+
* ```
|
|
89
|
+
*
|
|
90
|
+
* @example Client Component override
|
|
91
|
+
* ```tsx
|
|
92
|
+
* 'use client';
|
|
93
|
+
*
|
|
94
|
+
* export function CustomHero({ content, theme, data }: BlockOverrideProps<HeroContent>) {
|
|
95
|
+
* const [state, setState] = useState(null);
|
|
96
|
+
* return <div className="custom-hero">...</div>;
|
|
97
|
+
* }
|
|
98
|
+
* ```
|
|
99
|
+
*/
|
|
100
|
+
export type BlockOverrideComponent = React.ComponentType<BlockOverrideProps<unknown>>;
|
|
101
|
+
/**
|
|
102
|
+
* Map of block kinds to custom override components.
|
|
103
|
+
* Keys can be either:
|
|
104
|
+
* - Full block kind: "block.hero"
|
|
105
|
+
* - Short form: "hero" (will match "block.hero")
|
|
106
|
+
*
|
|
107
|
+
* @example
|
|
108
|
+
* ```tsx
|
|
109
|
+
* const overrides: BlockOverrides = {
|
|
110
|
+
* 'hero': CustomHero, // CustomHero uses BlockOverrideProps<HeroContent>
|
|
111
|
+
* 'body-text': CustomBodyText, // CustomBodyText uses BlockOverrideProps<BodyTextContent>
|
|
112
|
+
* };
|
|
113
|
+
* ```
|
|
114
|
+
*/
|
|
115
|
+
export type BlockOverrides = Record<string, BlockOverrideComponent>;
|
|
116
|
+
/**
|
|
117
|
+
* SDK site configuration for custom block rendering.
|
|
118
|
+
* Minimal type containing only what PageRenderer needs.
|
|
119
|
+
*/
|
|
120
|
+
export type SdkConfigForRenderer = {
|
|
121
|
+
customBlocks?: SdkCustomBlock[];
|
|
122
|
+
};
|
|
123
|
+
/**
|
|
124
|
+
* Everything a render pass knows that the page outline does not: routing, the
|
|
125
|
+
* subject in scope, session tokens and pre-resolved block data.
|
|
126
|
+
*
|
|
127
|
+
* Lives here rather than in `PageRenderer.tsx` because the preparation pass
|
|
128
|
+
* needs it too, and a type shared by two modules should not be owned by one of
|
|
129
|
+
* them. Not part of the package's public surface — the SDK re-declares its own.
|
|
130
|
+
*/
|
|
131
|
+
export type PageRendererDataContext = {
|
|
132
|
+
siteId?: string;
|
|
133
|
+
pageId?: string;
|
|
134
|
+
resolvedData?: Record<string, Record<string, unknown>>;
|
|
135
|
+
previewStage?: 'published' | 'preview';
|
|
136
|
+
previewToken?: string | null;
|
|
137
|
+
routes?: RouteMap;
|
|
138
|
+
pagesByIdentifier?: Record<string, string>;
|
|
139
|
+
entriesByIdentifier?: Record<string, Record<string, string>>;
|
|
140
|
+
occurrenceContext?: OccurrenceContextData | null;
|
|
141
|
+
entrySubrouteContext?: EntrySubrouteContextData | null;
|
|
142
|
+
contentEntry?: Record<string, unknown> | null;
|
|
143
|
+
pageSurface?: Record<string, unknown> | null;
|
|
144
|
+
subject?: import('../../core/src/index').EventPageSurfaceSubjectWire | null;
|
|
145
|
+
editableRouteMetadataFieldIds?: ReadonlyArray<string> | null;
|
|
146
|
+
supabaseUrl?: string;
|
|
147
|
+
mediaAssets?: readonly MediaAssetIndexItem[];
|
|
148
|
+
imageResolveContext?: ResolveImageUrlContextInput;
|
|
149
|
+
apiBaseUrl?: string;
|
|
150
|
+
portalToken?: string | null;
|
|
151
|
+
bookingOfferingPresets?: readonly BookingOfferingPresetSummary[];
|
|
152
|
+
bookingTimeZone?: string;
|
|
153
|
+
eventRegistrationOverlayEnabled?: boolean;
|
|
154
|
+
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { default as PageRenderer, EditorPageRenderer, MissingBlockOverrideError, } from './PageRenderer';
|
|
2
|
+
export type { RenderAudience as PageRenderAudience } from './pageRenderAudience';
|
|
2
3
|
export type { BlockOverrideComponent, BlockOverrideProps, BlockOverrides, EntrySubrouteContextData, EditorPageRendererProps, OccurrenceContextData, PageBlockRenderAdmissionError, PageBlockPosition, PageRuntimeBoundary, RenderablePageBlock, RenderablePageOutline, SdkConfigForRenderer, } from './PageRenderer';
|
|
3
4
|
export * from './subroutes';
|
|
4
5
|
export { ThemeScope } from '../../theme-core/src/ThemeScope';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PublicEventPricingOption } from '../../../../core/src/index';
|
|
1
2
|
import type { SystemBlockDefinition } from '../registry';
|
|
2
3
|
import type { SectionStylesContent } from '../fields/boxStyles';
|
|
3
4
|
import { type PublicEvent } from './events/shared';
|
|
@@ -77,7 +78,7 @@ export declare const eventRegistrationManifest: import("..").DefinedBlockManifes
|
|
|
77
78
|
}, {
|
|
78
79
|
readonly id: "showCapacity";
|
|
79
80
|
readonly type: "boolean";
|
|
80
|
-
readonly label: "Show available
|
|
81
|
+
readonly label: "Show available places";
|
|
81
82
|
readonly description: "Display remaining capacity";
|
|
82
83
|
readonly required: false;
|
|
83
84
|
readonly defaultValue: true;
|
|
@@ -161,10 +162,9 @@ export type EventRegistrationOptionsResponse = Readonly<{
|
|
|
161
162
|
kind: 'waitlisted';
|
|
162
163
|
}>;
|
|
163
164
|
pricing: Readonly<{
|
|
164
|
-
|
|
165
|
+
strategy: import('../../../../core/src/index').EventPricingStrategy;
|
|
165
166
|
currency: string;
|
|
166
167
|
subtotalCents: number;
|
|
167
|
-
requiresPayment: boolean;
|
|
168
168
|
paymentTerms: BlockBookingPaymentTerms;
|
|
169
169
|
lines: readonly EventRegistrationOptionLine[];
|
|
170
170
|
options: readonly EventRegistrationPricingOption[];
|
|
@@ -215,24 +215,16 @@ export type EventRegistrationOptionLine = Readonly<{
|
|
|
215
215
|
unitPriceCents: number;
|
|
216
216
|
subtotalCents: number;
|
|
217
217
|
}>;
|
|
218
|
-
|
|
218
|
+
/**
|
|
219
|
+
* A pricing option as the registration-options response reports it.
|
|
220
|
+
*
|
|
221
|
+
* It answers to `pricingOptionId` because that is the name the rest of the
|
|
222
|
+
* registration contract uses for this identity — ticket lines, submissions and
|
|
223
|
+
* order items all refer to a pricing option that way — while `id` stays for the
|
|
224
|
+
* row itself.
|
|
225
|
+
*/
|
|
226
|
+
export type EventRegistrationPricingOption = Omit<PublicEventPricingOption, 'id'> & Readonly<{
|
|
219
227
|
pricingOptionId: string;
|
|
220
|
-
label: string;
|
|
221
|
-
description: string | null;
|
|
222
|
-
unitPriceCents: number;
|
|
223
|
-
sortOrder: number;
|
|
224
|
-
capacityLimit: number | null;
|
|
225
|
-
saleStartsAt: string | null;
|
|
226
|
-
saleEndsAt: string | null;
|
|
227
|
-
attendanceScope: 'in_person' | 'online' | 'both';
|
|
228
|
-
availability: Readonly<{
|
|
229
|
-
kind: 'available';
|
|
230
|
-
remainingPlaces: number | null;
|
|
231
|
-
}> | Readonly<{
|
|
232
|
-
kind: 'unavailable';
|
|
233
|
-
reason: 'inactive' | 'notOnSaleYet' | 'saleEnded' | 'soldOut' | 'attendanceModeUnavailable' | 'overallCapacityUnavailable';
|
|
234
|
-
remainingPlaces: number | null;
|
|
235
|
-
}>;
|
|
236
228
|
}>;
|
|
237
229
|
export type EventRegistrationOwnedMembership = Readonly<{
|
|
238
230
|
customerMembershipId: string;
|
|
@@ -27,7 +27,7 @@ export declare const eventCalendarManifest: import("../..").DefinedBlockManifest
|
|
|
27
27
|
readonly required: false;
|
|
28
28
|
readonly multiple: false;
|
|
29
29
|
readonly options: {
|
|
30
|
-
value: "stack" | "
|
|
30
|
+
value: "stack" | "compact" | "grid";
|
|
31
31
|
}[];
|
|
32
32
|
}, {
|
|
33
33
|
readonly id: "defaultCalendarView";
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { type CalendarDate } from '../../../../../../calendar/src/index';
|
|
3
|
+
import { type BookingTimeZone } from '../../../../../../core/src/index';
|
|
4
|
+
import type { PublicEvent } from './types';
|
|
5
|
+
export type CalendarReadProfile = 'listing-card' | 'timetable';
|
|
6
|
+
export declare function resolveCalendarReadProfile(content: {
|
|
7
|
+
variant?: unknown;
|
|
8
|
+
displayMode?: unknown;
|
|
9
|
+
}): CalendarReadProfile;
|
|
10
|
+
/** Runtime picker sentinels and bound loader IDs must describe the same query. */
|
|
11
|
+
export declare function normalizeCalendarFilterId(value: string | undefined): string | undefined;
|
|
12
|
+
export declare const CALENDAR_SSR_PAGE_SIZE = 100;
|
|
13
|
+
export declare const CALENDAR_CLIENT_PAGE_SIZE = 200;
|
|
14
|
+
export declare const calendarMonthSchema: z.ZodString;
|
|
15
|
+
export declare function calendarMonthDate(month: string): CalendarDate;
|
|
16
|
+
export declare function calendarMonthKey(date: CalendarDate): string;
|
|
17
|
+
export declare const calendarMonthWindowSchema: z.ZodObject<{
|
|
18
|
+
startMonth: z.ZodString;
|
|
19
|
+
endMonthExclusive: z.ZodString;
|
|
20
|
+
}, z.core.$strip>;
|
|
21
|
+
export type CalendarMonthWindow = z.infer<typeof calendarMonthWindowSchema>;
|
|
22
|
+
export declare const calendarWindowQuerySchema: z.ZodObject<{
|
|
23
|
+
startMonth: z.ZodOptional<z.ZodString>;
|
|
24
|
+
endMonthExclusive: z.ZodOptional<z.ZodString>;
|
|
25
|
+
afterStartsAt: z.ZodOptional<z.ZodString>;
|
|
26
|
+
afterId: z.ZodOptional<z.ZodString>;
|
|
27
|
+
limit: z.ZodDefault<z.ZodCoercedNumber<unknown>>;
|
|
28
|
+
stage: z.ZodDefault<z.ZodEnum<{
|
|
29
|
+
published: "published";
|
|
30
|
+
preview: "preview";
|
|
31
|
+
}>>;
|
|
32
|
+
readProfile: z.ZodOptional<z.ZodEnum<{
|
|
33
|
+
"listing-card": "listing-card";
|
|
34
|
+
timetable: "timetable";
|
|
35
|
+
}>>;
|
|
36
|
+
eventSurface: z.ZodOptional<z.ZodEnum<{
|
|
37
|
+
custom: "custom";
|
|
38
|
+
all: "all";
|
|
39
|
+
regularClassSchedule: "regularClassSchedule";
|
|
40
|
+
specialDatedEvents: "specialDatedEvents";
|
|
41
|
+
}>>;
|
|
42
|
+
eventPresets: z.ZodOptional<z.ZodString>;
|
|
43
|
+
scheduleScope: z.ZodOptional<z.ZodEnum<{
|
|
44
|
+
any: "any";
|
|
45
|
+
recurring: "recurring";
|
|
46
|
+
oneOff: "oneOff";
|
|
47
|
+
}>>;
|
|
48
|
+
categoryIds: z.ZodOptional<z.ZodString>;
|
|
49
|
+
venueId: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string | undefined, string>>>;
|
|
50
|
+
staffMemberId: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string | undefined, string>>>;
|
|
51
|
+
}, z.core.$strip>;
|
|
52
|
+
export type CalendarWindowQuery = z.infer<typeof calendarWindowQuerySchema>;
|
|
53
|
+
export type CalendarWindowRequest = Omit<CalendarWindowQuery, 'limit' | 'stage'> & Partial<Pick<CalendarWindowQuery, 'limit' | 'stage'>>;
|
|
54
|
+
export type CalendarFilterInput = Pick<CalendarWindowQuery, 'eventSurface' | 'eventPresets' | 'scheduleScope' | 'categoryIds' | 'venueId' | 'staffMemberId' | 'readProfile'>;
|
|
55
|
+
/** Pagination and window bounds deliberately do not change the query's identity. */
|
|
56
|
+
export declare function calendarQueryKey(siteId: string, stage: string | undefined, filters: CalendarFilterInput): string;
|
|
57
|
+
export declare function calendarWindowMonths(window: CalendarMonthWindow): string[];
|
|
58
|
+
export declare function calendarWindowBounds(window: CalendarMonthWindow, timeZone: BookingTimeZone): Readonly<{
|
|
59
|
+
startInclusive: string;
|
|
60
|
+
endExclusive: string;
|
|
61
|
+
}>;
|
|
62
|
+
export declare function resolveCalendarWindow(query: CalendarWindowQuery, now: Date, timeZone: BookingTimeZone): CalendarMonthWindow;
|
|
63
|
+
export declare const calendarSourceCursorSchema: z.ZodObject<{
|
|
64
|
+
startsAt: z.ZodString;
|
|
65
|
+
occurrenceId: z.ZodString;
|
|
66
|
+
}, z.core.$strip>;
|
|
67
|
+
export type CalendarSourceCursor = z.infer<typeof calendarSourceCursorSchema>;
|
|
68
|
+
export declare const calendarPageProgressSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
69
|
+
kind: z.ZodLiteral<"complete">;
|
|
70
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
71
|
+
kind: z.ZodLiteral<"partial">;
|
|
72
|
+
nextCursor: z.ZodObject<{
|
|
73
|
+
startsAt: z.ZodString;
|
|
74
|
+
occurrenceId: z.ZodString;
|
|
75
|
+
}, z.core.$strip>;
|
|
76
|
+
}, z.core.$strip>], "kind">;
|
|
77
|
+
export type CalendarPageProgress = z.infer<typeof calendarPageProgressSchema>;
|
|
78
|
+
export type CalendarWindowPage = Readonly<{
|
|
79
|
+
scope: Readonly<{
|
|
80
|
+
key: string;
|
|
81
|
+
timeZone: BookingTimeZone;
|
|
82
|
+
}>;
|
|
83
|
+
window: CalendarMonthWindow;
|
|
84
|
+
initialToday: CalendarDate;
|
|
85
|
+
events: PublicEvent[];
|
|
86
|
+
}> & CalendarPageProgress;
|
|
87
|
+
export declare function calendarPageResponseError(page: CalendarWindowPage, expected: Readonly<{
|
|
88
|
+
key: string;
|
|
89
|
+
timeZone: BookingTimeZone;
|
|
90
|
+
window: CalendarMonthWindow;
|
|
91
|
+
cursor?: CalendarSourceCursor;
|
|
92
|
+
}>): 'scopeMismatch' | 'nonAdvancingCursor' | null;
|
|
93
|
+
export declare const calendarWindowPageSchema: z.ZodType<CalendarWindowPage>;
|
|
94
|
+
/** Split missing months without bridging covered months or exceeding the wire cap. */
|
|
95
|
+
export declare function planCalendarMonthRanges(months: readonly string[]): CalendarMonthWindow[];
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run grouping for the canonical public Event contract.
|
|
3
|
+
*
|
|
4
|
+
* `listPublicEvents` answers either of two questions. A page of dates returns a
|
|
5
|
+
* whole-series run once per occurrence that landed on the page; a run-oriented
|
|
6
|
+
* read (`readIntent: 'runs'`) returns one representative row per run. Both
|
|
7
|
+
* carry the same complete `run` facts, so a surface that shows one item per run
|
|
8
|
+
* groups whichever it was given here rather than deriving its own idea of what
|
|
9
|
+
* a run is.
|
|
10
|
+
*
|
|
11
|
+
* A surface may hold both kinds of result at once — a registration page loads
|
|
12
|
+
* its dates and its runs separately — so rows are collapsed by series and, for
|
|
13
|
+
* safety, deduplicated by occurrence.
|
|
14
|
+
*/
|
|
15
|
+
import type { PublicEvent, PublicWholeSeriesRun } from './types';
|
|
16
|
+
/** A `PublicEvent` narrowed to the whole-series arm of the union. */
|
|
17
|
+
export type WholeSeriesPublicEvent = Extract<PublicEvent, {
|
|
18
|
+
bookingScope: 'whole_series';
|
|
19
|
+
}>;
|
|
20
|
+
/** A single whole-series run with the occurrences that carried it. */
|
|
21
|
+
export type PublicEventRunGroup = Readonly<{
|
|
22
|
+
eventSeriesId: string;
|
|
23
|
+
run: PublicWholeSeriesRun;
|
|
24
|
+
/** Occurrence rows for the run, in the order they arrived. */
|
|
25
|
+
occurrences: readonly WholeSeriesPublicEvent[];
|
|
26
|
+
/** The first occurrence row, which carries the run's shared booking facts. */
|
|
27
|
+
representative: WholeSeriesPublicEvent;
|
|
28
|
+
}>;
|
|
29
|
+
export declare function isWholeSeriesPublicEvent(event: PublicEvent): event is WholeSeriesPublicEvent;
|
|
30
|
+
/**
|
|
31
|
+
* Group events into one entry per whole-series run.
|
|
32
|
+
*
|
|
33
|
+
* Single-occurrence events are ignored. Run order follows first appearance, so
|
|
34
|
+
* a caller's sort survives the grouping, and an occurrence that arrives twice
|
|
35
|
+
* is kept once.
|
|
36
|
+
*/
|
|
37
|
+
export declare function groupPublicEventsByRun(events: readonly PublicEvent[]): readonly PublicEventRunGroup[];
|