@riverbankcms/sdk 0.70.3 → 0.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_dts/api/src/contentTypes.d.ts +2 -1
- package/dist/_dts/block-form/src/client/index.d.ts +1 -1
- package/dist/_dts/block-form/src/fields/types.d.ts +14 -2
- package/dist/_dts/block-form/src/registry/schemas.d.ts +2 -0
- package/dist/_dts/block-form/src/widgets/MediaField/mediaFieldDefaults.d.ts +2 -2
- package/dist/_dts/block-form/src/widgets/MediaField/mediaFieldSchema.d.ts +2 -2
- package/dist/_dts/blocks/src/lib/media.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/cart.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/collection.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +1 -30727
- package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +11 -30827
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +3 -3
- package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +106 -1
- package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +1829 -149
- package/dist/_dts/blocks/src/system/defineBlock.d.ts +3 -3
- package/dist/_dts/blocks/src/system/fragments/library/card.d.ts +2 -30793
- package/dist/_dts/blocks/src/system/fragments/library/ctaRow.d.ts +2 -30727
- package/dist/_dts/blocks/src/system/fragments/library/feedbackCallout.d.ts +2 -30779
- package/dist/_dts/blocks/src/system/fragments/library/heroCtaRow.d.ts +33 -30743
- package/dist/_dts/blocks/src/system/fragments/library/sectionState.d.ts +2 -30770
- package/dist/_dts/blocks/src/system/fragments/types.d.ts +8 -7
- package/dist/_dts/blocks/src/system/manifest/derivedContent.d.ts +7 -5
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +1 -1
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +192 -3
- package/dist/_dts/blocks/src/system/runtime/nodes/file-download.d.ts +1 -1
- package/dist/_dts/content-model/src/content-types/schema.d.ts +7 -0
- package/dist/_dts/content-model/src/contentManifest.d.ts +4 -1
- package/dist/_dts/content-model/src/templates/bindingTypeCompatibility.d.ts +1 -1
- package/dist/_dts/core/src/index.d.ts +1 -1
- package/dist/_dts/core/src/planner.d.ts +4 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +53 -20
- package/dist/_dts/editor-blocks/src/index.d.ts +1 -1
- package/dist/_dts/editor-blocks/src/media/MediaField.d.ts +6 -5
- package/dist/_dts/media-core/src/videoSlotPolicy.d.ts +0 -1
- package/dist/_dts/media-editor/src/context.d.ts +4 -1
- package/dist/_dts/media-react/src/hooks/useApiMediaUploader.d.ts +8 -1
- package/dist/_dts/media-react/src/index.d.ts +1 -5
- package/dist/_dts/preview-next/src/client/sdk/SdkPreviewMode.d.ts +1 -0
- package/dist/_dts/preview-next/src/client/widgets/PreviewMediaField.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
- package/dist/_dts/sdk/src/config/field-definitions.d.ts +6 -2
- package/dist/_dts/sdk/src/config/typed-entries.d.ts +4 -2
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +2 -1
- package/dist/_dts/sdk/src/manifest/prompt/examples/cta.d.ts +5 -5
- package/dist/_dts/sdk/src/manifest/prompt/examples/features-grid.d.ts +2 -2
- package/dist/_dts/sdk/src/manifest/prompt/examples/hero.d.ts +2 -2
- package/dist/_dts/sdk/src/manifest/prompt/examples/pricing.d.ts +10 -10
- package/dist/_dts/sdk/src/manifest/prompt/examples/testimonials.d.ts +4 -4
- package/dist/_dts/sdk/src/manifest/validation/output-schema.d.ts +11 -1
- package/dist/_dts/sdk/src/preview-next/client/index.d.ts +19 -1
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/cli/index.mjs +395 -190
- package/dist/cli/init-docs/content/workflow-preview-mode.md +167 -0
- package/dist/client/client.mjs +243 -203
- package/dist/client/hooks.mjs +172 -121
- package/dist/client/rendering/client.mjs +148 -112
- package/dist/client/rendering/islands.mjs +80 -31
- package/dist/client/rendering.mjs +242 -202
- package/dist/preview-next/client/index.mjs +60 -10
- package/dist/preview-next/client/runtime.mjs +408 -1141
- package/dist/server/components.mjs +219 -171
- package/dist/server/config-template-validation.mjs +31 -1
- package/dist/server/config-validation.mjs +172 -121
- package/dist/server/config.mjs +172 -121
- package/dist/server/data.mjs +172 -121
- package/dist/server/index.mjs +1 -1
- package/dist/server/next.mjs +220 -172
- package/dist/server/page-converter.mjs +379 -185
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +219 -171
- package/dist/server/rendering.mjs +219 -171
- package/dist/server/routing.mjs +175 -124
- package/dist/server/server.mjs +173 -122
- package/package.json +6 -1
|
@@ -104,9 +104,13 @@ export type RichTextFieldDefinition = FieldBase & {
|
|
|
104
104
|
};
|
|
105
105
|
export type MediaFieldDefinition = FieldBase & {
|
|
106
106
|
type: 'media';
|
|
107
|
-
mediaKinds?: Array<'image' | 'video' | 'audio'
|
|
107
|
+
mediaKinds?: Array<'image' | 'video' | 'audio'>;
|
|
108
108
|
aspectRatio?: string;
|
|
109
109
|
};
|
|
110
|
+
export type FileFieldDefinition = FieldBase & {
|
|
111
|
+
type: 'file';
|
|
112
|
+
fileKinds?: Array<'document' | 'spreadsheet' | 'archive' | 'audio'>;
|
|
113
|
+
};
|
|
110
114
|
export type BooleanFieldDefinition = FieldBase & {
|
|
111
115
|
type: 'boolean';
|
|
112
116
|
};
|
|
@@ -221,5 +225,5 @@ export type EntryPickerFieldDefinition = FieldBase & {
|
|
|
221
225
|
/** Which entry field to store as the value: 'id' (UUID), 'identifier', or 'slug'. */
|
|
222
226
|
valueFrom?: 'id' | 'identifier' | 'slug';
|
|
223
227
|
};
|
|
224
|
-
export type FieldDefinition = TextFieldDefinition | RichTextFieldDefinition | MediaFieldDefinition | BooleanFieldDefinition | NumberFieldDefinition | DateFieldDefinition | TimeFieldDefinition | DateTimeFieldDefinition | SlugFieldDefinition | UrlFieldDefinition | LinkFieldDefinition | SelectFieldDefinition | ReferenceFieldDefinition | RepeaterFieldDefinition | GroupFieldDefinition | ModalFieldDefinition | TabGroupFieldDefinition | PresetOrCustomFieldDefinition | ContentTypeSelectFieldDefinition | EntryPickerFieldDefinition;
|
|
228
|
+
export type FieldDefinition = TextFieldDefinition | RichTextFieldDefinition | MediaFieldDefinition | FileFieldDefinition | BooleanFieldDefinition | NumberFieldDefinition | DateFieldDefinition | TimeFieldDefinition | DateTimeFieldDefinition | SlugFieldDefinition | UrlFieldDefinition | LinkFieldDefinition | SelectFieldDefinition | ReferenceFieldDefinition | RepeaterFieldDefinition | GroupFieldDefinition | ModalFieldDefinition | TabGroupFieldDefinition | PresetOrCustomFieldDefinition | ContentTypeSelectFieldDefinition | EntryPickerFieldDefinition;
|
|
225
229
|
export type { TipTapNode, Media, LinkValue };
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
* });
|
|
31
31
|
* ```
|
|
32
32
|
*/
|
|
33
|
-
import type { BooleanFieldDefinition, ContentTypeSelectFieldDefinition, DateFieldDefinition, DateTimeFieldDefinition, EntryPickerFieldDefinition, FieldDefinition, GroupFieldDefinition, LinkFieldDefinition, MediaFieldDefinition, ModalFieldDefinition, NumberFieldDefinition, PresetOrCustomFieldDefinition, ReferenceFieldDefinition, RepeaterFieldDefinition, RichTextFieldDefinition, SelectFieldDefinition, SlugFieldDefinition, TabGroupFieldDefinition, TextFieldDefinition, TimeFieldDefinition, UrlFieldDefinition } from './field-definitions';
|
|
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
34
|
import type { 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';
|
|
@@ -66,6 +66,8 @@ export type FieldValueType<F extends FieldDefinition> = F extends {
|
|
|
66
66
|
type: 'richText';
|
|
67
67
|
} ? TipTapNode : F extends {
|
|
68
68
|
type: 'media';
|
|
69
|
+
} ? Media | null : F extends {
|
|
70
|
+
type: 'file';
|
|
69
71
|
} ? Media | null : F extends {
|
|
70
72
|
type: 'link';
|
|
71
73
|
} ? LinkValue | null : F extends {
|
|
@@ -91,7 +93,7 @@ export type FieldValueType<F extends FieldDefinition> = F extends {
|
|
|
91
93
|
type: 'select';
|
|
92
94
|
} ? string : F extends {
|
|
93
95
|
type: 'entryPicker';
|
|
94
|
-
} ? 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 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 & {
|
|
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 & {
|
|
95
97
|
multiple: true;
|
|
96
98
|
} ? string[] : F extends SelectFieldDefinition ? string : F extends EntryPickerFieldDefinition ? string | null : F extends GroupFieldDefinition & {
|
|
97
99
|
schema: {
|
|
@@ -521,13 +521,14 @@ export type AudioPlayerContent = {
|
|
|
521
521
|
}) | null;
|
|
522
522
|
};
|
|
523
523
|
export type PublicDownloadMedia = Media & {
|
|
524
|
-
type: 'document' | 'spreadsheet' | 'archive' | 'audio'
|
|
524
|
+
type: 'document' | 'spreadsheet' | 'archive' | 'audio';
|
|
525
525
|
};
|
|
526
526
|
export type FileDownloadContent = {
|
|
527
527
|
file?: PublicDownloadMedia | null;
|
|
528
528
|
title?: string | null;
|
|
529
529
|
description?: string | null;
|
|
530
530
|
buttonLabel?: string | null;
|
|
531
|
+
buttonVariant?: 'primary' | 'secondary' | 'outline' | 'link' | null;
|
|
531
532
|
};
|
|
532
533
|
export type AppointmentBookingContent = {
|
|
533
534
|
formId: string;
|
|
@@ -29,7 +29,7 @@ export declare const ctaExample: {
|
|
|
29
29
|
label: string;
|
|
30
30
|
required: boolean;
|
|
31
31
|
multiline: boolean;
|
|
32
|
-
|
|
32
|
+
defaultValue?: undefined;
|
|
33
33
|
schema?: undefined;
|
|
34
34
|
} | {
|
|
35
35
|
id: string;
|
|
@@ -49,12 +49,12 @@ export declare const ctaExample: {
|
|
|
49
49
|
type: string;
|
|
50
50
|
label: string;
|
|
51
51
|
required: boolean;
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
multiline?: undefined;
|
|
53
|
+
defaultValue?: undefined;
|
|
54
54
|
})[];
|
|
55
55
|
};
|
|
56
|
-
|
|
57
|
-
|
|
56
|
+
multiline?: undefined;
|
|
57
|
+
defaultValue?: undefined;
|
|
58
58
|
})[];
|
|
59
59
|
layout: {
|
|
60
60
|
type: string;
|
|
@@ -27,8 +27,8 @@ export declare const heroExample: {
|
|
|
27
27
|
type: string;
|
|
28
28
|
label: string;
|
|
29
29
|
required: boolean;
|
|
30
|
-
|
|
31
|
-
|
|
30
|
+
multiline?: undefined;
|
|
31
|
+
defaultValue?: undefined;
|
|
32
32
|
})[];
|
|
33
33
|
layout: {
|
|
34
34
|
type: string;
|
|
@@ -34,7 +34,7 @@ export declare const pricingExample: {
|
|
|
34
34
|
label: string;
|
|
35
35
|
required: boolean;
|
|
36
36
|
multiline: boolean;
|
|
37
|
-
|
|
37
|
+
defaultValue?: undefined;
|
|
38
38
|
itemLabel?: undefined;
|
|
39
39
|
itemLabelSource?: undefined;
|
|
40
40
|
minItems?: undefined;
|
|
@@ -59,7 +59,7 @@ export declare const pricingExample: {
|
|
|
59
59
|
required: boolean;
|
|
60
60
|
multiline: boolean;
|
|
61
61
|
ui?: undefined;
|
|
62
|
-
|
|
62
|
+
defaultValue?: undefined;
|
|
63
63
|
itemLabel?: undefined;
|
|
64
64
|
minItems?: undefined;
|
|
65
65
|
allowConversion?: undefined;
|
|
@@ -73,7 +73,7 @@ export declare const pricingExample: {
|
|
|
73
73
|
ui: {
|
|
74
74
|
placeholder: string;
|
|
75
75
|
};
|
|
76
|
-
|
|
76
|
+
defaultValue?: undefined;
|
|
77
77
|
itemLabel?: undefined;
|
|
78
78
|
minItems?: undefined;
|
|
79
79
|
allowConversion?: undefined;
|
|
@@ -96,7 +96,7 @@ export declare const pricingExample: {
|
|
|
96
96
|
label: string;
|
|
97
97
|
required: boolean;
|
|
98
98
|
defaultValue: boolean;
|
|
99
|
-
|
|
99
|
+
multiline?: undefined;
|
|
100
100
|
ui?: undefined;
|
|
101
101
|
itemLabel?: undefined;
|
|
102
102
|
minItems?: undefined;
|
|
@@ -119,25 +119,25 @@ export declare const pricingExample: {
|
|
|
119
119
|
multiline: boolean;
|
|
120
120
|
}[];
|
|
121
121
|
};
|
|
122
|
-
|
|
122
|
+
multiline?: undefined;
|
|
123
123
|
ui?: undefined;
|
|
124
|
-
|
|
124
|
+
defaultValue?: undefined;
|
|
125
125
|
} | {
|
|
126
126
|
id: string;
|
|
127
127
|
type: string;
|
|
128
128
|
label: string;
|
|
129
129
|
required: boolean;
|
|
130
|
-
|
|
130
|
+
multiline?: undefined;
|
|
131
131
|
ui?: undefined;
|
|
132
|
-
|
|
132
|
+
defaultValue?: undefined;
|
|
133
133
|
itemLabel?: undefined;
|
|
134
134
|
minItems?: undefined;
|
|
135
135
|
allowConversion?: undefined;
|
|
136
136
|
schema?: undefined;
|
|
137
137
|
})[];
|
|
138
138
|
};
|
|
139
|
-
|
|
140
|
-
|
|
139
|
+
multiline?: undefined;
|
|
140
|
+
defaultValue?: undefined;
|
|
141
141
|
})[];
|
|
142
142
|
layout: {
|
|
143
143
|
type: string;
|
|
@@ -34,7 +34,7 @@ export declare const testimonialsExample: {
|
|
|
34
34
|
label: string;
|
|
35
35
|
required: boolean;
|
|
36
36
|
multiline: boolean;
|
|
37
|
-
|
|
37
|
+
defaultValue?: undefined;
|
|
38
38
|
itemLabel?: undefined;
|
|
39
39
|
itemLabelSource?: undefined;
|
|
40
40
|
minItems?: undefined;
|
|
@@ -65,11 +65,11 @@ export declare const testimonialsExample: {
|
|
|
65
65
|
label: string;
|
|
66
66
|
required: boolean;
|
|
67
67
|
mediaKinds: string[];
|
|
68
|
-
|
|
68
|
+
multiline?: undefined;
|
|
69
69
|
})[];
|
|
70
70
|
};
|
|
71
|
-
|
|
72
|
-
|
|
71
|
+
multiline?: undefined;
|
|
72
|
+
defaultValue?: undefined;
|
|
73
73
|
})[];
|
|
74
74
|
layout: {
|
|
75
75
|
type: string;
|
|
@@ -132,7 +132,7 @@ export declare function normalizeLlmMediaAtRule(atRule: z.infer<typeof llmMediaA
|
|
|
132
132
|
};
|
|
133
133
|
/**
|
|
134
134
|
* Combined field schema for LLM output.
|
|
135
|
-
* Supports: text, richText, media, boolean, link, select, number, group, repeater.
|
|
135
|
+
* Supports: text, richText, media, file, boolean, link, select, number, group, repeater.
|
|
136
136
|
*/
|
|
137
137
|
declare const llmFieldSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
138
138
|
id: z.ZodString;
|
|
@@ -161,6 +161,16 @@ declare const llmFieldSchema: z.ZodUnion<readonly [z.ZodObject<{
|
|
|
161
161
|
image: "image";
|
|
162
162
|
video: "video";
|
|
163
163
|
audio: "audio";
|
|
164
|
+
}>>>;
|
|
165
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
166
|
+
id: z.ZodString;
|
|
167
|
+
label: z.ZodString;
|
|
168
|
+
description: z.ZodNullable<z.ZodString>;
|
|
169
|
+
required: z.ZodBoolean;
|
|
170
|
+
defaultValue: z.ZodNullable<z.ZodUnion<readonly [z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>, z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean, z.ZodNull]>>]>>;
|
|
171
|
+
type: z.ZodLiteral<"file">;
|
|
172
|
+
fileKinds: z.ZodNullable<z.ZodArray<z.ZodEnum<{
|
|
173
|
+
audio: "audio";
|
|
164
174
|
document: "document";
|
|
165
175
|
spreadsheet: "spreadsheet";
|
|
166
176
|
archive: "archive";
|
|
@@ -1,2 +1,20 @@
|
|
|
1
|
+
import { type ReactNode } from "react";
|
|
2
|
+
import type { PreviewShellLayoutProps, PreviewShellProps, SdkPreviewModeProps } from "../../../../preview-next/src/client/index";
|
|
1
3
|
export type { SdkPreviewModeContent, SdkPreviewModeProps, PreviewShellProps, PreviewShellLayoutProps, } from '../../../../preview-next/src/client/index';
|
|
2
|
-
|
|
4
|
+
type PreviewQueryProviderProps = Readonly<{
|
|
5
|
+
children: ReactNode;
|
|
6
|
+
}>;
|
|
7
|
+
type PreviewLayoutProviderProps = Readonly<{
|
|
8
|
+
headerNode: ReactNode;
|
|
9
|
+
bannerNode?: ReactNode;
|
|
10
|
+
footerNode: ReactNode;
|
|
11
|
+
children: ReactNode;
|
|
12
|
+
}>;
|
|
13
|
+
export declare function SdkPreviewMode(props: SdkPreviewModeProps): import("react/jsx-runtime").JSX.Element;
|
|
14
|
+
export declare function PreviewQueryProvider({ children }: PreviewQueryProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
15
|
+
export declare function PreviewShell(props: PreviewShellProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
export declare function PreviewShellLayout(props: PreviewShellLayoutProps): import("react/jsx-runtime").JSX.Element;
|
|
17
|
+
export declare function PreviewLayoutProvider({ headerNode, bannerNode, footerNode, children, }: PreviewLayoutProviderProps): import("react/jsx-runtime").JSX.Element;
|
|
18
|
+
export declare function usePreviewLayout(): never;
|
|
19
|
+
export declare function useOptionalPreviewLayout(): never;
|
|
20
|
+
export declare function createPreviewQueryClient(): never;
|
|
@@ -438,7 +438,8 @@ export type ContentEntryListItem<TContent = Record<string, unknown>> = {
|
|
|
438
438
|
export type PublicContentTypeFieldMeta = {
|
|
439
439
|
id: string;
|
|
440
440
|
type: string;
|
|
441
|
-
mediaKinds: Array<"image" | "video" | "audio"
|
|
441
|
+
mediaKinds: Array<"image" | "video" | "audio"> | null;
|
|
442
|
+
fileKinds: Array<"document" | "spreadsheet" | "archive" | "audio"> | null;
|
|
442
443
|
};
|
|
443
444
|
export type PublicContentTypeMeta = {
|
|
444
445
|
key: string;
|