@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/client/client.mjs
CHANGED
|
@@ -10953,7 +10953,9 @@ function backgroundLayer(path, options = {}) {
|
|
|
10953
10953
|
imageClassName,
|
|
10954
10954
|
overlayClassName = "background-overlay rb-absolute rb-inset-0 rb-z-neg-10 rb-h-full rb-w-full rb-pointer-events-none",
|
|
10955
10955
|
fallbackToken,
|
|
10956
|
-
omitImageLayer = false
|
|
10956
|
+
omitImageLayer = false,
|
|
10957
|
+
imageLoading,
|
|
10958
|
+
imageFetchPriority
|
|
10957
10959
|
} = options;
|
|
10958
10960
|
const styleLayer = el("div", {
|
|
10959
10961
|
className: styleClassName,
|
|
@@ -10969,11 +10971,14 @@ function backgroundLayer(path, options = {}) {
|
|
|
10969
10971
|
}
|
|
10970
10972
|
}
|
|
10971
10973
|
});
|
|
10972
|
-
const imageLayer = createBackgroundImageNode(path, imageClassName
|
|
10974
|
+
const imageLayer = createBackgroundImageNode(path, imageClassName, {
|
|
10975
|
+
loading: imageLoading,
|
|
10976
|
+
fetchPriority: imageFetchPriority
|
|
10977
|
+
});
|
|
10973
10978
|
const overlayLayer = createBackgroundOverlayNode(path, overlayClassName);
|
|
10974
10979
|
return omitImageLayer ? [styleLayer, overlayLayer] : [styleLayer, imageLayer, overlayLayer];
|
|
10975
10980
|
}
|
|
10976
|
-
function createBackgroundImageNode(path, baseClassName = "rb-absolute rb-z-neg-10") {
|
|
10981
|
+
function createBackgroundImageNode(path, baseClassName = "rb-absolute rb-z-neg-10", options = {}) {
|
|
10977
10982
|
const imagePath = `${path}.image`;
|
|
10978
10983
|
return media(
|
|
10979
10984
|
{
|
|
@@ -10994,7 +10999,9 @@ function createBackgroundImageNode(path, baseClassName = "rb-absolute rb-z-neg-1
|
|
|
10994
10999
|
transforms: [{ id: "background.resolveImageStyle" }]
|
|
10995
11000
|
}
|
|
10996
11001
|
},
|
|
10997
|
-
videoPlayback: "background"
|
|
11002
|
+
videoPlayback: "background",
|
|
11003
|
+
...options.loading ? { loading: options.loading } : {},
|
|
11004
|
+
...options.fetchPriority ? { fetchPriority: options.fetchPriority } : {}
|
|
10998
11005
|
},
|
|
10999
11006
|
when(imagePath),
|
|
11000
11007
|
bind(imagePath)
|
|
@@ -11235,12 +11242,16 @@ function styledSection(config) {
|
|
|
11235
11242
|
bindFrom = "_sectionStyles",
|
|
11236
11243
|
imageClassName = "rb-absolute rb-z-neg-10",
|
|
11237
11244
|
renderBackgroundImage = true,
|
|
11245
|
+
backgroundImageLoading,
|
|
11246
|
+
backgroundImageFetchPriority,
|
|
11238
11247
|
fullWidthPath
|
|
11239
11248
|
} = config;
|
|
11240
11249
|
const renderedBackgroundNodes = backgroundLayer(`${bindFrom}.background`, {
|
|
11241
11250
|
imageClassName,
|
|
11242
11251
|
fallbackToken: background,
|
|
11243
|
-
omitImageLayer: !renderBackgroundImage
|
|
11252
|
+
omitImageLayer: !renderBackgroundImage,
|
|
11253
|
+
imageLoading: backgroundImageLoading,
|
|
11254
|
+
imageFetchPriority: backgroundImageFetchPriority
|
|
11244
11255
|
});
|
|
11245
11256
|
const childrenArray = Array.isArray(children) ? children : [children];
|
|
11246
11257
|
return section(
|
|
@@ -11489,7 +11500,7 @@ function navRow(opts) {
|
|
|
11489
11500
|
el(
|
|
11490
11501
|
"div",
|
|
11491
11502
|
{
|
|
11492
|
-
className: "nav-dropdown-menu rb-absolute rb-left-0 rb-top-full rb-z-50 rb-hidden rb-
|
|
11503
|
+
className: "nav-dropdown-menu rb-absolute rb-left-0 rb-top-full rb-z-50 rb-hidden rb-overflow-hidden",
|
|
11493
11504
|
id: dropdownMenuId
|
|
11494
11505
|
},
|
|
11495
11506
|
[dropdownLinks]
|
|
@@ -17740,6 +17751,206 @@ var init_shop_shared = __esm({
|
|
|
17740
17751
|
}
|
|
17741
17752
|
});
|
|
17742
17753
|
|
|
17754
|
+
// ../blocks/src/system/blocks/event-details.ts
|
|
17755
|
+
import { z as z51 } from "zod";
|
|
17756
|
+
var eventDetailsManifest, occurrenceContextSchema2, eventAutoApplyDiscountPreviewBaseSchema, eventAutoApplyDiscountPreviewSchema, eventDetailsBlockDefinition;
|
|
17757
|
+
var init_event_details = __esm({
|
|
17758
|
+
"../blocks/src/system/blocks/event-details.ts"() {
|
|
17759
|
+
"use strict";
|
|
17760
|
+
init_builder();
|
|
17761
|
+
init_builder();
|
|
17762
|
+
init_styledSection();
|
|
17763
|
+
init_fragments();
|
|
17764
|
+
init_shared3();
|
|
17765
|
+
init_shop_shared();
|
|
17766
|
+
init_defineBlock();
|
|
17767
|
+
eventDetailsManifest = createBlockManifest({
|
|
17768
|
+
id: "block.event-details",
|
|
17769
|
+
version: "1.0.0",
|
|
17770
|
+
title: "Event Details",
|
|
17771
|
+
titleSource: "heading",
|
|
17772
|
+
description: "Date/time, venue, map, and other dates for an event",
|
|
17773
|
+
category: "content",
|
|
17774
|
+
tags: ["events", "venue", "map", "schedule", "dates"],
|
|
17775
|
+
icon: "MapPin",
|
|
17776
|
+
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
17777
|
+
behaviours: {
|
|
17778
|
+
supportsThemeSwitching: true,
|
|
17779
|
+
inlineEditing: false,
|
|
17780
|
+
animation: false,
|
|
17781
|
+
paletteHidden: false
|
|
17782
|
+
},
|
|
17783
|
+
additionalFields: [
|
|
17784
|
+
{
|
|
17785
|
+
id: "heading",
|
|
17786
|
+
type: "text",
|
|
17787
|
+
label: "Heading",
|
|
17788
|
+
description: "Optional heading shown above event details",
|
|
17789
|
+
required: false,
|
|
17790
|
+
multiline: false,
|
|
17791
|
+
defaultValue: "Event details"
|
|
17792
|
+
},
|
|
17793
|
+
{
|
|
17794
|
+
id: "showVenue",
|
|
17795
|
+
type: "boolean",
|
|
17796
|
+
label: "Show venue",
|
|
17797
|
+
required: false,
|
|
17798
|
+
defaultValue: true,
|
|
17799
|
+
ui: { intent: "display" }
|
|
17800
|
+
},
|
|
17801
|
+
{
|
|
17802
|
+
id: "showMap",
|
|
17803
|
+
type: "boolean",
|
|
17804
|
+
label: "Show map",
|
|
17805
|
+
description: "Embed a map when the venue has coordinates",
|
|
17806
|
+
required: false,
|
|
17807
|
+
defaultValue: true,
|
|
17808
|
+
ui: { intent: "display" }
|
|
17809
|
+
},
|
|
17810
|
+
{
|
|
17811
|
+
id: "showOtherDates",
|
|
17812
|
+
type: "boolean",
|
|
17813
|
+
label: "Show other dates",
|
|
17814
|
+
required: false,
|
|
17815
|
+
defaultValue: true,
|
|
17816
|
+
ui: { intent: "display" }
|
|
17817
|
+
},
|
|
17818
|
+
{
|
|
17819
|
+
id: "otherDatesLimit",
|
|
17820
|
+
type: "select",
|
|
17821
|
+
label: "Other dates limit",
|
|
17822
|
+
required: false,
|
|
17823
|
+
multiple: false,
|
|
17824
|
+
defaultValue: "5",
|
|
17825
|
+
options: [
|
|
17826
|
+
{ value: "3", label: "3 dates" },
|
|
17827
|
+
{ value: "5", label: "5 dates" },
|
|
17828
|
+
{ value: "10", label: "10 dates" }
|
|
17829
|
+
],
|
|
17830
|
+
ui: { intent: "display" }
|
|
17831
|
+
},
|
|
17832
|
+
{
|
|
17833
|
+
id: "showCost",
|
|
17834
|
+
type: "boolean",
|
|
17835
|
+
label: "Show cost",
|
|
17836
|
+
description: "Display ticket price for paid events",
|
|
17837
|
+
required: false,
|
|
17838
|
+
defaultValue: true,
|
|
17839
|
+
ui: { intent: "display" }
|
|
17840
|
+
},
|
|
17841
|
+
{
|
|
17842
|
+
id: "showAcceptedPasses",
|
|
17843
|
+
type: "boolean",
|
|
17844
|
+
label: "Show accepted passes",
|
|
17845
|
+
description: "Display passes that can be used for this event",
|
|
17846
|
+
required: false,
|
|
17847
|
+
defaultValue: true,
|
|
17848
|
+
ui: { intent: "display" }
|
|
17849
|
+
},
|
|
17850
|
+
{
|
|
17851
|
+
id: "showAcceptedMemberships",
|
|
17852
|
+
type: "boolean",
|
|
17853
|
+
label: "Show accepted memberships",
|
|
17854
|
+
description: "Display memberships that grant access to this event",
|
|
17855
|
+
required: false,
|
|
17856
|
+
defaultValue: true,
|
|
17857
|
+
ui: { intent: "display" }
|
|
17858
|
+
}
|
|
17859
|
+
],
|
|
17860
|
+
layout: [
|
|
17861
|
+
styledSection({
|
|
17862
|
+
baseClass: "",
|
|
17863
|
+
spacing: "spacious",
|
|
17864
|
+
children: sectionContainer(
|
|
17865
|
+
[
|
|
17866
|
+
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
17867
|
+
el("event-details", {
|
|
17868
|
+
occurrenceContext: {
|
|
17869
|
+
$bind: { from: "$root.occurrenceContext", fallback: null }
|
|
17870
|
+
},
|
|
17871
|
+
contentEntry: { $bind: { from: "$root.contentEntry", fallback: null } },
|
|
17872
|
+
events: { $bind: { from: "data.eventDetailsData.events" } },
|
|
17873
|
+
showVenue: { $bind: { from: "content.showVenue" } },
|
|
17874
|
+
showMap: { $bind: { from: "content.showMap" } },
|
|
17875
|
+
showOtherDates: { $bind: { from: "content.showOtherDates" } },
|
|
17876
|
+
otherDatesLimit: {
|
|
17877
|
+
$bind: { from: "content.otherDatesLimit", fallback: "5" }
|
|
17878
|
+
},
|
|
17879
|
+
showCost: { $bind: { from: "content.showCost", fallback: true } },
|
|
17880
|
+
showAcceptedPasses: {
|
|
17881
|
+
$bind: { from: "content.showAcceptedPasses", fallback: true }
|
|
17882
|
+
},
|
|
17883
|
+
showAcceptedMemberships: {
|
|
17884
|
+
$bind: { from: "content.showAcceptedMemberships", fallback: true }
|
|
17885
|
+
},
|
|
17886
|
+
sitePasses: { $bind: { from: "data.eventDetailsData.sitePasses" } },
|
|
17887
|
+
siteMemberships: { $bind: { from: "data.eventDetailsData.siteMemberships" } },
|
|
17888
|
+
autoApplyDiscount: {
|
|
17889
|
+
$bind: { from: "data.eventDetailsData.autoApplyDiscount", fallback: null }
|
|
17890
|
+
}
|
|
17891
|
+
})
|
|
17892
|
+
],
|
|
17893
|
+
{ gap: "lg" }
|
|
17894
|
+
)
|
|
17895
|
+
})
|
|
17896
|
+
]
|
|
17897
|
+
});
|
|
17898
|
+
occurrenceContextSchema2 = z51.object({
|
|
17899
|
+
id: z51.string(),
|
|
17900
|
+
seriesId: z51.string(),
|
|
17901
|
+
startsAt: z51.string(),
|
|
17902
|
+
endsAt: z51.string(),
|
|
17903
|
+
timeZone: z51.string(),
|
|
17904
|
+
capacityOverride: z51.number().nullable().optional(),
|
|
17905
|
+
overrides: z51.record(z51.string(), z51.unknown()).nullable().optional()
|
|
17906
|
+
}).nullable();
|
|
17907
|
+
eventAutoApplyDiscountPreviewBaseSchema = z51.object({
|
|
17908
|
+
id: z51.string(),
|
|
17909
|
+
publicLabel: z51.string(),
|
|
17910
|
+
description: z51.string().nullable(),
|
|
17911
|
+
minTicketsRequired: z51.number().nullable()
|
|
17912
|
+
});
|
|
17913
|
+
eventAutoApplyDiscountPreviewSchema = z51.discriminatedUnion("discountType", [
|
|
17914
|
+
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
17915
|
+
discountType: z51.literal("percent"),
|
|
17916
|
+
discountPercent: z51.number(),
|
|
17917
|
+
discountAmountCents: z51.null()
|
|
17918
|
+
}),
|
|
17919
|
+
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
17920
|
+
discountType: z51.literal("fixed"),
|
|
17921
|
+
discountPercent: z51.null(),
|
|
17922
|
+
discountAmountCents: z51.number()
|
|
17923
|
+
})
|
|
17924
|
+
]);
|
|
17925
|
+
eventDetailsBlockDefinition = {
|
|
17926
|
+
manifest: eventDetailsManifest,
|
|
17927
|
+
dataSchemas: {
|
|
17928
|
+
eventDetailsData: z51.object({
|
|
17929
|
+
events: publicEventsArraySchema,
|
|
17930
|
+
sitePasses: z51.object({ passes: z51.array(publicPassProductSchema) }),
|
|
17931
|
+
siteMemberships: z51.object({ memberships: z51.array(publicMembershipProductSchema) }),
|
|
17932
|
+
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
17933
|
+
}).optional(),
|
|
17934
|
+
occurrenceContext: occurrenceContextSchema2.optional()
|
|
17935
|
+
},
|
|
17936
|
+
dataLoaders: {
|
|
17937
|
+
eventDetailsData: {
|
|
17938
|
+
endpoint: "getPublicEventDetails",
|
|
17939
|
+
params: {
|
|
17940
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
17941
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
17942
|
+
limit: "25",
|
|
17943
|
+
entryId: { $bind: { from: "$root.contentEntry._entryId" } },
|
|
17944
|
+
seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
|
|
17945
|
+
includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
|
|
17946
|
+
},
|
|
17947
|
+
mode: "server"
|
|
17948
|
+
}
|
|
17949
|
+
}
|
|
17950
|
+
};
|
|
17951
|
+
}
|
|
17952
|
+
});
|
|
17953
|
+
|
|
17743
17954
|
// ../calendar/src/grid.ts
|
|
17744
17955
|
function formatDateKey2(date) {
|
|
17745
17956
|
const year = date.getFullYear();
|
|
@@ -19643,6 +19854,8 @@ var init_media_server = __esm({
|
|
|
19643
19854
|
className,
|
|
19644
19855
|
style,
|
|
19645
19856
|
videoPlayback = "inline",
|
|
19857
|
+
loading = "lazy",
|
|
19858
|
+
fetchPriority,
|
|
19646
19859
|
size = ImagePresets.full,
|
|
19647
19860
|
fieldPath,
|
|
19648
19861
|
blockKind,
|
|
@@ -19679,7 +19892,8 @@ var init_media_server = __esm({
|
|
|
19679
19892
|
alt: value.alt ?? "",
|
|
19680
19893
|
className,
|
|
19681
19894
|
style: computedStyle,
|
|
19682
|
-
loading
|
|
19895
|
+
loading,
|
|
19896
|
+
fetchPriority,
|
|
19683
19897
|
decoding: "async"
|
|
19684
19898
|
}
|
|
19685
19899
|
);
|
|
@@ -25596,6 +25810,7 @@ var init_video_embed = __esm({
|
|
|
25596
25810
|
height: "100%",
|
|
25597
25811
|
border: "none"
|
|
25598
25812
|
},
|
|
25813
|
+
loading: "lazy",
|
|
25599
25814
|
allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share",
|
|
25600
25815
|
referrerPolicy: "no-referrer-when-downgrade",
|
|
25601
25816
|
allowFullScreen: true
|
|
@@ -30846,6 +31061,26 @@ var init_presets2 = __esm({
|
|
|
30846
31061
|
}
|
|
30847
31062
|
});
|
|
30848
31063
|
|
|
31064
|
+
// ../theme-core/src/header/navDropdownSizing.ts
|
|
31065
|
+
var NAV_DROPDOWN_MIN_WIDTH_REM, NAV_DROPDOWN_MAX_WIDTH_REM, NAV_DROPDOWN_VIEWPORT_GUTTER_REM, NAV_DROPDOWN_VIEWPORT_GUTTER_PX, NAV_DROPDOWN_SHIFT_PROPERTY, NAV_DROPDOWN_MAX_WIDTH_CSS, NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES;
|
|
31066
|
+
var init_navDropdownSizing = __esm({
|
|
31067
|
+
"../theme-core/src/header/navDropdownSizing.ts"() {
|
|
31068
|
+
"use strict";
|
|
31069
|
+
NAV_DROPDOWN_MIN_WIDTH_REM = 12;
|
|
31070
|
+
NAV_DROPDOWN_MAX_WIDTH_REM = 22;
|
|
31071
|
+
NAV_DROPDOWN_VIEWPORT_GUTTER_REM = 1;
|
|
31072
|
+
NAV_DROPDOWN_VIEWPORT_GUTTER_PX = 16;
|
|
31073
|
+
NAV_DROPDOWN_SHIFT_PROPERTY = "--nav-dropdown-shift-x";
|
|
31074
|
+
NAV_DROPDOWN_MAX_WIDTH_CSS = `min(${NAV_DROPDOWN_MAX_WIDTH_REM}rem, calc(100vw - ${NAV_DROPDOWN_VIEWPORT_GUTTER_REM * 2}rem))`;
|
|
31075
|
+
NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES = [
|
|
31076
|
+
`min-width: ${NAV_DROPDOWN_MIN_WIDTH_REM}rem;`,
|
|
31077
|
+
`width: max-content;`,
|
|
31078
|
+
`max-width: ${NAV_DROPDOWN_MAX_WIDTH_CSS};`,
|
|
31079
|
+
`transform: translateX(var(${NAV_DROPDOWN_SHIFT_PROPERTY}, 0px));`
|
|
31080
|
+
];
|
|
31081
|
+
}
|
|
31082
|
+
});
|
|
31083
|
+
|
|
30849
31084
|
// ../theme-core/src/header/generateHeaderCss.ts
|
|
30850
31085
|
function generateHeaderCss(options) {
|
|
30851
31086
|
const { themeId, theme } = options;
|
|
@@ -31118,6 +31353,7 @@ function generateDropdownContainerStyles(header, themeId, tokens) {
|
|
|
31118
31353
|
const selector = `:where([data-theme-scope="${themeId}"]) .nav-dropdown-menu`;
|
|
31119
31354
|
const rules = [];
|
|
31120
31355
|
const dropdownStyle = header.dropdownStyle;
|
|
31356
|
+
rules.push(...NAV_DROPDOWN_CONTAINER_RAIL_CSS_RULES);
|
|
31121
31357
|
const bgToken = dropdownStyle?.background ?? "surface";
|
|
31122
31358
|
rules.push(`background-color: ${tokens.getColor(bgToken)};`);
|
|
31123
31359
|
const textToken = dropdownStyle?.textColor ?? "text";
|
|
@@ -31377,6 +31613,7 @@ var init_generateHeaderCss = __esm({
|
|
|
31377
31613
|
init_presets2();
|
|
31378
31614
|
init_shared();
|
|
31379
31615
|
init_breakpoints();
|
|
31616
|
+
init_navDropdownSizing();
|
|
31380
31617
|
HEADER_BLUR = "blur(12px)";
|
|
31381
31618
|
FLOATING_BLUR = "blur(16px)";
|
|
31382
31619
|
HEADER_CTA_GAP_MAP = {
|
|
@@ -40889,6 +41126,17 @@ var init_containerResponsiveThemeCss = __esm({
|
|
|
40889
41126
|
* =============================================================================
|
|
40890
41127
|
*/
|
|
40891
41128
|
|
|
41129
|
+
:where(.theme-scope) .nav-dropdown-menu {
|
|
41130
|
+
/*
|
|
41131
|
+
* Keep these rails in sync with header/navDropdownSizing.ts.
|
|
41132
|
+
* The JS placement gutter is 16px, matching the 1rem per-side gutter in calc(100vw - 2rem).
|
|
41133
|
+
*/
|
|
41134
|
+
min-width: 12rem;
|
|
41135
|
+
width: max-content;
|
|
41136
|
+
max-width: min(22rem, calc(100vw - 2rem));
|
|
41137
|
+
transform: translateX(var(--nav-dropdown-shift-x, 0px));
|
|
41138
|
+
}
|
|
41139
|
+
|
|
40892
41140
|
:where(.theme-scope) .nav-dropdown:hover > .nav-dropdown-menu,
|
|
40893
41141
|
:where(.theme-scope) .nav-dropdown:focus-within > .nav-dropdown-menu,
|
|
40894
41142
|
:where(.theme-scope) .nav-dropdown .nav-dropdown-trigger[aria-expanded="true"] + .nav-dropdown-menu {
|
|
@@ -42688,9 +42936,189 @@ var init_themeScopeUtils = __esm({
|
|
|
42688
42936
|
}
|
|
42689
42937
|
});
|
|
42690
42938
|
|
|
42939
|
+
// ../blocks/src/contracts/non-block-islands.ts
|
|
42940
|
+
import { z as z72 } from "zod";
|
|
42941
|
+
var accordionIslandSchema, headerSectionIslandSchema, responsiveSlidesToShowSchema, carouselIslandSchema, eventDetailsOccurrenceContextSchema, eventDetailsContentEntrySchema, eventDetailsIslandSchema, locationMapIslandSchema, accordionIslandPropsCodec, headerSectionIslandPropsCodec, carouselIslandPropsCodec, eventDetailsIslandPropsCodec, locationMapIslandPropsCodec;
|
|
42942
|
+
var init_non_block_islands = __esm({
|
|
42943
|
+
"../blocks/src/contracts/non-block-islands.ts"() {
|
|
42944
|
+
"use strict";
|
|
42945
|
+
init_runtime();
|
|
42946
|
+
init_shop_shared();
|
|
42947
|
+
init_schemas2();
|
|
42948
|
+
init_event_details();
|
|
42949
|
+
accordionIslandSchema = z72.object({
|
|
42950
|
+
type: z72.enum(["single", "multiple"]).optional(),
|
|
42951
|
+
defaultValue: z72.union([z72.string(), z72.array(z72.string())]).optional(),
|
|
42952
|
+
collapsible: z72.boolean().optional()
|
|
42953
|
+
});
|
|
42954
|
+
headerSectionIslandSchema = z72.object({
|
|
42955
|
+
enabled: z72.boolean().optional(),
|
|
42956
|
+
scrollEnabled: z72.boolean().optional()
|
|
42957
|
+
});
|
|
42958
|
+
responsiveSlidesToShowSchema = z72.object({
|
|
42959
|
+
mobile: z72.union([z72.number(), z72.string()]).optional(),
|
|
42960
|
+
tablet: z72.union([z72.number(), z72.string()]).optional(),
|
|
42961
|
+
desktop: z72.union([z72.number(), z72.string()]).optional()
|
|
42962
|
+
});
|
|
42963
|
+
carouselIslandSchema = z72.object({
|
|
42964
|
+
slidesToShow: z72.union([z72.number(), z72.string(), responsiveSlidesToShowSchema]).optional(),
|
|
42965
|
+
transition: z72.enum(["slide", "fade"]).optional(),
|
|
42966
|
+
showControls: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
42967
|
+
showDots: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
42968
|
+
arrowVisibility: z72.enum(["always", "hover", "never"]).optional(),
|
|
42969
|
+
autoplay: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
42970
|
+
autoplayDelay: z72.union([z72.number(), z72.string()]).optional(),
|
|
42971
|
+
loop: z72.union([z72.boolean(), z72.string()]).optional()
|
|
42972
|
+
});
|
|
42973
|
+
eventDetailsOccurrenceContextSchema = z72.object({
|
|
42974
|
+
id: z72.string(),
|
|
42975
|
+
seriesId: z72.string(),
|
|
42976
|
+
startsAt: z72.string(),
|
|
42977
|
+
endsAt: z72.string(),
|
|
42978
|
+
timeZone: z72.string()
|
|
42979
|
+
});
|
|
42980
|
+
eventDetailsContentEntrySchema = z72.object({
|
|
42981
|
+
id: z72.string(),
|
|
42982
|
+
slug: z72.string(),
|
|
42983
|
+
contentTypeSlug: z72.string()
|
|
42984
|
+
});
|
|
42985
|
+
eventDetailsIslandSchema = z72.object({
|
|
42986
|
+
occurrenceContext: eventDetailsOccurrenceContextSchema.nullable().optional(),
|
|
42987
|
+
contentEntry: eventDetailsContentEntrySchema.nullable().optional(),
|
|
42988
|
+
events: z72.array(publicEventSchema).nullable().optional(),
|
|
42989
|
+
showVenue: z72.boolean().optional(),
|
|
42990
|
+
showMap: z72.boolean().optional(),
|
|
42991
|
+
showOtherDates: z72.boolean().optional(),
|
|
42992
|
+
otherDatesLimit: z72.string().optional(),
|
|
42993
|
+
showCost: z72.boolean().optional(),
|
|
42994
|
+
showAcceptedPasses: z72.boolean().optional(),
|
|
42995
|
+
showAcceptedMemberships: z72.boolean().optional(),
|
|
42996
|
+
sitePasses: z72.object({ passes: z72.array(publicPassProductSchema) }).nullable().optional(),
|
|
42997
|
+
siteMemberships: z72.object({ memberships: z72.array(publicMembershipProductSchema) }).nullable().optional(),
|
|
42998
|
+
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional(),
|
|
42999
|
+
className: z72.string().nullable().optional(),
|
|
43000
|
+
nowIso: z72.string().optional()
|
|
43001
|
+
});
|
|
43002
|
+
locationMapIslandSchema = z72.object({
|
|
43003
|
+
location: z72.object({
|
|
43004
|
+
addressText: z72.string().nullable(),
|
|
43005
|
+
lat: z72.number().nullable(),
|
|
43006
|
+
lng: z72.number().nullable()
|
|
43007
|
+
}).nullable().optional(),
|
|
43008
|
+
zoom: z72.number().nullable().optional(),
|
|
43009
|
+
heightPx: z72.number().nullable().optional(),
|
|
43010
|
+
showAddressText: z72.boolean().optional(),
|
|
43011
|
+
showDirections: z72.boolean().optional(),
|
|
43012
|
+
directionsLabel: z72.string().nullable().optional(),
|
|
43013
|
+
className: z72.string().nullable().optional()
|
|
43014
|
+
});
|
|
43015
|
+
accordionIslandPropsCodec = createZodCodec(accordionIslandSchema);
|
|
43016
|
+
headerSectionIslandPropsCodec = createZodCodec(headerSectionIslandSchema);
|
|
43017
|
+
carouselIslandPropsCodec = createZodCodec(carouselIslandSchema);
|
|
43018
|
+
eventDetailsIslandPropsCodec = createZodCodec(eventDetailsIslandSchema);
|
|
43019
|
+
locationMapIslandPropsCodec = createZodCodec(locationMapIslandSchema);
|
|
43020
|
+
}
|
|
43021
|
+
});
|
|
43022
|
+
|
|
43023
|
+
// ../blocks/src/contracts/proof-block-islands.ts
|
|
43024
|
+
var proofBlockIslandCodecs, runtimeIslandCodecs;
|
|
43025
|
+
var init_proof_block_islands = __esm({
|
|
43026
|
+
"../blocks/src/contracts/proof-block-islands.ts"() {
|
|
43027
|
+
"use strict";
|
|
43028
|
+
init_booking_form_interactive();
|
|
43029
|
+
init_course_registration_interactive();
|
|
43030
|
+
init_EventListing_interactive();
|
|
43031
|
+
init_non_block_islands();
|
|
43032
|
+
init_EventCalendar_interactive();
|
|
43033
|
+
init_EventCombined_interactive();
|
|
43034
|
+
init_event_registration_interactive();
|
|
43035
|
+
init_form_interactive();
|
|
43036
|
+
init_gifting_interactive();
|
|
43037
|
+
init_newsletter_form_interactive();
|
|
43038
|
+
init_shop_interactive();
|
|
43039
|
+
proofBlockIslandCodecs = {
|
|
43040
|
+
"booking-form": bookingFormInteractiveIslandPropsCodec,
|
|
43041
|
+
"course-registration": courseRegistrationInteractiveIslandPropsCodec,
|
|
43042
|
+
"event-registration": eventRegistrationInteractiveIslandPropsCodec,
|
|
43043
|
+
form: formInteractiveIslandPropsCodec,
|
|
43044
|
+
"event-listing": eventListingInteractiveIslandPropsCodec,
|
|
43045
|
+
"event-calendar": eventCalendarInteractiveIslandPropsCodec,
|
|
43046
|
+
"newsletter-form": newsletterFormInteractiveIslandPropsCodec,
|
|
43047
|
+
gifting: giftingInteractiveIslandPropsCodec,
|
|
43048
|
+
"product-list": productListInteractiveIslandPropsCodec,
|
|
43049
|
+
"product-detail": productDetailInteractiveIslandPropsCodec,
|
|
43050
|
+
cart: cartInteractiveIslandPropsCodec,
|
|
43051
|
+
checkout: checkoutInteractiveIslandPropsCodec,
|
|
43052
|
+
shop: shopInteractiveIslandPropsCodec
|
|
43053
|
+
};
|
|
43054
|
+
runtimeIslandCodecs = {
|
|
43055
|
+
accordion: accordionIslandPropsCodec,
|
|
43056
|
+
carousel: carouselIslandPropsCodec,
|
|
43057
|
+
headerSection: headerSectionIslandPropsCodec,
|
|
43058
|
+
"event-details": eventDetailsIslandPropsCodec,
|
|
43059
|
+
"location-map": locationMapIslandPropsCodec,
|
|
43060
|
+
...proofBlockIslandCodecs,
|
|
43061
|
+
// `event-combined` is not a proof block definition, but it still participates
|
|
43062
|
+
// in the same typed SSR/hydration contract path as we close the last raw island seams.
|
|
43063
|
+
"event-combined": eventCombinedInteractiveIslandPropsCodec
|
|
43064
|
+
};
|
|
43065
|
+
}
|
|
43066
|
+
});
|
|
43067
|
+
|
|
43068
|
+
// ../blocks/src/contracts/index.ts
|
|
43069
|
+
var init_contracts = __esm({
|
|
43070
|
+
"../blocks/src/contracts/index.ts"() {
|
|
43071
|
+
"use strict";
|
|
43072
|
+
init_runtime();
|
|
43073
|
+
init_proof_block_islands();
|
|
43074
|
+
}
|
|
43075
|
+
});
|
|
43076
|
+
|
|
43077
|
+
// src/rendering/islands/blocksContracts.ts
|
|
43078
|
+
var init_blocksContracts = __esm({
|
|
43079
|
+
"src/rendering/islands/blocksContracts.ts"() {
|
|
43080
|
+
"use strict";
|
|
43081
|
+
init_contracts();
|
|
43082
|
+
}
|
|
43083
|
+
});
|
|
43084
|
+
|
|
43085
|
+
// src/rendering/islands/propsDecoder.ts
|
|
43086
|
+
function defineIslandPropsDecoder(kind) {
|
|
43087
|
+
return (input) => {
|
|
43088
|
+
const codec = islandDecoders[kind];
|
|
43089
|
+
if (!codec) {
|
|
43090
|
+
return input;
|
|
43091
|
+
}
|
|
43092
|
+
const result = codec.decode(input);
|
|
43093
|
+
if (isDecodeSuccess(result)) {
|
|
43094
|
+
return result.value;
|
|
43095
|
+
}
|
|
43096
|
+
throw new IslandPropsDecodeError(kind, result.issues);
|
|
43097
|
+
};
|
|
43098
|
+
}
|
|
43099
|
+
var IslandPropsDecodeError, islandDecoders;
|
|
43100
|
+
var init_propsDecoder = __esm({
|
|
43101
|
+
"src/rendering/islands/propsDecoder.ts"() {
|
|
43102
|
+
"use strict";
|
|
43103
|
+
init_contracts();
|
|
43104
|
+
init_blocksContracts();
|
|
43105
|
+
IslandPropsDecodeError = class extends Error {
|
|
43106
|
+
constructor(kind, issues) {
|
|
43107
|
+
super(
|
|
43108
|
+
`[sdk:islands] Invalid props for island kind="${kind}": ${issues.map((issue2) => `${issue2.path.join(".") || "<root>"}: ${issue2.message}`).join("; ")}`
|
|
43109
|
+
);
|
|
43110
|
+
this.name = "IslandPropsDecodeError";
|
|
43111
|
+
this.issues = issues;
|
|
43112
|
+
}
|
|
43113
|
+
};
|
|
43114
|
+
islandDecoders = runtimeIslandCodecs;
|
|
43115
|
+
}
|
|
43116
|
+
});
|
|
43117
|
+
|
|
42691
43118
|
// src/rendering/islands/enhancers/accordion.ts
|
|
42692
43119
|
var accordion_exports = {};
|
|
42693
43120
|
__export(accordion_exports, {
|
|
43121
|
+
decode: () => decode,
|
|
42694
43122
|
enhance: () => enhance
|
|
42695
43123
|
});
|
|
42696
43124
|
function parseDefaultValues(value) {
|
|
@@ -42714,10 +43142,12 @@ function normalizeDefaultValues(domValue, propsValue) {
|
|
|
42714
43142
|
if (typeof propsValue === "string" && propsValue.trim()) return [propsValue.trim()];
|
|
42715
43143
|
return parseDefaultValues(domValue);
|
|
42716
43144
|
}
|
|
42717
|
-
var enhance;
|
|
43145
|
+
var decode, enhance;
|
|
42718
43146
|
var init_accordion = __esm({
|
|
42719
43147
|
"src/rendering/islands/enhancers/accordion.ts"() {
|
|
42720
43148
|
"use strict";
|
|
43149
|
+
init_propsDecoder();
|
|
43150
|
+
decode = defineIslandPropsDecoder("accordion");
|
|
42721
43151
|
enhance = (root, props2) => {
|
|
42722
43152
|
if (root.dataset.rbAccordionEnhanced === "true") return;
|
|
42723
43153
|
root.dataset.rbAccordionEnhanced = "true";
|
|
@@ -60432,6 +60862,39 @@ var init_headerCartRuntime = __esm({
|
|
|
60432
60862
|
});
|
|
60433
60863
|
|
|
60434
60864
|
// ../blocks/src/system/runtime/header/enhanceHeaderSection.ts
|
|
60865
|
+
function planDropdownViewportShift(input) {
|
|
60866
|
+
const { left, right, viewportWidth, gutter } = input;
|
|
60867
|
+
if (!Number.isFinite(left) || !Number.isFinite(right) || !Number.isFinite(viewportWidth) || !Number.isFinite(gutter)) {
|
|
60868
|
+
return { kind: "unchanged" };
|
|
60869
|
+
}
|
|
60870
|
+
const normalizedGutter = Math.max(0, gutter);
|
|
60871
|
+
const viewportLeft = normalizedGutter;
|
|
60872
|
+
const viewportRight = Math.max(viewportLeft, viewportWidth - normalizedGutter);
|
|
60873
|
+
const menuWidth = right - left;
|
|
60874
|
+
const availableWidth = viewportRight - viewportLeft;
|
|
60875
|
+
if (menuWidth >= availableWidth) {
|
|
60876
|
+
const x2 = viewportLeft - left;
|
|
60877
|
+
return x2 === 0 ? { kind: "unchanged" } : { kind: "shift", x: x2 };
|
|
60878
|
+
}
|
|
60879
|
+
let x = 0;
|
|
60880
|
+
if (right > viewportRight) x = viewportRight - right;
|
|
60881
|
+
if (left + x < viewportLeft) x += viewportLeft - (left + x);
|
|
60882
|
+
return x === 0 ? { kind: "unchanged" } : { kind: "shift", x };
|
|
60883
|
+
}
|
|
60884
|
+
function applyDropdownPlacementPlan(menu, plan) {
|
|
60885
|
+
switch (plan.kind) {
|
|
60886
|
+
case "unchanged":
|
|
60887
|
+
menu.style.removeProperty(NAV_DROPDOWN_SHIFT_PROPERTY);
|
|
60888
|
+
return;
|
|
60889
|
+
case "shift":
|
|
60890
|
+
menu.style.setProperty(NAV_DROPDOWN_SHIFT_PROPERTY, `${plan.x}px`);
|
|
60891
|
+
return;
|
|
60892
|
+
default: {
|
|
60893
|
+
const _exhaustive = plan;
|
|
60894
|
+
return _exhaustive;
|
|
60895
|
+
}
|
|
60896
|
+
}
|
|
60897
|
+
}
|
|
60435
60898
|
function getFirstNonScriptChild(root) {
|
|
60436
60899
|
const children = Array.from(root.children);
|
|
60437
60900
|
for (const child of children) {
|
|
@@ -60449,16 +60912,58 @@ function enhanceDesktopDropdownAria(root) {
|
|
|
60449
60912
|
dropdowns.forEach((dropdown) => {
|
|
60450
60913
|
const trigger = dropdown.querySelector(SELECTORS.dropdownTrigger);
|
|
60451
60914
|
if (!trigger) return;
|
|
60915
|
+
const menu = dropdown.querySelector(SELECTORS.dropdownMenu);
|
|
60916
|
+
let placementRafId = null;
|
|
60917
|
+
let placementRafScheduled = false;
|
|
60918
|
+
const cancelPlacementFrame = () => {
|
|
60919
|
+
if (placementRafId !== null) {
|
|
60920
|
+
window.cancelAnimationFrame(placementRafId);
|
|
60921
|
+
placementRafId = null;
|
|
60922
|
+
}
|
|
60923
|
+
placementRafScheduled = false;
|
|
60924
|
+
};
|
|
60925
|
+
const resetPlacement = () => {
|
|
60926
|
+
cancelPlacementFrame();
|
|
60927
|
+
menu?.style.removeProperty(NAV_DROPDOWN_SHIFT_PROPERTY);
|
|
60928
|
+
};
|
|
60929
|
+
const schedulePlacement = () => {
|
|
60930
|
+
if (!menu) return;
|
|
60931
|
+
resetPlacement();
|
|
60932
|
+
placementRafScheduled = true;
|
|
60933
|
+
const id = window.requestAnimationFrame(() => {
|
|
60934
|
+
placementRafScheduled = false;
|
|
60935
|
+
placementRafId = null;
|
|
60936
|
+
const rect = menu.getBoundingClientRect();
|
|
60937
|
+
const plan = planDropdownViewportShift({
|
|
60938
|
+
left: rect.left,
|
|
60939
|
+
right: rect.right,
|
|
60940
|
+
viewportWidth: document.documentElement.clientWidth,
|
|
60941
|
+
gutter: NAV_DROPDOWN_VIEWPORT_GUTTER_PX
|
|
60942
|
+
});
|
|
60943
|
+
applyDropdownPlacementPlan(menu, plan);
|
|
60944
|
+
});
|
|
60945
|
+
placementRafId = placementRafScheduled ? id : null;
|
|
60946
|
+
};
|
|
60452
60947
|
setExpanded(trigger, false);
|
|
60453
|
-
const handleEnter = () =>
|
|
60948
|
+
const handleEnter = () => {
|
|
60949
|
+
setExpanded(trigger, true);
|
|
60950
|
+
schedulePlacement();
|
|
60951
|
+
};
|
|
60454
60952
|
const handleLeave = () => {
|
|
60455
60953
|
if (dropdown.contains(document.activeElement)) return;
|
|
60456
60954
|
setExpanded(trigger, false);
|
|
60955
|
+
resetPlacement();
|
|
60956
|
+
};
|
|
60957
|
+
const handleFocusIn = () => {
|
|
60958
|
+
setExpanded(trigger, true);
|
|
60959
|
+
schedulePlacement();
|
|
60457
60960
|
};
|
|
60458
|
-
const handleFocusIn = () => setExpanded(trigger, true);
|
|
60459
60961
|
const handleFocusOut = (event) => {
|
|
60460
60962
|
const next = event.relatedTarget;
|
|
60461
|
-
if (!next || !dropdown.contains(next))
|
|
60963
|
+
if (!next || !dropdown.contains(next)) {
|
|
60964
|
+
setExpanded(trigger, false);
|
|
60965
|
+
resetPlacement();
|
|
60966
|
+
}
|
|
60462
60967
|
};
|
|
60463
60968
|
dropdown.addEventListener("mouseenter", handleEnter);
|
|
60464
60969
|
dropdown.addEventListener("mouseleave", handleLeave);
|
|
@@ -60469,6 +60974,7 @@ function enhanceDesktopDropdownAria(root) {
|
|
|
60469
60974
|
dropdown.removeEventListener("mouseleave", handleLeave);
|
|
60470
60975
|
dropdown.removeEventListener("focusin", handleFocusIn);
|
|
60471
60976
|
dropdown.removeEventListener("focusout", handleFocusOut);
|
|
60977
|
+
resetPlacement();
|
|
60472
60978
|
});
|
|
60473
60979
|
});
|
|
60474
60980
|
return cleanups;
|
|
@@ -60728,9 +61234,11 @@ var init_enhanceHeaderSection = __esm({
|
|
|
60728
61234
|
"../blocks/src/system/runtime/header/enhanceHeaderSection.ts"() {
|
|
60729
61235
|
"use strict";
|
|
60730
61236
|
"use client";
|
|
61237
|
+
init_navDropdownSizing();
|
|
60731
61238
|
init_headerCartRuntime();
|
|
60732
61239
|
SELECTORS = {
|
|
60733
61240
|
dropdown: ".nav-dropdown",
|
|
61241
|
+
dropdownMenu: ".nav-dropdown-menu",
|
|
60734
61242
|
dropdownTrigger: ".nav-dropdown-trigger",
|
|
60735
61243
|
mobileOverlay: "[data-nav-mobile-overlay]",
|
|
60736
61244
|
mobileToggle: "[data-nav-mobile-toggle]",
|
|
@@ -61279,8 +61787,7 @@ function useEventFilters({
|
|
|
61279
61787
|
staffMembers: [],
|
|
61280
61788
|
labels: { courseOption: "Course" }
|
|
61281
61789
|
});
|
|
61282
|
-
const [loading, setLoading] = useState23(
|
|
61283
|
-
const [error, setError] = useState23(null);
|
|
61790
|
+
const [loading, setLoading] = useState23(f [error, setError] = useState23(null);
|
|
61284
61791
|
const [selectedKind, setSelectedKindState] = useState23("all");
|
|
61285
61792
|
const [selectedCategoryId, setSelectedCategoryId] = useState23("all");
|
|
61286
61793
|
const [selectedStaffMemberId, setSelectedStaffMemberId] = useState23("all");
|
|
@@ -63783,13 +64290,16 @@ var init_client3 = __esm({
|
|
|
63783
64290
|
// src/rendering/islands/enhancers/headerSection.ts
|
|
63784
64291
|
var headerSection_exports = {};
|
|
63785
64292
|
__export(headerSection_exports, {
|
|
64293
|
+
decode: () => decode2,
|
|
63786
64294
|
enhance: () => enhance2
|
|
63787
64295
|
});
|
|
63788
|
-
var enhance2;
|
|
64296
|
+
var decode2, enhance2;
|
|
63789
64297
|
var init_headerSection = __esm({
|
|
63790
64298
|
"src/rendering/islands/enhancers/headerSection.ts"() {
|
|
63791
64299
|
"use strict";
|
|
63792
64300
|
init_client3();
|
|
64301
|
+
init_propsDecoder();
|
|
64302
|
+
decode2 = defineIslandPropsDecoder("headerSection");
|
|
63793
64303
|
enhance2 = (root, props2) => {
|
|
63794
64304
|
const scrollEnabled = typeof props2?.scrollEnabled === "boolean" ? props2.scrollEnabled : typeof props2?.enabled === "boolean" ? props2.enabled : void 0;
|
|
63795
64305
|
return enhanceHeaderSection(root, { scrollEnabled });
|
|
@@ -63828,6 +64338,7 @@ var init_reactMount = __esm({
|
|
|
63828
64338
|
// src/rendering/islands/enhancers/carousel.tsx
|
|
63829
64339
|
var carousel_exports = {};
|
|
63830
64340
|
__export(carousel_exports, {
|
|
64341
|
+
decode: () => decode3,
|
|
63831
64342
|
enhance: () => enhance3
|
|
63832
64343
|
});
|
|
63833
64344
|
import { jsx as jsx143 } from "react/jsx-runtime";
|
|
@@ -63844,12 +64355,14 @@ function extractSlides(root) {
|
|
|
63844
64355
|
html: el2.innerHTML
|
|
63845
64356
|
}));
|
|
63846
64357
|
}
|
|
63847
|
-
var enhance3;
|
|
64358
|
+
var decode3, enhance3;
|
|
63848
64359
|
var init_carousel = __esm({
|
|
63849
64360
|
"src/rendering/islands/enhancers/carousel.tsx"() {
|
|
63850
64361
|
"use strict";
|
|
63851
64362
|
init_client3();
|
|
64363
|
+
init_propsDecoder();
|
|
63852
64364
|
init_reactMount();
|
|
64365
|
+
decode3 = defineIslandPropsDecoder("carousel");
|
|
63853
64366
|
enhance3 = (root, props2) => {
|
|
63854
64367
|
if (root.dataset.rbReactMounted === "true") return;
|
|
63855
64368
|
const extractedSlides = extractSlides(root);
|
|
@@ -63880,6 +64393,7 @@ var init_carousel = __esm({
|
|
|
63880
64393
|
// src/rendering/islands/enhancers/form.tsx
|
|
63881
64394
|
var form_exports = {};
|
|
63882
64395
|
__export(form_exports, {
|
|
64396
|
+
decode: () => decode4,
|
|
63883
64397
|
enhance: () => enhance4
|
|
63884
64398
|
});
|
|
63885
64399
|
import { jsx as jsx144 } from "react/jsx-runtime";
|
|
@@ -63934,12 +64448,14 @@ function applySnapshots(form2, snapshots) {
|
|
|
63934
64448
|
}
|
|
63935
64449
|
}
|
|
63936
64450
|
}
|
|
63937
|
-
var enhance4;
|
|
64451
|
+
var decode4, enhance4;
|
|
63938
64452
|
var init_form2 = __esm({
|
|
63939
64453
|
"src/rendering/islands/enhancers/form.tsx"() {
|
|
63940
64454
|
"use strict";
|
|
63941
64455
|
init_client3();
|
|
64456
|
+
init_propsDecoder();
|
|
63942
64457
|
init_reactMount();
|
|
64458
|
+
decode4 = defineIslandPropsDecoder("form");
|
|
63943
64459
|
enhance4 = (root, props2) => {
|
|
63944
64460
|
const { siteId, apiBaseUrl } = props2;
|
|
63945
64461
|
if (!siteId) {
|
|
@@ -63971,15 +64487,18 @@ var init_form2 = __esm({
|
|
|
63971
64487
|
// src/rendering/islands/enhancers/bookingForm.tsx
|
|
63972
64488
|
var bookingForm_exports = {};
|
|
63973
64489
|
__export(bookingForm_exports, {
|
|
64490
|
+
decode: () => decode5,
|
|
63974
64491
|
enhance: () => enhance5
|
|
63975
64492
|
});
|
|
63976
64493
|
import { jsx as jsx145 } from "react/jsx-runtime";
|
|
63977
|
-
var enhance5;
|
|
64494
|
+
var decode5, enhance5;
|
|
63978
64495
|
var init_bookingForm2 = __esm({
|
|
63979
64496
|
"src/rendering/islands/enhancers/bookingForm.tsx"() {
|
|
63980
64497
|
"use strict";
|
|
63981
64498
|
init_client3();
|
|
64499
|
+
init_propsDecoder();
|
|
63982
64500
|
init_reactMount();
|
|
64501
|
+
decode5 = defineIslandPropsDecoder("booking-form");
|
|
63983
64502
|
enhance5 = (root, props2) => {
|
|
63984
64503
|
const { apiBaseUrl, portalToken } = props2;
|
|
63985
64504
|
const formId = props2.render.hydration.formId;
|
|
@@ -64011,15 +64530,18 @@ var init_bookingForm2 = __esm({
|
|
|
64011
64530
|
// src/rendering/islands/enhancers/eventRegistration.tsx
|
|
64012
64531
|
var eventRegistration_exports = {};
|
|
64013
64532
|
__export(eventRegistration_exports, {
|
|
64533
|
+
decode: () => decode6,
|
|
64014
64534
|
enhance: () => enhance6
|
|
64015
64535
|
});
|
|
64016
64536
|
import { jsx as jsx146 } from "react/jsx-runtime";
|
|
64017
|
-
var enhance6;
|
|
64537
|
+
var decode6, enhance6;
|
|
64018
64538
|
var init_eventRegistration = __esm({
|
|
64019
64539
|
"src/rendering/islands/enhancers/eventRegistration.tsx"() {
|
|
64020
64540
|
"use strict";
|
|
64021
64541
|
init_client3();
|
|
64542
|
+
init_propsDecoder();
|
|
64022
64543
|
init_reactMount();
|
|
64544
|
+
decode6 = defineIslandPropsDecoder("event-registration");
|
|
64023
64545
|
enhance6 = (root, props2) => {
|
|
64024
64546
|
const { siteId, apiBaseUrl, stage, portalToken } = props2;
|
|
64025
64547
|
if (!siteId) {
|
|
@@ -64046,15 +64568,18 @@ var init_eventRegistration = __esm({
|
|
|
64046
64568
|
// src/rendering/islands/enhancers/eventDetails.tsx
|
|
64047
64569
|
var eventDetails_exports = {};
|
|
64048
64570
|
__export(eventDetails_exports, {
|
|
64571
|
+
decode: () => decode7,
|
|
64049
64572
|
enhance: () => enhance7
|
|
64050
64573
|
});
|
|
64051
64574
|
import { jsx as jsx147 } from "react/jsx-runtime";
|
|
64052
|
-
var enhance7;
|
|
64575
|
+
var decode7, enhance7;
|
|
64053
64576
|
var init_eventDetails = __esm({
|
|
64054
64577
|
"src/rendering/islands/enhancers/eventDetails.tsx"() {
|
|
64055
64578
|
"use strict";
|
|
64056
64579
|
init_client3();
|
|
64580
|
+
init_propsDecoder();
|
|
64057
64581
|
init_reactMount();
|
|
64582
|
+
decode7 = defineIslandPropsDecoder("event-details");
|
|
64058
64583
|
enhance7 = (root, props2) => {
|
|
64059
64584
|
return mountReactIsland(root, ({ root: reactRoot }) => {
|
|
64060
64585
|
reactRoot.render(/* @__PURE__ */ jsx147(EventDetailsIslandClient, { ...props2 }));
|
|
@@ -64066,15 +64591,18 @@ var init_eventDetails = __esm({
|
|
|
64066
64591
|
// src/rendering/islands/enhancers/locationMap.tsx
|
|
64067
64592
|
var locationMap_exports = {};
|
|
64068
64593
|
__export(locationMap_exports, {
|
|
64594
|
+
decode: () => decode8,
|
|
64069
64595
|
enhance: () => enhance8
|
|
64070
64596
|
});
|
|
64071
64597
|
import { jsx as jsx148 } from "react/jsx-runtime";
|
|
64072
|
-
var enhance8;
|
|
64598
|
+
var decode8, enhance8;
|
|
64073
64599
|
var init_locationMap = __esm({
|
|
64074
64600
|
"src/rendering/islands/enhancers/locationMap.tsx"() {
|
|
64075
64601
|
"use strict";
|
|
64076
64602
|
init_client3();
|
|
64603
|
+
init_propsDecoder();
|
|
64077
64604
|
init_reactMount();
|
|
64605
|
+
decode8 = defineIslandPropsDecoder("location-map");
|
|
64078
64606
|
enhance8 = (root, props2) => {
|
|
64079
64607
|
return mountReactIsland(root, ({ root: reactRoot }) => {
|
|
64080
64608
|
reactRoot.render(/* @__PURE__ */ jsx148(LocationMapIslandClient, { ...props2 }));
|
|
@@ -64086,15 +64614,18 @@ var init_locationMap = __esm({
|
|
|
64086
64614
|
// src/rendering/islands/enhancers/courseRegistration.tsx
|
|
64087
64615
|
var courseRegistration_exports = {};
|
|
64088
64616
|
__export(courseRegistration_exports, {
|
|
64617
|
+
decode: () => decode9,
|
|
64089
64618
|
enhance: () => enhance9
|
|
64090
64619
|
});
|
|
64091
64620
|
import { jsx as jsx149 } from "react/jsx-runtime";
|
|
64092
|
-
var enhance9;
|
|
64621
|
+
var decode9, enhance9;
|
|
64093
64622
|
var init_courseRegistration = __esm({
|
|
64094
64623
|
"src/rendering/islands/enhancers/courseRegistration.tsx"() {
|
|
64095
64624
|
"use strict";
|
|
64096
64625
|
init_client3();
|
|
64626
|
+
init_propsDecoder();
|
|
64097
64627
|
init_reactMount();
|
|
64628
|
+
decode9 = defineIslandPropsDecoder("course-registration");
|
|
64098
64629
|
enhance9 = (root, props2) => {
|
|
64099
64630
|
const { siteId, apiBaseUrl, stage, portalToken } = props2;
|
|
64100
64631
|
if (!siteId) {
|
|
@@ -64121,15 +64652,18 @@ var init_courseRegistration = __esm({
|
|
|
64121
64652
|
// src/rendering/islands/enhancers/eventListing.tsx
|
|
64122
64653
|
var eventListing_exports = {};
|
|
64123
64654
|
__export(eventListing_exports, {
|
|
64655
|
+
decode: () => decode10,
|
|
64124
64656
|
enhance: () => enhance10
|
|
64125
64657
|
});
|
|
64126
64658
|
import { jsx as jsx150 } from "react/jsx-runtime";
|
|
64127
|
-
var enhance10;
|
|
64659
|
+
var decode10, enhance10;
|
|
64128
64660
|
var init_eventListing = __esm({
|
|
64129
64661
|
"src/rendering/islands/enhancers/eventListing.tsx"() {
|
|
64130
64662
|
"use strict";
|
|
64131
64663
|
init_client3();
|
|
64664
|
+
init_propsDecoder();
|
|
64132
64665
|
init_reactMount();
|
|
64666
|
+
decode10 = defineIslandPropsDecoder("event-listing");
|
|
64133
64667
|
enhance10 = (root, props2) => {
|
|
64134
64668
|
const { siteId, apiBaseUrl, stage } = props2;
|
|
64135
64669
|
if (!siteId) {
|
|
@@ -64156,15 +64690,18 @@ var init_eventListing = __esm({
|
|
|
64156
64690
|
// src/rendering/islands/enhancers/eventCalendar.tsx
|
|
64157
64691
|
var eventCalendar_exports = {};
|
|
64158
64692
|
__export(eventCalendar_exports, {
|
|
64693
|
+
decode: () => decode11,
|
|
64159
64694
|
enhance: () => enhance11
|
|
64160
64695
|
});
|
|
64161
64696
|
import { jsx as jsx151 } from "react/jsx-runtime";
|
|
64162
|
-
var enhance11;
|
|
64697
|
+
var decode11, enhance11;
|
|
64163
64698
|
var init_eventCalendar = __esm({
|
|
64164
64699
|
"src/rendering/islands/enhancers/eventCalendar.tsx"() {
|
|
64165
64700
|
"use strict";
|
|
64166
64701
|
init_client3();
|
|
64702
|
+
init_propsDecoder();
|
|
64167
64703
|
init_reactMount();
|
|
64704
|
+
decode11 = defineIslandPropsDecoder("event-calendar");
|
|
64168
64705
|
enhance11 = (root, props2) => {
|
|
64169
64706
|
const { siteId, apiBaseUrl, stage } = props2;
|
|
64170
64707
|
if (!siteId) {
|
|
@@ -64191,15 +64728,18 @@ var init_eventCalendar = __esm({
|
|
|
64191
64728
|
// src/rendering/islands/enhancers/eventCombined.tsx
|
|
64192
64729
|
var eventCombined_exports = {};
|
|
64193
64730
|
__export(eventCombined_exports, {
|
|
64731
|
+
decode: () => decode12,
|
|
64194
64732
|
enhance: () => enhance12
|
|
64195
64733
|
});
|
|
64196
64734
|
import { jsx as jsx152 } from "react/jsx-runtime";
|
|
64197
|
-
var enhance12;
|
|
64735
|
+
var decode12, enhance12;
|
|
64198
64736
|
var init_eventCombined = __esm({
|
|
64199
64737
|
"src/rendering/islands/enhancers/eventCombined.tsx"() {
|
|
64200
64738
|
"use strict";
|
|
64201
64739
|
init_client3();
|
|
64740
|
+
init_propsDecoder();
|
|
64202
64741
|
init_reactMount();
|
|
64742
|
+
decode12 = defineIslandPropsDecoder("event-combined");
|
|
64203
64743
|
enhance12 = (root, props2) => {
|
|
64204
64744
|
const { siteId, apiBaseUrl, stage } = props2;
|
|
64205
64745
|
if (!apiBaseUrl) {
|
|
@@ -64253,14 +64793,17 @@ var init_shopShared = __esm({
|
|
|
64253
64793
|
// src/rendering/islands/enhancers/productList.tsx
|
|
64254
64794
|
var productList_exports = {};
|
|
64255
64795
|
__export(productList_exports, {
|
|
64796
|
+
decode: () => decode13,
|
|
64256
64797
|
enhance: () => enhance13
|
|
64257
64798
|
});
|
|
64258
|
-
var enhance13;
|
|
64799
|
+
var decode13, enhance13;
|
|
64259
64800
|
var init_productList = __esm({
|
|
64260
64801
|
"src/rendering/islands/enhancers/productList.tsx"() {
|
|
64261
64802
|
"use strict";
|
|
64262
64803
|
init_client3();
|
|
64804
|
+
init_propsDecoder();
|
|
64263
64805
|
init_shopShared();
|
|
64806
|
+
decode13 = defineIslandPropsDecoder("product-list");
|
|
64264
64807
|
enhance13 = (root, props2) => mountShopBlockIsland(root, props2, ProductListClient, "product-list");
|
|
64265
64808
|
}
|
|
64266
64809
|
});
|
|
@@ -64268,14 +64811,17 @@ var init_productList = __esm({
|
|
|
64268
64811
|
// src/rendering/islands/enhancers/productDetail.tsx
|
|
64269
64812
|
var productDetail_exports = {};
|
|
64270
64813
|
__export(productDetail_exports, {
|
|
64814
|
+
decode: () => decode14,
|
|
64271
64815
|
enhance: () => enhance14
|
|
64272
64816
|
});
|
|
64273
|
-
var enhance14;
|
|
64817
|
+
var decode14, enhance14;
|
|
64274
64818
|
var init_productDetail = __esm({
|
|
64275
64819
|
"src/rendering/islands/enhancers/productDetail.tsx"() {
|
|
64276
64820
|
"use strict";
|
|
64277
64821
|
init_client3();
|
|
64822
|
+
init_propsDecoder();
|
|
64278
64823
|
init_shopShared();
|
|
64824
|
+
decode14 = defineIslandPropsDecoder("product-detail");
|
|
64279
64825
|
enhance14 = (root, props2) => mountShopBlockIsland(root, props2, ProductDetailClient, "product-detail");
|
|
64280
64826
|
}
|
|
64281
64827
|
});
|
|
@@ -64283,14 +64829,17 @@ var init_productDetail = __esm({
|
|
|
64283
64829
|
// src/rendering/islands/enhancers/cart.tsx
|
|
64284
64830
|
var cart_exports = {};
|
|
64285
64831
|
__export(cart_exports, {
|
|
64832
|
+
decode: () => decode15,
|
|
64286
64833
|
enhance: () => enhance15
|
|
64287
64834
|
});
|
|
64288
|
-
var enhance15;
|
|
64835
|
+
var decode15, enhance15;
|
|
64289
64836
|
var init_cart2 = __esm({
|
|
64290
64837
|
"src/rendering/islands/enhancers/cart.tsx"() {
|
|
64291
64838
|
"use strict";
|
|
64292
64839
|
init_client3();
|
|
64840
|
+
init_propsDecoder();
|
|
64293
64841
|
init_shopShared();
|
|
64842
|
+
decode15 = defineIslandPropsDecoder("cart");
|
|
64294
64843
|
enhance15 = (root, props2) => mountShopBlockIsland(root, props2, CartClient, "cart");
|
|
64295
64844
|
}
|
|
64296
64845
|
});
|
|
@@ -64298,14 +64847,17 @@ var init_cart2 = __esm({
|
|
|
64298
64847
|
// src/rendering/islands/enhancers/checkout.tsx
|
|
64299
64848
|
var checkout_exports = {};
|
|
64300
64849
|
__export(checkout_exports, {
|
|
64850
|
+
decode: () => decode16,
|
|
64301
64851
|
enhance: () => enhance16
|
|
64302
64852
|
});
|
|
64303
|
-
var enhance16;
|
|
64853
|
+
var decode16, enhance16;
|
|
64304
64854
|
var init_checkout2 = __esm({
|
|
64305
64855
|
"src/rendering/islands/enhancers/checkout.tsx"() {
|
|
64306
64856
|
"use strict";
|
|
64307
64857
|
init_client3();
|
|
64858
|
+
init_propsDecoder();
|
|
64308
64859
|
init_shopShared();
|
|
64860
|
+
decode16 = defineIslandPropsDecoder("checkout");
|
|
64309
64861
|
enhance16 = (root, props2) => mountShopBlockIsland(root, props2, CheckoutClient, "checkout");
|
|
64310
64862
|
}
|
|
64311
64863
|
});
|
|
@@ -64313,14 +64865,17 @@ var init_checkout2 = __esm({
|
|
|
64313
64865
|
// src/rendering/islands/enhancers/shop.tsx
|
|
64314
64866
|
var shop_exports = {};
|
|
64315
64867
|
__export(shop_exports, {
|
|
64868
|
+
decode: () => decode17,
|
|
64316
64869
|
enhance: () => enhance17
|
|
64317
64870
|
});
|
|
64318
|
-
var enhance17;
|
|
64871
|
+
var decode17, enhance17;
|
|
64319
64872
|
var init_shop2 = __esm({
|
|
64320
64873
|
"src/rendering/islands/enhancers/shop.tsx"() {
|
|
64321
64874
|
"use strict";
|
|
64322
64875
|
init_client3();
|
|
64876
|
+
init_propsDecoder();
|
|
64323
64877
|
init_shopShared();
|
|
64878
|
+
decode17 = defineIslandPropsDecoder("shop");
|
|
64324
64879
|
enhance17 = (root, props2) => {
|
|
64325
64880
|
return mountShopBlockIsland(root, props2, ShopClient, "shop");
|
|
64326
64881
|
};
|
|
@@ -64330,6 +64885,7 @@ var init_shop2 = __esm({
|
|
|
64330
64885
|
// src/rendering/islands/enhancers/newsletterForm.tsx
|
|
64331
64886
|
var newsletterForm_exports = {};
|
|
64332
64887
|
__export(newsletterForm_exports, {
|
|
64888
|
+
decode: () => decode18,
|
|
64333
64889
|
enhance: () => enhance18
|
|
64334
64890
|
});
|
|
64335
64891
|
import { jsx as jsx154 } from "react/jsx-runtime";
|
|
@@ -64356,12 +64912,14 @@ function applySnapshots2(form2, snapshots) {
|
|
|
64356
64912
|
}
|
|
64357
64913
|
}
|
|
64358
64914
|
}
|
|
64359
|
-
var enhance18;
|
|
64915
|
+
var decode18, enhance18;
|
|
64360
64916
|
var init_newsletterForm2 = __esm({
|
|
64361
64917
|
"src/rendering/islands/enhancers/newsletterForm.tsx"() {
|
|
64362
64918
|
"use strict";
|
|
64363
64919
|
init_client3();
|
|
64920
|
+
init_propsDecoder();
|
|
64364
64921
|
init_reactMount();
|
|
64922
|
+
decode18 = defineIslandPropsDecoder("newsletter-form");
|
|
64365
64923
|
enhance18 = (root, props2) => {
|
|
64366
64924
|
const { siteId, apiBaseUrl, render } = props2;
|
|
64367
64925
|
if (!siteId) {
|
|
@@ -71449,6 +72007,10 @@ var heroCopyAndCta = composeFragments([
|
|
|
71449
72007
|
{ fragment: heroCopyFragment },
|
|
71450
72008
|
{ fragment: heroCtaRowFragment }
|
|
71451
72009
|
]);
|
|
72010
|
+
var heroPriorityMediaProps = {
|
|
72011
|
+
loading: "eager",
|
|
72012
|
+
fetchPriority: "high"
|
|
72013
|
+
};
|
|
71452
72014
|
var heroContentNodes = heroCopyAndCta.layout;
|
|
71453
72015
|
function heroContentCard(children, gap) {
|
|
71454
72016
|
return styledContainer({
|
|
@@ -71511,7 +72073,8 @@ function heroSplitImagePane() {
|
|
|
71511
72073
|
[
|
|
71512
72074
|
media(
|
|
71513
72075
|
{
|
|
71514
|
-
className: "rb-absolute rb-inset-0 rb-h-full rb-w-full rb-object-cover"
|
|
72076
|
+
className: "rb-absolute rb-inset-0 rb-h-full rb-w-full rb-object-cover",
|
|
72077
|
+
...heroPriorityMediaProps
|
|
71515
72078
|
},
|
|
71516
72079
|
when("_sectionStyles.background.image"),
|
|
71517
72080
|
bind("_sectionStyles.background.image")
|
|
@@ -71522,13 +72085,17 @@ function heroSplitImagePane() {
|
|
|
71522
72085
|
var classicLayout = styledSection({
|
|
71523
72086
|
children: heroContainerStack(heroContentNodes, "md"),
|
|
71524
72087
|
// styledContainer (rb-container) already provides horizontal padding
|
|
71525
|
-
baseClass: ""
|
|
72088
|
+
baseClass: "",
|
|
72089
|
+
backgroundImageLoading: heroPriorityMediaProps.loading,
|
|
72090
|
+
backgroundImageFetchPriority: heroPriorityMediaProps.fetchPriority
|
|
71526
72091
|
});
|
|
71527
72092
|
var microLayout = styledSection({
|
|
71528
72093
|
children: heroContainerStack(heroContentNodes, "sm"),
|
|
71529
72094
|
// styledContainer (rb-container) already provides horizontal padding
|
|
71530
72095
|
baseClass: "",
|
|
71531
|
-
spacing: "compact"
|
|
72096
|
+
spacing: "compact",
|
|
72097
|
+
backgroundImageLoading: heroPriorityMediaProps.loading,
|
|
72098
|
+
backgroundImageFetchPriority: heroPriorityMediaProps.fetchPriority
|
|
71532
72099
|
});
|
|
71533
72100
|
function splitLayoutWith(children) {
|
|
71534
72101
|
return styledSection({
|
|
@@ -75247,200 +75814,7 @@ var appointmentBookingBlockDefinition = {
|
|
|
75247
75814
|
// ../blocks/src/system/blocks/index.ts
|
|
75248
75815
|
init_event_registration();
|
|
75249
75816
|
init_course_registration();
|
|
75250
|
-
|
|
75251
|
-
// ../blocks/src/system/blocks/event-details.ts
|
|
75252
|
-
init_builder();
|
|
75253
|
-
init_builder();
|
|
75254
|
-
init_styledSection();
|
|
75255
|
-
init_fragments();
|
|
75256
|
-
init_shared3();
|
|
75257
|
-
init_shop_shared();
|
|
75258
|
-
init_defineBlock();
|
|
75259
|
-
import { z as z51 } from "zod";
|
|
75260
|
-
var eventDetailsManifest = createBlockManifest({
|
|
75261
|
-
id: "block.event-details",
|
|
75262
|
-
version: "1.0.0",
|
|
75263
|
-
title: "Event Details",
|
|
75264
|
-
titleSource: "heading",
|
|
75265
|
-
description: "Date/time, venue, map, and other dates for an event",
|
|
75266
|
-
category: "content",
|
|
75267
|
-
tags: ["events", "venue", "map", "schedule", "dates"],
|
|
75268
|
-
icon: "MapPin",
|
|
75269
|
-
styleTokens: { background: "surface", typography: "body", spacing: "md" },
|
|
75270
|
-
behaviours: {
|
|
75271
|
-
supportsThemeSwitching: true,
|
|
75272
|
-
inlineEditing: false,
|
|
75273
|
-
animation: false,
|
|
75274
|
-
paletteHidden: false
|
|
75275
|
-
},
|
|
75276
|
-
additionalFields: [
|
|
75277
|
-
{
|
|
75278
|
-
id: "heading",
|
|
75279
|
-
type: "text",
|
|
75280
|
-
label: "Heading",
|
|
75281
|
-
description: "Optional heading shown above event details",
|
|
75282
|
-
required: false,
|
|
75283
|
-
multiline: false,
|
|
75284
|
-
defaultValue: "Event details"
|
|
75285
|
-
},
|
|
75286
|
-
{
|
|
75287
|
-
id: "showVenue",
|
|
75288
|
-
type: "boolean",
|
|
75289
|
-
label: "Show venue",
|
|
75290
|
-
required: false,
|
|
75291
|
-
defaultValue: true,
|
|
75292
|
-
ui: { intent: "display" }
|
|
75293
|
-
},
|
|
75294
|
-
{
|
|
75295
|
-
id: "showMap",
|
|
75296
|
-
type: "boolean",
|
|
75297
|
-
label: "Show map",
|
|
75298
|
-
description: "Embed a map when the venue has coordinates",
|
|
75299
|
-
required: false,
|
|
75300
|
-
defaultValue: true,
|
|
75301
|
-
ui: { intent: "display" }
|
|
75302
|
-
},
|
|
75303
|
-
{
|
|
75304
|
-
id: "showOtherDates",
|
|
75305
|
-
type: "boolean",
|
|
75306
|
-
label: "Show other dates",
|
|
75307
|
-
required: false,
|
|
75308
|
-
defaultValue: true,
|
|
75309
|
-
ui: { intent: "display" }
|
|
75310
|
-
},
|
|
75311
|
-
{
|
|
75312
|
-
id: "otherDatesLimit",
|
|
75313
|
-
type: "select",
|
|
75314
|
-
label: "Other dates limit",
|
|
75315
|
-
required: false,
|
|
75316
|
-
multiple: false,
|
|
75317
|
-
defaultValue: "5",
|
|
75318
|
-
options: [
|
|
75319
|
-
{ value: "3", label: "3 dates" },
|
|
75320
|
-
{ value: "5", label: "5 dates" },
|
|
75321
|
-
{ value: "10", label: "10 dates" }
|
|
75322
|
-
],
|
|
75323
|
-
ui: { intent: "display" }
|
|
75324
|
-
},
|
|
75325
|
-
{
|
|
75326
|
-
id: "showCost",
|
|
75327
|
-
type: "boolean",
|
|
75328
|
-
label: "Show cost",
|
|
75329
|
-
description: "Display ticket price for paid events",
|
|
75330
|
-
required: false,
|
|
75331
|
-
defaultValue: true,
|
|
75332
|
-
ui: { intent: "display" }
|
|
75333
|
-
},
|
|
75334
|
-
{
|
|
75335
|
-
id: "showAcceptedPasses",
|
|
75336
|
-
type: "boolean",
|
|
75337
|
-
label: "Show accepted passes",
|
|
75338
|
-
description: "Display passes that can be used for this event",
|
|
75339
|
-
required: false,
|
|
75340
|
-
defaultValue: true,
|
|
75341
|
-
ui: { intent: "display" }
|
|
75342
|
-
},
|
|
75343
|
-
{
|
|
75344
|
-
id: "showAcceptedMemberships",
|
|
75345
|
-
type: "boolean",
|
|
75346
|
-
label: "Show accepted memberships",
|
|
75347
|
-
description: "Display memberships that grant access to this event",
|
|
75348
|
-
required: false,
|
|
75349
|
-
defaultValue: true,
|
|
75350
|
-
ui: { intent: "display" }
|
|
75351
|
-
}
|
|
75352
|
-
],
|
|
75353
|
-
layout: [
|
|
75354
|
-
styledSection({
|
|
75355
|
-
baseClass: "",
|
|
75356
|
-
spacing: "spacious",
|
|
75357
|
-
children: sectionContainer(
|
|
75358
|
-
[
|
|
75359
|
-
text({ as: "h2" }, bind("content.heading"), when("content.heading")),
|
|
75360
|
-
el("event-details", {
|
|
75361
|
-
occurrenceContext: {
|
|
75362
|
-
$bind: { from: "$root.occurrenceContext", fallback: null }
|
|
75363
|
-
},
|
|
75364
|
-
contentEntry: { $bind: { from: "$root.contentEntry", fallback: null } },
|
|
75365
|
-
events: { $bind: { from: "data.eventDetailsData.events" } },
|
|
75366
|
-
showVenue: { $bind: { from: "content.showVenue" } },
|
|
75367
|
-
showMap: { $bind: { from: "content.showMap" } },
|
|
75368
|
-
showOtherDates: { $bind: { from: "content.showOtherDates" } },
|
|
75369
|
-
otherDatesLimit: {
|
|
75370
|
-
$bind: { from: "content.otherDatesLimit", fallback: "5" }
|
|
75371
|
-
},
|
|
75372
|
-
showCost: { $bind: { from: "content.showCost", fallback: true } },
|
|
75373
|
-
showAcceptedPasses: {
|
|
75374
|
-
$bind: { from: "content.showAcceptedPasses", fallback: true }
|
|
75375
|
-
},
|
|
75376
|
-
showAcceptedMemberships: {
|
|
75377
|
-
$bind: { from: "content.showAcceptedMemberships", fallback: true }
|
|
75378
|
-
},
|
|
75379
|
-
sitePasses: { $bind: { from: "data.eventDetailsData.sitePasses" } },
|
|
75380
|
-
siteMemberships: { $bind: { from: "data.eventDetailsData.siteMemberships" } },
|
|
75381
|
-
autoApplyDiscount: {
|
|
75382
|
-
$bind: { from: "data.eventDetailsData.autoApplyDiscount", fallback: null }
|
|
75383
|
-
}
|
|
75384
|
-
})
|
|
75385
|
-
],
|
|
75386
|
-
{ gap: "lg" }
|
|
75387
|
-
)
|
|
75388
|
-
})
|
|
75389
|
-
]
|
|
75390
|
-
});
|
|
75391
|
-
var occurrenceContextSchema2 = z51.object({
|
|
75392
|
-
id: z51.string(),
|
|
75393
|
-
seriesId: z51.string(),
|
|
75394
|
-
startsAt: z51.string(),
|
|
75395
|
-
endsAt: z51.string(),
|
|
75396
|
-
timeZone: z51.string(),
|
|
75397
|
-
capacityOverride: z51.number().nullable().optional(),
|
|
75398
|
-
overrides: z51.record(z51.string(), z51.unknown()).nullable().optional()
|
|
75399
|
-
}).nullable();
|
|
75400
|
-
var eventAutoApplyDiscountPreviewBaseSchema = z51.object({
|
|
75401
|
-
id: z51.string(),
|
|
75402
|
-
publicLabel: z51.string(),
|
|
75403
|
-
description: z51.string().nullable(),
|
|
75404
|
-
minTicketsRequired: z51.number().nullable()
|
|
75405
|
-
});
|
|
75406
|
-
var eventAutoApplyDiscountPreviewSchema = z51.discriminatedUnion("discountType", [
|
|
75407
|
-
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
75408
|
-
discountType: z51.literal("percent"),
|
|
75409
|
-
discountPercent: z51.number(),
|
|
75410
|
-
discountAmountCents: z51.null()
|
|
75411
|
-
}),
|
|
75412
|
-
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
75413
|
-
discountType: z51.literal("fixed"),
|
|
75414
|
-
discountPercent: z51.null(),
|
|
75415
|
-
discountAmountCents: z51.number()
|
|
75416
|
-
})
|
|
75417
|
-
]);
|
|
75418
|
-
var eventDetailsBlockDefinition = {
|
|
75419
|
-
manifest: eventDetailsManifest,
|
|
75420
|
-
dataSchemas: {
|
|
75421
|
-
eventDetailsData: z51.object({
|
|
75422
|
-
events: publicEventsArraySchema,
|
|
75423
|
-
sitePasses: z51.object({ passes: z51.array(publicPassProductSchema) }),
|
|
75424
|
-
siteMemberships: z51.object({ memberships: z51.array(publicMembershipProductSchema) }),
|
|
75425
|
-
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
75426
|
-
}).optional(),
|
|
75427
|
-
occurrenceContext: occurrenceContextSchema2.optional()
|
|
75428
|
-
},
|
|
75429
|
-
dataLoaders: {
|
|
75430
|
-
eventDetailsData: {
|
|
75431
|
-
endpoint: "getPublicEventDetails",
|
|
75432
|
-
params: {
|
|
75433
|
-
siteId: { $bind: { from: "$root.siteId" } },
|
|
75434
|
-
stage: { $bind: { from: "$root.previewStage", fallback: "published" } },
|
|
75435
|
-
limit: "25",
|
|
75436
|
-
entryId: { $bind: { from: "$root.contentEntry._entryId" } },
|
|
75437
|
-
seriesId: { $bind: { from: "$root.occurrenceContext.seriesId" } },
|
|
75438
|
-
includeOccurrenceId: { $bind: { from: "$root.occurrenceContext.id" } }
|
|
75439
|
-
},
|
|
75440
|
-
mode: "server"
|
|
75441
|
-
}
|
|
75442
|
-
}
|
|
75443
|
-
};
|
|
75817
|
+
init_event_details();
|
|
75444
75818
|
|
|
75445
75819
|
// ../blocks/src/system/blocks/course-details.ts
|
|
75446
75820
|
init_builder();
|
|
@@ -77770,6 +78144,7 @@ var locationMapBlockDefinition = {
|
|
|
77770
78144
|
// ../blocks/src/system/blocks/index.ts
|
|
77771
78145
|
init_form();
|
|
77772
78146
|
init_event_registration();
|
|
78147
|
+
init_event_details();
|
|
77773
78148
|
init_course_registration();
|
|
77774
78149
|
init_shop();
|
|
77775
78150
|
init_product_list();
|
|
@@ -78824,6 +79199,10 @@ function getAbsoluteSegments(fromPath, context) {
|
|
|
78824
79199
|
if (scoped?.basePathSegments && scoped.basePathSegments.length > 0) {
|
|
78825
79200
|
return [...scoped.basePathSegments, ...rest];
|
|
78826
79201
|
}
|
|
79202
|
+
const hasContentScope = context.scopes.some((entry) => entry.name === "content");
|
|
79203
|
+
if (hasContentScope && !(first in context.viewModel)) {
|
|
79204
|
+
return ["content", ...segments];
|
|
79205
|
+
}
|
|
78827
79206
|
return void 0;
|
|
78828
79207
|
}
|
|
78829
79208
|
function readFromSource(source, segments) {
|
|
@@ -79406,7 +79785,7 @@ function makeDefaultBlockComponent(args) {
|
|
|
79406
79785
|
pathBase,
|
|
79407
79786
|
blockId,
|
|
79408
79787
|
blockKind,
|
|
79409
|
-
blockContent:
|
|
79788
|
+
blockContent: mergedContent,
|
|
79410
79789
|
blockBindings,
|
|
79411
79790
|
editableRouteMetadataFieldIds,
|
|
79412
79791
|
fragmentRegistry: fragmentRegistry2
|
|
@@ -81775,7 +82154,6 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
81775
82154
|
}
|
|
81776
82155
|
|
|
81777
82156
|
// ../blocks/src/index.ts
|
|
81778
|
-
init_media3();
|
|
81779
82157
|
init_colorStyles();
|
|
81780
82158
|
|
|
81781
82159
|
// ../api/src/sdkConfig/contracts.ts
|
|
@@ -83674,124 +84052,6 @@ function isEntryResponse(response) {
|
|
|
83674
84052
|
// src/rendering/islands/BlocksIslandsHydrator.tsx
|
|
83675
84053
|
import { useEffect as useEffect29 } from "react";
|
|
83676
84054
|
|
|
83677
|
-
// ../blocks/src/contracts/non-block-islands.ts
|
|
83678
|
-
init_runtime();
|
|
83679
|
-
init_shop_shared();
|
|
83680
|
-
init_schemas2();
|
|
83681
|
-
import { z as z72 } from "zod";
|
|
83682
|
-
var accordionIslandSchema = z72.object({
|
|
83683
|
-
type: z72.enum(["single", "multiple"]).optional(),
|
|
83684
|
-
defaultValue: z72.union([z72.string(), z72.array(z72.string())]).optional(),
|
|
83685
|
-
collapsible: z72.boolean().optional()
|
|
83686
|
-
});
|
|
83687
|
-
var headerSectionIslandSchema = z72.object({
|
|
83688
|
-
enabled: z72.boolean().optional(),
|
|
83689
|
-
scrollEnabled: z72.boolean().optional()
|
|
83690
|
-
});
|
|
83691
|
-
var responsiveSlidesToShowSchema = z72.object({
|
|
83692
|
-
mobile: z72.union([z72.number(), z72.string()]).optional(),
|
|
83693
|
-
tablet: z72.union([z72.number(), z72.string()]).optional(),
|
|
83694
|
-
desktop: z72.union([z72.number(), z72.string()]).optional()
|
|
83695
|
-
});
|
|
83696
|
-
var carouselIslandSchema = z72.object({
|
|
83697
|
-
slidesToShow: z72.union([z72.number(), z72.string(), responsiveSlidesToShowSchema]).optional(),
|
|
83698
|
-
transition: z72.enum(["slide", "fade"]).optional(),
|
|
83699
|
-
showControls: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
83700
|
-
showDots: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
83701
|
-
arrowVisibility: z72.enum(["always", "hover", "never"]).optional(),
|
|
83702
|
-
autoplay: z72.union([z72.boolean(), z72.string()]).optional(),
|
|
83703
|
-
autoplayDelay: z72.union([z72.number(), z72.string()]).optional(),
|
|
83704
|
-
loop: z72.union([z72.boolean(), z72.string()]).optional()
|
|
83705
|
-
});
|
|
83706
|
-
var eventDetailsOccurrenceContextSchema = z72.object({
|
|
83707
|
-
id: z72.string(),
|
|
83708
|
-
seriesId: z72.string(),
|
|
83709
|
-
startsAt: z72.string(),
|
|
83710
|
-
endsAt: z72.string(),
|
|
83711
|
-
timeZone: z72.string()
|
|
83712
|
-
});
|
|
83713
|
-
var eventDetailsContentEntrySchema = z72.object({
|
|
83714
|
-
id: z72.string(),
|
|
83715
|
-
slug: z72.string(),
|
|
83716
|
-
contentTypeSlug: z72.string()
|
|
83717
|
-
});
|
|
83718
|
-
var eventDetailsIslandSchema = z72.object({
|
|
83719
|
-
occurrenceContext: eventDetailsOccurrenceContextSchema.nullable().optional(),
|
|
83720
|
-
contentEntry: eventDetailsContentEntrySchema.nullable().optional(),
|
|
83721
|
-
events: z72.array(publicEventSchema).nullable().optional(),
|
|
83722
|
-
showVenue: z72.boolean().optional(),
|
|
83723
|
-
showMap: z72.boolean().optional(),
|
|
83724
|
-
showOtherDates: z72.boolean().optional(),
|
|
83725
|
-
otherDatesLimit: z72.string().optional(),
|
|
83726
|
-
showCost: z72.boolean().optional(),
|
|
83727
|
-
showAcceptedPasses: z72.boolean().optional(),
|
|
83728
|
-
showAcceptedMemberships: z72.boolean().optional(),
|
|
83729
|
-
sitePasses: z72.object({ passes: z72.array(publicPassProductSchema) }).nullable().optional(),
|
|
83730
|
-
siteMemberships: z72.object({ memberships: z72.array(publicMembershipProductSchema) }).nullable().optional(),
|
|
83731
|
-
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional(),
|
|
83732
|
-
className: z72.string().nullable().optional(),
|
|
83733
|
-
nowIso: z72.string().optional()
|
|
83734
|
-
});
|
|
83735
|
-
var locationMapIslandSchema = z72.object({
|
|
83736
|
-
location: z72.object({
|
|
83737
|
-
addressText: z72.string().nullable(),
|
|
83738
|
-
lat: z72.number().nullable(),
|
|
83739
|
-
lng: z72.number().nullable()
|
|
83740
|
-
}).nullable().optional(),
|
|
83741
|
-
zoom: z72.number().nullable().optional(),
|
|
83742
|
-
heightPx: z72.number().nullable().optional(),
|
|
83743
|
-
showAddressText: z72.boolean().optional(),
|
|
83744
|
-
showDirections: z72.boolean().optional(),
|
|
83745
|
-
directionsLabel: z72.string().nullable().optional(),
|
|
83746
|
-
className: z72.string().nullable().optional()
|
|
83747
|
-
});
|
|
83748
|
-
var accordionIslandPropsCodec = createZodCodec(accordionIslandSchema);
|
|
83749
|
-
var headerSectionIslandPropsCodec = createZodCodec(headerSectionIslandSchema);
|
|
83750
|
-
var carouselIslandPropsCodec = createZodCodec(carouselIslandSchema);
|
|
83751
|
-
var eventDetailsIslandPropsCodec = createZodCodec(eventDetailsIslandSchema);
|
|
83752
|
-
var locationMapIslandPropsCodec = createZodCodec(locationMapIslandSchema);
|
|
83753
|
-
|
|
83754
|
-
// ../blocks/src/contracts/index.ts
|
|
83755
|
-
init_runtime();
|
|
83756
|
-
|
|
83757
|
-
// ../blocks/src/contracts/proof-block-islands.ts
|
|
83758
|
-
init_booking_form_interactive();
|
|
83759
|
-
init_course_registration_interactive();
|
|
83760
|
-
init_EventListing_interactive();
|
|
83761
|
-
init_EventCalendar_interactive();
|
|
83762
|
-
init_EventCombined_interactive();
|
|
83763
|
-
init_event_registration_interactive();
|
|
83764
|
-
init_form_interactive();
|
|
83765
|
-
init_gifting_interactive();
|
|
83766
|
-
init_newsletter_form_interactive();
|
|
83767
|
-
init_shop_interactive();
|
|
83768
|
-
var proofBlockIslandCodecs = {
|
|
83769
|
-
"booking-form": bookingFormInteractiveIslandPropsCodec,
|
|
83770
|
-
"course-registration": courseRegistrationInteractiveIslandPropsCodec,
|
|
83771
|
-
"event-registration": eventRegistrationInteractiveIslandPropsCodec,
|
|
83772
|
-
form: formInteractiveIslandPropsCodec,
|
|
83773
|
-
"event-listing": eventListingInteractiveIslandPropsCodec,
|
|
83774
|
-
"event-calendar": eventCalendarInteractiveIslandPropsCodec,
|
|
83775
|
-
"newsletter-form": newsletterFormInteractiveIslandPropsCodec,
|
|
83776
|
-
gifting: giftingInteractiveIslandPropsCodec,
|
|
83777
|
-
"product-list": productListInteractiveIslandPropsCodec,
|
|
83778
|
-
"product-detail": productDetailInteractiveIslandPropsCodec,
|
|
83779
|
-
cart: cartInteractiveIslandPropsCodec,
|
|
83780
|
-
checkout: checkoutInteractiveIslandPropsCodec,
|
|
83781
|
-
shop: shopInteractiveIslandPropsCodec
|
|
83782
|
-
};
|
|
83783
|
-
var runtimeIslandCodecs = {
|
|
83784
|
-
accordion: accordionIslandPropsCodec,
|
|
83785
|
-
carousel: carouselIslandPropsCodec,
|
|
83786
|
-
headerSection: headerSectionIslandPropsCodec,
|
|
83787
|
-
"event-details": eventDetailsIslandPropsCodec,
|
|
83788
|
-
"location-map": locationMapIslandPropsCodec,
|
|
83789
|
-
...proofBlockIslandCodecs,
|
|
83790
|
-
// `event-combined` is not a proof block definition, but it still participates
|
|
83791
|
-
// in the same typed SSR/hydration contract path as we close the last raw island seams.
|
|
83792
|
-
"event-combined": eventCombinedInteractiveIslandPropsCodec
|
|
83793
|
-
};
|
|
83794
|
-
|
|
83795
84055
|
// src/rendering/islands/hydrateBlocksIslands.ts
|
|
83796
84056
|
var defaultEnhancerLoaders = {
|
|
83797
84057
|
accordion: () => Promise.resolve().then(() => (init_accordion(), accordion_exports)),
|
|
@@ -83828,19 +84088,6 @@ var RETRYABLE_ERROR_PATTERNS = [
|
|
|
83828
84088
|
/importing a module script failed/i
|
|
83829
84089
|
];
|
|
83830
84090
|
var DEFAULT_REQUIRED_ERROR_MESSAGE = "This section failed to load. Please refresh the page.";
|
|
83831
|
-
var IslandPropsDecodeError = class extends Error {
|
|
83832
|
-
constructor(kind, issues) {
|
|
83833
|
-
super(
|
|
83834
|
-
`[sdk:islands] Invalid props for island kind="${kind}": ${issues.map((issue2) => `${issue2.path.join(".") || "<root>"}: ${issue2.message}`).join("; ")}`
|
|
83835
|
-
);
|
|
83836
|
-
this.name = "IslandPropsDecodeError";
|
|
83837
|
-
this.issues = issues;
|
|
83838
|
-
}
|
|
83839
|
-
};
|
|
83840
|
-
var islandDecoders = runtimeIslandCodecs;
|
|
83841
|
-
function getIslandCodec(kind) {
|
|
83842
|
-
return islandDecoders[kind];
|
|
83843
|
-
}
|
|
83844
84091
|
function getNodeEnv() {
|
|
83845
84092
|
const g = globalThis;
|
|
83846
84093
|
return g.process?.env?.NODE_ENV;
|
|
@@ -83871,32 +84118,19 @@ async function loadEnhancer(kind, loaders) {
|
|
|
83871
84118
|
function getIslandPropsScript(root) {
|
|
83872
84119
|
return root.querySelector('script[type="application/json"][data-rb-island-props]');
|
|
83873
84120
|
}
|
|
83874
|
-
function
|
|
83875
|
-
const codec = getIslandCodec(kind);
|
|
83876
|
-
if (!codec) {
|
|
83877
|
-
return input;
|
|
83878
|
-
}
|
|
83879
|
-
const result = codec.decode(input);
|
|
83880
|
-
if (isDecodeSuccess(result)) {
|
|
83881
|
-
return result.value;
|
|
83882
|
-
}
|
|
83883
|
-
throw new IslandPropsDecodeError(kind, result.issues);
|
|
83884
|
-
}
|
|
83885
|
-
function parseIslandProps(kind, root, options) {
|
|
84121
|
+
function parseIslandProps(root) {
|
|
83886
84122
|
const script = getIslandPropsScript(root);
|
|
83887
|
-
if (!script) return
|
|
84123
|
+
if (!script) return {};
|
|
83888
84124
|
const raw = script.textContent ?? "";
|
|
83889
|
-
if (!raw.trim()) return
|
|
83890
|
-
let parsed;
|
|
84125
|
+
if (!raw.trim()) return {};
|
|
83891
84126
|
try {
|
|
83892
|
-
|
|
84127
|
+
return JSON.parse(raw);
|
|
83893
84128
|
} catch (error) {
|
|
83894
84129
|
if (getNodeEnv() !== "production") {
|
|
83895
84130
|
console.warn("[sdk:islands] Failed to parse island props JSON", error);
|
|
83896
84131
|
}
|
|
83897
84132
|
throw error;
|
|
83898
84133
|
}
|
|
83899
|
-
return decodeIslandProps(kind, parsed);
|
|
83900
84134
|
}
|
|
83901
84135
|
function getAttemptCount(element) {
|
|
83902
84136
|
const raw = element.dataset.rbIslandAttempts;
|
|
@@ -83914,6 +84148,12 @@ function isRetryableError(error) {
|
|
|
83914
84148
|
}
|
|
83915
84149
|
return false;
|
|
83916
84150
|
}
|
|
84151
|
+
function decodeLoadedProps(mod2, rawProps) {
|
|
84152
|
+
if (mod2.decode) {
|
|
84153
|
+
return mod2.decode(rawProps);
|
|
84154
|
+
}
|
|
84155
|
+
return rawProps;
|
|
84156
|
+
}
|
|
83917
84157
|
function collectIslands(root, loaders) {
|
|
83918
84158
|
const nodes = Array.from(root.querySelectorAll("[data-rb-island]"));
|
|
83919
84159
|
return nodes.filter((el2) => el2.dataset.rbIslandMounted !== "true").filter((el2) => el2.dataset.rbIslandError !== "true").filter((el2) => el2.dataset.rbIslandEnhancing !== "true").map((element) => {
|
|
@@ -83937,8 +84177,9 @@ async function mountIsland(island, options) {
|
|
|
83937
84177
|
element.dataset.rbIslandAttempts = String(attempt);
|
|
83938
84178
|
element.dataset.rbIslandEnhancing = "true";
|
|
83939
84179
|
try {
|
|
83940
|
-
const
|
|
84180
|
+
const rawProps = parseIslandProps(element);
|
|
83941
84181
|
const mod2 = await loadEnhancer(kind, loaders);
|
|
84182
|
+
const props2 = decodeLoadedProps(mod2, rawProps);
|
|
83942
84183
|
await mod2.enhance(element, props2);
|
|
83943
84184
|
element.dataset.rbIslandMounted = "true";
|
|
83944
84185
|
} catch (error) {
|
|
@@ -83993,6 +84234,7 @@ function hydrateBlocksIslands(options = {}) {
|
|
|
83993
84234
|
}
|
|
83994
84235
|
|
|
83995
84236
|
// src/rendering/islands/BlocksIslandsHydrator.tsx
|
|
84237
|
+
init_media3();
|
|
83996
84238
|
var hasStartedGlobalHydration = false;
|
|
83997
84239
|
var globalObserver = null;
|
|
83998
84240
|
var globalQueued = false;
|
|
@@ -84337,7 +84579,7 @@ var SimpleCache = class {
|
|
|
84337
84579
|
};
|
|
84338
84580
|
|
|
84339
84581
|
// src/version.ts
|
|
84340
|
-
var SDK_VERSION = "0.
|
|
84582
|
+
var SDK_VERSION = "0.74.0";
|
|
84341
84583
|
|
|
84342
84584
|
// src/client/error.ts
|
|
84343
84585
|
var RiverbankApiError = class _RiverbankApiError extends Error {
|