@riverbankcms/sdk 0.95.0 → 0.98.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 +47 -5
- package/dist/{PreviewEditorSidebar-6FQYKOSB.mjs → PreviewEditorSidebar-CG3SSJND.mjs} +3 -3
- package/dist/{PreviewEditorUI-NPO2XMFB.mjs → PreviewEditorUI-RHNGKAAU.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-OV5PNJBB.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +10 -10
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +35 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +246 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +109 -40
- package/dist/_dts/api/src/endpoints.d.ts +80 -0
- package/dist/_dts/api/src/index.d.ts +3 -2
- package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +10 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +2 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +2 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +7 -1
- package/dist/_dts/block-form/src/client/index.d.ts +1 -1
- package/dist/_dts/block-form/src/fields/types.d.ts +9 -1
- package/dist/_dts/block-form/src/registry/schemas.d.ts +4 -0
- package/dist/_dts/block-form/src/registry/widgets.d.ts +1 -0
- package/dist/_dts/block-form/src/widgets/InlineTextField/InlineTextField.d.ts +4 -0
- package/dist/_dts/block-form/src/widgets/InlineTextField/index.d.ts +3 -0
- package/dist/_dts/block-form/src/widgets/InlineTextField/inlineTextFieldDefaults.d.ts +2 -0
- package/dist/_dts/block-form/src/widgets/InlineTextField/inlineTextFieldSchema.d.ts +3 -0
- package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -1
- package/dist/_dts/blocks/src/bindings/index.d.ts +1 -0
- package/dist/_dts/blocks/src/bindings/types.d.ts +1 -4
- package/dist/_dts/blocks/src/client/site-chrome.d.ts +7 -0
- package/dist/_dts/blocks/src/contracts/index.d.ts +1 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +12 -12
- package/dist/_dts/blocks/src/index.d.ts +2 -0
- package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +2 -29631
- package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +2 -29614
- package/dist/_dts/blocks/src/system/blocks/cart.d.ts +2 -29634
- package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +2 -29627
- package/dist/_dts/blocks/src/system/blocks/collection.d.ts +2 -29585
- package/dist/_dts/blocks/src/system/blocks/events/shared/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/layout.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +2 -29677
- package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +2 -29655
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +220 -0
- package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +2 -29655
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +2 -29685
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -29761
- package/dist/_dts/blocks/src/system/blocks/weekly-slot-availability.d.ts +34 -0
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +1 -0
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/facets.d.ts +2 -2
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +4 -1
- package/dist/_dts/blocks/src/system/fragments/library/heroCopy.d.ts +9 -0
- package/dist/_dts/blocks/src/system/inlineText.d.ts +78 -0
- package/dist/_dts/blocks/src/system/manifest/derivedContent.d.ts +3 -1
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +15 -3
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +188 -7
- package/dist/_dts/blocks/src/system/node/builder.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/schema.d.ts +13 -0
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAppointmentCheckoutVerification.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableSlots.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +8 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +133 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/renderInlineText.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.controller.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.state.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.server.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.view.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +31 -1
- package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +5 -0
- package/dist/_dts/blocks/src/utils/date-formatting.d.ts +1 -1
- package/dist/_dts/content-editor/src/index.d.ts +1 -0
- package/dist/_dts/content-editor/src/primitives/PreviewInlineTextEditor.d.ts +9 -0
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +1 -1
- package/dist/_dts/content-model/src/templates/bindingTypeCompatibility.d.ts +1 -1
- package/dist/_dts/content-model/src/templates/defaults.d.ts +30 -0
- package/dist/_dts/content-model/src/templates/types.d.ts +3 -6
- package/dist/_dts/core/src/branded.d.ts +8 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +505 -2
- package/dist/_dts/editor/src/inline/FloatingToolbar.d.ts +18 -0
- package/dist/_dts/editor/src/inline/InlineTextEditor.d.ts +18 -1
- package/dist/_dts/editor/src/inline/InlineTextEditorStyles.d.ts +1 -0
- package/dist/_dts/editor/src/inline/domParse.d.ts +3 -0
- package/dist/_dts/editor/src/inline/presentation.d.ts +48 -0
- package/dist/_dts/editor/src/inline/selection.d.ts +12 -0
- package/dist/_dts/editor-blocks/src/widgets/index.d.ts +1 -0
- package/dist/_dts/editor-blocks/src/widgets/inline-text/InlineTextField.d.ts +3 -0
- package/dist/_dts/editor-blocks/src/widgets/inline-text/index.d.ts +1 -0
- package/dist/_dts/field-primitives/src/bindings/index.d.ts +8 -0
- package/dist/_dts/path-utils/src/index.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/commands/content.d.ts +56 -0
- package/dist/_dts/sdk/src/cli/commands/push/options.d.ts +4 -0
- package/dist/_dts/sdk/src/cli/commands/push/publishGuidance.d.ts +15 -0
- package/dist/_dts/sdk/src/cli/commands/push/scopes/commandBackedDatedOfferingScope.d.ts +4 -7
- package/dist/_dts/sdk/src/cli/commands/push/scopes/types.d.ts +5 -1
- package/dist/_dts/sdk/src/cli/commands/push/stale-resolution.d.ts +9 -3
- package/dist/_dts/sdk/src/cli/commands/push/verification.d.ts +56 -0
- package/dist/_dts/sdk/src/cli/commands/push/workflowPlan.d.ts +34 -0
- package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +2 -1
- package/dist/_dts/sdk/src/cli/commands/setup.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/config-loader.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/content/edit/format.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/content/edit/path.d.ts +14 -0
- package/dist/_dts/sdk/src/cli/content/edit/planner.d.ts +46 -0
- package/dist/_dts/sdk/src/cli/content/fs-utils.d.ts +4 -0
- package/dist/_dts/sdk/src/cli/content/metadataStore.d.ts +29 -0
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +16 -14
- package/dist/_dts/sdk/src/cli/content/writer.d.ts +8 -4
- package/dist/_dts/sdk/src/cli/env-scope.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/helpers.d.ts +6 -7
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergePush.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/merge-remote/mergeFieldChanges.d.ts +22 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageLocal.d.ts +3 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageMerge.d.ts +78 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergePlan.d.ts +36 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergePush.d.ts +23 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergeReport.d.ts +29 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageSnapshots.d.ts +48 -0
- package/dist/_dts/sdk/src/cli/push-config.d.ts +13 -2
- package/dist/_dts/sdk/src/cli/setup/setupPlan.d.ts +51 -0
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntime.d.ts +21 -0
- package/dist/_dts/sdk/src/cli/sync/diff.d.ts +3 -6
- package/dist/_dts/sdk/src/cli/sync/field-diff.d.ts +39 -0
- package/dist/_dts/sdk/src/cli/sync/index.d.ts +1 -0
- package/dist/_dts/sdk/src/client/runtimeCachePolicy.d.ts +1 -1
- package/dist/_dts/sdk/src/client/types.d.ts +18 -2
- package/dist/_dts/sdk/src/config/field-definitions.d.ts +8 -3
- package/dist/_dts/sdk/src/config/typed-entries.d.ts +5 -3
- 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/bindings.d.ts +4 -7
- package/dist/_dts/sdk/src/contracts/content.d.ts +18 -0
- package/dist/_dts/sdk/src/contracts/index.d.ts +1 -1
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +16 -2
- package/dist/_dts/sdk/src/next/route-outcome-proxy.d.ts +3 -3
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +174 -78
- package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/helpers/bindings.d.ts +4 -3
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +52 -1
- package/dist/_dts/sdk/src/rendering/hooks/usePage.d.ts +2 -2
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +18 -66
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/buttons/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/cards/types.d.ts +15 -15
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/inputs/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +42 -42
- package/dist/_dts/theme-core/src/palette/variants/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/schema.d.ts +44 -44
- package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +16 -16
- package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +4 -4
- package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
- package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +1 -1
- package/dist/{chunk-4A6NWO3X.mjs → chunk-6WDBXCPX.mjs} +73 -12
- package/dist/{chunk-VZBSD4AJ.mjs → chunk-DBRI3PQF.mjs} +2281 -322
- package/dist/{chunk-PJPFTVZG.mjs → chunk-H24OU7WG.mjs} +106 -4
- package/dist/{chunk-K2SJTZMX.mjs → chunk-PKDPQHB5.mjs} +2 -2
- package/dist/{chunk-VTPPVAOL.mjs → chunk-QPXE2OUZ.mjs} +1 -1
- package/dist/{chunk-7ED5UNHL.mjs → chunk-V2BYFSPW.mjs} +109 -0
- package/dist/cli/index.mjs +4182 -1165
- package/dist/cli/init-docs/content/cli-reference.md +72 -5
- package/dist/cli/init-docs/content/content-management.md +22 -0
- package/dist/cli/init-docs/content/getting-started.md +8 -0
- package/dist/cli/init-docs/content/workflow-agent-safe-sync.md +3 -1
- package/dist/cli/init-docs/content/workflow-preview-mode.md +6 -0
- package/dist/cli/init-docs/content/workflow-remote-setup.md +51 -0
- package/dist/client/{accordion-LGO4IO5U.mjs → accordion-Q2BDNL53.mjs} +1 -1
- package/dist/client/{bookingForm-MWLS4LGU.mjs → bookingForm-ZMP4P7EK.mjs} +16 -6
- package/dist/client/bookings.mjs +98 -18
- package/dist/client/{carousel-6AHNP5HA.mjs → carousel-LW3UXPWO.mjs} +1 -1
- package/dist/client/{cart-CIXGYAZB.mjs → cart-Z6D3KS6K.mjs} +5 -5
- package/dist/client/{checkout-OTX6O3DN.mjs → checkout-YMT2QJQM.mjs} +5 -5
- package/dist/client/{chunk-Y2PMKCXO.mjs → chunk-26ZBRXFR.mjs} +9 -3
- package/dist/client/{chunk-MYCXAKWP.mjs → chunk-DRRQ7QSL.mjs} +2 -2
- package/dist/client/{chunk-TREIML53.mjs → chunk-ET2MDQQT.mjs} +4 -4
- package/dist/client/{chunk-AVBQSUIS.mjs → chunk-HBQEAOG4.mjs} +1 -1
- package/dist/client/{chunk-INRIT6DP.mjs → chunk-IEOECM7U.mjs} +62 -43
- package/dist/client/{chunk-TNGL2WJF.mjs → chunk-KDP7ZRZV.mjs} +16 -0
- package/dist/client/{chunk-V67AT7ZW.mjs → chunk-R4XK3CKR.mjs} +18 -1
- package/dist/client/{chunk-R3NQTBWE.mjs → chunk-SK2BMD22.mjs} +2 -2
- package/dist/client/{chunk-HOP7MKAZ.mjs → chunk-XNTHVZ25.mjs} +1 -1
- package/dist/client/client.mjs +5172 -4177
- package/dist/client/{courseRegistration-2LU6C3JL.mjs → courseRegistration-DGKCMC77.mjs} +4 -4
- package/dist/client/{eventCalendar-OKUSISBZ.mjs → eventCalendar-74Z2NNFM.mjs} +7 -7
- package/dist/client/{eventCombined-CMF6CD4S.mjs → eventCombined-GK2ODOX2.mjs} +7 -7
- package/dist/client/{eventDetails-XYWH7WXI.mjs → eventDetails-MONAGT3N.mjs} +7 -7
- package/dist/client/{eventListing-EK5DJTAH.mjs → eventListing-SKGAO6PS.mjs} +7 -7
- package/dist/client/{eventRegistration-XDOSICV6.mjs → eventRegistration-6KISGXRD.mjs} +7 -7
- package/dist/client/{form-J6GOHKYG.mjs → form-FXPRTXHI.mjs} +2 -2
- package/dist/client/{headerSection-C5SYJTRW.mjs → headerSection-7NAN5WNB.mjs} +2 -2
- package/dist/client/hooks.mjs +1681 -1337
- package/dist/client/{locationMap-QSQIFVVT.mjs → locationMap-UERN74U4.mjs} +2 -2
- package/dist/client/{newsletterForm-47VXJRWK.mjs → newsletterForm-SGWXMJ7U.mjs} +2 -2
- package/dist/client/{productDetail-5U6ISCC2.mjs → productDetail-HN3HWZQZ.mjs} +5 -5
- package/dist/client/{productList-XDZUMR3P.mjs → productList-YT22Z5UR.mjs} +5 -5
- package/dist/client/rendering/client.mjs +4796 -4288
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +2120 -1106
- package/dist/client/{shop-ZSZKIY3R.mjs → shop-TKEDNWUS.mjs} +5 -5
- package/dist/preview-next/before-render.mjs +109 -0
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/middleware.mjs +109 -0
- package/dist/{sdk-runtime-PHNM7MRD.mjs → sdk-runtime-LWNYCQF2.mjs} +6 -6
- package/dist/server/components.mjs +3777 -2981
- package/dist/server/config-template-validation.mjs +35 -22
- package/dist/server/config-validation.mjs +1883 -1565
- package/dist/server/config.mjs +1883 -1565
- package/dist/server/data.mjs +1667 -1334
- package/dist/server/index.mjs +208 -9
- package/dist/server/next/middleware.mjs +2 -2
- package/dist/server/next.mjs +4077 -3060
- package/dist/server/page-converter.mjs +1481 -1279
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +3806 -2993
- package/dist/server/rendering.mjs +4000 -3060
- package/dist/server/routing.mjs +1737 -1357
- package/dist/server/server.mjs +2918 -2276
- package/dist/server/theme-bridge.mjs +43 -0
- package/dist/styles/index.css +44 -0
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-PBEFH5AL.mjs +0 -8
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
export type FieldPathSegment = Readonly<{
|
|
2
|
+
type: 'property';
|
|
3
|
+
key: string;
|
|
4
|
+
}> | Readonly<{
|
|
5
|
+
type: 'index';
|
|
6
|
+
index: number;
|
|
7
|
+
}> | Readonly<{
|
|
8
|
+
type: 'item';
|
|
9
|
+
key: string;
|
|
10
|
+
}>;
|
|
11
|
+
export type FieldDiffKind = 'added' | 'removed' | 'changed' | 'list_reordered';
|
|
12
|
+
export type FieldDiff = Readonly<{
|
|
13
|
+
kind: FieldDiffKind;
|
|
14
|
+
path: readonly FieldPathSegment[];
|
|
15
|
+
before: unknown;
|
|
16
|
+
after: unknown;
|
|
17
|
+
}>;
|
|
18
|
+
export type FieldChange = Readonly<{
|
|
19
|
+
kind: FieldDiffKind;
|
|
20
|
+
path: string;
|
|
21
|
+
before: unknown;
|
|
22
|
+
after: unknown;
|
|
23
|
+
redacted?: true;
|
|
24
|
+
}>;
|
|
25
|
+
export type FieldDiffIdentityInput = Readonly<{
|
|
26
|
+
path: readonly FieldPathSegment[];
|
|
27
|
+
item: unknown;
|
|
28
|
+
index: number;
|
|
29
|
+
}>;
|
|
30
|
+
export type FieldDiffIdentity = (input: FieldDiffIdentityInput) => string | null | undefined;
|
|
31
|
+
export type BuildFieldDiffOptions = Readonly<{
|
|
32
|
+
identifyArrayItem?: FieldDiffIdentity;
|
|
33
|
+
}>;
|
|
34
|
+
export declare function buildFieldDiffs(local: Record<string, unknown>, remote: Record<string, unknown>, options?: BuildFieldDiffOptions): FieldDiff[];
|
|
35
|
+
export declare function formatFieldPath(path: readonly FieldPathSegment[]): string;
|
|
36
|
+
export declare function fieldDiffToChange(diff: FieldDiff): FieldChange;
|
|
37
|
+
export declare function buildFieldChanges(local: Record<string, unknown>, remote: Record<string, unknown>, options?: BuildFieldDiffOptions): FieldChange[];
|
|
38
|
+
export declare function formatFieldDiffValue(value: unknown, maxChars?: number): string;
|
|
39
|
+
export declare function formatFieldChange(change: FieldChange): string;
|
|
@@ -4,6 +4,7 @@
|
|
|
4
4
|
* Provides content synchronization between local files and CMS.
|
|
5
5
|
*/
|
|
6
6
|
export { calculateDiff, calculatePullDiff, hasPendingChanges, formatDiffSummary, formatDiffDetail, buildJsonDiff, type ContentDiff, type EntryDiff, type PageDiff, type BlockDiff, type NavigationDiff, type DiffType, type DiffOptions, type JsonDiff, type JsonDiffMode, type JsonDiffChange, type JsonDiffChangeType, type JsonDiffOperation, type PullJsonDiff, type PullJsonDiffChange, type FieldChange, findChangedFieldsWithValues, formatValue, formatHumanDiff, } from './diff';
|
|
7
|
+
export { buildFieldDiffs, buildFieldChanges, formatFieldPath, formatFieldChange, formatFieldDiffValue, type FieldDiff, type FieldDiffKind, type FieldDiffIdentity, type FieldDiffIdentityInput, type FieldPathSegment, type BuildFieldDiffOptions, } from './field-diff';
|
|
7
8
|
export { executeResidualSettingsSyncPlan, createEmptySyncResult, formatSyncResult, type SyncOptions, type SyncResult, type ResidualSettingsDiff, type ResidualSettingsLocalContent, } from './executor';
|
|
8
9
|
export { addCounters, mergeManySyncResults, mergeSyncResults, } from './syncResultAggregation';
|
|
9
10
|
export { extractMediaPaths, buildStorageUrl, downloadMedia, syncMedia, type MediaSyncResult, type MediaSyncSummary, type MediaSyncOptions, type MediaUploadClient, } from './media';
|
|
@@ -34,7 +34,7 @@ export type ResolveRuntimeCachePolicyInput = Readonly<{
|
|
|
34
34
|
}>;
|
|
35
35
|
export declare function resolveRuntimeCachePolicy(input: ResolveRuntimeCachePolicyInput): RuntimeCachePolicy;
|
|
36
36
|
export type GetSiteRuntimeCacheParams = Readonly<Pick<GetSiteParams, 'id' | 'slug' | 'domain' | 'currentPath' | 'force'>>;
|
|
37
|
-
export type GetContentByPathRuntimeCacheParams = Readonly<Pick<GetPageParams, 'siteId' | 'path' | 'preview'>>;
|
|
37
|
+
export type GetContentByPathRuntimeCacheParams = Readonly<Pick<GetPageParams, 'siteId' | 'path' | 'preview' | 'contentContract'>>;
|
|
38
38
|
type KeyDeriverInputByEndpoint = Readonly<{
|
|
39
39
|
getSite: GetSiteRuntimeCacheParams;
|
|
40
40
|
getContentByPath: GetContentByPathRuntimeCacheParams;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { CheckRedirectResponse, EntriesResponse, EntryResponse, PageResponse, PublicBookingServicesResponse, PublicCoursesResponse, PublicFormResponse, PublicFormsResponse, PublicProductsResponse, PublicTeamMembersResponse, PublicMembershipsResponse, PublicPassesResponse, PublicEventDetailsResponse, PublicEventsResponse, ResolveEntrySubrouteResponse, ResolveEventOccurrenceResponse, RouteOutcomeResponse, RoutableContentResponse, SiteResponse, SitemapRoutesResponse, PublicProductCategorySelector } from '../public-api/contracts';
|
|
1
|
+
import type { CheckRedirectResponse, EntriesResponse, EntryResponse, PageResponse, PublicBookingServicesResponse, PublicWeeklySlotAvailabilityResponse, PublicCoursesResponse, PublicFormResponse, PublicFormsResponse, PublicProductsResponse, PublicTeamMembersResponse, PublicMembershipsResponse, PublicPassesResponse, PublicEventDetailsResponse, PublicEventsResponse, ResolveEntrySubrouteResponse, ResolveEventOccurrenceResponse, RouteDecisionResponse, RouteOutcomeResponse, RoutableContentResponse, SiteResponse, SitemapRoutesResponse, PublicProductCategorySelector } from '../public-api/contracts';
|
|
2
2
|
import type { PublishedRuntimeCacheAdapter, PublishedRuntimeCacheAdapterErrorKind } from './runtimeCachePolicy';
|
|
3
|
-
export type { CheckRedirectResponse, EntriesResponse, EntryResponse, PageResponse, PublicBookingServicesResponse, PublicCoursesResponse, PublicEventsResponse, PublicFormResponse, PublicFormsResponse, PublicProductsResponse, PublicTeamMembersResponse, PublicMembershipsResponse, PublicPassesResponse, PublicEventDetailsResponse, ResolveEntrySubrouteResponse, ResolveEventOccurrenceResponse, RouteOutcomeResponse, RoutableContentResponse, SiteResponse, SitemapRoutesResponse, } from '../public-api/contracts';
|
|
3
|
+
export type { CheckRedirectResponse, EntriesResponse, EntryResponse, PageResponse, PublicBookingServicesResponse, PublicWeeklySlotAvailabilityResponse, PublicCoursesResponse, PublicEventsResponse, PublicFormResponse, PublicFormsResponse, PublicProductsResponse, PublicTeamMembersResponse, PublicMembershipsResponse, PublicPassesResponse, PublicEventDetailsResponse, ResolveEntrySubrouteResponse, ResolveEventOccurrenceResponse, RouteDecisionResponse, RouteOutcomeResponse, RoutableContentResponse, SiteResponse, SitemapRoutesResponse, } from '../public-api/contracts';
|
|
4
4
|
/**
|
|
5
5
|
* Pagination metadata returned when `includeMeta: true`
|
|
6
6
|
*/
|
|
@@ -48,6 +48,7 @@ export type GetPageParams = {
|
|
|
48
48
|
siteId: string;
|
|
49
49
|
path: string;
|
|
50
50
|
preview?: boolean;
|
|
51
|
+
contentContract?: 'compat' | 'native';
|
|
51
52
|
} & SdkMethodOptions;
|
|
52
53
|
/**
|
|
53
54
|
* Base parameters for getEntries - shared across all overloads
|
|
@@ -456,6 +457,16 @@ export interface RiverbankClient {
|
|
|
456
457
|
siteId: string;
|
|
457
458
|
ids?: string;
|
|
458
459
|
} & SdkMethodOptions): Promise<PublicBookingServicesResponse>;
|
|
460
|
+
/**
|
|
461
|
+
* Fetch public weekly appointment slot availability for a service.
|
|
462
|
+
*/
|
|
463
|
+
getPublicWeeklySlotAvailability(params: {
|
|
464
|
+
siteId: string;
|
|
465
|
+
serviceId: string;
|
|
466
|
+
resourceId?: string;
|
|
467
|
+
horizonWeeks?: number;
|
|
468
|
+
timezone?: string;
|
|
469
|
+
} & SdkMethodOptions): Promise<PublicWeeklySlotAvailabilityResponse>;
|
|
459
470
|
/**
|
|
460
471
|
* List public events for a site (optionally time-filtered)
|
|
461
472
|
*/
|
|
@@ -609,6 +620,11 @@ export interface RiverbankClient {
|
|
|
609
620
|
path: string;
|
|
610
621
|
preview?: boolean;
|
|
611
622
|
} & SdkMethodOptions): Promise<RouteOutcomeResponse>;
|
|
623
|
+
resolveRouteDecision(params: {
|
|
624
|
+
siteId: string;
|
|
625
|
+
path: string;
|
|
626
|
+
preview?: boolean;
|
|
627
|
+
} & SdkMethodOptions): Promise<RouteDecisionResponse>;
|
|
612
628
|
/**
|
|
613
629
|
* Get all published routes for a site.
|
|
614
630
|
* Useful for static site generation (SSG) to enumerate all pages.
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* and executed by the blocks runtime without leaking blocks types into the SDK
|
|
7
7
|
* public `.d.ts`.
|
|
8
8
|
*/
|
|
9
|
-
import type { LinkValue, Media, TipTapNode } from '../contracts';
|
|
9
|
+
import type { InlineText, LinkValue, Media, TipTapNode } from '../contracts';
|
|
10
10
|
export type VisibilityLevel = 'admin' | 'designer' | 'author';
|
|
11
11
|
export type ReferenceValueFrom = 'id' | 'identifier' | 'slug';
|
|
12
12
|
export declare const SDK_ICON_PICKER_PRESETS: readonly ["cta", "feature"];
|
|
@@ -114,6 +114,11 @@ export type TextFieldDefinition = FieldBase & {
|
|
|
114
114
|
export type RichTextFieldDefinition = FieldBase & {
|
|
115
115
|
type: 'richText';
|
|
116
116
|
};
|
|
117
|
+
export type InlineTextFieldDefinition = FieldBase & {
|
|
118
|
+
type: 'inlineText';
|
|
119
|
+
maxLength?: number;
|
|
120
|
+
plainTextField?: string;
|
|
121
|
+
};
|
|
117
122
|
export type MediaFieldDefinition = FieldBase & {
|
|
118
123
|
type: 'media';
|
|
119
124
|
mediaKinds?: Array<'image' | 'video' | 'audio'>;
|
|
@@ -237,5 +242,5 @@ export type EntryPickerFieldDefinition = FieldBase & {
|
|
|
237
242
|
/** Which entry field to store as the value: 'id' (UUID), 'identifier', or 'slug'. */
|
|
238
243
|
valueFrom?: 'id' | 'identifier' | 'slug';
|
|
239
244
|
};
|
|
240
|
-
export type FieldDefinition = TextFieldDefinition | RichTextFieldDefinition | MediaFieldDefinition | FileFieldDefinition | BooleanFieldDefinition | NumberFieldDefinition | DateFieldDefinition | TimeFieldDefinition | DateTimeFieldDefinition | SlugFieldDefinition | UrlFieldDefinition | LinkFieldDefinition | SelectFieldDefinition | ReferenceFieldDefinition | RepeaterFieldDefinition | GroupFieldDefinition | ModalFieldDefinition | TabGroupFieldDefinition | PresetOrCustomFieldDefinition | ContentTypeSelectFieldDefinition | EntryPickerFieldDefinition;
|
|
241
|
-
export type { TipTapNode, Media, LinkValue };
|
|
245
|
+
export type FieldDefinition = TextFieldDefinition | RichTextFieldDefinition | InlineTextFieldDefinition | MediaFieldDefinition | FileFieldDefinition | BooleanFieldDefinition | NumberFieldDefinition | DateFieldDefinition | TimeFieldDefinition | DateTimeFieldDefinition | SlugFieldDefinition | UrlFieldDefinition | LinkFieldDefinition | SelectFieldDefinition | ReferenceFieldDefinition | RepeaterFieldDefinition | GroupFieldDefinition | ModalFieldDefinition | TabGroupFieldDefinition | PresetOrCustomFieldDefinition | ContentTypeSelectFieldDefinition | EntryPickerFieldDefinition;
|
|
246
|
+
export type { InlineText, TipTapNode, Media, LinkValue };
|
|
@@ -30,8 +30,8 @@
|
|
|
30
30
|
* });
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
|
-
import type { BooleanFieldDefinition, ContentTypeSelectFieldDefinition, DateFieldDefinition, DateTimeFieldDefinition, EntryPickerFieldDefinition, FileFieldDefinition, FieldDefinition, GroupFieldDefinition, LinkFieldDefinition, MediaFieldDefinition, ModalFieldDefinition, NumberFieldDefinition, PresetOrCustomFieldDefinition, ReferenceFieldDefinition, RepeaterFieldDefinition, RichTextFieldDefinition, SelectFieldDefinition, SlugFieldDefinition, TabGroupFieldDefinition, TextFieldDefinition, TimeFieldDefinition, UrlFieldDefinition } from './field-definitions';
|
|
34
|
-
import type { LinkValue, Media, TipTapNode } from '../contracts';
|
|
33
|
+
import type { BooleanFieldDefinition, ContentTypeSelectFieldDefinition, DateFieldDefinition, DateTimeFieldDefinition, EntryPickerFieldDefinition, FileFieldDefinition, FieldDefinition, GroupFieldDefinition, InlineTextFieldDefinition, LinkFieldDefinition, MediaFieldDefinition, ModalFieldDefinition, NumberFieldDefinition, PresetOrCustomFieldDefinition, ReferenceFieldDefinition, RepeaterFieldDefinition, RichTextFieldDefinition, SelectFieldDefinition, SlugFieldDefinition, TabGroupFieldDefinition, TextFieldDefinition, TimeFieldDefinition, UrlFieldDefinition } from './field-definitions';
|
|
34
|
+
import type { InlineText, LinkValue, Media, TipTapNode } from '../contracts';
|
|
35
35
|
import type { ContentTypeConfig, EntryConfig } from './content-types';
|
|
36
36
|
export type { TipTapNode, Media, LinkValue, InternalLinkValue, ExternalLinkValue, CustomLinkValue, } from '../contracts';
|
|
37
37
|
/**
|
|
@@ -65,6 +65,8 @@ export type FieldValueType<F extends FieldDefinition> = F extends {
|
|
|
65
65
|
} ? number : F extends {
|
|
66
66
|
type: 'richText';
|
|
67
67
|
} ? TipTapNode : F extends {
|
|
68
|
+
type: 'inlineText';
|
|
69
|
+
} ? InlineText : F extends {
|
|
68
70
|
type: 'media';
|
|
69
71
|
} ? Media | null : F extends {
|
|
70
72
|
type: 'file';
|
|
@@ -93,7 +95,7 @@ export type FieldValueType<F extends FieldDefinition> = F extends {
|
|
|
93
95
|
type: 'select';
|
|
94
96
|
} ? string : F extends {
|
|
95
97
|
type: 'entryPicker';
|
|
96
|
-
} ? string | null : F extends TextFieldDefinition ? string : F extends BooleanFieldDefinition ? boolean : F extends NumberFieldDefinition ? number : F extends RichTextFieldDefinition ? TipTapNode : F extends MediaFieldDefinition ? Media | null : F extends FileFieldDefinition ? Media | null : F extends LinkFieldDefinition ? LinkValue | null : F extends DateFieldDefinition ? string : F extends TimeFieldDefinition ? string : F extends DateTimeFieldDefinition ? string : F extends SlugFieldDefinition ? string : F extends UrlFieldDefinition ? string : F extends ReferenceFieldDefinition ? string : F extends PresetOrCustomFieldDefinition ? string : F extends ContentTypeSelectFieldDefinition ? string : F extends SelectFieldDefinition & {
|
|
98
|
+
} ? string | null : F extends TextFieldDefinition ? string : F extends BooleanFieldDefinition ? boolean : F extends NumberFieldDefinition ? number : F extends RichTextFieldDefinition ? TipTapNode : F extends InlineTextFieldDefinition ? InlineText : F extends MediaFieldDefinition ? Media | null : F extends FileFieldDefinition ? Media | null : F extends LinkFieldDefinition ? LinkValue | null : F extends DateFieldDefinition ? string : F extends TimeFieldDefinition ? string : F extends DateTimeFieldDefinition ? string : F extends SlugFieldDefinition ? string : F extends UrlFieldDefinition ? string : F extends ReferenceFieldDefinition ? string : F extends PresetOrCustomFieldDefinition ? string : F extends ContentTypeSelectFieldDefinition ? string : F extends SelectFieldDefinition & {
|
|
97
99
|
multiple: true;
|
|
98
100
|
} ? string[] : F extends SelectFieldDefinition ? string : F extends EntryPickerFieldDefinition ? string | null : F extends GroupFieldDefinition & {
|
|
99
101
|
schema: {
|
|
@@ -45,7 +45,7 @@ export type BlockCategory = 'marketing' | 'content' | 'blog' | 'media' | 'layout
|
|
|
45
45
|
*
|
|
46
46
|
* Re-exported from `@riverbankcms/blocks` (single source of truth).
|
|
47
47
|
*/
|
|
48
|
-
export declare const SUPPORTED_LOADER_ENDPOINTS: readonly ["listPublishedEntries", "getPublishedEntryPreview", "listPublicEvents", "getPublicEventDetails", "listPublicCourses", "listPublicRouteCandidates", "listPublicTeamMembers", "listPublicProducts", "listPublicPasses", "listPublicMemberships", "getPublicFormById", "getPublicBookingServices"];
|
|
48
|
+
export declare const SUPPORTED_LOADER_ENDPOINTS: readonly ["listPublishedEntries", "getPublishedEntryPreview", "listPublicEvents", "getPublicEventDetails", "listPublicCourses", "listPublicRouteCandidates", "listPublicTeamMembers", "listPublicProducts", "listPublicPasses", "listPublicMemberships", "getPublicFormById", "getPublicBookingServices", "getPublicWeeklySlotAvailability"];
|
|
49
49
|
export type SdkLoaderEndpoint = (typeof SUPPORTED_LOADER_ENDPOINTS)[number];
|
|
50
50
|
export type LoaderParamBinding = {
|
|
51
51
|
$bind: {
|
|
@@ -135,6 +135,7 @@ export declare const siteStyleConfigSchema: z.ZodOptional<z.ZodObject<{
|
|
|
135
135
|
export declare const sdkLoaderEndpointSchema: z.ZodEnum<{
|
|
136
136
|
getPublicFormById: "getPublicFormById";
|
|
137
137
|
getPublicBookingServices: "getPublicBookingServices";
|
|
138
|
+
getPublicWeeklySlotAvailability: "getPublicWeeklySlotAvailability";
|
|
138
139
|
listPublicEvents: "listPublicEvents";
|
|
139
140
|
listPublicPasses: "listPublicPasses";
|
|
140
141
|
listPublicCourses: "listPublicCourses";
|
|
@@ -223,6 +224,7 @@ export declare const sdkConfigLoaderSchema: z.ZodObject<{
|
|
|
223
224
|
endpoint: z.ZodEnum<{
|
|
224
225
|
getPublicFormById: "getPublicFormById";
|
|
225
226
|
getPublicBookingServices: "getPublicBookingServices";
|
|
227
|
+
getPublicWeeklySlotAvailability: "getPublicWeeklySlotAvailability";
|
|
226
228
|
listPublicEvents: "listPublicEvents";
|
|
227
229
|
listPublicPasses: "listPublicPasses";
|
|
228
230
|
listPublicCourses: "listPublicCourses";
|
|
@@ -287,6 +289,7 @@ export declare const sdkDataLoadersSchema: z.ZodOptional<z.ZodRecord<z.ZodString
|
|
|
287
289
|
endpoint: z.ZodEnum<{
|
|
288
290
|
getPublicFormById: "getPublicFormById";
|
|
289
291
|
getPublicBookingServices: "getPublicBookingServices";
|
|
292
|
+
getPublicWeeklySlotAvailability: "getPublicWeeklySlotAvailability";
|
|
290
293
|
listPublicEvents: "listPublicEvents";
|
|
291
294
|
listPublicPasses: "listPublicPasses";
|
|
292
295
|
listPublicCourses: "listPublicCourses";
|
|
@@ -6,19 +6,16 @@
|
|
|
6
6
|
*
|
|
7
7
|
* Runtime implementations are delegated to `@riverbankcms/blocks/bindings`.
|
|
8
8
|
*/
|
|
9
|
+
import { type BindingTransformName as SharedBindingTransformName } from '../../../field-primitives/src/bindings/index';
|
|
9
10
|
export type BindingSource = 'field' | 'meta' | 'literal' | 'transform' | 'fallback';
|
|
10
|
-
/**
|
|
11
|
-
* Keep in sync with:
|
|
12
|
-
* - @riverbankcms/blocks `TRANSFORMS`
|
|
13
|
-
* - @riverbankcms/content-model `TEMPLATE_BINDING_TRANSFORMS`
|
|
14
|
-
*/
|
|
15
11
|
export declare const BINDING_TRANSFORMS: {
|
|
16
12
|
readonly RICHTEXT_FIRST_PARAGRAPH: "richtext.firstParagraph";
|
|
17
13
|
readonly DATE_FORMAT_SHORT: "date.formatShort";
|
|
18
14
|
readonly DATE_FORMAT_LONG: "date.formatLong";
|
|
15
|
+
readonly TEXT_INLINE_TEXT: "text.inlineText";
|
|
19
16
|
};
|
|
20
|
-
export type BindingTransformName =
|
|
21
|
-
export declare const BINDING_TRANSFORM_VALUES: [
|
|
17
|
+
export type BindingTransformName = SharedBindingTransformName;
|
|
18
|
+
export declare const BINDING_TRANSFORM_VALUES: [SharedBindingTransformName, ...SharedBindingTransformName[]];
|
|
22
19
|
export declare const BINDING_TRANSFORM_LIST: string;
|
|
23
20
|
export declare function describeInvalidBindingTransform(transform: string): string;
|
|
24
21
|
export type BindingDescriptor = {
|
|
@@ -17,6 +17,24 @@ export type TipTapNode = {
|
|
|
17
17
|
attrs?: Record<string, unknown>;
|
|
18
18
|
marks?: TipTapMark[];
|
|
19
19
|
};
|
|
20
|
+
export type InlineTextAccentTone = 'accent' | 'brand' | 'contrast';
|
|
21
|
+
export type InlineTextHighlightTone = 'soft' | 'accent' | 'brand';
|
|
22
|
+
export type InlineTextMark = Readonly<{
|
|
23
|
+
kind: 'strong';
|
|
24
|
+
}> | Readonly<{
|
|
25
|
+
kind: 'emphasis';
|
|
26
|
+
}> | Readonly<{
|
|
27
|
+
kind: 'accent';
|
|
28
|
+
tone: InlineTextAccentTone;
|
|
29
|
+
}> | Readonly<{
|
|
30
|
+
kind: 'highlight';
|
|
31
|
+
tone: InlineTextHighlightTone;
|
|
32
|
+
}>;
|
|
33
|
+
export type InlineTextRun = Readonly<{
|
|
34
|
+
text: string;
|
|
35
|
+
marks?: readonly InlineTextMark[];
|
|
36
|
+
}>;
|
|
37
|
+
export type InlineText = readonly InlineTextRun[];
|
|
20
38
|
export type InternalRouteOnlyLinkValue = {
|
|
21
39
|
kind: 'internal';
|
|
22
40
|
routeId: string;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export type { TipTapNode, TipTapMark, Media, LinkValue, InternalRouteOnlyLinkValue, InternalResolvedLinkValue, InternalLinkValue, ExternalLinkValue, CustomLinkValue, PageLinkValue, EntryLinkValue, RichTextPrimitiveProps, RichTextVariant, } from './content';
|
|
1
|
+
export type { TipTapNode, TipTapMark, InlineText, InlineTextAccentTone, InlineTextHighlightTone, InlineTextMark, InlineTextRun, Media, LinkValue, InternalRouteOnlyLinkValue, InternalResolvedLinkValue, InternalLinkValue, ExternalLinkValue, CustomLinkValue, PageLinkValue, EntryLinkValue, RichTextPrimitiveProps, RichTextVariant, } from './content';
|
|
2
2
|
export type { AppointmentBookingContent, BlogListingContent, BlogPostContent, BodyTextAlignment, BodyTextContent, ButtonVariant, CalendarTabViews, CartContent, CardStylesContent, CheckoutContent, CollectionContent, ColumnsContent, ColumnOption, ContainerStylesContent, CourseDetailsContent, CourseRegistrationContent, CtaFullContent, DisplayMode, EmbedContent, EventCalendarContent, EventDetailsContent, EventLayout, EventListingContent, EventRegistrationContent, EventSpotlightContent, FaqContent, FaqItem, FilterAutoShow, FormBlockContent, GiftingContent, HeroContent, HeroCta, HeroCtaInput, HeroMedia, ImageColSize, ImageGalleryContent, LocationMapContent, LayoutAlign, LayoutWidth, MediaTextAlignment, MediaTextAspectRatio, MediaTextContent, MediaTextImagePosition, NewsletterSignupContent, NewsletterSignupPreset, ProductDetailContent, ProductListContent, SectionStylesContent, SemanticIconId, SemanticSpacing, ShopContent, SingleButtonContent, SiteFooterContent, SiteHeaderContent, StackContentAlignment, StackImagePosition, SystemBlockContentByFullKind, SystemBlockContentByKind, SystemBlockContentFor, SystemBlockShortKind, TeamMembersContent, TestimonialEntryContent, TestimonialsBlockContent, ThumbnailPadding, ThumbnailShape, VideoGridContent, WeekStart, BlockIconValue, FeatureCardIconTreatment, } from './system-block-content';
|
|
3
3
|
export type { PageOutline, BlockOutline, RouteMap, RouteMapEntry, OccurrenceContextData, EntrySubrouteContextData, } from './page';
|
|
4
4
|
export type { Theme, ThemeTokens } from './theme';
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* These are SDK-owned copies for SDK consumers so override typing does not
|
|
5
5
|
* require importing internal blocks package types.
|
|
6
6
|
*/
|
|
7
|
-
import type { LinkValue, Media, TipTapNode } from './content';
|
|
7
|
+
import type { InlineText, LinkValue, Media, TipTapNode } from './content';
|
|
8
8
|
import type { Brand, EventCategoryId, VenueId } from '../../../core/src/index';
|
|
9
9
|
type UnknownRecord = Record<string, unknown>;
|
|
10
10
|
type ImageMedia = Omit<Media, 'type'> & {
|
|
@@ -386,7 +386,8 @@ export type HeroCta = {
|
|
|
386
386
|
export type HeroCtaInput = HeroCta;
|
|
387
387
|
export type HeroContent = {
|
|
388
388
|
eyebrow?: string;
|
|
389
|
-
headline
|
|
389
|
+
headline?: string;
|
|
390
|
+
headlineInline: InlineText;
|
|
390
391
|
subheadline?: string;
|
|
391
392
|
contentAlignment?: 'left' | 'center' | 'right';
|
|
392
393
|
verticalAlignment?: 'top' | 'center' | 'bottom';
|
|
@@ -641,6 +642,18 @@ export type AppointmentBookingContent = {
|
|
|
641
642
|
description?: unknown;
|
|
642
643
|
_sectionStyles?: SectionStylesContent;
|
|
643
644
|
};
|
|
645
|
+
export type WeeklySlotAvailabilityContent = {
|
|
646
|
+
serviceId: string;
|
|
647
|
+
resourceId?: string | null;
|
|
648
|
+
horizonWeeks?: string | null;
|
|
649
|
+
timezone?: string | null;
|
|
650
|
+
heading?: string | null;
|
|
651
|
+
description?: unknown;
|
|
652
|
+
emptyMessage?: string | null;
|
|
653
|
+
ctaText?: string | null;
|
|
654
|
+
ctaUrl?: string | null;
|
|
655
|
+
_sectionStyles?: SectionStylesContent;
|
|
656
|
+
};
|
|
644
657
|
export type BlogPostContent = {
|
|
645
658
|
title?: string | null;
|
|
646
659
|
postSlug?: string | null;
|
|
@@ -707,6 +720,7 @@ export type SystemBlockContentByFullKind = {
|
|
|
707
720
|
'block.form': FormBlockContent;
|
|
708
721
|
'block.contact-newsletter': ContactNewsletterContent;
|
|
709
722
|
'block.appointment-booking': AppointmentBookingContent;
|
|
723
|
+
'block.weekly-slot-availability': WeeklySlotAvailabilityContent;
|
|
710
724
|
'block.event-registration': EventRegistrationContent;
|
|
711
725
|
'block.event-details': EventDetailsContent;
|
|
712
726
|
'block.course-registration': CourseRegistrationContent;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { NextResponse, type NextRequest } from 'next/server';
|
|
2
2
|
import type { RiverbankClient } from '../client/types';
|
|
3
|
-
import type {
|
|
3
|
+
import type { RouteDecisionResponse, RedirectHttpStatus } from '../public-api/contracts';
|
|
4
4
|
export type RouteOutcomeRedirectFailureContext = Readonly<{
|
|
5
5
|
siteId: string;
|
|
6
6
|
path: string;
|
|
7
7
|
preview: boolean;
|
|
8
8
|
}>;
|
|
9
9
|
export type HandleRouteOutcomeRedirectOptions = Readonly<{
|
|
10
|
-
client: Pick<RiverbankClient, '
|
|
10
|
+
client: Pick<RiverbankClient, 'resolveRouteDecision'>;
|
|
11
11
|
siteId: string;
|
|
12
12
|
onFailure?: (error: unknown, context: RouteOutcomeRedirectFailureContext) => void;
|
|
13
13
|
}>;
|
|
@@ -18,5 +18,5 @@ export type RouteOutcomeRedirectPlan = Readonly<{
|
|
|
18
18
|
destination: string;
|
|
19
19
|
status: RedirectHttpStatus;
|
|
20
20
|
}>;
|
|
21
|
-
export declare function planRouteOutcomeRedirect(outcome:
|
|
21
|
+
export declare function planRouteOutcomeRedirect(outcome: RouteDecisionResponse): RouteOutcomeRedirectPlan;
|
|
22
22
|
export declare function handleRouteOutcomeRedirect(request: NextRequest, options: HandleRouteOutcomeRedirectOptions): Promise<NextResponse | null>;
|