@riverbankcms/sdk 0.80.0 → 0.81.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/dist/{PreviewEditorSidebar-QZG37QIF.mjs → PreviewEditorSidebar-RDCMEXIJ.mjs} +763 -255
- package/dist/{PreviewEditorUI-AXIKSMZA.mjs → PreviewEditorUI-NYGQ6K7B.mjs} +170 -29
- package/dist/SdkPreviewModeRuntime-AKCSCZEC.mjs +8 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +12 -0
- package/dist/_dts/api/src/contentTypes.d.ts +6 -0
- package/dist/_dts/api/src/index.d.ts +2 -2
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +53 -0
- package/dist/_dts/block-form/src/backend/store-backend.d.ts +3 -1
- package/dist/_dts/block-form/src/backend/types.d.ts +3 -3
- package/dist/_dts/blocks/src/PageRenderer.d.ts +3 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +20 -28
- package/dist/_dts/blocks/src/index.d.ts +6 -4
- package/dist/_dts/blocks/src/primitives/content/components/Text.d.ts +1 -1
- package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +1 -0
- package/dist/_dts/blocks/src/server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +3 -2
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +135 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +5 -0
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/form.d.ts +20 -1
- package/dist/_dts/blocks/src/system/blocks/hero.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +19 -0
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +134 -0
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +1 -0
- package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +13 -3
- package/dist/_dts/blocks/src/system/data/index.d.ts +2 -0
- package/dist/_dts/blocks/src/system/data/linkedContentEntries.d.ts +64 -0
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +2 -2
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +6 -1
- package/dist/_dts/blocks/src/system/fragments/library/faqHeading.d.ts +0 -1
- package/dist/_dts/blocks/src/system/media/slotContracts.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/types.d.ts +8 -1
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +44 -50
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +21 -24
- package/dist/_dts/blocks/src/system/runtime/headingDecoration.d.ts +21 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.d.ts +45 -14
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.d.ts +2 -9
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.d.ts +1 -10
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +21 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.client.d.ts +3 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCombined.interactive.d.ts +21 -16
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +17 -28
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventPaginatedListView.client.d.ts +2 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekAgendaView.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/listOptions.d.ts +50 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +29 -14
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +21 -0
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +7 -0
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/sectionForegroundStyles.d.ts +2 -0
- package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +4 -2
- package/dist/_dts/calendar/src/grid.d.ts +27 -0
- package/dist/_dts/calendar/src/index.d.ts +2 -2
- package/dist/_dts/content-editor/src/controller/useAutosaveTriggers.d.ts +3 -1
- package/dist/_dts/content-editor/src/editorTransactionState.d.ts +1 -0
- package/dist/_dts/content-editor/src/hooks/autosaveScopePlanning.d.ts +26 -0
- package/dist/_dts/content-editor/src/hooks/publishability.d.ts +1 -0
- package/dist/_dts/content-editor/src/hooks/useLinkedEntryAutosave.d.ts +23 -0
- package/dist/_dts/content-editor/src/hooks/useReactiveToolbar.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useSimpleAutosave.d.ts +2 -2
- package/dist/_dts/content-editor/src/index.d.ts +3 -1
- package/dist/_dts/content-editor/src/lib/json.d.ts +2 -0
- package/dist/_dts/content-editor/src/linkedEntries/domain.d.ts +8 -0
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +58 -0
- package/dist/_dts/content-editor/src/ui/editorTransactionState.d.ts +93 -0
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +60 -3
- package/dist/_dts/content-editor/src/ui/stores/autosaveStore.d.ts +2 -0
- package/dist/_dts/content-editor/src/ui/stores/types.d.ts +1 -1
- package/dist/_dts/content-model/src/content-types/builtins.d.ts +43 -0
- package/dist/_dts/content-model/src/metadataConfig.d.ts +87 -47
- package/dist/_dts/core/src/branded.d.ts +5 -0
- package/dist/_dts/core/src/index.d.ts +1 -0
- package/dist/_dts/core/src/stable-json.d.ts +1 -0
- package/dist/_dts/editor/src/EditorProvider.d.ts +26 -0
- package/dist/_dts/editor/src/chrome/EditorChrome.d.ts +26 -0
- package/dist/_dts/editor/src/chrome/EditorStatusBar.d.ts +45 -0
- package/dist/_dts/editor/src/chrome/statusBarPresentation.d.ts +25 -0
- package/dist/_dts/editor/src/components/EditingToggle.d.ts +9 -0
- package/dist/_dts/editor/src/hooks/useEditableElement.d.ts +18 -0
- package/dist/_dts/editor/src/index.d.ts +29 -0
- package/dist/_dts/editor/src/inline/InlineTextEditor.d.ts +1 -0
- package/dist/_dts/editor/src/lib/utils.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/EditorPrimitivesProvider.d.ts +20 -0
- package/dist/_dts/editor/src/primitives/InlineFieldContext.d.ts +11 -0
- package/dist/_dts/editor/src/primitives/SaveContext.d.ts +12 -0
- package/dist/_dts/editor/src/primitives/helpers.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +26 -0
- package/dist/_dts/editor/src/primitives/rich-text/RichTextToolbar.d.ts +16 -0
- package/dist/_dts/editor/src/primitives/rich-text/config.d.ts +23 -0
- package/dist/_dts/editor/src/primitives/rich-text/extensions/RichTextImage.d.ts +2 -0
- package/dist/_dts/editor/src/primitives/rich-text/extensions/RichTextLink.d.ts +1 -0
- package/dist/_dts/editor/src/primitives/rich-text/imageActions.d.ts +22 -0
- package/dist/_dts/editor/src/primitives/rich-text/sanitize.d.ts +23 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/BlockTypeDropdown.d.ts +6 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/LinkPopover.d.ts +10 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/ToolbarIconButton.d.ts +11 -0
- package/dist/_dts/editor/src/primitives/rich-text/toolbar/linkPopoverUtils.d.ts +58 -0
- package/dist/_dts/editor/src/primitives/rich-text/useRichTextEditor.d.ts +19 -0
- package/dist/_dts/editor/src/primitives/rich-text/utils.d.ts +20 -0
- package/dist/_dts/editor/src/utils/optimisticTokens.d.ts +27 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +3 -3
- package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +4 -4
- package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -2
- package/dist/_dts/editor-blocks/src/block-editor/actionPresentation.d.ts +15 -0
- package/dist/_dts/editor-blocks/src/block-editor/blockHeaderActionPlan.d.ts +49 -0
- package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/widgets/rich-text/RichTextWidgetProvider.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/rich-text/useImagePicker.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/SiteOptionPickerField.d.ts +3 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/SiteOptionWidgetProvider.d.ts +14 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/index.d.ts +6 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/loaders.d.ts +51 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/types.d.ts +20 -0
- package/dist/_dts/editor-blocks/src/widgets/site-option-picker/utils.d.ts +5 -0
- package/dist/_dts/media-core/src/index.d.ts +1 -0
- package/dist/_dts/media-core/src/renderableMediaAsset.d.ts +18 -0
- package/dist/_dts/media-editor/src/MediaEditor.d.ts +4 -1
- package/dist/_dts/media-editor/src/MediaPickerDialog.d.ts +2 -1
- package/dist/_dts/media-editor/src/index.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +3 -2
- package/dist/_dts/preview-next/src/client/blocks/EditablePageRenderer.d.ts +5 -1
- package/dist/_dts/preview-next/src/client/blocks/blockCustomizePopoverRows.d.ts +25 -0
- package/dist/_dts/preview-next/src/client/blocks/composer/mergeDrafts.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/blocks/composer/types.d.ts +4 -30
- package/dist/_dts/preview-next/src/client/blocks/linkedEntryRenderOverlay.d.ts +11 -0
- package/dist/_dts/preview-next/src/client/blocks/previewCustomizeActions.d.ts +3 -9
- package/dist/_dts/preview-next/src/client/blocks/useBlockCustomizeControls.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/index.d.ts +0 -1
- package/dist/_dts/preview-next/src/client/preview/EntryEditorPanel.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/LinkedEntryEditEventBridge.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +3 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +20 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewDesignHistoryOrderContext.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewOpenEditorButton.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +19 -19
- package/dist/_dts/preview-next/src/client/preview/PreviewSidebarSection.d.ts +13 -0
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +47 -4
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +14 -1
- package/dist/_dts/preview-next/src/client/preview/linkedEntryEditEvents.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/previewChromePlacement.d.ts +46 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeControls.d.ts +68 -0
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeHistory.d.ts +8 -1
- package/dist/_dts/preview-next/src/client/preview/previewCustomizeWorkflowState.d.ts +11 -9
- package/dist/_dts/preview-next/src/client/preview/previewDesignHistoryOrder.d.ts +18 -0
- package/dist/_dts/preview-next/src/client/preview/previewUndoDomains.d.ts +1 -1
- package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +41 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +101 -0
- package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +29 -0
- package/dist/_dts/preview-next/src/client/preview/siteStyleHistoryState.d.ts +55 -0
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/widgets/widgetAdapters.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +3 -2
- package/dist/_dts/preview-next/src/constants.d.ts +0 -1
- package/dist/_dts/sdk/src/cli/config-loader.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +5 -3
- package/dist/_dts/sdk/src/cli/site-commands/commandSurfaceDispatch.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/site-commands/pageCommands.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +1 -0
- 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 +28 -2
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +10 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +42 -0
- package/dist/_dts/sdk/src/rendering/mediaAssets.d.ts +4 -0
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/constants.d.ts +26 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/personalities/joy-stamp.d.ts +22 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -0
- package/dist/_dts/theme-core/src/buttons/types.d.ts +9 -0
- package/dist/_dts/theme-core/src/cards/siteStyleDefaults.d.ts +44 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/interactive/types.d.ts +10 -0
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +27 -6
- package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
- package/dist/_dts/theme-core/src/palette/variants/warm-dark.d.ts +27 -0
- package/dist/_dts/theme-core/src/schema.d.ts +40 -3
- package/dist/_dts/theme-core/src/site-styles/accessibleSurfaces.d.ts +4 -1
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +87 -31
- package/dist/_dts/theme-core/src/site-styles/appearancePresetResolution.d.ts +6 -2
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +87 -31
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +30 -1
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +18 -2
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +6 -2
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +5 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +3 -23
- package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +276 -4
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +33 -3
- package/dist/_dts/theme-core/src/site-styles/sectionTransitions.d.ts +508 -0
- package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +10 -10
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +24 -6
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +16 -1
- package/dist/{chunk-7PCYG6YV.mjs → chunk-3PTVPAT4.mjs} +1863 -1099
- package/dist/{chunk-5NZGBSJF.mjs → chunk-3QWQ2MUQ.mjs} +469 -1000
- package/dist/{chunk-HTB4BMKD.mjs → chunk-3VT7LZY2.mjs} +321 -113
- package/dist/{chunk-MPBNEVPB.mjs → chunk-4T5JIPWY.mjs} +1 -1
- package/dist/{chunk-BBLZSQEY.mjs → chunk-E3NZYEKF.mjs} +1 -7
- package/dist/{chunk-GYXKAUFV.mjs → chunk-WUHKQBB6.mjs} +9509 -2658
- package/dist/cli/index.mjs +1347 -324
- package/dist/client/{accordion-QFZMNB7O.mjs → accordion-SFIIZWNH.mjs} +2 -2
- package/dist/client/{bookingForm-NCIXFWIG.mjs → bookingForm-CFKZVWGA.mjs} +5 -5
- package/dist/client/bookings.mjs +281 -19
- package/dist/client/{carousel-EO4BJMWD.mjs → carousel-ELXWSBLA.mjs} +3 -3
- package/dist/client/{cart-FTYCLYUW.mjs → cart-6SSCPYY5.mjs} +6 -6
- package/dist/client/{checkout-NFGLVCOX.mjs → checkout-UFQ34HPV.mjs} +6 -6
- package/dist/client/{chunk-6GVVWSPU.mjs → chunk-76JUETXQ.mjs} +139 -186
- package/dist/client/{chunk-AUJ5DBZJ.mjs → chunk-7BXX7WXH.mjs} +112 -28
- package/dist/client/{chunk-IWFZSQNZ.mjs → chunk-G56BSZAM.mjs} +2 -2
- package/dist/client/{chunk-VDS5YFLX.mjs → chunk-IUEDYLFJ.mjs} +1 -1
- package/dist/client/{chunk-PYRBIURC.mjs → chunk-NP47RHIX.mjs} +5 -5
- package/dist/client/{chunk-PUOELU4O.mjs → chunk-NX6X3GRF.mjs} +330 -80
- package/dist/client/{chunk-Y37KDO7P.mjs → chunk-PA2LJH2M.mjs} +2 -2
- package/dist/client/{chunk-CE7IBGVW.mjs → chunk-RMWMT3ZD.mjs} +1 -1
- package/dist/client/{chunk-4W66ALYT.mjs → chunk-TCJS3NY5.mjs} +1 -1
- package/dist/client/{chunk-T6UIP6UZ.mjs → chunk-V6XI4M2Q.mjs} +1 -1
- package/dist/client/client.mjs +5924 -3138
- package/dist/client/{courseRegistration-2EORROPS.mjs → courseRegistration-HJIISAAG.mjs} +5 -5
- package/dist/client/{eventCalendar-WZI4VL6N.mjs → eventCalendar-F6YVUCZR.mjs} +7 -7
- package/dist/client/{eventCombined-QCB2TCNL.mjs → eventCombined-B5DSTIOK.mjs} +7 -7
- package/dist/client/{eventDetails-TFTATAPH.mjs → eventDetails-SEJDDHQC.mjs} +7 -7
- package/dist/client/{eventListing-A2CQEHEQ.mjs → eventListing-TPMWIIBO.mjs} +7 -7
- package/dist/client/{eventRegistration-OELPVLUY.mjs → eventRegistration-QU6W2PV6.mjs} +7 -7
- package/dist/client/{form-NTIFD6WQ.mjs → form-LVTYNTDE.mjs} +2 -2
- package/dist/client/{headerSection-7TBNKCLA.mjs → headerSection-SO3MFC4U.mjs} +54 -13
- package/dist/client/hooks.mjs +2266 -1179
- package/dist/client/{locationMap-LRLB5A3H.mjs → locationMap-5E5FLAKO.mjs} +2 -2
- package/dist/client/{newsletterForm-XI52RZSN.mjs → newsletterForm-GN32JEBQ.mjs} +2 -2
- package/dist/client/{productDetail-GSNKBFLY.mjs → productDetail-Q346KSVR.mjs} +6 -6
- package/dist/client/{productList-BGCGT4KZ.mjs → productList-DTDMQYGZ.mjs} +6 -6
- package/dist/client/rendering/client.mjs +4618 -3318
- package/dist/client/rendering/islands.mjs +32 -20
- package/dist/client/rendering.mjs +4898 -2108
- package/dist/client/{shop-RQHUCLNY.mjs → shop-OFUW7KPN.mjs} +6 -6
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/constants.mjs +0 -2
- package/dist/preview-next/index.mjs +0 -2
- package/dist/{sdk-runtime-A4LHT2RS.mjs → sdk-runtime-2GIX6I7X.mjs} +6 -6
- package/dist/server/components.mjs +4377 -1852
- package/dist/server/config-validation.mjs +2283 -1303
- package/dist/server/config.mjs +2283 -1303
- package/dist/server/data.mjs +2267 -1180
- package/dist/server/index.mjs +2 -1
- package/dist/server/next.mjs +4394 -1773
- package/dist/server/page-converter.mjs +1999 -1015
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +4482 -1857
- package/dist/server/rendering.mjs +4484 -1859
- package/dist/server/routing.mjs +2302 -1120
- package/dist/server/server.mjs +2284 -1197
- package/dist/server/theme-bridge.mjs +757 -85
- package/dist/server/theme.mjs +69 -4
- package/dist/styles/index.css +474 -65
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-XE5M4UKM.mjs +0 -8
- package/dist/_dts/editor-blocks/src/block-editor/actionControlMode.d.ts +0 -2
- package/dist/_dts/preview-next/src/client/preview/previewSurface.d.ts +0 -3
package/dist/client/hooks.mjs
CHANGED
|
@@ -6363,6 +6363,11 @@ function toLocationCoordinates(value) {
|
|
|
6363
6363
|
};
|
|
6364
6364
|
}
|
|
6365
6365
|
|
|
6366
|
+
// ../core/src/assert-never.ts
|
|
6367
|
+
function assertNever(value, message = "Unexpected variant") {
|
|
6368
|
+
throw new Error(`${message}: ${String(value)}`);
|
|
6369
|
+
}
|
|
6370
|
+
|
|
6366
6371
|
// ../api/src/accessAdmin.ts
|
|
6367
6372
|
import { z } from "zod";
|
|
6368
6373
|
var managedDomainAddOnPricingSnapshotSchema = z.object({
|
|
@@ -6467,7 +6472,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
|
|
|
6467
6472
|
);
|
|
6468
6473
|
|
|
6469
6474
|
// ../api/src/sdkConfig/contracts.ts
|
|
6470
|
-
import { z as
|
|
6475
|
+
import { z as z64 } from "zod";
|
|
6471
6476
|
|
|
6472
6477
|
// ../blocks/src/system/manifest/augmentManifest.ts
|
|
6473
6478
|
function augmentManifest(manifest) {
|
|
@@ -7474,25 +7479,10 @@ function featuresFromHex(hex) {
|
|
|
7474
7479
|
return { r, g, b, h, s, l, v, Y, chroma, okL, okC, okH, hex };
|
|
7475
7480
|
}
|
|
7476
7481
|
|
|
7477
|
-
// ../theme-core/src/site-styles/appearancePresetResolution.ts
|
|
7478
|
-
function assertValidOptionGroups(preset2) {
|
|
7479
|
-
preset2.optionGroups?.forEach((group) => {
|
|
7480
|
-
const selectedOption = group.options.find(
|
|
7481
|
-
(option) => option.id === group.selectedOptionId
|
|
7482
|
-
);
|
|
7483
|
-
if (!selectedOption) {
|
|
7484
|
-
throw new Error(
|
|
7485
|
-
`Appearance preset "${preset2.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`
|
|
7486
|
-
);
|
|
7487
|
-
}
|
|
7488
|
-
});
|
|
7489
|
-
}
|
|
7490
|
-
function defineBlockAppearancePreset(preset2) {
|
|
7491
|
-
assertValidOptionGroups(preset2);
|
|
7492
|
-
return preset2;
|
|
7493
|
-
}
|
|
7494
|
-
|
|
7495
7482
|
// ../theme-core/src/site-styles/types.ts
|
|
7483
|
+
function defineExactCatalog() {
|
|
7484
|
+
return (entries) => entries;
|
|
7485
|
+
}
|
|
7496
7486
|
function asDesignBlockId(value) {
|
|
7497
7487
|
return brandNonEmptyString(value, "DesignBlockId");
|
|
7498
7488
|
}
|
|
@@ -7551,7 +7541,7 @@ function makeBoundaryId(previousBlockId, nextBlockId) {
|
|
|
7551
7541
|
const next = encodeURIComponent(nextBlockId);
|
|
7552
7542
|
return asDesignBoundaryId(`boundary:${previous}:${next}`);
|
|
7553
7543
|
}
|
|
7554
|
-
function
|
|
7544
|
+
function assertNever2(value, message = "Unhandled Theme V2 variant") {
|
|
7555
7545
|
throw new Error(`${message}: ${String(value)}`);
|
|
7556
7546
|
}
|
|
7557
7547
|
function brandNonEmptyString(value, label) {
|
|
@@ -7641,11 +7631,31 @@ function defineBlockDesignCapability(capability) {
|
|
|
7641
7631
|
tileTreatments: capability.tileTreatments ?? ["default"],
|
|
7642
7632
|
eventListTreatments: capability.eventListTreatments ?? ["plain"],
|
|
7643
7633
|
eyebrowTreatments: capability.eyebrowTreatments ?? ["plain"],
|
|
7644
|
-
|
|
7645
|
-
|
|
7634
|
+
headingDecorationCapability: capability.headingDecorationCapability ?? {
|
|
7635
|
+
kind: "unsupported"
|
|
7636
|
+
},
|
|
7637
|
+
...capability.accordionIconSets ? { accordionIconSets: capability.accordionIconSets } : {}
|
|
7646
7638
|
};
|
|
7647
7639
|
}
|
|
7648
7640
|
|
|
7641
|
+
// ../theme-core/src/site-styles/appearancePresetResolution.ts
|
|
7642
|
+
function assertValidOptionGroups(preset2) {
|
|
7643
|
+
preset2.optionGroups?.forEach((group) => {
|
|
7644
|
+
const selectedOption = group.options.find(
|
|
7645
|
+
(option) => option.id === group.selectedOptionId
|
|
7646
|
+
);
|
|
7647
|
+
if (!selectedOption) {
|
|
7648
|
+
throw new Error(
|
|
7649
|
+
`Appearance preset "${preset2.id}" option group "${group.id}" selects missing option "${group.selectedOptionId}".`
|
|
7650
|
+
);
|
|
7651
|
+
}
|
|
7652
|
+
});
|
|
7653
|
+
}
|
|
7654
|
+
function defineBlockAppearancePreset(preset2) {
|
|
7655
|
+
assertValidOptionGroups(preset2);
|
|
7656
|
+
return preset2;
|
|
7657
|
+
}
|
|
7658
|
+
|
|
7649
7659
|
// ../theme-core/src/site-styles/blockAppearancePresets.ts
|
|
7650
7660
|
var blockAppearancePresets = [
|
|
7651
7661
|
defineBlockAppearancePreset({
|
|
@@ -8007,8 +8017,25 @@ var blockAppearancePresets = [
|
|
|
8007
8017
|
kind: "block-design",
|
|
8008
8018
|
id: "intro-organic-statement",
|
|
8009
8019
|
target: "intro",
|
|
8010
|
-
label: "
|
|
8020
|
+
label: "Intro statement",
|
|
8021
|
+
blockKinds: ["block.intro"],
|
|
8022
|
+
design: {
|
|
8023
|
+
sectionSurface: "base",
|
|
8024
|
+
contentFrame: plainFrame,
|
|
8025
|
+
itemSurface: "none",
|
|
8026
|
+
transitionAfter: "soft-fade-short",
|
|
8027
|
+
emphasis: "high"
|
|
8028
|
+
}
|
|
8029
|
+
}),
|
|
8030
|
+
defineBlockAppearancePreset({
|
|
8031
|
+
kind: "block-design",
|
|
8032
|
+
id: "intro-editorial-statement",
|
|
8033
|
+
target: "intro",
|
|
8034
|
+
label: "Editorial intro statement",
|
|
8011
8035
|
blockKinds: ["block.intro"],
|
|
8036
|
+
constraints: {
|
|
8037
|
+
layoutVariantKeys: ["centered-copy", "statement-copy"]
|
|
8038
|
+
},
|
|
8012
8039
|
design: {
|
|
8013
8040
|
sectionSurface: "base",
|
|
8014
8041
|
contentFrame: plainFrame,
|
|
@@ -8031,12 +8058,7 @@ var blockAppearancePresets = [
|
|
|
8031
8058
|
contentFrame: plainFrame,
|
|
8032
8059
|
itemSurface: "none",
|
|
8033
8060
|
transitionAfter: "soft-fade-short",
|
|
8034
|
-
emphasis: "medium"
|
|
8035
|
-
headingDecoration: {
|
|
8036
|
-
family: "organic-squiggle",
|
|
8037
|
-
placement: "after-heading",
|
|
8038
|
-
colorToken: "primary"
|
|
8039
|
-
}
|
|
8061
|
+
emphasis: "medium"
|
|
8040
8062
|
}
|
|
8041
8063
|
}),
|
|
8042
8064
|
defineBlockAppearancePreset({
|
|
@@ -8053,6 +8075,48 @@ var blockAppearancePresets = [
|
|
|
8053
8075
|
emphasis: "medium"
|
|
8054
8076
|
}
|
|
8055
8077
|
}),
|
|
8078
|
+
defineBlockAppearancePreset({
|
|
8079
|
+
kind: "block-design",
|
|
8080
|
+
id: "offerings-preview-default-cards",
|
|
8081
|
+
target: "offerings",
|
|
8082
|
+
label: "Default offering cards",
|
|
8083
|
+
blockKinds: ["block.offerings-preview"],
|
|
8084
|
+
design: {
|
|
8085
|
+
sectionSurface: "base",
|
|
8086
|
+
contentFrame: plainFrame,
|
|
8087
|
+
itemSurface: "default",
|
|
8088
|
+
transitionAfter: "soft-fade-short",
|
|
8089
|
+
emphasis: "medium"
|
|
8090
|
+
}
|
|
8091
|
+
}),
|
|
8092
|
+
defineBlockAppearancePreset({
|
|
8093
|
+
kind: "block-design",
|
|
8094
|
+
id: "offerings-preview-secondary-cards",
|
|
8095
|
+
target: "offerings",
|
|
8096
|
+
label: "Secondary offering cards",
|
|
8097
|
+
blockKinds: ["block.offerings-preview"],
|
|
8098
|
+
design: {
|
|
8099
|
+
sectionSurface: "muted-band",
|
|
8100
|
+
contentFrame: plainFrame,
|
|
8101
|
+
itemSurface: "inset",
|
|
8102
|
+
transitionAfter: "soft-fade-short",
|
|
8103
|
+
emphasis: "medium"
|
|
8104
|
+
}
|
|
8105
|
+
}),
|
|
8106
|
+
defineBlockAppearancePreset({
|
|
8107
|
+
kind: "block-design",
|
|
8108
|
+
id: "offerings-preview-non-carded",
|
|
8109
|
+
target: "offerings",
|
|
8110
|
+
label: "Non-carded offerings",
|
|
8111
|
+
blockKinds: ["block.offerings-preview"],
|
|
8112
|
+
design: {
|
|
8113
|
+
sectionSurface: "muted-band",
|
|
8114
|
+
contentFrame: plainFrame,
|
|
8115
|
+
itemSurface: "editorial",
|
|
8116
|
+
transitionAfter: "soft-fade-short",
|
|
8117
|
+
emphasis: "medium"
|
|
8118
|
+
}
|
|
8119
|
+
}),
|
|
8056
8120
|
defineBlockAppearancePreset({
|
|
8057
8121
|
kind: "block-design",
|
|
8058
8122
|
id: "feature-cards-raised-rule",
|
|
@@ -8067,6 +8131,20 @@ var blockAppearancePresets = [
|
|
|
8067
8131
|
emphasis: "high"
|
|
8068
8132
|
}
|
|
8069
8133
|
}),
|
|
8134
|
+
defineBlockAppearancePreset({
|
|
8135
|
+
kind: "block-design",
|
|
8136
|
+
id: "feature-cards-bold-colors",
|
|
8137
|
+
target: "feature-cards",
|
|
8138
|
+
label: "Bold colour-blocked cards",
|
|
8139
|
+
blockKinds: ["block.feature-cards"],
|
|
8140
|
+
design: {
|
|
8141
|
+
sectionSurface: "base",
|
|
8142
|
+
contentFrame: plainFrame,
|
|
8143
|
+
itemSurface: "color-blocked",
|
|
8144
|
+
transitionAfter: "none",
|
|
8145
|
+
emphasis: "high"
|
|
8146
|
+
}
|
|
8147
|
+
}),
|
|
8070
8148
|
defineBlockAppearancePreset({
|
|
8071
8149
|
kind: "block-design",
|
|
8072
8150
|
id: "feature-cards-editorial-columns",
|
|
@@ -8320,7 +8398,7 @@ var blockAppearancePresets = [
|
|
|
8320
8398
|
kind: "block-design",
|
|
8321
8399
|
id: "contact-form-panel",
|
|
8322
8400
|
target: "contact-form",
|
|
8323
|
-
label: "
|
|
8401
|
+
label: "Raised form panel",
|
|
8324
8402
|
blockKinds: ["block.form"],
|
|
8325
8403
|
design: {
|
|
8326
8404
|
sectionSurface: "muted-band",
|
|
@@ -8332,30 +8410,16 @@ var blockAppearancePresets = [
|
|
|
8332
8410
|
}),
|
|
8333
8411
|
defineBlockAppearancePreset({
|
|
8334
8412
|
kind: "block-design",
|
|
8335
|
-
id: "contact-form-
|
|
8336
|
-
target: "contact-form",
|
|
8337
|
-
label: "Dark form card",
|
|
8338
|
-
blockKinds: ["block.form"],
|
|
8339
|
-
design: {
|
|
8340
|
-
sectionSurface: "accent-band",
|
|
8341
|
-
contentFrame: panelFrame("raised"),
|
|
8342
|
-
itemSurface: "none",
|
|
8343
|
-
transitionAfter: "soft-fade-short",
|
|
8344
|
-
emphasis: "high"
|
|
8345
|
-
}
|
|
8346
|
-
}),
|
|
8347
|
-
defineBlockAppearancePreset({
|
|
8348
|
-
kind: "block-design",
|
|
8349
|
-
id: "contact-form-brand-depth-card",
|
|
8413
|
+
id: "contact-form-open",
|
|
8350
8414
|
target: "contact-form",
|
|
8351
|
-
label: "
|
|
8415
|
+
label: "Open form",
|
|
8352
8416
|
blockKinds: ["block.form"],
|
|
8353
8417
|
design: {
|
|
8354
|
-
sectionSurface: "
|
|
8355
|
-
contentFrame:
|
|
8418
|
+
sectionSurface: "muted-band",
|
|
8419
|
+
contentFrame: plainFrame,
|
|
8356
8420
|
itemSurface: "none",
|
|
8357
8421
|
transitionAfter: "none",
|
|
8358
|
-
emphasis: "
|
|
8422
|
+
emphasis: "medium"
|
|
8359
8423
|
}
|
|
8360
8424
|
}),
|
|
8361
8425
|
defineBlockAppearancePreset({
|
|
@@ -8433,7 +8497,130 @@ function assertUniqueLayoutProfileKeys(profiles) {
|
|
|
8433
8497
|
|
|
8434
8498
|
// ../theme-core/src/site-styles/pageDesignIntent.ts
|
|
8435
8499
|
import { z as z5 } from "zod";
|
|
8436
|
-
|
|
8500
|
+
|
|
8501
|
+
// ../theme-core/src/site-styles/sectionTransitions.ts
|
|
8502
|
+
var noneBoundaryOption = {
|
|
8503
|
+
id: asBoundaryOptionId("break:none"),
|
|
8504
|
+
label: "None",
|
|
8505
|
+
transitionAfter: "none",
|
|
8506
|
+
treatment: { kind: "none" }
|
|
8507
|
+
};
|
|
8508
|
+
var softBoundaryOption = {
|
|
8509
|
+
id: asBoundaryOptionId("break:soft"),
|
|
8510
|
+
label: "Soft",
|
|
8511
|
+
transitionAfter: "soft-fade-short",
|
|
8512
|
+
treatment: { kind: "soft-fade", height: "medium", curve: "soft" }
|
|
8513
|
+
};
|
|
8514
|
+
var spaciousBoundaryOption = {
|
|
8515
|
+
id: asBoundaryOptionId("break:spacious"),
|
|
8516
|
+
label: "Spacious",
|
|
8517
|
+
transitionAfter: "soft-fade-long",
|
|
8518
|
+
treatment: { kind: "soft-fade", height: "large", curve: "spacious" }
|
|
8519
|
+
};
|
|
8520
|
+
var expansiveBoundaryOption = {
|
|
8521
|
+
id: asBoundaryOptionId("break:expansive"),
|
|
8522
|
+
label: "Expansive",
|
|
8523
|
+
transitionAfter: "soft-fade-expansive",
|
|
8524
|
+
treatment: { kind: "soft-fade", height: "expansive", curve: "expansive" }
|
|
8525
|
+
};
|
|
8526
|
+
var waveBoundaryOption = {
|
|
8527
|
+
id: asBoundaryOptionId("break:wave"),
|
|
8528
|
+
label: "Classic wave",
|
|
8529
|
+
transitionAfter: "wave-edge",
|
|
8530
|
+
treatment: {
|
|
8531
|
+
kind: "wave-edge",
|
|
8532
|
+
height: "medium",
|
|
8533
|
+
amplitude: "balanced",
|
|
8534
|
+
rhythm: "double",
|
|
8535
|
+
symmetry: "asymmetrical"
|
|
8536
|
+
}
|
|
8537
|
+
};
|
|
8538
|
+
var balancedWaveBoundaryOption = {
|
|
8539
|
+
id: asBoundaryOptionId("break:wave-balanced"),
|
|
8540
|
+
label: "Balanced wave",
|
|
8541
|
+
transitionAfter: "wave-edge-balanced",
|
|
8542
|
+
treatment: {
|
|
8543
|
+
kind: "wave-edge",
|
|
8544
|
+
height: "medium",
|
|
8545
|
+
amplitude: "balanced",
|
|
8546
|
+
rhythm: "double",
|
|
8547
|
+
symmetry: "symmetrical"
|
|
8548
|
+
}
|
|
8549
|
+
};
|
|
8550
|
+
var gentleWaveBoundaryOption = {
|
|
8551
|
+
id: asBoundaryOptionId("break:wave-gentle"),
|
|
8552
|
+
label: "Gentle wave",
|
|
8553
|
+
transitionAfter: "wave-edge-gentle",
|
|
8554
|
+
treatment: {
|
|
8555
|
+
kind: "wave-edge",
|
|
8556
|
+
height: "compact",
|
|
8557
|
+
amplitude: "subtle",
|
|
8558
|
+
rhythm: "single",
|
|
8559
|
+
symmetry: "symmetrical"
|
|
8560
|
+
}
|
|
8561
|
+
};
|
|
8562
|
+
var boldWaveBoundaryOption = {
|
|
8563
|
+
id: asBoundaryOptionId("break:wave-bold"),
|
|
8564
|
+
label: "Bold wave",
|
|
8565
|
+
transitionAfter: "wave-edge-bold",
|
|
8566
|
+
treatment: {
|
|
8567
|
+
kind: "wave-edge",
|
|
8568
|
+
height: "large",
|
|
8569
|
+
amplitude: "bold",
|
|
8570
|
+
rhythm: "double",
|
|
8571
|
+
symmetry: "symmetrical"
|
|
8572
|
+
}
|
|
8573
|
+
};
|
|
8574
|
+
var driftWaveBoundaryOption = {
|
|
8575
|
+
id: asBoundaryOptionId("break:wave-drift"),
|
|
8576
|
+
label: "Drift wave",
|
|
8577
|
+
transitionAfter: "wave-edge-drift",
|
|
8578
|
+
treatment: {
|
|
8579
|
+
kind: "wave-edge",
|
|
8580
|
+
height: "medium",
|
|
8581
|
+
amplitude: "balanced",
|
|
8582
|
+
rhythm: "double",
|
|
8583
|
+
symmetry: "drift"
|
|
8584
|
+
}
|
|
8585
|
+
};
|
|
8586
|
+
var subtleAngleBoundaryOption = {
|
|
8587
|
+
id: asBoundaryOptionId("break:angle-subtle"),
|
|
8588
|
+
label: "Subtle angle",
|
|
8589
|
+
transitionAfter: "angle-edge-subtle",
|
|
8590
|
+
treatment: {
|
|
8591
|
+
kind: "angle-edge",
|
|
8592
|
+
height: "compact",
|
|
8593
|
+
slope: "subtle",
|
|
8594
|
+
direction: "forward"
|
|
8595
|
+
}
|
|
8596
|
+
};
|
|
8597
|
+
var balancedAngleBoundaryOption = {
|
|
8598
|
+
id: asBoundaryOptionId("break:angle-balanced"),
|
|
8599
|
+
label: "Balanced angle",
|
|
8600
|
+
transitionAfter: "angle-edge",
|
|
8601
|
+
treatment: {
|
|
8602
|
+
kind: "angle-edge",
|
|
8603
|
+
height: "medium",
|
|
8604
|
+
slope: "balanced",
|
|
8605
|
+
direction: "forward"
|
|
8606
|
+
}
|
|
8607
|
+
};
|
|
8608
|
+
var steepAngleBoundaryOption = {
|
|
8609
|
+
id: asBoundaryOptionId("break:angle-steep"),
|
|
8610
|
+
label: "Steep angle",
|
|
8611
|
+
transitionAfter: "angle-edge-steep",
|
|
8612
|
+
treatment: {
|
|
8613
|
+
kind: "angle-edge",
|
|
8614
|
+
height: "large",
|
|
8615
|
+
slope: "steep",
|
|
8616
|
+
direction: "forward"
|
|
8617
|
+
}
|
|
8618
|
+
};
|
|
8619
|
+
|
|
8620
|
+
// ../theme-core/src/site-styles/pageDesignIntent.ts
|
|
8621
|
+
var pageDesignIntentSchemaVersion = 2;
|
|
8622
|
+
var legacyPageDesignIntentSchemaVersion = 1;
|
|
8623
|
+
var unknownBoundaryOptionId = asBoundaryOptionId("break:unknown");
|
|
8437
8624
|
var pageDesignUserPinnedAppearanceChoiceSchema = z5.object({
|
|
8438
8625
|
kind: z5.literal("user-pinned"),
|
|
8439
8626
|
value: z5.string().min(1).transform(asAppearancePresetId)
|
|
@@ -8442,17 +8629,84 @@ var pageDesignUserPinnedBoundaryChoiceSchema = z5.object({
|
|
|
8442
8629
|
kind: z5.literal("user-pinned"),
|
|
8443
8630
|
value: z5.string().min(1).transform(asBoundaryOptionId)
|
|
8444
8631
|
}).strict();
|
|
8632
|
+
var pageDesignBoundaryTreatmentSchema = z5.discriminatedUnion("kind", [
|
|
8633
|
+
z5.object({ kind: z5.literal("none") }).strict(),
|
|
8634
|
+
z5.object({
|
|
8635
|
+
kind: z5.literal("soft-fade"),
|
|
8636
|
+
height: z5.enum(["compact", "medium", "large", "expansive"]),
|
|
8637
|
+
curve: z5.enum(["soft", "spacious", "expansive"])
|
|
8638
|
+
}).strict(),
|
|
8639
|
+
z5.object({
|
|
8640
|
+
kind: z5.literal("wave-edge"),
|
|
8641
|
+
height: z5.enum(["compact", "medium", "large"]),
|
|
8642
|
+
amplitude: z5.enum(["subtle", "balanced", "bold"]),
|
|
8643
|
+
rhythm: z5.enum(["single", "double"]),
|
|
8644
|
+
symmetry: z5.enum(["symmetrical", "asymmetrical", "drift"])
|
|
8645
|
+
}).strict(),
|
|
8646
|
+
z5.object({
|
|
8647
|
+
kind: z5.literal("angle-edge"),
|
|
8648
|
+
height: z5.enum(["compact", "medium", "large"]),
|
|
8649
|
+
slope: z5.enum(["subtle", "balanced", "steep"]),
|
|
8650
|
+
direction: z5.enum(["forward", "reverse"])
|
|
8651
|
+
}).strict(),
|
|
8652
|
+
z5.object({
|
|
8653
|
+
kind: z5.literal("legacy-unsupported"),
|
|
8654
|
+
boundaryOptionId: z5.string().min(1).transform(asBoundaryOptionId)
|
|
8655
|
+
}).strict()
|
|
8656
|
+
]);
|
|
8657
|
+
var pageDesignUserPinnedBoundaryTreatmentChoiceSchema = z5.object({
|
|
8658
|
+
kind: z5.literal("user-pinned"),
|
|
8659
|
+
value: pageDesignBoundaryTreatmentSchema
|
|
8660
|
+
}).strict();
|
|
8445
8661
|
var pageDesignBlockLookPinSchema = z5.object({
|
|
8446
8662
|
blockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8447
8663
|
blockKind: z5.string().min(1),
|
|
8448
8664
|
choice: pageDesignUserPinnedAppearanceChoiceSchema
|
|
8449
8665
|
}).strict();
|
|
8450
8666
|
var pageDesignBoundaryPinSchema = z5.object({
|
|
8667
|
+
boundaryId: z5.string().min(1).transform(asDesignBoundaryId),
|
|
8668
|
+
previousBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8669
|
+
nextBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8670
|
+
choice: pageDesignUserPinnedBoundaryTreatmentChoiceSchema
|
|
8671
|
+
}).strict().superRefine(validateBoundaryPinIdMatchesBlocks);
|
|
8672
|
+
var legacyPageDesignBoundaryPinSchema = z5.object({
|
|
8451
8673
|
boundaryId: z5.string().min(1).transform(asDesignBoundaryId),
|
|
8452
8674
|
previousBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8453
8675
|
nextBlockId: z5.string().min(1).transform(asDesignBlockId),
|
|
8454
8676
|
choice: pageDesignUserPinnedBoundaryChoiceSchema
|
|
8455
|
-
}).strict().superRefine(
|
|
8677
|
+
}).strict().superRefine(validateBoundaryPinIdMatchesBlocks);
|
|
8678
|
+
var pageDesignIntentV1Schema = z5.object({
|
|
8679
|
+
schemaVersion: z5.literal(legacyPageDesignIntentSchemaVersion),
|
|
8680
|
+
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8681
|
+
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8682
|
+
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8683
|
+
boundaryPins: z5.array(legacyPageDesignBoundaryPinSchema)
|
|
8684
|
+
}).strict().superRefine(validateUniquePageDesignPins);
|
|
8685
|
+
var pageDesignIntentV2Schema = z5.object({
|
|
8686
|
+
schemaVersion: z5.literal(pageDesignIntentSchemaVersion),
|
|
8687
|
+
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8688
|
+
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8689
|
+
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8690
|
+
boundaryPins: z5.array(pageDesignBoundaryPinSchema)
|
|
8691
|
+
}).strict().superRefine(validateUniquePageDesignPins);
|
|
8692
|
+
function addDuplicateStringIssues(ctx, input) {
|
|
8693
|
+
const seen = /* @__PURE__ */ new Set();
|
|
8694
|
+
const duplicates = /* @__PURE__ */ new Set();
|
|
8695
|
+
for (const value of input.values) {
|
|
8696
|
+
if (seen.has(value)) {
|
|
8697
|
+
duplicates.add(value);
|
|
8698
|
+
}
|
|
8699
|
+
seen.add(value);
|
|
8700
|
+
}
|
|
8701
|
+
for (const duplicate of duplicates) {
|
|
8702
|
+
ctx.addIssue({
|
|
8703
|
+
code: z5.ZodIssueCode.custom,
|
|
8704
|
+
path: [...input.path],
|
|
8705
|
+
message: `Duplicate ${input.label}: ${duplicate}.`
|
|
8706
|
+
});
|
|
8707
|
+
}
|
|
8708
|
+
}
|
|
8709
|
+
function validateBoundaryPinIdMatchesBlocks(pin, ctx) {
|
|
8456
8710
|
const expectedBoundaryId = makeBoundaryId(
|
|
8457
8711
|
pin.previousBlockId,
|
|
8458
8712
|
pin.nextBlockId
|
|
@@ -8464,14 +8718,8 @@ var pageDesignBoundaryPinSchema = z5.object({
|
|
|
8464
8718
|
message: `Boundary id must match previousBlockId and nextBlockId. Expected ${expectedBoundaryId}.`
|
|
8465
8719
|
});
|
|
8466
8720
|
}
|
|
8467
|
-
}
|
|
8468
|
-
|
|
8469
|
-
schemaVersion: z5.literal(pageDesignIntentSchemaVersion),
|
|
8470
|
-
siteStyleId: z5.string().min(1).transform(asSiteStyleId),
|
|
8471
|
-
pageFlowPresetId: z5.string().min(1).transform(asPageFlowPresetId),
|
|
8472
|
-
blockLookPins: z5.array(pageDesignBlockLookPinSchema),
|
|
8473
|
-
boundaryPins: z5.array(pageDesignBoundaryPinSchema)
|
|
8474
|
-
}).strict().superRefine((intent, ctx) => {
|
|
8721
|
+
}
|
|
8722
|
+
function validateUniquePageDesignPins(intent, ctx) {
|
|
8475
8723
|
addDuplicateStringIssues(ctx, {
|
|
8476
8724
|
values: intent.blockLookPins.map((pin) => pin.blockId),
|
|
8477
8725
|
path: ["blockLookPins"],
|
|
@@ -8484,23 +8732,6 @@ var pageDesignIntentV1Schema = z5.object({
|
|
|
8484
8732
|
path: ["boundaryPins"],
|
|
8485
8733
|
label: "boundary pin"
|
|
8486
8734
|
});
|
|
8487
|
-
});
|
|
8488
|
-
function addDuplicateStringIssues(ctx, input) {
|
|
8489
|
-
const seen = /* @__PURE__ */ new Set();
|
|
8490
|
-
const duplicates = /* @__PURE__ */ new Set();
|
|
8491
|
-
for (const value of input.values) {
|
|
8492
|
-
if (seen.has(value)) {
|
|
8493
|
-
duplicates.add(value);
|
|
8494
|
-
}
|
|
8495
|
-
seen.add(value);
|
|
8496
|
-
}
|
|
8497
|
-
for (const duplicate of duplicates) {
|
|
8498
|
-
ctx.addIssue({
|
|
8499
|
-
code: z5.ZodIssueCode.custom,
|
|
8500
|
-
path: [...input.path],
|
|
8501
|
-
message: `Duplicate ${input.label}: ${duplicate}.`
|
|
8502
|
-
});
|
|
8503
|
-
}
|
|
8504
8735
|
}
|
|
8505
8736
|
function boundaryKey(previousBlockId, nextBlockId) {
|
|
8506
8737
|
return makeBoundaryId(previousBlockId, nextBlockId);
|
|
@@ -8759,7 +8990,9 @@ var buttonBorderSchema = z7.object({
|
|
|
8759
8990
|
var variantShadowSchema = z7.object({
|
|
8760
8991
|
elevation: z7.enum(["none", "low", "medium", "high"]),
|
|
8761
8992
|
softness: z7.enum(["crisp", "soft", "hard"]).nullable(),
|
|
8762
|
-
position: z7.enum(["bottom", "bottom-right"]).default("bottom")
|
|
8993
|
+
position: z7.enum(["bottom", "bottom-right"]).default("bottom"),
|
|
8994
|
+
// Optional palette token for a coloured offset shadow; omit for neutral black.
|
|
8995
|
+
colorToken: themeColorTokenSchema.optional()
|
|
8763
8996
|
});
|
|
8764
8997
|
var variantEffectsSchema = z7.object({
|
|
8765
8998
|
base: z7.array(effectApplicationSchema).optional(),
|
|
@@ -9283,6 +9516,65 @@ var inkStamp = defineButtonPersonality({
|
|
|
9283
9516
|
}
|
|
9284
9517
|
});
|
|
9285
9518
|
|
|
9519
|
+
// ../theme-core/src/buttons/personalities/joy-stamp.ts
|
|
9520
|
+
var joyStamp = defineButtonPersonality({
|
|
9521
|
+
id: "joy-stamp",
|
|
9522
|
+
name: "Joy Stamp",
|
|
9523
|
+
description: "Pill buttons with a hard, brand-coloured offset shadow that presses in on hover.",
|
|
9524
|
+
tags: { tone: "bold", energy: "vibrant", motion: "expressive", era: "organic" },
|
|
9525
|
+
buttonSystem: {
|
|
9526
|
+
global: {
|
|
9527
|
+
cornerStyle: "pill",
|
|
9528
|
+
shadow: "high",
|
|
9529
|
+
textTransform: "none",
|
|
9530
|
+
// Bold display type on the buttons: use the heading font (Bricolage) at
|
|
9531
|
+
// 700, matching the mockup's chunky button labels.
|
|
9532
|
+
typography: "heading",
|
|
9533
|
+
fontWeight: 700,
|
|
9534
|
+
borderWidth: 2,
|
|
9535
|
+
hoverTransform: "none",
|
|
9536
|
+
hoverColor: "none"
|
|
9537
|
+
},
|
|
9538
|
+
sizes: {
|
|
9539
|
+
sm: { padding: "0.625rem 1.25rem", fontSize: "text-sm" },
|
|
9540
|
+
md: { padding: "0.875rem 1.75rem", fontSize: "text-base" },
|
|
9541
|
+
lg: { padding: "1.125rem 2.25rem", fontSize: "text-lg" },
|
|
9542
|
+
xl: { padding: "1.25rem 2.75rem", fontSize: "text-xl" }
|
|
9543
|
+
},
|
|
9544
|
+
variants: [
|
|
9545
|
+
{
|
|
9546
|
+
id: "primary",
|
|
9547
|
+
name: "Primary",
|
|
9548
|
+
enabled: true,
|
|
9549
|
+
priority: 1,
|
|
9550
|
+
background: { type: "solid", colorToken: "primary" },
|
|
9551
|
+
textColorToken: "primaryForeground",
|
|
9552
|
+
borderRadius: "rounded-full",
|
|
9553
|
+
// Cream stamp shadow under the burnt-orange fill.
|
|
9554
|
+
shadow: { elevation: "high", softness: "hard", position: "bottom-right", colorToken: "text" },
|
|
9555
|
+
effects: {
|
|
9556
|
+
hover: [{ effectId: "press-down" }]
|
|
9557
|
+
}
|
|
9558
|
+
},
|
|
9559
|
+
{
|
|
9560
|
+
id: "secondary",
|
|
9561
|
+
name: "Secondary",
|
|
9562
|
+
enabled: true,
|
|
9563
|
+
priority: 2,
|
|
9564
|
+
background: { type: "transparent" },
|
|
9565
|
+
textColorToken: "text",
|
|
9566
|
+
borderRadius: "rounded-full",
|
|
9567
|
+
border: { widthClass: "border-2", colorToken: "text" },
|
|
9568
|
+
// Brown stamp shadow under the cream outline.
|
|
9569
|
+
shadow: { elevation: "high", softness: "hard", position: "bottom-right", colorToken: "secondary" },
|
|
9570
|
+
effects: {
|
|
9571
|
+
hover: [{ effectId: "press-down" }]
|
|
9572
|
+
}
|
|
9573
|
+
}
|
|
9574
|
+
]
|
|
9575
|
+
}
|
|
9576
|
+
});
|
|
9577
|
+
|
|
9286
9578
|
// ../theme-core/src/buttons/personalities/pebble.ts
|
|
9287
9579
|
var pebble = defineButtonPersonality({
|
|
9288
9580
|
id: "pebble",
|
|
@@ -9556,7 +9848,8 @@ var buttonPersonalities = [
|
|
|
9556
9848
|
pebble,
|
|
9557
9849
|
inkStamp,
|
|
9558
9850
|
brushedWash,
|
|
9559
|
-
showtimePill
|
|
9851
|
+
showtimePill,
|
|
9852
|
+
joyStamp
|
|
9560
9853
|
];
|
|
9561
9854
|
var personalitiesById = new Map(
|
|
9562
9855
|
buttonPersonalities.map((p) => [p.id, p])
|
|
@@ -10427,7 +10720,9 @@ var boxBackgroundSchema = z22.object({
|
|
|
10427
10720
|
motion: z22.enum(["static", "fixed-frame"]).nullable().optional(),
|
|
10428
10721
|
overlay: boxBackgroundOverlaySchema.nullable().optional(),
|
|
10429
10722
|
textColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10430
|
-
headingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
10723
|
+
headingColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10724
|
+
linkColor: tokenOrCssColorValueSchema.nullable().optional(),
|
|
10725
|
+
supportingColor: tokenOrCssColorValueSchema.nullable().optional()
|
|
10431
10726
|
});
|
|
10432
10727
|
var noHeadingDecorationSchema = z22.object({
|
|
10433
10728
|
family: z22.literal("none")
|
|
@@ -10490,7 +10785,8 @@ var cardStylesOverrideSchema = z22.object({
|
|
|
10490
10785
|
"editorial-rule",
|
|
10491
10786
|
"soft-panel",
|
|
10492
10787
|
"editorial-serif-quote",
|
|
10493
|
-
"editorial-open"
|
|
10788
|
+
"editorial-open",
|
|
10789
|
+
"color-blocked"
|
|
10494
10790
|
]).nullable().optional(),
|
|
10495
10791
|
// Which site-style card variant the card adopts (emits a `.card-{id}` class).
|
|
10496
10792
|
// 'none' is boxless. Driven by the block look via testimonialCardTreatment.
|
|
@@ -11315,6 +11611,30 @@ var warmNeutralForest = definePaletteVariant({
|
|
|
11315
11611
|
]
|
|
11316
11612
|
});
|
|
11317
11613
|
|
|
11614
|
+
// ../theme-core/src/palette/variants/warm-dark.ts
|
|
11615
|
+
var warmDarkEmber = definePaletteVariant({
|
|
11616
|
+
id: "warm-dark-ember",
|
|
11617
|
+
name: "Warm Dark \u2014 Ember",
|
|
11618
|
+
description: "Deep clay-brown ground with burnt-orange accent and warm cream text.",
|
|
11619
|
+
tags: { tone: "bold", energy: "vibrant", era: "organic" },
|
|
11620
|
+
mode: "dark",
|
|
11621
|
+
colors: [
|
|
11622
|
+
{ name: "primary", hex: "#ce612f" },
|
|
11623
|
+
{ name: "secondary", hex: "#894e31" },
|
|
11624
|
+
{ name: "accent", hex: "#ce612f" },
|
|
11625
|
+
{ name: "success", hex: "#6f8f57" },
|
|
11626
|
+
{ name: "warning", hex: "#c98a3c" },
|
|
11627
|
+
{ name: "destructive", hex: "#c0492f" },
|
|
11628
|
+
{ name: "background", hex: "#4f2415" },
|
|
11629
|
+
{ name: "surface", hex: "#5c3320" },
|
|
11630
|
+
{ name: "surfaceAlt", hex: "#693a25" },
|
|
11631
|
+
{ name: "muted", hex: "#6a3d27" },
|
|
11632
|
+
{ name: "text", hex: "#f0e1d0" },
|
|
11633
|
+
{ name: "primaryForeground", hex: "#4f2415" },
|
|
11634
|
+
{ name: "border", hex: "#894e31" }
|
|
11635
|
+
]
|
|
11636
|
+
});
|
|
11637
|
+
|
|
11318
11638
|
// ../theme-core/src/palette/variants/index.ts
|
|
11319
11639
|
var paletteVariants = [
|
|
11320
11640
|
// Brand-led family
|
|
@@ -11335,7 +11655,9 @@ var paletteVariants = [
|
|
|
11335
11655
|
softNaturalSage,
|
|
11336
11656
|
softNaturalStone,
|
|
11337
11657
|
softNaturalWatercolor,
|
|
11338
|
-
softNaturalLilac
|
|
11658
|
+
softNaturalLilac,
|
|
11659
|
+
// Warm-dark family (dark mode)
|
|
11660
|
+
warmDarkEmber
|
|
11339
11661
|
];
|
|
11340
11662
|
var paletteVariantsById = new Map(
|
|
11341
11663
|
paletteVariants.map((v) => [v.id, v])
|
|
@@ -11616,6 +11938,32 @@ var clarityZenCardSystem = {
|
|
|
11616
11938
|
}
|
|
11617
11939
|
]
|
|
11618
11940
|
};
|
|
11941
|
+
var originalJoyCardSystem = {
|
|
11942
|
+
variants: [
|
|
11943
|
+
{
|
|
11944
|
+
id: "default",
|
|
11945
|
+
name: "Default",
|
|
11946
|
+
enabled: true,
|
|
11947
|
+
priority: 1,
|
|
11948
|
+
background: { type: "solid", colorToken: "surface" },
|
|
11949
|
+
foregroundToken: "text",
|
|
11950
|
+
spacing: "comfortable",
|
|
11951
|
+
corners: "rounded",
|
|
11952
|
+
shadow: { elevation: "none", softness: null, position: "bottom" }
|
|
11953
|
+
},
|
|
11954
|
+
{
|
|
11955
|
+
id: "alternative",
|
|
11956
|
+
name: "Statement",
|
|
11957
|
+
enabled: true,
|
|
11958
|
+
priority: 2,
|
|
11959
|
+
background: { type: "solid", colorToken: "primary" },
|
|
11960
|
+
foregroundToken: "primaryForeground",
|
|
11961
|
+
spacing: "comfortable",
|
|
11962
|
+
corners: "rounded",
|
|
11963
|
+
shadow: { elevation: "none", softness: null, position: "bottom" }
|
|
11964
|
+
}
|
|
11965
|
+
]
|
|
11966
|
+
};
|
|
11619
11967
|
|
|
11620
11968
|
// ../theme-core/src/site-styles/testimonialQuotePresets.ts
|
|
11621
11969
|
var serifDisplayQuote = {
|
|
@@ -11736,7 +12084,7 @@ function baseHeader(theme) {
|
|
|
11736
12084
|
navContainer: { type: "none", tint: null, opacity: 0.15 }
|
|
11737
12085
|
};
|
|
11738
12086
|
}
|
|
11739
|
-
var headerLayoutCatalog = [
|
|
12087
|
+
var headerLayoutCatalog = defineExactCatalog()([
|
|
11740
12088
|
{
|
|
11741
12089
|
id: asHeaderLayoutId("classic"),
|
|
11742
12090
|
label: "Classic",
|
|
@@ -11768,11 +12116,11 @@ var headerLayoutCatalog = [
|
|
|
11768
12116
|
maxRecommendedNavItems: 5,
|
|
11769
12117
|
allowedLogoShapes: ["none", "text-only", "horizontal"]
|
|
11770
12118
|
}
|
|
11771
|
-
];
|
|
12119
|
+
]);
|
|
11772
12120
|
function supportedLayouts(ids) {
|
|
11773
12121
|
return ids.map(asHeaderLayoutId);
|
|
11774
12122
|
}
|
|
11775
|
-
var headerStyleCatalog = [
|
|
12123
|
+
var headerStyleCatalog = defineExactCatalog()([
|
|
11776
12124
|
{
|
|
11777
12125
|
id: asHeaderStyleId("minimal"),
|
|
11778
12126
|
label: "Minimal",
|
|
@@ -11927,7 +12275,7 @@ var headerStyleCatalog = [
|
|
|
11927
12275
|
navTypography: "heading",
|
|
11928
12276
|
moods: ["calm", "editorial"]
|
|
11929
12277
|
}
|
|
11930
|
-
];
|
|
12278
|
+
]);
|
|
11931
12279
|
var headerLayoutsById = new Map(
|
|
11932
12280
|
headerLayoutCatalog.map((layout) => [layout.id, layout])
|
|
11933
12281
|
);
|
|
@@ -12040,7 +12388,7 @@ var headerStyleRepairOrder = /* @__PURE__ */ new Map(
|
|
|
12040
12388
|
[asHeaderStyleId("minimal"), headerStyleRepairChain(["minimal"])]
|
|
12041
12389
|
]
|
|
12042
12390
|
);
|
|
12043
|
-
var legacyHeaderLookAliases = [
|
|
12391
|
+
var legacyHeaderLookAliases = defineExactCatalog()([
|
|
12044
12392
|
{
|
|
12045
12393
|
lookId: asHeaderLookId("clean-base"),
|
|
12046
12394
|
selection: {
|
|
@@ -12097,7 +12445,7 @@ var legacyHeaderLookAliases = [
|
|
|
12097
12445
|
styleId: asHeaderStyleId("glass")
|
|
12098
12446
|
}
|
|
12099
12447
|
}
|
|
12100
|
-
];
|
|
12448
|
+
]);
|
|
12101
12449
|
var legacyHeaderLookAliasesById = new Map(legacyHeaderLookAliases.map((alias) => [alias.lookId, alias]));
|
|
12102
12450
|
function getHeaderStyle(id) {
|
|
12103
12451
|
return headerStylesById.get(id) ?? null;
|
|
@@ -12134,7 +12482,7 @@ function themedHeaderShadow(theme) {
|
|
|
12134
12482
|
case "high":
|
|
12135
12483
|
return { elevation: "lg" };
|
|
12136
12484
|
default:
|
|
12137
|
-
return
|
|
12485
|
+
return assertNever2(
|
|
12138
12486
|
theme.shadow.elevation,
|
|
12139
12487
|
"Unhandled theme shadow elevation"
|
|
12140
12488
|
);
|
|
@@ -12251,6 +12599,12 @@ function serifLineHeader(theme) {
|
|
|
12251
12599
|
letterSpacing: "wide",
|
|
12252
12600
|
gradient: false
|
|
12253
12601
|
},
|
|
12602
|
+
border: {
|
|
12603
|
+
style: "solid",
|
|
12604
|
+
width: "none",
|
|
12605
|
+
position: "none"
|
|
12606
|
+
},
|
|
12607
|
+
shadow: { elevation: "none" },
|
|
12254
12608
|
ctaTreatment: "outline",
|
|
12255
12609
|
ctaVariant: resolveHeaderCtaVariant(theme, "outline"),
|
|
12256
12610
|
ctaGap: "relaxed"
|
|
@@ -12375,7 +12729,7 @@ function floatingGlassHeader(theme) {
|
|
|
12375
12729
|
}
|
|
12376
12730
|
};
|
|
12377
12731
|
}
|
|
12378
|
-
var headerLookCatalog = [
|
|
12732
|
+
var headerLookCatalog = defineExactCatalog()([
|
|
12379
12733
|
{
|
|
12380
12734
|
id: asHeaderLookId("clean-base"),
|
|
12381
12735
|
label: "Clean base",
|
|
@@ -12493,7 +12847,7 @@ var headerLookCatalog = [
|
|
|
12493
12847
|
logoAccommodations: overlayLogoAccommodations,
|
|
12494
12848
|
compile: floatingGlassHeader
|
|
12495
12849
|
}
|
|
12496
|
-
];
|
|
12850
|
+
]);
|
|
12497
12851
|
var guaranteedFallbackHeaderLookId = asHeaderLookId("clean-base");
|
|
12498
12852
|
var guaranteedFallbackHeaderLayoutId = asHeaderLayoutId("classic");
|
|
12499
12853
|
var guaranteedFallbackHeaderStyleId = asHeaderStyleId("minimal");
|
|
@@ -12659,7 +13013,7 @@ function editorialColumnsFooter(theme) {
|
|
|
12659
13013
|
}
|
|
12660
13014
|
};
|
|
12661
13015
|
}
|
|
12662
|
-
var footerLookCatalog = [
|
|
13016
|
+
var footerLookCatalog = defineExactCatalog()([
|
|
12663
13017
|
{
|
|
12664
13018
|
id: asFooterLookId("footer-muted-grounding"),
|
|
12665
13019
|
label: "Muted grounding footer",
|
|
@@ -12682,7 +13036,7 @@ var footerLookCatalog = [
|
|
|
12682
13036
|
allowedContentPresence: ["default-footer", "default-and-blocks"],
|
|
12683
13037
|
compile: brandTwoBandFooter
|
|
12684
13038
|
}
|
|
12685
|
-
];
|
|
13039
|
+
]);
|
|
12686
13040
|
var footerLooksById = new Map(
|
|
12687
13041
|
footerLookCatalog.map((look) => [look.id, look])
|
|
12688
13042
|
);
|
|
@@ -12704,7 +13058,7 @@ var generatedDesignOptionCatalog = {
|
|
|
12704
13058
|
source: "generated",
|
|
12705
13059
|
sectionSurfaces: ["base", "muted-band", "accent-band", "brand-depth-band", "hero-image"],
|
|
12706
13060
|
contentFrames: generatedContentFrames,
|
|
12707
|
-
itemSurfaces: ["none", "default", "flat", "outlined", "raised", "inset", "editorial"],
|
|
13061
|
+
itemSurfaces: ["none", "default", "flat", "outlined", "raised", "inset", "editorial", "color-blocked"],
|
|
12708
13062
|
transitions: ["none", "soft-fade-short", "soft-fade-long"],
|
|
12709
13063
|
emphases: ["low", "medium", "high"],
|
|
12710
13064
|
detachedCustom: false
|
|
@@ -12716,8 +13070,15 @@ var userDesignOptionCatalog = {
|
|
|
12716
13070
|
itemSurfaces: generatedDesignOptionCatalog.itemSurfaces,
|
|
12717
13071
|
transitions: [
|
|
12718
13072
|
...generatedDesignOptionCatalog.transitions,
|
|
13073
|
+
"soft-fade-expansive",
|
|
12719
13074
|
"wave-edge",
|
|
12720
|
-
"
|
|
13075
|
+
"wave-edge-balanced",
|
|
13076
|
+
"wave-edge-gentle",
|
|
13077
|
+
"wave-edge-bold",
|
|
13078
|
+
"wave-edge-drift",
|
|
13079
|
+
"angle-edge",
|
|
13080
|
+
"angle-edge-subtle",
|
|
13081
|
+
"angle-edge-steep"
|
|
12721
13082
|
],
|
|
12722
13083
|
emphases: generatedDesignOptionCatalog.emphases,
|
|
12723
13084
|
detachedCustom: false
|
|
@@ -12898,6 +13259,29 @@ var boldDisplayTypography = {
|
|
|
12898
13259
|
},
|
|
12899
13260
|
scale: "balanced"
|
|
12900
13261
|
};
|
|
13262
|
+
var originalJoyTypography = {
|
|
13263
|
+
body: {
|
|
13264
|
+
family: "DM Sans, system-ui, sans-serif",
|
|
13265
|
+
size: "md",
|
|
13266
|
+
weight: "regular",
|
|
13267
|
+
lineHeight: "relaxed",
|
|
13268
|
+
letterSpacing: "normal"
|
|
13269
|
+
},
|
|
13270
|
+
headings: {
|
|
13271
|
+
default: {
|
|
13272
|
+
family: "Bricolage Grotesque, system-ui, sans-serif",
|
|
13273
|
+
weight: "bold",
|
|
13274
|
+
lineHeight: "normal",
|
|
13275
|
+
letterSpacing: "tight",
|
|
13276
|
+
italic: null,
|
|
13277
|
+
case: null
|
|
13278
|
+
},
|
|
13279
|
+
h1: { size: "2xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
13280
|
+
h2: { size: "xl", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null },
|
|
13281
|
+
h3: { size: "lg", weight: "bold", lineHeight: "normal", letterSpacing: "tight", italic: null }
|
|
13282
|
+
},
|
|
13283
|
+
scale: "balanced"
|
|
13284
|
+
};
|
|
12901
13285
|
var typographyPresets = [
|
|
12902
13286
|
defineTypographyPreset({
|
|
12903
13287
|
id: "typography-preset:modern-sans",
|
|
@@ -12984,6 +13368,32 @@ var typographyPresets = [
|
|
|
12984
13368
|
mobile: { headlineSize: "4xl", subheadlineSize: "xl" }
|
|
12985
13369
|
}
|
|
12986
13370
|
}
|
|
13371
|
+
}),
|
|
13372
|
+
defineTypographyPreset({
|
|
13373
|
+
id: "typography-preset:original-joy",
|
|
13374
|
+
name: "Original Joy",
|
|
13375
|
+
description: "Bold Bricolage Grotesque display headings over a clean DM Sans body, editorial and warm.",
|
|
13376
|
+
defaultFonts: { body: "DM Sans, system-ui, sans-serif", heading: "Bricolage Grotesque, system-ui, sans-serif" },
|
|
13377
|
+
recommendedFonts: {
|
|
13378
|
+
body: ["DM Sans", "Inter", "Manrope"],
|
|
13379
|
+
heading: ["Bricolage Grotesque", "Space Grotesk", "Archivo"]
|
|
13380
|
+
},
|
|
13381
|
+
slotPolicies: { body: bodyReadablePolicy, heading: displayHeadingPolicy },
|
|
13382
|
+
typography: originalJoyTypography,
|
|
13383
|
+
heroTypography: {
|
|
13384
|
+
headlineSize: "6xl",
|
|
13385
|
+
headlineLineHeight: "tight",
|
|
13386
|
+
subheadlineSize: "xl",
|
|
13387
|
+
subheadlineLineHeight: "normal",
|
|
13388
|
+
microHeadlineSize: "6xl",
|
|
13389
|
+
microHeadlineLineHeight: "tight",
|
|
13390
|
+
microSubheadlineSize: "lg",
|
|
13391
|
+
microSubheadlineLineHeight: "normal",
|
|
13392
|
+
responsive: {
|
|
13393
|
+
tablet: { headlineSize: "5xl" },
|
|
13394
|
+
mobile: { headlineSize: "4xl", subheadlineSize: "lg" }
|
|
13395
|
+
}
|
|
13396
|
+
}
|
|
12987
13397
|
})
|
|
12988
13398
|
];
|
|
12989
13399
|
var typographyPresetsById = new Map(
|
|
@@ -13007,7 +13417,8 @@ var curatedSiteStyleIdValues = [
|
|
|
13007
13417
|
"site-style:clarity-zen-blue",
|
|
13008
13418
|
SOFT_EARTH_SITE_STYLE_ID_VALUE,
|
|
13009
13419
|
"site-style:bold-launch",
|
|
13010
|
-
"site-style:south-west-twerk-school"
|
|
13420
|
+
"site-style:south-west-twerk-school",
|
|
13421
|
+
"site-style:original-joy"
|
|
13011
13422
|
];
|
|
13012
13423
|
var quietBudget = {
|
|
13013
13424
|
accentDensity: "low",
|
|
@@ -14053,7 +14464,7 @@ var curatedSiteStyles = [
|
|
|
14053
14464
|
"body-text-editorial-intro",
|
|
14054
14465
|
"schedule-details-brand-depth",
|
|
14055
14466
|
"testimonials-statement-cards",
|
|
14056
|
-
"contact-form-
|
|
14467
|
+
"contact-form-panel"
|
|
14057
14468
|
],
|
|
14058
14469
|
recommendedHeaderLookIds: [
|
|
14059
14470
|
"brand-solid",
|
|
@@ -14076,6 +14487,74 @@ var curatedSiteStyles = [
|
|
|
14076
14487
|
paletteChoice("brand-led-warm"),
|
|
14077
14488
|
paletteChoice("high-contrast-ink")
|
|
14078
14489
|
]
|
|
14490
|
+
}),
|
|
14491
|
+
defineCuratedSiteStyle({
|
|
14492
|
+
id: "site-style:original-joy",
|
|
14493
|
+
name: "Original Joy",
|
|
14494
|
+
headingDecoration: { family: "organic-squiggle", colorToken: "primary" },
|
|
14495
|
+
description: "Warm, dark, and editorial: deep clay grounds, cream type, and bold burnt-orange accents for soulful community brands.",
|
|
14496
|
+
generationBrief: "Use a deep brown ground with cream text and burnt-orange accents, large display headings, generous spacing, organic rounded shapes, and bold colour-blocked feature sections. Lead with warmth and belonging; calls to action should feel strong but unhurried.",
|
|
14497
|
+
tokenRecipes: {
|
|
14498
|
+
palette: "brand-led",
|
|
14499
|
+
contrast: "maximum",
|
|
14500
|
+
radius: "rounded",
|
|
14501
|
+
shadow: "subtle",
|
|
14502
|
+
typography: "clean-sans",
|
|
14503
|
+
spacing: "airy",
|
|
14504
|
+
motion: "expressive"
|
|
14505
|
+
},
|
|
14506
|
+
compositionBudget: expressiveBudget,
|
|
14507
|
+
typographyPresetChoices: [
|
|
14508
|
+
typographyChoice("typography-preset:original-joy"),
|
|
14509
|
+
typographyChoice("typography-preset:bold-display"),
|
|
14510
|
+
typographyChoice("typography-preset:modern-sans")
|
|
14511
|
+
],
|
|
14512
|
+
defaultTypographyPresetId: "typography-preset:original-joy",
|
|
14513
|
+
themeOverrides: {
|
|
14514
|
+
accordions: boldBorderedAccordionSystem,
|
|
14515
|
+
// Shared card system: warm rounded brown cards (event + testimonial cards
|
|
14516
|
+
// pick this up automatically) with a burnt-orange statement variant.
|
|
14517
|
+
cards: originalJoyCardSystem,
|
|
14518
|
+
testimonialQuote: accentGlyphQuote,
|
|
14519
|
+
bodyText: {
|
|
14520
|
+
intro: {
|
|
14521
|
+
paragraphSize: "editorial",
|
|
14522
|
+
headingSize: "editorial"
|
|
14523
|
+
}
|
|
14524
|
+
}
|
|
14525
|
+
},
|
|
14526
|
+
// Recommended block looks: the bold colour-blocked feature cards, a calm
|
|
14527
|
+
// band for the events spotlight, and statement testimonial cards.
|
|
14528
|
+
recommendedAppearancePresetIds: [
|
|
14529
|
+
"feature-cards-bold-colors",
|
|
14530
|
+
"offerings-calm-list",
|
|
14531
|
+
"testimonials-statement-cards"
|
|
14532
|
+
],
|
|
14533
|
+
// Floating, transparent "Clear Split" header (no fill behind the nav links).
|
|
14534
|
+
defaultHeaderSelection: { layoutId: "floating", styleId: "minimal-surface" },
|
|
14535
|
+
recommendedHeaderLayoutChoices: [headerLayoutChoice("floating")],
|
|
14536
|
+
recommendedHeaderStyleChoicesByLayout: {
|
|
14537
|
+
floating: [
|
|
14538
|
+
headerStyleChoice("minimal-surface"),
|
|
14539
|
+
headerStyleChoice("split-glass"),
|
|
14540
|
+
headerStyleChoice("glass")
|
|
14541
|
+
]
|
|
14542
|
+
},
|
|
14543
|
+
// Legacy bridge only (the real curation is the explicit selection above).
|
|
14544
|
+
// Kept to a reserved-space, non-overlay look on purpose: the split hero
|
|
14545
|
+
// flows below the Clear Split header, so we must NOT trigger the immersive
|
|
14546
|
+
// overlay-hero promotion that looks like `floating-glass` would force.
|
|
14547
|
+
recommendedHeaderLookIds: ["minimal-transparent"],
|
|
14548
|
+
recommendedFooterLookIds: [
|
|
14549
|
+
"site-footer-brand-two-band",
|
|
14550
|
+
"footer-muted-grounding"
|
|
14551
|
+
],
|
|
14552
|
+
buttonPersonalityChoices: [
|
|
14553
|
+
buttonChoice("joy-stamp"),
|
|
14554
|
+
buttonChoice("ink-stamp"),
|
|
14555
|
+
buttonChoice("showtime-pill")
|
|
14556
|
+
],
|
|
14557
|
+
paletteVariantChoices: [paletteChoice("warm-dark-ember")]
|
|
14079
14558
|
})
|
|
14080
14559
|
];
|
|
14081
14560
|
var curatedSiteStylesById = new Map(
|
|
@@ -14091,26 +14570,6 @@ var microHeroLayoutVariantKey = asLayoutVariantKey("micro");
|
|
|
14091
14570
|
var waveBoundaryOptionId = asBoundaryOptionId("break:wave");
|
|
14092
14571
|
|
|
14093
14572
|
// ../theme-core/src/site-styles/pageDesignEditorModel.ts
|
|
14094
|
-
var noneBoundaryOption = {
|
|
14095
|
-
id: asBoundaryOptionId("break:none"),
|
|
14096
|
-
label: "None",
|
|
14097
|
-
transitionAfter: "none"
|
|
14098
|
-
};
|
|
14099
|
-
var softBoundaryOption = {
|
|
14100
|
-
id: asBoundaryOptionId("break:soft"),
|
|
14101
|
-
label: "Soft",
|
|
14102
|
-
transitionAfter: "soft-fade-short"
|
|
14103
|
-
};
|
|
14104
|
-
var waveBoundaryOption = {
|
|
14105
|
-
id: asBoundaryOptionId("break:wave"),
|
|
14106
|
-
label: "Wave",
|
|
14107
|
-
transitionAfter: "wave-edge"
|
|
14108
|
-
};
|
|
14109
|
-
var spaciousBoundaryOption = {
|
|
14110
|
-
id: asBoundaryOptionId("break:spacious"),
|
|
14111
|
-
label: "Spacious",
|
|
14112
|
-
transitionAfter: "soft-fade-long"
|
|
14113
|
-
};
|
|
14114
14573
|
var pageFlowPresets = [
|
|
14115
14574
|
{
|
|
14116
14575
|
id: asPageFlowPresetId("flow:quiet"),
|
|
@@ -14380,8 +14839,7 @@ var defaultDesignRuntimeRules = defineDesignRuntimeRules({
|
|
|
14380
14839
|
type: "image",
|
|
14381
14840
|
opacity: 1,
|
|
14382
14841
|
position: "center center",
|
|
14383
|
-
|
|
14384
|
-
headingColor: "text"
|
|
14842
|
+
...uniformSectionForeground("text")
|
|
14385
14843
|
}
|
|
14386
14844
|
}
|
|
14387
14845
|
},
|
|
@@ -14491,9 +14949,30 @@ var defaultComponentRuntimeRules = defineComponentRuntimeRules({
|
|
|
14491
14949
|
border: {
|
|
14492
14950
|
enabled: false
|
|
14493
14951
|
}
|
|
14952
|
+
},
|
|
14953
|
+
"color-blocked": {
|
|
14954
|
+
// Bold, flat colour-blocked cards. The per-card background colour cycle
|
|
14955
|
+
// (by position) and staggered offset live in
|
|
14956
|
+
// blocks-static/card-treatments.css; here we set the shared shape:
|
|
14957
|
+
// generous padding, large radius, no border, flat (no shadow).
|
|
14958
|
+
treatment: "color-blocked",
|
|
14959
|
+
spacing: "spacious",
|
|
14960
|
+
rounded: "2xl",
|
|
14961
|
+
raised: false,
|
|
14962
|
+
border: {
|
|
14963
|
+
enabled: false
|
|
14964
|
+
}
|
|
14494
14965
|
}
|
|
14495
14966
|
}
|
|
14496
14967
|
});
|
|
14968
|
+
function uniformSectionForeground(token) {
|
|
14969
|
+
return {
|
|
14970
|
+
textColor: token,
|
|
14971
|
+
headingColor: token,
|
|
14972
|
+
linkColor: token,
|
|
14973
|
+
supportingColor: token
|
|
14974
|
+
};
|
|
14975
|
+
}
|
|
14497
14976
|
|
|
14498
14977
|
// ../theme-core/src/site-styles/generatedSchemas.ts
|
|
14499
14978
|
import { z as z25 } from "zod";
|
|
@@ -16242,6 +16721,37 @@ function resolveBackgroundColorValue(value, context) {
|
|
|
16242
16721
|
});
|
|
16243
16722
|
}
|
|
16244
16723
|
|
|
16724
|
+
// ../blocks/src/system/transforms/registry/_utils/sectionForegroundStyles.ts
|
|
16725
|
+
function readColorToken(input, key) {
|
|
16726
|
+
const value = input[key];
|
|
16727
|
+
return typeof value === "string" && value.trim().length > 0 ? value.trim() : null;
|
|
16728
|
+
}
|
|
16729
|
+
function resolveOptionalForegroundColor(value, context) {
|
|
16730
|
+
if (!value) return null;
|
|
16731
|
+
return resolveBackgroundColorValue(value, context);
|
|
16732
|
+
}
|
|
16733
|
+
function resolveSectionForegroundStyles(value, context) {
|
|
16734
|
+
if (!value || typeof value !== "object") {
|
|
16735
|
+
return {};
|
|
16736
|
+
}
|
|
16737
|
+
const input = value;
|
|
16738
|
+
const textColor = readColorToken(input, "textColor");
|
|
16739
|
+
const resolvedText = resolveOptionalForegroundColor(textColor, context);
|
|
16740
|
+
if (!resolvedText) {
|
|
16741
|
+
return {};
|
|
16742
|
+
}
|
|
16743
|
+
const resolvedHeading = resolveOptionalForegroundColor(readColorToken(input, "headingColor"), context) ?? resolvedText;
|
|
16744
|
+
const resolvedLink = resolveOptionalForegroundColor(readColorToken(input, "linkColor"), context) ?? resolvedText;
|
|
16745
|
+
const resolvedSupporting = resolveOptionalForegroundColor(readColorToken(input, "supportingColor"), context) ?? resolvedText;
|
|
16746
|
+
return {
|
|
16747
|
+
color: resolvedText,
|
|
16748
|
+
"--section-text-color": resolvedText,
|
|
16749
|
+
"--section-heading-color": resolvedHeading,
|
|
16750
|
+
"--section-link-color": resolvedLink,
|
|
16751
|
+
"--section-supporting-color": resolvedSupporting
|
|
16752
|
+
};
|
|
16753
|
+
}
|
|
16754
|
+
|
|
16245
16755
|
// ../blocks/src/system/transforms/registry/boxStyles.ts
|
|
16246
16756
|
var spacingTransform = {
|
|
16247
16757
|
id: "boxStyles.spacing",
|
|
@@ -16376,6 +16886,8 @@ var boxStylesCompositeTransform = {
|
|
|
16376
16886
|
classes.push("rb-card-treatment-editorial-serif-quote");
|
|
16377
16887
|
} else if (input.treatment === "editorial-open") {
|
|
16378
16888
|
classes.push("rb-card-treatment-editorial-open");
|
|
16889
|
+
} else if (input.treatment === "color-blocked") {
|
|
16890
|
+
classes.push("rb-card-treatment-color-blocked");
|
|
16379
16891
|
}
|
|
16380
16892
|
const cardVariant = normalizeBoxStylesCardVariant(input.cardVariant);
|
|
16381
16893
|
if (cardVariant && cardVariant !== "none") {
|
|
@@ -16651,35 +17163,8 @@ var sectionHeadingColorStyleTransform = {
|
|
|
16651
17163
|
var sectionColorsStyleTransform = {
|
|
16652
17164
|
id: "sectionStyles.resolveColorsStyle",
|
|
16653
17165
|
kind: "formatter",
|
|
16654
|
-
summary: "Resolve section
|
|
16655
|
-
run: (value, _options, context) =>
|
|
16656
|
-
if (!value || typeof value !== "object") {
|
|
16657
|
-
return {};
|
|
16658
|
-
}
|
|
16659
|
-
const bg = value;
|
|
16660
|
-
const textColor = typeof bg.textColor === "string" ? bg.textColor.trim() : null;
|
|
16661
|
-
const headingColor = typeof bg.headingColor === "string" ? bg.headingColor.trim() : null;
|
|
16662
|
-
const style = {};
|
|
16663
|
-
if (textColor) {
|
|
16664
|
-
const resolvedText = resolveBackgroundColorValue(textColor, context);
|
|
16665
|
-
if (resolvedText) {
|
|
16666
|
-
style.color = resolvedText;
|
|
16667
|
-
style["--section-text-color"] = resolvedText;
|
|
16668
|
-
if (headingColor) {
|
|
16669
|
-
const resolvedHeading = resolveBackgroundColorValue(
|
|
16670
|
-
headingColor,
|
|
16671
|
-
context
|
|
16672
|
-
);
|
|
16673
|
-
if (resolvedHeading) {
|
|
16674
|
-
style["--section-heading-color"] = resolvedHeading;
|
|
16675
|
-
}
|
|
16676
|
-
} else {
|
|
16677
|
-
style["--section-heading-color"] = resolvedText;
|
|
16678
|
-
}
|
|
16679
|
-
}
|
|
16680
|
-
}
|
|
16681
|
-
return style;
|
|
16682
|
-
}
|
|
17166
|
+
summary: "Resolve section foreground colors into a style object",
|
|
17167
|
+
run: (value, _options, context) => resolveSectionForegroundStyles(value, context)
|
|
16683
17168
|
};
|
|
16684
17169
|
var GAP_CLASS_MAP = {
|
|
16685
17170
|
none: "rb-gap-semantic-none",
|
|
@@ -16991,46 +17476,6 @@ function sectionState(opts) {
|
|
|
16991
17476
|
);
|
|
16992
17477
|
}
|
|
16993
17478
|
|
|
16994
|
-
// ../blocks/src/system/node/fragments/headingDecoration.ts
|
|
16995
|
-
var defaultBindFrom = "_sectionStyles.headingDecoration";
|
|
16996
|
-
function headingDecoration({
|
|
16997
|
-
bindFrom = defaultBindFrom,
|
|
16998
|
-
className
|
|
16999
|
-
} = {}) {
|
|
17000
|
-
return el(
|
|
17001
|
-
"div",
|
|
17002
|
-
// Full-width block row so the mark inherits the heading's alignment. The
|
|
17003
|
-
// heading stacks are flexbox; `text-align` positions inline content, not flex
|
|
17004
|
-
// items, so the inline-block mark must sit inside a stretched block for a
|
|
17005
|
-
// centred heading to centre it (and a left heading to keep it at the start).
|
|
17006
|
-
{ "aria-hidden": "true", className: "rb-heading-decoration-row" },
|
|
17007
|
-
[
|
|
17008
|
-
el("div", {
|
|
17009
|
-
className: {
|
|
17010
|
-
$bind: {
|
|
17011
|
-
from: bindFrom,
|
|
17012
|
-
transforms: [
|
|
17013
|
-
{
|
|
17014
|
-
id: "ui.headingDecorationClassName",
|
|
17015
|
-
options: { baseClass: className }
|
|
17016
|
-
}
|
|
17017
|
-
]
|
|
17018
|
-
}
|
|
17019
|
-
}
|
|
17020
|
-
})
|
|
17021
|
-
],
|
|
17022
|
-
// Gate on the presence of `family`. The render-time theme projection omits
|
|
17023
|
-
// `headingDecoration` entirely for absent/none signatures, so the
|
|
17024
|
-
// dominant "no decoration" case is absent → falsy → not rendered. A presence
|
|
17025
|
-
// check (rather than `family !== 'none'`) is deliberate: `when`'s only
|
|
17026
|
-
// negation form would render on *absent* values, which would emit a stub on
|
|
17027
|
-
// every undecorated heading. The remaining edge — hand-authored content with
|
|
17028
|
-
// an explicit `{ family: 'none' }` — renders an aria-hidden `rb-hidden`
|
|
17029
|
-
// (display:none) stub with no visual or layout impact.
|
|
17030
|
-
when(`${bindFrom}.family`)
|
|
17031
|
-
);
|
|
17032
|
-
}
|
|
17033
|
-
|
|
17034
17479
|
// ../blocks/src/system/fragments/types.ts
|
|
17035
17480
|
import { z as z28 } from "zod";
|
|
17036
17481
|
var FRAGMENT_ID_PATTERN = /^[a-z0-9](?:[a-z0-9._-]*[a-z0-9])?$/i;
|
|
@@ -17503,6 +17948,9 @@ var heroCopyFragment = defineFragment({
|
|
|
17503
17948
|
maxLength: 600
|
|
17504
17949
|
}
|
|
17505
17950
|
],
|
|
17951
|
+
// Layout order is [eyebrow, headline, subheadline]. The hero block's
|
|
17952
|
+
// `splitEditorial` variant reads these nodes by index; keep the order stable
|
|
17953
|
+
// (it fails fast at import if the count changes).
|
|
17506
17954
|
layout: [
|
|
17507
17955
|
text(
|
|
17508
17956
|
{
|
|
@@ -17725,6 +18173,7 @@ var heroCtaRowFragment = defineFragment({
|
|
|
17725
18173
|
ctaRow({
|
|
17726
18174
|
collectionPath: "content.ctas",
|
|
17727
18175
|
itemName: "cta",
|
|
18176
|
+
gap: "md",
|
|
17728
18177
|
justify: {
|
|
17729
18178
|
$bind: {
|
|
17730
18179
|
from: "content",
|
|
@@ -17810,7 +18259,6 @@ var testimonialsHeadingFragment = defineFragment({
|
|
|
17810
18259
|
when("content.heading"),
|
|
17811
18260
|
bind("content.heading")
|
|
17812
18261
|
),
|
|
17813
|
-
headingDecoration(),
|
|
17814
18262
|
text(
|
|
17815
18263
|
{
|
|
17816
18264
|
as: "p",
|
|
@@ -18441,7 +18889,7 @@ var blogFeaturedPostFragment = defineFragment({
|
|
|
18441
18889
|
});
|
|
18442
18890
|
|
|
18443
18891
|
// ../blocks/src/system/fragments/library/faqHeading.ts
|
|
18444
|
-
function faqHeadingLayout(
|
|
18892
|
+
function faqHeadingLayout() {
|
|
18445
18893
|
return stack(
|
|
18446
18894
|
{
|
|
18447
18895
|
gap: "sm",
|
|
@@ -18466,7 +18914,6 @@ function faqHeadingLayout(options = {}) {
|
|
|
18466
18914
|
when("content.title"),
|
|
18467
18915
|
bind("content.title")
|
|
18468
18916
|
),
|
|
18469
|
-
...options.decorated ? [headingDecoration()] : [],
|
|
18470
18917
|
richText(
|
|
18471
18918
|
{
|
|
18472
18919
|
className: "faq-description rb-prose rb-mx-auto rb-max-w-none",
|
|
@@ -18508,7 +18955,6 @@ var faqHeadingFragment = defineFragment({
|
|
|
18508
18955
|
],
|
|
18509
18956
|
layout: faqHeadingLayout()
|
|
18510
18957
|
});
|
|
18511
|
-
var decoratedFaqHeadingLayout = faqHeadingLayout({ decorated: true });
|
|
18512
18958
|
|
|
18513
18959
|
// ../blocks/src/system/fragments/library/faqAccordion.ts
|
|
18514
18960
|
function createFaqAccordionLayout(options = {}) {
|
|
@@ -19665,12 +20111,38 @@ function splitLayoutWith(children) {
|
|
|
19665
20111
|
var splitContentColumn = heroContentWrapper(heroContentNodes, "md", "rb-w-full rb-text-left");
|
|
19666
20112
|
var splitImageColumn = heroSplitImagePane();
|
|
19667
20113
|
var splitLayout = splitLayoutWith([
|
|
20114
|
+
splitImageColumn,
|
|
20115
|
+
splitContentColumn
|
|
20116
|
+
]);
|
|
20117
|
+
var splitReverseLayout = splitLayoutWith([
|
|
19668
20118
|
splitContentColumn,
|
|
19669
20119
|
splitImageColumn
|
|
19670
20120
|
]);
|
|
19671
|
-
var
|
|
19672
|
-
|
|
19673
|
-
|
|
20121
|
+
var heroEyebrowNode = heroCopyFragment.layout[0];
|
|
20122
|
+
var heroHeadlineNode = heroCopyFragment.layout[1];
|
|
20123
|
+
var heroSubheadlineNode = heroCopyFragment.layout[2];
|
|
20124
|
+
var heroCtaRowNode = heroCtaRowFragment.layout[0];
|
|
20125
|
+
if (!heroEyebrowNode || !heroHeadlineNode || !heroSubheadlineNode || !heroCtaRowNode) {
|
|
20126
|
+
throw new Error("Hero copy/CTA fragments are missing their expected layout nodes.");
|
|
20127
|
+
}
|
|
20128
|
+
var heroEditorialBottomRow = inline(
|
|
20129
|
+
{
|
|
20130
|
+
gap: "lg",
|
|
20131
|
+
align: "end",
|
|
20132
|
+
justify: "start",
|
|
20133
|
+
wrap: true,
|
|
20134
|
+
className: "rb-w-full"
|
|
20135
|
+
},
|
|
20136
|
+
[heroSubheadlineNode, heroCtaRowNode]
|
|
20137
|
+
);
|
|
20138
|
+
var splitEditorialContentColumn = heroContentWrapper(
|
|
20139
|
+
[heroEyebrowNode, heroHeadlineNode, heroEditorialBottomRow],
|
|
20140
|
+
"md",
|
|
20141
|
+
"rb-w-full rb-text-left"
|
|
20142
|
+
);
|
|
20143
|
+
var splitEditorialLayout = splitLayoutWith([
|
|
20144
|
+
splitEditorialContentColumn,
|
|
20145
|
+
splitImageColumn
|
|
19674
20146
|
]);
|
|
19675
20147
|
var heroConfig = {
|
|
19676
20148
|
id: "block.hero",
|
|
@@ -19697,7 +20169,8 @@ var heroConfig = {
|
|
|
19697
20169
|
classic: classicLayout,
|
|
19698
20170
|
micro: microLayout,
|
|
19699
20171
|
split: splitLayout,
|
|
19700
|
-
splitReverse: splitReverseLayout
|
|
20172
|
+
splitReverse: splitReverseLayout,
|
|
20173
|
+
splitEditorial: splitEditorialLayout
|
|
19701
20174
|
},
|
|
19702
20175
|
defaultVariant: "classic",
|
|
19703
20176
|
description: "Hero section with headline, subtitle, and repeatable CTAs.",
|
|
@@ -19812,18 +20285,6 @@ function introHeading(className) {
|
|
|
19812
20285
|
bind("content.title")
|
|
19813
20286
|
);
|
|
19814
20287
|
}
|
|
19815
|
-
function introHeadingGroup(className) {
|
|
19816
|
-
return stack(
|
|
19817
|
-
{
|
|
19818
|
-
gap: "sm",
|
|
19819
|
-
className: "rb-intro-heading-group"
|
|
19820
|
-
},
|
|
19821
|
-
[
|
|
19822
|
-
introHeading(className),
|
|
19823
|
-
headingDecoration()
|
|
19824
|
-
]
|
|
19825
|
-
);
|
|
19826
|
-
}
|
|
19827
20288
|
function introBody(className = "rb-prose rb-max-w-none") {
|
|
19828
20289
|
return richText({ className }, bind("content.body"));
|
|
19829
20290
|
}
|
|
@@ -19842,7 +20303,6 @@ function introCopyStack(options = {}) {
|
|
|
19842
20303
|
},
|
|
19843
20304
|
[
|
|
19844
20305
|
introHeading(options.headingClassName ?? "rb-intro-title"),
|
|
19845
|
-
headingDecoration(),
|
|
19846
20306
|
introBody(options.bodyClassName),
|
|
19847
20307
|
introCtas(options.ctaJustify)
|
|
19848
20308
|
]
|
|
@@ -19882,7 +20342,7 @@ var statementCopyLayout = styledSection({
|
|
|
19882
20342
|
className: "rb-intro rb-intro-statement rb-grid rb-grid-cols-1 rb-gap-8 rb-md-grid-cols-2 rb-md-items-start"
|
|
19883
20343
|
},
|
|
19884
20344
|
[
|
|
19885
|
-
|
|
20345
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
19886
20346
|
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
19887
20347
|
introBody(),
|
|
19888
20348
|
introCtas("start")
|
|
@@ -19903,7 +20363,7 @@ var statementMediaLayout = styledSection({
|
|
|
19903
20363
|
className: "rb-intro rb-intro-statement-media rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-3 rb-lg-items-center"
|
|
19904
20364
|
},
|
|
19905
20365
|
[
|
|
19906
|
-
|
|
20366
|
+
introHeading("rb-intro-title rb-max-w-xl"),
|
|
19907
20367
|
stack({ gap: "md", className: "rb-intro-copy rb-max-w-xl" }, [
|
|
19908
20368
|
introBody(),
|
|
19909
20369
|
introCtas("start")
|
|
@@ -20846,16 +21306,59 @@ var formComposition = composeFragments([
|
|
|
20846
21306
|
{ fragment: formCopyFragment },
|
|
20847
21307
|
{ fragment: formEmbedFragment }
|
|
20848
21308
|
]);
|
|
20849
|
-
|
|
20850
|
-
|
|
20851
|
-
|
|
20852
|
-
|
|
20853
|
-
|
|
20854
|
-
|
|
20855
|
-
|
|
20856
|
-
|
|
20857
|
-
|
|
20858
|
-
|
|
21309
|
+
function fragmentLayoutNode(layout) {
|
|
21310
|
+
return isNodeDefinitionArray(layout) ? el("div", {}, [...layout]) : layout;
|
|
21311
|
+
}
|
|
21312
|
+
function isNodeDefinitionArray(layout) {
|
|
21313
|
+
return Array.isArray(layout);
|
|
21314
|
+
}
|
|
21315
|
+
var copyLayout = fragmentLayoutNode(formCopyFragment.layout);
|
|
21316
|
+
var embedLayout = fragmentLayoutNode(formEmbedFragment.layout);
|
|
21317
|
+
var formSurface = styledContainer({
|
|
21318
|
+
bindFrom: "_containerStyles",
|
|
21319
|
+
constrainWidth: false,
|
|
21320
|
+
baseClassName: "rb-form-surface rb-relative rb-isolate rb-overflow-hidden",
|
|
21321
|
+
children: embedLayout
|
|
21322
|
+
});
|
|
21323
|
+
function createFormLayout(variant) {
|
|
21324
|
+
if (variant === "two-column") {
|
|
21325
|
+
return styledSection({
|
|
21326
|
+
children: el(
|
|
21327
|
+
"div",
|
|
21328
|
+
{
|
|
21329
|
+
className: "rb-container"
|
|
21330
|
+
},
|
|
21331
|
+
[
|
|
21332
|
+
el(
|
|
21333
|
+
"div",
|
|
21334
|
+
{
|
|
21335
|
+
className: "rb-form-two-column rb-grid rb-grid-cols-1 rb-gap-8 rb-lg-grid-cols-2 rb-lg-items-start"
|
|
21336
|
+
},
|
|
21337
|
+
[
|
|
21338
|
+
stack({ gap: "md", className: "rb-form-copy-column" }, [copyLayout]),
|
|
21339
|
+
formSurface
|
|
21340
|
+
]
|
|
21341
|
+
)
|
|
21342
|
+
]
|
|
21343
|
+
),
|
|
21344
|
+
baseClass: "",
|
|
21345
|
+
spacing: "medium",
|
|
21346
|
+
background: "surface"
|
|
21347
|
+
});
|
|
21348
|
+
}
|
|
21349
|
+
return styledSection({
|
|
21350
|
+
children: styledContainer({
|
|
21351
|
+
rootType: "stack",
|
|
21352
|
+
rootProps: { gap: "lg" },
|
|
21353
|
+
children: formComposition.layout
|
|
21354
|
+
}),
|
|
21355
|
+
baseClass: "",
|
|
21356
|
+
spacing: "medium",
|
|
21357
|
+
background: "surface"
|
|
21358
|
+
});
|
|
21359
|
+
}
|
|
21360
|
+
var formLayout = createFormLayout("default");
|
|
21361
|
+
var twoColumnFormLayout = createFormLayout("two-column");
|
|
20859
21362
|
var dataLoaders = buildFragmentDataLoaders(formComposition);
|
|
20860
21363
|
var formManifest = createBlockManifest({
|
|
20861
21364
|
id: "block.form",
|
|
@@ -20868,6 +21371,23 @@ var formManifest = createBlockManifest({
|
|
|
20868
21371
|
{ fragment: formEmbedFragment }
|
|
20869
21372
|
],
|
|
20870
21373
|
layout: formLayout,
|
|
21374
|
+
variants: {
|
|
21375
|
+
default: formLayout,
|
|
21376
|
+
"two-column": twoColumnFormLayout
|
|
21377
|
+
},
|
|
21378
|
+
defaultVariant: "default",
|
|
21379
|
+
variantOptions: {
|
|
21380
|
+
default: {
|
|
21381
|
+
label: "Stacked",
|
|
21382
|
+
description: "Copy above the form.",
|
|
21383
|
+
icon: "PanelTop"
|
|
21384
|
+
},
|
|
21385
|
+
"two-column": {
|
|
21386
|
+
label: "Two column",
|
|
21387
|
+
description: "Copy on the left and form on the right.",
|
|
21388
|
+
icon: "Columns2"
|
|
21389
|
+
}
|
|
21390
|
+
},
|
|
20871
21391
|
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
20872
21392
|
behaviours: { supportsThemeSwitching: true, inlineEditing: false, animation: false, paletteHidden: false },
|
|
20873
21393
|
category: "interactive",
|
|
@@ -20893,15 +21413,14 @@ var formBlockDefinition = {
|
|
|
20893
21413
|
};
|
|
20894
21414
|
|
|
20895
21415
|
// ../blocks/src/system/blocks/faq.ts
|
|
20896
|
-
function
|
|
20897
|
-
return
|
|
21416
|
+
function fragmentLayoutNode2(layout) {
|
|
21417
|
+
return isNodeDefinitionArray2(layout) ? el("div", {}, [...layout]) : layout;
|
|
20898
21418
|
}
|
|
20899
|
-
function
|
|
21419
|
+
function isNodeDefinitionArray2(layout) {
|
|
20900
21420
|
return Array.isArray(layout);
|
|
20901
21421
|
}
|
|
20902
|
-
var headingLayout =
|
|
20903
|
-
var accordionLayout =
|
|
20904
|
-
var decoratedHeadingLayout = fragmentLayoutNode(decoratedFaqHeadingLayout);
|
|
21422
|
+
var headingLayout = fragmentLayoutNode2(faqHeadingFragment.layout);
|
|
21423
|
+
var accordionLayout = fragmentLayoutNode2(faqAccordionFragment.layout);
|
|
20905
21424
|
var questionColumnsAccordionLayout = createFaqAccordionLayout({
|
|
20906
21425
|
rootClassName: "accordion-root rb-faq-question-columns rb-grid rb-grid-cols-1 rb-gap-4 rb-lg-grid-cols-2"
|
|
20907
21426
|
});
|
|
@@ -20909,7 +21428,7 @@ var defaultLayout = styledSection({
|
|
|
20909
21428
|
children: styledContainer({
|
|
20910
21429
|
baseClassName: "rb-relative rb-isolate",
|
|
20911
21430
|
children: stack({ gap: "xl", className: "rb-w-full rb-max-w-4xl rb-mx-auto" }, [
|
|
20912
|
-
|
|
21431
|
+
headingLayout,
|
|
20913
21432
|
accordionLayout
|
|
20914
21433
|
])
|
|
20915
21434
|
}),
|
|
@@ -20937,7 +21456,7 @@ var questionColumnsLayout = styledSection({
|
|
|
20937
21456
|
children: stack(
|
|
20938
21457
|
{ gap: "xl", className: "rb-w-full" },
|
|
20939
21458
|
[
|
|
20940
|
-
|
|
21459
|
+
headingLayout,
|
|
20941
21460
|
questionColumnsAccordionLayout
|
|
20942
21461
|
]
|
|
20943
21462
|
)
|
|
@@ -21271,7 +21790,7 @@ function resolveHeroContentAlignment(content) {
|
|
|
21271
21790
|
const raw = readHeroLayoutString(content, "contentAlignment");
|
|
21272
21791
|
if (raw === "left" || raw === "center" || raw === "right") return raw;
|
|
21273
21792
|
const variant = resolveHeroVariant(content);
|
|
21274
|
-
if (variant === "split" || variant === "splitReverse") return "left";
|
|
21793
|
+
if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "left";
|
|
21275
21794
|
return "center";
|
|
21276
21795
|
}
|
|
21277
21796
|
function resolveHeroVerticalAlignment(content) {
|
|
@@ -21281,7 +21800,7 @@ function resolveHeroVerticalAlignment(content) {
|
|
|
21281
21800
|
const minHeight = sectionStyles?.minHeight;
|
|
21282
21801
|
if (minHeight === "banner" || minHeight === "hero" || minHeight === "immersive") return "center";
|
|
21283
21802
|
const variant = resolveHeroVariant(content);
|
|
21284
|
-
if (variant === "split" || variant === "splitReverse") return "center";
|
|
21803
|
+
if (variant === "split" || variant === "splitReverse" || variant === "splitEditorial") return "center";
|
|
21285
21804
|
return "top";
|
|
21286
21805
|
}
|
|
21287
21806
|
function resolveHeroContentMaxWidth(content) {
|
|
@@ -21683,7 +22202,7 @@ function planSiteChromePlacement(positioning) {
|
|
|
21683
22202
|
standaloneShellClassName: "fixed left-0 right-0 top-0 z-40 w-full"
|
|
21684
22203
|
};
|
|
21685
22204
|
default:
|
|
21686
|
-
return
|
|
22205
|
+
return assertNever2(positioning);
|
|
21687
22206
|
}
|
|
21688
22207
|
}
|
|
21689
22208
|
|
|
@@ -22837,7 +23356,7 @@ var floatingLayout = inline(
|
|
|
22837
23356
|
),
|
|
22838
23357
|
fallback: `rb-header-layout header-floating-container rb-absolute rb-left-1/2 rb-top-4 ${desktopOnlyDisplay("flex")} rb-w-calc-100-minus-2rem rb-max-w-7xl rb-translate-x-neg-1/2 rb-items-start rb-gap-6 rb-px-6`
|
|
22839
23358
|
}),
|
|
22840
|
-
align: "
|
|
23359
|
+
align: "start"
|
|
22841
23360
|
},
|
|
22842
23361
|
[
|
|
22843
23362
|
logoRow,
|
|
@@ -23356,7 +23875,6 @@ var splitHeading = stack(
|
|
|
23356
23875
|
when("content.heading"),
|
|
23357
23876
|
bind("content.heading")
|
|
23358
23877
|
),
|
|
23359
|
-
headingDecoration(),
|
|
23360
23878
|
text(
|
|
23361
23879
|
{
|
|
23362
23880
|
as: "p",
|
|
@@ -23894,7 +24412,6 @@ var sectionHeading = stack(
|
|
|
23894
24412
|
when("content.title"),
|
|
23895
24413
|
bind("content.title")
|
|
23896
24414
|
),
|
|
23897
|
-
headingDecoration(),
|
|
23898
24415
|
richText(
|
|
23899
24416
|
{
|
|
23900
24417
|
className: "rb-feature-cards-description rb-prose rb-mx-auto rb-max-w-none",
|
|
@@ -23927,6 +24444,17 @@ var featureCard = styledCard(
|
|
|
23927
24444
|
null,
|
|
23928
24445
|
bind("card.icon")
|
|
23929
24446
|
),
|
|
24447
|
+
// Auto-numbered marker (01, 02, …). Always in the DOM; CSS shows it only
|
|
24448
|
+
// when cardMarker === 'numbers' and fills it via a counter. Its own class
|
|
24449
|
+
// (not the icon zone) so the icon-zone collapse behaviour is unaffected.
|
|
24450
|
+
el(
|
|
24451
|
+
"div",
|
|
24452
|
+
{
|
|
24453
|
+
className: "rb-feature-card-number-zone",
|
|
24454
|
+
"aria-hidden": "true"
|
|
24455
|
+
},
|
|
24456
|
+
null
|
|
24457
|
+
),
|
|
23930
24458
|
text(
|
|
23931
24459
|
{
|
|
23932
24460
|
as: "h3",
|
|
@@ -23966,6 +24494,12 @@ var cardsLayout = styledSection({
|
|
|
23966
24494
|
sectionHeading,
|
|
23967
24495
|
grid3(
|
|
23968
24496
|
{
|
|
24497
|
+
className: "rb-feature-cards-grid",
|
|
24498
|
+
// Drives which marker shows (icons / numbers / none) via CSS; the
|
|
24499
|
+
// fallback keeps legacy content (no cardMarker) showing icons.
|
|
24500
|
+
"data-card-marker": {
|
|
24501
|
+
$bind: { from: "content.cardMarker", fallback: "icons" }
|
|
24502
|
+
},
|
|
23969
24503
|
cols: {
|
|
23970
24504
|
$bind: {
|
|
23971
24505
|
from: "content.columns",
|
|
@@ -24094,9 +24628,23 @@ var featureCardsConfig = {
|
|
|
24094
24628
|
}
|
|
24095
24629
|
},
|
|
24096
24630
|
{
|
|
24097
|
-
id: "
|
|
24631
|
+
id: "cardMarker",
|
|
24098
24632
|
type: "select",
|
|
24099
|
-
label: "
|
|
24633
|
+
label: "Card marker",
|
|
24634
|
+
required: false,
|
|
24635
|
+
defaultValue: "icons",
|
|
24636
|
+
multiple: false,
|
|
24637
|
+
options: [
|
|
24638
|
+
{ value: "icons", label: "Icons" },
|
|
24639
|
+
{ value: "numbers", label: "Numbers (01, 02, \u2026)" },
|
|
24640
|
+
{ value: "none", label: "None" }
|
|
24641
|
+
],
|
|
24642
|
+
ui: { intent: "display" }
|
|
24643
|
+
},
|
|
24644
|
+
{
|
|
24645
|
+
id: "_iconTreatment",
|
|
24646
|
+
type: "select",
|
|
24647
|
+
label: "Icon style",
|
|
24100
24648
|
required: false,
|
|
24101
24649
|
defaultValue: "soft-badge",
|
|
24102
24650
|
multiple: false,
|
|
@@ -24861,6 +25409,22 @@ var eventCategorySchema = z42.object({
|
|
|
24861
25409
|
var pricingTypeSchema = z42.enum(["free", "paid", "pass_only", "membership_only"]);
|
|
24862
25410
|
var accessRestrictionSchema = z42.enum(["none", "category"]);
|
|
24863
25411
|
var eventPricingModeSchema = z42.enum(["single", "ticket_types"]);
|
|
25412
|
+
var publicCoursePriceDisplaySchema = z42.discriminatedUnion("kind", [
|
|
25413
|
+
z42.object({ kind: z42.literal("free"), currency: z42.string() }),
|
|
25414
|
+
z42.object({ kind: z42.literal("exact"), amount: z42.number(), currency: z42.string() }),
|
|
25415
|
+
z42.object({ kind: z42.literal("from"), amount: z42.number(), currency: z42.string() }),
|
|
25416
|
+
z42.object({ kind: z42.literal("unavailable"), currency: z42.string() })
|
|
25417
|
+
]);
|
|
25418
|
+
var publicEventPriceDisplaySchema = z42.discriminatedUnion("kind", [
|
|
25419
|
+
z42.object({ kind: z42.literal("free"), currency: z42.string() }),
|
|
25420
|
+
z42.object({ kind: z42.literal("exact"), amount: z42.number(), currency: z42.string() }),
|
|
25421
|
+
z42.object({ kind: z42.literal("from"), amount: z42.number(), currency: z42.string() }),
|
|
25422
|
+
z42.object({ kind: z42.literal("mixed"), paidFromAmount: z42.number(), currency: z42.string() }),
|
|
25423
|
+
z42.object({ kind: z42.literal("pass_only") }),
|
|
25424
|
+
z42.object({ kind: z42.literal("membership_only") }),
|
|
25425
|
+
z42.object({ kind: z42.literal("unavailable"), currency: z42.string() }),
|
|
25426
|
+
z42.object({ kind: z42.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
25427
|
+
]);
|
|
24864
25428
|
var publicEventAttendanceModeSchema = z42.enum(["in_person", "online"]);
|
|
24865
25429
|
var publicEventAttendanceModeAvailabilitySchema = z42.object({
|
|
24866
25430
|
mode: publicEventAttendanceModeSchema,
|
|
@@ -24942,6 +25506,7 @@ var publicEventSchema = z42.object({
|
|
|
24942
25506
|
pricingType: pricingTypeSchema,
|
|
24943
25507
|
price: z42.number().nullable(),
|
|
24944
25508
|
currency: z42.string(),
|
|
25509
|
+
priceDisplay: publicEventPriceDisplaySchema,
|
|
24945
25510
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
24946
25511
|
pricingMode: eventPricingModeSchema.optional(),
|
|
24947
25512
|
ticketTypes: z42.array(publicEventTicketTypeSchema).optional(),
|
|
@@ -24987,7 +25552,7 @@ var cardStylingFields = [
|
|
|
24987
25552
|
description: "Text for the event action button",
|
|
24988
25553
|
required: false,
|
|
24989
25554
|
multiline: false,
|
|
24990
|
-
defaultValue: "Book
|
|
25555
|
+
defaultValue: "Book",
|
|
24991
25556
|
maxLength: 40
|
|
24992
25557
|
}
|
|
24993
25558
|
];
|
|
@@ -26340,7 +26905,7 @@ var eventSpotlightBlockDefinition = {
|
|
|
26340
26905
|
};
|
|
26341
26906
|
|
|
26342
26907
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
26343
|
-
import { z as
|
|
26908
|
+
import { z as z51 } from "zod";
|
|
26344
26909
|
|
|
26345
26910
|
// ../blocks/src/system/runtime/nodes/events/shared/utils.ts
|
|
26346
26911
|
var COLUMN_CLASSES = {
|
|
@@ -26446,92 +27011,130 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
|
|
|
26446
27011
|
return mergeStyles(style, stylePatch);
|
|
26447
27012
|
}
|
|
26448
27013
|
|
|
27014
|
+
// ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
|
|
27015
|
+
import { z as z50 } from "zod";
|
|
27016
|
+
var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
|
|
27017
|
+
var eventPageSizeSchema = z50.union([
|
|
27018
|
+
z50.literal(3),
|
|
27019
|
+
z50.literal(6),
|
|
27020
|
+
z50.literal(10),
|
|
27021
|
+
z50.literal(12),
|
|
27022
|
+
z50.literal(20),
|
|
27023
|
+
z50.literal(24),
|
|
27024
|
+
z50.literal(30)
|
|
27025
|
+
]);
|
|
27026
|
+
var eventPageSizeSet = new Set(eventPageSizeValues);
|
|
27027
|
+
function resolveEventPageSize(value, fallback = 12) {
|
|
27028
|
+
const candidate = typeof value === "number" ? value : typeof value === "string" && value.trim() !== "" ? Number(value.trim()) : null;
|
|
27029
|
+
return candidate != null && Number.isInteger(candidate) && eventPageSizeSet.has(candidate) ? candidate : fallback;
|
|
27030
|
+
}
|
|
27031
|
+
function resolveEventCalendarListPageSize(input) {
|
|
27032
|
+
return resolveEventPageSize(input.eventsPerPage);
|
|
27033
|
+
}
|
|
27034
|
+
var eventListPaginationActionSchema = z50.discriminatedUnion("kind", [
|
|
27035
|
+
z50.object({
|
|
27036
|
+
kind: z50.literal("loadMore"),
|
|
27037
|
+
label: z50.string()
|
|
27038
|
+
}),
|
|
27039
|
+
z50.object({
|
|
27040
|
+
kind: z50.literal("seeAllLink"),
|
|
27041
|
+
label: z50.string(),
|
|
27042
|
+
href: z50.string()
|
|
27043
|
+
})
|
|
27044
|
+
]);
|
|
27045
|
+
function resolveEventListPaginationAction(input) {
|
|
27046
|
+
const label = input.loadMoreText?.trim() || input.defaultLabel || "Load more events";
|
|
27047
|
+
const href = input.seeAllUrl?.trim();
|
|
27048
|
+
if (input.paginationMode === "seeAllLink" && href) {
|
|
27049
|
+
return { kind: "seeAllLink", label, href };
|
|
27050
|
+
}
|
|
27051
|
+
return { kind: "loadMore", label };
|
|
27052
|
+
}
|
|
27053
|
+
|
|
26449
27054
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
26450
|
-
var legacyEventCardVariantSchema =
|
|
26451
|
-
var eventCardVariantInputSchema =
|
|
27055
|
+
var legacyEventCardVariantSchema = z51.enum(["variant1", "variant2"]);
|
|
27056
|
+
var eventCardVariantInputSchema = z51.union([
|
|
26452
27057
|
cardVariantRoleSchema,
|
|
26453
27058
|
legacyEventCardVariantSchema
|
|
26454
27059
|
]);
|
|
26455
|
-
var cardOrientationSchema =
|
|
26456
|
-
var eventBlockKindSchema =
|
|
26457
|
-
var eventSurfaceScopeSchema =
|
|
26458
|
-
var eventScheduleScopeSchema2 =
|
|
26459
|
-
var eventListingSourceSchema =
|
|
26460
|
-
events:
|
|
26461
|
-
siteId:
|
|
26462
|
-
apiBaseUrl:
|
|
27060
|
+
var cardOrientationSchema = z51.enum(["vertical", "horizontal"]);
|
|
27061
|
+
var eventBlockKindSchema = z51.enum(eventBlockKindValues);
|
|
27062
|
+
var eventSurfaceScopeSchema = z51.enum(eventSurfaceScopeValues);
|
|
27063
|
+
var eventScheduleScopeSchema2 = z51.enum(eventScheduleScopeValues);
|
|
27064
|
+
var eventListingSourceSchema = z51.object({
|
|
27065
|
+
events: z51.array(publicEventSchema).nullable().optional(),
|
|
27066
|
+
siteId: z51.string(),
|
|
27067
|
+
apiBaseUrl: z51.string().optional(),
|
|
26463
27068
|
stage: previewStageSchema.optional(),
|
|
26464
27069
|
layout: eventLayoutSchema.optional(),
|
|
26465
27070
|
columns: columnOptionSchema.optional(),
|
|
26466
|
-
eventsPerPage:
|
|
26467
|
-
paginationMode:
|
|
26468
|
-
seeAllUrl:
|
|
26469
|
-
loadMoreText:
|
|
27071
|
+
eventsPerPage: z51.string().optional(),
|
|
27072
|
+
paginationMode: z51.enum(["loadMore", "seeAllLink"]).optional(),
|
|
27073
|
+
seeAllUrl: z51.string().optional(),
|
|
27074
|
+
loadMoreText: z51.string().optional(),
|
|
26470
27075
|
cardVariant: eventCardVariantInputSchema.optional(),
|
|
26471
27076
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
26472
|
-
buttonText:
|
|
26473
|
-
showVenue:
|
|
26474
|
-
showMap:
|
|
26475
|
-
showCapacity:
|
|
26476
|
-
emptyMessage:
|
|
26477
|
-
className:
|
|
26478
|
-
showFilters:
|
|
27077
|
+
buttonText: z51.string().optional(),
|
|
27078
|
+
showVenue: z51.boolean().optional(),
|
|
27079
|
+
showMap: z51.boolean().optional(),
|
|
27080
|
+
showCapacity: z51.boolean().optional(),
|
|
27081
|
+
emptyMessage: z51.string().optional(),
|
|
27082
|
+
className: z51.string().optional(),
|
|
27083
|
+
showFilters: z51.boolean().nullable().optional(),
|
|
26479
27084
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
26480
|
-
showVenueFilter:
|
|
26481
|
-
showStaffFilter:
|
|
27085
|
+
showVenueFilter: z51.boolean().nullable().optional(),
|
|
27086
|
+
showStaffFilter: z51.boolean().nullable().optional(),
|
|
26482
27087
|
eventKind: eventBlockKindSchema.nullable().optional(),
|
|
26483
27088
|
eventSurface: eventSurfaceScopeSchema.nullable().optional(),
|
|
26484
|
-
filterEventPresets:
|
|
27089
|
+
filterEventPresets: z51.union([z51.string(), z51.array(z51.string())]).nullable().optional(),
|
|
26485
27090
|
scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
|
|
26486
|
-
filterCategoryIds:
|
|
26487
|
-
filterStaffMemberId:
|
|
26488
|
-
filterVenueId:
|
|
27091
|
+
filterCategoryIds: z51.string().nullable().optional(),
|
|
27092
|
+
filterStaffMemberId: z51.string().nullable().optional(),
|
|
27093
|
+
filterVenueId: z51.string().nullable().optional()
|
|
26489
27094
|
});
|
|
26490
|
-
var eventListingDisplaySchema =
|
|
26491
|
-
kind:
|
|
26492
|
-
state:
|
|
27095
|
+
var eventListingDisplaySchema = z51.object({
|
|
27096
|
+
kind: z51.literal("event-listing"),
|
|
27097
|
+
state: z51.enum(["loading", "empty", "ready"]),
|
|
26493
27098
|
listLayout: eventLayoutSchema,
|
|
26494
|
-
className:
|
|
26495
|
-
emptyMessage:
|
|
26496
|
-
loadingMessage:
|
|
26497
|
-
containerClass:
|
|
27099
|
+
className: z51.string().nullable(),
|
|
27100
|
+
emptyMessage: z51.string(),
|
|
27101
|
+
loadingMessage: z51.string(),
|
|
27102
|
+
containerClass: z51.string(),
|
|
26498
27103
|
cardVariant: cardVariantRoleSchema,
|
|
26499
27104
|
buttonVariant: eventButtonVariantSchema,
|
|
26500
|
-
buttonText:
|
|
26501
|
-
showVenue:
|
|
26502
|
-
showMap:
|
|
26503
|
-
showCapacity:
|
|
27105
|
+
buttonText: z51.string(),
|
|
27106
|
+
showVenue: z51.boolean(),
|
|
27107
|
+
showMap: z51.boolean(),
|
|
27108
|
+
showCapacity: z51.boolean(),
|
|
26504
27109
|
orientation: cardOrientationSchema,
|
|
26505
|
-
events:
|
|
27110
|
+
events: z51.array(publicEventSchema)
|
|
26506
27111
|
});
|
|
26507
|
-
var eventListingHydrationSchema =
|
|
26508
|
-
siteId:
|
|
27112
|
+
var eventListingHydrationSchema = z51.object({
|
|
27113
|
+
siteId: z51.string(),
|
|
26509
27114
|
stage: previewStageSchema.optional(),
|
|
26510
|
-
eventsPerPage:
|
|
26511
|
-
|
|
26512
|
-
|
|
26513
|
-
loadMoreText: z50.string(),
|
|
26514
|
-
showFilters: z50.boolean(),
|
|
27115
|
+
eventsPerPage: eventPageSizeSchema,
|
|
27116
|
+
paginationAction: eventListPaginationActionSchema,
|
|
27117
|
+
showFilters: z51.boolean(),
|
|
26515
27118
|
showCategoryFilter: filterAutoShowSchema,
|
|
26516
|
-
showVenueFilter:
|
|
26517
|
-
showStaffFilter:
|
|
27119
|
+
showVenueFilter: z51.boolean(),
|
|
27120
|
+
showStaffFilter: z51.boolean(),
|
|
26518
27121
|
eventKind: eventBlockKindSchema,
|
|
26519
27122
|
eventSurface: eventSurfaceScopeSchema,
|
|
26520
|
-
filterEventPresets:
|
|
27123
|
+
filterEventPresets: z51.string().nullable(),
|
|
26521
27124
|
scheduleScope: eventScheduleScopeSchema2,
|
|
26522
|
-
filterCategoryIds:
|
|
26523
|
-
filterStaffMemberId:
|
|
26524
|
-
filterVenueId:
|
|
26525
|
-
fetchInitialEventsOnMount:
|
|
27125
|
+
filterCategoryIds: z51.string().nullable().optional(),
|
|
27126
|
+
filterStaffMemberId: z51.string().nullable().optional(),
|
|
27127
|
+
filterVenueId: z51.string().nullable().optional(),
|
|
27128
|
+
fetchInitialEventsOnMount: z51.boolean()
|
|
26526
27129
|
});
|
|
26527
|
-
var eventListingRenderSchema =
|
|
27130
|
+
var eventListingRenderSchema = z51.object({
|
|
26528
27131
|
display: eventListingDisplaySchema,
|
|
26529
27132
|
hydration: eventListingHydrationSchema
|
|
26530
27133
|
});
|
|
26531
27134
|
var eventListingIslandMetaCodec = createZodCodec(
|
|
26532
|
-
|
|
26533
|
-
siteId:
|
|
26534
|
-
apiBaseUrl:
|
|
27135
|
+
z51.object({
|
|
27136
|
+
siteId: z51.string(),
|
|
27137
|
+
apiBaseUrl: z51.string().optional(),
|
|
26535
27138
|
stage: previewStageSchema.optional()
|
|
26536
27139
|
})
|
|
26537
27140
|
);
|
|
@@ -26543,7 +27146,7 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26543
27146
|
},
|
|
26544
27147
|
buildRender: (source) => {
|
|
26545
27148
|
const normalizedEvents = Array.isArray(source.events) ? source.events : [];
|
|
26546
|
-
const pageSize =
|
|
27149
|
+
const pageSize = resolveEventPageSize(source.eventsPerPage);
|
|
26547
27150
|
const initialEvents = normalizedEvents.slice(0, pageSize);
|
|
26548
27151
|
const didPrefetchEvents = source.events != null;
|
|
26549
27152
|
const layout = source.layout ?? "grid";
|
|
@@ -26558,7 +27161,7 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26558
27161
|
containerClass: getContainerClass(layout, source.columns ?? "3"),
|
|
26559
27162
|
cardVariant: normalizeCardVariantRole(source.cardVariant) ?? "default",
|
|
26560
27163
|
buttonVariant: source.buttonVariant ?? "primary",
|
|
26561
|
-
buttonText: source.buttonText ?? "Book
|
|
27164
|
+
buttonText: source.buttonText ?? "Book",
|
|
26562
27165
|
showVenue: source.showVenue ?? true,
|
|
26563
27166
|
showMap: source.showMap ?? true,
|
|
26564
27167
|
showCapacity: source.showCapacity ?? true,
|
|
@@ -26568,10 +27171,12 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
26568
27171
|
hydration: {
|
|
26569
27172
|
siteId: source.siteId,
|
|
26570
27173
|
stage: source.stage,
|
|
26571
|
-
eventsPerPage:
|
|
26572
|
-
|
|
26573
|
-
|
|
26574
|
-
|
|
27174
|
+
eventsPerPage: pageSize,
|
|
27175
|
+
paginationAction: resolveEventListPaginationAction({
|
|
27176
|
+
paginationMode: source.paginationMode,
|
|
27177
|
+
seeAllUrl: source.seeAllUrl,
|
|
27178
|
+
loadMoreText: source.loadMoreText
|
|
27179
|
+
}),
|
|
26575
27180
|
showFilters: source.showFilters ?? false,
|
|
26576
27181
|
showCategoryFilter: source.showCategoryFilter ?? "auto",
|
|
26577
27182
|
showVenueFilter: source.showVenueFilter ?? false,
|
|
@@ -26793,7 +27398,7 @@ var eventListingLayout = [
|
|
|
26793
27398
|
loadMoreText: { $bind: { from: "content.loadMoreText", fallback: "Load more events" } },
|
|
26794
27399
|
cardVariant: { $bind: { from: "content.cardVariant", fallback: "default" } },
|
|
26795
27400
|
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
26796
|
-
buttonText: { $bind: { from: "content.buttonText", fallback: "Book
|
|
27401
|
+
buttonText: { $bind: { from: "content.buttonText", fallback: "Book" } },
|
|
26797
27402
|
showVenue: { $bind: { from: "content.showVenue" } },
|
|
26798
27403
|
showMap: { $bind: { from: "content.showMap" } },
|
|
26799
27404
|
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
@@ -26888,15 +27493,15 @@ var eventListingBlockDefinition = {
|
|
|
26888
27493
|
};
|
|
26889
27494
|
|
|
26890
27495
|
// ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
|
|
26891
|
-
import { z as
|
|
26892
|
-
var eventBlockKindSchema2 =
|
|
26893
|
-
var eventSurfaceScopeSchema2 =
|
|
26894
|
-
var eventScheduleScopeSchema3 =
|
|
26895
|
-
var eventCalendarSourceSchema =
|
|
27496
|
+
import { z as z52 } from "zod";
|
|
27497
|
+
var eventBlockKindSchema2 = z52.enum(eventBlockKindValues);
|
|
27498
|
+
var eventSurfaceScopeSchema2 = z52.enum(eventSurfaceScopeValues);
|
|
27499
|
+
var eventScheduleScopeSchema3 = z52.enum(eventScheduleScopeValues);
|
|
27500
|
+
var eventCalendarSourceSchema = z52.object(
|
|
26896
27501
|
{
|
|
26897
|
-
events:
|
|
26898
|
-
siteId:
|
|
26899
|
-
apiBaseUrl:
|
|
27502
|
+
events: z52.array(publicEventSchema).nullable().optional(),
|
|
27503
|
+
siteId: z52.string(),
|
|
27504
|
+
apiBaseUrl: z52.string().optional(),
|
|
26900
27505
|
stage: previewStageSchema.optional(),
|
|
26901
27506
|
variant: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
26902
27507
|
displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
@@ -26904,77 +27509,78 @@ var eventCalendarSourceSchema = z51.object(
|
|
|
26904
27509
|
listColumns: columnOptionSchema.optional(),
|
|
26905
27510
|
layout: eventLayoutSchema.optional(),
|
|
26906
27511
|
columns: columnOptionSchema.optional(),
|
|
26907
|
-
eventsPerPage:
|
|
26908
|
-
|
|
26909
|
-
|
|
27512
|
+
eventsPerPage: z52.string().optional(),
|
|
27513
|
+
paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
|
|
27514
|
+
seeAllUrl: z52.string().optional(),
|
|
27515
|
+
loadMoreText: z52.string().optional(),
|
|
26910
27516
|
startOfWeek: weekStartSchema.optional(),
|
|
26911
27517
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
26912
|
-
showFilters:
|
|
27518
|
+
showFilters: z52.boolean().nullable().optional(),
|
|
26913
27519
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
26914
|
-
showVenueFilter:
|
|
26915
|
-
showStaffFilter:
|
|
27520
|
+
showVenueFilter: z52.boolean().nullable().optional(),
|
|
27521
|
+
showStaffFilter: z52.boolean().nullable().optional(),
|
|
26916
27522
|
kind: eventBlockKindSchema2.nullable().optional(),
|
|
26917
27523
|
eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
|
|
26918
|
-
filterEventPresets:
|
|
27524
|
+
filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
26919
27525
|
scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
|
|
26920
|
-
filterCategoryIds:
|
|
26921
|
-
filterStaffMemberId:
|
|
26922
|
-
filterVenueId:
|
|
27526
|
+
filterCategoryIds: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
27527
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
27528
|
+
filterVenueId: z52.string().nullable().optional(),
|
|
26923
27529
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
26924
|
-
buttonText:
|
|
26925
|
-
showVenue:
|
|
26926
|
-
showMap:
|
|
26927
|
-
showCapacity:
|
|
26928
|
-
emptyMessage:
|
|
26929
|
-
className:
|
|
27530
|
+
buttonText: z52.string().optional(),
|
|
27531
|
+
showVenue: z52.boolean().nullable().optional(),
|
|
27532
|
+
showMap: z52.boolean().nullable().optional(),
|
|
27533
|
+
showCapacity: z52.boolean().nullable().optional(),
|
|
27534
|
+
emptyMessage: z52.string().optional(),
|
|
27535
|
+
className: z52.string().optional()
|
|
26930
27536
|
}
|
|
26931
27537
|
);
|
|
26932
|
-
var eventCalendarDisplaySchema =
|
|
26933
|
-
kind:
|
|
27538
|
+
var eventCalendarDisplaySchema = z52.object({
|
|
27539
|
+
kind: z52.literal("event-calendar"),
|
|
26934
27540
|
displayMode: eventCalendarDisplayModeSchema,
|
|
26935
|
-
className:
|
|
26936
|
-
events:
|
|
27541
|
+
className: z52.string().nullable(),
|
|
27542
|
+
events: z52.array(publicEventSchema),
|
|
26937
27543
|
listLayout: eventLayoutSchema,
|
|
26938
27544
|
listColumns: columnOptionSchema,
|
|
26939
|
-
eventsPerPage:
|
|
26940
|
-
|
|
27545
|
+
eventsPerPage: eventPageSizeSchema,
|
|
27546
|
+
paginationAction: eventListPaginationActionSchema,
|
|
26941
27547
|
startOfWeek: weekStartSchema,
|
|
26942
27548
|
calendarTabViews: calendarTabViewsSchema,
|
|
26943
|
-
showFilters:
|
|
27549
|
+
showFilters: z52.boolean(),
|
|
26944
27550
|
showCategoryFilter: filterAutoShowSchema,
|
|
26945
|
-
showVenueFilter:
|
|
26946
|
-
showStaffFilter:
|
|
27551
|
+
showVenueFilter: z52.boolean(),
|
|
27552
|
+
showStaffFilter: z52.boolean(),
|
|
26947
27553
|
eventKind: eventBlockKindSchema2,
|
|
26948
27554
|
eventSurface: eventSurfaceScopeSchema2,
|
|
26949
|
-
filterEventPresets:
|
|
27555
|
+
filterEventPresets: z52.string().nullable(),
|
|
26950
27556
|
scheduleScope: eventScheduleScopeSchema3,
|
|
26951
|
-
filterCategoryIds:
|
|
26952
|
-
filterStaffMemberId:
|
|
26953
|
-
filterVenueId:
|
|
27557
|
+
filterCategoryIds: z52.string().nullable(),
|
|
27558
|
+
filterStaffMemberId: z52.string().nullable(),
|
|
27559
|
+
filterVenueId: z52.string().nullable(),
|
|
26954
27560
|
buttonVariant: eventButtonVariantSchema,
|
|
26955
|
-
buttonText:
|
|
26956
|
-
showVenue:
|
|
26957
|
-
showMap:
|
|
26958
|
-
showCapacity:
|
|
26959
|
-
emptyMessage:
|
|
26960
|
-
});
|
|
26961
|
-
var eventCalendarHydrationSchema =
|
|
26962
|
-
siteId:
|
|
27561
|
+
buttonText: z52.string(),
|
|
27562
|
+
showVenue: z52.boolean(),
|
|
27563
|
+
showMap: z52.boolean(),
|
|
27564
|
+
showCapacity: z52.boolean(),
|
|
27565
|
+
emptyMessage: z52.string()
|
|
27566
|
+
});
|
|
27567
|
+
var eventCalendarHydrationSchema = z52.object({
|
|
27568
|
+
siteId: z52.string(),
|
|
26963
27569
|
stage: previewStageSchema.optional(),
|
|
26964
|
-
prefetchedEvents:
|
|
27570
|
+
prefetchedEvents: z52.boolean(),
|
|
26965
27571
|
eventKind: eventBlockKindSchema2,
|
|
26966
27572
|
eventSurface: eventSurfaceScopeSchema2,
|
|
26967
|
-
filterEventPresets:
|
|
27573
|
+
filterEventPresets: z52.string().nullable(),
|
|
26968
27574
|
scheduleScope: eventScheduleScopeSchema3
|
|
26969
27575
|
});
|
|
26970
|
-
var eventCalendarRenderSchema =
|
|
27576
|
+
var eventCalendarRenderSchema = z52.object({
|
|
26971
27577
|
display: eventCalendarDisplaySchema,
|
|
26972
27578
|
hydration: eventCalendarHydrationSchema
|
|
26973
27579
|
});
|
|
26974
27580
|
var eventCalendarIslandMetaCodec = createZodCodec(
|
|
26975
|
-
|
|
26976
|
-
siteId:
|
|
26977
|
-
apiBaseUrl:
|
|
27581
|
+
z52.object({
|
|
27582
|
+
siteId: z52.string(),
|
|
27583
|
+
apiBaseUrl: z52.string().optional(),
|
|
26978
27584
|
stage: previewStageSchema.optional()
|
|
26979
27585
|
})
|
|
26980
27586
|
);
|
|
@@ -26984,6 +27590,7 @@ var eventCalendarIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
|
26984
27590
|
"stage"
|
|
26985
27591
|
);
|
|
26986
27592
|
function buildEventCalendarDisplay(source) {
|
|
27593
|
+
const listLayout = source.listLayout ?? source.layout ?? "stack";
|
|
26987
27594
|
return {
|
|
26988
27595
|
kind: "event-calendar",
|
|
26989
27596
|
displayMode: source.variant ?? source.displayMode ?? "combined",
|
|
@@ -26991,10 +27598,16 @@ function buildEventCalendarDisplay(source) {
|
|
|
26991
27598
|
events: (source.events ?? []).slice().sort(
|
|
26992
27599
|
(left, right) => new Date(left.startsAt).getTime() - new Date(right.startsAt).getTime()
|
|
26993
27600
|
),
|
|
26994
|
-
listLayout
|
|
27601
|
+
listLayout,
|
|
26995
27602
|
listColumns: source.listColumns ?? source.columns ?? "3",
|
|
26996
|
-
eventsPerPage: (
|
|
26997
|
-
|
|
27603
|
+
eventsPerPage: resolveEventCalendarListPageSize({
|
|
27604
|
+
eventsPerPage: source.eventsPerPage
|
|
27605
|
+
}),
|
|
27606
|
+
paginationAction: resolveEventListPaginationAction({
|
|
27607
|
+
paginationMode: source.paginationMode,
|
|
27608
|
+
seeAllUrl: source.seeAllUrl,
|
|
27609
|
+
loadMoreText: source.loadMoreText
|
|
27610
|
+
}),
|
|
26998
27611
|
startOfWeek: source.startOfWeek ?? "monday",
|
|
26999
27612
|
calendarTabViews: source.calendarTabViews ?? "both",
|
|
27000
27613
|
showFilters: source.showFilters ?? true,
|
|
@@ -27011,7 +27624,7 @@ function buildEventCalendarDisplay(source) {
|
|
|
27011
27624
|
),
|
|
27012
27625
|
filterVenueId: normalizeEventVenueId(source.filterVenueId),
|
|
27013
27626
|
buttonVariant: source.buttonVariant ?? "primary",
|
|
27014
|
-
buttonText: source.buttonText ?? "Book
|
|
27627
|
+
buttonText: source.buttonText ?? "Book",
|
|
27015
27628
|
showVenue: source.showVenue ?? true,
|
|
27016
27629
|
showMap: source.showMap ?? true,
|
|
27017
27630
|
showCapacity: source.showCapacity ?? true,
|
|
@@ -27111,10 +27724,16 @@ var eventCalendarLayout = [
|
|
|
27111
27724
|
layout: { $bind: { from: "content.layout" } },
|
|
27112
27725
|
columns: { $bind: { from: "content.columns" } },
|
|
27113
27726
|
eventsPerPage: {
|
|
27114
|
-
$bind: { from: "content.eventsPerPage"
|
|
27727
|
+
$bind: { from: "content.eventsPerPage" }
|
|
27115
27728
|
},
|
|
27116
|
-
|
|
27117
|
-
$bind: { from: "content.
|
|
27729
|
+
paginationMode: {
|
|
27730
|
+
$bind: { from: "content.paginationMode", fallback: "loadMore" }
|
|
27731
|
+
},
|
|
27732
|
+
seeAllUrl: {
|
|
27733
|
+
$bind: {
|
|
27734
|
+
from: "content.seeAllUrl",
|
|
27735
|
+
transforms: [{ id: "links.resolve" }]
|
|
27736
|
+
}
|
|
27118
27737
|
},
|
|
27119
27738
|
loadMoreText: {
|
|
27120
27739
|
$bind: {
|
|
@@ -27167,7 +27786,7 @@ var eventCalendarLayout = [
|
|
|
27167
27786
|
$bind: { from: "content.buttonVariant", fallback: "primary" }
|
|
27168
27787
|
},
|
|
27169
27788
|
buttonText: {
|
|
27170
|
-
$bind: { from: "content.buttonText", fallback: "Book
|
|
27789
|
+
$bind: { from: "content.buttonText", fallback: "Book" }
|
|
27171
27790
|
},
|
|
27172
27791
|
emptyMessage: { $bind: { from: "content.emptyMessage" } }
|
|
27173
27792
|
})
|
|
@@ -27241,15 +27860,18 @@ var eventCalendarAdditionalFields = [
|
|
|
27241
27860
|
{
|
|
27242
27861
|
id: "eventsPerPage",
|
|
27243
27862
|
type: "select",
|
|
27244
|
-
label: "Events per page
|
|
27245
|
-
description: "Number of events to load initially
|
|
27863
|
+
label: "Events per page",
|
|
27864
|
+
description: "Number of events to load initially",
|
|
27246
27865
|
required: false,
|
|
27247
27866
|
multiple: false,
|
|
27248
27867
|
defaultValue: "12",
|
|
27249
27868
|
options: [
|
|
27250
27869
|
{ value: "6", label: "6" },
|
|
27870
|
+
{ value: "10", label: "10" },
|
|
27251
27871
|
{ value: "12", label: "12" },
|
|
27252
|
-
{ value: "
|
|
27872
|
+
{ value: "20", label: "20" },
|
|
27873
|
+
{ value: "24", label: "24" },
|
|
27874
|
+
{ value: "30", label: "30" }
|
|
27253
27875
|
],
|
|
27254
27876
|
ui: {
|
|
27255
27877
|
intent: "display",
|
|
@@ -27257,33 +27879,42 @@ var eventCalendarAdditionalFields = [
|
|
|
27257
27879
|
}
|
|
27258
27880
|
},
|
|
27259
27881
|
{
|
|
27260
|
-
id: "
|
|
27882
|
+
id: "paginationMode",
|
|
27261
27883
|
type: "select",
|
|
27262
|
-
label: "
|
|
27263
|
-
description: "
|
|
27884
|
+
label: "More events",
|
|
27885
|
+
description: "How to access events beyond the initial list",
|
|
27264
27886
|
required: false,
|
|
27265
27887
|
multiple: false,
|
|
27266
|
-
defaultValue: "
|
|
27888
|
+
defaultValue: "loadMore",
|
|
27267
27889
|
options: [
|
|
27268
|
-
{ value: "
|
|
27269
|
-
{ value: "
|
|
27270
|
-
{ value: "30", label: "30" }
|
|
27890
|
+
{ value: "loadMore", label: "Load more button" },
|
|
27891
|
+
{ value: "seeAllLink", label: "Link to another page" }
|
|
27271
27892
|
],
|
|
27272
27893
|
ui: {
|
|
27273
27894
|
intent: "display",
|
|
27274
|
-
visibleWhen: { field: "
|
|
27895
|
+
visibleWhen: { field: "variant", oneOf: ["combined", "list"] }
|
|
27896
|
+
}
|
|
27897
|
+
},
|
|
27898
|
+
{
|
|
27899
|
+
id: "seeAllUrl",
|
|
27900
|
+
type: "link",
|
|
27901
|
+
label: "See all destination",
|
|
27902
|
+
required: false,
|
|
27903
|
+
ui: {
|
|
27904
|
+
intent: "display",
|
|
27905
|
+
visibleWhen: { field: "paginationMode", equals: "seeAllLink" }
|
|
27275
27906
|
}
|
|
27276
27907
|
},
|
|
27277
27908
|
{
|
|
27278
27909
|
id: "loadMoreText",
|
|
27279
27910
|
type: "text",
|
|
27280
|
-
label: "
|
|
27281
|
-
description: "Text for the load more button",
|
|
27911
|
+
label: "CTA button text",
|
|
27912
|
+
description: "Text for the load more button or linked CTA",
|
|
27282
27913
|
required: false,
|
|
27283
27914
|
multiline: false,
|
|
27284
27915
|
defaultValue: "Load more events",
|
|
27285
27916
|
ui: {
|
|
27286
|
-
intent: "
|
|
27917
|
+
intent: "display",
|
|
27287
27918
|
visibleWhen: { field: "variant", oneOf: ["combined", "list"] }
|
|
27288
27919
|
}
|
|
27289
27920
|
},
|
|
@@ -27534,51 +28165,393 @@ var eventCalendarAdditionalFields = [
|
|
|
27534
28165
|
renderInHeader: false
|
|
27535
28166
|
})
|
|
27536
28167
|
];
|
|
27537
|
-
var eventCalendarVariants = {
|
|
27538
|
-
combined: eventCalendarLayout[0],
|
|
27539
|
-
month: eventCalendarLayout[0],
|
|
27540
|
-
week: eventCalendarLayout[0],
|
|
27541
|
-
timetable: eventCalendarLayout[0],
|
|
27542
|
-
list: eventCalendarLayout[0]
|
|
27543
|
-
};
|
|
27544
|
-
var eventCalendarDerivedFields = [
|
|
27545
|
-
{
|
|
27546
|
-
id: "displayMode",
|
|
27547
|
-
type: "select",
|
|
27548
|
-
required: false,
|
|
27549
|
-
multiple: false,
|
|
27550
|
-
options: [
|
|
27551
|
-
{ value: "combined" },
|
|
27552
|
-
{ value: "month" },
|
|
27553
|
-
{ value: "week" },
|
|
27554
|
-
{ value: "timetable" },
|
|
27555
|
-
{ value: "list" }
|
|
27556
|
-
]
|
|
27557
|
-
},
|
|
27558
|
-
{
|
|
27559
|
-
id: "listLayout",
|
|
27560
|
-
type: "select",
|
|
27561
|
-
required: false,
|
|
27562
|
-
multiple: false,
|
|
27563
|
-
options: eventCalendarListLayoutOptions.map((option) => ({
|
|
27564
|
-
value: option.id
|
|
27565
|
-
}))
|
|
27566
|
-
}
|
|
27567
|
-
];
|
|
27568
|
-
var eventCalendarContentShape = {
|
|
27569
|
-
additionalFields: eventCalendarDerivedFields,
|
|
27570
|
-
variants: eventCalendarVariants,
|
|
27571
|
-
skipSectionStyles: true
|
|
27572
|
-
};
|
|
27573
|
-
var eventCalendarConfig = {
|
|
27574
|
-
id: "block.event-calendar",
|
|
27575
|
-
version: "3.6.0",
|
|
27576
|
-
title: "Event Calendar",
|
|
28168
|
+
var eventCalendarVariants = {
|
|
28169
|
+
combined: eventCalendarLayout[0],
|
|
28170
|
+
month: eventCalendarLayout[0],
|
|
28171
|
+
week: eventCalendarLayout[0],
|
|
28172
|
+
timetable: eventCalendarLayout[0],
|
|
28173
|
+
list: eventCalendarLayout[0]
|
|
28174
|
+
};
|
|
28175
|
+
var eventCalendarDerivedFields = [
|
|
28176
|
+
{
|
|
28177
|
+
id: "displayMode",
|
|
28178
|
+
type: "select",
|
|
28179
|
+
required: false,
|
|
28180
|
+
multiple: false,
|
|
28181
|
+
options: [
|
|
28182
|
+
{ value: "combined" },
|
|
28183
|
+
{ value: "month" },
|
|
28184
|
+
{ value: "week" },
|
|
28185
|
+
{ value: "timetable" },
|
|
28186
|
+
{ value: "list" }
|
|
28187
|
+
]
|
|
28188
|
+
},
|
|
28189
|
+
{
|
|
28190
|
+
id: "listLayout",
|
|
28191
|
+
type: "select",
|
|
28192
|
+
required: false,
|
|
28193
|
+
multiple: false,
|
|
28194
|
+
options: eventCalendarListLayoutOptions.map((option) => ({
|
|
28195
|
+
value: option.id
|
|
28196
|
+
}))
|
|
28197
|
+
}
|
|
28198
|
+
];
|
|
28199
|
+
var eventCalendarContentShape = {
|
|
28200
|
+
additionalFields: eventCalendarDerivedFields,
|
|
28201
|
+
variants: eventCalendarVariants,
|
|
28202
|
+
skipSectionStyles: true
|
|
28203
|
+
};
|
|
28204
|
+
var eventCalendarConfig = {
|
|
28205
|
+
id: "block.event-calendar",
|
|
28206
|
+
version: "3.6.0",
|
|
28207
|
+
title: "Event Calendar",
|
|
28208
|
+
titleSource: "heading",
|
|
28209
|
+
description: "Display events with calendar, list, or combined views with filtering",
|
|
28210
|
+
// Preserve legacy section styles field configuration (renderInHeader: false).
|
|
28211
|
+
skipSectionStyles: true,
|
|
28212
|
+
additionalFields: eventCalendarAdditionalFields,
|
|
28213
|
+
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
28214
|
+
behaviours: {
|
|
28215
|
+
supportsThemeSwitching: true,
|
|
28216
|
+
inlineEditing: false,
|
|
28217
|
+
animation: false,
|
|
28218
|
+
paletteHidden: false
|
|
28219
|
+
},
|
|
28220
|
+
category: "interactive",
|
|
28221
|
+
tags: [
|
|
28222
|
+
"events",
|
|
28223
|
+
"calendar",
|
|
28224
|
+
"month",
|
|
28225
|
+
"week",
|
|
28226
|
+
"schedule",
|
|
28227
|
+
"interactive",
|
|
28228
|
+
"list",
|
|
28229
|
+
"filter"
|
|
28230
|
+
],
|
|
28231
|
+
icon: "CalendarDays",
|
|
28232
|
+
layout: eventCalendarLayout,
|
|
28233
|
+
variants: eventCalendarVariants,
|
|
28234
|
+
defaultVariant: "combined",
|
|
28235
|
+
variantOptions: {
|
|
28236
|
+
combined: { label: "Combined" },
|
|
28237
|
+
month: { label: "Month" },
|
|
28238
|
+
week: { label: "Week" },
|
|
28239
|
+
timetable: { label: "Timetable" },
|
|
28240
|
+
list: { label: "List" }
|
|
28241
|
+
}
|
|
28242
|
+
};
|
|
28243
|
+
var eventCalendarManifest = createBlockManifestWithContentShape(
|
|
28244
|
+
eventCalendarConfig,
|
|
28245
|
+
eventCalendarContentShape
|
|
28246
|
+
);
|
|
28247
|
+
var eventCalendarBlockDefinition = {
|
|
28248
|
+
manifest: eventCalendarManifest,
|
|
28249
|
+
normalizeContent: normalizeEventCalendarContent,
|
|
28250
|
+
dataSchemas: {
|
|
28251
|
+
events: publicEventsArraySchema.optional()
|
|
28252
|
+
},
|
|
28253
|
+
dataLoaders: {
|
|
28254
|
+
events: {
|
|
28255
|
+
endpoint: "listPublicEvents",
|
|
28256
|
+
params: {
|
|
28257
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
28258
|
+
// Pre-fetch events - limit varies by mode but default to high for calendar
|
|
28259
|
+
limit: 100,
|
|
28260
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28261
|
+
detailLevel: "listing",
|
|
28262
|
+
readProfile: { $bind: { from: "content.variant", fallback: "listing-card" } },
|
|
28263
|
+
// Pass filter params if configured
|
|
28264
|
+
kind: { $bind: { from: "content.kind" } },
|
|
28265
|
+
eventSurface: { $bind: { from: "content.eventSurface" } },
|
|
28266
|
+
eventPresets: {
|
|
28267
|
+
$bind: {
|
|
28268
|
+
from: "content.filterEventPresets",
|
|
28269
|
+
transforms: [{ id: "value.csv" }]
|
|
28270
|
+
}
|
|
28271
|
+
},
|
|
28272
|
+
scheduleScope: { $bind: { from: "content.scheduleScope" } },
|
|
28273
|
+
categoryIds: { $bind: { from: "content.filterCategoryIds" } },
|
|
28274
|
+
staffMemberId: { $bind: { from: "content.filterStaffMemberId" } },
|
|
28275
|
+
venueId: { $bind: { from: "content.filterVenueId" } }
|
|
28276
|
+
},
|
|
28277
|
+
mode: "server"
|
|
28278
|
+
}
|
|
28279
|
+
},
|
|
28280
|
+
runtime: eventCalendarBlockRuntime
|
|
28281
|
+
};
|
|
28282
|
+
|
|
28283
|
+
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
28284
|
+
import { z as z53 } from "zod";
|
|
28285
|
+
|
|
28286
|
+
// ../blocks/src/system/blocks/offerings-preview/model.ts
|
|
28287
|
+
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
|
|
28288
|
+
var OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT = "Book";
|
|
28289
|
+
var OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE = "Nothing scheduled just yet.";
|
|
28290
|
+
var OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS = [
|
|
28291
|
+
{
|
|
28292
|
+
preset: "class",
|
|
28293
|
+
sourceKey: "eventPreset:class",
|
|
28294
|
+
dataKey: "classEvents",
|
|
28295
|
+
label: "Classes"
|
|
28296
|
+
},
|
|
28297
|
+
{
|
|
28298
|
+
preset: "workshop",
|
|
28299
|
+
sourceKey: "eventPreset:workshop",
|
|
28300
|
+
dataKey: "workshopEvents",
|
|
28301
|
+
label: "Workshops"
|
|
28302
|
+
},
|
|
28303
|
+
{
|
|
28304
|
+
preset: "retreat",
|
|
28305
|
+
sourceKey: "eventPreset:retreat",
|
|
28306
|
+
dataKey: "retreatEvents",
|
|
28307
|
+
label: "Retreats"
|
|
28308
|
+
},
|
|
28309
|
+
{
|
|
28310
|
+
preset: "performance",
|
|
28311
|
+
sourceKey: "eventPreset:performance",
|
|
28312
|
+
dataKey: "performanceEvents",
|
|
28313
|
+
label: "Performances"
|
|
28314
|
+
}
|
|
28315
|
+
];
|
|
28316
|
+
var OFFERINGS_PREVIEW_EVENT_PRESETS = OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => definition.preset);
|
|
28317
|
+
var OFFERINGS_PREVIEW_AUTHORABLE_SOURCE_KEYS = [
|
|
28318
|
+
...OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => definition.sourceKey),
|
|
28319
|
+
"course"
|
|
28320
|
+
];
|
|
28321
|
+
var eventPresetSourceByKey = Object.fromEntries(
|
|
28322
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28323
|
+
definition.sourceKey,
|
|
28324
|
+
{ kind: "eventPreset", preset: definition.preset }
|
|
28325
|
+
])
|
|
28326
|
+
);
|
|
28327
|
+
|
|
28328
|
+
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
28329
|
+
var publicRouteCandidatesSchema = z53.object({
|
|
28330
|
+
routes: z53.array(z53.object({
|
|
28331
|
+
entityId: z53.string(),
|
|
28332
|
+
path: z53.string(),
|
|
28333
|
+
title: z53.string(),
|
|
28334
|
+
kind: z53.enum(["page", "content"]),
|
|
28335
|
+
contentTypeKey: z53.string().nullable().optional()
|
|
28336
|
+
}))
|
|
28337
|
+
});
|
|
28338
|
+
var groupOverrideFields = [
|
|
28339
|
+
{
|
|
28340
|
+
id: "sourceKey",
|
|
28341
|
+
type: "select",
|
|
28342
|
+
label: "Offering",
|
|
28343
|
+
required: true,
|
|
28344
|
+
multiple: false,
|
|
28345
|
+
options: [
|
|
28346
|
+
...OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => ({
|
|
28347
|
+
value: definition.sourceKey,
|
|
28348
|
+
label: definition.label
|
|
28349
|
+
})),
|
|
28350
|
+
{ value: "course", label: "Courses" }
|
|
28351
|
+
],
|
|
28352
|
+
ui: { intent: "behavior" }
|
|
28353
|
+
},
|
|
28354
|
+
{
|
|
28355
|
+
id: "title",
|
|
28356
|
+
type: "text",
|
|
28357
|
+
label: "Title",
|
|
28358
|
+
required: false,
|
|
28359
|
+
multiline: false,
|
|
28360
|
+
maxLength: 80,
|
|
28361
|
+
ui: { intent: "content" }
|
|
28362
|
+
},
|
|
28363
|
+
{
|
|
28364
|
+
id: "intro",
|
|
28365
|
+
type: "text",
|
|
28366
|
+
label: "Intro",
|
|
28367
|
+
required: false,
|
|
28368
|
+
multiline: true,
|
|
28369
|
+
maxLength: 220,
|
|
28370
|
+
ui: { intent: "content" }
|
|
28371
|
+
},
|
|
28372
|
+
{
|
|
28373
|
+
id: "hidden",
|
|
28374
|
+
type: "boolean",
|
|
28375
|
+
label: "Hide this card",
|
|
28376
|
+
required: false,
|
|
28377
|
+
defaultValue: false,
|
|
28378
|
+
ui: { intent: "display" }
|
|
28379
|
+
},
|
|
28380
|
+
{
|
|
28381
|
+
id: "presentation",
|
|
28382
|
+
type: "select",
|
|
28383
|
+
label: "Items",
|
|
28384
|
+
required: false,
|
|
28385
|
+
multiple: false,
|
|
28386
|
+
defaultValue: "compact-list",
|
|
28387
|
+
options: [
|
|
28388
|
+
{ value: "compact-list", label: "Compact list" },
|
|
28389
|
+
{ value: "single-card", label: "Single card" }
|
|
28390
|
+
],
|
|
28391
|
+
ui: { intent: "display" }
|
|
28392
|
+
},
|
|
28393
|
+
{
|
|
28394
|
+
id: "ctaMode",
|
|
28395
|
+
type: "select",
|
|
28396
|
+
label: "Card link",
|
|
28397
|
+
required: false,
|
|
28398
|
+
multiple: false,
|
|
28399
|
+
defaultValue: "auto",
|
|
28400
|
+
options: [
|
|
28401
|
+
{ value: "auto", label: "Auto" },
|
|
28402
|
+
{ value: "custom", label: "Custom link" },
|
|
28403
|
+
{ value: "hidden", label: "Hidden" }
|
|
28404
|
+
],
|
|
28405
|
+
ui: { intent: "behavior" }
|
|
28406
|
+
},
|
|
28407
|
+
{
|
|
28408
|
+
id: "ctaLabel",
|
|
28409
|
+
type: "text",
|
|
28410
|
+
label: "Card link label",
|
|
28411
|
+
required: false,
|
|
28412
|
+
multiline: false,
|
|
28413
|
+
maxLength: 40,
|
|
28414
|
+
ui: { intent: "content" }
|
|
28415
|
+
},
|
|
28416
|
+
{
|
|
28417
|
+
id: "ctaHref",
|
|
28418
|
+
type: "text",
|
|
28419
|
+
label: "Custom card link",
|
|
28420
|
+
required: false,
|
|
28421
|
+
multiline: false,
|
|
28422
|
+
maxLength: 160,
|
|
28423
|
+
ui: { intent: "behavior" }
|
|
28424
|
+
}
|
|
28425
|
+
];
|
|
28426
|
+
var offeringsPreviewFields = [
|
|
28427
|
+
...sectionHeaderFields("Offerings"),
|
|
28428
|
+
{
|
|
28429
|
+
id: "itemLimit",
|
|
28430
|
+
type: "select",
|
|
28431
|
+
label: "Items per card",
|
|
28432
|
+
required: false,
|
|
28433
|
+
multiple: false,
|
|
28434
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT,
|
|
28435
|
+
options: [
|
|
28436
|
+
{ value: "1", label: "1 item" },
|
|
28437
|
+
{ value: "2", label: "2 items" },
|
|
28438
|
+
{ value: "3", label: "3 items" },
|
|
28439
|
+
{ value: "4", label: "4 items" },
|
|
28440
|
+
{ value: "5", label: "5 items" },
|
|
28441
|
+
{ value: "6", label: "6 items" }
|
|
28442
|
+
],
|
|
28443
|
+
ui: { intent: "display" }
|
|
28444
|
+
},
|
|
28445
|
+
{
|
|
28446
|
+
id: "groupOverrides",
|
|
28447
|
+
type: "repeater",
|
|
28448
|
+
label: "Card overrides",
|
|
28449
|
+
description: "Edit card copy, order, or visibility for enabled offering presets.",
|
|
28450
|
+
required: false,
|
|
28451
|
+
maxItems: 5,
|
|
28452
|
+
itemLabel: "Offering card",
|
|
28453
|
+
itemLabelSource: "title",
|
|
28454
|
+
allowConversion: false,
|
|
28455
|
+
ui: { intent: "content" },
|
|
28456
|
+
schema: { fields: groupOverrideFields }
|
|
28457
|
+
},
|
|
28458
|
+
{
|
|
28459
|
+
id: "buttonVariant",
|
|
28460
|
+
type: "select",
|
|
28461
|
+
label: "Item button style",
|
|
28462
|
+
required: false,
|
|
28463
|
+
multiple: false,
|
|
28464
|
+
defaultValue: "primary",
|
|
28465
|
+
options: [
|
|
28466
|
+
{ value: "primary", label: "Primary" },
|
|
28467
|
+
{ value: "secondary", label: "Secondary" },
|
|
28468
|
+
{ value: "outline", label: "Outline" },
|
|
28469
|
+
{ value: "link", label: "Link" }
|
|
28470
|
+
],
|
|
28471
|
+
ui: { intent: "display" }
|
|
28472
|
+
},
|
|
28473
|
+
{
|
|
28474
|
+
id: "buttonText",
|
|
28475
|
+
type: "text",
|
|
28476
|
+
label: "Item button text",
|
|
28477
|
+
required: false,
|
|
28478
|
+
multiline: false,
|
|
28479
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT,
|
|
28480
|
+
maxLength: 40,
|
|
28481
|
+
ui: { intent: "content" }
|
|
28482
|
+
},
|
|
28483
|
+
{
|
|
28484
|
+
id: "emptyMessage",
|
|
28485
|
+
type: "text",
|
|
28486
|
+
label: "Empty card message",
|
|
28487
|
+
required: false,
|
|
28488
|
+
multiline: false,
|
|
28489
|
+
defaultValue: OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE,
|
|
28490
|
+
maxLength: 120,
|
|
28491
|
+
ui: { intent: "content" }
|
|
28492
|
+
},
|
|
28493
|
+
cardStylesField({
|
|
28494
|
+
id: "_cardStyles",
|
|
28495
|
+
label: "Offering card styles"
|
|
28496
|
+
}),
|
|
28497
|
+
sectionStylesField({
|
|
28498
|
+
id: "_sectionStyles",
|
|
28499
|
+
label: "Section styles",
|
|
28500
|
+
renderInHeader: false
|
|
28501
|
+
})
|
|
28502
|
+
];
|
|
28503
|
+
var offeringsPreviewEventDataBindings = Object.fromEntries(
|
|
28504
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28505
|
+
definition.dataKey,
|
|
28506
|
+
{ $bind: { from: `data.${definition.dataKey}` } }
|
|
28507
|
+
])
|
|
28508
|
+
);
|
|
28509
|
+
var offeringsPreviewLayout = [
|
|
28510
|
+
styledSection({
|
|
28511
|
+
children: sectionContainer([
|
|
28512
|
+
text(
|
|
28513
|
+
{ as: "h2", className: "rb-text-center" },
|
|
28514
|
+
bind("content.heading"),
|
|
28515
|
+
when("content.heading")
|
|
28516
|
+
),
|
|
28517
|
+
richText(
|
|
28518
|
+
{ className: "rb-prose rb-max-w-none" },
|
|
28519
|
+
bind("content.description"),
|
|
28520
|
+
when("content.description")
|
|
28521
|
+
),
|
|
28522
|
+
el("offerings-preview", {
|
|
28523
|
+
bookingOfferingPresets: {
|
|
28524
|
+
$bind: { from: "$root.bookingOfferingPresets", fallback: [] }
|
|
28525
|
+
},
|
|
28526
|
+
groupOverrides: { $bind: { from: "content.groupOverrides", fallback: [] } },
|
|
28527
|
+
cardStyles: { $bind: { from: "content._cardStyles" } },
|
|
28528
|
+
itemLimit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28529
|
+
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
28530
|
+
buttonText: { $bind: { from: "content.buttonText", fallback: OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT } },
|
|
28531
|
+
emptyMessage: {
|
|
28532
|
+
$bind: {
|
|
28533
|
+
from: "content.emptyMessage",
|
|
28534
|
+
fallback: OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE
|
|
28535
|
+
}
|
|
28536
|
+
},
|
|
28537
|
+
previewStage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28538
|
+
routeCandidates: { $bind: { from: "data.routeCandidates" } },
|
|
28539
|
+
courses: { $bind: { from: "data.courses" } },
|
|
28540
|
+
...offeringsPreviewEventDataBindings
|
|
28541
|
+
})
|
|
28542
|
+
], { gap: "lg" }),
|
|
28543
|
+
baseClass: "",
|
|
28544
|
+
spacing: "comfortable"
|
|
28545
|
+
})
|
|
28546
|
+
];
|
|
28547
|
+
var offeringsPreviewConfig = {
|
|
28548
|
+
id: "block.offerings-preview",
|
|
28549
|
+
version: "1.0.0",
|
|
28550
|
+
title: "Offerings Preview",
|
|
27577
28551
|
titleSource: "heading",
|
|
27578
|
-
description: "
|
|
27579
|
-
// Preserve legacy section styles field configuration (renderInHeader: false).
|
|
28552
|
+
description: "Show enabled offering presets as compact cards",
|
|
27580
28553
|
skipSectionStyles: true,
|
|
27581
|
-
additionalFields:
|
|
28554
|
+
additionalFields: offeringsPreviewFields,
|
|
27582
28555
|
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
27583
28556
|
behaviours: {
|
|
27584
28557
|
supportsThemeSwitching: true,
|
|
@@ -27586,71 +28559,68 @@ var eventCalendarConfig = {
|
|
|
27586
28559
|
animation: false,
|
|
27587
28560
|
paletteHidden: false
|
|
27588
28561
|
},
|
|
27589
|
-
category: "
|
|
27590
|
-
tags: [
|
|
27591
|
-
|
|
27592
|
-
|
|
27593
|
-
"month",
|
|
27594
|
-
"week",
|
|
27595
|
-
"schedule",
|
|
27596
|
-
"interactive",
|
|
27597
|
-
"list",
|
|
27598
|
-
"filter"
|
|
27599
|
-
],
|
|
27600
|
-
icon: "CalendarDays",
|
|
27601
|
-
layout: eventCalendarLayout,
|
|
27602
|
-
variants: eventCalendarVariants,
|
|
27603
|
-
defaultVariant: "combined",
|
|
27604
|
-
variantOptions: {
|
|
27605
|
-
combined: { label: "Combined" },
|
|
27606
|
-
month: { label: "Month" },
|
|
27607
|
-
week: { label: "Week" },
|
|
27608
|
-
timetable: { label: "Timetable" },
|
|
27609
|
-
list: { label: "List" }
|
|
27610
|
-
}
|
|
28562
|
+
category: "content",
|
|
28563
|
+
tags: ["offerings", "events", "classes", "workshops", "retreats"],
|
|
28564
|
+
icon: "PanelsTopLeft",
|
|
28565
|
+
layout: offeringsPreviewLayout
|
|
27611
28566
|
};
|
|
27612
|
-
var
|
|
27613
|
-
|
|
27614
|
-
|
|
28567
|
+
var offeringsPreviewManifest = createBlockManifest(offeringsPreviewConfig);
|
|
28568
|
+
var optionalPublicEventsArraySchema = publicEventsArraySchema.optional();
|
|
28569
|
+
var offeringsPreviewEventDataSchemas = Object.fromEntries(
|
|
28570
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28571
|
+
definition.dataKey,
|
|
28572
|
+
optionalPublicEventsArraySchema
|
|
28573
|
+
])
|
|
27615
28574
|
);
|
|
27616
|
-
var
|
|
27617
|
-
|
|
27618
|
-
|
|
28575
|
+
var offeringsPreviewEventDataLoaders = Object.fromEntries(
|
|
28576
|
+
OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS.map((definition) => [
|
|
28577
|
+
definition.dataKey,
|
|
28578
|
+
eventPresetLoader(definition.preset)
|
|
28579
|
+
])
|
|
28580
|
+
);
|
|
28581
|
+
var offeringsPreviewBlockDefinition = {
|
|
28582
|
+
manifest: offeringsPreviewManifest,
|
|
27619
28583
|
dataSchemas: {
|
|
27620
|
-
|
|
28584
|
+
...offeringsPreviewEventDataSchemas,
|
|
28585
|
+
routeCandidates: publicRouteCandidatesSchema.optional(),
|
|
28586
|
+
courses: publicCoursesArraySchema.optional()
|
|
27621
28587
|
},
|
|
27622
28588
|
dataLoaders: {
|
|
27623
|
-
|
|
27624
|
-
|
|
28589
|
+
...offeringsPreviewEventDataLoaders,
|
|
28590
|
+
routeCandidates: {
|
|
28591
|
+
endpoint: "listPublicRouteCandidates",
|
|
28592
|
+
params: {},
|
|
28593
|
+
mode: "server"
|
|
28594
|
+
},
|
|
28595
|
+
courses: {
|
|
28596
|
+
endpoint: "listPublicCourses",
|
|
27625
28597
|
params: {
|
|
27626
28598
|
siteId: { $bind: { from: "$root.siteId" } },
|
|
27627
|
-
|
|
27628
|
-
|
|
27629
|
-
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
27630
|
-
detailLevel: "listing",
|
|
27631
|
-
readProfile: { $bind: { from: "content.variant", fallback: "listing-card" } },
|
|
27632
|
-
// Pass filter params if configured
|
|
27633
|
-
kind: { $bind: { from: "content.kind" } },
|
|
27634
|
-
eventSurface: { $bind: { from: "content.eventSurface" } },
|
|
27635
|
-
eventPresets: {
|
|
27636
|
-
$bind: {
|
|
27637
|
-
from: "content.filterEventPresets",
|
|
27638
|
-
transforms: [{ id: "value.csv" }]
|
|
27639
|
-
}
|
|
27640
|
-
},
|
|
27641
|
-
scheduleScope: { $bind: { from: "content.scheduleScope" } },
|
|
27642
|
-
categoryIds: { $bind: { from: "content.filterCategoryIds" } },
|
|
27643
|
-
staffMemberId: { $bind: { from: "content.filterStaffMemberId" } },
|
|
27644
|
-
venueId: { $bind: { from: "content.filterVenueId" } }
|
|
28599
|
+
limit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28600
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } }
|
|
27645
28601
|
},
|
|
27646
28602
|
mode: "server"
|
|
27647
28603
|
}
|
|
27648
|
-
}
|
|
27649
|
-
runtime: eventCalendarBlockRuntime
|
|
28604
|
+
}
|
|
27650
28605
|
};
|
|
28606
|
+
function eventPresetLoader(preset2) {
|
|
28607
|
+
return {
|
|
28608
|
+
endpoint: "listPublicEvents",
|
|
28609
|
+
params: {
|
|
28610
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
28611
|
+
limit: { $bind: { from: "content.itemLimit", fallback: OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT } },
|
|
28612
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
28613
|
+
detailLevel: "listing",
|
|
28614
|
+
readProfile: "listing-card",
|
|
28615
|
+
kind: "events",
|
|
28616
|
+
eventPresets: preset2
|
|
28617
|
+
},
|
|
28618
|
+
mode: "server"
|
|
28619
|
+
};
|
|
28620
|
+
}
|
|
27651
28621
|
|
|
27652
28622
|
// ../blocks/src/system/blocks/embed.ts
|
|
27653
|
-
import { z as
|
|
28623
|
+
import { z as z54 } from "zod";
|
|
27654
28624
|
var embedFields = [
|
|
27655
28625
|
// Section heading
|
|
27656
28626
|
parseFieldDefinition({
|
|
@@ -27785,7 +28755,7 @@ var embedFields = [
|
|
|
27785
28755
|
ui: { intent: "display" }
|
|
27786
28756
|
})
|
|
27787
28757
|
];
|
|
27788
|
-
var
|
|
28758
|
+
var embedLayout2 = styledSection({
|
|
27789
28759
|
children: sectionContainer([
|
|
27790
28760
|
// Heading
|
|
27791
28761
|
text(
|
|
@@ -27873,7 +28843,7 @@ var embedManifest = createBlockManifest({
|
|
|
27873
28843
|
category: "content",
|
|
27874
28844
|
titleSource: "heading",
|
|
27875
28845
|
additionalFields: embedFields,
|
|
27876
|
-
layout:
|
|
28846
|
+
layout: embedLayout2,
|
|
27877
28847
|
description: "Embed content entries from any content type. Sites provide custom layouts via block overrides.",
|
|
27878
28848
|
tags: ["embed", "content", "dynamic", "collection", "entries", "listing"],
|
|
27879
28849
|
icon: "LayoutList",
|
|
@@ -27881,18 +28851,18 @@ var embedManifest = createBlockManifest({
|
|
|
27881
28851
|
spacing: "lg"
|
|
27882
28852
|
}
|
|
27883
28853
|
});
|
|
27884
|
-
var embedEntrySchema =
|
|
27885
|
-
id:
|
|
27886
|
-
identifier:
|
|
27887
|
-
title:
|
|
27888
|
-
slug:
|
|
27889
|
-
content:
|
|
27890
|
-
publishedAt:
|
|
28854
|
+
var embedEntrySchema = z54.object({
|
|
28855
|
+
id: z54.string(),
|
|
28856
|
+
identifier: z54.string(),
|
|
28857
|
+
title: z54.string(),
|
|
28858
|
+
slug: z54.string().nullable().optional(),
|
|
28859
|
+
content: z54.record(z54.string(), z54.unknown()).optional(),
|
|
28860
|
+
publishedAt: z54.string().nullable().optional()
|
|
27891
28861
|
});
|
|
27892
28862
|
var embedBlockDefinition = {
|
|
27893
28863
|
manifest: embedManifest,
|
|
27894
28864
|
dataSchemas: {
|
|
27895
|
-
entries:
|
|
28865
|
+
entries: z54.array(embedEntrySchema).optional()
|
|
27896
28866
|
},
|
|
27897
28867
|
dataLoaders: {
|
|
27898
28868
|
entries: {
|
|
@@ -29067,58 +30037,58 @@ var fileDownloadBlockDefinition = {
|
|
|
29067
30037
|
};
|
|
29068
30038
|
|
|
29069
30039
|
// ../blocks/src/system/blocks/shop.ts
|
|
29070
|
-
import { z as
|
|
30040
|
+
import { z as z58 } from "zod";
|
|
29071
30041
|
|
|
29072
30042
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
29073
|
-
import { z as
|
|
30043
|
+
import { z as z57 } from "zod";
|
|
29074
30044
|
|
|
29075
30045
|
// ../blocks/src/system/blocks/products/shared.ts
|
|
29076
|
-
import { z as
|
|
29077
|
-
var publicProductVariantSchema =
|
|
29078
|
-
id:
|
|
29079
|
-
title:
|
|
29080
|
-
sku:
|
|
29081
|
-
priceCents:
|
|
29082
|
-
stockQuantity:
|
|
29083
|
-
soldOut:
|
|
29084
|
-
});
|
|
29085
|
-
var publicProductSchema =
|
|
29086
|
-
id:
|
|
29087
|
-
contentEntryId:
|
|
29088
|
-
title:
|
|
29089
|
-
slug:
|
|
29090
|
-
path:
|
|
29091
|
-
status:
|
|
29092
|
-
priceCents:
|
|
29093
|
-
currency:
|
|
29094
|
-
productType:
|
|
29095
|
-
requiresShipping:
|
|
29096
|
-
hasVariants:
|
|
29097
|
-
trackInventory:
|
|
29098
|
-
soldOut:
|
|
29099
|
-
category:
|
|
29100
|
-
id:
|
|
29101
|
-
name:
|
|
29102
|
-
slug:
|
|
30046
|
+
import { z as z55 } from "zod";
|
|
30047
|
+
var publicProductVariantSchema = z55.object({
|
|
30048
|
+
id: z55.string(),
|
|
30049
|
+
title: z55.string(),
|
|
30050
|
+
sku: z55.string().nullable(),
|
|
30051
|
+
priceCents: z55.number(),
|
|
30052
|
+
stockQuantity: z55.number().nullable(),
|
|
30053
|
+
soldOut: z55.boolean()
|
|
30054
|
+
});
|
|
30055
|
+
var publicProductSchema = z55.object({
|
|
30056
|
+
id: z55.string(),
|
|
30057
|
+
contentEntryId: z55.string().nullable(),
|
|
30058
|
+
title: z55.string(),
|
|
30059
|
+
slug: z55.string(),
|
|
30060
|
+
path: z55.string().nullable(),
|
|
30061
|
+
status: z55.enum(["draft", "active"]),
|
|
30062
|
+
priceCents: z55.number(),
|
|
30063
|
+
currency: z55.string(),
|
|
30064
|
+
productType: z55.enum(["physical", "digital"]),
|
|
30065
|
+
requiresShipping: z55.boolean(),
|
|
30066
|
+
hasVariants: z55.boolean(),
|
|
30067
|
+
trackInventory: z55.boolean(),
|
|
30068
|
+
soldOut: z55.boolean(),
|
|
30069
|
+
category: z55.object({
|
|
30070
|
+
id: z55.string(),
|
|
30071
|
+
name: z55.string(),
|
|
30072
|
+
slug: z55.string()
|
|
29103
30073
|
}).nullable(),
|
|
29104
|
-
summary:
|
|
29105
|
-
badges:
|
|
29106
|
-
ctaLabel:
|
|
29107
|
-
body:
|
|
29108
|
-
gallery:
|
|
29109
|
-
|
|
29110
|
-
url:
|
|
29111
|
-
alt:
|
|
30074
|
+
summary: z55.string().nullable(),
|
|
30075
|
+
badges: z55.array(z55.string()),
|
|
30076
|
+
ctaLabel: z55.string().nullable(),
|
|
30077
|
+
body: z55.unknown().nullable(),
|
|
30078
|
+
gallery: z55.array(
|
|
30079
|
+
z55.object({
|
|
30080
|
+
url: z55.string(),
|
|
30081
|
+
alt: z55.string().nullable()
|
|
29112
30082
|
})
|
|
29113
30083
|
),
|
|
29114
|
-
variants:
|
|
30084
|
+
variants: z55.array(publicProductVariantSchema)
|
|
29115
30085
|
});
|
|
29116
|
-
var publicProductsResponseSchema =
|
|
29117
|
-
products:
|
|
30086
|
+
var publicProductsResponseSchema = z55.object({
|
|
30087
|
+
products: z55.array(publicProductSchema)
|
|
29118
30088
|
});
|
|
29119
30089
|
|
|
29120
30090
|
// ../blocks/src/system/runtime/api/creditProducts.ts
|
|
29121
|
-
function
|
|
30091
|
+
function assertNever3(value) {
|
|
29122
30092
|
throw new Error(`Unhandled credit product case: ${String(value)}`);
|
|
29123
30093
|
}
|
|
29124
30094
|
function useCasesFromModules(modules) {
|
|
@@ -29151,7 +30121,7 @@ function getCreditProductCreditUnit(useCase) {
|
|
|
29151
30121
|
perCreditSuffix: "credit"
|
|
29152
30122
|
};
|
|
29153
30123
|
default:
|
|
29154
|
-
return
|
|
30124
|
+
return assertNever3(useCase);
|
|
29155
30125
|
}
|
|
29156
30126
|
}
|
|
29157
30127
|
function deriveCreditProductLabels(products, options = {}) {
|
|
@@ -29178,27 +30148,27 @@ function deriveCreditProductLabels(products, options = {}) {
|
|
|
29178
30148
|
}
|
|
29179
30149
|
|
|
29180
30150
|
// ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
|
|
29181
|
-
import { z as
|
|
29182
|
-
var storedProductCartItemSchema =
|
|
29183
|
-
kind:
|
|
29184
|
-
productId:
|
|
29185
|
-
productCategoryId:
|
|
29186
|
-
variantId:
|
|
29187
|
-
title:
|
|
29188
|
-
variantTitle:
|
|
29189
|
-
quantity:
|
|
29190
|
-
unitPriceCents:
|
|
29191
|
-
currency:
|
|
29192
|
-
imageUrl:
|
|
29193
|
-
soldOut:
|
|
29194
|
-
});
|
|
29195
|
-
var storedPassCartItemSchema =
|
|
29196
|
-
kind:
|
|
29197
|
-
passId:
|
|
29198
|
-
title:
|
|
29199
|
-
quantity:
|
|
29200
|
-
unitPriceCents:
|
|
29201
|
-
currency:
|
|
30151
|
+
import { z as z56 } from "zod";
|
|
30152
|
+
var storedProductCartItemSchema = z56.object({
|
|
30153
|
+
kind: z56.literal("product"),
|
|
30154
|
+
productId: z56.string().min(1),
|
|
30155
|
+
productCategoryId: z56.string().min(1).optional().nullable(),
|
|
30156
|
+
variantId: z56.string().min(1).optional().nullable(),
|
|
30157
|
+
title: z56.string().min(1),
|
|
30158
|
+
variantTitle: z56.string().optional().nullable(),
|
|
30159
|
+
quantity: z56.number().finite(),
|
|
30160
|
+
unitPriceCents: z56.number().finite(),
|
|
30161
|
+
currency: z56.string().min(1),
|
|
30162
|
+
imageUrl: z56.string().optional().nullable(),
|
|
30163
|
+
soldOut: z56.boolean().optional()
|
|
30164
|
+
});
|
|
30165
|
+
var storedPassCartItemSchema = z56.object({
|
|
30166
|
+
kind: z56.literal("pass"),
|
|
30167
|
+
passId: z56.string().min(1),
|
|
30168
|
+
title: z56.string().min(1),
|
|
30169
|
+
quantity: z56.number().finite().optional(),
|
|
30170
|
+
unitPriceCents: z56.number().finite(),
|
|
30171
|
+
currency: z56.string().min(1)
|
|
29202
30172
|
});
|
|
29203
30173
|
function deriveCommerceCheckoutState(state) {
|
|
29204
30174
|
if (state.items.length === 0) {
|
|
@@ -29437,219 +30407,219 @@ function formatValidity(days) {
|
|
|
29437
30407
|
}
|
|
29438
30408
|
|
|
29439
30409
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
29440
|
-
var shopModeSchema =
|
|
29441
|
-
var contentEntrySchema3 =
|
|
29442
|
-
id:
|
|
29443
|
-
slug:
|
|
30410
|
+
var shopModeSchema = z57.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
|
|
30411
|
+
var contentEntrySchema3 = z57.object({
|
|
30412
|
+
id: z57.string().nullable().optional(),
|
|
30413
|
+
slug: z57.string().nullable().optional()
|
|
29444
30414
|
}).nullable();
|
|
29445
|
-
var shopSourceSchema =
|
|
29446
|
-
className:
|
|
30415
|
+
var shopSourceSchema = z57.object({
|
|
30416
|
+
className: z57.string().nullable().optional(),
|
|
29447
30417
|
mode: shopModeSchema.optional(),
|
|
29448
|
-
heading:
|
|
29449
|
-
productSlug:
|
|
29450
|
-
showPasses:
|
|
29451
|
-
showMemberships:
|
|
29452
|
-
layout:
|
|
29453
|
-
columns:
|
|
29454
|
-
showDescriptions:
|
|
29455
|
-
showSummary:
|
|
29456
|
-
showBody:
|
|
29457
|
-
showBadges:
|
|
29458
|
-
showPrices:
|
|
29459
|
-
showValidityPeriod:
|
|
29460
|
-
showPricePerCredit:
|
|
29461
|
-
passesHeading:
|
|
29462
|
-
membershipsHeading:
|
|
29463
|
-
buyButtonText:
|
|
29464
|
-
addButtonText:
|
|
29465
|
-
passPurchaseMode:
|
|
29466
|
-
subscribeButtonText:
|
|
29467
|
-
emptyStateText:
|
|
29468
|
-
checkoutButtonText:
|
|
29469
|
-
clearButtonText:
|
|
29470
|
-
submitButtonText:
|
|
30418
|
+
heading: z57.string().nullable().optional(),
|
|
30419
|
+
productSlug: z57.string().nullable().optional(),
|
|
30420
|
+
showPasses: z57.boolean().optional(),
|
|
30421
|
+
showMemberships: z57.boolean().optional(),
|
|
30422
|
+
layout: z57.enum(["grid", "list"]).optional(),
|
|
30423
|
+
columns: z57.string().optional(),
|
|
30424
|
+
showDescriptions: z57.boolean().optional(),
|
|
30425
|
+
showSummary: z57.boolean().optional(),
|
|
30426
|
+
showBody: z57.boolean().optional(),
|
|
30427
|
+
showBadges: z57.boolean().optional(),
|
|
30428
|
+
showPrices: z57.boolean().optional(),
|
|
30429
|
+
showValidityPeriod: z57.boolean().optional(),
|
|
30430
|
+
showPricePerCredit: z57.boolean().nullable().optional(),
|
|
30431
|
+
passesHeading: z57.string().optional(),
|
|
30432
|
+
membershipsHeading: z57.string().optional(),
|
|
30433
|
+
buyButtonText: z57.string().optional(),
|
|
30434
|
+
addButtonText: z57.string().optional(),
|
|
30435
|
+
passPurchaseMode: z57.enum(["add_to_cart", "buy_now"]).optional(),
|
|
30436
|
+
subscribeButtonText: z57.string().optional(),
|
|
30437
|
+
emptyStateText: z57.string().optional(),
|
|
30438
|
+
checkoutButtonText: z57.string().optional(),
|
|
30439
|
+
clearButtonText: z57.string().optional(),
|
|
30440
|
+
submitButtonText: z57.string().optional(),
|
|
29471
30441
|
contentEntry: contentEntrySchema3.optional(),
|
|
29472
|
-
passes:
|
|
29473
|
-
memberships:
|
|
29474
|
-
products:
|
|
29475
|
-
siteId:
|
|
29476
|
-
apiBaseUrl:
|
|
30442
|
+
passes: z57.array(publicPassProductSchema).nullable().optional(),
|
|
30443
|
+
memberships: z57.array(publicMembershipProductSchema).nullable().optional(),
|
|
30444
|
+
products: z57.array(publicProductSchema).nullable().optional(),
|
|
30445
|
+
siteId: z57.string().optional(),
|
|
30446
|
+
apiBaseUrl: z57.string().optional(),
|
|
29477
30447
|
stage: previewStageSchema.optional()
|
|
29478
30448
|
});
|
|
29479
|
-
var productVariantOptionDisplaySchema =
|
|
29480
|
-
id:
|
|
29481
|
-
label:
|
|
29482
|
-
soldOut:
|
|
29483
|
-
});
|
|
29484
|
-
var productCardDisplaySchema =
|
|
29485
|
-
productId:
|
|
29486
|
-
title:
|
|
29487
|
-
path:
|
|
29488
|
-
summary:
|
|
29489
|
-
priceLabel:
|
|
29490
|
-
badges:
|
|
29491
|
-
image:
|
|
29492
|
-
url:
|
|
29493
|
-
alt:
|
|
30449
|
+
var productVariantOptionDisplaySchema = z57.object({
|
|
30450
|
+
id: z57.string(),
|
|
30451
|
+
label: z57.string(),
|
|
30452
|
+
soldOut: z57.boolean()
|
|
30453
|
+
});
|
|
30454
|
+
var productCardDisplaySchema = z57.object({
|
|
30455
|
+
productId: z57.string(),
|
|
30456
|
+
title: z57.string(),
|
|
30457
|
+
path: z57.string().nullable(),
|
|
30458
|
+
summary: z57.string().nullable(),
|
|
30459
|
+
priceLabel: z57.string().nullable(),
|
|
30460
|
+
badges: z57.array(z57.string()),
|
|
30461
|
+
image: z57.object({
|
|
30462
|
+
url: z57.string(),
|
|
30463
|
+
alt: z57.string().nullable()
|
|
29494
30464
|
}).nullable(),
|
|
29495
|
-
variantOptions:
|
|
29496
|
-
selectedVariantId:
|
|
29497
|
-
selectionLabel:
|
|
29498
|
-
actionLabel:
|
|
29499
|
-
soldOut:
|
|
29500
|
-
});
|
|
29501
|
-
var productListDisplaySchema =
|
|
29502
|
-
kind:
|
|
29503
|
-
state:
|
|
29504
|
-
heading:
|
|
29505
|
-
className:
|
|
29506
|
-
layout:
|
|
29507
|
-
columns:
|
|
29508
|
-
emptyMessage:
|
|
29509
|
-
cards:
|
|
29510
|
-
});
|
|
29511
|
-
var productDetailDisplaySchema =
|
|
29512
|
-
|
|
29513
|
-
kind:
|
|
29514
|
-
state:
|
|
29515
|
-
heading:
|
|
29516
|
-
className:
|
|
29517
|
-
emptyMessage:
|
|
30465
|
+
variantOptions: z57.array(productVariantOptionDisplaySchema),
|
|
30466
|
+
selectedVariantId: z57.string().nullable(),
|
|
30467
|
+
selectionLabel: z57.string(),
|
|
30468
|
+
actionLabel: z57.string(),
|
|
30469
|
+
soldOut: z57.boolean()
|
|
30470
|
+
});
|
|
30471
|
+
var productListDisplaySchema = z57.object({
|
|
30472
|
+
kind: z57.literal("product-list"),
|
|
30473
|
+
state: z57.enum(["empty", "ready"]),
|
|
30474
|
+
heading: z57.string().nullable(),
|
|
30475
|
+
className: z57.string().nullable(),
|
|
30476
|
+
layout: z57.enum(["grid", "list"]),
|
|
30477
|
+
columns: z57.string(),
|
|
30478
|
+
emptyMessage: z57.string(),
|
|
30479
|
+
cards: z57.array(productCardDisplaySchema)
|
|
30480
|
+
});
|
|
30481
|
+
var productDetailDisplaySchema = z57.discriminatedUnion("state", [
|
|
30482
|
+
z57.object({
|
|
30483
|
+
kind: z57.literal("product-detail"),
|
|
30484
|
+
state: z57.literal("empty"),
|
|
30485
|
+
heading: z57.string().nullable(),
|
|
30486
|
+
className: z57.string().nullable(),
|
|
30487
|
+
emptyMessage: z57.string()
|
|
29518
30488
|
}),
|
|
29519
|
-
|
|
29520
|
-
kind:
|
|
29521
|
-
state:
|
|
29522
|
-
heading:
|
|
29523
|
-
className:
|
|
29524
|
-
title:
|
|
29525
|
-
priceLabel:
|
|
29526
|
-
summary:
|
|
29527
|
-
badges:
|
|
29528
|
-
categoryLabel:
|
|
29529
|
-
gallery:
|
|
29530
|
-
url:
|
|
29531
|
-
alt:
|
|
30489
|
+
z57.object({
|
|
30490
|
+
kind: z57.literal("product-detail"),
|
|
30491
|
+
state: z57.literal("ready"),
|
|
30492
|
+
heading: z57.string().nullable(),
|
|
30493
|
+
className: z57.string().nullable(),
|
|
30494
|
+
title: z57.string(),
|
|
30495
|
+
priceLabel: z57.string(),
|
|
30496
|
+
summary: z57.string().nullable(),
|
|
30497
|
+
badges: z57.array(z57.string()),
|
|
30498
|
+
categoryLabel: z57.string().nullable(),
|
|
30499
|
+
gallery: z57.array(z57.object({
|
|
30500
|
+
url: z57.string(),
|
|
30501
|
+
alt: z57.string().nullable()
|
|
29532
30502
|
})),
|
|
29533
|
-
variantOptions:
|
|
29534
|
-
selectedVariantId:
|
|
29535
|
-
selectionLabel:
|
|
29536
|
-
actionLabel:
|
|
29537
|
-
soldOut:
|
|
29538
|
-
body:
|
|
30503
|
+
variantOptions: z57.array(productVariantOptionDisplaySchema),
|
|
30504
|
+
selectedVariantId: z57.string().nullable(),
|
|
30505
|
+
selectionLabel: z57.string(),
|
|
30506
|
+
actionLabel: z57.string(),
|
|
30507
|
+
soldOut: z57.boolean(),
|
|
30508
|
+
body: z57.unknown().nullable()
|
|
29539
30509
|
})
|
|
29540
30510
|
]);
|
|
29541
|
-
var passCardDisplaySchema =
|
|
29542
|
-
id:
|
|
29543
|
-
title:
|
|
29544
|
-
description:
|
|
29545
|
-
priceLabel:
|
|
29546
|
-
creditsLabel:
|
|
29547
|
-
perCreditLabel:
|
|
29548
|
-
validityLabel:
|
|
29549
|
-
actionLabel:
|
|
29550
|
-
});
|
|
29551
|
-
var membershipCardDisplaySchema =
|
|
29552
|
-
id:
|
|
29553
|
-
title:
|
|
29554
|
-
description:
|
|
29555
|
-
priceLabel:
|
|
29556
|
-
intervalLabel:
|
|
29557
|
-
actionLabel:
|
|
29558
|
-
});
|
|
29559
|
-
var passesMembershipsDisplaySchema =
|
|
29560
|
-
kind:
|
|
29561
|
-
state:
|
|
29562
|
-
className:
|
|
29563
|
-
layout:
|
|
29564
|
-
columns:
|
|
29565
|
-
emptyMessage:
|
|
29566
|
-
passesHeading:
|
|
29567
|
-
membershipsHeading:
|
|
29568
|
-
passes:
|
|
29569
|
-
memberships:
|
|
29570
|
-
});
|
|
29571
|
-
var cartLineDisplaySchema =
|
|
29572
|
-
key:
|
|
29573
|
-
title:
|
|
29574
|
-
priceLabel:
|
|
29575
|
-
quantity:
|
|
29576
|
-
quantityEditable:
|
|
29577
|
-
});
|
|
29578
|
-
var cartDisplaySchema =
|
|
29579
|
-
kind:
|
|
29580
|
-
state:
|
|
29581
|
-
heading:
|
|
29582
|
-
className:
|
|
29583
|
-
emptyMessage:
|
|
29584
|
-
supportText:
|
|
29585
|
-
items:
|
|
29586
|
-
subtotalLabel:
|
|
29587
|
-
checkoutButtonText:
|
|
29588
|
-
clearButtonText:
|
|
29589
|
-
});
|
|
29590
|
-
var checkoutDisplaySchema =
|
|
29591
|
-
kind:
|
|
29592
|
-
state:
|
|
29593
|
-
heading:
|
|
29594
|
-
className:
|
|
29595
|
-
message:
|
|
29596
|
-
submitButtonText:
|
|
29597
|
-
});
|
|
29598
|
-
var passesMembershipsHydrationSchema =
|
|
29599
|
-
passes:
|
|
29600
|
-
memberships:
|
|
29601
|
-
passPurchaseMode:
|
|
29602
|
-
});
|
|
29603
|
-
var productListHydrationSchema =
|
|
29604
|
-
products:
|
|
29605
|
-
showSummary:
|
|
29606
|
-
showBadges:
|
|
29607
|
-
showPrices:
|
|
29608
|
-
addButtonText:
|
|
29609
|
-
});
|
|
29610
|
-
var productDetailHydrationSchema =
|
|
29611
|
-
products:
|
|
29612
|
-
productId:
|
|
29613
|
-
showSummary:
|
|
29614
|
-
showBadges:
|
|
29615
|
-
showBody:
|
|
29616
|
-
addButtonText:
|
|
29617
|
-
});
|
|
29618
|
-
var cartHydrationSchema =
|
|
29619
|
-
emptyStateText:
|
|
29620
|
-
checkoutButtonText:
|
|
29621
|
-
clearButtonText:
|
|
29622
|
-
});
|
|
29623
|
-
var checkoutHydrationSchema =
|
|
29624
|
-
emptyStateText:
|
|
29625
|
-
submitButtonText:
|
|
29626
|
-
});
|
|
29627
|
-
var passesMembershipsRenderSchema =
|
|
30511
|
+
var passCardDisplaySchema = z57.object({
|
|
30512
|
+
id: z57.string(),
|
|
30513
|
+
title: z57.string(),
|
|
30514
|
+
description: z57.string().nullable(),
|
|
30515
|
+
priceLabel: z57.string(),
|
|
30516
|
+
creditsLabel: z57.string(),
|
|
30517
|
+
perCreditLabel: z57.string().nullable(),
|
|
30518
|
+
validityLabel: z57.string().nullable(),
|
|
30519
|
+
actionLabel: z57.string()
|
|
30520
|
+
});
|
|
30521
|
+
var membershipCardDisplaySchema = z57.object({
|
|
30522
|
+
id: z57.string(),
|
|
30523
|
+
title: z57.string(),
|
|
30524
|
+
description: z57.string().nullable(),
|
|
30525
|
+
priceLabel: z57.string(),
|
|
30526
|
+
intervalLabel: z57.string(),
|
|
30527
|
+
actionLabel: z57.string()
|
|
30528
|
+
});
|
|
30529
|
+
var passesMembershipsDisplaySchema = z57.object({
|
|
30530
|
+
kind: z57.literal("passes-memberships"),
|
|
30531
|
+
state: z57.enum(["empty", "ready"]),
|
|
30532
|
+
className: z57.string().nullable(),
|
|
30533
|
+
layout: z57.enum(["grid", "list"]),
|
|
30534
|
+
columns: z57.string(),
|
|
30535
|
+
emptyMessage: z57.string(),
|
|
30536
|
+
passesHeading: z57.string(),
|
|
30537
|
+
membershipsHeading: z57.string(),
|
|
30538
|
+
passes: z57.array(passCardDisplaySchema),
|
|
30539
|
+
memberships: z57.array(membershipCardDisplaySchema)
|
|
30540
|
+
});
|
|
30541
|
+
var cartLineDisplaySchema = z57.object({
|
|
30542
|
+
key: z57.string(),
|
|
30543
|
+
title: z57.string(),
|
|
30544
|
+
priceLabel: z57.string(),
|
|
30545
|
+
quantity: z57.number(),
|
|
30546
|
+
quantityEditable: z57.boolean()
|
|
30547
|
+
});
|
|
30548
|
+
var cartDisplaySchema = z57.object({
|
|
30549
|
+
kind: z57.literal("cart"),
|
|
30550
|
+
state: z57.enum(["empty", "ready"]),
|
|
30551
|
+
heading: z57.string().nullable(),
|
|
30552
|
+
className: z57.string().nullable(),
|
|
30553
|
+
emptyMessage: z57.string(),
|
|
30554
|
+
supportText: z57.string().nullable(),
|
|
30555
|
+
items: z57.array(cartLineDisplaySchema),
|
|
30556
|
+
subtotalLabel: z57.string().nullable(),
|
|
30557
|
+
checkoutButtonText: z57.string(),
|
|
30558
|
+
clearButtonText: z57.string()
|
|
30559
|
+
});
|
|
30560
|
+
var checkoutDisplaySchema = z57.object({
|
|
30561
|
+
kind: z57.literal("checkout"),
|
|
30562
|
+
state: z57.enum(["empty", "blocked", "ready"]),
|
|
30563
|
+
heading: z57.string().nullable(),
|
|
30564
|
+
className: z57.string().nullable(),
|
|
30565
|
+
message: z57.string().nullable(),
|
|
30566
|
+
submitButtonText: z57.string()
|
|
30567
|
+
});
|
|
30568
|
+
var passesMembershipsHydrationSchema = z57.object({
|
|
30569
|
+
passes: z57.array(publicPassProductSchema),
|
|
30570
|
+
memberships: z57.array(publicMembershipProductSchema),
|
|
30571
|
+
passPurchaseMode: z57.enum(["add_to_cart", "buy_now"])
|
|
30572
|
+
});
|
|
30573
|
+
var productListHydrationSchema = z57.object({
|
|
30574
|
+
products: z57.array(publicProductSchema),
|
|
30575
|
+
showSummary: z57.boolean(),
|
|
30576
|
+
showBadges: z57.boolean(),
|
|
30577
|
+
showPrices: z57.boolean(),
|
|
30578
|
+
addButtonText: z57.string()
|
|
30579
|
+
});
|
|
30580
|
+
var productDetailHydrationSchema = z57.object({
|
|
30581
|
+
products: z57.array(publicProductSchema),
|
|
30582
|
+
productId: z57.string().nullable(),
|
|
30583
|
+
showSummary: z57.boolean(),
|
|
30584
|
+
showBadges: z57.boolean(),
|
|
30585
|
+
showBody: z57.boolean(),
|
|
30586
|
+
addButtonText: z57.string()
|
|
30587
|
+
});
|
|
30588
|
+
var cartHydrationSchema = z57.object({
|
|
30589
|
+
emptyStateText: z57.string(),
|
|
30590
|
+
checkoutButtonText: z57.string(),
|
|
30591
|
+
clearButtonText: z57.string()
|
|
30592
|
+
});
|
|
30593
|
+
var checkoutHydrationSchema = z57.object({
|
|
30594
|
+
emptyStateText: z57.string(),
|
|
30595
|
+
submitButtonText: z57.string()
|
|
30596
|
+
});
|
|
30597
|
+
var passesMembershipsRenderSchema = z57.object({
|
|
29628
30598
|
display: passesMembershipsDisplaySchema,
|
|
29629
30599
|
hydration: passesMembershipsHydrationSchema
|
|
29630
30600
|
});
|
|
29631
|
-
var productListRenderSchema =
|
|
30601
|
+
var productListRenderSchema = z57.object({
|
|
29632
30602
|
display: productListDisplaySchema,
|
|
29633
30603
|
hydration: productListHydrationSchema
|
|
29634
30604
|
});
|
|
29635
|
-
var productDetailRenderSchema =
|
|
30605
|
+
var productDetailRenderSchema = z57.object({
|
|
29636
30606
|
display: productDetailDisplaySchema,
|
|
29637
30607
|
hydration: productDetailHydrationSchema
|
|
29638
30608
|
});
|
|
29639
|
-
var cartRenderSchema =
|
|
30609
|
+
var cartRenderSchema = z57.object({
|
|
29640
30610
|
display: cartDisplaySchema,
|
|
29641
30611
|
hydration: cartHydrationSchema
|
|
29642
30612
|
});
|
|
29643
|
-
var checkoutRenderSchema =
|
|
30613
|
+
var checkoutRenderSchema = z57.object({
|
|
29644
30614
|
display: checkoutDisplaySchema,
|
|
29645
30615
|
hydration: checkoutHydrationSchema
|
|
29646
30616
|
});
|
|
29647
30617
|
function resolveShowPricePerCredit(source) {
|
|
29648
30618
|
return source.showPricePerCredit ?? true;
|
|
29649
30619
|
}
|
|
29650
|
-
var shopIslandMetaCodec = createZodCodec(
|
|
29651
|
-
siteId:
|
|
29652
|
-
apiBaseUrl:
|
|
30620
|
+
var shopIslandMetaCodec = createZodCodec(z57.object({
|
|
30621
|
+
siteId: z57.string().optional(),
|
|
30622
|
+
apiBaseUrl: z57.string().optional(),
|
|
29653
30623
|
stage: previewStageSchema.optional()
|
|
29654
30624
|
}));
|
|
29655
30625
|
var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
|
|
@@ -30031,9 +31001,9 @@ var shopBlockDefinition = {
|
|
|
30031
31001
|
runtime: shopBlockRuntime,
|
|
30032
31002
|
dataSchemas: {
|
|
30033
31003
|
// listPublicPasses returns { passes: [...] }
|
|
30034
|
-
passes:
|
|
31004
|
+
passes: z58.object({ passes: z58.array(publicPassProductSchema) }).optional(),
|
|
30035
31005
|
// listPublicMemberships returns { memberships: [...] }
|
|
30036
|
-
memberships:
|
|
31006
|
+
memberships: z58.object({ memberships: z58.array(publicMembershipProductSchema) }).optional()
|
|
30037
31007
|
},
|
|
30038
31008
|
dataLoaders: {
|
|
30039
31009
|
// Load passes for display
|
|
@@ -30056,7 +31026,7 @@ var shopBlockDefinition = {
|
|
|
30056
31026
|
};
|
|
30057
31027
|
|
|
30058
31028
|
// ../blocks/src/system/blocks/product-list.ts
|
|
30059
|
-
import { z as
|
|
31029
|
+
import { z as z59 } from "zod";
|
|
30060
31030
|
var productListManifest = createBlockManifest({
|
|
30061
31031
|
id: "block.product-list",
|
|
30062
31032
|
version: "1.0.0",
|
|
@@ -30198,7 +31168,7 @@ var productListBlockDefinition = {
|
|
|
30198
31168
|
}
|
|
30199
31169
|
}
|
|
30200
31170
|
};
|
|
30201
|
-
var productListDataSchema =
|
|
31171
|
+
var productListDataSchema = z59.object({
|
|
30202
31172
|
products: publicProductsResponseSchema.optional()
|
|
30203
31173
|
});
|
|
30204
31174
|
|
|
@@ -30468,72 +31438,72 @@ var checkoutBlockDefinition = {
|
|
|
30468
31438
|
};
|
|
30469
31439
|
|
|
30470
31440
|
// ../blocks/src/system/runtime/nodes/gifting.interactive.ts
|
|
30471
|
-
import { z as
|
|
30472
|
-
var publicGiftCardOfferSchema =
|
|
30473
|
-
id:
|
|
30474
|
-
kind:
|
|
30475
|
-
title:
|
|
30476
|
-
description:
|
|
30477
|
-
sortOrder:
|
|
30478
|
-
giftCard:
|
|
30479
|
-
fixedDenominations:
|
|
30480
|
-
customAmountEnabled:
|
|
30481
|
-
customAmountMinCents:
|
|
30482
|
-
customAmountMaxCents:
|
|
31441
|
+
import { z as z60 } from "zod";
|
|
31442
|
+
var publicGiftCardOfferSchema = z60.object({
|
|
31443
|
+
id: z60.string(),
|
|
31444
|
+
kind: z60.literal("gift_card"),
|
|
31445
|
+
title: z60.string(),
|
|
31446
|
+
description: z60.string().nullable(),
|
|
31447
|
+
sortOrder: z60.number().int(),
|
|
31448
|
+
giftCard: z60.object({
|
|
31449
|
+
fixedDenominations: z60.array(z60.number().int().positive()),
|
|
31450
|
+
customAmountEnabled: z60.boolean(),
|
|
31451
|
+
customAmountMinCents: z60.number().int().positive(),
|
|
31452
|
+
customAmountMaxCents: z60.number().int().positive()
|
|
30483
31453
|
}),
|
|
30484
|
-
voucher:
|
|
30485
|
-
});
|
|
30486
|
-
var publicVoucherOfferSchema =
|
|
30487
|
-
id:
|
|
30488
|
-
kind:
|
|
30489
|
-
title:
|
|
30490
|
-
description:
|
|
30491
|
-
sortOrder:
|
|
30492
|
-
giftCard:
|
|
30493
|
-
voucher:
|
|
30494
|
-
purchaseAmountCents:
|
|
31454
|
+
voucher: z60.null()
|
|
31455
|
+
});
|
|
31456
|
+
var publicVoucherOfferSchema = z60.object({
|
|
31457
|
+
id: z60.string(),
|
|
31458
|
+
kind: z60.literal("voucher"),
|
|
31459
|
+
title: z60.string(),
|
|
31460
|
+
description: z60.string().nullable(),
|
|
31461
|
+
sortOrder: z60.number().int(),
|
|
31462
|
+
giftCard: z60.null(),
|
|
31463
|
+
voucher: z60.object({
|
|
31464
|
+
purchaseAmountCents: z60.number().int().positive()
|
|
30495
31465
|
})
|
|
30496
31466
|
});
|
|
30497
|
-
var publicGiftingOffersResponseSchema =
|
|
30498
|
-
currency:
|
|
30499
|
-
giftCards:
|
|
30500
|
-
vouchers:
|
|
31467
|
+
var publicGiftingOffersResponseSchema = z60.object({
|
|
31468
|
+
currency: z60.string(),
|
|
31469
|
+
giftCards: z60.array(publicGiftCardOfferSchema),
|
|
31470
|
+
vouchers: z60.array(publicVoucherOfferSchema)
|
|
30501
31471
|
});
|
|
30502
|
-
var giftingSourceSchema =
|
|
30503
|
-
siteId:
|
|
30504
|
-
apiBaseUrl:
|
|
31472
|
+
var giftingSourceSchema = z60.object({
|
|
31473
|
+
siteId: z60.string().optional(),
|
|
31474
|
+
apiBaseUrl: z60.string().optional(),
|
|
30505
31475
|
offers: publicGiftingOffersResponseSchema.nullable().optional(),
|
|
30506
|
-
className:
|
|
30507
|
-
heading:
|
|
30508
|
-
intro:
|
|
30509
|
-
giftCardsHeading:
|
|
30510
|
-
vouchersHeading:
|
|
30511
|
-
emptyStateText:
|
|
30512
|
-
checkoutButtonText:
|
|
30513
|
-
successMessage:
|
|
30514
|
-
});
|
|
30515
|
-
var giftingDisplaySchema =
|
|
30516
|
-
kind:
|
|
30517
|
-
state:
|
|
30518
|
-
className:
|
|
30519
|
-
heading:
|
|
30520
|
-
intro:
|
|
30521
|
-
giftCardsHeading:
|
|
30522
|
-
vouchersHeading:
|
|
30523
|
-
emptyStateText:
|
|
30524
|
-
});
|
|
30525
|
-
var giftingHydrationSchema =
|
|
31476
|
+
className: z60.string().nullable().optional(),
|
|
31477
|
+
heading: z60.string().nullable().optional(),
|
|
31478
|
+
intro: z60.string().nullable().optional(),
|
|
31479
|
+
giftCardsHeading: z60.string().nullable().optional(),
|
|
31480
|
+
vouchersHeading: z60.string().nullable().optional(),
|
|
31481
|
+
emptyStateText: z60.string().nullable().optional(),
|
|
31482
|
+
checkoutButtonText: z60.string().nullable().optional(),
|
|
31483
|
+
successMessage: z60.string().nullable().optional()
|
|
31484
|
+
});
|
|
31485
|
+
var giftingDisplaySchema = z60.object({
|
|
31486
|
+
kind: z60.literal("gifting"),
|
|
31487
|
+
state: z60.literal("ready"),
|
|
31488
|
+
className: z60.string().nullable(),
|
|
31489
|
+
heading: z60.string(),
|
|
31490
|
+
intro: z60.string().nullable(),
|
|
31491
|
+
giftCardsHeading: z60.string(),
|
|
31492
|
+
vouchersHeading: z60.string(),
|
|
31493
|
+
emptyStateText: z60.string()
|
|
31494
|
+
});
|
|
31495
|
+
var giftingHydrationSchema = z60.object({
|
|
30526
31496
|
offers: publicGiftingOffersResponseSchema.nullable(),
|
|
30527
|
-
checkoutButtonText:
|
|
30528
|
-
successMessage:
|
|
31497
|
+
checkoutButtonText: z60.string(),
|
|
31498
|
+
successMessage: z60.string()
|
|
30529
31499
|
});
|
|
30530
|
-
var giftingRenderSchema =
|
|
31500
|
+
var giftingRenderSchema = z60.object({
|
|
30531
31501
|
display: giftingDisplaySchema,
|
|
30532
31502
|
hydration: giftingHydrationSchema
|
|
30533
31503
|
});
|
|
30534
|
-
var giftingIslandMetaCodec = createZodCodec(
|
|
30535
|
-
siteId:
|
|
30536
|
-
apiBaseUrl:
|
|
31504
|
+
var giftingIslandMetaCodec = createZodCodec(z60.object({
|
|
31505
|
+
siteId: z60.string().optional(),
|
|
31506
|
+
apiBaseUrl: z60.string().optional()
|
|
30537
31507
|
}));
|
|
30538
31508
|
var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
30539
31509
|
"siteId",
|
|
@@ -30704,7 +31674,7 @@ var giftingBlockDefinition = {
|
|
|
30704
31674
|
};
|
|
30705
31675
|
|
|
30706
31676
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
30707
|
-
import { z as
|
|
31677
|
+
import { z as z61 } from "zod";
|
|
30708
31678
|
|
|
30709
31679
|
// ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
|
|
30710
31680
|
function getPresetFields(preset2, options) {
|
|
@@ -30758,49 +31728,49 @@ function withOptionalPhone(fields3, includePhone) {
|
|
|
30758
31728
|
}
|
|
30759
31729
|
|
|
30760
31730
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
30761
|
-
var newsletterPresetSchema =
|
|
30762
|
-
var newsletterFieldSchema =
|
|
30763
|
-
id:
|
|
30764
|
-
type:
|
|
30765
|
-
label:
|
|
30766
|
-
required:
|
|
30767
|
-
placeholder:
|
|
30768
|
-
});
|
|
30769
|
-
var newsletterSourceSchema =
|
|
30770
|
-
siteId:
|
|
30771
|
-
apiBaseUrl:
|
|
30772
|
-
listId:
|
|
31731
|
+
var newsletterPresetSchema = z61.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
|
|
31732
|
+
var newsletterFieldSchema = z61.object({
|
|
31733
|
+
id: z61.string(),
|
|
31734
|
+
type: z61.enum(["email", "text"]),
|
|
31735
|
+
label: z61.string(),
|
|
31736
|
+
required: z61.boolean(),
|
|
31737
|
+
placeholder: z61.string().optional()
|
|
31738
|
+
});
|
|
31739
|
+
var newsletterSourceSchema = z61.object({
|
|
31740
|
+
siteId: z61.string().optional(),
|
|
31741
|
+
apiBaseUrl: z61.string().optional(),
|
|
31742
|
+
listId: z61.string().nullable().optional(),
|
|
30773
31743
|
preset: newsletterPresetSchema.optional(),
|
|
30774
|
-
includePhone:
|
|
30775
|
-
buttonLabel:
|
|
30776
|
-
successMessage:
|
|
30777
|
-
privacyNote:
|
|
30778
|
-
tags:
|
|
30779
|
-
spamProtectionEnabled:
|
|
30780
|
-
className:
|
|
30781
|
-
});
|
|
30782
|
-
var newsletterDisplaySchema =
|
|
30783
|
-
kind:
|
|
30784
|
-
className:
|
|
30785
|
-
buttonLabel:
|
|
30786
|
-
successMessage:
|
|
30787
|
-
privacyNote:
|
|
30788
|
-
fields:
|
|
30789
|
-
});
|
|
30790
|
-
var newsletterHydrationSchema =
|
|
30791
|
-
listId:
|
|
31744
|
+
includePhone: z61.boolean().optional(),
|
|
31745
|
+
buttonLabel: z61.string().nullable().optional(),
|
|
31746
|
+
successMessage: z61.string().nullable().optional(),
|
|
31747
|
+
privacyNote: z61.string().nullable().optional(),
|
|
31748
|
+
tags: z61.string().nullable().optional(),
|
|
31749
|
+
spamProtectionEnabled: z61.boolean().optional(),
|
|
31750
|
+
className: z61.string().nullable().optional()
|
|
31751
|
+
});
|
|
31752
|
+
var newsletterDisplaySchema = z61.object({
|
|
31753
|
+
kind: z61.literal("newsletter-form"),
|
|
31754
|
+
className: z61.string().nullable(),
|
|
31755
|
+
buttonLabel: z61.string(),
|
|
31756
|
+
successMessage: z61.string().nullable(),
|
|
31757
|
+
privacyNote: z61.string().nullable(),
|
|
31758
|
+
fields: z61.array(newsletterFieldSchema)
|
|
31759
|
+
});
|
|
31760
|
+
var newsletterHydrationSchema = z61.object({
|
|
31761
|
+
listId: z61.string().nullable().optional(),
|
|
30792
31762
|
preset: newsletterPresetSchema,
|
|
30793
|
-
includePhone:
|
|
30794
|
-
tags:
|
|
30795
|
-
spamProtectionEnabled:
|
|
31763
|
+
includePhone: z61.boolean(),
|
|
31764
|
+
tags: z61.string().nullable().optional(),
|
|
31765
|
+
spamProtectionEnabled: z61.boolean().optional()
|
|
30796
31766
|
});
|
|
30797
|
-
var newsletterRenderSchema =
|
|
31767
|
+
var newsletterRenderSchema = z61.object({
|
|
30798
31768
|
display: newsletterDisplaySchema,
|
|
30799
31769
|
hydration: newsletterHydrationSchema
|
|
30800
31770
|
});
|
|
30801
|
-
var newsletterIslandMetaCodec = createZodCodec(
|
|
30802
|
-
siteId:
|
|
30803
|
-
apiBaseUrl:
|
|
31771
|
+
var newsletterIslandMetaCodec = createZodCodec(z61.object({
|
|
31772
|
+
siteId: z61.string().optional(),
|
|
31773
|
+
apiBaseUrl: z61.string().optional()
|
|
30804
31774
|
}));
|
|
30805
31775
|
var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
|
|
30806
31776
|
function buildNewsletterDisplay(source) {
|
|
@@ -30921,23 +31891,23 @@ var newsletterSignupBlockDefinition = {
|
|
|
30921
31891
|
};
|
|
30922
31892
|
|
|
30923
31893
|
// ../blocks/src/system/blocks/team-members.ts
|
|
30924
|
-
import { z as
|
|
31894
|
+
import { z as z62 } from "zod";
|
|
30925
31895
|
var ITEM_NAME2 = "member";
|
|
30926
31896
|
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
30927
31897
|
message: "Team member photos must be image media"
|
|
30928
31898
|
}).nullable();
|
|
30929
|
-
var teamMemberDataSchema =
|
|
30930
|
-
_type:
|
|
30931
|
-
id:
|
|
30932
|
-
name:
|
|
30933
|
-
role:
|
|
30934
|
-
roleLabel:
|
|
30935
|
-
bio:
|
|
30936
|
-
summary:
|
|
31899
|
+
var teamMemberDataSchema = z62.object({
|
|
31900
|
+
_type: z62.literal("teamMember"),
|
|
31901
|
+
id: z62.string(),
|
|
31902
|
+
name: z62.string(),
|
|
31903
|
+
role: z62.string().nullable(),
|
|
31904
|
+
roleLabel: z62.string().nullable(),
|
|
31905
|
+
bio: z62.string().nullable(),
|
|
31906
|
+
summary: z62.string().nullable(),
|
|
30937
31907
|
photo: teamMemberPhotoSchema,
|
|
30938
|
-
profilePath:
|
|
31908
|
+
profilePath: z62.string().nullable()
|
|
30939
31909
|
});
|
|
30940
|
-
var teamMembersDataSchema =
|
|
31910
|
+
var teamMembersDataSchema = z62.array(teamMemberDataSchema);
|
|
30941
31911
|
var dynamicSourceWhen = { equals: "site_staff" };
|
|
30942
31912
|
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
30943
31913
|
var headingNode = text(
|
|
@@ -31707,6 +32677,13 @@ function eventListCapable() {
|
|
|
31707
32677
|
eventListTreatments
|
|
31708
32678
|
});
|
|
31709
32679
|
}
|
|
32680
|
+
function offeringsPreviewCapable() {
|
|
32681
|
+
return declareBlockDesignCapability({
|
|
32682
|
+
sectionSurfaces: "supported",
|
|
32683
|
+
contentFrames: ["plain"],
|
|
32684
|
+
itemSurfaces: "supported"
|
|
32685
|
+
});
|
|
32686
|
+
}
|
|
31710
32687
|
function defaultBoundaryBias(visualWeight) {
|
|
31711
32688
|
return visualWeight === "featured" || visualWeight === "immersive" ? "clear" : "soft";
|
|
31712
32689
|
}
|
|
@@ -31820,6 +32797,13 @@ var systemBlockDefinitionsRaw = [
|
|
|
31820
32797
|
weight: "featured",
|
|
31821
32798
|
bias: "clear",
|
|
31822
32799
|
surfaces: heroSectionSurfaces
|
|
32800
|
+
}),
|
|
32801
|
+
layoutProfile({
|
|
32802
|
+
variantKey: "splitEditorial",
|
|
32803
|
+
family: "split",
|
|
32804
|
+
weight: "featured",
|
|
32805
|
+
bias: "clear",
|
|
32806
|
+
surfaces: heroSectionSurfaces
|
|
31823
32807
|
})
|
|
31824
32808
|
]
|
|
31825
32809
|
})),
|
|
@@ -31914,7 +32898,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
31914
32898
|
})),
|
|
31915
32899
|
withDesignCapability("block.form", formBlockDefinition, panelCapable(), defineBlockDesignMetadata({
|
|
31916
32900
|
flow: conversionFlow,
|
|
31917
|
-
layoutProfiles: [
|
|
32901
|
+
layoutProfiles: [
|
|
32902
|
+
layoutProfile({ variantKey: "default", family: "form", weight: "standard" }),
|
|
32903
|
+
layoutProfile({ variantKey: "two-column", family: "split", weight: "standard" })
|
|
32904
|
+
]
|
|
31918
32905
|
})),
|
|
31919
32906
|
withDesignCapability("block.faq", faqBlockDefinition, withEyebrowCapability(declareBlockDesignCapability({
|
|
31920
32907
|
sectionSurfaces: "supported",
|
|
@@ -31943,7 +32930,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
31943
32930
|
contentFrames: ["plain", "panel"],
|
|
31944
32931
|
itemSurfaces: "supported",
|
|
31945
32932
|
testimonialCardTreatments: ["default", "statement", "non-carded", "accent-quote", "editorial-serif-quote"],
|
|
31946
|
-
|
|
32933
|
+
headingDecorationCapability: {
|
|
32934
|
+
kind: "supported",
|
|
32935
|
+
families: ["short-center-rule"]
|
|
32936
|
+
}
|
|
31947
32937
|
}), defineBlockDesignMetadata({
|
|
31948
32938
|
flow: proofFlow,
|
|
31949
32939
|
layoutProfiles: [
|
|
@@ -32046,6 +33036,10 @@ var systemBlockDefinitionsRaw = [
|
|
|
32046
33036
|
layoutProfile({ variantKey: "timetable", family: "stack", weight: "standard" })
|
|
32047
33037
|
]
|
|
32048
33038
|
})),
|
|
33039
|
+
withDesignCapability("block.offerings-preview", offeringsPreviewBlockDefinition, offeringsPreviewCapable(), defineBlockDesignMetadata({
|
|
33040
|
+
flow: offeringsFlow,
|
|
33041
|
+
layoutProfiles: [layoutProfile({ variantKey: "cards", family: "grid", weight: "standard" })]
|
|
33042
|
+
})),
|
|
32049
33043
|
// Friendly wrapper blocks
|
|
32050
33044
|
withDesignCapability("block.team-members", teamMembersBlockDefinition, sectionOnly(), defineBlockDesignMetadata({
|
|
32051
33045
|
flow: proofFlow,
|
|
@@ -32569,32 +33563,8 @@ var backgroundTransforms = [
|
|
|
32569
33563
|
{
|
|
32570
33564
|
id: "background.resolveColorsStyle",
|
|
32571
33565
|
kind: "formatter",
|
|
32572
|
-
summary: "Resolve
|
|
32573
|
-
run: (value, _options, context) =>
|
|
32574
|
-
if (!value || typeof value !== "object") {
|
|
32575
|
-
return {};
|
|
32576
|
-
}
|
|
32577
|
-
const input = value;
|
|
32578
|
-
const textColor = isString(input.textColor) ? input.textColor.trim() : null;
|
|
32579
|
-
const headingColor = isString(input.headingColor) ? input.headingColor.trim() : null;
|
|
32580
|
-
const style = {};
|
|
32581
|
-
if (textColor) {
|
|
32582
|
-
const resolvedText = resolveBackgroundColorValue(textColor, context);
|
|
32583
|
-
if (resolvedText) {
|
|
32584
|
-
style.color = resolvedText;
|
|
32585
|
-
style["--section-text-color"] = resolvedText;
|
|
32586
|
-
if (headingColor) {
|
|
32587
|
-
const resolvedHeading = resolveBackgroundColorValue(headingColor, context);
|
|
32588
|
-
if (resolvedHeading) {
|
|
32589
|
-
style["--section-heading-color"] = resolvedHeading;
|
|
32590
|
-
}
|
|
32591
|
-
} else {
|
|
32592
|
-
style["--section-heading-color"] = resolvedText;
|
|
32593
|
-
}
|
|
32594
|
-
}
|
|
32595
|
-
}
|
|
32596
|
-
return style;
|
|
32597
|
-
}
|
|
33566
|
+
summary: "Resolve section foreground colors from a background object into scoped CSS vars",
|
|
33567
|
+
run: (value, _options, context) => resolveSectionForegroundStyles(value, context)
|
|
32598
33568
|
},
|
|
32599
33569
|
{
|
|
32600
33570
|
id: "background.resolveAllowOverflow",
|
|
@@ -32822,6 +33792,104 @@ var builtinTransformDefinitions = [
|
|
|
32822
33792
|
];
|
|
32823
33793
|
var defaultTransforms = createTransformRegistry(builtinTransformDefinitions);
|
|
32824
33794
|
|
|
33795
|
+
// ../blocks/src/system/data/linkedContentEntries.ts
|
|
33796
|
+
var LINKED_CONTENT_ENTRY_META_KEY = "__rbLinkedContentEntry";
|
|
33797
|
+
function coerceLinkedContentEntriesPayload(payload) {
|
|
33798
|
+
if (!isRecord3(payload)) return payload;
|
|
33799
|
+
const response = payload;
|
|
33800
|
+
if (!Array.isArray(response.entries)) return payload;
|
|
33801
|
+
const contentType = parsePublicContentTypeMeta(response.contentType);
|
|
33802
|
+
if (!contentType) return response.entries;
|
|
33803
|
+
return response.entries.map((entry) => enrichLinkedContentEntry(entry, contentType));
|
|
33804
|
+
}
|
|
33805
|
+
function enrichLinkedContentEntry(entry, contentType) {
|
|
33806
|
+
if (!isRecord3(entry)) return entry;
|
|
33807
|
+
const entryId = typeof entry.id === "string" ? entry.id : null;
|
|
33808
|
+
if (!entryId) return entry;
|
|
33809
|
+
const title = typeof entry.title === "string" && entry.title.trim().length > 0 ? entry.title : entryId;
|
|
33810
|
+
const optimisticHash = typeof entry.optimisticHash === "string" && entry.optimisticHash.length > 0 ? entry.optimisticHash : null;
|
|
33811
|
+
const meta = {
|
|
33812
|
+
kind: "linked-content-entry",
|
|
33813
|
+
entryId,
|
|
33814
|
+
contentTypeKey: contentType.key,
|
|
33815
|
+
contentTypeLabel: contentTypeKeyToLabel(contentType.key),
|
|
33816
|
+
title,
|
|
33817
|
+
optimisticHash,
|
|
33818
|
+
support: resolveLinkedContentEditSupport(contentType),
|
|
33819
|
+
contentType
|
|
33820
|
+
};
|
|
33821
|
+
return {
|
|
33822
|
+
...entry,
|
|
33823
|
+
[LINKED_CONTENT_ENTRY_META_KEY]: meta
|
|
33824
|
+
};
|
|
33825
|
+
}
|
|
33826
|
+
function resolveLinkedContentEditSupport(contentType) {
|
|
33827
|
+
if (contentType.fields.length === 0) {
|
|
33828
|
+
return { kind: "unsupported-missing-schema", reason: "Content type has no public field metadata." };
|
|
33829
|
+
}
|
|
33830
|
+
const metadata = contentType.previewLinkedEntryEditing;
|
|
33831
|
+
if (!metadata) {
|
|
33832
|
+
return { kind: "unsupported-content-type", reason: "Content type has not enabled linked-entry preview editing." };
|
|
33833
|
+
}
|
|
33834
|
+
switch (metadata.kind) {
|
|
33835
|
+
case "generic":
|
|
33836
|
+
return { kind: "supported" };
|
|
33837
|
+
case "unsupported-domain-backed":
|
|
33838
|
+
return { kind: "unsupported-domain-backed", reason: metadata.reason };
|
|
33839
|
+
default:
|
|
33840
|
+
return assertNever(metadata);
|
|
33841
|
+
}
|
|
33842
|
+
}
|
|
33843
|
+
function contentTypeKeyToLabel(key) {
|
|
33844
|
+
const singular = key.endsWith("ies") ? `${key.slice(0, -3)}y` : key.endsWith("s") ? key.slice(0, -1) : key;
|
|
33845
|
+
return singular.split(/[-_\s]+/).filter((part) => part.length > 0).map((part, index) => index === 0 ? capitalize(part) : part.toLowerCase()).join(" ");
|
|
33846
|
+
}
|
|
33847
|
+
function capitalize(value) {
|
|
33848
|
+
return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
33849
|
+
}
|
|
33850
|
+
function parsePublicContentTypeMeta(value) {
|
|
33851
|
+
if (!isRecord3(value)) return null;
|
|
33852
|
+
if (typeof value.key !== "string" || value.key.trim().length === 0) return null;
|
|
33853
|
+
return {
|
|
33854
|
+
key: value.key,
|
|
33855
|
+
titleField: typeof value.titleField === "string" ? value.titleField : null,
|
|
33856
|
+
fields: Array.isArray(value.fields) ? value.fields.flatMap(parsePublicContentTypeFieldMeta) : [],
|
|
33857
|
+
previewLinkedEntryEditing: parsePublicContentTypeLinkedEntryEditing(value.previewLinkedEntryEditing)
|
|
33858
|
+
};
|
|
33859
|
+
}
|
|
33860
|
+
function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
33861
|
+
if (!isRecord3(value) || typeof value.kind !== "string") return null;
|
|
33862
|
+
switch (value.kind) {
|
|
33863
|
+
case "generic":
|
|
33864
|
+
return { kind: "generic" };
|
|
33865
|
+
case "unsupported-domain-backed":
|
|
33866
|
+
return {
|
|
33867
|
+
kind: "unsupported-domain-backed",
|
|
33868
|
+
reason: typeof value.reason === "string" ? value.reason : "Domain-backed entries need a dedicated editor workflow."
|
|
33869
|
+
};
|
|
33870
|
+
default:
|
|
33871
|
+
return null;
|
|
33872
|
+
}
|
|
33873
|
+
}
|
|
33874
|
+
function parsePublicContentTypeFieldMeta(value) {
|
|
33875
|
+
if (!isRecord3(value)) return [];
|
|
33876
|
+
if (typeof value.id !== "string" || typeof value.type !== "string") return [];
|
|
33877
|
+
return [{
|
|
33878
|
+
id: value.id,
|
|
33879
|
+
type: value.type,
|
|
33880
|
+
mediaKinds: parseStringArray(value.mediaKinds),
|
|
33881
|
+
fileKinds: parseStringArray(value.fileKinds)
|
|
33882
|
+
}];
|
|
33883
|
+
}
|
|
33884
|
+
function parseStringArray(value) {
|
|
33885
|
+
if (value === null || typeof value === "undefined") return null;
|
|
33886
|
+
if (!Array.isArray(value)) return null;
|
|
33887
|
+
return value.filter((item) => typeof item === "string");
|
|
33888
|
+
}
|
|
33889
|
+
function isRecord3(value) {
|
|
33890
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
33891
|
+
}
|
|
33892
|
+
|
|
32825
33893
|
// ../theme-core/src/navigation/presets.ts
|
|
32826
33894
|
var NAV_LINK_PRESETS = {
|
|
32827
33895
|
/**
|
|
@@ -32980,9 +34048,21 @@ var NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES = [
|
|
|
32980
34048
|
];
|
|
32981
34049
|
|
|
32982
34050
|
// ../theme-core/src/layout/generateLayoutCss.ts
|
|
32983
|
-
var
|
|
34051
|
+
var classicWaveTransitionMask = svgDataUrl(
|
|
32984
34052
|
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V46C130 55 260 24 420 30C590 36 690 62 860 42C1035 21 1160 47 1305 36C1365 31 1415 33 1440 38V72H0Z' fill='white'/></svg>"
|
|
32985
34053
|
);
|
|
34054
|
+
var balancedWaveTransitionMask = svgDataUrl(
|
|
34055
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V42C120 24 240 24 360 42C480 60 600 60 720 42C840 24 960 24 1080 42C1200 60 1320 60 1440 42V72H0Z' fill='white'/></svg>"
|
|
34056
|
+
);
|
|
34057
|
+
var gentleWaveTransitionMask = svgDataUrl(
|
|
34058
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V43C180 32 300 32 480 43C660 54 780 54 960 43C1140 32 1260 32 1440 43V72H0Z' fill='white'/></svg>"
|
|
34059
|
+
);
|
|
34060
|
+
var boldWaveTransitionMask = svgDataUrl(
|
|
34061
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V44C90 14 270 14 360 44C450 74 630 74 720 44C810 14 990 14 1080 44C1170 74 1350 74 1440 44V72H0Z' fill='white'/></svg>"
|
|
34062
|
+
);
|
|
34063
|
+
var driftWaveTransitionMask = svgDataUrl(
|
|
34064
|
+
"<svg viewBox='0 0 1440 72' xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none'><path d='M0 72V39C115 31 205 54 340 48C505 41 610 16 760 33C920 51 1015 64 1160 44C1280 27 1375 35 1440 50V72H0Z' fill='white'/></svg>"
|
|
34065
|
+
);
|
|
32986
34066
|
function svgDataUrl(svg) {
|
|
32987
34067
|
return `data:image/svg+xml,${encodeURIComponent(svg)}`;
|
|
32988
34068
|
}
|
|
@@ -34761,34 +35841,34 @@ import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
|
34761
35841
|
var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
|
|
34762
35842
|
|
|
34763
35843
|
// ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
|
|
34764
|
-
import { z as
|
|
34765
|
-
var themeBridgeConfigSchema =
|
|
34766
|
-
tokens:
|
|
34767
|
-
typography:
|
|
34768
|
-
headingFamily:
|
|
34769
|
-
bodyFamily:
|
|
34770
|
-
headingWeight:
|
|
34771
|
-
bodyWeight:
|
|
35844
|
+
import { z as z63 } from "zod";
|
|
35845
|
+
var themeBridgeConfigSchema = z63.object({
|
|
35846
|
+
tokens: z63.record(z63.string(), z63.string()),
|
|
35847
|
+
typography: z63.object({
|
|
35848
|
+
headingFamily: z63.string().optional(),
|
|
35849
|
+
bodyFamily: z63.string().optional(),
|
|
35850
|
+
headingWeight: z63.number().optional(),
|
|
35851
|
+
bodyWeight: z63.number().optional()
|
|
34772
35852
|
}).optional(),
|
|
34773
|
-
spacing:
|
|
34774
|
-
corners:
|
|
34775
|
-
shadows:
|
|
34776
|
-
components:
|
|
34777
|
-
buttons:
|
|
34778
|
-
|
|
34779
|
-
|
|
34780
|
-
variants:
|
|
35853
|
+
spacing: z63.enum(["comfortable", "standard", "dense"]).optional(),
|
|
35854
|
+
corners: z63.enum(["square", "soft", "rounded", "pill"]).optional(),
|
|
35855
|
+
shadows: z63.enum(["none", "low", "medium", "high"]).optional(),
|
|
35856
|
+
components: z63.object({
|
|
35857
|
+
buttons: z63.union([
|
|
35858
|
+
z63.boolean(),
|
|
35859
|
+
z63.object({
|
|
35860
|
+
variants: z63.array(z63.enum(["primary", "secondary", "outline", "ghost"])).optional()
|
|
34781
35861
|
})
|
|
34782
35862
|
]).optional(),
|
|
34783
|
-
cards:
|
|
34784
|
-
|
|
34785
|
-
|
|
34786
|
-
variants:
|
|
35863
|
+
cards: z63.union([
|
|
35864
|
+
z63.boolean(),
|
|
35865
|
+
z63.object({
|
|
35866
|
+
variants: z63.array(z63.enum(["default", "elevated", "outlined"])).optional()
|
|
34787
35867
|
})
|
|
34788
35868
|
]).optional(),
|
|
34789
|
-
inputs:
|
|
35869
|
+
inputs: z63.boolean().optional()
|
|
34790
35870
|
}).optional(),
|
|
34791
|
-
overrides:
|
|
35871
|
+
overrides: z63.record(z63.string(), z63.string()).optional()
|
|
34792
35872
|
}).passthrough();
|
|
34793
35873
|
|
|
34794
35874
|
// ../theme-core/src/siteChrome.tsx
|
|
@@ -34988,6 +36068,8 @@ function coerceToString(value) {
|
|
|
34988
36068
|
return String(value);
|
|
34989
36069
|
}
|
|
34990
36070
|
function coercePayload(payload) {
|
|
36071
|
+
const linkedContentEntries = coerceLinkedContentEntriesPayload(payload);
|
|
36072
|
+
if (linkedContentEntries !== payload) return linkedContentEntries;
|
|
34991
36073
|
if (payload && typeof payload === "object" && !Array.isArray(payload)) {
|
|
34992
36074
|
const record = payload;
|
|
34993
36075
|
if ("data" in record && typeof record.data !== "function") return record.data;
|
|
@@ -35075,6 +36157,7 @@ var SUPPORTED_LOADER_ENDPOINTS = [
|
|
|
35075
36157
|
"listPublicEvents",
|
|
35076
36158
|
"getPublicEventDetails",
|
|
35077
36159
|
"listPublicCourses",
|
|
36160
|
+
"listPublicRouteCandidates",
|
|
35078
36161
|
"listPublicTeamMembers",
|
|
35079
36162
|
"listPublicProducts",
|
|
35080
36163
|
"listPublicPasses",
|
|
@@ -35135,6 +36218,10 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
35135
36218
|
ensureSiteId(out, context);
|
|
35136
36219
|
return out;
|
|
35137
36220
|
}
|
|
36221
|
+
if (endpoint === "listPublicRouteCandidates") {
|
|
36222
|
+
ensureSiteId(out, context);
|
|
36223
|
+
return out;
|
|
36224
|
+
}
|
|
35138
36225
|
if (endpoint === "getPublishedEntryPreview") {
|
|
35139
36226
|
ensureSiteId(out, context);
|
|
35140
36227
|
return out;
|
|
@@ -35147,17 +36234,17 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
35147
36234
|
function unsafeRetypeZodSchema(schema) {
|
|
35148
36235
|
return schema;
|
|
35149
36236
|
}
|
|
35150
|
-
var navIdListSchema =
|
|
36237
|
+
var navIdListSchema = z64.preprocess((value) => {
|
|
35151
36238
|
if (!Array.isArray(value)) return void 0;
|
|
35152
36239
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
35153
36240
|
return filtered.length > 0 ? filtered : void 0;
|
|
35154
|
-
},
|
|
35155
|
-
var dashboardNavVisibilityBaseSchema =
|
|
35156
|
-
mode:
|
|
36241
|
+
}, z64.array(z64.string()).max(200).optional());
|
|
36242
|
+
var dashboardNavVisibilityBaseSchema = z64.object({
|
|
36243
|
+
mode: z64.enum(["augment", "restrict"]).optional(),
|
|
35157
36244
|
allowIds: navIdListSchema,
|
|
35158
36245
|
denyIds: navIdListSchema
|
|
35159
36246
|
}).strip();
|
|
35160
|
-
var dashboardNavVisibilityRolesSchema =
|
|
36247
|
+
var dashboardNavVisibilityRolesSchema = z64.object({
|
|
35161
36248
|
administrator: dashboardNavVisibilityBaseSchema.optional(),
|
|
35162
36249
|
editor: dashboardNavVisibilityBaseSchema.optional(),
|
|
35163
36250
|
team_member: dashboardNavVisibilityBaseSchema.optional()
|
|
@@ -35165,63 +36252,63 @@ var dashboardNavVisibilityRolesSchema = z62.object({
|
|
|
35165
36252
|
var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
|
|
35166
36253
|
roles: dashboardNavVisibilityRolesSchema
|
|
35167
36254
|
}).strip();
|
|
35168
|
-
var dashboardNavigationConfigSchema =
|
|
36255
|
+
var dashboardNavigationConfigSchema = z64.object({
|
|
35169
36256
|
siteNav: dashboardNavVisibilitySchema.optional(),
|
|
35170
36257
|
settingsNav: dashboardNavVisibilitySchema.optional()
|
|
35171
36258
|
}).strip();
|
|
35172
|
-
var dashboardConfigSchema =
|
|
35173
|
-
previewEditingEnabled:
|
|
36259
|
+
var dashboardConfigSchema = z64.object({
|
|
36260
|
+
previewEditingEnabled: z64.boolean().optional(),
|
|
35174
36261
|
navigation: dashboardNavigationConfigSchema.optional()
|
|
35175
36262
|
}).strip();
|
|
35176
36263
|
var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
|
|
35177
36264
|
var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
|
|
35178
|
-
var sdkLoaderEndpointSchema =
|
|
35179
|
-
var loaderFallbackScalarSchema =
|
|
35180
|
-
|
|
35181
|
-
|
|
35182
|
-
|
|
35183
|
-
|
|
36265
|
+
var sdkLoaderEndpointSchema = z64.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
36266
|
+
var loaderFallbackScalarSchema = z64.union([
|
|
36267
|
+
z64.string(),
|
|
36268
|
+
z64.number(),
|
|
36269
|
+
z64.boolean(),
|
|
36270
|
+
z64.null()
|
|
35184
36271
|
]);
|
|
35185
|
-
var loaderParamBindingSchema =
|
|
35186
|
-
$bind:
|
|
35187
|
-
from:
|
|
36272
|
+
var loaderParamBindingSchema = z64.object({
|
|
36273
|
+
$bind: z64.object({
|
|
36274
|
+
from: z64.string().min(1, "Binding path is required"),
|
|
35188
36275
|
fallback: loaderFallbackScalarSchema.optional()
|
|
35189
36276
|
})
|
|
35190
36277
|
});
|
|
35191
|
-
var loaderParamValueSchema =
|
|
35192
|
-
|
|
35193
|
-
|
|
35194
|
-
|
|
36278
|
+
var loaderParamValueSchema = z64.union([
|
|
36279
|
+
z64.string(),
|
|
36280
|
+
z64.number(),
|
|
36281
|
+
z64.boolean(),
|
|
35195
36282
|
loaderParamBindingSchema
|
|
35196
36283
|
]);
|
|
35197
|
-
var sdkConfigLoaderSchema =
|
|
36284
|
+
var sdkConfigLoaderSchema = z64.object({
|
|
35198
36285
|
endpoint: sdkLoaderEndpointSchema,
|
|
35199
|
-
params:
|
|
35200
|
-
mode:
|
|
36286
|
+
params: z64.record(z64.string(), loaderParamValueSchema),
|
|
36287
|
+
mode: z64.enum(["server", "client"]).default("server")
|
|
35201
36288
|
});
|
|
35202
|
-
var sdkDataLoadersSchema =
|
|
35203
|
-
var sdkCustomBlockIdSchema =
|
|
36289
|
+
var sdkDataLoadersSchema = z64.record(z64.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
|
|
36290
|
+
var sdkCustomBlockIdSchema = z64.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
35204
36291
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
35205
36292
|
}).transform((value) => value);
|
|
35206
|
-
var sdkCustomBlockInputSchema =
|
|
36293
|
+
var sdkCustomBlockInputSchema = z64.object({
|
|
35207
36294
|
id: sdkCustomBlockIdSchema,
|
|
35208
|
-
title:
|
|
35209
|
-
titleSource:
|
|
35210
|
-
description:
|
|
36295
|
+
title: z64.string().min(1),
|
|
36296
|
+
titleSource: z64.union([z64.string().min(1), z64.array(z64.string().min(1)).min(1)]).optional(),
|
|
36297
|
+
description: z64.string().optional(),
|
|
35211
36298
|
category: blockCategoryEnum,
|
|
35212
|
-
icon:
|
|
35213
|
-
tags:
|
|
36299
|
+
icon: z64.string().optional(),
|
|
36300
|
+
tags: z64.array(z64.string()).optional(),
|
|
35214
36301
|
fields: fieldDefinitionInputSchema.array().min(1),
|
|
35215
36302
|
dataLoaders: sdkDataLoadersSchema,
|
|
35216
36303
|
layout: NodeSchema.optional(),
|
|
35217
|
-
variants:
|
|
35218
|
-
defaultVariant:
|
|
35219
|
-
variantOptions:
|
|
35220
|
-
|
|
35221
|
-
|
|
35222
|
-
label:
|
|
35223
|
-
description:
|
|
35224
|
-
icon:
|
|
36304
|
+
variants: z64.record(z64.string().min(1), NodeSchema).optional(),
|
|
36305
|
+
defaultVariant: z64.string().min(1).optional(),
|
|
36306
|
+
variantOptions: z64.record(
|
|
36307
|
+
z64.string().min(1),
|
|
36308
|
+
z64.object({
|
|
36309
|
+
label: z64.string().min(1).optional(),
|
|
36310
|
+
description: z64.string().min(1).optional(),
|
|
36311
|
+
icon: z64.string().min(1).optional()
|
|
35225
36312
|
})
|
|
35226
36313
|
).optional()
|
|
35227
36314
|
}).superRefine((data, ctx) => {
|
|
@@ -35231,7 +36318,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35231
36318
|
const exists = data.fields.some((field) => field.id === source);
|
|
35232
36319
|
if (!exists) {
|
|
35233
36320
|
ctx.addIssue({
|
|
35234
|
-
code:
|
|
36321
|
+
code: z64.ZodIssueCode.custom,
|
|
35235
36322
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
35236
36323
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
35237
36324
|
});
|
|
@@ -35240,7 +36327,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35240
36327
|
}
|
|
35241
36328
|
if (data.layout && data.variants) {
|
|
35242
36329
|
ctx.addIssue({
|
|
35243
|
-
code:
|
|
36330
|
+
code: z64.ZodIssueCode.custom,
|
|
35244
36331
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
35245
36332
|
path: ["variants"]
|
|
35246
36333
|
});
|
|
@@ -35249,14 +36336,14 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35249
36336
|
const keys = Object.keys(data.variants);
|
|
35250
36337
|
if (keys.length === 0) {
|
|
35251
36338
|
ctx.addIssue({
|
|
35252
|
-
code:
|
|
36339
|
+
code: z64.ZodIssueCode.custom,
|
|
35253
36340
|
message: "`variants` must contain at least one variant key",
|
|
35254
36341
|
path: ["variants"]
|
|
35255
36342
|
});
|
|
35256
36343
|
}
|
|
35257
36344
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
35258
36345
|
ctx.addIssue({
|
|
35259
|
-
code:
|
|
36346
|
+
code: z64.ZodIssueCode.custom,
|
|
35260
36347
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
35261
36348
|
path: ["defaultVariant"]
|
|
35262
36349
|
});
|
|
@@ -35265,7 +36352,7 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35265
36352
|
for (const key of Object.keys(data.variantOptions)) {
|
|
35266
36353
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
35267
36354
|
ctx.addIssue({
|
|
35268
|
-
code:
|
|
36355
|
+
code: z64.ZodIssueCode.custom,
|
|
35269
36356
|
message: "`variantOptions` key must exist in `variants`",
|
|
35270
36357
|
path: ["variantOptions", key]
|
|
35271
36358
|
});
|
|
@@ -35274,78 +36361,78 @@ var sdkCustomBlockInputSchema = z62.object({
|
|
|
35274
36361
|
}
|
|
35275
36362
|
}
|
|
35276
36363
|
});
|
|
35277
|
-
var sdkBlockFieldExtensionInputSchema =
|
|
36364
|
+
var sdkBlockFieldExtensionInputSchema = z64.object({
|
|
35278
36365
|
fields: fieldDefinitionInputSchema.array().min(1)
|
|
35279
36366
|
});
|
|
35280
|
-
var sdkBlockFieldExtensionsInputSchema =
|
|
35281
|
-
|
|
36367
|
+
var sdkBlockFieldExtensionsInputSchema = z64.record(
|
|
36368
|
+
z64.string().min(1),
|
|
35282
36369
|
sdkBlockFieldExtensionInputSchema
|
|
35283
36370
|
);
|
|
35284
|
-
var sdkThemePaletteSchema =
|
|
35285
|
-
var sdkThemeConfigSchema =
|
|
36371
|
+
var sdkThemePaletteSchema = z64.record(z64.string(), z64.string());
|
|
36372
|
+
var sdkThemeConfigSchema = z64.object({
|
|
35286
36373
|
palette: sdkThemePaletteSchema
|
|
35287
36374
|
});
|
|
35288
|
-
var sdkSectionBackgroundSchema =
|
|
35289
|
-
id:
|
|
35290
|
-
label:
|
|
35291
|
-
token:
|
|
36375
|
+
var sdkSectionBackgroundSchema = z64.object({
|
|
36376
|
+
id: z64.string().min(1),
|
|
36377
|
+
label: z64.string().min(1),
|
|
36378
|
+
token: z64.string().min(1)
|
|
35292
36379
|
});
|
|
35293
|
-
var sdkSectionOptionsConfigSchema =
|
|
35294
|
-
backgroundColor:
|
|
35295
|
-
backgroundImage:
|
|
35296
|
-
backgroundGradient:
|
|
35297
|
-
spacing:
|
|
35298
|
-
textColor:
|
|
36380
|
+
var sdkSectionOptionsConfigSchema = z64.object({
|
|
36381
|
+
backgroundColor: z64.boolean().optional(),
|
|
36382
|
+
backgroundImage: z64.boolean().optional(),
|
|
36383
|
+
backgroundGradient: z64.boolean().optional(),
|
|
36384
|
+
spacing: z64.union([z64.array(z64.enum(["compact", "default", "spacious"])), z64.boolean()]).optional(),
|
|
36385
|
+
textColor: z64.boolean().optional()
|
|
35299
36386
|
});
|
|
35300
|
-
var sdkContainerOptionsConfigSchema =
|
|
35301
|
-
maxWidth:
|
|
35302
|
-
alignment:
|
|
36387
|
+
var sdkContainerOptionsConfigSchema = z64.object({
|
|
36388
|
+
maxWidth: z64.union([z64.array(z64.enum(["narrow", "default", "wide", "full"])), z64.boolean()]).optional(),
|
|
36389
|
+
alignment: z64.union([z64.array(z64.enum(["left", "center", "right"])), z64.boolean()]).optional()
|
|
35303
36390
|
});
|
|
35304
|
-
var sdkSiteStyleConfigSchema =
|
|
35305
|
-
sectionBackgrounds:
|
|
36391
|
+
var sdkSiteStyleConfigSchema = z64.object({
|
|
36392
|
+
sectionBackgrounds: z64.array(sdkSectionBackgroundSchema).optional(),
|
|
35306
36393
|
sectionOptions: sdkSectionOptionsConfigSchema.optional(),
|
|
35307
36394
|
containerOptions: sdkContainerOptionsConfigSchema.optional()
|
|
35308
36395
|
});
|
|
35309
|
-
var sdkSiteLayoutConfigSchema =
|
|
35310
|
-
footerBlocks:
|
|
35311
|
-
|
|
35312
|
-
id:
|
|
35313
|
-
kind:
|
|
35314
|
-
content:
|
|
36396
|
+
var sdkSiteLayoutConfigSchema = z64.object({
|
|
36397
|
+
footerBlocks: z64.array(
|
|
36398
|
+
z64.object({
|
|
36399
|
+
id: z64.string().min(1).optional(),
|
|
36400
|
+
kind: z64.string().min(1),
|
|
36401
|
+
content: z64.record(z64.string(), z64.unknown()).optional()
|
|
35315
36402
|
})
|
|
35316
36403
|
).optional()
|
|
35317
36404
|
});
|
|
35318
|
-
var sdkFieldSelectOptionSchema =
|
|
35319
|
-
value:
|
|
35320
|
-
label:
|
|
36405
|
+
var sdkFieldSelectOptionSchema = z64.object({
|
|
36406
|
+
value: z64.string(),
|
|
36407
|
+
label: z64.string()
|
|
35321
36408
|
});
|
|
35322
|
-
var sdkBlockFieldConfigSchema =
|
|
35323
|
-
options:
|
|
36409
|
+
var sdkBlockFieldConfigSchema = z64.object({
|
|
36410
|
+
options: z64.array(sdkFieldSelectOptionSchema).optional()
|
|
35324
36411
|
});
|
|
35325
|
-
var sdkBlockFieldOptionsMapSchema =
|
|
35326
|
-
|
|
36412
|
+
var sdkBlockFieldOptionsMapSchema = z64.record(
|
|
36413
|
+
z64.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
35327
36414
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
35328
36415
|
}),
|
|
35329
|
-
|
|
36416
|
+
z64.record(z64.string().min(1), sdkBlockFieldConfigSchema)
|
|
35330
36417
|
).optional();
|
|
35331
|
-
var sdkContentTypeTemplateConfigSchema =
|
|
35332
|
-
blocks:
|
|
36418
|
+
var sdkContentTypeTemplateConfigSchema = z64.object({
|
|
36419
|
+
blocks: z64.array(z64.unknown())
|
|
35333
36420
|
}).passthrough();
|
|
35334
|
-
var sdkContentTypeOrderingConfigSchema =
|
|
35335
|
-
mode:
|
|
36421
|
+
var sdkContentTypeOrderingConfigSchema = z64.object({
|
|
36422
|
+
mode: z64.enum(["default", "manual"]).optional()
|
|
35336
36423
|
}).optional();
|
|
35337
|
-
var sdkContentTypeConfigSchema =
|
|
35338
|
-
key:
|
|
35339
|
-
fields:
|
|
36424
|
+
var sdkContentTypeConfigSchema = z64.object({
|
|
36425
|
+
key: z64.string().min(1),
|
|
36426
|
+
fields: z64.array(z64.unknown()),
|
|
35340
36427
|
ordering: sdkContentTypeOrderingConfigSchema,
|
|
35341
36428
|
template: sdkContentTypeTemplateConfigSchema.nullable().optional()
|
|
35342
36429
|
}).passthrough();
|
|
35343
|
-
var sdkContentConfigSchema =
|
|
35344
|
-
contentTypes:
|
|
35345
|
-
pages:
|
|
35346
|
-
entries:
|
|
35347
|
-
navigationMenus:
|
|
35348
|
-
settings:
|
|
36430
|
+
var sdkContentConfigSchema = z64.object({
|
|
36431
|
+
contentTypes: z64.array(sdkContentTypeConfigSchema).optional(),
|
|
36432
|
+
pages: z64.array(z64.unknown()).optional(),
|
|
36433
|
+
entries: z64.array(z64.unknown()).optional(),
|
|
36434
|
+
navigationMenus: z64.array(z64.unknown()).optional(),
|
|
36435
|
+
settings: z64.unknown().optional()
|
|
35349
36436
|
}).passthrough();
|
|
35350
36437
|
var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
|
|
35351
36438
|
var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
|
|
@@ -35360,62 +36447,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
|
|
|
35360
36447
|
var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
|
|
35361
36448
|
var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
|
|
35362
36449
|
var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
|
|
35363
|
-
var sdkWorkflowIdSchema =
|
|
36450
|
+
var sdkWorkflowIdSchema = z64.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
35364
36451
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
35365
36452
|
});
|
|
35366
|
-
var sdkWorkflowEndpointSchema =
|
|
35367
|
-
var sdkWorkflowManualTriggerSchema =
|
|
35368
|
-
type:
|
|
36453
|
+
var sdkWorkflowEndpointSchema = z64.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
|
|
36454
|
+
var sdkWorkflowManualTriggerSchema = z64.object({
|
|
36455
|
+
type: z64.literal("manual")
|
|
35369
36456
|
}).strict();
|
|
35370
|
-
var sdkWorkflowTriggerFieldSchema =
|
|
36457
|
+
var sdkWorkflowTriggerFieldSchema = z64.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
|
|
35371
36458
|
message: "Workflow trigger fields must be top-level content field IDs, not paths"
|
|
35372
36459
|
});
|
|
35373
|
-
var sdkWorkflowFieldChangedConditionSchema =
|
|
36460
|
+
var sdkWorkflowFieldChangedConditionSchema = z64.object({
|
|
35374
36461
|
field: sdkWorkflowTriggerFieldSchema,
|
|
35375
|
-
changed:
|
|
36462
|
+
changed: z64.literal(true)
|
|
35376
36463
|
}).strict();
|
|
35377
|
-
var sdkWorkflowFieldEmptyConditionSchema =
|
|
36464
|
+
var sdkWorkflowFieldEmptyConditionSchema = z64.object({
|
|
35378
36465
|
field: sdkWorkflowTriggerFieldSchema,
|
|
35379
|
-
isEmpty:
|
|
36466
|
+
isEmpty: z64.boolean()
|
|
35380
36467
|
}).strict();
|
|
35381
|
-
var sdkWorkflowEntryDraftUpdatedTriggerSchema =
|
|
35382
|
-
type:
|
|
35383
|
-
when:
|
|
35384
|
-
|
|
36468
|
+
var sdkWorkflowEntryDraftUpdatedTriggerSchema = z64.object({
|
|
36469
|
+
type: z64.literal("entry.draft.updated"),
|
|
36470
|
+
when: z64.array(
|
|
36471
|
+
z64.union([
|
|
35385
36472
|
sdkWorkflowFieldChangedConditionSchema,
|
|
35386
36473
|
sdkWorkflowFieldEmptyConditionSchema
|
|
35387
36474
|
])
|
|
35388
36475
|
).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
|
|
35389
36476
|
}).strict();
|
|
35390
|
-
var sdkWorkflowTriggerSchema =
|
|
36477
|
+
var sdkWorkflowTriggerSchema = z64.discriminatedUnion("type", [
|
|
35391
36478
|
sdkWorkflowManualTriggerSchema,
|
|
35392
36479
|
sdkWorkflowEntryDraftUpdatedTriggerSchema
|
|
35393
36480
|
]);
|
|
35394
|
-
var sdkWorkflowConfirmationSchema =
|
|
35395
|
-
title:
|
|
35396
|
-
body:
|
|
36481
|
+
var sdkWorkflowConfirmationSchema = z64.object({
|
|
36482
|
+
title: z64.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
36483
|
+
body: z64.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
35397
36484
|
}).strict();
|
|
35398
|
-
var sdkWorkflowConfigSchema =
|
|
36485
|
+
var sdkWorkflowConfigSchema = z64.object({
|
|
35399
36486
|
id: sdkWorkflowIdSchema,
|
|
35400
|
-
title:
|
|
35401
|
-
description:
|
|
35402
|
-
contentType:
|
|
36487
|
+
title: z64.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
36488
|
+
description: z64.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
36489
|
+
contentType: z64.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
35403
36490
|
endpoint: sdkWorkflowEndpointSchema,
|
|
35404
|
-
triggers:
|
|
36491
|
+
triggers: z64.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
35405
36492
|
confirmation: sdkWorkflowConfirmationSchema.optional()
|
|
35406
36493
|
}).strict();
|
|
35407
|
-
var sdkWorkflowsSchema =
|
|
36494
|
+
var sdkWorkflowsSchema = z64.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
35408
36495
|
const ids = workflows.map((workflow) => workflow.id);
|
|
35409
36496
|
return ids.length === new Set(ids).size;
|
|
35410
36497
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
35411
|
-
var riverbankSiteConfigInputSchema =
|
|
35412
|
-
siteId:
|
|
35413
|
-
previewUrl:
|
|
35414
|
-
liveUrl:
|
|
36498
|
+
var riverbankSiteConfigInputSchema = z64.object({
|
|
36499
|
+
siteId: z64.string().uuid(),
|
|
36500
|
+
previewUrl: z64.string().url().optional(),
|
|
36501
|
+
liveUrl: z64.string().url().optional(),
|
|
35415
36502
|
theme: sdkThemeConfigSchema.optional(),
|
|
35416
36503
|
styles: sdkSiteStyleConfigSchema.optional(),
|
|
35417
36504
|
layout: sdkSiteLayoutConfigSchema.optional(),
|
|
35418
|
-
customBlocks:
|
|
36505
|
+
customBlocks: z64.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
|
|
35419
36506
|
const ids = blocks.map((b) => b.id);
|
|
35420
36507
|
return ids.length === new Set(ids).size;
|
|
35421
36508
|
}, { message: "Block IDs must be unique" }).optional(),
|
|
@@ -35423,50 +36510,50 @@ var riverbankSiteConfigInputSchema = z62.object({
|
|
|
35423
36510
|
blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
|
|
35424
36511
|
workflows: sdkWorkflowsSchema,
|
|
35425
36512
|
content: sdkContentConfigSchema.optional(),
|
|
35426
|
-
contentDir:
|
|
35427
|
-
sync:
|
|
35428
|
-
existingEntries:
|
|
36513
|
+
contentDir: z64.string().optional(),
|
|
36514
|
+
sync: z64.object({
|
|
36515
|
+
existingEntries: z64.enum(["skip", "update"]).optional()
|
|
35429
36516
|
}).optional(),
|
|
35430
|
-
deploy:
|
|
35431
|
-
verifyCommand:
|
|
35432
|
-
prebuildOutput:
|
|
36517
|
+
deploy: z64.object({
|
|
36518
|
+
verifyCommand: z64.string().optional(),
|
|
36519
|
+
prebuildOutput: z64.string().optional()
|
|
35433
36520
|
}).optional(),
|
|
35434
|
-
themeSource:
|
|
35435
|
-
activeTheme:
|
|
35436
|
-
enablePortal:
|
|
36521
|
+
themeSource: z64.enum(["local", "cms"]).optional(),
|
|
36522
|
+
activeTheme: z64.string().optional(),
|
|
36523
|
+
enablePortal: z64.boolean().optional(),
|
|
35437
36524
|
dashboard: dashboardConfigSchema.optional()
|
|
35438
36525
|
}).strict();
|
|
35439
|
-
var pushSdkConfigBodySchema =
|
|
36526
|
+
var pushSdkConfigBodySchema = z64.object({
|
|
35440
36527
|
config: riverbankSiteConfigInputSchema,
|
|
35441
|
-
forceContentTypes:
|
|
36528
|
+
forceContentTypes: z64.boolean().optional()
|
|
35442
36529
|
}).strict();
|
|
35443
36530
|
|
|
35444
36531
|
// ../api/src/siteOnboarding.ts
|
|
35445
|
-
import { z as
|
|
36532
|
+
import { z as z65 } from "zod";
|
|
35446
36533
|
var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
|
|
35447
36534
|
configure_appointments: {
|
|
35448
36535
|
requirementId: "configure_appointments",
|
|
35449
36536
|
reason: "launch_anyway"
|
|
35450
36537
|
}
|
|
35451
36538
|
};
|
|
35452
|
-
var acknowledgeLaunchRequirementRequestSchema =
|
|
36539
|
+
var acknowledgeLaunchRequirementRequestSchema = z65.discriminatedUnion(
|
|
35453
36540
|
"requirementId",
|
|
35454
36541
|
[
|
|
35455
|
-
|
|
35456
|
-
requirementId:
|
|
36542
|
+
z65.object({
|
|
36543
|
+
requirementId: z65.literal("review_generated_site")
|
|
35457
36544
|
}),
|
|
35458
|
-
|
|
35459
|
-
requirementId:
|
|
36545
|
+
z65.object({
|
|
36546
|
+
requirementId: z65.literal(
|
|
35460
36547
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
|
|
35461
36548
|
),
|
|
35462
|
-
overrideReason:
|
|
36549
|
+
overrideReason: z65.literal(
|
|
35463
36550
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
|
|
35464
36551
|
)
|
|
35465
36552
|
})
|
|
35466
36553
|
]
|
|
35467
36554
|
);
|
|
35468
|
-
var goLiveSiteRequestSchema =
|
|
35469
|
-
acceptExtraSiteCharge:
|
|
36555
|
+
var goLiveSiteRequestSchema = z65.object({
|
|
36556
|
+
acceptExtraSiteCharge: z65.boolean().optional()
|
|
35470
36557
|
});
|
|
35471
36558
|
|
|
35472
36559
|
// ../surfaces/src/index.ts
|
|
@@ -35550,7 +36637,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
|
|
|
35550
36637
|
];
|
|
35551
36638
|
|
|
35552
36639
|
// ../api/src/bookingVerticals.ts
|
|
35553
|
-
import { z as
|
|
36640
|
+
import { z as z66 } from "zod";
|
|
35554
36641
|
var VERTICAL_IDS = [
|
|
35555
36642
|
"yoga_wellness",
|
|
35556
36643
|
"fitness_pt",
|
|
@@ -35715,39 +36802,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
|
|
|
35715
36802
|
}
|
|
35716
36803
|
return [...issues];
|
|
35717
36804
|
}
|
|
35718
|
-
var VerticalIdSchema =
|
|
36805
|
+
var VerticalIdSchema = z66.string().trim().transform((value, ctx) => {
|
|
35719
36806
|
const parsed = parseVerticalId(value);
|
|
35720
36807
|
if (!parsed) {
|
|
35721
36808
|
ctx.addIssue({
|
|
35722
|
-
code:
|
|
36809
|
+
code: z66.ZodIssueCode.custom,
|
|
35723
36810
|
message: "Unknown booking vertical"
|
|
35724
36811
|
});
|
|
35725
|
-
return
|
|
36812
|
+
return z66.NEVER;
|
|
35726
36813
|
}
|
|
35727
36814
|
return parsed;
|
|
35728
36815
|
});
|
|
35729
|
-
var VerticalPresetIdSchema =
|
|
36816
|
+
var VerticalPresetIdSchema = z66.string().trim().transform((value, ctx) => {
|
|
35730
36817
|
const parsed = parseVerticalPresetId(value);
|
|
35731
36818
|
if (!parsed) {
|
|
35732
36819
|
ctx.addIssue({
|
|
35733
|
-
code:
|
|
36820
|
+
code: z66.ZodIssueCode.custom,
|
|
35734
36821
|
message: "Unknown booking preset"
|
|
35735
36822
|
});
|
|
35736
|
-
return
|
|
36823
|
+
return z66.NEVER;
|
|
35737
36824
|
}
|
|
35738
36825
|
return parsed;
|
|
35739
36826
|
});
|
|
35740
|
-
var BookingVerticalConfigSchema =
|
|
36827
|
+
var BookingVerticalConfigSchema = z66.object({
|
|
35741
36828
|
verticalId: VerticalIdSchema.nullable(),
|
|
35742
|
-
selectedPresetIds:
|
|
36829
|
+
selectedPresetIds: z66.array(VerticalPresetIdSchema).max(20)
|
|
35743
36830
|
}).transform((value, ctx) => {
|
|
35744
36831
|
const resolved = resolveSiteVerticalBookingConfig(value);
|
|
35745
36832
|
if (resolved.kind === "invalid") {
|
|
35746
36833
|
ctx.addIssue({
|
|
35747
|
-
code:
|
|
36834
|
+
code: z66.ZodIssueCode.custom,
|
|
35748
36835
|
message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
|
|
35749
36836
|
});
|
|
35750
|
-
return
|
|
36837
|
+
return z66.NEVER;
|
|
35751
36838
|
}
|
|
35752
36839
|
return resolved.config;
|
|
35753
36840
|
});
|
|
@@ -35769,56 +36856,56 @@ function preset(id, verticalId, canonicalBehaviour, label, pluralLabel, descript
|
|
|
35769
36856
|
}
|
|
35770
36857
|
|
|
35771
36858
|
// ../api/src/utils/isRecord.ts
|
|
35772
|
-
function
|
|
36859
|
+
function isRecord4(value) {
|
|
35773
36860
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
35774
36861
|
}
|
|
35775
36862
|
|
|
35776
36863
|
// ../api/src/appointmentSetup.ts
|
|
35777
|
-
import { z as
|
|
36864
|
+
import { z as z67 } from "zod";
|
|
35778
36865
|
var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
|
|
35779
|
-
var appointmentSetupRefSchema =
|
|
35780
|
-
|
|
35781
|
-
|
|
36866
|
+
var appointmentSetupRefSchema = z67.discriminatedUnion("kind", [
|
|
36867
|
+
z67.object({ kind: z67.literal("existing"), id: z67.string().min(1) }),
|
|
36868
|
+
z67.object({ kind: z67.literal("new"), draftId: z67.string().min(1) })
|
|
35782
36869
|
]);
|
|
35783
|
-
var appointmentSetupVenueChoiceSchema =
|
|
35784
|
-
|
|
35785
|
-
|
|
35786
|
-
|
|
35787
|
-
kind:
|
|
35788
|
-
draftId:
|
|
35789
|
-
title:
|
|
35790
|
-
description:
|
|
35791
|
-
timezone:
|
|
35792
|
-
addressJson:
|
|
35793
|
-
locationJson:
|
|
36870
|
+
var appointmentSetupVenueChoiceSchema = z67.discriminatedUnion("kind", [
|
|
36871
|
+
z67.object({ kind: z67.literal("none") }),
|
|
36872
|
+
z67.object({ kind: z67.literal("existing"), venueId: z67.string().min(1) }),
|
|
36873
|
+
z67.object({
|
|
36874
|
+
kind: z67.literal("create"),
|
|
36875
|
+
draftId: z67.string().min(1),
|
|
36876
|
+
title: z67.string().trim().min(1),
|
|
36877
|
+
description: z67.string().nullable(),
|
|
36878
|
+
timezone: z67.string().trim().min(1).nullable(),
|
|
36879
|
+
addressJson: z67.record(z67.string(), z67.unknown()),
|
|
36880
|
+
locationJson: z67.object({ lat: z67.number(), lng: z67.number() }).nullable()
|
|
35794
36881
|
})
|
|
35795
36882
|
]);
|
|
35796
|
-
var appointmentSetupPaymentDraftSchema =
|
|
35797
|
-
priceType:
|
|
35798
|
-
});
|
|
35799
|
-
var appointmentSetupServiceAssignmentDraftSchema =
|
|
35800
|
-
|
|
35801
|
-
|
|
35802
|
-
kind:
|
|
35803
|
-
resourceRefs:
|
|
36883
|
+
var appointmentSetupPaymentDraftSchema = z67.object({
|
|
36884
|
+
priceType: z67.union([z67.literal("free"), z67.literal("paid")])
|
|
36885
|
+
});
|
|
36886
|
+
var appointmentSetupServiceAssignmentDraftSchema = z67.discriminatedUnion("kind", [
|
|
36887
|
+
z67.object({ kind: z67.literal("all_practitioners") }),
|
|
36888
|
+
z67.object({
|
|
36889
|
+
kind: z67.literal("selected_practitioners"),
|
|
36890
|
+
resourceRefs: z67.array(appointmentSetupRefSchema)
|
|
35804
36891
|
})
|
|
35805
36892
|
]);
|
|
35806
|
-
var appointmentSetupServiceDraftSchema =
|
|
36893
|
+
var appointmentSetupServiceDraftSchema = z67.object({
|
|
35807
36894
|
ref: appointmentSetupRefSchema,
|
|
35808
|
-
title:
|
|
35809
|
-
description:
|
|
35810
|
-
durationMinutes:
|
|
35811
|
-
prepMinutes:
|
|
35812
|
-
cleanupMinutes:
|
|
35813
|
-
priceAmount:
|
|
35814
|
-
isActive:
|
|
35815
|
-
locationType:
|
|
35816
|
-
|
|
35817
|
-
|
|
35818
|
-
|
|
36895
|
+
title: z67.string().trim().min(1),
|
|
36896
|
+
description: z67.string().nullable(),
|
|
36897
|
+
durationMinutes: z67.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
|
|
36898
|
+
prepMinutes: z67.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
36899
|
+
cleanupMinutes: z67.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
36900
|
+
priceAmount: z67.number().int().nonnegative().nullable(),
|
|
36901
|
+
isActive: z67.boolean(),
|
|
36902
|
+
locationType: z67.union([
|
|
36903
|
+
z67.literal("virtual"),
|
|
36904
|
+
z67.literal("in_person"),
|
|
36905
|
+
z67.literal("hybrid")
|
|
35819
36906
|
]),
|
|
35820
36907
|
venue: appointmentSetupVenueChoiceSchema,
|
|
35821
|
-
timezone:
|
|
36908
|
+
timezone: z67.string().trim().min(1).nullable(),
|
|
35822
36909
|
payment: appointmentSetupPaymentDraftSchema,
|
|
35823
36910
|
assignment: appointmentSetupServiceAssignmentDraftSchema
|
|
35824
36911
|
}).superRefine((service, ctx) => {
|
|
@@ -35837,49 +36924,49 @@ var appointmentSetupServiceDraftSchema = z65.object({
|
|
|
35837
36924
|
});
|
|
35838
36925
|
}
|
|
35839
36926
|
});
|
|
35840
|
-
var appointmentSetupPractitionerDraftSchema =
|
|
36927
|
+
var appointmentSetupPractitionerDraftSchema = z67.object({
|
|
35841
36928
|
ref: appointmentSetupRefSchema,
|
|
35842
|
-
displayName:
|
|
35843
|
-
bio:
|
|
35844
|
-
timezone:
|
|
35845
|
-
colorHex:
|
|
35846
|
-
});
|
|
35847
|
-
var appointmentSetupWeeklyWindowDraftSchema =
|
|
35848
|
-
weekday:
|
|
35849
|
-
startTime:
|
|
35850
|
-
endTime:
|
|
35851
|
-
});
|
|
35852
|
-
var appointmentSetupStartTimePolicyDraftSchema =
|
|
35853
|
-
|
|
35854
|
-
|
|
35855
|
-
kind:
|
|
35856
|
-
intervalMinutes:
|
|
35857
|
-
|
|
35858
|
-
|
|
35859
|
-
|
|
35860
|
-
|
|
35861
|
-
|
|
35862
|
-
|
|
36929
|
+
displayName: z67.string().trim().min(1),
|
|
36930
|
+
bio: z67.string().nullable(),
|
|
36931
|
+
timezone: z67.string().trim().min(1),
|
|
36932
|
+
colorHex: z67.string().nullable()
|
|
36933
|
+
});
|
|
36934
|
+
var appointmentSetupWeeklyWindowDraftSchema = z67.object({
|
|
36935
|
+
weekday: z67.number().int().min(0).max(6),
|
|
36936
|
+
startTime: z67.string(),
|
|
36937
|
+
endTime: z67.string()
|
|
36938
|
+
});
|
|
36939
|
+
var appointmentSetupStartTimePolicyDraftSchema = z67.discriminatedUnion("kind", [
|
|
36940
|
+
z67.object({ kind: z67.literal("automatic_spacing") }),
|
|
36941
|
+
z67.object({
|
|
36942
|
+
kind: z67.literal("regular_interval"),
|
|
36943
|
+
intervalMinutes: z67.union([
|
|
36944
|
+
z67.literal(10),
|
|
36945
|
+
z67.literal(15),
|
|
36946
|
+
z67.literal(20),
|
|
36947
|
+
z67.literal(30),
|
|
36948
|
+
z67.literal(45),
|
|
36949
|
+
z67.literal(60)
|
|
35863
36950
|
])
|
|
35864
36951
|
})
|
|
35865
36952
|
]);
|
|
35866
|
-
var appointmentSetupAvailabilityDraftSchema =
|
|
35867
|
-
kind:
|
|
36953
|
+
var appointmentSetupAvailabilityDraftSchema = z67.object({
|
|
36954
|
+
kind: z67.literal("weekly_windows"),
|
|
35868
36955
|
resourceRef: appointmentSetupRefSchema,
|
|
35869
36956
|
serviceRef: appointmentSetupRefSchema.nullable(),
|
|
35870
|
-
windows:
|
|
36957
|
+
windows: z67.array(appointmentSetupWeeklyWindowDraftSchema),
|
|
35871
36958
|
startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
|
|
35872
36959
|
});
|
|
35873
36960
|
var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
|
|
35874
36961
|
var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
|
|
35875
|
-
var appointmentSetupBookingNoticeSchema =
|
|
35876
|
-
minLeadMinutes:
|
|
35877
|
-
maxBookingNoticeMinutes:
|
|
35878
|
-
});
|
|
35879
|
-
var applyAppointmentSetupRequestSchema =
|
|
35880
|
-
services:
|
|
35881
|
-
practitioners:
|
|
35882
|
-
availability:
|
|
36962
|
+
var appointmentSetupBookingNoticeSchema = z67.object({
|
|
36963
|
+
minLeadMinutes: z67.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
|
|
36964
|
+
maxBookingNoticeMinutes: z67.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
|
|
36965
|
+
});
|
|
36966
|
+
var applyAppointmentSetupRequestSchema = z67.object({
|
|
36967
|
+
services: z67.array(appointmentSetupServiceDraftSchema),
|
|
36968
|
+
practitioners: z67.array(appointmentSetupPractitionerDraftSchema),
|
|
36969
|
+
availability: z67.array(appointmentSetupAvailabilityDraftSchema),
|
|
35883
36970
|
bookingNotice: appointmentSetupBookingNoticeSchema
|
|
35884
36971
|
});
|
|
35885
36972
|
|
|
@@ -35912,24 +36999,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
|
|
|
35912
36999
|
];
|
|
35913
37000
|
|
|
35914
37001
|
// ../api/src/siteBanner.ts
|
|
35915
|
-
import { z as
|
|
37002
|
+
import { z as z68 } from "zod";
|
|
35916
37003
|
var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
|
|
35917
37004
|
var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
|
|
35918
37005
|
var SITE_BANNER_MAX_TEXT_LENGTH = 320;
|
|
35919
37006
|
var SITE_BANNER_MAX_PARAGRAPHS = 2;
|
|
35920
|
-
var siteBannerScopeSchema =
|
|
35921
|
-
var siteBannerToneSchema =
|
|
35922
|
-
var siteBannerBodySchema =
|
|
35923
|
-
var siteBannerCtaSchema =
|
|
35924
|
-
label:
|
|
37007
|
+
var siteBannerScopeSchema = z68.enum(SITE_BANNER_SCOPE_VALUES);
|
|
37008
|
+
var siteBannerToneSchema = z68.enum(SITE_BANNER_TONE_VALUES);
|
|
37009
|
+
var siteBannerBodySchema = z68.unknown().transform(unwrapRichTextValue);
|
|
37010
|
+
var siteBannerCtaSchema = z68.object({
|
|
37011
|
+
label: z68.string().trim().min(1),
|
|
35925
37012
|
link: linkPayloadSchema
|
|
35926
37013
|
});
|
|
35927
|
-
var siteBannerSettingsSchema =
|
|
35928
|
-
|
|
35929
|
-
enabled:
|
|
37014
|
+
var siteBannerSettingsSchema = z68.discriminatedUnion("enabled", [
|
|
37015
|
+
z68.object({
|
|
37016
|
+
enabled: z68.literal(false)
|
|
35930
37017
|
}),
|
|
35931
|
-
|
|
35932
|
-
enabled:
|
|
37018
|
+
z68.object({
|
|
37019
|
+
enabled: z68.literal(true),
|
|
35933
37020
|
scope: siteBannerScopeSchema,
|
|
35934
37021
|
tone: siteBannerToneSchema,
|
|
35935
37022
|
body: siteBannerBodySchema,
|
|
@@ -35943,7 +37030,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
|
|
|
35943
37030
|
const analysis = analyzeSiteBannerBody(value.body);
|
|
35944
37031
|
for (const issue of analysis.issues) {
|
|
35945
37032
|
ctx.addIssue({
|
|
35946
|
-
code:
|
|
37033
|
+
code: z68.ZodIssueCode.custom,
|
|
35947
37034
|
path: ["body"],
|
|
35948
37035
|
message: siteBannerBodyIssueMessage(issue)
|
|
35949
37036
|
});
|
|
@@ -36076,7 +37163,7 @@ function sanitizeMarks(marks) {
|
|
|
36076
37163
|
if (mark.type === "bold" || mark.type === "strong" || mark.type === "italic" || mark.type === "em") {
|
|
36077
37164
|
return [{ type: mark.type }];
|
|
36078
37165
|
}
|
|
36079
|
-
if (mark.type === "link" &&
|
|
37166
|
+
if (mark.type === "link" && isRecord4(mark.attrs) && typeof mark.attrs.href === "string") {
|
|
36080
37167
|
const attrs = { href: mark.attrs.href };
|
|
36081
37168
|
if (typeof mark.attrs.target === "string" && mark.attrs.target.trim().length > 0) {
|
|
36082
37169
|
attrs.target = mark.attrs.target;
|
|
@@ -36091,10 +37178,10 @@ function sanitizeMarks(marks) {
|
|
|
36091
37178
|
return sanitized.length > 0 ? sanitized : void 0;
|
|
36092
37179
|
}
|
|
36093
37180
|
function unwrapRichTextValue(value) {
|
|
36094
|
-
if (
|
|
37181
|
+
if (isRecord4(value) && isRecord4(value.doc)) {
|
|
36095
37182
|
return unwrapRichTextValue(value.doc);
|
|
36096
37183
|
}
|
|
36097
|
-
if (
|
|
37184
|
+
if (isRecord4(value) && value.type === "doc") {
|
|
36098
37185
|
return {
|
|
36099
37186
|
type: "doc",
|
|
36100
37187
|
content: Array.isArray(value.content) ? value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) : []
|
|
@@ -36103,7 +37190,7 @@ function unwrapRichTextValue(value) {
|
|
|
36103
37190
|
return EMPTY_SITE_BANNER_BODY;
|
|
36104
37191
|
}
|
|
36105
37192
|
function isTipTapNodeLike(value) {
|
|
36106
|
-
return
|
|
37193
|
+
return isRecord4(value) && typeof value.type === "string";
|
|
36107
37194
|
}
|
|
36108
37195
|
function coerceTipTapNode(value) {
|
|
36109
37196
|
return {
|
|
@@ -36111,9 +37198,9 @@ function coerceTipTapNode(value) {
|
|
|
36111
37198
|
...Array.isArray(value.content) ? { content: value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) } : {},
|
|
36112
37199
|
...typeof value.text === "string" ? { text: value.text } : {},
|
|
36113
37200
|
...Array.isArray(value.marks) ? {
|
|
36114
|
-
marks: value.marks.filter((mark) =>
|
|
37201
|
+
marks: value.marks.filter((mark) => isRecord4(mark) && typeof mark.type === "string").map((mark) => ({
|
|
36115
37202
|
type: mark.type,
|
|
36116
|
-
...
|
|
37203
|
+
...isRecord4(mark.attrs) ? { attrs: mark.attrs } : {}
|
|
36117
37204
|
}))
|
|
36118
37205
|
} : {}
|
|
36119
37206
|
};
|
|
@@ -36205,71 +37292,71 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
|
|
|
36205
37292
|
var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
|
|
36206
37293
|
|
|
36207
37294
|
// ../api/src/aiPlayground.ts
|
|
36208
|
-
import { z as
|
|
36209
|
-
var Rfc6902PatchOp =
|
|
37295
|
+
import { z as z69 } from "zod";
|
|
37296
|
+
var Rfc6902PatchOp = z69.discriminatedUnion("op", [
|
|
36210
37297
|
// Standard RFC-6902 operations
|
|
36211
|
-
|
|
36212
|
-
op:
|
|
36213
|
-
path:
|
|
36214
|
-
value:
|
|
37298
|
+
z69.object({
|
|
37299
|
+
op: z69.literal("add"),
|
|
37300
|
+
path: z69.string(),
|
|
37301
|
+
value: z69.unknown()
|
|
36215
37302
|
}),
|
|
36216
|
-
|
|
36217
|
-
op:
|
|
36218
|
-
path:
|
|
37303
|
+
z69.object({
|
|
37304
|
+
op: z69.literal("remove"),
|
|
37305
|
+
path: z69.string()
|
|
36219
37306
|
}),
|
|
36220
|
-
|
|
36221
|
-
op:
|
|
36222
|
-
path:
|
|
36223
|
-
value:
|
|
37307
|
+
z69.object({
|
|
37308
|
+
op: z69.literal("replace"),
|
|
37309
|
+
path: z69.string(),
|
|
37310
|
+
value: z69.unknown()
|
|
36224
37311
|
}),
|
|
36225
|
-
|
|
36226
|
-
op:
|
|
36227
|
-
from:
|
|
36228
|
-
path:
|
|
37312
|
+
z69.object({
|
|
37313
|
+
op: z69.literal("move"),
|
|
37314
|
+
from: z69.string(),
|
|
37315
|
+
path: z69.string()
|
|
36229
37316
|
}),
|
|
36230
|
-
|
|
36231
|
-
op:
|
|
36232
|
-
from:
|
|
36233
|
-
path:
|
|
37317
|
+
z69.object({
|
|
37318
|
+
op: z69.literal("copy"),
|
|
37319
|
+
from: z69.string(),
|
|
37320
|
+
path: z69.string()
|
|
36234
37321
|
}),
|
|
36235
37322
|
// Block-level operations (Phase 2)
|
|
36236
|
-
|
|
36237
|
-
op:
|
|
36238
|
-
blockKind:
|
|
36239
|
-
afterBlockId:
|
|
36240
|
-
content:
|
|
36241
|
-
rationale:
|
|
37323
|
+
z69.object({
|
|
37324
|
+
op: z69.literal("add_block"),
|
|
37325
|
+
blockKind: z69.string(),
|
|
37326
|
+
afterBlockId: z69.string().nullable(),
|
|
37327
|
+
content: z69.record(z69.string(), z69.unknown()),
|
|
37328
|
+
rationale: z69.string()
|
|
36242
37329
|
}),
|
|
36243
|
-
|
|
36244
|
-
op:
|
|
36245
|
-
blockId:
|
|
36246
|
-
rationale:
|
|
37330
|
+
z69.object({
|
|
37331
|
+
op: z69.literal("delete_block"),
|
|
37332
|
+
blockId: z69.string(),
|
|
37333
|
+
rationale: z69.string()
|
|
36247
37334
|
}),
|
|
36248
|
-
|
|
36249
|
-
op:
|
|
36250
|
-
blockId:
|
|
36251
|
-
afterBlockId:
|
|
36252
|
-
rationale:
|
|
37335
|
+
z69.object({
|
|
37336
|
+
op: z69.literal("reorder_block"),
|
|
37337
|
+
blockId: z69.string(),
|
|
37338
|
+
afterBlockId: z69.string().nullable(),
|
|
37339
|
+
rationale: z69.string()
|
|
36253
37340
|
})
|
|
36254
37341
|
]);
|
|
36255
|
-
var PlaygroundProposeRequest =
|
|
36256
|
-
request:
|
|
37342
|
+
var PlaygroundProposeRequest = z69.object({
|
|
37343
|
+
request: z69.string().min(1).max(2e3)
|
|
36257
37344
|
});
|
|
36258
|
-
var MultiPagePatchEnvelope =
|
|
36259
|
-
pageId:
|
|
36260
|
-
blockId:
|
|
37345
|
+
var MultiPagePatchEnvelope = z69.object({
|
|
37346
|
+
pageId: z69.string(),
|
|
37347
|
+
blockId: z69.string().optional(),
|
|
36261
37348
|
// Not present for page-level ops
|
|
36262
|
-
blockKind:
|
|
36263
|
-
blockPurpose:
|
|
36264
|
-
ops:
|
|
36265
|
-
rationale:
|
|
36266
|
-
currentContent:
|
|
36267
|
-
});
|
|
36268
|
-
var MultiPageUpdateResponse =
|
|
36269
|
-
patches:
|
|
36270
|
-
assistantMessage:
|
|
36271
|
-
pagesModified:
|
|
36272
|
-
toolCallsUsed:
|
|
37349
|
+
blockKind: z69.string().optional(),
|
|
37350
|
+
blockPurpose: z69.string().optional().nullable(),
|
|
37351
|
+
ops: z69.array(Rfc6902PatchOp),
|
|
37352
|
+
rationale: z69.string(),
|
|
37353
|
+
currentContent: z69.record(z69.string(), z69.unknown()).optional()
|
|
37354
|
+
});
|
|
37355
|
+
var MultiPageUpdateResponse = z69.object({
|
|
37356
|
+
patches: z69.array(MultiPagePatchEnvelope),
|
|
37357
|
+
assistantMessage: z69.string(),
|
|
37358
|
+
pagesModified: z69.number(),
|
|
37359
|
+
toolCallsUsed: z69.number()
|
|
36273
37360
|
});
|
|
36274
37361
|
|
|
36275
37362
|
// src/data/prefetchBlockData.ts
|