@riverbankcms/sdk 0.67.0 → 0.70.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/README.md +21 -11
- package/dist/_dts/api/src/accessAdmin.d.ts +3 -3
- package/dist/_dts/api/src/admin/types.d.ts +1 -1
- package/dist/_dts/api/src/aiPlayground.d.ts +13 -39
- package/dist/_dts/api/src/appointmentSetup.d.ts +4 -0
- package/dist/_dts/api/src/billing.d.ts +7 -40
- package/dist/_dts/api/src/bookingConfig.d.ts +2 -2
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +4 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +32 -1
- package/dist/_dts/api/src/bookingRecords.d.ts +1 -1
- package/dist/_dts/api/src/bookings.d.ts +1 -1
- package/dist/_dts/api/src/commercePortalEndpoints.d.ts +1 -1
- package/dist/_dts/api/src/communications.d.ts +1 -1
- package/dist/_dts/api/src/contentRuntime.d.ts +2 -2
- package/dist/_dts/api/src/contentTypes.d.ts +1 -1
- package/dist/_dts/api/src/endpoints.d.ts +7 -0
- package/dist/_dts/api/src/navigation/contracts.d.ts +9 -9
- package/dist/_dts/api/src/navigation/linkValue.d.ts +1 -1
- package/dist/_dts/api/src/navigation/types.d.ts +1 -1
- package/dist/_dts/api/src/public/index.d.ts +2 -2
- package/dist/_dts/api/src/public/types.d.ts +3 -3
- package/dist/_dts/api/src/sdkConfig/contracts.d.ts +1 -2
- package/dist/_dts/api/src/sdkContracts.d.ts +1 -1
- package/dist/_dts/api/src/siteBanner.d.ts +9 -9
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +2 -2
- package/dist/_dts/api/src/siteOnboarding.d.ts +1 -1
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +1 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +5 -5
- package/dist/_dts/api/src/siteSettings.d.ts +3 -3
- package/dist/_dts/api/src/teamMembers.d.ts +1 -1
- package/dist/_dts/api/src/types.d.ts +1 -1
- package/dist/_dts/api/src/url.d.ts +1 -1
- package/dist/_dts/billing/src/components/index.d.ts +484 -0
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +1 -1
- package/dist/_dts/block-form/src/backend/types.d.ts +2 -2
- package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +2 -2
- package/dist/_dts/block-form/src/context/ImageResolveContext.d.ts +1 -1
- package/dist/_dts/block-form/src/fields/types.d.ts +1 -1
- package/dist/_dts/block-form/src/manifest/ManifestForm.d.ts +1 -1
- package/dist/_dts/block-form/src/manifest/canonicalValidation.d.ts +1 -1
- package/dist/_dts/block-form/src/manifest/manifestFormAdapter.d.ts +1 -1
- package/dist/_dts/block-form/src/manifest/mergeManifestWithSdkOptions.d.ts +1 -1
- package/dist/_dts/block-form/src/sdk-config/SdkConfigContext.d.ts +1 -1
- package/dist/_dts/block-form/src/shared/disclosure.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientWidget.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/DateField/datePickerPopover.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/components/RepeaterLayoutGrid.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/components/layoutGridDomain.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/hooks/useRepeaterPointerDragCapability.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterDndDomain.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/utils/repeaterPresentation.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RepeaterField/utils/resolveThumbnail.d.ts +1 -1
- package/dist/_dts/block-form/src/widgets/RichTextField/richTextFieldSchema.d.ts +4 -4
- package/dist/_dts/block-form/src/widgets/constants.d.ts +1 -1
- package/dist/_dts/blocks/src/PageRenderer.d.ts +5 -1
- package/dist/_dts/blocks/src/bindings/index.d.ts +2 -2
- package/dist/_dts/blocks/src/client.d.ts +11 -3
- package/dist/_dts/blocks/src/index.d.ts +28 -27
- package/dist/_dts/blocks/src/portal/types.d.ts +1 -1
- package/dist/_dts/blocks/src/primitives/content/components/Button.d.ts +1 -1
- package/dist/_dts/blocks/src/rendering/server.d.ts +1 -1
- package/dist/_dts/blocks/src/server.d.ts +1 -1
- package/dist/_dts/blocks/src/structure/schema.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +1666 -1666
- package/dist/_dts/blocks/src/system/blocks/blog-post.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/cart.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/collection.d.ts +1666 -1666
- package/dist/_dts/blocks/src/system/blocks/columns.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/courses/shared/pricing.d.ts +3 -2
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +42 -42
- package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +1764 -1764
- package/dist/_dts/blocks/src/system/blocks/events/shared/filtering.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +44 -44
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/image-gallery.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +9 -9
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +139 -139
- package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +19 -19
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +1665 -1665
- package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +3 -3
- package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/video-grid.d.ts +1 -1
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +1 -1
- package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/facets.d.ts +5 -5
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +1 -1
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +1 -1
- package/dist/_dts/blocks/src/system/fragments/library/card.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/fragments/library/ctaRow.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/fragments/library/feedbackCallout.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/fragments/library/heroCtaRow.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/fragments/library/sectionState.d.ts +1761 -1761
- package/dist/_dts/blocks/src/system/frame/frameStyles.d.ts +3 -3
- package/dist/_dts/blocks/src/system/helpers/resolveBackground.d.ts +2 -2
- package/dist/_dts/blocks/src/system/manifest/augmentManifest.d.ts +1 -1
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +201 -201
- package/dist/_dts/blocks/src/system/media/constrainedVideoMedia.d.ts +1 -1
- package/dist/_dts/blocks/src/system/media/slotContracts.d.ts +1 -1
- package/dist/_dts/blocks/src/system/node/fragments/ctaButton.d.ts +1 -1
- package/dist/_dts/blocks/src/system/node/fragments/typography.d.ts +1 -1
- package/dist/_dts/blocks/src/system/node/schema.d.ts +5 -5
- package/dist/_dts/blocks/src/system/registry.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/header/shared.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableDates.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableSlots.d.ts +3 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.d.ts +140 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessBookingFlow.state.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useVisibleTabPolling.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/accordion.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/accordion.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.default-ui.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.headless.state.d.ts +500 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.reserved-fields.d.ts +27 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.state.d.ts +15 -8
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/timetableModel.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/location-map.shared.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/LeafletStaticMap.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/shared/bookingPaymentOptionCopy.d.ts +1 -1
- package/dist/_dts/blocks/src/system/theme/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +3 -3
- package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
- package/dist/_dts/content-editor/src/components/ContentFieldsForm.d.ts +3 -3
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +3 -3
- package/dist/_dts/content-editor/src/controller/buildBlockPublishedBaselines.d.ts +2 -2
- package/dist/_dts/content-editor/src/controller/buildPublishSuccessTransition.d.ts +2 -2
- package/dist/_dts/content-editor/src/controller/deriveRecoveryConflict.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/invalidBlockRecovery.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/seedDraftBaselinesFromBlocks.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/useBlocksList.d.ts +1 -1
- package/dist/_dts/content-editor/src/controller/useEntrySyncHelpers.d.ts +3 -3
- package/dist/_dts/content-editor/src/controller/useInvalidBlockRecovery.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/blockedPublishPlan.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +2 -2
- package/dist/_dts/content-editor/src/hooks/useStoreAutosave.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/validateBlocksForPublish.d.ts +1 -1
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +1 -1
- package/dist/_dts/content-editor/src/primitives/PreviewTextEditor.d.ts +1 -1
- package/dist/_dts/content-editor/src/registry.d.ts +1 -1
- package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +2 -2
- package/dist/_dts/content-editor/src/types.d.ts +2 -2
- package/dist/_dts/content-editor/src/ui/blockValidationView.d.ts +3 -3
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +1 -1
- package/dist/_dts/content-editor/src/ui/stores/types.d.ts +1 -1
- package/dist/_dts/content-editor/src/ui/stores/utils.d.ts +1 -1
- package/dist/_dts/content-model/src/content-types/schema.d.ts +8 -8
- package/dist/_dts/core/src/branded.d.ts +2 -0
- package/dist/_dts/core/src/index.d.ts +2 -0
- package/dist/_dts/core/src/planner.d.ts +64 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +17 -18
- package/dist/_dts/db/src/schemas/forms.d.ts +62 -62
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +5 -5
- package/dist/_dts/editor-blocks/src/BlockForm.d.ts +5 -5
- package/dist/_dts/editor-blocks/src/FormProvider.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +6 -6
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockListContext.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockPickerDialog.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockThumbnail.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/BlockTile.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/EnhancedBlockPickerDialog.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/blockDiscovery.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/buildInsertBlockHistoryCommand.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockBaselineSync.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useDraftContent.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/preparedManifest.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/sdkBlockMerger.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/settingsIntent.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-form/debug.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/blockPayload.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/index.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/media/MediaField.d.ts +6 -6
- package/dist/_dts/editor-blocks/src/widgets/button/ButtonField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/button/ButtonVariantField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/button/context.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/button/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/content-type-select/ContentTypeSelectField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/EntryPickerField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/EntryPickerWidgetProvider.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/loaders.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/entry-picker/types.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/icon-picker/IconPickerField.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/link/LinkField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/link/LinkPicker.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/widgets/link/LinkPickerDialog.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/link/LinkSummary.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/link/LinkWidget.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/widgets/link/LinkWidgetContext.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/link/loaders.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/widgets/link/types.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/link/utils.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/reference/ReferenceField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/reference/ReferenceWidgetProvider.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/reference/dynamicAdapters.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/reference/loaders.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/widgets/reference/types.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextField.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextWidgetProvider.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/ensureRichTextImageAssetIdentifier.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/richTextImageHydration.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/shared/Combobox.d.ts +1 -1
- package/dist/_dts/media-core/src/fileAssetCompatibility.d.ts +1 -1
- package/dist/_dts/media-core/src/fileAssetDeletion.d.ts +1 -1
- package/dist/_dts/media-core/src/fileDomain.d.ts +1 -1
- package/dist/_dts/media-core/src/fileDownloadResolution.d.ts +1 -1
- package/dist/_dts/media-core/src/filePersistence.d.ts +1 -1
- package/dist/_dts/media-core/src/fileStorage.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadAssetBuilder.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadCleanup.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadCompletion.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadDurableFinalization.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadFinalization.d.ts +1 -1
- package/dist/_dts/media-core/src/fileUploadSessionCreation.d.ts +1 -1
- package/dist/_dts/media-core/src/types.d.ts +2 -2
- package/dist/_dts/media-core/src/url.d.ts +1 -1
- package/dist/_dts/media-core/src/videoPrep.d.ts +1 -1
- package/dist/_dts/media-editor/src/CropDialog.d.ts +1 -1
- package/dist/_dts/media-editor/src/MediaEditor.d.ts +2 -2
- package/dist/_dts/media-editor/src/MediaPickerDialog.d.ts +1 -1
- package/dist/_dts/media-editor/src/context.d.ts +3 -3
- package/dist/_dts/media-editor/src/createMediaEditorProvider.d.ts +1 -1
- package/dist/_dts/media-editor/src/cropEditorSource.d.ts +1 -1
- package/dist/_dts/media-editor/src/debug.d.ts +1 -1
- package/dist/_dts/media-editor/src/provider.d.ts +3 -3
- package/dist/_dts/media-editor/src/runtimeMediaAssetState.d.ts +1 -1
- package/dist/_dts/media-editor/src/transformModel.d.ts +1 -1
- package/dist/_dts/media-editor/src/types.d.ts +2 -2
- package/dist/_dts/media-editor/src/utils.d.ts +1 -1
- package/dist/_dts/media-react/src/components/ImageCropper.d.ts +1 -1
- package/dist/_dts/media-react/src/components/cropDraftModel.d.ts +1 -1
- package/dist/_dts/media-react/src/components/cropGeometry.d.ts +1 -1
- package/dist/_dts/media-react/src/components/cropSessionState.d.ts +1 -1
- package/dist/_dts/media-react/src/components/useImageCropperController.d.ts +1 -1
- package/dist/_dts/media-react/src/ffmpegLoader.d.ts +1 -1
- package/dist/_dts/media-react/src/hooks/internal/classification.d.ts +1 -1
- package/dist/_dts/media-react/src/hooks/mediaAssetResponseMapper.d.ts +1 -1
- package/dist/_dts/media-react/src/hooks/useApiMediaUploader.d.ts +4 -4
- package/dist/_dts/media-react/src/utils/rotation.d.ts +1 -1
- package/dist/_dts/media-react/src/videoFrameExtraction.d.ts +1 -1
- package/dist/_dts/media-react/src/videoPrepBrowser.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/BoundaryControl.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/composePageFromBlocks.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/blocks/customizeFacetControls.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/editorRegistry.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/previewCustomizeActions.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/aiProposalProjection.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/applyPreviewProjections.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/types.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/OnboardingThemeSwitcher.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/PageDesignEditorStateContext.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewAuthBanner.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +9 -9
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorUI.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +8 -8
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +8 -8
- package/dist/_dts/preview-next/src/client/preview/PreviewViewportControls.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewZoomControls.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +4 -4
- package/dist/_dts/preview-next/src/client/preview/pageSchema.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/previewChromeSurface.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/previewChromeSurfacePolicy.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeHistory.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeRuntimePatch.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/previewSurface.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/sidebarTabPreference.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +4 -4
- package/dist/_dts/preview-next/src/client/preview/subrouteNotice.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/themeOverlay.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/sdk/SdkPreviewMode.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/widgets/PreviewMediaField.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/widgets/widgetAdapters.d.ts +3 -3
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +3 -3
- package/dist/_dts/sdk/src/bookings/index.d.ts +6 -2
- package/dist/_dts/sdk/src/bookings/types.d.ts +16 -8
- package/dist/_dts/sdk/src/cli/commands/push/scopes/commandBackedDatedOfferingScope.d.ts +32 -0
- package/dist/_dts/sdk/src/cli/commands/push/scopes/types.d.ts +5 -1
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/env.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergePush.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/push-config.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/site-commands/commandKeys.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntime.d.ts +43 -13
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntimeCompat.d.ts +21 -0
- package/dist/_dts/sdk/src/cli/site-commands/commandSurfaceDispatch.d.ts +27 -0
- package/dist/_dts/sdk/src/cli/site-commands/datedOfferingCommands.d.ts +56 -0
- package/dist/_dts/sdk/src/cli/site-commands/entryCommands.d.ts +5 -3
- package/dist/_dts/sdk/src/cli/site-commands/footerCommands.d.ts +9 -3
- package/dist/_dts/sdk/src/cli/site-commands/formCommands.d.ts +6 -10
- package/dist/_dts/sdk/src/cli/site-commands/index.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/site-commands/navigationCommands.d.ts +6 -10
- package/dist/_dts/sdk/src/cli/site-commands/pageCommands.d.ts +6 -10
- package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +14 -68
- package/dist/_dts/sdk/src/cli/site-commands/pushExecutionPlan.d.ts +8 -0
- package/dist/_dts/sdk/src/cli/site-commands/pushExecutionTypes.d.ts +97 -0
- package/dist/_dts/sdk/src/cli/site-commands/residualSettingsTrimming.d.ts +15 -0
- package/dist/_dts/sdk/src/cli/sync/index.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/sync/syncResultAggregation.d.ts +4 -0
- package/dist/_dts/sdk/src/config/validation.d.ts +37 -43
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +1 -1
- package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +19 -19
- package/dist/_dts/sdk/src/portal/config.d.ts +1 -1
- package/dist/_dts/sdk/src/portal/index.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/client/index.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/client/runtime.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/constants.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/cookies.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/index.d.ts +2 -2
- package/dist/_dts/sdk/src/preview-next/middleware.d.ts +1 -1
- package/dist/_dts/sdk/src/preview-next/session.d.ts +1 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +18 -4
- package/dist/_dts/sdk/src/rendering/islands/blocksContracts.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +3 -3
- package/dist/_dts/sdk/src/rendering/overrides.d.ts +2 -0
- package/dist/_dts/sdk/src/spam-protection/index.d.ts +3 -3
- package/dist/_dts/sdk/src/theme-bridge/ThemeBridgeProvider.d.ts +6 -6
- package/dist/_dts/sdk/src/theme-bridge/generateCssVars.d.ts +4 -12
- package/dist/_dts/sdk/src/theme-bridge/index.d.ts +1 -1
- package/dist/_dts/sdk/src/theme-bridge/types.d.ts +17 -9
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/adapter.d.ts +1 -1
- package/dist/_dts/site-commands/src/commands.d.ts +292 -34
- package/dist/_dts/site-commands/src/domain.d.ts +3 -3
- package/dist/_dts/site-commands/src/exposure.d.ts +3 -3
- package/dist/_dts/site-commands/src/index.d.ts +1 -0
- package/dist/_dts/site-commands/src/metadata.d.ts +79 -1
- package/dist/_dts/site-commands/src/planner.d.ts +1 -1
- package/dist/_dts/site-commands/src/refContributions.d.ts +1 -0
- package/dist/_dts/site-commands/src/refs.d.ts +8 -2
- package/dist/_dts/{sdk/src/cli/merge-remote → site-commands/src}/stableJson.d.ts +2 -0
- package/dist/_dts/theme-core/src/accordions/types.d.ts +9 -9
- package/dist/_dts/theme-core/src/blocks/index.d.ts +2 -2
- package/dist/_dts/theme-core/src/blocks/types.d.ts +3 -2
- package/dist/_dts/theme-core/src/buttons/personalities/brushed-wash.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/confident-chip.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/editorial-link.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +35 -35
- package/dist/_dts/theme-core/src/buttons/personalities/ink-stamp.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/pebble.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/showtime-pill.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/soft-pill.d.ts +5 -5
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +7 -7
- package/dist/_dts/theme-core/src/buttons/types.d.ts +18 -18
- package/dist/_dts/theme-core/src/cards/types.d.ts +17 -17
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/inputs/types.d.ts +13 -13
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +351 -351
- package/dist/_dts/theme-core/src/navigation/types.d.ts +15 -15
- package/dist/_dts/theme-core/src/palette/recipes/allRecipes.d.ts +1 -1
- package/dist/_dts/theme-core/src/palette/variants/brand-led.d.ts +24 -24
- package/dist/_dts/theme-core/src/palette/variants/high-contrast.d.ts +18 -18
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +65 -65
- package/dist/_dts/theme-core/src/palette/variants/soft-natural.d.ts +18 -18
- package/dist/_dts/theme-core/src/palette/variants/types.d.ts +7 -7
- package/dist/_dts/theme-core/src/palette/variants/warm-neutral.d.ts +18 -18
- package/dist/_dts/theme-core/src/progress/generateProgressCss.d.ts +2 -1
- package/dist/_dts/theme-core/src/recommend/generateThemes.d.ts +1 -1
- package/dist/_dts/theme-core/src/runtime/buildThemeRuntimeFromBridge.d.ts +32 -21
- package/dist/_dts/theme-core/src/schema.d.ts +568 -568
- package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +34 -34
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -4
- package/dist/_dts/theme-core/src/site-styles/pageDesignAuthority.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/siteStyleBlockPolicies.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +14 -14
- package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +4 -4
- package/dist/_dts/theme-core/src/status/generateStatusCss.d.ts +2 -1
- package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +5 -5
- package/dist/_dts/ui/src/badge.d.ts +1 -1
- package/dist/_dts/ui/src/button.d.ts +2 -2
- package/dist/_dts/ui/src/card.d.ts +1 -1
- package/dist/_dts/ui/src/color-picker.d.ts +1 -1
- package/dist/_dts/ui/src/surface.d.ts +2 -2
- package/dist/_dts/ui/src/toggle.d.ts +4 -4
- package/dist/cli/index.mjs +5910 -4824
- package/dist/client/bookings.mjs +5149 -3320
- package/dist/client/client.mjs +11643 -11031
- package/dist/client/hooks.mjs +5764 -3868
- package/dist/client/rendering/client.mjs +4317 -3724
- package/dist/client/rendering/islands.mjs +4087 -3494
- package/dist/client/rendering.mjs +4499 -3885
- package/dist/preview-next/before-render.mjs +14 -0
- package/dist/preview-next/client/runtime.mjs +2927 -2292
- package/dist/preview-next/middleware.mjs +14 -0
- package/dist/server/components.mjs +536 -368
- package/dist/server/config-validation.mjs +6886 -4910
- package/dist/server/config.mjs +6876 -4909
- package/dist/server/data.mjs +5764 -3868
- package/dist/server/index.mjs +174 -1762
- package/dist/server/next.mjs +6393 -5024
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +540 -370
- package/dist/server/rendering.mjs +540 -370
- package/dist/server/routing.mjs +10389 -6835
- package/dist/server/server.mjs +5701 -3805
- package/dist/server/theme-bridge.mjs +1558 -4902
- package/dist/styles/index.css +38 -38
- package/package.json +1 -3
- package/dist/_dts/blocks/src/system/runtime/components/booking/DateTimeSelectionStep.d.ts +0 -18
- package/dist/_dts/blocks/src/system/runtime/components/booking/PaymentOptionSelectionStep.d.ts +0 -9
- package/dist/_dts/blocks/src/system/runtime/components/booking/ServiceResourceSelector.d.ts +0 -44
- package/dist/_dts/blocks/src/system/runtime/components/booking/ServiceResourceSelector.state.d.ts +0 -23
- package/dist/_dts/blocks/src/system/runtime/components/booking/ServiceSelectionStep.d.ts +0 -18
- package/dist/_dts/blocks/src/system/runtime/components/booking/slotDisplay.d.ts +0 -2
- package/dist/_dts/blocks/src/system/runtime/components/multi-step/MultiStepForm.d.ts +0 -21
- package/dist/_dts/blocks/src/system/runtime/components/multi-step/useMultiStep.d.ts +0 -15
- package/dist/_dts/blocks/src/system/runtime/components/multi-step/useMultiStep.state.d.ts +0 -51
- package/dist/_dts/blocks/src/system/runtime/hooks/useBookingSteps.d.ts +0 -22
|
@@ -0,0 +1,500 @@
|
|
|
1
|
+
import type { AppointmentResourceId, AppointmentServiceId, Brand, CustomerPassId, FormId, PassId, SiteId } from "../../../../../core/src/index";
|
|
2
|
+
import type { BlockApiConfig, EligibleAppointmentPackage } from "../api/types";
|
|
3
|
+
import type { TimeSlot } from "../api/types";
|
|
4
|
+
import type { BookingFormConfig, BookingFormData, BookingFormField, BookingPaymentStepResolution, BookingFormServicesSource, BookingFormService, BookingSelectedCollectionOptionKind, BookingSubmissionData } from "./booking-form.state";
|
|
5
|
+
export type LoadState<T> = Readonly<{
|
|
6
|
+
tag: "idle";
|
|
7
|
+
}> | Readonly<{
|
|
8
|
+
tag: "loading";
|
|
9
|
+
}> | Readonly<{
|
|
10
|
+
tag: "loaded";
|
|
11
|
+
value: T;
|
|
12
|
+
}> | Readonly<{
|
|
13
|
+
tag: "error";
|
|
14
|
+
message: string;
|
|
15
|
+
}>;
|
|
16
|
+
export type BookingFlowStepId = "service-selection" | "datetime-selection" | "payment-selection" | "custom-fields";
|
|
17
|
+
export type BookingFlowStepState = "complete" | "active" | "available" | "blocked" | "hidden";
|
|
18
|
+
export type BookingFlowStep = Readonly<{
|
|
19
|
+
id: BookingFlowStepId;
|
|
20
|
+
label: string;
|
|
21
|
+
state: BookingFlowStepState;
|
|
22
|
+
index: number;
|
|
23
|
+
visibleIndex: number | null;
|
|
24
|
+
errors: BookingValidationErrors;
|
|
25
|
+
canEnter: boolean;
|
|
26
|
+
canLeave: boolean;
|
|
27
|
+
}>;
|
|
28
|
+
export type BookingValidationErrors = Readonly<{
|
|
29
|
+
formError: string | null;
|
|
30
|
+
fieldErrors: Readonly<Record<string, string>>;
|
|
31
|
+
}>;
|
|
32
|
+
export type BookingFieldId = Brand<string, "BookingFieldId">;
|
|
33
|
+
export declare const asBookingFieldId: (id: string) => BookingFieldId;
|
|
34
|
+
export type BookingFieldValue = string | number | boolean | readonly string[] | null;
|
|
35
|
+
export type BookingSlotView = Readonly<{
|
|
36
|
+
key: string;
|
|
37
|
+
startAt: string;
|
|
38
|
+
endAt: string;
|
|
39
|
+
resourceId: AppointmentResourceId;
|
|
40
|
+
resourceName?: string;
|
|
41
|
+
label?: string;
|
|
42
|
+
}>;
|
|
43
|
+
export type BookingSlotSelection = Readonly<{
|
|
44
|
+
startAt: string;
|
|
45
|
+
endAt: string;
|
|
46
|
+
resourceId: string;
|
|
47
|
+
resourceName?: string;
|
|
48
|
+
label?: string;
|
|
49
|
+
}>;
|
|
50
|
+
export type BookingResourceView = Readonly<{
|
|
51
|
+
id: AppointmentResourceId;
|
|
52
|
+
label: string;
|
|
53
|
+
}>;
|
|
54
|
+
export type BookingFlowFeedback = Readonly<{
|
|
55
|
+
kind: "none";
|
|
56
|
+
}> | Readonly<{
|
|
57
|
+
kind: "success";
|
|
58
|
+
message: string;
|
|
59
|
+
resourceName: string | null;
|
|
60
|
+
}> | Readonly<{
|
|
61
|
+
kind: "error";
|
|
62
|
+
scope: "submission" | "verification" | "discount" | "altcha" | "availability" | "payment";
|
|
63
|
+
message: string;
|
|
64
|
+
}> | Readonly<{
|
|
65
|
+
kind: "info";
|
|
66
|
+
scope: "verification" | "payment";
|
|
67
|
+
message: string;
|
|
68
|
+
}>;
|
|
69
|
+
export type AvailabilitySelectionInvalidation = Readonly<{
|
|
70
|
+
kind: "preserve";
|
|
71
|
+
}> | Readonly<{
|
|
72
|
+
kind: "date_unavailable";
|
|
73
|
+
message: string;
|
|
74
|
+
}> | Readonly<{
|
|
75
|
+
kind: "slot_unavailable";
|
|
76
|
+
message: string;
|
|
77
|
+
}>;
|
|
78
|
+
export type BookingFlowStatus = Readonly<{
|
|
79
|
+
tag: "ready";
|
|
80
|
+
}> | Readonly<{
|
|
81
|
+
tag: "submitting";
|
|
82
|
+
}> | Readonly<{
|
|
83
|
+
tag: "success";
|
|
84
|
+
resourceName: string | null;
|
|
85
|
+
}> | Readonly<{
|
|
86
|
+
tag: "error";
|
|
87
|
+
message: string;
|
|
88
|
+
}>;
|
|
89
|
+
export type BookingFlowView = Readonly<{
|
|
90
|
+
kind: "missing";
|
|
91
|
+
message: string;
|
|
92
|
+
}> | Readonly<{
|
|
93
|
+
kind: "form";
|
|
94
|
+
}> | Readonly<{
|
|
95
|
+
kind: "success";
|
|
96
|
+
message: string;
|
|
97
|
+
resourceName: string | null;
|
|
98
|
+
}> | Readonly<{
|
|
99
|
+
kind: "error";
|
|
100
|
+
message: string;
|
|
101
|
+
}>;
|
|
102
|
+
export type BookingFlowActionResult = Readonly<{
|
|
103
|
+
ok: true;
|
|
104
|
+
}> | Readonly<{
|
|
105
|
+
ok: false;
|
|
106
|
+
reason: "validation-failed";
|
|
107
|
+
errors: BookingValidationErrors;
|
|
108
|
+
}> | Readonly<{
|
|
109
|
+
ok: false;
|
|
110
|
+
reason: "blocked";
|
|
111
|
+
message: string;
|
|
112
|
+
}> | Readonly<{
|
|
113
|
+
ok: false;
|
|
114
|
+
reason: "submission-failed";
|
|
115
|
+
message: string;
|
|
116
|
+
}>;
|
|
117
|
+
export type BookingSubmitOptions = Readonly<{
|
|
118
|
+
/**
|
|
119
|
+
* Checkout return URLs apply only to standard paid bookings. Appointment
|
|
120
|
+
* package submissions complete directly through the portal booking API and
|
|
121
|
+
* intentionally ignore these URLs.
|
|
122
|
+
*/
|
|
123
|
+
redirect?: "manual" | "auto";
|
|
124
|
+
successUrl?: string;
|
|
125
|
+
cancelUrl?: string;
|
|
126
|
+
}>;
|
|
127
|
+
export type BookingSubmitActionResult = Readonly<{
|
|
128
|
+
ok: true;
|
|
129
|
+
outcome: {
|
|
130
|
+
kind: "booked";
|
|
131
|
+
appointmentId: string;
|
|
132
|
+
resourceName: string | null;
|
|
133
|
+
};
|
|
134
|
+
}> | Readonly<{
|
|
135
|
+
ok: true;
|
|
136
|
+
outcome: {
|
|
137
|
+
kind: "checkout_redirect";
|
|
138
|
+
checkoutUrl: string;
|
|
139
|
+
};
|
|
140
|
+
}> | Exclude<BookingFlowActionResult, Readonly<{
|
|
141
|
+
ok: true;
|
|
142
|
+
}>>;
|
|
143
|
+
export type BookingFieldView = Readonly<{
|
|
144
|
+
field: BookingFormField;
|
|
145
|
+
id: BookingFieldId;
|
|
146
|
+
label: string;
|
|
147
|
+
type: BookingFormField["type"];
|
|
148
|
+
value: BookingFieldValue;
|
|
149
|
+
required: boolean;
|
|
150
|
+
error: string | null;
|
|
151
|
+
helpText: string | null;
|
|
152
|
+
inputId: string;
|
|
153
|
+
labelId: string;
|
|
154
|
+
helpTextId: string | null;
|
|
155
|
+
errorId: string | null;
|
|
156
|
+
describedBy: string | undefined;
|
|
157
|
+
ariaInvalid: boolean;
|
|
158
|
+
}>;
|
|
159
|
+
export type BookingFlowReducerState = Readonly<{
|
|
160
|
+
currentStepId: BookingFlowStepId;
|
|
161
|
+
selectedServiceId?: AppointmentServiceId;
|
|
162
|
+
selectedResourceId?: AppointmentResourceId;
|
|
163
|
+
selectedDate?: string;
|
|
164
|
+
selectedSlot: BookingSlotView | null;
|
|
165
|
+
fieldValues: Readonly<Record<string, BookingFieldValue>>;
|
|
166
|
+
touchedFields: Readonly<Record<string, boolean>>;
|
|
167
|
+
discountCode: string;
|
|
168
|
+
selectedCollectionOptionKind?: BookingSelectedCollectionOptionKind;
|
|
169
|
+
selectedAppointmentPackageId?: CustomerPassId;
|
|
170
|
+
altchaSolution: string | null;
|
|
171
|
+
validationErrors: BookingValidationErrors;
|
|
172
|
+
feedback: BookingFlowFeedback;
|
|
173
|
+
isSubmitting: boolean;
|
|
174
|
+
}>;
|
|
175
|
+
export type BookingFlowEvent = Readonly<{
|
|
176
|
+
type: "service-selected";
|
|
177
|
+
serviceId: AppointmentServiceId;
|
|
178
|
+
}> | Readonly<{
|
|
179
|
+
type: "resource-selected";
|
|
180
|
+
resourceId: AppointmentResourceId | null;
|
|
181
|
+
}> | Readonly<{
|
|
182
|
+
type: "date-selected";
|
|
183
|
+
date: string | null;
|
|
184
|
+
}> | Readonly<{
|
|
185
|
+
type: "slot-selected";
|
|
186
|
+
slot: BookingSlotView | null;
|
|
187
|
+
}> | Readonly<{
|
|
188
|
+
type: "field-updated";
|
|
189
|
+
fieldId: BookingFieldId;
|
|
190
|
+
value: BookingFieldValue;
|
|
191
|
+
}> | Readonly<{
|
|
192
|
+
type: "field-touched";
|
|
193
|
+
fieldId: BookingFieldId;
|
|
194
|
+
}> | Readonly<{
|
|
195
|
+
type: "payment-option-selected";
|
|
196
|
+
kind: BookingSelectedCollectionOptionKind | null;
|
|
197
|
+
}> | Readonly<{
|
|
198
|
+
type: "appointment-package-selected";
|
|
199
|
+
packageId: CustomerPassId | null;
|
|
200
|
+
}> | Readonly<{
|
|
201
|
+
type: "discount-code-changed";
|
|
202
|
+
code: string;
|
|
203
|
+
}> | Readonly<{
|
|
204
|
+
type: "altcha-solution-set";
|
|
205
|
+
solution: string | null;
|
|
206
|
+
}> | Readonly<{
|
|
207
|
+
type: "altcha-solution-invalidated";
|
|
208
|
+
}> | Readonly<{
|
|
209
|
+
type: "step-changed";
|
|
210
|
+
stepId: BookingFlowStepId;
|
|
211
|
+
}> | Readonly<{
|
|
212
|
+
type: "validation-errors-set";
|
|
213
|
+
errors: BookingValidationErrors;
|
|
214
|
+
}> | Readonly<{
|
|
215
|
+
type: "feedback-set";
|
|
216
|
+
feedback: BookingFlowFeedback;
|
|
217
|
+
}> | Readonly<{
|
|
218
|
+
type: "availability-selection-invalidated";
|
|
219
|
+
invalidation: Exclude<AvailabilitySelectionInvalidation, {
|
|
220
|
+
kind: "preserve";
|
|
221
|
+
}>;
|
|
222
|
+
}> | Readonly<{
|
|
223
|
+
type: "feedback-cleared";
|
|
224
|
+
}> | Readonly<{
|
|
225
|
+
type: "submission-started";
|
|
226
|
+
}> | Readonly<{
|
|
227
|
+
type: "submission-finished";
|
|
228
|
+
}> | Readonly<{
|
|
229
|
+
type: "reset";
|
|
230
|
+
initial: BookingFlowReducerState;
|
|
231
|
+
}>;
|
|
232
|
+
export type BuildBookingStepPlanInput = Readonly<{
|
|
233
|
+
form: BookingFormConfig | null;
|
|
234
|
+
services: readonly BookingFormService[];
|
|
235
|
+
data: Partial<BookingFormData>;
|
|
236
|
+
defaultServiceId?: AppointmentServiceId;
|
|
237
|
+
defaultResourceId?: AppointmentResourceId;
|
|
238
|
+
requiresServiceSelection?: boolean;
|
|
239
|
+
requiresResourceSelection?: boolean;
|
|
240
|
+
enableAppointmentPackages?: boolean;
|
|
241
|
+
}>;
|
|
242
|
+
export type BookingStepPlanItem = Readonly<{
|
|
243
|
+
id: BookingFlowStepId;
|
|
244
|
+
label: string;
|
|
245
|
+
visible: boolean;
|
|
246
|
+
}>;
|
|
247
|
+
export type BookingStepValidationResult = Readonly<{
|
|
248
|
+
ok: true;
|
|
249
|
+
}> | Readonly<{
|
|
250
|
+
ok: false;
|
|
251
|
+
errors: BookingValidationErrors;
|
|
252
|
+
}>;
|
|
253
|
+
export type DeriveBookingFlowStepsInput = Readonly<{
|
|
254
|
+
form: BookingFormConfig | null;
|
|
255
|
+
services: readonly BookingFormService[];
|
|
256
|
+
data: Partial<BookingFormData>;
|
|
257
|
+
defaultServiceId?: AppointmentServiceId;
|
|
258
|
+
defaultResourceId?: AppointmentResourceId;
|
|
259
|
+
currentStepId: BookingFlowStepId;
|
|
260
|
+
requiresServiceSelection?: boolean;
|
|
261
|
+
requiresResourceSelection?: boolean;
|
|
262
|
+
enableAppointmentPackages?: boolean;
|
|
263
|
+
}>;
|
|
264
|
+
export type DerivedBookingFlowSteps = Readonly<{
|
|
265
|
+
steps: readonly BookingFlowStep[];
|
|
266
|
+
currentStepIndex: number;
|
|
267
|
+
currentStep: BookingFlowStep | null;
|
|
268
|
+
stepIds: readonly BookingFlowStepId[];
|
|
269
|
+
validations: ReadonlyMap<BookingFlowStepId, BookingStepValidationResult>;
|
|
270
|
+
}>;
|
|
271
|
+
export type BookingAvailabilityQuery = Readonly<{
|
|
272
|
+
ok: true;
|
|
273
|
+
key: string;
|
|
274
|
+
serviceId: AppointmentServiceId;
|
|
275
|
+
resourceId?: AppointmentResourceId;
|
|
276
|
+
selectedDate?: string;
|
|
277
|
+
timezone: string;
|
|
278
|
+
}> | Readonly<{
|
|
279
|
+
ok: false;
|
|
280
|
+
reason: "missing-service" | "missing-date";
|
|
281
|
+
key: string;
|
|
282
|
+
}>;
|
|
283
|
+
export type BookingSubmitRedirectMode = "manual" | "auto";
|
|
284
|
+
export type BookingSubmitPlan = Readonly<{
|
|
285
|
+
ok: true;
|
|
286
|
+
redirect: BookingSubmitRedirectMode;
|
|
287
|
+
value: BookingSubmissionData;
|
|
288
|
+
}> | Readonly<{
|
|
289
|
+
ok: false;
|
|
290
|
+
errors: BookingValidationErrors;
|
|
291
|
+
message: string;
|
|
292
|
+
}>;
|
|
293
|
+
export type BookingAppointmentPackagesModel = Readonly<{
|
|
294
|
+
kind: "disabled";
|
|
295
|
+
enabled: false;
|
|
296
|
+
canLoad: false;
|
|
297
|
+
unavailableReason: "disabled";
|
|
298
|
+
state: Readonly<{
|
|
299
|
+
tag: "idle";
|
|
300
|
+
}>;
|
|
301
|
+
items: readonly [];
|
|
302
|
+
selected: null;
|
|
303
|
+
}> | Readonly<{
|
|
304
|
+
kind: "unavailable";
|
|
305
|
+
enabled: true;
|
|
306
|
+
canLoad: false;
|
|
307
|
+
unavailableReason: "missing-portal-auth" | "missing-priced-service";
|
|
308
|
+
state: Readonly<{
|
|
309
|
+
tag: "idle";
|
|
310
|
+
}>;
|
|
311
|
+
items: readonly [];
|
|
312
|
+
selected: null;
|
|
313
|
+
}> | Readonly<{
|
|
314
|
+
kind: "idle";
|
|
315
|
+
enabled: true;
|
|
316
|
+
canLoad: true;
|
|
317
|
+
unavailableReason: null;
|
|
318
|
+
state: Readonly<{
|
|
319
|
+
tag: "idle";
|
|
320
|
+
}>;
|
|
321
|
+
items: readonly [];
|
|
322
|
+
selected: null;
|
|
323
|
+
}> | Readonly<{
|
|
324
|
+
kind: "loading";
|
|
325
|
+
enabled: true;
|
|
326
|
+
canLoad: true;
|
|
327
|
+
unavailableReason: null;
|
|
328
|
+
state: Readonly<{
|
|
329
|
+
tag: "loading";
|
|
330
|
+
}>;
|
|
331
|
+
items: readonly [];
|
|
332
|
+
selected: null;
|
|
333
|
+
}> | Readonly<{
|
|
334
|
+
kind: "error";
|
|
335
|
+
enabled: true;
|
|
336
|
+
canLoad: true;
|
|
337
|
+
unavailableReason: null;
|
|
338
|
+
state: Readonly<{
|
|
339
|
+
tag: "error";
|
|
340
|
+
message: string;
|
|
341
|
+
}>;
|
|
342
|
+
items: readonly [];
|
|
343
|
+
selected: null;
|
|
344
|
+
}> | Readonly<{
|
|
345
|
+
kind: "ready";
|
|
346
|
+
enabled: true;
|
|
347
|
+
canLoad: true;
|
|
348
|
+
unavailableReason: null;
|
|
349
|
+
state: Readonly<{
|
|
350
|
+
tag: "loaded";
|
|
351
|
+
value: readonly HeadlessEligibleAppointmentPackage[];
|
|
352
|
+
}>;
|
|
353
|
+
items: readonly HeadlessEligibleAppointmentPackage[];
|
|
354
|
+
selected: HeadlessEligibleAppointmentPackage | null;
|
|
355
|
+
}>;
|
|
356
|
+
export type BookingAppointmentPackagesUnavailableReason = "disabled" | "missing-portal-auth" | "missing-priced-service";
|
|
357
|
+
export type AppointmentBookingOverrideData = Readonly<{
|
|
358
|
+
form?: BookingFormConfig | Record<string, unknown> | null;
|
|
359
|
+
services?: BookingFormServicesSource | Record<string, unknown> | null;
|
|
360
|
+
}>;
|
|
361
|
+
export type AppointmentBookingOverrideContent = Readonly<{
|
|
362
|
+
formId?: string;
|
|
363
|
+
serviceId?: string;
|
|
364
|
+
resourceId?: string;
|
|
365
|
+
requiresServiceSelection?: boolean;
|
|
366
|
+
requiresResourceSelection?: boolean;
|
|
367
|
+
shouldAutoSelectSingleResource?: boolean;
|
|
368
|
+
spamProtectionEnabled?: boolean;
|
|
369
|
+
successMessage?: string;
|
|
370
|
+
}>;
|
|
371
|
+
export type AppointmentBookingOverridePropsLike = Readonly<{
|
|
372
|
+
content?: AppointmentBookingOverrideContent | null;
|
|
373
|
+
data?: AppointmentBookingOverrideData | Record<string, unknown> | null;
|
|
374
|
+
siteId?: string;
|
|
375
|
+
apiBaseUrl?: string;
|
|
376
|
+
portalToken?: string | null;
|
|
377
|
+
blockId?: string | null;
|
|
378
|
+
}>;
|
|
379
|
+
export type AppointmentBookingOverrideInput = Readonly<{
|
|
380
|
+
siteId: SiteId;
|
|
381
|
+
apiBaseUrl: string;
|
|
382
|
+
portalToken: string | null;
|
|
383
|
+
formId: FormId;
|
|
384
|
+
form: BookingFormConfig;
|
|
385
|
+
services: readonly BookingFormService[];
|
|
386
|
+
initialServiceId?: AppointmentServiceId;
|
|
387
|
+
initialResourceId?: AppointmentResourceId;
|
|
388
|
+
requiresServiceSelection: boolean;
|
|
389
|
+
requiresResourceSelection: boolean;
|
|
390
|
+
shouldAutoSelectSingleResource: boolean;
|
|
391
|
+
spamProtectionEnabled?: boolean;
|
|
392
|
+
successMessage?: string;
|
|
393
|
+
blockId?: string | null;
|
|
394
|
+
}>;
|
|
395
|
+
export type HeadlessEligibleAppointmentPackage = Omit<EligibleAppointmentPackage, "customerPassId" | "passId"> & Readonly<{
|
|
396
|
+
customerPassId: CustomerPassId;
|
|
397
|
+
passId: PassId;
|
|
398
|
+
}>;
|
|
399
|
+
export type AppointmentBookingOverrideInputResult = Readonly<{
|
|
400
|
+
ok: true;
|
|
401
|
+
value: AppointmentBookingOverrideInput;
|
|
402
|
+
}> | Readonly<{
|
|
403
|
+
ok: false;
|
|
404
|
+
reason: "missing-site-id" | "missing-api-base-url" | "missing-form" | "missing-form-id" | "missing-services";
|
|
405
|
+
message: string;
|
|
406
|
+
}>;
|
|
407
|
+
export declare function createEmptyBookingValidationErrors(): BookingValidationErrors;
|
|
408
|
+
export declare function createFormBookingValidationError(formError: string): BookingValidationErrors;
|
|
409
|
+
export declare function createFieldBookingValidationErrors(fieldErrors: Readonly<Record<string, string>>): BookingValidationErrors;
|
|
410
|
+
export declare function hasBookingValidationErrors(errors: BookingValidationErrors): boolean;
|
|
411
|
+
export declare function createInitialBookingFlowReducerState(input: Readonly<{
|
|
412
|
+
defaultServiceId?: string;
|
|
413
|
+
defaultResourceId?: string;
|
|
414
|
+
initialData?: Partial<BookingFormData>;
|
|
415
|
+
}>): BookingFlowReducerState;
|
|
416
|
+
export declare function toOptionalAppointmentServiceId(value: string | undefined): AppointmentServiceId | undefined;
|
|
417
|
+
export declare function toOptionalAppointmentResourceId(value: string | undefined): AppointmentResourceId | undefined;
|
|
418
|
+
export declare function bookingFlowReducer(state: BookingFlowReducerState, event: BookingFlowEvent): BookingFlowReducerState;
|
|
419
|
+
export declare function resolveAvailabilitySelectionInvalidation(input: Readonly<{
|
|
420
|
+
selectedDate?: string;
|
|
421
|
+
selectedSlot: BookingSlotView | null;
|
|
422
|
+
availableDates: readonly string[];
|
|
423
|
+
slots: readonly BookingSlotView[];
|
|
424
|
+
}>): AvailabilitySelectionInvalidation;
|
|
425
|
+
export declare function toBookingSlotView(slot: BookingSlotSelection): BookingSlotView;
|
|
426
|
+
export declare function toBookingSlotViews(slots: readonly TimeSlot[]): BookingSlotView[];
|
|
427
|
+
export declare function toBookingFormData(state: BookingFlowReducerState): BookingFormData;
|
|
428
|
+
export declare function buildBookingStepPlan(input: BuildBookingStepPlanInput): readonly BookingStepPlanItem[];
|
|
429
|
+
export declare function validateBookingStep(input: Readonly<{
|
|
430
|
+
stepId: BookingFlowStepId;
|
|
431
|
+
form: BookingFormConfig | null;
|
|
432
|
+
services: readonly BookingFormService[];
|
|
433
|
+
data: Partial<BookingFormData>;
|
|
434
|
+
defaultServiceId?: string;
|
|
435
|
+
defaultResourceId?: string;
|
|
436
|
+
requiresResourceSelection?: boolean;
|
|
437
|
+
paymentResolution?: BookingPaymentStepResolution;
|
|
438
|
+
}>): BookingStepValidationResult;
|
|
439
|
+
export declare function validateBookingFields(input: Readonly<{
|
|
440
|
+
fields: readonly BookingFormField[];
|
|
441
|
+
values: Readonly<Record<string, unknown>>;
|
|
442
|
+
}>): Record<string, string>;
|
|
443
|
+
export declare function validateBookingField(field: BookingFormField, value: unknown): string | null;
|
|
444
|
+
export declare function deriveBookingFlowSteps(input: DeriveBookingFlowStepsInput): DerivedBookingFlowSteps;
|
|
445
|
+
export declare function buildBookingAvailabilityQuery(input: Readonly<{
|
|
446
|
+
serviceId?: AppointmentServiceId;
|
|
447
|
+
resourceId?: AppointmentResourceId;
|
|
448
|
+
selectedDate?: string;
|
|
449
|
+
timezone: string;
|
|
450
|
+
requireDate?: boolean;
|
|
451
|
+
}>): BookingAvailabilityQuery;
|
|
452
|
+
export declare function deriveBookingFieldViews(input: Readonly<{
|
|
453
|
+
form: BookingFormConfig | null;
|
|
454
|
+
values: Readonly<Record<string, BookingFieldValue>>;
|
|
455
|
+
errors: Readonly<Record<string, string>>;
|
|
456
|
+
touched?: Readonly<Record<string, boolean>>;
|
|
457
|
+
idPrefix: string;
|
|
458
|
+
}>): readonly BookingFieldView[];
|
|
459
|
+
export declare function buildBookingSubmitPlan(input: Readonly<{
|
|
460
|
+
formId: FormId;
|
|
461
|
+
form: BookingFormConfig | null;
|
|
462
|
+
state: BookingFlowReducerState;
|
|
463
|
+
services: readonly BookingFormService[];
|
|
464
|
+
defaultServiceId?: AppointmentServiceId;
|
|
465
|
+
defaultResourceId?: AppointmentResourceId;
|
|
466
|
+
requiresResourceSelection?: boolean;
|
|
467
|
+
altchaSolution?: string | null;
|
|
468
|
+
viewerTimeZone: string;
|
|
469
|
+
redirect: BookingSubmitRedirectMode;
|
|
470
|
+
successUrl?: string;
|
|
471
|
+
cancelUrl?: string;
|
|
472
|
+
}>): BookingSubmitPlan;
|
|
473
|
+
export declare function getAppointmentBookingOverrideInput(props: AppointmentBookingOverridePropsLike): AppointmentBookingOverrideInputResult;
|
|
474
|
+
export declare function createBookingBlockApiConfig(input: Readonly<{
|
|
475
|
+
siteId: string;
|
|
476
|
+
apiBaseUrl: string;
|
|
477
|
+
portalToken?: string | null;
|
|
478
|
+
}>): BlockApiConfig;
|
|
479
|
+
export declare function resolveHeadlessBookingSelectedService(input: Readonly<{
|
|
480
|
+
state: BookingFlowReducerState;
|
|
481
|
+
services: readonly BookingFormService[];
|
|
482
|
+
defaultServiceId?: string;
|
|
483
|
+
}>): BookingFormService | null;
|
|
484
|
+
export declare function resolveAppointmentPackagesModel(input: Readonly<{
|
|
485
|
+
enabled: boolean;
|
|
486
|
+
canLoad: boolean;
|
|
487
|
+
unavailableReason: BookingAppointmentPackagesUnavailableReason | null;
|
|
488
|
+
state: LoadState<readonly EligibleAppointmentPackage[]>;
|
|
489
|
+
items: readonly EligibleAppointmentPackage[];
|
|
490
|
+
selected: EligibleAppointmentPackage | null;
|
|
491
|
+
}>): BookingAppointmentPackagesModel;
|
|
492
|
+
export declare function resolveHeadlessBookingStatus(input: Readonly<{
|
|
493
|
+
feedback: BookingFlowFeedback;
|
|
494
|
+
isSubmitting: boolean;
|
|
495
|
+
}>): BookingFlowStatus;
|
|
496
|
+
export declare function resolveHeadlessBookingView(input: Readonly<{
|
|
497
|
+
form: BookingFormConfig | null;
|
|
498
|
+
feedback: BookingFlowFeedback;
|
|
499
|
+
}>): BookingFlowView;
|
|
500
|
+
export declare function describeUnknownError(error: unknown, fallback: string): string;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare const APPOINTMENT_BOOKING_BLOCK_ID: "block.appointment-booking";
|
|
2
|
+
export declare const BOOKING_FORM_DATA_RESERVED_KEY_VALUES: readonly ["serviceId", "resourceId", "selectedDate", "selectedSlot", "discountCode", "selectedCollectionOptionKind", "selectedAppointmentPackageId"];
|
|
3
|
+
export type BookingFormDataReservedKey = (typeof BOOKING_FORM_DATA_RESERVED_KEY_VALUES)[number];
|
|
4
|
+
export type BookingReservedFieldCollision = Readonly<{
|
|
5
|
+
fieldId: BookingFormDataReservedKey;
|
|
6
|
+
message: string;
|
|
7
|
+
}>;
|
|
8
|
+
type FieldWithId = Readonly<{
|
|
9
|
+
id: string;
|
|
10
|
+
}>;
|
|
11
|
+
type BookingSchemaWithFields = Readonly<{
|
|
12
|
+
fields?: readonly FieldWithId[];
|
|
13
|
+
}>;
|
|
14
|
+
export declare const BOOKING_FORM_DATA_RESERVED_KEYS: ReadonlySet<string>;
|
|
15
|
+
export declare function isBookingFormDataReservedKey(value: string): value is BookingFormDataReservedKey;
|
|
16
|
+
export declare function formatBookingFormDataReservedFieldMessage(fieldId: BookingFormDataReservedKey): string;
|
|
17
|
+
export declare function formatBookingReservedFieldCollisionMessages(collisions: readonly BookingReservedFieldCollision[]): string;
|
|
18
|
+
/**
|
|
19
|
+
* Finds custom booking form fields that collide with runtime-owned data keys.
|
|
20
|
+
*
|
|
21
|
+
* Results preserve first-seen field order, are deduplicated by field ID, and
|
|
22
|
+
* use exact case-sensitive matching because the runtime stores JavaScript
|
|
23
|
+
* object keys without case normalization.
|
|
24
|
+
*/
|
|
25
|
+
export declare function findBookingFormDataReservedFieldCollisions(fields: readonly FieldWithId[]): BookingReservedFieldCollision[];
|
|
26
|
+
export declare function collectBookingReservedFieldCollisions(schema: BookingSchemaWithFields, settings: unknown): BookingReservedFieldCollision[];
|
|
27
|
+
export {};
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import type { BlockBookingPaymentTerms } from "../../blocks/shared/bookingPaymentTerms";
|
|
2
2
|
import type { AppointmentBookingStatusResponse } from "../api/types";
|
|
3
|
+
import type { BookingFormDataReservedKey } from "./booking-form.reserved-fields";
|
|
4
|
+
export { APPOINTMENT_BOOKING_BLOCK_ID, BOOKING_FORM_DATA_RESERVED_KEYS, BOOKING_FORM_DATA_RESERVED_KEY_VALUES, collectBookingReservedFieldCollisions, findBookingFormDataReservedFieldCollisions, formatBookingReservedFieldCollisionMessages, formatBookingFormDataReservedFieldMessage, isBookingFormDataReservedKey, type BookingFormDataReservedKey, type BookingReservedFieldCollision, } from "./booking-form.reserved-fields";
|
|
3
5
|
export type BookingFormFieldOption = Readonly<{
|
|
4
6
|
value: string;
|
|
5
7
|
label: string;
|
|
@@ -50,6 +52,7 @@ export type BookingFormSourceRecord = Readonly<{
|
|
|
50
52
|
createdAt: string;
|
|
51
53
|
updatedAt: string;
|
|
52
54
|
}>;
|
|
55
|
+
export type BookingFormConfigSource = BookingFormConfig | BookingFormSourceRecord | Readonly<Record<string, unknown>>;
|
|
53
56
|
type BlockBookingPaymentTermsAvailability = Readonly<{
|
|
54
57
|
kind: "available";
|
|
55
58
|
paymentTerms: BlockBookingPaymentTerms;
|
|
@@ -73,7 +76,10 @@ export type BookingFormServicesSource = readonly BookingFormService[] | Readonly
|
|
|
73
76
|
services?: readonly BookingFormService[];
|
|
74
77
|
}> | Readonly<Record<string, BookingFormService>>;
|
|
75
78
|
export type BookingSelectedCollectionOptionKind = "upfront" | "deferred_manual" | "instalment_plan" | "flexible_balance";
|
|
76
|
-
|
|
79
|
+
type BookingCustomFieldData<TCustomFieldId extends string> = Readonly<{
|
|
80
|
+
[K in TCustomFieldId as K extends BookingFormDataReservedKey ? never : K]?: unknown;
|
|
81
|
+
}>;
|
|
82
|
+
export type BookingFormData<TCustomFieldId extends string = never> = Readonly<{
|
|
77
83
|
serviceId?: string;
|
|
78
84
|
resourceId?: string;
|
|
79
85
|
selectedDate?: string;
|
|
@@ -81,7 +87,8 @@ export type BookingFormData = Readonly<{
|
|
|
81
87
|
discountCode?: string;
|
|
82
88
|
selectedCollectionOptionKind?: BookingSelectedCollectionOptionKind;
|
|
83
89
|
selectedAppointmentPackageId?: string;
|
|
84
|
-
}> &
|
|
90
|
+
}> & BookingCustomFieldData<TCustomFieldId>;
|
|
91
|
+
type RuntimeBookingFormData = BookingFormData<string>;
|
|
85
92
|
type BookingSubmissionCommon = Readonly<{
|
|
86
93
|
formId: string;
|
|
87
94
|
serviceId: string;
|
|
@@ -196,23 +203,24 @@ export declare function deriveBookingFormViewState(input: Readonly<{
|
|
|
196
203
|
verificationState: AppointmentCheckoutVerificationState;
|
|
197
204
|
}>): BookingFormViewState;
|
|
198
205
|
export declare function resolveBookingSiteId(siteId: string | undefined, form: BookingFormSourceRecord | null | undefined): string;
|
|
199
|
-
export declare function normalizeBookingFormConfig(form:
|
|
200
|
-
export declare function normalizeBookingServices(services:
|
|
206
|
+
export declare function normalizeBookingFormConfig(form: unknown): BookingFormConfig | null;
|
|
207
|
+
export declare function normalizeBookingServices(services: unknown): readonly BookingFormService[];
|
|
208
|
+
export declare function toSelectedCollectionOptionKind(value: unknown): BookingSelectedCollectionOptionKind | undefined;
|
|
201
209
|
export declare function getBookingServicePaymentSelectionMode(service: BookingFormService | undefined): BookingPaymentSelectionMode;
|
|
202
210
|
export declare function resolveDefaultBookingServiceId(formConfig: BookingFormConfig | null | undefined, services: readonly BookingFormService[]): string | null;
|
|
203
211
|
export declare function resolveBookingSelectedService(input: Readonly<{
|
|
204
|
-
data: Partial<
|
|
212
|
+
data: Partial<RuntimeBookingFormData>;
|
|
205
213
|
services: readonly BookingFormService[];
|
|
206
214
|
defaultServiceId?: string | null;
|
|
207
215
|
}>): BookingFormService | null;
|
|
208
216
|
export declare function resolveBookingPaymentStep(input: Readonly<{
|
|
209
|
-
data: Partial<
|
|
217
|
+
data: Partial<RuntimeBookingFormData>;
|
|
210
218
|
services: readonly BookingFormService[];
|
|
211
219
|
defaultServiceId?: string | null;
|
|
212
220
|
}>): BookingPaymentStepResolution;
|
|
213
221
|
export declare function prepareBookingSubmission(input: Readonly<{
|
|
214
222
|
formId: string;
|
|
215
|
-
data:
|
|
223
|
+
data: RuntimeBookingFormData;
|
|
216
224
|
services: readonly BookingFormService[];
|
|
217
225
|
defaultServiceId?: string | null;
|
|
218
226
|
defaultResourceId?: string | null;
|
|
@@ -221,4 +229,3 @@ export declare function prepareBookingSubmission(input: Readonly<{
|
|
|
221
229
|
}>): BookingSubmissionPreparationResult;
|
|
222
230
|
export declare function formatBookingSubmissionPreparationError(error: BookingSubmissionPreparationError): string;
|
|
223
231
|
export declare function getBookingSuccessMessage(successMessage: string | null | undefined): string;
|
|
224
|
-
export {};
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* categoryColor with theme fallback). Renderers (WeekTimetableView,
|
|
7
7
|
* EventCalendar.server) consume this shape.
|
|
8
8
|
*/
|
|
9
|
-
import { type WeekStart } from '
|
|
9
|
+
import { type WeekStart } from '../../../../../../../calendar/src/index';
|
|
10
10
|
import type { PublicEvent } from '../../../../blocks/events/shared/types';
|
|
11
11
|
export type TimetableEventCell = {
|
|
12
12
|
event: PublicEvent;
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import type { CardOrientation, EventLayout, PublicEvent } from '../../../../blocks/events/shared/types';
|
|
5
5
|
/** Day names starting from Sunday — kept for back-compat re-export. */
|
|
6
|
-
export { DAY_NAMES, MONTH_NAMES } from '
|
|
7
|
-
export type { WeekStart } from '
|
|
6
|
+
export { DAY_NAMES, MONTH_NAMES } from '../../../../../../../calendar/src/index';
|
|
7
|
+
export type { WeekStart } from '../../../../../../../calendar/src/index';
|
|
8
8
|
/** Column class mappings for grid layouts */
|
|
9
9
|
export declare const COLUMN_CLASSES: Record<string, string>;
|
|
10
10
|
/**
|
|
@@ -46,7 +46,7 @@ export declare function formatEventDateParts(args: {
|
|
|
46
46
|
};
|
|
47
47
|
export declare function formatTeamMemberNames(names: readonly string[]): string | null;
|
|
48
48
|
export declare function formatEventTeacherLine(event: PublicEvent): string | null;
|
|
49
|
-
export { addMonths, formatCalendarTitle, formatDateKey, getEndOfMonth, getMonthCalendarDays, getOrderedDayNames, getStartOfMonth, getThreeMonthRange, getWeekCalendarDays, isToday, MAX_EVENTS_PER_DAY, } from '
|
|
49
|
+
export { addMonths, formatCalendarTitle, formatDateKey, getEndOfMonth, getMonthCalendarDays, getOrderedDayNames, getStartOfMonth, getThreeMonthRange, getWeekCalendarDays, isToday, MAX_EVENTS_PER_DAY, } from '../../../../../../../calendar/src/index';
|
|
50
50
|
/**
|
|
51
51
|
* Group events by their local date (YYYY-MM-DD key in each event's own
|
|
52
52
|
* timezone). Thin domain wrapper over `groupItemsByDate` from the calendar
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type AddressedLocationValue, type LocationCoordinates } from '
|
|
1
|
+
import { type AddressedLocationValue, type LocationCoordinates } from '../../../../../core/src/index';
|
|
2
2
|
export declare const LOCATION_MAP_DEFAULTS: {
|
|
3
3
|
readonly zoom: 15;
|
|
4
4
|
readonly heightPx: 320;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
import { type ResolvedMediaTransform, type DirectImageUrlOptions } from '
|
|
2
|
+
import { type ResolvedMediaTransform, type DirectImageUrlOptions } from '../../../../../media-core/src/index';
|
|
3
3
|
import type { Media } from '../../../lib/media';
|
|
4
4
|
/**
|
|
5
5
|
* Options for image URL resolution.
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Loads Leaflet CSS/JS from CDN to avoid bundling in the blocks package.
|
|
6
6
|
*/
|
|
7
7
|
import React from 'react';
|
|
8
|
-
import type { LocationCoordinates } from '
|
|
8
|
+
import type { LocationCoordinates } from '../../../../../../core/src/index';
|
|
9
9
|
type LeafletStaticMapProps = {
|
|
10
10
|
location: LocationCoordinates;
|
|
11
11
|
label?: string;
|