@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
package/dist/server/config.mjs
CHANGED
|
@@ -44,7 +44,7 @@ function fallbackBinding(...sources) {
|
|
|
44
44
|
}
|
|
45
45
|
|
|
46
46
|
// src/config/validation.ts
|
|
47
|
-
import { z as
|
|
47
|
+
import { z as z74 } from "zod";
|
|
48
48
|
|
|
49
49
|
// ../api/src/apiEndpointTypes.ts
|
|
50
50
|
function blockedDemoMutationPolicy(classification, publicMessage) {
|
|
@@ -799,6 +799,64 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
799
799
|
auth: "user",
|
|
800
800
|
responseKind: "json"
|
|
801
801
|
},
|
|
802
|
+
listMailchimpAudiences: {
|
|
803
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences",
|
|
804
|
+
method: "GET",
|
|
805
|
+
tags: [TAG_TEMPLATES.site],
|
|
806
|
+
auth: "user",
|
|
807
|
+
responseKind: "json",
|
|
808
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
809
|
+
},
|
|
810
|
+
getMailchimpSignupSyncHealth: {
|
|
811
|
+
path: "/sites/{siteId}/integrations/mailchimp/signup-sync-health",
|
|
812
|
+
method: "GET",
|
|
813
|
+
tags: [TAG_TEMPLATES.site],
|
|
814
|
+
auth: "user",
|
|
815
|
+
responseKind: "json",
|
|
816
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
817
|
+
},
|
|
818
|
+
getMailchimpConnection: {
|
|
819
|
+
path: "/sites/{siteId}/integrations/mailchimp/connection",
|
|
820
|
+
method: "GET",
|
|
821
|
+
tags: [TAG_TEMPLATES.site],
|
|
822
|
+
auth: "user",
|
|
823
|
+
responseKind: "json",
|
|
824
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
825
|
+
},
|
|
826
|
+
startMailchimpOAuth: {
|
|
827
|
+
path: "/sites/{siteId}/integrations/mailchimp/oauth/start",
|
|
828
|
+
method: "POST",
|
|
829
|
+
tags: [TAG_TEMPLATES.site],
|
|
830
|
+
auth: "user",
|
|
831
|
+
responseKind: "json",
|
|
832
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
833
|
+
errors: ["auth:forbidden", "validation:invalid_input", "server:internal_error"]
|
|
834
|
+
},
|
|
835
|
+
refreshMailchimpAudiences: {
|
|
836
|
+
path: "/sites/{siteId}/integrations/mailchimp/audiences/refresh",
|
|
837
|
+
method: "POST",
|
|
838
|
+
tags: [TAG_TEMPLATES.site],
|
|
839
|
+
auth: "user",
|
|
840
|
+
responseKind: "json",
|
|
841
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
842
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
843
|
+
},
|
|
844
|
+
disconnectMailchimp: {
|
|
845
|
+
path: "/sites/{siteId}/integrations/mailchimp/disconnect",
|
|
846
|
+
method: "POST",
|
|
847
|
+
tags: [TAG_TEMPLATES.site],
|
|
848
|
+
auth: "user",
|
|
849
|
+
responseKind: "json",
|
|
850
|
+
demoMutation: DEMO_MUTATION_BLOCKED_DISABLED,
|
|
851
|
+
errors: ["auth:forbidden", "server:internal_error"]
|
|
852
|
+
},
|
|
853
|
+
mailchimpOAuthCallback: {
|
|
854
|
+
path: "/auth/mailchimp/callback",
|
|
855
|
+
method: "GET",
|
|
856
|
+
auth: "public",
|
|
857
|
+
responseKind: "void",
|
|
858
|
+
errors: []
|
|
859
|
+
},
|
|
802
860
|
createNewsletterList: {
|
|
803
861
|
path: "/sites/{siteId}/newsletter/lists",
|
|
804
862
|
method: "POST",
|
|
@@ -1800,6 +1858,24 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
1800
1858
|
auth: "user",
|
|
1801
1859
|
responseKind: "json"
|
|
1802
1860
|
},
|
|
1861
|
+
resendSiteInvitation: {
|
|
1862
|
+
path: "/sites/{siteId}/members/invitations/{invitationId}/resend",
|
|
1863
|
+
method: "POST",
|
|
1864
|
+
errors: [
|
|
1865
|
+
"auth:forbidden",
|
|
1866
|
+
"resource:not_found",
|
|
1867
|
+
"validation:invalid_input",
|
|
1868
|
+
"external:service_error",
|
|
1869
|
+
"server:internal_error"
|
|
1870
|
+
],
|
|
1871
|
+
tags: [
|
|
1872
|
+
"site-{siteId}",
|
|
1873
|
+
"site-members-{siteId}",
|
|
1874
|
+
"site-invite-{invitationId}"
|
|
1875
|
+
],
|
|
1876
|
+
auth: "user",
|
|
1877
|
+
responseKind: "json"
|
|
1878
|
+
},
|
|
1803
1879
|
transferSiteOwnership: {
|
|
1804
1880
|
path: "/sites/{siteId}/members/transfer-ownership",
|
|
1805
1881
|
method: "POST",
|
|
@@ -3023,20 +3099,6 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
3023
3099
|
auth: "user",
|
|
3024
3100
|
responseKind: "json"
|
|
3025
3101
|
},
|
|
3026
|
-
instagramUploadZip: {
|
|
3027
|
-
path: "/instagram/upload-zip",
|
|
3028
|
-
method: "POST",
|
|
3029
|
-
tags: ["instagram-import"],
|
|
3030
|
-
auth: "user",
|
|
3031
|
-
responseKind: "json"
|
|
3032
|
-
},
|
|
3033
|
-
createInstagramZipUploadUrl: {
|
|
3034
|
-
path: "/instagram/upload-zip-url",
|
|
3035
|
-
method: "POST",
|
|
3036
|
-
tags: ["instagram-import"],
|
|
3037
|
-
auth: "user",
|
|
3038
|
-
responseKind: "json"
|
|
3039
|
-
},
|
|
3040
3102
|
getAnalyticsReport: {
|
|
3041
3103
|
path: "/sites/{siteId}/analytics/report",
|
|
3042
3104
|
method: "GET",
|
|
@@ -6431,6 +6493,43 @@ function err(error) {
|
|
|
6431
6493
|
return { ok: false, error };
|
|
6432
6494
|
}
|
|
6433
6495
|
|
|
6496
|
+
// ../core/src/currency-format.ts
|
|
6497
|
+
var CURRENCY_LOCALE_BY_CODE = {
|
|
6498
|
+
USD: "en-US",
|
|
6499
|
+
GBP: "en-GB",
|
|
6500
|
+
EUR: "de-DE",
|
|
6501
|
+
AUD: "en-AU",
|
|
6502
|
+
CAD: "en-CA",
|
|
6503
|
+
NZD: "en-NZ",
|
|
6504
|
+
JPY: "ja-JP",
|
|
6505
|
+
CNY: "zh-CN",
|
|
6506
|
+
CHF: "de-CH"
|
|
6507
|
+
};
|
|
6508
|
+
function resolveCurrencyLocale(currencyCode, override) {
|
|
6509
|
+
return override ?? CURRENCY_LOCALE_BY_CODE[currencyCode] ?? "en";
|
|
6510
|
+
}
|
|
6511
|
+
function formatCurrencyAmount(amountCents, currency, options) {
|
|
6512
|
+
const currencyCode = currency.toUpperCase();
|
|
6513
|
+
const locale = resolveCurrencyLocale(currencyCode, options?.locale);
|
|
6514
|
+
try {
|
|
6515
|
+
const exactFormatter = new Intl.NumberFormat(locale, {
|
|
6516
|
+
style: "currency",
|
|
6517
|
+
currency: currencyCode
|
|
6518
|
+
});
|
|
6519
|
+
const fractionDigits = options?.decimals === "auto" ? {
|
|
6520
|
+
minimumFractionDigits: 0,
|
|
6521
|
+
maximumFractionDigits: exactFormatter.resolvedOptions().maximumFractionDigits
|
|
6522
|
+
} : {};
|
|
6523
|
+
return new Intl.NumberFormat(locale, {
|
|
6524
|
+
style: "currency",
|
|
6525
|
+
currency: currencyCode,
|
|
6526
|
+
...fractionDigits
|
|
6527
|
+
}).format(amountCents / 100);
|
|
6528
|
+
} catch {
|
|
6529
|
+
return `${(amountCents / 100).toFixed(2)} ${currencyCode}`;
|
|
6530
|
+
}
|
|
6531
|
+
}
|
|
6532
|
+
|
|
6434
6533
|
// ../core/src/event-pricing.ts
|
|
6435
6534
|
function publicEventPricingType(pricing) {
|
|
6436
6535
|
switch (pricing.kind) {
|
|
@@ -6451,6 +6550,7 @@ function isFreePublicEventPriceDisplay(display) {
|
|
|
6451
6550
|
return display.display.kind === "free";
|
|
6452
6551
|
case "exact":
|
|
6453
6552
|
case "from":
|
|
6553
|
+
case "range":
|
|
6454
6554
|
case "mixed":
|
|
6455
6555
|
case "unavailable":
|
|
6456
6556
|
return false;
|
|
@@ -6713,7 +6813,7 @@ var navigationLinkInputSchema = z2.discriminatedUnion(
|
|
|
6713
6813
|
);
|
|
6714
6814
|
|
|
6715
6815
|
// ../api/src/sdkConfig/contracts.ts
|
|
6716
|
-
import { z as
|
|
6816
|
+
import { z as z65 } from "zod";
|
|
6717
6817
|
|
|
6718
6818
|
// ../blocks/src/system/manifest/augmentManifest.ts
|
|
6719
6819
|
function augmentManifest(manifest) {
|
|
@@ -21871,15 +21971,53 @@ var newsletterFormFragment = defineFragment({
|
|
|
21871
21971
|
title: "Newsletter Form",
|
|
21872
21972
|
description: "Newsletter subscription form with preset field configurations.",
|
|
21873
21973
|
fields: [
|
|
21974
|
+
{
|
|
21975
|
+
id: "destinationProvider",
|
|
21976
|
+
type: "select",
|
|
21977
|
+
label: "Send signups to",
|
|
21978
|
+
description: "Choose where new subscribers from this form should go.",
|
|
21979
|
+
defaultValue: "riverbank",
|
|
21980
|
+
required: true,
|
|
21981
|
+
ui: { intent: "behavior" },
|
|
21982
|
+
options: [
|
|
21983
|
+
{ value: "riverbank", label: "Riverbank newsletter" }
|
|
21984
|
+
]
|
|
21985
|
+
},
|
|
21874
21986
|
{
|
|
21875
21987
|
id: "listId",
|
|
21876
21988
|
type: "reference",
|
|
21877
21989
|
label: "Newsletter list",
|
|
21878
21990
|
description: "Select the list new subscribers should be added to.",
|
|
21879
|
-
required:
|
|
21991
|
+
required: false,
|
|
21880
21992
|
referenceKind: "newsletterList",
|
|
21881
21993
|
allowManualEntry: false,
|
|
21882
|
-
ui: {
|
|
21994
|
+
ui: {
|
|
21995
|
+
intent: "behavior",
|
|
21996
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
21997
|
+
}
|
|
21998
|
+
},
|
|
21999
|
+
{
|
|
22000
|
+
id: "mailchimpAudienceId",
|
|
22001
|
+
type: "reference",
|
|
22002
|
+
label: "Mailchimp audience",
|
|
22003
|
+
description: "Choose the Mailchimp audience for new subscribers.",
|
|
22004
|
+
required: false,
|
|
22005
|
+
referenceKind: "mailchimpAudience",
|
|
22006
|
+
allowManualEntry: false,
|
|
22007
|
+
ui: {
|
|
22008
|
+
intent: "behavior",
|
|
22009
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
22010
|
+
}
|
|
22011
|
+
},
|
|
22012
|
+
{
|
|
22013
|
+
id: "mailchimpTags",
|
|
22014
|
+
type: "text",
|
|
22015
|
+
label: "Mailchimp tags",
|
|
22016
|
+
description: "Optional tags to apply in Mailchimp, separated by commas or semicolons.",
|
|
22017
|
+
ui: {
|
|
22018
|
+
intent: "behavior",
|
|
22019
|
+
visibleWhen: { field: "destinationProvider", equals: "mailchimp" }
|
|
22020
|
+
}
|
|
21883
22021
|
},
|
|
21884
22022
|
{
|
|
21885
22023
|
id: "preset",
|
|
@@ -21926,13 +22064,18 @@ var newsletterFormFragment = defineFragment({
|
|
|
21926
22064
|
id: "tags",
|
|
21927
22065
|
type: "text",
|
|
21928
22066
|
label: "Tags (optional)",
|
|
21929
|
-
description: "Optional tags to apply on subscribe (comma or semicolon separated)."
|
|
22067
|
+
description: "Optional tags to apply on subscribe (comma or semicolon separated).",
|
|
22068
|
+
ui: {
|
|
22069
|
+
intent: "behavior",
|
|
22070
|
+
visibleWhen: { field: "destinationProvider", equals: "riverbank" }
|
|
22071
|
+
}
|
|
21930
22072
|
}
|
|
21931
22073
|
],
|
|
21932
22074
|
layout: [
|
|
21933
22075
|
el(
|
|
21934
22076
|
"newsletter-form",
|
|
21935
22077
|
withApiBindings({
|
|
22078
|
+
destinationProvider: { $bind: { from: "destinationProvider" } },
|
|
21936
22079
|
listId: { $bind: { from: "listId" } },
|
|
21937
22080
|
preset: { $bind: { from: "preset" } },
|
|
21938
22081
|
includePhone: { $bind: { from: "includePhone" } },
|
|
@@ -27773,10 +27916,10 @@ var appointmentBookingBlockDefinition = {
|
|
|
27773
27916
|
};
|
|
27774
27917
|
|
|
27775
27918
|
// ../blocks/src/system/blocks/event-registration.ts
|
|
27776
|
-
import { z as
|
|
27919
|
+
import { z as z47 } from "zod";
|
|
27777
27920
|
|
|
27778
27921
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
27779
|
-
import { z as
|
|
27922
|
+
import { z as z43 } from "zod";
|
|
27780
27923
|
|
|
27781
27924
|
// ../blocks/src/lib/media.ts
|
|
27782
27925
|
import z39 from "zod";
|
|
@@ -27854,296 +27997,339 @@ var mediaSchema2 = z39.discriminatedUnion("type", [
|
|
|
27854
27997
|
archiveMediaSchema
|
|
27855
27998
|
]);
|
|
27856
27999
|
|
|
27857
|
-
// ../blocks/src/system/
|
|
28000
|
+
// ../blocks/src/system/manifest/richTextSchema.ts
|
|
27858
28001
|
import { z as z40 } from "zod";
|
|
27859
|
-
var
|
|
28002
|
+
var TipTapMarkSchema = z40.object({
|
|
28003
|
+
type: z40.string(),
|
|
28004
|
+
attrs: z40.record(z40.string(), z40.unknown()).optional()
|
|
28005
|
+
});
|
|
28006
|
+
var TipTapNodeSchema = z40.lazy(
|
|
28007
|
+
() => z40.object({
|
|
28008
|
+
type: z40.string(),
|
|
28009
|
+
content: z40.array(TipTapNodeSchema).optional(),
|
|
28010
|
+
text: z40.string().optional(),
|
|
28011
|
+
attrs: z40.record(z40.string(), z40.unknown()).optional(),
|
|
28012
|
+
marks: z40.array(TipTapMarkSchema).optional()
|
|
28013
|
+
})
|
|
28014
|
+
);
|
|
28015
|
+
var RichTextValueSchema = z40.union([
|
|
28016
|
+
// Canonical: TipTap document directly
|
|
28017
|
+
TipTapNodeSchema,
|
|
28018
|
+
// Legacy (read-tolerance only): wrapped in { doc: {...} }
|
|
28019
|
+
z40.object({
|
|
28020
|
+
doc: TipTapNodeSchema
|
|
28021
|
+
})
|
|
28022
|
+
]);
|
|
28023
|
+
var RichTextDocSchema = z40.object({
|
|
28024
|
+
type: z40.literal("doc"),
|
|
28025
|
+
content: z40.array(TipTapNodeSchema)
|
|
28026
|
+
});
|
|
28027
|
+
|
|
28028
|
+
// ../blocks/src/system/blocks/shared/bookingPaymentTerms.ts
|
|
28029
|
+
import { z as z41 } from "zod";
|
|
28030
|
+
var bookingDepositRefundPolicySchema = z41.enum([
|
|
27860
28031
|
"refundable",
|
|
27861
28032
|
"non_refundable"
|
|
27862
28033
|
]);
|
|
27863
|
-
var bookingInstalmentPlanSchema =
|
|
27864
|
-
|
|
27865
|
-
kind:
|
|
27866
|
-
depositAmountCents:
|
|
28034
|
+
var bookingInstalmentPlanSchema = z41.union([
|
|
28035
|
+
z41.object({
|
|
28036
|
+
kind: z41.literal("deposit_plus_one_remainder"),
|
|
28037
|
+
depositAmountCents: z41.number().int().min(0),
|
|
27867
28038
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
27868
|
-
remainderDueCount:
|
|
27869
|
-
intervalUnit:
|
|
28039
|
+
remainderDueCount: z41.number().int().positive(),
|
|
28040
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27870
28041
|
}),
|
|
27871
|
-
|
|
27872
|
-
kind:
|
|
27873
|
-
depositAmountCents:
|
|
28042
|
+
z41.object({
|
|
28043
|
+
kind: z41.literal("deposit_plus_scheduled_instalments"),
|
|
28044
|
+
depositAmountCents: z41.number().int().min(0),
|
|
27874
28045
|
depositRefundability: bookingDepositRefundPolicySchema,
|
|
27875
|
-
instalmentCount:
|
|
27876
|
-
intervalCount:
|
|
27877
|
-
intervalUnit:
|
|
28046
|
+
instalmentCount: z41.number().int().positive(),
|
|
28047
|
+
intervalCount: z41.number().int().positive(),
|
|
28048
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27878
28049
|
}),
|
|
27879
|
-
|
|
27880
|
-
kind:
|
|
27881
|
-
instalmentCount:
|
|
27882
|
-
intervalCount:
|
|
27883
|
-
intervalUnit:
|
|
28050
|
+
z41.object({
|
|
28051
|
+
kind: z41.literal("equal_scheduled_instalments"),
|
|
28052
|
+
instalmentCount: z41.number().int().positive(),
|
|
28053
|
+
intervalCount: z41.number().int().positive(),
|
|
28054
|
+
intervalUnit: z41.enum(["day", "week", "month"])
|
|
27884
28055
|
})
|
|
27885
28056
|
]);
|
|
27886
|
-
var bookingFlexibleBalanceDueDateRuleSchema =
|
|
27887
|
-
|
|
27888
|
-
kind:
|
|
27889
|
-
daysBeforeStart:
|
|
28057
|
+
var bookingFlexibleBalanceDueDateRuleSchema = z41.union([
|
|
28058
|
+
z41.object({
|
|
28059
|
+
kind: z41.literal("relative_to_start_date"),
|
|
28060
|
+
daysBeforeStart: z41.number().int().positive()
|
|
27890
28061
|
}),
|
|
27891
|
-
|
|
27892
|
-
kind:
|
|
27893
|
-
dueAt:
|
|
28062
|
+
z41.object({
|
|
28063
|
+
kind: z41.literal("fixed_calendar_date"),
|
|
28064
|
+
dueAt: z41.string().datetime()
|
|
27894
28065
|
})
|
|
27895
28066
|
]);
|
|
27896
|
-
var bookingFlexibleBalanceConfigSchema =
|
|
27897
|
-
upfrontAmountCents:
|
|
28067
|
+
var bookingFlexibleBalanceConfigSchema = z41.object({
|
|
28068
|
+
upfrontAmountCents: z41.number().int().min(0),
|
|
27898
28069
|
dueDateRule: bookingFlexibleBalanceDueDateRuleSchema,
|
|
27899
28070
|
depositRefundability: bookingDepositRefundPolicySchema
|
|
27900
28071
|
});
|
|
27901
|
-
var blockBookingPaymentCollectionOptionSchema =
|
|
27902
|
-
|
|
27903
|
-
kind:
|
|
28072
|
+
var blockBookingPaymentCollectionOptionSchema = z41.union([
|
|
28073
|
+
z41.object({
|
|
28074
|
+
kind: z41.literal("upfront")
|
|
27904
28075
|
}),
|
|
27905
|
-
|
|
27906
|
-
kind:
|
|
28076
|
+
z41.object({
|
|
28077
|
+
kind: z41.literal("deferred_manual")
|
|
27907
28078
|
}),
|
|
27908
|
-
|
|
27909
|
-
kind:
|
|
28079
|
+
z41.object({
|
|
28080
|
+
kind: z41.literal("instalment_plan"),
|
|
27910
28081
|
plan: bookingInstalmentPlanSchema
|
|
27911
28082
|
}),
|
|
27912
|
-
|
|
27913
|
-
kind:
|
|
28083
|
+
z41.object({
|
|
28084
|
+
kind: z41.literal("flexible_balance"),
|
|
27914
28085
|
config: bookingFlexibleBalanceConfigSchema
|
|
27915
28086
|
})
|
|
27916
28087
|
]);
|
|
27917
|
-
var blockBookingPaymentTermsSchema =
|
|
27918
|
-
allowedOptions:
|
|
28088
|
+
var blockBookingPaymentTermsSchema = z41.object({
|
|
28089
|
+
allowedOptions: z41.array(blockBookingPaymentCollectionOptionSchema).min(1)
|
|
27919
28090
|
});
|
|
27920
28091
|
|
|
27921
28092
|
// ../blocks/src/system/blocks/courses/shared/schemas.ts
|
|
27922
|
-
import { z as
|
|
27923
|
-
var courseVenueSchema =
|
|
27924
|
-
id:
|
|
27925
|
-
name:
|
|
27926
|
-
address:
|
|
27927
|
-
});
|
|
27928
|
-
var courseSessionSchema =
|
|
27929
|
-
id:
|
|
27930
|
-
startsAt:
|
|
27931
|
-
endsAt:
|
|
27932
|
-
timeZone:
|
|
27933
|
-
capacityOverride:
|
|
27934
|
-
overrides:
|
|
27935
|
-
});
|
|
27936
|
-
var courseTeamMemberSummarySchema =
|
|
27937
|
-
id:
|
|
27938
|
-
name:
|
|
27939
|
-
roleLabel:
|
|
27940
|
-
summary:
|
|
27941
|
-
profilePath:
|
|
27942
|
-
});
|
|
27943
|
-
var coursePricingOptionSchema =
|
|
27944
|
-
id:
|
|
27945
|
-
name:
|
|
27946
|
-
description:
|
|
27947
|
-
priceAmount:
|
|
27948
|
-
isActive:
|
|
27949
|
-
sortOrder:
|
|
27950
|
-
capacityLimit:
|
|
27951
|
-
saleStartsAt:
|
|
27952
|
-
saleEndsAt:
|
|
27953
|
-
attendanceScope:
|
|
27954
|
-
});
|
|
27955
|
-
var coursePricingSchema =
|
|
27956
|
-
bookingRequirement:
|
|
27957
|
-
pricingStrategy:
|
|
27958
|
-
currency:
|
|
27959
|
-
singlePriceAmount:
|
|
28093
|
+
import { z as z42 } from "zod";
|
|
28094
|
+
var courseVenueSchema = z42.object({
|
|
28095
|
+
id: z42.string(),
|
|
28096
|
+
name: z42.string(),
|
|
28097
|
+
address: z42.string().nullable()
|
|
28098
|
+
});
|
|
28099
|
+
var courseSessionSchema = z42.object({
|
|
28100
|
+
id: z42.string(),
|
|
28101
|
+
startsAt: z42.string(),
|
|
28102
|
+
endsAt: z42.string(),
|
|
28103
|
+
timeZone: z42.string(),
|
|
28104
|
+
capacityOverride: z42.number().nullable().optional(),
|
|
28105
|
+
overrides: z42.record(z42.string(), z42.unknown()).nullable().optional()
|
|
28106
|
+
});
|
|
28107
|
+
var courseTeamMemberSummarySchema = z42.object({
|
|
28108
|
+
id: z42.string(),
|
|
28109
|
+
name: z42.string(),
|
|
28110
|
+
roleLabel: z42.string().nullable(),
|
|
28111
|
+
summary: z42.string().nullable(),
|
|
28112
|
+
profilePath: z42.string().nullable()
|
|
28113
|
+
});
|
|
28114
|
+
var coursePricingOptionSchema = z42.object({
|
|
28115
|
+
id: z42.string(),
|
|
28116
|
+
name: z42.string(),
|
|
28117
|
+
description: z42.string().nullable(),
|
|
28118
|
+
priceAmount: z42.number(),
|
|
28119
|
+
isActive: z42.boolean(),
|
|
28120
|
+
sortOrder: z42.number(),
|
|
28121
|
+
capacityLimit: z42.number().nullable(),
|
|
28122
|
+
saleStartsAt: z42.string().nullable(),
|
|
28123
|
+
saleEndsAt: z42.string().nullable(),
|
|
28124
|
+
attendanceScope: z42.enum(["in_person", "online", "both"]).nullable().optional()
|
|
28125
|
+
});
|
|
28126
|
+
var coursePricingSchema = z42.object({
|
|
28127
|
+
bookingRequirement: z42.enum(["none", "required"]),
|
|
28128
|
+
pricingStrategy: z42.enum(["free", "single", "tiered"]),
|
|
28129
|
+
currency: z42.string(),
|
|
28130
|
+
singlePriceAmount: z42.number().nullable(),
|
|
27960
28131
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
27961
|
-
options:
|
|
27962
|
-
});
|
|
27963
|
-
var publicCourseSchema =
|
|
27964
|
-
id:
|
|
27965
|
-
title:
|
|
27966
|
-
slug:
|
|
27967
|
-
description:
|
|
27968
|
-
teamMembers:
|
|
27969
|
-
enrollmentOpen:
|
|
28132
|
+
options: z42.array(coursePricingOptionSchema)
|
|
28133
|
+
});
|
|
28134
|
+
var publicCourseSchema = z42.object({
|
|
28135
|
+
id: z42.string(),
|
|
28136
|
+
title: z42.string(),
|
|
28137
|
+
slug: z42.string(),
|
|
28138
|
+
description: z42.unknown().nullable(),
|
|
28139
|
+
teamMembers: z42.array(courseTeamMemberSummarySchema).optional(),
|
|
28140
|
+
enrollmentOpen: z42.boolean(),
|
|
27970
28141
|
pricing: coursePricingSchema.optional(),
|
|
27971
|
-
priceCents:
|
|
27972
|
-
currency:
|
|
28142
|
+
priceCents: z42.number().nullable(),
|
|
28143
|
+
currency: z42.string(),
|
|
27973
28144
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
27974
|
-
enrollmentCapacity:
|
|
27975
|
-
acceptsMemberships:
|
|
27976
|
-
status:
|
|
27977
|
-
sessionsCount:
|
|
27978
|
-
enrolledCount:
|
|
27979
|
-
availableSpots:
|
|
27980
|
-
sessions:
|
|
28145
|
+
enrollmentCapacity: z42.number().nullable(),
|
|
28146
|
+
acceptsMemberships: z42.boolean(),
|
|
28147
|
+
status: z42.enum(["active", "draft", "cancelled"]),
|
|
28148
|
+
sessionsCount: z42.number(),
|
|
28149
|
+
enrolledCount: z42.number(),
|
|
28150
|
+
availableSpots: z42.number().nullable(),
|
|
28151
|
+
sessions: z42.array(courseSessionSchema),
|
|
27981
28152
|
venue: courseVenueSchema.nullable(),
|
|
27982
|
-
contentEntryId:
|
|
28153
|
+
contentEntryId: z42.string().nullable()
|
|
27983
28154
|
});
|
|
27984
|
-
var publicCoursesArraySchema =
|
|
28155
|
+
var publicCoursesArraySchema = z42.array(publicCourseSchema);
|
|
27985
28156
|
|
|
27986
28157
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
27987
|
-
var eventPresetSchema =
|
|
27988
|
-
var eventScheduleScopeSchema =
|
|
27989
|
-
var eventDestinationModeSchema =
|
|
27990
|
-
var eventVenueSchema =
|
|
27991
|
-
id:
|
|
27992
|
-
name:
|
|
27993
|
-
address:
|
|
27994
|
-
location:
|
|
27995
|
-
lat:
|
|
27996
|
-
lng:
|
|
28158
|
+
var eventPresetSchema = z43.enum(["event", "class", "workshop", "retreat", "performance"]);
|
|
28159
|
+
var eventScheduleScopeSchema = z43.enum(["recurring", "oneOff"]);
|
|
28160
|
+
var eventDestinationModeSchema = z43.enum(["cms-managed", "system-managed"]);
|
|
28161
|
+
var eventVenueSchema = z43.object({
|
|
28162
|
+
id: z43.string(),
|
|
28163
|
+
name: z43.string(),
|
|
28164
|
+
address: z43.string().nullable(),
|
|
28165
|
+
location: z43.object({
|
|
28166
|
+
lat: z43.number(),
|
|
28167
|
+
lng: z43.number()
|
|
27997
28168
|
}).nullable()
|
|
27998
28169
|
});
|
|
27999
|
-
var eventCategorySchema =
|
|
28000
|
-
id:
|
|
28001
|
-
name:
|
|
28002
|
-
color:
|
|
28003
|
-
});
|
|
28004
|
-
var pricingTypeSchema =
|
|
28005
|
-
var accessRestrictionSchema =
|
|
28006
|
-
var eventPricingModeSchema =
|
|
28007
|
-
var publicCoursePriceDisplaySchema =
|
|
28008
|
-
|
|
28009
|
-
|
|
28010
|
-
|
|
28011
|
-
|
|
28170
|
+
var eventCategorySchema = z43.object({
|
|
28171
|
+
id: z43.string(),
|
|
28172
|
+
name: z43.string(),
|
|
28173
|
+
color: z43.string().nullable()
|
|
28174
|
+
});
|
|
28175
|
+
var pricingTypeSchema = z43.enum(["free", "paid"]);
|
|
28176
|
+
var accessRestrictionSchema = z43.enum(["none", "category"]);
|
|
28177
|
+
var eventPricingModeSchema = z43.enum(["single", "ticket_types"]);
|
|
28178
|
+
var publicCoursePriceDisplaySchema = z43.discriminatedUnion("kind", [
|
|
28179
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28180
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28181
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28182
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() })
|
|
28012
28183
|
]);
|
|
28013
|
-
var publicEventPriceDisplaySchema =
|
|
28014
|
-
|
|
28015
|
-
|
|
28016
|
-
|
|
28017
|
-
|
|
28018
|
-
|
|
28019
|
-
|
|
28184
|
+
var publicEventPriceDisplaySchema = z43.discriminatedUnion("kind", [
|
|
28185
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28186
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28187
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28188
|
+
z43.object({ kind: z43.literal("range"), minAmount: z43.number(), maxAmount: z43.number(), currency: z43.string() }),
|
|
28189
|
+
z43.object({
|
|
28190
|
+
kind: z43.literal("mixed"),
|
|
28191
|
+
paidFromAmount: z43.number(),
|
|
28192
|
+
paidToAmount: z43.number(),
|
|
28193
|
+
currency: z43.string()
|
|
28194
|
+
}),
|
|
28195
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() }),
|
|
28196
|
+
z43.object({ kind: z43.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
28020
28197
|
]);
|
|
28021
|
-
var publicEventTicketTypePriceDisplaySchema =
|
|
28022
|
-
|
|
28023
|
-
|
|
28024
|
-
|
|
28025
|
-
|
|
28026
|
-
|
|
28198
|
+
var publicEventTicketTypePriceDisplaySchema = z43.union([
|
|
28199
|
+
z43.object({ kind: z43.literal("free"), currency: z43.string() }),
|
|
28200
|
+
z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() }),
|
|
28201
|
+
z43.object({ kind: z43.literal("from"), amount: z43.number(), currency: z43.string() }),
|
|
28202
|
+
z43.object({ kind: z43.literal("range"), minAmount: z43.number(), maxAmount: z43.number(), currency: z43.string() }),
|
|
28203
|
+
z43.object({
|
|
28204
|
+
kind: z43.literal("mixed"),
|
|
28205
|
+
paidFromAmount: z43.number(),
|
|
28206
|
+
paidToAmount: z43.number(),
|
|
28207
|
+
currency: z43.string()
|
|
28208
|
+
}),
|
|
28209
|
+
z43.object({ kind: z43.literal("unavailable"), currency: z43.string() })
|
|
28027
28210
|
]);
|
|
28028
|
-
var publicEventAttendanceModeSchema =
|
|
28029
|
-
var publicEventAttendanceModeAvailabilitySchema =
|
|
28211
|
+
var publicEventAttendanceModeSchema = z43.enum(["in_person", "online"]);
|
|
28212
|
+
var publicEventAttendanceModeAvailabilitySchema = z43.object({
|
|
28030
28213
|
mode: publicEventAttendanceModeSchema,
|
|
28031
|
-
capacity:
|
|
28032
|
-
registeredCount:
|
|
28033
|
-
availableSpots:
|
|
28034
|
-
waitlistEnabled:
|
|
28035
|
-
});
|
|
28036
|
-
var publicEventTicketTypeAvailabilitySchema =
|
|
28037
|
-
|
|
28038
|
-
kind:
|
|
28039
|
-
remainingCapacity:
|
|
28214
|
+
capacity: z43.number().nullable(),
|
|
28215
|
+
registeredCount: z43.number(),
|
|
28216
|
+
availableSpots: z43.number().nullable(),
|
|
28217
|
+
waitlistEnabled: z43.boolean()
|
|
28218
|
+
});
|
|
28219
|
+
var publicEventTicketTypeAvailabilitySchema = z43.union([
|
|
28220
|
+
z43.object({
|
|
28221
|
+
kind: z43.literal("available"),
|
|
28222
|
+
remainingCapacity: z43.number().nullable()
|
|
28040
28223
|
}),
|
|
28041
|
-
|
|
28042
|
-
kind:
|
|
28043
|
-
reason:
|
|
28044
|
-
remainingCapacity:
|
|
28224
|
+
z43.object({
|
|
28225
|
+
kind: z43.literal("unavailable"),
|
|
28226
|
+
reason: z43.enum(["inactive", "not_on_sale_yet", "sale_ended", "sold_out", "event_sold_out"]),
|
|
28227
|
+
remainingCapacity: z43.number().nullable()
|
|
28045
28228
|
})
|
|
28046
28229
|
]);
|
|
28047
|
-
var publicEventTicketTypeSchema =
|
|
28048
|
-
id:
|
|
28049
|
-
siteId:
|
|
28050
|
-
eventSeriesId:
|
|
28051
|
-
name:
|
|
28052
|
-
description:
|
|
28053
|
-
priceAmount:
|
|
28054
|
-
isActive:
|
|
28055
|
-
sortOrder:
|
|
28056
|
-
capacityMode:
|
|
28057
|
-
capacityLimit:
|
|
28058
|
-
attendanceScope:
|
|
28059
|
-
saleStartsAt:
|
|
28060
|
-
saleEndsAt:
|
|
28230
|
+
var publicEventTicketTypeSchema = z43.object({
|
|
28231
|
+
id: z43.string(),
|
|
28232
|
+
siteId: z43.string(),
|
|
28233
|
+
eventSeriesId: z43.string(),
|
|
28234
|
+
name: z43.string(),
|
|
28235
|
+
description: z43.string().nullable(),
|
|
28236
|
+
priceAmount: z43.number(),
|
|
28237
|
+
isActive: z43.boolean(),
|
|
28238
|
+
sortOrder: z43.number(),
|
|
28239
|
+
capacityMode: z43.enum(["limited", "unlimited"]),
|
|
28240
|
+
capacityLimit: z43.number().nullable(),
|
|
28241
|
+
attendanceScope: z43.enum(["in_person", "online", "both"]).optional(),
|
|
28242
|
+
saleStartsAt: z43.string().nullable(),
|
|
28243
|
+
saleEndsAt: z43.string().nullable(),
|
|
28061
28244
|
availability: publicEventTicketTypeAvailabilitySchema,
|
|
28062
|
-
createdAt:
|
|
28063
|
-
updatedAt:
|
|
28064
|
-
});
|
|
28065
|
-
var publicEventPricingSchema =
|
|
28066
|
-
|
|
28067
|
-
kind:
|
|
28068
|
-
currency:
|
|
28069
|
-
display:
|
|
28245
|
+
createdAt: z43.string(),
|
|
28246
|
+
updatedAt: z43.string()
|
|
28247
|
+
});
|
|
28248
|
+
var publicEventPricingSchema = z43.discriminatedUnion("kind", [
|
|
28249
|
+
z43.object({
|
|
28250
|
+
kind: z43.literal("drop_in"),
|
|
28251
|
+
currency: z43.string(),
|
|
28252
|
+
display: z43.object({ kind: z43.literal("free"), currency: z43.string() })
|
|
28070
28253
|
}),
|
|
28071
|
-
|
|
28072
|
-
kind:
|
|
28073
|
-
currency:
|
|
28074
|
-
display:
|
|
28254
|
+
z43.object({
|
|
28255
|
+
kind: z43.literal("free_registration"),
|
|
28256
|
+
currency: z43.string(),
|
|
28257
|
+
display: z43.object({ kind: z43.literal("free"), currency: z43.string() })
|
|
28075
28258
|
}),
|
|
28076
|
-
|
|
28077
|
-
kind:
|
|
28078
|
-
amount:
|
|
28079
|
-
currency:
|
|
28080
|
-
display:
|
|
28259
|
+
z43.object({
|
|
28260
|
+
kind: z43.literal("single_paid"),
|
|
28261
|
+
amount: z43.number(),
|
|
28262
|
+
currency: z43.string(),
|
|
28263
|
+
display: z43.object({ kind: z43.literal("exact"), amount: z43.number(), currency: z43.string() })
|
|
28081
28264
|
}),
|
|
28082
|
-
|
|
28083
|
-
kind:
|
|
28084
|
-
currency:
|
|
28085
|
-
ticketTypes:
|
|
28265
|
+
z43.object({
|
|
28266
|
+
kind: z43.literal("ticket_types"),
|
|
28267
|
+
currency: z43.string(),
|
|
28268
|
+
ticketTypes: z43.array(publicEventTicketTypeSchema),
|
|
28086
28269
|
display: publicEventTicketTypePriceDisplaySchema
|
|
28087
28270
|
}),
|
|
28088
|
-
|
|
28089
|
-
kind:
|
|
28090
|
-
display:
|
|
28271
|
+
z43.object({
|
|
28272
|
+
kind: z43.literal("course"),
|
|
28273
|
+
display: z43.object({ kind: z43.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
28091
28274
|
})
|
|
28092
28275
|
]);
|
|
28093
|
-
var publicTeamMemberSummarySchema =
|
|
28094
|
-
id:
|
|
28095
|
-
name:
|
|
28096
|
-
roleLabel:
|
|
28097
|
-
summary:
|
|
28098
|
-
profilePath:
|
|
28276
|
+
var publicTeamMemberSummarySchema = z43.object({
|
|
28277
|
+
id: z43.string(),
|
|
28278
|
+
name: z43.string(),
|
|
28279
|
+
roleLabel: z43.string().nullable(),
|
|
28280
|
+
summary: z43.string().nullable(),
|
|
28281
|
+
profilePath: z43.string().nullable()
|
|
28099
28282
|
});
|
|
28100
|
-
var publicEventSchema =
|
|
28101
|
-
kind:
|
|
28283
|
+
var publicEventSchema = z43.object({
|
|
28284
|
+
kind: z43.enum(["event", "course_session"]).optional(),
|
|
28102
28285
|
eventPreset: eventPresetSchema.optional(),
|
|
28103
28286
|
eventDestinationMode: eventDestinationModeSchema.optional(),
|
|
28104
28287
|
scheduleScope: eventScheduleScopeSchema.optional(),
|
|
28105
|
-
id:
|
|
28106
|
-
occurrenceId:
|
|
28107
|
-
seriesId:
|
|
28108
|
-
title:
|
|
28109
|
-
description:
|
|
28110
|
-
|
|
28111
|
-
|
|
28112
|
-
|
|
28288
|
+
id: z43.string(),
|
|
28289
|
+
occurrenceId: z43.string(),
|
|
28290
|
+
seriesId: z43.string(),
|
|
28291
|
+
title: z43.string(),
|
|
28292
|
+
description: z43.string().nullable(),
|
|
28293
|
+
content: z43.object({
|
|
28294
|
+
body: RichTextDocSchema.nullable().optional()
|
|
28295
|
+
}).optional(),
|
|
28296
|
+
presentation: z43.object({
|
|
28297
|
+
cardTitleOverride: z43.string().nullable().optional(),
|
|
28298
|
+
summary: z43.string().nullable().optional(),
|
|
28113
28299
|
image: mediaSchema2.nullable().optional()
|
|
28114
28300
|
}).optional(),
|
|
28115
|
-
slug:
|
|
28116
|
-
path:
|
|
28117
|
-
requiresRegistration:
|
|
28118
|
-
deliveryMode:
|
|
28119
|
-
attendanceModes:
|
|
28120
|
-
startsAt:
|
|
28121
|
-
endsAt:
|
|
28122
|
-
capacity:
|
|
28123
|
-
registeredCount:
|
|
28124
|
-
availableSpots:
|
|
28125
|
-
waitlistEnabled:
|
|
28301
|
+
slug: z43.string(),
|
|
28302
|
+
path: z43.string(),
|
|
28303
|
+
requiresRegistration: z43.boolean(),
|
|
28304
|
+
deliveryMode: z43.enum(["in_person", "online", "hybrid"]),
|
|
28305
|
+
attendanceModes: z43.array(publicEventAttendanceModeAvailabilitySchema),
|
|
28306
|
+
startsAt: z43.string(),
|
|
28307
|
+
endsAt: z43.string(),
|
|
28308
|
+
capacity: z43.number().nullable(),
|
|
28309
|
+
registeredCount: z43.number(),
|
|
28310
|
+
availableSpots: z43.number().nullable(),
|
|
28311
|
+
waitlistEnabled: z43.boolean(),
|
|
28126
28312
|
venue: eventVenueSchema.nullable(),
|
|
28127
28313
|
eventCategory: eventCategorySchema.nullable(),
|
|
28128
|
-
teamMembers:
|
|
28129
|
-
status:
|
|
28130
|
-
timeZone:
|
|
28314
|
+
teamMembers: z43.array(publicTeamMemberSummarySchema).optional(),
|
|
28315
|
+
status: z43.enum(["active", "draft", "archived"]).optional(),
|
|
28316
|
+
timeZone: z43.string(),
|
|
28131
28317
|
pricing: publicEventPricingSchema,
|
|
28132
28318
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
28133
28319
|
accessRestriction: accessRestrictionSchema,
|
|
28134
|
-
allowedCategoryIds:
|
|
28135
|
-
requireGuestDetails:
|
|
28136
|
-
acceptsPasses:
|
|
28137
|
-
acceptsMemberships:
|
|
28138
|
-
course:
|
|
28139
|
-
id:
|
|
28320
|
+
allowedCategoryIds: z43.array(z43.string()),
|
|
28321
|
+
requireGuestDetails: z43.boolean().optional(),
|
|
28322
|
+
acceptsPasses: z43.boolean().optional(),
|
|
28323
|
+
acceptsMemberships: z43.boolean().optional(),
|
|
28324
|
+
course: z43.object({
|
|
28325
|
+
id: z43.string(),
|
|
28140
28326
|
pricing: coursePricingSchema.optional(),
|
|
28141
|
-
priceCents:
|
|
28142
|
-
currency:
|
|
28143
|
-
enrollmentOpen:
|
|
28327
|
+
priceCents: z43.number().nullable(),
|
|
28328
|
+
currency: z43.string(),
|
|
28329
|
+
enrollmentOpen: z43.boolean()
|
|
28144
28330
|
}).nullable().optional()
|
|
28145
28331
|
});
|
|
28146
|
-
var publicEventsArraySchema =
|
|
28332
|
+
var publicEventsArraySchema = z43.array(publicEventSchema);
|
|
28147
28333
|
|
|
28148
28334
|
// ../blocks/src/system/blocks/events/shared/fields.ts
|
|
28149
28335
|
var cardVariantOptions2 = cardVariantRoleValues.map((value) => ({
|
|
@@ -28347,19 +28533,19 @@ function normalizeEventStaffMemberId(value) {
|
|
|
28347
28533
|
}
|
|
28348
28534
|
|
|
28349
28535
|
// ../blocks/src/system/blocks/event-registration.shared.ts
|
|
28350
|
-
import { z as
|
|
28351
|
-
var occurrenceContextSchema =
|
|
28352
|
-
id:
|
|
28353
|
-
seriesId:
|
|
28354
|
-
startsAt:
|
|
28355
|
-
endsAt:
|
|
28356
|
-
timeZone:
|
|
28357
|
-
capacityOverride:
|
|
28358
|
-
overrides:
|
|
28536
|
+
import { z as z44 } from "zod";
|
|
28537
|
+
var occurrenceContextSchema = z44.object({
|
|
28538
|
+
id: z44.string(),
|
|
28539
|
+
seriesId: z44.string(),
|
|
28540
|
+
startsAt: z44.string(),
|
|
28541
|
+
endsAt: z44.string(),
|
|
28542
|
+
timeZone: z44.string(),
|
|
28543
|
+
capacityOverride: z44.number().nullable().optional(),
|
|
28544
|
+
overrides: z44.record(z44.string(), z44.unknown()).nullable().optional()
|
|
28359
28545
|
}).nullable();
|
|
28360
28546
|
|
|
28361
28547
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
28362
|
-
import { z as
|
|
28548
|
+
import { z as z46 } from "zod";
|
|
28363
28549
|
|
|
28364
28550
|
// ../blocks/src/system/constants/events.ts
|
|
28365
28551
|
var EVENT_CONTENT_TYPE_SLUGS = ["event", "events"];
|
|
@@ -28457,10 +28643,21 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
28457
28643
|
amount: readAmount(value.amount) ?? 0,
|
|
28458
28644
|
currency: displayCurrency
|
|
28459
28645
|
} : { kind: "unavailable", currency };
|
|
28646
|
+
case "range": {
|
|
28647
|
+
const minAmount = readAmount(value.minAmount);
|
|
28648
|
+
const maxAmount = readAmount(value.maxAmount);
|
|
28649
|
+
return minAmount !== null && maxAmount !== null ? {
|
|
28650
|
+
kind: "range",
|
|
28651
|
+
minAmount,
|
|
28652
|
+
maxAmount,
|
|
28653
|
+
currency: displayCurrency
|
|
28654
|
+
} : { kind: "unavailable", currency };
|
|
28655
|
+
}
|
|
28460
28656
|
case "mixed":
|
|
28461
28657
|
return readAmount(value.paidFromAmount) !== null ? {
|
|
28462
28658
|
kind: "mixed",
|
|
28463
28659
|
paidFromAmount: readAmount(value.paidFromAmount) ?? 0,
|
|
28660
|
+
paidToAmount: readAmount(value.paidToAmount) ?? readAmount(value.paidFromAmount) ?? 0,
|
|
28464
28661
|
currency: displayCurrency
|
|
28465
28662
|
} : { kind: "unavailable", currency };
|
|
28466
28663
|
case "unavailable":
|
|
@@ -28502,16 +28699,16 @@ function readAmount(value) {
|
|
|
28502
28699
|
}
|
|
28503
28700
|
|
|
28504
28701
|
// ../blocks/src/system/runtime/nodes/shared/contract-schemas.ts
|
|
28505
|
-
import { z as
|
|
28506
|
-
var previewStageSchema =
|
|
28507
|
-
var registrationButtonVariantSchema =
|
|
28508
|
-
var eventButtonVariantSchema =
|
|
28509
|
-
var eventLayoutSchema =
|
|
28510
|
-
var eventCalendarDisplayModeSchema =
|
|
28511
|
-
var columnOptionSchema =
|
|
28512
|
-
var weekStartSchema =
|
|
28513
|
-
var filterAutoShowSchema =
|
|
28514
|
-
var calendarTabViewsSchema =
|
|
28702
|
+
import { z as z45 } from "zod";
|
|
28703
|
+
var previewStageSchema = z45.enum(["preview", "published"]);
|
|
28704
|
+
var registrationButtonVariantSchema = z45.enum(["primary", "secondary", "outline"]);
|
|
28705
|
+
var eventButtonVariantSchema = z45.enum(["primary", "secondary", "outline", "link"]);
|
|
28706
|
+
var eventLayoutSchema = z45.enum(eventCalendarListLayoutValues);
|
|
28707
|
+
var eventCalendarDisplayModeSchema = z45.enum(eventCalendarDisplayModeValues);
|
|
28708
|
+
var columnOptionSchema = z45.enum(["2", "3", "4"]);
|
|
28709
|
+
var weekStartSchema = z45.enum(["sunday", "monday"]);
|
|
28710
|
+
var filterAutoShowSchema = z45.enum(["auto", "always", "never"]);
|
|
28711
|
+
var calendarTabViewsSchema = z45.enum(["both", "month", "week"]);
|
|
28515
28712
|
|
|
28516
28713
|
// ../blocks/src/system/runtime/nodes/event-registration/wizardSteps.ts
|
|
28517
28714
|
function getWizardStepsForContext(hasPreSelectedContext, needsPaymentStep) {
|
|
@@ -28571,66 +28768,68 @@ function toRegistrationEvents(events) {
|
|
|
28571
28768
|
// ../blocks/src/system/runtime/nodes/event-registration.interactive.ts
|
|
28572
28769
|
var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS = ["Date", "Tickets", "Details"];
|
|
28573
28770
|
var EVENT_REGISTRATION_SHELL_STEP_LABELS = ["Event", "Date", "Tickets", "Details", "Payment"];
|
|
28574
|
-
var contentEntrySchema =
|
|
28575
|
-
id:
|
|
28576
|
-
slug:
|
|
28577
|
-
contentTypeSlug:
|
|
28771
|
+
var contentEntrySchema = z46.object({
|
|
28772
|
+
id: z46.string(),
|
|
28773
|
+
slug: z46.string(),
|
|
28774
|
+
contentTypeSlug: z46.string()
|
|
28578
28775
|
});
|
|
28579
|
-
var eventRegistrationPublicEventSchema =
|
|
28776
|
+
var eventRegistrationPublicEventSchema = z46.preprocess(
|
|
28580
28777
|
normalizeEventRegistrationEventInput,
|
|
28581
28778
|
publicEventSchema
|
|
28582
28779
|
);
|
|
28583
|
-
var eventRegistrationSourceSchema =
|
|
28584
|
-
siteId:
|
|
28585
|
-
apiBaseUrl:
|
|
28586
|
-
portalToken:
|
|
28587
|
-
previewToken:
|
|
28780
|
+
var eventRegistrationSourceSchema = z46.object({
|
|
28781
|
+
siteId: z46.string().optional(),
|
|
28782
|
+
apiBaseUrl: z46.string().optional(),
|
|
28783
|
+
portalToken: z46.string().nullable().optional(),
|
|
28784
|
+
previewToken: z46.string().nullable().optional(),
|
|
28588
28785
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
28589
28786
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
28590
|
-
events:
|
|
28591
|
-
className:
|
|
28592
|
-
buttonText:
|
|
28593
|
-
maxTickets:
|
|
28594
|
-
showVenue:
|
|
28595
|
-
showCapacity:
|
|
28596
|
-
successMessage:
|
|
28597
|
-
waitlistMessage:
|
|
28787
|
+
events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
28788
|
+
className: z46.string().nullable().optional(),
|
|
28789
|
+
buttonText: z46.string().nullable().optional(),
|
|
28790
|
+
maxTickets: z46.string().nullable().optional(),
|
|
28791
|
+
showVenue: z46.boolean().optional(),
|
|
28792
|
+
showCapacity: z46.boolean().optional(),
|
|
28793
|
+
successMessage: z46.string().optional(),
|
|
28794
|
+
waitlistMessage: z46.string().optional(),
|
|
28598
28795
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28599
|
-
|
|
28796
|
+
overlayEnabled: z46.boolean().optional(),
|
|
28797
|
+
spamProtectionEnabled: z46.boolean().optional(),
|
|
28600
28798
|
stage: previewStageSchema.optional(),
|
|
28601
|
-
supportEmail:
|
|
28602
|
-
});
|
|
28603
|
-
var eventRegistrationDisplaySchema =
|
|
28604
|
-
kind:
|
|
28605
|
-
state:
|
|
28606
|
-
className:
|
|
28607
|
-
titleText:
|
|
28608
|
-
bodyText:
|
|
28609
|
-
stepLabels:
|
|
28610
|
-
summaryButtonText:
|
|
28611
|
-
});
|
|
28612
|
-
var eventRegistrationHydrationSchema =
|
|
28799
|
+
supportEmail: z46.string().optional()
|
|
28800
|
+
});
|
|
28801
|
+
var eventRegistrationDisplaySchema = z46.object({
|
|
28802
|
+
kind: z46.literal("event-registration"),
|
|
28803
|
+
state: z46.literal("generic-shell"),
|
|
28804
|
+
className: z46.string().nullable(),
|
|
28805
|
+
titleText: z46.string(),
|
|
28806
|
+
bodyText: z46.string(),
|
|
28807
|
+
stepLabels: z46.array(z46.enum(EVENT_REGISTRATION_SHELL_STEP_LABELS)).min(1),
|
|
28808
|
+
summaryButtonText: z46.string()
|
|
28809
|
+
});
|
|
28810
|
+
var eventRegistrationHydrationSchema = z46.object({
|
|
28613
28811
|
occurrenceContext: occurrenceContextSchema.optional(),
|
|
28614
28812
|
contentEntry: contentEntrySchema.nullable().optional(),
|
|
28615
|
-
events:
|
|
28616
|
-
maxTickets:
|
|
28617
|
-
showVenue:
|
|
28618
|
-
showCapacity:
|
|
28619
|
-
successMessage:
|
|
28620
|
-
waitlistMessage:
|
|
28813
|
+
events: z46.array(eventRegistrationPublicEventSchema).nullable().optional(),
|
|
28814
|
+
maxTickets: z46.string().optional(),
|
|
28815
|
+
showVenue: z46.boolean().optional(),
|
|
28816
|
+
showCapacity: z46.boolean().optional(),
|
|
28817
|
+
successMessage: z46.string().optional(),
|
|
28818
|
+
waitlistMessage: z46.string().optional(),
|
|
28621
28819
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28622
|
-
|
|
28623
|
-
|
|
28820
|
+
overlayEnabled: z46.boolean().optional(),
|
|
28821
|
+
spamProtectionEnabled: z46.boolean().optional(),
|
|
28822
|
+
supportEmail: z46.string().optional()
|
|
28624
28823
|
});
|
|
28625
|
-
var eventRegistrationRenderSchema =
|
|
28824
|
+
var eventRegistrationRenderSchema = z46.object({
|
|
28626
28825
|
display: eventRegistrationDisplaySchema,
|
|
28627
28826
|
hydration: eventRegistrationHydrationSchema
|
|
28628
28827
|
});
|
|
28629
|
-
var eventRegistrationIslandMetaCodec = createZodCodec(
|
|
28630
|
-
siteId:
|
|
28631
|
-
apiBaseUrl:
|
|
28632
|
-
portalToken:
|
|
28633
|
-
previewToken:
|
|
28828
|
+
var eventRegistrationIslandMetaCodec = createZodCodec(z46.object({
|
|
28829
|
+
siteId: z46.string().optional(),
|
|
28830
|
+
apiBaseUrl: z46.string().optional(),
|
|
28831
|
+
portalToken: z46.string().nullable().optional(),
|
|
28832
|
+
previewToken: z46.string().nullable().optional(),
|
|
28634
28833
|
stage: previewStageSchema.optional()
|
|
28635
28834
|
}));
|
|
28636
28835
|
var eventRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -28734,6 +28933,7 @@ var eventRegistrationBlockRuntime = defineClientOwnedBlockRuntime({
|
|
|
28734
28933
|
successMessage: source.successMessage,
|
|
28735
28934
|
waitlistMessage: source.waitlistMessage,
|
|
28736
28935
|
buttonVariant: source.buttonVariant,
|
|
28936
|
+
overlayEnabled: source.overlayEnabled,
|
|
28737
28937
|
spamProtectionEnabled: source.spamProtectionEnabled,
|
|
28738
28938
|
supportEmail: source.supportEmail
|
|
28739
28939
|
}
|
|
@@ -28909,6 +29109,12 @@ var eventRegistrationManifest = createBlockManifest({
|
|
|
28909
29109
|
buttonVariant: {
|
|
28910
29110
|
$bind: { from: "content.buttonVariant", fallback: "primary" }
|
|
28911
29111
|
},
|
|
29112
|
+
overlayEnabled: {
|
|
29113
|
+
$bind: {
|
|
29114
|
+
from: "$root.eventRegistrationOverlayEnabled",
|
|
29115
|
+
fallback: false
|
|
29116
|
+
}
|
|
29117
|
+
},
|
|
28912
29118
|
// Event data from loader
|
|
28913
29119
|
events: { $bind: { from: "data.events" } },
|
|
28914
29120
|
// Stage for preview mode (allows registering for draft events)
|
|
@@ -28929,7 +29135,7 @@ var eventRegistrationBlockDefinition = {
|
|
|
28929
29135
|
manifest: eventRegistrationManifest,
|
|
28930
29136
|
runtime: eventRegistrationBlockRuntime,
|
|
28931
29137
|
dataSchemas: {
|
|
28932
|
-
events:
|
|
29138
|
+
events: z47.array(publicEventSchema).optional(),
|
|
28933
29139
|
occurrenceContext: occurrenceContextSchema.optional()
|
|
28934
29140
|
},
|
|
28935
29141
|
dataLoaders: {
|
|
@@ -28953,73 +29159,73 @@ var eventRegistrationBlockDefinition = {
|
|
|
28953
29159
|
};
|
|
28954
29160
|
|
|
28955
29161
|
// ../blocks/src/system/runtime/nodes/course-registration.interactive.ts
|
|
28956
|
-
import { z as
|
|
28957
|
-
var contentEntrySchema2 =
|
|
28958
|
-
id:
|
|
28959
|
-
slug:
|
|
28960
|
-
contentTypeSlug:
|
|
28961
|
-
});
|
|
28962
|
-
var courseEntrySubrouteContextSchema =
|
|
28963
|
-
|
|
28964
|
-
kind:
|
|
28965
|
-
run:
|
|
28966
|
-
courseId:
|
|
28967
|
-
seriesId:
|
|
28968
|
-
runSlug:
|
|
28969
|
-
runName:
|
|
29162
|
+
import { z as z48 } from "zod";
|
|
29163
|
+
var contentEntrySchema2 = z48.object({
|
|
29164
|
+
id: z48.string(),
|
|
29165
|
+
slug: z48.string(),
|
|
29166
|
+
contentTypeSlug: z48.string()
|
|
29167
|
+
});
|
|
29168
|
+
var courseEntrySubrouteContextSchema = z48.union([
|
|
29169
|
+
z48.object({
|
|
29170
|
+
kind: z48.literal("course-run"),
|
|
29171
|
+
run: z48.object({
|
|
29172
|
+
courseId: z48.string(),
|
|
29173
|
+
seriesId: z48.string(),
|
|
29174
|
+
runSlug: z48.string(),
|
|
29175
|
+
runName: z48.string().nullable()
|
|
28970
29176
|
})
|
|
28971
29177
|
}),
|
|
28972
|
-
|
|
28973
|
-
kind:
|
|
29178
|
+
z48.object({
|
|
29179
|
+
kind: z48.literal("event-occurrence"),
|
|
28974
29180
|
occurrence: occurrenceContextSchema
|
|
28975
29181
|
})
|
|
28976
29182
|
]);
|
|
28977
|
-
var courseRegistrationSourceSchema =
|
|
28978
|
-
siteId:
|
|
28979
|
-
apiBaseUrl:
|
|
28980
|
-
portalToken:
|
|
29183
|
+
var courseRegistrationSourceSchema = z48.object({
|
|
29184
|
+
siteId: z48.string().optional(),
|
|
29185
|
+
apiBaseUrl: z48.string().optional(),
|
|
29186
|
+
portalToken: z48.string().nullable().optional(),
|
|
28981
29187
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
28982
29188
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
28983
|
-
courses:
|
|
28984
|
-
className:
|
|
28985
|
-
showSessions:
|
|
28986
|
-
showPrice:
|
|
28987
|
-
showCapacity:
|
|
28988
|
-
showVenue:
|
|
28989
|
-
successMessage:
|
|
28990
|
-
waitlistMessage:
|
|
28991
|
-
membershipMessage:
|
|
28992
|
-
buttonText:
|
|
29189
|
+
courses: z48.array(publicCourseSchema).nullable().optional(),
|
|
29190
|
+
className: z48.string().nullable().optional(),
|
|
29191
|
+
showSessions: z48.boolean().optional(),
|
|
29192
|
+
showPrice: z48.boolean().optional(),
|
|
29193
|
+
showCapacity: z48.boolean().optional(),
|
|
29194
|
+
showVenue: z48.boolean().optional(),
|
|
29195
|
+
successMessage: z48.string().optional(),
|
|
29196
|
+
waitlistMessage: z48.string().optional(),
|
|
29197
|
+
membershipMessage: z48.string().optional(),
|
|
29198
|
+
buttonText: z48.string().nullable().optional(),
|
|
28993
29199
|
buttonVariant: registrationButtonVariantSchema.optional(),
|
|
28994
29200
|
stage: previewStageSchema.optional()
|
|
28995
29201
|
});
|
|
28996
|
-
var courseRegistrationDisplaySchema =
|
|
28997
|
-
kind:
|
|
28998
|
-
state:
|
|
28999
|
-
className:
|
|
29000
|
-
summaryButtonText:
|
|
29202
|
+
var courseRegistrationDisplaySchema = z48.object({
|
|
29203
|
+
kind: z48.literal("course-registration"),
|
|
29204
|
+
state: z48.literal("shell"),
|
|
29205
|
+
className: z48.string().nullable(),
|
|
29206
|
+
summaryButtonText: z48.string()
|
|
29001
29207
|
});
|
|
29002
|
-
var courseRegistrationHydrationSchema =
|
|
29208
|
+
var courseRegistrationHydrationSchema = z48.object({
|
|
29003
29209
|
contentEntry: contentEntrySchema2.nullable().optional(),
|
|
29004
29210
|
entrySubrouteContext: courseEntrySubrouteContextSchema.nullable().optional(),
|
|
29005
|
-
courses:
|
|
29006
|
-
showSessions:
|
|
29007
|
-
showPrice:
|
|
29008
|
-
showCapacity:
|
|
29009
|
-
showVenue:
|
|
29010
|
-
successMessage:
|
|
29011
|
-
waitlistMessage:
|
|
29012
|
-
membershipMessage:
|
|
29211
|
+
courses: z48.array(publicCourseSchema).nullable().optional(),
|
|
29212
|
+
showSessions: z48.boolean().optional(),
|
|
29213
|
+
showPrice: z48.boolean().optional(),
|
|
29214
|
+
showCapacity: z48.boolean().optional(),
|
|
29215
|
+
showVenue: z48.boolean().optional(),
|
|
29216
|
+
successMessage: z48.string().optional(),
|
|
29217
|
+
waitlistMessage: z48.string().optional(),
|
|
29218
|
+
membershipMessage: z48.string().optional(),
|
|
29013
29219
|
buttonVariant: registrationButtonVariantSchema.optional()
|
|
29014
29220
|
});
|
|
29015
|
-
var courseRegistrationRenderSchema =
|
|
29221
|
+
var courseRegistrationRenderSchema = z48.object({
|
|
29016
29222
|
display: courseRegistrationDisplaySchema,
|
|
29017
29223
|
hydration: courseRegistrationHydrationSchema
|
|
29018
29224
|
});
|
|
29019
|
-
var courseRegistrationIslandMetaCodec = createZodCodec(
|
|
29020
|
-
siteId:
|
|
29021
|
-
apiBaseUrl:
|
|
29022
|
-
portalToken:
|
|
29225
|
+
var courseRegistrationIslandMetaCodec = createZodCodec(z48.object({
|
|
29226
|
+
siteId: z48.string().optional(),
|
|
29227
|
+
apiBaseUrl: z48.string().optional(),
|
|
29228
|
+
portalToken: z48.string().nullable().optional(),
|
|
29023
29229
|
stage: previewStageSchema.optional()
|
|
29024
29230
|
}));
|
|
29025
29231
|
var courseRegistrationIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -29279,32 +29485,32 @@ var courseRegistrationBlockDefinition = {
|
|
|
29279
29485
|
};
|
|
29280
29486
|
|
|
29281
29487
|
// ../blocks/src/system/blocks/event-details.ts
|
|
29282
|
-
import { z as
|
|
29488
|
+
import { z as z50 } from "zod";
|
|
29283
29489
|
|
|
29284
29490
|
// ../blocks/src/system/blocks/shop.shared.ts
|
|
29285
|
-
import { z as
|
|
29286
|
-
var publicPassProductSchema =
|
|
29287
|
-
id:
|
|
29288
|
-
productUseCase:
|
|
29289
|
-
name:
|
|
29290
|
-
description:
|
|
29291
|
-
price:
|
|
29292
|
-
currency:
|
|
29293
|
-
creditsTotal:
|
|
29294
|
-
pricePerCredit:
|
|
29295
|
-
validDays:
|
|
29296
|
-
eligibleCategoryIds:
|
|
29297
|
-
eligibleCategoryNames:
|
|
29298
|
-
});
|
|
29299
|
-
var publicMembershipProductSchema =
|
|
29300
|
-
id:
|
|
29301
|
-
name:
|
|
29302
|
-
description:
|
|
29303
|
-
price:
|
|
29304
|
-
currency:
|
|
29305
|
-
billingInterval:
|
|
29306
|
-
eligibleCategoryIds:
|
|
29307
|
-
eligibleCategoryNames:
|
|
29491
|
+
import { z as z49 } from "zod";
|
|
29492
|
+
var publicPassProductSchema = z49.object({
|
|
29493
|
+
id: z49.string(),
|
|
29494
|
+
productUseCase: z49.enum(["event_pass", "appointment_package"]).default("event_pass"),
|
|
29495
|
+
name: z49.string(),
|
|
29496
|
+
description: z49.string().nullable(),
|
|
29497
|
+
price: z49.number(),
|
|
29498
|
+
currency: z49.string(),
|
|
29499
|
+
creditsTotal: z49.number(),
|
|
29500
|
+
pricePerCredit: z49.number(),
|
|
29501
|
+
validDays: z49.number().nullable(),
|
|
29502
|
+
eligibleCategoryIds: z49.array(z49.string()),
|
|
29503
|
+
eligibleCategoryNames: z49.array(z49.string())
|
|
29504
|
+
});
|
|
29505
|
+
var publicMembershipProductSchema = z49.object({
|
|
29506
|
+
id: z49.string(),
|
|
29507
|
+
name: z49.string(),
|
|
29508
|
+
description: z49.string().nullable(),
|
|
29509
|
+
price: z49.number(),
|
|
29510
|
+
currency: z49.string(),
|
|
29511
|
+
billingInterval: z49.enum(["month", "year"]),
|
|
29512
|
+
eligibleCategoryIds: z49.array(z49.string()),
|
|
29513
|
+
eligibleCategoryNames: z49.array(z49.string())
|
|
29308
29514
|
});
|
|
29309
29515
|
|
|
29310
29516
|
// ../blocks/src/system/blocks/event-details.ts
|
|
@@ -29439,40 +29645,40 @@ var eventDetailsManifest = createBlockManifest({
|
|
|
29439
29645
|
})
|
|
29440
29646
|
]
|
|
29441
29647
|
});
|
|
29442
|
-
var occurrenceContextSchema2 =
|
|
29443
|
-
id:
|
|
29444
|
-
seriesId:
|
|
29445
|
-
startsAt:
|
|
29446
|
-
endsAt:
|
|
29447
|
-
timeZone:
|
|
29448
|
-
capacityOverride:
|
|
29449
|
-
overrides:
|
|
29648
|
+
var occurrenceContextSchema2 = z50.object({
|
|
29649
|
+
id: z50.string(),
|
|
29650
|
+
seriesId: z50.string(),
|
|
29651
|
+
startsAt: z50.string(),
|
|
29652
|
+
endsAt: z50.string(),
|
|
29653
|
+
timeZone: z50.string(),
|
|
29654
|
+
capacityOverride: z50.number().nullable().optional(),
|
|
29655
|
+
overrides: z50.record(z50.string(), z50.unknown()).nullable().optional()
|
|
29450
29656
|
}).nullable();
|
|
29451
|
-
var eventAutoApplyDiscountPreviewBaseSchema =
|
|
29452
|
-
id:
|
|
29453
|
-
publicLabel:
|
|
29454
|
-
description:
|
|
29455
|
-
minTicketsRequired:
|
|
29657
|
+
var eventAutoApplyDiscountPreviewBaseSchema = z50.object({
|
|
29658
|
+
id: z50.string(),
|
|
29659
|
+
publicLabel: z50.string(),
|
|
29660
|
+
description: z50.string().nullable(),
|
|
29661
|
+
minTicketsRequired: z50.number().nullable()
|
|
29456
29662
|
});
|
|
29457
|
-
var eventAutoApplyDiscountPreviewSchema =
|
|
29663
|
+
var eventAutoApplyDiscountPreviewSchema = z50.discriminatedUnion("discountType", [
|
|
29458
29664
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29459
|
-
discountType:
|
|
29460
|
-
discountPercent:
|
|
29461
|
-
discountAmountCents:
|
|
29665
|
+
discountType: z50.literal("percent"),
|
|
29666
|
+
discountPercent: z50.number(),
|
|
29667
|
+
discountAmountCents: z50.null()
|
|
29462
29668
|
}),
|
|
29463
29669
|
eventAutoApplyDiscountPreviewBaseSchema.extend({
|
|
29464
|
-
discountType:
|
|
29465
|
-
discountPercent:
|
|
29466
|
-
discountAmountCents:
|
|
29670
|
+
discountType: z50.literal("fixed"),
|
|
29671
|
+
discountPercent: z50.null(),
|
|
29672
|
+
discountAmountCents: z50.number()
|
|
29467
29673
|
})
|
|
29468
29674
|
]);
|
|
29469
29675
|
var eventDetailsBlockDefinition = {
|
|
29470
29676
|
manifest: eventDetailsManifest,
|
|
29471
29677
|
dataSchemas: {
|
|
29472
|
-
eventDetailsData:
|
|
29678
|
+
eventDetailsData: z50.object({
|
|
29473
29679
|
events: publicEventsArraySchema,
|
|
29474
|
-
sitePasses:
|
|
29475
|
-
siteMemberships:
|
|
29680
|
+
sitePasses: z50.object({ passes: z50.array(publicPassProductSchema) }),
|
|
29681
|
+
siteMemberships: z50.object({ memberships: z50.array(publicMembershipProductSchema) }),
|
|
29476
29682
|
autoApplyDiscount: eventAutoApplyDiscountPreviewSchema.nullable().optional().default(null)
|
|
29477
29683
|
}).optional(),
|
|
29478
29684
|
occurrenceContext: occurrenceContextSchema2.optional()
|
|
@@ -29796,7 +30002,7 @@ var eventSpotlightBlockDefinition = {
|
|
|
29796
30002
|
};
|
|
29797
30003
|
|
|
29798
30004
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
29799
|
-
import { z as
|
|
30005
|
+
import { z as z52 } from "zod";
|
|
29800
30006
|
|
|
29801
30007
|
// ../blocks/src/system/runtime/nodes/events/shared/utils.ts
|
|
29802
30008
|
var COLUMN_CLASSES = {
|
|
@@ -29904,16 +30110,16 @@ function computeMediaTransformStyle(value, style, targetAspectRatio, options) {
|
|
|
29904
30110
|
}
|
|
29905
30111
|
|
|
29906
30112
|
// ../blocks/src/system/runtime/nodes/events/shared/listOptions.ts
|
|
29907
|
-
import { z as
|
|
30113
|
+
import { z as z51 } from "zod";
|
|
29908
30114
|
var eventPageSizeValues = [3, 6, 10, 12, 20, 24, 30];
|
|
29909
|
-
var eventPageSizeSchema =
|
|
29910
|
-
|
|
29911
|
-
|
|
29912
|
-
|
|
29913
|
-
|
|
29914
|
-
|
|
29915
|
-
|
|
29916
|
-
|
|
30115
|
+
var eventPageSizeSchema = z51.union([
|
|
30116
|
+
z51.literal(3),
|
|
30117
|
+
z51.literal(6),
|
|
30118
|
+
z51.literal(10),
|
|
30119
|
+
z51.literal(12),
|
|
30120
|
+
z51.literal(20),
|
|
30121
|
+
z51.literal(24),
|
|
30122
|
+
z51.literal(30)
|
|
29917
30123
|
]);
|
|
29918
30124
|
var eventPageSizeSet = new Set(eventPageSizeValues);
|
|
29919
30125
|
function resolveEventPageSize(value, fallback = 12) {
|
|
@@ -29923,15 +30129,15 @@ function resolveEventPageSize(value, fallback = 12) {
|
|
|
29923
30129
|
function resolveEventCalendarListPageSize(input) {
|
|
29924
30130
|
return resolveEventPageSize(input.eventsPerPage);
|
|
29925
30131
|
}
|
|
29926
|
-
var eventListPaginationActionSchema =
|
|
29927
|
-
|
|
29928
|
-
kind:
|
|
29929
|
-
label:
|
|
30132
|
+
var eventListPaginationActionSchema = z51.discriminatedUnion("kind", [
|
|
30133
|
+
z51.object({
|
|
30134
|
+
kind: z51.literal("loadMore"),
|
|
30135
|
+
label: z51.string()
|
|
29930
30136
|
}),
|
|
29931
|
-
|
|
29932
|
-
kind:
|
|
29933
|
-
label:
|
|
29934
|
-
href:
|
|
30137
|
+
z51.object({
|
|
30138
|
+
kind: z51.literal("seeAllLink"),
|
|
30139
|
+
label: z51.string(),
|
|
30140
|
+
href: z51.string()
|
|
29935
30141
|
})
|
|
29936
30142
|
]);
|
|
29937
30143
|
function resolveEventListPaginationAction(input) {
|
|
@@ -29944,89 +30150,89 @@ function resolveEventListPaginationAction(input) {
|
|
|
29944
30150
|
}
|
|
29945
30151
|
|
|
29946
30152
|
// ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
|
|
29947
|
-
var legacyEventCardVariantSchema =
|
|
29948
|
-
var eventCardVariantInputSchema =
|
|
30153
|
+
var legacyEventCardVariantSchema = z52.enum(["variant1", "variant2"]);
|
|
30154
|
+
var eventCardVariantInputSchema = z52.union([
|
|
29949
30155
|
cardVariantRoleSchema,
|
|
29950
30156
|
legacyEventCardVariantSchema
|
|
29951
30157
|
]);
|
|
29952
|
-
var cardOrientationSchema =
|
|
29953
|
-
var eventBlockKindSchema =
|
|
29954
|
-
var eventSurfaceScopeSchema =
|
|
29955
|
-
var eventScheduleScopeSchema2 =
|
|
29956
|
-
var eventListingSourceSchema =
|
|
29957
|
-
events:
|
|
29958
|
-
siteId:
|
|
29959
|
-
apiBaseUrl:
|
|
30158
|
+
var cardOrientationSchema = z52.enum(["vertical", "horizontal"]);
|
|
30159
|
+
var eventBlockKindSchema = z52.enum(eventBlockKindValues);
|
|
30160
|
+
var eventSurfaceScopeSchema = z52.enum(eventSurfaceScopeValues);
|
|
30161
|
+
var eventScheduleScopeSchema2 = z52.enum(eventScheduleScopeValues);
|
|
30162
|
+
var eventListingSourceSchema = z52.object({
|
|
30163
|
+
events: z52.array(publicEventSchema).nullable().optional(),
|
|
30164
|
+
siteId: z52.string(),
|
|
30165
|
+
apiBaseUrl: z52.string().optional(),
|
|
29960
30166
|
stage: previewStageSchema.optional(),
|
|
29961
30167
|
layout: eventLayoutSchema.optional(),
|
|
29962
30168
|
columns: columnOptionSchema.optional(),
|
|
29963
|
-
eventsPerPage:
|
|
29964
|
-
paginationMode:
|
|
29965
|
-
seeAllUrl:
|
|
29966
|
-
loadMoreText:
|
|
30169
|
+
eventsPerPage: z52.string().optional(),
|
|
30170
|
+
paginationMode: z52.enum(["loadMore", "seeAllLink"]).optional(),
|
|
30171
|
+
seeAllUrl: z52.string().optional(),
|
|
30172
|
+
loadMoreText: z52.string().optional(),
|
|
29967
30173
|
cardVariant: eventCardVariantInputSchema.optional(),
|
|
29968
30174
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
29969
|
-
buttonText:
|
|
29970
|
-
showVenue:
|
|
29971
|
-
showMap:
|
|
29972
|
-
showCapacity:
|
|
29973
|
-
emptyMessage:
|
|
29974
|
-
className:
|
|
29975
|
-
showFilters:
|
|
30175
|
+
buttonText: z52.string().optional(),
|
|
30176
|
+
showVenue: z52.boolean().optional(),
|
|
30177
|
+
showMap: z52.boolean().optional(),
|
|
30178
|
+
showCapacity: z52.boolean().optional(),
|
|
30179
|
+
emptyMessage: z52.string().optional(),
|
|
30180
|
+
className: z52.string().optional(),
|
|
30181
|
+
showFilters: z52.boolean().nullable().optional(),
|
|
29976
30182
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
29977
|
-
showVenueFilter:
|
|
29978
|
-
showStaffFilter:
|
|
30183
|
+
showVenueFilter: z52.boolean().nullable().optional(),
|
|
30184
|
+
showStaffFilter: z52.boolean().nullable().optional(),
|
|
29979
30185
|
eventKind: eventBlockKindSchema.nullable().optional(),
|
|
29980
30186
|
eventSurface: eventSurfaceScopeSchema.nullable().optional(),
|
|
29981
|
-
filterEventPresets:
|
|
30187
|
+
filterEventPresets: z52.union([z52.string(), z52.array(z52.string())]).nullable().optional(),
|
|
29982
30188
|
scheduleScope: eventScheduleScopeSchema2.nullable().optional(),
|
|
29983
|
-
filterCategoryIds:
|
|
29984
|
-
filterStaffMemberId:
|
|
29985
|
-
filterVenueId:
|
|
30189
|
+
filterCategoryIds: z52.string().nullable().optional(),
|
|
30190
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
30191
|
+
filterVenueId: z52.string().nullable().optional()
|
|
29986
30192
|
});
|
|
29987
|
-
var eventListingDisplaySchema =
|
|
29988
|
-
kind:
|
|
29989
|
-
state:
|
|
30193
|
+
var eventListingDisplaySchema = z52.object({
|
|
30194
|
+
kind: z52.literal("event-listing"),
|
|
30195
|
+
state: z52.enum(["loading", "empty", "ready"]),
|
|
29990
30196
|
listLayout: eventLayoutSchema,
|
|
29991
|
-
className:
|
|
29992
|
-
emptyMessage:
|
|
29993
|
-
loadingMessage:
|
|
29994
|
-
containerClass:
|
|
30197
|
+
className: z52.string().nullable(),
|
|
30198
|
+
emptyMessage: z52.string(),
|
|
30199
|
+
loadingMessage: z52.string(),
|
|
30200
|
+
containerClass: z52.string(),
|
|
29995
30201
|
cardVariant: cardVariantRoleSchema,
|
|
29996
30202
|
buttonVariant: eventButtonVariantSchema,
|
|
29997
|
-
buttonText:
|
|
29998
|
-
showVenue:
|
|
29999
|
-
showMap:
|
|
30000
|
-
showCapacity:
|
|
30203
|
+
buttonText: z52.string(),
|
|
30204
|
+
showVenue: z52.boolean(),
|
|
30205
|
+
showMap: z52.boolean(),
|
|
30206
|
+
showCapacity: z52.boolean(),
|
|
30001
30207
|
orientation: cardOrientationSchema,
|
|
30002
|
-
events:
|
|
30208
|
+
events: z52.array(publicEventSchema)
|
|
30003
30209
|
});
|
|
30004
|
-
var eventListingHydrationSchema =
|
|
30005
|
-
siteId:
|
|
30210
|
+
var eventListingHydrationSchema = z52.object({
|
|
30211
|
+
siteId: z52.string(),
|
|
30006
30212
|
stage: previewStageSchema.optional(),
|
|
30007
30213
|
eventsPerPage: eventPageSizeSchema,
|
|
30008
30214
|
paginationAction: eventListPaginationActionSchema,
|
|
30009
|
-
showFilters:
|
|
30215
|
+
showFilters: z52.boolean(),
|
|
30010
30216
|
showCategoryFilter: filterAutoShowSchema,
|
|
30011
|
-
showVenueFilter:
|
|
30012
|
-
showStaffFilter:
|
|
30217
|
+
showVenueFilter: z52.boolean(),
|
|
30218
|
+
showStaffFilter: z52.boolean(),
|
|
30013
30219
|
eventKind: eventBlockKindSchema,
|
|
30014
30220
|
eventSurface: eventSurfaceScopeSchema,
|
|
30015
|
-
filterEventPresets:
|
|
30221
|
+
filterEventPresets: z52.string().nullable(),
|
|
30016
30222
|
scheduleScope: eventScheduleScopeSchema2,
|
|
30017
|
-
filterCategoryIds:
|
|
30018
|
-
filterStaffMemberId:
|
|
30019
|
-
filterVenueId:
|
|
30020
|
-
fetchInitialEventsOnMount:
|
|
30223
|
+
filterCategoryIds: z52.string().nullable().optional(),
|
|
30224
|
+
filterStaffMemberId: z52.string().nullable().optional(),
|
|
30225
|
+
filterVenueId: z52.string().nullable().optional(),
|
|
30226
|
+
fetchInitialEventsOnMount: z52.boolean()
|
|
30021
30227
|
});
|
|
30022
|
-
var eventListingRenderSchema =
|
|
30228
|
+
var eventListingRenderSchema = z52.object({
|
|
30023
30229
|
display: eventListingDisplaySchema,
|
|
30024
30230
|
hydration: eventListingHydrationSchema
|
|
30025
30231
|
});
|
|
30026
30232
|
var eventListingIslandMetaCodec = createZodCodec(
|
|
30027
|
-
|
|
30028
|
-
siteId:
|
|
30029
|
-
apiBaseUrl:
|
|
30233
|
+
z52.object({
|
|
30234
|
+
siteId: z52.string(),
|
|
30235
|
+
apiBaseUrl: z52.string().optional(),
|
|
30030
30236
|
stage: previewStageSchema.optional()
|
|
30031
30237
|
})
|
|
30032
30238
|
);
|
|
@@ -30393,15 +30599,15 @@ var eventListingBlockDefinition = {
|
|
|
30393
30599
|
};
|
|
30394
30600
|
|
|
30395
30601
|
// ../blocks/src/system/runtime/nodes/events/EventCalendar.interactive.ts
|
|
30396
|
-
import { z as
|
|
30397
|
-
var eventBlockKindSchema2 =
|
|
30398
|
-
var eventSurfaceScopeSchema2 =
|
|
30399
|
-
var eventScheduleScopeSchema3 =
|
|
30400
|
-
var eventCalendarSourceSchema =
|
|
30602
|
+
import { z as z53 } from "zod";
|
|
30603
|
+
var eventBlockKindSchema2 = z53.enum(eventBlockKindValues);
|
|
30604
|
+
var eventSurfaceScopeSchema2 = z53.enum(eventSurfaceScopeValues);
|
|
30605
|
+
var eventScheduleScopeSchema3 = z53.enum(eventScheduleScopeValues);
|
|
30606
|
+
var eventCalendarSourceSchema = z53.object(
|
|
30401
30607
|
{
|
|
30402
|
-
events:
|
|
30403
|
-
siteId:
|
|
30404
|
-
apiBaseUrl:
|
|
30608
|
+
events: z53.array(publicEventSchema).nullable().optional(),
|
|
30609
|
+
siteId: z53.string(),
|
|
30610
|
+
apiBaseUrl: z53.string().optional(),
|
|
30405
30611
|
stage: previewStageSchema.optional(),
|
|
30406
30612
|
variant: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
30407
30613
|
displayMode: eventCalendarDisplayModeSchema.nullable().optional(),
|
|
@@ -30409,78 +30615,78 @@ var eventCalendarSourceSchema = z52.object(
|
|
|
30409
30615
|
listColumns: columnOptionSchema.optional(),
|
|
30410
30616
|
layout: eventLayoutSchema.optional(),
|
|
30411
30617
|
columns: columnOptionSchema.optional(),
|
|
30412
|
-
eventsPerPage:
|
|
30413
|
-
paginationMode:
|
|
30414
|
-
seeAllUrl:
|
|
30415
|
-
loadMoreText:
|
|
30618
|
+
eventsPerPage: z53.string().optional(),
|
|
30619
|
+
paginationMode: z53.enum(["loadMore", "seeAllLink"]).optional(),
|
|
30620
|
+
seeAllUrl: z53.string().optional(),
|
|
30621
|
+
loadMoreText: z53.string().optional(),
|
|
30416
30622
|
startOfWeek: weekStartSchema.optional(),
|
|
30417
30623
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
30418
|
-
showFilters:
|
|
30624
|
+
showFilters: z53.boolean().nullable().optional(),
|
|
30419
30625
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
30420
|
-
showVenueFilter:
|
|
30421
|
-
showStaffFilter:
|
|
30626
|
+
showVenueFilter: z53.boolean().nullable().optional(),
|
|
30627
|
+
showStaffFilter: z53.boolean().nullable().optional(),
|
|
30422
30628
|
kind: eventBlockKindSchema2.nullable().optional(),
|
|
30423
30629
|
eventSurface: eventSurfaceScopeSchema2.nullable().optional(),
|
|
30424
|
-
filterEventPresets:
|
|
30630
|
+
filterEventPresets: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
|
|
30425
30631
|
scheduleScope: eventScheduleScopeSchema3.nullable().optional(),
|
|
30426
|
-
filterCategoryIds:
|
|
30427
|
-
filterStaffMemberId:
|
|
30428
|
-
filterVenueId:
|
|
30632
|
+
filterCategoryIds: z53.union([z53.string(), z53.array(z53.string())]).nullable().optional(),
|
|
30633
|
+
filterStaffMemberId: z53.string().nullable().optional(),
|
|
30634
|
+
filterVenueId: z53.string().nullable().optional(),
|
|
30429
30635
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
30430
|
-
buttonText:
|
|
30431
|
-
showVenue:
|
|
30432
|
-
showMap:
|
|
30433
|
-
showCapacity:
|
|
30434
|
-
emptyMessage:
|
|
30435
|
-
className:
|
|
30636
|
+
buttonText: z53.string().optional(),
|
|
30637
|
+
showVenue: z53.boolean().nullable().optional(),
|
|
30638
|
+
showMap: z53.boolean().nullable().optional(),
|
|
30639
|
+
showCapacity: z53.boolean().nullable().optional(),
|
|
30640
|
+
emptyMessage: z53.string().optional(),
|
|
30641
|
+
className: z53.string().optional()
|
|
30436
30642
|
}
|
|
30437
30643
|
);
|
|
30438
|
-
var eventCalendarDisplaySchema =
|
|
30439
|
-
kind:
|
|
30644
|
+
var eventCalendarDisplaySchema = z53.object({
|
|
30645
|
+
kind: z53.literal("event-calendar"),
|
|
30440
30646
|
displayMode: eventCalendarDisplayModeSchema,
|
|
30441
|
-
className:
|
|
30442
|
-
events:
|
|
30647
|
+
className: z53.string().nullable(),
|
|
30648
|
+
events: z53.array(publicEventSchema),
|
|
30443
30649
|
listLayout: eventLayoutSchema,
|
|
30444
30650
|
listColumns: columnOptionSchema,
|
|
30445
30651
|
eventsPerPage: eventPageSizeSchema,
|
|
30446
30652
|
paginationAction: eventListPaginationActionSchema,
|
|
30447
30653
|
startOfWeek: weekStartSchema,
|
|
30448
30654
|
calendarTabViews: calendarTabViewsSchema,
|
|
30449
|
-
showFilters:
|
|
30655
|
+
showFilters: z53.boolean(),
|
|
30450
30656
|
showCategoryFilter: filterAutoShowSchema,
|
|
30451
|
-
showVenueFilter:
|
|
30452
|
-
showStaffFilter:
|
|
30657
|
+
showVenueFilter: z53.boolean(),
|
|
30658
|
+
showStaffFilter: z53.boolean(),
|
|
30453
30659
|
eventKind: eventBlockKindSchema2,
|
|
30454
30660
|
eventSurface: eventSurfaceScopeSchema2,
|
|
30455
|
-
filterEventPresets:
|
|
30661
|
+
filterEventPresets: z53.string().nullable(),
|
|
30456
30662
|
scheduleScope: eventScheduleScopeSchema3,
|
|
30457
|
-
filterCategoryIds:
|
|
30458
|
-
filterStaffMemberId:
|
|
30459
|
-
filterVenueId:
|
|
30663
|
+
filterCategoryIds: z53.string().nullable(),
|
|
30664
|
+
filterStaffMemberId: z53.string().nullable(),
|
|
30665
|
+
filterVenueId: z53.string().nullable(),
|
|
30460
30666
|
buttonVariant: eventButtonVariantSchema,
|
|
30461
|
-
buttonText:
|
|
30462
|
-
showVenue:
|
|
30463
|
-
showMap:
|
|
30464
|
-
showCapacity:
|
|
30465
|
-
emptyMessage:
|
|
30466
|
-
});
|
|
30467
|
-
var eventCalendarHydrationSchema =
|
|
30468
|
-
siteId:
|
|
30667
|
+
buttonText: z53.string(),
|
|
30668
|
+
showVenue: z53.boolean(),
|
|
30669
|
+
showMap: z53.boolean(),
|
|
30670
|
+
showCapacity: z53.boolean(),
|
|
30671
|
+
emptyMessage: z53.string()
|
|
30672
|
+
});
|
|
30673
|
+
var eventCalendarHydrationSchema = z53.object({
|
|
30674
|
+
siteId: z53.string(),
|
|
30469
30675
|
stage: previewStageSchema.optional(),
|
|
30470
|
-
prefetchedEvents:
|
|
30676
|
+
prefetchedEvents: z53.boolean(),
|
|
30471
30677
|
eventKind: eventBlockKindSchema2,
|
|
30472
30678
|
eventSurface: eventSurfaceScopeSchema2,
|
|
30473
|
-
filterEventPresets:
|
|
30679
|
+
filterEventPresets: z53.string().nullable(),
|
|
30474
30680
|
scheduleScope: eventScheduleScopeSchema3
|
|
30475
30681
|
});
|
|
30476
|
-
var eventCalendarRenderSchema =
|
|
30682
|
+
var eventCalendarRenderSchema = z53.object({
|
|
30477
30683
|
display: eventCalendarDisplaySchema,
|
|
30478
30684
|
hydration: eventCalendarHydrationSchema
|
|
30479
30685
|
});
|
|
30480
30686
|
var eventCalendarIslandMetaCodec = createZodCodec(
|
|
30481
|
-
|
|
30482
|
-
siteId:
|
|
30483
|
-
apiBaseUrl:
|
|
30687
|
+
z53.object({
|
|
30688
|
+
siteId: z53.string(),
|
|
30689
|
+
apiBaseUrl: z53.string().optional(),
|
|
30484
30690
|
stage: previewStageSchema.optional()
|
|
30485
30691
|
})
|
|
30486
30692
|
);
|
|
@@ -31189,7 +31395,7 @@ var eventCalendarBlockDefinition = {
|
|
|
31189
31395
|
};
|
|
31190
31396
|
|
|
31191
31397
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
31192
|
-
import { z as
|
|
31398
|
+
import { z as z54 } from "zod";
|
|
31193
31399
|
|
|
31194
31400
|
// ../blocks/src/system/blocks/offerings-preview/model.ts
|
|
31195
31401
|
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT = "3";
|
|
@@ -31281,13 +31487,13 @@ function isRecord5(value) {
|
|
|
31281
31487
|
}
|
|
31282
31488
|
|
|
31283
31489
|
// ../blocks/src/system/blocks/offerings-preview/index.ts
|
|
31284
|
-
var publicRouteCandidatesSchema =
|
|
31285
|
-
routes:
|
|
31286
|
-
entityId:
|
|
31287
|
-
path:
|
|
31288
|
-
title:
|
|
31289
|
-
kind:
|
|
31290
|
-
contentTypeKey:
|
|
31490
|
+
var publicRouteCandidatesSchema = z54.object({
|
|
31491
|
+
routes: z54.array(z54.object({
|
|
31492
|
+
entityId: z54.string(),
|
|
31493
|
+
path: z54.string(),
|
|
31494
|
+
title: z54.string(),
|
|
31495
|
+
kind: z54.enum(["page", "content"]),
|
|
31496
|
+
contentTypeKey: z54.string().nullable().optional()
|
|
31291
31497
|
}))
|
|
31292
31498
|
});
|
|
31293
31499
|
var groupOverrideFields = [
|
|
@@ -31685,7 +31891,7 @@ function isRecord6(value) {
|
|
|
31685
31891
|
}
|
|
31686
31892
|
|
|
31687
31893
|
// ../blocks/src/system/blocks/embed.ts
|
|
31688
|
-
import { z as
|
|
31894
|
+
import { z as z55 } from "zod";
|
|
31689
31895
|
var embedFields = [
|
|
31690
31896
|
// Section heading
|
|
31691
31897
|
parseFieldDefinition({
|
|
@@ -31916,18 +32122,18 @@ var embedManifest = createBlockManifest({
|
|
|
31916
32122
|
spacing: "lg"
|
|
31917
32123
|
}
|
|
31918
32124
|
});
|
|
31919
|
-
var embedEntrySchema =
|
|
31920
|
-
id:
|
|
31921
|
-
identifier:
|
|
31922
|
-
title:
|
|
31923
|
-
slug:
|
|
31924
|
-
content:
|
|
31925
|
-
publishedAt:
|
|
32125
|
+
var embedEntrySchema = z55.object({
|
|
32126
|
+
id: z55.string(),
|
|
32127
|
+
identifier: z55.string(),
|
|
32128
|
+
title: z55.string(),
|
|
32129
|
+
slug: z55.string().nullable().optional(),
|
|
32130
|
+
content: z55.record(z55.string(), z55.unknown()).optional(),
|
|
32131
|
+
publishedAt: z55.string().nullable().optional()
|
|
31926
32132
|
});
|
|
31927
32133
|
var embedBlockDefinition = {
|
|
31928
32134
|
manifest: embedManifest,
|
|
31929
32135
|
dataSchemas: {
|
|
31930
|
-
entries:
|
|
32136
|
+
entries: z55.array(embedEntrySchema).optional()
|
|
31931
32137
|
},
|
|
31932
32138
|
dataLoaders: {
|
|
31933
32139
|
entries: {
|
|
@@ -33111,52 +33317,52 @@ var fileDownloadBlockDefinition = {
|
|
|
33111
33317
|
};
|
|
33112
33318
|
|
|
33113
33319
|
// ../blocks/src/system/blocks/shop.ts
|
|
33114
|
-
import { z as
|
|
33320
|
+
import { z as z59 } from "zod";
|
|
33115
33321
|
|
|
33116
33322
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
33117
|
-
import { z as
|
|
33323
|
+
import { z as z58 } from "zod";
|
|
33118
33324
|
|
|
33119
33325
|
// ../blocks/src/system/blocks/products/shared.ts
|
|
33120
|
-
import { z as
|
|
33121
|
-
var publicProductVariantSchema =
|
|
33122
|
-
id:
|
|
33123
|
-
title:
|
|
33124
|
-
sku:
|
|
33125
|
-
priceCents:
|
|
33126
|
-
stockQuantity:
|
|
33127
|
-
soldOut:
|
|
33128
|
-
});
|
|
33129
|
-
var publicProductSchema =
|
|
33130
|
-
id:
|
|
33131
|
-
contentEntryId:
|
|
33132
|
-
title:
|
|
33133
|
-
slug:
|
|
33134
|
-
path:
|
|
33135
|
-
status:
|
|
33136
|
-
priceCents:
|
|
33137
|
-
currency:
|
|
33138
|
-
productType:
|
|
33139
|
-
requiresShipping:
|
|
33140
|
-
hasVariants:
|
|
33141
|
-
trackInventory:
|
|
33142
|
-
soldOut:
|
|
33143
|
-
category:
|
|
33144
|
-
id:
|
|
33145
|
-
name:
|
|
33146
|
-
slug:
|
|
33326
|
+
import { z as z56 } from "zod";
|
|
33327
|
+
var publicProductVariantSchema = z56.object({
|
|
33328
|
+
id: z56.string(),
|
|
33329
|
+
title: z56.string(),
|
|
33330
|
+
sku: z56.string().nullable(),
|
|
33331
|
+
priceCents: z56.number(),
|
|
33332
|
+
stockQuantity: z56.number().nullable(),
|
|
33333
|
+
soldOut: z56.boolean()
|
|
33334
|
+
});
|
|
33335
|
+
var publicProductSchema = z56.object({
|
|
33336
|
+
id: z56.string(),
|
|
33337
|
+
contentEntryId: z56.string().nullable(),
|
|
33338
|
+
title: z56.string(),
|
|
33339
|
+
slug: z56.string(),
|
|
33340
|
+
path: z56.string().nullable(),
|
|
33341
|
+
status: z56.enum(["draft", "active"]),
|
|
33342
|
+
priceCents: z56.number(),
|
|
33343
|
+
currency: z56.string(),
|
|
33344
|
+
productType: z56.enum(["physical", "digital"]),
|
|
33345
|
+
requiresShipping: z56.boolean(),
|
|
33346
|
+
hasVariants: z56.boolean(),
|
|
33347
|
+
trackInventory: z56.boolean(),
|
|
33348
|
+
soldOut: z56.boolean(),
|
|
33349
|
+
category: z56.object({
|
|
33350
|
+
id: z56.string(),
|
|
33351
|
+
name: z56.string(),
|
|
33352
|
+
slug: z56.string()
|
|
33147
33353
|
}).nullable(),
|
|
33148
|
-
summary:
|
|
33149
|
-
body:
|
|
33150
|
-
gallery:
|
|
33151
|
-
|
|
33152
|
-
url:
|
|
33153
|
-
alt:
|
|
33354
|
+
summary: z56.string().nullable(),
|
|
33355
|
+
body: z56.unknown().nullable(),
|
|
33356
|
+
gallery: z56.array(
|
|
33357
|
+
z56.object({
|
|
33358
|
+
url: z56.string(),
|
|
33359
|
+
alt: z56.string().nullable()
|
|
33154
33360
|
})
|
|
33155
33361
|
),
|
|
33156
|
-
variants:
|
|
33362
|
+
variants: z56.array(publicProductVariantSchema)
|
|
33157
33363
|
});
|
|
33158
|
-
var publicProductsResponseSchema =
|
|
33159
|
-
products:
|
|
33364
|
+
var publicProductsResponseSchema = z56.object({
|
|
33365
|
+
products: z56.array(publicProductSchema)
|
|
33160
33366
|
});
|
|
33161
33367
|
|
|
33162
33368
|
// ../blocks/src/system/runtime/api/creditProducts.ts
|
|
@@ -33220,27 +33426,27 @@ function deriveCreditProductLabels(products, options = {}) {
|
|
|
33220
33426
|
}
|
|
33221
33427
|
|
|
33222
33428
|
// ../blocks/src/system/runtime/nodes/shop-commerce.shared.ts
|
|
33223
|
-
import { z as
|
|
33224
|
-
var storedProductCartItemSchema =
|
|
33225
|
-
kind:
|
|
33226
|
-
productId:
|
|
33227
|
-
productCategoryId:
|
|
33228
|
-
variantId:
|
|
33229
|
-
title:
|
|
33230
|
-
variantTitle:
|
|
33231
|
-
quantity:
|
|
33232
|
-
unitPriceCents:
|
|
33233
|
-
currency:
|
|
33234
|
-
imageUrl:
|
|
33235
|
-
soldOut:
|
|
33236
|
-
});
|
|
33237
|
-
var storedPassCartItemSchema =
|
|
33238
|
-
kind:
|
|
33239
|
-
passId:
|
|
33240
|
-
title:
|
|
33241
|
-
quantity:
|
|
33242
|
-
unitPriceCents:
|
|
33243
|
-
currency:
|
|
33429
|
+
import { z as z57 } from "zod";
|
|
33430
|
+
var storedProductCartItemSchema = z57.object({
|
|
33431
|
+
kind: z57.literal("product"),
|
|
33432
|
+
productId: z57.string().min(1),
|
|
33433
|
+
productCategoryId: z57.string().min(1).optional().nullable(),
|
|
33434
|
+
variantId: z57.string().min(1).optional().nullable(),
|
|
33435
|
+
title: z57.string().min(1),
|
|
33436
|
+
variantTitle: z57.string().optional().nullable(),
|
|
33437
|
+
quantity: z57.number().finite(),
|
|
33438
|
+
unitPriceCents: z57.number().finite(),
|
|
33439
|
+
currency: z57.string().min(1),
|
|
33440
|
+
imageUrl: z57.string().optional().nullable(),
|
|
33441
|
+
soldOut: z57.boolean().optional()
|
|
33442
|
+
});
|
|
33443
|
+
var storedPassCartItemSchema = z57.object({
|
|
33444
|
+
kind: z57.literal("pass"),
|
|
33445
|
+
passId: z57.string().min(1),
|
|
33446
|
+
title: z57.string().min(1),
|
|
33447
|
+
quantity: z57.number().finite().optional(),
|
|
33448
|
+
unitPriceCents: z57.number().finite(),
|
|
33449
|
+
currency: z57.string().min(1)
|
|
33244
33450
|
});
|
|
33245
33451
|
function deriveCommerceCheckoutState(state) {
|
|
33246
33452
|
if (state.items.length === 0) {
|
|
@@ -33279,10 +33485,7 @@ function resolveSelectedProduct(products, contentEntry, productSlug) {
|
|
|
33279
33485
|
|
|
33280
33486
|
// ../blocks/src/system/runtime/nodes/commerce/shared/display.ts
|
|
33281
33487
|
function formatCommercePrice(cents, currency) {
|
|
33282
|
-
return
|
|
33283
|
-
style: "currency",
|
|
33284
|
-
currency: currency.toUpperCase()
|
|
33285
|
-
}).format(cents / 100);
|
|
33488
|
+
return formatCurrencyAmount(cents, currency);
|
|
33286
33489
|
}
|
|
33287
33490
|
function getPassesHeading(passes, explicitHeading) {
|
|
33288
33491
|
if (explicitHeading) return explicitHeading;
|
|
@@ -33477,214 +33680,214 @@ function formatValidity(days) {
|
|
|
33477
33680
|
}
|
|
33478
33681
|
|
|
33479
33682
|
// ../blocks/src/system/runtime/nodes/shop.interactive.ts
|
|
33480
|
-
var shopModeSchema =
|
|
33481
|
-
var contentEntrySchema3 =
|
|
33482
|
-
id:
|
|
33483
|
-
slug:
|
|
33683
|
+
var shopModeSchema = z58.enum(["passes-memberships", "product-list", "product-detail", "cart", "checkout"]);
|
|
33684
|
+
var contentEntrySchema3 = z58.object({
|
|
33685
|
+
id: z58.string().nullable().optional(),
|
|
33686
|
+
slug: z58.string().nullable().optional()
|
|
33484
33687
|
}).nullable();
|
|
33485
|
-
var shopSourceSchema =
|
|
33486
|
-
className:
|
|
33688
|
+
var shopSourceSchema = z58.object({
|
|
33689
|
+
className: z58.string().nullable().optional(),
|
|
33487
33690
|
mode: shopModeSchema.optional(),
|
|
33488
|
-
heading:
|
|
33489
|
-
productSlug:
|
|
33490
|
-
showPasses:
|
|
33491
|
-
showMemberships:
|
|
33492
|
-
layout:
|
|
33493
|
-
columns:
|
|
33494
|
-
showDescriptions:
|
|
33495
|
-
showSummary:
|
|
33496
|
-
showBody:
|
|
33497
|
-
showPrices:
|
|
33498
|
-
showValidityPeriod:
|
|
33499
|
-
showPricePerCredit:
|
|
33500
|
-
passesHeading:
|
|
33501
|
-
membershipsHeading:
|
|
33502
|
-
buyButtonText:
|
|
33503
|
-
addButtonText:
|
|
33504
|
-
passPurchaseMode:
|
|
33505
|
-
subscribeButtonText:
|
|
33506
|
-
emptyStateText:
|
|
33507
|
-
checkoutButtonText:
|
|
33508
|
-
clearButtonText:
|
|
33509
|
-
submitButtonText:
|
|
33691
|
+
heading: z58.string().nullable().optional(),
|
|
33692
|
+
productSlug: z58.string().nullable().optional(),
|
|
33693
|
+
showPasses: z58.boolean().optional(),
|
|
33694
|
+
showMemberships: z58.boolean().optional(),
|
|
33695
|
+
layout: z58.enum(["grid", "list"]).optional(),
|
|
33696
|
+
columns: z58.string().optional(),
|
|
33697
|
+
showDescriptions: z58.boolean().optional(),
|
|
33698
|
+
showSummary: z58.boolean().optional(),
|
|
33699
|
+
showBody: z58.boolean().optional(),
|
|
33700
|
+
showPrices: z58.boolean().optional(),
|
|
33701
|
+
showValidityPeriod: z58.boolean().optional(),
|
|
33702
|
+
showPricePerCredit: z58.boolean().nullable().optional(),
|
|
33703
|
+
passesHeading: z58.string().optional(),
|
|
33704
|
+
membershipsHeading: z58.string().optional(),
|
|
33705
|
+
buyButtonText: z58.string().optional(),
|
|
33706
|
+
addButtonText: z58.string().optional(),
|
|
33707
|
+
passPurchaseMode: z58.enum(["add_to_cart", "buy_now"]).optional(),
|
|
33708
|
+
subscribeButtonText: z58.string().optional(),
|
|
33709
|
+
emptyStateText: z58.string().optional(),
|
|
33710
|
+
checkoutButtonText: z58.string().optional(),
|
|
33711
|
+
clearButtonText: z58.string().optional(),
|
|
33712
|
+
submitButtonText: z58.string().optional(),
|
|
33510
33713
|
contentEntry: contentEntrySchema3.optional(),
|
|
33511
|
-
passes:
|
|
33512
|
-
memberships:
|
|
33513
|
-
products:
|
|
33514
|
-
siteId:
|
|
33515
|
-
apiBaseUrl:
|
|
33714
|
+
passes: z58.array(publicPassProductSchema).nullable().optional(),
|
|
33715
|
+
memberships: z58.array(publicMembershipProductSchema).nullable().optional(),
|
|
33716
|
+
products: z58.array(publicProductSchema).nullable().optional(),
|
|
33717
|
+
siteId: z58.string().optional(),
|
|
33718
|
+
apiBaseUrl: z58.string().optional(),
|
|
33516
33719
|
stage: previewStageSchema.optional()
|
|
33517
33720
|
});
|
|
33518
|
-
var productVariantOptionDisplaySchema =
|
|
33519
|
-
id:
|
|
33520
|
-
label:
|
|
33521
|
-
soldOut:
|
|
33522
|
-
});
|
|
33523
|
-
var productCardDisplaySchema =
|
|
33524
|
-
productId:
|
|
33525
|
-
title:
|
|
33526
|
-
path:
|
|
33527
|
-
summary:
|
|
33528
|
-
priceLabel:
|
|
33529
|
-
image:
|
|
33530
|
-
url:
|
|
33531
|
-
alt:
|
|
33721
|
+
var productVariantOptionDisplaySchema = z58.object({
|
|
33722
|
+
id: z58.string(),
|
|
33723
|
+
label: z58.string(),
|
|
33724
|
+
soldOut: z58.boolean()
|
|
33725
|
+
});
|
|
33726
|
+
var productCardDisplaySchema = z58.object({
|
|
33727
|
+
productId: z58.string(),
|
|
33728
|
+
title: z58.string(),
|
|
33729
|
+
path: z58.string().nullable(),
|
|
33730
|
+
summary: z58.string().nullable(),
|
|
33731
|
+
priceLabel: z58.string().nullable(),
|
|
33732
|
+
image: z58.object({
|
|
33733
|
+
url: z58.string(),
|
|
33734
|
+
alt: z58.string().nullable()
|
|
33532
33735
|
}).nullable(),
|
|
33533
|
-
variantOptions:
|
|
33534
|
-
selectedVariantId:
|
|
33535
|
-
selectionLabel:
|
|
33536
|
-
actionLabel:
|
|
33537
|
-
soldOut:
|
|
33538
|
-
});
|
|
33539
|
-
var productListDisplaySchema =
|
|
33540
|
-
kind:
|
|
33541
|
-
state:
|
|
33542
|
-
heading:
|
|
33543
|
-
className:
|
|
33544
|
-
layout:
|
|
33545
|
-
columns:
|
|
33546
|
-
emptyMessage:
|
|
33547
|
-
cards:
|
|
33548
|
-
});
|
|
33549
|
-
var productDetailDisplaySchema =
|
|
33550
|
-
|
|
33551
|
-
kind:
|
|
33552
|
-
state:
|
|
33553
|
-
heading:
|
|
33554
|
-
className:
|
|
33555
|
-
emptyMessage:
|
|
33736
|
+
variantOptions: z58.array(productVariantOptionDisplaySchema),
|
|
33737
|
+
selectedVariantId: z58.string().nullable(),
|
|
33738
|
+
selectionLabel: z58.string(),
|
|
33739
|
+
actionLabel: z58.string(),
|
|
33740
|
+
soldOut: z58.boolean()
|
|
33741
|
+
});
|
|
33742
|
+
var productListDisplaySchema = z58.object({
|
|
33743
|
+
kind: z58.literal("product-list"),
|
|
33744
|
+
state: z58.enum(["empty", "ready"]),
|
|
33745
|
+
heading: z58.string().nullable(),
|
|
33746
|
+
className: z58.string().nullable(),
|
|
33747
|
+
layout: z58.enum(["grid", "list"]),
|
|
33748
|
+
columns: z58.string(),
|
|
33749
|
+
emptyMessage: z58.string(),
|
|
33750
|
+
cards: z58.array(productCardDisplaySchema)
|
|
33751
|
+
});
|
|
33752
|
+
var productDetailDisplaySchema = z58.discriminatedUnion("state", [
|
|
33753
|
+
z58.object({
|
|
33754
|
+
kind: z58.literal("product-detail"),
|
|
33755
|
+
state: z58.literal("empty"),
|
|
33756
|
+
heading: z58.string().nullable(),
|
|
33757
|
+
className: z58.string().nullable(),
|
|
33758
|
+
emptyMessage: z58.string()
|
|
33556
33759
|
}),
|
|
33557
|
-
|
|
33558
|
-
kind:
|
|
33559
|
-
state:
|
|
33560
|
-
heading:
|
|
33561
|
-
className:
|
|
33562
|
-
title:
|
|
33563
|
-
priceLabel:
|
|
33564
|
-
summary:
|
|
33565
|
-
categoryLabel:
|
|
33566
|
-
gallery:
|
|
33567
|
-
url:
|
|
33568
|
-
alt:
|
|
33760
|
+
z58.object({
|
|
33761
|
+
kind: z58.literal("product-detail"),
|
|
33762
|
+
state: z58.literal("ready"),
|
|
33763
|
+
heading: z58.string().nullable(),
|
|
33764
|
+
className: z58.string().nullable(),
|
|
33765
|
+
title: z58.string(),
|
|
33766
|
+
priceLabel: z58.string(),
|
|
33767
|
+
summary: z58.string().nullable(),
|
|
33768
|
+
categoryLabel: z58.string().nullable(),
|
|
33769
|
+
gallery: z58.array(z58.object({
|
|
33770
|
+
url: z58.string(),
|
|
33771
|
+
alt: z58.string().nullable()
|
|
33569
33772
|
})),
|
|
33570
|
-
variantOptions:
|
|
33571
|
-
selectedVariantId:
|
|
33572
|
-
selectionLabel:
|
|
33573
|
-
actionLabel:
|
|
33574
|
-
soldOut:
|
|
33575
|
-
body:
|
|
33773
|
+
variantOptions: z58.array(productVariantOptionDisplaySchema),
|
|
33774
|
+
selectedVariantId: z58.string().nullable(),
|
|
33775
|
+
selectionLabel: z58.string(),
|
|
33776
|
+
actionLabel: z58.string(),
|
|
33777
|
+
soldOut: z58.boolean(),
|
|
33778
|
+
body: z58.unknown().nullable()
|
|
33576
33779
|
})
|
|
33577
33780
|
]);
|
|
33578
|
-
var passCardDisplaySchema =
|
|
33579
|
-
id:
|
|
33580
|
-
title:
|
|
33581
|
-
description:
|
|
33582
|
-
priceLabel:
|
|
33583
|
-
creditsLabel:
|
|
33584
|
-
perCreditLabel:
|
|
33585
|
-
validityLabel:
|
|
33586
|
-
actionLabel:
|
|
33587
|
-
});
|
|
33588
|
-
var membershipCardDisplaySchema =
|
|
33589
|
-
id:
|
|
33590
|
-
title:
|
|
33591
|
-
description:
|
|
33592
|
-
priceLabel:
|
|
33593
|
-
intervalLabel:
|
|
33594
|
-
actionLabel:
|
|
33595
|
-
});
|
|
33596
|
-
var passesMembershipsDisplaySchema =
|
|
33597
|
-
kind:
|
|
33598
|
-
state:
|
|
33599
|
-
className:
|
|
33600
|
-
layout:
|
|
33601
|
-
columns:
|
|
33602
|
-
emptyMessage:
|
|
33603
|
-
passesHeading:
|
|
33604
|
-
membershipsHeading:
|
|
33605
|
-
passes:
|
|
33606
|
-
memberships:
|
|
33607
|
-
});
|
|
33608
|
-
var cartLineDisplaySchema =
|
|
33609
|
-
key:
|
|
33610
|
-
title:
|
|
33611
|
-
priceLabel:
|
|
33612
|
-
quantity:
|
|
33613
|
-
quantityEditable:
|
|
33614
|
-
});
|
|
33615
|
-
var cartDisplaySchema =
|
|
33616
|
-
kind:
|
|
33617
|
-
state:
|
|
33618
|
-
heading:
|
|
33619
|
-
className:
|
|
33620
|
-
emptyMessage:
|
|
33621
|
-
supportText:
|
|
33622
|
-
items:
|
|
33623
|
-
subtotalLabel:
|
|
33624
|
-
checkoutButtonText:
|
|
33625
|
-
clearButtonText:
|
|
33626
|
-
});
|
|
33627
|
-
var checkoutDisplaySchema =
|
|
33628
|
-
kind:
|
|
33629
|
-
state:
|
|
33630
|
-
heading:
|
|
33631
|
-
className:
|
|
33632
|
-
message:
|
|
33633
|
-
submitButtonText:
|
|
33634
|
-
});
|
|
33635
|
-
var passesMembershipsHydrationSchema =
|
|
33636
|
-
passes:
|
|
33637
|
-
memberships:
|
|
33638
|
-
passPurchaseMode:
|
|
33639
|
-
});
|
|
33640
|
-
var productListHydrationSchema =
|
|
33641
|
-
products:
|
|
33642
|
-
showSummary:
|
|
33643
|
-
showPrices:
|
|
33644
|
-
addButtonText:
|
|
33645
|
-
});
|
|
33646
|
-
var productDetailHydrationSchema =
|
|
33647
|
-
products:
|
|
33648
|
-
productId:
|
|
33649
|
-
showSummary:
|
|
33650
|
-
showBody:
|
|
33651
|
-
addButtonText:
|
|
33652
|
-
});
|
|
33653
|
-
var cartHydrationSchema =
|
|
33654
|
-
emptyStateText:
|
|
33655
|
-
checkoutButtonText:
|
|
33656
|
-
clearButtonText:
|
|
33657
|
-
});
|
|
33658
|
-
var checkoutHydrationSchema =
|
|
33659
|
-
emptyStateText:
|
|
33660
|
-
submitButtonText:
|
|
33661
|
-
});
|
|
33662
|
-
var passesMembershipsRenderSchema =
|
|
33781
|
+
var passCardDisplaySchema = z58.object({
|
|
33782
|
+
id: z58.string(),
|
|
33783
|
+
title: z58.string(),
|
|
33784
|
+
description: z58.string().nullable(),
|
|
33785
|
+
priceLabel: z58.string(),
|
|
33786
|
+
creditsLabel: z58.string(),
|
|
33787
|
+
perCreditLabel: z58.string().nullable(),
|
|
33788
|
+
validityLabel: z58.string().nullable(),
|
|
33789
|
+
actionLabel: z58.string()
|
|
33790
|
+
});
|
|
33791
|
+
var membershipCardDisplaySchema = z58.object({
|
|
33792
|
+
id: z58.string(),
|
|
33793
|
+
title: z58.string(),
|
|
33794
|
+
description: z58.string().nullable(),
|
|
33795
|
+
priceLabel: z58.string(),
|
|
33796
|
+
intervalLabel: z58.string(),
|
|
33797
|
+
actionLabel: z58.string()
|
|
33798
|
+
});
|
|
33799
|
+
var passesMembershipsDisplaySchema = z58.object({
|
|
33800
|
+
kind: z58.literal("passes-memberships"),
|
|
33801
|
+
state: z58.enum(["empty", "ready"]),
|
|
33802
|
+
className: z58.string().nullable(),
|
|
33803
|
+
layout: z58.enum(["grid", "list"]),
|
|
33804
|
+
columns: z58.string(),
|
|
33805
|
+
emptyMessage: z58.string(),
|
|
33806
|
+
passesHeading: z58.string(),
|
|
33807
|
+
membershipsHeading: z58.string(),
|
|
33808
|
+
passes: z58.array(passCardDisplaySchema),
|
|
33809
|
+
memberships: z58.array(membershipCardDisplaySchema)
|
|
33810
|
+
});
|
|
33811
|
+
var cartLineDisplaySchema = z58.object({
|
|
33812
|
+
key: z58.string(),
|
|
33813
|
+
title: z58.string(),
|
|
33814
|
+
priceLabel: z58.string(),
|
|
33815
|
+
quantity: z58.number(),
|
|
33816
|
+
quantityEditable: z58.boolean()
|
|
33817
|
+
});
|
|
33818
|
+
var cartDisplaySchema = z58.object({
|
|
33819
|
+
kind: z58.literal("cart"),
|
|
33820
|
+
state: z58.enum(["empty", "ready"]),
|
|
33821
|
+
heading: z58.string().nullable(),
|
|
33822
|
+
className: z58.string().nullable(),
|
|
33823
|
+
emptyMessage: z58.string(),
|
|
33824
|
+
supportText: z58.string().nullable(),
|
|
33825
|
+
items: z58.array(cartLineDisplaySchema),
|
|
33826
|
+
subtotalLabel: z58.string().nullable(),
|
|
33827
|
+
checkoutButtonText: z58.string(),
|
|
33828
|
+
clearButtonText: z58.string()
|
|
33829
|
+
});
|
|
33830
|
+
var checkoutDisplaySchema = z58.object({
|
|
33831
|
+
kind: z58.literal("checkout"),
|
|
33832
|
+
state: z58.enum(["empty", "blocked", "ready"]),
|
|
33833
|
+
heading: z58.string().nullable(),
|
|
33834
|
+
className: z58.string().nullable(),
|
|
33835
|
+
message: z58.string().nullable(),
|
|
33836
|
+
submitButtonText: z58.string()
|
|
33837
|
+
});
|
|
33838
|
+
var passesMembershipsHydrationSchema = z58.object({
|
|
33839
|
+
passes: z58.array(publicPassProductSchema),
|
|
33840
|
+
memberships: z58.array(publicMembershipProductSchema),
|
|
33841
|
+
passPurchaseMode: z58.enum(["add_to_cart", "buy_now"])
|
|
33842
|
+
});
|
|
33843
|
+
var productListHydrationSchema = z58.object({
|
|
33844
|
+
products: z58.array(publicProductSchema),
|
|
33845
|
+
showSummary: z58.boolean(),
|
|
33846
|
+
showPrices: z58.boolean(),
|
|
33847
|
+
addButtonText: z58.string()
|
|
33848
|
+
});
|
|
33849
|
+
var productDetailHydrationSchema = z58.object({
|
|
33850
|
+
products: z58.array(publicProductSchema),
|
|
33851
|
+
productId: z58.string().nullable(),
|
|
33852
|
+
showSummary: z58.boolean(),
|
|
33853
|
+
showBody: z58.boolean(),
|
|
33854
|
+
addButtonText: z58.string()
|
|
33855
|
+
});
|
|
33856
|
+
var cartHydrationSchema = z58.object({
|
|
33857
|
+
emptyStateText: z58.string(),
|
|
33858
|
+
checkoutButtonText: z58.string(),
|
|
33859
|
+
clearButtonText: z58.string()
|
|
33860
|
+
});
|
|
33861
|
+
var checkoutHydrationSchema = z58.object({
|
|
33862
|
+
emptyStateText: z58.string(),
|
|
33863
|
+
submitButtonText: z58.string()
|
|
33864
|
+
});
|
|
33865
|
+
var passesMembershipsRenderSchema = z58.object({
|
|
33663
33866
|
display: passesMembershipsDisplaySchema,
|
|
33664
33867
|
hydration: passesMembershipsHydrationSchema
|
|
33665
33868
|
});
|
|
33666
|
-
var productListRenderSchema =
|
|
33869
|
+
var productListRenderSchema = z58.object({
|
|
33667
33870
|
display: productListDisplaySchema,
|
|
33668
33871
|
hydration: productListHydrationSchema
|
|
33669
33872
|
});
|
|
33670
|
-
var productDetailRenderSchema =
|
|
33873
|
+
var productDetailRenderSchema = z58.object({
|
|
33671
33874
|
display: productDetailDisplaySchema,
|
|
33672
33875
|
hydration: productDetailHydrationSchema
|
|
33673
33876
|
});
|
|
33674
|
-
var cartRenderSchema =
|
|
33877
|
+
var cartRenderSchema = z58.object({
|
|
33675
33878
|
display: cartDisplaySchema,
|
|
33676
33879
|
hydration: cartHydrationSchema
|
|
33677
33880
|
});
|
|
33678
|
-
var checkoutRenderSchema =
|
|
33881
|
+
var checkoutRenderSchema = z58.object({
|
|
33679
33882
|
display: checkoutDisplaySchema,
|
|
33680
33883
|
hydration: checkoutHydrationSchema
|
|
33681
33884
|
});
|
|
33682
33885
|
function resolveShowPricePerCredit(source) {
|
|
33683
33886
|
return source.showPricePerCredit ?? true;
|
|
33684
33887
|
}
|
|
33685
|
-
var shopIslandMetaCodec = createZodCodec(
|
|
33686
|
-
siteId:
|
|
33687
|
-
apiBaseUrl:
|
|
33888
|
+
var shopIslandMetaCodec = createZodCodec(z58.object({
|
|
33889
|
+
siteId: z58.string().optional(),
|
|
33890
|
+
apiBaseUrl: z58.string().optional(),
|
|
33688
33891
|
stage: previewStageSchema.optional()
|
|
33689
33892
|
}));
|
|
33690
33893
|
var shopIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl", "stage");
|
|
@@ -34062,9 +34265,9 @@ var shopBlockDefinition = {
|
|
|
34062
34265
|
runtime: shopBlockRuntime,
|
|
34063
34266
|
dataSchemas: {
|
|
34064
34267
|
// listPublicPasses returns { passes: [...] }
|
|
34065
|
-
passes:
|
|
34268
|
+
passes: z59.object({ passes: z59.array(publicPassProductSchema) }).optional(),
|
|
34066
34269
|
// listPublicMemberships returns { memberships: [...] }
|
|
34067
|
-
memberships:
|
|
34270
|
+
memberships: z59.object({ memberships: z59.array(publicMembershipProductSchema) }).optional()
|
|
34068
34271
|
},
|
|
34069
34272
|
dataLoaders: {
|
|
34070
34273
|
// Load passes for display
|
|
@@ -34087,7 +34290,7 @@ var shopBlockDefinition = {
|
|
|
34087
34290
|
};
|
|
34088
34291
|
|
|
34089
34292
|
// ../blocks/src/system/blocks/product-list.ts
|
|
34090
|
-
import { z as
|
|
34293
|
+
import { z as z60 } from "zod";
|
|
34091
34294
|
var productListManifest = createBlockManifest({
|
|
34092
34295
|
id: "block.product-list",
|
|
34093
34296
|
version: "1.0.0",
|
|
@@ -34220,7 +34423,7 @@ var productListBlockDefinition = {
|
|
|
34220
34423
|
}
|
|
34221
34424
|
}
|
|
34222
34425
|
};
|
|
34223
|
-
var productListDataSchema =
|
|
34426
|
+
var productListDataSchema = z60.object({
|
|
34224
34427
|
products: publicProductsResponseSchema.optional()
|
|
34225
34428
|
});
|
|
34226
34429
|
|
|
@@ -34481,72 +34684,72 @@ var checkoutBlockDefinition = {
|
|
|
34481
34684
|
};
|
|
34482
34685
|
|
|
34483
34686
|
// ../blocks/src/system/runtime/nodes/gifting.interactive.ts
|
|
34484
|
-
import { z as
|
|
34485
|
-
var publicGiftCardOfferSchema =
|
|
34486
|
-
id:
|
|
34487
|
-
kind:
|
|
34488
|
-
title:
|
|
34489
|
-
description:
|
|
34490
|
-
sortOrder:
|
|
34491
|
-
giftCard:
|
|
34492
|
-
fixedDenominations:
|
|
34493
|
-
customAmountEnabled:
|
|
34494
|
-
customAmountMinCents:
|
|
34495
|
-
customAmountMaxCents:
|
|
34687
|
+
import { z as z61 } from "zod";
|
|
34688
|
+
var publicGiftCardOfferSchema = z61.object({
|
|
34689
|
+
id: z61.string(),
|
|
34690
|
+
kind: z61.literal("gift_card"),
|
|
34691
|
+
title: z61.string(),
|
|
34692
|
+
description: z61.string().nullable(),
|
|
34693
|
+
sortOrder: z61.number().int(),
|
|
34694
|
+
giftCard: z61.object({
|
|
34695
|
+
fixedDenominations: z61.array(z61.number().int().positive()),
|
|
34696
|
+
customAmountEnabled: z61.boolean(),
|
|
34697
|
+
customAmountMinCents: z61.number().int().positive(),
|
|
34698
|
+
customAmountMaxCents: z61.number().int().positive()
|
|
34496
34699
|
}),
|
|
34497
|
-
voucher:
|
|
34498
|
-
});
|
|
34499
|
-
var publicVoucherOfferSchema =
|
|
34500
|
-
id:
|
|
34501
|
-
kind:
|
|
34502
|
-
title:
|
|
34503
|
-
description:
|
|
34504
|
-
sortOrder:
|
|
34505
|
-
giftCard:
|
|
34506
|
-
voucher:
|
|
34507
|
-
purchaseAmountCents:
|
|
34700
|
+
voucher: z61.null()
|
|
34701
|
+
});
|
|
34702
|
+
var publicVoucherOfferSchema = z61.object({
|
|
34703
|
+
id: z61.string(),
|
|
34704
|
+
kind: z61.literal("voucher"),
|
|
34705
|
+
title: z61.string(),
|
|
34706
|
+
description: z61.string().nullable(),
|
|
34707
|
+
sortOrder: z61.number().int(),
|
|
34708
|
+
giftCard: z61.null(),
|
|
34709
|
+
voucher: z61.object({
|
|
34710
|
+
purchaseAmountCents: z61.number().int().positive()
|
|
34508
34711
|
})
|
|
34509
34712
|
});
|
|
34510
|
-
var publicGiftingOffersResponseSchema =
|
|
34511
|
-
currency:
|
|
34512
|
-
giftCards:
|
|
34513
|
-
vouchers:
|
|
34713
|
+
var publicGiftingOffersResponseSchema = z61.object({
|
|
34714
|
+
currency: z61.string(),
|
|
34715
|
+
giftCards: z61.array(publicGiftCardOfferSchema),
|
|
34716
|
+
vouchers: z61.array(publicVoucherOfferSchema)
|
|
34514
34717
|
});
|
|
34515
|
-
var giftingSourceSchema =
|
|
34516
|
-
siteId:
|
|
34517
|
-
apiBaseUrl:
|
|
34718
|
+
var giftingSourceSchema = z61.object({
|
|
34719
|
+
siteId: z61.string().optional(),
|
|
34720
|
+
apiBaseUrl: z61.string().optional(),
|
|
34518
34721
|
offers: publicGiftingOffersResponseSchema.nullable().optional(),
|
|
34519
|
-
className:
|
|
34520
|
-
heading:
|
|
34521
|
-
intro:
|
|
34522
|
-
giftCardsHeading:
|
|
34523
|
-
vouchersHeading:
|
|
34524
|
-
emptyStateText:
|
|
34525
|
-
checkoutButtonText:
|
|
34526
|
-
successMessage:
|
|
34527
|
-
});
|
|
34528
|
-
var giftingDisplaySchema =
|
|
34529
|
-
kind:
|
|
34530
|
-
state:
|
|
34531
|
-
className:
|
|
34532
|
-
heading:
|
|
34533
|
-
intro:
|
|
34534
|
-
giftCardsHeading:
|
|
34535
|
-
vouchersHeading:
|
|
34536
|
-
emptyStateText:
|
|
34537
|
-
});
|
|
34538
|
-
var giftingHydrationSchema =
|
|
34722
|
+
className: z61.string().nullable().optional(),
|
|
34723
|
+
heading: z61.string().nullable().optional(),
|
|
34724
|
+
intro: z61.string().nullable().optional(),
|
|
34725
|
+
giftCardsHeading: z61.string().nullable().optional(),
|
|
34726
|
+
vouchersHeading: z61.string().nullable().optional(),
|
|
34727
|
+
emptyStateText: z61.string().nullable().optional(),
|
|
34728
|
+
checkoutButtonText: z61.string().nullable().optional(),
|
|
34729
|
+
successMessage: z61.string().nullable().optional()
|
|
34730
|
+
});
|
|
34731
|
+
var giftingDisplaySchema = z61.object({
|
|
34732
|
+
kind: z61.literal("gifting"),
|
|
34733
|
+
state: z61.literal("ready"),
|
|
34734
|
+
className: z61.string().nullable(),
|
|
34735
|
+
heading: z61.string(),
|
|
34736
|
+
intro: z61.string().nullable(),
|
|
34737
|
+
giftCardsHeading: z61.string(),
|
|
34738
|
+
vouchersHeading: z61.string(),
|
|
34739
|
+
emptyStateText: z61.string()
|
|
34740
|
+
});
|
|
34741
|
+
var giftingHydrationSchema = z61.object({
|
|
34539
34742
|
offers: publicGiftingOffersResponseSchema.nullable(),
|
|
34540
|
-
checkoutButtonText:
|
|
34541
|
-
successMessage:
|
|
34743
|
+
checkoutButtonText: z61.string(),
|
|
34744
|
+
successMessage: z61.string()
|
|
34542
34745
|
});
|
|
34543
|
-
var giftingRenderSchema =
|
|
34746
|
+
var giftingRenderSchema = z61.object({
|
|
34544
34747
|
display: giftingDisplaySchema,
|
|
34545
34748
|
hydration: giftingHydrationSchema
|
|
34546
34749
|
});
|
|
34547
|
-
var giftingIslandMetaCodec = createZodCodec(
|
|
34548
|
-
siteId:
|
|
34549
|
-
apiBaseUrl:
|
|
34750
|
+
var giftingIslandMetaCodec = createZodCodec(z61.object({
|
|
34751
|
+
siteId: z61.string().optional(),
|
|
34752
|
+
apiBaseUrl: z61.string().optional()
|
|
34550
34753
|
}));
|
|
34551
34754
|
var giftingIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
34552
34755
|
"siteId",
|
|
@@ -34717,7 +34920,61 @@ var giftingBlockDefinition = {
|
|
|
34717
34920
|
};
|
|
34718
34921
|
|
|
34719
34922
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
34720
|
-
import { z as
|
|
34923
|
+
import { z as z62 } from "zod";
|
|
34924
|
+
|
|
34925
|
+
// ../blocks/src/system/blocks/newsletter-signup-destination.ts
|
|
34926
|
+
function parseNewsletterSignupBlockId(value) {
|
|
34927
|
+
const trimmed = parseTrimmedString(value);
|
|
34928
|
+
return trimmed && BLOCK_ID_PATTERN.test(trimmed) ? trimmed : null;
|
|
34929
|
+
}
|
|
34930
|
+
function parseSignedNewsletterDestinationRef(value) {
|
|
34931
|
+
const trimmed = parseTrimmedString(value);
|
|
34932
|
+
return trimmed && SIGNED_DESTINATION_REF_PATTERN.test(trimmed) ? trimmed : null;
|
|
34933
|
+
}
|
|
34934
|
+
function parseNewsletterSignupDestinationProvider(value) {
|
|
34935
|
+
return value === "riverbank" || value === "mailchimp" ? value : null;
|
|
34936
|
+
}
|
|
34937
|
+
function buildNewsletterSignupBlockRef(blockId) {
|
|
34938
|
+
const parsed = parseNewsletterSignupBlockId(blockId);
|
|
34939
|
+
return parsed ? { tag: "block_ref", blockId: parsed } : null;
|
|
34940
|
+
}
|
|
34941
|
+
function normalizeNewsletterSignupEditorValuesForDestination(values) {
|
|
34942
|
+
const destinationProvider = parseNewsletterSignupDestinationProvider(values.destinationProvider) ?? "riverbank";
|
|
34943
|
+
if (destinationProvider === "mailchimp") {
|
|
34944
|
+
return {
|
|
34945
|
+
destinationProvider,
|
|
34946
|
+
mailchimpAudienceId: values.mailchimpAudienceId,
|
|
34947
|
+
mailchimpTags: values.mailchimpTags
|
|
34948
|
+
};
|
|
34949
|
+
}
|
|
34950
|
+
return {
|
|
34951
|
+
destinationProvider,
|
|
34952
|
+
listId: values.listId,
|
|
34953
|
+
tags: values.tags
|
|
34954
|
+
};
|
|
34955
|
+
}
|
|
34956
|
+
function deriveNewsletterSignupRuntimeSource(values) {
|
|
34957
|
+
const normalized = normalizeNewsletterSignupEditorValuesForDestination(values);
|
|
34958
|
+
if (normalized.destinationProvider === "mailchimp") {
|
|
34959
|
+
return {
|
|
34960
|
+
destinationProvider: "mailchimp",
|
|
34961
|
+
listId: null,
|
|
34962
|
+
tags: null
|
|
34963
|
+
};
|
|
34964
|
+
}
|
|
34965
|
+
return {
|
|
34966
|
+
destinationProvider: "riverbank",
|
|
34967
|
+
listId: parseTrimmedString(normalized.listId),
|
|
34968
|
+
tags: parseTrimmedString(normalized.tags)
|
|
34969
|
+
};
|
|
34970
|
+
}
|
|
34971
|
+
var BLOCK_ID_PATTERN = /^[A-Za-z0-9._:-]{1,200}$/;
|
|
34972
|
+
var SIGNED_DESTINATION_REF_PATTERN = /^[A-Za-z0-9._~-]{16,1000}$/;
|
|
34973
|
+
function parseTrimmedString(value) {
|
|
34974
|
+
if (typeof value !== "string") return null;
|
|
34975
|
+
const trimmed = value.trim();
|
|
34976
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
34977
|
+
}
|
|
34721
34978
|
|
|
34722
34979
|
// ../blocks/src/system/runtime/nodes/newsletter-form.types.ts
|
|
34723
34980
|
function getPresetFields(preset2, options) {
|
|
@@ -34770,49 +35027,65 @@ function withOptionalPhone(fields3, includePhone) {
|
|
|
34770
35027
|
}
|
|
34771
35028
|
|
|
34772
35029
|
// ../blocks/src/system/runtime/nodes/newsletter-form.interactive.ts
|
|
34773
|
-
var newsletterPresetSchema =
|
|
34774
|
-
var
|
|
34775
|
-
|
|
34776
|
-
|
|
34777
|
-
|
|
34778
|
-
|
|
34779
|
-
|
|
34780
|
-
|
|
34781
|
-
|
|
34782
|
-
|
|
34783
|
-
|
|
34784
|
-
|
|
35030
|
+
var newsletterPresetSchema = z62.enum(["emailOnly", "emailName", "emailFirstLast", "emailNameCompany"]);
|
|
35031
|
+
var newsletterDestinationProviderSchema = z62.enum(["riverbank", "mailchimp"]);
|
|
35032
|
+
var newsletterFieldSchema = z62.object({
|
|
35033
|
+
id: z62.string(),
|
|
35034
|
+
type: z62.enum(["email", "text"]),
|
|
35035
|
+
label: z62.string(),
|
|
35036
|
+
required: z62.boolean(),
|
|
35037
|
+
placeholder: z62.string().optional()
|
|
35038
|
+
});
|
|
35039
|
+
var newsletterSignupBlockIdSchema = z62.string().trim().min(1).transform(parseRequiredNewsletterSignupBlockId);
|
|
35040
|
+
var signedNewsletterDestinationRefSchema = z62.string().trim().min(1).transform(parseRequiredSignedNewsletterDestinationRef);
|
|
35041
|
+
var newsletterPublicDestinationRefSchema = z62.discriminatedUnion("tag", [
|
|
35042
|
+
z62.object({
|
|
35043
|
+
tag: z62.literal("block_ref"),
|
|
35044
|
+
blockId: newsletterSignupBlockIdSchema
|
|
35045
|
+
}),
|
|
35046
|
+
z62.object({
|
|
35047
|
+
tag: z62.literal("signed_destination_ref"),
|
|
35048
|
+
token: signedNewsletterDestinationRefSchema
|
|
35049
|
+
})
|
|
35050
|
+
]);
|
|
35051
|
+
var newsletterSourceSchema = z62.object({
|
|
35052
|
+
blockId: z62.string().nullable().optional(),
|
|
35053
|
+
siteId: z62.string().optional(),
|
|
35054
|
+
apiBaseUrl: z62.string().optional(),
|
|
35055
|
+
listId: z62.string().nullable().optional(),
|
|
35056
|
+
destinationProvider: newsletterDestinationProviderSchema.nullable().optional(),
|
|
34785
35057
|
preset: newsletterPresetSchema.optional(),
|
|
34786
|
-
includePhone:
|
|
34787
|
-
buttonLabel:
|
|
34788
|
-
successMessage:
|
|
34789
|
-
privacyNote:
|
|
34790
|
-
tags:
|
|
34791
|
-
spamProtectionEnabled:
|
|
34792
|
-
className:
|
|
34793
|
-
});
|
|
34794
|
-
var newsletterDisplaySchema =
|
|
34795
|
-
kind:
|
|
34796
|
-
className:
|
|
34797
|
-
buttonLabel:
|
|
34798
|
-
successMessage:
|
|
34799
|
-
privacyNote:
|
|
34800
|
-
fields:
|
|
34801
|
-
});
|
|
34802
|
-
var newsletterHydrationSchema =
|
|
34803
|
-
|
|
35058
|
+
includePhone: z62.boolean().optional(),
|
|
35059
|
+
buttonLabel: z62.string().nullable().optional(),
|
|
35060
|
+
successMessage: z62.string().nullable().optional(),
|
|
35061
|
+
privacyNote: z62.string().nullable().optional(),
|
|
35062
|
+
tags: z62.string().nullable().optional(),
|
|
35063
|
+
spamProtectionEnabled: z62.boolean().optional(),
|
|
35064
|
+
className: z62.string().nullable().optional()
|
|
35065
|
+
});
|
|
35066
|
+
var newsletterDisplaySchema = z62.object({
|
|
35067
|
+
kind: z62.literal("newsletter-form"),
|
|
35068
|
+
className: z62.string().nullable(),
|
|
35069
|
+
buttonLabel: z62.string(),
|
|
35070
|
+
successMessage: z62.string().nullable(),
|
|
35071
|
+
privacyNote: z62.string().nullable(),
|
|
35072
|
+
fields: z62.array(newsletterFieldSchema)
|
|
35073
|
+
});
|
|
35074
|
+
var newsletterHydrationSchema = z62.object({
|
|
35075
|
+
destinationRef: newsletterPublicDestinationRefSchema.nullable().optional(),
|
|
35076
|
+
listId: z62.string().nullable().optional(),
|
|
34804
35077
|
preset: newsletterPresetSchema,
|
|
34805
|
-
includePhone:
|
|
34806
|
-
tags:
|
|
34807
|
-
spamProtectionEnabled:
|
|
35078
|
+
includePhone: z62.boolean(),
|
|
35079
|
+
tags: z62.string().nullable().optional(),
|
|
35080
|
+
spamProtectionEnabled: z62.boolean().optional()
|
|
34808
35081
|
});
|
|
34809
|
-
var newsletterRenderSchema =
|
|
35082
|
+
var newsletterRenderSchema = z62.object({
|
|
34810
35083
|
display: newsletterDisplaySchema,
|
|
34811
35084
|
hydration: newsletterHydrationSchema
|
|
34812
35085
|
});
|
|
34813
|
-
var newsletterIslandMetaCodec = createZodCodec(
|
|
34814
|
-
siteId:
|
|
34815
|
-
apiBaseUrl:
|
|
35086
|
+
var newsletterIslandMetaCodec = createZodCodec(z62.object({
|
|
35087
|
+
siteId: z62.string().optional(),
|
|
35088
|
+
apiBaseUrl: z62.string().optional()
|
|
34816
35089
|
}));
|
|
34817
35090
|
var newsletterIslandMetaKeys = defineInteractiveIslandMetaKeys("siteId", "apiBaseUrl");
|
|
34818
35091
|
function buildNewsletterDisplay(source) {
|
|
@@ -34833,16 +35106,20 @@ var newsletterFormBlockRuntime = defineProgressiveBlockRuntime({
|
|
|
34833
35106
|
source: createZodCodec(newsletterSourceSchema),
|
|
34834
35107
|
render: createZodCodec(newsletterRenderSchema)
|
|
34835
35108
|
},
|
|
34836
|
-
buildRender: (source) =>
|
|
34837
|
-
|
|
34838
|
-
|
|
34839
|
-
|
|
34840
|
-
|
|
34841
|
-
|
|
34842
|
-
|
|
34843
|
-
|
|
34844
|
-
|
|
34845
|
-
|
|
35109
|
+
buildRender: (source) => {
|
|
35110
|
+
const runtimeSource = deriveNewsletterSignupRuntimeSource(source);
|
|
35111
|
+
return {
|
|
35112
|
+
display: buildNewsletterDisplay(source),
|
|
35113
|
+
hydration: {
|
|
35114
|
+
destinationRef: buildNewsletterSignupBlockRef(source.blockId),
|
|
35115
|
+
listId: runtimeSource.listId,
|
|
35116
|
+
preset: source.preset ?? "emailOnly",
|
|
35117
|
+
includePhone: source.includePhone ?? false,
|
|
35118
|
+
tags: runtimeSource.tags,
|
|
35119
|
+
spamProtectionEnabled: source.spamProtectionEnabled
|
|
35120
|
+
}
|
|
35121
|
+
};
|
|
35122
|
+
}
|
|
34846
35123
|
});
|
|
34847
35124
|
var newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
|
|
34848
35125
|
runtime: newsletterFormBlockRuntime,
|
|
@@ -34854,6 +35131,20 @@ var newsletterFormInteractiveIslandPropsCodec = createInteractiveIslandCodec({
|
|
|
34854
35131
|
apiBaseUrl: value.apiBaseUrl
|
|
34855
35132
|
})
|
|
34856
35133
|
});
|
|
35134
|
+
function parseRequiredNewsletterSignupBlockId(value) {
|
|
35135
|
+
const parsed = parseNewsletterSignupBlockId(value);
|
|
35136
|
+
if (!parsed) {
|
|
35137
|
+
throw new Error("Newsletter signup block destination ref requires blockId");
|
|
35138
|
+
}
|
|
35139
|
+
return parsed;
|
|
35140
|
+
}
|
|
35141
|
+
function parseRequiredSignedNewsletterDestinationRef(value) {
|
|
35142
|
+
const parsed = parseSignedNewsletterDestinationRef(value);
|
|
35143
|
+
if (!parsed) {
|
|
35144
|
+
throw new Error("Newsletter signup signed destination ref requires token");
|
|
35145
|
+
}
|
|
35146
|
+
return parsed;
|
|
35147
|
+
}
|
|
34857
35148
|
|
|
34858
35149
|
// ../blocks/src/system/blocks/newsletter-signup.ts
|
|
34859
35150
|
var stackedComposition = composeFragments([
|
|
@@ -34933,23 +35224,23 @@ var newsletterSignupBlockDefinition = {
|
|
|
34933
35224
|
};
|
|
34934
35225
|
|
|
34935
35226
|
// ../blocks/src/system/blocks/team-members.ts
|
|
34936
|
-
import { z as
|
|
35227
|
+
import { z as z63 } from "zod";
|
|
34937
35228
|
var ITEM_NAME2 = "member";
|
|
34938
35229
|
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
34939
35230
|
message: "Team member photos must be image media"
|
|
34940
35231
|
}).nullable();
|
|
34941
|
-
var teamMemberDataSchema =
|
|
34942
|
-
_type:
|
|
34943
|
-
id:
|
|
34944
|
-
name:
|
|
34945
|
-
role:
|
|
34946
|
-
roleLabel:
|
|
34947
|
-
bio:
|
|
34948
|
-
summary:
|
|
35232
|
+
var teamMemberDataSchema = z63.object({
|
|
35233
|
+
_type: z63.literal("teamMember"),
|
|
35234
|
+
id: z63.string(),
|
|
35235
|
+
name: z63.string(),
|
|
35236
|
+
role: z63.string().nullable(),
|
|
35237
|
+
roleLabel: z63.string().nullable(),
|
|
35238
|
+
bio: z63.string().nullable(),
|
|
35239
|
+
summary: z63.string().nullable(),
|
|
34949
35240
|
photo: teamMemberPhotoSchema,
|
|
34950
|
-
profilePath:
|
|
35241
|
+
profilePath: z63.string().nullable()
|
|
34951
35242
|
});
|
|
34952
|
-
var teamMembersDataSchema =
|
|
35243
|
+
var teamMembersDataSchema = z63.array(teamMemberDataSchema);
|
|
34953
35244
|
var dynamicSourceWhen = { equals: "site_staff" };
|
|
34954
35245
|
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
34955
35246
|
var headingNode = text(
|
|
@@ -37647,34 +37938,34 @@ import { Fragment, jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
|
|
|
37647
37938
|
var MAX_FONT_UPLOAD_BYTES = 5 * 1024 * 1024;
|
|
37648
37939
|
|
|
37649
37940
|
// ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
|
|
37650
|
-
import { z as
|
|
37651
|
-
var themeBridgeConfigSchema =
|
|
37652
|
-
tokens:
|
|
37653
|
-
typography:
|
|
37654
|
-
headingFamily:
|
|
37655
|
-
bodyFamily:
|
|
37656
|
-
headingWeight:
|
|
37657
|
-
bodyWeight:
|
|
37941
|
+
import { z as z64 } from "zod";
|
|
37942
|
+
var themeBridgeConfigSchema = z64.object({
|
|
37943
|
+
tokens: z64.record(z64.string(), z64.string()),
|
|
37944
|
+
typography: z64.object({
|
|
37945
|
+
headingFamily: z64.string().optional(),
|
|
37946
|
+
bodyFamily: z64.string().optional(),
|
|
37947
|
+
headingWeight: z64.number().optional(),
|
|
37948
|
+
bodyWeight: z64.number().optional()
|
|
37658
37949
|
}).optional(),
|
|
37659
|
-
spacing:
|
|
37660
|
-
corners:
|
|
37661
|
-
shadows:
|
|
37662
|
-
components:
|
|
37663
|
-
buttons:
|
|
37664
|
-
|
|
37665
|
-
|
|
37666
|
-
variants:
|
|
37950
|
+
spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
|
|
37951
|
+
corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
|
|
37952
|
+
shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
|
|
37953
|
+
components: z64.object({
|
|
37954
|
+
buttons: z64.union([
|
|
37955
|
+
z64.boolean(),
|
|
37956
|
+
z64.object({
|
|
37957
|
+
variants: z64.array(z64.enum(["primary", "secondary", "outline", "ghost"])).optional()
|
|
37667
37958
|
})
|
|
37668
37959
|
]).optional(),
|
|
37669
|
-
cards:
|
|
37670
|
-
|
|
37671
|
-
|
|
37672
|
-
variants:
|
|
37960
|
+
cards: z64.union([
|
|
37961
|
+
z64.boolean(),
|
|
37962
|
+
z64.object({
|
|
37963
|
+
variants: z64.array(z64.enum(["default", "elevated", "outlined"])).optional()
|
|
37673
37964
|
})
|
|
37674
37965
|
]).optional(),
|
|
37675
|
-
inputs:
|
|
37966
|
+
inputs: z64.boolean().optional()
|
|
37676
37967
|
}).optional(),
|
|
37677
|
-
overrides:
|
|
37968
|
+
overrides: z64.record(z64.string(), z64.string()).optional()
|
|
37678
37969
|
}).passthrough();
|
|
37679
37970
|
|
|
37680
37971
|
// ../theme-core/src/siteChrome.tsx
|
|
@@ -37700,17 +37991,17 @@ var SUPPORTED_LOADER_ENDPOINTS = [
|
|
|
37700
37991
|
function unsafeRetypeZodSchema(schema) {
|
|
37701
37992
|
return schema;
|
|
37702
37993
|
}
|
|
37703
|
-
var navIdListSchema =
|
|
37994
|
+
var navIdListSchema = z65.preprocess((value) => {
|
|
37704
37995
|
if (!Array.isArray(value)) return void 0;
|
|
37705
37996
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
37706
37997
|
return filtered.length > 0 ? filtered : void 0;
|
|
37707
|
-
},
|
|
37708
|
-
var dashboardNavVisibilityBaseSchema =
|
|
37709
|
-
mode:
|
|
37998
|
+
}, z65.array(z65.string()).max(200).optional());
|
|
37999
|
+
var dashboardNavVisibilityBaseSchema = z65.object({
|
|
38000
|
+
mode: z65.enum(["augment", "restrict"]).optional(),
|
|
37710
38001
|
allowIds: navIdListSchema,
|
|
37711
38002
|
denyIds: navIdListSchema
|
|
37712
38003
|
}).strip();
|
|
37713
|
-
var dashboardNavVisibilityRolesSchema =
|
|
38004
|
+
var dashboardNavVisibilityRolesSchema = z65.object({
|
|
37714
38005
|
administrator: dashboardNavVisibilityBaseSchema.optional(),
|
|
37715
38006
|
editor: dashboardNavVisibilityBaseSchema.optional(),
|
|
37716
38007
|
team_member: dashboardNavVisibilityBaseSchema.optional()
|
|
@@ -37718,63 +38009,63 @@ var dashboardNavVisibilityRolesSchema = z64.object({
|
|
|
37718
38009
|
var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
|
|
37719
38010
|
roles: dashboardNavVisibilityRolesSchema
|
|
37720
38011
|
}).strip();
|
|
37721
|
-
var dashboardNavigationConfigSchema =
|
|
38012
|
+
var dashboardNavigationConfigSchema = z65.object({
|
|
37722
38013
|
siteNav: dashboardNavVisibilitySchema.optional(),
|
|
37723
38014
|
settingsNav: dashboardNavVisibilitySchema.optional()
|
|
37724
38015
|
}).strip();
|
|
37725
|
-
var dashboardConfigSchema =
|
|
37726
|
-
previewEditingEnabled:
|
|
38016
|
+
var dashboardConfigSchema = z65.object({
|
|
38017
|
+
previewEditingEnabled: z65.boolean().optional(),
|
|
37727
38018
|
navigation: dashboardNavigationConfigSchema.optional()
|
|
37728
38019
|
}).strip();
|
|
37729
38020
|
var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
|
|
37730
38021
|
var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
|
|
37731
|
-
var sdkLoaderEndpointSchema =
|
|
37732
|
-
var loaderFallbackScalarSchema =
|
|
37733
|
-
|
|
37734
|
-
|
|
37735
|
-
|
|
37736
|
-
|
|
38022
|
+
var sdkLoaderEndpointSchema = z65.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
38023
|
+
var loaderFallbackScalarSchema = z65.union([
|
|
38024
|
+
z65.string(),
|
|
38025
|
+
z65.number(),
|
|
38026
|
+
z65.boolean(),
|
|
38027
|
+
z65.null()
|
|
37737
38028
|
]);
|
|
37738
|
-
var loaderParamBindingSchema =
|
|
37739
|
-
$bind:
|
|
37740
|
-
from:
|
|
38029
|
+
var loaderParamBindingSchema = z65.object({
|
|
38030
|
+
$bind: z65.object({
|
|
38031
|
+
from: z65.string().min(1, "Binding path is required"),
|
|
37741
38032
|
fallback: loaderFallbackScalarSchema.optional()
|
|
37742
38033
|
})
|
|
37743
38034
|
});
|
|
37744
|
-
var loaderParamValueSchema =
|
|
37745
|
-
|
|
37746
|
-
|
|
37747
|
-
|
|
38035
|
+
var loaderParamValueSchema = z65.union([
|
|
38036
|
+
z65.string(),
|
|
38037
|
+
z65.number(),
|
|
38038
|
+
z65.boolean(),
|
|
37748
38039
|
loaderParamBindingSchema
|
|
37749
38040
|
]);
|
|
37750
|
-
var sdkConfigLoaderSchema =
|
|
38041
|
+
var sdkConfigLoaderSchema = z65.object({
|
|
37751
38042
|
endpoint: sdkLoaderEndpointSchema,
|
|
37752
|
-
params:
|
|
37753
|
-
mode:
|
|
38043
|
+
params: z65.record(z65.string(), loaderParamValueSchema),
|
|
38044
|
+
mode: z65.enum(["server", "client"]).default("server")
|
|
37754
38045
|
});
|
|
37755
|
-
var sdkDataLoadersSchema =
|
|
37756
|
-
var sdkCustomBlockIdSchema =
|
|
38046
|
+
var sdkDataLoadersSchema = z65.record(z65.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
|
|
38047
|
+
var sdkCustomBlockIdSchema = z65.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
37757
38048
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
37758
38049
|
}).transform((value) => value);
|
|
37759
|
-
var sdkCustomBlockInputSchema =
|
|
38050
|
+
var sdkCustomBlockInputSchema = z65.object({
|
|
37760
38051
|
id: sdkCustomBlockIdSchema,
|
|
37761
|
-
title:
|
|
37762
|
-
titleSource:
|
|
37763
|
-
description:
|
|
38052
|
+
title: z65.string().min(1),
|
|
38053
|
+
titleSource: z65.union([z65.string().min(1), z65.array(z65.string().min(1)).min(1)]).optional(),
|
|
38054
|
+
description: z65.string().optional(),
|
|
37764
38055
|
category: blockCategoryEnum,
|
|
37765
|
-
icon:
|
|
37766
|
-
tags:
|
|
38056
|
+
icon: z65.string().optional(),
|
|
38057
|
+
tags: z65.array(z65.string()).optional(),
|
|
37767
38058
|
fields: fieldDefinitionInputSchema.array().min(1),
|
|
37768
38059
|
dataLoaders: sdkDataLoadersSchema,
|
|
37769
38060
|
layout: NodeSchema.optional(),
|
|
37770
|
-
variants:
|
|
37771
|
-
defaultVariant:
|
|
37772
|
-
variantOptions:
|
|
37773
|
-
|
|
37774
|
-
|
|
37775
|
-
label:
|
|
37776
|
-
description:
|
|
37777
|
-
icon:
|
|
38061
|
+
variants: z65.record(z65.string().min(1), NodeSchema).optional(),
|
|
38062
|
+
defaultVariant: z65.string().min(1).optional(),
|
|
38063
|
+
variantOptions: z65.record(
|
|
38064
|
+
z65.string().min(1),
|
|
38065
|
+
z65.object({
|
|
38066
|
+
label: z65.string().min(1).optional(),
|
|
38067
|
+
description: z65.string().min(1).optional(),
|
|
38068
|
+
icon: z65.string().min(1).optional()
|
|
37778
38069
|
})
|
|
37779
38070
|
).optional(),
|
|
37780
38071
|
previewCustomize: previewCustomizeManifestCurationSchema.optional()
|
|
@@ -37785,7 +38076,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37785
38076
|
const exists = data.fields.some((field) => field.id === source);
|
|
37786
38077
|
if (!exists) {
|
|
37787
38078
|
ctx.addIssue({
|
|
37788
|
-
code:
|
|
38079
|
+
code: z65.ZodIssueCode.custom,
|
|
37789
38080
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
37790
38081
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
37791
38082
|
});
|
|
@@ -37794,7 +38085,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37794
38085
|
}
|
|
37795
38086
|
if (data.layout && data.variants) {
|
|
37796
38087
|
ctx.addIssue({
|
|
37797
|
-
code:
|
|
38088
|
+
code: z65.ZodIssueCode.custom,
|
|
37798
38089
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
37799
38090
|
path: ["variants"]
|
|
37800
38091
|
});
|
|
@@ -37803,14 +38094,14 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37803
38094
|
const keys = Object.keys(data.variants);
|
|
37804
38095
|
if (keys.length === 0) {
|
|
37805
38096
|
ctx.addIssue({
|
|
37806
|
-
code:
|
|
38097
|
+
code: z65.ZodIssueCode.custom,
|
|
37807
38098
|
message: "`variants` must contain at least one variant key",
|
|
37808
38099
|
path: ["variants"]
|
|
37809
38100
|
});
|
|
37810
38101
|
}
|
|
37811
38102
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
37812
38103
|
ctx.addIssue({
|
|
37813
|
-
code:
|
|
38104
|
+
code: z65.ZodIssueCode.custom,
|
|
37814
38105
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
37815
38106
|
path: ["defaultVariant"]
|
|
37816
38107
|
});
|
|
@@ -37819,7 +38110,7 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37819
38110
|
for (const key of Object.keys(data.variantOptions)) {
|
|
37820
38111
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
37821
38112
|
ctx.addIssue({
|
|
37822
|
-
code:
|
|
38113
|
+
code: z65.ZodIssueCode.custom,
|
|
37823
38114
|
message: "`variantOptions` key must exist in `variants`",
|
|
37824
38115
|
path: ["variantOptions", key]
|
|
37825
38116
|
});
|
|
@@ -37828,78 +38119,78 @@ var sdkCustomBlockInputSchema = z64.object({
|
|
|
37828
38119
|
}
|
|
37829
38120
|
}
|
|
37830
38121
|
});
|
|
37831
|
-
var sdkBlockFieldExtensionInputSchema =
|
|
38122
|
+
var sdkBlockFieldExtensionInputSchema = z65.object({
|
|
37832
38123
|
fields: fieldDefinitionInputSchema.array().min(1)
|
|
37833
38124
|
});
|
|
37834
|
-
var sdkBlockFieldExtensionsInputSchema =
|
|
37835
|
-
|
|
38125
|
+
var sdkBlockFieldExtensionsInputSchema = z65.record(
|
|
38126
|
+
z65.string().min(1),
|
|
37836
38127
|
sdkBlockFieldExtensionInputSchema
|
|
37837
38128
|
);
|
|
37838
|
-
var sdkThemePaletteSchema =
|
|
37839
|
-
var sdkThemeConfigSchema =
|
|
38129
|
+
var sdkThemePaletteSchema = z65.record(z65.string(), z65.string());
|
|
38130
|
+
var sdkThemeConfigSchema = z65.object({
|
|
37840
38131
|
palette: sdkThemePaletteSchema
|
|
37841
38132
|
});
|
|
37842
|
-
var sdkSectionBackgroundSchema =
|
|
37843
|
-
id:
|
|
37844
|
-
label:
|
|
37845
|
-
token:
|
|
38133
|
+
var sdkSectionBackgroundSchema = z65.object({
|
|
38134
|
+
id: z65.string().min(1),
|
|
38135
|
+
label: z65.string().min(1),
|
|
38136
|
+
token: z65.string().min(1)
|
|
37846
38137
|
});
|
|
37847
|
-
var sdkSectionOptionsConfigSchema =
|
|
37848
|
-
backgroundColor:
|
|
37849
|
-
backgroundImage:
|
|
37850
|
-
backgroundGradient:
|
|
37851
|
-
spacing:
|
|
37852
|
-
textColor:
|
|
38138
|
+
var sdkSectionOptionsConfigSchema = z65.object({
|
|
38139
|
+
backgroundColor: z65.boolean().optional(),
|
|
38140
|
+
backgroundImage: z65.boolean().optional(),
|
|
38141
|
+
backgroundGradient: z65.boolean().optional(),
|
|
38142
|
+
spacing: z65.union([z65.array(z65.enum(["compact", "default", "spacious"])), z65.boolean()]).optional(),
|
|
38143
|
+
textColor: z65.boolean().optional()
|
|
37853
38144
|
});
|
|
37854
|
-
var sdkContainerOptionsConfigSchema =
|
|
37855
|
-
maxWidth:
|
|
37856
|
-
alignment:
|
|
38145
|
+
var sdkContainerOptionsConfigSchema = z65.object({
|
|
38146
|
+
maxWidth: z65.union([z65.array(z65.enum(["narrow", "default", "wide", "full"])), z65.boolean()]).optional(),
|
|
38147
|
+
alignment: z65.union([z65.array(z65.enum(["left", "center", "right"])), z65.boolean()]).optional()
|
|
37857
38148
|
});
|
|
37858
|
-
var sdkSiteStyleConfigSchema =
|
|
37859
|
-
sectionBackgrounds:
|
|
38149
|
+
var sdkSiteStyleConfigSchema = z65.object({
|
|
38150
|
+
sectionBackgrounds: z65.array(sdkSectionBackgroundSchema).optional(),
|
|
37860
38151
|
sectionOptions: sdkSectionOptionsConfigSchema.optional(),
|
|
37861
38152
|
containerOptions: sdkContainerOptionsConfigSchema.optional()
|
|
37862
38153
|
});
|
|
37863
|
-
var sdkSiteLayoutConfigSchema =
|
|
37864
|
-
footerBlocks:
|
|
37865
|
-
|
|
37866
|
-
id:
|
|
37867
|
-
kind:
|
|
37868
|
-
content:
|
|
38154
|
+
var sdkSiteLayoutConfigSchema = z65.object({
|
|
38155
|
+
footerBlocks: z65.array(
|
|
38156
|
+
z65.object({
|
|
38157
|
+
id: z65.string().min(1).optional(),
|
|
38158
|
+
kind: z65.string().min(1),
|
|
38159
|
+
content: z65.record(z65.string(), z65.unknown()).optional()
|
|
37869
38160
|
})
|
|
37870
38161
|
).optional()
|
|
37871
38162
|
});
|
|
37872
|
-
var sdkFieldSelectOptionSchema =
|
|
37873
|
-
value:
|
|
37874
|
-
label:
|
|
38163
|
+
var sdkFieldSelectOptionSchema = z65.object({
|
|
38164
|
+
value: z65.string(),
|
|
38165
|
+
label: z65.string()
|
|
37875
38166
|
});
|
|
37876
|
-
var sdkBlockFieldConfigSchema =
|
|
37877
|
-
options:
|
|
38167
|
+
var sdkBlockFieldConfigSchema = z65.object({
|
|
38168
|
+
options: z65.array(sdkFieldSelectOptionSchema).optional()
|
|
37878
38169
|
});
|
|
37879
|
-
var sdkBlockFieldOptionsMapSchema =
|
|
37880
|
-
|
|
38170
|
+
var sdkBlockFieldOptionsMapSchema = z65.record(
|
|
38171
|
+
z65.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
37881
38172
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
37882
38173
|
}),
|
|
37883
|
-
|
|
38174
|
+
z65.record(z65.string().min(1), sdkBlockFieldConfigSchema)
|
|
37884
38175
|
).optional();
|
|
37885
|
-
var sdkContentTypeTemplateConfigSchema =
|
|
37886
|
-
blocks:
|
|
38176
|
+
var sdkContentTypeTemplateConfigSchema = z65.object({
|
|
38177
|
+
blocks: z65.array(z65.unknown())
|
|
37887
38178
|
}).passthrough();
|
|
37888
|
-
var sdkContentTypeOrderingConfigSchema =
|
|
37889
|
-
mode:
|
|
38179
|
+
var sdkContentTypeOrderingConfigSchema = z65.object({
|
|
38180
|
+
mode: z65.enum(["default", "manual"]).optional()
|
|
37890
38181
|
}).optional();
|
|
37891
|
-
var sdkContentTypeConfigSchema =
|
|
37892
|
-
key:
|
|
37893
|
-
fields:
|
|
38182
|
+
var sdkContentTypeConfigSchema = z65.object({
|
|
38183
|
+
key: z65.string().min(1),
|
|
38184
|
+
fields: z65.array(z65.unknown()),
|
|
37894
38185
|
ordering: sdkContentTypeOrderingConfigSchema,
|
|
37895
38186
|
template: sdkContentTypeTemplateConfigSchema.nullable().optional()
|
|
37896
38187
|
}).passthrough();
|
|
37897
|
-
var sdkContentConfigSchema =
|
|
37898
|
-
contentTypes:
|
|
37899
|
-
pages:
|
|
37900
|
-
entries:
|
|
37901
|
-
navigationMenus:
|
|
37902
|
-
settings:
|
|
38188
|
+
var sdkContentConfigSchema = z65.object({
|
|
38189
|
+
contentTypes: z65.array(sdkContentTypeConfigSchema).optional(),
|
|
38190
|
+
pages: z65.array(z65.unknown()).optional(),
|
|
38191
|
+
entries: z65.array(z65.unknown()).optional(),
|
|
38192
|
+
navigationMenus: z65.array(z65.unknown()).optional(),
|
|
38193
|
+
settings: z65.unknown().optional()
|
|
37903
38194
|
}).passthrough();
|
|
37904
38195
|
var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
|
|
37905
38196
|
var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
|
|
@@ -37914,62 +38205,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
|
|
|
37914
38205
|
var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
|
|
37915
38206
|
var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
|
|
37916
38207
|
var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
|
|
37917
|
-
var sdkWorkflowIdSchema =
|
|
38208
|
+
var sdkWorkflowIdSchema = z65.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
37918
38209
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
37919
38210
|
});
|
|
37920
|
-
var sdkWorkflowEndpointSchema =
|
|
37921
|
-
var sdkWorkflowManualTriggerSchema =
|
|
37922
|
-
type:
|
|
38211
|
+
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 "/"' });
|
|
38212
|
+
var sdkWorkflowManualTriggerSchema = z65.object({
|
|
38213
|
+
type: z65.literal("manual")
|
|
37923
38214
|
}).strict();
|
|
37924
|
-
var sdkWorkflowTriggerFieldSchema =
|
|
38215
|
+
var sdkWorkflowTriggerFieldSchema = z65.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
|
|
37925
38216
|
message: "Workflow trigger fields must be top-level content field IDs, not paths"
|
|
37926
38217
|
});
|
|
37927
|
-
var sdkWorkflowFieldChangedConditionSchema =
|
|
38218
|
+
var sdkWorkflowFieldChangedConditionSchema = z65.object({
|
|
37928
38219
|
field: sdkWorkflowTriggerFieldSchema,
|
|
37929
|
-
changed:
|
|
38220
|
+
changed: z65.literal(true)
|
|
37930
38221
|
}).strict();
|
|
37931
|
-
var sdkWorkflowFieldEmptyConditionSchema =
|
|
38222
|
+
var sdkWorkflowFieldEmptyConditionSchema = z65.object({
|
|
37932
38223
|
field: sdkWorkflowTriggerFieldSchema,
|
|
37933
|
-
isEmpty:
|
|
38224
|
+
isEmpty: z65.boolean()
|
|
37934
38225
|
}).strict();
|
|
37935
|
-
var sdkWorkflowEntryDraftUpdatedTriggerSchema =
|
|
37936
|
-
type:
|
|
37937
|
-
when:
|
|
37938
|
-
|
|
38226
|
+
var sdkWorkflowEntryDraftUpdatedTriggerSchema = z65.object({
|
|
38227
|
+
type: z65.literal("entry.draft.updated"),
|
|
38228
|
+
when: z65.array(
|
|
38229
|
+
z65.union([
|
|
37939
38230
|
sdkWorkflowFieldChangedConditionSchema,
|
|
37940
38231
|
sdkWorkflowFieldEmptyConditionSchema
|
|
37941
38232
|
])
|
|
37942
38233
|
).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
|
|
37943
38234
|
}).strict();
|
|
37944
|
-
var sdkWorkflowTriggerSchema =
|
|
38235
|
+
var sdkWorkflowTriggerSchema = z65.discriminatedUnion("type", [
|
|
37945
38236
|
sdkWorkflowManualTriggerSchema,
|
|
37946
38237
|
sdkWorkflowEntryDraftUpdatedTriggerSchema
|
|
37947
38238
|
]);
|
|
37948
|
-
var sdkWorkflowConfirmationSchema =
|
|
37949
|
-
title:
|
|
37950
|
-
body:
|
|
38239
|
+
var sdkWorkflowConfirmationSchema = z65.object({
|
|
38240
|
+
title: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
38241
|
+
body: z65.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
37951
38242
|
}).strict();
|
|
37952
|
-
var sdkWorkflowConfigSchema =
|
|
38243
|
+
var sdkWorkflowConfigSchema = z65.object({
|
|
37953
38244
|
id: sdkWorkflowIdSchema,
|
|
37954
|
-
title:
|
|
37955
|
-
description:
|
|
37956
|
-
contentType:
|
|
38245
|
+
title: z65.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
38246
|
+
description: z65.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
38247
|
+
contentType: z65.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
37957
38248
|
endpoint: sdkWorkflowEndpointSchema,
|
|
37958
|
-
triggers:
|
|
38249
|
+
triggers: z65.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
37959
38250
|
confirmation: sdkWorkflowConfirmationSchema.optional()
|
|
37960
38251
|
}).strict();
|
|
37961
|
-
var sdkWorkflowsSchema =
|
|
38252
|
+
var sdkWorkflowsSchema = z65.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
37962
38253
|
const ids = workflows.map((workflow) => workflow.id);
|
|
37963
38254
|
return ids.length === new Set(ids).size;
|
|
37964
38255
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
37965
|
-
var riverbankSiteConfigInputSchema =
|
|
37966
|
-
siteId:
|
|
37967
|
-
previewUrl:
|
|
37968
|
-
liveUrl:
|
|
38256
|
+
var riverbankSiteConfigInputSchema = z65.object({
|
|
38257
|
+
siteId: z65.string().uuid(),
|
|
38258
|
+
previewUrl: z65.string().url().optional(),
|
|
38259
|
+
liveUrl: z65.string().url().optional(),
|
|
37969
38260
|
theme: sdkThemeConfigSchema.optional(),
|
|
37970
38261
|
styles: sdkSiteStyleConfigSchema.optional(),
|
|
37971
38262
|
layout: sdkSiteLayoutConfigSchema.optional(),
|
|
37972
|
-
customBlocks:
|
|
38263
|
+
customBlocks: z65.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
|
|
37973
38264
|
const ids = blocks.map((b) => b.id);
|
|
37974
38265
|
return ids.length === new Set(ids).size;
|
|
37975
38266
|
}, { message: "Block IDs must be unique" }).optional(),
|
|
@@ -37977,50 +38268,50 @@ var riverbankSiteConfigInputSchema = z64.object({
|
|
|
37977
38268
|
blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
|
|
37978
38269
|
workflows: sdkWorkflowsSchema,
|
|
37979
38270
|
content: sdkContentConfigSchema.optional(),
|
|
37980
|
-
contentDir:
|
|
37981
|
-
sync:
|
|
37982
|
-
existingEntries:
|
|
38271
|
+
contentDir: z65.string().optional(),
|
|
38272
|
+
sync: z65.object({
|
|
38273
|
+
existingEntries: z65.enum(["skip", "update"]).optional()
|
|
37983
38274
|
}).optional(),
|
|
37984
|
-
deploy:
|
|
37985
|
-
verifyCommand:
|
|
37986
|
-
prebuildOutput:
|
|
38275
|
+
deploy: z65.object({
|
|
38276
|
+
verifyCommand: z65.string().optional(),
|
|
38277
|
+
prebuildOutput: z65.string().optional()
|
|
37987
38278
|
}).optional(),
|
|
37988
|
-
themeSource:
|
|
37989
|
-
activeTheme:
|
|
37990
|
-
enablePortal:
|
|
38279
|
+
themeSource: z65.enum(["local", "cms"]).optional(),
|
|
38280
|
+
activeTheme: z65.string().optional(),
|
|
38281
|
+
enablePortal: z65.boolean().optional(),
|
|
37991
38282
|
dashboard: dashboardConfigSchema.optional()
|
|
37992
38283
|
}).strict();
|
|
37993
|
-
var pushSdkConfigBodySchema =
|
|
38284
|
+
var pushSdkConfigBodySchema = z65.object({
|
|
37994
38285
|
config: riverbankSiteConfigInputSchema,
|
|
37995
|
-
forceContentTypes:
|
|
38286
|
+
forceContentTypes: z65.boolean().optional()
|
|
37996
38287
|
}).strict();
|
|
37997
38288
|
|
|
37998
38289
|
// ../api/src/siteOnboarding.ts
|
|
37999
|
-
import { z as
|
|
38290
|
+
import { z as z66 } from "zod";
|
|
38000
38291
|
var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
|
|
38001
38292
|
configure_appointments: {
|
|
38002
38293
|
requirementId: "configure_appointments",
|
|
38003
38294
|
reason: "launch_anyway"
|
|
38004
38295
|
}
|
|
38005
38296
|
};
|
|
38006
|
-
var acknowledgeLaunchRequirementRequestSchema =
|
|
38297
|
+
var acknowledgeLaunchRequirementRequestSchema = z66.discriminatedUnion(
|
|
38007
38298
|
"requirementId",
|
|
38008
38299
|
[
|
|
38009
|
-
|
|
38010
|
-
requirementId:
|
|
38300
|
+
z66.object({
|
|
38301
|
+
requirementId: z66.literal("review_generated_site")
|
|
38011
38302
|
}),
|
|
38012
|
-
|
|
38013
|
-
requirementId:
|
|
38303
|
+
z66.object({
|
|
38304
|
+
requirementId: z66.literal(
|
|
38014
38305
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
|
|
38015
38306
|
),
|
|
38016
|
-
overrideReason:
|
|
38307
|
+
overrideReason: z66.literal(
|
|
38017
38308
|
LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
|
|
38018
38309
|
)
|
|
38019
38310
|
})
|
|
38020
38311
|
]
|
|
38021
38312
|
);
|
|
38022
|
-
var goLiveSiteRequestSchema =
|
|
38023
|
-
acceptExtraSiteCharge:
|
|
38313
|
+
var goLiveSiteRequestSchema = z66.object({
|
|
38314
|
+
acceptExtraSiteCharge: z66.boolean().optional()
|
|
38024
38315
|
});
|
|
38025
38316
|
|
|
38026
38317
|
// ../surfaces/src/index.ts
|
|
@@ -38104,7 +38395,7 @@ var COURSE_ENROLLMENT_REFUND_FAILED_CODES = [
|
|
|
38104
38395
|
];
|
|
38105
38396
|
|
|
38106
38397
|
// ../api/src/bookingVerticals.ts
|
|
38107
|
-
import { z as
|
|
38398
|
+
import { z as z67 } from "zod";
|
|
38108
38399
|
var VERTICAL_IDS = [
|
|
38109
38400
|
"yoga_wellness",
|
|
38110
38401
|
"fitness_pt",
|
|
@@ -38269,39 +38560,39 @@ function getSiteVerticalConfigIssues(rawConfig, config) {
|
|
|
38269
38560
|
}
|
|
38270
38561
|
return [...issues];
|
|
38271
38562
|
}
|
|
38272
|
-
var VerticalIdSchema =
|
|
38563
|
+
var VerticalIdSchema = z67.string().trim().transform((value, ctx) => {
|
|
38273
38564
|
const parsed = parseVerticalId(value);
|
|
38274
38565
|
if (!parsed) {
|
|
38275
38566
|
ctx.addIssue({
|
|
38276
|
-
code:
|
|
38567
|
+
code: z67.ZodIssueCode.custom,
|
|
38277
38568
|
message: "Unknown booking vertical"
|
|
38278
38569
|
});
|
|
38279
|
-
return
|
|
38570
|
+
return z67.NEVER;
|
|
38280
38571
|
}
|
|
38281
38572
|
return parsed;
|
|
38282
38573
|
});
|
|
38283
|
-
var VerticalPresetIdSchema =
|
|
38574
|
+
var VerticalPresetIdSchema = z67.string().trim().transform((value, ctx) => {
|
|
38284
38575
|
const parsed = parseVerticalPresetId(value);
|
|
38285
38576
|
if (!parsed) {
|
|
38286
38577
|
ctx.addIssue({
|
|
38287
|
-
code:
|
|
38578
|
+
code: z67.ZodIssueCode.custom,
|
|
38288
38579
|
message: "Unknown booking preset"
|
|
38289
38580
|
});
|
|
38290
|
-
return
|
|
38581
|
+
return z67.NEVER;
|
|
38291
38582
|
}
|
|
38292
38583
|
return parsed;
|
|
38293
38584
|
});
|
|
38294
|
-
var BookingVerticalConfigSchema =
|
|
38585
|
+
var BookingVerticalConfigSchema = z67.object({
|
|
38295
38586
|
verticalId: VerticalIdSchema.nullable(),
|
|
38296
|
-
selectedPresetIds:
|
|
38587
|
+
selectedPresetIds: z67.array(VerticalPresetIdSchema).max(20)
|
|
38297
38588
|
}).transform((value, ctx) => {
|
|
38298
38589
|
const resolved = resolveSiteVerticalBookingConfig(value);
|
|
38299
38590
|
if (resolved.kind === "invalid") {
|
|
38300
38591
|
ctx.addIssue({
|
|
38301
|
-
code:
|
|
38592
|
+
code: z67.ZodIssueCode.custom,
|
|
38302
38593
|
message: `Invalid booking vertical config: ${resolved.issues.join(", ")}`
|
|
38303
38594
|
});
|
|
38304
|
-
return
|
|
38595
|
+
return z67.NEVER;
|
|
38305
38596
|
}
|
|
38306
38597
|
return resolved.config;
|
|
38307
38598
|
});
|
|
@@ -38328,51 +38619,51 @@ function isRecord7(value) {
|
|
|
38328
38619
|
}
|
|
38329
38620
|
|
|
38330
38621
|
// ../api/src/appointmentSetup.ts
|
|
38331
|
-
import { z as
|
|
38622
|
+
import { z as z68 } from "zod";
|
|
38332
38623
|
var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
|
|
38333
|
-
var appointmentSetupRefSchema =
|
|
38334
|
-
|
|
38335
|
-
|
|
38624
|
+
var appointmentSetupRefSchema = z68.discriminatedUnion("kind", [
|
|
38625
|
+
z68.object({ kind: z68.literal("existing"), id: z68.string().min(1) }),
|
|
38626
|
+
z68.object({ kind: z68.literal("new"), draftId: z68.string().min(1) })
|
|
38336
38627
|
]);
|
|
38337
|
-
var appointmentSetupVenueChoiceSchema =
|
|
38338
|
-
|
|
38339
|
-
|
|
38340
|
-
|
|
38341
|
-
kind:
|
|
38342
|
-
draftId:
|
|
38343
|
-
title:
|
|
38344
|
-
description:
|
|
38345
|
-
timezone:
|
|
38346
|
-
addressJson:
|
|
38347
|
-
locationJson:
|
|
38628
|
+
var appointmentSetupVenueChoiceSchema = z68.discriminatedUnion("kind", [
|
|
38629
|
+
z68.object({ kind: z68.literal("none") }),
|
|
38630
|
+
z68.object({ kind: z68.literal("existing"), venueId: z68.string().min(1) }),
|
|
38631
|
+
z68.object({
|
|
38632
|
+
kind: z68.literal("create"),
|
|
38633
|
+
draftId: z68.string().min(1),
|
|
38634
|
+
title: z68.string().trim().min(1),
|
|
38635
|
+
description: z68.string().nullable(),
|
|
38636
|
+
timezone: z68.string().trim().min(1).nullable(),
|
|
38637
|
+
addressJson: z68.record(z68.string(), z68.unknown()),
|
|
38638
|
+
locationJson: z68.object({ lat: z68.number(), lng: z68.number() }).nullable()
|
|
38348
38639
|
})
|
|
38349
38640
|
]);
|
|
38350
|
-
var appointmentSetupPaymentDraftSchema =
|
|
38351
|
-
priceType:
|
|
38352
|
-
});
|
|
38353
|
-
var appointmentSetupServiceAssignmentDraftSchema =
|
|
38354
|
-
|
|
38355
|
-
|
|
38356
|
-
kind:
|
|
38357
|
-
resourceRefs:
|
|
38641
|
+
var appointmentSetupPaymentDraftSchema = z68.object({
|
|
38642
|
+
priceType: z68.union([z68.literal("free"), z68.literal("paid")])
|
|
38643
|
+
});
|
|
38644
|
+
var appointmentSetupServiceAssignmentDraftSchema = z68.discriminatedUnion("kind", [
|
|
38645
|
+
z68.object({ kind: z68.literal("all_practitioners") }),
|
|
38646
|
+
z68.object({
|
|
38647
|
+
kind: z68.literal("selected_practitioners"),
|
|
38648
|
+
resourceRefs: z68.array(appointmentSetupRefSchema)
|
|
38358
38649
|
})
|
|
38359
38650
|
]);
|
|
38360
|
-
var appointmentSetupServiceDraftSchema =
|
|
38651
|
+
var appointmentSetupServiceDraftSchema = z68.object({
|
|
38361
38652
|
ref: appointmentSetupRefSchema,
|
|
38362
|
-
title:
|
|
38363
|
-
description:
|
|
38364
|
-
durationMinutes:
|
|
38365
|
-
prepMinutes:
|
|
38366
|
-
cleanupMinutes:
|
|
38367
|
-
priceAmount:
|
|
38368
|
-
isActive:
|
|
38369
|
-
locationType:
|
|
38370
|
-
|
|
38371
|
-
|
|
38372
|
-
|
|
38653
|
+
title: z68.string().trim().min(1),
|
|
38654
|
+
description: z68.string().nullable(),
|
|
38655
|
+
durationMinutes: z68.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
|
|
38656
|
+
prepMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
38657
|
+
cleanupMinutes: z68.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
|
|
38658
|
+
priceAmount: z68.number().int().nonnegative().nullable(),
|
|
38659
|
+
isActive: z68.boolean(),
|
|
38660
|
+
locationType: z68.union([
|
|
38661
|
+
z68.literal("virtual"),
|
|
38662
|
+
z68.literal("in_person"),
|
|
38663
|
+
z68.literal("hybrid")
|
|
38373
38664
|
]),
|
|
38374
38665
|
venue: appointmentSetupVenueChoiceSchema,
|
|
38375
|
-
timezone:
|
|
38666
|
+
timezone: z68.string().trim().min(1).nullable(),
|
|
38376
38667
|
payment: appointmentSetupPaymentDraftSchema,
|
|
38377
38668
|
assignment: appointmentSetupServiceAssignmentDraftSchema
|
|
38378
38669
|
}).superRefine((service, ctx) => {
|
|
@@ -38391,49 +38682,49 @@ var appointmentSetupServiceDraftSchema = z67.object({
|
|
|
38391
38682
|
});
|
|
38392
38683
|
}
|
|
38393
38684
|
});
|
|
38394
|
-
var appointmentSetupPractitionerDraftSchema =
|
|
38685
|
+
var appointmentSetupPractitionerDraftSchema = z68.object({
|
|
38395
38686
|
ref: appointmentSetupRefSchema,
|
|
38396
|
-
displayName:
|
|
38397
|
-
bio:
|
|
38398
|
-
timezone:
|
|
38399
|
-
colorHex:
|
|
38400
|
-
});
|
|
38401
|
-
var appointmentSetupWeeklyWindowDraftSchema =
|
|
38402
|
-
weekday:
|
|
38403
|
-
startTime:
|
|
38404
|
-
endTime:
|
|
38405
|
-
});
|
|
38406
|
-
var appointmentSetupStartTimePolicyDraftSchema =
|
|
38407
|
-
|
|
38408
|
-
|
|
38409
|
-
kind:
|
|
38410
|
-
intervalMinutes:
|
|
38411
|
-
|
|
38412
|
-
|
|
38413
|
-
|
|
38414
|
-
|
|
38415
|
-
|
|
38416
|
-
|
|
38687
|
+
displayName: z68.string().trim().min(1),
|
|
38688
|
+
bio: z68.string().nullable(),
|
|
38689
|
+
timezone: z68.string().trim().min(1),
|
|
38690
|
+
colorHex: z68.string().nullable()
|
|
38691
|
+
});
|
|
38692
|
+
var appointmentSetupWeeklyWindowDraftSchema = z68.object({
|
|
38693
|
+
weekday: z68.number().int().min(0).max(6),
|
|
38694
|
+
startTime: z68.string(),
|
|
38695
|
+
endTime: z68.string()
|
|
38696
|
+
});
|
|
38697
|
+
var appointmentSetupStartTimePolicyDraftSchema = z68.discriminatedUnion("kind", [
|
|
38698
|
+
z68.object({ kind: z68.literal("automatic_spacing") }),
|
|
38699
|
+
z68.object({
|
|
38700
|
+
kind: z68.literal("regular_interval"),
|
|
38701
|
+
intervalMinutes: z68.union([
|
|
38702
|
+
z68.literal(10),
|
|
38703
|
+
z68.literal(15),
|
|
38704
|
+
z68.literal(20),
|
|
38705
|
+
z68.literal(30),
|
|
38706
|
+
z68.literal(45),
|
|
38707
|
+
z68.literal(60)
|
|
38417
38708
|
])
|
|
38418
38709
|
})
|
|
38419
38710
|
]);
|
|
38420
|
-
var appointmentSetupAvailabilityDraftSchema =
|
|
38421
|
-
kind:
|
|
38711
|
+
var appointmentSetupAvailabilityDraftSchema = z68.object({
|
|
38712
|
+
kind: z68.literal("weekly_windows"),
|
|
38422
38713
|
resourceRef: appointmentSetupRefSchema,
|
|
38423
38714
|
serviceRef: appointmentSetupRefSchema.nullable(),
|
|
38424
|
-
windows:
|
|
38715
|
+
windows: z68.array(appointmentSetupWeeklyWindowDraftSchema),
|
|
38425
38716
|
startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
|
|
38426
38717
|
});
|
|
38427
38718
|
var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
|
|
38428
38719
|
var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
|
|
38429
|
-
var appointmentSetupBookingNoticeSchema =
|
|
38430
|
-
minLeadMinutes:
|
|
38431
|
-
maxBookingNoticeMinutes:
|
|
38432
|
-
});
|
|
38433
|
-
var applyAppointmentSetupRequestSchema =
|
|
38434
|
-
services:
|
|
38435
|
-
practitioners:
|
|
38436
|
-
availability:
|
|
38720
|
+
var appointmentSetupBookingNoticeSchema = z68.object({
|
|
38721
|
+
minLeadMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
|
|
38722
|
+
maxBookingNoticeMinutes: z68.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
|
|
38723
|
+
});
|
|
38724
|
+
var applyAppointmentSetupRequestSchema = z68.object({
|
|
38725
|
+
services: z68.array(appointmentSetupServiceDraftSchema),
|
|
38726
|
+
practitioners: z68.array(appointmentSetupPractitionerDraftSchema),
|
|
38727
|
+
availability: z68.array(appointmentSetupAvailabilityDraftSchema),
|
|
38437
38728
|
bookingNotice: appointmentSetupBookingNoticeSchema
|
|
38438
38729
|
});
|
|
38439
38730
|
|
|
@@ -38466,24 +38757,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
|
|
|
38466
38757
|
];
|
|
38467
38758
|
|
|
38468
38759
|
// ../api/src/siteBanner.ts
|
|
38469
|
-
import { z as
|
|
38760
|
+
import { z as z69 } from "zod";
|
|
38470
38761
|
var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
|
|
38471
38762
|
var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
|
|
38472
38763
|
var SITE_BANNER_MAX_TEXT_LENGTH = 320;
|
|
38473
38764
|
var SITE_BANNER_MAX_PARAGRAPHS = 2;
|
|
38474
|
-
var siteBannerScopeSchema =
|
|
38475
|
-
var siteBannerToneSchema =
|
|
38476
|
-
var siteBannerBodySchema =
|
|
38477
|
-
var siteBannerCtaSchema =
|
|
38478
|
-
label:
|
|
38765
|
+
var siteBannerScopeSchema = z69.enum(SITE_BANNER_SCOPE_VALUES);
|
|
38766
|
+
var siteBannerToneSchema = z69.enum(SITE_BANNER_TONE_VALUES);
|
|
38767
|
+
var siteBannerBodySchema = z69.unknown().transform(unwrapRichTextValue);
|
|
38768
|
+
var siteBannerCtaSchema = z69.object({
|
|
38769
|
+
label: z69.string().trim().min(1),
|
|
38479
38770
|
link: linkPayloadSchema
|
|
38480
38771
|
});
|
|
38481
|
-
var siteBannerSettingsSchema =
|
|
38482
|
-
|
|
38483
|
-
enabled:
|
|
38772
|
+
var siteBannerSettingsSchema = z69.discriminatedUnion("enabled", [
|
|
38773
|
+
z69.object({
|
|
38774
|
+
enabled: z69.literal(false)
|
|
38484
38775
|
}),
|
|
38485
|
-
|
|
38486
|
-
enabled:
|
|
38776
|
+
z69.object({
|
|
38777
|
+
enabled: z69.literal(true),
|
|
38487
38778
|
scope: siteBannerScopeSchema,
|
|
38488
38779
|
tone: siteBannerToneSchema,
|
|
38489
38780
|
body: siteBannerBodySchema,
|
|
@@ -38497,7 +38788,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
|
|
|
38497
38788
|
const analysis = analyzeSiteBannerBody(value.body);
|
|
38498
38789
|
for (const issue of analysis.issues) {
|
|
38499
38790
|
ctx.addIssue({
|
|
38500
|
-
code:
|
|
38791
|
+
code: z69.ZodIssueCode.custom,
|
|
38501
38792
|
path: ["body"],
|
|
38502
38793
|
message: siteBannerBodyIssueMessage(issue)
|
|
38503
38794
|
});
|
|
@@ -38804,75 +39095,75 @@ function unsafeAsNavigationMenuIdentifier(identifier) {
|
|
|
38804
39095
|
var MAIN_NAVIGATION_MENU_IDENTIFIER = unsafeAsNavigationMenuIdentifier("main");
|
|
38805
39096
|
|
|
38806
39097
|
// ../api/src/aiPlayground.ts
|
|
38807
|
-
import { z as
|
|
38808
|
-
var Rfc6902PatchOp =
|
|
39098
|
+
import { z as z70 } from "zod";
|
|
39099
|
+
var Rfc6902PatchOp = z70.discriminatedUnion("op", [
|
|
38809
39100
|
// Standard RFC-6902 operations
|
|
38810
|
-
|
|
38811
|
-
op:
|
|
38812
|
-
path:
|
|
38813
|
-
value:
|
|
39101
|
+
z70.object({
|
|
39102
|
+
op: z70.literal("add"),
|
|
39103
|
+
path: z70.string(),
|
|
39104
|
+
value: z70.unknown()
|
|
38814
39105
|
}),
|
|
38815
|
-
|
|
38816
|
-
op:
|
|
38817
|
-
path:
|
|
39106
|
+
z70.object({
|
|
39107
|
+
op: z70.literal("remove"),
|
|
39108
|
+
path: z70.string()
|
|
38818
39109
|
}),
|
|
38819
|
-
|
|
38820
|
-
op:
|
|
38821
|
-
path:
|
|
38822
|
-
value:
|
|
39110
|
+
z70.object({
|
|
39111
|
+
op: z70.literal("replace"),
|
|
39112
|
+
path: z70.string(),
|
|
39113
|
+
value: z70.unknown()
|
|
38823
39114
|
}),
|
|
38824
|
-
|
|
38825
|
-
op:
|
|
38826
|
-
from:
|
|
38827
|
-
path:
|
|
39115
|
+
z70.object({
|
|
39116
|
+
op: z70.literal("move"),
|
|
39117
|
+
from: z70.string(),
|
|
39118
|
+
path: z70.string()
|
|
38828
39119
|
}),
|
|
38829
|
-
|
|
38830
|
-
op:
|
|
38831
|
-
from:
|
|
38832
|
-
path:
|
|
39120
|
+
z70.object({
|
|
39121
|
+
op: z70.literal("copy"),
|
|
39122
|
+
from: z70.string(),
|
|
39123
|
+
path: z70.string()
|
|
38833
39124
|
}),
|
|
38834
39125
|
// Block-level operations (Phase 2)
|
|
38835
|
-
|
|
38836
|
-
op:
|
|
38837
|
-
blockKind:
|
|
38838
|
-
afterBlockId:
|
|
38839
|
-
content:
|
|
38840
|
-
rationale:
|
|
39126
|
+
z70.object({
|
|
39127
|
+
op: z70.literal("add_block"),
|
|
39128
|
+
blockKind: z70.string(),
|
|
39129
|
+
afterBlockId: z70.string().nullable(),
|
|
39130
|
+
content: z70.record(z70.string(), z70.unknown()),
|
|
39131
|
+
rationale: z70.string()
|
|
38841
39132
|
}),
|
|
38842
|
-
|
|
38843
|
-
op:
|
|
38844
|
-
blockId:
|
|
38845
|
-
rationale:
|
|
39133
|
+
z70.object({
|
|
39134
|
+
op: z70.literal("delete_block"),
|
|
39135
|
+
blockId: z70.string(),
|
|
39136
|
+
rationale: z70.string()
|
|
38846
39137
|
}),
|
|
38847
|
-
|
|
38848
|
-
op:
|
|
38849
|
-
blockId:
|
|
38850
|
-
afterBlockId:
|
|
38851
|
-
rationale:
|
|
39138
|
+
z70.object({
|
|
39139
|
+
op: z70.literal("reorder_block"),
|
|
39140
|
+
blockId: z70.string(),
|
|
39141
|
+
afterBlockId: z70.string().nullable(),
|
|
39142
|
+
rationale: z70.string()
|
|
38852
39143
|
})
|
|
38853
39144
|
]);
|
|
38854
|
-
var PlaygroundProposeRequest =
|
|
38855
|
-
request:
|
|
39145
|
+
var PlaygroundProposeRequest = z70.object({
|
|
39146
|
+
request: z70.string().min(1).max(2e3)
|
|
38856
39147
|
});
|
|
38857
|
-
var MultiPagePatchEnvelope =
|
|
38858
|
-
pageId:
|
|
38859
|
-
blockId:
|
|
39148
|
+
var MultiPagePatchEnvelope = z70.object({
|
|
39149
|
+
pageId: z70.string(),
|
|
39150
|
+
blockId: z70.string().optional(),
|
|
38860
39151
|
// Not present for page-level ops
|
|
38861
|
-
blockKind:
|
|
38862
|
-
blockPurpose:
|
|
38863
|
-
ops:
|
|
38864
|
-
rationale:
|
|
38865
|
-
currentContent:
|
|
39152
|
+
blockKind: z70.string().optional(),
|
|
39153
|
+
blockPurpose: z70.string().optional().nullable(),
|
|
39154
|
+
ops: z70.array(Rfc6902PatchOp),
|
|
39155
|
+
rationale: z70.string(),
|
|
39156
|
+
currentContent: z70.record(z70.string(), z70.unknown()).optional()
|
|
38866
39157
|
});
|
|
38867
|
-
var MultiPageUpdateResponse =
|
|
38868
|
-
patches:
|
|
38869
|
-
assistantMessage:
|
|
38870
|
-
pagesModified:
|
|
38871
|
-
toolCallsUsed:
|
|
39158
|
+
var MultiPageUpdateResponse = z70.object({
|
|
39159
|
+
patches: z70.array(MultiPagePatchEnvelope),
|
|
39160
|
+
assistantMessage: z70.string(),
|
|
39161
|
+
pagesModified: z70.number(),
|
|
39162
|
+
toolCallsUsed: z70.number()
|
|
38872
39163
|
});
|
|
38873
39164
|
|
|
38874
39165
|
// src/config/content-validation.ts
|
|
38875
|
-
import { z as
|
|
39166
|
+
import { z as z71 } from "zod";
|
|
38876
39167
|
|
|
38877
39168
|
// src/types/block-kinds.ts
|
|
38878
39169
|
var SYSTEM_BLOCK_KINDS = [
|
|
@@ -39016,36 +39307,36 @@ function describeInvalidBindingTransform(transform) {
|
|
|
39016
39307
|
}
|
|
39017
39308
|
|
|
39018
39309
|
// src/config/content-validation.ts
|
|
39019
|
-
var jsonDataSchema =
|
|
39020
|
-
var contentTypeKeySchema =
|
|
39310
|
+
var jsonDataSchema = z71.record(z71.string(), z71.any());
|
|
39311
|
+
var contentTypeKeySchema = z71.string().min(1).regex(
|
|
39021
39312
|
/^[a-z][a-z0-9-]*$/,
|
|
39022
39313
|
"Key must be lowercase, start with a letter, and contain only letters, numbers, and hyphens"
|
|
39023
39314
|
);
|
|
39024
|
-
var templateConfigSchemaForward =
|
|
39025
|
-
blocks:
|
|
39026
|
-
|
|
39027
|
-
identifier:
|
|
39028
|
-
kind:
|
|
39029
|
-
scope:
|
|
39030
|
-
bindings:
|
|
39031
|
-
content:
|
|
39315
|
+
var templateConfigSchemaForward = z71.object({
|
|
39316
|
+
blocks: z71.array(
|
|
39317
|
+
z71.object({
|
|
39318
|
+
identifier: z71.string().min(1),
|
|
39319
|
+
kind: z71.string(),
|
|
39320
|
+
scope: z71.enum(["entry", "template"]),
|
|
39321
|
+
bindings: z71.record(z71.string(), z71.any()).optional(),
|
|
39322
|
+
content: z71.record(z71.string(), z71.any()).optional()
|
|
39032
39323
|
})
|
|
39033
39324
|
)
|
|
39034
39325
|
}).optional();
|
|
39035
|
-
var contentTypeOrderingSchema =
|
|
39036
|
-
mode:
|
|
39326
|
+
var contentTypeOrderingSchema = z71.object({
|
|
39327
|
+
mode: z71.enum(["default", "manual"]).optional()
|
|
39037
39328
|
}).optional();
|
|
39038
|
-
var contentTypeConfigSchema =
|
|
39329
|
+
var contentTypeConfigSchema = z71.object({
|
|
39039
39330
|
key: contentTypeKeySchema,
|
|
39040
|
-
name:
|
|
39041
|
-
description:
|
|
39042
|
-
hasPages:
|
|
39043
|
-
routePattern:
|
|
39331
|
+
name: z71.string().min(1),
|
|
39332
|
+
description: z71.string().optional(),
|
|
39333
|
+
hasPages: z71.boolean(),
|
|
39334
|
+
routePattern: z71.string().optional(),
|
|
39044
39335
|
// Fields are validated as unknown[] here - deep field validation happens in @riverbankcms/blocks
|
|
39045
|
-
fields:
|
|
39046
|
-
titleField:
|
|
39336
|
+
fields: z71.array(z71.any()).min(1, "At least one field is required"),
|
|
39337
|
+
titleField: z71.string().optional(),
|
|
39047
39338
|
ordering: contentTypeOrderingSchema,
|
|
39048
|
-
isSingleton:
|
|
39339
|
+
isSingleton: z71.boolean().optional().default(false),
|
|
39049
39340
|
template: templateConfigSchemaForward
|
|
39050
39341
|
}).refine(
|
|
39051
39342
|
(data) => {
|
|
@@ -39067,7 +39358,7 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39067
39358
|
}
|
|
39068
39359
|
if (!data.routePattern) {
|
|
39069
39360
|
ctx.addIssue({
|
|
39070
|
-
code:
|
|
39361
|
+
code: z71.ZodIssueCode.custom,
|
|
39071
39362
|
path: ["routePattern"],
|
|
39072
39363
|
message: "routePattern is required when hasPages is true. Non-singleton types must include {slug} placeholder."
|
|
39073
39364
|
});
|
|
@@ -39076,7 +39367,7 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39076
39367
|
const parseResult = safeParseRouteTemplate(data.routePattern);
|
|
39077
39368
|
if (!parseResult.success) {
|
|
39078
39369
|
ctx.addIssue({
|
|
39079
|
-
code:
|
|
39370
|
+
code: z71.ZodIssueCode.custom,
|
|
39080
39371
|
path: ["routePattern"],
|
|
39081
39372
|
message: describeRouteTemplateParseError(parseResult.error)
|
|
39082
39373
|
});
|
|
@@ -39084,44 +39375,44 @@ var contentTypeConfigSchema = z70.object({
|
|
|
39084
39375
|
}
|
|
39085
39376
|
if (!data.isSingleton && parseResult.routeTemplate.kind !== "slug-template") {
|
|
39086
39377
|
ctx.addIssue({
|
|
39087
|
-
code:
|
|
39378
|
+
code: z71.ZodIssueCode.custom,
|
|
39088
39379
|
path: ["routePattern"],
|
|
39089
39380
|
message: "routePattern is required when hasPages is true. Non-singleton types must include {slug} placeholder."
|
|
39090
39381
|
});
|
|
39091
39382
|
}
|
|
39092
39383
|
});
|
|
39093
|
-
var fieldBindingSchema =
|
|
39094
|
-
source:
|
|
39095
|
-
path:
|
|
39384
|
+
var fieldBindingSchema = z71.object({
|
|
39385
|
+
source: z71.literal("field"),
|
|
39386
|
+
path: z71.string().min(1, "Field path is required")
|
|
39096
39387
|
});
|
|
39097
|
-
var metaBindingSchema =
|
|
39098
|
-
source:
|
|
39099
|
-
path:
|
|
39388
|
+
var metaBindingSchema = z71.object({
|
|
39389
|
+
source: z71.literal("meta"),
|
|
39390
|
+
path: z71.enum(TEMPLATE_BINDING_META_PATHS, {
|
|
39100
39391
|
error: (issue) => describeInvalidTemplateBindingMetaPath(String(issue.input))
|
|
39101
39392
|
})
|
|
39102
39393
|
});
|
|
39103
|
-
var literalBindingSchema =
|
|
39104
|
-
source:
|
|
39105
|
-
value:
|
|
39394
|
+
var literalBindingSchema = z71.object({
|
|
39395
|
+
source: z71.literal("literal"),
|
|
39396
|
+
value: z71.unknown()
|
|
39106
39397
|
});
|
|
39107
|
-
var transformBindingSchema =
|
|
39108
|
-
source:
|
|
39109
|
-
path:
|
|
39110
|
-
transform:
|
|
39398
|
+
var transformBindingSchema = z71.object({
|
|
39399
|
+
source: z71.literal("transform"),
|
|
39400
|
+
path: z71.string().min(1, "Transform path is required"),
|
|
39401
|
+
transform: z71.enum(BINDING_TRANSFORM_VALUES, {
|
|
39111
39402
|
error: (issue) => describeInvalidBindingTransform(String(issue.input))
|
|
39112
39403
|
})
|
|
39113
39404
|
});
|
|
39114
|
-
var baseBindingSchema =
|
|
39405
|
+
var baseBindingSchema = z71.discriminatedUnion("source", [
|
|
39115
39406
|
fieldBindingSchema,
|
|
39116
39407
|
metaBindingSchema,
|
|
39117
39408
|
literalBindingSchema,
|
|
39118
39409
|
transformBindingSchema
|
|
39119
39410
|
]);
|
|
39120
|
-
var fallbackBindingSchema =
|
|
39121
|
-
source:
|
|
39122
|
-
sources:
|
|
39411
|
+
var fallbackBindingSchema = z71.object({
|
|
39412
|
+
source: z71.literal("fallback"),
|
|
39413
|
+
sources: z71.array(z71.lazy(() => bindingSourceSchema)).min(1, "Fallback must have at least one source")
|
|
39123
39414
|
});
|
|
39124
|
-
var bindingSourceSchema =
|
|
39415
|
+
var bindingSourceSchema = z71.union([
|
|
39125
39416
|
baseBindingSchema,
|
|
39126
39417
|
fallbackBindingSchema
|
|
39127
39418
|
]);
|
|
@@ -39135,12 +39426,12 @@ function isValidBlockKind(kind) {
|
|
|
39135
39426
|
return false;
|
|
39136
39427
|
}
|
|
39137
39428
|
var BLOCK_KIND_ERROR_MESSAGE = 'Block kind must be a system block (e.g., "block.hero") or a custom block (e.g., "custom.myBlock")';
|
|
39138
|
-
var blockKindSchema =
|
|
39139
|
-
var templateBlockConfigSchema =
|
|
39140
|
-
identifier:
|
|
39429
|
+
var blockKindSchema = z71.string().refine(isValidBlockKind, { message: BLOCK_KIND_ERROR_MESSAGE });
|
|
39430
|
+
var templateBlockConfigSchema = z71.object({
|
|
39431
|
+
identifier: z71.string().min(1, "Block identifier is required"),
|
|
39141
39432
|
kind: blockKindSchema,
|
|
39142
|
-
scope:
|
|
39143
|
-
bindings:
|
|
39433
|
+
scope: z71.enum(["entry", "template"]),
|
|
39434
|
+
bindings: z71.record(z71.string(), bindingSourceSchema).optional(),
|
|
39144
39435
|
content: jsonDataSchema.optional()
|
|
39145
39436
|
}).refine(
|
|
39146
39437
|
(data) => {
|
|
@@ -39159,8 +39450,8 @@ var templateBlockConfigSchema = z70.object({
|
|
|
39159
39450
|
},
|
|
39160
39451
|
{ message: "Template-scoped blocks should define static content, not bindings" }
|
|
39161
39452
|
);
|
|
39162
|
-
var templateConfigSchema =
|
|
39163
|
-
blocks:
|
|
39453
|
+
var templateConfigSchema = z71.object({
|
|
39454
|
+
blocks: z71.array(templateBlockConfigSchema).min(1, "Template must have at least one block")
|
|
39164
39455
|
}).refine(
|
|
39165
39456
|
(data) => {
|
|
39166
39457
|
const identifiers = data.blocks.map((b) => b.identifier);
|
|
@@ -39169,77 +39460,77 @@ var templateConfigSchema = z70.object({
|
|
|
39169
39460
|
},
|
|
39170
39461
|
{ message: "Template block identifiers must be unique" }
|
|
39171
39462
|
);
|
|
39172
|
-
var blockConfigSchema =
|
|
39463
|
+
var blockConfigSchema = z71.object({
|
|
39173
39464
|
kind: blockKindSchema,
|
|
39174
39465
|
content: jsonDataSchema,
|
|
39175
|
-
orderIndex:
|
|
39176
|
-
});
|
|
39177
|
-
var pageConfigSchema =
|
|
39178
|
-
identifier:
|
|
39179
|
-
title:
|
|
39180
|
-
path:
|
|
39181
|
-
purpose:
|
|
39182
|
-
blocks:
|
|
39183
|
-
status:
|
|
39184
|
-
metaTitle:
|
|
39185
|
-
metaDescription:
|
|
39186
|
-
});
|
|
39187
|
-
var entryConfigSchema =
|
|
39188
|
-
identifier:
|
|
39189
|
-
contentType:
|
|
39466
|
+
orderIndex: z71.number().optional()
|
|
39467
|
+
});
|
|
39468
|
+
var pageConfigSchema = z71.object({
|
|
39469
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39470
|
+
title: z71.string().min(1, "Title is required"),
|
|
39471
|
+
path: z71.string().regex(/^\//, "Path must start with /"),
|
|
39472
|
+
purpose: z71.string().default("content"),
|
|
39473
|
+
blocks: z71.array(blockConfigSchema).optional(),
|
|
39474
|
+
status: z71.enum(["draft", "published"]).default("draft"),
|
|
39475
|
+
metaTitle: z71.string().optional(),
|
|
39476
|
+
metaDescription: z71.string().optional()
|
|
39477
|
+
});
|
|
39478
|
+
var entryConfigSchema = z71.object({
|
|
39479
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39480
|
+
contentType: z71.string().min(1, "Content type is required"),
|
|
39190
39481
|
data: jsonDataSchema,
|
|
39191
|
-
status:
|
|
39192
|
-
slug:
|
|
39193
|
-
summary:
|
|
39482
|
+
status: z71.enum(["draft", "published"]).default("draft"),
|
|
39483
|
+
slug: z71.string().optional(),
|
|
39484
|
+
summary: z71.string().optional(),
|
|
39194
39485
|
// Hard remove legacy config-only titles: titles must live in entry `data`.
|
|
39195
|
-
title:
|
|
39486
|
+
title: z71.any().optional().refine((value) => value === void 0, {
|
|
39196
39487
|
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."
|
|
39197
39488
|
}),
|
|
39198
|
-
metaTitle:
|
|
39199
|
-
metaDescription:
|
|
39489
|
+
metaTitle: z71.string().optional(),
|
|
39490
|
+
metaDescription: z71.string().optional()
|
|
39200
39491
|
});
|
|
39201
|
-
var dropdownLinkSchema =
|
|
39202
|
-
kind:
|
|
39492
|
+
var dropdownLinkSchema = z71.object({
|
|
39493
|
+
kind: z71.literal("dropdown")
|
|
39203
39494
|
});
|
|
39204
|
-
var navigationLinkSchema =
|
|
39495
|
+
var navigationLinkSchema = z71.discriminatedUnion("kind", [
|
|
39205
39496
|
...navigationLinkInputSchemaOptions,
|
|
39206
39497
|
dropdownLinkSchema
|
|
39207
39498
|
]);
|
|
39208
|
-
var baseNavigationItemSchema =
|
|
39209
|
-
label:
|
|
39499
|
+
var baseNavigationItemSchema = z71.object({
|
|
39500
|
+
label: z71.string().min(1, "Label is required"),
|
|
39210
39501
|
link: navigationLinkSchema,
|
|
39211
|
-
isCta:
|
|
39502
|
+
isCta: z71.boolean().optional()
|
|
39212
39503
|
});
|
|
39213
39504
|
var navigationItemConfigSchema = baseNavigationItemSchema.extend({
|
|
39214
|
-
children:
|
|
39215
|
-
});
|
|
39216
|
-
var navigationMenuConfigSchema =
|
|
39217
|
-
identifier:
|
|
39218
|
-
name:
|
|
39219
|
-
isPrimary:
|
|
39220
|
-
isFooter:
|
|
39221
|
-
items:
|
|
39505
|
+
children: z71.lazy(() => z71.array(navigationItemConfigSchema)).optional()
|
|
39506
|
+
});
|
|
39507
|
+
var navigationMenuConfigSchema = z71.object({
|
|
39508
|
+
identifier: z71.string().min(1, "Identifier is required"),
|
|
39509
|
+
name: z71.string().min(1, "Name is required"),
|
|
39510
|
+
isPrimary: z71.boolean().optional(),
|
|
39511
|
+
isFooter: z71.boolean().optional(),
|
|
39512
|
+
items: z71.array(navigationItemConfigSchema)
|
|
39222
39513
|
}).superRefine((menu, ctx) => {
|
|
39223
39514
|
const portalStats = collectPortalLinkStats(
|
|
39224
39515
|
menu.items
|
|
39225
39516
|
);
|
|
39226
39517
|
if (portalStats.count > 1) {
|
|
39227
39518
|
ctx.addIssue({
|
|
39228
|
-
code:
|
|
39519
|
+
code: z71.ZodIssueCode.custom,
|
|
39229
39520
|
message: "Only one portal link is allowed per navigation menu",
|
|
39230
39521
|
path: ["items"]
|
|
39231
39522
|
});
|
|
39232
39523
|
}
|
|
39233
39524
|
if (portalStats.nestedLabels.length > 0) {
|
|
39234
39525
|
ctx.addIssue({
|
|
39235
|
-
code:
|
|
39526
|
+
code: z71.ZodIssueCode.custom,
|
|
39236
39527
|
message: `Portal links must be root-level items: ${portalStats.nestedLabels.join(", ")}`,
|
|
39237
39528
|
path: ["items"]
|
|
39238
39529
|
});
|
|
39239
39530
|
}
|
|
39240
39531
|
if (portalStats.withChildrenLabels.length > 0) {
|
|
39241
39532
|
ctx.addIssue({
|
|
39242
|
-
code:
|
|
39533
|
+
code: z71.ZodIssueCode.custom,
|
|
39243
39534
|
message: `Portal links cannot contain child items: ${portalStats.withChildrenLabels.join(", ")}`,
|
|
39244
39535
|
path: ["items"]
|
|
39245
39536
|
});
|
|
@@ -39249,44 +39540,44 @@ var navigationMenuConfigSchema = z70.object({
|
|
|
39249
39540
|
);
|
|
39250
39541
|
if (cartStats.nestedLabels.length > 0) {
|
|
39251
39542
|
ctx.addIssue({
|
|
39252
|
-
code:
|
|
39543
|
+
code: z71.ZodIssueCode.custom,
|
|
39253
39544
|
message: `Cart links must be root-level items: ${cartStats.nestedLabels.join(", ")}`,
|
|
39254
39545
|
path: ["items"]
|
|
39255
39546
|
});
|
|
39256
39547
|
}
|
|
39257
39548
|
if (cartStats.withChildrenLabels.length > 0) {
|
|
39258
39549
|
ctx.addIssue({
|
|
39259
|
-
code:
|
|
39550
|
+
code: z71.ZodIssueCode.custom,
|
|
39260
39551
|
message: `Cart links cannot contain child items: ${cartStats.withChildrenLabels.join(", ")}`,
|
|
39261
39552
|
path: ["items"]
|
|
39262
39553
|
});
|
|
39263
39554
|
}
|
|
39264
39555
|
if (cartStats.ctaLabels.length > 0) {
|
|
39265
39556
|
ctx.addIssue({
|
|
39266
|
-
code:
|
|
39557
|
+
code: z71.ZodIssueCode.custom,
|
|
39267
39558
|
message: `Cart links cannot be marked as CTA: ${cartStats.ctaLabels.join(", ")}`,
|
|
39268
39559
|
path: ["items"]
|
|
39269
39560
|
});
|
|
39270
39561
|
}
|
|
39271
39562
|
if (cartStats.missingVisibleTextLabels.length > 0) {
|
|
39272
39563
|
ctx.addIssue({
|
|
39273
|
-
code:
|
|
39564
|
+
code: z71.ZodIssueCode.custom,
|
|
39274
39565
|
message: `Cart links with icon-with-label must provide a visible label: ${cartStats.missingVisibleTextLabels.join(", ")}`,
|
|
39275
39566
|
path: ["items"]
|
|
39276
39567
|
});
|
|
39277
39568
|
}
|
|
39278
39569
|
});
|
|
39279
|
-
var siteSettingsConfigSchema =
|
|
39280
|
-
homepagePath:
|
|
39281
|
-
siteTitle:
|
|
39282
|
-
siteDescription:
|
|
39283
|
-
defaultTemplates:
|
|
39570
|
+
var siteSettingsConfigSchema = z71.object({
|
|
39571
|
+
homepagePath: z71.string().optional(),
|
|
39572
|
+
siteTitle: z71.string().optional(),
|
|
39573
|
+
siteDescription: z71.string().optional(),
|
|
39574
|
+
defaultTemplates: z71.record(z71.string(), z71.string()).optional()
|
|
39284
39575
|
});
|
|
39285
|
-
var contentConfigBaseSchema =
|
|
39286
|
-
contentTypes:
|
|
39287
|
-
entries:
|
|
39288
|
-
pages:
|
|
39289
|
-
navigationMenus:
|
|
39576
|
+
var contentConfigBaseSchema = z71.object({
|
|
39577
|
+
contentTypes: z71.array(contentTypeConfigSchema).optional(),
|
|
39578
|
+
entries: z71.array(entryConfigSchema).optional(),
|
|
39579
|
+
pages: z71.array(pageConfigSchema).optional(),
|
|
39580
|
+
navigationMenus: z71.array(navigationMenuConfigSchema).optional(),
|
|
39290
39581
|
settings: siteSettingsConfigSchema.optional()
|
|
39291
39582
|
});
|
|
39292
39583
|
var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
@@ -39295,7 +39586,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39295
39586
|
const duplicateKeys = keys.filter((key, i) => keys.indexOf(key) !== i);
|
|
39296
39587
|
if (duplicateKeys.length > 0) {
|
|
39297
39588
|
ctx.addIssue({
|
|
39298
|
-
code:
|
|
39589
|
+
code: z71.ZodIssueCode.custom,
|
|
39299
39590
|
message: `Content type keys must be unique. Duplicates: ${duplicateKeys.join(", ")}`,
|
|
39300
39591
|
path: ["contentTypes"]
|
|
39301
39592
|
});
|
|
@@ -39306,7 +39597,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39306
39597
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39307
39598
|
if (duplicateIds.length > 0) {
|
|
39308
39599
|
ctx.addIssue({
|
|
39309
|
-
code:
|
|
39600
|
+
code: z71.ZodIssueCode.custom,
|
|
39310
39601
|
message: `Page identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39311
39602
|
path: ["pages"]
|
|
39312
39603
|
});
|
|
@@ -39315,7 +39606,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39315
39606
|
const duplicatePaths = paths.filter((path, i) => paths.indexOf(path) !== i);
|
|
39316
39607
|
if (duplicatePaths.length > 0) {
|
|
39317
39608
|
ctx.addIssue({
|
|
39318
|
-
code:
|
|
39609
|
+
code: z71.ZodIssueCode.custom,
|
|
39319
39610
|
message: `Page paths must be unique. Duplicates: ${duplicatePaths.join(", ")}`,
|
|
39320
39611
|
path: ["pages"]
|
|
39321
39612
|
});
|
|
@@ -39326,7 +39617,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39326
39617
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39327
39618
|
if (duplicateIds.length > 0) {
|
|
39328
39619
|
ctx.addIssue({
|
|
39329
|
-
code:
|
|
39620
|
+
code: z71.ZodIssueCode.custom,
|
|
39330
39621
|
message: `Entry identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39331
39622
|
path: ["entries"]
|
|
39332
39623
|
});
|
|
@@ -39337,7 +39628,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39337
39628
|
const duplicateIds = identifiers.filter((id, i) => identifiers.indexOf(id) !== i);
|
|
39338
39629
|
if (duplicateIds.length > 0) {
|
|
39339
39630
|
ctx.addIssue({
|
|
39340
|
-
code:
|
|
39631
|
+
code: z71.ZodIssueCode.custom,
|
|
39341
39632
|
message: `Navigation menu identifiers must be unique. Duplicates: ${duplicateIds.join(", ")}`,
|
|
39342
39633
|
path: ["navigationMenus"]
|
|
39343
39634
|
});
|
|
@@ -39351,7 +39642,7 @@ var contentConfigSchema = contentConfigBaseSchema.superRefine((data, ctx) => {
|
|
|
39351
39642
|
const entriesForType = data.entries.filter((e) => e.contentType === singletonKey);
|
|
39352
39643
|
if (entriesForType.length > 1) {
|
|
39353
39644
|
ctx.addIssue({
|
|
39354
|
-
code:
|
|
39645
|
+
code: z71.ZodIssueCode.custom,
|
|
39355
39646
|
message: `Singleton content type "${singletonKey}" cannot have more than one entry. Found ${entriesForType.length} entries.`,
|
|
39356
39647
|
path: ["entries"]
|
|
39357
39648
|
});
|
|
@@ -39464,18 +39755,18 @@ function validateLayout(layout) {
|
|
|
39464
39755
|
}
|
|
39465
39756
|
|
|
39466
39757
|
// src/config/dashboard-validation.ts
|
|
39467
|
-
import { z as
|
|
39468
|
-
var navIdListSchema2 =
|
|
39758
|
+
import { z as z72 } from "zod";
|
|
39759
|
+
var navIdListSchema2 = z72.preprocess((value) => {
|
|
39469
39760
|
if (!Array.isArray(value)) return void 0;
|
|
39470
39761
|
const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
|
|
39471
39762
|
return filtered.length > 0 ? filtered : void 0;
|
|
39472
|
-
},
|
|
39473
|
-
var dashboardNavVisibilityBaseSchema2 =
|
|
39474
|
-
mode:
|
|
39763
|
+
}, z72.array(z72.string()).max(200, "Maximum 200 nav IDs").optional());
|
|
39764
|
+
var dashboardNavVisibilityBaseSchema2 = z72.object({
|
|
39765
|
+
mode: z72.enum(["augment", "restrict"]).optional(),
|
|
39475
39766
|
allowIds: navIdListSchema2,
|
|
39476
39767
|
denyIds: navIdListSchema2
|
|
39477
39768
|
}).strip();
|
|
39478
|
-
var dashboardNavVisibilityRolesSchema2 =
|
|
39769
|
+
var dashboardNavVisibilityRolesSchema2 = z72.object({
|
|
39479
39770
|
administrator: dashboardNavVisibilityBaseSchema2.optional(),
|
|
39480
39771
|
editor: dashboardNavVisibilityBaseSchema2.optional(),
|
|
39481
39772
|
team_member: dashboardNavVisibilityBaseSchema2.optional()
|
|
@@ -39483,43 +39774,28 @@ var dashboardNavVisibilityRolesSchema2 = z71.object({
|
|
|
39483
39774
|
var dashboardNavVisibilitySchema2 = dashboardNavVisibilityBaseSchema2.extend({
|
|
39484
39775
|
roles: dashboardNavVisibilityRolesSchema2
|
|
39485
39776
|
}).strip();
|
|
39486
|
-
var dashboardNavigationConfigSchema2 =
|
|
39777
|
+
var dashboardNavigationConfigSchema2 = z72.object({
|
|
39487
39778
|
siteNav: dashboardNavVisibilitySchema2.optional(),
|
|
39488
39779
|
settingsNav: dashboardNavVisibilitySchema2.optional()
|
|
39489
39780
|
}).strip();
|
|
39490
|
-
var dashboardConfigSchema2 =
|
|
39491
|
-
previewEditingEnabled:
|
|
39781
|
+
var dashboardConfigSchema2 = z72.object({
|
|
39782
|
+
previewEditingEnabled: z72.boolean().optional(),
|
|
39492
39783
|
navigation: dashboardNavigationConfigSchema2.optional()
|
|
39493
39784
|
}).strip();
|
|
39494
39785
|
|
|
39495
39786
|
// src/zod/titleSourceSchema.ts
|
|
39496
|
-
import { z as
|
|
39497
|
-
var titleSourceValueSchema =
|
|
39498
|
-
|
|
39499
|
-
|
|
39787
|
+
import { z as z73 } from "zod";
|
|
39788
|
+
var titleSourceValueSchema = z73.union([
|
|
39789
|
+
z73.string().min(1),
|
|
39790
|
+
z73.array(z73.string().min(1)).min(1)
|
|
39500
39791
|
]);
|
|
39501
39792
|
|
|
39502
|
-
// src/data/prefetchBlockData.ts
|
|
39503
|
-
var SUPPORTED_LOADER_ENDPOINTS2 = [
|
|
39504
|
-
"listPublishedEntries",
|
|
39505
|
-
"getPublishedEntryPreview",
|
|
39506
|
-
"listPublicEvents",
|
|
39507
|
-
"listPublicCourses",
|
|
39508
|
-
"listPublicTeamMembers",
|
|
39509
|
-
"listPublicProducts",
|
|
39510
|
-
"listPublicPasses",
|
|
39511
|
-
"listPublicMemberships",
|
|
39512
|
-
"getPublicFormById",
|
|
39513
|
-
"getPublicBookingServices",
|
|
39514
|
-
"getPublicEventDetails"
|
|
39515
|
-
];
|
|
39516
|
-
|
|
39517
39793
|
// src/config/validation.ts
|
|
39518
|
-
var sdkThemePaletteSchema2 =
|
|
39519
|
-
var sdkThemeConfigSchema2 =
|
|
39794
|
+
var sdkThemePaletteSchema2 = z74.record(z74.string(), z74.string());
|
|
39795
|
+
var sdkThemeConfigSchema2 = z74.object({
|
|
39520
39796
|
palette: sdkThemePaletteSchema2
|
|
39521
39797
|
});
|
|
39522
|
-
var sdkSiteUrlSchema =
|
|
39798
|
+
var sdkSiteUrlSchema = z74.string().url("Must be a valid URL").refine((url) => {
|
|
39523
39799
|
try {
|
|
39524
39800
|
const parsed = new URL(url);
|
|
39525
39801
|
const isLocal = parsed.hostname === "localhost" || parsed.hostname.endsWith(".localhost") || parsed.hostname.endsWith(".local") || parsed.hostname.endsWith(".test");
|
|
@@ -39528,97 +39804,97 @@ var sdkSiteUrlSchema = z73.string().url("Must be a valid URL").refine((url) => {
|
|
|
39528
39804
|
return false;
|
|
39529
39805
|
}
|
|
39530
39806
|
}, { message: "Production URLs must use HTTPS" }).transform((url) => url.replace(/\/$/, ""));
|
|
39531
|
-
var sectionBackgroundSchema =
|
|
39532
|
-
id:
|
|
39533
|
-
label:
|
|
39534
|
-
token:
|
|
39807
|
+
var sectionBackgroundSchema = z74.object({
|
|
39808
|
+
id: z74.string(),
|
|
39809
|
+
label: z74.string(),
|
|
39810
|
+
token: z74.string()
|
|
39535
39811
|
// Reference to theme palette token
|
|
39536
39812
|
});
|
|
39537
|
-
var sectionSpacingSchema =
|
|
39538
|
-
var containerMaxWidthSchema =
|
|
39539
|
-
var containerAlignmentSchema =
|
|
39540
|
-
var sectionOptionsSchema =
|
|
39541
|
-
backgroundColor:
|
|
39542
|
-
backgroundImage:
|
|
39543
|
-
backgroundGradient:
|
|
39544
|
-
spacing:
|
|
39545
|
-
|
|
39546
|
-
|
|
39813
|
+
var sectionSpacingSchema = z74.enum(["compact", "default", "spacious"]);
|
|
39814
|
+
var containerMaxWidthSchema = z74.enum(["narrow", "default", "wide", "full"]);
|
|
39815
|
+
var containerAlignmentSchema = z74.enum(["left", "center", "right"]);
|
|
39816
|
+
var sectionOptionsSchema = z74.object({
|
|
39817
|
+
backgroundColor: z74.boolean().optional(),
|
|
39818
|
+
backgroundImage: z74.boolean().optional(),
|
|
39819
|
+
backgroundGradient: z74.boolean().optional(),
|
|
39820
|
+
spacing: z74.union([
|
|
39821
|
+
z74.array(sectionSpacingSchema),
|
|
39822
|
+
z74.boolean()
|
|
39547
39823
|
]).optional(),
|
|
39548
|
-
textColor:
|
|
39824
|
+
textColor: z74.boolean().optional()
|
|
39549
39825
|
}).optional();
|
|
39550
|
-
var containerOptionsSchema =
|
|
39551
|
-
maxWidth:
|
|
39552
|
-
|
|
39553
|
-
|
|
39826
|
+
var containerOptionsSchema = z74.object({
|
|
39827
|
+
maxWidth: z74.union([
|
|
39828
|
+
z74.array(containerMaxWidthSchema),
|
|
39829
|
+
z74.boolean()
|
|
39554
39830
|
]).optional(),
|
|
39555
|
-
alignment:
|
|
39556
|
-
|
|
39557
|
-
|
|
39831
|
+
alignment: z74.union([
|
|
39832
|
+
z74.array(containerAlignmentSchema),
|
|
39833
|
+
z74.boolean()
|
|
39558
39834
|
]).optional()
|
|
39559
39835
|
}).optional();
|
|
39560
|
-
var siteStyleConfigSchema =
|
|
39561
|
-
sectionBackgrounds:
|
|
39836
|
+
var siteStyleConfigSchema = z74.object({
|
|
39837
|
+
sectionBackgrounds: z74.array(sectionBackgroundSchema).optional(),
|
|
39562
39838
|
sectionOptions: sectionOptionsSchema,
|
|
39563
39839
|
containerOptions: containerOptionsSchema
|
|
39564
39840
|
}).optional();
|
|
39565
|
-
var sdkLoaderEndpointSchema2 =
|
|
39841
|
+
var sdkLoaderEndpointSchema2 = z74.enum(SUPPORTED_LOADER_ENDPOINTS);
|
|
39566
39842
|
var allowedTransformIds = new Set(builtinTransformDefinitions.map((transform) => transform.id));
|
|
39567
|
-
var loaderTransformStepSchema =
|
|
39568
|
-
id:
|
|
39843
|
+
var loaderTransformStepSchema = z74.object({
|
|
39844
|
+
id: z74.string().refine((id) => allowedTransformIds.has(id), {
|
|
39569
39845
|
message: "Unknown transform id"
|
|
39570
39846
|
}),
|
|
39571
|
-
options:
|
|
39847
|
+
options: z74.record(z74.string(), z74.unknown()).optional()
|
|
39572
39848
|
});
|
|
39573
|
-
var loaderParamBindingSchema2 =
|
|
39574
|
-
$bind:
|
|
39575
|
-
from:
|
|
39849
|
+
var loaderParamBindingSchema2 = z74.object({
|
|
39850
|
+
$bind: z74.object({
|
|
39851
|
+
from: z74.string().min(1, "Binding path is required"),
|
|
39576
39852
|
// Loader params are ultimately string-normalized for query strings, so fallbacks should
|
|
39577
39853
|
// stay scalar. Use transforms (e.g. `value.jsonArray`) when you need to serialize
|
|
39578
39854
|
// more complex values into a string.
|
|
39579
39855
|
fallback: loaderFallbackScalarSchema.optional(),
|
|
39580
|
-
transforms:
|
|
39581
|
-
pick:
|
|
39582
|
-
coerce:
|
|
39856
|
+
transforms: z74.array(loaderTransformStepSchema).default([]),
|
|
39857
|
+
pick: z74.enum(["value", "collection", "context"]).default("value"),
|
|
39858
|
+
coerce: z74.enum(["number", "boolean", "string"]).optional()
|
|
39583
39859
|
})
|
|
39584
39860
|
});
|
|
39585
|
-
var loaderParamValueSchema2 =
|
|
39586
|
-
|
|
39587
|
-
|
|
39588
|
-
|
|
39861
|
+
var loaderParamValueSchema2 = z74.union([
|
|
39862
|
+
z74.string(),
|
|
39863
|
+
z74.number(),
|
|
39864
|
+
z74.boolean(),
|
|
39589
39865
|
loaderParamBindingSchema2
|
|
39590
39866
|
]);
|
|
39591
|
-
var loaderWhenValueSchema =
|
|
39592
|
-
|
|
39867
|
+
var loaderWhenValueSchema = z74.union([
|
|
39868
|
+
z74.boolean(),
|
|
39593
39869
|
loaderParamBindingSchema2
|
|
39594
39870
|
]);
|
|
39595
|
-
var sdkConfigLoaderSchema2 =
|
|
39871
|
+
var sdkConfigLoaderSchema2 = z74.object({
|
|
39596
39872
|
endpoint: sdkLoaderEndpointSchema2,
|
|
39597
|
-
params:
|
|
39598
|
-
mode:
|
|
39873
|
+
params: z74.record(z74.string(), loaderParamValueSchema2),
|
|
39874
|
+
mode: z74.enum(["server", "client"]).default("server"),
|
|
39599
39875
|
when: loaderWhenValueSchema.optional()
|
|
39600
39876
|
});
|
|
39601
|
-
var sdkDataLoadersSchema2 =
|
|
39877
|
+
var sdkDataLoadersSchema2 = z74.record(z74.string(), sdkConfigLoaderSchema2).refine(
|
|
39602
39878
|
(loaders) => Object.keys(loaders).length <= 5,
|
|
39603
39879
|
{ message: "Maximum 5 data loaders per block" }
|
|
39604
39880
|
).optional();
|
|
39605
|
-
var fieldSelectOptionSchema =
|
|
39606
|
-
value:
|
|
39607
|
-
label:
|
|
39881
|
+
var fieldSelectOptionSchema = z74.object({
|
|
39882
|
+
value: z74.string().min(1, "Option value is required"),
|
|
39883
|
+
label: z74.string().min(1, "Option label is required")
|
|
39608
39884
|
});
|
|
39609
|
-
var blockFieldConfigSchema =
|
|
39610
|
-
options:
|
|
39885
|
+
var blockFieldConfigSchema = z74.object({
|
|
39886
|
+
options: z74.array(fieldSelectOptionSchema).min(1, "At least one option is required").optional()
|
|
39611
39887
|
});
|
|
39612
|
-
var blockFieldOptionsSchema =
|
|
39613
|
-
|
|
39888
|
+
var blockFieldOptionsSchema = z74.record(
|
|
39889
|
+
z74.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
|
|
39614
39890
|
message: "Block ID must be 'block.*' or 'custom.*' format"
|
|
39615
39891
|
}),
|
|
39616
|
-
|
|
39617
|
-
|
|
39892
|
+
z74.record(
|
|
39893
|
+
z74.string().min(1, "Field ID is required"),
|
|
39618
39894
|
blockFieldConfigSchema
|
|
39619
39895
|
)
|
|
39620
39896
|
).optional();
|
|
39621
|
-
var blockFieldExtensionSchema =
|
|
39897
|
+
var blockFieldExtensionSchema = z74.object({
|
|
39622
39898
|
fields: fieldSchema.array().min(1, "At least one field is required")
|
|
39623
39899
|
}).refine(
|
|
39624
39900
|
(data) => {
|
|
@@ -39632,10 +39908,10 @@ var blockFieldExtensionSchema = z73.object({
|
|
|
39632
39908
|
message: "Required fields must have a defaultValue to support existing blocks"
|
|
39633
39909
|
}
|
|
39634
39910
|
);
|
|
39635
|
-
var blockFieldExtensionsMapSchema =
|
|
39911
|
+
var blockFieldExtensionsMapSchema = z74.record(
|
|
39636
39912
|
// System blocks are kebab-case: block.body-text, block.event-calendar, ...
|
|
39637
39913
|
// Enforce: lowercase alphanumerics with single hyphens (no trailing hyphen, no consecutive hyphens).
|
|
39638
|
-
|
|
39914
|
+
z74.string().regex(/^block\.[a-z][a-z0-9]*(?:-[a-z0-9]+)*$/, {
|
|
39639
39915
|
message: "Block ID must be 'block.*' format (system blocks only)"
|
|
39640
39916
|
}),
|
|
39641
39917
|
blockFieldExtensionSchema
|
|
@@ -39651,7 +39927,7 @@ var blockFieldExtensionsMapSchema = z73.record(
|
|
|
39651
39927
|
(field) => field.id === collision.fieldId
|
|
39652
39928
|
);
|
|
39653
39929
|
ctx.addIssue({
|
|
39654
|
-
code:
|
|
39930
|
+
code: z74.ZodIssueCode.custom,
|
|
39655
39931
|
message: collision.message,
|
|
39656
39932
|
path: [
|
|
39657
39933
|
APPOINTMENT_BOOKING_BLOCK_ID,
|
|
@@ -39666,24 +39942,24 @@ var blockFieldExtensionsSchema = blockFieldExtensionsMapSchema.optional();
|
|
|
39666
39942
|
function collectAppointmentBookingExtensionReservedFieldCollisions(extension) {
|
|
39667
39943
|
return collectBookingReservedFieldCollisions(extension, { type: "booking" });
|
|
39668
39944
|
}
|
|
39669
|
-
var syncConfigSchema =
|
|
39670
|
-
existingEntries:
|
|
39945
|
+
var syncConfigSchema = z74.object({
|
|
39946
|
+
existingEntries: z74.enum(["skip", "update"]).optional()
|
|
39671
39947
|
}).optional();
|
|
39672
|
-
var deployConfigSchema =
|
|
39673
|
-
verifyCommand:
|
|
39674
|
-
prebuildOutput:
|
|
39948
|
+
var deployConfigSchema = z74.object({
|
|
39949
|
+
verifyCommand: z74.string().optional(),
|
|
39950
|
+
prebuildOutput: z74.string().optional()
|
|
39675
39951
|
}).optional();
|
|
39676
|
-
var sdkCustomBlockSchema =
|
|
39952
|
+
var sdkCustomBlockSchema = z74.object({
|
|
39677
39953
|
// Block ID must start with 'custom.'
|
|
39678
|
-
id:
|
|
39954
|
+
id: z74.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
|
|
39679
39955
|
message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
|
|
39680
39956
|
}),
|
|
39681
|
-
title:
|
|
39957
|
+
title: z74.string().min(1, "Title is required"),
|
|
39682
39958
|
titleSource: titleSourceValueSchema.optional(),
|
|
39683
|
-
description:
|
|
39959
|
+
description: z74.string().optional(),
|
|
39684
39960
|
category: blockCategoryEnum,
|
|
39685
|
-
icon:
|
|
39686
|
-
tags:
|
|
39961
|
+
icon: z74.string().optional(),
|
|
39962
|
+
tags: z74.array(z74.string()).optional(),
|
|
39687
39963
|
// Reuse the exact field schema from @riverbankcms/blocks - all field types supported
|
|
39688
39964
|
fields: fieldSchema.array().min(1, "Custom blocks must have at least one field"),
|
|
39689
39965
|
// Data loaders for CMS endpoints
|
|
@@ -39691,14 +39967,14 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39691
39967
|
// Optional declarative layout - when present, block can render without React override
|
|
39692
39968
|
layout: NodeSchema.optional(),
|
|
39693
39969
|
// Optional variants system (preferred when a block has multiple structural layouts)
|
|
39694
|
-
variants:
|
|
39695
|
-
defaultVariant:
|
|
39696
|
-
variantOptions:
|
|
39697
|
-
|
|
39698
|
-
|
|
39699
|
-
label:
|
|
39700
|
-
description:
|
|
39701
|
-
icon:
|
|
39970
|
+
variants: z74.record(z74.string().min(1), NodeSchema).optional(),
|
|
39971
|
+
defaultVariant: z74.string().min(1).optional(),
|
|
39972
|
+
variantOptions: z74.record(
|
|
39973
|
+
z74.string().min(1),
|
|
39974
|
+
z74.object({
|
|
39975
|
+
label: z74.string().min(1).optional(),
|
|
39976
|
+
description: z74.string().min(1).optional(),
|
|
39977
|
+
icon: z74.string().min(1).optional()
|
|
39702
39978
|
})
|
|
39703
39979
|
).optional(),
|
|
39704
39980
|
previewCustomize: previewCustomizeManifestCurationSchema.optional()
|
|
@@ -39710,7 +39986,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39710
39986
|
const exists = fields3.some((field) => field.id === source);
|
|
39711
39987
|
if (!exists) {
|
|
39712
39988
|
ctx.addIssue({
|
|
39713
|
-
code:
|
|
39989
|
+
code: z74.ZodIssueCode.custom,
|
|
39714
39990
|
message: `titleSource must reference a valid field ID (got "${source}")`,
|
|
39715
39991
|
path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
|
|
39716
39992
|
});
|
|
@@ -39719,7 +39995,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39719
39995
|
}
|
|
39720
39996
|
if (data.layout && data.variants) {
|
|
39721
39997
|
ctx.addIssue({
|
|
39722
|
-
code:
|
|
39998
|
+
code: z74.ZodIssueCode.custom,
|
|
39723
39999
|
message: "Custom block must define either `layout` or `variants`, not both",
|
|
39724
40000
|
path: ["variants"]
|
|
39725
40001
|
});
|
|
@@ -39729,7 +40005,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39729
40005
|
if (!result.valid) {
|
|
39730
40006
|
for (const error of result.errors) {
|
|
39731
40007
|
ctx.addIssue({
|
|
39732
|
-
code:
|
|
40008
|
+
code: z74.ZodIssueCode.custom,
|
|
39733
40009
|
message: error.message,
|
|
39734
40010
|
path: ["layout"]
|
|
39735
40011
|
});
|
|
@@ -39740,14 +40016,14 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39740
40016
|
const keys = Object.keys(data.variants);
|
|
39741
40017
|
if (keys.length === 0) {
|
|
39742
40018
|
ctx.addIssue({
|
|
39743
|
-
code:
|
|
40019
|
+
code: z74.ZodIssueCode.custom,
|
|
39744
40020
|
message: "`variants` must contain at least one variant key",
|
|
39745
40021
|
path: ["variants"]
|
|
39746
40022
|
});
|
|
39747
40023
|
}
|
|
39748
40024
|
if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
|
|
39749
40025
|
ctx.addIssue({
|
|
39750
|
-
code:
|
|
40026
|
+
code: z74.ZodIssueCode.custom,
|
|
39751
40027
|
message: "`defaultVariant` must be a key present in `variants`",
|
|
39752
40028
|
path: ["defaultVariant"]
|
|
39753
40029
|
});
|
|
@@ -39757,7 +40033,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39757
40033
|
if (!result.valid) {
|
|
39758
40034
|
for (const error of result.errors) {
|
|
39759
40035
|
ctx.addIssue({
|
|
39760
|
-
code:
|
|
40036
|
+
code: z74.ZodIssueCode.custom,
|
|
39761
40037
|
message: `${key}: ${error.message}`,
|
|
39762
40038
|
path: ["variants", key]
|
|
39763
40039
|
});
|
|
@@ -39768,7 +40044,7 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39768
40044
|
for (const key of Object.keys(data.variantOptions)) {
|
|
39769
40045
|
if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
|
|
39770
40046
|
ctx.addIssue({
|
|
39771
|
-
code:
|
|
40047
|
+
code: z74.ZodIssueCode.custom,
|
|
39772
40048
|
message: "`variantOptions` key must exist in `variants`",
|
|
39773
40049
|
path: ["variantOptions", key]
|
|
39774
40050
|
});
|
|
@@ -39777,58 +40053,58 @@ var sdkCustomBlockSchema = z73.object({
|
|
|
39777
40053
|
}
|
|
39778
40054
|
}
|
|
39779
40055
|
});
|
|
39780
|
-
var themeSourceSchema =
|
|
39781
|
-
var activeThemeSchema =
|
|
40056
|
+
var themeSourceSchema = z74.enum(["local", "cms"]).optional();
|
|
40057
|
+
var activeThemeSchema = z74.string().regex(/^[a-z0-9][a-z0-9-_]*$/, {
|
|
39782
40058
|
message: "Theme name must be lowercase alphanumeric with hyphens/underscores"
|
|
39783
40059
|
}).max(64, "Theme name too long").optional();
|
|
39784
40060
|
function isValidConfigBlockKind(kind) {
|
|
39785
40061
|
if (getBlockDefinition(kind)) return true;
|
|
39786
40062
|
return /^custom\.[a-z][a-z0-9-]*$/.test(kind);
|
|
39787
40063
|
}
|
|
39788
|
-
var layoutBlockKindSchema =
|
|
40064
|
+
var layoutBlockKindSchema = z74.string().refine(isValidConfigBlockKind, {
|
|
39789
40065
|
message: 'Block kind must be a system block (e.g., "block.hero") or a custom block (e.g., "custom.my-block")'
|
|
39790
40066
|
});
|
|
39791
|
-
var layoutFooterBlockSchema =
|
|
39792
|
-
id:
|
|
40067
|
+
var layoutFooterBlockSchema = z74.object({
|
|
40068
|
+
id: z74.string().min(1).optional(),
|
|
39793
40069
|
kind: layoutBlockKindSchema,
|
|
39794
40070
|
// Allow omitted content for blocks that rely on defaults.
|
|
39795
|
-
content:
|
|
40071
|
+
content: z74.record(z74.string(), z74.unknown()).optional()
|
|
39796
40072
|
}).strict();
|
|
39797
|
-
var layoutConfigSchema =
|
|
39798
|
-
footerBlocks:
|
|
40073
|
+
var layoutConfigSchema = z74.object({
|
|
40074
|
+
footerBlocks: z74.array(layoutFooterBlockSchema).optional()
|
|
39799
40075
|
}).strict();
|
|
39800
|
-
var sdkWorkflowIdSchema2 =
|
|
40076
|
+
var sdkWorkflowIdSchema2 = z74.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
|
|
39801
40077
|
message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
|
|
39802
40078
|
});
|
|
39803
|
-
var sdkWorkflowEndpointSchema2 =
|
|
39804
|
-
var sdkWorkflowTriggerSchema2 =
|
|
39805
|
-
|
|
40079
|
+
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 "/"' });
|
|
40080
|
+
var sdkWorkflowTriggerSchema2 = z74.discriminatedUnion("type", [
|
|
40081
|
+
z74.object({ type: z74.literal("manual") }).strict()
|
|
39806
40082
|
]);
|
|
39807
|
-
var sdkWorkflowConfirmationSchema2 =
|
|
39808
|
-
title:
|
|
39809
|
-
body:
|
|
40083
|
+
var sdkWorkflowConfirmationSchema2 = z74.object({
|
|
40084
|
+
title: z74.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
|
|
40085
|
+
body: z74.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
|
|
39810
40086
|
}).strict();
|
|
39811
|
-
var sdkWorkflowConfigSchema2 =
|
|
40087
|
+
var sdkWorkflowConfigSchema2 = z74.object({
|
|
39812
40088
|
id: sdkWorkflowIdSchema2,
|
|
39813
|
-
title:
|
|
39814
|
-
description:
|
|
39815
|
-
contentType:
|
|
40089
|
+
title: z74.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
|
|
40090
|
+
description: z74.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
|
|
40091
|
+
contentType: z74.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
|
|
39816
40092
|
endpoint: sdkWorkflowEndpointSchema2,
|
|
39817
|
-
triggers:
|
|
40093
|
+
triggers: z74.array(sdkWorkflowTriggerSchema2).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
|
|
39818
40094
|
confirmation: sdkWorkflowConfirmationSchema2.optional()
|
|
39819
40095
|
}).strict();
|
|
39820
|
-
var sdkWorkflowsSchema2 =
|
|
40096
|
+
var sdkWorkflowsSchema2 = z74.array(sdkWorkflowConfigSchema2).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
|
|
39821
40097
|
const ids = workflows.map((workflow) => workflow.id);
|
|
39822
40098
|
return ids.length === new Set(ids).size;
|
|
39823
40099
|
}, { message: "Workflow IDs must be unique" }).optional();
|
|
39824
|
-
var riverbankSiteConfigSchema =
|
|
39825
|
-
siteId:
|
|
40100
|
+
var riverbankSiteConfigSchema = z74.object({
|
|
40101
|
+
siteId: z74.string().uuid(),
|
|
39826
40102
|
previewUrl: sdkSiteUrlSchema.optional(),
|
|
39827
40103
|
liveUrl: sdkSiteUrlSchema.optional(),
|
|
39828
40104
|
theme: sdkThemeConfigSchema2.optional(),
|
|
39829
40105
|
styles: siteStyleConfigSchema,
|
|
39830
40106
|
layout: layoutConfigSchema.optional(),
|
|
39831
|
-
customBlocks:
|
|
40107
|
+
customBlocks: z74.array(sdkCustomBlockSchema).max(100, "Maximum 100 custom blocks per site").refine(
|
|
39832
40108
|
// Ensure unique block IDs
|
|
39833
40109
|
(blocks) => {
|
|
39834
40110
|
const ids = blocks.map((b) => b.id);
|
|
@@ -39841,7 +40117,7 @@ var riverbankSiteConfigSchema = z73.object({
|
|
|
39841
40117
|
workflows: sdkWorkflowsSchema2,
|
|
39842
40118
|
content: contentConfigSchema.optional(),
|
|
39843
40119
|
// CLI-related configuration (Phase 4)
|
|
39844
|
-
contentDir:
|
|
40120
|
+
contentDir: z74.string().optional(),
|
|
39845
40121
|
sync: syncConfigSchema,
|
|
39846
40122
|
deploy: deployConfigSchema,
|
|
39847
40123
|
// Theme sync configuration (Phase 5)
|