@riverbankcms/sdk 0.72.0 → 0.74.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 +1 -1
- package/dist/{PreviewEditorSidebar-44T64SAR.mjs → PreviewEditorSidebar-5XL7M3OM.mjs} +2 -2
- package/dist/{PreviewEditorUI-4WKHZTXW.mjs → PreviewEditorUI-ZDFRDJID.mjs} +2 -2
- package/dist/SdkPreviewModeRuntime-CRYNDSPL.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +10 -10
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +6 -6
- package/dist/_dts/blocks/src/system/node/fragments/backgroundLayer.d.ts +15 -1
- package/dist/_dts/blocks/src/system/node/fragments/styledSection.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/header/enhanceHeaderSection.d.ts +13 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/media.d.ts +6 -0
- package/dist/_dts/sdk/src/rendering/components/Layout.d.ts +2 -2
- package/dist/_dts/sdk/src/rendering/islands/enhancers/accordion.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/bookingForm.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/carousel.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/cart.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/checkout.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/courseRegistration.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/eventCalendar.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/eventCombined.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/eventDetails.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/eventListing.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/eventRegistration.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/form.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/headerSection.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/locationMap.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/newsletterForm.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/productDetail.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/productList.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/enhancers/shop.d.ts +1 -0
- package/dist/_dts/sdk/src/rendering/islands/hydrateBlocksIslands.d.ts +2 -2
- package/dist/_dts/sdk/src/rendering/islands/propsDecoder.d.ts +7 -0
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +9 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/accordions/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +7 -7
- package/dist/_dts/theme-core/src/buttons/types.d.ts +20 -20
- package/dist/_dts/theme-core/src/cards/types.d.ts +2 -2
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/header/navDropdownSizing.d.ts +7 -0
- package/dist/_dts/theme-core/src/inputs/types.d.ts +3 -3
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +156 -156
- package/dist/_dts/theme-core/src/navigation/types.d.ts +1 -1
- package/dist/_dts/theme-core/src/palette/variants/types.d.ts +4 -4
- package/dist/_dts/theme-core/src/schema.d.ts +178 -178
- package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +2 -2
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +8 -8
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +5 -5
- package/dist/_dts/theme-core/src/tokens/themeColorTokens.d.ts +2 -2
- package/dist/{chunk-3YNCQG5N.mjs → chunk-2MIWNFJM.mjs} +149 -15
- package/dist/{chunk-KWQPAJYS.mjs → chunk-CBD47MTM.mjs} +1 -1
- package/dist/{chunk-HV745JYE.mjs → chunk-CEQBBLMJ.mjs} +1 -1
- package/dist/{chunk-G4NLITC2.mjs → chunk-YY7K3QD2.mjs} +5 -5
- package/dist/cli/index.mjs +233 -203
- package/dist/client/accordion-ZZVXWV3N.mjs +120 -0
- package/dist/client/altcha-LIGLPZS5.mjs +2755 -0
- package/dist/client/bookingForm-4X77HKDS.mjs +34 -0
- package/dist/client/bookings.mjs +13 -0
- package/dist/client/carousel-25WK2H7G.mjs +46 -0
- package/dist/client/cart-JWD2VRFU.mjs +11 -0
- package/dist/client/checkout-V7KYGWL7.mjs +11 -0
- package/dist/client/chunk-5IYGMTUE.mjs +18614 -0
- package/dist/client/chunk-6VGXRE34.mjs +7617 -0
- package/dist/client/chunk-N7PBWBWQ.mjs +26 -0
- package/dist/client/chunk-PMAIXMAB.mjs +1960 -0
- package/dist/client/chunk-RKCFVIMS.mjs +26 -0
- package/dist/client/client.mjs +621 -379
- package/dist/client/courseRegistration-O6ZPK4YT.mjs +29 -0
- package/dist/client/eventCalendar-X6GIPYFM.mjs +29 -0
- package/dist/client/eventCombined-EZUOPM3G.mjs +26 -0
- package/dist/client/eventDetails-3WODIXET.mjs +14 -0
- package/dist/client/eventListing-HEFGAETC.mjs +29 -0
- package/dist/client/eventRegistration-3LCP2V3P.mjs +29 -0
- package/dist/client/form-AKXQMY6Z.mjs +85 -0
- package/dist/client/headerSection-5KHCMU6B.mjs +12 -0
- package/dist/client/hooks.mjs +42 -9
- package/dist/client/locationMap-7HIADW76.mjs +14 -0
- package/dist/client/newsletterForm-5N4YTMU3.mjs +60 -0
- package/dist/client/productDetail-IZUA7ZP3.mjs +11 -0
- package/dist/client/productList-KWIIJE6I.mjs +11 -0
- package/dist/client/rendering/client.mjs +1655 -6472
- package/dist/client/rendering/islands.mjs +40 -44031
- package/dist/client/rendering.mjs +2909 -2663
- package/dist/client/shop-XZQFRQWZ.mjs +13 -0
- package/dist/preview-next/client/runtime.mjs +3 -3
- package/dist/{sdk-runtime-NGDWSWOS.mjs → sdk-runtime-OHNONZ5U.mjs} +4 -4
- package/dist/server/components.mjs +64 -11
- package/dist/server/config-validation.mjs +42 -9
- package/dist/server/config.mjs +42 -9
- package/dist/server/data.mjs +42 -9
- package/dist/server/index.mjs +1 -1
- package/dist/server/next.mjs +65 -12
- package/dist/server/page-converter.mjs +29 -9
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +64 -11
- package/dist/server/rendering.mjs +64 -11
- package/dist/server/routing.mjs +50 -10
- package/dist/server/server.mjs +43 -10
- package/dist/server/theme-bridge.mjs +24 -0
- package/dist/styles/index.css +11 -0
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-FO6V7YVY.mjs +0 -8
package/dist/cli/index.mjs
CHANGED
|
@@ -7677,7 +7677,9 @@ function backgroundLayer(path24, options = {}) {
|
|
|
7677
7677
|
imageClassName,
|
|
7678
7678
|
overlayClassName = "background-overlay rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-pointer-events-none",
|
|
7679
7679
|
fallbackToken,
|
|
7680
|
-
omitImageLayer = false
|
|
7680
|
+
omitImageLayer = false,
|
|
7681
|
+
imageLoading,
|
|
7682
|
+
imageFetchPriority
|
|
7681
7683
|
} = options;
|
|
7682
7684
|
const styleLayer = el("div", {
|
|
7683
7685
|
className: styleClassName,
|
|
@@ -7693,11 +7695,14 @@ function backgroundLayer(path24, options = {}) {
|
|
|
7693
7695
|
}
|
|
7694
7696
|
}
|
|
7695
7697
|
});
|
|
7696
|
-
const imageLayer = createBackgroundImageNode(path24, imageClassName
|
|
7698
|
+
const imageLayer = createBackgroundImageNode(path24, imageClassName, {
|
|
7699
|
+
loading: imageLoading,
|
|
7700
|
+
fetchPriority: imageFetchPriority
|
|
7701
|
+
});
|
|
7697
7702
|
const overlayLayer = createBackgroundOverlayNode(path24, overlayClassName);
|
|
7698
7703
|
return omitImageLayer ? [styleLayer, overlayLayer] : [styleLayer, imageLayer, overlayLayer];
|
|
7699
7704
|
}
|
|
7700
|
-
function createBackgroundImageNode(path24, baseClassName = "rb-absolute rb-z-neg-10") {
|
|
7705
|
+
function createBackgroundImageNode(path24, baseClassName = "rb-absolute rb-z-neg-10", options = {}) {
|
|
7701
7706
|
const imagePath = `${path24}.image`;
|
|
7702
7707
|
return media(
|
|
7703
7708
|
{
|
|
@@ -7718,7 +7723,9 @@ function createBackgroundImageNode(path24, baseClassName = "rb-absolute rb-z-neg
|
|
|
7718
7723
|
transforms: [{ id: "background.resolveImageStyle" }]
|
|
7719
7724
|
}
|
|
7720
7725
|
},
|
|
7721
|
-
videoPlayback: "background"
|
|
7726
|
+
videoPlayback: "background",
|
|
7727
|
+
...options.loading ? { loading: options.loading } : {},
|
|
7728
|
+
...options.fetchPriority ? { fetchPriority: options.fetchPriority } : {}
|
|
7722
7729
|
},
|
|
7723
7730
|
when(imagePath),
|
|
7724
7731
|
bind(imagePath)
|
|
@@ -7952,12 +7959,16 @@ function styledSection(config2) {
|
|
|
7952
7959
|
bindFrom = "_sectionStyles",
|
|
7953
7960
|
imageClassName = "rb-absolute rb-z-neg-10",
|
|
7954
7961
|
renderBackgroundImage = true,
|
|
7962
|
+
backgroundImageLoading,
|
|
7963
|
+
backgroundImageFetchPriority,
|
|
7955
7964
|
fullWidthPath
|
|
7956
7965
|
} = config2;
|
|
7957
7966
|
const renderedBackgroundNodes = backgroundLayer(`${bindFrom}.background`, {
|
|
7958
7967
|
imageClassName,
|
|
7959
7968
|
fallbackToken: background,
|
|
7960
|
-
omitImageLayer: !renderBackgroundImage
|
|
7969
|
+
omitImageLayer: !renderBackgroundImage,
|
|
7970
|
+
imageLoading: backgroundImageLoading,
|
|
7971
|
+
imageFetchPriority: backgroundImageFetchPriority
|
|
7961
7972
|
});
|
|
7962
7973
|
const childrenArray = Array.isArray(children) ? children : [children];
|
|
7963
7974
|
return section(
|
|
@@ -8197,7 +8208,7 @@ function navRow(opts) {
|
|
|
8197
8208
|
el(
|
|
8198
8209
|
"div",
|
|
8199
8210
|
{
|
|
8200
|
-
className: "nav-dropdown-menu rb-absolute rb-left-0 rb-top-full rb-z-50 rb-hidden rb-
|
|
8211
|
+
className: "nav-dropdown-menu rb-absolute rb-left-0 rb-top-full rb-z-50 rb-hidden rb-overflow-hidden",
|
|
8201
8212
|
id: dropdownMenuId
|
|
8202
8213
|
},
|
|
8203
8214
|
[dropdownLinks]
|
|
@@ -13893,6 +13904,202 @@ var init_shop_shared = __esm({
|
|
|
13893
13904
|
});
|
|
13894
13905
|
}
|
|
13895
13906
|
});
|
|
13907
|
+
var eventDetailsManifest, occurrenceContextSchema2, eventAutoApplyDiscountPreviewBaseSchema, eventAutoApplyDiscountPreviewSchema, eventDetailsBlockDefinition;
|
|
13908
|
+
var init_event_details = __esm({
|
|
13909
|
+
"../blocks/src/system/blocks/event-details.ts"() {
|
|
13910
|
+
init_builder();
|
|
13911
|
+
init_builder();
|
|
13912
|
+
init_styledSection();
|
|
13913
|
+
init_fragments();
|
|
13914
|
+
init_shared3();
|
|
13915
|
+
init_shop_shared();
|
|
13916
|
+
init_defineBlock();
|
|
13917
|
+
eventDetailsManifest = createBlockManifest({
|
|
13918
|
+
id: "block.event-details",
|
|
13919
|
+
version: "1.0.0",
|
|
13920
|
+
title: "Event Details",
|
|
13921
|
+
titleSource: "heading",
|
|
13922
|
+
description: "Date/time, venue, map, and other dates for an event",
|
|
13923
|
+
category: "content",
|
|
13924
|
+
tags: ["events", "venue", "map", "schedule", "dates"],
|
|
13925
|
+
icon: "MapPin",
|
|
13926
|
+
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
13927
|
+
behaviours: {
|
|
13928
|
+
supportsThemeSwitching: true,
|
|
13929
|
+
inlineEditing: false,
|
|
13930
|
+
animation: false,
|
|
13931
|
+
paletteHidden: false
|
|
13932
|
+
},
|
|
13933
|
+
additionalFields: [
|
|
13934
|
+
{
|
|
13935
|
+
id: "heading",
|
|
13936
|
+
type: "text",
|
|
13937
|
+
label: "Heading",
|
|
13938
|
+
description: "Optional heading shown above event details",
|
|
13939
|
+
required: false,
|
|
13940
|
+
multiline: false,
|
|
13941
|
+
defaultValue: "Event details"
|
|
13942
|
+
},
|
|
13943
|
+
{
|
|
13944
|
+
id: "showVenue",
|
|
13945
|
+
type: "boolean",
|
|
13946
|
+
label: "Show venue",
|
|
13947
|
+
required: false,
|
|
13948
|
+
defaultValue: true,
|
|
13949
|
+
ui: { intent: "display" }
|
|
13950
|
+
},
|
|
13951
|
+
{
|
|
13952
|
+
id: "showMap",
|
|
13953
|
+
type: "boolean",
|
|
13954
|
+
label: "Show map",
|
|
13955
|
+
description: "Embed a map when the venue has coordinates",
|
|
13956
|
+
required: false,
|
|
13957
|
+
defaultValue: true,
|
|
13958
|
+
ui: { intent: "display" }
|
|
13959
|
+
},
|
|
13960
|
+
{
|
|
13961
|
+
id: "showOtherDates",
|
|
13962
|
+
type: "boolean",
|
|
13963
|
+
label: "Show other dates",
|
|
13964
|
+
required: false,
|
|
13965
|
+
defaultValue: true,
|
|
13966
|
+
ui: { intent: "display" }
|
|
13967
|
+
},
|
|
13968
|
+
{
|
|
13969
|
+
id: "otherDatesLimit",
|
|
13970
|
+
type: "select",
|
|
13971
|
+
label: "Other dates limit",
|
|
13972
|
+
required: false,
|
|
13973
|
+
multiple: false,
|
|
13974
|
+
defaultValue: "5",
|
|
13975
|
+
options: [
|
|
13976
|
+
{ value: "3", label: "3 dates" },
|
|
13977
|
+
{ value: "5", label: "5 dates" },
|
|
13978
|
+
{ value: "10", label: "10 dates" }
|
|
13979
|
+
],
|
|
13980
|
+
ui: { intent: "display" }
|
|
13981
|
+
},
|
|
13982
|
+
{
|
|
13983
|
+
id: "showCost",
|
|
13984
|
+
type: "boolean",
|
|
13985
|
+
label: "Show cost",
|
|
13986
|
+
description: "Display ticket price for paid events",
|
|
13987
|
+
required: false,
|
|
13988
|
+
defaultValue: true,
|
|
13989
|
+
ui: { intent: "display" }
|
|
13990
|
+
},
|
|
13991
|
+
{
|
|
13992
|
+
id: "showAcceptedPasses",
|
|
13993
|
+
type: "boolean",
|
|
13994
|
+
label: "Show accepted passes",
|
|
13995
|
+
description: "Display passes that can be used for this event",
|
|
13996
|
+
required: false,
|
|
13997
|
+
defaultValue: true,
|
|
13998
|
+
ui: { intent: "display" }
|
|
13999
|
+
},
|
|
14000
|
+
{
|
|
14001
|
+
id: "showAcceptedMemberships",
|
|
14002
|
+
type: "boolean",
|
|
14003
|
+
label: "Show accepted memberships",
|
|
14004
|
+
description: "Display memberships that grant access to this event",
|
|
14005
|
+
required: false,
|
|
14006
|
+
defaultValue: true,
|
|
14007
|
+
ui: { intent: "display" }
|
|
14008
|
+
}
|
|
14009
|
+
],
|
|
14010
|
+
layout: [
|
|
14011
|
+
styledSection({
|
|
14012
|
+
baseClass: "",
|
|
14013
|
+
spacing: "spacious",
|
|
14014
|
+
children: sectionContainer(
|
|
14015
|
+
[
|
|
14016
|
+
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
14017
|
+
el("event-details", {
|
|
14018
|
+
occurrenceContext: {
|
|
14019
|
+
$bind: { from: "$root.occurrenceContext", fallback: null }
|
|
14020
|
+
},
|
|
14021
|
+
contentEntry: { $bind: { from: "$root.contentEntry", fallback: null } },
|
|
14022
|
+
events: { $bind: { from: "data.eventDetailsData.events" } },
|
|
14023
|
+
showVenue: { $bind: { from: "content.showVenue" } },
|
|
14024
|
+
showMap: { $bind: { from: "content.showMap" } },
|
|
14025
|
+
showOtherDates: { $bind: { from: "content.showOtherDates" } },
|
|
14026
|
+
otherDatesLimit: {
|
|
14027
|
+
$bind: { from: "content.otherDatesLimit", fallback: "5" }
|
|
14028
|
+
},
|
|
14029
|
+
showCost: { $bind: { from: "content.showCost", fallback: true } },
|
|
14030
|
+
showAcceptedPasses: {
|
|
14031
|
+
$bind: { from: "content.showAcceptedPasses", fallback: true }
|
|
14032
|
+
},
|
|
14033
|
+
showAcceptedMemberships: {
|
|
14034
|
+
$bind: { from: "content.showAcceptedMemberships", fallback: true }
|
|
14035
|
+
},
|
|
14036
|
+
sitePasses: { $bind: { from: "data.eventDetailsData.sitePasses" } },
|
|
14037
|
+
siteMemberships: { $bind: { from: "data.eventDetailsData.siteMemberships" } },
|
|
14038
|
+
autoApplyDiscount: {
|
|
14039
|
+
$bind: { from: "data.eventDetailsData.autoApplyDiscount", fallback: null }
|
|
14040
|
+
}
|
|
14041
|
+
})
|
|
14042
|
+
],
|
|
14043
|
+
{ gap: "lg" }
|
|
14044
|
+
)
|
|
14045
|
+
})
|
|
14046
|
+
]
|
|
14047
|
+
});
|
|
14048
|
+
occurrenceContextSchema2 = z.object({
|
|
14049
|
+
id: z.string(),
|
|
14050
|
+
seriesId: z.string(),
|
|
14051
|
+
startsAt: z.string(),
|
|
14052
|
+
endsAt: z.string(),
|
|
14053
|
+
timeZone: z.string(),
|
|
14054
|
+
capacityOverride: z.number().nullable().optional(),
|
|
14055
|
+
overrides: z.record(z.string(), z.unknown()).nullable().optional()
|
|
14056
|
+
}).nullable();
|
|
14057
|
+
eventAutoApplyDiscountPreviewBaseSchema = z.object({
|
|
14058
|
+
id: z.string(),
|
|
14059
|
+
publicLabel: z.string(),
|
|
14060
|
+
description: z.string().nullable(),
|
|
14061
|
+
minTicketsRequired: z.number().nullable()
|
|
14062
|
+
});
|
|
14063
|
+
eventAutoApplyDiscountPreviewSchema = z.discriminatedUnion("discountType", [
|
|
14064
|
+
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
14065
|
+
discountType: z.literal("percent"),
|
|
14066
|
+
discountPercent: z.number(),
|
|
14067
|
+
discountAmountCents: z.null()
|
|
14068
|
+
}),
|
|
14069
|
+
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
14070
|
+
discountType: z.literal("fixed"),
|
|
14071
|
+
discountPercent: z.null(),
|
|
14072
|
+
discountAmountCents: z.number()
|
|
14073
|
+
})
|
|
14074
|
+
]);
|
|
14075
|
+
eventDetailsBlockDefinition = {
|
|
14076
|
+
manifest: eventDetailsManifest,
|
|
14077
|
+
dataSchemas: {
|
|
14078
|
+
eventDetailsData: z.object({
|
|
14079
|
+
events: publicEventsArraySchema,
|
|
14080
|
+
sitePasses: z.object({ passes: z.array(publicPassProductSchema) }),
|
|
14081
|
+
siteMemberships: z.object({ memberships: z.array(publicMembershipProductSchema) }),
|
|
14082
|
+
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
14083
|
+
}).optional(),
|
|
14084
|
+
occurrenceContext: occurrenceContextSchema2.optional()
|
|
14085
|
+
},
|
|
14086
|
+
dataLoaders: {
|
|
14087
|
+
eventDetailsData: {
|
|
14088
|
+
endpoint: "getPublicEventDetails",
|
|
14089
|
+
params: {
|
|
14090
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
14091
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
14092
|
+
limit: "25",
|
|
14093
|
+
entryId: { $bind: { from: "$root.contentEntry._entryId" } },
|
|
14094
|
+
seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
|
|
14095
|
+
includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
|
|
14096
|
+
},
|
|
14097
|
+
mode: "server"
|
|
14098
|
+
}
|
|
14099
|
+
}
|
|
14100
|
+
};
|
|
14101
|
+
}
|
|
14102
|
+
});
|
|
13896
14103
|
|
|
13897
14104
|
// ../blocks/src/system/runtime/nodes/events/shared/utils.ts
|
|
13898
14105
|
function getContainerClass(layout, columns) {
|
|
@@ -17370,6 +17577,10 @@ var init_presets2 = __esm({
|
|
|
17370
17577
|
"../theme-core/src/navigation/presets.ts"() {
|
|
17371
17578
|
}
|
|
17372
17579
|
});
|
|
17580
|
+
var init_navDropdownSizing = __esm({
|
|
17581
|
+
"../theme-core/src/header/navDropdownSizing.ts"() {
|
|
17582
|
+
}
|
|
17583
|
+
});
|
|
17373
17584
|
|
|
17374
17585
|
// ../theme-core/src/header/generateHeaderCss.ts
|
|
17375
17586
|
var init_generateHeaderCss = __esm({
|
|
@@ -17379,6 +17590,7 @@ var init_generateHeaderCss = __esm({
|
|
|
17379
17590
|
init_presets2();
|
|
17380
17591
|
init_shared();
|
|
17381
17592
|
init_breakpoints();
|
|
17593
|
+
init_navDropdownSizing();
|
|
17382
17594
|
}
|
|
17383
17595
|
});
|
|
17384
17596
|
|
|
@@ -25199,6 +25411,10 @@ var heroCopyAndCta = composeFragments([
|
|
|
25199
25411
|
{ fragment: heroCopyFragment },
|
|
25200
25412
|
{ fragment: heroCtaRowFragment }
|
|
25201
25413
|
]);
|
|
25414
|
+
var heroPriorityMediaProps = {
|
|
25415
|
+
loading: "eager",
|
|
25416
|
+
fetchPriority: "high"
|
|
25417
|
+
};
|
|
25202
25418
|
var heroContentNodes = heroCopyAndCta.layout;
|
|
25203
25419
|
function heroContentCard(children, gap) {
|
|
25204
25420
|
return styledContainer({
|
|
@@ -25261,7 +25477,8 @@ function heroSplitImagePane() {
|
|
|
25261
25477
|
[
|
|
25262
25478
|
media(
|
|
25263
25479
|
{
|
|
25264
|
-
className: "rb-absolute rb-inset-0 rb-h-full rb-w-full rb-object-cover"
|
|
25480
|
+
className: "rb-absolute rb-inset-0 rb-h-full rb-w-full rb-object-cover",
|
|
25481
|
+
...heroPriorityMediaProps
|
|
25265
25482
|
},
|
|
25266
25483
|
when("_sectionStyles.background.image"),
|
|
25267
25484
|
bind("_sectionStyles.background.image")
|
|
@@ -25272,13 +25489,17 @@ function heroSplitImagePane() {
|
|
|
25272
25489
|
var classicLayout = styledSection({
|
|
25273
25490
|
children: heroContainerStack(heroContentNodes, "md"),
|
|
25274
25491
|
// styledContainer (rb-container) already provides horizontal padding
|
|
25275
|
-
baseClass: ""
|
|
25492
|
+
baseClass: "",
|
|
25493
|
+
backgroundImageLoading: heroPriorityMediaProps.loading,
|
|
25494
|
+
backgroundImageFetchPriority: heroPriorityMediaProps.fetchPriority
|
|
25276
25495
|
});
|
|
25277
25496
|
var microLayout = styledSection({
|
|
25278
25497
|
children: heroContainerStack(heroContentNodes, "sm"),
|
|
25279
25498
|
// styledContainer (rb-container) already provides horizontal padding
|
|
25280
25499
|
baseClass: "",
|
|
25281
|
-
spacing: "compact"
|
|
25500
|
+
spacing: "compact",
|
|
25501
|
+
backgroundImageLoading: heroPriorityMediaProps.loading,
|
|
25502
|
+
backgroundImageFetchPriority: heroPriorityMediaProps.fetchPriority
|
|
25282
25503
|
});
|
|
25283
25504
|
function splitLayoutWith(children) {
|
|
25284
25505
|
return styledSection({
|
|
@@ -28978,199 +29199,7 @@ var appointmentBookingBlockDefinition = {
|
|
|
28978
29199
|
// ../blocks/src/system/blocks/index.ts
|
|
28979
29200
|
init_event_registration();
|
|
28980
29201
|
init_course_registration();
|
|
28981
|
-
|
|
28982
|
-
// ../blocks/src/system/blocks/event-details.ts
|
|
28983
|
-
init_builder();
|
|
28984
|
-
init_builder();
|
|
28985
|
-
init_styledSection();
|
|
28986
|
-
init_fragments();
|
|
28987
|
-
init_shared3();
|
|
28988
|
-
init_shop_shared();
|
|
28989
|
-
init_defineBlock();
|
|
28990
|
-
var eventDetailsManifest = createBlockManifest({
|
|
28991
|
-
id: "block.event-details",
|
|
28992
|
-
version: "1.0.0",
|
|
28993
|
-
title: "Event Details",
|
|
28994
|
-
titleSource: "heading",
|
|
28995
|
-
description: "Date/time, venue, map, and other dates for an event",
|
|
28996
|
-
category: "content",
|
|
28997
|
-
tags: ["events", "venue", "map", "schedule", "dates"],
|
|
28998
|
-
icon: "MapPin",
|
|
28999
|
-
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
29000
|
-
behaviours: {
|
|
29001
|
-
supportsThemeSwitching: true,
|
|
29002
|
-
inlineEditing: false,
|
|
29003
|
-
animation: false,
|
|
29004
|
-
paletteHidden: false
|
|
29005
|
-
},
|
|
29006
|
-
additionalFields: [
|
|
29007
|
-
{
|
|
29008
|
-
id: "heading",
|
|
29009
|
-
type: "text",
|
|
29010
|
-
label: "Heading",
|
|
29011
|
-
description: "Optional heading shown above event details",
|
|
29012
|
-
required: false,
|
|
29013
|
-
multiline: false,
|
|
29014
|
-
defaultValue: "Event details"
|
|
29015
|
-
},
|
|
29016
|
-
{
|
|
29017
|
-
id: "showVenue",
|
|
29018
|
-
type: "boolean",
|
|
29019
|
-
label: "Show venue",
|
|
29020
|
-
required: false,
|
|
29021
|
-
defaultValue: true,
|
|
29022
|
-
ui: { intent: "display" }
|
|
29023
|
-
},
|
|
29024
|
-
{
|
|
29025
|
-
id: "showMap",
|
|
29026
|
-
type: "boolean",
|
|
29027
|
-
label: "Show map",
|
|
29028
|
-
description: "Embed a map when the venue has coordinates",
|
|
29029
|
-
required: false,
|
|
29030
|
-
defaultValue: true,
|
|
29031
|
-
ui: { intent: "display" }
|
|
29032
|
-
},
|
|
29033
|
-
{
|
|
29034
|
-
id: "showOtherDates",
|
|
29035
|
-
type: "boolean",
|
|
29036
|
-
label: "Show other dates",
|
|
29037
|
-
required: false,
|
|
29038
|
-
defaultValue: true,
|
|
29039
|
-
ui: { intent: "display" }
|
|
29040
|
-
},
|
|
29041
|
-
{
|
|
29042
|
-
id: "otherDatesLimit",
|
|
29043
|
-
type: "select",
|
|
29044
|
-
label: "Other dates limit",
|
|
29045
|
-
required: false,
|
|
29046
|
-
multiple: false,
|
|
29047
|
-
defaultValue: "5",
|
|
29048
|
-
options: [
|
|
29049
|
-
{ value: "3", label: "3 dates" },
|
|
29050
|
-
{ value: "5", label: "5 dates" },
|
|
29051
|
-
{ value: "10", label: "10 dates" }
|
|
29052
|
-
],
|
|
29053
|
-
ui: { intent: "display" }
|
|
29054
|
-
},
|
|
29055
|
-
{
|
|
29056
|
-
id: "showCost",
|
|
29057
|
-
type: "boolean",
|
|
29058
|
-
label: "Show cost",
|
|
29059
|
-
description: "Display ticket price for paid events",
|
|
29060
|
-
required: false,
|
|
29061
|
-
defaultValue: true,
|
|
29062
|
-
ui: { intent: "display" }
|
|
29063
|
-
},
|
|
29064
|
-
{
|
|
29065
|
-
id: "showAcceptedPasses",
|
|
29066
|
-
type: "boolean",
|
|
29067
|
-
label: "Show accepted passes",
|
|
29068
|
-
description: "Display passes that can be used for this event",
|
|
29069
|
-
required: false,
|
|
29070
|
-
defaultValue: true,
|
|
29071
|
-
ui: { intent: "display" }
|
|
29072
|
-
},
|
|
29073
|
-
{
|
|
29074
|
-
id: "showAcceptedMemberships",
|
|
29075
|
-
type: "boolean",
|
|
29076
|
-
label: "Show accepted memberships",
|
|
29077
|
-
description: "Display memberships that grant access to this event",
|
|
29078
|
-
required: false,
|
|
29079
|
-
defaultValue: true,
|
|
29080
|
-
ui: { intent: "display" }
|
|
29081
|
-
}
|
|
29082
|
-
],
|
|
29083
|
-
layout: [
|
|
29084
|
-
styledSection({
|
|
29085
|
-
baseClass: "",
|
|
29086
|
-
spacing: "spacious",
|
|
29087
|
-
children: sectionContainer(
|
|
29088
|
-
[
|
|
29089
|
-
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
29090
|
-
el("event-details", {
|
|
29091
|
-
occurrenceContext: {
|
|
29092
|
-
$bind: { from: "$root.occurrenceContext", fallback: null }
|
|
29093
|
-
},
|
|
29094
|
-
contentEntry: { $bind: { from: "$root.contentEntry", fallback: null } },
|
|
29095
|
-
events: { $bind: { from: "data.eventDetailsData.events" } },
|
|
29096
|
-
showVenue: { $bind: { from: "content.showVenue" } },
|
|
29097
|
-
showMap: { $bind: { from: "content.showMap" } },
|
|
29098
|
-
showOtherDates: { $bind: { from: "content.showOtherDates" } },
|
|
29099
|
-
otherDatesLimit: {
|
|
29100
|
-
$bind: { from: "content.otherDatesLimit", fallback: "5" }
|
|
29101
|
-
},
|
|
29102
|
-
showCost: { $bind: { from: "content.showCost", fallback: true } },
|
|
29103
|
-
showAcceptedPasses: {
|
|
29104
|
-
$bind: { from: "content.showAcceptedPasses", fallback: true }
|
|
29105
|
-
},
|
|
29106
|
-
showAcceptedMemberships: {
|
|
29107
|
-
$bind: { from: "content.showAcceptedMemberships", fallback: true }
|
|
29108
|
-
},
|
|
29109
|
-
sitePasses: { $bind: { from: "data.eventDetailsData.sitePasses" } },
|
|
29110
|
-
siteMemberships: { $bind: { from: "data.eventDetailsData.siteMemberships" } },
|
|
29111
|
-
autoApplyDiscount: {
|
|
29112
|
-
$bind: { from: "data.eventDetailsData.autoApplyDiscount", fallback: null }
|
|
29113
|
-
}
|
|
29114
|
-
})
|
|
29115
|
-
],
|
|
29116
|
-
{ gap: "lg" }
|
|
29117
|
-
)
|
|
29118
|
-
})
|
|
29119
|
-
]
|
|
29120
|
-
});
|
|
29121
|
-
var occurrenceContextSchema2 = z.object({
|
|
29122
|
-
id: z.string(),
|
|
29123
|
-
seriesId: z.string(),
|
|
29124
|
-
startsAt: z.string(),
|
|
29125
|
-
endsAt: z.string(),
|
|
29126
|
-
timeZone: z.string(),
|
|
29127
|
-
capacityOverride: z.number().nullable().optional(),
|
|
29128
|
-
overrides: z.record(z.string(), z.unknown()).nullable().optional()
|
|
29129
|
-
}).nullable();
|
|
29130
|
-
var eventAutoApplyDiscountPreviewBaseSchema = z.object({
|
|
29131
|
-
id: z.string(),
|
|
29132
|
-
publicLabel: z.string(),
|
|
29133
|
-
description: z.string().nullable(),
|
|
29134
|
-
minTicketsRequired: z.number().nullable()
|
|
29135
|
-
});
|
|
29136
|
-
var eventAutoApplyDiscountPreviewSchema = z.discriminatedUnion("discountType", [
|
|
29137
|
-
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29138
|
-
discountType: z.literal("percent"),
|
|
29139
|
-
discountPercent: z.number(),
|
|
29140
|
-
discountAmountCents: z.null()
|
|
29141
|
-
}),
|
|
29142
|
-
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29143
|
-
discountType: z.literal("fixed"),
|
|
29144
|
-
discountPercent: z.null(),
|
|
29145
|
-
discountAmountCents: z.number()
|
|
29146
|
-
})
|
|
29147
|
-
]);
|
|
29148
|
-
var eventDetailsBlockDefinition = {
|
|
29149
|
-
manifest: eventDetailsManifest,
|
|
29150
|
-
dataSchemas: {
|
|
29151
|
-
eventDetailsData: z.object({
|
|
29152
|
-
events: publicEventsArraySchema,
|
|
29153
|
-
sitePasses: z.object({ passes: z.array(publicPassProductSchema) }),
|
|
29154
|
-
siteMemberships: z.object({ memberships: z.array(publicMembershipProductSchema) }),
|
|
29155
|
-
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
29156
|
-
}).optional(),
|
|
29157
|
-
occurrenceContext: occurrenceContextSchema2.optional()
|
|
29158
|
-
},
|
|
29159
|
-
dataLoaders: {
|
|
29160
|
-
eventDetailsData: {
|
|
29161
|
-
endpoint: "getPublicEventDetails",
|
|
29162
|
-
params: {
|
|
29163
|
-
siteId: { $bind: { from: "$root.siteId" } },
|
|
29164
|
-
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
29165
|
-
limit: "25",
|
|
29166
|
-
entryId: { $bind: { from: "$root.contentEntry._entryId" } },
|
|
29167
|
-
seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
|
|
29168
|
-
includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
|
|
29169
|
-
},
|
|
29170
|
-
mode: "server"
|
|
29171
|
-
}
|
|
29172
|
-
}
|
|
29173
|
-
};
|
|
29202
|
+
init_event_details();
|
|
29174
29203
|
|
|
29175
29204
|
// ../blocks/src/system/blocks/course-details.ts
|
|
29176
29205
|
init_builder();
|
|
@@ -31498,6 +31527,7 @@ var locationMapBlockDefinition = {
|
|
|
31498
31527
|
// ../blocks/src/system/blocks/index.ts
|
|
31499
31528
|
init_form();
|
|
31500
31529
|
init_event_registration();
|
|
31530
|
+
init_event_details();
|
|
31501
31531
|
init_course_registration();
|
|
31502
31532
|
init_shop();
|
|
31503
31533
|
init_product_list();
|
|
@@ -54836,7 +54866,7 @@ var SimpleCache = class {
|
|
|
54836
54866
|
};
|
|
54837
54867
|
|
|
54838
54868
|
// src/version.ts
|
|
54839
|
-
var SDK_VERSION = "0.
|
|
54869
|
+
var SDK_VERSION = "0.74.0";
|
|
54840
54870
|
|
|
54841
54871
|
// src/client/error.ts
|
|
54842
54872
|
var RiverbankApiError = class _RiverbankApiError extends Error {
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { defineIslandPropsDecoder } from './chunk-6VGXRE34.mjs';
|
|
2
|
+
import './chunk-PMAIXMAB.mjs';
|
|
3
|
+
|
|
4
|
+
// src/rendering/islands/enhancers/accordion.ts
|
|
5
|
+
var decode = defineIslandPropsDecoder("accordion");
|
|
6
|
+
function parseDefaultValues(value) {
|
|
7
|
+
if (!value) return [];
|
|
8
|
+
return value.split(",").map((v) => v.trim()).filter(Boolean);
|
|
9
|
+
}
|
|
10
|
+
function getItemValue(item, index) {
|
|
11
|
+
return item.getAttribute("data-accordion-value") ?? String(index);
|
|
12
|
+
}
|
|
13
|
+
function normalizeType(domValue, propsValue) {
|
|
14
|
+
if (propsValue === "multiple") return "multiple";
|
|
15
|
+
if (propsValue === "single") return "single";
|
|
16
|
+
return domValue === "multiple" ? "multiple" : "single";
|
|
17
|
+
}
|
|
18
|
+
function normalizeCollapsible(propsValue) {
|
|
19
|
+
if (propsValue === false) return false;
|
|
20
|
+
return true;
|
|
21
|
+
}
|
|
22
|
+
function normalizeDefaultValues(domValue, propsValue) {
|
|
23
|
+
if (Array.isArray(propsValue)) return propsValue.map(String).filter(Boolean);
|
|
24
|
+
if (typeof propsValue === "string" && propsValue.trim()) return [propsValue.trim()];
|
|
25
|
+
return parseDefaultValues(domValue);
|
|
26
|
+
}
|
|
27
|
+
var enhance = (root, props) => {
|
|
28
|
+
if (root.dataset.rbAccordionEnhanced === "true") return;
|
|
29
|
+
root.dataset.rbAccordionEnhanced = "true";
|
|
30
|
+
const type = normalizeType(root.getAttribute("data-accordion-type"), props?.type);
|
|
31
|
+
const collapsible = type === "single" ? normalizeCollapsible(props?.collapsible) : true;
|
|
32
|
+
const defaultValues = new Set(
|
|
33
|
+
normalizeDefaultValues(root.getAttribute("data-default-value"), props?.defaultValue)
|
|
34
|
+
);
|
|
35
|
+
const items = Array.from(root.querySelectorAll(".accordion-item"));
|
|
36
|
+
const cleanups = [];
|
|
37
|
+
const closeAnimations = /* @__PURE__ */ new WeakMap();
|
|
38
|
+
const setMeasuredContentHeight = (content) => {
|
|
39
|
+
content.style.setProperty("--radix-accordion-content-height", `${content.scrollHeight}px`);
|
|
40
|
+
};
|
|
41
|
+
const setOpen = (item, open, options) => {
|
|
42
|
+
const trigger = item.querySelector(".accordion-trigger");
|
|
43
|
+
const content = item.querySelector(".accordion-content");
|
|
44
|
+
if (!trigger || !content) return;
|
|
45
|
+
const cancelPendingClose = closeAnimations.get(content);
|
|
46
|
+
if (cancelPendingClose) {
|
|
47
|
+
cancelPendingClose();
|
|
48
|
+
closeAnimations.delete(content);
|
|
49
|
+
}
|
|
50
|
+
if (open && content.hidden) content.hidden = false;
|
|
51
|
+
setMeasuredContentHeight(content);
|
|
52
|
+
item.dataset.state = open ? "open" : "closed";
|
|
53
|
+
content.dataset.state = open ? "open" : "closed";
|
|
54
|
+
if (!content.dataset.animation) content.dataset.animation = "accordion";
|
|
55
|
+
trigger.setAttribute("role", "button");
|
|
56
|
+
trigger.tabIndex = 0;
|
|
57
|
+
trigger.setAttribute("aria-expanded", open ? "true" : "false");
|
|
58
|
+
if (open) {
|
|
59
|
+
content.hidden = false;
|
|
60
|
+
content.setAttribute("aria-hidden", "false");
|
|
61
|
+
content.removeAttribute("inert");
|
|
62
|
+
return;
|
|
63
|
+
}
|
|
64
|
+
content.setAttribute("aria-hidden", "true");
|
|
65
|
+
content.setAttribute("inert", "");
|
|
66
|
+
const onAnimationEnd = () => {
|
|
67
|
+
if (content.dataset.state !== "closed") return;
|
|
68
|
+
content.hidden = true;
|
|
69
|
+
closeAnimations.delete(content);
|
|
70
|
+
};
|
|
71
|
+
if (options?.immediateClose) {
|
|
72
|
+
content.hidden = true;
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
content.addEventListener("animationend", onAnimationEnd, { once: true });
|
|
76
|
+
closeAnimations.set(content, () => {
|
|
77
|
+
content.removeEventListener("animationend", onAnimationEnd);
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
const closeAllExcept = (keep) => {
|
|
81
|
+
items.forEach((item) => {
|
|
82
|
+
if (keep && item === keep) return;
|
|
83
|
+
setOpen(item, false);
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
items.forEach((item, index) => {
|
|
87
|
+
const value = getItemValue(item, index);
|
|
88
|
+
const initiallyOpen = defaultValues.has(value);
|
|
89
|
+
setOpen(item, initiallyOpen, initiallyOpen ? void 0 : { immediateClose: true });
|
|
90
|
+
const trigger = item.querySelector(".accordion-trigger");
|
|
91
|
+
if (!trigger) return;
|
|
92
|
+
const toggle = () => {
|
|
93
|
+
const expanded = trigger.getAttribute("aria-expanded") === "true";
|
|
94
|
+
const nextOpen = !expanded;
|
|
95
|
+
if (type === "single" && expanded && !collapsible) return;
|
|
96
|
+
if (type === "single" && nextOpen) closeAllExcept(item);
|
|
97
|
+
setOpen(item, nextOpen);
|
|
98
|
+
};
|
|
99
|
+
const onClick = (event) => {
|
|
100
|
+
event.preventDefault();
|
|
101
|
+
toggle();
|
|
102
|
+
};
|
|
103
|
+
const onKeyDown = (event) => {
|
|
104
|
+
if (event.key !== "Enter" && event.key !== " ") return;
|
|
105
|
+
event.preventDefault();
|
|
106
|
+
toggle();
|
|
107
|
+
};
|
|
108
|
+
trigger.addEventListener("click", onClick);
|
|
109
|
+
trigger.addEventListener("keydown", onKeyDown);
|
|
110
|
+
cleanups.push(() => {
|
|
111
|
+
trigger.removeEventListener("click", onClick);
|
|
112
|
+
trigger.removeEventListener("keydown", onKeyDown);
|
|
113
|
+
});
|
|
114
|
+
});
|
|
115
|
+
return () => {
|
|
116
|
+
cleanups.forEach((fn) => fn());
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
|
|
120
|
+
export { decode, enhance };
|