@riverbankcms/sdk 0.84.2 → 0.88.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{PreviewEditorSidebar-4PH35ZIE.mjs → PreviewEditorSidebar-EVRS3C7T.mjs} +3 -3
- package/dist/{PreviewEditorUI-WHMCRJGM.mjs → PreviewEditorUI-54WD4IGE.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-ZALZDJEK.mjs +8 -0
- package/dist/_dts/ai/src/contracts/proposals.d.ts +684 -0
- package/dist/_dts/api/src/endpoints.d.ts +58 -14
- package/dist/_dts/api/src/index.d.ts +4 -1
- package/dist/_dts/api/src/launchReadiness.d.ts +3 -3
- package/dist/_dts/api/src/mailchimpIntegration.d.ts +215 -0
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +35 -15
- package/dist/_dts/api/src/siteInfrastructure.d.ts +0 -14
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +1 -13
- package/dist/_dts/api/src/types.d.ts +6 -3
- package/dist/_dts/blocks/src/PageRenderer.d.ts +1 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -0
- package/dist/_dts/blocks/src/index.d.ts +2 -1
- package/dist/_dts/blocks/src/system/blocks/appointment-booking.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/blog-listing.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/cart.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/checkout.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/collection.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +42 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/faq.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/gifting.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +42 -42
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup-destination.d.ts +300 -0
- package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +63 -3
- package/dist/_dts/blocks/src/system/blocks/product-detail.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +288 -288
- package/dist/_dts/blocks/src/system/blocks/shop.d.ts +288 -288
- package/dist/_dts/blocks/src/system/fragments/library/newsletterForm.d.ts +53 -1
- package/dist/_dts/blocks/src/system/manifest/richTextSchema.d.ts +27 -0
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +23 -23
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +10 -2
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +12 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +11 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +15 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.server.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.submission.d.ts +32 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +5 -1
- package/dist/_dts/blocks/src/system/runtime/shared/components/ModalShell.d.ts +5 -1
- package/dist/_dts/blocks/src/system/runtime/shared/utils/formatting.d.ts +1 -1
- package/dist/_dts/content-model/src/referenceFields.d.ts +1 -1
- package/dist/_dts/core/src/currency-format.d.ts +37 -2
- package/dist/_dts/core/src/event-pricing.d.ts +24 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +551 -20
- package/dist/_dts/editor-blocks/src/widgets/reference/loaders.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/canonical-entry-policy.d.ts +53 -0
- package/dist/_dts/sdk/src/cli/commands/migrate.d.ts +1 -0
- package/dist/_dts/sdk/src/cli/commands/pull.d.ts +7 -1
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/migrations/events.d.ts +73 -0
- package/dist/_dts/sdk/src/client/types.d.ts +9 -0
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +3 -0
- package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +3 -9
- package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +1 -1
- package/dist/_dts/sdk/src/manifest/three-pass-converter.d.ts +7 -18
- package/dist/_dts/sdk/src/rendering/blocks-page-renderer.d.ts +2 -0
- package/dist/_dts/sdk/src/rendering/components/pageShared.d.ts +3 -1
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +7 -3
- package/dist/_dts/sdk/src/rendering/helpers/loadPage.d.ts +4 -24
- package/dist/_dts/sdk/src/rendering/helpers/pageRuntimeSupport.d.ts +45 -0
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/site-commands/src/commands.d.ts +57 -0
- package/dist/_dts/surfaces/src/index.d.ts +12 -0
- package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +9 -9
- package/dist/_dts/theme-core/src/schema.d.ts +11 -11
- package/dist/{chunk-ZR2GQK2A.mjs → chunk-7KOO7RPP.mjs} +953 -315
- package/dist/{chunk-OCGTXHSO.mjs → chunk-ER4UIW4X.mjs} +7 -7
- package/dist/{chunk-WFPYN7KA.mjs → chunk-HVOBXA3Y.mjs} +2 -2
- package/dist/{chunk-NFWGLRZZ.mjs → chunk-K3JWH6HE.mjs} +37 -3
- package/dist/{chunk-4QNLOTES.mjs → chunk-O4LVYUVH.mjs} +58 -14
- package/dist/{chunk-PYDHOMEO.mjs → chunk-YDMBIIS5.mjs} +1 -1
- package/dist/cli/index.mjs +1858 -512
- package/dist/client/{accordion-2UZPBMYM.mjs → accordion-PT5CGW5N.mjs} +2 -2
- package/dist/client/{bookingForm-36CWQUMV.mjs → bookingForm-2HLRTEYS.mjs} +7 -7
- package/dist/client/bookings.mjs +51 -6
- package/dist/client/{carousel-QH77HR6X.mjs → carousel-Z2LKYSWA.mjs} +3 -3
- package/dist/client/cart-ND5IK4A6.mjs +18 -0
- package/dist/client/checkout-EYUSGAY7.mjs +18 -0
- package/dist/client/{chunk-SYIJ5JO2.mjs → chunk-6DVPO44G.mjs} +1 -1
- package/dist/client/{chunk-3C2VTPWI.mjs → chunk-BAWHZ5GM.mjs} +176 -13
- package/dist/client/{chunk-52CGCQ7B.mjs → chunk-BL66UWGD.mjs} +10 -80
- package/dist/client/{chunk-VGDBVNOO.mjs → chunk-DIRW2LNG.mjs} +241 -210
- package/dist/client/{chunk-UDNSI5PY.mjs → chunk-GOFO7HRH.mjs} +1 -2
- package/dist/client/{chunk-ZKUO52W3.mjs → chunk-H4MHEXYS.mjs} +1 -1
- package/dist/client/{chunk-ZE5G642V.mjs → chunk-LI2C6M5O.mjs} +75 -1
- package/dist/client/{chunk-3DTWLTXM.mjs → chunk-MHBEWDT7.mjs} +117 -3
- package/dist/client/{chunk-4OXKTA3D.mjs → chunk-O5JNI3E4.mjs} +2 -2
- package/dist/client/{chunk-XSV6KW4D.mjs → chunk-S4G65LGR.mjs} +1 -1
- package/dist/client/{chunk-DVNUDUVT.mjs → chunk-WBQG7VJA.mjs} +4 -1
- package/dist/client/{chunk-F5VRX5Y6.mjs → chunk-WCVK4MBJ.mjs} +1 -1
- package/dist/client/{chunk-7UCLJ5SP.mjs → chunk-X7GVFB7Y.mjs} +4 -7
- package/dist/client/client.mjs +2125 -1403
- package/dist/client/{courseRegistration-TMKU6ABO.mjs → courseRegistration-H3AZBUEG.mjs} +7 -7
- package/dist/client/{eventCalendar-G6TI32X6.mjs → eventCalendar-FPKJGLGS.mjs} +10 -11
- package/dist/client/{eventCombined-SCKEMNAR.mjs → eventCombined-QCGIZBUY.mjs} +10 -11
- package/dist/client/{eventDetails-XPIFXXPK.mjs → eventDetails-HIT3BJWU.mjs} +10 -11
- package/dist/client/{eventListing-7QFMEMGT.mjs → eventListing-R4HNWJDN.mjs} +10 -11
- package/dist/client/{eventRegistration-TOODSZUI.mjs → eventRegistration-Q7BYY5HF.mjs} +10 -11
- package/dist/client/{form-MTCMVCZT.mjs → form-NI6YOG6S.mjs} +3 -3
- package/dist/client/{headerSection-Y5TMR3TW.mjs → headerSection-SDYGII36.mjs} +4 -4
- package/dist/client/hooks.mjs +1682 -1412
- package/dist/client/{locationMap-RH2LG7FZ.mjs → locationMap-BDETEUQD.mjs} +3 -4
- package/dist/client/{newsletterForm-PCAIPFMA.mjs → newsletterForm-EKYIU67X.mjs} +70 -22
- package/dist/client/{productDetail-OIGDR4YE.mjs → productDetail-5UTGNN76.mjs} +8 -9
- package/dist/client/{productList-4MA5S2CX.mjs → productList-7YA5KXZQ.mjs} +8 -9
- package/dist/client/rendering/client.mjs +753 -329
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +3786 -3034
- package/dist/client/shop-AIMUMZYC.mjs +20 -0
- package/dist/preview-next/before-render.mjs +58 -14
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/editor-chrome.css +56 -9
- package/dist/preview-next/middleware.mjs +58 -14
- package/dist/{sdk-runtime-QLOCYKVU.mjs → sdk-runtime-NW472WNT.mjs} +6 -6
- package/dist/server/components.mjs +1518 -1015
- package/dist/server/config-validation.mjs +1719 -1461
- package/dist/server/config.mjs +1719 -1461
- package/dist/server/data.mjs +1683 -1413
- package/dist/server/index.mjs +79 -17
- package/dist/server/next.mjs +1902 -1311
- package/dist/server/page-converter.mjs +2193 -1169
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +1709 -1209
- package/dist/server/rendering.mjs +1894 -1347
- package/dist/server/routing.mjs +1872 -1499
- package/dist/server/server.mjs +1571 -1264
- package/dist/server/theme-bridge.mjs +234 -0
- package/dist/styles/index.css +232 -0
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-4FGSVUYI.mjs +0 -8
- package/dist/client/cart-X4YK4FTW.mjs +0 -19
- package/dist/client/checkout-OM2BEPWD.mjs +0 -19
- package/dist/client/chunk-I2MMZO53.mjs +0 -6
- package/dist/client/shop-WXSYV5QO.mjs +0 -21
package/dist/server/next.mjs
CHANGED
|
@@ -784,6 +784,64 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
784
784
|
auth: "user",
|
|
785
785
|
responseKind: "json"
|
|
786
786
|
},
|
|
787
|
+
listMailchimpAudiences: {
|
|
788
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences",
|
|
789
|
+
method: "GET",
|
|
790
|
+
tags: [TAG_TEMPLATES.site],
|
|
791
|
+
auth: "user",
|
|
792
|
+
responseKind: "json",
|
|
793
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
794
|
+
},
|
|
795
|
+
getMailchimpSignupSyncHealth: {
|
|
796
|
+
path: "/sites/{siteId}/integrations/mailchimp/signup-sync-health",
|
|
797
|
+
method: "GET",
|
|
798
|
+
tags: [TAG_TEMPLATES.site],
|
|
799
|
+
auth: "user",
|
|
800
|
+
responseKind: "json",
|
|
801
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
802
|
+
},
|
|
803
|
+
getMailchimpConnection: {
|
|
804
|
+
path: "/sites/{siteId}/integrations/mailchimp/connection",
|
|
805
|
+
method: "GET",
|
|
806
|
+
tags: [TAG_TEMPLATES.site],
|
|
807
|
+
auth: "user",
|
|
808
|
+
responseKind: "json",
|
|
809
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
810
|
+
},
|
|
811
|
+
startMailchimpOAuth: {
|
|
812
|
+
path: "/sites/{siteId}/integrations/mailchimp/oauth/start",
|
|
813
|
+
method: "POST",
|
|
814
|
+
tags: [TAG_TEMPLATES.site],
|
|
815
|
+
auth: "user",
|
|
816
|
+
responseKind: "json",
|
|
817
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
818
|
+
errors: ["auth:forbidden", "validation:invalid_input", "server:internal_error"]
|
|
819
|
+
},
|
|
820
|
+
refreshMailchimpAudiences: {
|
|
821
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences/refresh",
|
|
822
|
+
method: "POST",
|
|
823
|
+
tags: [TAG_TEMPLATES.site],
|
|
824
|
+
auth: "user",
|
|
825
|
+
responseKind: "json",
|
|
826
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
827
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
828
|
+
},
|
|
829
|
+
disconnectMailchimp: {
|
|
830
|
+
path: "/sites/{siteId}/integrations/mailchimp/disconnect",
|
|
831
|
+
method: "POST",
|
|
832
|
+
tags: [TAG_TEMPLATES.site],
|
|
833
|
+
auth: "user",
|
|
834
|
+
responseKind: "json",
|
|
835
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
836
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
837
|
+
},
|
|
838
|
+
mailchimpOAuthCallback: {
|
|
839
|
+
path: "/auth/mailchimp/callback",
|
|
840
|
+
method: "GET",
|
|
841
|
+
auth: "public",
|
|
842
|
+
responseKind: "void",
|
|
843
|
+
errors: []
|
|
844
|
+
},
|
|
787
845
|
createNewsletterList: {
|
|
788
846
|
path: "/sites/{siteId}/newsletter/lists",
|
|
789
847
|
method: "POST",
|
|
@@ -3008,20 +3066,6 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
3008
3066
|
auth: "user",
|
|
3009
3067
|
responseKind: "json"
|
|
3010
3068
|
},
|
|
3011
|
-
instagramUploadZip: {
|
|
3012
|
-
path: "/instagram/upload-zip",
|
|
3013
|
-
method: "POST",
|
|
3014
|
-
tags: ["instagram-import"],
|
|
3015
|
-
auth: "user",
|
|
3016
|
-
responseKind: "json"
|
|
3017
|
-
},
|
|
3018
|
-
createInstagramZipUploadUrl: {
|
|
3019
|
-
path: "/instagram/upload-zip-url",
|
|
3020
|
-
method: "POST",
|
|
3021
|
-
tags: ["instagram-import"],
|
|
3022
|
-
auth: "user",
|
|
3023
|
-
responseKind: "json"
|
|
3024
|
-
},
|
|
3025
3069
|
getAnalyticsReport: {
|
|
3026
3070
|
path: "/sites/{siteId}/analytics/report",
|
|
3027
3071
|
method: "GET",
|
|
@@ -6420,6 +6464,48 @@ function err(error) {
|
|
|
6420
6464
|
// ../core/src/branded.ts
|
|
6421
6465
|
var unsafeAsMediaAssetId = (id) => id;
|
|
6422
6466
|
|
|
6467
|
+
// ../core/src/assert-never.ts
|
|
6468
|
+
function assertNever(value, message = "Unexpected variant") {
|
|
6469
|
+
throw new Error(`${message}: ${String(value)}`);
|
|
6470
|
+
}
|
|
6471
|
+
|
|
6472
|
+
// ../core/src/currency-format.ts
|
|
6473
|
+
var CURRENCY_LOCALE_BY_CODE = {
|
|
6474
|
+
USD: "en-US",
|
|
6475
|
+
GBP: "en-GB",
|
|
6476
|
+
EUR: "de-DE",
|
|
6477
|
+
AUD: "en-AU",
|
|
6478
|
+
CAD: "en-CA",
|
|
6479
|
+
NZD: "en-NZ",
|
|
6480
|
+
JPY: "ja-JP",
|
|
6481
|
+
CNY: "zh-CN",
|
|
6482
|
+
CHF: "de-CH"
|
|
6483
|
+
};
|
|
6484
|
+
function resolveCurrencyLocale(currencyCode, override) {
|
|
6485
|
+
return override ?? CURRENCY_LOCALE_BY_CODE[currencyCode] ?? "en";
|
|
6486
|
+
}
|
|
6487
|
+
function formatCurrencyAmount(amountCents, currency, options) {
|
|
6488
|
+
const currencyCode = currency.toUpperCase();
|
|
6489
|
+
const locale = resolveCurrencyLocale(currencyCode, options?.locale);
|
|
6490
|
+
try {
|
|
6491
|
+
const exactFormatter = new Intl.NumberFormat(locale, {
|
|
6492
|
+
style: "currency",
|
|
6493
|
+
currency: currencyCode
|
|
6494
|
+
});
|
|
6495
|
+
const fractionDigits = options?.decimals === "auto" ? {
|
|
6496
|
+
minimumFractionDigits: 0,
|
|
6497
|
+
maximumFractionDigits: exactFormatter.resolvedOptions().maximumFractionDigits
|
|
6498
|
+
} : {};
|
|
6499
|
+
return new Intl.NumberFormat(locale, {
|
|
6500
|
+
style: "currency",
|
|
6501
|
+
currency: currencyCode,
|
|
6502
|
+
...fractionDigits
|
|
6503
|
+
}).format(amountCents / 100);
|
|
6504
|
+
} catch {
|
|
6505
|
+
return `${(amountCents / 100).toFixed(2)} ${currencyCode}`;
|
|
6506
|
+
}
|
|
6507
|
+
}
|
|
6508
|
+
|
|
6423
6509
|
// ../core/src/event-pricing.ts
|
|
6424
6510
|
function publicEventPricingDisplay(pricing) {
|
|
6425
6511
|
return pricing.display;
|
|
@@ -6454,11 +6540,48 @@ function isFreePublicEventPriceDisplay(display) {
|
|
|
6454
6540
|
return display.display.kind === "free";
|
|
6455
6541
|
case "exact":
|
|
6456
6542
|
case "from":
|
|
6543
|
+
case "range":
|
|
6457
6544
|
case "mixed":
|
|
6458
6545
|
case "unavailable":
|
|
6459
6546
|
return false;
|
|
6460
6547
|
}
|
|
6461
6548
|
}
|
|
6549
|
+
function formatCoursePriceDisplayLabel(display, options) {
|
|
6550
|
+
switch (display.kind) {
|
|
6551
|
+
case "free":
|
|
6552
|
+
case "unavailable":
|
|
6553
|
+
return "Course";
|
|
6554
|
+
case "exact":
|
|
6555
|
+
return `Course (${formatCurrencyAmount(display.amount, display.currency, options)})`;
|
|
6556
|
+
case "from":
|
|
6557
|
+
return `Course (From ${formatCurrencyAmount(display.amount, display.currency, options)})`;
|
|
6558
|
+
default:
|
|
6559
|
+
return assertNever(display);
|
|
6560
|
+
}
|
|
6561
|
+
}
|
|
6562
|
+
function formatBookingPriceDisplay(display, options = {}) {
|
|
6563
|
+
switch (display.kind) {
|
|
6564
|
+
case "free":
|
|
6565
|
+
return "Free";
|
|
6566
|
+
case "exact":
|
|
6567
|
+
return formatCurrencyAmount(display.amount, display.currency, options);
|
|
6568
|
+
case "from":
|
|
6569
|
+
return `From ${formatCurrencyAmount(display.amount, display.currency, options)}`;
|
|
6570
|
+
case "range":
|
|
6571
|
+
return `${formatCurrencyAmount(display.minAmount, display.currency, options)} - ${formatCurrencyAmount(display.maxAmount, display.currency, options)}`;
|
|
6572
|
+
case "mixed":
|
|
6573
|
+
return display.paidToAmount > display.paidFromAmount ? `Free / ${formatCurrencyAmount(display.paidFromAmount, display.currency, options)} - ${formatCurrencyAmount(display.paidToAmount, display.currency, options)}` : `Free / ${formatCurrencyAmount(display.paidFromAmount, display.currency, options)}`;
|
|
6574
|
+
case "unavailable":
|
|
6575
|
+
return "Pricing unavailable";
|
|
6576
|
+
case "course":
|
|
6577
|
+
return formatCoursePriceDisplayLabel(display.display, options);
|
|
6578
|
+
default:
|
|
6579
|
+
return assertNever(display);
|
|
6580
|
+
}
|
|
6581
|
+
}
|
|
6582
|
+
function formatEventPricing(pricing, options = {}) {
|
|
6583
|
+
return formatBookingPriceDisplay(publicEventPricingDisplay(pricing), options);
|
|
6584
|
+
}
|
|
6462
6585
|
|
|
6463
6586
|
// ../core/src/booking-date-time.ts
|
|
6464
6587
|
var DEFAULT_LOCALE = "en-US";
|
|
@@ -6704,11 +6827,6 @@ function toLocationCoordinates(value) {
|
|
|
6704
6827
|
};
|
|
6705
6828
|
}
|
|
6706
6829
|
|
|
6707
|
-
// ../core/src/assert-never.ts
|
|
6708
|
-
function assertNever(value, message = "Unexpected variant") {
|
|
6709
|
-
throw new Error(`${message}: ${String(value)}`);
|
|
6710
|
-
}
|
|
6711
|
-
|
|
6712
6830
|
// ../core/src/planner.ts
|
|
6713
6831
|
var systemPlanningClock = {
|
|
6714
6832
|
now: () => Date.now()
|
|
@@ -26932,15 +27050,53 @@ var newsletterFormFragment = defineFragment({
|
|
|
26932
27050
|
title: "Newsletter Form",
|
|
26933
27051
|
description: "Newsletter subscription form with preset field configurations.",
|
|
26934
27052
|
fields: [
|
|
27053
|
+
{
|
|
27054
|
+
id: "destinationProvider",
|
|
27055
|
+
type: "select",
|
|
27056
|
+
label: "Send signups to",
|
|
27057
|
+
description: "Choose where new subscribers from this form should go.",
|
|
27058
|
+
defaultValue: "riverbank",
|
|
27059
|
+
required: true,
|
|
27060
|
+
ui: { intent: "behavior" },
|
|
27061
|
+
options: [
|
|
27062
|
+
{ value: "riverbank", label: "Riverbank newsletter" }
|
|
27063
|
+
]
|
|
27064
|
+
},
|
|
26935
27065
|
{
|
|
26936
27066
|
id: "listId",
|
|
26937
27067
|
type: "reference",
|
|
26938
27068
|
label: "Newsletter list",
|
|
26939
27069
|
description: "Select the list new subscribers should be added to.",
|
|
26940
|
-
required:
|
|
27070
|
+
required: false,
|
|
26941
27071
|
referenceKind: "newsletterList",
|
|
26942
27072
|
allowManualEntry: false,
|
|
26943
|
-
ui: {
|
|
27073
|
+
ui: {
|
|
27074
|
+
intent: "behavior",
|
|
27075
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
27076
|
+
}
|
|
27077
|
+
},
|
|
27078
|
+
{
|
|
27079
|
+
id: "mailchimpAudienceId",
|
|
27080
|
+
type: "reference",
|
|
27081
|
+
label: "Mailchimp audience",
|
|
27082
|
+
description: "Choose the Mailchimp audience for new subscribers.",
|
|
27083
|
+
required: false,
|
|
27084
|
+
referenceKind: "mailchimpAudience",
|
|
27085
|
+
allowManualEntry: false,
|
|
27086
|
+
ui: {
|
|
27087
|
+
intent: "behavior",
|
|
27088
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
27089
|
+
}
|
|
27090
|
+
},
|
|
27091
|
+
{
|
|
27092
|
+
id: "mailchimpTags",
|
|
27093
|
+
type: "text",
|
|
27094
|
+
label: "Mailchimp tags",
|
|
27095
|
+
description: "Optional tags to apply in Mailchimp, separated by commas or semicolons.",
|
|
27096
|
+
ui: {
|
|
27097
|
+
intent: "behavior",
|
|
27098
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
27099
|
+
}
|
|
26944
27100
|
},
|
|
26945
27101
|
{
|
|
26946
27102
|
id: "preset",
|
|
@@ -26987,13 +27143,18 @@ var newsletterFormFragment = defineFragment({
|
|
|
26987
27143
|
id: "tags",
|
|
26988
27144
|
type: "text",
|
|
26989
27145
|
label: "Tags (optional)",
|
|
26990
|
-
description: "Optional tags to apply on subscribe (comma or semicolon separated)."
|
|
27146
|
+
description: "Optional tags to apply on subscribe (comma or semicolon separated).",
|
|
27147
|
+
ui: {
|
|
27148
|
+
intent: "behavior",
|
|
27149
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
27150
|
+
}
|
|
26991
27151
|
}
|
|
26992
27152
|
],
|
|
26993
27153
|
layout: [
|
|
26994
27154
|
el(
|
|
26995
27155
|
"newsletter-form",
|
|
26996
27156
|
withApiBindings({
|
|
27157
|
+
destinationProvider: { $bind: { from: "destinationProvider" } },
|
|
26997
27158
|
listId: { $bind: { from: "listId" } },
|
|
26998
27159
|
preset: { $bind: { from: "preset" } },
|
|
26999
27160
|
includePhone: { $bind: { from: "includePhone" } },
|
|
@@ -32916,10 +33077,10 @@ var appointmentBookingBlockDefinition = {
|
|
|
32916
33077
|
};
|
|
32917
33078
|
|
|
32918
33079
|
// ../blocks/src/system/blocks/event-registration.ts
|
|
32919
|
-
import { z as
|
|
33080
|
+
import { z as z50 } from "zod";
|
|
32920
33081
|
|
|
32921
33082
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
32922
|
-
import { z as
|
|
33083
|
+
import { z as z46 } from "zod";
|
|
32923
33084
|
|
|
32924
33085
|
// ../blocks/src/lib/media.ts
|
|
32925
33086
|
import z42 from "zod";
|
|
@@ -32997,296 +33158,393 @@ var mediaSchema2 = z42.discriminatedUnion("type", [
|
|
|
32997
33158
|
archiveMediaSchema
|
|
32998
33159
|
]);
|
|
32999
33160
|
|
|
33000
|
-
// ../blocks/src/system/
|
|
33161
|
+
// ../blocks/src/system/manifest/richTextSchema.ts
|
|
33001
33162
|
import { z as z43 } from "zod";
|
|
33002
|
-
var
|
|
33163
|
+
var TipTapMarkSchema = z43.object({
|
|
33164
|
+
type: z43.string(),
|
|
33165
|
+
attrs: z43.record(z43.string(), z43.unknown()).optional()
|
|
33166
|
+
});
|
|
33167
|
+
var TipTapNodeSchema = z43.lazy(
|
|
33168
|
+
() => z43.object({
|
|
33169
|
+
type: z43.string(),
|
|
33170
|
+
content: z43.array(TipTapNodeSchema).optional(),
|
|
33171
|
+
text: z43.string().optional(),
|
|
33172
|
+
attrs: z43.record(z43.string(), z43.unknown()).optional(),
|
|
33173
|
+
marks: z43.array(TipTapMarkSchema).optional()
|
|
33174
|
+
})
|
|
33175
|
+
);
|
|
33176
|
+
var RichTextValueSchema = z43.union([
|
|
33177
|
+
// Canonical: TipTap document directly
|
|
33178
|
+
TipTapNodeSchema,
|
|
33179
|
+
// Legacy (read-tolerance only): wrapped in { doc: {...} }
|
|
33180
|
+
z43.object({
|
|
33181
|
+
doc: TipTapNodeSchema
|
|
33182
|
+
})
|
|
33183
|
+
]);
|
|
33184
|
+
var RichTextDocSchema = z43.object({
|
|
33185
|
+
type: z43.literal("doc"),
|
|
33186
|
+
content: z43.array(TipTapNodeSchema)
|
|
33187
|
+
});
|
|
33188
|
+
function unwrapRichTextRoot(value) {
|
|
33189
|
+
if (!isRecord4(value)) return value;
|
|
33190
|
+
if (!("doc" in value)) return value;
|
|
33191
|
+
const inner = value.doc;
|
|
33192
|
+
if (isRecord4(inner) && inner.type === "doc") return inner;
|
|
33193
|
+
return value;
|
|
33194
|
+
}
|
|
33195
|
+
function createHardBreakNode() {
|
|
33196
|
+
return { type: "hardBreak" };
|
|
33197
|
+
}
|
|
33198
|
+
function parseRichTextInlineMarkdown(text2) {
|
|
33199
|
+
const out = [];
|
|
33200
|
+
const pushText = (value, marks) => {
|
|
33201
|
+
if (!value) return;
|
|
33202
|
+
out.push(
|
|
33203
|
+
marks && marks.length > 0 ? { type: "text", text: value, marks } : { type: "text", text: value }
|
|
33204
|
+
);
|
|
33205
|
+
};
|
|
33206
|
+
let rest = text2;
|
|
33207
|
+
while (rest.length > 0) {
|
|
33208
|
+
const start = rest.indexOf("**");
|
|
33209
|
+
if (start === -1) {
|
|
33210
|
+
pushText(rest);
|
|
33211
|
+
break;
|
|
33212
|
+
}
|
|
33213
|
+
const end = rest.indexOf("**", start + 2);
|
|
33214
|
+
if (end === -1) {
|
|
33215
|
+
pushText(rest);
|
|
33216
|
+
break;
|
|
33217
|
+
}
|
|
33218
|
+
pushText(rest.slice(0, start));
|
|
33219
|
+
pushText(rest.slice(start + 2, end), [{ type: "bold" }]);
|
|
33220
|
+
rest = rest.slice(end + 2);
|
|
33221
|
+
}
|
|
33222
|
+
return out;
|
|
33223
|
+
}
|
|
33224
|
+
function parseRichTextParagraphInlineMarkdown(text2) {
|
|
33225
|
+
return text2.split("\n").flatMap((line, index) => {
|
|
33226
|
+
const lineNodes = parseRichTextInlineMarkdown(line.trim());
|
|
33227
|
+
return index === 0 ? lineNodes : [createHardBreakNode(), ...lineNodes];
|
|
33228
|
+
});
|
|
33229
|
+
}
|
|
33230
|
+
function createRichTextDocFromMarkdown(markdown) {
|
|
33231
|
+
const normalized = markdown.replace(/\r\n/g, "\n").trim();
|
|
33232
|
+
if (!normalized) return { type: "doc", content: [] };
|
|
33233
|
+
const paragraphs = normalized.split(/\n{2,}/).map((paragraph) => paragraph.trim()).filter(Boolean);
|
|
33234
|
+
return {
|
|
33235
|
+
type: "doc",
|
|
33236
|
+
content: paragraphs.map((paragraph) => {
|
|
33237
|
+
const inline2 = parseRichTextParagraphInlineMarkdown(paragraph);
|
|
33238
|
+
return inline2.length > 0 ? { type: "paragraph", content: inline2 } : { type: "paragraph" };
|
|
33239
|
+
})
|
|
33240
|
+
};
|
|
33241
|
+
}
|
|
33242
|
+
|
|
33243
|
+
// ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
|
|
33244
|
+
import { z as z44 } from "zod";
|
|
33245
|
+
var bookingDepositRefundPolicySchema = z44.enum([
|
|
33003
33246
|
"refundable",
|
|
33004
33247
|
"non_refundable"
|
|
33005
33248
|
]);
|
|
33006
|
-
var bookingInstalmentPlanSchema =
|
|
33007
|
-
|
|
33008
|
-
kind:
|
|
33009
|
-
depositAmountCents:
|
|
33249
|
+
var bookingInstalmentPlanSchema = z44.union([
|
|
33250
|
+
z44.object({
|
|
33251
|
+
kind: z44.literal("deposit_plus_one_remainder"),
|
|
33252
|
+
depositAmountCents: z44.number().int().min(0),
|
|
33010
33253
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
33011
|
-
remainderDueCount:
|
|
33012
|
-
intervalUnit:
|
|
33254
|
+
remainderDueCount: z44.number().int().positive(),
|
|
33255
|
+
intervalUnit: z44.enum(["day", "week", "month"])
|
|
33013
33256
|
}),
|
|
33014
|
-
|
|
33015
|
-
kind:
|
|
33016
|
-
depositAmountCents:
|
|
33257
|
+
z44.object({
|
|
33258
|
+
kind: z44.literal("deposit_plus_scheduled_instalments"),
|
|
33259
|
+
depositAmountCents: z44.number().int().min(0),
|
|
33017
33260
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
33018
|
-
instalmentCount:
|
|
33019
|
-
intervalCount:
|
|
33020
|
-
intervalUnit:
|
|
33261
|
+
instalmentCount: z44.number().int().positive(),
|
|
33262
|
+
intervalCount: z44.number().int().positive(),
|
|
33263
|
+
intervalUnit: z44.enum(["day", "week", "month"])
|
|
33021
33264
|
}),
|
|
33022
|
-
|
|
33023
|
-
kind:
|
|
33024
|
-
instalmentCount:
|
|
33025
|
-
intervalCount:
|
|
33026
|
-
intervalUnit:
|
|
33265
|
+
z44.object({
|
|
33266
|
+
kind: z44.literal("equal_scheduled_instalments"),
|
|
33267
|
+
instalmentCount: z44.number().int().positive(),
|
|
33268
|
+
intervalCount: z44.number().int().positive(),
|
|
33269
|
+
intervalUnit: z44.enum(["day", "week", "month"])
|
|
33027
33270
|
})
|
|
33028
33271
|
]);
|
|
33029
|
-
var bookingFlexibleBalanceDueDateRuleSchema =
|
|
33030
|
-
|
|
33031
|
-
kind:
|
|
33032
|
-
daysBeforeStart:
|
|
33272
|
+
var bookingFlexibleBalanceDueDateRuleSchema = z44.union([
|
|
33273
|
+
z44.object({
|
|
33274
|
+
kind: z44.literal("relative_to_start_date"),
|
|
33275
|
+
daysBeforeStart: z44.number().int().positive()
|
|
33033
33276
|
}),
|
|
33034
|
-
|
|
33035
|
-
kind:
|
|
33036
|
-
dueAt:
|
|
33277
|
+
z44.object({
|
|
33278
|
+
kind: z44.literal("fixed_calendar_date"),
|
|
33279
|
+
dueAt: z44.string().datetime()
|
|
33037
33280
|
})
|
|
33038
33281
|
]);
|
|
33039
|
-
var bookingFlexibleBalanceConfigSchema =
|
|
33040
|
-
upfrontAmountCents:
|
|
33282
|
+
var bookingFlexibleBalanceConfigSchema = z44.object({
|
|
33283
|
+
upfrontAmountCents: z44.number().int().min(0),
|
|
33041
33284
|
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
33042
33285
|
depositRefundability: bookingDepositRefundPolicySchema
|
|
33043
33286
|
});
|
|
33044
|
-
var blockBookingPaymentCollectionOptionSchema =
|
|
33045
|
-
|
|
33046
|
-
kind:
|
|
33287
|
+
var blockBookingPaymentCollectionOptionSchema = z44.union([
|
|
33288
|
+
z44.object({
|
|
33289
|
+
kind: z44.literal("upfront")
|
|
33047
33290
|
}),
|
|
33048
|
-
|
|
33049
|
-
kind:
|
|
33291
|
+
z44.object({
|
|
33292
|
+
kind: z44.literal("deferred_manual")
|
|
33050
33293
|
}),
|
|
33051
|
-
|
|
33052
|
-
kind:
|
|
33294
|
+
z44.object({
|
|
33295
|
+
kind: z44.literal("instalment_plan"),
|
|
33053
33296
|
plan: bookingInstalmentPlanSchema
|
|
33054
33297
|
}),
|
|
33055
|
-
|
|
33056
|
-
kind:
|
|
33298
|
+
z44.object({
|
|
33299
|
+
kind: z44.literal("flexible_balance"),
|
|
33057
33300
|
config: bookingFlexibleBalanceConfigSchema
|
|
33058
33301
|
})
|
|
33059
33302
|
]);
|
|
33060
|
-
var blockBookingPaymentTermsSchema =
|
|
33061
|
-
allowedOptions:
|
|
33303
|
+
var blockBookingPaymentTermsSchema = z44.object({
|
|
33304
|
+
allowedOptions: z44.array(blockBookingPaymentCollectionOptionSchema).min(1)
|
|
33062
33305
|
});
|
|
33063
33306
|
|
|
33064
33307
|
// ../blocks/src/system/blocks/courses/shared/schemas.ts
|
|
33065
|
-
import { z as
|
|
33066
|
-
var courseVenueSchema =
|
|
33067
|
-
id:
|
|
33068
|
-
name:
|
|
33069
|
-
address:
|
|
33308
|
+
import { z as z45 } from "zod";
|
|
33309
|
+
var courseVenueSchema = z45.object({
|
|
33310
|
+
id: z45.string(),
|
|
33311
|
+
name: z45.string(),
|
|
33312
|
+
address: z45.string().nullable()
|
|
33070
33313
|
});
|
|
33071
|
-
var courseSessionSchema =
|
|
33072
|
-
id:
|
|
33073
|
-
startsAt:
|
|
33074
|
-
endsAt:
|
|
33075
|
-
timeZone:
|
|
33076
|
-
capacityOverride:
|
|
33077
|
-
overrides:
|
|
33314
|
+
var courseSessionSchema = z45.object({
|
|
33315
|
+
id: z45.string(),
|
|
33316
|
+
startsAt: z45.string(),
|
|
33317
|
+
endsAt: z45.string(),
|
|
33318
|
+
timeZone: z45.string(),
|
|
33319
|
+
capacityOverride: z45.number().nullable().optional(),
|
|
33320
|
+
overrides: z45.record(z45.string(), z45.unknown()).nullable().optional()
|
|
33078
33321
|
});
|
|
33079
|
-
var courseTeamMemberSummarySchema =
|
|
33080
|
-
id:
|
|
33081
|
-
name:
|
|
33082
|
-
roleLabel:
|
|
33083
|
-
summary:
|
|
33084
|
-
profilePath:
|
|
33322
|
+
var courseTeamMemberSummarySchema = z45.object({
|
|
33323
|
+
id: z45.string(),
|
|
33324
|
+
name: z45.string(),
|
|
33325
|
+
roleLabel: z45.string().nullable(),
|
|
33326
|
+
summary: z45.string().nullable(),
|
|
33327
|
+
profilePath: z45.string().nullable()
|
|
33085
33328
|
});
|
|
33086
|
-
var coursePricingOptionSchema =
|
|
33087
|
-
id:
|
|
33088
|
-
name:
|
|
33089
|
-
description:
|
|
33090
|
-
priceAmount:
|
|
33091
|
-
isActive:
|
|
33092
|
-
sortOrder:
|
|
33093
|
-
capacityLimit:
|
|
33094
|
-
saleStartsAt:
|
|
33095
|
-
saleEndsAt:
|
|
33096
|
-
attendanceScope:
|
|
33329
|
+
var coursePricingOptionSchema = z45.object({
|
|
33330
|
+
id: z45.string(),
|
|
33331
|
+
name: z45.string(),
|
|
33332
|
+
description: z45.string().nullable(),
|
|
33333
|
+
priceAmount: z45.number(),
|
|
33334
|
+
isActive: z45.boolean(),
|
|
33335
|
+
sortOrder: z45.number(),
|
|
33336
|
+
capacityLimit: z45.number().nullable(),
|
|
33337
|
+
saleStartsAt: z45.string().nullable(),
|
|
33338
|
+
saleEndsAt: z45.string().nullable(),
|
|
33339
|
+
attendanceScope: z45.enum(["in_person", "online", "both"]).nullable().optional()
|
|
33097
33340
|
});
|
|
33098
|
-
var coursePricingSchema =
|
|
33099
|
-
bookingRequirement:
|
|
33100
|
-
pricingStrategy:
|
|
33101
|
-
currency:
|
|
33102
|
-
singlePriceAmount:
|
|
33341
|
+
var coursePricingSchema = z45.object({
|
|
33342
|
+
bookingRequirement: z45.enum(["none", "required"]),
|
|
33343
|
+
pricingStrategy: z45.enum(["free", "single", "tiered"]),
|
|
33344
|
+
currency: z45.string(),
|
|
33345
|
+
singlePriceAmount: z45.number().nullable(),
|
|
33103
33346
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
33104
|
-
options:
|
|
33347
|
+
options: z45.array(coursePricingOptionSchema)
|
|
33105
33348
|
});
|
|
33106
|
-
var publicCourseSchema =
|
|
33107
|
-
id:
|
|
33108
|
-
title:
|
|
33109
|
-
slug:
|
|
33110
|
-
description:
|
|
33111
|
-
teamMembers:
|
|
33112
|
-
enrollmentOpen:
|
|
33349
|
+
var publicCourseSchema = z45.object({
|
|
33350
|
+
id: z45.string(),
|
|
33351
|
+
title: z45.string(),
|
|
33352
|
+
slug: z45.string(),
|
|
33353
|
+
description: z45.unknown().nullable(),
|
|
33354
|
+
teamMembers: z45.array(courseTeamMemberSummarySchema).optional(),
|
|
33355
|
+
enrollmentOpen: z45.boolean(),
|
|
33113
33356
|
pricing: coursePricingSchema.optional(),
|
|
33114
|
-
priceCents:
|
|
33115
|
-
currency:
|
|
33357
|
+
priceCents: z45.number().nullable(),
|
|
33358
|
+
currency: z45.string(),
|
|
33116
33359
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
33117
|
-
enrollmentCapacity:
|
|
33118
|
-
acceptsMemberships:
|
|
33119
|
-
status:
|
|
33120
|
-
sessionsCount:
|
|
33121
|
-
enrolledCount:
|
|
33122
|
-
availableSpots:
|
|
33123
|
-
sessions:
|
|
33360
|
+
enrollmentCapacity: z45.number().nullable(),
|
|
33361
|
+
acceptsMemberships: z45.boolean(),
|
|
33362
|
+
status: z45.enum(["active", "draft", "cancelled"]),
|
|
33363
|
+
sessionsCount: z45.number(),
|
|
33364
|
+
enrolledCount: z45.number(),
|
|
33365
|
+
availableSpots: z45.number().nullable(),
|
|
33366
|
+
sessions: z45.array(courseSessionSchema),
|
|
33124
33367
|
venue: courseVenueSchema.nullable(),
|
|
33125
|
-
contentEntryId:
|
|
33368
|
+
contentEntryId: z45.string().nullable()
|
|
33126
33369
|
});
|
|
33127
|
-
var publicCoursesArraySchema =
|
|
33370
|
+
var publicCoursesArraySchema = z45.array(publicCourseSchema);
|
|
33128
33371
|
|
|
33129
33372
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
33130
|
-
var eventPresetSchema =
|
|
33131
|
-
var eventScheduleScopeSchema =
|
|
33132
|
-
var eventDestinationModeSchema =
|
|
33133
|
-
var eventVenueSchema =
|
|
33134
|
-
id:
|
|
33135
|
-
name:
|
|
33136
|
-
address:
|
|
33137
|
-
location:
|
|
33138
|
-
lat:
|
|
33139
|
-
lng:
|
|
33373
|
+
var eventPresetSchema = z46.enum(["event", "class", "workshop", "retreat", "performance"]);
|
|
33374
|
+
var eventScheduleScopeSchema = z46.enum(["recurring", "oneOff"]);
|
|
33375
|
+
var eventDestinationModeSchema = z46.enum(["cms-managed", "system-managed"]);
|
|
33376
|
+
var eventVenueSchema = z46.object({
|
|
33377
|
+
id: z46.string(),
|
|
33378
|
+
name: z46.string(),
|
|
33379
|
+
address: z46.string().nullable(),
|
|
33380
|
+
location: z46.object({
|
|
33381
|
+
lat: z46.number(),
|
|
33382
|
+
lng: z46.number()
|
|
33140
33383
|
}).nullable()
|
|
33141
33384
|
});
|
|
33142
|
-
var eventCategorySchema =
|
|
33143
|
-
id:
|
|
33144
|
-
name:
|
|
33145
|
-
color:
|
|
33385
|
+
var eventCategorySchema = z46.object({
|
|
33386
|
+
id: z46.string(),
|
|
33387
|
+
name: z46.string(),
|
|
33388
|
+
color: z46.string().nullable()
|
|
33146
33389
|
});
|
|
33147
|
-
var pricingTypeSchema =
|
|
33148
|
-
var accessRestrictionSchema =
|
|
33149
|
-
var eventPricingModeSchema =
|
|
33150
|
-
var publicCoursePriceDisplaySchema =
|
|
33151
|
-
|
|
33152
|
-
|
|
33153
|
-
|
|
33154
|
-
|
|
33390
|
+
var pricingTypeSchema = z46.enum(["free", "paid"]);
|
|
33391
|
+
var accessRestrictionSchema = z46.enum(["none", "category"]);
|
|
33392
|
+
var eventPricingModeSchema = z46.enum(["single", "ticket_types"]);
|
|
33393
|
+
var publicCoursePriceDisplaySchema = z46.discriminatedUnion("kind", [
|
|
33394
|
+
z46.object({ kind: z46.literal("free"), currency: z46.string() }),
|
|
33395
|
+
z46.object({ kind: z46.literal("exact"), amount: z46.number(), currency: z46.string() }),
|
|
33396
|
+
z46.object({ kind: z46.literal("from"), amount: z46.number(), currency: z46.string() }),
|
|
33397
|
+
z46.object({ kind: z46.literal("unavailable"), currency: z46.string() })
|
|
33155
33398
|
]);
|
|
33156
|
-
var publicEventPriceDisplaySchema =
|
|
33157
|
-
|
|
33158
|
-
|
|
33159
|
-
|
|
33160
|
-
|
|
33161
|
-
|
|
33162
|
-
|
|
33399
|
+
var publicEventPriceDisplaySchema = z46.discriminatedUnion("kind", [
|
|
33400
|
+
z46.object({ kind: z46.literal("free"), currency: z46.string() }),
|
|
33401
|
+
z46.object({ kind: z46.literal("exact"), amount: z46.number(), currency: z46.string() }),
|
|
33402
|
+
z46.object({ kind: z46.literal("from"), amount: z46.number(), currency: z46.string() }),
|
|
33403
|
+
z46.object({ kind: z46.literal("range"), minAmount: z46.number(), maxAmount: z46.number(), currency: z46.string() }),
|
|
33404
|
+
z46.object({
|
|
33405
|
+
kind: z46.literal("mixed"),
|
|
33406
|
+
paidFromAmount: z46.number(),
|
|
33407
|
+
paidToAmount: z46.number(),
|
|
33408
|
+
currency: z46.string()
|
|
33409
|
+
}),
|
|
33410
|
+
z46.object({ kind: z46.literal("unavailable"), currency: z46.string() }),
|
|
33411
|
+
z46.object({ kind: z46.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
33163
33412
|
]);
|
|
33164
|
-
var publicEventTicketTypePriceDisplaySchema =
|
|
33165
|
-
|
|
33166
|
-
|
|
33167
|
-
|
|
33168
|
-
|
|
33169
|
-
|
|
33413
|
+
var publicEventTicketTypePriceDisplaySchema = z46.union([
|
|
33414
|
+
z46.object({ kind: z46.literal("free"), currency: z46.string() }),
|
|
33415
|
+
z46.object({ kind: z46.literal("exact"), amount: z46.number(), currency: z46.string() }),
|
|
33416
|
+
z46.object({ kind: z46.literal("from"), amount: z46.number(), currency: z46.string() }),
|
|
33417
|
+
z46.object({ kind: z46.literal("range"), minAmount: z46.number(), maxAmount: z46.number(), currency: z46.string() }),
|
|
33418
|
+
z46.object({
|
|
33419
|
+
kind: z46.literal("mixed"),
|
|
33420
|
+
paidFromAmount: z46.number(),
|
|
33421
|
+
paidToAmount: z46.number(),
|
|
33422
|
+
currency: z46.string()
|
|
33423
|
+
}),
|
|
33424
|
+
z46.object({ kind: z46.literal("unavailable"), currency: z46.string() })
|
|
33170
33425
|
]);
|
|
33171
|
-
var publicEventAttendanceModeSchema =
|
|
33172
|
-
var publicEventAttendanceModeAvailabilitySchema =
|
|
33426
|
+
var publicEventAttendanceModeSchema = z46.enum(["in_person", "online"]);
|
|
33427
|
+
var publicEventAttendanceModeAvailabilitySchema = z46.object({
|
|
33173
33428
|
mode: publicEventAttendanceModeSchema,
|
|
33174
|
-
capacity:
|
|
33175
|
-
registeredCount:
|
|
33176
|
-
availableSpots:
|
|
33177
|
-
waitlistEnabled:
|
|
33429
|
+
capacity: z46.number().nullable(),
|
|
33430
|
+
registeredCount: z46.number(),
|
|
33431
|
+
availableSpots: z46.number().nullable(),
|
|
33432
|
+
waitlistEnabled: z46.boolean()
|
|
33178
33433
|
});
|
|
33179
|
-
var publicEventTicketTypeAvailabilitySchema =
|
|
33180
|
-
|
|
33181
|
-
kind:
|
|
33182
|
-
remainingCapacity:
|
|
33434
|
+
var publicEventTicketTypeAvailabilitySchema = z46.union([
|
|
33435
|
+
z46.object({
|
|
33436
|
+
kind: z46.literal("available"),
|
|
33437
|
+
remainingCapacity: z46.number().nullable()
|
|
33183
33438
|
}),
|
|
33184
|
-
|
|
33185
|
-
kind:
|
|
33186
|
-
reason:
|
|
33187
|
-
remainingCapacity:
|
|
33439
|
+
z46.object({
|
|
33440
|
+
kind: z46.literal("unavailable"),
|
|
33441
|
+
reason: z46.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
|
|
33442
|
+
remainingCapacity: z46.number().nullable()
|
|
33188
33443
|
})
|
|
33189
33444
|
]);
|
|
33190
|
-
var publicEventTicketTypeSchema =
|
|
33191
|
-
id:
|
|
33192
|
-
siteId:
|
|
33193
|
-
eventSeriesId:
|
|
33194
|
-
name:
|
|
33195
|
-
description:
|
|
33196
|
-
priceAmount:
|
|
33197
|
-
isActive:
|
|
33198
|
-
sortOrder:
|
|
33199
|
-
capacityMode:
|
|
33200
|
-
capacityLimit:
|
|
33201
|
-
attendanceScope:
|
|
33202
|
-
saleStartsAt:
|
|
33203
|
-
saleEndsAt:
|
|
33445
|
+
var publicEventTicketTypeSchema = z46.object({
|
|
33446
|
+
id: z46.string(),
|
|
33447
|
+
siteId: z46.string(),
|
|
33448
|
+
eventSeriesId: z46.string(),
|
|
33449
|
+
name: z46.string(),
|
|
33450
|
+
description: z46.string().nullable(),
|
|
33451
|
+
priceAmount: z46.number(),
|
|
33452
|
+
isActive: z46.boolean(),
|
|
33453
|
+
sortOrder: z46.number(),
|
|
33454
|
+
capacityMode: z46.enum(["limited", "unlimited"]),
|
|
33455
|
+
capacityLimit: z46.number().nullable(),
|
|
33456
|
+
attendanceScope: z46.enum(["in_person", "online", "both"]).optional(),
|
|
33457
|
+
saleStartsAt: z46.string().nullable(),
|
|
33458
|
+
saleEndsAt: z46.string().nullable(),
|
|
33204
33459
|
availability: publicEventTicketTypeAvailabilitySchema,
|
|
33205
|
-
createdAt:
|
|
33206
|
-
updatedAt:
|
|
33460
|
+
createdAt: z46.string(),
|
|
33461
|
+
updatedAt: z46.string()
|
|
33207
33462
|
});
|
|
33208
|
-
var publicEventPricingSchema =
|
|
33209
|
-
|
|
33210
|
-
kind:
|
|
33211
|
-
currency:
|
|
33212
|
-
display:
|
|
33463
|
+
var publicEventPricingSchema = z46.discriminatedUnion("kind", [
|
|
33464
|
+
z46.object({
|
|
33465
|
+
kind: z46.literal("drop_in"),
|
|
33466
|
+
currency: z46.string(),
|
|
33467
|
+
display: z46.object({ kind: z46.literal("free"), currency: z46.string() })
|
|
33213
33468
|
}),
|
|
33214
|
-
|
|
33215
|
-
kind:
|
|
33216
|
-
currency:
|
|
33217
|
-
display:
|
|
33469
|
+
z46.object({
|
|
33470
|
+
kind: z46.literal("free_registration"),
|
|
33471
|
+
currency: z46.string(),
|
|
33472
|
+
display: z46.object({ kind: z46.literal("free"), currency: z46.string() })
|
|
33218
33473
|
}),
|
|
33219
|
-
|
|
33220
|
-
kind:
|
|
33221
|
-
amount:
|
|
33222
|
-
currency:
|
|
33223
|
-
display:
|
|
33474
|
+
z46.object({
|
|
33475
|
+
kind: z46.literal("single_paid"),
|
|
33476
|
+
amount: z46.number(),
|
|
33477
|
+
currency: z46.string(),
|
|
33478
|
+
display: z46.object({ kind: z46.literal("exact"), amount: z46.number(), currency: z46.string() })
|
|
33224
33479
|
}),
|
|
33225
|
-
|
|
33226
|
-
kind:
|
|
33227
|
-
currency:
|
|
33228
|
-
ticketTypes:
|
|
33480
|
+
z46.object({
|
|
33481
|
+
kind: z46.literal("ticket_types"),
|
|
33482
|
+
currency: z46.string(),
|
|
33483
|
+
ticketTypes: z46.array(publicEventTicketTypeSchema),
|
|
33229
33484
|
display: publicEventTicketTypePriceDisplaySchema
|
|
33230
33485
|
}),
|
|
33231
|
-
|
|
33232
|
-
kind:
|
|
33233
|
-
display:
|
|
33486
|
+
z46.object({
|
|
33487
|
+
kind: z46.literal("course"),
|
|
33488
|
+
display: z46.object({ kind: z46.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
33234
33489
|
})
|
|
33235
33490
|
]);
|
|
33236
|
-
var publicTeamMemberSummarySchema =
|
|
33237
|
-
id:
|
|
33238
|
-
name:
|
|
33239
|
-
roleLabel:
|
|
33240
|
-
summary:
|
|
33241
|
-
profilePath:
|
|
33491
|
+
var publicTeamMemberSummarySchema = z46.object({
|
|
33492
|
+
id: z46.string(),
|
|
33493
|
+
name: z46.string(),
|
|
33494
|
+
roleLabel: z46.string().nullable(),
|
|
33495
|
+
summary: z46.string().nullable(),
|
|
33496
|
+
profilePath: z46.string().nullable()
|
|
33242
33497
|
});
|
|
33243
|
-
var publicEventSchema =
|
|
33244
|
-
kind:
|
|
33498
|
+
var publicEventSchema = z46.object({
|
|
33499
|
+
kind: z46.enum(["event", "course_session"]).optional(),
|
|
33245
33500
|
eventPreset: eventPresetSchema.optional(),
|
|
33246
33501
|
eventDestinationMode: eventDestinationModeSchema.optional(),
|
|
33247
33502
|
scheduleScope: eventScheduleScopeSchema.optional(),
|
|
33248
|
-
id:
|
|
33249
|
-
occurrenceId:
|
|
33250
|
-
seriesId:
|
|
33251
|
-
title:
|
|
33252
|
-
description:
|
|
33253
|
-
|
|
33254
|
-
|
|
33255
|
-
|
|
33503
|
+
id: z46.string(),
|
|
33504
|
+
occurrenceId: z46.string(),
|
|
33505
|
+
seriesId: z46.string(),
|
|
33506
|
+
title: z46.string(),
|
|
33507
|
+
description: z46.string().nullable(),
|
|
33508
|
+
content: z46.object({
|
|
33509
|
+
body: RichTextDocSchema.nullable().optional()
|
|
33510
|
+
}).optional(),
|
|
33511
|
+
presentation: z46.object({
|
|
33512
|
+
cardTitleOverride: z46.string().nullable().optional(),
|
|
33513
|
+
summary: z46.string().nullable().optional(),
|
|
33256
33514
|
image: mediaSchema2.nullable().optional()
|
|
33257
33515
|
}).optional(),
|
|
33258
|
-
slug:
|
|
33259
|
-
path:
|
|
33260
|
-
requiresRegistration:
|
|
33261
|
-
deliveryMode:
|
|
33262
|
-
attendanceModes:
|
|
33263
|
-
startsAt:
|
|
33264
|
-
endsAt:
|
|
33265
|
-
capacity:
|
|
33266
|
-
registeredCount:
|
|
33267
|
-
availableSpots:
|
|
33268
|
-
waitlistEnabled:
|
|
33516
|
+
slug: z46.string(),
|
|
33517
|
+
path: z46.string(),
|
|
33518
|
+
requiresRegistration: z46.boolean(),
|
|
33519
|
+
deliveryMode: z46.enum(["in_person", "online", "hybrid"]),
|
|
33520
|
+
attendanceModes: z46.array(publicEventAttendanceModeAvailabilitySchema),
|
|
33521
|
+
startsAt: z46.string(),
|
|
33522
|
+
endsAt: z46.string(),
|
|
33523
|
+
capacity: z46.number().nullable(),
|
|
33524
|
+
registeredCount: z46.number(),
|
|
33525
|
+
availableSpots: z46.number().nullable(),
|
|
33526
|
+
waitlistEnabled: z46.boolean(),
|
|
33269
33527
|
venue: eventVenueSchema.nullable(),
|
|
33270
33528
|
eventCategory: eventCategorySchema.nullable(),
|
|
33271
|
-
teamMembers:
|
|
33272
|
-
status:
|
|
33273
|
-
timeZone:
|
|
33529
|
+
teamMembers: z46.array(publicTeamMemberSummarySchema).optional(),
|
|
33530
|
+
status: z46.enum(["active", "draft", "archived"]).optional(),
|
|
33531
|
+
timeZone: z46.string(),
|
|
33274
33532
|
pricing: publicEventPricingSchema,
|
|
33275
33533
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
33276
33534
|
accessRestriction: accessRestrictionSchema,
|
|
33277
|
-
allowedCategoryIds:
|
|
33278
|
-
requireGuestDetails:
|
|
33279
|
-
acceptsPasses:
|
|
33280
|
-
acceptsMemberships:
|
|
33281
|
-
course:
|
|
33282
|
-
id:
|
|
33535
|
+
allowedCategoryIds: z46.array(z46.string()),
|
|
33536
|
+
requireGuestDetails: z46.boolean().optional(),
|
|
33537
|
+
acceptsPasses: z46.boolean().optional(),
|
|
33538
|
+
acceptsMemberships: z46.boolean().optional(),
|
|
33539
|
+
course: z46.object({
|
|
33540
|
+
id: z46.string(),
|
|
33283
33541
|
pricing: coursePricingSchema.optional(),
|
|
33284
|
-
priceCents:
|
|
33285
|
-
currency:
|
|
33286
|
-
enrollmentOpen:
|
|
33542
|
+
priceCents: z46.number().nullable(),
|
|
33543
|
+
currency: z46.string(),
|
|
33544
|
+
enrollmentOpen: z46.boolean()
|
|
33287
33545
|
}).nullable().optional()
|
|
33288
33546
|
});
|
|
33289
|
-
var publicEventsArraySchema =
|
|
33547
|
+
var publicEventsArraySchema = z46.array(publicEventSchema);
|
|
33290
33548
|
|
|
33291
33549
|
// ../blocks/src/system/blocks/events/shared/fields.ts
|
|
33292
33550
|
var cardVariantOptions2 = cardVariantRoleValues.map((value) => ({
|
|
@@ -33490,19 +33748,19 @@ function normalizeEventStaffMemberId(value) {
|
|
|
33490
33748
|
}
|
|
33491
33749
|
|
|
33492
33750
|
// ../blocks/src/system/blocks/event-registration.shared.ts
|
|
33493
|
-
import { z as
|
|
33494
|
-
var occurrenceContextSchema =
|
|
33495
|
-
id:
|
|
33496
|
-
seriesId:
|
|
33497
|
-
startsAt:
|
|
33498
|
-
endsAt:
|
|
33499
|
-
timeZone:
|
|
33500
|
-
capacityOverride:
|
|
33501
|
-
overrides:
|
|
33751
|
+
import { z as z47 } from "zod";
|
|
33752
|
+
var occurrenceContextSchema = z47.object({
|
|
33753
|
+
id: z47.string(),
|
|
33754
|
+
seriesId: z47.string(),
|
|
33755
|
+
startsAt: z47.string(),
|
|
33756
|
+
endsAt: z47.string(),
|
|
33757
|
+
timeZone: z47.string(),
|
|
33758
|
+
capacityOverride: z47.number().nullable().optional(),
|
|
33759
|
+
overrides: z47.record(z47.string(), z47.unknown()).nullable().optional()
|
|
33502
33760
|
}).nullable();
|
|
33503
33761
|
|
|
33504
33762
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
33505
|
-
import { z as
|
|
33763
|
+
import { z as z49 } from "zod";
|
|
33506
33764
|
|
|
33507
33765
|
// ../blocks/src/system/constants/events.ts
|
|
33508
33766
|
var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
|
|
@@ -33600,10 +33858,21 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
33600
33858
|
amount: readAmount(value.amount) ?? 0,
|
|
33601
33859
|
currency: displayCurrency
|
|
33602
33860
|
} : { kind: "unavailable", currency };
|
|
33861
|
+
case "range": {
|
|
33862
|
+
const minAmount = readAmount(value.minAmount);
|
|
33863
|
+
const maxAmount = readAmount(value.maxAmount);
|
|
33864
|
+
return minAmount !== null && maxAmount !== null ? {
|
|
33865
|
+
kind: "range",
|
|
33866
|
+
minAmount,
|
|
33867
|
+
maxAmount,
|
|
33868
|
+
currency: displayCurrency
|
|
33869
|
+
} : { kind: "unavailable", currency };
|
|
33870
|
+
}
|
|
33603
33871
|
case "mixed":
|
|
33604
33872
|
return readAmount(value.paidFromAmount) !== null ? {
|
|
33605
33873
|
kind: "mixed",
|
|
33606
33874
|
paidFromAmount: readAmount(value.paidFromAmount) ?? 0,
|
|
33875
|
+
paidToAmount: readAmount(value.paidToAmount) ?? readAmount(value.paidFromAmount) ?? 0,
|
|
33607
33876
|
currency: displayCurrency
|
|
33608
33877
|
} : { kind: "unavailable", currency };
|
|
33609
33878
|
case "unavailable":
|
|
@@ -33645,16 +33914,16 @@ function readAmount(value) {
|
|
|
33645
33914
|
}
|
|
33646
33915
|
|
|
33647
33916
|
// ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
|
|
33648
|
-
import { z as
|
|
33649
|
-
var previewStageSchema =
|
|
33650
|
-
var registrationButtonVariantSchema =
|
|
33651
|
-
var eventButtonVariantSchema =
|
|
33652
|
-
var eventLayoutSchema =
|
|
33653
|
-
var eventCalendarDisplayModeSchema =
|
|
33654
|
-
var columnOptionSchema =
|
|
33655
|
-
var weekStartSchema =
|
|
33656
|
-
var filterAutoShowSchema =
|
|
33657
|
-
var calendarTabViewsSchema =
|
|
33917
|
+
import { z as z48 } from "zod";
|
|
33918
|
+
var previewStageSchema = z48.enum(["preview", "published"]);
|
|
33919
|
+
var registrationButtonVariantSchema = z48.enum(["primary", "secondary", "outline"]);
|
|
33920
|
+
var eventButtonVariantSchema = z48.enum(["primary", "secondary", "outline", "link"]);
|
|
33921
|
+
var eventLayoutSchema = z48.enum(eventCalendarListLayoutValues);
|
|
33922
|
+
var eventCalendarDisplayModeSchema = z48.enum(eventCalendarDisplayModeValues);
|
|
33923
|
+
var columnOptionSchema = z48.enum(["2", "3", "4"]);
|
|
33924
|
+
var weekStartSchema = z48.enum(["sunday", "monday"]);
|
|
33925
|
+
var filterAutoShowSchema = z48.enum(["auto", "always", "never"]);
|
|
33926
|
+
var calendarTabViewsSchema = z48.enum(["both", "month", "week"]);
|
|
33658
33927
|
|
|
33659
33928
|
// ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
|
|
33660
33929
|
function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
|
|
@@ -33714,66 +33983,68 @@ function toRegistrationEvents(events) {
|
|
|
33714
33983
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
33715
33984
|
var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
|
|
33716
33985
|
var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
|
|
33717
|
-
var contentEntrySchema =
|
|
33718
|
-
id:
|
|
33719
|
-
slug:
|
|
33720
|
-
contentTypeSlug:
|
|
33986
|
+
var contentEntrySchema = z49.object({
|
|
33987
|
+
id: z49.string(),
|
|
33988
|
+
slug: z49.string(),
|
|
33989
|
+
contentTypeSlug: z49.string()
|
|
33721
33990
|
});
|
|
33722
|
-
var eventRegistrationPublicEventSchema =
|
|
33991
|
+
var eventRegistrationPublicEventSchema = z49.preprocess(
|
|
33723
33992
|
normalizeEventRegistrationEventInput,
|
|
33724
33993
|
publicEventSchema
|
|
33725
33994
|
);
|
|
33726
|
-
var eventRegistrationSourceSchema =
|
|
33727
|
-
siteId:
|
|
33728
|
-
apiBaseUrl:
|
|
33729
|
-
portalToken:
|
|
33730
|
-
previewToken:
|
|
33995
|
+
var eventRegistrationSourceSchema = z49.object({
|
|
33996
|
+
siteId: z49.string().optional(),
|
|
33997
|
+
apiBaseUrl: z49.string().optional(),
|
|
33998
|
+
portalToken: z49.string().nullable().optional(),
|
|
33999
|
+
previewToken: z49.string().nullable().optional(),
|
|
33731
34000
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
33732
34001
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
33733
|
-
events:
|
|
33734
|
-
className:
|
|
33735
|
-
buttonText:
|
|
33736
|
-
maxTickets:
|
|
33737
|
-
showVenue:
|
|
33738
|
-
showCapacity:
|
|
33739
|
-
successMessage:
|
|
33740
|
-
waitlistMessage:
|
|
34002
|
+
events: z49.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
34003
|
+
className: z49.string().nullable().optional(),
|
|
34004
|
+
buttonText: z49.string().nullable().optional(),
|
|
34005
|
+
maxTickets: z49.string().nullable().optional(),
|
|
34006
|
+
showVenue: z49.boolean().optional(),
|
|
34007
|
+
showCapacity: z49.boolean().optional(),
|
|
34008
|
+
successMessage: z49.string().optional(),
|
|
34009
|
+
waitlistMessage: z49.string().optional(),
|
|
33741
34010
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
33742
|
-
|
|
34011
|
+
overlayEnabled: z49.boolean().optional(),
|
|
34012
|
+
spamProtectionEnabled: z49.boolean().optional(),
|
|
33743
34013
|
stage: previewStageSchema.optional(),
|
|
33744
|
-
supportEmail:
|
|
34014
|
+
supportEmail: z49.string().optional()
|
|
33745
34015
|
});
|
|
33746
|
-
var eventRegistrationDisplaySchema =
|
|
33747
|
-
kind:
|
|
33748
|
-
state:
|
|
33749
|
-
className:
|
|
33750
|
-
titleText:
|
|
33751
|
-
bodyText:
|
|
33752
|
-
stepLabels:
|
|
33753
|
-
summaryButtonText:
|
|
34016
|
+
var eventRegistrationDisplaySchema = z49.object({
|
|
34017
|
+
kind: z49.literal("event-registration"),
|
|
34018
|
+
state: z49.literal("generic-shell"),
|
|
34019
|
+
className: z49.string().nullable(),
|
|
34020
|
+
titleText: z49.string(),
|
|
34021
|
+
bodyText: z49.string(),
|
|
34022
|
+
stepLabels: z49.array(z49.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
|
|
34023
|
+
summaryButtonText: z49.string()
|
|
33754
34024
|
});
|
|
33755
|
-
var eventRegistrationHydrationSchema =
|
|
34025
|
+
var eventRegistrationHydrationSchema = z49.object({
|
|
33756
34026
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
33757
34027
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
33758
|
-
events:
|
|
33759
|
-
maxTickets:
|
|
33760
|
-
showVenue:
|
|
33761
|
-
showCapacity:
|
|
33762
|
-
successMessage:
|
|
33763
|
-
waitlistMessage:
|
|
34028
|
+
events: z49.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
34029
|
+
maxTickets: z49.string().optional(),
|
|
34030
|
+
showVenue: z49.boolean().optional(),
|
|
34031
|
+
showCapacity: z49.boolean().optional(),
|
|
34032
|
+
successMessage: z49.string().optional(),
|
|
34033
|
+
waitlistMessage: z49.string().optional(),
|
|
33764
34034
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
33765
|
-
|
|
33766
|
-
|
|
34035
|
+
overlayEnabled: z49.boolean().optional(),
|
|
34036
|
+
spamProtectionEnabled: z49.boolean().optional(),
|
|
34037
|
+
supportEmail: z49.string().optional()
|
|
33767
34038
|
});
|
|
33768
|
-
var eventRegistrationRenderSchema =
|
|
34039
|
+
var eventRegistrationRenderSchema = z49.object({
|
|
33769
34040
|
display: eventRegistrationDisplaySchema,
|
|
33770
34041
|
hydration: eventRegistrationHydrationSchema
|
|
33771
34042
|
});
|
|
33772
|
-
var eventRegistrationIslandMetaCodec = createZodCodec(
|
|
33773
|
-
siteId:
|
|
33774
|
-
apiBaseUrl:
|
|
33775
|
-
portalToken:
|
|
33776
|
-
previewToken:
|
|
34043
|
+
var eventRegistrationIslandMetaCodec = createZodCodec(z49.object({
|
|
34044
|
+
siteId: z49.string().optional(),
|
|
34045
|
+
apiBaseUrl: z49.string().optional(),
|
|
34046
|
+
portalToken: z49.string().nullable().optional(),
|
|
34047
|
+
previewToken: z49.string().nullable().optional(),
|
|
33777
34048
|
stage: previewStageSchema.optional()
|
|
33778
34049
|
}));
|
|
33779
34050
|
var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -33877,6 +34148,7 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
33877
34148
|
successMessage: source.successMessage,
|
|
33878
34149
|
waitlistMessage: source.waitlistMessage,
|
|
33879
34150
|
buttonVariant: source.buttonVariant,
|
|
34151
|
+
overlayEnabled: source.overlayEnabled,
|
|
33880
34152
|
spamProtectionEnabled: source.spamProtectionEnabled,
|
|
33881
34153
|
supportEmail: source.supportEmail
|
|
33882
34154
|
}
|
|
@@ -34066,6 +34338,12 @@ var eventRegistrationManifest = createBlockManifest({
|
|
|
34066
34338
|
buttonVariant: {
|
|
34067
34339
|
$bind: { from: "content.buttonVariant", fallback: "primary" }
|
|
34068
34340
|
},
|
|
34341
|
+
overlayEnabled: {
|
|
34342
|
+
$bind: {
|
|
34343
|
+
from: "$root.eventRegistrationOverlayEnabled",
|
|
34344
|
+
fallback: false
|
|
34345
|
+
}
|
|
34346
|
+
},
|
|
34069
34347
|
// Event data from loader
|
|
34070
34348
|
events: { $bind: { from: "data.events" } },
|
|
34071
34349
|
// Stage for preview mode (allows registering for draft events)
|
|
@@ -34086,7 +34364,7 @@ var eventRegistrationBlockDefinition = {
|
|
|
34086
34364
|
manifest: eventRegistrationManifest,
|
|
34087
34365
|
runtime: eventRegistrationBlockRuntime,
|
|
34088
34366
|
dataSchemas: {
|
|
34089
|
-
events:
|
|
34367
|
+
events: z50.array(publicEventSchema).optional(),
|
|
34090
34368
|
occurrenceContext: occurrenceContextSchema.optional()
|
|
34091
34369
|
},
|
|
34092
34370
|
dataLoaders: {
|
|
@@ -34213,29 +34491,7 @@ function resolveCoursePricingState(course, selectedPricingOptionId, nowInput = {
|
|
|
34213
34491
|
}
|
|
34214
34492
|
}
|
|
34215
34493
|
function formatCoursePriceDisplay(display, locale) {
|
|
34216
|
-
|
|
34217
|
-
case "free":
|
|
34218
|
-
return "Free";
|
|
34219
|
-
case "unavailable":
|
|
34220
|
-
return "Pricing unavailable";
|
|
34221
|
-
case "exact":
|
|
34222
|
-
return formatCourseCurrencyAmount(display.amount, display.currency, { locale });
|
|
34223
|
-
case "from":
|
|
34224
|
-
return `From ${formatCourseCurrencyAmount(display.amount, display.currency, { locale })}`;
|
|
34225
|
-
}
|
|
34226
|
-
}
|
|
34227
|
-
function formatCourseCurrencyAmount(amount, currency, options) {
|
|
34228
|
-
const {
|
|
34229
|
-
locale = "en-US",
|
|
34230
|
-
minimumFractionDigits,
|
|
34231
|
-
maximumFractionDigits
|
|
34232
|
-
} = options ?? {};
|
|
34233
|
-
return new Intl.NumberFormat(locale, {
|
|
34234
|
-
style: "currency",
|
|
34235
|
-
currency: currency.toUpperCase(),
|
|
34236
|
-
...minimumFractionDigits === void 0 ? {} : { minimumFractionDigits },
|
|
34237
|
-
...maximumFractionDigits === void 0 ? {} : { maximumFractionDigits }
|
|
34238
|
-
}).format(amount / 100);
|
|
34494
|
+
return formatBookingPriceDisplay(display, { decimals: "exact", locale });
|
|
34239
34495
|
}
|
|
34240
34496
|
function formatCoursePriceAmount(amount, currency, locale) {
|
|
34241
34497
|
return formatCoursePriceDisplay(
|
|
@@ -34245,73 +34501,73 @@ function formatCoursePriceAmount(amount, currency, locale) {
|
|
|
34245
34501
|
}
|
|
34246
34502
|
|
|
34247
34503
|
// ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
|
|
34248
|
-
import { z as
|
|
34249
|
-
var contentEntrySchema2 =
|
|
34250
|
-
id:
|
|
34251
|
-
slug:
|
|
34252
|
-
contentTypeSlug:
|
|
34504
|
+
import { z as z51 } from "zod";
|
|
34505
|
+
var contentEntrySchema2 = z51.object({
|
|
34506
|
+
id: z51.string(),
|
|
34507
|
+
slug: z51.string(),
|
|
34508
|
+
contentTypeSlug: z51.string()
|
|
34253
34509
|
});
|
|
34254
|
-
var courseEntrySubrouteContextSchema =
|
|
34255
|
-
|
|
34256
|
-
kind:
|
|
34257
|
-
run:
|
|
34258
|
-
courseId:
|
|
34259
|
-
seriesId:
|
|
34260
|
-
runSlug:
|
|
34261
|
-
runName:
|
|
34510
|
+
var courseEntrySubrouteContextSchema = z51.union([
|
|
34511
|
+
z51.object({
|
|
34512
|
+
kind: z51.literal("course-run"),
|
|
34513
|
+
run: z51.object({
|
|
34514
|
+
courseId: z51.string(),
|
|
34515
|
+
seriesId: z51.string(),
|
|
34516
|
+
runSlug: z51.string(),
|
|
34517
|
+
runName: z51.string().nullable()
|
|
34262
34518
|
})
|
|
34263
34519
|
}),
|
|
34264
|
-
|
|
34265
|
-
kind:
|
|
34520
|
+
z51.object({
|
|
34521
|
+
kind: z51.literal("event-occurrence"),
|
|
34266
34522
|
occurrence: occurrenceContextSchema
|
|
34267
34523
|
})
|
|
34268
34524
|
]);
|
|
34269
|
-
var courseRegistrationSourceSchema =
|
|
34270
|
-
siteId:
|
|
34271
|
-
apiBaseUrl:
|
|
34272
|
-
portalToken:
|
|
34525
|
+
var courseRegistrationSourceSchema = z51.object({
|
|
34526
|
+
siteId: z51.string().optional(),
|
|
34527
|
+
apiBaseUrl: z51.string().optional(),
|
|
34528
|
+
portalToken: z51.string().nullable().optional(),
|
|
34273
34529
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
34274
34530
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
34275
|
-
courses:
|
|
34276
|
-
className:
|
|
34277
|
-
showSessions:
|
|
34278
|
-
showPrice:
|
|
34279
|
-
showCapacity:
|
|
34280
|
-
showVenue:
|
|
34281
|
-
successMessage:
|
|
34282
|
-
waitlistMessage:
|
|
34283
|
-
membershipMessage:
|
|
34284
|
-
buttonText:
|
|
34531
|
+
courses: z51.array(publicCourseSchema).nullable().optional(),
|
|
34532
|
+
className: z51.string().nullable().optional(),
|
|
34533
|
+
showSessions: z51.boolean().optional(),
|
|
34534
|
+
showPrice: z51.boolean().optional(),
|
|
34535
|
+
showCapacity: z51.boolean().optional(),
|
|
34536
|
+
showVenue: z51.boolean().optional(),
|
|
34537
|
+
successMessage: z51.string().optional(),
|
|
34538
|
+
waitlistMessage: z51.string().optional(),
|
|
34539
|
+
membershipMessage: z51.string().optional(),
|
|
34540
|
+
buttonText: z51.string().nullable().optional(),
|
|
34285
34541
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
34286
34542
|
stage: previewStageSchema.optional()
|
|
34287
34543
|
});
|
|
34288
|
-
var courseRegistrationDisplaySchema =
|
|
34289
|
-
kind:
|
|
34290
|
-
state:
|
|
34291
|
-
className:
|
|
34292
|
-
summaryButtonText:
|
|
34544
|
+
var courseRegistrationDisplaySchema = z51.object({
|
|
34545
|
+
kind: z51.literal("course-registration"),
|
|
34546
|
+
state: z51.literal("shell"),
|
|
34547
|
+
className: z51.string().nullable(),
|
|
34548
|
+
summaryButtonText: z51.string()
|
|
34293
34549
|
});
|
|
34294
|
-
var courseRegistrationHydrationSchema =
|
|
34550
|
+
var courseRegistrationHydrationSchema = z51.object({
|
|
34295
34551
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
34296
34552
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
34297
|
-
courses:
|
|
34298
|
-
showSessions:
|
|
34299
|
-
showPrice:
|
|
34300
|
-
showCapacity:
|
|
34301
|
-
showVenue:
|
|
34302
|
-
successMessage:
|
|
34303
|
-
waitlistMessage:
|
|
34304
|
-
membershipMessage:
|
|
34553
|
+
courses: z51.array(publicCourseSchema).nullable().optional(),
|
|
34554
|
+
showSessions: z51.boolean().optional(),
|
|
34555
|
+
showPrice: z51.boolean().optional(),
|
|
34556
|
+
showCapacity: z51.boolean().optional(),
|
|
34557
|
+
showVenue: z51.boolean().optional(),
|
|
34558
|
+
successMessage: z51.string().optional(),
|
|
34559
|
+
waitlistMessage: z51.string().optional(),
|
|
34560
|
+
membershipMessage: z51.string().optional(),
|
|
34305
34561
|
buttonVariant: registrationButtonVariantSchema.optional()
|
|
34306
34562
|
});
|
|
34307
|
-
var courseRegistrationRenderSchema =
|
|
34563
|
+
var courseRegistrationRenderSchema = z51.object({
|
|
34308
34564
|
display: courseRegistrationDisplaySchema,
|
|
34309
34565
|
hydration: courseRegistrationHydrationSchema
|
|
34310
34566
|
});
|
|
34311
|
-
var courseRegistrationIslandMetaCodec = createZodCodec(
|
|
34312
|
-
siteId:
|
|
34313
|
-
apiBaseUrl:
|
|
34314
|
-
portalToken:
|
|
34567
|
+
var courseRegistrationIslandMetaCodec = createZodCodec(z51.object({
|
|
34568
|
+
siteId: z51.string().optional(),
|
|
34569
|
+
apiBaseUrl: z51.string().optional(),
|
|
34570
|
+
portalToken: z51.string().nullable().optional(),
|
|
34315
34571
|
stage: previewStageSchema.optional()
|
|
34316
34572
|
}));
|
|
34317
34573
|
var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -34584,32 +34840,32 @@ var courseRegistrationBlockDefinition = {
|
|
|
34584
34840
|
};
|
|
34585
34841
|
|
|
34586
34842
|
// ../blocks/src/system/blocks/event-details.ts
|
|
34587
|
-
import { z as
|
|
34843
|
+
import { z as z53 } from "zod";
|
|
34588
34844
|
|
|
34589
34845
|
// ../blocks/src/system/blocks/shop.shared.ts
|
|
34590
|
-
import { z as
|
|
34591
|
-
var publicPassProductSchema =
|
|
34592
|
-
id:
|
|
34593
|
-
productUseCase:
|
|
34594
|
-
name:
|
|
34595
|
-
description:
|
|
34596
|
-
price:
|
|
34597
|
-
currency:
|
|
34598
|
-
creditsTotal:
|
|
34599
|
-
pricePerCredit:
|
|
34600
|
-
validDays:
|
|
34601
|
-
eligibleCategoryIds:
|
|
34602
|
-
eligibleCategoryNames:
|
|
34846
|
+
import { z as z52 } from "zod";
|
|
34847
|
+
var publicPassProductSchema = z52.object({
|
|
34848
|
+
id: z52.string(),
|
|
34849
|
+
productUseCase: z52.enum(["event_pass", "appointment_package"]).default("event_pass"),
|
|
34850
|
+
name: z52.string(),
|
|
34851
|
+
description: z52.string().nullable(),
|
|
34852
|
+
price: z52.number(),
|
|
34853
|
+
currency: z52.string(),
|
|
34854
|
+
creditsTotal: z52.number(),
|
|
34855
|
+
pricePerCredit: z52.number(),
|
|
34856
|
+
validDays: z52.number().nullable(),
|
|
34857
|
+
eligibleCategoryIds: z52.array(z52.string()),
|
|
34858
|
+
eligibleCategoryNames: z52.array(z52.string())
|
|
34603
34859
|
});
|
|
34604
|
-
var publicMembershipProductSchema =
|
|
34605
|
-
id:
|
|
34606
|
-
name:
|
|
34607
|
-
description:
|
|
34608
|
-
price:
|
|
34609
|
-
currency:
|
|
34610
|
-
billingInterval:
|
|
34611
|
-
eligibleCategoryIds:
|
|
34612
|
-
eligibleCategoryNames:
|
|
34860
|
+
var publicMembershipProductSchema = z52.object({
|
|
34861
|
+
id: z52.string(),
|
|
34862
|
+
name: z52.string(),
|
|
34863
|
+
description: z52.string().nullable(),
|
|
34864
|
+
price: z52.number(),
|
|
34865
|
+
currency: z52.string(),
|
|
34866
|
+
billingInterval: z52.enum(["month", "year"]),
|
|
34867
|
+
eligibleCategoryIds: z52.array(z52.string()),
|
|
34868
|
+
eligibleCategoryNames: z52.array(z52.string())
|
|
34613
34869
|
});
|
|
34614
34870
|
|
|
34615
34871
|
// ../blocks/src/system/blocks/event-details.ts
|
|
@@ -34744,40 +35000,40 @@ var eventDetailsManifest = createBlockManifest({
|
|
|
34744
35000
|
})
|
|
34745
35001
|
]
|
|
34746
35002
|
});
|
|
34747
|
-
var occurrenceContextSchema2 =
|
|
34748
|
-
id:
|
|
34749
|
-
seriesId:
|
|
34750
|
-
startsAt:
|
|
34751
|
-
endsAt:
|
|
34752
|
-
timeZone:
|
|
34753
|
-
capacityOverride:
|
|
34754
|
-
overrides:
|
|
35003
|
+
var occurrenceContextSchema2 = z53.object({
|
|
35004
|
+
id: z53.string(),
|
|
35005
|
+
seriesId: z53.string(),
|
|
35006
|
+
startsAt: z53.string(),
|
|
35007
|
+
endsAt: z53.string(),
|
|
35008
|
+
timeZone: z53.string(),
|
|
35009
|
+
capacityOverride: z53.number().nullable().optional(),
|
|
35010
|
+
overrides: z53.record(z53.string(), z53.unknown()).nullable().optional()
|
|
34755
35011
|
}).nullable();
|
|
34756
|
-
var eventAutoApplyDiscountPreviewBaseSchema =
|
|
34757
|
-
id:
|
|
34758
|
-
publicLabel:
|
|
34759
|
-
description:
|
|
34760
|
-
minTicketsRequired:
|
|
35012
|
+
var eventAutoApplyDiscountPreviewBaseSchema = z53.object({
|
|
35013
|
+
id: z53.string(),
|
|
35014
|
+
publicLabel: z53.string(),
|
|
35015
|
+
description: z53.string().nullable(),
|
|
35016
|
+
minTicketsRequired: z53.number().nullable()
|
|
34761
35017
|
});
|
|
34762
|
-
var eventAutoApplyDiscountPreviewSchema =
|
|
35018
|
+
var eventAutoApplyDiscountPreviewSchema = z53.discriminatedUnion("discountType", [
|
|
34763
35019
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
34764
|
-
discountType:
|
|
34765
|
-
discountPercent:
|
|
34766
|
-
discountAmountCents:
|
|
35020
|
+
discountType: z53.literal("percent"),
|
|
35021
|
+
discountPercent: z53.number(),
|
|
35022
|
+
discountAmountCents: z53.null()
|
|
34767
35023
|
}),
|
|
34768
35024
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
34769
|
-
discountType:
|
|
34770
|
-
discountPercent:
|
|
34771
|
-
discountAmountCents:
|
|
35025
|
+
discountType: z53.literal("fixed"),
|
|
35026
|
+
discountPercent: z53.null(),
|
|
35027
|
+
discountAmountCents: z53.number()
|
|
34772
35028
|
})
|
|
34773
35029
|
]);
|
|
34774
35030
|
var eventDetailsBlockDefinition = {
|
|
34775
35031
|
manifest: eventDetailsManifest,
|
|
34776
35032
|
dataSchemas: {
|
|
34777
|
-
eventDetailsData:
|
|
35033
|
+
eventDetailsData: z53.object({
|
|
34778
35034
|
events: publicEventsArraySchema,
|
|
34779
|
-
sitePasses:
|
|
34780
|
-
siteMemberships:
|
|
35035
|
+
sitePasses: z53.object({ passes: z53.array(publicPassProductSchema) }),
|
|
35036
|
+
siteMemberships: z53.object({ memberships: z53.array(publicMembershipProductSchema) }),
|
|
34781
35037
|
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
34782
35038
|
}).optional(),
|
|
34783
35039
|
occurrenceContext: occurrenceContextSchema2.optional()
|
|
@@ -35101,7 +35357,7 @@ var eventSpotlightBlockDefinition = {
|
|
|
35101
35357
|
};
|
|
35102
35358
|
|
|
35103
35359
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
35104
|
-
import { z as
|
|
35360
|
+
import { z as z55 } from "zod";
|
|
35105
35361
|
|
|
35106
35362
|
// ../calendar/src/grid.ts
|
|
35107
35363
|
var DAY_NAMES = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
|
|
@@ -35267,15 +35523,15 @@ function getLocalMinuteOfDay(isoTimestamp, timeZone) {
|
|
|
35267
35523
|
const date = new Date(isoTimestamp);
|
|
35268
35524
|
if (Number.isNaN(date.getTime())) return NaN;
|
|
35269
35525
|
if (!isValidTimeZone2(timeZone)) return NaN;
|
|
35270
|
-
const parts = new Intl.DateTimeFormat("en-
|
|
35526
|
+
const parts = new Intl.DateTimeFormat("en-GB", {
|
|
35271
35527
|
timeZone,
|
|
35272
35528
|
hour: "2-digit",
|
|
35273
35529
|
minute: "2-digit",
|
|
35274
|
-
hour12: false,
|
|
35275
35530
|
hourCycle: "h23"
|
|
35276
35531
|
}).formatToParts(date);
|
|
35277
|
-
const
|
|
35532
|
+
const hourPart = Number(parts.find((part) => part.type === "hour")?.value);
|
|
35278
35533
|
const minute = Number(parts.find((part) => part.type === "minute")?.value);
|
|
35534
|
+
const hour = hourPart === 24 ? 0 : hourPart;
|
|
35279
35535
|
if (Number.isNaN(hour) || Number.isNaN(minute)) return NaN;
|
|
35280
35536
|
return hour * MINUTES_PER_HOUR + minute;
|
|
35281
35537
|
}
|
|
@@ -35707,45 +35963,8 @@ function groupEventsByDate(events) {
|
|
|
35707
35963
|
}
|
|
35708
35964
|
return map;
|
|
35709
35965
|
}
|
|
35710
|
-
function formatCompactCurrencyAmount(amount, currency) {
|
|
35711
|
-
return formatCourseCurrencyAmount(amount, currency, {
|
|
35712
|
-
minimumFractionDigits: 0,
|
|
35713
|
-
maximumFractionDigits: 2
|
|
35714
|
-
});
|
|
35715
|
-
}
|
|
35716
|
-
function formatCourseEventPriceDisplay(display) {
|
|
35717
|
-
if (display.kind !== "course") {
|
|
35718
|
-
return "Course";
|
|
35719
|
-
}
|
|
35720
|
-
if (display.display.kind === "exact" || display.display.kind === "from") {
|
|
35721
|
-
const amountLabel = formatCompactCurrencyAmount(
|
|
35722
|
-
display.display.amount,
|
|
35723
|
-
display.display.currency
|
|
35724
|
-
);
|
|
35725
|
-
return display.display.kind === "from" ? `Course (From ${amountLabel})` : `Course (${amountLabel})`;
|
|
35726
|
-
}
|
|
35727
|
-
return "Course";
|
|
35728
|
-
}
|
|
35729
|
-
function formatPublicEventPriceDisplay(display) {
|
|
35730
|
-
switch (display.kind) {
|
|
35731
|
-
case "free":
|
|
35732
|
-
return "Free";
|
|
35733
|
-
case "exact":
|
|
35734
|
-
return formatCompactCurrencyAmount(display.amount, display.currency);
|
|
35735
|
-
case "from":
|
|
35736
|
-
return `From ${formatCompactCurrencyAmount(display.amount, display.currency)}`;
|
|
35737
|
-
case "mixed":
|
|
35738
|
-
return `Free / From ${formatCompactCurrencyAmount(display.paidFromAmount, display.currency)}`;
|
|
35739
|
-
case "unavailable":
|
|
35740
|
-
return "Pricing unavailable";
|
|
35741
|
-
case "course":
|
|
35742
|
-
return formatCourseEventPriceDisplay(display);
|
|
35743
|
-
}
|
|
35744
|
-
}
|
|
35745
35966
|
function formatEventPrice(event) {
|
|
35746
|
-
return
|
|
35747
|
-
publicEventPricingDisplay(resolveRuntimeEventPricing(event))
|
|
35748
|
-
);
|
|
35967
|
+
return formatEventPricing(resolveRuntimeEventPricing(event), { decimals: "auto" });
|
|
35749
35968
|
}
|
|
35750
35969
|
function resolveEventCta(event, buttonText) {
|
|
35751
35970
|
const { isFull: isSoldOut } = getEventAvailability(event);
|
|
@@ -37323,16 +37542,16 @@ function DateTimeTile({ startsAt, endsAt, timeZone }) {
|
|
|
37323
37542
|
}
|
|
37324
37543
|
|
|
37325
37544
|
// ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
|
|
37326
|
-
import { z as
|
|
37545
|
+
import { z as z54 } from "zod";
|
|
37327
37546
|
var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
|
|
37328
|
-
var eventPageSizeSchema =
|
|
37329
|
-
|
|
37330
|
-
|
|
37331
|
-
|
|
37332
|
-
|
|
37333
|
-
|
|
37334
|
-
|
|
37335
|
-
|
|
37547
|
+
var eventPageSizeSchema = z54.union([
|
|
37548
|
+
z54.literal(3),
|
|
37549
|
+
z54.literal(6),
|
|
37550
|
+
z54.literal(10),
|
|
37551
|
+
z54.literal(12),
|
|
37552
|
+
z54.literal(20),
|
|
37553
|
+
z54.literal(24),
|
|
37554
|
+
z54.literal(30)
|
|
37336
37555
|
]);
|
|
37337
37556
|
var eventPageSizeSet = new Set(eventPageSizeValues);
|
|
37338
37557
|
function resolveEventPageSize(value, fallback2 = 12) {
|
|
@@ -37342,15 +37561,15 @@ function resolveEventPageSize(value, fallback2 = 12) {
|
|
|
37342
37561
|
function resolveEventCalendarListPageSize(input) {
|
|
37343
37562
|
return resolveEventPageSize(input.eventsPerPage);
|
|
37344
37563
|
}
|
|
37345
|
-
var eventListPaginationActionSchema =
|
|
37346
|
-
|
|
37347
|
-
kind:
|
|
37348
|
-
label:
|
|
37564
|
+
var eventListPaginationActionSchema = z54.discriminatedUnion("kind", [
|
|
37565
|
+
z54.object({
|
|
37566
|
+
kind: z54.literal("loadMore"),
|
|
37567
|
+
label: z54.string()
|
|
37349
37568
|
}),
|
|
37350
|
-
|
|
37351
|
-
kind:
|
|
37352
|
-
label:
|
|
37353
|
-
href:
|
|
37569
|
+
z54.object({
|
|
37570
|
+
kind: z54.literal("seeAllLink"),
|
|
37571
|
+
label: z54.string(),
|
|
37572
|
+
href: z54.string()
|
|
37354
37573
|
})
|
|
37355
37574
|
]);
|
|
37356
37575
|
function resolveEventListPaginationAction(input) {
|
|
@@ -37363,89 +37582,89 @@ function resolveEventListPaginationAction(input) {
|
|
|
37363
37582
|
}
|
|
37364
37583
|
|
|
37365
37584
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
37366
|
-
var legacyEventCardVariantSchema =
|
|
37367
|
-
var eventCardVariantInputSchema =
|
|
37585
|
+
var legacyEventCardVariantSchema = z55.enum(["variant1", "variant2"]);
|
|
37586
|
+
var eventCardVariantInputSchema = z55.union([
|
|
37368
37587
|
cardVariantRoleSchema,
|
|
37369
37588
|
legacyEventCardVariantSchema
|
|
37370
37589
|
]);
|
|
37371
|
-
var cardOrientationSchema =
|
|
37372
|
-
var eventBlockKindSchema =
|
|
37373
|
-
var eventSurfaceScopeSchema =
|
|
37374
|
-
var eventScheduleScopeSchema2 =
|
|
37375
|
-
var eventListingSourceSchema =
|
|
37376
|
-
events:
|
|
37377
|
-
siteId:
|
|
37378
|
-
apiBaseUrl:
|
|
37590
|
+
var cardOrientationSchema = z55.enum(["vertical", "horizontal"]);
|
|
37591
|
+
var eventBlockKindSchema = z55.enum(eventBlockKindValues);
|
|
37592
|
+
var eventSurfaceScopeSchema = z55.enum(eventSurfaceScopeValues);
|
|
37593
|
+
var eventScheduleScopeSchema2 = z55.enum(eventScheduleScopeValues);
|
|
37594
|
+
var eventListingSourceSchema = z55.object({
|
|
37595
|
+
events: z55.array(publicEventSchema).nullable().optional(),
|
|
37596
|
+
siteId: z55.string(),
|
|
37597
|
+
apiBaseUrl: z55.string().optional(),
|
|
37379
37598
|
stage: previewStageSchema.optional(),
|
|
37380
37599
|
layout: eventLayoutSchema.optional(),
|
|
37381
37600
|
columns: columnOptionSchema.optional(),
|
|
37382
|
-
eventsPerPage:
|
|
37383
|
-
paginationMode:
|
|
37384
|
-
seeAllUrl:
|
|
37385
|
-
loadMoreText:
|
|
37601
|
+
eventsPerPage: z55.string().optional(),
|
|
37602
|
+
paginationMode: z55.enum(["loadMore", "seeAllLink"]).optional(),
|
|
37603
|
+
seeAllUrl: z55.string().optional(),
|
|
37604
|
+
loadMoreText: z55.string().optional(),
|
|
37386
37605
|
cardVariant: eventCardVariantInputSchema.optional(),
|
|
37387
37606
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
37388
|
-
buttonText:
|
|
37389
|
-
showVenue:
|
|
37390
|
-
showMap:
|
|
37391
|
-
showCapacity:
|
|
37392
|
-
emptyMessage:
|
|
37393
|
-
className:
|
|
37394
|
-
showFilters:
|
|
37607
|
+
buttonText: z55.string().optional(),
|
|
37608
|
+
showVenue: z55.boolean().optional(),
|
|
37609
|
+
showMap: z55.boolean().optional(),
|
|
37610
|
+
showCapacity: z55.boolean().optional(),
|
|
37611
|
+
emptyMessage: z55.string().optional(),
|
|
37612
|
+
className: z55.string().optional(),
|
|
37613
|
+
showFilters: z55.boolean().nullable().optional(),
|
|
37395
37614
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
37396
|
-
showVenueFilter:
|
|
37397
|
-
showStaffFilter:
|
|
37615
|
+
showVenueFilter: z55.boolean().nullable().optional(),
|
|
37616
|
+
showStaffFilter: z55.boolean().nullable().optional(),
|
|
37398
37617
|
eventKind: eventBlockKindSchema.nullable().optional(),
|
|
37399
37618
|
eventSurface: eventSurfaceScopeSchema.nullable().optional(),
|
|
37400
|
-
filterEventPresets:
|
|
37619
|
+
filterEventPresets: z55.union([z55.string(), z55.array(z55.string())]).nullable().optional(),
|
|
37401
37620
|
scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
|
|
37402
|
-
filterCategoryIds:
|
|
37403
|
-
filterStaffMemberId:
|
|
37404
|
-
filterVenueId:
|
|
37621
|
+
filterCategoryIds: z55.string().nullable().optional(),
|
|
37622
|
+
filterStaffMemberId: z55.string().nullable().optional(),
|
|
37623
|
+
filterVenueId: z55.string().nullable().optional()
|
|
37405
37624
|
});
|
|
37406
|
-
var eventListingDisplaySchema =
|
|
37407
|
-
kind:
|
|
37408
|
-
state:
|
|
37625
|
+
var eventListingDisplaySchema = z55.object({
|
|
37626
|
+
kind: z55.literal("event-listing"),
|
|
37627
|
+
state: z55.enum(["loading", "empty", "ready"]),
|
|
37409
37628
|
listLayout: eventLayoutSchema,
|
|
37410
|
-
className:
|
|
37411
|
-
emptyMessage:
|
|
37412
|
-
loadingMessage:
|
|
37413
|
-
containerClass:
|
|
37629
|
+
className: z55.string().nullable(),
|
|
37630
|
+
emptyMessage: z55.string(),
|
|
37631
|
+
loadingMessage: z55.string(),
|
|
37632
|
+
containerClass: z55.string(),
|
|
37414
37633
|
cardVariant: cardVariantRoleSchema,
|
|
37415
37634
|
buttonVariant: eventButtonVariantSchema,
|
|
37416
|
-
buttonText:
|
|
37417
|
-
showVenue:
|
|
37418
|
-
showMap:
|
|
37419
|
-
showCapacity:
|
|
37635
|
+
buttonText: z55.string(),
|
|
37636
|
+
showVenue: z55.boolean(),
|
|
37637
|
+
showMap: z55.boolean(),
|
|
37638
|
+
showCapacity: z55.boolean(),
|
|
37420
37639
|
orientation: cardOrientationSchema,
|
|
37421
|
-
events:
|
|
37640
|
+
events: z55.array(publicEventSchema)
|
|
37422
37641
|
});
|
|
37423
|
-
var eventListingHydrationSchema =
|
|
37424
|
-
siteId:
|
|
37642
|
+
var eventListingHydrationSchema = z55.object({
|
|
37643
|
+
siteId: z55.string(),
|
|
37425
37644
|
stage: previewStageSchema.optional(),
|
|
37426
37645
|
eventsPerPage: eventPageSizeSchema,
|
|
37427
37646
|
paginationAction: eventListPaginationActionSchema,
|
|
37428
|
-
showFilters:
|
|
37647
|
+
showFilters: z55.boolean(),
|
|
37429
37648
|
showCategoryFilter: filterAutoShowSchema,
|
|
37430
|
-
showVenueFilter:
|
|
37431
|
-
showStaffFilter:
|
|
37649
|
+
showVenueFilter: z55.boolean(),
|
|
37650
|
+
showStaffFilter: z55.boolean(),
|
|
37432
37651
|
eventKind: eventBlockKindSchema,
|
|
37433
37652
|
eventSurface: eventSurfaceScopeSchema,
|
|
37434
|
-
filterEventPresets:
|
|
37653
|
+
filterEventPresets: z55.string().nullable(),
|
|
37435
37654
|
scheduleScope: eventScheduleScopeSchema2,
|
|
37436
|
-
filterCategoryIds:
|
|
37437
|
-
filterStaffMemberId:
|
|
37438
|
-
filterVenueId:
|
|
37439
|
-
fetchInitialEventsOnMount:
|
|
37655
|
+
filterCategoryIds: z55.string().nullable().optional(),
|
|
37656
|
+
filterStaffMemberId: z55.string().nullable().optional(),
|
|
37657
|
+
filterVenueId: z55.string().nullable().optional(),
|
|
37658
|
+
fetchInitialEventsOnMount: z55.boolean()
|
|
37440
37659
|
});
|
|
37441
|
-
var eventListingRenderSchema =
|
|
37660
|
+
var eventListingRenderSchema = z55.object({
|
|
37442
37661
|
display: eventListingDisplaySchema,
|
|
37443
37662
|
hydration: eventListingHydrationSchema
|
|
37444
37663
|
});
|
|
37445
37664
|
var eventListingIslandMetaCodec = createZodCodec(
|
|
37446
|
-
|
|
37447
|
-
siteId:
|
|
37448
|
-
apiBaseUrl:
|
|
37665
|
+
z55.object({
|
|
37666
|
+
siteId: z55.string(),
|
|
37667
|
+
apiBaseUrl: z55.string().optional(),
|
|
37449
37668
|
stage: previewStageSchema.optional()
|
|
37450
37669
|
})
|
|
37451
37670
|
);
|
|
@@ -37824,15 +38043,15 @@ var eventListingBlockDefinition = {
|
|
|
37824
38043
|
};
|
|
37825
38044
|
|
|
37826
38045
|
// ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
|
|
37827
|
-
import { z as
|
|
37828
|
-
var eventBlockKindSchema2 =
|
|
37829
|
-
var eventSurfaceScopeSchema2 =
|
|
37830
|
-
var eventScheduleScopeSchema3 =
|
|
37831
|
-
var eventCalendarSourceSchema =
|
|
38046
|
+
import { z as z56 } from "zod";
|
|
38047
|
+
var eventBlockKindSchema2 = z56.enum(eventBlockKindValues);
|
|
38048
|
+
var eventSurfaceScopeSchema2 = z56.enum(eventSurfaceScopeValues);
|
|
38049
|
+
var eventScheduleScopeSchema3 = z56.enum(eventScheduleScopeValues);
|
|
38050
|
+
var eventCalendarSourceSchema = z56.object(
|
|
37832
38051
|
{
|
|
37833
|
-
events:
|
|
37834
|
-
siteId:
|
|
37835
|
-
apiBaseUrl:
|
|
38052
|
+
events: z56.array(publicEventSchema).nullable().optional(),
|
|
38053
|
+
siteId: z56.string(),
|
|
38054
|
+
apiBaseUrl: z56.string().optional(),
|
|
37836
38055
|
stage: previewStageSchema.optional(),
|
|
37837
38056
|
variant: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
37838
38057
|
displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
@@ -37840,78 +38059,78 @@ var eventCalendarSourceSchema = z55.object(
|
|
|
37840
38059
|
listColumns: columnOptionSchema.optional(),
|
|
37841
38060
|
layout: eventLayoutSchema.optional(),
|
|
37842
38061
|
columns: columnOptionSchema.optional(),
|
|
37843
|
-
eventsPerPage:
|
|
37844
|
-
paginationMode:
|
|
37845
|
-
seeAllUrl:
|
|
37846
|
-
loadMoreText:
|
|
38062
|
+
eventsPerPage: z56.string().optional(),
|
|
38063
|
+
paginationMode: z56.enum(["loadMore", "seeAllLink"]).optional(),
|
|
38064
|
+
seeAllUrl: z56.string().optional(),
|
|
38065
|
+
loadMoreText: z56.string().optional(),
|
|
37847
38066
|
startOfWeek: weekStartSchema.optional(),
|
|
37848
38067
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
37849
|
-
showFilters:
|
|
38068
|
+
showFilters: z56.boolean().nullable().optional(),
|
|
37850
38069
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
37851
|
-
showVenueFilter:
|
|
37852
|
-
showStaffFilter:
|
|
38070
|
+
showVenueFilter: z56.boolean().nullable().optional(),
|
|
38071
|
+
showStaffFilter: z56.boolean().nullable().optional(),
|
|
37853
38072
|
kind: eventBlockKindSchema2.nullable().optional(),
|
|
37854
38073
|
eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
|
|
37855
|
-
filterEventPresets:
|
|
38074
|
+
filterEventPresets: z56.union([z56.string(), z56.array(z56.string())]).nullable().optional(),
|
|
37856
38075
|
scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
|
|
37857
|
-
filterCategoryIds:
|
|
37858
|
-
filterStaffMemberId:
|
|
37859
|
-
filterVenueId:
|
|
38076
|
+
filterCategoryIds: z56.union([z56.string(), z56.array(z56.string())]).nullable().optional(),
|
|
38077
|
+
filterStaffMemberId: z56.string().nullable().optional(),
|
|
38078
|
+
filterVenueId: z56.string().nullable().optional(),
|
|
37860
38079
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
37861
|
-
buttonText:
|
|
37862
|
-
showVenue:
|
|
37863
|
-
showMap:
|
|
37864
|
-
showCapacity:
|
|
37865
|
-
emptyMessage:
|
|
37866
|
-
className:
|
|
38080
|
+
buttonText: z56.string().optional(),
|
|
38081
|
+
showVenue: z56.boolean().nullable().optional(),
|
|
38082
|
+
showMap: z56.boolean().nullable().optional(),
|
|
38083
|
+
showCapacity: z56.boolean().nullable().optional(),
|
|
38084
|
+
emptyMessage: z56.string().optional(),
|
|
38085
|
+
className: z56.string().optional()
|
|
37867
38086
|
}
|
|
37868
38087
|
);
|
|
37869
|
-
var eventCalendarDisplaySchema =
|
|
37870
|
-
kind:
|
|
38088
|
+
var eventCalendarDisplaySchema = z56.object({
|
|
38089
|
+
kind: z56.literal("event-calendar"),
|
|
37871
38090
|
displayMode: eventCalendarDisplayModeSchema,
|
|
37872
|
-
className:
|
|
37873
|
-
events:
|
|
38091
|
+
className: z56.string().nullable(),
|
|
38092
|
+
events: z56.array(publicEventSchema),
|
|
37874
38093
|
listLayout: eventLayoutSchema,
|
|
37875
38094
|
listColumns: columnOptionSchema,
|
|
37876
38095
|
eventsPerPage: eventPageSizeSchema,
|
|
37877
38096
|
paginationAction: eventListPaginationActionSchema,
|
|
37878
38097
|
startOfWeek: weekStartSchema,
|
|
37879
38098
|
calendarTabViews: calendarTabViewsSchema,
|
|
37880
|
-
showFilters:
|
|
38099
|
+
showFilters: z56.boolean(),
|
|
37881
38100
|
showCategoryFilter: filterAutoShowSchema,
|
|
37882
|
-
showVenueFilter:
|
|
37883
|
-
showStaffFilter:
|
|
38101
|
+
showVenueFilter: z56.boolean(),
|
|
38102
|
+
showStaffFilter: z56.boolean(),
|
|
37884
38103
|
eventKind: eventBlockKindSchema2,
|
|
37885
38104
|
eventSurface: eventSurfaceScopeSchema2,
|
|
37886
|
-
filterEventPresets:
|
|
38105
|
+
filterEventPresets: z56.string().nullable(),
|
|
37887
38106
|
scheduleScope: eventScheduleScopeSchema3,
|
|
37888
|
-
filterCategoryIds:
|
|
37889
|
-
filterStaffMemberId:
|
|
37890
|
-
filterVenueId:
|
|
38107
|
+
filterCategoryIds: z56.string().nullable(),
|
|
38108
|
+
filterStaffMemberId: z56.string().nullable(),
|
|
38109
|
+
filterVenueId: z56.string().nullable(),
|
|
37891
38110
|
buttonVariant: eventButtonVariantSchema,
|
|
37892
|
-
buttonText:
|
|
37893
|
-
showVenue:
|
|
37894
|
-
showMap:
|
|
37895
|
-
showCapacity:
|
|
37896
|
-
emptyMessage:
|
|
38111
|
+
buttonText: z56.string(),
|
|
38112
|
+
showVenue: z56.boolean(),
|
|
38113
|
+
showMap: z56.boolean(),
|
|
38114
|
+
showCapacity: z56.boolean(),
|
|
38115
|
+
emptyMessage: z56.string()
|
|
37897
38116
|
});
|
|
37898
|
-
var eventCalendarHydrationSchema =
|
|
37899
|
-
siteId:
|
|
38117
|
+
var eventCalendarHydrationSchema = z56.object({
|
|
38118
|
+
siteId: z56.string(),
|
|
37900
38119
|
stage: previewStageSchema.optional(),
|
|
37901
|
-
prefetchedEvents:
|
|
38120
|
+
prefetchedEvents: z56.boolean(),
|
|
37902
38121
|
eventKind: eventBlockKindSchema2,
|
|
37903
38122
|
eventSurface: eventSurfaceScopeSchema2,
|
|
37904
|
-
filterEventPresets:
|
|
38123
|
+
filterEventPresets: z56.string().nullable(),
|
|
37905
38124
|
scheduleScope: eventScheduleScopeSchema3
|
|
37906
38125
|
});
|
|
37907
|
-
var eventCalendarRenderSchema =
|
|
38126
|
+
var eventCalendarRenderSchema = z56.object({
|
|
37908
38127
|
display: eventCalendarDisplaySchema,
|
|
37909
38128
|
hydration: eventCalendarHydrationSchema
|
|
37910
38129
|
});
|
|
37911
38130
|
var eventCalendarIslandMetaCodec = createZodCodec(
|
|
37912
|
-
|
|
37913
|
-
siteId:
|
|
37914
|
-
apiBaseUrl:
|
|
38131
|
+
z56.object({
|
|
38132
|
+
siteId: z56.string(),
|
|
38133
|
+
apiBaseUrl: z56.string().optional(),
|
|
37915
38134
|
stage: previewStageSchema.optional()
|
|
37916
38135
|
})
|
|
37917
38136
|
);
|
|
@@ -38653,7 +38872,7 @@ var eventCalendarBlockDefinition = {
|
|
|
38653
38872
|
};
|
|
38654
38873
|
|
|
38655
38874
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
38656
|
-
import { z as
|
|
38875
|
+
import { z as z57 } from "zod";
|
|
38657
38876
|
|
|
38658
38877
|
// ../blocks/src/system/blocks/offerings-preview/model.ts
|
|
38659
38878
|
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
|
|
@@ -38975,13 +39194,13 @@ function normalizeTextOverride(value) {
|
|
|
38975
39194
|
}
|
|
38976
39195
|
|
|
38977
39196
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
38978
|
-
var publicRouteCandidatesSchema =
|
|
38979
|
-
routes:
|
|
38980
|
-
entityId:
|
|
38981
|
-
path:
|
|
38982
|
-
title:
|
|
38983
|
-
kind:
|
|
38984
|
-
contentTypeKey:
|
|
39197
|
+
var publicRouteCandidatesSchema = z57.object({
|
|
39198
|
+
routes: z57.array(z57.object({
|
|
39199
|
+
entityId: z57.string(),
|
|
39200
|
+
path: z57.string(),
|
|
39201
|
+
title: z57.string(),
|
|
39202
|
+
kind: z57.enum(["page", "content"]),
|
|
39203
|
+
contentTypeKey: z57.string().nullable().optional()
|
|
38985
39204
|
}))
|
|
38986
39205
|
});
|
|
38987
39206
|
var groupOverrideFields = [
|
|
@@ -39379,7 +39598,7 @@ function isRecord8(value) {
|
|
|
39379
39598
|
}
|
|
39380
39599
|
|
|
39381
39600
|
// ../blocks/src/system/blocks/embed.ts
|
|
39382
|
-
import { z as
|
|
39601
|
+
import { z as z58 } from "zod";
|
|
39383
39602
|
var embedFields = [
|
|
39384
39603
|
// Section heading
|
|
39385
39604
|
parseFieldDefinition({
|
|
@@ -39610,18 +39829,18 @@ var embedManifest = createBlockManifest({
|
|
|
39610
39829
|
spacing: "lg"
|
|
39611
39830
|
}
|
|
39612
39831
|
});
|
|
39613
|
-
var embedEntrySchema =
|
|
39614
|
-
id:
|
|
39615
|
-
identifier:
|
|
39616
|
-
title:
|
|
39617
|
-
slug:
|
|
39618
|
-
content:
|
|
39619
|
-
publishedAt:
|
|
39832
|
+
var embedEntrySchema = z58.object({
|
|
39833
|
+
id: z58.string(),
|
|
39834
|
+
identifier: z58.string(),
|
|
39835
|
+
title: z58.string(),
|
|
39836
|
+
slug: z58.string().nullable().optional(),
|
|
39837
|
+
content: z58.record(z58.string(), z58.unknown()).optional(),
|
|
39838
|
+
publishedAt: z58.string().nullable().optional()
|
|
39620
39839
|
});
|
|
39621
39840
|
var embedBlockDefinition = {
|
|
39622
39841
|
manifest: embedManifest,
|
|
39623
39842
|
dataSchemas: {
|
|
39624
|
-
entries:
|
|
39843
|
+
entries: z58.array(embedEntrySchema).optional()
|
|
39625
39844
|
},
|
|
39626
39845
|
dataLoaders: {
|
|
39627
39846
|
entries: {
|
|
@@ -40805,52 +41024,52 @@ var fileDownloadBlockDefinition = {
|
|
|
40805
41024
|
};
|
|
40806
41025
|
|
|
40807
41026
|
// ../blocks/src/system/blocks/shop.ts
|
|
40808
|
-
import { z as
|
|
41027
|
+
import { z as z62 } from "zod";
|
|
40809
41028
|
|
|
40810
41029
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
40811
|
-
import { z as
|
|
41030
|
+
import { z as z61 } from "zod";
|
|
40812
41031
|
|
|
40813
41032
|
// ../blocks/src/system/blocks/products/shared.ts
|
|
40814
|
-
import { z as
|
|
40815
|
-
var publicProductVariantSchema =
|
|
40816
|
-
id:
|
|
40817
|
-
title:
|
|
40818
|
-
sku:
|
|
40819
|
-
priceCents:
|
|
40820
|
-
stockQuantity:
|
|
40821
|
-
soldOut:
|
|
41033
|
+
import { z as z59 } from "zod";
|
|
41034
|
+
var publicProductVariantSchema = z59.object({
|
|
41035
|
+
id: z59.string(),
|
|
41036
|
+
title: z59.string(),
|
|
41037
|
+
sku: z59.string().nullable(),
|
|
41038
|
+
priceCents: z59.number(),
|
|
41039
|
+
stockQuantity: z59.number().nullable(),
|
|
41040
|
+
soldOut: z59.boolean()
|
|
40822
41041
|
});
|
|
40823
|
-
var publicProductSchema =
|
|
40824
|
-
id:
|
|
40825
|
-
contentEntryId:
|
|
40826
|
-
title:
|
|
40827
|
-
slug:
|
|
40828
|
-
path:
|
|
40829
|
-
status:
|
|
40830
|
-
priceCents:
|
|
40831
|
-
currency:
|
|
40832
|
-
productType:
|
|
40833
|
-
requiresShipping:
|
|
40834
|
-
hasVariants:
|
|
40835
|
-
trackInventory:
|
|
40836
|
-
soldOut:
|
|
40837
|
-
category:
|
|
40838
|
-
id:
|
|
40839
|
-
name:
|
|
40840
|
-
slug:
|
|
41042
|
+
var publicProductSchema = z59.object({
|
|
41043
|
+
id: z59.string(),
|
|
41044
|
+
contentEntryId: z59.string().nullable(),
|
|
41045
|
+
title: z59.string(),
|
|
41046
|
+
slug: z59.string(),
|
|
41047
|
+
path: z59.string().nullable(),
|
|
41048
|
+
status: z59.enum(["draft", "active"]),
|
|
41049
|
+
priceCents: z59.number(),
|
|
41050
|
+
currency: z59.string(),
|
|
41051
|
+
productType: z59.enum(["physical", "digital"]),
|
|
41052
|
+
requiresShipping: z59.boolean(),
|
|
41053
|
+
hasVariants: z59.boolean(),
|
|
41054
|
+
trackInventory: z59.boolean(),
|
|
41055
|
+
soldOut: z59.boolean(),
|
|
41056
|
+
category: z59.object({
|
|
41057
|
+
id: z59.string(),
|
|
41058
|
+
name: z59.string(),
|
|
41059
|
+
slug: z59.string()
|
|
40841
41060
|
}).nullable(),
|
|
40842
|
-
summary:
|
|
40843
|
-
body:
|
|
40844
|
-
gallery:
|
|
40845
|
-
|
|
40846
|
-
url:
|
|
40847
|
-
alt:
|
|
41061
|
+
summary: z59.string().nullable(),
|
|
41062
|
+
body: z59.unknown().nullable(),
|
|
41063
|
+
gallery: z59.array(
|
|
41064
|
+
z59.object({
|
|
41065
|
+
url: z59.string(),
|
|
41066
|
+
alt: z59.string().nullable()
|
|
40848
41067
|
})
|
|
40849
41068
|
),
|
|
40850
|
-
variants:
|
|
41069
|
+
variants: z59.array(publicProductVariantSchema)
|
|
40851
41070
|
});
|
|
40852
|
-
var publicProductsResponseSchema =
|
|
40853
|
-
products:
|
|
41071
|
+
var publicProductsResponseSchema = z59.object({
|
|
41072
|
+
products: z59.array(publicProductSchema)
|
|
40854
41073
|
});
|
|
40855
41074
|
|
|
40856
41075
|
// ../blocks/src/system/runtime/api/creditProducts.ts
|
|
@@ -40914,27 +41133,27 @@ function deriveCreditProductLabels(products, options = {}) {
|
|
|
40914
41133
|
}
|
|
40915
41134
|
|
|
40916
41135
|
// ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
|
|
40917
|
-
import { z as
|
|
40918
|
-
var storedProductCartItemSchema =
|
|
40919
|
-
kind:
|
|
40920
|
-
productId:
|
|
40921
|
-
productCategoryId:
|
|
40922
|
-
variantId:
|
|
40923
|
-
title:
|
|
40924
|
-
variantTitle:
|
|
40925
|
-
quantity:
|
|
40926
|
-
unitPriceCents:
|
|
40927
|
-
currency:
|
|
40928
|
-
imageUrl:
|
|
40929
|
-
soldOut:
|
|
41136
|
+
import { z as z60 } from "zod";
|
|
41137
|
+
var storedProductCartItemSchema = z60.object({
|
|
41138
|
+
kind: z60.literal("product"),
|
|
41139
|
+
productId: z60.string().min(1),
|
|
41140
|
+
productCategoryId: z60.string().min(1).optional().nullable(),
|
|
41141
|
+
variantId: z60.string().min(1).optional().nullable(),
|
|
41142
|
+
title: z60.string().min(1),
|
|
41143
|
+
variantTitle: z60.string().optional().nullable(),
|
|
41144
|
+
quantity: z60.number().finite(),
|
|
41145
|
+
unitPriceCents: z60.number().finite(),
|
|
41146
|
+
currency: z60.string().min(1),
|
|
41147
|
+
imageUrl: z60.string().optional().nullable(),
|
|
41148
|
+
soldOut: z60.boolean().optional()
|
|
40930
41149
|
});
|
|
40931
|
-
var storedPassCartItemSchema =
|
|
40932
|
-
kind:
|
|
40933
|
-
passId:
|
|
40934
|
-
title:
|
|
40935
|
-
quantity:
|
|
40936
|
-
unitPriceCents:
|
|
40937
|
-
currency:
|
|
41150
|
+
var storedPassCartItemSchema = z60.object({
|
|
41151
|
+
kind: z60.literal("pass"),
|
|
41152
|
+
passId: z60.string().min(1),
|
|
41153
|
+
title: z60.string().min(1),
|
|
41154
|
+
quantity: z60.number().finite().optional(),
|
|
41155
|
+
unitPriceCents: z60.number().finite(),
|
|
41156
|
+
currency: z60.string().min(1)
|
|
40938
41157
|
});
|
|
40939
41158
|
function deriveCommerceCheckoutState(state) {
|
|
40940
41159
|
if (state.items.length === 0) {
|
|
@@ -40973,10 +41192,7 @@ function resolveSelectedProduct(products, contentEntry, productSlug) {
|
|
|
40973
41192
|
|
|
40974
41193
|
// ../blocks/src/system/runtime/nodes/commerce/shared/display.ts
|
|
40975
41194
|
function formatCommercePrice(cents, currency) {
|
|
40976
|
-
return
|
|
40977
|
-
style: "currency",
|
|
40978
|
-
currency: currency.toUpperCase()
|
|
40979
|
-
}).format(cents / 100);
|
|
41195
|
+
return formatCurrencyAmount(cents, currency);
|
|
40980
41196
|
}
|
|
40981
41197
|
function getPassesHeading(passes, explicitHeading) {
|
|
40982
41198
|
if (explicitHeading) return explicitHeading;
|
|
@@ -41171,214 +41387,214 @@ function formatValidity(days) {
|
|
|
41171
41387
|
}
|
|
41172
41388
|
|
|
41173
41389
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
41174
|
-
var shopModeSchema =
|
|
41175
|
-
var contentEntrySchema3 =
|
|
41176
|
-
id:
|
|
41177
|
-
slug:
|
|
41390
|
+
var shopModeSchema = z61.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
|
|
41391
|
+
var contentEntrySchema3 = z61.object({
|
|
41392
|
+
id: z61.string().nullable().optional(),
|
|
41393
|
+
slug: z61.string().nullable().optional()
|
|
41178
41394
|
}).nullable();
|
|
41179
|
-
var shopSourceSchema =
|
|
41180
|
-
className:
|
|
41395
|
+
var shopSourceSchema = z61.object({
|
|
41396
|
+
className: z61.string().nullable().optional(),
|
|
41181
41397
|
mode: shopModeSchema.optional(),
|
|
41182
|
-
heading:
|
|
41183
|
-
productSlug:
|
|
41184
|
-
showPasses:
|
|
41185
|
-
showMemberships:
|
|
41186
|
-
layout:
|
|
41187
|
-
columns:
|
|
41188
|
-
showDescriptions:
|
|
41189
|
-
showSummary:
|
|
41190
|
-
showBody:
|
|
41191
|
-
showPrices:
|
|
41192
|
-
showValidityPeriod:
|
|
41193
|
-
showPricePerCredit:
|
|
41194
|
-
passesHeading:
|
|
41195
|
-
membershipsHeading:
|
|
41196
|
-
buyButtonText:
|
|
41197
|
-
addButtonText:
|
|
41198
|
-
passPurchaseMode:
|
|
41199
|
-
subscribeButtonText:
|
|
41200
|
-
emptyStateText:
|
|
41201
|
-
checkoutButtonText:
|
|
41202
|
-
clearButtonText:
|
|
41203
|
-
submitButtonText:
|
|
41398
|
+
heading: z61.string().nullable().optional(),
|
|
41399
|
+
productSlug: z61.string().nullable().optional(),
|
|
41400
|
+
showPasses: z61.boolean().optional(),
|
|
41401
|
+
showMemberships: z61.boolean().optional(),
|
|
41402
|
+
layout: z61.enum(["grid", "list"]).optional(),
|
|
41403
|
+
columns: z61.string().optional(),
|
|
41404
|
+
showDescriptions: z61.boolean().optional(),
|
|
41405
|
+
showSummary: z61.boolean().optional(),
|
|
41406
|
+
showBody: z61.boolean().optional(),
|
|
41407
|
+
showPrices: z61.boolean().optional(),
|
|
41408
|
+
showValidityPeriod: z61.boolean().optional(),
|
|
41409
|
+
showPricePerCredit: z61.boolean().nullable().optional(),
|
|
41410
|
+
passesHeading: z61.string().optional(),
|
|
41411
|
+
membershipsHeading: z61.string().optional(),
|
|
41412
|
+
buyButtonText: z61.string().optional(),
|
|
41413
|
+
addButtonText: z61.string().optional(),
|
|
41414
|
+
passPurchaseMode: z61.enum(["add_to_cart", "buy_now"]).optional(),
|
|
41415
|
+
subscribeButtonText: z61.string().optional(),
|
|
41416
|
+
emptyStateText: z61.string().optional(),
|
|
41417
|
+
checkoutButtonText: z61.string().optional(),
|
|
41418
|
+
clearButtonText: z61.string().optional(),
|
|
41419
|
+
submitButtonText: z61.string().optional(),
|
|
41204
41420
|
contentEntry: contentEntrySchema3.optional(),
|
|
41205
|
-
passes:
|
|
41206
|
-
memberships:
|
|
41207
|
-
products:
|
|
41208
|
-
siteId:
|
|
41209
|
-
apiBaseUrl:
|
|
41421
|
+
passes: z61.array(publicPassProductSchema).nullable().optional(),
|
|
41422
|
+
memberships: z61.array(publicMembershipProductSchema).nullable().optional(),
|
|
41423
|
+
products: z61.array(publicProductSchema).nullable().optional(),
|
|
41424
|
+
siteId: z61.string().optional(),
|
|
41425
|
+
apiBaseUrl: z61.string().optional(),
|
|
41210
41426
|
stage: previewStageSchema.optional()
|
|
41211
41427
|
});
|
|
41212
|
-
var productVariantOptionDisplaySchema =
|
|
41213
|
-
id:
|
|
41214
|
-
label:
|
|
41215
|
-
soldOut:
|
|
41428
|
+
var productVariantOptionDisplaySchema = z61.object({
|
|
41429
|
+
id: z61.string(),
|
|
41430
|
+
label: z61.string(),
|
|
41431
|
+
soldOut: z61.boolean()
|
|
41216
41432
|
});
|
|
41217
|
-
var productCardDisplaySchema =
|
|
41218
|
-
productId:
|
|
41219
|
-
title:
|
|
41220
|
-
path:
|
|
41221
|
-
summary:
|
|
41222
|
-
priceLabel:
|
|
41223
|
-
image:
|
|
41224
|
-
url:
|
|
41225
|
-
alt:
|
|
41433
|
+
var productCardDisplaySchema = z61.object({
|
|
41434
|
+
productId: z61.string(),
|
|
41435
|
+
title: z61.string(),
|
|
41436
|
+
path: z61.string().nullable(),
|
|
41437
|
+
summary: z61.string().nullable(),
|
|
41438
|
+
priceLabel: z61.string().nullable(),
|
|
41439
|
+
image: z61.object({
|
|
41440
|
+
url: z61.string(),
|
|
41441
|
+
alt: z61.string().nullable()
|
|
41226
41442
|
}).nullable(),
|
|
41227
|
-
variantOptions:
|
|
41228
|
-
selectedVariantId:
|
|
41229
|
-
selectionLabel:
|
|
41230
|
-
actionLabel:
|
|
41231
|
-
soldOut:
|
|
41443
|
+
variantOptions: z61.array(productVariantOptionDisplaySchema),
|
|
41444
|
+
selectedVariantId: z61.string().nullable(),
|
|
41445
|
+
selectionLabel: z61.string(),
|
|
41446
|
+
actionLabel: z61.string(),
|
|
41447
|
+
soldOut: z61.boolean()
|
|
41232
41448
|
});
|
|
41233
|
-
var productListDisplaySchema =
|
|
41234
|
-
kind:
|
|
41235
|
-
state:
|
|
41236
|
-
heading:
|
|
41237
|
-
className:
|
|
41238
|
-
layout:
|
|
41239
|
-
columns:
|
|
41240
|
-
emptyMessage:
|
|
41241
|
-
cards:
|
|
41449
|
+
var productListDisplaySchema = z61.object({
|
|
41450
|
+
kind: z61.literal("product-list"),
|
|
41451
|
+
state: z61.enum(["empty", "ready"]),
|
|
41452
|
+
heading: z61.string().nullable(),
|
|
41453
|
+
className: z61.string().nullable(),
|
|
41454
|
+
layout: z61.enum(["grid", "list"]),
|
|
41455
|
+
columns: z61.string(),
|
|
41456
|
+
emptyMessage: z61.string(),
|
|
41457
|
+
cards: z61.array(productCardDisplaySchema)
|
|
41242
41458
|
});
|
|
41243
|
-
var productDetailDisplaySchema =
|
|
41244
|
-
|
|
41245
|
-
kind:
|
|
41246
|
-
state:
|
|
41247
|
-
heading:
|
|
41248
|
-
className:
|
|
41249
|
-
emptyMessage:
|
|
41459
|
+
var productDetailDisplaySchema = z61.discriminatedUnion("state", [
|
|
41460
|
+
z61.object({
|
|
41461
|
+
kind: z61.literal("product-detail"),
|
|
41462
|
+
state: z61.literal("empty"),
|
|
41463
|
+
heading: z61.string().nullable(),
|
|
41464
|
+
className: z61.string().nullable(),
|
|
41465
|
+
emptyMessage: z61.string()
|
|
41250
41466
|
}),
|
|
41251
|
-
|
|
41252
|
-
kind:
|
|
41253
|
-
state:
|
|
41254
|
-
heading:
|
|
41255
|
-
className:
|
|
41256
|
-
title:
|
|
41257
|
-
priceLabel:
|
|
41258
|
-
summary:
|
|
41259
|
-
categoryLabel:
|
|
41260
|
-
gallery:
|
|
41261
|
-
url:
|
|
41262
|
-
alt:
|
|
41467
|
+
z61.object({
|
|
41468
|
+
kind: z61.literal("product-detail"),
|
|
41469
|
+
state: z61.literal("ready"),
|
|
41470
|
+
heading: z61.string().nullable(),
|
|
41471
|
+
className: z61.string().nullable(),
|
|
41472
|
+
title: z61.string(),
|
|
41473
|
+
priceLabel: z61.string(),
|
|
41474
|
+
summary: z61.string().nullable(),
|
|
41475
|
+
categoryLabel: z61.string().nullable(),
|
|
41476
|
+
gallery: z61.array(z61.object({
|
|
41477
|
+
url: z61.string(),
|
|
41478
|
+
alt: z61.string().nullable()
|
|
41263
41479
|
})),
|
|
41264
|
-
variantOptions:
|
|
41265
|
-
selectedVariantId:
|
|
41266
|
-
selectionLabel:
|
|
41267
|
-
actionLabel:
|
|
41268
|
-
soldOut:
|
|
41269
|
-
body:
|
|
41480
|
+
variantOptions: z61.array(productVariantOptionDisplaySchema),
|
|
41481
|
+
selectedVariantId: z61.string().nullable(),
|
|
41482
|
+
selectionLabel: z61.string(),
|
|
41483
|
+
actionLabel: z61.string(),
|
|
41484
|
+
soldOut: z61.boolean(),
|
|
41485
|
+
body: z61.unknown().nullable()
|
|
41270
41486
|
})
|
|
41271
41487
|
]);
|
|
41272
|
-
var passCardDisplaySchema =
|
|
41273
|
-
id:
|
|
41274
|
-
title:
|
|
41275
|
-
description:
|
|
41276
|
-
priceLabel:
|
|
41277
|
-
creditsLabel:
|
|
41278
|
-
perCreditLabel:
|
|
41279
|
-
validityLabel:
|
|
41280
|
-
actionLabel:
|
|
41488
|
+
var passCardDisplaySchema = z61.object({
|
|
41489
|
+
id: z61.string(),
|
|
41490
|
+
title: z61.string(),
|
|
41491
|
+
description: z61.string().nullable(),
|
|
41492
|
+
priceLabel: z61.string(),
|
|
41493
|
+
creditsLabel: z61.string(),
|
|
41494
|
+
perCreditLabel: z61.string().nullable(),
|
|
41495
|
+
validityLabel: z61.string().nullable(),
|
|
41496
|
+
actionLabel: z61.string()
|
|
41281
41497
|
});
|
|
41282
|
-
var membershipCardDisplaySchema =
|
|
41283
|
-
id:
|
|
41284
|
-
title:
|
|
41285
|
-
description:
|
|
41286
|
-
priceLabel:
|
|
41287
|
-
intervalLabel:
|
|
41288
|
-
actionLabel:
|
|
41498
|
+
var membershipCardDisplaySchema = z61.object({
|
|
41499
|
+
id: z61.string(),
|
|
41500
|
+
title: z61.string(),
|
|
41501
|
+
description: z61.string().nullable(),
|
|
41502
|
+
priceLabel: z61.string(),
|
|
41503
|
+
intervalLabel: z61.string(),
|
|
41504
|
+
actionLabel: z61.string()
|
|
41289
41505
|
});
|
|
41290
|
-
var passesMembershipsDisplaySchema =
|
|
41291
|
-
kind:
|
|
41292
|
-
state:
|
|
41293
|
-
className:
|
|
41294
|
-
layout:
|
|
41295
|
-
columns:
|
|
41296
|
-
emptyMessage:
|
|
41297
|
-
passesHeading:
|
|
41298
|
-
membershipsHeading:
|
|
41299
|
-
passes:
|
|
41300
|
-
memberships:
|
|
41506
|
+
var passesMembershipsDisplaySchema = z61.object({
|
|
41507
|
+
kind: z61.literal("passes-memberships"),
|
|
41508
|
+
state: z61.enum(["empty", "ready"]),
|
|
41509
|
+
className: z61.string().nullable(),
|
|
41510
|
+
layout: z61.enum(["grid", "list"]),
|
|
41511
|
+
columns: z61.string(),
|
|
41512
|
+
emptyMessage: z61.string(),
|
|
41513
|
+
passesHeading: z61.string(),
|
|
41514
|
+
membershipsHeading: z61.string(),
|
|
41515
|
+
passes: z61.array(passCardDisplaySchema),
|
|
41516
|
+
memberships: z61.array(membershipCardDisplaySchema)
|
|
41301
41517
|
});
|
|
41302
|
-
var cartLineDisplaySchema =
|
|
41303
|
-
key:
|
|
41304
|
-
title:
|
|
41305
|
-
priceLabel:
|
|
41306
|
-
quantity:
|
|
41307
|
-
quantityEditable:
|
|
41518
|
+
var cartLineDisplaySchema = z61.object({
|
|
41519
|
+
key: z61.string(),
|
|
41520
|
+
title: z61.string(),
|
|
41521
|
+
priceLabel: z61.string(),
|
|
41522
|
+
quantity: z61.number(),
|
|
41523
|
+
quantityEditable: z61.boolean()
|
|
41308
41524
|
});
|
|
41309
|
-
var cartDisplaySchema =
|
|
41310
|
-
kind:
|
|
41311
|
-
state:
|
|
41312
|
-
heading:
|
|
41313
|
-
className:
|
|
41314
|
-
emptyMessage:
|
|
41315
|
-
supportText:
|
|
41316
|
-
items:
|
|
41317
|
-
subtotalLabel:
|
|
41318
|
-
checkoutButtonText:
|
|
41319
|
-
clearButtonText:
|
|
41525
|
+
var cartDisplaySchema = z61.object({
|
|
41526
|
+
kind: z61.literal("cart"),
|
|
41527
|
+
state: z61.enum(["empty", "ready"]),
|
|
41528
|
+
heading: z61.string().nullable(),
|
|
41529
|
+
className: z61.string().nullable(),
|
|
41530
|
+
emptyMessage: z61.string(),
|
|
41531
|
+
supportText: z61.string().nullable(),
|
|
41532
|
+
items: z61.array(cartLineDisplaySchema),
|
|
41533
|
+
subtotalLabel: z61.string().nullable(),
|
|
41534
|
+
checkoutButtonText: z61.string(),
|
|
41535
|
+
clearButtonText: z61.string()
|
|
41320
41536
|
});
|
|
41321
|
-
var checkoutDisplaySchema =
|
|
41322
|
-
kind:
|
|
41323
|
-
state:
|
|
41324
|
-
heading:
|
|
41325
|
-
className:
|
|
41326
|
-
message:
|
|
41327
|
-
submitButtonText:
|
|
41537
|
+
var checkoutDisplaySchema = z61.object({
|
|
41538
|
+
kind: z61.literal("checkout"),
|
|
41539
|
+
state: z61.enum(["empty", "blocked", "ready"]),
|
|
41540
|
+
heading: z61.string().nullable(),
|
|
41541
|
+
className: z61.string().nullable(),
|
|
41542
|
+
message: z61.string().nullable(),
|
|
41543
|
+
submitButtonText: z61.string()
|
|
41328
41544
|
});
|
|
41329
|
-
var passesMembershipsHydrationSchema =
|
|
41330
|
-
passes:
|
|
41331
|
-
memberships:
|
|
41332
|
-
passPurchaseMode:
|
|
41545
|
+
var passesMembershipsHydrationSchema = z61.object({
|
|
41546
|
+
passes: z61.array(publicPassProductSchema),
|
|
41547
|
+
memberships: z61.array(publicMembershipProductSchema),
|
|
41548
|
+
passPurchaseMode: z61.enum(["add_to_cart", "buy_now"])
|
|
41333
41549
|
});
|
|
41334
|
-
var productListHydrationSchema =
|
|
41335
|
-
products:
|
|
41336
|
-
showSummary:
|
|
41337
|
-
showPrices:
|
|
41338
|
-
addButtonText:
|
|
41550
|
+
var productListHydrationSchema = z61.object({
|
|
41551
|
+
products: z61.array(publicProductSchema),
|
|
41552
|
+
showSummary: z61.boolean(),
|
|
41553
|
+
showPrices: z61.boolean(),
|
|
41554
|
+
addButtonText: z61.string()
|
|
41339
41555
|
});
|
|
41340
|
-
var productDetailHydrationSchema =
|
|
41341
|
-
products:
|
|
41342
|
-
productId:
|
|
41343
|
-
showSummary:
|
|
41344
|
-
showBody:
|
|
41345
|
-
addButtonText:
|
|
41556
|
+
var productDetailHydrationSchema = z61.object({
|
|
41557
|
+
products: z61.array(publicProductSchema),
|
|
41558
|
+
productId: z61.string().nullable(),
|
|
41559
|
+
showSummary: z61.boolean(),
|
|
41560
|
+
showBody: z61.boolean(),
|
|
41561
|
+
addButtonText: z61.string()
|
|
41346
41562
|
});
|
|
41347
|
-
var cartHydrationSchema =
|
|
41348
|
-
emptyStateText:
|
|
41349
|
-
checkoutButtonText:
|
|
41350
|
-
clearButtonText:
|
|
41563
|
+
var cartHydrationSchema = z61.object({
|
|
41564
|
+
emptyStateText: z61.string(),
|
|
41565
|
+
checkoutButtonText: z61.string(),
|
|
41566
|
+
clearButtonText: z61.string()
|
|
41351
41567
|
});
|
|
41352
|
-
var checkoutHydrationSchema =
|
|
41353
|
-
emptyStateText:
|
|
41354
|
-
submitButtonText:
|
|
41568
|
+
var checkoutHydrationSchema = z61.object({
|
|
41569
|
+
emptyStateText: z61.string(),
|
|
41570
|
+
submitButtonText: z61.string()
|
|
41355
41571
|
});
|
|
41356
|
-
var passesMembershipsRenderSchema =
|
|
41572
|
+
var passesMembershipsRenderSchema = z61.object({
|
|
41357
41573
|
display: passesMembershipsDisplaySchema,
|
|
41358
41574
|
hydration: passesMembershipsHydrationSchema
|
|
41359
41575
|
});
|
|
41360
|
-
var productListRenderSchema =
|
|
41576
|
+
var productListRenderSchema = z61.object({
|
|
41361
41577
|
display: productListDisplaySchema,
|
|
41362
41578
|
hydration: productListHydrationSchema
|
|
41363
41579
|
});
|
|
41364
|
-
var productDetailRenderSchema =
|
|
41580
|
+
var productDetailRenderSchema = z61.object({
|
|
41365
41581
|
display: productDetailDisplaySchema,
|
|
41366
41582
|
hydration: productDetailHydrationSchema
|
|
41367
41583
|
});
|
|
41368
|
-
var cartRenderSchema =
|
|
41584
|
+
var cartRenderSchema = z61.object({
|
|
41369
41585
|
display: cartDisplaySchema,
|
|
41370
41586
|
hydration: cartHydrationSchema
|
|
41371
41587
|
});
|
|
41372
|
-
var checkoutRenderSchema =
|
|
41588
|
+
var checkoutRenderSchema = z61.object({
|
|
41373
41589
|
display: checkoutDisplaySchema,
|
|
41374
41590
|
hydration: checkoutHydrationSchema
|
|
41375
41591
|
});
|
|
41376
41592
|
function resolveShowPricePerCredit(source) {
|
|
41377
41593
|
return source.showPricePerCredit ?? true;
|
|
41378
41594
|
}
|
|
41379
|
-
var shopIslandMetaCodec = createZodCodec(
|
|
41380
|
-
siteId:
|
|
41381
|
-
apiBaseUrl:
|
|
41595
|
+
var shopIslandMetaCodec = createZodCodec(z61.object({
|
|
41596
|
+
siteId: z61.string().optional(),
|
|
41597
|
+
apiBaseUrl: z61.string().optional(),
|
|
41382
41598
|
stage: previewStageSchema.optional()
|
|
41383
41599
|
}));
|
|
41384
41600
|
var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
|
|
@@ -41831,9 +42047,9 @@ var shopBlockDefinition = {
|
|
|
41831
42047
|
runtime: shopBlockRuntime,
|
|
41832
42048
|
dataSchemas: {
|
|
41833
42049
|
// listPublicPasses returns { passes: [...] }
|
|
41834
|
-
passes:
|
|
42050
|
+
passes: z62.object({ passes: z62.array(publicPassProductSchema) }).optional(),
|
|
41835
42051
|
// listPublicMemberships returns { memberships: [...] }
|
|
41836
|
-
memberships:
|
|
42052
|
+
memberships: z62.object({ memberships: z62.array(publicMembershipProductSchema) }).optional()
|
|
41837
42053
|
},
|
|
41838
42054
|
dataLoaders: {
|
|
41839
42055
|
// Load passes for display
|
|
@@ -41856,7 +42072,7 @@ var shopBlockDefinition = {
|
|
|
41856
42072
|
};
|
|
41857
42073
|
|
|
41858
42074
|
// ../blocks/src/system/blocks/product-list.ts
|
|
41859
|
-
import { z as
|
|
42075
|
+
import { z as z63 } from "zod";
|
|
41860
42076
|
var productListManifest = createBlockManifest({
|
|
41861
42077
|
id: "block.product-list",
|
|
41862
42078
|
version: "1.0.0",
|
|
@@ -41989,7 +42205,7 @@ var productListBlockDefinition = {
|
|
|
41989
42205
|
}
|
|
41990
42206
|
}
|
|
41991
42207
|
};
|
|
41992
|
-
var productListDataSchema =
|
|
42208
|
+
var productListDataSchema = z63.object({
|
|
41993
42209
|
products: publicProductsResponseSchema.optional()
|
|
41994
42210
|
});
|
|
41995
42211
|
|
|
@@ -42250,72 +42466,72 @@ var checkoutBlockDefinition = {
|
|
|
42250
42466
|
};
|
|
42251
42467
|
|
|
42252
42468
|
// ../blocks/src/system/runtime/nodes/gifting.interactive.ts
|
|
42253
|
-
import { z as
|
|
42254
|
-
var publicGiftCardOfferSchema =
|
|
42255
|
-
id:
|
|
42256
|
-
kind:
|
|
42257
|
-
title:
|
|
42258
|
-
description:
|
|
42259
|
-
sortOrder:
|
|
42260
|
-
giftCard:
|
|
42261
|
-
fixedDenominations:
|
|
42262
|
-
customAmountEnabled:
|
|
42263
|
-
customAmountMinCents:
|
|
42264
|
-
customAmountMaxCents:
|
|
42469
|
+
import { z as z64 } from "zod";
|
|
42470
|
+
var publicGiftCardOfferSchema = z64.object({
|
|
42471
|
+
id: z64.string(),
|
|
42472
|
+
kind: z64.literal("gift_card"),
|
|
42473
|
+
title: z64.string(),
|
|
42474
|
+
description: z64.string().nullable(),
|
|
42475
|
+
sortOrder: z64.number().int(),
|
|
42476
|
+
giftCard: z64.object({
|
|
42477
|
+
fixedDenominations: z64.array(z64.number().int().positive()),
|
|
42478
|
+
customAmountEnabled: z64.boolean(),
|
|
42479
|
+
customAmountMinCents: z64.number().int().positive(),
|
|
42480
|
+
customAmountMaxCents: z64.number().int().positive()
|
|
42265
42481
|
}),
|
|
42266
|
-
voucher:
|
|
42482
|
+
voucher: z64.null()
|
|
42267
42483
|
});
|
|
42268
|
-
var publicVoucherOfferSchema =
|
|
42269
|
-
id:
|
|
42270
|
-
kind:
|
|
42271
|
-
title:
|
|
42272
|
-
description:
|
|
42273
|
-
sortOrder:
|
|
42274
|
-
giftCard:
|
|
42275
|
-
voucher:
|
|
42276
|
-
purchaseAmountCents:
|
|
42484
|
+
var publicVoucherOfferSchema = z64.object({
|
|
42485
|
+
id: z64.string(),
|
|
42486
|
+
kind: z64.literal("voucher"),
|
|
42487
|
+
title: z64.string(),
|
|
42488
|
+
description: z64.string().nullable(),
|
|
42489
|
+
sortOrder: z64.number().int(),
|
|
42490
|
+
giftCard: z64.null(),
|
|
42491
|
+
voucher: z64.object({
|
|
42492
|
+
purchaseAmountCents: z64.number().int().positive()
|
|
42277
42493
|
})
|
|
42278
42494
|
});
|
|
42279
|
-
var publicGiftingOffersResponseSchema =
|
|
42280
|
-
currency:
|
|
42281
|
-
giftCards:
|
|
42282
|
-
vouchers:
|
|
42495
|
+
var publicGiftingOffersResponseSchema = z64.object({
|
|
42496
|
+
currency: z64.string(),
|
|
42497
|
+
giftCards: z64.array(publicGiftCardOfferSchema),
|
|
42498
|
+
vouchers: z64.array(publicVoucherOfferSchema)
|
|
42283
42499
|
});
|
|
42284
|
-
var giftingSourceSchema =
|
|
42285
|
-
siteId:
|
|
42286
|
-
apiBaseUrl:
|
|
42500
|
+
var giftingSourceSchema = z64.object({
|
|
42501
|
+
siteId: z64.string().optional(),
|
|
42502
|
+
apiBaseUrl: z64.string().optional(),
|
|
42287
42503
|
offers: publicGiftingOffersResponseSchema.nullable().optional(),
|
|
42288
|
-
className:
|
|
42289
|
-
heading:
|
|
42290
|
-
intro:
|
|
42291
|
-
giftCardsHeading:
|
|
42292
|
-
vouchersHeading:
|
|
42293
|
-
emptyStateText:
|
|
42294
|
-
checkoutButtonText:
|
|
42295
|
-
successMessage:
|
|
42504
|
+
className: z64.string().nullable().optional(),
|
|
42505
|
+
heading: z64.string().nullable().optional(),
|
|
42506
|
+
intro: z64.string().nullable().optional(),
|
|
42507
|
+
giftCardsHeading: z64.string().nullable().optional(),
|
|
42508
|
+
vouchersHeading: z64.string().nullable().optional(),
|
|
42509
|
+
emptyStateText: z64.string().nullable().optional(),
|
|
42510
|
+
checkoutButtonText: z64.string().nullable().optional(),
|
|
42511
|
+
successMessage: z64.string().nullable().optional()
|
|
42296
42512
|
});
|
|
42297
|
-
var giftingDisplaySchema =
|
|
42298
|
-
kind:
|
|
42299
|
-
state:
|
|
42300
|
-
className:
|
|
42301
|
-
heading:
|
|
42302
|
-
intro:
|
|
42303
|
-
giftCardsHeading:
|
|
42304
|
-
vouchersHeading:
|
|
42305
|
-
emptyStateText:
|
|
42513
|
+
var giftingDisplaySchema = z64.object({
|
|
42514
|
+
kind: z64.literal("gifting"),
|
|
42515
|
+
state: z64.literal("ready"),
|
|
42516
|
+
className: z64.string().nullable(),
|
|
42517
|
+
heading: z64.string(),
|
|
42518
|
+
intro: z64.string().nullable(),
|
|
42519
|
+
giftCardsHeading: z64.string(),
|
|
42520
|
+
vouchersHeading: z64.string(),
|
|
42521
|
+
emptyStateText: z64.string()
|
|
42306
42522
|
});
|
|
42307
|
-
var giftingHydrationSchema =
|
|
42523
|
+
var giftingHydrationSchema = z64.object({
|
|
42308
42524
|
offers: publicGiftingOffersResponseSchema.nullable(),
|
|
42309
|
-
checkoutButtonText:
|
|
42310
|
-
successMessage:
|
|
42525
|
+
checkoutButtonText: z64.string(),
|
|
42526
|
+
successMessage: z64.string()
|
|
42311
42527
|
});
|
|
42312
|
-
var giftingRenderSchema =
|
|
42528
|
+
var giftingRenderSchema = z64.object({
|
|
42313
42529
|
display: giftingDisplaySchema,
|
|
42314
42530
|
hydration: giftingHydrationSchema
|
|
42315
42531
|
});
|
|
42316
|
-
var giftingIslandMetaCodec = createZodCodec(
|
|
42317
|
-
siteId:
|
|
42318
|
-
apiBaseUrl:
|
|
42532
|
+
var giftingIslandMetaCodec = createZodCodec(z64.object({
|
|
42533
|
+
siteId: z64.string().optional(),
|
|
42534
|
+
apiBaseUrl: z64.string().optional()
|
|
42319
42535
|
}));
|
|
42320
42536
|
var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
42321
42537
|
"siteId",
|
|
@@ -42497,7 +42713,89 @@ var giftingBlockDefinition = {
|
|
|
42497
42713
|
};
|
|
42498
42714
|
|
|
42499
42715
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
42500
|
-
import { z as
|
|
42716
|
+
import { z as z65 } from "zod";
|
|
42717
|
+
|
|
42718
|
+
// ../blocks/src/system/blocks/newsletter-signup-destination.ts
|
|
42719
|
+
function parseNewsletterSignupBlockId(value) {
|
|
42720
|
+
const trimmed = parseTrimmedString(value);
|
|
42721
|
+
return trimmed && BLOCK_ID_PATTERN.test(trimmed) ? trimmed : null;
|
|
42722
|
+
}
|
|
42723
|
+
function parseSignedNewsletterDestinationRef(value) {
|
|
42724
|
+
const trimmed = parseTrimmedString(value);
|
|
42725
|
+
return trimmed && SIGNED_DESTINATION_REF_PATTERN.test(trimmed) ? trimmed : null;
|
|
42726
|
+
}
|
|
42727
|
+
function parseNewsletterSignupDestinationProvider(value) {
|
|
42728
|
+
return value === "riverbank" || value === "mailchimp" ? value : null;
|
|
42729
|
+
}
|
|
42730
|
+
function buildNewsletterSignupBlockRef(blockId) {
|
|
42731
|
+
const parsed = parseNewsletterSignupBlockId(blockId);
|
|
42732
|
+
return parsed ? { tag: "block_ref", blockId: parsed } : null;
|
|
42733
|
+
}
|
|
42734
|
+
function normalizeNewsletterSignupEditorValuesForDestination(values) {
|
|
42735
|
+
const destinationProvider = parseNewsletterSignupDestinationProvider(values.destinationProvider) ?? "riverbank";
|
|
42736
|
+
if (destinationProvider === "mailchimp") {
|
|
42737
|
+
return {
|
|
42738
|
+
destinationProvider,
|
|
42739
|
+
mailchimpAudienceId: values.mailchimpAudienceId,
|
|
42740
|
+
mailchimpTags: values.mailchimpTags
|
|
42741
|
+
};
|
|
42742
|
+
}
|
|
42743
|
+
return {
|
|
42744
|
+
destinationProvider,
|
|
42745
|
+
listId: values.listId,
|
|
42746
|
+
tags: values.tags
|
|
42747
|
+
};
|
|
42748
|
+
}
|
|
42749
|
+
function deriveNewsletterSignupRuntimeSource(values) {
|
|
42750
|
+
const normalized = normalizeNewsletterSignupEditorValuesForDestination(values);
|
|
42751
|
+
if (normalized.destinationProvider === "mailchimp") {
|
|
42752
|
+
return {
|
|
42753
|
+
destinationProvider: "mailchimp",
|
|
42754
|
+
listId: null,
|
|
42755
|
+
tags: null
|
|
42756
|
+
};
|
|
42757
|
+
}
|
|
42758
|
+
return {
|
|
42759
|
+
destinationProvider: "riverbank",
|
|
42760
|
+
listId: parseTrimmedString(normalized.listId),
|
|
42761
|
+
tags: parseTrimmedString(normalized.tags)
|
|
42762
|
+
};
|
|
42763
|
+
}
|
|
42764
|
+
function sanitizeNewsletterSignupPublicContent(content) {
|
|
42765
|
+
if (!isRecord9(content)) return content;
|
|
42766
|
+
const provider = parseNewsletterSignupDestinationProvider(content.destinationProvider) ?? getProviderFromExplicitDestination(content.destination);
|
|
42767
|
+
const {
|
|
42768
|
+
destination: _destination,
|
|
42769
|
+
destinationProvider: _destinationProvider,
|
|
42770
|
+
mailchimpAudienceId: _mailchimpAudienceId,
|
|
42771
|
+
mailchimpTags: _mailchimpTags,
|
|
42772
|
+
listId,
|
|
42773
|
+
tags: tags2,
|
|
42774
|
+
...publicContent
|
|
42775
|
+
} = content;
|
|
42776
|
+
const mutablePublicContent = { ...publicContent };
|
|
42777
|
+
if (provider !== "mailchimp") {
|
|
42778
|
+
if ("listId" in content) mutablePublicContent.listId = listId;
|
|
42779
|
+
if ("tags" in content) mutablePublicContent.tags = tags2;
|
|
42780
|
+
}
|
|
42781
|
+
return mutablePublicContent;
|
|
42782
|
+
}
|
|
42783
|
+
function getProviderFromExplicitDestination(destination) {
|
|
42784
|
+
if (!isRecord9(destination) || typeof destination.tag !== "string") return null;
|
|
42785
|
+
if (destination.tag === "riverbank_list") return "riverbank";
|
|
42786
|
+
if (destination.tag === "mailchimp_audience") return "mailchimp";
|
|
42787
|
+
return null;
|
|
42788
|
+
}
|
|
42789
|
+
var BLOCK_ID_PATTERN = /^[A-Za-z0-9._:-]{1,200}$/;
|
|
42790
|
+
var SIGNED_DESTINATION_REF_PATTERN = /^[A-Za-z0-9._~-]{16,1000}$/;
|
|
42791
|
+
function parseTrimmedString(value) {
|
|
42792
|
+
if (typeof value !== "string") return null;
|
|
42793
|
+
const trimmed = value.trim();
|
|
42794
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
42795
|
+
}
|
|
42796
|
+
function isRecord9(value) {
|
|
42797
|
+
return typeof value === "object" && value !== null;
|
|
42798
|
+
}
|
|
42501
42799
|
|
|
42502
42800
|
// ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
|
|
42503
42801
|
function getPresetFields(preset2, options) {
|
|
@@ -42550,49 +42848,65 @@ function withOptionalPhone(fields3, includePhone) {
|
|
|
42550
42848
|
}
|
|
42551
42849
|
|
|
42552
42850
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
42553
|
-
var newsletterPresetSchema =
|
|
42554
|
-
var
|
|
42555
|
-
|
|
42556
|
-
|
|
42557
|
-
|
|
42558
|
-
|
|
42559
|
-
|
|
42851
|
+
var newsletterPresetSchema = z65.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
|
|
42852
|
+
var newsletterDestinationProviderSchema = z65.enum(["riverbank", "mailchimp"]);
|
|
42853
|
+
var newsletterFieldSchema = z65.object({
|
|
42854
|
+
id: z65.string(),
|
|
42855
|
+
type: z65.enum(["email", "text"]),
|
|
42856
|
+
label: z65.string(),
|
|
42857
|
+
required: z65.boolean(),
|
|
42858
|
+
placeholder: z65.string().optional()
|
|
42560
42859
|
});
|
|
42561
|
-
var
|
|
42562
|
-
|
|
42563
|
-
|
|
42564
|
-
|
|
42860
|
+
var newsletterSignupBlockIdSchema = z65.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
|
|
42861
|
+
var signedNewsletterDestinationRefSchema = z65.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
|
|
42862
|
+
var newsletterPublicDestinationRefSchema = z65.discriminatedUnion("tag", [
|
|
42863
|
+
z65.object({
|
|
42864
|
+
tag: z65.literal("block_ref"),
|
|
42865
|
+
blockId: newsletterSignupBlockIdSchema
|
|
42866
|
+
}),
|
|
42867
|
+
z65.object({
|
|
42868
|
+
tag: z65.literal("signed_destination_ref"),
|
|
42869
|
+
token: signedNewsletterDestinationRefSchema
|
|
42870
|
+
})
|
|
42871
|
+
]);
|
|
42872
|
+
var newsletterSourceSchema = z65.object({
|
|
42873
|
+
blockId: z65.string().nullable().optional(),
|
|
42874
|
+
siteId: z65.string().optional(),
|
|
42875
|
+
apiBaseUrl: z65.string().optional(),
|
|
42876
|
+
listId: z65.string().nullable().optional(),
|
|
42877
|
+
destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
|
|
42565
42878
|
preset: newsletterPresetSchema.optional(),
|
|
42566
|
-
includePhone:
|
|
42567
|
-
buttonLabel:
|
|
42568
|
-
successMessage:
|
|
42569
|
-
privacyNote:
|
|
42570
|
-
tags:
|
|
42571
|
-
spamProtectionEnabled:
|
|
42572
|
-
className:
|
|
42879
|
+
includePhone: z65.boolean().optional(),
|
|
42880
|
+
buttonLabel: z65.string().nullable().optional(),
|
|
42881
|
+
successMessage: z65.string().nullable().optional(),
|
|
42882
|
+
privacyNote: z65.string().nullable().optional(),
|
|
42883
|
+
tags: z65.string().nullable().optional(),
|
|
42884
|
+
spamProtectionEnabled: z65.boolean().optional(),
|
|
42885
|
+
className: z65.string().nullable().optional()
|
|
42573
42886
|
});
|
|
42574
|
-
var newsletterDisplaySchema =
|
|
42575
|
-
kind:
|
|
42576
|
-
className:
|
|
42577
|
-
buttonLabel:
|
|
42578
|
-
successMessage:
|
|
42579
|
-
privacyNote:
|
|
42580
|
-
fields:
|
|
42887
|
+
var newsletterDisplaySchema = z65.object({
|
|
42888
|
+
kind: z65.literal("newsletter-form"),
|
|
42889
|
+
className: z65.string().nullable(),
|
|
42890
|
+
buttonLabel: z65.string(),
|
|
42891
|
+
successMessage: z65.string().nullable(),
|
|
42892
|
+
privacyNote: z65.string().nullable(),
|
|
42893
|
+
fields: z65.array(newsletterFieldSchema)
|
|
42581
42894
|
});
|
|
42582
|
-
var newsletterHydrationSchema =
|
|
42583
|
-
|
|
42895
|
+
var newsletterHydrationSchema = z65.object({
|
|
42896
|
+
destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
|
|
42897
|
+
listId: z65.string().nullable().optional(),
|
|
42584
42898
|
preset: newsletterPresetSchema,
|
|
42585
|
-
includePhone:
|
|
42586
|
-
tags:
|
|
42587
|
-
spamProtectionEnabled:
|
|
42899
|
+
includePhone: z65.boolean(),
|
|
42900
|
+
tags: z65.string().nullable().optional(),
|
|
42901
|
+
spamProtectionEnabled: z65.boolean().optional()
|
|
42588
42902
|
});
|
|
42589
|
-
var newsletterRenderSchema =
|
|
42903
|
+
var newsletterRenderSchema = z65.object({
|
|
42590
42904
|
display: newsletterDisplaySchema,
|
|
42591
42905
|
hydration: newsletterHydrationSchema
|
|
42592
42906
|
});
|
|
42593
|
-
var newsletterIslandMetaCodec = createZodCodec(
|
|
42594
|
-
siteId:
|
|
42595
|
-
apiBaseUrl:
|
|
42907
|
+
var newsletterIslandMetaCodec = createZodCodec(z65.object({
|
|
42908
|
+
siteId: z65.string().optional(),
|
|
42909
|
+
apiBaseUrl: z65.string().optional()
|
|
42596
42910
|
}));
|
|
42597
42911
|
var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
|
|
42598
42912
|
function buildNewsletterDisplay(source) {
|
|
@@ -42613,16 +42927,20 @@ var newsletterFormBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
42613
42927
|
source: createZodCodec(newsletterSourceSchema),
|
|
42614
42928
|
render: createZodCodec(newsletterRenderSchema)
|
|
42615
42929
|
},
|
|
42616
|
-
buildRender: (source) =>
|
|
42617
|
-
|
|
42618
|
-
|
|
42619
|
-
|
|
42620
|
-
|
|
42621
|
-
|
|
42622
|
-
|
|
42623
|
-
|
|
42624
|
-
|
|
42625
|
-
|
|
42930
|
+
buildRender: (source) => {
|
|
42931
|
+
const runtimeSource = deriveNewsletterSignupRuntimeSource(source);
|
|
42932
|
+
return {
|
|
42933
|
+
display: buildNewsletterDisplay(source),
|
|
42934
|
+
hydration: {
|
|
42935
|
+
destinationRef: buildNewsletterSignupBlockRef(source.blockId),
|
|
42936
|
+
listId: runtimeSource.listId,
|
|
42937
|
+
preset: source.preset ?? "emailOnly",
|
|
42938
|
+
includePhone: source.includePhone ?? false,
|
|
42939
|
+
tags: runtimeSource.tags,
|
|
42940
|
+
spamProtectionEnabled: source.spamProtectionEnabled
|
|
42941
|
+
}
|
|
42942
|
+
};
|
|
42943
|
+
}
|
|
42626
42944
|
});
|
|
42627
42945
|
var newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
|
|
42628
42946
|
runtime: newsletterFormBlockRuntime,
|
|
@@ -42645,6 +42963,20 @@ function buildNewsletterFormInteractiveIslandProps(props2) {
|
|
|
42645
42963
|
source: props2
|
|
42646
42964
|
});
|
|
42647
42965
|
}
|
|
42966
|
+
function parseRequiredNewsletterSignupBlockId(value) {
|
|
42967
|
+
const parsed = parseNewsletterSignupBlockId(value);
|
|
42968
|
+
if (!parsed) {
|
|
42969
|
+
throw new Error("Newsletter signup block destination ref requires blockId");
|
|
42970
|
+
}
|
|
42971
|
+
return parsed;
|
|
42972
|
+
}
|
|
42973
|
+
function parseRequiredSignedNewsletterDestinationRef(value) {
|
|
42974
|
+
const parsed = parseSignedNewsletterDestinationRef(value);
|
|
42975
|
+
if (!parsed) {
|
|
42976
|
+
throw new Error("Newsletter signup signed destination ref requires token");
|
|
42977
|
+
}
|
|
42978
|
+
return parsed;
|
|
42979
|
+
}
|
|
42648
42980
|
|
|
42649
42981
|
// ../blocks/src/system/blocks/newsletter-signup.ts
|
|
42650
42982
|
var stackedComposition = composeFragments([
|
|
@@ -42724,23 +43056,23 @@ var newsletterSignupBlockDefinition = {
|
|
|
42724
43056
|
};
|
|
42725
43057
|
|
|
42726
43058
|
// ../blocks/src/system/blocks/team-members.ts
|
|
42727
|
-
import { z as
|
|
43059
|
+
import { z as z66 } from "zod";
|
|
42728
43060
|
var ITEM_NAME2 = "member";
|
|
42729
43061
|
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
42730
43062
|
message: "Team member photos must be image media"
|
|
42731
43063
|
}).nullable();
|
|
42732
|
-
var teamMemberDataSchema =
|
|
42733
|
-
_type:
|
|
42734
|
-
id:
|
|
42735
|
-
name:
|
|
42736
|
-
role:
|
|
42737
|
-
roleLabel:
|
|
42738
|
-
bio:
|
|
42739
|
-
summary:
|
|
43064
|
+
var teamMemberDataSchema = z66.object({
|
|
43065
|
+
_type: z66.literal("teamMember"),
|
|
43066
|
+
id: z66.string(),
|
|
43067
|
+
name: z66.string(),
|
|
43068
|
+
role: z66.string().nullable(),
|
|
43069
|
+
roleLabel: z66.string().nullable(),
|
|
43070
|
+
bio: z66.string().nullable(),
|
|
43071
|
+
summary: z66.string().nullable(),
|
|
42740
43072
|
photo: teamMemberPhotoSchema,
|
|
42741
|
-
profilePath:
|
|
43073
|
+
profilePath: z66.string().nullable()
|
|
42742
43074
|
});
|
|
42743
|
-
var teamMembersDataSchema =
|
|
43075
|
+
var teamMembersDataSchema = z66.array(teamMemberDataSchema);
|
|
42744
43076
|
var dynamicSourceWhen = { equals: "site_staff" };
|
|
42745
43077
|
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
42746
43078
|
var headingNode = text(
|
|
@@ -44675,7 +45007,7 @@ import React4 from "react";
|
|
|
44675
45007
|
// ../blocks/src/system/data/linkedContentEntries.ts
|
|
44676
45008
|
var LINKED_CONTENT_ENTRY_META_KEY = "__rbLinkedContentEntry";
|
|
44677
45009
|
function coerceLinkedContentEntriesPayload(payload) {
|
|
44678
|
-
if (!
|
|
45010
|
+
if (!isRecord10(payload)) return payload;
|
|
44679
45011
|
const response = payload;
|
|
44680
45012
|
if (!Array.isArray(response.entries)) return payload;
|
|
44681
45013
|
const contentType = parsePublicContentTypeMeta(response.contentType);
|
|
@@ -44683,16 +45015,16 @@ function coerceLinkedContentEntriesPayload(payload) {
|
|
|
44683
45015
|
return response.entries.map((entry) => enrichLinkedContentEntry(entry, contentType));
|
|
44684
45016
|
}
|
|
44685
45017
|
function getLinkedContentEntryMeta(value) {
|
|
44686
|
-
if (!
|
|
45018
|
+
if (!isRecord10(value)) return null;
|
|
44687
45019
|
const candidate = value[LINKED_CONTENT_ENTRY_META_KEY];
|
|
44688
45020
|
return isLinkedContentEntryMeta(candidate) ? candidate : null;
|
|
44689
45021
|
}
|
|
44690
45022
|
function buildLinkedContentEditTarget(input) {
|
|
44691
45023
|
const { entry, sourceBlockId, sourceBlockKind, itemIndex } = input;
|
|
44692
|
-
if (!
|
|
45024
|
+
if (!isRecord10(entry)) return null;
|
|
44693
45025
|
const meta = getLinkedContentEntryMeta(entry);
|
|
44694
45026
|
if (!meta || meta.support.kind !== "supported") return null;
|
|
44695
|
-
const content =
|
|
45027
|
+
const content = isRecord10(entry.content) ? entry.content : {};
|
|
44696
45028
|
return {
|
|
44697
45029
|
kind: "linked-content-entry",
|
|
44698
45030
|
entryId: meta.entryId,
|
|
@@ -44742,12 +45074,12 @@ function resolveLinkedEntryInlineFieldEligibility(input) {
|
|
|
44742
45074
|
};
|
|
44743
45075
|
}
|
|
44744
45076
|
function enrichLinkedContentEntry(entry, contentType) {
|
|
44745
|
-
if (!
|
|
45077
|
+
if (!isRecord10(entry)) return entry;
|
|
44746
45078
|
const entryId = typeof entry.id === "string" ? entry.id : null;
|
|
44747
45079
|
if (!entryId) return entry;
|
|
44748
45080
|
const title = typeof entry.title === "string" && entry.title.trim().length > 0 ? entry.title : entryId;
|
|
44749
45081
|
const optimisticHash = typeof entry.optimisticHash === "string" && entry.optimisticHash.length > 0 ? entry.optimisticHash : null;
|
|
44750
|
-
const content =
|
|
45082
|
+
const content = isRecord10(entry.content) ? entry.content : {};
|
|
44751
45083
|
const meta = {
|
|
44752
45084
|
kind: "linked-content-entry",
|
|
44753
45085
|
entryId,
|
|
@@ -44843,7 +45175,7 @@ function capitalize(value) {
|
|
|
44843
45175
|
return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
44844
45176
|
}
|
|
44845
45177
|
function parsePublicContentTypeMeta(value) {
|
|
44846
|
-
if (!
|
|
45178
|
+
if (!isRecord10(value)) return null;
|
|
44847
45179
|
if (typeof value.key !== "string" || value.key.trim().length === 0) return null;
|
|
44848
45180
|
return {
|
|
44849
45181
|
key: value.key,
|
|
@@ -44853,7 +45185,7 @@ function parsePublicContentTypeMeta(value) {
|
|
|
44853
45185
|
};
|
|
44854
45186
|
}
|
|
44855
45187
|
function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
44856
|
-
if (!
|
|
45188
|
+
if (!isRecord10(value) || typeof value.kind !== "string") return null;
|
|
44857
45189
|
switch (value.kind) {
|
|
44858
45190
|
case "generic":
|
|
44859
45191
|
return { kind: "generic" };
|
|
@@ -44867,7 +45199,7 @@ function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
|
44867
45199
|
}
|
|
44868
45200
|
}
|
|
44869
45201
|
function parsePublicContentTypeFieldMeta(value) {
|
|
44870
|
-
if (!
|
|
45202
|
+
if (!isRecord10(value)) return [];
|
|
44871
45203
|
if (typeof value.id !== "string" || typeof value.type !== "string") return [];
|
|
44872
45204
|
return [{
|
|
44873
45205
|
id: value.id,
|
|
@@ -44882,14 +45214,14 @@ function parseStringArray(value) {
|
|
|
44882
45214
|
return value.filter((item) => typeof item === "string");
|
|
44883
45215
|
}
|
|
44884
45216
|
function isLinkedContentEntryMeta(value) {
|
|
44885
|
-
if (!
|
|
45217
|
+
if (!isRecord10(value)) return false;
|
|
44886
45218
|
if (value.kind !== "linked-content-entry") return false;
|
|
44887
45219
|
if (typeof value.entryId !== "string") return false;
|
|
44888
45220
|
if (typeof value.contentTypeKey !== "string") return false;
|
|
44889
45221
|
if (typeof value.contentTypeLabel !== "string") return false;
|
|
44890
45222
|
if (typeof value.title !== "string") return false;
|
|
44891
45223
|
if (!(value.optimisticHash === null || typeof value.optimisticHash === "string")) return false;
|
|
44892
|
-
if (!
|
|
45224
|
+
if (!isRecord10(value.contentType)) return false;
|
|
44893
45225
|
if (!isLinkedEntryFieldSourceArray(value.fieldSources)) return false;
|
|
44894
45226
|
return isLinkedContentEditSupport(value.support);
|
|
44895
45227
|
}
|
|
@@ -44897,7 +45229,7 @@ function isLinkedEntryFieldSourceArray(value) {
|
|
|
44897
45229
|
return Array.isArray(value) && value.every(isLinkedEntryFieldSource);
|
|
44898
45230
|
}
|
|
44899
45231
|
function isLinkedEntryFieldSource(value) {
|
|
44900
|
-
if (!
|
|
45232
|
+
if (!isRecord10(value)) return false;
|
|
44901
45233
|
if (typeof value.displayPath !== "string") return false;
|
|
44902
45234
|
switch (value.kind) {
|
|
44903
45235
|
case "content-field":
|
|
@@ -44923,7 +45255,7 @@ function isLinkedEntryInlineFieldReadOnlyReason(value) {
|
|
|
44923
45255
|
}
|
|
44924
45256
|
}
|
|
44925
45257
|
function isLinkedContentEditSupport(value) {
|
|
44926
|
-
if (!
|
|
45258
|
+
if (!isRecord10(value) || typeof value.kind !== "string") return false;
|
|
44927
45259
|
switch (value.kind) {
|
|
44928
45260
|
case "supported":
|
|
44929
45261
|
return true;
|
|
@@ -44935,7 +45267,7 @@ function isLinkedContentEditSupport(value) {
|
|
|
44935
45267
|
return false;
|
|
44936
45268
|
}
|
|
44937
45269
|
}
|
|
44938
|
-
function
|
|
45270
|
+
function isRecord10(value) {
|
|
44939
45271
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
44940
45272
|
}
|
|
44941
45273
|
|
|
@@ -45267,6 +45599,8 @@ function renderDoc(node, key, imageResolveContext) {
|
|
|
45267
45599
|
return /* @__PURE__ */ jsx15("blockquote", { children }, key);
|
|
45268
45600
|
case "horizontalRule":
|
|
45269
45601
|
return /* @__PURE__ */ jsx15("hr", {}, key);
|
|
45602
|
+
case "hardBreak":
|
|
45603
|
+
return /* @__PURE__ */ jsx15("br", {}, key);
|
|
45270
45604
|
case "image": {
|
|
45271
45605
|
const attrs = node.attrs ?? {};
|
|
45272
45606
|
const src = typeof attrs.src === "string" ? attrs.src.trim() : "";
|
|
@@ -45323,84 +45657,11 @@ function Text({
|
|
|
45323
45657
|
return /* @__PURE__ */ jsx16(Comp, { className, ...dataAttributes, children });
|
|
45324
45658
|
}
|
|
45325
45659
|
|
|
45326
|
-
// ../blocks/src/system/manifest/richTextSchema.ts
|
|
45327
|
-
import { z as z66 } from "zod";
|
|
45328
|
-
var TipTapMarkSchema = z66.object({
|
|
45329
|
-
type: z66.string(),
|
|
45330
|
-
attrs: z66.record(z66.string(), z66.unknown()).optional()
|
|
45331
|
-
});
|
|
45332
|
-
var TipTapNodeSchema = z66.lazy(
|
|
45333
|
-
() => z66.object({
|
|
45334
|
-
type: z66.string(),
|
|
45335
|
-
content: z66.array(TipTapNodeSchema).optional(),
|
|
45336
|
-
text: z66.string().optional(),
|
|
45337
|
-
attrs: z66.record(z66.string(), z66.unknown()).optional(),
|
|
45338
|
-
marks: z66.array(TipTapMarkSchema).optional()
|
|
45339
|
-
})
|
|
45340
|
-
);
|
|
45341
|
-
var RichTextValueSchema = z66.union([
|
|
45342
|
-
// Canonical: TipTap document directly
|
|
45343
|
-
TipTapNodeSchema,
|
|
45344
|
-
// Legacy (read-tolerance only): wrapped in { doc: {...} }
|
|
45345
|
-
z66.object({
|
|
45346
|
-
doc: TipTapNodeSchema
|
|
45347
|
-
})
|
|
45348
|
-
]);
|
|
45349
|
-
var RichTextDocSchema = z66.object({
|
|
45350
|
-
type: z66.literal("doc"),
|
|
45351
|
-
content: z66.array(TipTapNodeSchema)
|
|
45352
|
-
});
|
|
45353
|
-
function unwrapRichTextRoot(value) {
|
|
45354
|
-
if (!isRecord4(value)) return value;
|
|
45355
|
-
if (!("doc" in value)) return value;
|
|
45356
|
-
const inner = value.doc;
|
|
45357
|
-
if (isRecord4(inner) && inner.type === "doc") return inner;
|
|
45358
|
-
return value;
|
|
45359
|
-
}
|
|
45360
|
-
|
|
45361
45660
|
// ../blocks/src/system/runtime/nodes/richText-coerce.ts
|
|
45362
|
-
function parseInlineMarkdown(text2) {
|
|
45363
|
-
const out = [];
|
|
45364
|
-
const pushText = (value, marks) => {
|
|
45365
|
-
if (!value) return;
|
|
45366
|
-
out.push(
|
|
45367
|
-
marks && marks.length > 0 ? { type: "text", text: value, marks } : { type: "text", text: value }
|
|
45368
|
-
);
|
|
45369
|
-
};
|
|
45370
|
-
let rest = text2;
|
|
45371
|
-
while (rest.length > 0) {
|
|
45372
|
-
const start = rest.indexOf("**");
|
|
45373
|
-
if (start === -1) {
|
|
45374
|
-
pushText(rest);
|
|
45375
|
-
break;
|
|
45376
|
-
}
|
|
45377
|
-
const end = rest.indexOf("**", start + 2);
|
|
45378
|
-
if (end === -1) {
|
|
45379
|
-
pushText(rest);
|
|
45380
|
-
break;
|
|
45381
|
-
}
|
|
45382
|
-
pushText(rest.slice(0, start));
|
|
45383
|
-
pushText(rest.slice(start + 2, end), [{ type: "bold" }]);
|
|
45384
|
-
rest = rest.slice(end + 2);
|
|
45385
|
-
}
|
|
45386
|
-
return out;
|
|
45387
|
-
}
|
|
45388
|
-
function markdownToTipTapDoc(markdown) {
|
|
45389
|
-
const normalized = markdown.replace(/\r\n/g, "\n").trim();
|
|
45390
|
-
if (!normalized) return { type: "doc", content: [] };
|
|
45391
|
-
const paragraphs = normalized.split(/\n{2,}/).map((p) => p.trim()).filter(Boolean);
|
|
45392
|
-
return {
|
|
45393
|
-
type: "doc",
|
|
45394
|
-
content: paragraphs.map((p) => {
|
|
45395
|
-
const inline2 = parseInlineMarkdown(p);
|
|
45396
|
-
return inline2.length > 0 ? { type: "paragraph", content: inline2 } : { type: "paragraph" };
|
|
45397
|
-
})
|
|
45398
|
-
};
|
|
45399
|
-
}
|
|
45400
45661
|
function coerceRichTextDoc(value) {
|
|
45401
45662
|
const raw = unwrapRichTextRoot(value);
|
|
45402
45663
|
if (typeof raw === "string") {
|
|
45403
|
-
return
|
|
45664
|
+
return createRichTextDocFromMarkdown(raw);
|
|
45404
45665
|
}
|
|
45405
45666
|
if (isRecord4(raw) && typeof raw.type === "string") {
|
|
45406
45667
|
return raw;
|
|
@@ -46462,12 +46723,12 @@ function toTrimmedString(value) {
|
|
|
46462
46723
|
return trimmed ? trimmed : void 0;
|
|
46463
46724
|
}
|
|
46464
46725
|
function normalizeBookingFormConfig(form2) {
|
|
46465
|
-
if (!
|
|
46726
|
+
if (!isRecord11(form2)) return null;
|
|
46466
46727
|
const id = readNonEmptyString(form2.id);
|
|
46467
46728
|
const name = readNonEmptyString(form2.name);
|
|
46468
46729
|
if (!id || !name) return null;
|
|
46469
|
-
const schemaSource =
|
|
46470
|
-
const settingsSource =
|
|
46730
|
+
const schemaSource = isRecord11(form2.schema) ? form2.schema : isRecord11(form2.schemaJson) ? form2.schemaJson : null;
|
|
46731
|
+
const settingsSource = isRecord11(form2.settings) ? form2.settings : isRecord11(form2.settingsJson) ? form2.settingsJson : null;
|
|
46471
46732
|
return {
|
|
46472
46733
|
id,
|
|
46473
46734
|
name,
|
|
@@ -46491,10 +46752,10 @@ function normalizeBookingServices(services) {
|
|
|
46491
46752
|
if (Array.isArray(services)) {
|
|
46492
46753
|
return services.filter(isBookingFormService).map(normalizeService);
|
|
46493
46754
|
}
|
|
46494
|
-
if (
|
|
46755
|
+
if (isRecord11(services) && "services" in services) {
|
|
46495
46756
|
return Array.isArray(services.services) ? services.services.filter(isBookingFormService).map(normalizeService) : [];
|
|
46496
46757
|
}
|
|
46497
|
-
return
|
|
46758
|
+
return isRecord11(services) ? Object.values(services).filter(isBookingFormService).map(normalizeService) : [];
|
|
46498
46759
|
}
|
|
46499
46760
|
function normalizeBookingSchema(value) {
|
|
46500
46761
|
if (!value) return void 0;
|
|
@@ -46506,7 +46767,7 @@ function normalizeBookingSchema(value) {
|
|
|
46506
46767
|
};
|
|
46507
46768
|
}
|
|
46508
46769
|
function readBookingFormField(value) {
|
|
46509
|
-
if (!
|
|
46770
|
+
if (!isRecord11(value)) return null;
|
|
46510
46771
|
const id = readNonEmptyString(value.id);
|
|
46511
46772
|
const label = readNonEmptyString(value.label);
|
|
46512
46773
|
const type = readBookingFieldType(value.type);
|
|
@@ -46552,7 +46813,7 @@ function readBookingFieldOptions(value) {
|
|
|
46552
46813
|
return options.length > 0 ? options : void 0;
|
|
46553
46814
|
}
|
|
46554
46815
|
function readBookingFieldOption(value) {
|
|
46555
|
-
if (!
|
|
46816
|
+
if (!isRecord11(value)) return null;
|
|
46556
46817
|
const optionValue = readNonEmptyString(value.value);
|
|
46557
46818
|
const label = readNonEmptyString(value.label);
|
|
46558
46819
|
return optionValue && label ? { value: optionValue, label } : null;
|
|
@@ -46569,7 +46830,7 @@ function normalizeBookingSettings(value) {
|
|
|
46569
46830
|
};
|
|
46570
46831
|
}
|
|
46571
46832
|
function isBookingFormService(value) {
|
|
46572
|
-
return
|
|
46833
|
+
return isRecord11(value) && typeof value.id === "string" && typeof value.siteId === "string" && typeof value.title === "string";
|
|
46573
46834
|
}
|
|
46574
46835
|
function readNonEmptyString(value) {
|
|
46575
46836
|
if (typeof value !== "string") return null;
|
|
@@ -46587,7 +46848,7 @@ function readStringArray(value) {
|
|
|
46587
46848
|
const strings = value.filter((item) => typeof item === "string");
|
|
46588
46849
|
return strings.length > 0 ? strings : void 0;
|
|
46589
46850
|
}
|
|
46590
|
-
function
|
|
46851
|
+
function isRecord11(value) {
|
|
46591
46852
|
return typeof value === "object" && value !== null;
|
|
46592
46853
|
}
|
|
46593
46854
|
|
|
@@ -47008,6 +47269,32 @@ function TeamMemberName({
|
|
|
47008
47269
|
}) {
|
|
47009
47270
|
return profilePath ? /* @__PURE__ */ jsx29("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx29("strong", { children: name }) }) : /* @__PURE__ */ jsx29("strong", { children: name });
|
|
47010
47271
|
}
|
|
47272
|
+
function formatTicketTypePrice(ticketType, currency) {
|
|
47273
|
+
return formatCurrencyAmount(ticketType.priceAmount, currency, { decimals: "auto" });
|
|
47274
|
+
}
|
|
47275
|
+
function getActiveTicketTypes(event) {
|
|
47276
|
+
return event.pricing.kind === "ticket_types" ? event.pricing.ticketTypes.filter((ticketType) => ticketType.isActive).sort((left, right) => left.sortOrder - right.sortOrder) : [];
|
|
47277
|
+
}
|
|
47278
|
+
function TicketTypePriceList({
|
|
47279
|
+
ticketTypes,
|
|
47280
|
+
currency
|
|
47281
|
+
}) {
|
|
47282
|
+
if (ticketTypes.length === 0) return null;
|
|
47283
|
+
return /* @__PURE__ */ jsx29("div", { className: "rb-mt-3 rb-flex rb-flex-col rb-gap-2", children: ticketTypes.map((ticketType) => /* @__PURE__ */ jsxs16(
|
|
47284
|
+
"div",
|
|
47285
|
+
{
|
|
47286
|
+
className: "rb-flex rb-items-start rb-justify-between rb-gap-4",
|
|
47287
|
+
children: [
|
|
47288
|
+
/* @__PURE__ */ jsxs16("div", { children: [
|
|
47289
|
+
/* @__PURE__ */ jsx29("p", { children: ticketType.name }),
|
|
47290
|
+
ticketType.description ? /* @__PURE__ */ jsx29("p", { className: "rb-caption status-muted", children: ticketType.description }) : null
|
|
47291
|
+
] }),
|
|
47292
|
+
/* @__PURE__ */ jsx29("p", { children: /* @__PURE__ */ jsx29("strong", { children: formatTicketTypePrice(ticketType, currency) }) })
|
|
47293
|
+
]
|
|
47294
|
+
},
|
|
47295
|
+
ticketType.id
|
|
47296
|
+
)) });
|
|
47297
|
+
}
|
|
47011
47298
|
function EventDetailsView({
|
|
47012
47299
|
selection,
|
|
47013
47300
|
showVenue,
|
|
@@ -47042,6 +47329,7 @@ function EventDetailsView({
|
|
|
47042
47329
|
const shouldShowCoursePricing = showCost && !isDropIn && coursePricing !== null;
|
|
47043
47330
|
const shouldShowEventCost = showCost && isPaid && !isDropIn && coursePricing === null;
|
|
47044
47331
|
const eventCostLabel = shouldShowEventCost ? formatEventPrice(selected) : null;
|
|
47332
|
+
const ticketTypes = shouldShowEventCost ? getActiveTicketTypes(selected) : [];
|
|
47045
47333
|
const acceptedItems = [];
|
|
47046
47334
|
if (showAcceptedPasses) {
|
|
47047
47335
|
acceptedItems.push(...applicablePasses.map((p) => p.name));
|
|
@@ -47098,6 +47386,7 @@ function EventDetailsView({
|
|
|
47098
47386
|
/* @__PURE__ */ jsx29("div", { className: "rb-label rb-mb-2", children: "Cost" }),
|
|
47099
47387
|
/* @__PURE__ */ jsx29("p", { children: /* @__PURE__ */ jsx29("strong", { children: eventCostLabel }) }),
|
|
47100
47388
|
autoApplyDiscount ? /* @__PURE__ */ jsx29("p", { className: "rb-caption rb-mt-1", children: formatAutoApplyDiscountLine(autoApplyDiscount, eventPricingCurrency) }) : null,
|
|
47389
|
+
/* @__PURE__ */ jsx29(TicketTypePriceList, { ticketTypes, currency: eventPricingCurrency }),
|
|
47101
47390
|
hasAcceptedItems ? /* @__PURE__ */ jsxs16("p", { className: "rb-caption rb-mt-1", children: [
|
|
47102
47391
|
"You can also attend with: ",
|
|
47103
47392
|
acceptedItems.join(", ")
|
|
@@ -49228,6 +49517,7 @@ function EventRegistrationSSR({
|
|
|
49228
49517
|
successMessage,
|
|
49229
49518
|
waitlistMessage,
|
|
49230
49519
|
buttonVariant,
|
|
49520
|
+
overlayEnabled,
|
|
49231
49521
|
spamProtectionEnabled,
|
|
49232
49522
|
stage,
|
|
49233
49523
|
supportEmail,
|
|
@@ -49249,6 +49539,7 @@ function EventRegistrationSSR({
|
|
|
49249
49539
|
successMessage,
|
|
49250
49540
|
waitlistMessage,
|
|
49251
49541
|
buttonVariant,
|
|
49542
|
+
overlayEnabled,
|
|
49252
49543
|
spamProtectionEnabled,
|
|
49253
49544
|
stage,
|
|
49254
49545
|
supportEmail
|
|
@@ -49513,6 +49804,7 @@ function NewsletterFormSSR({
|
|
|
49513
49804
|
siteId,
|
|
49514
49805
|
apiBaseUrl,
|
|
49515
49806
|
listId,
|
|
49807
|
+
destinationProvider,
|
|
49516
49808
|
preset: preset2 = "emailOnly",
|
|
49517
49809
|
includePhone,
|
|
49518
49810
|
buttonLabel = "Subscribe",
|
|
@@ -49523,9 +49815,11 @@ function NewsletterFormSSR({
|
|
|
49523
49815
|
className
|
|
49524
49816
|
}) {
|
|
49525
49817
|
const islandProps = buildNewsletterFormInteractiveIslandProps({
|
|
49818
|
+
blockId,
|
|
49526
49819
|
siteId,
|
|
49527
49820
|
apiBaseUrl,
|
|
49528
49821
|
listId,
|
|
49822
|
+
destinationProvider,
|
|
49529
49823
|
preset: preset2,
|
|
49530
49824
|
includePhone,
|
|
49531
49825
|
buttonLabel,
|
|
@@ -49905,14 +50199,14 @@ function isDecoratedHeadingBlockKind(blockKind) {
|
|
|
49905
50199
|
return blockKind === "block.intro" || blockKind === "block.feature-cards" || blockKind === "block.testimonials" || blockKind === "block.faq";
|
|
49906
50200
|
}
|
|
49907
50201
|
function readVariant(blockContent) {
|
|
49908
|
-
if (!
|
|
50202
|
+
if (!isRecord12(blockContent)) return void 0;
|
|
49909
50203
|
const variant = blockContent.variant;
|
|
49910
50204
|
return typeof variant === "string" ? variant : void 0;
|
|
49911
50205
|
}
|
|
49912
50206
|
function isFaqDecoratedVariant(variant) {
|
|
49913
50207
|
return variant === "default" || variant === "question-columns";
|
|
49914
50208
|
}
|
|
49915
|
-
function
|
|
50209
|
+
function isRecord12(value) {
|
|
49916
50210
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
49917
50211
|
}
|
|
49918
50212
|
function buildHeadingDecorationWrapperClassName(className) {
|
|
@@ -55290,6 +55584,7 @@ var MemoBlockSection = React6.memo(
|
|
|
55290
55584
|
apiBaseUrl: dataContext?.apiBaseUrl ?? null,
|
|
55291
55585
|
portalToken: dataContext?.portalToken ?? null,
|
|
55292
55586
|
bookingOfferingPresets: dataContext?.bookingOfferingPresets ?? [],
|
|
55587
|
+
eventRegistrationOverlayEnabled: dataContext?.eventRegistrationOverlayEnabled ?? false,
|
|
55293
55588
|
...routes ? { routes } : {},
|
|
55294
55589
|
// Identifier maps for CTA link resolution at render time
|
|
55295
55590
|
...dataContext?.pagesByIdentifier ? { pagesByIdentifier: dataContext.pagesByIdentifier } : {},
|
|
@@ -58670,6 +58965,7 @@ var containerResponsiveThemeCss = `/*
|
|
|
58670
58965
|
*/
|
|
58671
58966
|
|
|
58672
58967
|
:where(.theme-scope) :where([data-block="event-registration"]) {
|
|
58968
|
+
--rb-modal-overlay-bg: rgb(var(--tb-text, 0 0 0) / 0.6);
|
|
58673
58969
|
--rb-event-tile-bg: var(--er-event-card-bg);
|
|
58674
58970
|
--rb-event-tile-border: var(--er-border);
|
|
58675
58971
|
--rb-event-tile-border-width: var(--er-event-card-border-width);
|
|
@@ -60339,6 +60635,239 @@ var containerResponsiveThemeCss = `/*
|
|
|
60339
60635
|
background: rgba(var(--tb-text), 0.05);
|
|
60340
60636
|
}
|
|
60341
60637
|
|
|
60638
|
+
/* In-flow booking teaser (sits at the block's position in the page) */
|
|
60639
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser {
|
|
60640
|
+
display: flex;
|
|
60641
|
+
flex-wrap: wrap;
|
|
60642
|
+
align-items: center;
|
|
60643
|
+
justify-content: space-between;
|
|
60644
|
+
gap: 1rem 1.5rem;
|
|
60645
|
+
padding: 1.25rem 1.5rem;
|
|
60646
|
+
border: 1px solid var(--er-border);
|
|
60647
|
+
border-radius: var(--rb-block-radius);
|
|
60648
|
+
background: var(--er-event-card-bg);
|
|
60649
|
+
color: var(--er-on-surface);
|
|
60650
|
+
}
|
|
60651
|
+
|
|
60652
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__info {
|
|
60653
|
+
display: flex;
|
|
60654
|
+
flex-direction: column;
|
|
60655
|
+
gap: 0.25rem;
|
|
60656
|
+
min-width: 0;
|
|
60657
|
+
}
|
|
60658
|
+
|
|
60659
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__title {
|
|
60660
|
+
font-size: 1.0625rem;
|
|
60661
|
+
font-weight: 700;
|
|
60662
|
+
line-height: 1.2;
|
|
60663
|
+
}
|
|
60664
|
+
|
|
60665
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__meta {
|
|
60666
|
+
font-size: 0.9375rem;
|
|
60667
|
+
line-height: 1.3;
|
|
60668
|
+
opacity: 0.75;
|
|
60669
|
+
}
|
|
60670
|
+
|
|
60671
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__tickets {
|
|
60672
|
+
display: flex;
|
|
60673
|
+
flex-direction: column;
|
|
60674
|
+
gap: 0.375rem;
|
|
60675
|
+
margin-top: 0.5rem;
|
|
60676
|
+
padding-top: 0.625rem;
|
|
60677
|
+
border-top: 1px solid var(--er-border);
|
|
60678
|
+
}
|
|
60679
|
+
|
|
60680
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__ticket {
|
|
60681
|
+
display: flex;
|
|
60682
|
+
align-items: baseline;
|
|
60683
|
+
justify-content: space-between;
|
|
60684
|
+
gap: 1rem;
|
|
60685
|
+
font-size: 0.9375rem;
|
|
60686
|
+
line-height: 1.35;
|
|
60687
|
+
}
|
|
60688
|
+
|
|
60689
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__ticket-name {
|
|
60690
|
+
min-width: 0;
|
|
60691
|
+
}
|
|
60692
|
+
|
|
60693
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-teaser__cta {
|
|
60694
|
+
flex: 0 0 auto;
|
|
60695
|
+
}
|
|
60696
|
+
|
|
60697
|
+
/* Fixed, full-width sticky booking bar (content-agnostic; sits above page flow) */
|
|
60698
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar {
|
|
60699
|
+
position: fixed;
|
|
60700
|
+
left: 0;
|
|
60701
|
+
right: 0;
|
|
60702
|
+
bottom: 0;
|
|
60703
|
+
z-index: 12000;
|
|
60704
|
+
padding: 0.75rem max(1rem, env(safe-area-inset-right)) max(0.75rem, env(safe-area-inset-bottom)) max(1rem, env(safe-area-inset-left));
|
|
60705
|
+
background: rgb(var(--tb-background));
|
|
60706
|
+
border-top: 1px solid var(--er-border);
|
|
60707
|
+
box-shadow: 0 -10px 30px rgba(var(--tb-shadow), 0.16);
|
|
60708
|
+
}
|
|
60709
|
+
|
|
60710
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar__inner {
|
|
60711
|
+
display: flex;
|
|
60712
|
+
align-items: center;
|
|
60713
|
+
justify-content: space-between;
|
|
60714
|
+
gap: 1rem;
|
|
60715
|
+
width: 100%;
|
|
60716
|
+
max-width: 72rem;
|
|
60717
|
+
margin-inline: auto;
|
|
60718
|
+
}
|
|
60719
|
+
|
|
60720
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar__info {
|
|
60721
|
+
display: flex;
|
|
60722
|
+
flex-direction: column;
|
|
60723
|
+
gap: 0.125rem;
|
|
60724
|
+
min-width: 0;
|
|
60725
|
+
}
|
|
60726
|
+
|
|
60727
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar__title {
|
|
60728
|
+
font-size: 0.95rem;
|
|
60729
|
+
font-weight: 700;
|
|
60730
|
+
line-height: 1.2;
|
|
60731
|
+
white-space: nowrap;
|
|
60732
|
+
overflow: hidden;
|
|
60733
|
+
text-overflow: ellipsis;
|
|
60734
|
+
}
|
|
60735
|
+
|
|
60736
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar__meta {
|
|
60737
|
+
font-size: 0.8125rem;
|
|
60738
|
+
line-height: 1.25;
|
|
60739
|
+
opacity: 0.75;
|
|
60740
|
+
white-space: nowrap;
|
|
60741
|
+
overflow: hidden;
|
|
60742
|
+
text-overflow: ellipsis;
|
|
60743
|
+
}
|
|
60744
|
+
|
|
60745
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-bar__cta {
|
|
60746
|
+
flex: 0 0 auto;
|
|
60747
|
+
}
|
|
60748
|
+
|
|
60749
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay {
|
|
60750
|
+
position: fixed;
|
|
60751
|
+
inset: 0;
|
|
60752
|
+
height: 100dvh;
|
|
60753
|
+
z-index: 14000;
|
|
60754
|
+
display: flex;
|
|
60755
|
+
align-items: stretch;
|
|
60756
|
+
justify-content: stretch;
|
|
60757
|
+
background: var(--rb-modal-overlay-bg);
|
|
60758
|
+
}
|
|
60759
|
+
|
|
60760
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay__panel {
|
|
60761
|
+
position: relative;
|
|
60762
|
+
z-index: 1;
|
|
60763
|
+
display: flex;
|
|
60764
|
+
flex-direction: column;
|
|
60765
|
+
width: 100%;
|
|
60766
|
+
height: 100dvh;
|
|
60767
|
+
min-height: 0;
|
|
60768
|
+
overflow: hidden;
|
|
60769
|
+
background: rgb(var(--tb-background));
|
|
60770
|
+
color: var(--er-on-surface);
|
|
60771
|
+
}
|
|
60772
|
+
|
|
60773
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay__header {
|
|
60774
|
+
flex: 0 0 auto;
|
|
60775
|
+
z-index: 2;
|
|
60776
|
+
display: flex;
|
|
60777
|
+
align-items: center;
|
|
60778
|
+
justify-content: space-between;
|
|
60779
|
+
gap: 1rem;
|
|
60780
|
+
padding: 1rem;
|
|
60781
|
+
background: rgb(var(--tb-background));
|
|
60782
|
+
border-bottom: 1px solid var(--er-border);
|
|
60783
|
+
}
|
|
60784
|
+
|
|
60785
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay__title {
|
|
60786
|
+
margin: 0;
|
|
60787
|
+
font-size: 1rem;
|
|
60788
|
+
line-height: 1.25;
|
|
60789
|
+
font-weight: 700;
|
|
60790
|
+
}
|
|
60791
|
+
|
|
60792
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay__close {
|
|
60793
|
+
width: 2rem;
|
|
60794
|
+
height: 2rem;
|
|
60795
|
+
display: inline-flex;
|
|
60796
|
+
align-items: center;
|
|
60797
|
+
justify-content: center;
|
|
60798
|
+
border: 1px solid var(--er-border);
|
|
60799
|
+
border-radius: 999px;
|
|
60800
|
+
background: transparent;
|
|
60801
|
+
color: rgb(var(--tb-text));
|
|
60802
|
+
font-size: 1.25rem;
|
|
60803
|
+
line-height: 1;
|
|
60804
|
+
cursor: pointer;
|
|
60805
|
+
}
|
|
60806
|
+
|
|
60807
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay {
|
|
60808
|
+
max-width: none;
|
|
60809
|
+
border: 0;
|
|
60810
|
+
border-radius: 0;
|
|
60811
|
+
padding: 0;
|
|
60812
|
+
background: transparent;
|
|
60813
|
+
display: flex;
|
|
60814
|
+
flex: 1 1 auto;
|
|
60815
|
+
min-height: 0;
|
|
60816
|
+
overflow: hidden;
|
|
60817
|
+
}
|
|
60818
|
+
|
|
60819
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-payment-layout {
|
|
60820
|
+
flex: 1 1 auto;
|
|
60821
|
+
min-height: 0;
|
|
60822
|
+
height: 100%;
|
|
60823
|
+
gap: 0;
|
|
60824
|
+
grid-template-rows: minmax(0, 1fr) auto;
|
|
60825
|
+
grid-template-areas:
|
|
60826
|
+
"main"
|
|
60827
|
+
"footer";
|
|
60828
|
+
}
|
|
60829
|
+
|
|
60830
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-payment-layout-main {
|
|
60831
|
+
min-height: 0;
|
|
60832
|
+
overflow: auto;
|
|
60833
|
+
padding: 1rem;
|
|
60834
|
+
}
|
|
60835
|
+
|
|
60836
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-payment-layout-footer {
|
|
60837
|
+
position: relative;
|
|
60838
|
+
z-index: 3;
|
|
60839
|
+
padding: 0.875rem 1rem max(0.875rem, env(safe-area-inset-bottom));
|
|
60840
|
+
background: rgb(var(--tb-background));
|
|
60841
|
+
border-top: 1px solid var(--er-border);
|
|
60842
|
+
box-shadow: 0 -12px 26px rgba(var(--tb-shadow), 0.12);
|
|
60843
|
+
}
|
|
60844
|
+
|
|
60845
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-actions {
|
|
60846
|
+
margin-top: 0;
|
|
60847
|
+
}
|
|
60848
|
+
|
|
60849
|
+
@container rb-site (min-width: 768px) {
|
|
60850
|
+
@scope ([data-rb-responsive-mode="container"]) to (:scope [data-rb-responsive-mode]) {
|
|
60851
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay {
|
|
60852
|
+
justify-content: flex-end;
|
|
60853
|
+
}
|
|
60854
|
+
|
|
60855
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-booking-overlay__panel {
|
|
60856
|
+
width: min(32rem, 100vw);
|
|
60857
|
+
min-height: 100%;
|
|
60858
|
+
box-shadow: -16px 0 40px rgba(var(--tb-shadow), 0.22);
|
|
60859
|
+
}
|
|
60860
|
+
|
|
60861
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-payment-layout-main {
|
|
60862
|
+
padding: 1.25rem;
|
|
60863
|
+
}
|
|
60864
|
+
|
|
60865
|
+
:where(.theme-scope) :where([data-block="event-registration"]) .er-container--overlay .er-payment-layout-footer {
|
|
60866
|
+
padding: 0.875rem 1.25rem max(0.875rem, env(safe-area-inset-bottom));
|
|
60867
|
+
}
|
|
60868
|
+
}
|
|
60869
|
+
}
|
|
60870
|
+
|
|
60342
60871
|
/* Magic Link Form */
|
|
60343
60872
|
:where(.theme-scope) :where([data-block="event-registration"]) .er-magic-link-form {
|
|
60344
60873
|
display: flex;
|
|
@@ -67626,7 +68155,7 @@ function preset(id, verticalId, canonicalBehaviour, label, pluralLabel, descript
|
|
|
67626
68155
|
}
|
|
67627
68156
|
|
|
67628
68157
|
// ../api/src/utils/isRecord.ts
|
|
67629
|
-
function
|
|
68158
|
+
function isRecord13(value) {
|
|
67630
68159
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
67631
68160
|
}
|
|
67632
68161
|
|
|
@@ -67933,7 +68462,7 @@ function sanitizeMarks(marks) {
|
|
|
67933
68462
|
if (mark.type === "bold" || mark.type === "strong" || mark.type === "italic" || mark.type === "em") {
|
|
67934
68463
|
return [{ type: mark.type }];
|
|
67935
68464
|
}
|
|
67936
|
-
if (mark.type === "link" &&
|
|
68465
|
+
if (mark.type === "link" && isRecord13(mark.attrs) && typeof mark.attrs.href === "string") {
|
|
67937
68466
|
const attrs = { href: mark.attrs.href };
|
|
67938
68467
|
if (typeof mark.attrs.target === "string" && mark.attrs.target.trim().length > 0) {
|
|
67939
68468
|
attrs.target = mark.attrs.target;
|
|
@@ -67948,10 +68477,10 @@ function sanitizeMarks(marks) {
|
|
|
67948
68477
|
return sanitized.length > 0 ? sanitized : void 0;
|
|
67949
68478
|
}
|
|
67950
68479
|
function unwrapRichTextValue(value) {
|
|
67951
|
-
if (
|
|
68480
|
+
if (isRecord13(value) && isRecord13(value.doc)) {
|
|
67952
68481
|
return unwrapRichTextValue(value.doc);
|
|
67953
68482
|
}
|
|
67954
|
-
if (
|
|
68483
|
+
if (isRecord13(value) && value.type === "doc") {
|
|
67955
68484
|
return {
|
|
67956
68485
|
type: "doc",
|
|
67957
68486
|
content: Array.isArray(value.content) ? value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) : []
|
|
@@ -67960,7 +68489,7 @@ function unwrapRichTextValue(value) {
|
|
|
67960
68489
|
return EMPTY_SITE_BANNER_BODY;
|
|
67961
68490
|
}
|
|
67962
68491
|
function isTipTapNodeLike(value) {
|
|
67963
|
-
return
|
|
68492
|
+
return isRecord13(value) && typeof value.type === "string";
|
|
67964
68493
|
}
|
|
67965
68494
|
function coerceTipTapNode(value) {
|
|
67966
68495
|
return {
|
|
@@ -67968,9 +68497,9 @@ function coerceTipTapNode(value) {
|
|
|
67968
68497
|
...Array.isArray(value.content) ? { content: value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) } : {},
|
|
67969
68498
|
...typeof value.text === "string" ? { text: value.text } : {},
|
|
67970
68499
|
...Array.isArray(value.marks) ? {
|
|
67971
|
-
marks: value.marks.filter((mark) =>
|
|
68500
|
+
marks: value.marks.filter((mark) => isRecord13(mark) && typeof mark.type === "string").map((mark) => ({
|
|
67972
68501
|
type: mark.type,
|
|
67973
|
-
...
|
|
68502
|
+
...isRecord13(mark.attrs) ? { attrs: mark.attrs } : {}
|
|
67974
68503
|
}))
|
|
67975
68504
|
} : {}
|
|
67976
68505
|
};
|
|
@@ -68150,21 +68679,8 @@ var MultiPageUpdateResponse = z76.object({
|
|
|
68150
68679
|
});
|
|
68151
68680
|
|
|
68152
68681
|
// src/data/prefetchBlockData.ts
|
|
68153
|
-
var SUPPORTED_LOADER_ENDPOINTS2 = [
|
|
68154
|
-
"listPublishedEntries",
|
|
68155
|
-
"getPublishedEntryPreview",
|
|
68156
|
-
"listPublicEvents",
|
|
68157
|
-
"listPublicCourses",
|
|
68158
|
-
"listPublicTeamMembers",
|
|
68159
|
-
"listPublicProducts",
|
|
68160
|
-
"listPublicPasses",
|
|
68161
|
-
"listPublicMemberships",
|
|
68162
|
-
"getPublicFormById",
|
|
68163
|
-
"getPublicBookingServices",
|
|
68164
|
-
"getPublicEventDetails"
|
|
68165
|
-
];
|
|
68166
68682
|
function isSupportedLoaderEndpoint2(endpoint) {
|
|
68167
|
-
return
|
|
68683
|
+
return SUPPORTED_LOADER_ENDPOINTS.includes(endpoint);
|
|
68168
68684
|
}
|
|
68169
68685
|
var ENTRY_REF_KEYS = [
|
|
68170
68686
|
"identifier",
|
|
@@ -68173,7 +68689,7 @@ var ENTRY_REF_KEYS = [
|
|
|
68173
68689
|
"entryId",
|
|
68174
68690
|
"slug"
|
|
68175
68691
|
];
|
|
68176
|
-
function
|
|
68692
|
+
function isRecord14(value) {
|
|
68177
68693
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
68178
68694
|
}
|
|
68179
68695
|
function extractManualEntryRef(item) {
|
|
@@ -68181,7 +68697,7 @@ function extractManualEntryRef(item) {
|
|
|
68181
68697
|
const trimmed = item.trim();
|
|
68182
68698
|
return trimmed.length > 0 ? trimmed : null;
|
|
68183
68699
|
}
|
|
68184
|
-
if (!
|
|
68700
|
+
if (!isRecord14(item)) return null;
|
|
68185
68701
|
for (const key of ENTRY_REF_KEYS) {
|
|
68186
68702
|
const raw = item[key];
|
|
68187
68703
|
if (typeof raw === "string" && raw.trim().length > 0) {
|
|
@@ -68229,6 +68745,194 @@ function parseManualEntryRefs(...values) {
|
|
|
68229
68745
|
}
|
|
68230
68746
|
return void 0;
|
|
68231
68747
|
}
|
|
68748
|
+
var loaderAdapters = {
|
|
68749
|
+
listPublishedEntries: listPublishedEntries2,
|
|
68750
|
+
getPublishedEntryPreview,
|
|
68751
|
+
listPublicEvents,
|
|
68752
|
+
getPublicEventDetails,
|
|
68753
|
+
listPublicCourses,
|
|
68754
|
+
listPublicRouteCandidates,
|
|
68755
|
+
listPublicTeamMembers,
|
|
68756
|
+
listPublicProducts,
|
|
68757
|
+
listPublicPasses,
|
|
68758
|
+
listPublicMemberships,
|
|
68759
|
+
getPublicFormById,
|
|
68760
|
+
getPublicBookingServices
|
|
68761
|
+
};
|
|
68762
|
+
function readStringParam(params, key) {
|
|
68763
|
+
const value = params[key];
|
|
68764
|
+
return value && value.length > 0 ? value : void 0;
|
|
68765
|
+
}
|
|
68766
|
+
function requireStringParam(params, key, endpoint) {
|
|
68767
|
+
const value = readStringParam(params, key);
|
|
68768
|
+
if (!value) {
|
|
68769
|
+
throw new Error(`${endpoint} requires ${key} param`);
|
|
68770
|
+
}
|
|
68771
|
+
return value;
|
|
68772
|
+
}
|
|
68773
|
+
function parsePositiveIntegerParam(params, key) {
|
|
68774
|
+
const value = params[key];
|
|
68775
|
+
const parsed = value === void 0 ? void 0 : Number.parseInt(value, 10);
|
|
68776
|
+
return typeof parsed === "number" && Number.isInteger(parsed) && parsed > 0 ? parsed : void 0;
|
|
68777
|
+
}
|
|
68778
|
+
function parseEntryOrder(value) {
|
|
68779
|
+
if (value === void 0) return void 0;
|
|
68780
|
+
switch (value) {
|
|
68781
|
+
case "order":
|
|
68782
|
+
return "manual";
|
|
68783
|
+
case "newest":
|
|
68784
|
+
case "oldest":
|
|
68785
|
+
case "title":
|
|
68786
|
+
return value;
|
|
68787
|
+
default:
|
|
68788
|
+
return void 0;
|
|
68789
|
+
}
|
|
68790
|
+
}
|
|
68791
|
+
function parsePublicEventKind(value) {
|
|
68792
|
+
if (value === void 0) return void 0;
|
|
68793
|
+
switch (value) {
|
|
68794
|
+
case "all":
|
|
68795
|
+
case "courses":
|
|
68796
|
+
case "events":
|
|
68797
|
+
return value;
|
|
68798
|
+
default:
|
|
68799
|
+
return void 0;
|
|
68800
|
+
}
|
|
68801
|
+
}
|
|
68802
|
+
async function listPublishedEntries2({ client, params }) {
|
|
68803
|
+
const siteId = requireStringParam(params, "siteId", "listPublishedEntries");
|
|
68804
|
+
const type = requireStringParam(params, "type", "listPublishedEntries");
|
|
68805
|
+
const stage = readStringParam(params, "stage");
|
|
68806
|
+
const mode = readStringParam(params, "mode");
|
|
68807
|
+
const parsedEntryRefs = mode === "manual" ? parseManualEntryRefs(params.identifiers, params.entryRefs, params.entryIds) : void 0;
|
|
68808
|
+
if (mode === "manual" && (!parsedEntryRefs || parsedEntryRefs.length === 0)) {
|
|
68809
|
+
return { entries: [] };
|
|
68810
|
+
}
|
|
68811
|
+
if (mode === "manual" && parsedEntryRefs) {
|
|
68812
|
+
return await client.getEntriesByIdentifiers({
|
|
68813
|
+
siteId,
|
|
68814
|
+
contentType: type,
|
|
68815
|
+
identifiers: parsedEntryRefs,
|
|
68816
|
+
preview: stage === "preview"
|
|
68817
|
+
});
|
|
68818
|
+
}
|
|
68819
|
+
return await client.getEntries({
|
|
68820
|
+
siteId,
|
|
68821
|
+
contentType: type,
|
|
68822
|
+
limit: parsePositiveIntegerParam(params, "limit"),
|
|
68823
|
+
order: parseEntryOrder(readStringParam(params, "orderBy")),
|
|
68824
|
+
preview: stage === "preview"
|
|
68825
|
+
});
|
|
68826
|
+
}
|
|
68827
|
+
async function getPublishedEntryPreview({ client, params }) {
|
|
68828
|
+
return await client.getEntry({
|
|
68829
|
+
siteId: requireStringParam(params, "siteId", "getPublishedEntryPreview"),
|
|
68830
|
+
contentType: requireStringParam(params, "type", "getPublishedEntryPreview"),
|
|
68831
|
+
slug: requireStringParam(params, "slug", "getPublishedEntryPreview")
|
|
68832
|
+
});
|
|
68833
|
+
}
|
|
68834
|
+
async function listPublicEvents({ client, params }) {
|
|
68835
|
+
return await client.listPublicEvents({
|
|
68836
|
+
siteId: requireStringParam(params, "siteId", "listPublicEvents"),
|
|
68837
|
+
limit: parsePositiveIntegerParam(params, "limit"),
|
|
68838
|
+
from: readStringParam(params, "from"),
|
|
68839
|
+
to: readStringParam(params, "to"),
|
|
68840
|
+
afterStartsAt: readStringParam(params, "afterStartsAt"),
|
|
68841
|
+
afterId: readStringParam(params, "afterId"),
|
|
68842
|
+
stage: readStringParam(params, "stage"),
|
|
68843
|
+
categoryIds: readStringParam(params, "categoryIds"),
|
|
68844
|
+
venueId: readStringParam(params, "venueId"),
|
|
68845
|
+
staffMemberId: readStringParam(params, "staffMemberId"),
|
|
68846
|
+
kind: parsePublicEventKind(readStringParam(params, "kind")),
|
|
68847
|
+
eventSurface: readStringParam(params, "eventSurface"),
|
|
68848
|
+
eventPresets: readStringParam(params, "eventPresets"),
|
|
68849
|
+
scheduleScope: readStringParam(params, "scheduleScope"),
|
|
68850
|
+
entryId: readStringParam(params, "entryId"),
|
|
68851
|
+
seriesId: readStringParam(params, "seriesId"),
|
|
68852
|
+
includeOccurrenceId: readStringParam(params, "includeOccurrenceId")
|
|
68853
|
+
});
|
|
68854
|
+
}
|
|
68855
|
+
async function getPublicEventDetails({ client, params }) {
|
|
68856
|
+
return await client.getPublicEventDetails({
|
|
68857
|
+
siteId: requireStringParam(params, "siteId", "getPublicEventDetails"),
|
|
68858
|
+
limit: parsePositiveIntegerParam(params, "limit"),
|
|
68859
|
+
from: readStringParam(params, "from"),
|
|
68860
|
+
to: readStringParam(params, "to"),
|
|
68861
|
+
afterStartsAt: readStringParam(params, "afterStartsAt"),
|
|
68862
|
+
afterId: readStringParam(params, "afterId"),
|
|
68863
|
+
stage: readStringParam(params, "stage"),
|
|
68864
|
+
categoryIds: readStringParam(params, "categoryIds"),
|
|
68865
|
+
venueId: readStringParam(params, "venueId"),
|
|
68866
|
+
staffMemberId: readStringParam(params, "staffMemberId"),
|
|
68867
|
+
kind: readStringParam(params, "kind"),
|
|
68868
|
+
eventSurface: readStringParam(params, "eventSurface"),
|
|
68869
|
+
eventPresets: readStringParam(params, "eventPresets"),
|
|
68870
|
+
scheduleScope: readStringParam(params, "scheduleScope"),
|
|
68871
|
+
entryId: readStringParam(params, "entryId"),
|
|
68872
|
+
seriesId: readStringParam(params, "seriesId"),
|
|
68873
|
+
includeOccurrenceId: readStringParam(params, "includeOccurrenceId")
|
|
68874
|
+
});
|
|
68875
|
+
}
|
|
68876
|
+
async function listPublicCourses({ client, params }) {
|
|
68877
|
+
return await client.listPublicCourses({
|
|
68878
|
+
siteId: requireStringParam(params, "siteId", "listPublicCourses"),
|
|
68879
|
+
limit: parsePositiveIntegerParam(params, "limit"),
|
|
68880
|
+
stage: readStringParam(params, "stage")
|
|
68881
|
+
});
|
|
68882
|
+
}
|
|
68883
|
+
async function listPublicRouteCandidates({ client, params }) {
|
|
68884
|
+
const siteId = requireStringParam(params, "siteId", "listPublicRouteCandidates");
|
|
68885
|
+
const response = await client.getAllPublishedRoutes({ siteId });
|
|
68886
|
+
return {
|
|
68887
|
+
routes: response.items.flatMap((item) => {
|
|
68888
|
+
if (!item.path) return [];
|
|
68889
|
+
return [{
|
|
68890
|
+
entityId: item.entityId,
|
|
68891
|
+
path: item.path,
|
|
68892
|
+
title: item.title,
|
|
68893
|
+
kind: item.entityType,
|
|
68894
|
+
contentTypeKey: item.contentTypeKey ?? null
|
|
68895
|
+
}];
|
|
68896
|
+
})
|
|
68897
|
+
};
|
|
68898
|
+
}
|
|
68899
|
+
async function listPublicTeamMembers({ client, params }) {
|
|
68900
|
+
return await client.listPublicTeamMembers({
|
|
68901
|
+
siteId: requireStringParam(params, "siteId", "listPublicTeamMembers"),
|
|
68902
|
+
stage: readStringParam(params, "stage")
|
|
68903
|
+
});
|
|
68904
|
+
}
|
|
68905
|
+
async function listPublicProducts({ client, params }) {
|
|
68906
|
+
return await client.listPublicProducts({
|
|
68907
|
+
siteId: requireStringParam(params, "siteId", "listPublicProducts"),
|
|
68908
|
+
stage: readStringParam(params, "stage") === "preview" ? "preview" : "published",
|
|
68909
|
+
categorySelector: parsePublicProductCategorySelector(params.categorySelector)
|
|
68910
|
+
});
|
|
68911
|
+
}
|
|
68912
|
+
async function listPublicPasses({ client, params }) {
|
|
68913
|
+
return await client.listPublicPasses({
|
|
68914
|
+
siteId: requireStringParam(params, "siteId", "listPublicPasses"),
|
|
68915
|
+
categories: readStringParam(params, "categories")
|
|
68916
|
+
});
|
|
68917
|
+
}
|
|
68918
|
+
async function listPublicMemberships({ client, params }) {
|
|
68919
|
+
return await client.listPublicMemberships({
|
|
68920
|
+
siteId: requireStringParam(params, "siteId", "listPublicMemberships"),
|
|
68921
|
+
categories: readStringParam(params, "categories")
|
|
68922
|
+
});
|
|
68923
|
+
}
|
|
68924
|
+
async function getPublicFormById({ client, params }) {
|
|
68925
|
+
return await client.getPublicFormById({
|
|
68926
|
+
formId: requireStringParam(params, "formId", "getPublicFormById"),
|
|
68927
|
+
siteId: requireStringParam(params, "siteId", "getPublicFormById")
|
|
68928
|
+
});
|
|
68929
|
+
}
|
|
68930
|
+
async function getPublicBookingServices({ client, params }) {
|
|
68931
|
+
return await client.getPublicBookingServices({
|
|
68932
|
+
siteId: requireStringParam(params, "siteId", "getPublicBookingServices"),
|
|
68933
|
+
ids: readStringParam(params, "ids")
|
|
68934
|
+
});
|
|
68935
|
+
}
|
|
68232
68936
|
async function prefetchBlockData2(page, context, client, options) {
|
|
68233
68937
|
const { customBlocks } = options ?? {};
|
|
68234
68938
|
const customBlockMap = new Map(
|
|
@@ -68238,189 +68942,11 @@ async function prefetchBlockData2(page, context, client, options) {
|
|
|
68238
68942
|
apiClient: async ({ endpoint, params }) => {
|
|
68239
68943
|
if (!isSupportedLoaderEndpoint2(endpoint)) {
|
|
68240
68944
|
throw new Error(
|
|
68241
|
-
`Unsupported loader endpoint: ${endpoint}. SDK only supports: ${
|
|
68945
|
+
`Unsupported loader endpoint: ${endpoint}. SDK only supports: ${SUPPORTED_LOADER_ENDPOINTS.join(", ")}`
|
|
68242
68946
|
);
|
|
68243
68947
|
}
|
|
68244
68948
|
const resolvedParams = normalizeLoaderParams(endpoint, params, context);
|
|
68245
|
-
|
|
68246
|
-
case "listPublishedEntries": {
|
|
68247
|
-
const {
|
|
68248
|
-
siteId,
|
|
68249
|
-
type,
|
|
68250
|
-
orderBy,
|
|
68251
|
-
limit,
|
|
68252
|
-
stage,
|
|
68253
|
-
mode,
|
|
68254
|
-
entryIds,
|
|
68255
|
-
identifiers,
|
|
68256
|
-
entryRefs
|
|
68257
|
-
} = resolvedParams ?? {};
|
|
68258
|
-
if (!siteId || !type) {
|
|
68259
|
-
throw new Error("listPublishedEntries requires siteId and type params");
|
|
68260
|
-
}
|
|
68261
|
-
const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
|
|
68262
|
-
const order = orderBy === "order" ? "manual" : orderBy === "newest" || orderBy === "oldest" || orderBy === "title" ? orderBy : void 0;
|
|
68263
|
-
const parsedEntryRefs = mode === "manual" ? parseManualEntryRefs(identifiers, entryRefs, entryIds) : void 0;
|
|
68264
|
-
if (mode === "manual" && (!parsedEntryRefs || parsedEntryRefs.length === 0)) {
|
|
68265
|
-
return { entries: [] };
|
|
68266
|
-
}
|
|
68267
|
-
if (mode === "manual" && parsedEntryRefs) {
|
|
68268
|
-
return await client.getEntriesByIdentifiers({
|
|
68269
|
-
siteId,
|
|
68270
|
-
contentType: type,
|
|
68271
|
-
identifiers: parsedEntryRefs,
|
|
68272
|
-
preview: stage === "preview"
|
|
68273
|
-
});
|
|
68274
|
-
}
|
|
68275
|
-
return await client.getEntries({
|
|
68276
|
-
siteId,
|
|
68277
|
-
contentType: type,
|
|
68278
|
-
limit: parsedLimit,
|
|
68279
|
-
order,
|
|
68280
|
-
preview: stage === "preview"
|
|
68281
|
-
});
|
|
68282
|
-
}
|
|
68283
|
-
case "getPublishedEntryPreview": {
|
|
68284
|
-
const { siteId, type, slug } = resolvedParams ?? {};
|
|
68285
|
-
if (!siteId || !type || !slug) {
|
|
68286
|
-
throw new Error("getPublishedEntryPreview requires siteId, type, and slug params");
|
|
68287
|
-
}
|
|
68288
|
-
return await client.getEntry({ siteId, contentType: type, slug });
|
|
68289
|
-
}
|
|
68290
|
-
case "listPublicEvents": {
|
|
68291
|
-
const {
|
|
68292
|
-
siteId,
|
|
68293
|
-
limit,
|
|
68294
|
-
from,
|
|
68295
|
-
to,
|
|
68296
|
-
stage,
|
|
68297
|
-
categoryIds,
|
|
68298
|
-
venueId,
|
|
68299
|
-
kind,
|
|
68300
|
-
entryId,
|
|
68301
|
-
seriesId,
|
|
68302
|
-
includeOccurrenceId
|
|
68303
|
-
} = resolvedParams ?? {};
|
|
68304
|
-
if (!siteId) {
|
|
68305
|
-
throw new Error("listPublicEvents requires siteId param");
|
|
68306
|
-
}
|
|
68307
|
-
const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
|
|
68308
|
-
return await client.listPublicEvents({
|
|
68309
|
-
siteId,
|
|
68310
|
-
limit: parsedLimit,
|
|
68311
|
-
from,
|
|
68312
|
-
to,
|
|
68313
|
-
stage,
|
|
68314
|
-
categoryIds: typeof categoryIds === "string" ? categoryIds : void 0,
|
|
68315
|
-
venueId: typeof venueId === "string" ? venueId : void 0,
|
|
68316
|
-
kind: kind === "all" || kind === "courses" || kind === "events" ? kind : void 0,
|
|
68317
|
-
entryId: typeof entryId === "string" ? entryId : void 0,
|
|
68318
|
-
seriesId: typeof seriesId === "string" ? seriesId : void 0,
|
|
68319
|
-
includeOccurrenceId: typeof includeOccurrenceId === "string" ? includeOccurrenceId : void 0
|
|
68320
|
-
});
|
|
68321
|
-
}
|
|
68322
|
-
case "getPublicEventDetails": {
|
|
68323
|
-
const {
|
|
68324
|
-
siteId,
|
|
68325
|
-
limit,
|
|
68326
|
-
from,
|
|
68327
|
-
to,
|
|
68328
|
-
afterStartsAt,
|
|
68329
|
-
afterId,
|
|
68330
|
-
stage,
|
|
68331
|
-
categoryIds,
|
|
68332
|
-
venueId,
|
|
68333
|
-
staffMemberId,
|
|
68334
|
-
kind,
|
|
68335
|
-
entryId,
|
|
68336
|
-
seriesId,
|
|
68337
|
-
includeOccurrenceId
|
|
68338
|
-
} = resolvedParams ?? {};
|
|
68339
|
-
if (!siteId) {
|
|
68340
|
-
throw new Error("getPublicEventDetails requires siteId param");
|
|
68341
|
-
}
|
|
68342
|
-
const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
|
|
68343
|
-
return await client.getPublicEventDetails({
|
|
68344
|
-
siteId,
|
|
68345
|
-
limit: parsedLimit,
|
|
68346
|
-
from: typeof from === "string" ? from : void 0,
|
|
68347
|
-
to: typeof to === "string" ? to : void 0,
|
|
68348
|
-
afterStartsAt: typeof afterStartsAt === "string" ? afterStartsAt : void 0,
|
|
68349
|
-
afterId: typeof afterId === "string" ? afterId : void 0,
|
|
68350
|
-
stage: typeof stage === "string" ? stage : void 0,
|
|
68351
|
-
categoryIds: typeof categoryIds === "string" ? categoryIds : void 0,
|
|
68352
|
-
venueId: typeof venueId === "string" ? venueId : void 0,
|
|
68353
|
-
staffMemberId: typeof staffMemberId === "string" ? staffMemberId : void 0,
|
|
68354
|
-
kind: typeof kind === "string" ? kind : void 0,
|
|
68355
|
-
entryId: typeof entryId === "string" ? entryId : void 0,
|
|
68356
|
-
seriesId: typeof seriesId === "string" ? seriesId : void 0,
|
|
68357
|
-
includeOccurrenceId: typeof includeOccurrenceId === "string" ? includeOccurrenceId : void 0
|
|
68358
|
-
});
|
|
68359
|
-
}
|
|
68360
|
-
case "listPublicCourses": {
|
|
68361
|
-
const { siteId, limit, stage } = resolvedParams ?? {};
|
|
68362
|
-
if (!siteId) {
|
|
68363
|
-
throw new Error("listPublicCourses requires siteId param");
|
|
68364
|
-
}
|
|
68365
|
-
const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
|
|
68366
|
-
return await client.listPublicCourses({ siteId, limit: parsedLimit, stage });
|
|
68367
|
-
}
|
|
68368
|
-
case "listPublicTeamMembers": {
|
|
68369
|
-
const { siteId, stage } = resolvedParams ?? {};
|
|
68370
|
-
if (!siteId) {
|
|
68371
|
-
throw new Error("listPublicTeamMembers requires siteId param");
|
|
68372
|
-
}
|
|
68373
|
-
return await client.listPublicTeamMembers({
|
|
68374
|
-
siteId,
|
|
68375
|
-
stage: typeof stage === "string" ? stage : void 0
|
|
68376
|
-
});
|
|
68377
|
-
}
|
|
68378
|
-
case "listPublicProducts": {
|
|
68379
|
-
const { siteId, stage, categorySelector } = resolvedParams ?? {};
|
|
68380
|
-
if (!siteId) {
|
|
68381
|
-
throw new Error("listPublicProducts requires siteId param");
|
|
68382
|
-
}
|
|
68383
|
-
return await client.listPublicProducts({
|
|
68384
|
-
siteId,
|
|
68385
|
-
stage: stage === "preview" ? "preview" : "published",
|
|
68386
|
-
categorySelector: parsePublicProductCategorySelector(categorySelector)
|
|
68387
|
-
});
|
|
68388
|
-
}
|
|
68389
|
-
case "getPublicFormById": {
|
|
68390
|
-
const { formId, siteId } = resolvedParams ?? {};
|
|
68391
|
-
if (!formId) {
|
|
68392
|
-
throw new Error("getPublicFormById requires formId param");
|
|
68393
|
-
}
|
|
68394
|
-
if (!siteId) {
|
|
68395
|
-
throw new Error("getPublicFormById requires siteId param");
|
|
68396
|
-
}
|
|
68397
|
-
return await client.getPublicFormById({ formId, siteId });
|
|
68398
|
-
}
|
|
68399
|
-
case "getPublicBookingServices": {
|
|
68400
|
-
const { siteId, ids } = resolvedParams ?? {};
|
|
68401
|
-
if (!siteId) {
|
|
68402
|
-
throw new Error("getPublicBookingServices requires siteId param");
|
|
68403
|
-
}
|
|
68404
|
-
return await client.getPublicBookingServices({ siteId, ids });
|
|
68405
|
-
}
|
|
68406
|
-
case "listPublicPasses": {
|
|
68407
|
-
const { siteId, categories } = resolvedParams ?? {};
|
|
68408
|
-
if (!siteId) {
|
|
68409
|
-
throw new Error("listPublicPasses requires siteId param");
|
|
68410
|
-
}
|
|
68411
|
-
return await client.listPublicPasses({ siteId, categories });
|
|
68412
|
-
}
|
|
68413
|
-
case "listPublicMemberships": {
|
|
68414
|
-
const { siteId, categories } = resolvedParams ?? {};
|
|
68415
|
-
if (!siteId) {
|
|
68416
|
-
throw new Error("listPublicMemberships requires siteId param");
|
|
68417
|
-
}
|
|
68418
|
-
return await client.listPublicMemberships({ siteId, categories });
|
|
68419
|
-
}
|
|
68420
|
-
default: {
|
|
68421
|
-
throw new Error("Unhandled endpoint");
|
|
68422
|
-
}
|
|
68423
|
-
}
|
|
68949
|
+
return await loaderAdapters[endpoint]({ client, params: resolvedParams });
|
|
68424
68950
|
},
|
|
68425
68951
|
isValidEndpoint: isSupportedLoaderEndpoint2,
|
|
68426
68952
|
onError: (error, { block, loader }) => {
|
|
@@ -68676,6 +69202,76 @@ function resolveSiteCustomBlocks(site) {
|
|
|
68676
69202
|
return void 0;
|
|
68677
69203
|
}
|
|
68678
69204
|
|
|
69205
|
+
// src/rendering/helpers/pageRuntimeSupport.ts
|
|
69206
|
+
function buildSiteRenderSupport(site, mediaAssets) {
|
|
69207
|
+
const customBlocks = resolveSiteCustomBlocks(site);
|
|
69208
|
+
return {
|
|
69209
|
+
theme: site.theme,
|
|
69210
|
+
site: site.site,
|
|
69211
|
+
sdkConfig: site.sdkConfig ?? null,
|
|
69212
|
+
bookingOfferingPresets: site.bookingOfferingPresets ?? [],
|
|
69213
|
+
...customBlocks ? { customBlocks } : {},
|
|
69214
|
+
supabaseUrl: site.supabaseUrl,
|
|
69215
|
+
routeMap: site.routes,
|
|
69216
|
+
pagesByIdentifier: site.pagesByIdentifier,
|
|
69217
|
+
entriesByIdentifier: site.entriesByIdentifier,
|
|
69218
|
+
...mediaAssets ? { mediaAssets } : {}
|
|
69219
|
+
};
|
|
69220
|
+
}
|
|
69221
|
+
function collectMediaAssetSidecar(mediaAssets) {
|
|
69222
|
+
return Array.isArray(mediaAssets) && mediaAssets.length > 0 ? mediaAssets : void 0;
|
|
69223
|
+
}
|
|
69224
|
+
function convertPageResponseBlock(block) {
|
|
69225
|
+
if (!isRecord15(block)) {
|
|
69226
|
+
throw new Error("Invalid block format in page API response");
|
|
69227
|
+
}
|
|
69228
|
+
if (typeof block.id !== "string" && block.id !== null) {
|
|
69229
|
+
throw new Error(`Invalid block id in page: expected string or null, got ${typeof block.id}`);
|
|
69230
|
+
}
|
|
69231
|
+
if (typeof block.kind !== "string") {
|
|
69232
|
+
throw new Error(`Invalid block kind in page: expected string, got ${typeof block.kind}`);
|
|
69233
|
+
}
|
|
69234
|
+
if (typeof block.purpose !== "string") {
|
|
69235
|
+
throw new Error(`Invalid block purpose in page: expected string, got ${typeof block.purpose}`);
|
|
69236
|
+
}
|
|
69237
|
+
return {
|
|
69238
|
+
id: block.id,
|
|
69239
|
+
kind: block.kind,
|
|
69240
|
+
purpose: block.purpose,
|
|
69241
|
+
content: sanitizeSdkRuntimeBlockContent(block.kind, readContentRecord(block.content) ?? {}),
|
|
69242
|
+
draftContent: sanitizeNullableSdkRuntimeBlockContent(
|
|
69243
|
+
block.kind,
|
|
69244
|
+
readNestedContentRecord(block.draftContent)
|
|
69245
|
+
)
|
|
69246
|
+
};
|
|
69247
|
+
}
|
|
69248
|
+
function buildPageOutline(input) {
|
|
69249
|
+
return {
|
|
69250
|
+
name: input.name,
|
|
69251
|
+
path: input.path ?? input.fallbackPath,
|
|
69252
|
+
purpose: input.purpose,
|
|
69253
|
+
blocks: input.blocks.map(convertPageResponseBlock)
|
|
69254
|
+
};
|
|
69255
|
+
}
|
|
69256
|
+
function isRecord15(value) {
|
|
69257
|
+
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
69258
|
+
}
|
|
69259
|
+
function readContentRecord(value) {
|
|
69260
|
+
return isRecord15(value) ? value : void 0;
|
|
69261
|
+
}
|
|
69262
|
+
function readNestedContentRecord(value) {
|
|
69263
|
+
if (!isRecord15(value)) return null;
|
|
69264
|
+
return readContentRecord(value.data) ?? null;
|
|
69265
|
+
}
|
|
69266
|
+
function sanitizeSdkRuntimeBlockContent(blockKind, content) {
|
|
69267
|
+
if (blockKind !== "block.newsletter-signup") return content;
|
|
69268
|
+
const sanitized = sanitizeNewsletterSignupPublicContent(content);
|
|
69269
|
+
return isRecord15(sanitized) ? sanitized : {};
|
|
69270
|
+
}
|
|
69271
|
+
function sanitizeNullableSdkRuntimeBlockContent(blockKind, content) {
|
|
69272
|
+
return content ? sanitizeSdkRuntimeBlockContent(blockKind, content) : null;
|
|
69273
|
+
}
|
|
69274
|
+
|
|
68679
69275
|
// ../content-model/src/routeTemplate.ts
|
|
68680
69276
|
var ROUTE_TEMPLATE_SLUG_SEGMENT = "{slug}";
|
|
68681
69277
|
var InvalidRouteTemplateError = class extends Error {
|
|
@@ -68821,8 +69417,10 @@ async function loadContent(params) {
|
|
|
68821
69417
|
}
|
|
68822
69418
|
const site = siteResult.value;
|
|
68823
69419
|
const contentResponse = contentResult.value;
|
|
68824
|
-
const
|
|
68825
|
-
|
|
69420
|
+
const support = buildSiteRenderSupport(
|
|
69421
|
+
site,
|
|
69422
|
+
collectMediaAssetSidecar(contentResponse.mediaAssets)
|
|
69423
|
+
);
|
|
68826
69424
|
if (isEntryResponse(contentResponse)) {
|
|
68827
69425
|
const entryData = contentResponse.entry;
|
|
68828
69426
|
const draftContent = entryData.draftContent;
|
|
@@ -68848,13 +69446,14 @@ async function loadContent(params) {
|
|
|
68848
69446
|
entry,
|
|
68849
69447
|
{ siteId, preview },
|
|
68850
69448
|
client,
|
|
68851
|
-
{ customBlocks }
|
|
69449
|
+
{ customBlocks: support.customBlocks }
|
|
68852
69450
|
);
|
|
68853
69451
|
return {
|
|
68854
69452
|
type: "entry",
|
|
68855
69453
|
entry,
|
|
68856
69454
|
templatePage,
|
|
68857
69455
|
resolvedData: resolvedData2,
|
|
69456
|
+
bookingOfferingPresets: support.bookingOfferingPresets,
|
|
68858
69457
|
dataContext: {
|
|
68859
69458
|
contentEntry: {
|
|
68860
69459
|
...entry.content ?? {},
|
|
@@ -68866,29 +69465,29 @@ async function loadContent(params) {
|
|
|
68866
69465
|
_contentTypeSlug: entry.type
|
|
68867
69466
|
}
|
|
68868
69467
|
},
|
|
68869
|
-
theme:
|
|
69468
|
+
theme: support.theme,
|
|
68870
69469
|
siteId,
|
|
68871
|
-
...customBlocks ? { customBlocks } : {},
|
|
68872
|
-
site:
|
|
68873
|
-
sdkConfig:
|
|
68874
|
-
supabaseUrl:
|
|
68875
|
-
routeMap:
|
|
68876
|
-
pagesByIdentifier:
|
|
68877
|
-
entriesByIdentifier:
|
|
68878
|
-
...mediaAssets ? { mediaAssets } : {}
|
|
69470
|
+
...support.customBlocks ? { customBlocks: support.customBlocks } : {},
|
|
69471
|
+
site: support.site,
|
|
69472
|
+
sdkConfig: support.sdkConfig,
|
|
69473
|
+
supabaseUrl: support.supabaseUrl,
|
|
69474
|
+
routeMap: support.routeMap,
|
|
69475
|
+
pagesByIdentifier: support.pagesByIdentifier,
|
|
69476
|
+
entriesByIdentifier: support.entriesByIdentifier,
|
|
69477
|
+
...support.mediaAssets ? { mediaAssets: support.mediaAssets } : {}
|
|
68879
69478
|
};
|
|
68880
69479
|
}
|
|
68881
69480
|
const { page: pageData } = contentResponse;
|
|
68882
69481
|
const pageRecord = pageData;
|
|
68883
69482
|
const canonicalPagePath = pageData.path ?? pageRecord.path ?? "/";
|
|
68884
69483
|
const draftPagePath = pageRecord.draftPath ?? pageRecord.path ?? canonicalPagePath;
|
|
68885
|
-
const
|
|
68886
|
-
const pageOutline = {
|
|
69484
|
+
const pageOutline = buildPageOutline({
|
|
68887
69485
|
name: pageData.name,
|
|
68888
69486
|
path: canonicalPagePath,
|
|
69487
|
+
fallbackPath: "/",
|
|
68889
69488
|
purpose: pageData.purpose,
|
|
68890
|
-
blocks
|
|
68891
|
-
};
|
|
69489
|
+
blocks: pageData.blocks
|
|
69490
|
+
});
|
|
68892
69491
|
const resolvedData = await prefetchBlockData2(
|
|
68893
69492
|
pageOutline,
|
|
68894
69493
|
{
|
|
@@ -68897,7 +69496,7 @@ async function loadContent(params) {
|
|
|
68897
69496
|
previewStage: preview ? "preview" : "published"
|
|
68898
69497
|
},
|
|
68899
69498
|
client,
|
|
68900
|
-
{ customBlocks }
|
|
69499
|
+
{ customBlocks: support.customBlocks }
|
|
68901
69500
|
);
|
|
68902
69501
|
return {
|
|
68903
69502
|
type: "page",
|
|
@@ -68918,56 +69517,23 @@ async function loadContent(params) {
|
|
|
68918
69517
|
ogImageId: pageRecord.ogImageId ?? null
|
|
68919
69518
|
},
|
|
68920
69519
|
page: pageOutline,
|
|
68921
|
-
theme:
|
|
69520
|
+
theme: support.theme,
|
|
68922
69521
|
siteId,
|
|
68923
|
-
...customBlocks ? { customBlocks } : {},
|
|
69522
|
+
...support.customBlocks ? { customBlocks: support.customBlocks } : {},
|
|
68924
69523
|
resolvedData,
|
|
68925
|
-
|
|
68926
|
-
|
|
68927
|
-
|
|
68928
|
-
|
|
68929
|
-
|
|
68930
|
-
|
|
68931
|
-
|
|
69524
|
+
bookingOfferingPresets: support.bookingOfferingPresets,
|
|
69525
|
+
site: support.site,
|
|
69526
|
+
sdkConfig: support.sdkConfig,
|
|
69527
|
+
supabaseUrl: support.supabaseUrl,
|
|
69528
|
+
routeMap: support.routeMap,
|
|
69529
|
+
pagesByIdentifier: support.pagesByIdentifier,
|
|
69530
|
+
entriesByIdentifier: support.entriesByIdentifier,
|
|
69531
|
+
...support.mediaAssets ? { mediaAssets: support.mediaAssets } : {}
|
|
68932
69532
|
};
|
|
68933
69533
|
}
|
|
68934
69534
|
function isEntryResponse(response) {
|
|
68935
69535
|
return "entry" in response;
|
|
68936
69536
|
}
|
|
68937
|
-
function validateAndConvertBlock(block, source) {
|
|
68938
|
-
if (!block || typeof block !== "object") {
|
|
68939
|
-
throw new Error(`Invalid block format in ${source} API response`);
|
|
68940
|
-
}
|
|
68941
|
-
const blockRecord = block;
|
|
68942
|
-
const kindField = source === "template" ? "blockKind" : "kind";
|
|
68943
|
-
const kindValue = blockRecord[kindField];
|
|
68944
|
-
if (typeof blockRecord.id !== "string" && blockRecord.id !== null) {
|
|
68945
|
-
throw new Error(`Invalid block id in ${source}: expected string or null, got ${typeof blockRecord.id}`);
|
|
68946
|
-
}
|
|
68947
|
-
if (typeof kindValue !== "string") {
|
|
68948
|
-
throw new Error(`Invalid block ${kindField} in ${source}: expected string, got ${typeof kindValue}`);
|
|
68949
|
-
}
|
|
68950
|
-
if (source === "page") {
|
|
68951
|
-
if (typeof blockRecord.purpose !== "string") {
|
|
68952
|
-
throw new Error(`Invalid block purpose in ${source}: expected string, got ${typeof blockRecord.purpose}`);
|
|
68953
|
-
}
|
|
68954
|
-
const content2 = blockRecord.content ?? {};
|
|
68955
|
-
return {
|
|
68956
|
-
id: blockRecord.id,
|
|
68957
|
-
kind: kindValue,
|
|
68958
|
-
purpose: blockRecord.purpose,
|
|
68959
|
-
content: content2
|
|
68960
|
-
};
|
|
68961
|
-
}
|
|
68962
|
-
const scope = blockRecord.scope;
|
|
68963
|
-
const content = blockRecord.content ?? {};
|
|
68964
|
-
return {
|
|
68965
|
-
id: blockRecord.id,
|
|
68966
|
-
kind: kindValue,
|
|
68967
|
-
purpose: scope === "entry" ? "entry-content" : "template-layout",
|
|
68968
|
-
content
|
|
68969
|
-
};
|
|
68970
|
-
}
|
|
68971
69537
|
async function processEntryTemplate(templates, entrySlots, entry, context, client, options) {
|
|
68972
69538
|
const template = templates?.[0];
|
|
68973
69539
|
if (!template || !template.blocks?.length) {
|
|
@@ -69011,7 +69577,10 @@ async function processEntryTemplate(templates, entrySlots, entry, context, clien
|
|
|
69011
69577
|
return { templatePage, resolvedData };
|
|
69012
69578
|
}
|
|
69013
69579
|
function resolveTemplateBlock(block, bindingContext) {
|
|
69014
|
-
const rawContent =
|
|
69580
|
+
const rawContent = sanitizeSdkRuntimeBlockContent(
|
|
69581
|
+
block.blockKind,
|
|
69582
|
+
block.content ?? {}
|
|
69583
|
+
);
|
|
69015
69584
|
const baseContent = normalizeBindingOutput2(rawContent);
|
|
69016
69585
|
if (block.scope === "template") {
|
|
69017
69586
|
return {
|
|
@@ -69214,6 +69783,7 @@ function PageContent({
|
|
|
69214
69783
|
themeTokens: providedTokens,
|
|
69215
69784
|
siteId,
|
|
69216
69785
|
resolvedData,
|
|
69786
|
+
bookingOfferingPresets,
|
|
69217
69787
|
routeMap,
|
|
69218
69788
|
pagesByIdentifier,
|
|
69219
69789
|
entriesByIdentifier,
|
|
@@ -69246,6 +69816,7 @@ function PageContent({
|
|
|
69246
69816
|
portalToken,
|
|
69247
69817
|
previewToken,
|
|
69248
69818
|
resolvedData,
|
|
69819
|
+
bookingOfferingPresets: bookingOfferingPresets ?? [],
|
|
69249
69820
|
routes: routeMap,
|
|
69250
69821
|
pagesByIdentifier,
|
|
69251
69822
|
entriesByIdentifier,
|
|
@@ -69283,15 +69854,15 @@ function Page(props2) {
|
|
|
69283
69854
|
var lazyBlockOverrideSymbol = /* @__PURE__ */ Symbol.for("riverbankcms.sdk.lazyBlockOverride");
|
|
69284
69855
|
|
|
69285
69856
|
// src/rendering/overrideResolution.ts
|
|
69286
|
-
function
|
|
69857
|
+
function isRecord16(value) {
|
|
69287
69858
|
return typeof value === "object" && value !== null;
|
|
69288
69859
|
}
|
|
69289
69860
|
function isBlockOutlineLike(value) {
|
|
69290
69861
|
const id = value.id;
|
|
69291
|
-
return typeof value.kind === "string" && (typeof id === "string" || id === null) && (typeof value.purpose === "string" ||
|
|
69862
|
+
return typeof value.kind === "string" && (typeof id === "string" || id === null) && (typeof value.purpose === "string" || isRecord16(value.content) || isRecord16(value.draftContent) || isRecord16(value.bindings));
|
|
69292
69863
|
}
|
|
69293
69864
|
function collectBlockKindsFromValue(value, usedKinds, seen) {
|
|
69294
|
-
if (!
|
|
69865
|
+
if (!isRecord16(value)) return;
|
|
69295
69866
|
if (seen.has(value)) return;
|
|
69296
69867
|
seen.add(value);
|
|
69297
69868
|
if (isBlockOutlineLike(value)) {
|
|
@@ -69340,7 +69911,7 @@ function selectOverrideKeysForUsedKinds(usedKinds, entries) {
|
|
|
69340
69911
|
return selectedKeys;
|
|
69341
69912
|
}
|
|
69342
69913
|
function isLazyRegistration(registration) {
|
|
69343
|
-
return
|
|
69914
|
+
return isRecord16(registration) && registration[lazyBlockOverrideSymbol] === true;
|
|
69344
69915
|
}
|
|
69345
69916
|
async function resolveOverrideComponent(registration) {
|
|
69346
69917
|
if (isLazyRegistration(registration)) {
|
|
@@ -70342,7 +70913,7 @@ var CircuitOpenError = class extends Error {
|
|
|
70342
70913
|
};
|
|
70343
70914
|
|
|
70344
70915
|
// src/version.ts
|
|
70345
|
-
var SDK_VERSION = "0.
|
|
70916
|
+
var SDK_VERSION = "0.88.0";
|
|
70346
70917
|
|
|
70347
70918
|
// src/next/content-load-failure.ts
|
|
70348
70919
|
var SdkContentLoadError = RiverbankContentLoadError;
|
|
@@ -70712,6 +71283,7 @@ function createCatchAllPage(options) {
|
|
|
70712
71283
|
apiBaseUrl,
|
|
70713
71284
|
portalToken,
|
|
70714
71285
|
resolvedData: content.resolvedData,
|
|
71286
|
+
bookingOfferingPresets: content.bookingOfferingPresets,
|
|
70715
71287
|
blockOverrides: resolvedBlockOverrides,
|
|
70716
71288
|
sdkConfig: content.sdkConfig,
|
|
70717
71289
|
supabaseUrl: content.supabaseUrl,
|
|
@@ -70739,6 +71311,7 @@ function createCatchAllPage(options) {
|
|
|
70739
71311
|
apiBaseUrl,
|
|
70740
71312
|
portalToken,
|
|
70741
71313
|
resolvedData: content.resolvedData,
|
|
71314
|
+
bookingOfferingPresets: content.bookingOfferingPresets,
|
|
70742
71315
|
blockOverrides: resolvedBlockOverrides,
|
|
70743
71316
|
sdkConfig: content.sdkConfig,
|
|
70744
71317
|
supabaseUrl: content.supabaseUrl,
|
|
@@ -71716,10 +72289,16 @@ function createRiverbankClient(config) {
|
|
|
71716
72289
|
limit,
|
|
71717
72290
|
from,
|
|
71718
72291
|
to,
|
|
72292
|
+
afterStartsAt,
|
|
72293
|
+
afterId,
|
|
71719
72294
|
stage,
|
|
71720
72295
|
categoryIds,
|
|
71721
72296
|
venueId,
|
|
72297
|
+
staffMemberId,
|
|
71722
72298
|
kind,
|
|
72299
|
+
eventSurface,
|
|
72300
|
+
eventPresets,
|
|
72301
|
+
scheduleScope,
|
|
71723
72302
|
entryId,
|
|
71724
72303
|
seriesId,
|
|
71725
72304
|
includeOccurrenceId,
|
|
@@ -71728,7 +72307,7 @@ function createRiverbankClient(config) {
|
|
|
71728
72307
|
if (!siteId) {
|
|
71729
72308
|
throw new Error("listPublicEvents() requires siteId");
|
|
71730
72309
|
}
|
|
71731
|
-
const cacheKey = `public-events:${siteId}:${limit ?? ""}:${from ?? ""}:${to ?? ""}:${stage ?? ""}:${categoryIds ?? ""}:${venueId ?? ""}:${kind ?? ""}:${entryId ?? ""}:${seriesId ?? ""}:${includeOccurrenceId ?? ""}`;
|
|
72310
|
+
const cacheKey = `public-events:${siteId}:${limit ?? ""}:${from ?? ""}:${to ?? ""}:${afterStartsAt ?? ""}:${afterId ?? ""}:${stage ?? ""}:${categoryIds ?? ""}:${venueId ?? ""}:${staffMemberId ?? ""}:${kind ?? ""}:${eventSurface ?? ""}:${eventPresets ?? ""}:${scheduleScope ?? ""}:${entryId ?? ""}:${seriesId ?? ""}:${includeOccurrenceId ?? ""}`;
|
|
71732
72311
|
return resilientFetchData(
|
|
71733
72312
|
cacheKey,
|
|
71734
72313
|
async (sig) => {
|
|
@@ -71737,10 +72316,16 @@ function createRiverbankClient(config) {
|
|
|
71737
72316
|
...typeof limit === "number" && { limit: String(limit) },
|
|
71738
72317
|
...from && { from },
|
|
71739
72318
|
...to && { to },
|
|
72319
|
+
...afterStartsAt && { afterStartsAt },
|
|
72320
|
+
...afterId && { afterId },
|
|
71740
72321
|
...stage && { stage },
|
|
71741
72322
|
...categoryIds && { categoryIds },
|
|
71742
72323
|
...venueId && { venueId },
|
|
72324
|
+
...staffMemberId && { staffMemberId },
|
|
71743
72325
|
...kind && { kind },
|
|
72326
|
+
...eventSurface && { eventSurface },
|
|
72327
|
+
...eventPresets && { eventPresets },
|
|
72328
|
+
...scheduleScope && { scheduleScope },
|
|
71744
72329
|
...entryId && { entryId },
|
|
71745
72330
|
...seriesId && { seriesId },
|
|
71746
72331
|
...includeOccurrenceId && { includeOccurrenceId }
|
|
@@ -71767,6 +72352,9 @@ function createRiverbankClient(config) {
|
|
|
71767
72352
|
venueId,
|
|
71768
72353
|
staffMemberId,
|
|
71769
72354
|
kind,
|
|
72355
|
+
eventSurface,
|
|
72356
|
+
eventPresets,
|
|
72357
|
+
scheduleScope,
|
|
71770
72358
|
entryId,
|
|
71771
72359
|
seriesId,
|
|
71772
72360
|
includeOccurrenceId,
|
|
@@ -71775,7 +72363,7 @@ function createRiverbankClient(config) {
|
|
|
71775
72363
|
if (!siteId) {
|
|
71776
72364
|
throw new Error("getPublicEventDetails() requires siteId");
|
|
71777
72365
|
}
|
|
71778
|
-
const cacheKey = `public-event-details:${siteId}:${limit ?? ""}:${from ?? ""}:${to ?? ""}:${afterStartsAt ?? ""}:${afterId ?? ""}:${stage ?? ""}:${categoryIds ?? ""}:${venueId ?? ""}:${staffMemberId ?? ""}:${kind ?? ""}:${entryId ?? ""}:${seriesId ?? ""}:${includeOccurrenceId ?? ""}`;
|
|
72366
|
+
const cacheKey = `public-event-details:${siteId}:${limit ?? ""}:${from ?? ""}:${to ?? ""}:${afterStartsAt ?? ""}:${afterId ?? ""}:${stage ?? ""}:${categoryIds ?? ""}:${venueId ?? ""}:${staffMemberId ?? ""}:${kind ?? ""}:${eventSurface ?? ""}:${eventPresets ?? ""}:${scheduleScope ?? ""}:${entryId ?? ""}:${seriesId ?? ""}:${includeOccurrenceId ?? ""}`;
|
|
71779
72367
|
return resilientFetchData(
|
|
71780
72368
|
cacheKey,
|
|
71781
72369
|
async (sig) => {
|
|
@@ -71798,6 +72386,9 @@ function createRiverbankClient(config) {
|
|
|
71798
72386
|
...venueId && { venueId },
|
|
71799
72387
|
...staffMemberId && { staffMemberId },
|
|
71800
72388
|
...kind && { kind },
|
|
72389
|
+
...eventSurface && { eventSurface },
|
|
72390
|
+
...eventPresets && { eventPresets },
|
|
72391
|
+
...scheduleScope && { scheduleScope },
|
|
71801
72392
|
...entryId && { entryId },
|
|
71802
72393
|
...seriesId && { seriesId },
|
|
71803
72394
|
...includeOccurrenceId && { includeOccurrenceId }
|