@riverbankcms/sdk 0.70.2 → 0.70.4
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 +29 -0
- 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/widgets/PreviewMediaField.d.ts +2 -1
- package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/commands/delete.d.ts +3 -0
- package/dist/_dts/sdk/src/cli/commands/style.d.ts +18 -0
- package/dist/_dts/sdk/src/cli/helpers.d.ts +8 -33
- package/dist/_dts/sdk/src/cli/site-commands/oneOffCommands.d.ts +81 -0
- package/dist/_dts/sdk/src/components.d.ts +2 -1
- 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/next/types.d.ts +4 -2
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +2 -1
- package/dist/_dts/sdk/src/rendering/index.d.ts +2 -1
- package/dist/_dts/sdk/src/rendering/overrideResolution.d.ts +10 -0
- package/dist/_dts/sdk/src/rendering/overrides.d.ts +12 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/cli/index.mjs +1072 -289
- package/dist/cli/init-docs/content/workflow-preview-mode.md +167 -0
- package/dist/client/client.mjs +443 -403
- 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 +25531 -25481
- package/dist/preview-next/client/runtime.mjs +394 -1136
- package/dist/server/components.mjs +229 -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 +301 -174
- 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 +229 -171
- package/dist/server/routing.mjs +175 -124
- package/dist/server/server.mjs +173 -122
- package/package.json +5 -3
package/dist/server/data.mjs
CHANGED
|
@@ -6596,6 +6596,28 @@ function resolveRepeaterGridColumnFieldId(options) {
|
|
|
6596
6596
|
|
|
6597
6597
|
// ../blocks/src/system/manifest/schema.ts
|
|
6598
6598
|
var visibilityLevels = ["admin", "designer", "author"];
|
|
6599
|
+
var MEDIA_KINDS = [
|
|
6600
|
+
"image",
|
|
6601
|
+
"video",
|
|
6602
|
+
"audio",
|
|
6603
|
+
"document",
|
|
6604
|
+
"spreadsheet",
|
|
6605
|
+
"archive"
|
|
6606
|
+
];
|
|
6607
|
+
var DISPLAY_MEDIA_KINDS = [
|
|
6608
|
+
"image",
|
|
6609
|
+
"video",
|
|
6610
|
+
"audio"
|
|
6611
|
+
];
|
|
6612
|
+
var PUBLIC_FILE_FIELD_KINDS = [
|
|
6613
|
+
"document",
|
|
6614
|
+
"spreadsheet",
|
|
6615
|
+
"archive",
|
|
6616
|
+
"audio"
|
|
6617
|
+
];
|
|
6618
|
+
function isDisplayMediaKind(kind) {
|
|
6619
|
+
return DISPLAY_MEDIA_KINDS.includes(kind);
|
|
6620
|
+
}
|
|
6599
6621
|
var siteOptionSources = [
|
|
6600
6622
|
"eventCategories",
|
|
6601
6623
|
"venues",
|
|
@@ -6759,11 +6781,19 @@ var richTextFieldSchema = baseFieldSchema.extend({
|
|
|
6759
6781
|
});
|
|
6760
6782
|
var mediaFieldSchema = baseFieldSchema.extend({
|
|
6761
6783
|
type: z4.literal("media"),
|
|
6762
|
-
|
|
6763
|
-
|
|
6764
|
-
|
|
6784
|
+
// Keep full MEDIA_KINDS parse compatibility for pre-file-field manifests.
|
|
6785
|
+
// New authoring surfaces should use `file.fileKinds` for document/archive
|
|
6786
|
+
// style assets, but old saved schemas must not fail to open.
|
|
6787
|
+
mediaKinds: z4.array(z4.enum(MEDIA_KINDS)).default(["image"]).transform((kinds) => {
|
|
6788
|
+
const displayKinds = kinds.filter(isDisplayMediaKind);
|
|
6789
|
+
return displayKinds.length > 0 ? displayKinds : ["image"];
|
|
6790
|
+
}),
|
|
6765
6791
|
aspectRatio: z4.string().optional()
|
|
6766
6792
|
});
|
|
6793
|
+
var fileFieldSchema = baseFieldSchema.extend({
|
|
6794
|
+
type: z4.literal("file"),
|
|
6795
|
+
fileKinds: z4.array(z4.enum(PUBLIC_FILE_FIELD_KINDS)).default([...PUBLIC_FILE_FIELD_KINDS])
|
|
6796
|
+
});
|
|
6767
6797
|
var booleanFieldSchema = baseFieldSchema.extend({
|
|
6768
6798
|
type: z4.literal("boolean")
|
|
6769
6799
|
});
|
|
@@ -7069,6 +7099,7 @@ function getFieldSchemaInternal() {
|
|
|
7069
7099
|
textFieldSchema,
|
|
7070
7100
|
richTextFieldSchema,
|
|
7071
7101
|
mediaFieldSchema,
|
|
7102
|
+
fileFieldSchema,
|
|
7072
7103
|
booleanFieldSchema,
|
|
7073
7104
|
numberFieldSchema,
|
|
7074
7105
|
dateFieldSchema,
|
|
@@ -14205,13 +14236,18 @@ var fragmentDataSchema = z27.object({
|
|
|
14205
14236
|
loader: dataLoaderSchema.optional()
|
|
14206
14237
|
});
|
|
14207
14238
|
var fragmentConfigSchema = z27.object({
|
|
14208
|
-
id: z27.string().min(1, "Fragment id is required").regex(
|
|
14239
|
+
id: z27.string().min(1, "Fragment id is required").regex(
|
|
14240
|
+
FRAGMENT_ID_PATTERN,
|
|
14241
|
+
"Fragment id must be alphanumeric with optional . _ - separators"
|
|
14242
|
+
),
|
|
14209
14243
|
title: z27.string().optional(),
|
|
14210
14244
|
description: z27.string().optional(),
|
|
14211
14245
|
category: z27.enum(["content", "media", "interactive", "layout"]).optional(),
|
|
14212
14246
|
icon: z27.string().optional(),
|
|
14213
14247
|
fields: fieldSchema.array().default([]),
|
|
14214
|
-
layout: z27.union([NodeSchema, NodeSchema.array()]).transform(
|
|
14248
|
+
layout: z27.union([NodeSchema, NodeSchema.array()]).transform(
|
|
14249
|
+
(value) => Array.isArray(value) ? value : [value]
|
|
14250
|
+
),
|
|
14215
14251
|
data: fragmentDataSchema.optional()
|
|
14216
14252
|
});
|
|
14217
14253
|
var FragmentConfigError = class extends Error {
|
|
@@ -14233,13 +14269,19 @@ function defineFragment(config) {
|
|
|
14233
14269
|
function scopeFragmentFields(fragment, scope) {
|
|
14234
14270
|
const normalizedScope = scope.trim();
|
|
14235
14271
|
if (!normalizedScope) {
|
|
14236
|
-
return fragment.fields.map(
|
|
14272
|
+
return fragment.fields.map(
|
|
14273
|
+
(field) => cloneFieldDefinition2(field)
|
|
14274
|
+
);
|
|
14237
14275
|
}
|
|
14238
|
-
return fragment.fields.map(
|
|
14276
|
+
return fragment.fields.map(
|
|
14277
|
+
(field) => prefixFieldId(field, normalizedScope)
|
|
14278
|
+
);
|
|
14239
14279
|
}
|
|
14240
14280
|
function scopeFragmentLayout(fragment, scope) {
|
|
14241
14281
|
const normalizedScope = scope.trim();
|
|
14242
|
-
return fragment.layout.map(
|
|
14282
|
+
return fragment.layout.map(
|
|
14283
|
+
(node) => cloneAndScopeNode(node, normalizedScope)
|
|
14284
|
+
);
|
|
14243
14285
|
}
|
|
14244
14286
|
function validateFieldDefinitions(fields3, fragmentId) {
|
|
14245
14287
|
const seen = /* @__PURE__ */ new Set();
|
|
@@ -14321,7 +14363,9 @@ function cloneAndScopeNode(node, scope) {
|
|
|
14321
14363
|
...node
|
|
14322
14364
|
};
|
|
14323
14365
|
if (node.children) {
|
|
14324
|
-
cloned.children = node.children.map(
|
|
14366
|
+
cloned.children = node.children.map(
|
|
14367
|
+
(child) => cloneAndScopeNode(child, scope)
|
|
14368
|
+
);
|
|
14325
14369
|
}
|
|
14326
14370
|
if (node.props) {
|
|
14327
14371
|
cloned.props = scopePropBindings(node.props, scope);
|
|
@@ -14347,7 +14391,9 @@ function scopeBinding(binding, scope) {
|
|
|
14347
14391
|
const cloned = {
|
|
14348
14392
|
...binding,
|
|
14349
14393
|
transforms: binding.transforms?.map(
|
|
14350
|
-
(step) => ({
|
|
14394
|
+
(step) => ({
|
|
14395
|
+
...step
|
|
14396
|
+
})
|
|
14351
14397
|
) ?? []
|
|
14352
14398
|
};
|
|
14353
14399
|
cloned.from = scopeContentPath(binding.from, scope);
|
|
@@ -14391,7 +14437,9 @@ function scopePropValue(value, scope) {
|
|
|
14391
14437
|
};
|
|
14392
14438
|
}
|
|
14393
14439
|
const result = {};
|
|
14394
|
-
for (const [key, entry] of Object.entries(
|
|
14440
|
+
for (const [key, entry] of Object.entries(
|
|
14441
|
+
value
|
|
14442
|
+
)) {
|
|
14395
14443
|
result[key] = scopePropValue(entry, scope);
|
|
14396
14444
|
}
|
|
14397
14445
|
return result;
|
|
@@ -14840,28 +14888,29 @@ var ctaRowFragment = defineFragment({
|
|
|
14840
14888
|
});
|
|
14841
14889
|
|
|
14842
14890
|
// ../blocks/src/system/fragments/library/heroCtaRow.ts
|
|
14891
|
+
var heroCtaFields = [
|
|
14892
|
+
createCtasRepeater({
|
|
14893
|
+
label: "Calls to action",
|
|
14894
|
+
itemLabel: "CTA",
|
|
14895
|
+
maxItems: 3,
|
|
14896
|
+
button: {
|
|
14897
|
+
variants: [
|
|
14898
|
+
{ value: "default", label: "Default" },
|
|
14899
|
+
{ value: "primary", label: "Primary" },
|
|
14900
|
+
{ value: "secondary", label: "Secondary" },
|
|
14901
|
+
{ value: "outline", label: "Outline" }
|
|
14902
|
+
],
|
|
14903
|
+
defaultVariant: "default",
|
|
14904
|
+
includeSize: true,
|
|
14905
|
+
defaultSize: "lg"
|
|
14906
|
+
}
|
|
14907
|
+
})
|
|
14908
|
+
];
|
|
14843
14909
|
var heroCtaRowFragment = defineFragment({
|
|
14844
14910
|
id: "heroCtaRow",
|
|
14845
14911
|
title: "Hero CTAs",
|
|
14846
14912
|
description: "Repeatable hero calls to action rendered inline.",
|
|
14847
|
-
fields:
|
|
14848
|
-
createCtasRepeater({
|
|
14849
|
-
label: "Calls to action",
|
|
14850
|
-
itemLabel: "CTA",
|
|
14851
|
-
maxItems: 3,
|
|
14852
|
-
button: {
|
|
14853
|
-
variants: [
|
|
14854
|
-
{ value: "default", label: "Default" },
|
|
14855
|
-
{ value: "primary", label: "Primary" },
|
|
14856
|
-
{ value: "secondary", label: "Secondary" },
|
|
14857
|
-
{ value: "outline", label: "Outline" }
|
|
14858
|
-
],
|
|
14859
|
-
defaultVariant: "default",
|
|
14860
|
-
includeSize: true,
|
|
14861
|
-
defaultSize: "lg"
|
|
14862
|
-
}
|
|
14863
|
-
})
|
|
14864
|
-
],
|
|
14913
|
+
fields: heroCtaFields,
|
|
14865
14914
|
layout: [
|
|
14866
14915
|
ctaRow({
|
|
14867
14916
|
collectionPath: "content.ctas",
|
|
@@ -20721,8 +20770,7 @@ var PUBLIC_DOWNLOAD_MEDIA_TYPES = [
|
|
|
20721
20770
|
"document",
|
|
20722
20771
|
"spreadsheet",
|
|
20723
20772
|
"archive",
|
|
20724
|
-
"audio"
|
|
20725
|
-
"video"
|
|
20773
|
+
"audio"
|
|
20726
20774
|
];
|
|
20727
20775
|
var hotspotSchema2 = z38.object({
|
|
20728
20776
|
x: z38.number().min(0).max(1),
|
|
@@ -22297,104 +22345,107 @@ var courseDetailsBlockDefinition = {
|
|
|
22297
22345
|
};
|
|
22298
22346
|
|
|
22299
22347
|
// ../blocks/src/system/blocks/events/event-spotlight.ts
|
|
22300
|
-
var
|
|
22348
|
+
var eventSpotlightFields = [
|
|
22349
|
+
...sectionHeaderFields("Upcoming Events"),
|
|
22350
|
+
{
|
|
22351
|
+
id: "maxEvents",
|
|
22352
|
+
type: "select",
|
|
22353
|
+
label: "Events to display",
|
|
22354
|
+
description: "Number of events to show",
|
|
22355
|
+
required: false,
|
|
22356
|
+
multiple: false,
|
|
22357
|
+
defaultValue: "3",
|
|
22358
|
+
options: [
|
|
22359
|
+
{ value: "1", label: "1 event" },
|
|
22360
|
+
{ value: "2", label: "2 events" },
|
|
22361
|
+
{ value: "3", label: "3 events" },
|
|
22362
|
+
{ value: "4", label: "4 events" },
|
|
22363
|
+
{ value: "5", label: "5 events" },
|
|
22364
|
+
{ value: "6", label: "6 events" }
|
|
22365
|
+
],
|
|
22366
|
+
ui: { intent: "display" }
|
|
22367
|
+
},
|
|
22368
|
+
{
|
|
22369
|
+
id: "ctaLabel",
|
|
22370
|
+
type: "text",
|
|
22371
|
+
label: "Section button text",
|
|
22372
|
+
description: "Optional button shown below the spotlight cards",
|
|
22373
|
+
required: false,
|
|
22374
|
+
multiline: false,
|
|
22375
|
+
maxLength: 40,
|
|
22376
|
+
ui: { intent: "content" }
|
|
22377
|
+
},
|
|
22378
|
+
{
|
|
22379
|
+
id: "ctaUrl",
|
|
22380
|
+
type: "link",
|
|
22381
|
+
label: "Section button destination",
|
|
22382
|
+
required: false,
|
|
22383
|
+
ui: { intent: "display" }
|
|
22384
|
+
},
|
|
22385
|
+
layoutField,
|
|
22386
|
+
columnsField(["2", "3"]),
|
|
22387
|
+
...cardStylingFields,
|
|
22388
|
+
...eventDisplayFields,
|
|
22389
|
+
emptyStateField,
|
|
22390
|
+
sectionStylesField({
|
|
22391
|
+
id: "_sectionStyles",
|
|
22392
|
+
label: "Section styles"
|
|
22393
|
+
})
|
|
22394
|
+
];
|
|
22395
|
+
var eventSpotlightLayout = [
|
|
22396
|
+
styledSection({
|
|
22397
|
+
children: sectionContainer([
|
|
22398
|
+
// Optional heading
|
|
22399
|
+
text(
|
|
22400
|
+
{ as: "h2" },
|
|
22401
|
+
bind("content.heading"),
|
|
22402
|
+
when("content.heading")
|
|
22403
|
+
),
|
|
22404
|
+
// Optional description
|
|
22405
|
+
richText(
|
|
22406
|
+
{ className: "rb-prose rb-max-w-none" },
|
|
22407
|
+
bind("content.description"),
|
|
22408
|
+
when("content.description")
|
|
22409
|
+
),
|
|
22410
|
+
// Event spotlight component
|
|
22411
|
+
el("event-spotlight", {
|
|
22412
|
+
events: { $bind: { from: "data.events" } },
|
|
22413
|
+
layout: { $bind: { from: "content.layout", fallback: "grid" } },
|
|
22414
|
+
columns: { $bind: { from: "content.columns", fallback: "3" } },
|
|
22415
|
+
cardVariant: { $bind: { from: "content.cardVariant", fallback: "default" } },
|
|
22416
|
+
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
22417
|
+
buttonText: { $bind: { from: "content.buttonText", fallback: "View event" } },
|
|
22418
|
+
ctaLabel: { $bind: { from: "content.ctaLabel" } },
|
|
22419
|
+
ctaUrl: { $bind: { from: "content.ctaUrl", transforms: [{ id: "links.resolve" }] } },
|
|
22420
|
+
showVenue: { $bind: { from: "content.showVenue" } },
|
|
22421
|
+
showMap: { $bind: { from: "content.showMap" } },
|
|
22422
|
+
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
22423
|
+
emptyMessage: { $bind: { from: "content.emptyMessage" } }
|
|
22424
|
+
})
|
|
22425
|
+
], {
|
|
22426
|
+
gap: "lg"
|
|
22427
|
+
}),
|
|
22428
|
+
// sectionContainer (rb-container) already provides horizontal padding
|
|
22429
|
+
baseClass: "",
|
|
22430
|
+
spacing: "comfortable"
|
|
22431
|
+
})
|
|
22432
|
+
];
|
|
22433
|
+
var eventSpotlightConfig = {
|
|
22301
22434
|
id: "block.event-spotlight",
|
|
22302
22435
|
version: "1.1.0",
|
|
22303
22436
|
title: "Event Spotlight",
|
|
22304
22437
|
titleSource: "heading",
|
|
22305
22438
|
description: "Feature a few upcoming events on your homepage",
|
|
22306
22439
|
skipSectionStyles: true,
|
|
22307
|
-
additionalFields:
|
|
22308
|
-
...sectionHeaderFields("Upcoming Events"),
|
|
22309
|
-
{
|
|
22310
|
-
id: "maxEvents",
|
|
22311
|
-
type: "select",
|
|
22312
|
-
label: "Events to display",
|
|
22313
|
-
description: "Number of events to show",
|
|
22314
|
-
required: false,
|
|
22315
|
-
multiple: false,
|
|
22316
|
-
defaultValue: "3",
|
|
22317
|
-
options: [
|
|
22318
|
-
{ value: "1", label: "1 event" },
|
|
22319
|
-
{ value: "2", label: "2 events" },
|
|
22320
|
-
{ value: "3", label: "3 events" },
|
|
22321
|
-
{ value: "4", label: "4 events" },
|
|
22322
|
-
{ value: "5", label: "5 events" },
|
|
22323
|
-
{ value: "6", label: "6 events" }
|
|
22324
|
-
],
|
|
22325
|
-
ui: { intent: "display" }
|
|
22326
|
-
},
|
|
22327
|
-
{
|
|
22328
|
-
id: "ctaLabel",
|
|
22329
|
-
type: "text",
|
|
22330
|
-
label: "Section button text",
|
|
22331
|
-
description: "Optional button shown below the spotlight cards",
|
|
22332
|
-
required: false,
|
|
22333
|
-
multiline: false,
|
|
22334
|
-
maxLength: 40,
|
|
22335
|
-
ui: { intent: "content" }
|
|
22336
|
-
},
|
|
22337
|
-
{
|
|
22338
|
-
id: "ctaUrl",
|
|
22339
|
-
type: "link",
|
|
22340
|
-
label: "Section button destination",
|
|
22341
|
-
required: false,
|
|
22342
|
-
ui: { intent: "display" }
|
|
22343
|
-
},
|
|
22344
|
-
layoutField,
|
|
22345
|
-
columnsField(["2", "3"]),
|
|
22346
|
-
...cardStylingFields,
|
|
22347
|
-
...eventDisplayFields,
|
|
22348
|
-
emptyStateField,
|
|
22349
|
-
sectionStylesField({
|
|
22350
|
-
id: "_sectionStyles",
|
|
22351
|
-
label: "Section styles"
|
|
22352
|
-
})
|
|
22353
|
-
],
|
|
22440
|
+
additionalFields: eventSpotlightFields,
|
|
22354
22441
|
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
22355
22442
|
behaviours: { supportsThemeSwitching: true, inlineEditing: false, animation: false, paletteHidden: false },
|
|
22356
22443
|
category: "content",
|
|
22357
22444
|
tags: ["events", "featured", "homepage", "spotlight", "upcoming"],
|
|
22358
22445
|
icon: "Star",
|
|
22359
|
-
layout:
|
|
22360
|
-
|
|
22361
|
-
|
|
22362
|
-
// Optional heading
|
|
22363
|
-
text(
|
|
22364
|
-
{ as: "h2" },
|
|
22365
|
-
bind("content.heading"),
|
|
22366
|
-
when("content.heading")
|
|
22367
|
-
),
|
|
22368
|
-
// Optional description
|
|
22369
|
-
richText(
|
|
22370
|
-
{ className: "rb-prose rb-max-w-none" },
|
|
22371
|
-
bind("content.description"),
|
|
22372
|
-
when("content.description")
|
|
22373
|
-
),
|
|
22374
|
-
// Event spotlight component
|
|
22375
|
-
el("event-spotlight", {
|
|
22376
|
-
events: { $bind: { from: "data.events" } },
|
|
22377
|
-
layout: { $bind: { from: "content.layout", fallback: "grid" } },
|
|
22378
|
-
columns: { $bind: { from: "content.columns", fallback: "3" } },
|
|
22379
|
-
cardVariant: { $bind: { from: "content.cardVariant", fallback: "default" } },
|
|
22380
|
-
buttonVariant: { $bind: { from: "content.buttonVariant", fallback: "primary" } },
|
|
22381
|
-
buttonText: { $bind: { from: "content.buttonText", fallback: "View event" } },
|
|
22382
|
-
ctaLabel: { $bind: { from: "content.ctaLabel" } },
|
|
22383
|
-
ctaUrl: { $bind: { from: "content.ctaUrl", transforms: [{ id: "links.resolve" }] } },
|
|
22384
|
-
showVenue: { $bind: { from: "content.showVenue" } },
|
|
22385
|
-
showMap: { $bind: { from: "content.showMap" } },
|
|
22386
|
-
showCapacity: { $bind: { from: "content.showCapacity" } },
|
|
22387
|
-
emptyMessage: { $bind: { from: "content.emptyMessage" } }
|
|
22388
|
-
})
|
|
22389
|
-
], {
|
|
22390
|
-
gap: "lg"
|
|
22391
|
-
}),
|
|
22392
|
-
// sectionContainer (rb-container) already provides horizontal padding
|
|
22393
|
-
baseClass: "",
|
|
22394
|
-
spacing: "comfortable"
|
|
22395
|
-
})
|
|
22396
|
-
]
|
|
22397
|
-
});
|
|
22446
|
+
layout: eventSpotlightLayout
|
|
22447
|
+
};
|
|
22448
|
+
var eventSpotlightManifest = createBlockManifest(eventSpotlightConfig);
|
|
22398
22449
|
var eventSpotlightBlockDefinition = {
|
|
22399
22450
|
manifest: eventSpotlightManifest,
|
|
22400
22451
|
dataSchemas: {
|
|
@@ -25084,18 +25135,18 @@ var fileDownloadManifest = createBlockManifest({
|
|
|
25084
25135
|
title: "File Download",
|
|
25085
25136
|
titleSource: ["title", "file.filename"],
|
|
25086
25137
|
category: "media",
|
|
25087
|
-
description: "Add a simple public download link for a document, ZIP,
|
|
25138
|
+
description: "Add a simple public download link for a document, ZIP, or audio file.",
|
|
25088
25139
|
tags: ["file", "download", "document", "zip", "media"],
|
|
25089
25140
|
icon: "Download",
|
|
25090
25141
|
includeContainerStyles: true,
|
|
25091
25142
|
additionalFields: [
|
|
25092
25143
|
{
|
|
25093
25144
|
id: "file",
|
|
25094
|
-
type: "
|
|
25145
|
+
type: "file",
|
|
25095
25146
|
label: "Download file",
|
|
25096
25147
|
description: "Choose the file visitors can download.",
|
|
25097
25148
|
required: false,
|
|
25098
|
-
|
|
25149
|
+
fileKinds: [...PUBLIC_DOWNLOAD_MEDIA_TYPES],
|
|
25099
25150
|
ui: { intent: "content" }
|
|
25100
25151
|
},
|
|
25101
25152
|
{
|
package/dist/server/index.mjs
CHANGED