@riverbankcms/sdk 0.129.0 → 0.130.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 +51 -266
- package/dist/{PreviewEditorSidebar-B43CJ0g_.mjs → PreviewEditorSidebar-DiEpbOdw.mjs} +313 -239
- package/dist/{PreviewEditorUI-DHirVkeM.mjs → PreviewEditorUI-C6MvxnIa.mjs} +3 -3
- package/dist/{PreviewQueryProvider-B1kbhaJD.mjs → PreviewQueryProvider-C2rnoPz6.mjs} +1 -1
- package/dist/{SdkPreviewModeRuntime-BJumZy1B.mjs → SdkPreviewModeRuntime-DRXA_m5L.mjs} +208 -211
- package/dist/{SiteChromeCustomizeContext-D9SlpwEj.mjs → SiteChromeCustomizeContext-BTHdv5_-.mjs} +6222 -6190
- package/dist/_dts/ai/src/contracts/commandExposure.d.ts +1 -1
- package/dist/_dts/ai/src/contracts/proposalPrimitives.d.ts +52 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +9438 -33588
- package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +32572 -0
- package/dist/_dts/api/src/appointmentSetup.d.ts +21 -9
- package/dist/_dts/api/src/bookingConfig.d.ts +4 -46
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +13 -11
- package/dist/_dts/api/src/bookingRecords.d.ts +1 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +3 -5
- package/dist/_dts/api/src/endpoints.d.ts +14 -21
- package/dist/_dts/api/src/eventManagementContracts.d.ts +76 -0
- package/dist/_dts/api/src/index.d.ts +5 -3
- package/dist/_dts/api/src/publicExperience/commerceEndpoints.d.ts +22 -47
- package/dist/_dts/api/src/sdk-event-management.d.ts +53 -0
- package/dist/_dts/api/src/sdk-event-schedule.d.ts +8 -6
- package/dist/_dts/api/src/sdk-event-upsert.d.ts +112 -20
- package/dist/_dts/api/src/sdkContracts.d.ts +74 -115
- package/dist/_dts/api/src/sdkManagedEventContracts.d.ts +35 -0
- package/dist/_dts/api/src/sdkThemeWire.d.ts +4517 -0
- package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +18 -29
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +23 -37
- package/dist/_dts/blocks/src/contracts/index.d.ts +2 -0
- package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +6 -8
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +36 -14
- package/dist/_dts/blocks/src/index.d.ts +5 -3
- package/dist/_dts/blocks/src/lib/media.d.ts +9 -539
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +3 -2
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +135 -90
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/shop.shared.d.ts +37 -4
- package/dist/_dts/blocks/src/system/blocks/site-footer-nav-groups-layout.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +3 -0
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +5 -5
- package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +8 -6
- package/dist/_dts/blocks/src/system/customize/serializeBackgroundOverride.d.ts +3 -0
- package/dist/_dts/blocks/src/system/fields/background.d.ts +2 -20
- package/dist/_dts/blocks/src/system/fields/backgroundContent.d.ts +17 -0
- package/dist/_dts/blocks/src/system/fields/backgroundContentAudit.d.ts +20 -0
- package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +5 -33
- package/dist/_dts/blocks/src/system/fragments/builder.d.ts +1 -0
- package/dist/_dts/blocks/src/system/fragments/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/helpers/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/helpers/resolveBackground.d.ts +10 -45
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +7 -4
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/writeCanonicalization.d.ts +4 -0
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +123 -55
- package/dist/_dts/blocks/src/system/registry.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/api/types/shop.d.ts +2 -37
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +61 -24
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +30 -12
- package/dist/_dts/blocks/src/system/runtime/header/enhanceHeaderSection.d.ts +3 -5
- package/dist/_dts/blocks/src/system/runtime/header/headerScrollRuntime.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/header/runtimeContract.d.ts +22 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/display.d.ts +9 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/commerce/shared/view.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/header-section.frame.d.ts +21 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/header-section.server.d.ts +2 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +41 -12
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.pass-contract.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/shop.state.d.ts +3 -3
- package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -1
- package/dist/_dts/blocks/src/system/transforms/registry/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +3 -1
- package/dist/_dts/blocks/src/system/transforms/registry/core.d.ts +4 -1
- package/dist/_dts/blocks/src/system/transforms/registry/headerRuntime.d.ts +3 -0
- package/dist/_dts/blocks/src/system/transforms/registry/index.d.ts +2 -1
- package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +0 -3
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +41 -43
- package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +4 -2
- package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +2 -17
- package/dist/_dts/content-editor/src/FooterNavigationLayoutControl.d.ts +5 -0
- package/dist/_dts/content-editor/src/footerComposer.d.ts +2 -1
- package/dist/_dts/content-editor/src/footerComposerPanelTypes.d.ts +21 -0
- package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +2 -1
- package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +11 -1
- package/dist/_dts/content-editor/src/useFooterNavigationLayout.d.ts +26 -0
- package/dist/_dts/content-model/src/templates/defaults.d.ts +7 -0
- package/dist/_dts/core/src/booking-date-time.d.ts +2 -2
- package/dist/_dts/core/src/booking-time-zone.d.ts +6 -0
- package/dist/_dts/core/src/footer-composition-types.d.ts +4 -4
- package/dist/_dts/core/src/footer-navigation-layout.d.ts +4 -0
- package/dist/_dts/core/src/index.d.ts +1 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +38 -18
- package/dist/_dts/media-core/src/index.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/preview/FooterSidebarDisclosure.d.ts +8 -0
- package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +5 -5
- package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +15 -17
- package/dist/_dts/preview-next/src/client/preview/PreviewFooterEditorPanel.d.ts +20 -0
- package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +3 -5
- package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +3 -5
- package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -4
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -5
- package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +6 -7
- package/dist/_dts/preview-next/src/client/preview/siteChromeBrandPreferences.d.ts +7 -7
- package/dist/_dts/preview-next/src/client/preview/siteChromeCustomizeTypes.d.ts +4 -4
- package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +2 -2
- package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +12 -11
- package/dist/_dts/preview-next/src/client/preview/siteChromeSelectionRows.d.ts +53 -0
- package/dist/_dts/preview-next/src/client/preview/siteStyleAccess.d.ts +1 -6
- package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +6 -15
- package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +4 -6
- package/dist/_dts/sdk/src/config/types.d.ts +5 -4
- package/dist/_dts/sdk/src/config/validation.d.ts +2 -0
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -41
- package/dist/_dts/sdk/src/next/catch-all-theme-admission.d.ts +23 -0
- package/dist/_dts/sdk/src/next/index.d.ts +8 -6
- package/dist/_dts/sdk/src/next/resolveTheme.d.ts +1 -2
- package/dist/_dts/sdk/src/next/types.d.ts +10 -0
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -16
- package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +3 -2
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +5 -3
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/hooks/useContent.d.ts +4 -2
- package/dist/_dts/sdk/src/rendering/index.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +6 -1
- package/dist/_dts/sdk/src/rendering/server.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/themeAdmission.d.ts +11 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/blockOverrides.d.ts +1 -1
- package/dist/_dts/theme-core/src/boxBackgroundSchema.d.ts +184 -0
- package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +96 -0
- package/dist/_dts/theme-core/src/buttons/buttonSurfaceContext.d.ts +78 -0
- package/dist/_dts/theme-core/src/buttons/index.d.ts +2 -0
- package/dist/_dts/theme-core/src/buttons/parseThemeForPersistence.d.ts +2 -2
- package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +9 -57
- package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +6 -3
- package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +8 -7
- package/dist/_dts/theme-core/src/buttons/styles/recipes/quietArrow.d.ts +1 -0
- package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +11 -0
- package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +12 -0
- package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +5 -0
- package/dist/_dts/theme-core/src/buttons/types.d.ts +51 -4
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/lib/media.d.ts +583 -10
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +5117 -1433
- package/dist/_dts/theme-core/src/palette/index.d.ts +1 -0
- package/dist/_dts/theme-core/src/schema.d.ts +5079 -2005
- package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +6 -14
- package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +29 -102
- package/dist/_dts/theme-core/src/site-styles/customizableSurfaces.d.ts +3 -76
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +4 -4
- package/dist/_dts/theme-core/src/site-styles/generatedDesignPipeline.d.ts +3 -7
- package/dist/_dts/theme-core/src/site-styles/generatedDesignPipelineHelpers.d.ts +17 -0
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/headerLayoutCatalog.d.ts +281 -0
- package/dist/_dts/theme-core/src/site-styles/headerLayoutResolution.d.ts +13 -0
- package/dist/_dts/theme-core/src/site-styles/headerLayoutStyles.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/headerLayoutTypes.d.ts +142 -0
- package/dist/_dts/theme-core/src/site-styles/headerNavStyles.d.ts +6 -0
- package/dist/_dts/theme-core/src/site-styles/headerOpeningForeground.d.ts +7 -4
- package/dist/_dts/theme-core/src/site-styles/headerOpeningSection.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/headerStyleCompiler.d.ts +3 -0
- package/dist/_dts/theme-core/src/site-styles/imageSurfaceBackground.d.ts +14 -0
- package/dist/_dts/theme-core/src/site-styles/index.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +14 -41
- package/dist/_dts/theme-core/src/site-styles/runtimeBackgroundResolution.d.ts +23 -0
- package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +8 -6
- package/dist/_dts/theme-core/src/site-styles/siteChromeNavPreferences.d.ts +1 -1
- package/dist/client/{CourseRegistrationWizard-xRmA7REV.mjs → CourseRegistrationWizard-Bvtz9G9g.mjs} +5 -5
- package/dist/client/{DiscountCodeDisclosure-B9vriL5C.mjs → DiscountCodeDisclosure-Ur-Xx1U_.mjs} +1 -1
- package/dist/client/{EventCombined.client-BgVnVTlz.mjs → EventCombined.client-EhscD4U6.mjs} +2 -2
- package/dist/client/{EventListing.client-CqdsO7jO.mjs → EventListing.client-Bn26cFTY.mjs} +2 -2
- package/dist/client/{LeafletStaticMap-CKPxot9M.mjs → LeafletStaticMap-BUw9Ntzr.mjs} +1 -1
- package/dist/client/{StepIndicator-DGCYuBJ1.mjs → StepIndicator-BfbdiVQI.mjs} +2 -2
- package/dist/client/{accordion-BfN5Eqd-.mjs → accordion-CjIeof73.mjs} +1 -1
- package/dist/client/{bookingForm-DOvCpBFP.mjs → bookingForm-DwEeovf_.mjs} +5 -5
- package/dist/client/bookings.mjs +1028 -1038
- package/dist/client/{carousel-DPNmiH0f.mjs → carousel-BMrfgOba.mjs} +1 -1
- package/dist/client/{cart--egVXlrR.mjs → cart-rXEdxTdb.mjs} +3 -3
- package/dist/client/{checkout-DywWtMcq.mjs → checkout-D3JlSzh3.mjs} +3 -3
- package/dist/client/client.mjs +18324 -18224
- package/dist/client/{courseRegistration-Dk9qFVwt.mjs → courseRegistration-DO5XvMAA.mjs} +2 -2
- package/dist/client/{eventCalendar-Bkz2HjlS.mjs → eventCalendar-DO6rTqCn.mjs} +4 -4
- package/dist/client/{eventCombined-D4kipYWg.mjs → eventCombined-bJ3i_ovU.mjs} +2 -2
- package/dist/client/{eventDetails-Dz_5ix2Q.mjs → eventDetails-CCbrXE7o.mjs} +3 -3
- package/dist/client/{eventListing-D0vm-zST.mjs → eventListing-Bdlt9YTm.mjs} +2 -2
- package/dist/client/{eventRegistration-Cw1E4Q4p.mjs → eventRegistration-B02lt6iY.mjs} +6 -6
- package/dist/client/{form-C2Zf1n3K.mjs → form-DrUBAAox.mjs} +1 -1
- package/dist/client/{headerSection-CP05gzdc.mjs → headerSection-MzqvHL6T.mjs} +151 -104
- package/dist/client/hooks.mjs +4550 -4211
- package/dist/client/{locationMap-Cl3x9PYJ.mjs → locationMap-DG8BxTBm.mjs} +2 -2
- package/dist/client/{newsletterForm-DyEJoClm.mjs → newsletterForm-BzO-Td3p.mjs} +1 -1
- package/dist/client/{pricing-DGuNR1W4.mjs → pricing-NgK7ozkg.mjs} +1 -1
- package/dist/client/{productDetail-Cq-HrGew.mjs → productDetail-CfQ7rhVK.mjs} +3 -3
- package/dist/client/{productList-DbB3jwqd.mjs → productList-C23rOLUi.mjs} +3 -3
- package/dist/client/{propsDecoder-CiTuhUwY.mjs → propsDecoder-CAZdhwjs.mjs} +2166 -2157
- package/dist/client/rendering/client.mjs +3606 -4078
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +15969 -15843
- package/dist/client/{scrollToBlock-CShkRqab.mjs → scrollToBlock-DSSqVQr1.mjs} +1 -1
- package/dist/client/{shop-Cu4Ib-ZA.mjs → shop-BMToKLK7.mjs} +34 -23
- package/dist/client/{shop-commerce-BzpsOdh7.mjs → shop-commerce-DB4JRKmp.mjs} +4 -4
- package/dist/client/{shop-commerce-store-DaE7Fhj8.mjs → shop-commerce-store-BOqSIOuc.mjs} +1 -1
- package/dist/client/{shopShared-cF0c20vB.mjs → shopShared-B6SK9DZv.mjs} +9 -3
- package/dist/client/{useEventFilters-QZ3HMgaJ.mjs → useEventFilters-CULOa4nB.mjs} +2 -2
- package/dist/client/{usePolling-BKf0GcE-.mjs → usePolling-BGG_8-jl.mjs} +2 -2
- package/dist/preview-next/before-render.mjs +16 -27
- package/dist/preview-next/client/runtime.mjs +4 -4
- package/dist/preview-next/middleware.mjs +16 -27
- package/dist/{previewAuthStore-BesgU5Xu.mjs → previewAuthStore-_GXFRg2W.mjs} +16 -27
- package/dist/{sdk-runtime-CfZd5pAm.mjs → sdk-runtime-hhSOMShR.mjs} +2 -2
- package/dist/{separator-DkTe68HE.mjs → separator-flRaFc14.mjs} +1 -1
- package/dist/server/components.mjs +17802 -17875
- package/dist/server/config-validation.mjs +4729 -4416
- package/dist/server/config.mjs +4733 -4420
- package/dist/server/data.mjs +4533 -4211
- package/dist/server/date-time.mjs +22 -13
- package/dist/server/index.mjs +17 -28
- package/dist/server/manifest.mjs +4966 -0
- package/dist/server/next.mjs +17635 -17676
- package/dist/server/page-converter.mjs +3759 -4386
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +18960 -19049
- package/dist/server/rendering.mjs +17848 -17902
- package/dist/server/routing.mjs +4776 -4323
- package/dist/server/server.mjs +4609 -4264
- package/dist/server/theme-bridge.mjs +1361 -1850
- package/dist/server/theme.mjs +736 -605
- package/dist/styles/index.css +22 -3
- package/package.json +9 -12
- package/dist/_dts/api/src/event-presentation.d.ts +0 -14
- package/dist/_dts/blocks/src/definitions.d.ts +0 -14
- package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +0 -66
- package/dist/_dts/sdk/src/cli/canonical-entry-policy.d.ts +0 -53
- package/dist/_dts/sdk/src/cli/commands/audit.d.ts +0 -101
- package/dist/_dts/sdk/src/cli/commands/block.d.ts +0 -24
- package/dist/_dts/sdk/src/cli/commands/compare.d.ts +0 -62
- package/dist/_dts/sdk/src/cli/commands/content-type.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/commands/content.d.ts +0 -56
- package/dist/_dts/sdk/src/cli/commands/delete.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/commands/deploy.d.ts +0 -43
- package/dist/_dts/sdk/src/cli/commands/drafts.d.ts +0 -18
- package/dist/_dts/sdk/src/cli/commands/entry.d.ts +0 -55
- package/dist/_dts/sdk/src/cli/commands/env.d.ts +0 -31
- package/dist/_dts/sdk/src/cli/commands/event.d.ts +0 -23
- package/dist/_dts/sdk/src/cli/commands/eventOccurrenceSchedule.d.ts +0 -12
- package/dist/_dts/sdk/src/cli/commands/identifiers.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/commands/init-docs.d.ts +0 -13
- package/dist/_dts/sdk/src/cli/commands/manifest.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/commands/media-validation.d.ts +0 -3
- package/dist/_dts/sdk/src/cli/commands/migrate.d.ts +0 -11
- package/dist/_dts/sdk/src/cli/commands/navigation.d.ts +0 -12
- package/dist/_dts/sdk/src/cli/commands/page.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/commands/publish-all.d.ts +0 -50
- package/dist/_dts/sdk/src/cli/commands/pull-dated-offering-scope.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/commands/pull-dry-run.d.ts +0 -70
- package/dist/_dts/sdk/src/cli/commands/pull-scope-diff.d.ts +0 -8
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +0 -43
- package/dist/_dts/sdk/src/cli/commands/push/consts.d.ts +0 -3
- package/dist/_dts/sdk/src/cli/commands/push/execute/diff.d.ts +0 -19
- package/dist/_dts/sdk/src/cli/commands/push/execute/footer.d.ts +0 -42
- package/dist/_dts/sdk/src/cli/commands/push/execute/localMediaReporting.d.ts +0 -23
- package/dist/_dts/sdk/src/cli/commands/push/execute/media.d.ts +0 -22
- package/dist/_dts/sdk/src/cli/commands/push/execute/metadata.d.ts +0 -1
- package/dist/_dts/sdk/src/cli/commands/push/execute/reporting.d.ts +0 -7
- package/dist/_dts/sdk/src/cli/commands/push/execute/theme.d.ts +0 -63
- package/dist/_dts/sdk/src/cli/commands/push/filter.d.ts +0 -15
- package/dist/_dts/sdk/src/cli/commands/push/metadata.d.ts +0 -29
- package/dist/_dts/sdk/src/cli/commands/push/normalizeLocalContent.d.ts +0 -2
- package/dist/_dts/sdk/src/cli/commands/push/options.d.ts +0 -32
- package/dist/_dts/sdk/src/cli/commands/push/publishGuidance.d.ts +0 -15
- package/dist/_dts/sdk/src/cli/commands/push/pushAllExtras.d.ts +0 -25
- package/dist/_dts/sdk/src/cli/commands/push/scopes/commandBackedDatedOfferingScope.d.ts +0 -83
- package/dist/_dts/sdk/src/cli/commands/push/scopes/eventCategories.d.ts +0 -4
- package/dist/_dts/sdk/src/cli/commands/push/scopes/events.d.ts +0 -4
- package/dist/_dts/sdk/src/cli/commands/push/scopes/mediaPrep.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/commands/push/scopes/pushScopeGeneric.d.ts +0 -6
- package/dist/_dts/sdk/src/cli/commands/push/scopes/types.d.ts +0 -87
- package/dist/_dts/sdk/src/cli/commands/push/scopes/venues.d.ts +0 -4
- package/dist/_dts/sdk/src/cli/commands/push/stale-resolution.d.ts +0 -48
- package/dist/_dts/sdk/src/cli/commands/push/stale.d.ts +0 -17
- package/dist/_dts/sdk/src/cli/commands/push/verification.d.ts +0 -56
- package/dist/_dts/sdk/src/cli/commands/push/workflowPlan.d.ts +0 -34
- package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +0 -54
- package/dist/_dts/sdk/src/cli/commands/push.d.ts +0 -40
- package/dist/_dts/sdk/src/cli/commands/setup.d.ts +0 -3
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +0 -60
- package/dist/_dts/sdk/src/cli/commands/verify.d.ts +0 -11
- package/dist/_dts/sdk/src/cli/commands/webhooks.d.ts +0 -44
- package/dist/_dts/sdk/src/cli/config-loader.d.ts +0 -47
- package/dist/_dts/sdk/src/cli/content/collectionWriters.d.ts +0 -23
- package/dist/_dts/sdk/src/cli/content/edit/format.d.ts +0 -2
- package/dist/_dts/sdk/src/cli/content/edit/path.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/content/edit/planner.d.ts +0 -46
- package/dist/_dts/sdk/src/cli/content/entryPaths.d.ts +0 -6
- package/dist/_dts/sdk/src/cli/content/footerFile.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/content/fs-utils.d.ts +0 -39
- package/dist/_dts/sdk/src/cli/content/legacyEventScheduleShapeError.d.ts +0 -5
- package/dist/_dts/sdk/src/cli/content/localEventSchedule.d.ts +0 -17
- package/dist/_dts/sdk/src/cli/content/media-manifest.d.ts +0 -13
- package/dist/_dts/sdk/src/cli/content/metadataAfterPush.d.ts +0 -25
- package/dist/_dts/sdk/src/cli/content/metadataStore.d.ts +0 -29
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +0 -488
- package/dist/_dts/sdk/src/cli/content/writer.d.ts +0 -142
- package/dist/_dts/sdk/src/cli/env-scope.d.ts +0 -2
- package/dist/_dts/sdk/src/cli/env.d.ts +0 -71
- package/dist/_dts/sdk/src/cli/errors.d.ts +0 -62
- package/dist/_dts/sdk/src/cli/helpers/ai-runtime.d.ts +0 -2
- package/dist/_dts/sdk/src/cli/helpers.d.ts +0 -399
- package/dist/_dts/sdk/src/cli/index.d.ts +0 -11
- package/dist/_dts/sdk/src/cli/init-docs/constants.d.ts +0 -16
- package/dist/_dts/sdk/src/cli/init-docs/index.d.ts +0 -12
- package/dist/_dts/sdk/src/cli/init-docs/templates.d.ts +0 -18
- package/dist/_dts/sdk/src/cli/init-docs/zod-to-markdown.d.ts +0 -28
- package/dist/_dts/sdk/src/cli/load-config.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/media/identifiers.d.ts +0 -18
- package/dist/_dts/sdk/src/cli/media/local-media.d.ts +0 -14
- package/dist/_dts/sdk/src/cli/media/local-sync.d.ts +0 -91
- package/dist/_dts/sdk/src/cli/media/portable.d.ts +0 -11
- package/dist/_dts/sdk/src/cli/media/rich-text.d.ts +0 -12
- package/dist/_dts/sdk/src/cli/media/value-utils.d.ts +0 -15
- package/dist/_dts/sdk/src/cli/media/write-guard.d.ts +0 -52
- package/dist/_dts/sdk/src/cli/merge-remote/entryLocal.d.ts +0 -3
- package/dist/_dts/sdk/src/cli/merge-remote/entryMerge.d.ts +0 -78
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergePlan.d.ts +0 -45
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergePush.d.ts +0 -24
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergeReport.d.ts +0 -18
- package/dist/_dts/sdk/src/cli/merge-remote/entryRemote.d.ts +0 -9
- package/dist/_dts/sdk/src/cli/merge-remote/entrySnapshots.d.ts +0 -48
- package/dist/_dts/sdk/src/cli/merge-remote/mergeFieldChanges.d.ts +0 -22
- package/dist/_dts/sdk/src/cli/merge-remote/pageLocal.d.ts +0 -3
- package/dist/_dts/sdk/src/cli/merge-remote/pageMerge.d.ts +0 -78
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergePlan.d.ts +0 -36
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergePush.d.ts +0 -23
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergeReport.d.ts +0 -17
- package/dist/_dts/sdk/src/cli/merge-remote/pageSnapshots.d.ts +0 -46
- package/dist/_dts/sdk/src/cli/merge-remote/sharedBaseSnapshots.d.ts +0 -32
- package/dist/_dts/sdk/src/cli/merge-remote/sharedMergePlan.d.ts +0 -27
- package/dist/_dts/sdk/src/cli/merge-remote/sharedMergeReport.d.ts +0 -63
- package/dist/_dts/sdk/src/cli/migrations/entries.d.ts +0 -28
- package/dist/_dts/sdk/src/cli/migrations/events.d.ts +0 -73
- package/dist/_dts/sdk/src/cli/navigationIdentity.d.ts +0 -11
- package/dist/_dts/sdk/src/cli/output.d.ts +0 -133
- package/dist/_dts/sdk/src/cli/program.d.ts +0 -29
- package/dist/_dts/sdk/src/cli/push-config.d.ts +0 -49
- package/dist/_dts/sdk/src/cli/setup/setupPlan.d.ts +0 -51
- package/dist/_dts/sdk/src/cli/site-commands/commandKeys.d.ts +0 -13
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntime.d.ts +0 -170
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntimeCompat.d.ts +0 -21
- package/dist/_dts/sdk/src/cli/site-commands/commandSurfaceDispatch.d.ts +0 -32
- package/dist/_dts/sdk/src/cli/site-commands/datedOfferingCommands.d.ts +0 -53
- package/dist/_dts/sdk/src/cli/site-commands/entryCommands.d.ts +0 -65
- package/dist/_dts/sdk/src/cli/site-commands/eventScheduleCompiler.d.ts +0 -24
- package/dist/_dts/sdk/src/cli/site-commands/footerCommands.d.ts +0 -68
- package/dist/_dts/sdk/src/cli/site-commands/formCommands.d.ts +0 -53
- package/dist/_dts/sdk/src/cli/site-commands/index.d.ts +0 -8
- package/dist/_dts/sdk/src/cli/site-commands/localBlockManifestResolver.d.ts +0 -31
- package/dist/_dts/sdk/src/cli/site-commands/navigationCommands.d.ts +0 -57
- package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +0 -82
- package/dist/_dts/sdk/src/cli/site-commands/pageCommands.d.ts +0 -84
- package/dist/_dts/sdk/src/cli/site-commands/pushExecution.d.ts +0 -39
- package/dist/_dts/sdk/src/cli/site-commands/pushExecutionPlan.d.ts +0 -8
- package/dist/_dts/sdk/src/cli/site-commands/pushExecutionTypes.d.ts +0 -97
- package/dist/_dts/sdk/src/cli/site-commands/residualSettingsTrimming.d.ts +0 -15
- package/dist/_dts/sdk/src/cli/sync/diff.d.ts +0 -222
- package/dist/_dts/sdk/src/cli/sync/executor.d.ts +0 -84
- package/dist/_dts/sdk/src/cli/sync/field-diff.d.ts +0 -39
- package/dist/_dts/sdk/src/cli/sync/index.d.ts +0 -10
- package/dist/_dts/sdk/src/cli/sync/mapper.d.ts +0 -41
- package/dist/_dts/sdk/src/cli/sync/media-sync.d.ts +0 -15
- package/dist/_dts/sdk/src/cli/sync/media.d.ts +0 -158
- package/dist/_dts/sdk/src/cli/sync/syncResultAggregation.d.ts +0 -4
- package/dist/_dts/sdk/src/cli/sync/validation.d.ts +0 -68
- package/dist/_dts/sdk/src/cli/utils/checksum.d.ts +0 -1
- package/dist/_dts/sdk/src/client/management/blocks.d.ts +0 -19
- package/dist/_dts/sdk/src/client/management/catalog.d.ts +0 -10
- package/dist/_dts/sdk/src/client/management/entries.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/eventCategories.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/events.d.ts +0 -7
- package/dist/_dts/sdk/src/client/management/footer.d.ts +0 -9
- package/dist/_dts/sdk/src/client/management/forms.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/http.d.ts +0 -79
- package/dist/_dts/sdk/src/client/management/identifiers.d.ts +0 -11
- package/dist/_dts/sdk/src/client/management/index.d.ts +0 -41
- package/dist/_dts/sdk/src/client/management/media.d.ts +0 -72
- package/dist/_dts/sdk/src/client/management/navigation.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/pages.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/pull.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/settings-branding.d.ts +0 -32
- package/dist/_dts/sdk/src/client/management/settings.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/theme.d.ts +0 -8
- package/dist/_dts/sdk/src/client/management/types.d.ts +0 -1069
- package/dist/_dts/sdk/src/client/management/venues.d.ts +0 -6
- package/dist/_dts/sdk/src/client/management/webhooks.d.ts +0 -3
- package/dist/_dts/sdk/src/test/env.d.ts +0 -4
- package/dist/_dts/site-commands/src/adapter.d.ts +0 -23
- package/dist/_dts/site-commands/src/appointmentCommandSchemas.d.ts +0 -100
- package/dist/_dts/site-commands/src/capabilityGaps.d.ts +0 -8
- package/dist/_dts/site-commands/src/commandContract.d.ts +0 -1277
- package/dist/_dts/site-commands/src/commandDomain.d.ts +0 -20
- package/dist/_dts/site-commands/src/commandIdentifiers.d.ts +0 -7
- package/dist/_dts/site-commands/src/commandValidation.d.ts +0 -10
- package/dist/_dts/site-commands/src/commands.d.ts +0 -1983
- package/dist/_dts/site-commands/src/domain.d.ts +0 -104
- package/dist/_dts/site-commands/src/eventCommandContent.d.ts +0 -11
- package/dist/_dts/site-commands/src/exposure.d.ts +0 -41
- package/dist/_dts/site-commands/src/guards.d.ts +0 -1
- package/dist/_dts/site-commands/src/index.d.ts +0 -18
- package/dist/_dts/site-commands/src/metadata.d.ts +0 -555
- package/dist/_dts/site-commands/src/pagePaths.d.ts +0 -6
- package/dist/_dts/site-commands/src/planner.d.ts +0 -58
- package/dist/_dts/site-commands/src/refContributions.d.ts +0 -11
- package/dist/_dts/site-commands/src/refs.d.ts +0 -90
- package/dist/_dts/site-commands/src/siteStyleCommandSchema.d.ts +0 -405
- package/dist/_dts/site-commands/src/siteStyleSelectionSchemaBuilder.d.ts +0 -46
- package/dist/_dts/site-commands/src/stableJson.d.ts +0 -5
- package/dist/_dts/site-commands/src/staticExecutionGaps.d.ts +0 -10
- package/dist/_dts/site-commands/src/venueCommandMapping.d.ts +0 -21
- package/dist/_dts/theme-core/src/data.d.ts +0 -12
- package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +0 -841
- package/dist/_dts/theme-core/src/site-styles/headerStyleParts.d.ts +0 -4
- package/dist/cli/index.mjs +0 -162988
- package/dist/cli/init-docs/content/agents-section.md +0 -67
- package/dist/cli/init-docs/content/cli-reference.md +0 -1238
- package/dist/cli/init-docs/content/content-management.md +0 -792
- package/dist/cli/init-docs/content/context-brand.md +0 -125
- package/dist/cli/init-docs/content/context-brief.md +0 -77
- package/dist/cli/init-docs/content/context-knowledge.md +0 -111
- package/dist/cli/init-docs/content/getting-started.md +0 -171
- package/dist/cli/init-docs/content/site-workflows-readme.md +0 -96
- package/dist/cli/init-docs/content/workflow-add-block.md +0 -299
- package/dist/cli/init-docs/content/workflow-agent-safe-sync.md +0 -83
- package/dist/cli/init-docs/content/workflow-block-extensions.md +0 -370
- package/dist/cli/init-docs/content/workflow-cmsify-page.md +0 -357
- package/dist/cli/init-docs/content/workflow-content-types.md +0 -330
- package/dist/cli/init-docs/content/workflow-create-page.md +0 -212
- package/dist/cli/init-docs/content/workflow-custom-block.md +0 -470
- package/dist/cli/init-docs/content/workflow-editor-workflows.md +0 -130
- package/dist/cli/init-docs/content/workflow-isr-revalidation.md +0 -158
- package/dist/cli/init-docs/content/workflow-preview-mode.md +0 -252
- package/dist/cli/init-docs/content/workflow-publish.md +0 -285
- package/dist/cli/init-docs/content/workflow-remote-setup.md +0 -51
- package/dist/cli/init-docs/content/workflow-templates.md +0 -381
- /package/dist/_dts/{sdk/src/cli/utils/mime.d.ts → media-core/src/mimeType.d.ts} +0 -0
|
@@ -1,285 +0,0 @@
|
|
|
1
|
-
# Workflow: Publish Content
|
|
2
|
-
|
|
3
|
-
This workflow guides you through safely publishing content to make it live.
|
|
4
|
-
|
|
5
|
-
## Understanding Draft vs Published
|
|
6
|
-
|
|
7
|
-
| Status | Behavior |
|
|
8
|
-
|--------|----------|
|
|
9
|
-
| **Draft** | Content is saved but not visible on the live site. Only visible in preview mode. |
|
|
10
|
-
| **Published** | Content is visible to all site visitors. |
|
|
11
|
-
|
|
12
|
-
By default, new content is created as a draft.
|
|
13
|
-
|
|
14
|
-
## Publishing Individual Items
|
|
15
|
-
|
|
16
|
-
### Publish an Entry
|
|
17
|
-
|
|
18
|
-
```bash
|
|
19
|
-
riverbankcms entry publish <content-type> <identifier>
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
**Example:**
|
|
23
|
-
|
|
24
|
-
```bash
|
|
25
|
-
riverbankcms entry publish blog-post my-first-post
|
|
26
|
-
```
|
|
27
|
-
|
|
28
|
-
### Publish a Page
|
|
29
|
-
|
|
30
|
-
```bash
|
|
31
|
-
riverbankcms page publish <identifier>
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
**Example:**
|
|
35
|
-
|
|
36
|
-
```bash
|
|
37
|
-
riverbankcms page publish about
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
## Checking Publication Status
|
|
41
|
-
|
|
42
|
-
### Check Entry Status
|
|
43
|
-
|
|
44
|
-
```bash
|
|
45
|
-
riverbankcms entry get <content-type> <identifier>
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
Look for:
|
|
49
|
-
- `status: "published"` or `status: "draft"`
|
|
50
|
-
- `hasUnpublishedChanges: true/false`
|
|
51
|
-
|
|
52
|
-
### Check Page Status
|
|
53
|
-
|
|
54
|
-
```bash
|
|
55
|
-
riverbankcms page get <identifier>
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
### List All with Status (JSON)
|
|
59
|
-
|
|
60
|
-
Under `--json` every command emits one envelope `{ ok, command, result, warnings, errors }`, so reach into `.result` when parsing with jq.
|
|
61
|
-
|
|
62
|
-
```bash
|
|
63
|
-
# List entries with status
|
|
64
|
-
riverbankcms entry list blog-post --json
|
|
65
|
-
|
|
66
|
-
# Filter to see status fields (requires jq)
|
|
67
|
-
riverbankcms entry list blog-post --json | jq '.result.entries[] | {identifier, status, hasUnpublishedChanges}'
|
|
68
|
-
|
|
69
|
-
# List pages with status
|
|
70
|
-
riverbankcms page list --json
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
To see everything with pending changes across all content types in one shot — correctly server-filtered, not capped by pagination — use `riverbankcms drafts` instead of scanning `entry list` page by page.
|
|
74
|
-
|
|
75
|
-
## Bulk Publishing via Push
|
|
76
|
-
|
|
77
|
-
When using `riverbankcms push`, the status is synced based on your local content files.
|
|
78
|
-
|
|
79
|
-
### How Status Sync Works
|
|
80
|
-
|
|
81
|
-
Push compares the `status` field in your local files to the remote status:
|
|
82
|
-
- If local is "published" and remote is "draft" → push will **publish** the content
|
|
83
|
-
- If local is "draft" and remote is "published" → push will **unpublish** the content
|
|
84
|
-
- If statuses match → no status change
|
|
85
|
-
|
|
86
|
-
### Edit Local Files to Control Status
|
|
87
|
-
|
|
88
|
-
In your local content files, set the status field:
|
|
89
|
-
|
|
90
|
-
```json
|
|
91
|
-
{
|
|
92
|
-
"identifier": "my-post",
|
|
93
|
-
"status": "published",
|
|
94
|
-
"data": { "title": "My Post" }
|
|
95
|
-
}
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
Then push:
|
|
99
|
-
|
|
100
|
-
```bash
|
|
101
|
-
riverbankcms push
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
### Push Then Publish Selectively
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
# Push as drafts (default behavior)
|
|
108
|
-
riverbankcms push
|
|
109
|
-
|
|
110
|
-
# Then publish specific items
|
|
111
|
-
riverbankcms entry publish blog-post featured-post
|
|
112
|
-
riverbankcms page publish landing-page
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
## Unpublishing Content
|
|
116
|
-
|
|
117
|
-
### Unpublish an Entry
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
riverbankcms entry unpublish <content-type> <identifier>
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
**Example:**
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
riverbankcms entry unpublish blog-post old-post
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
### Unpublish a Page
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
riverbankcms page unpublish <identifier>
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
**Example:**
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
riverbankcms page unpublish outdated-landing
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
Unpublishing reverts content to draft status. The content is preserved but no longer visible on the live site.
|
|
142
|
-
|
|
143
|
-
## Safe Publishing Workflow
|
|
144
|
-
|
|
145
|
-
Follow these steps to safely publish content:
|
|
146
|
-
|
|
147
|
-
### 1. Pull Latest Content
|
|
148
|
-
|
|
149
|
-
Ensure you're working with the current state:
|
|
150
|
-
|
|
151
|
-
```bash
|
|
152
|
-
riverbankcms pull
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
### 2. Make and Verify Changes
|
|
156
|
-
|
|
157
|
-
```bash
|
|
158
|
-
# Make changes via CLI or edit local files
|
|
159
|
-
riverbankcms entry upsert blog-post my-post --data '...'
|
|
160
|
-
|
|
161
|
-
# Or edit content/entries/blog-post.json
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
### 3. Preview Changes
|
|
165
|
-
|
|
166
|
-
```bash
|
|
167
|
-
# Preview what would be pushed
|
|
168
|
-
riverbankcms push --dry-run
|
|
169
|
-
|
|
170
|
-
# Preview specific blocks visually
|
|
171
|
-
riverbankcms preview block.hero --data '...' --open
|
|
172
|
-
```
|
|
173
|
-
|
|
174
|
-
### 4. Push Changes (as Draft)
|
|
175
|
-
|
|
176
|
-
```bash
|
|
177
|
-
riverbankcms push
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
### 5. Verify in CMS Dashboard
|
|
181
|
-
|
|
182
|
-
- Log into the dashboard
|
|
183
|
-
- Review the content in preview mode
|
|
184
|
-
- Check formatting, images, links
|
|
185
|
-
|
|
186
|
-
### 6. Publish
|
|
187
|
-
|
|
188
|
-
```bash
|
|
189
|
-
riverbankcms entry publish blog-post my-post
|
|
190
|
-
# or
|
|
191
|
-
riverbankcms page publish my-page
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
### 7. Verify Live
|
|
195
|
-
|
|
196
|
-
- Check the live site
|
|
197
|
-
- Confirm content appears correctly
|
|
198
|
-
- Test any links or interactive elements
|
|
199
|
-
|
|
200
|
-
## Handling Unpublished Changes
|
|
201
|
-
|
|
202
|
-
When you edit published content, it stays published but gains pending changes.
|
|
203
|
-
|
|
204
|
-
### Check for Pending Changes
|
|
205
|
-
|
|
206
|
-
```bash
|
|
207
|
-
riverbankcms entry get blog-post my-post --json | grep hasUnpublishedChanges
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
- `hasUnpublishedChanges: true` - There are edits not yet live
|
|
211
|
-
- `hasUnpublishedChanges: false` - Live version is current
|
|
212
|
-
|
|
213
|
-
### Apply Pending Changes
|
|
214
|
-
|
|
215
|
-
Re-publish to make pending changes live:
|
|
216
|
-
|
|
217
|
-
```bash
|
|
218
|
-
riverbankcms entry publish blog-post my-post
|
|
219
|
-
```
|
|
220
|
-
|
|
221
|
-
### Discard Pending Changes
|
|
222
|
-
|
|
223
|
-
To revert to the published version, you would need to:
|
|
224
|
-
|
|
225
|
-
1. Pull the published content: `riverbankcms pull`
|
|
226
|
-
2. The local files will have the current (modified) state
|
|
227
|
-
3. Manually revert in the dashboard or re-push the original content
|
|
228
|
-
|
|
229
|
-
## Publishing to Production
|
|
230
|
-
|
|
231
|
-
For production environments, use `--env=remote`:
|
|
232
|
-
|
|
233
|
-
```bash
|
|
234
|
-
# Pull from production
|
|
235
|
-
riverbankcms pull --env=remote
|
|
236
|
-
|
|
237
|
-
# Preview production push
|
|
238
|
-
riverbankcms push --env=remote --dry-run
|
|
239
|
-
|
|
240
|
-
# Push to production (requires --yes for safety)
|
|
241
|
-
riverbankcms push --env=remote --yes
|
|
242
|
-
|
|
243
|
-
# Publish specific content on production
|
|
244
|
-
riverbankcms entry publish blog-post my-post --env=remote
|
|
245
|
-
riverbankcms page publish landing --env=remote
|
|
246
|
-
```
|
|
247
|
-
|
|
248
|
-
**Safety notes:**
|
|
249
|
-
- `--env=remote` targets production environment
|
|
250
|
-
- Push to remote requires `--yes` flag to prevent accidents
|
|
251
|
-
- Always preview with `--dry-run` first
|
|
252
|
-
|
|
253
|
-
## Publishing Checklist
|
|
254
|
-
|
|
255
|
-
Before publishing content, verify:
|
|
256
|
-
|
|
257
|
-
- [ ] Content is accurate and complete
|
|
258
|
-
- [ ] Images load correctly
|
|
259
|
-
- [ ] Links work (internal and external)
|
|
260
|
-
- [ ] SEO metadata is set (title, description)
|
|
261
|
-
- [ ] Mobile layout looks good (if applicable)
|
|
262
|
-
- [ ] No placeholder or test content remains
|
|
263
|
-
- [ ] Spell check / grammar check completed
|
|
264
|
-
|
|
265
|
-
## Troubleshooting
|
|
266
|
-
|
|
267
|
-
### Content not appearing on live site
|
|
268
|
-
|
|
269
|
-
1. Check if published: `riverbankcms entry get <type> <identifier>`
|
|
270
|
-
2. Look for `status: "published"`
|
|
271
|
-
3. If draft, publish it: `riverbankcms entry publish <type> <identifier>`
|
|
272
|
-
4. Check for caching - may need to wait or clear cache
|
|
273
|
-
|
|
274
|
-
### Published but showing old content
|
|
275
|
-
|
|
276
|
-
1. Check for pending changes: `hasUnpublishedChanges: true`
|
|
277
|
-
2. Re-publish to apply changes: `riverbankcms entry publish <type> <identifier>`
|
|
278
|
-
3. Clear any CDN or browser cache
|
|
279
|
-
|
|
280
|
-
### Can't publish - validation error
|
|
281
|
-
|
|
282
|
-
1. Check required fields are filled
|
|
283
|
-
2. Review the error message for specifics
|
|
284
|
-
3. Get full entry data: `riverbankcms entry get <type> <identifier> --json`
|
|
285
|
-
4. Fix missing/invalid fields and retry
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
# Remote Site, Key, and User Access Setup
|
|
2
|
-
|
|
3
|
-
This SDK project can sync content once it has a site ID, dashboard URL, and site-scoped management key. Creating the remote site, issuing keys, and granting dashboard user access are admin operations.
|
|
4
|
-
|
|
5
|
-
## Check the Plan
|
|
6
|
-
|
|
7
|
-
Run the setup planner before copying secrets or pushing to production:
|
|
8
|
-
|
|
9
|
-
```bash
|
|
10
|
-
riverbankcms setup plan --env=remote
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
For a machine-readable checklist:
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
riverbankcms setup plan --env=remote --json
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Authority Model
|
|
20
|
-
|
|
21
|
-
- Dashboard/admin users can create sites, issue site-scoped management keys, and grant dashboard access.
|
|
22
|
-
- Approved CMS repo scripts can do the same when run with service-role/admin credentials.
|
|
23
|
-
- SDK management keys can verify access and sync content/config for one site. They cannot create sites, issue new keys, or grant user access.
|
|
24
|
-
|
|
25
|
-
Do not put platform-admin, service-role, or user-session credentials in an SDK site repository.
|
|
26
|
-
|
|
27
|
-
## Remote Setup Lifecycle
|
|
28
|
-
|
|
29
|
-
1. Create or choose the remote site from the dashboard/admin surface.
|
|
30
|
-
2. Generate a management key for that site.
|
|
31
|
-
3. Grant the site owner or editor dashboard access from the dashboard/admin surface.
|
|
32
|
-
4. Add the remote SDK variables to `.env.local`:
|
|
33
|
-
|
|
34
|
-
```bash
|
|
35
|
-
RIVERBANK_REMOTE_SITE_ID=your-site-id
|
|
36
|
-
RIVERBANK_REMOTE_DASHBOARD_URL=https://your-dashboard.example.com
|
|
37
|
-
RIVERBANK_REMOTE_MGMT_API_KEY=bld_mgmt_sk_...
|
|
38
|
-
RIVERBANK_REMOTE_API_KEY=bld_live_sk_... # optional for public content fetching/deploy
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
5. Verify the SDK can reach the site:
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
riverbankcms env status --env=remote
|
|
45
|
-
riverbankcms pull --env=remote --dry-run
|
|
46
|
-
riverbankcms push --env=remote --dry-run
|
|
47
|
-
```
|
|
48
|
-
|
|
49
|
-
## Existing Sites and Users
|
|
50
|
-
|
|
51
|
-
For an existing remote site, copy its site ID and create a fresh site-scoped management key if the old one is missing or should be rotated. Associate existing users with the site through the dashboard/admin surface. If the user does not exist yet, invite or create them through that approved flow rather than through the SDK CLI.
|
|
@@ -1,381 +0,0 @@
|
|
|
1
|
-
# Workflow: Content Type Templates
|
|
2
|
-
|
|
3
|
-
Define default template blocks for content types that generate pages. Templates allow you to specify which blocks appear on entry pages and how entry data maps to block fields.
|
|
4
|
-
|
|
5
|
-
## When to Use Templates
|
|
6
|
-
|
|
7
|
-
**Use templates for:**
|
|
8
|
-
- Content types with `hasPages: true` that need consistent page layouts
|
|
9
|
-
- Automating block setup for new entries
|
|
10
|
-
- Binding entry data to block fields (e.g., headline from title)
|
|
11
|
-
|
|
12
|
-
**Templates vs manual blocks:**
|
|
13
|
-
- Templates define the *default* blocks for new entries
|
|
14
|
-
- Entry slots let editors add per-entry Page Content inside a shared template
|
|
15
|
-
- SDK config owns the template structure; entry slot blocks belong to each entry
|
|
16
|
-
|
|
17
|
-
## Prerequisites
|
|
18
|
-
|
|
19
|
-
- `riverbank.config.ts` with content types defined
|
|
20
|
-
- Understanding of which blocks to use
|
|
21
|
-
- Knowledge of content type fields for bindings
|
|
22
|
-
|
|
23
|
-
## Steps
|
|
24
|
-
|
|
25
|
-
### Step 1: Add Template to Content Type
|
|
26
|
-
|
|
27
|
-
Add the `template` property to your content type:
|
|
28
|
-
|
|
29
|
-
```typescript
|
|
30
|
-
import { defineConfig } from '@riverbankcms/sdk/config';
|
|
31
|
-
|
|
32
|
-
export default defineConfig({
|
|
33
|
-
siteId: '...',
|
|
34
|
-
|
|
35
|
-
content: {
|
|
36
|
-
contentTypes: [
|
|
37
|
-
{
|
|
38
|
-
key: 'post',
|
|
39
|
-
name: 'Blog Post',
|
|
40
|
-
hasPages: true,
|
|
41
|
-
routePattern: '/blog/{slug}',
|
|
42
|
-
fields: [
|
|
43
|
-
{ id: 'excerpt', type: 'text', label: 'Excerpt', multiline: true },
|
|
44
|
-
{ id: 'image', type: 'media', label: 'Featured Image', mediaKinds: ['image'] },
|
|
45
|
-
{ id: 'body', type: 'richText', label: 'Content', required: true },
|
|
46
|
-
],
|
|
47
|
-
template: {
|
|
48
|
-
blocks: [
|
|
49
|
-
{
|
|
50
|
-
identifier: 'hero',
|
|
51
|
-
kind: 'block.hero',
|
|
52
|
-
scope: 'entry',
|
|
53
|
-
bindings: {
|
|
54
|
-
headline: { source: 'meta', path: 'title' },
|
|
55
|
-
backgroundImage: { source: 'field', path: 'image' },
|
|
56
|
-
},
|
|
57
|
-
},
|
|
58
|
-
{
|
|
59
|
-
identifier: 'body',
|
|
60
|
-
kind: 'block.body-text',
|
|
61
|
-
scope: 'entry',
|
|
62
|
-
bindings: {
|
|
63
|
-
body: { source: 'field', path: 'body' },
|
|
64
|
-
},
|
|
65
|
-
},
|
|
66
|
-
],
|
|
67
|
-
},
|
|
68
|
-
},
|
|
69
|
-
],
|
|
70
|
-
},
|
|
71
|
-
});
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
### Step 2: Choose Block Scope
|
|
75
|
-
|
|
76
|
-
Each template block has a scope that determines how its content is sourced:
|
|
77
|
-
|
|
78
|
-
| Scope | Description |
|
|
79
|
-
|-------|-------------|
|
|
80
|
-
| `entry` | Block content is bound to entry data via bindings |
|
|
81
|
-
| `template` | Block content is static, defined in the template |
|
|
82
|
-
|
|
83
|
-
**Entry-scoped blocks** pull data from the content entry:
|
|
84
|
-
```typescript
|
|
85
|
-
{
|
|
86
|
-
identifier: 'hero',
|
|
87
|
-
kind: 'block.hero',
|
|
88
|
-
scope: 'entry',
|
|
89
|
-
bindings: {
|
|
90
|
-
headline: { source: 'meta', path: 'title' },
|
|
91
|
-
},
|
|
92
|
-
}
|
|
93
|
-
```
|
|
94
|
-
|
|
95
|
-
### Page Content Slots
|
|
96
|
-
|
|
97
|
-
Use `system.entry-slot` when every entry should keep the same outer template but needs its own editable Page Content area. The slot must be template-scoped, and it only renders blocks for entries whose current template declares that slot key.
|
|
98
|
-
|
|
99
|
-
```typescript
|
|
100
|
-
{
|
|
101
|
-
key: 'article',
|
|
102
|
-
name: 'Article',
|
|
103
|
-
hasPages: true,
|
|
104
|
-
routePattern: '/articles/{slug}',
|
|
105
|
-
fields: [
|
|
106
|
-
{ id: 'summary', type: 'text', label: 'Summary', multiline: true },
|
|
107
|
-
],
|
|
108
|
-
template: {
|
|
109
|
-
blocks: [
|
|
110
|
-
{
|
|
111
|
-
identifier: 'article-header',
|
|
112
|
-
kind: 'block.hero',
|
|
113
|
-
scope: 'entry',
|
|
114
|
-
bindings: {
|
|
115
|
-
headline: { source: 'meta', path: 'title' },
|
|
116
|
-
subheadline: { source: 'field', path: 'summary' },
|
|
117
|
-
},
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
identifier: 'main-content',
|
|
121
|
-
kind: 'system.entry-slot',
|
|
122
|
-
scope: 'template',
|
|
123
|
-
content: {
|
|
124
|
-
slotKey: 'main',
|
|
125
|
-
label: 'Page content',
|
|
126
|
-
allowedBlocks: ['block.body-text', 'block.rich-text', 'custom.article-callout'],
|
|
127
|
-
},
|
|
128
|
-
},
|
|
129
|
-
],
|
|
130
|
-
},
|
|
131
|
-
}
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Event templates use the same primitive. Keep native event data in event blocks, then place editorial content in the slot:
|
|
135
|
-
|
|
136
|
-
```typescript
|
|
137
|
-
{
|
|
138
|
-
key: 'event',
|
|
139
|
-
name: 'Event',
|
|
140
|
-
hasPages: true,
|
|
141
|
-
routePattern: '/events/{slug}',
|
|
142
|
-
template: {
|
|
143
|
-
blocks: [
|
|
144
|
-
{ identifier: 'event-hero', kind: 'block.hero', scope: 'entry' },
|
|
145
|
-
{ identifier: 'event-details', kind: 'block.event-details', scope: 'template' },
|
|
146
|
-
{
|
|
147
|
-
identifier: 'event-page-content',
|
|
148
|
-
kind: 'system.entry-slot',
|
|
149
|
-
scope: 'template',
|
|
150
|
-
content: {
|
|
151
|
-
slotKey: 'main',
|
|
152
|
-
label: 'Page content',
|
|
153
|
-
allowedBlocks: ['block.body-text', 'block.image-gallery', 'block.cta-full'],
|
|
154
|
-
},
|
|
155
|
-
},
|
|
156
|
-
{ identifier: 'registration', kind: 'block.event-registration', scope: 'template' },
|
|
157
|
-
],
|
|
158
|
-
},
|
|
159
|
-
}
|
|
160
|
-
```
|
|
161
|
-
|
|
162
|
-
For entry content files, use the `blocks` object keyed by slot:
|
|
163
|
-
|
|
164
|
-
```typescript
|
|
165
|
-
{
|
|
166
|
-
identifier: 'gentle-essay',
|
|
167
|
-
contentType: 'article',
|
|
168
|
-
slug: 'gentle-essay',
|
|
169
|
-
data: { summary: 'A short introduction.' },
|
|
170
|
-
blocks: {
|
|
171
|
-
main: [
|
|
172
|
-
{
|
|
173
|
-
identifier: 'intro',
|
|
174
|
-
kind: 'block.body-text',
|
|
175
|
-
content: { body: 'The editable article body starts here.' },
|
|
176
|
-
},
|
|
177
|
-
],
|
|
178
|
-
},
|
|
179
|
-
}
|
|
180
|
-
```
|
|
181
|
-
|
|
182
|
-
If `allowedBlocks` is omitted, the slot uses the curated Page Content palette. An empty array means the slot is locked and editors cannot add blocks. Template-only system blocks such as event registration are not allowed inside slots; keep those in the outer template.
|
|
183
|
-
|
|
184
|
-
Use entry fields for structured metadata that code needs to query or validate, such as retreat level, arrival time, teacher references, or event booking settings. Entry slots are for editorial page composition; extending built-in event metadata is a separate structured-data concern.
|
|
185
|
-
|
|
186
|
-
**Template-scoped blocks** have fixed content:
|
|
187
|
-
```typescript
|
|
188
|
-
{
|
|
189
|
-
identifier: 'related-posts',
|
|
190
|
-
kind: 'block.blog-listing',
|
|
191
|
-
scope: 'template',
|
|
192
|
-
content: {
|
|
193
|
-
heading: 'Related Posts',
|
|
194
|
-
layout: 'grid',
|
|
195
|
-
},
|
|
196
|
-
}
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
### Step 3: Configure Bindings
|
|
200
|
-
|
|
201
|
-
Bindings map block fields to data sources. Available binding sources:
|
|
202
|
-
|
|
203
|
-
| Source | Description | Example |
|
|
204
|
-
|--------|-------------|---------|
|
|
205
|
-
| `field` | Entry field value | `{ source: 'field', path: 'image' }` |
|
|
206
|
-
| `meta` | Entry metadata | `{ source: 'meta', path: 'title' }` |
|
|
207
|
-
| `literal` | Static value | `{ source: 'literal', value: 'Welcome!' }` |
|
|
208
|
-
| `transform` | Transformed field value | `{ source: 'transform', path: 'body', transform: 'richtext.firstParagraph' }` |
|
|
209
|
-
| `fallback` | Try sources in order | `{ source: 'fallback', sources: [...] }` |
|
|
210
|
-
|
|
211
|
-
**Valid meta paths:** `title`, `slug`, `publishedAt`, `createdAt`, `updatedAt`
|
|
212
|
-
|
|
213
|
-
### Binding Type Compatibility
|
|
214
|
-
|
|
215
|
-
Template bindings must connect compatible source and target field types. `push-config` validates this and will reject mismatches before they reach the dashboard.
|
|
216
|
-
|
|
217
|
-
Common examples:
|
|
218
|
-
|
|
219
|
-
- `richText` entry field -> `richText` block field
|
|
220
|
-
- `media` entry field -> `media` block field
|
|
221
|
-
- `reference` entry field -> `reference` block field with the same `referenceKind`
|
|
222
|
-
- `text` entry field -> `text` block field
|
|
223
|
-
|
|
224
|
-
Do not bind a `reference` source into a `text` target just because the renderer eventually wants an identifier string. Make the custom block field a `reference` too, then convert/normalize the rendered value in code if needed. This keeps the block schema honest and allows dashboard validation/editor UI to work correctly.
|
|
225
|
-
|
|
226
|
-
### Step 4: Push Configuration
|
|
227
|
-
|
|
228
|
-
Push the template to sync it with the CMS:
|
|
229
|
-
|
|
230
|
-
```bash
|
|
231
|
-
riverbankcms push-config
|
|
232
|
-
```
|
|
233
|
-
|
|
234
|
-
### Step 5: Verify Template
|
|
235
|
-
|
|
236
|
-
1. Create a new entry for the content type
|
|
237
|
-
2. The entry page should have the template blocks
|
|
238
|
-
3. Entry data should appear in bound block fields
|
|
239
|
-
|
|
240
|
-
## Complete Example
|
|
241
|
-
|
|
242
|
-
Blog with hero, body, and related posts:
|
|
243
|
-
|
|
244
|
-
```typescript
|
|
245
|
-
{
|
|
246
|
-
key: 'post',
|
|
247
|
-
name: 'Blog Post',
|
|
248
|
-
hasPages: true,
|
|
249
|
-
routePattern: '/blog/{slug}',
|
|
250
|
-
fields: [
|
|
251
|
-
{ id: 'excerpt', type: 'text', label: 'Excerpt', multiline: true },
|
|
252
|
-
{ id: 'image', type: 'media', label: 'Featured Image', mediaKinds: ['image'] },
|
|
253
|
-
{ id: 'body', type: 'richText', label: 'Content', required: true },
|
|
254
|
-
{ id: 'category', type: 'text', label: 'Category' },
|
|
255
|
-
],
|
|
256
|
-
template: {
|
|
257
|
-
blocks: [
|
|
258
|
-
// Hero bound to entry data
|
|
259
|
-
{
|
|
260
|
-
identifier: 'hero',
|
|
261
|
-
kind: 'block.hero',
|
|
262
|
-
scope: 'entry',
|
|
263
|
-
bindings: {
|
|
264
|
-
headline: { source: 'meta', path: 'title' },
|
|
265
|
-
subheadline: { source: 'field', path: 'excerpt' },
|
|
266
|
-
backgroundImage: { source: 'field', path: 'image' },
|
|
267
|
-
},
|
|
268
|
-
},
|
|
269
|
-
// Body text bound to entry content
|
|
270
|
-
{
|
|
271
|
-
identifier: 'body',
|
|
272
|
-
kind: 'block.body-text',
|
|
273
|
-
scope: 'entry',
|
|
274
|
-
bindings: {
|
|
275
|
-
body: { source: 'field', path: 'body' },
|
|
276
|
-
},
|
|
277
|
-
},
|
|
278
|
-
// Static related posts section
|
|
279
|
-
{
|
|
280
|
-
identifier: 'related',
|
|
281
|
-
kind: 'block.blog-listing',
|
|
282
|
-
scope: 'template',
|
|
283
|
-
content: {
|
|
284
|
-
heading: 'More Posts',
|
|
285
|
-
layout: 'grid',
|
|
286
|
-
limit: 3,
|
|
287
|
-
},
|
|
288
|
-
},
|
|
289
|
-
],
|
|
290
|
-
},
|
|
291
|
-
}
|
|
292
|
-
```
|
|
293
|
-
|
|
294
|
-
## Binding Patterns
|
|
295
|
-
|
|
296
|
-
### Using Fallback Bindings
|
|
297
|
-
|
|
298
|
-
Try multiple sources in order:
|
|
299
|
-
|
|
300
|
-
```typescript
|
|
301
|
-
{
|
|
302
|
-
identifier: 'hero',
|
|
303
|
-
kind: 'block.hero',
|
|
304
|
-
scope: 'entry',
|
|
305
|
-
bindings: {
|
|
306
|
-
backgroundImage: {
|
|
307
|
-
source: 'fallback',
|
|
308
|
-
sources: [
|
|
309
|
-
{ source: 'field', path: 'heroImage' },
|
|
310
|
-
{ source: 'field', path: 'image' },
|
|
311
|
-
{ source: 'literal', value: { src: '/default-hero.jpg' } },
|
|
312
|
-
],
|
|
313
|
-
},
|
|
314
|
-
},
|
|
315
|
-
}
|
|
316
|
-
```
|
|
317
|
-
|
|
318
|
-
### Mixing Scopes
|
|
319
|
-
|
|
320
|
-
Use entry bindings with literal defaults:
|
|
321
|
-
|
|
322
|
-
```typescript
|
|
323
|
-
{
|
|
324
|
-
identifier: 'hero',
|
|
325
|
-
kind: 'block.hero',
|
|
326
|
-
scope: 'entry',
|
|
327
|
-
bindings: {
|
|
328
|
-
headline: { source: 'meta', path: 'title' },
|
|
329
|
-
eyebrow: { source: 'literal', value: 'Blog Post' },
|
|
330
|
-
ctas: {
|
|
331
|
-
source: 'literal',
|
|
332
|
-
value: [{ label: 'Back to Blog', link: { kind: 'internal', path: '/blog' } }],
|
|
333
|
-
},
|
|
334
|
-
},
|
|
335
|
-
}
|
|
336
|
-
```
|
|
337
|
-
|
|
338
|
-
## First Sync Behavior
|
|
339
|
-
|
|
340
|
-
When you first push a template to a content type that has existing entries:
|
|
341
|
-
|
|
342
|
-
1. **Existing CMS blocks are replaced** with SDK-defined blocks
|
|
343
|
-
2. This only happens on the *first* SDK sync for that template
|
|
344
|
-
3. Subsequent syncs update SDK blocks by identifier
|
|
345
|
-
|
|
346
|
-
## Sync Rules
|
|
347
|
-
|
|
348
|
-
| Scenario | Behavior |
|
|
349
|
-
|----------|----------|
|
|
350
|
-
| First SDK sync | Replaces all existing CMS blocks |
|
|
351
|
-
| New block in config | Created with `sdk_identifier` |
|
|
352
|
-
| Block identifier matches | Block is updated |
|
|
353
|
-
| Block removed from config | SDK block is soft-deleted |
|
|
354
|
-
| Non-SDK blocks | Preserved (not deleted) |
|
|
355
|
-
|
|
356
|
-
## Troubleshooting
|
|
357
|
-
|
|
358
|
-
### Blocks not appearing on entry pages
|
|
359
|
-
|
|
360
|
-
- Run `riverbankcms push-config` to sync
|
|
361
|
-
- Verify content type has `hasPages: true`
|
|
362
|
-
- Check that `identifier` is unique within the template
|
|
363
|
-
|
|
364
|
-
### Binding not working
|
|
365
|
-
|
|
366
|
-
- Verify `path` matches a field ID in your content type
|
|
367
|
-
- For meta bindings, use valid paths: `title`, `slug`, `publishedAt`, `createdAt`, `updatedAt`
|
|
368
|
-
- Check block manifest supports the binding key
|
|
369
|
-
|
|
370
|
-
### Template changes not reflecting
|
|
371
|
-
|
|
372
|
-
- SDK always wins—changes are applied on every push
|
|
373
|
-
- Run `riverbankcms push-config` after config changes
|
|
374
|
-
- Clear any browser/CDN caches
|
|
375
|
-
|
|
376
|
-
### Validation errors on push
|
|
377
|
-
|
|
378
|
-
- Check binding keys match block field IDs
|
|
379
|
-
- Verify field paths exist in content type fields
|
|
380
|
-
- Ensure block kinds are valid system or custom blocks
|
|
381
|
-
- Ensure source and target field types are compatible, especially `reference` fields
|
|
File without changes
|