@riverbankcms/sdk 0.85.0 → 0.89.1
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-JDR64FEC.mjs} +3 -3
- package/dist/{PreviewEditorUI-WHMCRJGM.mjs → PreviewEditorUI-67TMJMAF.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-ZBEMRV7N.mjs +8 -0
- package/dist/_dts/api/src/accessAdmin.d.ts +7 -0
- package/dist/_dts/api/src/endpoints.d.ts +66 -14
- package/dist/_dts/api/src/index.d.ts +5 -2
- 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/siteManagementEndpoints.d.ts +5 -1
- package/dist/_dts/api/src/siteMembers.d.ts +6 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +1 -13
- package/dist/_dts/api/src/types.d.ts +7 -4
- 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/icons/cta.d.ts +3 -3
- package/dist/_dts/blocks/src/system/icons/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/icons/registry.d.ts +2 -2
- package/dist/_dts/blocks/src/system/icons/semantic.d.ts +3 -3
- package/dist/_dts/blocks/src/system/icons/svg.d.ts +72 -0
- 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 +11 -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/hooks/loadStateError.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableDates.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableDates.state.d.ts +55 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableSlots.state.d.ts +39 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useBookingFormConfig.d.ts +4 -27
- package/dist/_dts/blocks/src/system/runtime/hooks/useBookingFormConfig.state.d.ts +40 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useCalendarEvents.state.d.ts +20 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventFilters.state.d.ts +31 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.d.ts +3 -3
- package/dist/_dts/blocks/src/system/runtime/hooks/useEventPagination.state.d.ts +39 -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/EventPaginatedListView.client.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.client.state.d.ts +24 -2
- 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/nodes/shared/MagicLinkForm.state.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/shared/components/ModalShell.d.ts +5 -1
- package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.state.d.ts +35 -0
- package/dist/_dts/blocks/src/system/runtime/shared/utils/formatting.d.ts +1 -1
- package/dist/_dts/content-model/src/entry-slots/types.d.ts +54 -0
- package/dist/_dts/content-model/src/referenceFields.d.ts +1 -1
- package/dist/_dts/core/src/branded.d.ts +7 -0
- 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/core/src/index.d.ts +1 -0
- package/dist/_dts/core/src/site-route-target.d.ts +40 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +705 -17
- package/dist/_dts/editor-blocks/src/widgets/reference/loaders.d.ts +3 -1
- package/dist/_dts/media-core/src/fileDomain.d.ts +4 -0
- package/dist/_dts/sdk/src/client/runtimeCachePolicy.d.ts +160 -0
- package/dist/_dts/sdk/src/client/types.d.ts +35 -1
- 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/index.d.ts +3 -1
- 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/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-PYDHOMEO.mjs → chunk-7N46MZHI.mjs} +1 -1
- package/dist/{chunk-ZR2GQK2A.mjs → chunk-7YUAXONX.mjs} +1880 -588
- package/dist/{chunk-4QNLOTES.mjs → chunk-F645A5UV.mjs} +76 -14
- package/dist/{chunk-OCGTXHSO.mjs → chunk-HKJQERFR.mjs} +7 -7
- package/dist/{chunk-NFWGLRZZ.mjs → chunk-TGBJWKMP.mjs} +37 -3
- package/dist/{chunk-WFPYN7KA.mjs → chunk-ZQRBLCW5.mjs} +2 -2
- package/dist/cli/index.mjs +1075 -126
- package/dist/client/{accordion-2UZPBMYM.mjs → accordion-MUCVNGQ7.mjs} +2 -2
- package/dist/client/{bookingForm-36CWQUMV.mjs → bookingForm-PKD6EFIE.mjs} +193 -77
- package/dist/client/bookings.mjs +487 -197
- package/dist/client/{carousel-QH77HR6X.mjs → carousel-3TKQSNJC.mjs} +4 -3
- package/dist/client/cart-6XHSZK23.mjs +19 -0
- package/dist/client/checkout-FVSPM6FI.mjs +19 -0
- package/dist/client/{chunk-ZE5G642V.mjs → chunk-25W2EQUN.mjs} +75 -1
- package/dist/client/chunk-6N7YRNYU.mjs +183 -0
- package/dist/client/{chunk-4OXKTA3D.mjs → chunk-7DH35FGA.mjs} +2 -2
- package/dist/client/{chunk-3C2VTPWI.mjs → chunk-CQKKFEQD.mjs} +363 -66
- package/dist/client/{chunk-7UCLJ5SP.mjs → chunk-EY42X22F.mjs} +4 -7
- package/dist/client/{chunk-SYIJ5JO2.mjs → chunk-FHU6PFPM.mjs} +1 -1
- package/dist/client/{chunk-ZKUO52W3.mjs → chunk-LQFDYWPJ.mjs} +1 -1
- package/dist/client/chunk-RSQWWUAD.mjs +390 -0
- package/dist/client/{chunk-UDNSI5PY.mjs → chunk-STJ2NCQM.mjs} +2 -3
- package/dist/client/{chunk-VGDBVNOO.mjs → chunk-UQFY4AHX.mjs} +511 -406
- package/dist/client/{chunk-F5VRX5Y6.mjs → chunk-VGLXACVK.mjs} +1 -1
- package/dist/client/{chunk-DVNUDUVT.mjs → chunk-WBQG7VJA.mjs} +4 -1
- package/dist/client/{chunk-52CGCQ7B.mjs → chunk-ZJZZA5EP.mjs} +10 -80
- package/dist/client/{chunk-XSV6KW4D.mjs → chunk-ZT5XE7FK.mjs} +1 -1
- package/dist/client/client.mjs +5820 -4782
- package/dist/client/{courseRegistration-TMKU6ABO.mjs → courseRegistration-ATZSYDHM.mjs} +7 -7
- package/dist/client/{eventCalendar-G6TI32X6.mjs → eventCalendar-6T2UGKKP.mjs} +11 -11
- package/dist/client/{eventCombined-SCKEMNAR.mjs → eventCombined-Q4VANXVF.mjs} +11 -11
- package/dist/client/{eventDetails-XPIFXXPK.mjs → eventDetails-DW37E7VW.mjs} +11 -11
- package/dist/client/{eventListing-7QFMEMGT.mjs → eventListing-XURTSAUW.mjs} +11 -11
- package/dist/client/{eventRegistration-TOODSZUI.mjs → eventRegistration-MRKEVAXW.mjs} +11 -11
- package/dist/client/{form-MTCMVCZT.mjs → form-WZZFFGMU.mjs} +3 -3
- package/dist/client/{headerSection-Y5TMR3TW.mjs → headerSection-EQYVQBLM.mjs} +4 -4
- package/dist/client/hooks.mjs +1700 -1412
- package/dist/client/{locationMap-RH2LG7FZ.mjs → locationMap-MFF5VAZR.mjs} +3 -4
- package/dist/client/{newsletterForm-PCAIPFMA.mjs → newsletterForm-JQ77UYIE.mjs} +127 -43
- package/dist/client/{productDetail-OIGDR4YE.mjs → productDetail-25LMT3IZ.mjs} +9 -9
- package/dist/client/{productList-4MA5S2CX.mjs → productList-5ABEMKUG.mjs} +9 -9
- package/dist/client/rendering/client.mjs +3884 -3722
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +6774 -6331
- package/dist/client/shop-OMMQZ6YO.mjs +21 -0
- package/dist/preview-next/before-render.mjs +76 -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 +76 -14
- package/dist/{sdk-runtime-QLOCYKVU.mjs → sdk-runtime-WNLBZ3ZH.mjs} +6 -6
- package/dist/server/components.mjs +2579 -2548
- package/dist/server/config-validation.mjs +1737 -1461
- package/dist/server/config.mjs +1737 -1461
- package/dist/server/data.mjs +1701 -1413
- package/dist/server/index.mjs +1048 -400
- package/dist/server/next.mjs +3602 -2858
- package/dist/server/page-converter.mjs +2193 -1169
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +2770 -2742
- package/dist/server/rendering.mjs +2961 -2886
- package/dist/server/routing.mjs +2186 -1508
- package/dist/server/server.mjs +2237 -1287
- package/dist/server/theme-bridge.mjs +260 -0
- package/dist/styles/index.css +258 -0
- package/package.json +2 -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-3DTWLTXM.mjs +0 -204
- package/dist/client/chunk-I2MMZO53.mjs +0 -6
- package/dist/client/shop-WXSYV5QO.mjs +0 -21
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// src/config/validation.ts
|
|
2
|
-
import { z as
|
|
2
|
+
import { z as z74 } from "zod";
|
|
3
3
|
|
|
4
4
|
// ../api/src/apiEndpointTypes.ts
|
|
5
5
|
function blockedDemoMutationPolicy(classification, publicMessage) {
|
|
@@ -754,6 +754,64 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
754
754
|
auth: "user",
|
|
755
755
|
responseKind: "json"
|
|
756
756
|
},
|
|
757
|
+
listMailchimpAudiences: {
|
|
758
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences",
|
|
759
|
+
method: "GET",
|
|
760
|
+
tags: [TAG_TEMPLATES.site],
|
|
761
|
+
auth: "user",
|
|
762
|
+
responseKind: "json",
|
|
763
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
764
|
+
},
|
|
765
|
+
getMailchimpSignupSyncHealth: {
|
|
766
|
+
path: "/sites/{siteId}/integrations/mailchimp/signup-sync-health",
|
|
767
|
+
method: "GET",
|
|
768
|
+
tags: [TAG_TEMPLATES.site],
|
|
769
|
+
auth: "user",
|
|
770
|
+
responseKind: "json",
|
|
771
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
772
|
+
},
|
|
773
|
+
getMailchimpConnection: {
|
|
774
|
+
path: "/sites/{siteId}/integrations/mailchimp/connection",
|
|
775
|
+
method: "GET",
|
|
776
|
+
tags: [TAG_TEMPLATES.site],
|
|
777
|
+
auth: "user",
|
|
778
|
+
responseKind: "json",
|
|
779
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
780
|
+
},
|
|
781
|
+
startMailchimpOAuth: {
|
|
782
|
+
path: "/sites/{siteId}/integrations/mailchimp/oauth/start",
|
|
783
|
+
method: "POST",
|
|
784
|
+
tags: [TAG_TEMPLATES.site],
|
|
785
|
+
auth: "user",
|
|
786
|
+
responseKind: "json",
|
|
787
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
788
|
+
errors: ["auth:forbidden", "validation:invalid_input", "server:internal_error"]
|
|
789
|
+
},
|
|
790
|
+
refreshMailchimpAudiences: {
|
|
791
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences/refresh",
|
|
792
|
+
method: "POST",
|
|
793
|
+
tags: [TAG_TEMPLATES.site],
|
|
794
|
+
auth: "user",
|
|
795
|
+
responseKind: "json",
|
|
796
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
797
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
798
|
+
},
|
|
799
|
+
disconnectMailchimp: {
|
|
800
|
+
path: "/sites/{siteId}/integrations/mailchimp/disconnect",
|
|
801
|
+
method: "POST",
|
|
802
|
+
tags: [TAG_TEMPLATES.site],
|
|
803
|
+
auth: "user",
|
|
804
|
+
responseKind: "json",
|
|
805
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
806
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
807
|
+
},
|
|
808
|
+
mailchimpOAuthCallback: {
|
|
809
|
+
path: "/auth/mailchimp/callback",
|
|
810
|
+
method: "GET",
|
|
811
|
+
auth: "public",
|
|
812
|
+
responseKind: "void",
|
|
813
|
+
errors: []
|
|
814
|
+
},
|
|
757
815
|
createNewsletterList: {
|
|
758
816
|
path: "/sites/{siteId}/newsletter/lists",
|
|
759
817
|
method: "POST",
|
|
@@ -1755,6 +1813,24 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
1755
1813
|
auth: "user",
|
|
1756
1814
|
responseKind: "json"
|
|
1757
1815
|
},
|
|
1816
|
+
resendSiteInvitation: {
|
|
1817
|
+
path: "/sites/{siteId}/members/invitations/{invitationId}/resend",
|
|
1818
|
+
method: "POST",
|
|
1819
|
+
errors: [
|
|
1820
|
+
"auth:forbidden",
|
|
1821
|
+
"resource:not_found",
|
|
1822
|
+
"validation:invalid_input",
|
|
1823
|
+
"external:service_error",
|
|
1824
|
+
"server:internal_error"
|
|
1825
|
+
],
|
|
1826
|
+
tags: [
|
|
1827
|
+
"site-{siteId}",
|
|
1828
|
+
"site-members-{siteId}",
|
|
1829
|
+
"site-invite-{invitationId}"
|
|
1830
|
+
],
|
|
1831
|
+
auth: "user",
|
|
1832
|
+
responseKind: "json"
|
|
1833
|
+
},
|
|
1758
1834
|
transferSiteOwnership: {
|
|
1759
1835
|
path: "/sites/{siteId}/members/transfer-ownership",
|
|
1760
1836
|
method: "POST",
|
|
@@ -2978,20 +3054,6 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
2978
3054
|
auth: "user",
|
|
2979
3055
|
responseKind: "json"
|
|
2980
3056
|
},
|
|
2981
|
-
instagramUploadZip: {
|
|
2982
|
-
path: "/instagram/upload-zip",
|
|
2983
|
-
method: "POST",
|
|
2984
|
-
tags: ["instagram-import"],
|
|
2985
|
-
auth: "user",
|
|
2986
|
-
responseKind: "json"
|
|
2987
|
-
},
|
|
2988
|
-
createInstagramZipUploadUrl: {
|
|
2989
|
-
path: "/instagram/upload-zip-url",
|
|
2990
|
-
method: "POST",
|
|
2991
|
-
tags: ["instagram-import"],
|
|
2992
|
-
auth: "user",
|
|
2993
|
-
responseKind: "json"
|
|
2994
|
-
},
|
|
2995
3057
|
getAnalyticsReport: {
|
|
2996
3058
|
path: "/sites/{siteId}/analytics/report",
|
|
2997
3059
|
method: "GET",
|
|
@@ -6386,6 +6448,43 @@ function err(error) {
|
|
|
6386
6448
|
return { ok: false, error };
|
|
6387
6449
|
}
|
|
6388
6450
|
|
|
6451
|
+
// ../core/src/currency-format.ts
|
|
6452
|
+
var CURRENCY_LOCALE_BY_CODE = {
|
|
6453
|
+
USD: "en-US",
|
|
6454
|
+
GBP: "en-GB",
|
|
6455
|
+
EUR: "de-DE",
|
|
6456
|
+
AUD: "en-AU",
|
|
6457
|
+
CAD: "en-CA",
|
|
6458
|
+
NZD: "en-NZ",
|
|
6459
|
+
JPY: "ja-JP",
|
|
6460
|
+
CNY: "zh-CN",
|
|
6461
|
+
CHF: "de-CH"
|
|
6462
|
+
};
|
|
6463
|
+
function resolveCurrencyLocale(currencyCode, override) {
|
|
6464
|
+
return override ?? CURRENCY_LOCALE_BY_CODE[currencyCode] ?? "en";
|
|
6465
|
+
}
|
|
6466
|
+
function formatCurrencyAmount(amountCents, currency, options) {
|
|
6467
|
+
const currencyCode = currency.toUpperCase();
|
|
6468
|
+
const locale = resolveCurrencyLocale(currencyCode, options?.locale);
|
|
6469
|
+
try {
|
|
6470
|
+
const exactFormatter = new Intl.NumberFormat(locale, {
|
|
6471
|
+
style: "currency",
|
|
6472
|
+
currency: currencyCode
|
|
6473
|
+
});
|
|
6474
|
+
const fractionDigits = options?.decimals === "auto" ? {
|
|
6475
|
+
minimumFractionDigits: 0,
|
|
6476
|
+
maximumFractionDigits: exactFormatter.resolvedOptions().maximumFractionDigits
|
|
6477
|
+
} : {};
|
|
6478
|
+
return new Intl.NumberFormat(locale, {
|
|
6479
|
+
style: "currency",
|
|
6480
|
+
currency: currencyCode,
|
|
6481
|
+
...fractionDigits
|
|
6482
|
+
}).format(amountCents / 100);
|
|
6483
|
+
} catch {
|
|
6484
|
+
return `${(amountCents / 100).toFixed(2)} ${currencyCode}`;
|
|
6485
|
+
}
|
|
6486
|
+
}
|
|
6487
|
+
|
|
6389
6488
|
// ../core/src/event-pricing.ts
|
|
6390
6489
|
function publicEventPricingType(pricing) {
|
|
6391
6490
|
switch (pricing.kind) {
|
|
@@ -6406,6 +6505,7 @@ function isFreePublicEventPriceDisplay(display) {
|
|
|
6406
6505
|
return display.display.kind === "free";
|
|
6407
6506
|
case "exact":
|
|
6408
6507
|
case "from":
|
|
6508
|
+
case "range":
|
|
6409
6509
|
case "mixed":
|
|
6410
6510
|
case "unavailable":
|
|
6411
6511
|
return false;
|
|
@@ -6668,7 +6768,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
|
|
|
6668
6768
|
);
|
|
6669
6769
|
|
|
6670
6770
|
// ../api/src/sdkConfig/contracts.ts
|
|
6671
|
-
import { z as
|
|
6771
|
+
import { z as z65 } from "zod";
|
|
6672
6772
|
|
|
6673
6773
|
// ../blocks/src/system/manifest/augmentManifest.ts
|
|
6674
6774
|
function augmentManifest(manifest) {
|
|
@@ -21826,15 +21926,53 @@ var newsletterFormFragment = defineFragment({
|
|
|
21826
21926
|
title: "Newsletter Form",
|
|
21827
21927
|
description: "Newsletter subscription form with preset field configurations.",
|
|
21828
21928
|
fields: [
|
|
21929
|
+
{
|
|
21930
|
+
id: "destinationProvider",
|
|
21931
|
+
type: "select",
|
|
21932
|
+
label: "Send signups to",
|
|
21933
|
+
description: "Choose where new subscribers from this form should go.",
|
|
21934
|
+
defaultValue: "riverbank",
|
|
21935
|
+
required: true,
|
|
21936
|
+
ui: { intent: "behavior" },
|
|
21937
|
+
options: [
|
|
21938
|
+
{ value: "riverbank", label: "Riverbank newsletter" }
|
|
21939
|
+
]
|
|
21940
|
+
},
|
|
21829
21941
|
{
|
|
21830
21942
|
id: "listId",
|
|
21831
21943
|
type: "reference",
|
|
21832
21944
|
label: "Newsletter list",
|
|
21833
21945
|
description: "Select the list new subscribers should be added to.",
|
|
21834
|
-
required:
|
|
21946
|
+
required: false,
|
|
21835
21947
|
referenceKind: "newsletterList",
|
|
21836
21948
|
allowManualEntry: false,
|
|
21837
|
-
ui: {
|
|
21949
|
+
ui: {
|
|
21950
|
+
intent: "behavior",
|
|
21951
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
21952
|
+
}
|
|
21953
|
+
},
|
|
21954
|
+
{
|
|
21955
|
+
id: "mailchimpAudienceId",
|
|
21956
|
+
type: "reference",
|
|
21957
|
+
label: "Mailchimp audience",
|
|
21958
|
+
description: "Choose the Mailchimp audience for new subscribers.",
|
|
21959
|
+
required: false,
|
|
21960
|
+
referenceKind: "mailchimpAudience",
|
|
21961
|
+
allowManualEntry: false,
|
|
21962
|
+
ui: {
|
|
21963
|
+
intent: "behavior",
|
|
21964
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
21965
|
+
}
|
|
21966
|
+
},
|
|
21967
|
+
{
|
|
21968
|
+
id: "mailchimpTags",
|
|
21969
|
+
type: "text",
|
|
21970
|
+
label: "Mailchimp tags",
|
|
21971
|
+
description: "Optional tags to apply in Mailchimp, separated by commas or semicolons.",
|
|
21972
|
+
ui: {
|
|
21973
|
+
intent: "behavior",
|
|
21974
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
21975
|
+
}
|
|
21838
21976
|
},
|
|
21839
21977
|
{
|
|
21840
21978
|
id: "preset",
|
|
@@ -21881,13 +22019,18 @@ var newsletterFormFragment = defineFragment({
|
|
|
21881
22019
|
id: "tags",
|
|
21882
22020
|
type: "text",
|
|
21883
22021
|
label: "Tags (optional)",
|
|
21884
|
-
description: "Optional tags to apply on subscribe (comma or semicolon separated)."
|
|
22022
|
+
description: "Optional tags to apply on subscribe (comma or semicolon separated).",
|
|
22023
|
+
ui: {
|
|
22024
|
+
intent: "behavior",
|
|
22025
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
22026
|
+
}
|
|
21885
22027
|
}
|
|
21886
22028
|
],
|
|
21887
22029
|
layout: [
|
|
21888
22030
|
el(
|
|
21889
22031
|
"newsletter-form",
|
|
21890
22032
|
withApiBindings({
|
|
22033
|
+
destinationProvider: { $bind: { from: "destinationProvider" } },
|
|
21891
22034
|
listId: { $bind: { from: "listId" } },
|
|
21892
22035
|
preset: { $bind: { from: "preset" } },
|
|
21893
22036
|
includePhone: { $bind: { from: "includePhone" } },
|
|
@@ -27728,10 +27871,10 @@ var appointmentBookingBlockDefinition = {
|
|
|
27728
27871
|
};
|
|
27729
27872
|
|
|
27730
27873
|
// ../blocks/src/system/blocks/event-registration.ts
|
|
27731
|
-
import { z as
|
|
27874
|
+
import { z as z47 } from "zod";
|
|
27732
27875
|
|
|
27733
27876
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
27734
|
-
import { z as
|
|
27877
|
+
import { z as z43 } from "zod";
|
|
27735
27878
|
|
|
27736
27879
|
// ../blocks/src/lib/media.ts
|
|
27737
27880
|
import z39 from "zod";
|
|
@@ -27809,296 +27952,339 @@ var mediaSchema2 = z39.discriminatedUnion("type", [
|
|
|
27809
27952
|
archiveMediaSchema
|
|
27810
27953
|
]);
|
|
27811
27954
|
|
|
27812
|
-
// ../blocks/src/system/
|
|
27955
|
+
// ../blocks/src/system/manifest/richTextSchema.ts
|
|
27813
27956
|
import { z as z40 } from "zod";
|
|
27814
|
-
var
|
|
27957
|
+
var TipTapMarkSchema = z40.object({
|
|
27958
|
+
type: z40.string(),
|
|
27959
|
+
attrs: z40.record(z40.string(), z40.unknown()).optional()
|
|
27960
|
+
});
|
|
27961
|
+
var TipTapNodeSchema = z40.lazy(
|
|
27962
|
+
() => z40.object({
|
|
27963
|
+
type: z40.string(),
|
|
27964
|
+
content: z40.array(TipTapNodeSchema).optional(),
|
|
27965
|
+
text: z40.string().optional(),
|
|
27966
|
+
attrs: z40.record(z40.string(), z40.unknown()).optional(),
|
|
27967
|
+
marks: z40.array(TipTapMarkSchema).optional()
|
|
27968
|
+
})
|
|
27969
|
+
);
|
|
27970
|
+
var RichTextValueSchema = z40.union([
|
|
27971
|
+
// Canonical: TipTap document directly
|
|
27972
|
+
TipTapNodeSchema,
|
|
27973
|
+
// Legacy (read-tolerance only): wrapped in { doc: {...} }
|
|
27974
|
+
z40.object({
|
|
27975
|
+
doc: TipTapNodeSchema
|
|
27976
|
+
})
|
|
27977
|
+
]);
|
|
27978
|
+
var RichTextDocSchema = z40.object({
|
|
27979
|
+
type: z40.literal("doc"),
|
|
27980
|
+
content: z40.array(TipTapNodeSchema)
|
|
27981
|
+
});
|
|
27982
|
+
|
|
27983
|
+
// ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
|
|
27984
|
+
import { z as z41 } from "zod";
|
|
27985
|
+
var bookingDepositRefundPolicySchema = z41.enum([
|
|
27815
27986
|
"refundable",
|
|
27816
27987
|
"non_refundable"
|
|
27817
27988
|
]);
|
|
27818
|
-
var bookingInstalmentPlanSchema =
|
|
27819
|
-
|
|
27820
|
-
kind:
|
|
27821
|
-
depositAmountCents:
|
|
27989
|
+
var bookingInstalmentPlanSchema = z41.union([
|
|
27990
|
+
z41.object({
|
|
27991
|
+
kind: z41.literal("deposit_plus_one_remainder"),
|
|
27992
|
+
depositAmountCents: z41.number().int().min(0),
|
|
27822
27993
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
27823
|
-
remainderDueCount:
|
|
27824
|
-
intervalUnit:
|
|
27994
|
+
remainderDueCount: z41.number().int().positive(),
|
|
27995
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27825
27996
|
}),
|
|
27826
|
-
|
|
27827
|
-
kind:
|
|
27828
|
-
depositAmountCents:
|
|
27997
|
+
z41.object({
|
|
27998
|
+
kind: z41.literal("deposit_plus_scheduled_instalments"),
|
|
27999
|
+
depositAmountCents: z41.number().int().min(0),
|
|
27829
28000
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
27830
|
-
instalmentCount:
|
|
27831
|
-
intervalCount:
|
|
27832
|
-
intervalUnit:
|
|
28001
|
+
instalmentCount: z41.number().int().positive(),
|
|
28002
|
+
intervalCount: z41.number().int().positive(),
|
|
28003
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27833
28004
|
}),
|
|
27834
|
-
|
|
27835
|
-
kind:
|
|
27836
|
-
instalmentCount:
|
|
27837
|
-
intervalCount:
|
|
27838
|
-
intervalUnit:
|
|
28005
|
+
z41.object({
|
|
28006
|
+
kind: z41.literal("equal_scheduled_instalments"),
|
|
28007
|
+
instalmentCount: z41.number().int().positive(),
|
|
28008
|
+
intervalCount: z41.number().int().positive(),
|
|
28009
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27839
28010
|
})
|
|
27840
28011
|
]);
|
|
27841
|
-
var bookingFlexibleBalanceDueDateRuleSchema =
|
|
27842
|
-
|
|
27843
|
-
kind:
|
|
27844
|
-
daysBeforeStart:
|
|
28012
|
+
var bookingFlexibleBalanceDueDateRuleSchema = z41.union([
|
|
28013
|
+
z41.object({
|
|
28014
|
+
kind: z41.literal("relative_to_start_date"),
|
|
28015
|
+
daysBeforeStart: z41.number().int().positive()
|
|
27845
28016
|
}),
|
|
27846
|
-
|
|
27847
|
-
kind:
|
|
27848
|
-
dueAt:
|
|
28017
|
+
z41.object({
|
|
28018
|
+
kind: z41.literal("fixed_calendar_date"),
|
|
28019
|
+
dueAt: z41.string().datetime()
|
|
27849
28020
|
})
|
|
27850
28021
|
]);
|
|
27851
|
-
var bookingFlexibleBalanceConfigSchema =
|
|
27852
|
-
upfrontAmountCents:
|
|
28022
|
+
var bookingFlexibleBalanceConfigSchema = z41.object({
|
|
28023
|
+
upfrontAmountCents: z41.number().int().min(0),
|
|
27853
28024
|
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
27854
28025
|
depositRefundability: bookingDepositRefundPolicySchema
|
|
27855
28026
|
});
|
|
27856
|
-
var blockBookingPaymentCollectionOptionSchema =
|
|
27857
|
-
|
|
27858
|
-
kind:
|
|
28027
|
+
var blockBookingPaymentCollectionOptionSchema = z41.union([
|
|
28028
|
+
z41.object({
|
|
28029
|
+
kind: z41.literal("upfront")
|
|
27859
28030
|
}),
|
|
27860
|
-
|
|
27861
|
-
kind:
|
|
28031
|
+
z41.object({
|
|
28032
|
+
kind: z41.literal("deferred_manual")
|
|
27862
28033
|
}),
|
|
27863
|
-
|
|
27864
|
-
kind:
|
|
28034
|
+
z41.object({
|
|
28035
|
+
kind: z41.literal("instalment_plan"),
|
|
27865
28036
|
plan: bookingInstalmentPlanSchema
|
|
27866
28037
|
}),
|
|
27867
|
-
|
|
27868
|
-
kind:
|
|
28038
|
+
z41.object({
|
|
28039
|
+
kind: z41.literal("flexible_balance"),
|
|
27869
28040
|
config: bookingFlexibleBalanceConfigSchema
|
|
27870
28041
|
})
|
|
27871
28042
|
]);
|
|
27872
|
-
var blockBookingPaymentTermsSchema =
|
|
27873
|
-
allowedOptions:
|
|
28043
|
+
var blockBookingPaymentTermsSchema = z41.object({
|
|
28044
|
+
allowedOptions: z41.array(blockBookingPaymentCollectionOptionSchema).min(1)
|
|
27874
28045
|
});
|
|
27875
28046
|
|
|
27876
28047
|
// ../blocks/src/system/blocks/courses/shared/schemas.ts
|
|
27877
|
-
import { z as
|
|
27878
|
-
var courseVenueSchema =
|
|
27879
|
-
id:
|
|
27880
|
-
name:
|
|
27881
|
-
address:
|
|
27882
|
-
});
|
|
27883
|
-
var courseSessionSchema =
|
|
27884
|
-
id:
|
|
27885
|
-
startsAt:
|
|
27886
|
-
endsAt:
|
|
27887
|
-
timeZone:
|
|
27888
|
-
capacityOverride:
|
|
27889
|
-
overrides:
|
|
27890
|
-
});
|
|
27891
|
-
var courseTeamMemberSummarySchema =
|
|
27892
|
-
id:
|
|
27893
|
-
name:
|
|
27894
|
-
roleLabel:
|
|
27895
|
-
summary:
|
|
27896
|
-
profilePath:
|
|
27897
|
-
});
|
|
27898
|
-
var coursePricingOptionSchema =
|
|
27899
|
-
id:
|
|
27900
|
-
name:
|
|
27901
|
-
description:
|
|
27902
|
-
priceAmount:
|
|
27903
|
-
isActive:
|
|
27904
|
-
sortOrder:
|
|
27905
|
-
capacityLimit:
|
|
27906
|
-
saleStartsAt:
|
|
27907
|
-
saleEndsAt:
|
|
27908
|
-
attendanceScope:
|
|
27909
|
-
});
|
|
27910
|
-
var coursePricingSchema =
|
|
27911
|
-
bookingRequirement:
|
|
27912
|
-
pricingStrategy:
|
|
27913
|
-
currency:
|
|
27914
|
-
singlePriceAmount:
|
|
28048
|
+
import { z as z42 } from "zod";
|
|
28049
|
+
var courseVenueSchema = z42.object({
|
|
28050
|
+
id: z42.string(),
|
|
28051
|
+
name: z42.string(),
|
|
28052
|
+
address: z42.string().nullable()
|
|
28053
|
+
});
|
|
28054
|
+
var courseSessionSchema = z42.object({
|
|
28055
|
+
id: z42.string(),
|
|
28056
|
+
startsAt: z42.string(),
|
|
28057
|
+
endsAt: z42.string(),
|
|
28058
|
+
timeZone: z42.string(),
|
|
28059
|
+
capacityOverride: z42.number().nullable().optional(),
|
|
28060
|
+
overrides: z42.record(z42.string(), z42.unknown()).nullable().optional()
|
|
28061
|
+
});
|
|
28062
|
+
var courseTeamMemberSummarySchema = z42.object({
|
|
28063
|
+
id: z42.string(),
|
|
28064
|
+
name: z42.string(),
|
|
28065
|
+
roleLabel: z42.string().nullable(),
|
|
28066
|
+
summary: z42.string().nullable(),
|
|
28067
|
+
profilePath: z42.string().nullable()
|
|
28068
|
+
});
|
|
28069
|
+
var coursePricingOptionSchema = z42.object({
|
|
28070
|
+
id: z42.string(),
|
|
28071
|
+
name: z42.string(),
|
|
28072
|
+
description: z42.string().nullable(),
|
|
28073
|
+
priceAmount: z42.number(),
|
|
28074
|
+
isActive: z42.boolean(),
|
|
28075
|
+
sortOrder: z42.number(),
|
|
28076
|
+
capacityLimit: z42.number().nullable(),
|
|
28077
|
+
saleStartsAt: z42.string().nullable(),
|
|
28078
|
+
saleEndsAt: z42.string().nullable(),
|
|
28079
|
+
attendanceScope: z42.enum(["in_person", "online", "both"]).nullable().optional()
|
|
28080
|
+
});
|
|
28081
|
+
var coursePricingSchema = z42.object({
|
|
28082
|
+
bookingRequirement: z42.enum(["none", "required"]),
|
|
28083
|
+
pricingStrategy: z42.enum(["free", "single", "tiered"]),
|
|
28084
|
+
currency: z42.string(),
|
|
28085
|
+
singlePriceAmount: z42.number().nullable(),
|
|
27915
28086
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
27916
|
-
options:
|
|
27917
|
-
});
|
|
27918
|
-
var publicCourseSchema =
|
|
27919
|
-
id:
|
|
27920
|
-
title:
|
|
27921
|
-
slug:
|
|
27922
|
-
description:
|
|
27923
|
-
teamMembers:
|
|
27924
|
-
enrollmentOpen:
|
|
28087
|
+
options: z42.array(coursePricingOptionSchema)
|
|
28088
|
+
});
|
|
28089
|
+
var publicCourseSchema = z42.object({
|
|
28090
|
+
id: z42.string(),
|
|
28091
|
+
title: z42.string(),
|
|
28092
|
+
slug: z42.string(),
|
|
28093
|
+
description: z42.unknown().nullable(),
|
|
28094
|
+
teamMembers: z42.array(courseTeamMemberSummarySchema).optional(),
|
|
28095
|
+
enrollmentOpen: z42.boolean(),
|
|
27925
28096
|
pricing: coursePricingSchema.optional(),
|
|
27926
|
-
priceCents:
|
|
27927
|
-
currency:
|
|
28097
|
+
priceCents: z42.number().nullable(),
|
|
28098
|
+
currency: z42.string(),
|
|
27928
28099
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
27929
|
-
enrollmentCapacity:
|
|
27930
|
-
acceptsMemberships:
|
|
27931
|
-
status:
|
|
27932
|
-
sessionsCount:
|
|
27933
|
-
enrolledCount:
|
|
27934
|
-
availableSpots:
|
|
27935
|
-
sessions:
|
|
28100
|
+
enrollmentCapacity: z42.number().nullable(),
|
|
28101
|
+
acceptsMemberships: z42.boolean(),
|
|
28102
|
+
status: z42.enum(["active", "draft", "cancelled"]),
|
|
28103
|
+
sessionsCount: z42.number(),
|
|
28104
|
+
enrolledCount: z42.number(),
|
|
28105
|
+
availableSpots: z42.number().nullable(),
|
|
28106
|
+
sessions: z42.array(courseSessionSchema),
|
|
27936
28107
|
venue: courseVenueSchema.nullable(),
|
|
27937
|
-
contentEntryId:
|
|
28108
|
+
contentEntryId: z42.string().nullable()
|
|
27938
28109
|
});
|
|
27939
|
-
var publicCoursesArraySchema =
|
|
28110
|
+
var publicCoursesArraySchema = z42.array(publicCourseSchema);
|
|
27940
28111
|
|
|
27941
28112
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
27942
|
-
var eventPresetSchema =
|
|
27943
|
-
var eventScheduleScopeSchema =
|
|
27944
|
-
var eventDestinationModeSchema =
|
|
27945
|
-
var eventVenueSchema =
|
|
27946
|
-
id:
|
|
27947
|
-
name:
|
|
27948
|
-
address:
|
|
27949
|
-
location:
|
|
27950
|
-
lat:
|
|
27951
|
-
lng:
|
|
28113
|
+
var eventPresetSchema = z43.enum(["event", "class", "workshop", "retreat", "performance"]);
|
|
28114
|
+
var eventScheduleScopeSchema = z43.enum(["recurring", "oneOff"]);
|
|
28115
|
+
var eventDestinationModeSchema = z43.enum(["cms-managed", "system-managed"]);
|
|
28116
|
+
var eventVenueSchema = z43.object({
|
|
28117
|
+
id: z43.string(),
|
|
28118
|
+
name: z43.string(),
|
|
28119
|
+
address: z43.string().nullable(),
|
|
28120
|
+
location: z43.object({
|
|
28121
|
+
lat: z43.number(),
|
|
28122
|
+
lng: z43.number()
|
|
27952
28123
|
}).nullable()
|
|
27953
28124
|
});
|
|
27954
|
-
var eventCategorySchema =
|
|
27955
|
-
id:
|
|
27956
|
-
name:
|
|
27957
|
-
color:
|
|
27958
|
-
});
|
|
27959
|
-
var pricingTypeSchema =
|
|
27960
|
-
var accessRestrictionSchema =
|
|
27961
|
-
var eventPricingModeSchema =
|
|
27962
|
-
var publicCoursePriceDisplaySchema =
|
|
27963
|
-
|
|
27964
|
-
|
|
27965
|
-
|
|
27966
|
-
|
|
28125
|
+
var eventCategorySchema = z43.object({
|
|
28126
|
+
id: z43.string(),
|
|
28127
|
+
name: z43.string(),
|
|
28128
|
+
color: z43.string().nullable()
|
|
28129
|
+
});
|
|
28130
|
+
var pricingTypeSchema = z43.enum(["free", "paid"]);
|
|
28131
|
+
var accessRestrictionSchema = z43.enum(["none", "category"]);
|
|
28132
|
+
var eventPricingModeSchema = z43.enum(["single", "ticket_types"]);
|
|
28133
|
+
var publicCoursePriceDisplaySchema = z43.discriminatedUnion("kind", [
|
|
28134
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28135
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28136
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28137
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() })
|
|
27967
28138
|
]);
|
|
27968
|
-
var publicEventPriceDisplaySchema =
|
|
27969
|
-
|
|
27970
|
-
|
|
27971
|
-
|
|
27972
|
-
|
|
27973
|
-
|
|
27974
|
-
|
|
28139
|
+
var publicEventPriceDisplaySchema = z43.discriminatedUnion("kind", [
|
|
28140
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28141
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28142
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28143
|
+
z43.object({ kind: z43.literal("range"), minAmount: z43.number(), maxAmount: z43.number(), currency: z43.string() }),
|
|
28144
|
+
z43.object({
|
|
28145
|
+
kind: z43.literal("mixed"),
|
|
28146
|
+
paidFromAmount: z43.number(),
|
|
28147
|
+
paidToAmount: z43.number(),
|
|
28148
|
+
currency: z43.string()
|
|
28149
|
+
}),
|
|
28150
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() }),
|
|
28151
|
+
z43.object({ kind: z43.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
27975
28152
|
]);
|
|
27976
|
-
var publicEventTicketTypePriceDisplaySchema =
|
|
27977
|
-
|
|
27978
|
-
|
|
27979
|
-
|
|
27980
|
-
|
|
27981
|
-
|
|
28153
|
+
var publicEventTicketTypePriceDisplaySchema = z43.union([
|
|
28154
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28155
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28156
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28157
|
+
z43.object({ kind: z43.literal("range"), minAmount: z43.number(), maxAmount: z43.number(), currency: z43.string() }),
|
|
28158
|
+
z43.object({
|
|
28159
|
+
kind: z43.literal("mixed"),
|
|
28160
|
+
paidFromAmount: z43.number(),
|
|
28161
|
+
paidToAmount: z43.number(),
|
|
28162
|
+
currency: z43.string()
|
|
28163
|
+
}),
|
|
28164
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() })
|
|
27982
28165
|
]);
|
|
27983
|
-
var publicEventAttendanceModeSchema =
|
|
27984
|
-
var publicEventAttendanceModeAvailabilitySchema =
|
|
28166
|
+
var publicEventAttendanceModeSchema = z43.enum(["in_person", "online"]);
|
|
28167
|
+
var publicEventAttendanceModeAvailabilitySchema = z43.object({
|
|
27985
28168
|
mode: publicEventAttendanceModeSchema,
|
|
27986
|
-
capacity:
|
|
27987
|
-
registeredCount:
|
|
27988
|
-
availableSpots:
|
|
27989
|
-
waitlistEnabled:
|
|
27990
|
-
});
|
|
27991
|
-
var publicEventTicketTypeAvailabilitySchema =
|
|
27992
|
-
|
|
27993
|
-
kind:
|
|
27994
|
-
remainingCapacity:
|
|
28169
|
+
capacity: z43.number().nullable(),
|
|
28170
|
+
registeredCount: z43.number(),
|
|
28171
|
+
availableSpots: z43.number().nullable(),
|
|
28172
|
+
waitlistEnabled: z43.boolean()
|
|
28173
|
+
});
|
|
28174
|
+
var publicEventTicketTypeAvailabilitySchema = z43.union([
|
|
28175
|
+
z43.object({
|
|
28176
|
+
kind: z43.literal("available"),
|
|
28177
|
+
remainingCapacity: z43.number().nullable()
|
|
27995
28178
|
}),
|
|
27996
|
-
|
|
27997
|
-
kind:
|
|
27998
|
-
reason:
|
|
27999
|
-
remainingCapacity:
|
|
28179
|
+
z43.object({
|
|
28180
|
+
kind: z43.literal("unavailable"),
|
|
28181
|
+
reason: z43.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
|
|
28182
|
+
remainingCapacity: z43.number().nullable()
|
|
28000
28183
|
})
|
|
28001
28184
|
]);
|
|
28002
|
-
var publicEventTicketTypeSchema =
|
|
28003
|
-
id:
|
|
28004
|
-
siteId:
|
|
28005
|
-
eventSeriesId:
|
|
28006
|
-
name:
|
|
28007
|
-
description:
|
|
28008
|
-
priceAmount:
|
|
28009
|
-
isActive:
|
|
28010
|
-
sortOrder:
|
|
28011
|
-
capacityMode:
|
|
28012
|
-
capacityLimit:
|
|
28013
|
-
attendanceScope:
|
|
28014
|
-
saleStartsAt:
|
|
28015
|
-
saleEndsAt:
|
|
28185
|
+
var publicEventTicketTypeSchema = z43.object({
|
|
28186
|
+
id: z43.string(),
|
|
28187
|
+
siteId: z43.string(),
|
|
28188
|
+
eventSeriesId: z43.string(),
|
|
28189
|
+
name: z43.string(),
|
|
28190
|
+
description: z43.string().nullable(),
|
|
28191
|
+
priceAmount: z43.number(),
|
|
28192
|
+
isActive: z43.boolean(),
|
|
28193
|
+
sortOrder: z43.number(),
|
|
28194
|
+
capacityMode: z43.enum(["limited", "unlimited"]),
|
|
28195
|
+
capacityLimit: z43.number().nullable(),
|
|
28196
|
+
attendanceScope: z43.enum(["in_person", "online", "both"]).optional(),
|
|
28197
|
+
saleStartsAt: z43.string().nullable(),
|
|
28198
|
+
saleEndsAt: z43.string().nullable(),
|
|
28016
28199
|
availability: publicEventTicketTypeAvailabilitySchema,
|
|
28017
|
-
createdAt:
|
|
28018
|
-
updatedAt:
|
|
28019
|
-
});
|
|
28020
|
-
var publicEventPricingSchema =
|
|
28021
|
-
|
|
28022
|
-
kind:
|
|
28023
|
-
currency:
|
|
28024
|
-
display:
|
|
28200
|
+
createdAt: z43.string(),
|
|
28201
|
+
updatedAt: z43.string()
|
|
28202
|
+
});
|
|
28203
|
+
var publicEventPricingSchema = z43.discriminatedUnion("kind", [
|
|
28204
|
+
z43.object({
|
|
28205
|
+
kind: z43.literal("drop_in"),
|
|
28206
|
+
currency: z43.string(),
|
|
28207
|
+
display: z43.object({ kind: z43.literal("free"), currency: z43.string() })
|
|
28025
28208
|
}),
|
|
28026
|
-
|
|
28027
|
-
kind:
|
|
28028
|
-
currency:
|
|
28029
|
-
display:
|
|
28209
|
+
z43.object({
|
|
28210
|
+
kind: z43.literal("free_registration"),
|
|
28211
|
+
currency: z43.string(),
|
|
28212
|
+
display: z43.object({ kind: z43.literal("free"), currency: z43.string() })
|
|
28030
28213
|
}),
|
|
28031
|
-
|
|
28032
|
-
kind:
|
|
28033
|
-
amount:
|
|
28034
|
-
currency:
|
|
28035
|
-
display:
|
|
28214
|
+
z43.object({
|
|
28215
|
+
kind: z43.literal("single_paid"),
|
|
28216
|
+
amount: z43.number(),
|
|
28217
|
+
currency: z43.string(),
|
|
28218
|
+
display: z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() })
|
|
28036
28219
|
}),
|
|
28037
|
-
|
|
28038
|
-
kind:
|
|
28039
|
-
currency:
|
|
28040
|
-
ticketTypes:
|
|
28220
|
+
z43.object({
|
|
28221
|
+
kind: z43.literal("ticket_types"),
|
|
28222
|
+
currency: z43.string(),
|
|
28223
|
+
ticketTypes: z43.array(publicEventTicketTypeSchema),
|
|
28041
28224
|
display: publicEventTicketTypePriceDisplaySchema
|
|
28042
28225
|
}),
|
|
28043
|
-
|
|
28044
|
-
kind:
|
|
28045
|
-
display:
|
|
28226
|
+
z43.object({
|
|
28227
|
+
kind: z43.literal("course"),
|
|
28228
|
+
display: z43.object({ kind: z43.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
28046
28229
|
})
|
|
28047
28230
|
]);
|
|
28048
|
-
var publicTeamMemberSummarySchema =
|
|
28049
|
-
id:
|
|
28050
|
-
name:
|
|
28051
|
-
roleLabel:
|
|
28052
|
-
summary:
|
|
28053
|
-
profilePath:
|
|
28231
|
+
var publicTeamMemberSummarySchema = z43.object({
|
|
28232
|
+
id: z43.string(),
|
|
28233
|
+
name: z43.string(),
|
|
28234
|
+
roleLabel: z43.string().nullable(),
|
|
28235
|
+
summary: z43.string().nullable(),
|
|
28236
|
+
profilePath: z43.string().nullable()
|
|
28054
28237
|
});
|
|
28055
|
-
var publicEventSchema =
|
|
28056
|
-
kind:
|
|
28238
|
+
var publicEventSchema = z43.object({
|
|
28239
|
+
kind: z43.enum(["event", "course_session"]).optional(),
|
|
28057
28240
|
eventPreset: eventPresetSchema.optional(),
|
|
28058
28241
|
eventDestinationMode: eventDestinationModeSchema.optional(),
|
|
28059
28242
|
scheduleScope: eventScheduleScopeSchema.optional(),
|
|
28060
|
-
id:
|
|
28061
|
-
occurrenceId:
|
|
28062
|
-
seriesId:
|
|
28063
|
-
title:
|
|
28064
|
-
description:
|
|
28065
|
-
|
|
28066
|
-
|
|
28067
|
-
|
|
28243
|
+
id: z43.string(),
|
|
28244
|
+
occurrenceId: z43.string(),
|
|
28245
|
+
seriesId: z43.string(),
|
|
28246
|
+
title: z43.string(),
|
|
28247
|
+
description: z43.string().nullable(),
|
|
28248
|
+
content: z43.object({
|
|
28249
|
+
body: RichTextDocSchema.nullable().optional()
|
|
28250
|
+
}).optional(),
|
|
28251
|
+
presentation: z43.object({
|
|
28252
|
+
cardTitleOverride: z43.string().nullable().optional(),
|
|
28253
|
+
summary: z43.string().nullable().optional(),
|
|
28068
28254
|
image: mediaSchema2.nullable().optional()
|
|
28069
28255
|
}).optional(),
|
|
28070
|
-
slug:
|
|
28071
|
-
path:
|
|
28072
|
-
requiresRegistration:
|
|
28073
|
-
deliveryMode:
|
|
28074
|
-
attendanceModes:
|
|
28075
|
-
startsAt:
|
|
28076
|
-
endsAt:
|
|
28077
|
-
capacity:
|
|
28078
|
-
registeredCount:
|
|
28079
|
-
availableSpots:
|
|
28080
|
-
waitlistEnabled:
|
|
28256
|
+
slug: z43.string(),
|
|
28257
|
+
path: z43.string(),
|
|
28258
|
+
requiresRegistration: z43.boolean(),
|
|
28259
|
+
deliveryMode: z43.enum(["in_person", "online", "hybrid"]),
|
|
28260
|
+
attendanceModes: z43.array(publicEventAttendanceModeAvailabilitySchema),
|
|
28261
|
+
startsAt: z43.string(),
|
|
28262
|
+
endsAt: z43.string(),
|
|
28263
|
+
capacity: z43.number().nullable(),
|
|
28264
|
+
registeredCount: z43.number(),
|
|
28265
|
+
availableSpots: z43.number().nullable(),
|
|
28266
|
+
waitlistEnabled: z43.boolean(),
|
|
28081
28267
|
venue: eventVenueSchema.nullable(),
|
|
28082
28268
|
eventCategory: eventCategorySchema.nullable(),
|
|
28083
|
-
teamMembers:
|
|
28084
|
-
status:
|
|
28085
|
-
timeZone:
|
|
28269
|
+
teamMembers: z43.array(publicTeamMemberSummarySchema).optional(),
|
|
28270
|
+
status: z43.enum(["active", "draft", "archived"]).optional(),
|
|
28271
|
+
timeZone: z43.string(),
|
|
28086
28272
|
pricing: publicEventPricingSchema,
|
|
28087
28273
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
28088
28274
|
accessRestriction: accessRestrictionSchema,
|
|
28089
|
-
allowedCategoryIds:
|
|
28090
|
-
requireGuestDetails:
|
|
28091
|
-
acceptsPasses:
|
|
28092
|
-
acceptsMemberships:
|
|
28093
|
-
course:
|
|
28094
|
-
id:
|
|
28275
|
+
allowedCategoryIds: z43.array(z43.string()),
|
|
28276
|
+
requireGuestDetails: z43.boolean().optional(),
|
|
28277
|
+
acceptsPasses: z43.boolean().optional(),
|
|
28278
|
+
acceptsMemberships: z43.boolean().optional(),
|
|
28279
|
+
course: z43.object({
|
|
28280
|
+
id: z43.string(),
|
|
28095
28281
|
pricing: coursePricingSchema.optional(),
|
|
28096
|
-
priceCents:
|
|
28097
|
-
currency:
|
|
28098
|
-
enrollmentOpen:
|
|
28282
|
+
priceCents: z43.number().nullable(),
|
|
28283
|
+
currency: z43.string(),
|
|
28284
|
+
enrollmentOpen: z43.boolean()
|
|
28099
28285
|
}).nullable().optional()
|
|
28100
28286
|
});
|
|
28101
|
-
var publicEventsArraySchema =
|
|
28287
|
+
var publicEventsArraySchema = z43.array(publicEventSchema);
|
|
28102
28288
|
|
|
28103
28289
|
// ../blocks/src/system/blocks/events/shared/fields.ts
|
|
28104
28290
|
var cardVariantOptions2 = cardVariantRoleValues.map((value) => ({
|
|
@@ -28302,19 +28488,19 @@ function normalizeEventStaffMemberId(value) {
|
|
|
28302
28488
|
}
|
|
28303
28489
|
|
|
28304
28490
|
// ../blocks/src/system/blocks/event-registration.shared.ts
|
|
28305
|
-
import { z as
|
|
28306
|
-
var occurrenceContextSchema =
|
|
28307
|
-
id:
|
|
28308
|
-
seriesId:
|
|
28309
|
-
startsAt:
|
|
28310
|
-
endsAt:
|
|
28311
|
-
timeZone:
|
|
28312
|
-
capacityOverride:
|
|
28313
|
-
overrides:
|
|
28491
|
+
import { z as z44 } from "zod";
|
|
28492
|
+
var occurrenceContextSchema = z44.object({
|
|
28493
|
+
id: z44.string(),
|
|
28494
|
+
seriesId: z44.string(),
|
|
28495
|
+
startsAt: z44.string(),
|
|
28496
|
+
endsAt: z44.string(),
|
|
28497
|
+
timeZone: z44.string(),
|
|
28498
|
+
capacityOverride: z44.number().nullable().optional(),
|
|
28499
|
+
overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
|
|
28314
28500
|
}).nullable();
|
|
28315
28501
|
|
|
28316
28502
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
28317
|
-
import { z as
|
|
28503
|
+
import { z as z46 } from "zod";
|
|
28318
28504
|
|
|
28319
28505
|
// ../blocks/src/system/constants/events.ts
|
|
28320
28506
|
var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
|
|
@@ -28412,10 +28598,21 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
28412
28598
|
amount: readAmount(value.amount) ?? 0,
|
|
28413
28599
|
currency: displayCurrency
|
|
28414
28600
|
} : { kind: "unavailable", currency };
|
|
28601
|
+
case "range": {
|
|
28602
|
+
const minAmount = readAmount(value.minAmount);
|
|
28603
|
+
const maxAmount = readAmount(value.maxAmount);
|
|
28604
|
+
return minAmount !== null && maxAmount !== null ? {
|
|
28605
|
+
kind: "range",
|
|
28606
|
+
minAmount,
|
|
28607
|
+
maxAmount,
|
|
28608
|
+
currency: displayCurrency
|
|
28609
|
+
} : { kind: "unavailable", currency };
|
|
28610
|
+
}
|
|
28415
28611
|
case "mixed":
|
|
28416
28612
|
return readAmount(value.paidFromAmount) !== null ? {
|
|
28417
28613
|
kind: "mixed",
|
|
28418
28614
|
paidFromAmount: readAmount(value.paidFromAmount) ?? 0,
|
|
28615
|
+
paidToAmount: readAmount(value.paidToAmount) ?? readAmount(value.paidFromAmount) ?? 0,
|
|
28419
28616
|
currency: displayCurrency
|
|
28420
28617
|
} : { kind: "unavailable", currency };
|
|
28421
28618
|
case "unavailable":
|
|
@@ -28457,16 +28654,16 @@ function readAmount(value) {
|
|
|
28457
28654
|
}
|
|
28458
28655
|
|
|
28459
28656
|
// ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
|
|
28460
|
-
import { z as
|
|
28461
|
-
var previewStageSchema =
|
|
28462
|
-
var registrationButtonVariantSchema =
|
|
28463
|
-
var eventButtonVariantSchema =
|
|
28464
|
-
var eventLayoutSchema =
|
|
28465
|
-
var eventCalendarDisplayModeSchema =
|
|
28466
|
-
var columnOptionSchema =
|
|
28467
|
-
var weekStartSchema =
|
|
28468
|
-
var filterAutoShowSchema =
|
|
28469
|
-
var calendarTabViewsSchema =
|
|
28657
|
+
import { z as z45 } from "zod";
|
|
28658
|
+
var previewStageSchema = z45.enum(["preview", "published"]);
|
|
28659
|
+
var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
|
|
28660
|
+
var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
|
|
28661
|
+
var eventLayoutSchema = z45.enum(eventCalendarListLayoutValues);
|
|
28662
|
+
var eventCalendarDisplayModeSchema = z45.enum(eventCalendarDisplayModeValues);
|
|
28663
|
+
var columnOptionSchema = z45.enum(["2", "3", "4"]);
|
|
28664
|
+
var weekStartSchema = z45.enum(["sunday", "monday"]);
|
|
28665
|
+
var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
|
|
28666
|
+
var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
|
|
28470
28667
|
|
|
28471
28668
|
// ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
|
|
28472
28669
|
function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
|
|
@@ -28526,66 +28723,68 @@ function toRegistrationEvents(events) {
|
|
|
28526
28723
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
28527
28724
|
var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
|
|
28528
28725
|
var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
|
|
28529
|
-
var contentEntrySchema =
|
|
28530
|
-
id:
|
|
28531
|
-
slug:
|
|
28532
|
-
contentTypeSlug:
|
|
28726
|
+
var contentEntrySchema = z46.object({
|
|
28727
|
+
id: z46.string(),
|
|
28728
|
+
slug: z46.string(),
|
|
28729
|
+
contentTypeSlug: z46.string()
|
|
28533
28730
|
});
|
|
28534
|
-
var eventRegistrationPublicEventSchema =
|
|
28731
|
+
var eventRegistrationPublicEventSchema = z46.preprocess(
|
|
28535
28732
|
normalizeEventRegistrationEventInput,
|
|
28536
28733
|
publicEventSchema
|
|
28537
28734
|
);
|
|
28538
|
-
var eventRegistrationSourceSchema =
|
|
28539
|
-
siteId:
|
|
28540
|
-
apiBaseUrl:
|
|
28541
|
-
portalToken:
|
|
28542
|
-
previewToken:
|
|
28735
|
+
var eventRegistrationSourceSchema = z46.object({
|
|
28736
|
+
siteId: z46.string().optional(),
|
|
28737
|
+
apiBaseUrl: z46.string().optional(),
|
|
28738
|
+
portalToken: z46.string().nullable().optional(),
|
|
28739
|
+
previewToken: z46.string().nullable().optional(),
|
|
28543
28740
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
28544
28741
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
28545
|
-
events:
|
|
28546
|
-
className:
|
|
28547
|
-
buttonText:
|
|
28548
|
-
maxTickets:
|
|
28549
|
-
showVenue:
|
|
28550
|
-
showCapacity:
|
|
28551
|
-
successMessage:
|
|
28552
|
-
waitlistMessage:
|
|
28742
|
+
events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
28743
|
+
className: z46.string().nullable().optional(),
|
|
28744
|
+
buttonText: z46.string().nullable().optional(),
|
|
28745
|
+
maxTickets: z46.string().nullable().optional(),
|
|
28746
|
+
showVenue: z46.boolean().optional(),
|
|
28747
|
+
showCapacity: z46.boolean().optional(),
|
|
28748
|
+
successMessage: z46.string().optional(),
|
|
28749
|
+
waitlistMessage: z46.string().optional(),
|
|
28553
28750
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28554
|
-
|
|
28751
|
+
overlayEnabled: z46.boolean().optional(),
|
|
28752
|
+
spamProtectionEnabled: z46.boolean().optional(),
|
|
28555
28753
|
stage: previewStageSchema.optional(),
|
|
28556
|
-
supportEmail:
|
|
28557
|
-
});
|
|
28558
|
-
var eventRegistrationDisplaySchema =
|
|
28559
|
-
kind:
|
|
28560
|
-
state:
|
|
28561
|
-
className:
|
|
28562
|
-
titleText:
|
|
28563
|
-
bodyText:
|
|
28564
|
-
stepLabels:
|
|
28565
|
-
summaryButtonText:
|
|
28566
|
-
});
|
|
28567
|
-
var eventRegistrationHydrationSchema =
|
|
28754
|
+
supportEmail: z46.string().optional()
|
|
28755
|
+
});
|
|
28756
|
+
var eventRegistrationDisplaySchema = z46.object({
|
|
28757
|
+
kind: z46.literal("event-registration"),
|
|
28758
|
+
state: z46.literal("generic-shell"),
|
|
28759
|
+
className: z46.string().nullable(),
|
|
28760
|
+
titleText: z46.string(),
|
|
28761
|
+
bodyText: z46.string(),
|
|
28762
|
+
stepLabels: z46.array(z46.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
|
|
28763
|
+
summaryButtonText: z46.string()
|
|
28764
|
+
});
|
|
28765
|
+
var eventRegistrationHydrationSchema = z46.object({
|
|
28568
28766
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
28569
28767
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
28570
|
-
events:
|
|
28571
|
-
maxTickets:
|
|
28572
|
-
showVenue:
|
|
28573
|
-
showCapacity:
|
|
28574
|
-
successMessage:
|
|
28575
|
-
waitlistMessage:
|
|
28768
|
+
events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
28769
|
+
maxTickets: z46.string().optional(),
|
|
28770
|
+
showVenue: z46.boolean().optional(),
|
|
28771
|
+
showCapacity: z46.boolean().optional(),
|
|
28772
|
+
successMessage: z46.string().optional(),
|
|
28773
|
+
waitlistMessage: z46.string().optional(),
|
|
28576
28774
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28577
|
-
|
|
28578
|
-
|
|
28775
|
+
overlayEnabled: z46.boolean().optional(),
|
|
28776
|
+
spamProtectionEnabled: z46.boolean().optional(),
|
|
28777
|
+
supportEmail: z46.string().optional()
|
|
28579
28778
|
});
|
|
28580
|
-
var eventRegistrationRenderSchema =
|
|
28779
|
+
var eventRegistrationRenderSchema = z46.object({
|
|
28581
28780
|
display: eventRegistrationDisplaySchema,
|
|
28582
28781
|
hydration: eventRegistrationHydrationSchema
|
|
28583
28782
|
});
|
|
28584
|
-
var eventRegistrationIslandMetaCodec = createZodCodec(
|
|
28585
|
-
siteId:
|
|
28586
|
-
apiBaseUrl:
|
|
28587
|
-
portalToken:
|
|
28588
|
-
previewToken:
|
|
28783
|
+
var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
|
|
28784
|
+
siteId: z46.string().optional(),
|
|
28785
|
+
apiBaseUrl: z46.string().optional(),
|
|
28786
|
+
portalToken: z46.string().nullable().optional(),
|
|
28787
|
+
previewToken: z46.string().nullable().optional(),
|
|
28589
28788
|
stage: previewStageSchema.optional()
|
|
28590
28789
|
}));
|
|
28591
28790
|
var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -28689,6 +28888,7 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
28689
28888
|
successMessage: source.successMessage,
|
|
28690
28889
|
waitlistMessage: source.waitlistMessage,
|
|
28691
28890
|
buttonVariant: source.buttonVariant,
|
|
28891
|
+
overlayEnabled: source.overlayEnabled,
|
|
28692
28892
|
spamProtectionEnabled: source.spamProtectionEnabled,
|
|
28693
28893
|
supportEmail: source.supportEmail
|
|
28694
28894
|
}
|
|
@@ -28864,6 +29064,12 @@ var eventRegistrationManifest = createBlockManifest({
|
|
|
28864
29064
|
buttonVariant: {
|
|
28865
29065
|
$bind: { from: "content.buttonVariant", fallback: "primary" }
|
|
28866
29066
|
},
|
|
29067
|
+
overlayEnabled: {
|
|
29068
|
+
$bind: {
|
|
29069
|
+
from: "$root.eventRegistrationOverlayEnabled",
|
|
29070
|
+
fallback: false
|
|
29071
|
+
}
|
|
29072
|
+
},
|
|
28867
29073
|
// Event data from loader
|
|
28868
29074
|
events: { $bind: { from: "data.events" } },
|
|
28869
29075
|
// Stage for preview mode (allows registering for draft events)
|
|
@@ -28884,7 +29090,7 @@ var eventRegistrationBlockDefinition = {
|
|
|
28884
29090
|
manifest: eventRegistrationManifest,
|
|
28885
29091
|
runtime: eventRegistrationBlockRuntime,
|
|
28886
29092
|
dataSchemas: {
|
|
28887
|
-
events:
|
|
29093
|
+
events: z47.array(publicEventSchema).optional(),
|
|
28888
29094
|
occurrenceContext: occurrenceContextSchema.optional()
|
|
28889
29095
|
},
|
|
28890
29096
|
dataLoaders: {
|
|
@@ -28908,73 +29114,73 @@ var eventRegistrationBlockDefinition = {
|
|
|
28908
29114
|
};
|
|
28909
29115
|
|
|
28910
29116
|
// ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
|
|
28911
|
-
import { z as
|
|
28912
|
-
var contentEntrySchema2 =
|
|
28913
|
-
id:
|
|
28914
|
-
slug:
|
|
28915
|
-
contentTypeSlug:
|
|
28916
|
-
});
|
|
28917
|
-
var courseEntrySubrouteContextSchema =
|
|
28918
|
-
|
|
28919
|
-
kind:
|
|
28920
|
-
run:
|
|
28921
|
-
courseId:
|
|
28922
|
-
seriesId:
|
|
28923
|
-
runSlug:
|
|
28924
|
-
runName:
|
|
29117
|
+
import { z as z48 } from "zod";
|
|
29118
|
+
var contentEntrySchema2 = z48.object({
|
|
29119
|
+
id: z48.string(),
|
|
29120
|
+
slug: z48.string(),
|
|
29121
|
+
contentTypeSlug: z48.string()
|
|
29122
|
+
});
|
|
29123
|
+
var courseEntrySubrouteContextSchema = z48.union([
|
|
29124
|
+
z48.object({
|
|
29125
|
+
kind: z48.literal("course-run"),
|
|
29126
|
+
run: z48.object({
|
|
29127
|
+
courseId: z48.string(),
|
|
29128
|
+
seriesId: z48.string(),
|
|
29129
|
+
runSlug: z48.string(),
|
|
29130
|
+
runName: z48.string().nullable()
|
|
28925
29131
|
})
|
|
28926
29132
|
}),
|
|
28927
|
-
|
|
28928
|
-
kind:
|
|
29133
|
+
z48.object({
|
|
29134
|
+
kind: z48.literal("event-occurrence"),
|
|
28929
29135
|
occurrence: occurrenceContextSchema
|
|
28930
29136
|
})
|
|
28931
29137
|
]);
|
|
28932
|
-
var courseRegistrationSourceSchema =
|
|
28933
|
-
siteId:
|
|
28934
|
-
apiBaseUrl:
|
|
28935
|
-
portalToken:
|
|
29138
|
+
var courseRegistrationSourceSchema = z48.object({
|
|
29139
|
+
siteId: z48.string().optional(),
|
|
29140
|
+
apiBaseUrl: z48.string().optional(),
|
|
29141
|
+
portalToken: z48.string().nullable().optional(),
|
|
28936
29142
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
28937
29143
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
28938
|
-
courses:
|
|
28939
|
-
className:
|
|
28940
|
-
showSessions:
|
|
28941
|
-
showPrice:
|
|
28942
|
-
showCapacity:
|
|
28943
|
-
showVenue:
|
|
28944
|
-
successMessage:
|
|
28945
|
-
waitlistMessage:
|
|
28946
|
-
membershipMessage:
|
|
28947
|
-
buttonText:
|
|
29144
|
+
courses: z48.array(publicCourseSchema).nullable().optional(),
|
|
29145
|
+
className: z48.string().nullable().optional(),
|
|
29146
|
+
showSessions: z48.boolean().optional(),
|
|
29147
|
+
showPrice: z48.boolean().optional(),
|
|
29148
|
+
showCapacity: z48.boolean().optional(),
|
|
29149
|
+
showVenue: z48.boolean().optional(),
|
|
29150
|
+
successMessage: z48.string().optional(),
|
|
29151
|
+
waitlistMessage: z48.string().optional(),
|
|
29152
|
+
membershipMessage: z48.string().optional(),
|
|
29153
|
+
buttonText: z48.string().nullable().optional(),
|
|
28948
29154
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28949
29155
|
stage: previewStageSchema.optional()
|
|
28950
29156
|
});
|
|
28951
|
-
var courseRegistrationDisplaySchema =
|
|
28952
|
-
kind:
|
|
28953
|
-
state:
|
|
28954
|
-
className:
|
|
28955
|
-
summaryButtonText:
|
|
29157
|
+
var courseRegistrationDisplaySchema = z48.object({
|
|
29158
|
+
kind: z48.literal("course-registration"),
|
|
29159
|
+
state: z48.literal("shell"),
|
|
29160
|
+
className: z48.string().nullable(),
|
|
29161
|
+
summaryButtonText: z48.string()
|
|
28956
29162
|
});
|
|
28957
|
-
var courseRegistrationHydrationSchema =
|
|
29163
|
+
var courseRegistrationHydrationSchema = z48.object({
|
|
28958
29164
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
28959
29165
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
28960
|
-
courses:
|
|
28961
|
-
showSessions:
|
|
28962
|
-
showPrice:
|
|
28963
|
-
showCapacity:
|
|
28964
|
-
showVenue:
|
|
28965
|
-
successMessage:
|
|
28966
|
-
waitlistMessage:
|
|
28967
|
-
membershipMessage:
|
|
29166
|
+
courses: z48.array(publicCourseSchema).nullable().optional(),
|
|
29167
|
+
showSessions: z48.boolean().optional(),
|
|
29168
|
+
showPrice: z48.boolean().optional(),
|
|
29169
|
+
showCapacity: z48.boolean().optional(),
|
|
29170
|
+
showVenue: z48.boolean().optional(),
|
|
29171
|
+
successMessage: z48.string().optional(),
|
|
29172
|
+
waitlistMessage: z48.string().optional(),
|
|
29173
|
+
membershipMessage: z48.string().optional(),
|
|
28968
29174
|
buttonVariant: registrationButtonVariantSchema.optional()
|
|
28969
29175
|
});
|
|
28970
|
-
var courseRegistrationRenderSchema =
|
|
29176
|
+
var courseRegistrationRenderSchema = z48.object({
|
|
28971
29177
|
display: courseRegistrationDisplaySchema,
|
|
28972
29178
|
hydration: courseRegistrationHydrationSchema
|
|
28973
29179
|
});
|
|
28974
|
-
var courseRegistrationIslandMetaCodec = createZodCodec(
|
|
28975
|
-
siteId:
|
|
28976
|
-
apiBaseUrl:
|
|
28977
|
-
portalToken:
|
|
29180
|
+
var courseRegistrationIslandMetaCodec = createZodCodec(z48.object({
|
|
29181
|
+
siteId: z48.string().optional(),
|
|
29182
|
+
apiBaseUrl: z48.string().optional(),
|
|
29183
|
+
portalToken: z48.string().nullable().optional(),
|
|
28978
29184
|
stage: previewStageSchema.optional()
|
|
28979
29185
|
}));
|
|
28980
29186
|
var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -29234,32 +29440,32 @@ var courseRegistrationBlockDefinition = {
|
|
|
29234
29440
|
};
|
|
29235
29441
|
|
|
29236
29442
|
// ../blocks/src/system/blocks/event-details.ts
|
|
29237
|
-
import { z as
|
|
29443
|
+
import { z as z50 } from "zod";
|
|
29238
29444
|
|
|
29239
29445
|
// ../blocks/src/system/blocks/shop.shared.ts
|
|
29240
|
-
import { z as
|
|
29241
|
-
var publicPassProductSchema =
|
|
29242
|
-
id:
|
|
29243
|
-
productUseCase:
|
|
29244
|
-
name:
|
|
29245
|
-
description:
|
|
29246
|
-
price:
|
|
29247
|
-
currency:
|
|
29248
|
-
creditsTotal:
|
|
29249
|
-
pricePerCredit:
|
|
29250
|
-
validDays:
|
|
29251
|
-
eligibleCategoryIds:
|
|
29252
|
-
eligibleCategoryNames:
|
|
29253
|
-
});
|
|
29254
|
-
var publicMembershipProductSchema =
|
|
29255
|
-
id:
|
|
29256
|
-
name:
|
|
29257
|
-
description:
|
|
29258
|
-
price:
|
|
29259
|
-
currency:
|
|
29260
|
-
billingInterval:
|
|
29261
|
-
eligibleCategoryIds:
|
|
29262
|
-
eligibleCategoryNames:
|
|
29446
|
+
import { z as z49 } from "zod";
|
|
29447
|
+
var publicPassProductSchema = z49.object({
|
|
29448
|
+
id: z49.string(),
|
|
29449
|
+
productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
|
|
29450
|
+
name: z49.string(),
|
|
29451
|
+
description: z49.string().nullable(),
|
|
29452
|
+
price: z49.number(),
|
|
29453
|
+
currency: z49.string(),
|
|
29454
|
+
creditsTotal: z49.number(),
|
|
29455
|
+
pricePerCredit: z49.number(),
|
|
29456
|
+
validDays: z49.number().nullable(),
|
|
29457
|
+
eligibleCategoryIds: z49.array(z49.string()),
|
|
29458
|
+
eligibleCategoryNames: z49.array(z49.string())
|
|
29459
|
+
});
|
|
29460
|
+
var publicMembershipProductSchema = z49.object({
|
|
29461
|
+
id: z49.string(),
|
|
29462
|
+
name: z49.string(),
|
|
29463
|
+
description: z49.string().nullable(),
|
|
29464
|
+
price: z49.number(),
|
|
29465
|
+
currency: z49.string(),
|
|
29466
|
+
billingInterval: z49.enum(["month", "year"]),
|
|
29467
|
+
eligibleCategoryIds: z49.array(z49.string()),
|
|
29468
|
+
eligibleCategoryNames: z49.array(z49.string())
|
|
29263
29469
|
});
|
|
29264
29470
|
|
|
29265
29471
|
// ../blocks/src/system/blocks/event-details.ts
|
|
@@ -29394,40 +29600,40 @@ var eventDetailsManifest = createBlockManifest({
|
|
|
29394
29600
|
})
|
|
29395
29601
|
]
|
|
29396
29602
|
});
|
|
29397
|
-
var occurrenceContextSchema2 =
|
|
29398
|
-
id:
|
|
29399
|
-
seriesId:
|
|
29400
|
-
startsAt:
|
|
29401
|
-
endsAt:
|
|
29402
|
-
timeZone:
|
|
29403
|
-
capacityOverride:
|
|
29404
|
-
overrides:
|
|
29603
|
+
var occurrenceContextSchema2 = z50.object({
|
|
29604
|
+
id: z50.string(),
|
|
29605
|
+
seriesId: z50.string(),
|
|
29606
|
+
startsAt: z50.string(),
|
|
29607
|
+
endsAt: z50.string(),
|
|
29608
|
+
timeZone: z50.string(),
|
|
29609
|
+
capacityOverride: z50.number().nullable().optional(),
|
|
29610
|
+
overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
|
|
29405
29611
|
}).nullable();
|
|
29406
|
-
var eventAutoApplyDiscountPreviewBaseSchema =
|
|
29407
|
-
id:
|
|
29408
|
-
publicLabel:
|
|
29409
|
-
description:
|
|
29410
|
-
minTicketsRequired:
|
|
29612
|
+
var eventAutoApplyDiscountPreviewBaseSchema = z50.object({
|
|
29613
|
+
id: z50.string(),
|
|
29614
|
+
publicLabel: z50.string(),
|
|
29615
|
+
description: z50.string().nullable(),
|
|
29616
|
+
minTicketsRequired: z50.number().nullable()
|
|
29411
29617
|
});
|
|
29412
|
-
var eventAutoApplyDiscountPreviewSchema =
|
|
29618
|
+
var eventAutoApplyDiscountPreviewSchema = z50.discriminatedUnion("discountType", [
|
|
29413
29619
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29414
|
-
discountType:
|
|
29415
|
-
discountPercent:
|
|
29416
|
-
discountAmountCents:
|
|
29620
|
+
discountType: z50.literal("percent"),
|
|
29621
|
+
discountPercent: z50.number(),
|
|
29622
|
+
discountAmountCents: z50.null()
|
|
29417
29623
|
}),
|
|
29418
29624
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29419
|
-
discountType:
|
|
29420
|
-
discountPercent:
|
|
29421
|
-
discountAmountCents:
|
|
29625
|
+
discountType: z50.literal("fixed"),
|
|
29626
|
+
discountPercent: z50.null(),
|
|
29627
|
+
discountAmountCents: z50.number()
|
|
29422
29628
|
})
|
|
29423
29629
|
]);
|
|
29424
29630
|
var eventDetailsBlockDefinition = {
|
|
29425
29631
|
manifest: eventDetailsManifest,
|
|
29426
29632
|
dataSchemas: {
|
|
29427
|
-
eventDetailsData:
|
|
29633
|
+
eventDetailsData: z50.object({
|
|
29428
29634
|
events: publicEventsArraySchema,
|
|
29429
|
-
sitePasses:
|
|
29430
|
-
siteMemberships:
|
|
29635
|
+
sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
|
|
29636
|
+
siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) }),
|
|
29431
29637
|
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
29432
29638
|
}).optional(),
|
|
29433
29639
|
occurrenceContext: occurrenceContextSchema2.optional()
|
|
@@ -29751,7 +29957,7 @@ var eventSpotlightBlockDefinition = {
|
|
|
29751
29957
|
};
|
|
29752
29958
|
|
|
29753
29959
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
29754
|
-
import { z as
|
|
29960
|
+
import { z as z52 } from "zod";
|
|
29755
29961
|
|
|
29756
29962
|
// ../blocks/src/system/runtime/nodes/events/shared/utils.ts
|
|
29757
29963
|
var COLUMN_CLASSES = {
|
|
@@ -29859,16 +30065,16 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
|
|
|
29859
30065
|
}
|
|
29860
30066
|
|
|
29861
30067
|
// ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
|
|
29862
|
-
import { z as
|
|
30068
|
+
import { z as z51 } from "zod";
|
|
29863
30069
|
var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
|
|
29864
|
-
var eventPageSizeSchema =
|
|
29865
|
-
|
|
29866
|
-
|
|
29867
|
-
|
|
29868
|
-
|
|
29869
|
-
|
|
29870
|
-
|
|
29871
|
-
|
|
30070
|
+
var eventPageSizeSchema = z51.union([
|
|
30071
|
+
z51.literal(3),
|
|
30072
|
+
z51.literal(6),
|
|
30073
|
+
z51.literal(10),
|
|
30074
|
+
z51.literal(12),
|
|
30075
|
+
z51.literal(20),
|
|
30076
|
+
z51.literal(24),
|
|
30077
|
+
z51.literal(30)
|
|
29872
30078
|
]);
|
|
29873
30079
|
var eventPageSizeSet = new Set(eventPageSizeValues);
|
|
29874
30080
|
function resolveEventPageSize(value, fallback = 12) {
|
|
@@ -29878,15 +30084,15 @@ function resolveEventPageSize(value, fallback = 12) {
|
|
|
29878
30084
|
function resolveEventCalendarListPageSize(input) {
|
|
29879
30085
|
return resolveEventPageSize(input.eventsPerPage);
|
|
29880
30086
|
}
|
|
29881
|
-
var eventListPaginationActionSchema =
|
|
29882
|
-
|
|
29883
|
-
kind:
|
|
29884
|
-
label:
|
|
30087
|
+
var eventListPaginationActionSchema = z51.discriminatedUnion("kind", [
|
|
30088
|
+
z51.object({
|
|
30089
|
+
kind: z51.literal("loadMore"),
|
|
30090
|
+
label: z51.string()
|
|
29885
30091
|
}),
|
|
29886
|
-
|
|
29887
|
-
kind:
|
|
29888
|
-
label:
|
|
29889
|
-
href:
|
|
30092
|
+
z51.object({
|
|
30093
|
+
kind: z51.literal("seeAllLink"),
|
|
30094
|
+
label: z51.string(),
|
|
30095
|
+
href: z51.string()
|
|
29890
30096
|
})
|
|
29891
30097
|
]);
|
|
29892
30098
|
function resolveEventListPaginationAction(input) {
|
|
@@ -29899,89 +30105,89 @@ function resolveEventListPaginationAction(input) {
|
|
|
29899
30105
|
}
|
|
29900
30106
|
|
|
29901
30107
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
29902
|
-
var legacyEventCardVariantSchema =
|
|
29903
|
-
var eventCardVariantInputSchema =
|
|
30108
|
+
var legacyEventCardVariantSchema = z52.enum(["variant1", "variant2"]);
|
|
30109
|
+
var eventCardVariantInputSchema = z52.union([
|
|
29904
30110
|
cardVariantRoleSchema,
|
|
29905
30111
|
legacyEventCardVariantSchema
|
|
29906
30112
|
]);
|
|
29907
|
-
var cardOrientationSchema =
|
|
29908
|
-
var eventBlockKindSchema =
|
|
29909
|
-
var eventSurfaceScopeSchema =
|
|
29910
|
-
var eventScheduleScopeSchema2 =
|
|
29911
|
-
var eventListingSourceSchema =
|
|
29912
|
-
events:
|
|
29913
|
-
siteId:
|
|
29914
|
-
apiBaseUrl:
|
|
30113
|
+
var cardOrientationSchema = z52.enum(["vertical", "horizontal"]);
|
|
30114
|
+
var eventBlockKindSchema = z52.enum(eventBlockKindValues);
|
|
30115
|
+
var eventSurfaceScopeSchema = z52.enum(eventSurfaceScopeValues);
|
|
30116
|
+
var eventScheduleScopeSchema2 = z52.enum(eventScheduleScopeValues);
|
|
30117
|
+
var eventListingSourceSchema = z52.object({
|
|
30118
|
+
events: z52.array(publicEventSchema).nullable().optional(),
|
|
30119
|
+
siteId: z52.string(),
|
|
30120
|
+
apiBaseUrl: z52.string().optional(),
|
|
29915
30121
|
stage: previewStageSchema.optional(),
|
|
29916
30122
|
layout: eventLayoutSchema.optional(),
|
|
29917
30123
|
columns: columnOptionSchema.optional(),
|
|
29918
|
-
eventsPerPage:
|
|
29919
|
-
paginationMode:
|
|
29920
|
-
seeAllUrl:
|
|
29921
|
-
loadMoreText:
|
|
30124
|
+
eventsPerPage: z52.string().optional(),
|
|
30125
|
+
paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
|
|
30126
|
+
seeAllUrl: z52.string().optional(),
|
|
30127
|
+
loadMoreText: z52.string().optional(),
|
|
29922
30128
|
cardVariant: eventCardVariantInputSchema.optional(),
|
|
29923
30129
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
29924
|
-
buttonText:
|
|
29925
|
-
showVenue:
|
|
29926
|
-
showMap:
|
|
29927
|
-
showCapacity:
|
|
29928
|
-
emptyMessage:
|
|
29929
|
-
className:
|
|
29930
|
-
showFilters:
|
|
30130
|
+
buttonText: z52.string().optional(),
|
|
30131
|
+
showVenue: z52.boolean().optional(),
|
|
30132
|
+
showMap: z52.boolean().optional(),
|
|
30133
|
+
showCapacity: z52.boolean().optional(),
|
|
30134
|
+
emptyMessage: z52.string().optional(),
|
|
30135
|
+
className: z52.string().optional(),
|
|
30136
|
+
showFilters: z52.boolean().nullable().optional(),
|
|
29931
30137
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
29932
|
-
showVenueFilter:
|
|
29933
|
-
showStaffFilter:
|
|
30138
|
+
showVenueFilter: z52.boolean().nullable().optional(),
|
|
30139
|
+
showStaffFilter: z52.boolean().nullable().optional(),
|
|
29934
30140
|
eventKind: eventBlockKindSchema.nullable().optional(),
|
|
29935
30141
|
eventSurface: eventSurfaceScopeSchema.nullable().optional(),
|
|
29936
|
-
filterEventPresets:
|
|
30142
|
+
filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
29937
30143
|
scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
|
|
29938
|
-
filterCategoryIds:
|
|
29939
|
-
filterStaffMemberId:
|
|
29940
|
-
filterVenueId:
|
|
30144
|
+
filterCategoryIds: z52.string().nullable().optional(),
|
|
30145
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
30146
|
+
filterVenueId: z52.string().nullable().optional()
|
|
29941
30147
|
});
|
|
29942
|
-
var eventListingDisplaySchema =
|
|
29943
|
-
kind:
|
|
29944
|
-
state:
|
|
30148
|
+
var eventListingDisplaySchema = z52.object({
|
|
30149
|
+
kind: z52.literal("event-listing"),
|
|
30150
|
+
state: z52.enum(["loading", "empty", "ready"]),
|
|
29945
30151
|
listLayout: eventLayoutSchema,
|
|
29946
|
-
className:
|
|
29947
|
-
emptyMessage:
|
|
29948
|
-
loadingMessage:
|
|
29949
|
-
containerClass:
|
|
30152
|
+
className: z52.string().nullable(),
|
|
30153
|
+
emptyMessage: z52.string(),
|
|
30154
|
+
loadingMessage: z52.string(),
|
|
30155
|
+
containerClass: z52.string(),
|
|
29950
30156
|
cardVariant: cardVariantRoleSchema,
|
|
29951
30157
|
buttonVariant: eventButtonVariantSchema,
|
|
29952
|
-
buttonText:
|
|
29953
|
-
showVenue:
|
|
29954
|
-
showMap:
|
|
29955
|
-
showCapacity:
|
|
30158
|
+
buttonText: z52.string(),
|
|
30159
|
+
showVenue: z52.boolean(),
|
|
30160
|
+
showMap: z52.boolean(),
|
|
30161
|
+
showCapacity: z52.boolean(),
|
|
29956
30162
|
orientation: cardOrientationSchema,
|
|
29957
|
-
events:
|
|
30163
|
+
events: z52.array(publicEventSchema)
|
|
29958
30164
|
});
|
|
29959
|
-
var eventListingHydrationSchema =
|
|
29960
|
-
siteId:
|
|
30165
|
+
var eventListingHydrationSchema = z52.object({
|
|
30166
|
+
siteId: z52.string(),
|
|
29961
30167
|
stage: previewStageSchema.optional(),
|
|
29962
30168
|
eventsPerPage: eventPageSizeSchema,
|
|
29963
30169
|
paginationAction: eventListPaginationActionSchema,
|
|
29964
|
-
showFilters:
|
|
30170
|
+
showFilters: z52.boolean(),
|
|
29965
30171
|
showCategoryFilter: filterAutoShowSchema,
|
|
29966
|
-
showVenueFilter:
|
|
29967
|
-
showStaffFilter:
|
|
30172
|
+
showVenueFilter: z52.boolean(),
|
|
30173
|
+
showStaffFilter: z52.boolean(),
|
|
29968
30174
|
eventKind: eventBlockKindSchema,
|
|
29969
30175
|
eventSurface: eventSurfaceScopeSchema,
|
|
29970
|
-
filterEventPresets:
|
|
30176
|
+
filterEventPresets: z52.string().nullable(),
|
|
29971
30177
|
scheduleScope: eventScheduleScopeSchema2,
|
|
29972
|
-
filterCategoryIds:
|
|
29973
|
-
filterStaffMemberId:
|
|
29974
|
-
filterVenueId:
|
|
29975
|
-
fetchInitialEventsOnMount:
|
|
30178
|
+
filterCategoryIds: z52.string().nullable().optional(),
|
|
30179
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
30180
|
+
filterVenueId: z52.string().nullable().optional(),
|
|
30181
|
+
fetchInitialEventsOnMount: z52.boolean()
|
|
29976
30182
|
});
|
|
29977
|
-
var eventListingRenderSchema =
|
|
30183
|
+
var eventListingRenderSchema = z52.object({
|
|
29978
30184
|
display: eventListingDisplaySchema,
|
|
29979
30185
|
hydration: eventListingHydrationSchema
|
|
29980
30186
|
});
|
|
29981
30187
|
var eventListingIslandMetaCodec = createZodCodec(
|
|
29982
|
-
|
|
29983
|
-
siteId:
|
|
29984
|
-
apiBaseUrl:
|
|
30188
|
+
z52.object({
|
|
30189
|
+
siteId: z52.string(),
|
|
30190
|
+
apiBaseUrl: z52.string().optional(),
|
|
29985
30191
|
stage: previewStageSchema.optional()
|
|
29986
30192
|
})
|
|
29987
30193
|
);
|
|
@@ -30348,15 +30554,15 @@ var eventListingBlockDefinition = {
|
|
|
30348
30554
|
};
|
|
30349
30555
|
|
|
30350
30556
|
// ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
|
|
30351
|
-
import { z as
|
|
30352
|
-
var eventBlockKindSchema2 =
|
|
30353
|
-
var eventSurfaceScopeSchema2 =
|
|
30354
|
-
var eventScheduleScopeSchema3 =
|
|
30355
|
-
var eventCalendarSourceSchema =
|
|
30557
|
+
import { z as z53 } from "zod";
|
|
30558
|
+
var eventBlockKindSchema2 = z53.enum(eventBlockKindValues);
|
|
30559
|
+
var eventSurfaceScopeSchema2 = z53.enum(eventSurfaceScopeValues);
|
|
30560
|
+
var eventScheduleScopeSchema3 = z53.enum(eventScheduleScopeValues);
|
|
30561
|
+
var eventCalendarSourceSchema = z53.object(
|
|
30356
30562
|
{
|
|
30357
|
-
events:
|
|
30358
|
-
siteId:
|
|
30359
|
-
apiBaseUrl:
|
|
30563
|
+
events: z53.array(publicEventSchema).nullable().optional(),
|
|
30564
|
+
siteId: z53.string(),
|
|
30565
|
+
apiBaseUrl: z53.string().optional(),
|
|
30360
30566
|
stage: previewStageSchema.optional(),
|
|
30361
30567
|
variant: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
30362
30568
|
displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
@@ -30364,78 +30570,78 @@ var eventCalendarSourceSchema = z52.object(
|
|
|
30364
30570
|
listColumns: columnOptionSchema.optional(),
|
|
30365
30571
|
layout: eventLayoutSchema.optional(),
|
|
30366
30572
|
columns: columnOptionSchema.optional(),
|
|
30367
|
-
eventsPerPage:
|
|
30368
|
-
paginationMode:
|
|
30369
|
-
seeAllUrl:
|
|
30370
|
-
loadMoreText:
|
|
30573
|
+
eventsPerPage: z53.string().optional(),
|
|
30574
|
+
paginationMode: z53.enum(["loadMore", "seeAllLink"]).optional(),
|
|
30575
|
+
seeAllUrl: z53.string().optional(),
|
|
30576
|
+
loadMoreText: z53.string().optional(),
|
|
30371
30577
|
startOfWeek: weekStartSchema.optional(),
|
|
30372
30578
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
30373
|
-
showFilters:
|
|
30579
|
+
showFilters: z53.boolean().nullable().optional(),
|
|
30374
30580
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
30375
|
-
showVenueFilter:
|
|
30376
|
-
showStaffFilter:
|
|
30581
|
+
showVenueFilter: z53.boolean().nullable().optional(),
|
|
30582
|
+
showStaffFilter: z53.boolean().nullable().optional(),
|
|
30377
30583
|
kind: eventBlockKindSchema2.nullable().optional(),
|
|
30378
30584
|
eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
|
|
30379
|
-
filterEventPresets:
|
|
30585
|
+
filterEventPresets: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
|
|
30380
30586
|
scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
|
|
30381
|
-
filterCategoryIds:
|
|
30382
|
-
filterStaffMemberId:
|
|
30383
|
-
filterVenueId:
|
|
30587
|
+
filterCategoryIds: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
|
|
30588
|
+
filterStaffMemberId: z53.string().nullable().optional(),
|
|
30589
|
+
filterVenueId: z53.string().nullable().optional(),
|
|
30384
30590
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
30385
|
-
buttonText:
|
|
30386
|
-
showVenue:
|
|
30387
|
-
showMap:
|
|
30388
|
-
showCapacity:
|
|
30389
|
-
emptyMessage:
|
|
30390
|
-
className:
|
|
30591
|
+
buttonText: z53.string().optional(),
|
|
30592
|
+
showVenue: z53.boolean().nullable().optional(),
|
|
30593
|
+
showMap: z53.boolean().nullable().optional(),
|
|
30594
|
+
showCapacity: z53.boolean().nullable().optional(),
|
|
30595
|
+
emptyMessage: z53.string().optional(),
|
|
30596
|
+
className: z53.string().optional()
|
|
30391
30597
|
}
|
|
30392
30598
|
);
|
|
30393
|
-
var eventCalendarDisplaySchema =
|
|
30394
|
-
kind:
|
|
30599
|
+
var eventCalendarDisplaySchema = z53.object({
|
|
30600
|
+
kind: z53.literal("event-calendar"),
|
|
30395
30601
|
displayMode: eventCalendarDisplayModeSchema,
|
|
30396
|
-
className:
|
|
30397
|
-
events:
|
|
30602
|
+
className: z53.string().nullable(),
|
|
30603
|
+
events: z53.array(publicEventSchema),
|
|
30398
30604
|
listLayout: eventLayoutSchema,
|
|
30399
30605
|
listColumns: columnOptionSchema,
|
|
30400
30606
|
eventsPerPage: eventPageSizeSchema,
|
|
30401
30607
|
paginationAction: eventListPaginationActionSchema,
|
|
30402
30608
|
startOfWeek: weekStartSchema,
|
|
30403
30609
|
calendarTabViews: calendarTabViewsSchema,
|
|
30404
|
-
showFilters:
|
|
30610
|
+
showFilters: z53.boolean(),
|
|
30405
30611
|
showCategoryFilter: filterAutoShowSchema,
|
|
30406
|
-
showVenueFilter:
|
|
30407
|
-
showStaffFilter:
|
|
30612
|
+
showVenueFilter: z53.boolean(),
|
|
30613
|
+
showStaffFilter: z53.boolean(),
|
|
30408
30614
|
eventKind: eventBlockKindSchema2,
|
|
30409
30615
|
eventSurface: eventSurfaceScopeSchema2,
|
|
30410
|
-
filterEventPresets:
|
|
30616
|
+
filterEventPresets: z53.string().nullable(),
|
|
30411
30617
|
scheduleScope: eventScheduleScopeSchema3,
|
|
30412
|
-
filterCategoryIds:
|
|
30413
|
-
filterStaffMemberId:
|
|
30414
|
-
filterVenueId:
|
|
30618
|
+
filterCategoryIds: z53.string().nullable(),
|
|
30619
|
+
filterStaffMemberId: z53.string().nullable(),
|
|
30620
|
+
filterVenueId: z53.string().nullable(),
|
|
30415
30621
|
buttonVariant: eventButtonVariantSchema,
|
|
30416
|
-
buttonText:
|
|
30417
|
-
showVenue:
|
|
30418
|
-
showMap:
|
|
30419
|
-
showCapacity:
|
|
30420
|
-
emptyMessage:
|
|
30421
|
-
});
|
|
30422
|
-
var eventCalendarHydrationSchema =
|
|
30423
|
-
siteId:
|
|
30622
|
+
buttonText: z53.string(),
|
|
30623
|
+
showVenue: z53.boolean(),
|
|
30624
|
+
showMap: z53.boolean(),
|
|
30625
|
+
showCapacity: z53.boolean(),
|
|
30626
|
+
emptyMessage: z53.string()
|
|
30627
|
+
});
|
|
30628
|
+
var eventCalendarHydrationSchema = z53.object({
|
|
30629
|
+
siteId: z53.string(),
|
|
30424
30630
|
stage: previewStageSchema.optional(),
|
|
30425
|
-
prefetchedEvents:
|
|
30631
|
+
prefetchedEvents: z53.boolean(),
|
|
30426
30632
|
eventKind: eventBlockKindSchema2,
|
|
30427
30633
|
eventSurface: eventSurfaceScopeSchema2,
|
|
30428
|
-
filterEventPresets:
|
|
30634
|
+
filterEventPresets: z53.string().nullable(),
|
|
30429
30635
|
scheduleScope: eventScheduleScopeSchema3
|
|
30430
30636
|
});
|
|
30431
|
-
var eventCalendarRenderSchema =
|
|
30637
|
+
var eventCalendarRenderSchema = z53.object({
|
|
30432
30638
|
display: eventCalendarDisplaySchema,
|
|
30433
30639
|
hydration: eventCalendarHydrationSchema
|
|
30434
30640
|
});
|
|
30435
30641
|
var eventCalendarIslandMetaCodec = createZodCodec(
|
|
30436
|
-
|
|
30437
|
-
siteId:
|
|
30438
|
-
apiBaseUrl:
|
|
30642
|
+
z53.object({
|
|
30643
|
+
siteId: z53.string(),
|
|
30644
|
+
apiBaseUrl: z53.string().optional(),
|
|
30439
30645
|
stage: previewStageSchema.optional()
|
|
30440
30646
|
})
|
|
30441
30647
|
);
|
|
@@ -31144,7 +31350,7 @@ var eventCalendarBlockDefinition = {
|
|
|
31144
31350
|
};
|
|
31145
31351
|
|
|
31146
31352
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
31147
|
-
import { z as
|
|
31353
|
+
import { z as z54 } from "zod";
|
|
31148
31354
|
|
|
31149
31355
|
// ../blocks/src/system/blocks/offerings-preview/model.ts
|
|
31150
31356
|
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
|
|
@@ -31236,13 +31442,13 @@ function isRecord5(value) {
|
|
|
31236
31442
|
}
|
|
31237
31443
|
|
|
31238
31444
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
31239
|
-
var publicRouteCandidatesSchema =
|
|
31240
|
-
routes:
|
|
31241
|
-
entityId:
|
|
31242
|
-
path:
|
|
31243
|
-
title:
|
|
31244
|
-
kind:
|
|
31245
|
-
contentTypeKey:
|
|
31445
|
+
var publicRouteCandidatesSchema = z54.object({
|
|
31446
|
+
routes: z54.array(z54.object({
|
|
31447
|
+
entityId: z54.string(),
|
|
31448
|
+
path: z54.string(),
|
|
31449
|
+
title: z54.string(),
|
|
31450
|
+
kind: z54.enum(["page", "content"]),
|
|
31451
|
+
contentTypeKey: z54.string().nullable().optional()
|
|
31246
31452
|
}))
|
|
31247
31453
|
});
|
|
31248
31454
|
var groupOverrideFields = [
|
|
@@ -31640,7 +31846,7 @@ function isRecord6(value) {
|
|
|
31640
31846
|
}
|
|
31641
31847
|
|
|
31642
31848
|
// ../blocks/src/system/blocks/embed.ts
|
|
31643
|
-
import { z as
|
|
31849
|
+
import { z as z55 } from "zod";
|
|
31644
31850
|
var embedFields = [
|
|
31645
31851
|
// Section heading
|
|
31646
31852
|
parseFieldDefinition({
|
|
@@ -31871,18 +32077,18 @@ var embedManifest = createBlockManifest({
|
|
|
31871
32077
|
spacing: "lg"
|
|
31872
32078
|
}
|
|
31873
32079
|
});
|
|
31874
|
-
var embedEntrySchema =
|
|
31875
|
-
id:
|
|
31876
|
-
identifier:
|
|
31877
|
-
title:
|
|
31878
|
-
slug:
|
|
31879
|
-
content:
|
|
31880
|
-
publishedAt:
|
|
32080
|
+
var embedEntrySchema = z55.object({
|
|
32081
|
+
id: z55.string(),
|
|
32082
|
+
identifier: z55.string(),
|
|
32083
|
+
title: z55.string(),
|
|
32084
|
+
slug: z55.string().nullable().optional(),
|
|
32085
|
+
content: z55.record(z55.string(), z55.unknown()).optional(),
|
|
32086
|
+
publishedAt: z55.string().nullable().optional()
|
|
31881
32087
|
});
|
|
31882
32088
|
var embedBlockDefinition = {
|
|
31883
32089
|
manifest: embedManifest,
|
|
31884
32090
|
dataSchemas: {
|
|
31885
|
-
entries:
|
|
32091
|
+
entries: z55.array(embedEntrySchema).optional()
|
|
31886
32092
|
},
|
|
31887
32093
|
dataLoaders: {
|
|
31888
32094
|
entries: {
|
|
@@ -33066,52 +33272,52 @@ var fileDownloadBlockDefinition = {
|
|
|
33066
33272
|
};
|
|
33067
33273
|
|
|
33068
33274
|
// ../blocks/src/system/blocks/shop.ts
|
|
33069
|
-
import { z as
|
|
33275
|
+
import { z as z59 } from "zod";
|
|
33070
33276
|
|
|
33071
33277
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
33072
|
-
import { z as
|
|
33278
|
+
import { z as z58 } from "zod";
|
|
33073
33279
|
|
|
33074
33280
|
// ../blocks/src/system/blocks/products/shared.ts
|
|
33075
|
-
import { z as
|
|
33076
|
-
var publicProductVariantSchema =
|
|
33077
|
-
id:
|
|
33078
|
-
title:
|
|
33079
|
-
sku:
|
|
33080
|
-
priceCents:
|
|
33081
|
-
stockQuantity:
|
|
33082
|
-
soldOut:
|
|
33083
|
-
});
|
|
33084
|
-
var publicProductSchema =
|
|
33085
|
-
id:
|
|
33086
|
-
contentEntryId:
|
|
33087
|
-
title:
|
|
33088
|
-
slug:
|
|
33089
|
-
path:
|
|
33090
|
-
status:
|
|
33091
|
-
priceCents:
|
|
33092
|
-
currency:
|
|
33093
|
-
productType:
|
|
33094
|
-
requiresShipping:
|
|
33095
|
-
hasVariants:
|
|
33096
|
-
trackInventory:
|
|
33097
|
-
soldOut:
|
|
33098
|
-
category:
|
|
33099
|
-
id:
|
|
33100
|
-
name:
|
|
33101
|
-
slug:
|
|
33281
|
+
import { z as z56 } from "zod";
|
|
33282
|
+
var publicProductVariantSchema = z56.object({
|
|
33283
|
+
id: z56.string(),
|
|
33284
|
+
title: z56.string(),
|
|
33285
|
+
sku: z56.string().nullable(),
|
|
33286
|
+
priceCents: z56.number(),
|
|
33287
|
+
stockQuantity: z56.number().nullable(),
|
|
33288
|
+
soldOut: z56.boolean()
|
|
33289
|
+
});
|
|
33290
|
+
var publicProductSchema = z56.object({
|
|
33291
|
+
id: z56.string(),
|
|
33292
|
+
contentEntryId: z56.string().nullable(),
|
|
33293
|
+
title: z56.string(),
|
|
33294
|
+
slug: z56.string(),
|
|
33295
|
+
path: z56.string().nullable(),
|
|
33296
|
+
status: z56.enum(["draft", "active"]),
|
|
33297
|
+
priceCents: z56.number(),
|
|
33298
|
+
currency: z56.string(),
|
|
33299
|
+
productType: z56.enum(["physical", "digital"]),
|
|
33300
|
+
requiresShipping: z56.boolean(),
|
|
33301
|
+
hasVariants: z56.boolean(),
|
|
33302
|
+
trackInventory: z56.boolean(),
|
|
33303
|
+
soldOut: z56.boolean(),
|
|
33304
|
+
category: z56.object({
|
|
33305
|
+
id: z56.string(),
|
|
33306
|
+
name: z56.string(),
|
|
33307
|
+
slug: z56.string()
|
|
33102
33308
|
}).nullable(),
|
|
33103
|
-
summary:
|
|
33104
|
-
body:
|
|
33105
|
-
gallery:
|
|
33106
|
-
|
|
33107
|
-
url:
|
|
33108
|
-
alt:
|
|
33309
|
+
summary: z56.string().nullable(),
|
|
33310
|
+
body: z56.unknown().nullable(),
|
|
33311
|
+
gallery: z56.array(
|
|
33312
|
+
z56.object({
|
|
33313
|
+
url: z56.string(),
|
|
33314
|
+
alt: z56.string().nullable()
|
|
33109
33315
|
})
|
|
33110
33316
|
),
|
|
33111
|
-
variants:
|
|
33317
|
+
variants: z56.array(publicProductVariantSchema)
|
|
33112
33318
|
});
|
|
33113
|
-
var publicProductsResponseSchema =
|
|
33114
|
-
products:
|
|
33319
|
+
var publicProductsResponseSchema = z56.object({
|
|
33320
|
+
products: z56.array(publicProductSchema)
|
|
33115
33321
|
});
|
|
33116
33322
|
|
|
33117
33323
|
// ../blocks/src/system/runtime/api/creditProducts.ts
|
|
@@ -33175,27 +33381,27 @@ function deriveCreditProductLabels(products, options = {}) {
|
|
|
33175
33381
|
}
|
|
33176
33382
|
|
|
33177
33383
|
// ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
|
|
33178
|
-
import { z as
|
|
33179
|
-
var storedProductCartItemSchema =
|
|
33180
|
-
kind:
|
|
33181
|
-
productId:
|
|
33182
|
-
productCategoryId:
|
|
33183
|
-
variantId:
|
|
33184
|
-
title:
|
|
33185
|
-
variantTitle:
|
|
33186
|
-
quantity:
|
|
33187
|
-
unitPriceCents:
|
|
33188
|
-
currency:
|
|
33189
|
-
imageUrl:
|
|
33190
|
-
soldOut:
|
|
33191
|
-
});
|
|
33192
|
-
var storedPassCartItemSchema =
|
|
33193
|
-
kind:
|
|
33194
|
-
passId:
|
|
33195
|
-
title:
|
|
33196
|
-
quantity:
|
|
33197
|
-
unitPriceCents:
|
|
33198
|
-
currency:
|
|
33384
|
+
import { z as z57 } from "zod";
|
|
33385
|
+
var storedProductCartItemSchema = z57.object({
|
|
33386
|
+
kind: z57.literal("product"),
|
|
33387
|
+
productId: z57.string().min(1),
|
|
33388
|
+
productCategoryId: z57.string().min(1).optional().nullable(),
|
|
33389
|
+
variantId: z57.string().min(1).optional().nullable(),
|
|
33390
|
+
title: z57.string().min(1),
|
|
33391
|
+
variantTitle: z57.string().optional().nullable(),
|
|
33392
|
+
quantity: z57.number().finite(),
|
|
33393
|
+
unitPriceCents: z57.number().finite(),
|
|
33394
|
+
currency: z57.string().min(1),
|
|
33395
|
+
imageUrl: z57.string().optional().nullable(),
|
|
33396
|
+
soldOut: z57.boolean().optional()
|
|
33397
|
+
});
|
|
33398
|
+
var storedPassCartItemSchema = z57.object({
|
|
33399
|
+
kind: z57.literal("pass"),
|
|
33400
|
+
passId: z57.string().min(1),
|
|
33401
|
+
title: z57.string().min(1),
|
|
33402
|
+
quantity: z57.number().finite().optional(),
|
|
33403
|
+
unitPriceCents: z57.number().finite(),
|
|
33404
|
+
currency: z57.string().min(1)
|
|
33199
33405
|
});
|
|
33200
33406
|
function deriveCommerceCheckoutState(state) {
|
|
33201
33407
|
if (state.items.length === 0) {
|
|
@@ -33234,10 +33440,7 @@ function resolveSelectedProduct(products, contentEntry, productSlug) {
|
|
|
33234
33440
|
|
|
33235
33441
|
// ../blocks/src/system/runtime/nodes/commerce/shared/display.ts
|
|
33236
33442
|
function formatCommercePrice(cents, currency) {
|
|
33237
|
-
return
|
|
33238
|
-
style: "currency",
|
|
33239
|
-
currency: currency.toUpperCase()
|
|
33240
|
-
}).format(cents / 100);
|
|
33443
|
+
return formatCurrencyAmount(cents, currency);
|
|
33241
33444
|
}
|
|
33242
33445
|
function getPassesHeading(passes, explicitHeading) {
|
|
33243
33446
|
if (explicitHeading) return explicitHeading;
|
|
@@ -33432,214 +33635,214 @@ function formatValidity(days) {
|
|
|
33432
33635
|
}
|
|
33433
33636
|
|
|
33434
33637
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
33435
|
-
var shopModeSchema =
|
|
33436
|
-
var contentEntrySchema3 =
|
|
33437
|
-
id:
|
|
33438
|
-
slug:
|
|
33638
|
+
var shopModeSchema = z58.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
|
|
33639
|
+
var contentEntrySchema3 = z58.object({
|
|
33640
|
+
id: z58.string().nullable().optional(),
|
|
33641
|
+
slug: z58.string().nullable().optional()
|
|
33439
33642
|
}).nullable();
|
|
33440
|
-
var shopSourceSchema =
|
|
33441
|
-
className:
|
|
33643
|
+
var shopSourceSchema = z58.object({
|
|
33644
|
+
className: z58.string().nullable().optional(),
|
|
33442
33645
|
mode: shopModeSchema.optional(),
|
|
33443
|
-
heading:
|
|
33444
|
-
productSlug:
|
|
33445
|
-
showPasses:
|
|
33446
|
-
showMemberships:
|
|
33447
|
-
layout:
|
|
33448
|
-
columns:
|
|
33449
|
-
showDescriptions:
|
|
33450
|
-
showSummary:
|
|
33451
|
-
showBody:
|
|
33452
|
-
showPrices:
|
|
33453
|
-
showValidityPeriod:
|
|
33454
|
-
showPricePerCredit:
|
|
33455
|
-
passesHeading:
|
|
33456
|
-
membershipsHeading:
|
|
33457
|
-
buyButtonText:
|
|
33458
|
-
addButtonText:
|
|
33459
|
-
passPurchaseMode:
|
|
33460
|
-
subscribeButtonText:
|
|
33461
|
-
emptyStateText:
|
|
33462
|
-
checkoutButtonText:
|
|
33463
|
-
clearButtonText:
|
|
33464
|
-
submitButtonText:
|
|
33646
|
+
heading: z58.string().nullable().optional(),
|
|
33647
|
+
productSlug: z58.string().nullable().optional(),
|
|
33648
|
+
showPasses: z58.boolean().optional(),
|
|
33649
|
+
showMemberships: z58.boolean().optional(),
|
|
33650
|
+
layout: z58.enum(["grid", "list"]).optional(),
|
|
33651
|
+
columns: z58.string().optional(),
|
|
33652
|
+
showDescriptions: z58.boolean().optional(),
|
|
33653
|
+
showSummary: z58.boolean().optional(),
|
|
33654
|
+
showBody: z58.boolean().optional(),
|
|
33655
|
+
showPrices: z58.boolean().optional(),
|
|
33656
|
+
showValidityPeriod: z58.boolean().optional(),
|
|
33657
|
+
showPricePerCredit: z58.boolean().nullable().optional(),
|
|
33658
|
+
passesHeading: z58.string().optional(),
|
|
33659
|
+
membershipsHeading: z58.string().optional(),
|
|
33660
|
+
buyButtonText: z58.string().optional(),
|
|
33661
|
+
addButtonText: z58.string().optional(),
|
|
33662
|
+
passPurchaseMode: z58.enum(["add_to_cart", "buy_now"]).optional(),
|
|
33663
|
+
subscribeButtonText: z58.string().optional(),
|
|
33664
|
+
emptyStateText: z58.string().optional(),
|
|
33665
|
+
checkoutButtonText: z58.string().optional(),
|
|
33666
|
+
clearButtonText: z58.string().optional(),
|
|
33667
|
+
submitButtonText: z58.string().optional(),
|
|
33465
33668
|
contentEntry: contentEntrySchema3.optional(),
|
|
33466
|
-
passes:
|
|
33467
|
-
memberships:
|
|
33468
|
-
products:
|
|
33469
|
-
siteId:
|
|
33470
|
-
apiBaseUrl:
|
|
33669
|
+
passes: z58.array(publicPassProductSchema).nullable().optional(),
|
|
33670
|
+
memberships: z58.array(publicMembershipProductSchema).nullable().optional(),
|
|
33671
|
+
products: z58.array(publicProductSchema).nullable().optional(),
|
|
33672
|
+
siteId: z58.string().optional(),
|
|
33673
|
+
apiBaseUrl: z58.string().optional(),
|
|
33471
33674
|
stage: previewStageSchema.optional()
|
|
33472
33675
|
});
|
|
33473
|
-
var productVariantOptionDisplaySchema =
|
|
33474
|
-
id:
|
|
33475
|
-
label:
|
|
33476
|
-
soldOut:
|
|
33477
|
-
});
|
|
33478
|
-
var productCardDisplaySchema =
|
|
33479
|
-
productId:
|
|
33480
|
-
title:
|
|
33481
|
-
path:
|
|
33482
|
-
summary:
|
|
33483
|
-
priceLabel:
|
|
33484
|
-
image:
|
|
33485
|
-
url:
|
|
33486
|
-
alt:
|
|
33676
|
+
var productVariantOptionDisplaySchema = z58.object({
|
|
33677
|
+
id: z58.string(),
|
|
33678
|
+
label: z58.string(),
|
|
33679
|
+
soldOut: z58.boolean()
|
|
33680
|
+
});
|
|
33681
|
+
var productCardDisplaySchema = z58.object({
|
|
33682
|
+
productId: z58.string(),
|
|
33683
|
+
title: z58.string(),
|
|
33684
|
+
path: z58.string().nullable(),
|
|
33685
|
+
summary: z58.string().nullable(),
|
|
33686
|
+
priceLabel: z58.string().nullable(),
|
|
33687
|
+
image: z58.object({
|
|
33688
|
+
url: z58.string(),
|
|
33689
|
+
alt: z58.string().nullable()
|
|
33487
33690
|
}).nullable(),
|
|
33488
|
-
variantOptions:
|
|
33489
|
-
selectedVariantId:
|
|
33490
|
-
selectionLabel:
|
|
33491
|
-
actionLabel:
|
|
33492
|
-
soldOut:
|
|
33493
|
-
});
|
|
33494
|
-
var productListDisplaySchema =
|
|
33495
|
-
kind:
|
|
33496
|
-
state:
|
|
33497
|
-
heading:
|
|
33498
|
-
className:
|
|
33499
|
-
layout:
|
|
33500
|
-
columns:
|
|
33501
|
-
emptyMessage:
|
|
33502
|
-
cards:
|
|
33503
|
-
});
|
|
33504
|
-
var productDetailDisplaySchema =
|
|
33505
|
-
|
|
33506
|
-
kind:
|
|
33507
|
-
state:
|
|
33508
|
-
heading:
|
|
33509
|
-
className:
|
|
33510
|
-
emptyMessage:
|
|
33691
|
+
variantOptions: z58.array(productVariantOptionDisplaySchema),
|
|
33692
|
+
selectedVariantId: z58.string().nullable(),
|
|
33693
|
+
selectionLabel: z58.string(),
|
|
33694
|
+
actionLabel: z58.string(),
|
|
33695
|
+
soldOut: z58.boolean()
|
|
33696
|
+
});
|
|
33697
|
+
var productListDisplaySchema = z58.object({
|
|
33698
|
+
kind: z58.literal("product-list"),
|
|
33699
|
+
state: z58.enum(["empty", "ready"]),
|
|
33700
|
+
heading: z58.string().nullable(),
|
|
33701
|
+
className: z58.string().nullable(),
|
|
33702
|
+
layout: z58.enum(["grid", "list"]),
|
|
33703
|
+
columns: z58.string(),
|
|
33704
|
+
emptyMessage: z58.string(),
|
|
33705
|
+
cards: z58.array(productCardDisplaySchema)
|
|
33706
|
+
});
|
|
33707
|
+
var productDetailDisplaySchema = z58.discriminatedUnion("state", [
|
|
33708
|
+
z58.object({
|
|
33709
|
+
kind: z58.literal("product-detail"),
|
|
33710
|
+
state: z58.literal("empty"),
|
|
33711
|
+
heading: z58.string().nullable(),
|
|
33712
|
+
className: z58.string().nullable(),
|
|
33713
|
+
emptyMessage: z58.string()
|
|
33511
33714
|
}),
|
|
33512
|
-
|
|
33513
|
-
kind:
|
|
33514
|
-
state:
|
|
33515
|
-
heading:
|
|
33516
|
-
className:
|
|
33517
|
-
title:
|
|
33518
|
-
priceLabel:
|
|
33519
|
-
summary:
|
|
33520
|
-
categoryLabel:
|
|
33521
|
-
gallery:
|
|
33522
|
-
url:
|
|
33523
|
-
alt:
|
|
33715
|
+
z58.object({
|
|
33716
|
+
kind: z58.literal("product-detail"),
|
|
33717
|
+
state: z58.literal("ready"),
|
|
33718
|
+
heading: z58.string().nullable(),
|
|
33719
|
+
className: z58.string().nullable(),
|
|
33720
|
+
title: z58.string(),
|
|
33721
|
+
priceLabel: z58.string(),
|
|
33722
|
+
summary: z58.string().nullable(),
|
|
33723
|
+
categoryLabel: z58.string().nullable(),
|
|
33724
|
+
gallery: z58.array(z58.object({
|
|
33725
|
+
url: z58.string(),
|
|
33726
|
+
alt: z58.string().nullable()
|
|
33524
33727
|
})),
|
|
33525
|
-
variantOptions:
|
|
33526
|
-
selectedVariantId:
|
|
33527
|
-
selectionLabel:
|
|
33528
|
-
actionLabel:
|
|
33529
|
-
soldOut:
|
|
33530
|
-
body:
|
|
33728
|
+
variantOptions: z58.array(productVariantOptionDisplaySchema),
|
|
33729
|
+
selectedVariantId: z58.string().nullable(),
|
|
33730
|
+
selectionLabel: z58.string(),
|
|
33731
|
+
actionLabel: z58.string(),
|
|
33732
|
+
soldOut: z58.boolean(),
|
|
33733
|
+
body: z58.unknown().nullable()
|
|
33531
33734
|
})
|
|
33532
33735
|
]);
|
|
33533
|
-
var passCardDisplaySchema =
|
|
33534
|
-
id:
|
|
33535
|
-
title:
|
|
33536
|
-
description:
|
|
33537
|
-
priceLabel:
|
|
33538
|
-
creditsLabel:
|
|
33539
|
-
perCreditLabel:
|
|
33540
|
-
validityLabel:
|
|
33541
|
-
actionLabel:
|
|
33542
|
-
});
|
|
33543
|
-
var membershipCardDisplaySchema =
|
|
33544
|
-
id:
|
|
33545
|
-
title:
|
|
33546
|
-
description:
|
|
33547
|
-
priceLabel:
|
|
33548
|
-
intervalLabel:
|
|
33549
|
-
actionLabel:
|
|
33550
|
-
});
|
|
33551
|
-
var passesMembershipsDisplaySchema =
|
|
33552
|
-
kind:
|
|
33553
|
-
state:
|
|
33554
|
-
className:
|
|
33555
|
-
layout:
|
|
33556
|
-
columns:
|
|
33557
|
-
emptyMessage:
|
|
33558
|
-
passesHeading:
|
|
33559
|
-
membershipsHeading:
|
|
33560
|
-
passes:
|
|
33561
|
-
memberships:
|
|
33562
|
-
});
|
|
33563
|
-
var cartLineDisplaySchema =
|
|
33564
|
-
key:
|
|
33565
|
-
title:
|
|
33566
|
-
priceLabel:
|
|
33567
|
-
quantity:
|
|
33568
|
-
quantityEditable:
|
|
33569
|
-
});
|
|
33570
|
-
var cartDisplaySchema =
|
|
33571
|
-
kind:
|
|
33572
|
-
state:
|
|
33573
|
-
heading:
|
|
33574
|
-
className:
|
|
33575
|
-
emptyMessage:
|
|
33576
|
-
supportText:
|
|
33577
|
-
items:
|
|
33578
|
-
subtotalLabel:
|
|
33579
|
-
checkoutButtonText:
|
|
33580
|
-
clearButtonText:
|
|
33581
|
-
});
|
|
33582
|
-
var checkoutDisplaySchema =
|
|
33583
|
-
kind:
|
|
33584
|
-
state:
|
|
33585
|
-
heading:
|
|
33586
|
-
className:
|
|
33587
|
-
message:
|
|
33588
|
-
submitButtonText:
|
|
33589
|
-
});
|
|
33590
|
-
var passesMembershipsHydrationSchema =
|
|
33591
|
-
passes:
|
|
33592
|
-
memberships:
|
|
33593
|
-
passPurchaseMode:
|
|
33594
|
-
});
|
|
33595
|
-
var productListHydrationSchema =
|
|
33596
|
-
products:
|
|
33597
|
-
showSummary:
|
|
33598
|
-
showPrices:
|
|
33599
|
-
addButtonText:
|
|
33600
|
-
});
|
|
33601
|
-
var productDetailHydrationSchema =
|
|
33602
|
-
products:
|
|
33603
|
-
productId:
|
|
33604
|
-
showSummary:
|
|
33605
|
-
showBody:
|
|
33606
|
-
addButtonText:
|
|
33607
|
-
});
|
|
33608
|
-
var cartHydrationSchema =
|
|
33609
|
-
emptyStateText:
|
|
33610
|
-
checkoutButtonText:
|
|
33611
|
-
clearButtonText:
|
|
33612
|
-
});
|
|
33613
|
-
var checkoutHydrationSchema =
|
|
33614
|
-
emptyStateText:
|
|
33615
|
-
submitButtonText:
|
|
33616
|
-
});
|
|
33617
|
-
var passesMembershipsRenderSchema =
|
|
33736
|
+
var passCardDisplaySchema = z58.object({
|
|
33737
|
+
id: z58.string(),
|
|
33738
|
+
title: z58.string(),
|
|
33739
|
+
description: z58.string().nullable(),
|
|
33740
|
+
priceLabel: z58.string(),
|
|
33741
|
+
creditsLabel: z58.string(),
|
|
33742
|
+
perCreditLabel: z58.string().nullable(),
|
|
33743
|
+
validityLabel: z58.string().nullable(),
|
|
33744
|
+
actionLabel: z58.string()
|
|
33745
|
+
});
|
|
33746
|
+
var membershipCardDisplaySchema = z58.object({
|
|
33747
|
+
id: z58.string(),
|
|
33748
|
+
title: z58.string(),
|
|
33749
|
+
description: z58.string().nullable(),
|
|
33750
|
+
priceLabel: z58.string(),
|
|
33751
|
+
intervalLabel: z58.string(),
|
|
33752
|
+
actionLabel: z58.string()
|
|
33753
|
+
});
|
|
33754
|
+
var passesMembershipsDisplaySchema = z58.object({
|
|
33755
|
+
kind: z58.literal("passes-memberships"),
|
|
33756
|
+
state: z58.enum(["empty", "ready"]),
|
|
33757
|
+
className: z58.string().nullable(),
|
|
33758
|
+
layout: z58.enum(["grid", "list"]),
|
|
33759
|
+
columns: z58.string(),
|
|
33760
|
+
emptyMessage: z58.string(),
|
|
33761
|
+
passesHeading: z58.string(),
|
|
33762
|
+
membershipsHeading: z58.string(),
|
|
33763
|
+
passes: z58.array(passCardDisplaySchema),
|
|
33764
|
+
memberships: z58.array(membershipCardDisplaySchema)
|
|
33765
|
+
});
|
|
33766
|
+
var cartLineDisplaySchema = z58.object({
|
|
33767
|
+
key: z58.string(),
|
|
33768
|
+
title: z58.string(),
|
|
33769
|
+
priceLabel: z58.string(),
|
|
33770
|
+
quantity: z58.number(),
|
|
33771
|
+
quantityEditable: z58.boolean()
|
|
33772
|
+
});
|
|
33773
|
+
var cartDisplaySchema = z58.object({
|
|
33774
|
+
kind: z58.literal("cart"),
|
|
33775
|
+
state: z58.enum(["empty", "ready"]),
|
|
33776
|
+
heading: z58.string().nullable(),
|
|
33777
|
+
className: z58.string().nullable(),
|
|
33778
|
+
emptyMessage: z58.string(),
|
|
33779
|
+
supportText: z58.string().nullable(),
|
|
33780
|
+
items: z58.array(cartLineDisplaySchema),
|
|
33781
|
+
subtotalLabel: z58.string().nullable(),
|
|
33782
|
+
checkoutButtonText: z58.string(),
|
|
33783
|
+
clearButtonText: z58.string()
|
|
33784
|
+
});
|
|
33785
|
+
var checkoutDisplaySchema = z58.object({
|
|
33786
|
+
kind: z58.literal("checkout"),
|
|
33787
|
+
state: z58.enum(["empty", "blocked", "ready"]),
|
|
33788
|
+
heading: z58.string().nullable(),
|
|
33789
|
+
className: z58.string().nullable(),
|
|
33790
|
+
message: z58.string().nullable(),
|
|
33791
|
+
submitButtonText: z58.string()
|
|
33792
|
+
});
|
|
33793
|
+
var passesMembershipsHydrationSchema = z58.object({
|
|
33794
|
+
passes: z58.array(publicPassProductSchema),
|
|
33795
|
+
memberships: z58.array(publicMembershipProductSchema),
|
|
33796
|
+
passPurchaseMode: z58.enum(["add_to_cart", "buy_now"])
|
|
33797
|
+
});
|
|
33798
|
+
var productListHydrationSchema = z58.object({
|
|
33799
|
+
products: z58.array(publicProductSchema),
|
|
33800
|
+
showSummary: z58.boolean(),
|
|
33801
|
+
showPrices: z58.boolean(),
|
|
33802
|
+
addButtonText: z58.string()
|
|
33803
|
+
});
|
|
33804
|
+
var productDetailHydrationSchema = z58.object({
|
|
33805
|
+
products: z58.array(publicProductSchema),
|
|
33806
|
+
productId: z58.string().nullable(),
|
|
33807
|
+
showSummary: z58.boolean(),
|
|
33808
|
+
showBody: z58.boolean(),
|
|
33809
|
+
addButtonText: z58.string()
|
|
33810
|
+
});
|
|
33811
|
+
var cartHydrationSchema = z58.object({
|
|
33812
|
+
emptyStateText: z58.string(),
|
|
33813
|
+
checkoutButtonText: z58.string(),
|
|
33814
|
+
clearButtonText: z58.string()
|
|
33815
|
+
});
|
|
33816
|
+
var checkoutHydrationSchema = z58.object({
|
|
33817
|
+
emptyStateText: z58.string(),
|
|
33818
|
+
submitButtonText: z58.string()
|
|
33819
|
+
});
|
|
33820
|
+
var passesMembershipsRenderSchema = z58.object({
|
|
33618
33821
|
display: passesMembershipsDisplaySchema,
|
|
33619
33822
|
hydration: passesMembershipsHydrationSchema
|
|
33620
33823
|
});
|
|
33621
|
-
var productListRenderSchema =
|
|
33824
|
+
var productListRenderSchema = z58.object({
|
|
33622
33825
|
display: productListDisplaySchema,
|
|
33623
33826
|
hydration: productListHydrationSchema
|
|
33624
33827
|
});
|
|
33625
|
-
var productDetailRenderSchema =
|
|
33828
|
+
var productDetailRenderSchema = z58.object({
|
|
33626
33829
|
display: productDetailDisplaySchema,
|
|
33627
33830
|
hydration: productDetailHydrationSchema
|
|
33628
33831
|
});
|
|
33629
|
-
var cartRenderSchema =
|
|
33832
|
+
var cartRenderSchema = z58.object({
|
|
33630
33833
|
display: cartDisplaySchema,
|
|
33631
33834
|
hydration: cartHydrationSchema
|
|
33632
33835
|
});
|
|
33633
|
-
var checkoutRenderSchema =
|
|
33836
|
+
var checkoutRenderSchema = z58.object({
|
|
33634
33837
|
display: checkoutDisplaySchema,
|
|
33635
33838
|
hydration: checkoutHydrationSchema
|
|
33636
33839
|
});
|
|
33637
33840
|
function resolveShowPricePerCredit(source) {
|
|
33638
33841
|
return source.showPricePerCredit ?? true;
|
|
33639
33842
|
}
|
|
33640
|
-
var shopIslandMetaCodec = createZodCodec(
|
|
33641
|
-
siteId:
|
|
33642
|
-
apiBaseUrl:
|
|
33843
|
+
var shopIslandMetaCodec = createZodCodec(z58.object({
|
|
33844
|
+
siteId: z58.string().optional(),
|
|
33845
|
+
apiBaseUrl: z58.string().optional(),
|
|
33643
33846
|
stage: previewStageSchema.optional()
|
|
33644
33847
|
}));
|
|
33645
33848
|
var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
|
|
@@ -34017,9 +34220,9 @@ var shopBlockDefinition = {
|
|
|
34017
34220
|
runtime: shopBlockRuntime,
|
|
34018
34221
|
dataSchemas: {
|
|
34019
34222
|
// listPublicPasses returns { passes: [...] }
|
|
34020
|
-
passes:
|
|
34223
|
+
passes: z59.object({ passes: z59.array(publicPassProductSchema) }).optional(),
|
|
34021
34224
|
// listPublicMemberships returns { memberships: [...] }
|
|
34022
|
-
memberships:
|
|
34225
|
+
memberships: z59.object({ memberships: z59.array(publicMembershipProductSchema) }).optional()
|
|
34023
34226
|
},
|
|
34024
34227
|
dataLoaders: {
|
|
34025
34228
|
// Load passes for display
|
|
@@ -34042,7 +34245,7 @@ var shopBlockDefinition = {
|
|
|
34042
34245
|
};
|
|
34043
34246
|
|
|
34044
34247
|
// ../blocks/src/system/blocks/product-list.ts
|
|
34045
|
-
import { z as
|
|
34248
|
+
import { z as z60 } from "zod";
|
|
34046
34249
|
var productListManifest = createBlockManifest({
|
|
34047
34250
|
id: "block.product-list",
|
|
34048
34251
|
version: "1.0.0",
|
|
@@ -34175,7 +34378,7 @@ var productListBlockDefinition = {
|
|
|
34175
34378
|
}
|
|
34176
34379
|
}
|
|
34177
34380
|
};
|
|
34178
|
-
var productListDataSchema =
|
|
34381
|
+
var productListDataSchema = z60.object({
|
|
34179
34382
|
products: publicProductsResponseSchema.optional()
|
|
34180
34383
|
});
|
|
34181
34384
|
|
|
@@ -34436,72 +34639,72 @@ var checkoutBlockDefinition = {
|
|
|
34436
34639
|
};
|
|
34437
34640
|
|
|
34438
34641
|
// ../blocks/src/system/runtime/nodes/gifting.interactive.ts
|
|
34439
|
-
import { z as
|
|
34440
|
-
var publicGiftCardOfferSchema =
|
|
34441
|
-
id:
|
|
34442
|
-
kind:
|
|
34443
|
-
title:
|
|
34444
|
-
description:
|
|
34445
|
-
sortOrder:
|
|
34446
|
-
giftCard:
|
|
34447
|
-
fixedDenominations:
|
|
34448
|
-
customAmountEnabled:
|
|
34449
|
-
customAmountMinCents:
|
|
34450
|
-
customAmountMaxCents:
|
|
34642
|
+
import { z as z61 } from "zod";
|
|
34643
|
+
var publicGiftCardOfferSchema = z61.object({
|
|
34644
|
+
id: z61.string(),
|
|
34645
|
+
kind: z61.literal("gift_card"),
|
|
34646
|
+
title: z61.string(),
|
|
34647
|
+
description: z61.string().nullable(),
|
|
34648
|
+
sortOrder: z61.number().int(),
|
|
34649
|
+
giftCard: z61.object({
|
|
34650
|
+
fixedDenominations: z61.array(z61.number().int().positive()),
|
|
34651
|
+
customAmountEnabled: z61.boolean(),
|
|
34652
|
+
customAmountMinCents: z61.number().int().positive(),
|
|
34653
|
+
customAmountMaxCents: z61.number().int().positive()
|
|
34451
34654
|
}),
|
|
34452
|
-
voucher:
|
|
34453
|
-
});
|
|
34454
|
-
var publicVoucherOfferSchema =
|
|
34455
|
-
id:
|
|
34456
|
-
kind:
|
|
34457
|
-
title:
|
|
34458
|
-
description:
|
|
34459
|
-
sortOrder:
|
|
34460
|
-
giftCard:
|
|
34461
|
-
voucher:
|
|
34462
|
-
purchaseAmountCents:
|
|
34655
|
+
voucher: z61.null()
|
|
34656
|
+
});
|
|
34657
|
+
var publicVoucherOfferSchema = z61.object({
|
|
34658
|
+
id: z61.string(),
|
|
34659
|
+
kind: z61.literal("voucher"),
|
|
34660
|
+
title: z61.string(),
|
|
34661
|
+
description: z61.string().nullable(),
|
|
34662
|
+
sortOrder: z61.number().int(),
|
|
34663
|
+
giftCard: z61.null(),
|
|
34664
|
+
voucher: z61.object({
|
|
34665
|
+
purchaseAmountCents: z61.number().int().positive()
|
|
34463
34666
|
})
|
|
34464
34667
|
});
|
|
34465
|
-
var publicGiftingOffersResponseSchema =
|
|
34466
|
-
currency:
|
|
34467
|
-
giftCards:
|
|
34468
|
-
vouchers:
|
|
34668
|
+
var publicGiftingOffersResponseSchema = z61.object({
|
|
34669
|
+
currency: z61.string(),
|
|
34670
|
+
giftCards: z61.array(publicGiftCardOfferSchema),
|
|
34671
|
+
vouchers: z61.array(publicVoucherOfferSchema)
|
|
34469
34672
|
});
|
|
34470
|
-
var giftingSourceSchema =
|
|
34471
|
-
siteId:
|
|
34472
|
-
apiBaseUrl:
|
|
34673
|
+
var giftingSourceSchema = z61.object({
|
|
34674
|
+
siteId: z61.string().optional(),
|
|
34675
|
+
apiBaseUrl: z61.string().optional(),
|
|
34473
34676
|
offers: publicGiftingOffersResponseSchema.nullable().optional(),
|
|
34474
|
-
className:
|
|
34475
|
-
heading:
|
|
34476
|
-
intro:
|
|
34477
|
-
giftCardsHeading:
|
|
34478
|
-
vouchersHeading:
|
|
34479
|
-
emptyStateText:
|
|
34480
|
-
checkoutButtonText:
|
|
34481
|
-
successMessage:
|
|
34482
|
-
});
|
|
34483
|
-
var giftingDisplaySchema =
|
|
34484
|
-
kind:
|
|
34485
|
-
state:
|
|
34486
|
-
className:
|
|
34487
|
-
heading:
|
|
34488
|
-
intro:
|
|
34489
|
-
giftCardsHeading:
|
|
34490
|
-
vouchersHeading:
|
|
34491
|
-
emptyStateText:
|
|
34492
|
-
});
|
|
34493
|
-
var giftingHydrationSchema =
|
|
34677
|
+
className: z61.string().nullable().optional(),
|
|
34678
|
+
heading: z61.string().nullable().optional(),
|
|
34679
|
+
intro: z61.string().nullable().optional(),
|
|
34680
|
+
giftCardsHeading: z61.string().nullable().optional(),
|
|
34681
|
+
vouchersHeading: z61.string().nullable().optional(),
|
|
34682
|
+
emptyStateText: z61.string().nullable().optional(),
|
|
34683
|
+
checkoutButtonText: z61.string().nullable().optional(),
|
|
34684
|
+
successMessage: z61.string().nullable().optional()
|
|
34685
|
+
});
|
|
34686
|
+
var giftingDisplaySchema = z61.object({
|
|
34687
|
+
kind: z61.literal("gifting"),
|
|
34688
|
+
state: z61.literal("ready"),
|
|
34689
|
+
className: z61.string().nullable(),
|
|
34690
|
+
heading: z61.string(),
|
|
34691
|
+
intro: z61.string().nullable(),
|
|
34692
|
+
giftCardsHeading: z61.string(),
|
|
34693
|
+
vouchersHeading: z61.string(),
|
|
34694
|
+
emptyStateText: z61.string()
|
|
34695
|
+
});
|
|
34696
|
+
var giftingHydrationSchema = z61.object({
|
|
34494
34697
|
offers: publicGiftingOffersResponseSchema.nullable(),
|
|
34495
|
-
checkoutButtonText:
|
|
34496
|
-
successMessage:
|
|
34698
|
+
checkoutButtonText: z61.string(),
|
|
34699
|
+
successMessage: z61.string()
|
|
34497
34700
|
});
|
|
34498
|
-
var giftingRenderSchema =
|
|
34701
|
+
var giftingRenderSchema = z61.object({
|
|
34499
34702
|
display: giftingDisplaySchema,
|
|
34500
34703
|
hydration: giftingHydrationSchema
|
|
34501
34704
|
});
|
|
34502
|
-
var giftingIslandMetaCodec = createZodCodec(
|
|
34503
|
-
siteId:
|
|
34504
|
-
apiBaseUrl:
|
|
34705
|
+
var giftingIslandMetaCodec = createZodCodec(z61.object({
|
|
34706
|
+
siteId: z61.string().optional(),
|
|
34707
|
+
apiBaseUrl: z61.string().optional()
|
|
34505
34708
|
}));
|
|
34506
34709
|
var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
34507
34710
|
"siteId",
|
|
@@ -34672,7 +34875,61 @@ var giftingBlockDefinition = {
|
|
|
34672
34875
|
};
|
|
34673
34876
|
|
|
34674
34877
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
34675
|
-
import { z as
|
|
34878
|
+
import { z as z62 } from "zod";
|
|
34879
|
+
|
|
34880
|
+
// ../blocks/src/system/blocks/newsletter-signup-destination.ts
|
|
34881
|
+
function parseNewsletterSignupBlockId(value) {
|
|
34882
|
+
const trimmed = parseTrimmedString(value);
|
|
34883
|
+
return trimmed && BLOCK_ID_PATTERN.test(trimmed) ? trimmed : null;
|
|
34884
|
+
}
|
|
34885
|
+
function parseSignedNewsletterDestinationRef(value) {
|
|
34886
|
+
const trimmed = parseTrimmedString(value);
|
|
34887
|
+
return trimmed && SIGNED_DESTINATION_REF_PATTERN.test(trimmed) ? trimmed : null;
|
|
34888
|
+
}
|
|
34889
|
+
function parseNewsletterSignupDestinationProvider(value) {
|
|
34890
|
+
return value === "riverbank" || value === "mailchimp" ? value : null;
|
|
34891
|
+
}
|
|
34892
|
+
function buildNewsletterSignupBlockRef(blockId) {
|
|
34893
|
+
const parsed = parseNewsletterSignupBlockId(blockId);
|
|
34894
|
+
return parsed ? { tag: "block_ref", blockId: parsed } : null;
|
|
34895
|
+
}
|
|
34896
|
+
function normalizeNewsletterSignupEditorValuesForDestination(values) {
|
|
34897
|
+
const destinationProvider = parseNewsletterSignupDestinationProvider(values.destinationProvider) ?? "riverbank";
|
|
34898
|
+
if (destinationProvider === "mailchimp") {
|
|
34899
|
+
return {
|
|
34900
|
+
destinationProvider,
|
|
34901
|
+
mailchimpAudienceId: values.mailchimpAudienceId,
|
|
34902
|
+
mailchimpTags: values.mailchimpTags
|
|
34903
|
+
};
|
|
34904
|
+
}
|
|
34905
|
+
return {
|
|
34906
|
+
destinationProvider,
|
|
34907
|
+
listId: values.listId,
|
|
34908
|
+
tags: values.tags
|
|
34909
|
+
};
|
|
34910
|
+
}
|
|
34911
|
+
function deriveNewsletterSignupRuntimeSource(values) {
|
|
34912
|
+
const normalized = normalizeNewsletterSignupEditorValuesForDestination(values);
|
|
34913
|
+
if (normalized.destinationProvider === "mailchimp") {
|
|
34914
|
+
return {
|
|
34915
|
+
destinationProvider: "mailchimp",
|
|
34916
|
+
listId: null,
|
|
34917
|
+
tags: null
|
|
34918
|
+
};
|
|
34919
|
+
}
|
|
34920
|
+
return {
|
|
34921
|
+
destinationProvider: "riverbank",
|
|
34922
|
+
listId: parseTrimmedString(normalized.listId),
|
|
34923
|
+
tags: parseTrimmedString(normalized.tags)
|
|
34924
|
+
};
|
|
34925
|
+
}
|
|
34926
|
+
var BLOCK_ID_PATTERN = /^[A-Za-z0-9._:-]{1,200}$/;
|
|
34927
|
+
var SIGNED_DESTINATION_REF_PATTERN = /^[A-Za-z0-9._~-]{16,1000}$/;
|
|
34928
|
+
function parseTrimmedString(value) {
|
|
34929
|
+
if (typeof value !== "string") return null;
|
|
34930
|
+
const trimmed = value.trim();
|
|
34931
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
34932
|
+
}
|
|
34676
34933
|
|
|
34677
34934
|
// ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
|
|
34678
34935
|
function getPresetFields(preset2, options) {
|
|
@@ -34725,49 +34982,65 @@ function withOptionalPhone(fields3, includePhone) {
|
|
|
34725
34982
|
}
|
|
34726
34983
|
|
|
34727
34984
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
34728
|
-
var newsletterPresetSchema =
|
|
34729
|
-
var
|
|
34730
|
-
|
|
34731
|
-
|
|
34732
|
-
|
|
34733
|
-
|
|
34734
|
-
|
|
34735
|
-
|
|
34736
|
-
|
|
34737
|
-
|
|
34738
|
-
|
|
34739
|
-
|
|
34985
|
+
var newsletterPresetSchema = z62.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
|
|
34986
|
+
var newsletterDestinationProviderSchema = z62.enum(["riverbank", "mailchimp"]);
|
|
34987
|
+
var newsletterFieldSchema = z62.object({
|
|
34988
|
+
id: z62.string(),
|
|
34989
|
+
type: z62.enum(["email", "text"]),
|
|
34990
|
+
label: z62.string(),
|
|
34991
|
+
required: z62.boolean(),
|
|
34992
|
+
placeholder: z62.string().optional()
|
|
34993
|
+
});
|
|
34994
|
+
var newsletterSignupBlockIdSchema = z62.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
|
|
34995
|
+
var signedNewsletterDestinationRefSchema = z62.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
|
|
34996
|
+
var newsletterPublicDestinationRefSchema = z62.discriminatedUnion("tag", [
|
|
34997
|
+
z62.object({
|
|
34998
|
+
tag: z62.literal("block_ref"),
|
|
34999
|
+
blockId: newsletterSignupBlockIdSchema
|
|
35000
|
+
}),
|
|
35001
|
+
z62.object({
|
|
35002
|
+
tag: z62.literal("signed_destination_ref"),
|
|
35003
|
+
token: signedNewsletterDestinationRefSchema
|
|
35004
|
+
})
|
|
35005
|
+
]);
|
|
35006
|
+
var newsletterSourceSchema = z62.object({
|
|
35007
|
+
blockId: z62.string().nullable().optional(),
|
|
35008
|
+
siteId: z62.string().optional(),
|
|
35009
|
+
apiBaseUrl: z62.string().optional(),
|
|
35010
|
+
listId: z62.string().nullable().optional(),
|
|
35011
|
+
destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
|
|
34740
35012
|
preset: newsletterPresetSchema.optional(),
|
|
34741
|
-
includePhone:
|
|
34742
|
-
buttonLabel:
|
|
34743
|
-
successMessage:
|
|
34744
|
-
privacyNote:
|
|
34745
|
-
tags:
|
|
34746
|
-
spamProtectionEnabled:
|
|
34747
|
-
className:
|
|
34748
|
-
});
|
|
34749
|
-
var newsletterDisplaySchema =
|
|
34750
|
-
kind:
|
|
34751
|
-
className:
|
|
34752
|
-
buttonLabel:
|
|
34753
|
-
successMessage:
|
|
34754
|
-
privacyNote:
|
|
34755
|
-
fields:
|
|
34756
|
-
});
|
|
34757
|
-
var newsletterHydrationSchema =
|
|
34758
|
-
|
|
35013
|
+
includePhone: z62.boolean().optional(),
|
|
35014
|
+
buttonLabel: z62.string().nullable().optional(),
|
|
35015
|
+
successMessage: z62.string().nullable().optional(),
|
|
35016
|
+
privacyNote: z62.string().nullable().optional(),
|
|
35017
|
+
tags: z62.string().nullable().optional(),
|
|
35018
|
+
spamProtectionEnabled: z62.boolean().optional(),
|
|
35019
|
+
className: z62.string().nullable().optional()
|
|
35020
|
+
});
|
|
35021
|
+
var newsletterDisplaySchema = z62.object({
|
|
35022
|
+
kind: z62.literal("newsletter-form"),
|
|
35023
|
+
className: z62.string().nullable(),
|
|
35024
|
+
buttonLabel: z62.string(),
|
|
35025
|
+
successMessage: z62.string().nullable(),
|
|
35026
|
+
privacyNote: z62.string().nullable(),
|
|
35027
|
+
fields: z62.array(newsletterFieldSchema)
|
|
35028
|
+
});
|
|
35029
|
+
var newsletterHydrationSchema = z62.object({
|
|
35030
|
+
destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
|
|
35031
|
+
listId: z62.string().nullable().optional(),
|
|
34759
35032
|
preset: newsletterPresetSchema,
|
|
34760
|
-
includePhone:
|
|
34761
|
-
tags:
|
|
34762
|
-
spamProtectionEnabled:
|
|
35033
|
+
includePhone: z62.boolean(),
|
|
35034
|
+
tags: z62.string().nullable().optional(),
|
|
35035
|
+
spamProtectionEnabled: z62.boolean().optional()
|
|
34763
35036
|
});
|
|
34764
|
-
var newsletterRenderSchema =
|
|
35037
|
+
var newsletterRenderSchema = z62.object({
|
|
34765
35038
|
display: newsletterDisplaySchema,
|
|
34766
35039
|
hydration: newsletterHydrationSchema
|
|
34767
35040
|
});
|
|
34768
|
-
var newsletterIslandMetaCodec = createZodCodec(
|
|
34769
|
-
siteId:
|
|
34770
|
-
apiBaseUrl:
|
|
35041
|
+
var newsletterIslandMetaCodec = createZodCodec(z62.object({
|
|
35042
|
+
siteId: z62.string().optional(),
|
|
35043
|
+
apiBaseUrl: z62.string().optional()
|
|
34771
35044
|
}));
|
|
34772
35045
|
var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
|
|
34773
35046
|
function buildNewsletterDisplay(source) {
|
|
@@ -34788,16 +35061,20 @@ var newsletterFormBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
34788
35061
|
source: createZodCodec(newsletterSourceSchema),
|
|
34789
35062
|
render: createZodCodec(newsletterRenderSchema)
|
|
34790
35063
|
},
|
|
34791
|
-
buildRender: (source) =>
|
|
34792
|
-
|
|
34793
|
-
|
|
34794
|
-
|
|
34795
|
-
|
|
34796
|
-
|
|
34797
|
-
|
|
34798
|
-
|
|
34799
|
-
|
|
34800
|
-
|
|
35064
|
+
buildRender: (source) => {
|
|
35065
|
+
const runtimeSource = deriveNewsletterSignupRuntimeSource(source);
|
|
35066
|
+
return {
|
|
35067
|
+
display: buildNewsletterDisplay(source),
|
|
35068
|
+
hydration: {
|
|
35069
|
+
destinationRef: buildNewsletterSignupBlockRef(source.blockId),
|
|
35070
|
+
listId: runtimeSource.listId,
|
|
35071
|
+
preset: source.preset ?? "emailOnly",
|
|
35072
|
+
includePhone: source.includePhone ?? false,
|
|
35073
|
+
tags: runtimeSource.tags,
|
|
35074
|
+
spamProtectionEnabled: source.spamProtectionEnabled
|
|
35075
|
+
}
|
|
35076
|
+
};
|
|
35077
|
+
}
|
|
34801
35078
|
});
|
|
34802
35079
|
var newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
|
|
34803
35080
|
runtime: newsletterFormBlockRuntime,
|
|
@@ -34809,6 +35086,20 @@ var newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
|
|
|
34809
35086
|
apiBaseUrl: value.apiBaseUrl
|
|
34810
35087
|
})
|
|
34811
35088
|
});
|
|
35089
|
+
function parseRequiredNewsletterSignupBlockId(value) {
|
|
35090
|
+
const parsed = parseNewsletterSignupBlockId(value);
|
|
35091
|
+
if (!parsed) {
|
|
35092
|
+
throw new Error("Newsletter signup block destination ref requires blockId");
|
|
35093
|
+
}
|
|
35094
|
+
return parsed;
|
|
35095
|
+
}
|
|
35096
|
+
function parseRequiredSignedNewsletterDestinationRef(value) {
|
|
35097
|
+
const parsed = parseSignedNewsletterDestinationRef(value);
|
|
35098
|
+
if (!parsed) {
|
|
35099
|
+
throw new Error("Newsletter signup signed destination ref requires token");
|
|
35100
|
+
}
|
|
35101
|
+
return parsed;
|
|
35102
|
+
}
|
|
34812
35103
|
|
|
34813
35104
|
// ../blocks/src/system/blocks/newsletter-signup.ts
|
|
34814
35105
|
var stackedComposition = composeFragments([
|
|
@@ -34888,23 +35179,23 @@ var newsletterSignupBlockDefinition = {
|
|
|
34888
35179
|
};
|
|
34889
35180
|
|
|
34890
35181
|
// ../blocks/src/system/blocks/team-members.ts
|
|
34891
|
-
import { z as
|
|
35182
|
+
import { z as z63 } from "zod";
|
|
34892
35183
|
var ITEM_NAME2 = "member";
|
|
34893
35184
|
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
34894
35185
|
message: "Team member photos must be image media"
|
|
34895
35186
|
}).nullable();
|
|
34896
|
-
var teamMemberDataSchema =
|
|
34897
|
-
_type:
|
|
34898
|
-
id:
|
|
34899
|
-
name:
|
|
34900
|
-
role:
|
|
34901
|
-
roleLabel:
|
|
34902
|
-
bio:
|
|
34903
|
-
summary:
|
|
35187
|
+
var teamMemberDataSchema = z63.object({
|
|
35188
|
+
_type: z63.literal("teamMember"),
|
|
35189
|
+
id: z63.string(),
|
|
35190
|
+
name: z63.string(),
|
|
35191
|
+
role: z63.string().nullable(),
|
|
35192
|
+
roleLabel: z63.string().nullable(),
|
|
35193
|
+
bio: z63.string().nullable(),
|
|
35194
|
+
summary: z63.string().nullable(),
|
|
34904
35195
|
photo: teamMemberPhotoSchema,
|
|
34905
|
-
profilePath:
|
|
35196
|
+
profilePath: z63.string().nullable()
|
|
34906
35197
|
});
|
|
34907
|
-
var teamMembersDataSchema =
|
|
35198
|
+
var teamMembersDataSchema = z63.array(teamMemberDataSchema);
|
|
34908
35199
|
var dynamicSourceWhen = { equals: "site_staff" };
|
|
34909
35200
|
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
34910
35201
|
var headingNode = text(
|
|
@@ -37602,34 +37893,34 @@ import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
|
37602
37893
|
var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
|
|
37603
37894
|
|
|
37604
37895
|
// ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
|
|
37605
|
-
import { z as
|
|
37606
|
-
var themeBridgeConfigSchema =
|
|
37607
|
-
tokens:
|
|
37608
|
-
typography:
|
|
37609
|
-
headingFamily:
|
|
37610
|
-
bodyFamily:
|
|
37611
|
-
headingWeight:
|
|
37612
|
-
bodyWeight:
|
|
37896
|
+
import { z as z64 } from "zod";
|
|
37897
|
+
var themeBridgeConfigSchema = z64.object({
|
|
37898
|
+
tokens: z64.record(z64.string(), z64.string()),
|
|
37899
|
+
typography: z64.object({
|
|
37900
|
+
headingFamily: z64.string().optional(),
|
|
37901
|
+
bodyFamily: z64.string().optional(),
|
|
37902
|
+
headingWeight: z64.number().optional(),
|
|
37903
|
+
bodyWeight: z64.number().optional()
|
|
37613
37904
|
}).optional(),
|
|
37614
|
-
spacing:
|
|
37615
|
-
corners:
|
|
37616
|
-
shadows:
|
|
37617
|
-
components:
|
|
37618
|
-
buttons:
|
|
37619
|
-
|
|
37620
|
-
|
|
37621
|
-
variants:
|
|
37905
|
+
spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
|
|
37906
|
+
corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
|
|
37907
|
+
shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
|
|
37908
|
+
components: z64.object({
|
|
37909
|
+
buttons: z64.union([
|
|
37910
|
+
z64.boolean(),
|
|
37911
|
+
z64.object({
|
|
37912
|
+
variants: z64.array(z64.enum(["primary", "secondary", "outline", "ghost"])).optional()
|
|
37622
37913
|
})
|
|
37623
37914
|
]).optional(),
|
|
37624
|
-
cards:
|
|
37625
|
-
|
|
37626
|
-
|
|
37627
|
-
variants:
|
|
37915
|
+
cards: z64.union([
|
|
37916
|
+
z64.boolean(),
|
|
37917
|
+
z64.object({
|
|
37918
|
+
variants: z64.array(z64.enum(["default", "elevated", "outlined"])).optional()
|
|
37628
37919
|
})
|
|
37629
37920
|
]).optional(),
|
|
37630
|
-
inputs:
|
|
37921
|
+
inputs: z64.boolean().optional()
|
|
37631
37922
|
}).optional(),
|
|
37632
|
-
overrides:
|
|
37923
|
+
overrides: z64.record(z64.string(), z64.string()).optional()
|
|
37633
37924
|
}).passthrough();
|
|
37634
37925
|
|
|
37635
37926
|
// ../theme-core/src/siteChrome.tsx
|
|
@@ -37655,17 +37946,17 @@ var SUPPORTED_LOADER_ENDPOINTS = [
|
|
|
37655
37946
|
function unsafeRetypeZodSchema(schema) {
|
|
37656
37947
|
return schema;
|
|
37657
37948
|
}
|
|
37658
|
-
var navIdListSchema =
|
|
37949
|
+
var navIdListSchema = z65.preprocess((value) => {
|
|
37659
37950
|
if (!Array.isArray(value)) return void 0;
|
|
37660
37951
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
37661
37952
|
return filtered.length > 0 ? filtered : void 0;
|
|
37662
|
-
},
|
|
37663
|
-
var dashboardNavVisibilityBaseSchema =
|
|
37664
|
-
mode:
|
|
37953
|
+
}, z65.array(z65.string()).max(200).optional());
|
|
37954
|
+
var dashboardNavVisibilityBaseSchema = z65.object({
|
|
37955
|
+
mode: z65.enum(["augment", "restrict"]).optional(),
|
|
37665
37956
|
allowIds: navIdListSchema,
|
|
37666
37957
|
denyIds: navIdListSchema
|
|
37667
37958
|
}).strip();
|
|
37668
|
-
var dashboardNavVisibilityRolesSchema =
|
|
37959
|
+
var dashboardNavVisibilityRolesSchema = z65.object({
|
|
37669
37960
|
administrator: dashboardNavVisibilityBaseSchema.optional(),
|
|
37670
37961
|
editor: dashboardNavVisibilityBaseSchema.optional(),
|
|
37671
37962
|
team_member: dashboardNavVisibilityBaseSchema.optional()
|
|
@@ -37673,63 +37964,63 @@ var dashboardNavVisibilityRolesSchema = z64.object({
|
|
|
37673
37964
|
var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
|
|
37674
37965
|
roles: dashboardNavVisibilityRolesSchema
|
|
37675
37966
|
}).strip();
|
|
37676
|
-
var dashboardNavigationConfigSchema =
|
|
37967
|
+
var dashboardNavigationConfigSchema = z65.object({
|
|
37677
37968
|
siteNav: dashboardNavVisibilitySchema.optional(),
|
|
37678
37969
|
settingsNav: dashboardNavVisibilitySchema.optional()
|
|
37679
37970
|
}).strip();
|
|
37680
|
-
var dashboardConfigSchema =
|
|
37681
|
-
previewEditingEnabled:
|
|
37971
|
+
var dashboardConfigSchema = z65.object({
|
|
37972
|
+
previewEditingEnabled: z65.boolean().optional(),
|
|
37682
37973
|
navigation: dashboardNavigationConfigSchema.optional()
|
|
37683
37974
|
}).strip();
|
|
37684
37975
|
var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
|
|
37685
37976
|
var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
|
|
37686
|
-
var sdkLoaderEndpointSchema =
|
|
37687
|
-
var loaderFallbackScalarSchema =
|
|
37688
|
-
|
|
37689
|
-
|
|
37690
|
-
|
|
37691
|
-
|
|
37977
|
+
var sdkLoaderEndpointSchema = z65.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
37978
|
+
var loaderFallbackScalarSchema = z65.union([
|
|
37979
|
+
z65.string(),
|
|
37980
|
+
z65.number(),
|
|
37981
|
+
z65.boolean(),
|
|
37982
|
+
z65.null()
|
|
37692
37983
|
]);
|
|
37693
|
-
var loaderParamBindingSchema =
|
|
37694
|
-
$bind:
|
|
37695
|
-
from:
|
|
37984
|
+
var loaderParamBindingSchema = z65.object({
|
|
37985
|
+
$bind: z65.object({
|
|
37986
|
+
from: z65.string().min(1, "Binding path is required"),
|
|
37696
37987
|
fallback: loaderFallbackScalarSchema.optional()
|
|
37697
37988
|
})
|
|
37698
37989
|
});
|
|
37699
|
-
var loaderParamValueSchema =
|
|
37700
|
-
|
|
37701
|
-
|
|
37702
|
-
|
|
37990
|
+
var loaderParamValueSchema = z65.union([
|
|
37991
|
+
z65.string(),
|
|
37992
|
+
z65.number(),
|
|
37993
|
+
z65.boolean(),
|
|
37703
37994
|
loaderParamBindingSchema
|
|
37704
37995
|
]);
|
|
37705
|
-
var sdkConfigLoaderSchema =
|
|
37996
|
+
var sdkConfigLoaderSchema = z65.object({
|
|
37706
37997
|
endpoint: sdkLoaderEndpointSchema,
|
|
37707
|
-
params:
|
|
37708
|
-
mode:
|
|
37998
|
+
params: z65.record(z65.string(), loaderParamValueSchema),
|
|
37999
|
+
mode: z65.enum(["server", "client"]).default("server")
|
|
37709
38000
|
});
|
|
37710
|
-
var sdkDataLoadersSchema =
|
|
37711
|
-
var sdkCustomBlockIdSchema =
|
|
38001
|
+
var sdkDataLoadersSchema = z65.record(z65.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
|
|
38002
|
+
var sdkCustomBlockIdSchema = z65.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
37712
38003
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
37713
38004
|
}).transform((value) => value);
|
|
37714
|
-
var sdkCustomBlockInputSchema =
|
|
38005
|
+
var sdkCustomBlockInputSchema = z65.object({
|
|
37715
38006
|
id: sdkCustomBlockIdSchema,
|
|
37716
|
-
title:
|
|
37717
|
-
titleSource:
|
|
37718
|
-
description:
|
|
38007
|
+
title: z65.string().min(1),
|
|
38008
|
+
titleSource: z65.union([z65.string().min(1), z65.array(z65.string().min(1)).min(1)]).optional(),
|
|
38009
|
+
description: z65.string().optional(),
|
|
37719
38010
|
category: blockCategoryEnum,
|
|
37720
|
-
icon:
|
|
37721
|
-
tags:
|
|
38011
|
+
icon: z65.string().optional(),
|
|
38012
|
+
tags: z65.array(z65.string()).optional(),
|
|
37722
38013
|
fields: fieldDefinitionInputSchema.array().min(1),
|
|
37723
38014
|
dataLoaders: sdkDataLoadersSchema,
|
|
37724
38015
|
layout: NodeSchema.optional(),
|
|
37725
|
-
variants:
|
|
37726
|
-
defaultVariant:
|
|
37727
|
-
variantOptions:
|
|
37728
|
-
|
|
37729
|
-
|
|
37730
|
-
label:
|
|
37731
|
-
description:
|
|
37732
|
-
icon:
|
|
38016
|
+
variants: z65.record(z65.string().min(1), NodeSchema).optional(),
|
|
38017
|
+
defaultVariant: z65.string().min(1).optional(),
|
|
38018
|
+
variantOptions: z65.record(
|
|
38019
|
+
z65.string().min(1),
|
|
38020
|
+
z65.object({
|
|
38021
|
+
label: z65.string().min(1).optional(),
|
|
38022
|
+
description: z65.string().min(1).optional(),
|
|
38023
|
+
icon: z65.string().min(1).optional()
|
|
37733
38024
|
})
|
|
37734
38025
|
).optional(),
|
|
37735
38026
|
previewCustomize: previewCustomizeManifestCurationSchema.optional()
|
|
@@ -37740,7 +38031,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37740
38031
|
const exists = data.fields.some((field) => field.id === source);
|
|
37741
38032
|
if (!exists) {
|
|
37742
38033
|
ctx.addIssue({
|
|
37743
|
-
code:
|
|
38034
|
+
code: z65.ZodIssueCode.custom,
|
|
37744
38035
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
37745
38036
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
37746
38037
|
});
|
|
@@ -37749,7 +38040,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37749
38040
|
}
|
|
37750
38041
|
if (data.layout && data.variants) {
|
|
37751
38042
|
ctx.addIssue({
|
|
37752
|
-
code:
|
|
38043
|
+
code: z65.ZodIssueCode.custom,
|
|
37753
38044
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
37754
38045
|
path: ["variants"]
|
|
37755
38046
|
});
|
|
@@ -37758,14 +38049,14 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37758
38049
|
const keys = Object.keys(data.variants);
|
|
37759
38050
|
if (keys.length === 0) {
|
|
37760
38051
|
ctx.addIssue({
|
|
37761
|
-
code:
|
|
38052
|
+
code: z65.ZodIssueCode.custom,
|
|
37762
38053
|
message: "`variants` must contain at least one variant key",
|
|
37763
38054
|
path: ["variants"]
|
|
37764
38055
|
});
|
|
37765
38056
|
}
|
|
37766
38057
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
37767
38058
|
ctx.addIssue({
|
|
37768
|
-
code:
|
|
38059
|
+
code: z65.ZodIssueCode.custom,
|
|
37769
38060
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
37770
38061
|
path: ["defaultVariant"]
|
|
37771
38062
|
});
|
|
@@ -37774,7 +38065,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37774
38065
|
for (const key of Object.keys(data.variantOptions)) {
|
|
37775
38066
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
37776
38067
|
ctx.addIssue({
|
|
37777
|
-
code:
|
|
38068
|
+
code: z65.ZodIssueCode.custom,
|
|
37778
38069
|
message: "`variantOptions` key must exist in `variants`",
|
|
37779
38070
|
path: ["variantOptions", key]
|
|
37780
38071
|
});
|
|
@@ -37783,78 +38074,78 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37783
38074
|
}
|
|
37784
38075
|
}
|
|
37785
38076
|
});
|
|
37786
|
-
var sdkBlockFieldExtensionInputSchema =
|
|
38077
|
+
var sdkBlockFieldExtensionInputSchema = z65.object({
|
|
37787
38078
|
fields: fieldDefinitionInputSchema.array().min(1)
|
|
37788
38079
|
});
|
|
37789
|
-
var sdkBlockFieldExtensionsInputSchema =
|
|
37790
|
-
|
|
38080
|
+
var sdkBlockFieldExtensionsInputSchema = z65.record(
|
|
38081
|
+
z65.string().min(1),
|
|
37791
38082
|
sdkBlockFieldExtensionInputSchema
|
|
37792
38083
|
);
|
|
37793
|
-
var sdkThemePaletteSchema =
|
|
37794
|
-
var sdkThemeConfigSchema =
|
|
38084
|
+
var sdkThemePaletteSchema = z65.record(z65.string(), z65.string());
|
|
38085
|
+
var sdkThemeConfigSchema = z65.object({
|
|
37795
38086
|
palette: sdkThemePaletteSchema
|
|
37796
38087
|
});
|
|
37797
|
-
var sdkSectionBackgroundSchema =
|
|
37798
|
-
id:
|
|
37799
|
-
label:
|
|
37800
|
-
token:
|
|
38088
|
+
var sdkSectionBackgroundSchema = z65.object({
|
|
38089
|
+
id: z65.string().min(1),
|
|
38090
|
+
label: z65.string().min(1),
|
|
38091
|
+
token: z65.string().min(1)
|
|
37801
38092
|
});
|
|
37802
|
-
var sdkSectionOptionsConfigSchema =
|
|
37803
|
-
backgroundColor:
|
|
37804
|
-
backgroundImage:
|
|
37805
|
-
backgroundGradient:
|
|
37806
|
-
spacing:
|
|
37807
|
-
textColor:
|
|
38093
|
+
var sdkSectionOptionsConfigSchema = z65.object({
|
|
38094
|
+
backgroundColor: z65.boolean().optional(),
|
|
38095
|
+
backgroundImage: z65.boolean().optional(),
|
|
38096
|
+
backgroundGradient: z65.boolean().optional(),
|
|
38097
|
+
spacing: z65.union([z65.array(z65.enum(["compact", "default", "spacious"])), z65.boolean()]).optional(),
|
|
38098
|
+
textColor: z65.boolean().optional()
|
|
37808
38099
|
});
|
|
37809
|
-
var sdkContainerOptionsConfigSchema =
|
|
37810
|
-
maxWidth:
|
|
37811
|
-
alignment:
|
|
38100
|
+
var sdkContainerOptionsConfigSchema = z65.object({
|
|
38101
|
+
maxWidth: z65.union([z65.array(z65.enum(["narrow", "default", "wide", "full"])), z65.boolean()]).optional(),
|
|
38102
|
+
alignment: z65.union([z65.array(z65.enum(["left", "center", "right"])), z65.boolean()]).optional()
|
|
37812
38103
|
});
|
|
37813
|
-
var sdkSiteStyleConfigSchema =
|
|
37814
|
-
sectionBackgrounds:
|
|
38104
|
+
var sdkSiteStyleConfigSchema = z65.object({
|
|
38105
|
+
sectionBackgrounds: z65.array(sdkSectionBackgroundSchema).optional(),
|
|
37815
38106
|
sectionOptions: sdkSectionOptionsConfigSchema.optional(),
|
|
37816
38107
|
containerOptions: sdkContainerOptionsConfigSchema.optional()
|
|
37817
38108
|
});
|
|
37818
|
-
var sdkSiteLayoutConfigSchema =
|
|
37819
|
-
footerBlocks:
|
|
37820
|
-
|
|
37821
|
-
id:
|
|
37822
|
-
kind:
|
|
37823
|
-
content:
|
|
38109
|
+
var sdkSiteLayoutConfigSchema = z65.object({
|
|
38110
|
+
footerBlocks: z65.array(
|
|
38111
|
+
z65.object({
|
|
38112
|
+
id: z65.string().min(1).optional(),
|
|
38113
|
+
kind: z65.string().min(1),
|
|
38114
|
+
content: z65.record(z65.string(), z65.unknown()).optional()
|
|
37824
38115
|
})
|
|
37825
38116
|
).optional()
|
|
37826
38117
|
});
|
|
37827
|
-
var sdkFieldSelectOptionSchema =
|
|
37828
|
-
value:
|
|
37829
|
-
label:
|
|
38118
|
+
var sdkFieldSelectOptionSchema = z65.object({
|
|
38119
|
+
value: z65.string(),
|
|
38120
|
+
label: z65.string()
|
|
37830
38121
|
});
|
|
37831
|
-
var sdkBlockFieldConfigSchema =
|
|
37832
|
-
options:
|
|
38122
|
+
var sdkBlockFieldConfigSchema = z65.object({
|
|
38123
|
+
options: z65.array(sdkFieldSelectOptionSchema).optional()
|
|
37833
38124
|
});
|
|
37834
|
-
var sdkBlockFieldOptionsMapSchema =
|
|
37835
|
-
|
|
38125
|
+
var sdkBlockFieldOptionsMapSchema = z65.record(
|
|
38126
|
+
z65.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
37836
38127
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
37837
38128
|
}),
|
|
37838
|
-
|
|
38129
|
+
z65.record(z65.string().min(1), sdkBlockFieldConfigSchema)
|
|
37839
38130
|
).optional();
|
|
37840
|
-
var sdkContentTypeTemplateConfigSchema =
|
|
37841
|
-
blocks:
|
|
38131
|
+
var sdkContentTypeTemplateConfigSchema = z65.object({
|
|
38132
|
+
blocks: z65.array(z65.unknown())
|
|
37842
38133
|
}).passthrough();
|
|
37843
|
-
var sdkContentTypeOrderingConfigSchema =
|
|
37844
|
-
mode:
|
|
38134
|
+
var sdkContentTypeOrderingConfigSchema = z65.object({
|
|
38135
|
+
mode: z65.enum(["default", "manual"]).optional()
|
|
37845
38136
|
}).optional();
|
|
37846
|
-
var sdkContentTypeConfigSchema =
|
|
37847
|
-
key:
|
|
37848
|
-
fields:
|
|
38137
|
+
var sdkContentTypeConfigSchema = z65.object({
|
|
38138
|
+
key: z65.string().min(1),
|
|
38139
|
+
fields: z65.array(z65.unknown()),
|
|
37849
38140
|
ordering: sdkContentTypeOrderingConfigSchema,
|
|
37850
38141
|
template: sdkContentTypeTemplateConfigSchema.nullable().optional()
|
|
37851
38142
|
}).passthrough();
|
|
37852
|
-
var sdkContentConfigSchema =
|
|
37853
|
-
contentTypes:
|
|
37854
|
-
pages:
|
|
37855
|
-
entries:
|
|
37856
|
-
navigationMenus:
|
|
37857
|
-
settings:
|
|
38143
|
+
var sdkContentConfigSchema = z65.object({
|
|
38144
|
+
contentTypes: z65.array(sdkContentTypeConfigSchema).optional(),
|
|
38145
|
+
pages: z65.array(z65.unknown()).optional(),
|
|
38146
|
+
entries: z65.array(z65.unknown()).optional(),
|
|
38147
|
+
navigationMenus: z65.array(z65.unknown()).optional(),
|
|
38148
|
+
settings: z65.unknown().optional()
|
|
37858
38149
|
}).passthrough();
|
|
37859
38150
|
var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
|
|
37860
38151
|
var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
|
|
@@ -37869,62 +38160,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
|
|
|
37869
38160
|
var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
|
|
37870
38161
|
var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
|
|
37871
38162
|
var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
|
|
37872
|
-
var sdkWorkflowIdSchema =
|
|
38163
|
+
var sdkWorkflowIdSchema = z65.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
37873
38164
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
37874
38165
|
});
|
|
37875
|
-
var sdkWorkflowEndpointSchema =
|
|
37876
|
-
var sdkWorkflowManualTriggerSchema =
|
|
37877
|
-
type:
|
|
38166
|
+
var sdkWorkflowEndpointSchema = z65.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
|
|
38167
|
+
var sdkWorkflowManualTriggerSchema = z65.object({
|
|
38168
|
+
type: z65.literal("manual")
|
|
37878
38169
|
}).strict();
|
|
37879
|
-
var sdkWorkflowTriggerFieldSchema =
|
|
38170
|
+
var sdkWorkflowTriggerFieldSchema = z65.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
|
|
37880
38171
|
message: "Workflow trigger fields must be top-level content field IDs, not paths"
|
|
37881
38172
|
});
|
|
37882
|
-
var sdkWorkflowFieldChangedConditionSchema =
|
|
38173
|
+
var sdkWorkflowFieldChangedConditionSchema = z65.object({
|
|
37883
38174
|
field: sdkWorkflowTriggerFieldSchema,
|
|
37884
|
-
changed:
|
|
38175
|
+
changed: z65.literal(true)
|
|
37885
38176
|
}).strict();
|
|
37886
|
-
var sdkWorkflowFieldEmptyConditionSchema =
|
|
38177
|
+
var sdkWorkflowFieldEmptyConditionSchema = z65.object({
|
|
37887
38178
|
field: sdkWorkflowTriggerFieldSchema,
|
|
37888
|
-
isEmpty:
|
|
38179
|
+
isEmpty: z65.boolean()
|
|
37889
38180
|
}).strict();
|
|
37890
|
-
var sdkWorkflowEntryDraftUpdatedTriggerSchema =
|
|
37891
|
-
type:
|
|
37892
|
-
when:
|
|
37893
|
-
|
|
38181
|
+
var sdkWorkflowEntryDraftUpdatedTriggerSchema = z65.object({
|
|
38182
|
+
type: z65.literal("entry.draft.updated"),
|
|
38183
|
+
when: z65.array(
|
|
38184
|
+
z65.union([
|
|
37894
38185
|
sdkWorkflowFieldChangedConditionSchema,
|
|
37895
38186
|
sdkWorkflowFieldEmptyConditionSchema
|
|
37896
38187
|
])
|
|
37897
38188
|
).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
|
|
37898
38189
|
}).strict();
|
|
37899
|
-
var sdkWorkflowTriggerSchema =
|
|
38190
|
+
var sdkWorkflowTriggerSchema = z65.discriminatedUnion("type", [
|
|
37900
38191
|
sdkWorkflowManualTriggerSchema,
|
|
37901
38192
|
sdkWorkflowEntryDraftUpdatedTriggerSchema
|
|
37902
38193
|
]);
|
|
37903
|
-
var sdkWorkflowConfirmationSchema =
|
|
37904
|
-
title:
|
|
37905
|
-
body:
|
|
38194
|
+
var sdkWorkflowConfirmationSchema = z65.object({
|
|
38195
|
+
title: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
38196
|
+
body: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
37906
38197
|
}).strict();
|
|
37907
|
-
var sdkWorkflowConfigSchema =
|
|
38198
|
+
var sdkWorkflowConfigSchema = z65.object({
|
|
37908
38199
|
id: sdkWorkflowIdSchema,
|
|
37909
|
-
title:
|
|
37910
|
-
description:
|
|
37911
|
-
contentType:
|
|
38200
|
+
title: z65.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
38201
|
+
description: z65.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
38202
|
+
contentType: z65.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
37912
38203
|
endpoint: sdkWorkflowEndpointSchema,
|
|
37913
|
-
triggers:
|
|
38204
|
+
triggers: z65.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
37914
38205
|
confirmation: sdkWorkflowConfirmationSchema.optional()
|
|
37915
38206
|
}).strict();
|
|
37916
|
-
var sdkWorkflowsSchema =
|
|
38207
|
+
var sdkWorkflowsSchema = z65.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
37917
38208
|
const ids = workflows.map((workflow) => workflow.id);
|
|
37918
38209
|
return ids.length === new Set(ids).size;
|
|
37919
38210
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
37920
|
-
var riverbankSiteConfigInputSchema =
|
|
37921
|
-
siteId:
|
|
37922
|
-
previewUrl:
|
|
37923
|
-
liveUrl:
|
|
38211
|
+
var riverbankSiteConfigInputSchema = z65.object({
|
|
38212
|
+
siteId: z65.string().uuid(),
|
|
38213
|
+
previewUrl: z65.string().url().optional(),
|
|
38214
|
+
liveUrl: z65.string().url().optional(),
|
|
37924
38215
|
theme: sdkThemeConfigSchema.optional(),
|
|
37925
38216
|
styles: sdkSiteStyleConfigSchema.optional(),
|
|
37926
38217
|
layout: sdkSiteLayoutConfigSchema.optional(),
|
|
37927
|
-
customBlocks:
|
|
38218
|
+
customBlocks: z65.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
|
|
37928
38219
|
const ids = blocks.map((b) => b.id);
|
|
37929
38220
|
return ids.length === new Set(ids).size;
|
|
37930
38221
|
}, { message: "Block IDs must be unique" }).optional(),
|
|
@@ -37932,50 +38223,50 @@ var riverbankSiteConfigInputSchema = z64.object({
|
|
|
37932
38223
|
blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
|
|
37933
38224
|
workflows: sdkWorkflowsSchema,
|
|
37934
38225
|
content: sdkContentConfigSchema.optional(),
|
|
37935
|
-
contentDir:
|
|
37936
|
-
sync:
|
|
37937
|
-
existingEntries:
|
|
38226
|
+
contentDir: z65.string().optional(),
|
|
38227
|
+
sync: z65.object({
|
|
38228
|
+
existingEntries: z65.enum(["skip", "update"]).optional()
|
|
37938
38229
|
}).optional(),
|
|
37939
|
-
deploy:
|
|
37940
|
-
verifyCommand:
|
|
37941
|
-
prebuildOutput:
|
|
38230
|
+
deploy: z65.object({
|
|
38231
|
+
verifyCommand: z65.string().optional(),
|
|
38232
|
+
prebuildOutput: z65.string().optional()
|
|
37942
38233
|
}).optional(),
|
|
37943
|
-
themeSource:
|
|
37944
|
-
activeTheme:
|
|
37945
|
-
enablePortal:
|
|
38234
|
+
themeSource: z65.enum(["local", "cms"]).optional(),
|
|
38235
|
+
activeTheme: z65.string().optional(),
|
|
38236
|
+
enablePortal: z65.boolean().optional(),
|
|
37946
38237
|
dashboard: dashboardConfigSchema.optional()
|
|
37947
38238
|
}).strict();
|
|
37948
|
-
var pushSdkConfigBodySchema =
|
|
38239
|
+
var pushSdkConfigBodySchema = z65.object({
|
|
37949
38240
|
config: riverbankSiteConfigInputSchema,
|
|
37950
|
-
forceContentTypes:
|
|
38241
|
+
forceContentTypes: z65.boolean().optional()
|
|
37951
38242
|
}).strict();
|
|
37952
38243
|
|
|
37953
38244
|
// ../api/src/siteOnboarding.ts
|
|
37954
|
-
import { z as
|
|
38245
|
+
import { z as z66 } from "zod";
|
|
37955
38246
|
var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
|
|
37956
38247
|
configure_appointments: {
|
|
37957
38248
|
requirementId: "configure_appointments",
|
|
37958
38249
|
reason: "launch_anyway"
|
|
37959
38250
|
}
|
|
37960
38251
|
};
|
|
37961
|
-
var acknowledgeLaunchRequirementRequestSchema =
|
|
38252
|
+
var acknowledgeLaunchRequirementRequestSchema = z66.discriminatedUnion(
|
|
37962
38253
|
"requirementId",
|
|
37963
38254
|
[
|
|
37964
|
-
|
|
37965
|
-
requirementId:
|
|
38255
|
+
z66.object({
|
|
38256
|
+
requirementId: z66.literal("review_generated_site")
|
|
37966
38257
|
}),
|
|
37967
|
-
|
|
37968
|
-
requirementId:
|
|
38258
|
+
z66.object({
|
|
38259
|
+
requirementId: z66.literal(
|
|
37969
38260
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
|
|
37970
38261
|
),
|
|
37971
|
-
overrideReason:
|
|
38262
|
+
overrideReason: z66.literal(
|
|
37972
38263
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
|
|
37973
38264
|
)
|
|
37974
38265
|
})
|
|
37975
38266
|
]
|
|
37976
38267
|
);
|
|
37977
|
-
var goLiveSiteRequestSchema =
|
|
37978
|
-
acceptExtraSiteCharge:
|
|
38268
|
+
var goLiveSiteRequestSchema = z66.object({
|
|
38269
|
+
acceptExtraSiteCharge: z66.boolean().optional()
|
|
37979
38270
|
});
|
|
37980
38271
|
|
|
37981
38272
|
// ../surfaces/src/index.ts
|
|
@@ -38059,7 +38350,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
|
|
|
38059
38350
|
];
|
|
38060
38351
|
|
|
38061
38352
|
// ../api/src/bookingVerticals.ts
|
|
38062
|
-
import { z as
|
|
38353
|
+
import { z as z67 } from "zod";
|
|
38063
38354
|
var VERTICAL_IDS = [
|
|
38064
38355
|
"yoga_wellness",
|
|
38065
38356
|
"fitness_pt",
|
|
@@ -38224,39 +38515,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
|
|
|
38224
38515
|
}
|
|
38225
38516
|
return [...issues];
|
|
38226
38517
|
}
|
|
38227
|
-
var VerticalIdSchema =
|
|
38518
|
+
var VerticalIdSchema = z67.string().trim().transform((value, ctx) => {
|
|
38228
38519
|
const parsed = parseVerticalId(value);
|
|
38229
38520
|
if (!parsed) {
|
|
38230
38521
|
ctx.addIssue({
|
|
38231
|
-
code:
|
|
38522
|
+
code: z67.ZodIssueCode.custom,
|
|
38232
38523
|
message: "Unknown booking vertical"
|
|
38233
38524
|
});
|
|
38234
|
-
return
|
|
38525
|
+
return z67.NEVER;
|
|
38235
38526
|
}
|
|
38236
38527
|
return parsed;
|
|
38237
38528
|
});
|
|
38238
|
-
var VerticalPresetIdSchema =
|
|
38529
|
+
var VerticalPresetIdSchema = z67.string().trim().transform((value, ctx) => {
|
|
38239
38530
|
const parsed = parseVerticalPresetId(value);
|
|
38240
38531
|
if (!parsed) {
|
|
38241
38532
|
ctx.addIssue({
|
|
38242
|
-
code:
|
|
38533
|
+
code: z67.ZodIssueCode.custom,
|
|
38243
38534
|
message: "Unknown booking preset"
|
|
38244
38535
|
});
|
|
38245
|
-
return
|
|
38536
|
+
return z67.NEVER;
|
|
38246
38537
|
}
|
|
38247
38538
|
return parsed;
|
|
38248
38539
|
});
|
|
38249
|
-
var BookingVerticalConfigSchema =
|
|
38540
|
+
var BookingVerticalConfigSchema = z67.object({
|
|
38250
38541
|
verticalId: VerticalIdSchema.nullable(),
|
|
38251
|
-
selectedPresetIds:
|
|
38542
|
+
selectedPresetIds: z67.array(VerticalPresetIdSchema).max(20)
|
|
38252
38543
|
}).transform((value, ctx) => {
|
|
38253
38544
|
const resolved = resolveSiteVerticalBookingConfig(value);
|
|
38254
38545
|
if (resolved.kind === "invalid") {
|
|
38255
38546
|
ctx.addIssue({
|
|
38256
|
-
code:
|
|
38547
|
+
code: z67.ZodIssueCode.custom,
|
|
38257
38548
|
message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
|
|
38258
38549
|
});
|
|
38259
|
-
return
|
|
38550
|
+
return z67.NEVER;
|
|
38260
38551
|
}
|
|
38261
38552
|
return resolved.config;
|
|
38262
38553
|
});
|
|
@@ -38283,51 +38574,51 @@ function isRecord7(value) {
|
|
|
38283
38574
|
}
|
|
38284
38575
|
|
|
38285
38576
|
// ../api/src/appointmentSetup.ts
|
|
38286
|
-
import { z as
|
|
38577
|
+
import { z as z68 } from "zod";
|
|
38287
38578
|
var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
|
|
38288
|
-
var appointmentSetupRefSchema =
|
|
38289
|
-
|
|
38290
|
-
|
|
38579
|
+
var appointmentSetupRefSchema = z68.discriminatedUnion("kind", [
|
|
38580
|
+
z68.object({ kind: z68.literal("existing"), id: z68.string().min(1) }),
|
|
38581
|
+
z68.object({ kind: z68.literal("new"), draftId: z68.string().min(1) })
|
|
38291
38582
|
]);
|
|
38292
|
-
var appointmentSetupVenueChoiceSchema =
|
|
38293
|
-
|
|
38294
|
-
|
|
38295
|
-
|
|
38296
|
-
kind:
|
|
38297
|
-
draftId:
|
|
38298
|
-
title:
|
|
38299
|
-
description:
|
|
38300
|
-
timezone:
|
|
38301
|
-
addressJson:
|
|
38302
|
-
locationJson:
|
|
38583
|
+
var appointmentSetupVenueChoiceSchema = z68.discriminatedUnion("kind", [
|
|
38584
|
+
z68.object({ kind: z68.literal("none") }),
|
|
38585
|
+
z68.object({ kind: z68.literal("existing"), venueId: z68.string().min(1) }),
|
|
38586
|
+
z68.object({
|
|
38587
|
+
kind: z68.literal("create"),
|
|
38588
|
+
draftId: z68.string().min(1),
|
|
38589
|
+
title: z68.string().trim().min(1),
|
|
38590
|
+
description: z68.string().nullable(),
|
|
38591
|
+
timezone: z68.string().trim().min(1).nullable(),
|
|
38592
|
+
addressJson: z68.record(z68.string(), z68.unknown()),
|
|
38593
|
+
locationJson: z68.object({ lat: z68.number(), lng: z68.number() }).nullable()
|
|
38303
38594
|
})
|
|
38304
38595
|
]);
|
|
38305
|
-
var appointmentSetupPaymentDraftSchema =
|
|
38306
|
-
priceType:
|
|
38307
|
-
});
|
|
38308
|
-
var appointmentSetupServiceAssignmentDraftSchema =
|
|
38309
|
-
|
|
38310
|
-
|
|
38311
|
-
kind:
|
|
38312
|
-
resourceRefs:
|
|
38596
|
+
var appointmentSetupPaymentDraftSchema = z68.object({
|
|
38597
|
+
priceType: z68.union([z68.literal("free"), z68.literal("paid")])
|
|
38598
|
+
});
|
|
38599
|
+
var appointmentSetupServiceAssignmentDraftSchema = z68.discriminatedUnion("kind", [
|
|
38600
|
+
z68.object({ kind: z68.literal("all_practitioners") }),
|
|
38601
|
+
z68.object({
|
|
38602
|
+
kind: z68.literal("selected_practitioners"),
|
|
38603
|
+
resourceRefs: z68.array(appointmentSetupRefSchema)
|
|
38313
38604
|
})
|
|
38314
38605
|
]);
|
|
38315
|
-
var appointmentSetupServiceDraftSchema =
|
|
38606
|
+
var appointmentSetupServiceDraftSchema = z68.object({
|
|
38316
38607
|
ref: appointmentSetupRefSchema,
|
|
38317
|
-
title:
|
|
38318
|
-
description:
|
|
38319
|
-
durationMinutes:
|
|
38320
|
-
prepMinutes:
|
|
38321
|
-
cleanupMinutes:
|
|
38322
|
-
priceAmount:
|
|
38323
|
-
isActive:
|
|
38324
|
-
locationType:
|
|
38325
|
-
|
|
38326
|
-
|
|
38327
|
-
|
|
38608
|
+
title: z68.string().trim().min(1),
|
|
38609
|
+
description: z68.string().nullable(),
|
|
38610
|
+
durationMinutes: z68.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
|
|
38611
|
+
prepMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
38612
|
+
cleanupMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
38613
|
+
priceAmount: z68.number().int().nonnegative().nullable(),
|
|
38614
|
+
isActive: z68.boolean(),
|
|
38615
|
+
locationType: z68.union([
|
|
38616
|
+
z68.literal("virtual"),
|
|
38617
|
+
z68.literal("in_person"),
|
|
38618
|
+
z68.literal("hybrid")
|
|
38328
38619
|
]),
|
|
38329
38620
|
venue: appointmentSetupVenueChoiceSchema,
|
|
38330
|
-
timezone:
|
|
38621
|
+
timezone: z68.string().trim().min(1).nullable(),
|
|
38331
38622
|
payment: appointmentSetupPaymentDraftSchema,
|
|
38332
38623
|
assignment: appointmentSetupServiceAssignmentDraftSchema
|
|
38333
38624
|
}).superRefine((service, ctx) => {
|
|
@@ -38346,49 +38637,49 @@ var appointmentSetupServiceDraftSchema = z67.object({
|
|
|
38346
38637
|
});
|
|
38347
38638
|
}
|
|
38348
38639
|
});
|
|
38349
|
-
var appointmentSetupPractitionerDraftSchema =
|
|
38640
|
+
var appointmentSetupPractitionerDraftSchema = z68.object({
|
|
38350
38641
|
ref: appointmentSetupRefSchema,
|
|
38351
|
-
displayName:
|
|
38352
|
-
bio:
|
|
38353
|
-
timezone:
|
|
38354
|
-
colorHex:
|
|
38355
|
-
});
|
|
38356
|
-
var appointmentSetupWeeklyWindowDraftSchema =
|
|
38357
|
-
weekday:
|
|
38358
|
-
startTime:
|
|
38359
|
-
endTime:
|
|
38360
|
-
});
|
|
38361
|
-
var appointmentSetupStartTimePolicyDraftSchema =
|
|
38362
|
-
|
|
38363
|
-
|
|
38364
|
-
kind:
|
|
38365
|
-
intervalMinutes:
|
|
38366
|
-
|
|
38367
|
-
|
|
38368
|
-
|
|
38369
|
-
|
|
38370
|
-
|
|
38371
|
-
|
|
38642
|
+
displayName: z68.string().trim().min(1),
|
|
38643
|
+
bio: z68.string().nullable(),
|
|
38644
|
+
timezone: z68.string().trim().min(1),
|
|
38645
|
+
colorHex: z68.string().nullable()
|
|
38646
|
+
});
|
|
38647
|
+
var appointmentSetupWeeklyWindowDraftSchema = z68.object({
|
|
38648
|
+
weekday: z68.number().int().min(0).max(6),
|
|
38649
|
+
startTime: z68.string(),
|
|
38650
|
+
endTime: z68.string()
|
|
38651
|
+
});
|
|
38652
|
+
var appointmentSetupStartTimePolicyDraftSchema = z68.discriminatedUnion("kind", [
|
|
38653
|
+
z68.object({ kind: z68.literal("automatic_spacing") }),
|
|
38654
|
+
z68.object({
|
|
38655
|
+
kind: z68.literal("regular_interval"),
|
|
38656
|
+
intervalMinutes: z68.union([
|
|
38657
|
+
z68.literal(10),
|
|
38658
|
+
z68.literal(15),
|
|
38659
|
+
z68.literal(20),
|
|
38660
|
+
z68.literal(30),
|
|
38661
|
+
z68.literal(45),
|
|
38662
|
+
z68.literal(60)
|
|
38372
38663
|
])
|
|
38373
38664
|
})
|
|
38374
38665
|
]);
|
|
38375
|
-
var appointmentSetupAvailabilityDraftSchema =
|
|
38376
|
-
kind:
|
|
38666
|
+
var appointmentSetupAvailabilityDraftSchema = z68.object({
|
|
38667
|
+
kind: z68.literal("weekly_windows"),
|
|
38377
38668
|
resourceRef: appointmentSetupRefSchema,
|
|
38378
38669
|
serviceRef: appointmentSetupRefSchema.nullable(),
|
|
38379
|
-
windows:
|
|
38670
|
+
windows: z68.array(appointmentSetupWeeklyWindowDraftSchema),
|
|
38380
38671
|
startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
|
|
38381
38672
|
});
|
|
38382
38673
|
var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
|
|
38383
38674
|
var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
|
|
38384
|
-
var appointmentSetupBookingNoticeSchema =
|
|
38385
|
-
minLeadMinutes:
|
|
38386
|
-
maxBookingNoticeMinutes:
|
|
38387
|
-
});
|
|
38388
|
-
var applyAppointmentSetupRequestSchema =
|
|
38389
|
-
services:
|
|
38390
|
-
practitioners:
|
|
38391
|
-
availability:
|
|
38675
|
+
var appointmentSetupBookingNoticeSchema = z68.object({
|
|
38676
|
+
minLeadMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
|
|
38677
|
+
maxBookingNoticeMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
|
|
38678
|
+
});
|
|
38679
|
+
var applyAppointmentSetupRequestSchema = z68.object({
|
|
38680
|
+
services: z68.array(appointmentSetupServiceDraftSchema),
|
|
38681
|
+
practitioners: z68.array(appointmentSetupPractitionerDraftSchema),
|
|
38682
|
+
availability: z68.array(appointmentSetupAvailabilityDraftSchema),
|
|
38392
38683
|
bookingNotice: appointmentSetupBookingNoticeSchema
|
|
38393
38684
|
});
|
|
38394
38685
|
|
|
@@ -38421,24 +38712,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
|
|
|
38421
38712
|
];
|
|
38422
38713
|
|
|
38423
38714
|
// ../api/src/siteBanner.ts
|
|
38424
|
-
import { z as
|
|
38715
|
+
import { z as z69 } from "zod";
|
|
38425
38716
|
var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
|
|
38426
38717
|
var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
|
|
38427
38718
|
var SITE_BANNER_MAX_TEXT_LENGTH = 320;
|
|
38428
38719
|
var SITE_BANNER_MAX_PARAGRAPHS = 2;
|
|
38429
|
-
var siteBannerScopeSchema =
|
|
38430
|
-
var siteBannerToneSchema =
|
|
38431
|
-
var siteBannerBodySchema =
|
|
38432
|
-
var siteBannerCtaSchema =
|
|
38433
|
-
label:
|
|
38720
|
+
var siteBannerScopeSchema = z69.enum(SITE_BANNER_SCOPE_VALUES);
|
|
38721
|
+
var siteBannerToneSchema = z69.enum(SITE_BANNER_TONE_VALUES);
|
|
38722
|
+
var siteBannerBodySchema = z69.unknown().transform(unwrapRichTextValue);
|
|
38723
|
+
var siteBannerCtaSchema = z69.object({
|
|
38724
|
+
label: z69.string().trim().min(1),
|
|
38434
38725
|
link: linkPayloadSchema
|
|
38435
38726
|
});
|
|
38436
|
-
var siteBannerSettingsSchema =
|
|
38437
|
-
|
|
38438
|
-
enabled:
|
|
38727
|
+
var siteBannerSettingsSchema = z69.discriminatedUnion("enabled", [
|
|
38728
|
+
z69.object({
|
|
38729
|
+
enabled: z69.literal(false)
|
|
38439
38730
|
}),
|
|
38440
|
-
|
|
38441
|
-
enabled:
|
|
38731
|
+
z69.object({
|
|
38732
|
+
enabled: z69.literal(true),
|
|
38442
38733
|
scope: siteBannerScopeSchema,
|
|
38443
38734
|
tone: siteBannerToneSchema,
|
|
38444
38735
|
body: siteBannerBodySchema,
|
|
@@ -38452,7 +38743,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
|
|
|
38452
38743
|
const analysis = analyzeSiteBannerBody(value.body);
|
|
38453
38744
|
for (const issue of analysis.issues) {
|
|
38454
38745
|
ctx.addIssue({
|
|
38455
|
-
code:
|
|
38746
|
+
code: z69.ZodIssueCode.custom,
|
|
38456
38747
|
path: ["body"],
|
|
38457
38748
|
message: siteBannerBodyIssueMessage(issue)
|
|
38458
38749
|
});
|
|
@@ -38759,75 +39050,75 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
|
|
|
38759
39050
|
var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
|
|
38760
39051
|
|
|
38761
39052
|
// ../api/src/aiPlayground.ts
|
|
38762
|
-
import { z as
|
|
38763
|
-
var Rfc6902PatchOp =
|
|
39053
|
+
import { z as z70 } from "zod";
|
|
39054
|
+
var Rfc6902PatchOp = z70.discriminatedUnion("op", [
|
|
38764
39055
|
// Standard RFC-6902 operations
|
|
38765
|
-
|
|
38766
|
-
op:
|
|
38767
|
-
path:
|
|
38768
|
-
value:
|
|
39056
|
+
z70.object({
|
|
39057
|
+
op: z70.literal("add"),
|
|
39058
|
+
path: z70.string(),
|
|
39059
|
+
value: z70.unknown()
|
|
38769
39060
|
}),
|
|
38770
|
-
|
|
38771
|
-
op:
|
|
38772
|
-
path:
|
|
39061
|
+
z70.object({
|
|
39062
|
+
op: z70.literal("remove"),
|
|
39063
|
+
path: z70.string()
|
|
38773
39064
|
}),
|
|
38774
|
-
|
|
38775
|
-
op:
|
|
38776
|
-
path:
|
|
38777
|
-
value:
|
|
39065
|
+
z70.object({
|
|
39066
|
+
op: z70.literal("replace"),
|
|
39067
|
+
path: z70.string(),
|
|
39068
|
+
value: z70.unknown()
|
|
38778
39069
|
}),
|
|
38779
|
-
|
|
38780
|
-
op:
|
|
38781
|
-
from:
|
|
38782
|
-
path:
|
|
39070
|
+
z70.object({
|
|
39071
|
+
op: z70.literal("move"),
|
|
39072
|
+
from: z70.string(),
|
|
39073
|
+
path: z70.string()
|
|
38783
39074
|
}),
|
|
38784
|
-
|
|
38785
|
-
op:
|
|
38786
|
-
from:
|
|
38787
|
-
path:
|
|
39075
|
+
z70.object({
|
|
39076
|
+
op: z70.literal("copy"),
|
|
39077
|
+
from: z70.string(),
|
|
39078
|
+
path: z70.string()
|
|
38788
39079
|
}),
|
|
38789
39080
|
// Block-level operations (Phase 2)
|
|
38790
|
-
|
|
38791
|
-
op:
|
|
38792
|
-
blockKind:
|
|
38793
|
-
afterBlockId:
|
|
38794
|
-
content:
|
|
38795
|
-
rationale:
|
|
39081
|
+
z70.object({
|
|
39082
|
+
op: z70.literal("add_block"),
|
|
39083
|
+
blockKind: z70.string(),
|
|
39084
|
+
afterBlockId: z70.string().nullable(),
|
|
39085
|
+
content: z70.record(z70.string(), z70.unknown()),
|
|
39086
|
+
rationale: z70.string()
|
|
38796
39087
|
}),
|
|
38797
|
-
|
|
38798
|
-
op:
|
|
38799
|
-
blockId:
|
|
38800
|
-
rationale:
|
|
39088
|
+
z70.object({
|
|
39089
|
+
op: z70.literal("delete_block"),
|
|
39090
|
+
blockId: z70.string(),
|
|
39091
|
+
rationale: z70.string()
|
|
38801
39092
|
}),
|
|
38802
|
-
|
|
38803
|
-
op:
|
|
38804
|
-
blockId:
|
|
38805
|
-
afterBlockId:
|
|
38806
|
-
rationale:
|
|
39093
|
+
z70.object({
|
|
39094
|
+
op: z70.literal("reorder_block"),
|
|
39095
|
+
blockId: z70.string(),
|
|
39096
|
+
afterBlockId: z70.string().nullable(),
|
|
39097
|
+
rationale: z70.string()
|
|
38807
39098
|
})
|
|
38808
39099
|
]);
|
|
38809
|
-
var PlaygroundProposeRequest =
|
|
38810
|
-
request:
|
|
39100
|
+
var PlaygroundProposeRequest = z70.object({
|
|
39101
|
+
request: z70.string().min(1).max(2e3)
|
|
38811
39102
|
});
|
|
38812
|
-
var MultiPagePatchEnvelope =
|
|
38813
|
-
pageId:
|
|
38814
|
-
blockId:
|
|
39103
|
+
var MultiPagePatchEnvelope = z70.object({
|
|
39104
|
+
pageId: z70.string(),
|
|
39105
|
+
blockId: z70.string().optional(),
|
|
38815
39106
|
// Not present for page-level ops
|
|
38816
|
-
blockKind:
|
|
38817
|
-
blockPurpose:
|
|
38818
|
-
ops:
|
|
38819
|
-
rationale:
|
|
38820
|
-
currentContent:
|
|
39107
|
+
blockKind: z70.string().optional(),
|
|
39108
|
+
blockPurpose: z70.string().optional().nullable(),
|
|
39109
|
+
ops: z70.array(Rfc6902PatchOp),
|
|
39110
|
+
rationale: z70.string(),
|
|
39111
|
+
currentContent: z70.record(z70.string(), z70.unknown()).optional()
|
|
38821
39112
|
});
|
|
38822
|
-
var MultiPageUpdateResponse =
|
|
38823
|
-
patches:
|
|
38824
|
-
assistantMessage:
|
|
38825
|
-
pagesModified:
|
|
38826
|
-
toolCallsUsed:
|
|
39113
|
+
var MultiPageUpdateResponse = z70.object({
|
|
39114
|
+
patches: z70.array(MultiPagePatchEnvelope),
|
|
39115
|
+
assistantMessage: z70.string(),
|
|
39116
|
+
pagesModified: z70.number(),
|
|
39117
|
+
toolCallsUsed: z70.number()
|
|
38827
39118
|
});
|
|
38828
39119
|
|
|
38829
39120
|
// src/config/content-validation.ts
|
|
38830
|
-
import { z as
|
|
39121
|
+
import { z as z71 } from "zod";
|
|
38831
39122
|
|
|
38832
39123
|
// src/types/block-kinds.ts
|
|
38833
39124
|
var SYSTEM_BLOCK_KINDS = [
|
|
@@ -38983,36 +39274,36 @@ function describeInvalidBindingTransform(transform) {
|
|
|
38983
39274
|
}
|
|
38984
39275
|
|
|
38985
39276
|
// src/config/content-validation.ts
|
|
38986
|
-
var jsonDataSchema =
|
|
38987
|
-
var contentTypeKeySchema =
|
|
39277
|
+
var jsonDataSchema = z71.record(z71.string(), z71.any());
|
|
39278
|
+
var contentTypeKeySchema = z71.string().min(1).regex(
|
|
38988
39279
|
/^[a-z][a-z0-9-]*$/,
|
|
38989
39280
|
"Key must be lowercase, start with a letter, and contain only letters, numbers, and hyphens"
|
|
38990
39281
|
);
|
|
38991
|
-
var templateConfigSchemaForward =
|
|
38992
|
-
blocks:
|
|
38993
|
-
|
|
38994
|
-
identifier:
|
|
38995
|
-
kind:
|
|
38996
|
-
scope:
|
|
38997
|
-
bindings:
|
|
38998
|
-
content:
|
|
39282
|
+
var templateConfigSchemaForward = z71.object({
|
|
39283
|
+
blocks: z71.array(
|
|
39284
|
+
z71.object({
|
|
39285
|
+
identifier: z71.string().min(1),
|
|
39286
|
+
kind: z71.string(),
|
|
39287
|
+
scope: z71.enum(["entry", "template"]),
|
|
39288
|
+
bindings: z71.record(z71.string(), z71.any()).optional(),
|
|
39289
|
+
content: z71.record(z71.string(), z71.any()).optional()
|
|
38999
39290
|
})
|
|
39000
39291
|
)
|
|
39001
39292
|
}).optional();
|
|
39002
|
-
var contentTypeOrderingSchema =
|
|
39003
|
-
mode:
|
|
39293
|
+
var contentTypeOrderingSchema = z71.object({
|
|
39294
|
+
mode: z71.enum(["default", "manual"]).optional()
|
|
39004
39295
|
}).optional();
|
|
39005
|
-
var contentTypeConfigSchema =
|
|
39296
|
+
var contentTypeConfigSchema = z71.object({
|
|
39006
39297
|
key: contentTypeKeySchema,
|
|
39007
|
-
name:
|
|
39008
|
-
description:
|
|
39009
|
-
hasPages:
|
|
39010
|
-
routePattern:
|
|
39298
|
+
name: z71.string().min(1),
|
|
39299
|
+
description: z71.string().optional(),
|
|
39300
|
+
hasPages: z71.boolean(),
|
|
39301
|
+
routePattern: z71.string().optional(),
|
|
39011
39302
|
// Fields are validated as unknown[] here - deep field validation happens in @riverbankcms/blocks
|
|
39012
|
-
fields:
|
|
39013
|
-
titleField:
|
|
39303
|
+
fields: z71.array(z71.any()).min(1, "At least one field is required"),
|
|
39304
|
+
titleField: z71.string().optional(),
|
|
39014
39305
|
ordering: contentTypeOrderingSchema,
|
|
39015
|
-
isSingleton:
|
|
39306
|
+
isSingleton: z71.boolean().optional().default(false),
|
|
39016
39307
|
template: templateConfigSchemaForward
|
|
39017
39308
|
}).refine(
|
|
39018
39309
|
(data) => {
|
|
@@ -39034,7 +39325,7 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39034
39325
|
}
|
|
39035
39326
|
if (!data.routePattern) {
|
|
39036
39327
|
ctx.addIssue({
|
|
39037
|
-
code:
|
|
39328
|
+
code: z71.ZodIssueCode.custom,
|
|
39038
39329
|
path: ["routePattern"],
|
|
39039
39330
|
message: "routePattern is required when hasPages is true. Non-singleton types must include {slug} placeholder."
|
|
39040
39331
|
});
|
|
@@ -39043,7 +39334,7 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39043
39334
|
const parseResult = safeParseRouteTemplate(data.routePattern);
|
|
39044
39335
|
if (!parseResult.success) {
|
|
39045
39336
|
ctx.addIssue({
|
|
39046
|
-
code:
|
|
39337
|
+
code: z71.ZodIssueCode.custom,
|
|
39047
39338
|
path: ["routePattern"],
|
|
39048
39339
|
message: describeRouteTemplateParseError(parseResult.error)
|
|
39049
39340
|
});
|
|
@@ -39051,44 +39342,44 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39051
39342
|
}
|
|
39052
39343
|
if (!data.isSingleton && parseResult.routeTemplate.kind !== "slug-template") {
|
|
39053
39344
|
ctx.addIssue({
|
|
39054
|
-
code:
|
|
39345
|
+
code: z71.ZodIssueCode.custom,
|
|
39055
39346
|
path: ["routePattern"],
|
|
39056
39347
|
message: "routePattern is required when hasPages is true. Non-singleton types must include {slug} placeholder."
|
|
39057
39348
|
});
|
|
39058
39349
|
}
|
|
39059
39350
|
});
|
|
39060
|
-
var fieldBindingSchema =
|
|
39061
|
-
source:
|
|
39062
|
-
path:
|
|
39351
|
+
var fieldBindingSchema = z71.object({
|
|
39352
|
+
source: z71.literal("field"),
|
|
39353
|
+
path: z71.string().min(1, "Field path is required")
|
|
39063
39354
|
});
|
|
39064
|
-
var metaBindingSchema =
|
|
39065
|
-
source:
|
|
39066
|
-
path:
|
|
39355
|
+
var metaBindingSchema = z71.object({
|
|
39356
|
+
source: z71.literal("meta"),
|
|
39357
|
+
path: z71.enum(TEMPLATE_BINDING_META_PATHS, {
|
|
39067
39358
|
error: (issue) => describeInvalidTemplateBindingMetaPath(String(issue.input))
|
|
39068
39359
|
})
|
|
39069
39360
|
});
|
|
39070
|
-
var literalBindingSchema =
|
|
39071
|
-
source:
|
|
39072
|
-
value:
|
|
39361
|
+
var literalBindingSchema = z71.object({
|
|
39362
|
+
source: z71.literal("literal"),
|
|
39363
|
+
value: z71.unknown()
|
|
39073
39364
|
});
|
|
39074
|
-
var transformBindingSchema =
|
|
39075
|
-
source:
|
|
39076
|
-
path:
|
|
39077
|
-
transform:
|
|
39365
|
+
var transformBindingSchema = z71.object({
|
|
39366
|
+
source: z71.literal("transform"),
|
|
39367
|
+
path: z71.string().min(1, "Transform path is required"),
|
|
39368
|
+
transform: z71.enum(BINDING_TRANSFORM_VALUES, {
|
|
39078
39369
|
error: (issue) => describeInvalidBindingTransform(String(issue.input))
|
|
39079
39370
|
})
|
|
39080
39371
|
});
|
|
39081
|
-
var baseBindingSchema =
|
|
39372
|
+
var baseBindingSchema = z71.discriminatedUnion("source", [
|
|
39082
39373
|
fieldBindingSchema,
|
|
39083
39374
|
metaBindingSchema,
|
|
39084
39375
|
literalBindingSchema,
|
|
39085
39376
|
transformBindingSchema
|
|
39086
39377
|
]);
|
|
39087
|
-
var fallbackBindingSchema =
|
|
39088
|
-
source:
|
|
39089
|
-
sources:
|
|
39378
|
+
var fallbackBindingSchema = z71.object({
|
|
39379
|
+
source: z71.literal("fallback"),
|
|
39380
|
+
sources: z71.array(z71.lazy(() => bindingSourceSchema)).min(1, "Fallback must have at least one source")
|
|
39090
39381
|
});
|
|
39091
|
-
var bindingSourceSchema =
|
|
39382
|
+
var bindingSourceSchema = z71.union([
|
|
39092
39383
|
baseBindingSchema,
|
|
39093
39384
|
fallbackBindingSchema
|
|
39094
39385
|
]);
|
|
@@ -39102,12 +39393,12 @@ function isValidBlockKind(kind) {
|
|
|
39102
39393
|
return false;
|
|
39103
39394
|
}
|
|
39104
39395
|
var BLOCK_KIND_ERROR_MESSAGE = 'Block kind must be a system block (e.g., "block.hero") or a custom block (e.g., "custom.myBlock")';
|
|
39105
|
-
var blockKindSchema =
|
|
39106
|
-
var templateBlockConfigSchema =
|
|
39107
|
-
identifier:
|
|
39396
|
+
var blockKindSchema = z71.string().refine(isValidBlockKind, { message: BLOCK_KIND_ERROR_MESSAGE });
|
|
39397
|
+
var templateBlockConfigSchema = z71.object({
|
|
39398
|
+
identifier: z71.string().min(1, "Block identifier is required"),
|
|
39108
39399
|
kind: blockKindSchema,
|
|
39109
|
-
scope:
|
|
39110
|
-
bindings:
|
|
39400
|
+
scope: z71.enum(["entry", "template"]),
|
|
39401
|
+
bindings: z71.record(z71.string(), bindingSourceSchema).optional(),
|
|
39111
39402
|
content: jsonDataSchema.optional()
|
|
39112
39403
|
}).refine(
|
|
39113
39404
|
(data) => {
|
|
@@ -39126,8 +39417,8 @@ var templateBlockConfigSchema = z70.object({
|
|
|
39126
39417
|
},
|
|
39127
39418
|
{ message: "Template-scoped blocks should define static content, not bindings" }
|
|
39128
39419
|
);
|
|
39129
|
-
var templateConfigSchema =
|
|
39130
|
-
blocks:
|
|
39420
|
+
var templateConfigSchema = z71.object({
|
|
39421
|
+
blocks: z71.array(templateBlockConfigSchema).min(1, "Template must have at least one block")
|
|
39131
39422
|
}).refine(
|
|
39132
39423
|
(data) => {
|
|
39133
39424
|
const identifiers = data.blocks.map((b) => b.identifier);
|
|
@@ -39136,77 +39427,77 @@ var templateConfigSchema = z70.object({
|
|
|
39136
39427
|
},
|
|
39137
39428
|
{ message: "Template block identifiers must be unique" }
|
|
39138
39429
|
);
|
|
39139
|
-
var blockConfigSchema =
|
|
39430
|
+
var blockConfigSchema = z71.object({
|
|
39140
39431
|
kind: blockKindSchema,
|
|
39141
39432
|
content: jsonDataSchema,
|
|
39142
|
-
orderIndex:
|
|
39143
|
-
});
|
|
39144
|
-
var pageConfigSchema =
|
|
39145
|
-
identifier:
|
|
39146
|
-
title:
|
|
39147
|
-
path:
|
|
39148
|
-
purpose:
|
|
39149
|
-
blocks:
|
|
39150
|
-
status:
|
|
39151
|
-
metaTitle:
|
|
39152
|
-
metaDescription:
|
|
39153
|
-
});
|
|
39154
|
-
var entryConfigSchema =
|
|
39155
|
-
identifier:
|
|
39156
|
-
contentType:
|
|
39433
|
+
orderIndex: z71.number().optional()
|
|
39434
|
+
});
|
|
39435
|
+
var pageConfigSchema = z71.object({
|
|
39436
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39437
|
+
title: z71.string().min(1, "Title is required"),
|
|
39438
|
+
path: z71.string().regex(/^\//, "Path must start with /"),
|
|
39439
|
+
purpose: z71.string().default("content"),
|
|
39440
|
+
blocks: z71.array(blockConfigSchema).optional(),
|
|
39441
|
+
status: z71.enum(["draft", "published"]).default("draft"),
|
|
39442
|
+
metaTitle: z71.string().optional(),
|
|
39443
|
+
metaDescription: z71.string().optional()
|
|
39444
|
+
});
|
|
39445
|
+
var entryConfigSchema = z71.object({
|
|
39446
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39447
|
+
contentType: z71.string().min(1, "Content type is required"),
|
|
39157
39448
|
data: jsonDataSchema,
|
|
39158
|
-
status:
|
|
39159
|
-
slug:
|
|
39160
|
-
summary:
|
|
39449
|
+
status: z71.enum(["draft", "published"]).default("draft"),
|
|
39450
|
+
slug: z71.string().optional(),
|
|
39451
|
+
summary: z71.string().optional(),
|
|
39161
39452
|
// Hard remove legacy config-only titles: titles must live in entry `data`.
|
|
39162
|
-
title:
|
|
39453
|
+
title: z71.any().optional().refine((value) => value === void 0, {
|
|
39163
39454
|
message: "Entry titles are now derived from entry data. Remove `title` and move it into `data` (e.g. `data.title`, or your configured `titleField`). Run `riverbankcms migrate entries` for guided migration."
|
|
39164
39455
|
}),
|
|
39165
|
-
metaTitle:
|
|
39166
|
-
metaDescription:
|
|
39456
|
+
metaTitle: z71.string().optional(),
|
|
39457
|
+
metaDescription: z71.string().optional()
|
|
39167
39458
|
});
|
|
39168
|
-
var dropdownLinkSchema =
|
|
39169
|
-
kind:
|
|
39459
|
+
var dropdownLinkSchema = z71.object({
|
|
39460
|
+
kind: z71.literal("dropdown")
|
|
39170
39461
|
});
|
|
39171
|
-
var navigationLinkSchema =
|
|
39462
|
+
var navigationLinkSchema = z71.discriminatedUnion("kind", [
|
|
39172
39463
|
...navigationLinkInputSchemaOptions,
|
|
39173
39464
|
dropdownLinkSchema
|
|
39174
39465
|
]);
|
|
39175
|
-
var baseNavigationItemSchema =
|
|
39176
|
-
label:
|
|
39466
|
+
var baseNavigationItemSchema = z71.object({
|
|
39467
|
+
label: z71.string().min(1, "Label is required"),
|
|
39177
39468
|
link: navigationLinkSchema,
|
|
39178
|
-
isCta:
|
|
39469
|
+
isCta: z71.boolean().optional()
|
|
39179
39470
|
});
|
|
39180
39471
|
var navigationItemConfigSchema = baseNavigationItemSchema.extend({
|
|
39181
|
-
children:
|
|
39182
|
-
});
|
|
39183
|
-
var navigationMenuConfigSchema =
|
|
39184
|
-
identifier:
|
|
39185
|
-
name:
|
|
39186
|
-
isPrimary:
|
|
39187
|
-
isFooter:
|
|
39188
|
-
items:
|
|
39472
|
+
children: z71.lazy(() => z71.array(navigationItemConfigSchema)).optional()
|
|
39473
|
+
});
|
|
39474
|
+
var navigationMenuConfigSchema = z71.object({
|
|
39475
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39476
|
+
name: z71.string().min(1, "Name is required"),
|
|
39477
|
+
isPrimary: z71.boolean().optional(),
|
|
39478
|
+
isFooter: z71.boolean().optional(),
|
|
39479
|
+
items: z71.array(navigationItemConfigSchema)
|
|
39189
39480
|
}).superRefine((menu, ctx) => {
|
|
39190
39481
|
const portalStats = collectPortalLinkStats(
|
|
39191
39482
|
menu.items
|
|
39192
39483
|
);
|
|
39193
39484
|
if (portalStats.count > 1) {
|
|
39194
39485
|
ctx.addIssue({
|
|
39195
|
-
code:
|
|
39486
|
+
code: z71.ZodIssueCode.custom,
|
|
39196
39487
|
message: "Only one portal link is allowed per navigation menu",
|
|
39197
39488
|
path: ["items"]
|
|
39198
39489
|
});
|
|
39199
39490
|
}
|
|
39200
39491
|
if (portalStats.nestedLabels.length > 0) {
|
|
39201
39492
|
ctx.addIssue({
|
|
39202
|
-
code:
|
|
39493
|
+
code: z71.ZodIssueCode.custom,
|
|
39203
39494
|
message: `Portal links must be root-level items: ${portalStats.nestedLabels.join(", ")}`,
|
|
39204
39495
|
path: ["items"]
|
|
39205
39496
|
});
|
|
39206
39497
|
}
|
|
39207
39498
|
if (portalStats.withChildrenLabels.length > 0) {
|
|
39208
39499
|
ctx.addIssue({
|
|
39209
|
-
code:
|
|
39500
|
+
code: z71.ZodIssueCode.custom,
|
|
39210
39501
|
message: `Portal links cannot contain child items: ${portalStats.withChildrenLabels.join(", ")}`,
|
|
39211
39502
|
path: ["items"]
|
|
39212
39503
|
});
|
|
@@ -39216,44 +39507,44 @@ var navigationMenuConfigSchema = z70.object({
|
|
|
39216
39507
|
);
|
|
39217
39508
|
if (cartStats.nestedLabels.length > 0) {
|
|
39218
39509
|
ctx.addIssue({
|
|
39219
|
-
code:
|
|
39510
|
+
code: z71.ZodIssueCode.custom,
|
|
39220
39511
|
message: `Cart links must be root-level items: ${cartStats.nestedLabels.join(", ")}`,
|
|
39221
39512
|
path: ["items"]
|
|
39222
39513
|
});
|
|
39223
39514
|
}
|
|
39224
39515
|
if (cartStats.withChildrenLabels.length > 0) {
|
|
39225
39516
|
ctx.addIssue({
|
|
39226
|
-
code:
|
|
39517
|
+
code: z71.ZodIssueCode.custom,
|
|
39227
39518
|
message: `Cart links cannot contain child items: ${cartStats.withChildrenLabels.join(", ")}`,
|
|
39228
39519
|
path: ["items"]
|
|
39229
39520
|
});
|
|
39230
39521
|
}
|
|
39231
39522
|
if (cartStats.ctaLabels.length > 0) {
|
|
39232
39523
|
ctx.addIssue({
|
|
39233
|
-
code:
|
|
39524
|
+
code: z71.ZodIssueCode.custom,
|
|
39234
39525
|
message: `Cart links cannot be marked as CTA: ${cartStats.ctaLabels.join(", ")}`,
|
|
39235
39526
|
path: ["items"]
|
|
39236
39527
|
});
|
|
39237
39528
|
}
|
|
39238
39529
|
if (cartStats.missingVisibleTextLabels.length > 0) {
|
|
39239
39530
|
ctx.addIssue({
|
|
39240
|
-
code:
|
|
39531
|
+
code: z71.ZodIssueCode.custom,
|
|
39241
39532
|
message: `Cart links with icon-with-label must provide a visible label: ${cartStats.missingVisibleTextLabels.join(", ")}`,
|
|
39242
39533
|
path: ["items"]
|
|
39243
39534
|
});
|
|
39244
39535
|
}
|
|
39245
39536
|
});
|
|
39246
|
-
var siteSettingsConfigSchema =
|
|
39247
|
-
homepagePath:
|
|
39248
|
-
siteTitle:
|
|
39249
|
-
siteDescription:
|
|
39250
|
-
defaultTemplates:
|
|
39537
|
+
var siteSettingsConfigSchema = z71.object({
|
|
39538
|
+
homepagePath: z71.string().optional(),
|
|
39539
|
+
siteTitle: z71.string().optional(),
|
|
39540
|
+
siteDescription: z71.string().optional(),
|
|
39541
|
+
defaultTemplates: z71.record(z71.string(), z71.string()).optional()
|
|
39251
39542
|
});
|
|
39252
|
-
var contentConfigBaseSchema =
|
|
39253
|
-
contentTypes:
|
|
39254
|
-
entries:
|
|
39255
|
-
pages:
|
|
39256
|
-
navigationMenus:
|
|
39543
|
+
var contentConfigBaseSchema = z71.object({
|
|
39544
|
+
contentTypes: z71.array(contentTypeConfigSchema).optional(),
|
|
39545
|
+
entries: z71.array(entryConfigSchema).optional(),
|
|
39546
|
+
pages: z71.array(pageConfigSchema).optional(),
|
|
39547
|
+
navigationMenus: z71.array(navigationMenuConfigSchema).optional(),
|
|
39257
39548
|
settings: siteSettingsConfigSchema.optional()
|
|
39258
39549
|
});
|
|
39259
39550
|
var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
@@ -39262,7 +39553,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39262
39553
|
const duplicateKeys = keys.filter((key, i) => keys.indexOf(key) !== i);
|
|
39263
39554
|
if (duplicateKeys.length > 0) {
|
|
39264
39555
|
ctx.addIssue({
|
|
39265
|
-
code:
|
|
39556
|
+
code: z71.ZodIssueCode.custom,
|
|
39266
39557
|
message: `Content type keys must be unique. Duplicates: ${duplicateKeys.join(", ")}`,
|
|
39267
39558
|
path: ["contentTypes"]
|
|
39268
39559
|
});
|
|
@@ -39273,7 +39564,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39273
39564
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39274
39565
|
if (duplicateIds.length > 0) {
|
|
39275
39566
|
ctx.addIssue({
|
|
39276
|
-
code:
|
|
39567
|
+
code: z71.ZodIssueCode.custom,
|
|
39277
39568
|
message: `Page identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39278
39569
|
path: ["pages"]
|
|
39279
39570
|
});
|
|
@@ -39282,7 +39573,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39282
39573
|
const duplicatePaths = paths.filter((path, i) => paths.indexOf(path) !== i);
|
|
39283
39574
|
if (duplicatePaths.length > 0) {
|
|
39284
39575
|
ctx.addIssue({
|
|
39285
|
-
code:
|
|
39576
|
+
code: z71.ZodIssueCode.custom,
|
|
39286
39577
|
message: `Page paths must be unique. Duplicates: ${duplicatePaths.join(", ")}`,
|
|
39287
39578
|
path: ["pages"]
|
|
39288
39579
|
});
|
|
@@ -39293,7 +39584,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39293
39584
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39294
39585
|
if (duplicateIds.length > 0) {
|
|
39295
39586
|
ctx.addIssue({
|
|
39296
|
-
code:
|
|
39587
|
+
code: z71.ZodIssueCode.custom,
|
|
39297
39588
|
message: `Entry identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39298
39589
|
path: ["entries"]
|
|
39299
39590
|
});
|
|
@@ -39304,7 +39595,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39304
39595
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39305
39596
|
if (duplicateIds.length > 0) {
|
|
39306
39597
|
ctx.addIssue({
|
|
39307
|
-
code:
|
|
39598
|
+
code: z71.ZodIssueCode.custom,
|
|
39308
39599
|
message: `Navigation menu identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39309
39600
|
path: ["navigationMenus"]
|
|
39310
39601
|
});
|
|
@@ -39318,7 +39609,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39318
39609
|
const entriesForType = data.entries.filter((e) => e.contentType === singletonKey);
|
|
39319
39610
|
if (entriesForType.length > 1) {
|
|
39320
39611
|
ctx.addIssue({
|
|
39321
|
-
code:
|
|
39612
|
+
code: z71.ZodIssueCode.custom,
|
|
39322
39613
|
message: `Singleton content type "${singletonKey}" cannot have more than one entry. Found ${entriesForType.length} entries.`,
|
|
39323
39614
|
path: ["entries"]
|
|
39324
39615
|
});
|
|
@@ -39431,18 +39722,18 @@ function validateLayout(layout) {
|
|
|
39431
39722
|
}
|
|
39432
39723
|
|
|
39433
39724
|
// src/config/dashboard-validation.ts
|
|
39434
|
-
import { z as
|
|
39435
|
-
var navIdListSchema2 =
|
|
39725
|
+
import { z as z72 } from "zod";
|
|
39726
|
+
var navIdListSchema2 = z72.preprocess((value) => {
|
|
39436
39727
|
if (!Array.isArray(value)) return void 0;
|
|
39437
39728
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
39438
39729
|
return filtered.length > 0 ? filtered : void 0;
|
|
39439
|
-
},
|
|
39440
|
-
var dashboardNavVisibilityBaseSchema2 =
|
|
39441
|
-
mode:
|
|
39730
|
+
}, z72.array(z72.string()).max(200, "Maximum 200 nav IDs").optional());
|
|
39731
|
+
var dashboardNavVisibilityBaseSchema2 = z72.object({
|
|
39732
|
+
mode: z72.enum(["augment", "restrict"]).optional(),
|
|
39442
39733
|
allowIds: navIdListSchema2,
|
|
39443
39734
|
denyIds: navIdListSchema2
|
|
39444
39735
|
}).strip();
|
|
39445
|
-
var dashboardNavVisibilityRolesSchema2 =
|
|
39736
|
+
var dashboardNavVisibilityRolesSchema2 = z72.object({
|
|
39446
39737
|
administrator: dashboardNavVisibilityBaseSchema2.optional(),
|
|
39447
39738
|
editor: dashboardNavVisibilityBaseSchema2.optional(),
|
|
39448
39739
|
team_member: dashboardNavVisibilityBaseSchema2.optional()
|
|
@@ -39450,43 +39741,28 @@ var dashboardNavVisibilityRolesSchema2 = z71.object({
|
|
|
39450
39741
|
var dashboardNavVisibilitySchema2 = dashboardNavVisibilityBaseSchema2.extend({
|
|
39451
39742
|
roles: dashboardNavVisibilityRolesSchema2
|
|
39452
39743
|
}).strip();
|
|
39453
|
-
var dashboardNavigationConfigSchema2 =
|
|
39744
|
+
var dashboardNavigationConfigSchema2 = z72.object({
|
|
39454
39745
|
siteNav: dashboardNavVisibilitySchema2.optional(),
|
|
39455
39746
|
settingsNav: dashboardNavVisibilitySchema2.optional()
|
|
39456
39747
|
}).strip();
|
|
39457
|
-
var dashboardConfigSchema2 =
|
|
39458
|
-
previewEditingEnabled:
|
|
39748
|
+
var dashboardConfigSchema2 = z72.object({
|
|
39749
|
+
previewEditingEnabled: z72.boolean().optional(),
|
|
39459
39750
|
navigation: dashboardNavigationConfigSchema2.optional()
|
|
39460
39751
|
}).strip();
|
|
39461
39752
|
|
|
39462
39753
|
// src/zod/titleSourceSchema.ts
|
|
39463
|
-
import { z as
|
|
39464
|
-
var titleSourceValueSchema =
|
|
39465
|
-
|
|
39466
|
-
|
|
39754
|
+
import { z as z73 } from "zod";
|
|
39755
|
+
var titleSourceValueSchema = z73.union([
|
|
39756
|
+
z73.string().min(1),
|
|
39757
|
+
z73.array(z73.string().min(1)).min(1)
|
|
39467
39758
|
]);
|
|
39468
39759
|
|
|
39469
|
-
// src/data/prefetchBlockData.ts
|
|
39470
|
-
var SUPPORTED_LOADER_ENDPOINTS2 = [
|
|
39471
|
-
"listPublishedEntries",
|
|
39472
|
-
"getPublishedEntryPreview",
|
|
39473
|
-
"listPublicEvents",
|
|
39474
|
-
"listPublicCourses",
|
|
39475
|
-
"listPublicTeamMembers",
|
|
39476
|
-
"listPublicProducts",
|
|
39477
|
-
"listPublicPasses",
|
|
39478
|
-
"listPublicMemberships",
|
|
39479
|
-
"getPublicFormById",
|
|
39480
|
-
"getPublicBookingServices",
|
|
39481
|
-
"getPublicEventDetails"
|
|
39482
|
-
];
|
|
39483
|
-
|
|
39484
39760
|
// src/config/validation.ts
|
|
39485
|
-
var sdkThemePaletteSchema2 =
|
|
39486
|
-
var sdkThemeConfigSchema2 =
|
|
39761
|
+
var sdkThemePaletteSchema2 = z74.record(z74.string(), z74.string());
|
|
39762
|
+
var sdkThemeConfigSchema2 = z74.object({
|
|
39487
39763
|
palette: sdkThemePaletteSchema2
|
|
39488
39764
|
});
|
|
39489
|
-
var sdkSiteUrlSchema =
|
|
39765
|
+
var sdkSiteUrlSchema = z74.string().url("Must be a valid URL").refine((url) => {
|
|
39490
39766
|
try {
|
|
39491
39767
|
const parsed = new URL(url);
|
|
39492
39768
|
const isLocal = parsed.hostname === "localhost" || parsed.hostname.endsWith(".localhost") || parsed.hostname.endsWith(".local") || parsed.hostname.endsWith(".test");
|
|
@@ -39495,97 +39771,97 @@ var sdkSiteUrlSchema = z73.string().url("Must be a valid URL").refine((url) => {
|
|
|
39495
39771
|
return false;
|
|
39496
39772
|
}
|
|
39497
39773
|
}, { message: "Production URLs must use HTTPS" }).transform((url) => url.replace(/\/$/, ""));
|
|
39498
|
-
var sectionBackgroundSchema =
|
|
39499
|
-
id:
|
|
39500
|
-
label:
|
|
39501
|
-
token:
|
|
39774
|
+
var sectionBackgroundSchema = z74.object({
|
|
39775
|
+
id: z74.string(),
|
|
39776
|
+
label: z74.string(),
|
|
39777
|
+
token: z74.string()
|
|
39502
39778
|
// Reference to theme palette token
|
|
39503
39779
|
});
|
|
39504
|
-
var sectionSpacingSchema =
|
|
39505
|
-
var containerMaxWidthSchema =
|
|
39506
|
-
var containerAlignmentSchema =
|
|
39507
|
-
var sectionOptionsSchema =
|
|
39508
|
-
backgroundColor:
|
|
39509
|
-
backgroundImage:
|
|
39510
|
-
backgroundGradient:
|
|
39511
|
-
spacing:
|
|
39512
|
-
|
|
39513
|
-
|
|
39780
|
+
var sectionSpacingSchema = z74.enum(["compact", "default", "spacious"]);
|
|
39781
|
+
var containerMaxWidthSchema = z74.enum(["narrow", "default", "wide", "full"]);
|
|
39782
|
+
var containerAlignmentSchema = z74.enum(["left", "center", "right"]);
|
|
39783
|
+
var sectionOptionsSchema = z74.object({
|
|
39784
|
+
backgroundColor: z74.boolean().optional(),
|
|
39785
|
+
backgroundImage: z74.boolean().optional(),
|
|
39786
|
+
backgroundGradient: z74.boolean().optional(),
|
|
39787
|
+
spacing: z74.union([
|
|
39788
|
+
z74.array(sectionSpacingSchema),
|
|
39789
|
+
z74.boolean()
|
|
39514
39790
|
]).optional(),
|
|
39515
|
-
textColor:
|
|
39791
|
+
textColor: z74.boolean().optional()
|
|
39516
39792
|
}).optional();
|
|
39517
|
-
var containerOptionsSchema =
|
|
39518
|
-
maxWidth:
|
|
39519
|
-
|
|
39520
|
-
|
|
39793
|
+
var containerOptionsSchema = z74.object({
|
|
39794
|
+
maxWidth: z74.union([
|
|
39795
|
+
z74.array(containerMaxWidthSchema),
|
|
39796
|
+
z74.boolean()
|
|
39521
39797
|
]).optional(),
|
|
39522
|
-
alignment:
|
|
39523
|
-
|
|
39524
|
-
|
|
39798
|
+
alignment: z74.union([
|
|
39799
|
+
z74.array(containerAlignmentSchema),
|
|
39800
|
+
z74.boolean()
|
|
39525
39801
|
]).optional()
|
|
39526
39802
|
}).optional();
|
|
39527
|
-
var siteStyleConfigSchema =
|
|
39528
|
-
sectionBackgrounds:
|
|
39803
|
+
var siteStyleConfigSchema = z74.object({
|
|
39804
|
+
sectionBackgrounds: z74.array(sectionBackgroundSchema).optional(),
|
|
39529
39805
|
sectionOptions: sectionOptionsSchema,
|
|
39530
39806
|
containerOptions: containerOptionsSchema
|
|
39531
39807
|
}).optional();
|
|
39532
|
-
var sdkLoaderEndpointSchema2 =
|
|
39808
|
+
var sdkLoaderEndpointSchema2 = z74.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
39533
39809
|
var allowedTransformIds = new Set(builtinTransformDefinitions.map((transform) => transform.id));
|
|
39534
|
-
var loaderTransformStepSchema =
|
|
39535
|
-
id:
|
|
39810
|
+
var loaderTransformStepSchema = z74.object({
|
|
39811
|
+
id: z74.string().refine((id) => allowedTransformIds.has(id), {
|
|
39536
39812
|
message: "Unknown transform id"
|
|
39537
39813
|
}),
|
|
39538
|
-
options:
|
|
39814
|
+
options: z74.record(z74.string(), z74.unknown()).optional()
|
|
39539
39815
|
});
|
|
39540
|
-
var loaderParamBindingSchema2 =
|
|
39541
|
-
$bind:
|
|
39542
|
-
from:
|
|
39816
|
+
var loaderParamBindingSchema2 = z74.object({
|
|
39817
|
+
$bind: z74.object({
|
|
39818
|
+
from: z74.string().min(1, "Binding path is required"),
|
|
39543
39819
|
// Loader params are ultimately string-normalized for query strings, so fallbacks should
|
|
39544
39820
|
// stay scalar. Use transforms (e.g. `value.jsonArray`) when you need to serialize
|
|
39545
39821
|
// more complex values into a string.
|
|
39546
39822
|
fallback: loaderFallbackScalarSchema.optional(),
|
|
39547
|
-
transforms:
|
|
39548
|
-
pick:
|
|
39549
|
-
coerce:
|
|
39823
|
+
transforms: z74.array(loaderTransformStepSchema).default([]),
|
|
39824
|
+
pick: z74.enum(["value", "collection", "context"]).default("value"),
|
|
39825
|
+
coerce: z74.enum(["number", "boolean", "string"]).optional()
|
|
39550
39826
|
})
|
|
39551
39827
|
});
|
|
39552
|
-
var loaderParamValueSchema2 =
|
|
39553
|
-
|
|
39554
|
-
|
|
39555
|
-
|
|
39828
|
+
var loaderParamValueSchema2 = z74.union([
|
|
39829
|
+
z74.string(),
|
|
39830
|
+
z74.number(),
|
|
39831
|
+
z74.boolean(),
|
|
39556
39832
|
loaderParamBindingSchema2
|
|
39557
39833
|
]);
|
|
39558
|
-
var loaderWhenValueSchema =
|
|
39559
|
-
|
|
39834
|
+
var loaderWhenValueSchema = z74.union([
|
|
39835
|
+
z74.boolean(),
|
|
39560
39836
|
loaderParamBindingSchema2
|
|
39561
39837
|
]);
|
|
39562
|
-
var sdkConfigLoaderSchema2 =
|
|
39838
|
+
var sdkConfigLoaderSchema2 = z74.object({
|
|
39563
39839
|
endpoint: sdkLoaderEndpointSchema2,
|
|
39564
|
-
params:
|
|
39565
|
-
mode:
|
|
39840
|
+
params: z74.record(z74.string(), loaderParamValueSchema2),
|
|
39841
|
+
mode: z74.enum(["server", "client"]).default("server"),
|
|
39566
39842
|
when: loaderWhenValueSchema.optional()
|
|
39567
39843
|
});
|
|
39568
|
-
var sdkDataLoadersSchema2 =
|
|
39844
|
+
var sdkDataLoadersSchema2 = z74.record(z74.string(), sdkConfigLoaderSchema2).refine(
|
|
39569
39845
|
(loaders) => Object.keys(loaders).length <= 5,
|
|
39570
39846
|
{ message: "Maximum 5 data loaders per block" }
|
|
39571
39847
|
).optional();
|
|
39572
|
-
var fieldSelectOptionSchema =
|
|
39573
|
-
value:
|
|
39574
|
-
label:
|
|
39848
|
+
var fieldSelectOptionSchema = z74.object({
|
|
39849
|
+
value: z74.string().min(1, "Option value is required"),
|
|
39850
|
+
label: z74.string().min(1, "Option label is required")
|
|
39575
39851
|
});
|
|
39576
|
-
var blockFieldConfigSchema =
|
|
39577
|
-
options:
|
|
39852
|
+
var blockFieldConfigSchema = z74.object({
|
|
39853
|
+
options: z74.array(fieldSelectOptionSchema).min(1, "At least one option is required").optional()
|
|
39578
39854
|
});
|
|
39579
|
-
var blockFieldOptionsSchema =
|
|
39580
|
-
|
|
39855
|
+
var blockFieldOptionsSchema = z74.record(
|
|
39856
|
+
z74.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
39581
39857
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
39582
39858
|
}),
|
|
39583
|
-
|
|
39584
|
-
|
|
39859
|
+
z74.record(
|
|
39860
|
+
z74.string().min(1, "Field ID is required"),
|
|
39585
39861
|
blockFieldConfigSchema
|
|
39586
39862
|
)
|
|
39587
39863
|
).optional();
|
|
39588
|
-
var blockFieldExtensionSchema =
|
|
39864
|
+
var blockFieldExtensionSchema = z74.object({
|
|
39589
39865
|
fields: fieldSchema.array().min(1, "At least one field is required")
|
|
39590
39866
|
}).refine(
|
|
39591
39867
|
(data) => {
|
|
@@ -39599,10 +39875,10 @@ var blockFieldExtensionSchema = z73.object({
|
|
|
39599
39875
|
message: "Required fields must have a defaultValue to support existing blocks"
|
|
39600
39876
|
}
|
|
39601
39877
|
);
|
|
39602
|
-
var blockFieldExtensionsMapSchema =
|
|
39878
|
+
var blockFieldExtensionsMapSchema = z74.record(
|
|
39603
39879
|
// System blocks are kebab-case: block.body-text, block.event-calendar, ...
|
|
39604
39880
|
// Enforce: lowercase alphanumerics with single hyphens (no trailing hyphen, no consecutive hyphens).
|
|
39605
|
-
|
|
39881
|
+
z74.string().regex(/^block\.[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/, {
|
|
39606
39882
|
message: "Block ID must be 'block.*' format (system blocks only)"
|
|
39607
39883
|
}),
|
|
39608
39884
|
blockFieldExtensionSchema
|
|
@@ -39618,7 +39894,7 @@ var blockFieldExtensionsMapSchema = z73.record(
|
|
|
39618
39894
|
(field) => field.id === collision.fieldId
|
|
39619
39895
|
);
|
|
39620
39896
|
ctx.addIssue({
|
|
39621
|
-
code:
|
|
39897
|
+
code: z74.ZodIssueCode.custom,
|
|
39622
39898
|
message: collision.message,
|
|
39623
39899
|
path: [
|
|
39624
39900
|
APPOINTMENT_BOOKING_BLOCK_ID,
|
|
@@ -39684,24 +39960,24 @@ function validateFieldIdConflicts(blockFieldExtensions) {
|
|
|
39684
39960
|
}
|
|
39685
39961
|
return conflicts;
|
|
39686
39962
|
}
|
|
39687
|
-
var syncConfigSchema =
|
|
39688
|
-
existingEntries:
|
|
39963
|
+
var syncConfigSchema = z74.object({
|
|
39964
|
+
existingEntries: z74.enum(["skip", "update"]).optional()
|
|
39689
39965
|
}).optional();
|
|
39690
|
-
var deployConfigSchema =
|
|
39691
|
-
verifyCommand:
|
|
39692
|
-
prebuildOutput:
|
|
39966
|
+
var deployConfigSchema = z74.object({
|
|
39967
|
+
verifyCommand: z74.string().optional(),
|
|
39968
|
+
prebuildOutput: z74.string().optional()
|
|
39693
39969
|
}).optional();
|
|
39694
|
-
var sdkCustomBlockSchema =
|
|
39970
|
+
var sdkCustomBlockSchema = z74.object({
|
|
39695
39971
|
// Block ID must start with 'custom.'
|
|
39696
|
-
id:
|
|
39972
|
+
id: z74.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
39697
39973
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
39698
39974
|
}),
|
|
39699
|
-
title:
|
|
39975
|
+
title: z74.string().min(1, "Title is required"),
|
|
39700
39976
|
titleSource: titleSourceValueSchema.optional(),
|
|
39701
|
-
description:
|
|
39977
|
+
description: z74.string().optional(),
|
|
39702
39978
|
category: blockCategoryEnum,
|
|
39703
|
-
icon:
|
|
39704
|
-
tags:
|
|
39979
|
+
icon: z74.string().optional(),
|
|
39980
|
+
tags: z74.array(z74.string()).optional(),
|
|
39705
39981
|
// Reuse the exact field schema from @riverbankcms/blocks - all field types supported
|
|
39706
39982
|
fields: fieldSchema.array().min(1, "Custom blocks must have at least one field"),
|
|
39707
39983
|
// Data loaders for CMS endpoints
|
|
@@ -39709,14 +39985,14 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39709
39985
|
// Optional declarative layout - when present, block can render without React override
|
|
39710
39986
|
layout: NodeSchema.optional(),
|
|
39711
39987
|
// Optional variants system (preferred when a block has multiple structural layouts)
|
|
39712
|
-
variants:
|
|
39713
|
-
defaultVariant:
|
|
39714
|
-
variantOptions:
|
|
39715
|
-
|
|
39716
|
-
|
|
39717
|
-
label:
|
|
39718
|
-
description:
|
|
39719
|
-
icon:
|
|
39988
|
+
variants: z74.record(z74.string().min(1), NodeSchema).optional(),
|
|
39989
|
+
defaultVariant: z74.string().min(1).optional(),
|
|
39990
|
+
variantOptions: z74.record(
|
|
39991
|
+
z74.string().min(1),
|
|
39992
|
+
z74.object({
|
|
39993
|
+
label: z74.string().min(1).optional(),
|
|
39994
|
+
description: z74.string().min(1).optional(),
|
|
39995
|
+
icon: z74.string().min(1).optional()
|
|
39720
39996
|
})
|
|
39721
39997
|
).optional(),
|
|
39722
39998
|
previewCustomize: previewCustomizeManifestCurationSchema.optional()
|
|
@@ -39728,7 +40004,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39728
40004
|
const exists = fields3.some((field) => field.id === source);
|
|
39729
40005
|
if (!exists) {
|
|
39730
40006
|
ctx.addIssue({
|
|
39731
|
-
code:
|
|
40007
|
+
code: z74.ZodIssueCode.custom,
|
|
39732
40008
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
39733
40009
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
39734
40010
|
});
|
|
@@ -39737,7 +40013,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39737
40013
|
}
|
|
39738
40014
|
if (data.layout && data.variants) {
|
|
39739
40015
|
ctx.addIssue({
|
|
39740
|
-
code:
|
|
40016
|
+
code: z74.ZodIssueCode.custom,
|
|
39741
40017
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
39742
40018
|
path: ["variants"]
|
|
39743
40019
|
});
|
|
@@ -39747,7 +40023,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39747
40023
|
if (!result.valid) {
|
|
39748
40024
|
for (const error of result.errors) {
|
|
39749
40025
|
ctx.addIssue({
|
|
39750
|
-
code:
|
|
40026
|
+
code: z74.ZodIssueCode.custom,
|
|
39751
40027
|
message: error.message,
|
|
39752
40028
|
path: ["layout"]
|
|
39753
40029
|
});
|
|
@@ -39758,14 +40034,14 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39758
40034
|
const keys = Object.keys(data.variants);
|
|
39759
40035
|
if (keys.length === 0) {
|
|
39760
40036
|
ctx.addIssue({
|
|
39761
|
-
code:
|
|
40037
|
+
code: z74.ZodIssueCode.custom,
|
|
39762
40038
|
message: "`variants` must contain at least one variant key",
|
|
39763
40039
|
path: ["variants"]
|
|
39764
40040
|
});
|
|
39765
40041
|
}
|
|
39766
40042
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
39767
40043
|
ctx.addIssue({
|
|
39768
|
-
code:
|
|
40044
|
+
code: z74.ZodIssueCode.custom,
|
|
39769
40045
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
39770
40046
|
path: ["defaultVariant"]
|
|
39771
40047
|
});
|
|
@@ -39775,7 +40051,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39775
40051
|
if (!result.valid) {
|
|
39776
40052
|
for (const error of result.errors) {
|
|
39777
40053
|
ctx.addIssue({
|
|
39778
|
-
code:
|
|
40054
|
+
code: z74.ZodIssueCode.custom,
|
|
39779
40055
|
message: `${key}: ${error.message}`,
|
|
39780
40056
|
path: ["variants", key]
|
|
39781
40057
|
});
|
|
@@ -39786,7 +40062,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39786
40062
|
for (const key of Object.keys(data.variantOptions)) {
|
|
39787
40063
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
39788
40064
|
ctx.addIssue({
|
|
39789
|
-
code:
|
|
40065
|
+
code: z74.ZodIssueCode.custom,
|
|
39790
40066
|
message: "`variantOptions` key must exist in `variants`",
|
|
39791
40067
|
path: ["variantOptions", key]
|
|
39792
40068
|
});
|
|
@@ -39795,58 +40071,58 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39795
40071
|
}
|
|
39796
40072
|
}
|
|
39797
40073
|
});
|
|
39798
|
-
var themeSourceSchema =
|
|
39799
|
-
var activeThemeSchema =
|
|
40074
|
+
var themeSourceSchema = z74.enum(["local", "cms"]).optional();
|
|
40075
|
+
var activeThemeSchema = z74.string().regex(/^[a-z0-9][a-z0-9-_]*$/, {
|
|
39800
40076
|
message: "Theme name must be lowercase alphanumeric with hyphens/underscores"
|
|
39801
40077
|
}).max(64, "Theme name too long").optional();
|
|
39802
40078
|
function isValidConfigBlockKind(kind) {
|
|
39803
40079
|
if (getBlockDefinition(kind)) return true;
|
|
39804
40080
|
return /^custom\.[a-z][a-z0-9-]*$/.test(kind);
|
|
39805
40081
|
}
|
|
39806
|
-
var layoutBlockKindSchema =
|
|
40082
|
+
var layoutBlockKindSchema = z74.string().refine(isValidConfigBlockKind, {
|
|
39807
40083
|
message: 'Block kind must be a system block (e.g., "block.hero") or a custom block (e.g., "custom.my-block")'
|
|
39808
40084
|
});
|
|
39809
|
-
var layoutFooterBlockSchema =
|
|
39810
|
-
id:
|
|
40085
|
+
var layoutFooterBlockSchema = z74.object({
|
|
40086
|
+
id: z74.string().min(1).optional(),
|
|
39811
40087
|
kind: layoutBlockKindSchema,
|
|
39812
40088
|
// Allow omitted content for blocks that rely on defaults.
|
|
39813
|
-
content:
|
|
40089
|
+
content: z74.record(z74.string(), z74.unknown()).optional()
|
|
39814
40090
|
}).strict();
|
|
39815
|
-
var layoutConfigSchema =
|
|
39816
|
-
footerBlocks:
|
|
40091
|
+
var layoutConfigSchema = z74.object({
|
|
40092
|
+
footerBlocks: z74.array(layoutFooterBlockSchema).optional()
|
|
39817
40093
|
}).strict();
|
|
39818
|
-
var sdkWorkflowIdSchema2 =
|
|
40094
|
+
var sdkWorkflowIdSchema2 = z74.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
39819
40095
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
39820
40096
|
});
|
|
39821
|
-
var sdkWorkflowEndpointSchema2 =
|
|
39822
|
-
var sdkWorkflowTriggerSchema2 =
|
|
39823
|
-
|
|
40097
|
+
var sdkWorkflowEndpointSchema2 = z74.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
|
|
40098
|
+
var sdkWorkflowTriggerSchema2 = z74.discriminatedUnion("type", [
|
|
40099
|
+
z74.object({ type: z74.literal("manual") }).strict()
|
|
39824
40100
|
]);
|
|
39825
|
-
var sdkWorkflowConfirmationSchema2 =
|
|
39826
|
-
title:
|
|
39827
|
-
body:
|
|
40101
|
+
var sdkWorkflowConfirmationSchema2 = z74.object({
|
|
40102
|
+
title: z74.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
40103
|
+
body: z74.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
39828
40104
|
}).strict();
|
|
39829
|
-
var sdkWorkflowConfigSchema2 =
|
|
40105
|
+
var sdkWorkflowConfigSchema2 = z74.object({
|
|
39830
40106
|
id: sdkWorkflowIdSchema2,
|
|
39831
|
-
title:
|
|
39832
|
-
description:
|
|
39833
|
-
contentType:
|
|
40107
|
+
title: z74.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
40108
|
+
description: z74.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
40109
|
+
contentType: z74.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
39834
40110
|
endpoint: sdkWorkflowEndpointSchema2,
|
|
39835
|
-
triggers:
|
|
40111
|
+
triggers: z74.array(sdkWorkflowTriggerSchema2).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
39836
40112
|
confirmation: sdkWorkflowConfirmationSchema2.optional()
|
|
39837
40113
|
}).strict();
|
|
39838
|
-
var sdkWorkflowsSchema2 =
|
|
40114
|
+
var sdkWorkflowsSchema2 = z74.array(sdkWorkflowConfigSchema2).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
39839
40115
|
const ids = workflows.map((workflow) => workflow.id);
|
|
39840
40116
|
return ids.length === new Set(ids).size;
|
|
39841
40117
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
39842
|
-
var riverbankSiteConfigSchema =
|
|
39843
|
-
siteId:
|
|
40118
|
+
var riverbankSiteConfigSchema = z74.object({
|
|
40119
|
+
siteId: z74.string().uuid(),
|
|
39844
40120
|
previewUrl: sdkSiteUrlSchema.optional(),
|
|
39845
40121
|
liveUrl: sdkSiteUrlSchema.optional(),
|
|
39846
40122
|
theme: sdkThemeConfigSchema2.optional(),
|
|
39847
40123
|
styles: siteStyleConfigSchema,
|
|
39848
40124
|
layout: layoutConfigSchema.optional(),
|
|
39849
|
-
customBlocks:
|
|
40125
|
+
customBlocks: z74.array(sdkCustomBlockSchema).max(100, "Maximum 100 custom blocks per site").refine(
|
|
39850
40126
|
// Ensure unique block IDs
|
|
39851
40127
|
(blocks) => {
|
|
39852
40128
|
const ids = blocks.map((b) => b.id);
|
|
@@ -39859,7 +40135,7 @@ var riverbankSiteConfigSchema = z73.object({
|
|
|
39859
40135
|
workflows: sdkWorkflowsSchema2,
|
|
39860
40136
|
content: contentConfigSchema.optional(),
|
|
39861
40137
|
// CLI-related configuration (Phase 4)
|
|
39862
|
-
contentDir:
|
|
40138
|
+
contentDir: z74.string().optional(),
|
|
39863
40139
|
sync: syncConfigSchema,
|
|
39864
40140
|
deploy: deployConfigSchema,
|
|
39865
40141
|
// Theme sync configuration (Phase 5)
|