@riverbankcms/sdk 0.104.3 → 0.108.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +84 -51
- package/dist/{PreviewEditorSidebar-CBMhU9p_.mjs → PreviewEditorSidebar-BBT-kZAM.mjs} +1850 -1183
- package/dist/{PreviewEditorUI-C5KEw4M8.mjs → PreviewEditorUI-D69xNKT2.mjs} +10 -9
- package/dist/{PreviewQueryProvider-CStABBUh.mjs → PreviewQueryProvider-RRu7wyQ5.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-Iq12HjL7.mjs → SdkPreviewModeRuntime-CuDjXH6o.mjs} +2562 -457
- package/dist/{SiteChromeCustomizeContext-Cx0NMdyv.mjs → SiteChromeCustomizeContext-BQUY2dEk.mjs} +7689 -3196
- package/dist/_dts/ai/src/contracts/proposals.d.ts +36493 -1395
- package/dist/_dts/api/src/blocks.d.ts +41 -7
- package/dist/_dts/api/src/bookingConfig.d.ts +2 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +5 -1
- package/dist/_dts/api/src/bookingRecords.d.ts +180 -115
- package/dist/_dts/api/src/cache-tags.d.ts +3 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +25 -16
- package/dist/_dts/api/src/courses.d.ts +68 -10
- package/dist/_dts/api/src/endpoints.d.ts +128 -0
- package/dist/_dts/api/src/footer-settings.d.ts +1 -0
- package/dist/_dts/api/src/footerSettings.d.ts +8 -0
- package/dist/_dts/api/src/index.d.ts +127 -124
- package/dist/_dts/api/src/navigation/contracts.d.ts +3 -3
- package/dist/_dts/api/src/previewContentContract.d.ts +4 -0
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +9 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +178 -6
- package/dist/_dts/api/src/siteBanner.d.ts +2 -2
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +143 -55
- package/dist/_dts/api/src/siteOperations.d.ts +1 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +32 -4
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +72 -47
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -4
- package/dist/_dts/blocks/src/definitions.d.ts +1 -1
- package/dist/_dts/blocks/src/portal/types.d.ts +25 -7
- package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +0 -1
- package/dist/_dts/blocks/src/rendering/server.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule-projection.d.ts +52 -0
- package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +22 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +45 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +10 -0
- package/dist/_dts/blocks/src/system/blocks/feature-cards.d.ts +4 -1
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +8 -2
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/index.d.ts +8 -8
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/model.d.ts +24 -24
- package/dist/_dts/blocks/src/system/blocks/offerings-preview/scheduleSummary.d.ts +29 -0
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +50 -0
- package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +9 -48
- 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 +2 -5
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/designCapabilities.d.ts +1 -0
- package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +2 -2
- package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -1
- package/dist/_dts/blocks/src/system/icons/social.d.ts +5 -0
- package/dist/_dts/blocks/src/system/icons/svg.d.ts +1 -0
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +2 -2
- package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +13 -0
- package/dist/_dts/blocks/src/system/node/fragments/footerNav.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/fragments/styledCard.d.ts +3 -0
- package/dist/_dts/blocks/src/system/node/fragments/styledContainer.d.ts +4 -4
- package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +3 -12
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/api/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/blockComposition.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +90 -6
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +45 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/logic.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details/view.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-details.server.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/course-page-surface-scope.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventScope.d.ts +9 -18
- package/dist/_dts/blocks/src/system/runtime/nodes/events/EventCalendar.interactive.d.ts +106 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/RecurringSchedule.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/WeekBoardView.d.ts +7 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +11 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/offerings-preview.d.ts +6 -6
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +11 -5
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/svg.d.ts +7 -0
- package/dist/_dts/blocks/src/system/types/link.d.ts +3 -3
- package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +14 -0
- package/dist/_dts/content-editor/src/controller/EntryControllerProvider.d.ts +27 -8
- package/dist/_dts/content-editor/src/footerComposer.d.ts +56 -0
- package/dist/_dts/content-editor/src/hooks/useEntryActions.d.ts +1 -1
- package/dist/_dts/content-editor/src/hooks/useEntryMutations.d.ts +5 -5
- package/dist/_dts/content-editor/src/index.d.ts +2 -0
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +3 -1
- package/dist/_dts/content-editor/src/services/contentEntryServices.d.ts +20 -36
- package/dist/_dts/content-editor/src/ui/editorSnapshot.d.ts +5 -1
- package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +11 -0
- package/dist/_dts/content-model/src/content-types/schema.d.ts +1 -1
- package/dist/_dts/content-model/src/definitions/shared.d.ts +3 -0
- package/dist/_dts/core/src/branded.d.ts +47 -0
- package/dist/_dts/core/src/dated-offering-settlement.d.ts +47 -0
- package/dist/_dts/core/src/editor-state.d.ts +4 -0
- package/dist/_dts/core/src/event-page-surface-subject.d.ts +44 -0
- package/dist/_dts/core/src/footer-composition.d.ts +143 -0
- package/dist/_dts/core/src/index.d.ts +51 -47
- package/dist/_dts/core/src/public-profile.d.ts +73 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +4398 -2859
- package/dist/_dts/db/src/schemas/forms.d.ts +10 -10
- package/dist/_dts/editor/src/primitives/rich-text/RichTextEditorSurface.d.ts +5 -0
- package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +4 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockCreation.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockDuplication.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/hooks/useBlockReorder.d.ts +2 -1
- package/dist/_dts/editor-blocks/src/block-editor/owner.d.ts +10 -0
- package/dist/_dts/editor-blocks/src/block-editor/types.d.ts +1 -0
- package/dist/_dts/media-core/src/index.d.ts +2 -1
- package/dist/_dts/media-core/src/storagePathDomain.d.ts +47 -0
- package/dist/_dts/media-core/src/url.d.ts +1 -21
- package/dist/_dts/path-utils/src/index.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/blocks/pageDesignRuntimePreview.d.ts +4 -2
- package/dist/_dts/preview-next/src/client/blocks/previewProjection/runtimeContentDecoration.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/preview/PreviewChromeLayer.d.ts +5 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +4 -9
- package/dist/_dts/preview-next/src/client/preview/PreviewEntryControllerProvider.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +8 -11
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +4 -9
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +2 -6
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +5 -9
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +81 -43
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.typography.d.ts +61 -0
- package/dist/_dts/preview-next/src/client/preview/previewErrorMessages.d.ts +4 -0
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +7 -17
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +15 -8
- package/dist/_dts/preview-next/src/client/preview/typographyFontCatalog.d.ts +57 -0
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -1
- package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +4 -7
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +24 -10
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +3 -3
- package/dist/_dts/sdk/src/cli/sync/media.d.ts +16 -2
- package/dist/_dts/sdk/src/client/management/blocks.d.ts +14 -1
- package/dist/_dts/sdk/src/client/management/index.d.ts +2 -1
- package/dist/_dts/sdk/src/client/management/types.d.ts +147 -24
- package/dist/_dts/sdk/src/client/types.d.ts +2 -0
- package/dist/_dts/sdk/src/config/content-types.d.ts +2 -0
- package/dist/_dts/sdk/src/config/content-validation.d.ts +4 -0
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +23 -3
- package/dist/_dts/sdk/src/data/dataLoaderContext.d.ts +17 -0
- package/dist/_dts/sdk/src/data/dataLoaderValue.d.ts +36 -0
- package/dist/_dts/sdk/src/data/defineOwnDataProperty.d.ts +2 -0
- package/dist/_dts/sdk/src/data/executeCodeLoaders.d.ts +36 -40
- package/dist/_dts/sdk/src/data/index.d.ts +3 -3
- package/dist/_dts/sdk/src/data/resolveBlockData.d.ts +54 -0
- package/dist/_dts/sdk/src/data/types.d.ts +43 -78
- package/dist/_dts/sdk/src/navigation/index.d.ts +2 -0
- package/dist/_dts/sdk/src/next/index.d.ts +1 -0
- package/dist/_dts/sdk/src/next/redirect-destination.d.ts +1 -1
- package/dist/_dts/sdk/src/next/resolveTheme.d.ts +2 -1
- package/dist/_dts/sdk/src/next/types.d.ts +10 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +6 -10
- package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -1
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +10 -5
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +6 -10
- package/dist/_dts/sdk/src/rendering/index.d.ts +1 -0
- package/dist/_dts/sdk/src/server.d.ts +4 -3
- 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/site-commands/src/capabilityGaps.d.ts +2 -2
- package/dist/_dts/site-commands/src/commands.d.ts +934 -40
- package/dist/_dts/theme-core/src/accordions/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +5 -1
- package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +22 -0
- package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +17 -0
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/buttons/types.d.ts +12 -8
- package/dist/_dts/theme-core/src/cards/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/data.d.ts +12 -0
- package/dist/_dts/theme-core/src/fonts/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/fonts/types.d.ts +6 -0
- package/dist/_dts/theme-core/src/footer/mode.d.ts +15 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +72 -54
- package/dist/_dts/theme-core/src/navigation/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/palette/colors.d.ts +12 -0
- package/dist/_dts/theme-core/src/palette/curated/brand-led.d.ts +10 -5
- package/dist/_dts/theme-core/src/palette/curated/high-contrast.d.ts +6 -3
- package/dist/_dts/theme-core/src/palette/curated/index.d.ts +31 -236
- package/dist/_dts/theme-core/src/palette/curated/soft-natural.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/curated/types.d.ts +14 -12
- package/dist/_dts/theme-core/src/palette/curated/warm-dark.d.ts +4 -2
- package/dist/_dts/theme-core/src/palette/curated/warm-neutral.d.ts +8 -4
- package/dist/_dts/theme-core/src/palette/editorState.d.ts +33 -3
- package/dist/_dts/theme-core/src/palette/index.d.ts +0 -4
- package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +12 -6
- package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +20 -72
- package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +29 -4
- package/dist/_dts/theme-core/src/palette/selection.d.ts +6 -4
- package/dist/_dts/theme-core/src/schema.d.ts +1307 -38
- package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +5 -6
- package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +218 -158
- package/dist/_dts/theme-core/src/site-styles/compositionBudget.d.ts +1 -0
- package/dist/_dts/theme-core/src/site-styles/contentTemplateRuntimeCompiler.d.ts +2 -1
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +161 -51
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -2
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +12 -1
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +24 -1
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -48
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -23
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +15 -0
- package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +1 -2
- package/dist/_dts/theme-core/src/site-styles/siteStyleTypography.d.ts +456 -0
- package/dist/_dts/theme-core/src/site-styles/types.d.ts +52 -3
- package/dist/cli/index.mjs +4118 -2278
- package/dist/client/{DiscountCodeDisclosure-BXM73_E5.mjs → DiscountCodeDisclosure-D6TOf6Hi.mjs} +1 -1
- package/dist/client/{EventCombined.client-DT5elP7j.mjs → EventCombined.client-Dao3zxRk.mjs} +3 -3
- package/dist/client/{EventListing.client-pTYGfV9C.mjs → EventListing.client-B2NNt4y1.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-dQrhlUe3.mjs → LeafletStaticMap-BhwFo16w.mjs} +1 -1
- package/dist/client/{MagicLinkForm-u6Dul4j5.mjs → MagicLinkForm-BWnB7cMR.mjs} +2 -2
- package/dist/client/{StepIndicator-nWqineJ2.mjs → StepIndicator-TzRiQ0BY.mjs} +2 -2
- package/dist/client/{accordion-CSJcTUyH.mjs → accordion-BPy-AJ4_.mjs} +1 -1
- package/dist/client/{bookingForm-C73wOuVa.mjs → bookingForm-BL4PGZds.mjs} +7 -7
- package/dist/client/bookings.mjs +382 -204
- package/dist/client/{buttons-DfYyqt8C.mjs → buttons-EBjyslaX.mjs} +265 -152
- package/dist/client/{carousel-fMBb0JSc.mjs → carousel-C2b7Cn9-.mjs} +1 -1
- package/dist/client/{cart-BtaCwT3S.mjs → cart-BQcbXIVD.mjs} +3 -3
- package/dist/client/{checkout-DkTwZSnh.mjs → checkout-DEmpGRJu.mjs} +3 -3
- package/dist/client/client.mjs +5019 -1886
- package/dist/client/{colorStyles-Wyl6JujD.mjs → colorStyles-jZS6KfkP.mjs} +1 -1
- package/dist/client/{colorTokenParts-dT8MISgJ.mjs → colorTokenParts-CMugwvX_.mjs} +3 -1
- package/dist/client/{courseRegistration-DnLmapJu.mjs → courseRegistration-BqRZPmsq.mjs} +56 -21
- package/dist/client/{eventCalendar-BvLOc9KY.mjs → eventCalendar-B8N_tSl5.mjs} +29 -21
- package/dist/client/{eventCombined-kShgJPQr.mjs → eventCombined-Gjn6gtq7.mjs} +2 -2
- package/dist/client/{eventDetails-C5NTM0Vo.mjs → eventDetails-M-VCxA-r.mjs} +4 -4
- package/dist/client/{eventListing-B82ZdKP6.mjs → eventListing-DR19hqYi.mjs} +2 -2
- package/dist/client/{eventRegistration-qJVFqBWo.mjs → eventRegistration-BR02a0k3.mjs} +8 -8
- package/dist/client/{form-BvAcKiuu.mjs → form-LY2xIbwg.mjs} +2 -2
- package/dist/client/{headerSection-NvAiEHAg.mjs → headerSection-CYwwXJfh.mjs} +3 -3
- package/dist/client/hooks.mjs +3335 -2210
- package/dist/client/{locationMap-D0j52xfI.mjs → locationMap-DWnBXrFq.mjs} +3 -3
- package/dist/client/{media-BCW_g2cQ.mjs → media-DHtSxS5V.mjs} +61 -56
- package/dist/client/{newsletterForm-B8_i93qH.mjs → newsletterForm-D9s-fQ2P.mjs} +3 -3
- package/dist/client/{pricing-DIYnyHOk.mjs → pricing-DDq80oYc.mjs} +1 -1
- package/dist/client/{productDetail-w0eAHkuQ.mjs → productDetail-B0SbWd45.mjs} +3 -3
- package/dist/client/{productList-Vsguq5Xt.mjs → productList-PwYlZn0y.mjs} +3 -3
- package/dist/client/{propsDecoder-CD2pJ1WB.mjs → propsDecoder-BRWBiH7i.mjs} +225 -68
- package/dist/client/rendering/client.mjs +2266 -1267
- package/dist/client/rendering/islands.mjs +20 -20
- package/dist/client/rendering.mjs +5364 -1979
- package/dist/client/{shop-Dgxs-Q8F.mjs → shop-CMwZPYME.mjs} +8 -8
- package/dist/client/{shop-commerce-DJAhsTaT.mjs → shop-commerce-BuxsFate.mjs} +6 -6
- package/dist/client/{shop-commerce-store-CfCXltXW.mjs → shop-commerce-store-boYlEJ91.mjs} +1 -1
- package/dist/client/{shopShared-CmDcPXUt.mjs → shopShared-D2naaOes.mjs} +3 -3
- package/dist/client/{useDiscountCodeUi-CirrT2bM.mjs → useDiscountCodeUi-D9RHpVoj.mjs} +1 -1
- package/dist/client/{useEventFilters-CNZxlCcO.mjs → useEventFilters-igGiK1re.mjs} +6 -6
- package/dist/client/{usePolling-Baks_iBI.mjs → usePolling-CI7MbsFB.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +218 -1
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +218 -1
- package/dist/{previewAuthStore-CfquDtTh.mjs → previewAuthStore-a_cBD28m.mjs} +218 -1
- package/dist/{sdk-runtime-BfNiFeNJ.mjs → sdk-runtime-MBzD-GmP.mjs} +2 -2
- package/dist/{separator-BhAR_Xmf.mjs → separator-5ahRBC85.mjs} +1 -1
- package/dist/server/components.mjs +5218 -2529
- package/dist/server/config-validation.mjs +3112 -2210
- package/dist/server/config.mjs +3112 -2211
- package/dist/server/data.mjs +3758 -2277
- package/dist/server/index.mjs +224 -4
- package/dist/server/navigation.mjs +9 -3
- package/dist/server/next/middleware.mjs +1 -1
- package/dist/server/next.mjs +6468 -2749
- package/dist/server/page-converter.mjs +3524 -2635
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +5392 -2488
- package/dist/server/rendering.mjs +6241 -2851
- package/dist/server/routing.mjs +3414 -1826
- package/dist/server/server.mjs +4174 -2354
- package/dist/server/theme-bridge.mjs +9579 -8132
- package/dist/server/theme.mjs +313 -154
- package/dist/styles/index.css +1223 -31
- package/package.json +1 -1
- package/dist/_dts/preview-next/src/client/preview/typographySelectionInput.d.ts +0 -16
- package/dist/_dts/theme-core/src/palette/historicalThemePalette.d.ts +0 -44
- package/dist/_dts/theme-core/src/palette/legacyRuntimeProjection.d.ts +0 -55
- package/dist/_dts/theme-core/src/palette/legacySelection.d.ts +0 -45
- package/dist/_dts/theme-core/src/palette/paletteCompatibilityTransition.d.ts +0 -232
- package/dist/_dts/theme-core/src/site-styles/typographyPresets.d.ts +0 -234
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type InteractiveIslandProps } from '../../../contracts/islands';
|
|
2
2
|
import { type NewsletterSignupDestinationProvider, type NewsletterSignupPublicDestinationRef } from '../../blocks/newsletter-signup-destination';
|
|
3
|
-
import { type NewsletterFieldDef, type NewsletterPreset } from './newsletter-form.types';
|
|
3
|
+
import { type NewsletterButtonVariant, type NewsletterFieldDef, type NewsletterPreset } from './newsletter-form.types';
|
|
4
4
|
export type NewsletterFormSourceProps = Readonly<{
|
|
5
5
|
blockId?: string | null;
|
|
6
6
|
siteId?: string;
|
|
@@ -10,6 +10,7 @@ export type NewsletterFormSourceProps = Readonly<{
|
|
|
10
10
|
preset?: NewsletterPreset;
|
|
11
11
|
includePhone?: boolean;
|
|
12
12
|
buttonLabel?: string | null;
|
|
13
|
+
buttonVariant?: NewsletterButtonVariant | null;
|
|
13
14
|
successMessage?: string | null;
|
|
14
15
|
privacyNote?: string | null;
|
|
15
16
|
tags?: string | null;
|
|
@@ -20,6 +21,7 @@ export type NewsletterFormDisplay = Readonly<{
|
|
|
20
21
|
kind: 'newsletter-form';
|
|
21
22
|
className: string | null;
|
|
22
23
|
buttonLabel: string;
|
|
24
|
+
buttonVariant: NewsletterButtonVariant;
|
|
23
25
|
successMessage: string | null;
|
|
24
26
|
privacyNote: string | null;
|
|
25
27
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -49,6 +51,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
49
51
|
preset?: NewsletterPreset;
|
|
50
52
|
includePhone?: boolean;
|
|
51
53
|
buttonLabel?: string | null;
|
|
54
|
+
buttonVariant?: NewsletterButtonVariant | null;
|
|
52
55
|
successMessage?: string | null;
|
|
53
56
|
privacyNote?: string | null;
|
|
54
57
|
tags?: string | null;
|
|
@@ -59,6 +62,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
59
62
|
kind: "newsletter-form";
|
|
60
63
|
className: string | null;
|
|
61
64
|
buttonLabel: string;
|
|
65
|
+
buttonVariant: NewsletterButtonVariant;
|
|
62
66
|
successMessage: string | null;
|
|
63
67
|
privacyNote: string | null;
|
|
64
68
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -83,6 +87,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
83
87
|
preset?: NewsletterPreset;
|
|
84
88
|
includePhone?: boolean;
|
|
85
89
|
buttonLabel?: string | null;
|
|
90
|
+
buttonVariant?: NewsletterButtonVariant | null;
|
|
86
91
|
successMessage?: string | null;
|
|
87
92
|
privacyNote?: string | null;
|
|
88
93
|
tags?: string | null;
|
|
@@ -98,6 +103,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
98
103
|
preset?: NewsletterPreset;
|
|
99
104
|
includePhone?: boolean;
|
|
100
105
|
buttonLabel?: string | null;
|
|
106
|
+
buttonVariant?: NewsletterButtonVariant | null;
|
|
101
107
|
successMessage?: string | null;
|
|
102
108
|
privacyNote?: string | null;
|
|
103
109
|
tags?: string | null;
|
|
@@ -111,6 +117,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
111
117
|
kind: "newsletter-form";
|
|
112
118
|
className: string | null;
|
|
113
119
|
buttonLabel: string;
|
|
120
|
+
buttonVariant: NewsletterButtonVariant;
|
|
114
121
|
successMessage: string | null;
|
|
115
122
|
privacyNote: string | null;
|
|
116
123
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -129,6 +136,7 @@ export declare const newsletterFormBlockRuntime: Readonly<{
|
|
|
129
136
|
kind: "newsletter-form";
|
|
130
137
|
className: string | null;
|
|
131
138
|
buttonLabel: string;
|
|
139
|
+
buttonVariant: NewsletterButtonVariant;
|
|
132
140
|
successMessage: string | null;
|
|
133
141
|
privacyNote: string | null;
|
|
134
142
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -158,6 +166,7 @@ export declare const newsletterFormInteractiveIslandPropsCodec: Readonly<{
|
|
|
158
166
|
kind: "newsletter-form";
|
|
159
167
|
className: string | null;
|
|
160
168
|
buttonLabel: string;
|
|
169
|
+
buttonVariant: NewsletterButtonVariant;
|
|
161
170
|
successMessage: string | null;
|
|
162
171
|
privacyNote: string | null;
|
|
163
172
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -184,6 +193,7 @@ export declare const newsletterFormInteractiveIslandPropsCodec: Readonly<{
|
|
|
184
193
|
kind: "newsletter-form";
|
|
185
194
|
className: string | null;
|
|
186
195
|
buttonLabel: string;
|
|
196
|
+
buttonVariant: NewsletterButtonVariant;
|
|
187
197
|
successMessage: string | null;
|
|
188
198
|
privacyNote: string | null;
|
|
189
199
|
fields: readonly NewsletterFieldDef[];
|
|
@@ -6,5 +6,5 @@ import type { NewsletterFormProps } from './newsletter-form.types';
|
|
|
6
6
|
* Renders the newsletter signup form for SSR with hydration support.
|
|
7
7
|
* Uses the islands architecture pattern to hydrate on the client.
|
|
8
8
|
*/
|
|
9
|
-
export declare function NewsletterFormSSR({ blockId, siteId, apiBaseUrl, listId, destinationProvider, preset, includePhone, buttonLabel, successMessage, privacyNote, tags, spamProtectionEnabled, className, }: NewsletterFormProps): React.JSX.Element;
|
|
9
|
+
export declare function NewsletterFormSSR({ blockId, siteId, apiBaseUrl, listId, destinationProvider, preset, includePhone, buttonLabel, buttonVariant, successMessage, privacyNote, tags, spamProtectionEnabled, className, }: NewsletterFormProps): React.JSX.Element;
|
|
10
10
|
export default NewsletterFormSSR;
|
|
@@ -13,6 +13,7 @@ export type NewsletterFieldDef = {
|
|
|
13
13
|
placeholder?: string;
|
|
14
14
|
};
|
|
15
15
|
export type NewsletterDestinationProvider = 'riverbank' | 'mailchimp';
|
|
16
|
+
export type NewsletterButtonVariant = 'primary' | 'secondary' | 'outline';
|
|
16
17
|
export type NewsletterFormProps = {
|
|
17
18
|
/** Block ID for island hydration */
|
|
18
19
|
blockId?: string | null;
|
|
@@ -30,6 +31,8 @@ export type NewsletterFormProps = {
|
|
|
30
31
|
includePhone?: boolean;
|
|
31
32
|
/** Submit button label */
|
|
32
33
|
buttonLabel?: string | null;
|
|
34
|
+
/** Site-style button role for the submit action */
|
|
35
|
+
buttonVariant?: NewsletterButtonVariant | null;
|
|
33
36
|
/** Message shown after successful subscription */
|
|
34
37
|
successMessage?: string | null;
|
|
35
38
|
/** Optional privacy note below the form */
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import React from
|
|
2
|
-
import type { PublicCourse } from
|
|
3
|
-
import type { ButtonVariant, PublicEvent } from
|
|
4
|
-
import type { CardStylesContent } from
|
|
5
|
-
import { type BookingOfferingPresetSummary, type OfferingsPreviewEventDataKey, type OfferingsPreviewGroupOrder, type OfferingsPreviewGroupOverride, type OfferingsPreviewRouteCandidate } from
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import type { PublicCourse } from '../../blocks/courses/shared/types';
|
|
3
|
+
import type { ButtonVariant, PublicEvent } from '../../blocks/events/shared/types';
|
|
4
|
+
import type { CardStylesContent } from '../../fields/boxStyles';
|
|
5
|
+
import { type BookingOfferingPresetSummary, type OfferingsPreviewEventDataKey, type OfferingsPreviewGroupOrder, type OfferingsPreviewGroupOverride, type OfferingsPreviewRouteCandidate } from '../../blocks/offerings-preview/model';
|
|
6
6
|
type OfferingsPreviewProps = Readonly<{
|
|
7
7
|
bookingOfferingPresets?: readonly BookingOfferingPresetSummary[] | null;
|
|
8
8
|
groupOrder?: OfferingsPreviewGroupOrder | null;
|
|
@@ -13,7 +13,7 @@ type OfferingsPreviewProps = Readonly<{
|
|
|
13
13
|
buttonText?: string | null;
|
|
14
14
|
emptyMessage?: string | null;
|
|
15
15
|
failedMessage?: string | null;
|
|
16
|
-
previewStage?:
|
|
16
|
+
previewStage?: 'published' | 'preview' | null;
|
|
17
17
|
routeCandidates?: Readonly<{
|
|
18
18
|
routes?: readonly OfferingsPreviewRouteCandidate[] | null;
|
|
19
19
|
}> | null;
|
|
@@ -36,8 +36,8 @@ export declare const columnOptionSchema: z.ZodEnum<{
|
|
|
36
36
|
4: "4";
|
|
37
37
|
}>;
|
|
38
38
|
export declare const weekStartSchema: z.ZodEnum<{
|
|
39
|
-
sunday: "sunday";
|
|
40
39
|
monday: "monday";
|
|
40
|
+
sunday: "sunday";
|
|
41
41
|
}>;
|
|
42
42
|
export declare const filterAutoShowSchema: z.ZodEnum<{
|
|
43
43
|
auto: "auto";
|
|
@@ -14,6 +14,7 @@ export type PassesMembershipsHydration = Readonly<{
|
|
|
14
14
|
passes: readonly PublicPassProduct[];
|
|
15
15
|
memberships: readonly PublicMembershipProduct[];
|
|
16
16
|
passPurchaseMode: 'add_to_cart' | 'buy_now';
|
|
17
|
+
buttonVariant: 'primary' | 'secondary' | 'outline' | 'link';
|
|
17
18
|
}>;
|
|
18
19
|
export type ProductListHydration = Readonly<{
|
|
19
20
|
products: readonly PublicProduct[];
|
|
@@ -77,7 +78,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
77
78
|
kind: "passes-memberships";
|
|
78
79
|
state: "empty" | "ready";
|
|
79
80
|
className: string | null;
|
|
80
|
-
layout: "grid" | "list";
|
|
81
|
+
layout: "grid" | "list" | "register";
|
|
81
82
|
columns: string;
|
|
82
83
|
emptyMessage: string;
|
|
83
84
|
passesHeading: string;
|
|
@@ -105,6 +106,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
105
106
|
passes: readonly PublicPassProduct[];
|
|
106
107
|
memberships: readonly PublicMembershipProduct[];
|
|
107
108
|
passPurchaseMode: "add_to_cart" | "buy_now";
|
|
109
|
+
buttonVariant: "primary" | "secondary" | "outline" | "link";
|
|
108
110
|
}>;
|
|
109
111
|
}>;
|
|
110
112
|
contracts: Readonly<{
|
|
@@ -118,7 +120,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
118
120
|
kind: "passes-memberships";
|
|
119
121
|
state: "empty" | "ready";
|
|
120
122
|
className: string | null;
|
|
121
|
-
layout: "grid" | "list";
|
|
123
|
+
layout: "grid" | "list" | "register";
|
|
122
124
|
columns: string;
|
|
123
125
|
emptyMessage: string;
|
|
124
126
|
passesHeading: string;
|
|
@@ -146,6 +148,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
146
148
|
passes: readonly PublicPassProduct[];
|
|
147
149
|
memberships: readonly PublicMembershipProduct[];
|
|
148
150
|
passPurchaseMode: "add_to_cart" | "buy_now";
|
|
151
|
+
buttonVariant: "primary" | "secondary" | "outline" | "link";
|
|
149
152
|
}>;
|
|
150
153
|
}>) => unknown;
|
|
151
154
|
decode: (input: unknown) => import("../../../contracts").DecodeResult<Readonly<{
|
|
@@ -153,7 +156,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
153
156
|
kind: "passes-memberships";
|
|
154
157
|
state: "empty" | "ready";
|
|
155
158
|
className: string | null;
|
|
156
|
-
layout: "grid" | "list";
|
|
159
|
+
layout: "grid" | "list" | "register";
|
|
157
160
|
columns: string;
|
|
158
161
|
emptyMessage: string;
|
|
159
162
|
passesHeading: string;
|
|
@@ -181,6 +184,7 @@ export declare const shopBlockRuntime: Readonly<{
|
|
|
181
184
|
passes: readonly PublicPassProduct[];
|
|
182
185
|
memberships: readonly PublicMembershipProduct[];
|
|
183
186
|
passPurchaseMode: "add_to_cart" | "buy_now";
|
|
187
|
+
buttonVariant: "primary" | "secondary" | "outline" | "link";
|
|
184
188
|
}>;
|
|
185
189
|
}>>;
|
|
186
190
|
}>;
|
|
@@ -502,7 +506,7 @@ export declare const shopInteractiveIslandPropsCodec: Readonly<{
|
|
|
502
506
|
kind: "passes-memberships";
|
|
503
507
|
state: "empty" | "ready";
|
|
504
508
|
className: string | null;
|
|
505
|
-
layout: "grid" | "list";
|
|
509
|
+
layout: "grid" | "list" | "register";
|
|
506
510
|
columns: string;
|
|
507
511
|
emptyMessage: string;
|
|
508
512
|
passesHeading: string;
|
|
@@ -530,6 +534,7 @@ export declare const shopInteractiveIslandPropsCodec: Readonly<{
|
|
|
530
534
|
passes: readonly PublicPassProduct[];
|
|
531
535
|
memberships: readonly PublicMembershipProduct[];
|
|
532
536
|
passPurchaseMode: "add_to_cart" | "buy_now";
|
|
537
|
+
buttonVariant: "primary" | "secondary" | "outline" | "link";
|
|
533
538
|
}>;
|
|
534
539
|
}>>;
|
|
535
540
|
}>) => unknown;
|
|
@@ -546,7 +551,7 @@ export declare const shopInteractiveIslandPropsCodec: Readonly<{
|
|
|
546
551
|
kind: "passes-memberships";
|
|
547
552
|
state: "empty" | "ready";
|
|
548
553
|
className: string | null;
|
|
549
|
-
layout: "grid" | "list";
|
|
554
|
+
layout: "grid" | "list" | "register";
|
|
550
555
|
columns: string;
|
|
551
556
|
emptyMessage: string;
|
|
552
557
|
passesHeading: string;
|
|
@@ -574,6 +579,7 @@ export declare const shopInteractiveIslandPropsCodec: Readonly<{
|
|
|
574
579
|
passes: readonly PublicPassProduct[];
|
|
575
580
|
memberships: readonly PublicMembershipProduct[];
|
|
576
581
|
passPurchaseMode: "add_to_cart" | "buy_now";
|
|
582
|
+
buttonVariant: "primary" | "secondary" | "outline" | "link";
|
|
577
583
|
}>;
|
|
578
584
|
}>>;
|
|
579
585
|
}>>;
|
|
@@ -7,7 +7,7 @@ export type ShopDisplayConfig = {
|
|
|
7
7
|
productSlug?: string | null;
|
|
8
8
|
showPasses?: boolean;
|
|
9
9
|
showMemberships?: boolean;
|
|
10
|
-
layout?: 'grid' | 'list';
|
|
10
|
+
layout?: 'grid' | 'list' | 'register';
|
|
11
11
|
columns?: string;
|
|
12
12
|
showDescriptions?: boolean;
|
|
13
13
|
showSummary?: boolean;
|
|
@@ -15,6 +15,7 @@ export type ShopDisplayConfig = {
|
|
|
15
15
|
showPrices?: boolean;
|
|
16
16
|
showValidityPeriod?: boolean;
|
|
17
17
|
showPricePerCredit?: boolean | null;
|
|
18
|
+
buttonVariant?: 'primary' | 'secondary' | 'outline' | 'link' | null;
|
|
18
19
|
passesHeading?: string;
|
|
19
20
|
membershipsHeading?: string;
|
|
20
21
|
buyButtonText?: string;
|
|
@@ -34,6 +34,13 @@ type ShapePaint = {
|
|
|
34
34
|
strokeLinecap?: 'butt' | 'round' | 'square';
|
|
35
35
|
strokeLinejoin?: 'miter' | 'round' | 'bevel';
|
|
36
36
|
strokeDasharray?: string | number;
|
|
37
|
+
/**
|
|
38
|
+
* Optional SVG `transform` (e.g. an angled balance-beam). Emitted as the
|
|
39
|
+
* `transform` presentation attribute, but only after passing the strict
|
|
40
|
+
* allow-list validator below — these trees can arrive from the DB via custom
|
|
41
|
+
* blocks, so an unrecognised value is dropped rather than rendered.
|
|
42
|
+
*/
|
|
43
|
+
transform?: string;
|
|
37
44
|
};
|
|
38
45
|
export type SvgShape = ({
|
|
39
46
|
kind: 'path';
|
|
@@ -68,8 +68,8 @@ export declare const internalResolvedLinkSchema: z.ZodObject<{
|
|
|
68
68
|
routeId: z.ZodString;
|
|
69
69
|
entityId: z.ZodString;
|
|
70
70
|
entityType: z.ZodEnum<{
|
|
71
|
-
page: "page";
|
|
72
71
|
content: "content";
|
|
72
|
+
page: "page";
|
|
73
73
|
}>;
|
|
74
74
|
href: z.ZodString;
|
|
75
75
|
title: z.ZodString;
|
|
@@ -83,8 +83,8 @@ export declare const internalLinkSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
83
83
|
routeId: z.ZodString;
|
|
84
84
|
entityId: z.ZodString;
|
|
85
85
|
entityType: z.ZodEnum<{
|
|
86
|
-
page: "page";
|
|
87
86
|
content: "content";
|
|
87
|
+
page: "page";
|
|
88
88
|
}>;
|
|
89
89
|
href: z.ZodString;
|
|
90
90
|
title: z.ZodString;
|
|
@@ -118,8 +118,8 @@ export declare const linkSchema: z.ZodUnion<readonly [z.ZodUnion<readonly [z.Zod
|
|
|
118
118
|
routeId: z.ZodString;
|
|
119
119
|
entityId: z.ZodString;
|
|
120
120
|
entityType: z.ZodEnum<{
|
|
121
|
-
page: "page";
|
|
122
121
|
content: "content";
|
|
122
|
+
page: "page";
|
|
123
123
|
}>;
|
|
124
124
|
href: z.ZodString;
|
|
125
125
|
title: z.ZodString;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ApiClient } from '../../api/src/request';
|
|
2
|
+
import { type FooterEditorTarget } from './footerComposer';
|
|
3
|
+
export declare function FooterComposerPanel({ apiClient, siteId: rawSiteId, customFooterMode, manageLinksHref, manageSettingsHref, legalRegion, initialTarget, variant, canEdit, onSaved, }: {
|
|
4
|
+
apiClient: ApiClient;
|
|
5
|
+
siteId: string;
|
|
6
|
+
customFooterMode: 'default' | 'blocks' | 'default+blocks' | 'none';
|
|
7
|
+
manageLinksHref: string;
|
|
8
|
+
manageSettingsHref: string;
|
|
9
|
+
legalRegion?: 'integrated' | 'separate';
|
|
10
|
+
initialTarget?: FooterEditorTarget;
|
|
11
|
+
variant?: 'full' | 'sidebar';
|
|
12
|
+
canEdit?: boolean;
|
|
13
|
+
onSaved?: () => void;
|
|
14
|
+
}): import("react").JSX.Element;
|
|
@@ -3,7 +3,7 @@ import type { EditorBlockId } from '../../../core/src/index';
|
|
|
3
3
|
import type { BlockItem } from '../../../editor-blocks/src/block-editor/types';
|
|
4
4
|
import { type ReactNode } from 'react';
|
|
5
5
|
import { type PublishOptions } from '../hooks/useEntryActions';
|
|
6
|
-
import { type ApiClient } from '../services';
|
|
6
|
+
import { type ApiClient, type ContentEditorServices } from '../services';
|
|
7
7
|
import type { DraftWorkflowStatus } from '../types';
|
|
8
8
|
import { type EditorUiState } from '../ui/editorUiStore';
|
|
9
9
|
import type { ResolveBlockManifest } from '../ui/blockValidationView';
|
|
@@ -47,12 +47,16 @@ export type EntryRecoveryConflictState = Readonly<{
|
|
|
47
47
|
discardRecoveredChanges: () => void;
|
|
48
48
|
}>;
|
|
49
49
|
/** Actions returned by useEntryActions */
|
|
50
|
-
export type EntryActions = {
|
|
50
|
+
export type EntryActions = Readonly<{
|
|
51
|
+
kind: 'entryLifecycle';
|
|
51
52
|
saveDraft: () => Promise<void>;
|
|
52
53
|
publish: (options?: PublishOptions) => Promise<void>;
|
|
53
54
|
discardDraft: () => Promise<void>;
|
|
54
55
|
deleteEntry: () => Promise<void>;
|
|
55
|
-
}
|
|
56
|
+
}> | Readonly<{
|
|
57
|
+
kind: 'pageSurfaceDraft';
|
|
58
|
+
saveDraft: () => Promise<void>;
|
|
59
|
+
}>;
|
|
56
60
|
export type EntryControllerContextValue = {
|
|
57
61
|
entry: ContentEntrySnapshot;
|
|
58
62
|
baseline: Record<string, unknown>;
|
|
@@ -68,7 +72,6 @@ type BaseInternalProps = {
|
|
|
68
72
|
children: ReactNode;
|
|
69
73
|
apiClient: ApiClient;
|
|
70
74
|
siteId: string;
|
|
71
|
-
entryId: string;
|
|
72
75
|
routeId?: string;
|
|
73
76
|
type: string;
|
|
74
77
|
schema: ContentTypeSchema;
|
|
@@ -84,17 +87,33 @@ type BaseInternalProps = {
|
|
|
84
87
|
historyShortcutsEnabled?: boolean;
|
|
85
88
|
resolveBlockManifest?: ResolveBlockManifest;
|
|
86
89
|
};
|
|
87
|
-
type
|
|
90
|
+
type EditorOwnerServiceProps = Readonly<{
|
|
91
|
+
owner: {
|
|
92
|
+
kind: 'contentEntry';
|
|
93
|
+
contentEntryId: string;
|
|
94
|
+
};
|
|
95
|
+
services?: Extract<ContentEditorServices, {
|
|
96
|
+
kind: 'entryLifecycle';
|
|
97
|
+
}>;
|
|
98
|
+
}> | Readonly<{
|
|
99
|
+
owner: {
|
|
100
|
+
kind: 'pageSurface';
|
|
101
|
+
pageSurfaceId: string;
|
|
102
|
+
};
|
|
103
|
+
services: Extract<ContentEditorServices, {
|
|
104
|
+
kind: 'pageSurfaceDraft';
|
|
105
|
+
}>;
|
|
106
|
+
}>;
|
|
107
|
+
type PageInternalProps = {
|
|
88
108
|
kind: 'page';
|
|
89
109
|
initialStatus?: 'draft' | 'scheduled' | 'published';
|
|
90
|
-
} & {
|
|
91
110
|
initialBlocks?: BlockItem[];
|
|
92
111
|
};
|
|
93
|
-
type ContentInternalProps =
|
|
112
|
+
type ContentInternalProps = {
|
|
94
113
|
kind: 'content';
|
|
95
114
|
initialBlocks?: BlockItem[];
|
|
96
115
|
};
|
|
97
|
-
type EntryControllerProviderProps = PageInternalProps | ContentInternalProps;
|
|
116
|
+
type EntryControllerProviderProps = BaseInternalProps & EditorOwnerServiceProps & (PageInternalProps | ContentInternalProps);
|
|
98
117
|
/**
|
|
99
118
|
* Entry Controller Provider
|
|
100
119
|
*
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type FooterArrangementPlan, type FooterCompositionV1, type FooterModuleId, type FooterNavigationRole, type FooterSection, type PublicProfile } from '../../core/src/index';
|
|
2
|
+
export type FooterEditorTarget = Readonly<{
|
|
3
|
+
kind: 'overview';
|
|
4
|
+
}> | Readonly<{
|
|
5
|
+
kind: 'module';
|
|
6
|
+
moduleId: FooterModuleId;
|
|
7
|
+
}> | Readonly<{
|
|
8
|
+
kind: 'shared-profile';
|
|
9
|
+
section: 'contact' | 'opening-hours' | 'social-links';
|
|
10
|
+
}>;
|
|
11
|
+
export type FooterEditorSource = Readonly<{
|
|
12
|
+
kind: 'footer-local';
|
|
13
|
+
description: string;
|
|
14
|
+
}> | Readonly<{
|
|
15
|
+
kind: 'site-identity';
|
|
16
|
+
description: string;
|
|
17
|
+
}> | Readonly<{
|
|
18
|
+
kind: 'footer-menu';
|
|
19
|
+
role: FooterNavigationRole;
|
|
20
|
+
description: string;
|
|
21
|
+
}> | Readonly<{
|
|
22
|
+
kind: 'business-address';
|
|
23
|
+
description: string;
|
|
24
|
+
}> | Readonly<{
|
|
25
|
+
kind: 'public-profile';
|
|
26
|
+
section: 'contact' | 'opening-hours' | 'social-links';
|
|
27
|
+
description: string;
|
|
28
|
+
}>;
|
|
29
|
+
export type FooterEditorSectionPlan = Readonly<{
|
|
30
|
+
section: FooterSection;
|
|
31
|
+
label: string;
|
|
32
|
+
selected: boolean;
|
|
33
|
+
source: FooterEditorSource;
|
|
34
|
+
availability: 'ready' | 'missing-source';
|
|
35
|
+
status: string | null;
|
|
36
|
+
actions: readonly ('edit' | 'hide' | 'show' | 'manage-links' | 'repair')[];
|
|
37
|
+
}>;
|
|
38
|
+
export type FooterEditorViewPlan = Readonly<{
|
|
39
|
+
scopeLabel: 'All pages';
|
|
40
|
+
shown: readonly FooterEditorSectionPlan[];
|
|
41
|
+
available: readonly FooterEditorSectionPlan[];
|
|
42
|
+
arrangement: FooterArrangementPlan;
|
|
43
|
+
}>;
|
|
44
|
+
type FooterEditorViewPlanInput = Readonly<{
|
|
45
|
+
composition: FooterCompositionV1;
|
|
46
|
+
publicProfile: PublicProfile;
|
|
47
|
+
hasBusinessAddress: boolean;
|
|
48
|
+
hasLogo?: boolean;
|
|
49
|
+
hasMainNavigation?: boolean;
|
|
50
|
+
hasLegalPolicyNavigation?: boolean;
|
|
51
|
+
canEdit: boolean;
|
|
52
|
+
legalRegion?: 'integrated' | 'separate';
|
|
53
|
+
}>;
|
|
54
|
+
export declare function footerModuleLabel(section: FooterSection): string;
|
|
55
|
+
export declare function planFooterEditorView(input: FooterEditorViewPlanInput): FooterEditorViewPlan;
|
|
56
|
+
export {};
|
|
@@ -3,7 +3,7 @@ import type { EditorUiStoreInstance } from '../ui/editorUiStore';
|
|
|
3
3
|
import type { PublishEntryResult } from '../services/contentEntryServices';
|
|
4
4
|
/** Services interface for entry operations */
|
|
5
5
|
export type EntryServices = {
|
|
6
|
-
deleteEntry
|
|
6
|
+
deleteEntry?: () => Promise<void>;
|
|
7
7
|
};
|
|
8
8
|
export type PublishOptions = {
|
|
9
9
|
mode?: 'default' | 'now';
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import type { ContentEntrySnapshot } from
|
|
2
|
-
import type { EditorUiState } from
|
|
3
|
-
import type { PublishEntryResult } from
|
|
1
|
+
import type { ContentEntrySnapshot } from '../../../content-model/src/index';
|
|
2
|
+
import type { EditorUiState } from '../ui/editorUiStore';
|
|
3
|
+
import type { PublishEntryResult } from '../services/contentEntryServices';
|
|
4
4
|
type StoreApi<T> = {
|
|
5
5
|
getState: () => T;
|
|
6
6
|
};
|
|
7
7
|
export declare function usePublishEntryMutation<TEntry extends ContentEntrySnapshot = ContentEntrySnapshot, TPublishPayload = unknown>({ publishFn, siteId, type, entryId, isPage, pageId, uiStore, }: {
|
|
8
|
-
publishFn
|
|
8
|
+
publishFn?: (payload: TPublishPayload | undefined) => Promise<PublishEntryResult<TEntry>>;
|
|
9
9
|
siteId: string;
|
|
10
10
|
type: string;
|
|
11
11
|
entryId: string;
|
|
@@ -18,7 +18,7 @@ export declare function usePublishEntryMutation<TEntry extends ContentEntrySnaps
|
|
|
18
18
|
publishedBlocks?: readonly import("../../../api/src/index").PublishedBlockBaseline[];
|
|
19
19
|
}>, Error, TPublishPayload | undefined, unknown>;
|
|
20
20
|
export declare function useDiscardDraftMutation<TEntry = unknown>({ discardFn, siteId, type, entryId, isPage, pageId, }: {
|
|
21
|
-
discardFn
|
|
21
|
+
discardFn?: () => Promise<TEntry>;
|
|
22
22
|
siteId: string;
|
|
23
23
|
type: string;
|
|
24
24
|
entryId: string;
|
|
@@ -23,6 +23,8 @@ export { PreviewTextEditor } from './primitives/PreviewTextEditor';
|
|
|
23
23
|
export { PreviewInlineTextEditor } from './primitives/PreviewInlineTextEditor';
|
|
24
24
|
export { PreviewRichTextEditor } from './primitives/PreviewRichTextEditor';
|
|
25
25
|
export { recordsEqual as editorValuesEqual } from './ui/stores/utils';
|
|
26
|
+
export { footerModuleLabel, planFooterEditorView, type FooterEditorSectionPlan, type FooterEditorSource, type FooterEditorTarget, type FooterEditorViewPlan, } from './footerComposer';
|
|
27
|
+
export { FooterComposerPanel } from './FooterComposerPanel';
|
|
26
28
|
export { useStoreBinding, parseEditorPath } from './primitives/shared';
|
|
27
29
|
export type { PathInfo } from './primitives/shared';
|
|
28
30
|
export * from './ai/overlayHelpers';
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import type { RichTextPrimitiveProps } from "../../../blocks/src/index";
|
|
2
2
|
import type { PreviewLinkedEntryFieldBinding } from '../../../blocks/src/system/data/index';
|
|
3
|
+
import { type ReactNode } from 'react';
|
|
3
4
|
type PreviewRichTextEditorProps = RichTextPrimitiveProps & {
|
|
4
5
|
onLinkedEntryFieldFocus?: (binding: PreviewLinkedEntryFieldBinding) => void;
|
|
5
6
|
onBlockFieldFocus?: (path: string) => void;
|
|
7
|
+
renderToolbarHost?: (toolbar: ReactNode) => ReactNode;
|
|
6
8
|
};
|
|
7
9
|
/**
|
|
8
10
|
* Memoized version to prevent unnecessary re-renders.
|
|
9
11
|
* Only re-renders when path, doc, variant, or className props actually change.
|
|
10
12
|
*/
|
|
11
|
-
export declare const PreviewRichTextEditor: import("react").MemoExoticComponent<({ path, linkedEntryField, onLinkedEntryFieldFocus, onBlockFieldFocus, className, doc, variant, placeholder, ariaLabel, }: PreviewRichTextEditorProps) => import("react").JSX.Element>;
|
|
13
|
+
export declare const PreviewRichTextEditor: import("react").MemoExoticComponent<({ path, linkedEntryField, onLinkedEntryFieldFocus, onBlockFieldFocus, className, doc, as: Comp, variant, placeholder, ariaLabel, renderToolbarHost, }: PreviewRichTextEditorProps) => import("react").JSX.Element>;
|
|
12
14
|
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { type ContentTypeKey, type ApiClient, type PublishedBlockBaseline } from
|
|
2
|
-
import type { ContentEntrySnapshot } from
|
|
1
|
+
import { type ContentTypeKey, type ApiClient, type PublishedBlockBaseline, type RouteMetadataPayload } from '../../../api/src/content-editor';
|
|
2
|
+
import type { ContentEntrySnapshot } from '../../../content-model/src/index';
|
|
3
3
|
export type { ApiClient };
|
|
4
|
-
export type ContentEntryServiceConfig<TResponse, TSnapshot extends ContentEntrySnapshot> = {
|
|
4
|
+
export type ContentEntryServiceConfig<TResponse extends object, TSnapshot extends ContentEntrySnapshot> = {
|
|
5
5
|
type: ContentTypeKey;
|
|
6
6
|
siteId: string;
|
|
7
7
|
entryId: string;
|
|
@@ -15,36 +15,20 @@ export type PublishEntryResult<TSnapshot extends ContentEntrySnapshot> = Readonl
|
|
|
15
15
|
publishedContent?: Record<string, unknown> | null;
|
|
16
16
|
publishedBlocks?: readonly PublishedBlockBaseline[];
|
|
17
17
|
}>;
|
|
18
|
-
|
|
19
|
-
saveContent(content: Record<string, unknown>)
|
|
20
|
-
saveMetadata(payload: TMetadataPayload)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
canonicalUrl: string | null;
|
|
36
|
-
publishedMetaTitle: string | null;
|
|
37
|
-
publishedMetaDescription: string | null;
|
|
38
|
-
ogImageId: string | null;
|
|
39
|
-
draftUpdatedAt: string | null;
|
|
40
|
-
updatedBy: string | null;
|
|
41
|
-
}>;
|
|
42
|
-
publishDetailed: (payload: TPublishPayload | undefined) => Promise<{
|
|
43
|
-
snapshot: TSnapshot;
|
|
44
|
-
publishedContent: Record<string, unknown> | undefined;
|
|
45
|
-
publishedBlocks: PublishedBlockBaseline[] | undefined;
|
|
46
|
-
}>;
|
|
47
|
-
publish(payload: TPublishPayload | undefined): Promise<TSnapshot>;
|
|
48
|
-
discardDraft(): Promise<TSnapshot>;
|
|
49
|
-
deleteEntry(): Promise<void>;
|
|
50
|
-
};
|
|
18
|
+
type ContentEditorDraftServices<TSnapshot extends ContentEntrySnapshot = ContentEntrySnapshot, TMetadataPayload extends Record<string, unknown> = RouteMetadataPayload> = Readonly<{
|
|
19
|
+
saveContent: (content: Record<string, unknown>) => Promise<Record<string, unknown>>;
|
|
20
|
+
saveMetadata: (payload: TMetadataPayload) => Promise<Record<string, unknown>>;
|
|
21
|
+
}>;
|
|
22
|
+
export type ContentEditorServices<TSnapshot extends ContentEntrySnapshot = ContentEntrySnapshot, TMetadataPayload extends Record<string, unknown> = RouteMetadataPayload> = ContentEditorDraftServices<TSnapshot, TMetadataPayload> & (Readonly<{
|
|
23
|
+
kind: 'entryLifecycle';
|
|
24
|
+
publishDetailed: (payload: unknown) => Promise<PublishEntryResult<TSnapshot>>;
|
|
25
|
+
publish: (payload: unknown) => Promise<TSnapshot>;
|
|
26
|
+
discardDraft: () => Promise<TSnapshot>;
|
|
27
|
+
deleteEntry: () => Promise<void>;
|
|
28
|
+
}> | Readonly<{
|
|
29
|
+
kind: 'pageSurfaceDraft';
|
|
30
|
+
}>);
|
|
31
|
+
export type EntryLifecycleContentEditorServices<TSnapshot extends ContentEntrySnapshot = ContentEntrySnapshot, TMetadataPayload extends Record<string, unknown> = RouteMetadataPayload> = Extract<ContentEditorServices<TSnapshot, TMetadataPayload>, {
|
|
32
|
+
kind: 'entryLifecycle';
|
|
33
|
+
}>;
|
|
34
|
+
export declare function createContentEntryServices<TResponse extends object, TMetadataPayload extends Record<string, unknown>, TPublishPayload, TSnapshot extends ContentEntrySnapshot>(apiClient: ApiClient, config: ContentEntryServiceConfig<TResponse, TSnapshot>): EntryLifecycleContentEditorServices<TSnapshot, TMetadataPayload>;
|
|
@@ -112,6 +112,7 @@ export type EditorBlockMeta = Readonly<{
|
|
|
112
112
|
purpose: string | null;
|
|
113
113
|
orderIndex: number | null;
|
|
114
114
|
publishedContent: EditorBlockValues | null;
|
|
115
|
+
optimisticHash: string | null;
|
|
115
116
|
}>;
|
|
116
117
|
export type EditorDraftSnapshot = EditorStructuralDraftSnapshot;
|
|
117
118
|
export type DraftBlockInitMetaInput = EditorDraftBlockInitMetaInput;
|
|
@@ -127,6 +128,7 @@ export type EditorBlockItem = Readonly<{
|
|
|
127
128
|
publishedContent?: EditorValueRecord | null;
|
|
128
129
|
bindings?: EditorValueRecord | null;
|
|
129
130
|
purpose?: string | null;
|
|
131
|
+
optimisticHash?: string | null;
|
|
130
132
|
}>;
|
|
131
133
|
type NormalizedEditorBlockBase = Readonly<{
|
|
132
134
|
kind: string;
|
|
@@ -136,6 +138,7 @@ type NormalizedEditorBlockBase = Readonly<{
|
|
|
136
138
|
publishedContent: EditorBlockValues | null;
|
|
137
139
|
bindings: EditorBlockValues | null;
|
|
138
140
|
purpose: string | null;
|
|
141
|
+
optimisticHash: string | null;
|
|
139
142
|
}>;
|
|
140
143
|
export type PersistedEditorBlockItem = EditorPersistedBlock;
|
|
141
144
|
export type PendingEditorBlockItem = NormalizedEditorBlockBase & Readonly<{
|
|
@@ -226,6 +229,7 @@ export type EditorSystemOperation = {
|
|
|
226
229
|
blockId: EditorBlockId;
|
|
227
230
|
savedValues: EditorBlockValues | null;
|
|
228
231
|
acknowledgedVersion: number;
|
|
232
|
+
optimisticHash: string | null;
|
|
229
233
|
} | {
|
|
230
234
|
type: 'autosave-draft-failed';
|
|
231
235
|
blockId: EditorBlockId;
|
|
@@ -293,7 +297,7 @@ export declare function initNewDraftBlock(snapshot: EditorHistorySnapshot, block
|
|
|
293
297
|
export declare function updateDraftBlockBaseline(snapshot: EditorHistorySnapshot, blockId: EditorBlockId, baseline: DraftBlockBaselineInput, meta?: DraftBlockBaselineUpdateMetaInput): EditorHistorySnapshot;
|
|
294
298
|
export declare function removeDraftBlock(snapshot: EditorHistorySnapshot, blockId: EditorBlockId): EditorHistorySnapshot;
|
|
295
299
|
export declare function setDraftPublishedBaselines(snapshot: EditorHistorySnapshot, blocks: readonly BlockPublishedBaselineInput[]): EditorHistorySnapshot;
|
|
296
|
-
export declare function autosaveDraftSucceeded(snapshot: EditorHistorySnapshot, blockId: EditorBlockId, savedValues: EditorBlockValues | null, acknowledgedVersion: number): EditorHistorySnapshot;
|
|
300
|
+
export declare function autosaveDraftSucceeded(snapshot: EditorHistorySnapshot, blockId: EditorBlockId, savedValues: EditorBlockValues | null, acknowledgedVersion: number, optimisticHash: string | null): EditorHistorySnapshot;
|
|
297
301
|
export declare function autosaveDraftFailed(snapshot: EditorHistorySnapshot, blockId: EditorBlockId, message?: string): EditorHistorySnapshot;
|
|
298
302
|
export declare function clearDraftError(snapshot: EditorHistorySnapshot, blockId: EditorBlockId): EditorHistorySnapshot;
|
|
299
303
|
export declare function setDraftPending(snapshot: EditorHistorySnapshot, blockId: EditorBlockId): EditorHistorySnapshot;
|