@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
package/README.md
CHANGED
|
@@ -191,19 +191,26 @@ SDK sites that need bespoke event registration UI can use the headless event reg
|
|
|
191
191
|
|
|
192
192
|
```tsx
|
|
193
193
|
import { loadPage, Page } from '@riverbankcms/sdk';
|
|
194
|
+
import type { DataLoaderOverrides } from '@riverbankcms/sdk/data';
|
|
195
|
+
|
|
196
|
+
const dataLoaderOverrides = {
|
|
197
|
+
'custom.block-id': {
|
|
198
|
+
loaderKey: async ({ content }) => {
|
|
199
|
+
const fieldValue = typeof content.fieldValue === 'string'
|
|
200
|
+
? content.fieldValue
|
|
201
|
+
: '';
|
|
202
|
+
return fetchAndParseHostData(fieldValue);
|
|
203
|
+
},
|
|
204
|
+
},
|
|
205
|
+
} satisfies DataLoaderOverrides;
|
|
194
206
|
|
|
195
207
|
// Fetch all page data
|
|
196
208
|
const pageData = await loadPage({
|
|
197
209
|
client,
|
|
198
|
-
siteId
|
|
199
|
-
path
|
|
200
|
-
preview
|
|
201
|
-
|
|
202
|
-
dataLoaderOverrides?: { // Optional: code-based data loaders for custom blocks
|
|
203
|
-
'custom.block-id': {
|
|
204
|
-
loaderKey: async (ctx) => fetchData(ctx.content.fieldValue),
|
|
205
|
-
},
|
|
206
|
-
},
|
|
210
|
+
siteId,
|
|
211
|
+
path,
|
|
212
|
+
preview: false,
|
|
213
|
+
dataLoaderOverrides,
|
|
207
214
|
});
|
|
208
215
|
|
|
209
216
|
// Render the page
|
|
@@ -2325,9 +2332,9 @@ All field types from the CMS are supported:
|
|
|
2325
2332
|
Custom blocks can fetch data automatically using data loaders. There are two approaches:
|
|
2326
2333
|
|
|
2327
2334
|
1. **Config-based loaders** - Declarative loaders defined in `riverbank.config.ts` for whitelisted CMS endpoints
|
|
2328
|
-
2. **Code-based loaders** -
|
|
2335
|
+
2. **Code-based loaders** - Server-only functions passed to `createCatchAllPage()`, `loadContent()`, or `loadPage()` for host databases and APIs
|
|
2329
2336
|
|
|
2330
|
-
Both loader types run server-side during
|
|
2337
|
+
Both loader types run server-side during normal page rendering. Data is passed to your component via the `data` prop.
|
|
2331
2338
|
|
|
2332
2339
|
### Config-Based Loaders (CMS Endpoints)
|
|
2333
2340
|
|
|
@@ -2547,49 +2554,61 @@ export function FeaturedPosts({
|
|
|
2547
2554
|
|
|
2548
2555
|
### Code-Based Loaders (External APIs)
|
|
2549
2556
|
|
|
2550
|
-
For
|
|
2557
|
+
For host database or API data, declare a server-only registry and pass it to the canonical catch-all. The recursive `DataLoaderValue` return type excludes functions, `undefined`, dates, class instances, and other values that cannot safely cross the RSC boundary. Riverbank also validates values defensively at runtime for JavaScript, `any`, and hostile object boundaries.
|
|
2551
2558
|
|
|
2552
2559
|
**Example: E-commerce Product Block**
|
|
2553
2560
|
|
|
2554
2561
|
```typescript
|
|
2555
|
-
//
|
|
2556
|
-
import
|
|
2557
|
-
import { FeaturedProducts } from '@/components/blocks/FeaturedProducts';
|
|
2558
|
-
|
|
2559
|
-
export default async function CMSPage({ params }) {
|
|
2560
|
-
const pageData = await loadPage({
|
|
2561
|
-
client,
|
|
2562
|
-
siteId: process.env.SITE_ID!,
|
|
2563
|
-
path: `/${params.slug?.join('/') || ''}`,
|
|
2564
|
-
dataLoaderOverrides: {
|
|
2565
|
-
'custom.featured-products': {
|
|
2566
|
-
products: async (ctx) => {
|
|
2567
|
-
// Access block content for parameters
|
|
2568
|
-
const categoryId = ctx.content.categoryId as string;
|
|
2569
|
-
const limit = (ctx.content.limit as number) ?? 10;
|
|
2570
|
-
|
|
2571
|
-
const res = await fetch(
|
|
2572
|
-
`https://api.shop.com/products?category=${categoryId}&limit=${limit}`,
|
|
2573
|
-
{ headers: { 'Authorization': `Bearer ${process.env.SHOP_API_KEY}` } }
|
|
2574
|
-
);
|
|
2562
|
+
// src/lib/data-loader-overrides.server.ts
|
|
2563
|
+
import 'server-only';
|
|
2575
2564
|
|
|
2576
|
-
|
|
2577
|
-
|
|
2578
|
-
},
|
|
2579
|
-
},
|
|
2580
|
-
});
|
|
2565
|
+
import type { DataLoaderOverrides, DataLoaderValue } from '@riverbankcms/sdk/next';
|
|
2566
|
+
import { parseProductPayload } from '@/lib/product-api-schema';
|
|
2581
2567
|
|
|
2582
|
-
|
|
2583
|
-
|
|
2584
|
-
|
|
2585
|
-
|
|
2586
|
-
'custom.featured-products': FeaturedProducts,
|
|
2587
|
-
}}
|
|
2588
|
-
/>
|
|
2568
|
+
async function fetchProducts(categoryId: string, limit: number): Promise<DataLoaderValue> {
|
|
2569
|
+
const response = await fetch(
|
|
2570
|
+
`https://api.shop.com/products?category=${encodeURIComponent(categoryId)}&limit=${limit}`,
|
|
2571
|
+
{ headers: { Authorization: `Bearer ${process.env.SHOP_API_KEY}` } },
|
|
2589
2572
|
);
|
|
2573
|
+
if (!response.ok) throw new Error(`Product API returned ${response.status}`);
|
|
2574
|
+
|
|
2575
|
+
const payload: unknown = await response.json();
|
|
2576
|
+
// Parse and validate payload here with your application's boundary schema.
|
|
2577
|
+
return parseProductPayload(payload);
|
|
2590
2578
|
}
|
|
2579
|
+
|
|
2580
|
+
export const dataLoaderOverrides = {
|
|
2581
|
+
'custom.featured-products': {
|
|
2582
|
+
products: async ({ content, searchParams }) => {
|
|
2583
|
+
const categoryId = typeof content.categoryId === 'string' ? content.categoryId : '';
|
|
2584
|
+
const configuredLimit = typeof content.limit === 'number' ? content.limit : 10;
|
|
2585
|
+
const queryLimit = typeof searchParams.limit === 'string'
|
|
2586
|
+
? Number.parseInt(searchParams.limit, 10)
|
|
2587
|
+
: configuredLimit;
|
|
2588
|
+
return fetchProducts(categoryId, Number.isFinite(queryLimit) ? queryLimit : configuredLimit);
|
|
2589
|
+
},
|
|
2590
|
+
},
|
|
2591
|
+
} satisfies DataLoaderOverrides;
|
|
2591
2592
|
```
|
|
2592
2593
|
|
|
2594
|
+
```typescript
|
|
2595
|
+
// src/app/[[...slug]]/page.tsx
|
|
2596
|
+
import { createCatchAllPage } from '@riverbankcms/sdk/next';
|
|
2597
|
+
import { dataLoaderOverrides } from '@/lib/data-loader-overrides.server';
|
|
2598
|
+
|
|
2599
|
+
const { Page, generateMetadata } = createCatchAllPage({
|
|
2600
|
+
getClient,
|
|
2601
|
+
config,
|
|
2602
|
+
dataLoaderOverrides,
|
|
2603
|
+
blockOverrides: { 'custom.featured-products': FeaturedProducts },
|
|
2604
|
+
});
|
|
2605
|
+
|
|
2606
|
+
export default Page;
|
|
2607
|
+
export { generateMetadata };
|
|
2608
|
+
```
|
|
2609
|
+
|
|
2610
|
+
Keep the `server-only` marker at the top of the registry so Next.js turns an accidental Client Component import into a build error. `generateMetadata()` never receives or runs host loaders—even with `customMetadata`—so a normal request does not repeat host queries for metadata and rendering.
|
|
2611
|
+
|
|
2593
2612
|
```tsx
|
|
2594
2613
|
// components/blocks/FeaturedProducts.tsx
|
|
2595
2614
|
import type { BlockOverrideProps } from '@riverbankcms/sdk/rendering';
|
|
@@ -2646,6 +2665,12 @@ interface DataLoaderContext {
|
|
|
2646
2665
|
|
|
2647
2666
|
/** Whether fetching preview/draft content */
|
|
2648
2667
|
previewStage: 'published' | 'preview';
|
|
2668
|
+
|
|
2669
|
+
/** Immutable URL query parameters */
|
|
2670
|
+
searchParams: Readonly<Record<string, string | readonly string[] | undefined>>;
|
|
2671
|
+
|
|
2672
|
+
/** Exact page, entry-template, or page-surface-template owner */
|
|
2673
|
+
renderTarget: DataLoaderRenderTarget;
|
|
2649
2674
|
}
|
|
2650
2675
|
```
|
|
2651
2676
|
|
|
@@ -2669,14 +2694,18 @@ customBlocks: [{
|
|
|
2669
2694
|
},
|
|
2670
2695
|
}]
|
|
2671
2696
|
|
|
2672
|
-
// page.tsx -
|
|
2673
|
-
const
|
|
2674
|
-
|
|
2675
|
-
|
|
2676
|
-
path: '/',
|
|
2697
|
+
// src/app/[[...slug]]/page.tsx - host loader for an external API
|
|
2698
|
+
const { Page, generateMetadata } = createCatchAllPage({
|
|
2699
|
+
getClient,
|
|
2700
|
+
config,
|
|
2677
2701
|
dataLoaderOverrides: {
|
|
2678
2702
|
'custom.product-showcase': {
|
|
2679
|
-
products: async (
|
|
2703
|
+
products: async ({ content }) => {
|
|
2704
|
+
const collectionId = typeof content.collectionId === 'string'
|
|
2705
|
+
? content.collectionId
|
|
2706
|
+
: '';
|
|
2707
|
+
return fetchProductsFromShopify(collectionId);
|
|
2708
|
+
},
|
|
2680
2709
|
},
|
|
2681
2710
|
},
|
|
2682
2711
|
});
|
|
@@ -2688,7 +2717,7 @@ const pageData = await loadPage({
|
|
|
2688
2717
|
|
|
2689
2718
|
Data loaders are best-effort. If a loader fails:
|
|
2690
2719
|
|
|
2691
|
-
-
|
|
2720
|
+
- A structured warning identifies the site, page/template, block, loader key, stage, and failure kind without including thrown errors, block content, secrets, or loader results
|
|
2692
2721
|
- The loader key is undefined in the `data` prop
|
|
2693
2722
|
- Other loaders continue executing
|
|
2694
2723
|
- Your component should handle missing data gracefully
|
|
@@ -2724,6 +2753,10 @@ import {
|
|
|
2724
2753
|
type DataLoaderFn,
|
|
2725
2754
|
type BlockLoaderMap,
|
|
2726
2755
|
type DataLoaderOverrides,
|
|
2756
|
+
type DataLoaderPreviewStage,
|
|
2757
|
+
type DataLoaderRenderTarget,
|
|
2758
|
+
type DataLoaderSearchParams,
|
|
2759
|
+
type DataLoaderValue,
|
|
2727
2760
|
type PrefetchContext,
|
|
2728
2761
|
type ResolvedBlockData,
|
|
2729
2762
|
type SdkPrefetchOptions,
|