@riverbankcms/sdk 0.90.0 → 0.91.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{PreviewEditorSidebar-KVXNF3VW.mjs → PreviewEditorSidebar-3TT47WCF.mjs} +3 -3
- package/dist/{PreviewEditorUI-J3JN5Z7T.mjs → PreviewEditorUI-ORCLLUNZ.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-GMCDQPZZ.mjs +8 -0
- package/dist/_dts/api/src/bookingConfig.d.ts +3 -0
- package/dist/_dts/api/src/event-listing-destination.d.ts +59 -0
- package/dist/_dts/api/src/index.d.ts +4 -0
- package/dist/_dts/api/src/navigation/dashboardSettingsNav.d.ts +0 -1
- package/dist/_dts/api/src/navigation.d.ts +2 -0
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +3 -1
- package/dist/_dts/api/src/settings/permissions.d.ts +273 -0
- package/dist/_dts/api/src/types.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +60 -2
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +12 -1
- package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +9 -9
- package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +1 -1
- package/dist/_dts/blocks/src/system/manifest/fieldValidation/index.d.ts +17 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/eventPaymentOptions.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/destination.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/pricing.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/utils.d.ts +7 -0
- package/dist/_dts/core/src/event-pricing.d.ts +12 -2
- package/dist/_dts/core/src/string.d.ts +12 -0
- package/dist/_dts/sdk/src/cli/sync/validation.d.ts +2 -2
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +11 -1
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +11 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/{chunk-GSPFFUVB.mjs → chunk-AFPMCLS7.mjs} +2 -2
- package/dist/{chunk-RQ3XZ4SJ.mjs → chunk-GDT2QGIL.mjs} +1 -1
- package/dist/{chunk-PMBB6MQ7.mjs → chunk-RQUZYSES.mjs} +345 -153
- package/dist/{chunk-AEOYWPE4.mjs → chunk-S3YHJWEU.mjs} +7 -7
- package/dist/{chunk-UG7I7S7W.mjs → chunk-U5YM4AWE.mjs} +1 -1
- package/dist/{chunk-BOQXMCSP.mjs → chunk-ZA2S7H34.mjs} +3 -3
- package/dist/cli/index.mjs +363 -437
- package/dist/cli/init-docs/content/workflow-add-block.md +48 -0
- package/dist/cli/init-docs/content/workflow-custom-block.md +10 -0
- package/dist/client/{accordion-GXQNWQ6O.mjs → accordion-AFX37652.mjs} +2 -2
- package/dist/client/{bookingForm-STLUJ36H.mjs → bookingForm-32V5QCOW.mjs} +6 -6
- package/dist/client/bookings.mjs +1170 -571
- package/dist/client/{carousel-CVRN6EPP.mjs → carousel-TJGQJ7ER.mjs} +3 -3
- package/dist/client/{cart-IYIBA5CL.mjs → cart-JUU2JEW4.mjs} +6 -6
- package/dist/client/{checkout-O3BGM4GS.mjs → checkout-RD6BTFX4.mjs} +6 -6
- package/dist/client/{chunk-DAS5CIER.mjs → chunk-6QZIBNGV.mjs} +119 -21
- package/dist/client/{chunk-VFHZLZAC.mjs → chunk-6RN62XBV.mjs} +1 -1
- package/dist/client/{chunk-D3ETC2SU.mjs → chunk-C4LP6BPG.mjs} +1 -1
- package/dist/client/{chunk-NBFRJ5NB.mjs → chunk-CKXEUWWA.mjs} +2 -2
- package/dist/client/{chunk-4RTFGHZN.mjs → chunk-E6VIWZUG.mjs} +6 -3
- package/dist/client/{chunk-Z62JYS5O.mjs → chunk-FMZZHAIR.mjs} +2 -2
- package/dist/client/{chunk-FHU6PFPM.mjs → chunk-ISAUXU5R.mjs} +1 -1
- package/dist/client/{chunk-HIHOQGIP.mjs → chunk-LJCX6V7Q.mjs} +9 -9
- package/dist/client/{chunk-6DPXDOIL.mjs → chunk-MLBNVN4H.mjs} +99 -26
- package/dist/client/{chunk-7DH35FGA.mjs → chunk-PMNAV6LO.mjs} +1 -1
- package/dist/client/{chunk-MFPKS6QS.mjs → chunk-RMOFBBNA.mjs} +5 -5
- package/dist/client/{chunk-25W2EQUN.mjs → chunk-RWYFG625.mjs} +17 -8
- package/dist/client/client.mjs +305 -113
- package/dist/client/{courseRegistration-2D3ACMJR.mjs → courseRegistration-X63QAIVV.mjs} +6 -6
- package/dist/client/{eventCalendar-QY4UZUFF.mjs → eventCalendar-5T24GCZL.mjs} +9 -9
- package/dist/client/{eventCombined-RRCDKJC2.mjs → eventCombined-AZVTF22X.mjs} +9 -9
- package/dist/client/{eventDetails-YO335BUT.mjs → eventDetails-7GPFNLGF.mjs} +9 -9
- package/dist/client/{eventListing-PXA6GFQ3.mjs → eventListing-QEUMTMUM.mjs} +9 -9
- package/dist/client/{eventRegistration-2ZHEDDXO.mjs → eventRegistration-P2EDKCQZ.mjs} +9 -9
- package/dist/client/{form-ZS6KX4U2.mjs → form-NUJ7H4IN.mjs} +3 -3
- package/dist/client/{headerSection-QK5SLIIB.mjs → headerSection-JB7LECPL.mjs} +3 -3
- package/dist/client/hooks.mjs +93 -42
- package/dist/client/{locationMap-GFNIUD2X.mjs → locationMap-UEYWUCSW.mjs} +3 -3
- package/dist/client/{newsletterForm-PGLTTCUG.mjs → newsletterForm-S2YZQ2X7.mjs} +3 -3
- package/dist/client/{productDetail-OPBE5ZPI.mjs → productDetail-H5MADGG7.mjs} +6 -6
- package/dist/client/{productList-NI72Q62Z.mjs → productList-DK7YON7H.mjs} +6 -6
- package/dist/client/rendering/client.mjs +262 -70
- package/dist/client/rendering/islands.mjs +19 -19
- package/dist/client/rendering.mjs +306 -114
- package/dist/client/{shop-3ZQPEWYI.mjs → shop-6PA7RDRJ.mjs} +6 -6
- package/dist/client/spam-protection.mjs +10 -10
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/{sdk-runtime-FSHXCWDS.mjs → sdk-runtime-JP5347OB.mjs} +6 -6
- package/dist/server/components.mjs +149 -69
- package/dist/server/config-validation.mjs +85 -34
- package/dist/server/config.mjs +85 -34
- package/dist/server/data.mjs +93 -42
- package/dist/server/index.mjs +1 -1
- package/dist/server/navigation.mjs +2 -2
- package/dist/server/next.mjs +170 -90
- package/dist/server/page-converter.mjs +77 -26
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +161 -81
- package/dist/server/rendering.mjs +165 -85
- package/dist/server/routing.mjs +135 -58
- package/dist/server/server.mjs +102 -51
- package/package.json +2 -2
- package/dist/SdkPreviewModeRuntime-UBL6MSNP.mjs +0 -8
package/dist/server/routing.mjs
CHANGED
|
@@ -6609,6 +6609,8 @@ function publicEventPricingType(pricing) {
|
|
|
6609
6609
|
case "ticket_types":
|
|
6610
6610
|
case "course":
|
|
6611
6611
|
return isFreePublicEventPriceDisplay(pricing.display) ? "free" : "paid";
|
|
6612
|
+
case "external":
|
|
6613
|
+
return "external";
|
|
6612
6614
|
}
|
|
6613
6615
|
}
|
|
6614
6616
|
function isFreePublicEventPriceDisplay(display) {
|
|
@@ -6622,6 +6624,7 @@ function isFreePublicEventPriceDisplay(display) {
|
|
|
6622
6624
|
case "range":
|
|
6623
6625
|
case "mixed":
|
|
6624
6626
|
case "unavailable":
|
|
6627
|
+
case "external":
|
|
6625
6628
|
return false;
|
|
6626
6629
|
}
|
|
6627
6630
|
}
|
|
@@ -6670,11 +6673,11 @@ function isValidTimeZone(timeZone) {
|
|
|
6670
6673
|
}
|
|
6671
6674
|
function getSafeTimeZone(timeZone) {
|
|
6672
6675
|
const normalized = typeof timeZone === "string" ? timeZone.trim() : "";
|
|
6673
|
-
return normalized && isValidTimeZone(normalized) ? normalized : FALLBACK_TIMEZONE;
|
|
6676
|
+
return normalized.length > 0 && isValidTimeZone(normalized) ? normalized : FALLBACK_TIMEZONE;
|
|
6674
6677
|
}
|
|
6675
6678
|
function parseStrictBookingTimeZone(timeZone) {
|
|
6676
6679
|
const normalized = timeZone.trim();
|
|
6677
|
-
if (
|
|
6680
|
+
if (normalized.length === 0 || !isValidTimeZone(normalized)) {
|
|
6678
6681
|
return null;
|
|
6679
6682
|
}
|
|
6680
6683
|
return normalized;
|
|
@@ -6748,7 +6751,7 @@ function parseScheduledBookingDateTime(input) {
|
|
|
6748
6751
|
try {
|
|
6749
6752
|
const startsAt = toUtcIsoDateTimeString(input.startsAt);
|
|
6750
6753
|
const timeZone = parseStrictBookingTimeZone(input.timeZone);
|
|
6751
|
-
if (
|
|
6754
|
+
if (timeZone === null) {
|
|
6752
6755
|
return {
|
|
6753
6756
|
ok: false,
|
|
6754
6757
|
field: "timeZone",
|
|
@@ -6817,10 +6820,10 @@ function normalizeLocationAddressText(value) {
|
|
|
6817
6820
|
return null;
|
|
6818
6821
|
}
|
|
6819
6822
|
const trimmed = value.trim();
|
|
6820
|
-
return trimmed ? trimmed : null;
|
|
6823
|
+
return trimmed.length > 0 ? trimmed : null;
|
|
6821
6824
|
}
|
|
6822
6825
|
function hasLocationCoordinates(value) {
|
|
6823
|
-
return typeof value
|
|
6826
|
+
return value != null && typeof value.lat === "number" && typeof value.lng === "number";
|
|
6824
6827
|
}
|
|
6825
6828
|
function toLocationCoordinates(value) {
|
|
6826
6829
|
if (!hasLocationCoordinates(value)) {
|
|
@@ -6837,6 +6840,13 @@ var init_location = __esm({
|
|
|
6837
6840
|
}
|
|
6838
6841
|
});
|
|
6839
6842
|
|
|
6843
|
+
// ../core/src/string.ts
|
|
6844
|
+
var init_string = __esm({
|
|
6845
|
+
"../core/src/string.ts"() {
|
|
6846
|
+
"use strict";
|
|
6847
|
+
}
|
|
6848
|
+
});
|
|
6849
|
+
|
|
6840
6850
|
// ../core/src/business-address.ts
|
|
6841
6851
|
var init_business_address = __esm({
|
|
6842
6852
|
"../core/src/business-address.ts"() {
|
|
@@ -6977,13 +6987,6 @@ var init_slug = __esm({
|
|
|
6977
6987
|
}
|
|
6978
6988
|
});
|
|
6979
6989
|
|
|
6980
|
-
// ../core/src/string.ts
|
|
6981
|
-
var init_string = __esm({
|
|
6982
|
-
"../core/src/string.ts"() {
|
|
6983
|
-
"use strict";
|
|
6984
|
-
}
|
|
6985
|
-
});
|
|
6986
|
-
|
|
6987
6990
|
// ../core/src/uuid.ts
|
|
6988
6991
|
var init_uuid = __esm({
|
|
6989
6992
|
"../core/src/uuid.ts"() {
|
|
@@ -32496,7 +32499,7 @@ var init_schemas = __esm({
|
|
|
32496
32499
|
|
|
32497
32500
|
// ../blocks/src/system/blocks/events/shared/schemas.ts
|
|
32498
32501
|
import { z as z46 } from "zod";
|
|
32499
|
-
var eventPresetSchema, eventScheduleScopeSchema, eventDestinationModeSchema, eventVenueSchema, eventCategorySchema, pricingTypeSchema, accessRestrictionSchema, eventPricingModeSchema, publicCoursePriceDisplaySchema, publicEventPriceDisplaySchema, publicEventTicketTypePriceDisplaySchema, publicEventAttendanceModeSchema, publicEventAttendanceModeAvailabilitySchema, publicEventTicketTypeAvailabilitySchema, publicEventTicketTypeSchema, publicEventPricingSchema, publicTeamMemberSummarySchema, publicEventSchema, publicEventsArraySchema;
|
|
32502
|
+
var eventPresetSchema, eventScheduleScopeSchema, eventDestinationModeSchema, publicEventDestinationSchema, eventVenueSchema, eventCategorySchema, pricingTypeSchema, accessRestrictionSchema, eventPricingModeSchema, publicCoursePriceDisplaySchema, publicEventPriceDisplaySchema, publicEventTicketTypePriceDisplaySchema, publicEventAttendanceModeSchema, publicEventAttendanceModeAvailabilitySchema, publicEventTicketTypeAvailabilitySchema, publicEventTicketTypeSchema, publicEventPricingSchema, publicTeamMemberSummarySchema, publicEventSchema, publicEventsArraySchema;
|
|
32500
32503
|
var init_schemas2 = __esm({
|
|
32501
32504
|
"../blocks/src/system/blocks/events/shared/schemas.ts"() {
|
|
32502
32505
|
"use strict";
|
|
@@ -32507,6 +32510,18 @@ var init_schemas2 = __esm({
|
|
|
32507
32510
|
eventPresetSchema = z46.enum(["event", "class", "workshop", "retreat", "performance"]);
|
|
32508
32511
|
eventScheduleScopeSchema = z46.enum(["recurring", "oneOff"]);
|
|
32509
32512
|
eventDestinationModeSchema = z46.enum(["cms-managed", "system-managed"]);
|
|
32513
|
+
publicEventDestinationSchema = z46.discriminatedUnion("kind", [
|
|
32514
|
+
z46.object({
|
|
32515
|
+
kind: z46.literal("native"),
|
|
32516
|
+
mode: eventDestinationModeSchema,
|
|
32517
|
+
path: z46.string()
|
|
32518
|
+
}),
|
|
32519
|
+
z46.object({
|
|
32520
|
+
kind: z46.literal("external"),
|
|
32521
|
+
url: z46.string(),
|
|
32522
|
+
label: z46.string()
|
|
32523
|
+
})
|
|
32524
|
+
]);
|
|
32510
32525
|
eventVenueSchema = z46.object({
|
|
32511
32526
|
id: z46.string(),
|
|
32512
32527
|
name: z46.string(),
|
|
@@ -32521,7 +32536,7 @@ var init_schemas2 = __esm({
|
|
|
32521
32536
|
name: z46.string(),
|
|
32522
32537
|
color: z46.string().nullable()
|
|
32523
32538
|
});
|
|
32524
|
-
pricingTypeSchema = z46.enum(["free", "paid"]);
|
|
32539
|
+
pricingTypeSchema = z46.enum(["free", "paid", "external"]);
|
|
32525
32540
|
accessRestrictionSchema = z46.enum(["none", "category"]);
|
|
32526
32541
|
eventPricingModeSchema = z46.enum(["single", "ticket_types"]);
|
|
32527
32542
|
publicCoursePriceDisplaySchema = z46.discriminatedUnion("kind", [
|
|
@@ -32542,6 +32557,7 @@ var init_schemas2 = __esm({
|
|
|
32542
32557
|
currency: z46.string()
|
|
32543
32558
|
}),
|
|
32544
32559
|
z46.object({ kind: z46.literal("unavailable"), currency: z46.string() }),
|
|
32560
|
+
z46.object({ kind: z46.literal("external"), label: z46.string() }),
|
|
32545
32561
|
z46.object({ kind: z46.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
32546
32562
|
]);
|
|
32547
32563
|
publicEventTicketTypePriceDisplaySchema = z46.union([
|
|
@@ -32620,6 +32636,10 @@ var init_schemas2 = __esm({
|
|
|
32620
32636
|
z46.object({
|
|
32621
32637
|
kind: z46.literal("course"),
|
|
32622
32638
|
display: z46.object({ kind: z46.literal("course"), display: publicCoursePriceDisplaySchema })
|
|
32639
|
+
}),
|
|
32640
|
+
z46.object({
|
|
32641
|
+
kind: z46.literal("external"),
|
|
32642
|
+
display: z46.object({ kind: z46.literal("external"), label: z46.string() })
|
|
32623
32643
|
})
|
|
32624
32644
|
]);
|
|
32625
32645
|
publicTeamMemberSummarySchema = z46.object({
|
|
@@ -32648,7 +32668,8 @@ var init_schemas2 = __esm({
|
|
|
32648
32668
|
image: mediaSchema2.nullable().optional()
|
|
32649
32669
|
}).optional(),
|
|
32650
32670
|
slug: z46.string(),
|
|
32651
|
-
path: z46.string(),
|
|
32671
|
+
path: z46.string().nullable(),
|
|
32672
|
+
destination: publicEventDestinationSchema,
|
|
32652
32673
|
requiresRegistration: z46.boolean(),
|
|
32653
32674
|
deliveryMode: z46.enum(["in_person", "online", "hybrid"]),
|
|
32654
32675
|
attendanceModes: z46.array(publicEventAttendanceModeAvailabilitySchema),
|
|
@@ -33000,11 +33021,45 @@ var init_events = __esm({
|
|
|
33000
33021
|
}
|
|
33001
33022
|
});
|
|
33002
33023
|
|
|
33024
|
+
// ../blocks/src/system/runtime/nodes/events/shared/destination.ts
|
|
33025
|
+
function isRecord3(value) {
|
|
33026
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
33027
|
+
}
|
|
33028
|
+
function isRuntimeEventDestination(value) {
|
|
33029
|
+
if (!isRecord3(value) || typeof value.kind !== "string") return false;
|
|
33030
|
+
if (value.kind === "native") {
|
|
33031
|
+
return (value.mode === "cms-managed" || value.mode === "system-managed") && typeof value.path === "string";
|
|
33032
|
+
}
|
|
33033
|
+
return value.kind === "external" && typeof value.url === "string" && typeof value.label === "string";
|
|
33034
|
+
}
|
|
33035
|
+
function resolveRuntimeEventDestination(event) {
|
|
33036
|
+
if (isRuntimeEventDestination(event.destination)) {
|
|
33037
|
+
return event.destination;
|
|
33038
|
+
}
|
|
33039
|
+
return {
|
|
33040
|
+
kind: "native",
|
|
33041
|
+
mode: event.eventDestinationMode === "system-managed" ? "system-managed" : "cms-managed",
|
|
33042
|
+
path: typeof event.path === "string" ? event.path : ""
|
|
33043
|
+
};
|
|
33044
|
+
}
|
|
33045
|
+
var init_destination = __esm({
|
|
33046
|
+
"../blocks/src/system/runtime/nodes/events/shared/destination.ts"() {
|
|
33047
|
+
"use strict";
|
|
33048
|
+
}
|
|
33049
|
+
});
|
|
33050
|
+
|
|
33003
33051
|
// ../blocks/src/system/runtime/nodes/events/shared/pricing.ts
|
|
33004
33052
|
function resolveRuntimeEventPricing(event) {
|
|
33005
33053
|
if (isPublicEventPricing(event.pricing)) {
|
|
33006
33054
|
return event.pricing;
|
|
33007
33055
|
}
|
|
33056
|
+
const destination = resolveRuntimeEventDestination(event);
|
|
33057
|
+
if (destination.kind === "external") {
|
|
33058
|
+
return {
|
|
33059
|
+
kind: "external",
|
|
33060
|
+
display: { kind: "external", label: "External registration" }
|
|
33061
|
+
};
|
|
33062
|
+
}
|
|
33008
33063
|
const legacy = event;
|
|
33009
33064
|
const currency = readCurrency(legacy.currency);
|
|
33010
33065
|
if (event.requiresRegistration === false) {
|
|
@@ -33041,22 +33096,22 @@ function resolveRuntimeEventPricing(event) {
|
|
|
33041
33096
|
function readCurrency(value) {
|
|
33042
33097
|
return typeof value === "string" && value.trim().length > 0 ? value : DEFAULT_EVENT_CURRENCY;
|
|
33043
33098
|
}
|
|
33044
|
-
function
|
|
33099
|
+
function isRecord4(value) {
|
|
33045
33100
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
33046
33101
|
}
|
|
33047
33102
|
function isPublicEventPricing(value) {
|
|
33048
|
-
if (!
|
|
33049
|
-
return value.kind === "drop_in" || value.kind === "free_registration" || value.kind === "single_paid" || value.kind === "ticket_types" || value.kind === "course";
|
|
33103
|
+
if (!isRecord4(value) || typeof value.kind !== "string") return false;
|
|
33104
|
+
return value.kind === "drop_in" || value.kind === "free_registration" || value.kind === "single_paid" || value.kind === "ticket_types" || value.kind === "course" || value.kind === "external";
|
|
33050
33105
|
}
|
|
33051
33106
|
function isPublicEventTicketType(value) {
|
|
33052
|
-
return
|
|
33107
|
+
return isRecord4(value) && typeof value.id === "string";
|
|
33053
33108
|
}
|
|
33054
33109
|
function readTicketTypePriceDisplay(value, currency) {
|
|
33055
33110
|
const display = readLegacyPriceDisplay(value, currency);
|
|
33056
|
-
return display.kind === "course" ? { kind: "unavailable", currency } : display;
|
|
33111
|
+
return display.kind === "course" || display.kind === "external" ? { kind: "unavailable", currency } : display;
|
|
33057
33112
|
}
|
|
33058
33113
|
function readLegacyPriceDisplay(value, currency) {
|
|
33059
|
-
if (!
|
|
33114
|
+
if (!isRecord4(value) || typeof value.kind !== "string") {
|
|
33060
33115
|
return { kind: "unavailable", currency };
|
|
33061
33116
|
}
|
|
33062
33117
|
const displayCurrency = readCurrency(value.currency);
|
|
@@ -33095,7 +33150,7 @@ function readLegacyPriceDisplay(value, currency) {
|
|
|
33095
33150
|
case "unavailable":
|
|
33096
33151
|
return { kind: "unavailable", currency: displayCurrency };
|
|
33097
33152
|
case "course":
|
|
33098
|
-
return
|
|
33153
|
+
return isRecord4(value.display) ? {
|
|
33099
33154
|
kind: "course",
|
|
33100
33155
|
display: readCoursePriceDisplay(value.display, displayCurrency)
|
|
33101
33156
|
} : {
|
|
@@ -33133,6 +33188,7 @@ var DEFAULT_EVENT_CURRENCY;
|
|
|
33133
33188
|
var init_pricing = __esm({
|
|
33134
33189
|
"../blocks/src/system/runtime/nodes/events/shared/pricing.ts"() {
|
|
33135
33190
|
"use strict";
|
|
33191
|
+
init_destination();
|
|
33136
33192
|
DEFAULT_EVENT_CURRENCY = "USD";
|
|
33137
33193
|
}
|
|
33138
33194
|
});
|
|
@@ -33201,7 +33257,7 @@ function resolveEventRequiresPayment(input) {
|
|
|
33201
33257
|
if (!input.event) {
|
|
33202
33258
|
return false;
|
|
33203
33259
|
}
|
|
33204
|
-
return publicEventPricingType(resolveRuntimeEventPricing(input.event))
|
|
33260
|
+
return publicEventPricingType(resolveRuntimeEventPricing(input.event)) === "paid";
|
|
33205
33261
|
}
|
|
33206
33262
|
var init_registrationDerivations = __esm({
|
|
33207
33263
|
"../blocks/src/system/runtime/nodes/event-registration/registrationDerivations.ts"() {
|
|
@@ -33309,15 +33365,16 @@ function buildEventRegistrationShellBodyText(stepLabels) {
|
|
|
33309
33365
|
return "Preparing dates, tickets, and booking details.";
|
|
33310
33366
|
}
|
|
33311
33367
|
function normalizeEventRegistrationEventInput(value) {
|
|
33312
|
-
if (!
|
|
33368
|
+
if (!isRecord5(value)) {
|
|
33313
33369
|
return value;
|
|
33314
33370
|
}
|
|
33315
33371
|
return {
|
|
33316
33372
|
...value,
|
|
33373
|
+
destination: resolveRuntimeEventDestination(value),
|
|
33317
33374
|
pricing: resolveRuntimeEventPricing(value)
|
|
33318
33375
|
};
|
|
33319
33376
|
}
|
|
33320
|
-
function
|
|
33377
|
+
function isRecord5(value) {
|
|
33321
33378
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
33322
33379
|
}
|
|
33323
33380
|
var EVENT_REGISTRATION_GENERIC_SHELL_STEP_LABELS, EVENT_REGISTRATION_SHELL_STEP_LABELS, contentEntrySchema, eventRegistrationPublicEventSchema, eventRegistrationSourceSchema, eventRegistrationDisplaySchema, eventRegistrationHydrationSchema, eventRegistrationRenderSchema, eventRegistrationIslandMetaCodec, eventRegistrationIslandMetaKeys, eventRegistrationBlockRuntime, eventRegistrationInteractiveIslandPropsCodec;
|
|
@@ -33329,6 +33386,7 @@ var init_event_registration_interactive = __esm({
|
|
|
33329
33386
|
init_event_registration_shared();
|
|
33330
33387
|
init_events();
|
|
33331
33388
|
init_pricing();
|
|
33389
|
+
init_destination();
|
|
33332
33390
|
init_islands();
|
|
33333
33391
|
init_runtime();
|
|
33334
33392
|
init_contract_schemas();
|
|
@@ -36159,7 +36217,7 @@ function inferLegacyOfferingsPreviewGroupOrder(overrides) {
|
|
|
36159
36217
|
return keys.length >= 2 ? keys : [];
|
|
36160
36218
|
}
|
|
36161
36219
|
function normalizeOfferingsPreviewContentForWrite(value) {
|
|
36162
|
-
if (!
|
|
36220
|
+
if (!isRecord6(value)) return null;
|
|
36163
36221
|
const groupOrderValue = value.groupOrder;
|
|
36164
36222
|
if (Array.isArray(groupOrderValue)) {
|
|
36165
36223
|
const normalized = normalizeOfferingsPreviewGroupOrder(groupOrderValue);
|
|
@@ -36172,7 +36230,7 @@ function normalizeOfferingsPreviewContentForWrite(value) {
|
|
|
36172
36230
|
return { ...value, groupOrder: [] };
|
|
36173
36231
|
}
|
|
36174
36232
|
const legacyOrder = inferLegacyOfferingsPreviewGroupOrder(
|
|
36175
|
-
Array.isArray(value.groupOverrides) ? value.groupOverrides.filter(
|
|
36233
|
+
Array.isArray(value.groupOverrides) ? value.groupOverrides.filter(isRecord6) : []
|
|
36176
36234
|
);
|
|
36177
36235
|
return legacyOrder.length > 0 ? { ...value, groupOrder: legacyOrder } : value;
|
|
36178
36236
|
}
|
|
@@ -36186,7 +36244,7 @@ function uniqueOfferingsPreviewSourceKeys(values) {
|
|
|
36186
36244
|
}
|
|
36187
36245
|
return keys;
|
|
36188
36246
|
}
|
|
36189
|
-
function
|
|
36247
|
+
function isRecord6(value) {
|
|
36190
36248
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
36191
36249
|
}
|
|
36192
36250
|
var OFFERINGS_PREVIEW_DEFAULT_ITEM_LIMIT, OFFERINGS_PREVIEW_DEFAULT_BUTTON_TEXT, OFFERINGS_PREVIEW_DEFAULT_EMPTY_MESSAGE, OFFERINGS_PREVIEW_EVENT_PRESET_DEFINITIONS, OFFERINGS_PREVIEW_EVENT_PRESETS, OFFERINGS_PREVIEW_AUTHORABLE_SOURCE_KEYS, OFFERINGS_PREVIEW_SOURCE_KEYS, eventPresetSourceByKey;
|
|
@@ -36309,7 +36367,7 @@ function isOfferingsPreviewItemLimit(value) {
|
|
|
36309
36367
|
return value === "1" || value === "2" || value === "3" || value === "4" || value === "5" || value === "6" || value === null;
|
|
36310
36368
|
}
|
|
36311
36369
|
function normalizeOfferingsPreviewGroupOverride(value) {
|
|
36312
|
-
if (!
|
|
36370
|
+
if (!isRecord7(value)) return [];
|
|
36313
36371
|
const override = {};
|
|
36314
36372
|
if (isOfferingsPreviewSourceKey(value.sourceKey) || value.sourceKey === null) {
|
|
36315
36373
|
override.sourceKey = value.sourceKey;
|
|
@@ -36341,12 +36399,12 @@ function isButtonVariant(value) {
|
|
|
36341
36399
|
return value === "primary" || value === "secondary" || value === "outline" || value === "link" || value === null;
|
|
36342
36400
|
}
|
|
36343
36401
|
function normalizeCardStylesContent(value) {
|
|
36344
|
-
return
|
|
36402
|
+
return isRecord7(value) || value === null ? value : void 0;
|
|
36345
36403
|
}
|
|
36346
36404
|
function normalizeSectionStylesContent(value) {
|
|
36347
|
-
return
|
|
36405
|
+
return isRecord7(value) || value === null ? value : void 0;
|
|
36348
36406
|
}
|
|
36349
|
-
function
|
|
36407
|
+
function isRecord7(value) {
|
|
36350
36408
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
36351
36409
|
}
|
|
36352
36410
|
var publicRouteCandidatesSchema, groupOverrideFields, offeringsPreviewFields, offeringsPreviewEventDataBindings, offeringsPreviewLayout, offeringsPreviewConfig, offeringsPreviewManifest, optionalPublicEventsArraySchema, offeringsPreviewEventDataSchemas, offeringsPreviewEventDataLoaders, offeringsPreviewBlockDefinition;
|
|
@@ -39909,7 +39967,7 @@ function deriveNewsletterSignupRuntimeSource(values) {
|
|
|
39909
39967
|
};
|
|
39910
39968
|
}
|
|
39911
39969
|
function sanitizeNewsletterSignupPublicContent(content) {
|
|
39912
|
-
if (!
|
|
39970
|
+
if (!isRecord8(content)) return content;
|
|
39913
39971
|
const provider = parseNewsletterSignupDestinationProvider(content.destinationProvider) ?? getProviderFromExplicitDestination(content.destination);
|
|
39914
39972
|
const {
|
|
39915
39973
|
destination: _destination,
|
|
@@ -39928,7 +39986,7 @@ function sanitizeNewsletterSignupPublicContent(content) {
|
|
|
39928
39986
|
return mutablePublicContent;
|
|
39929
39987
|
}
|
|
39930
39988
|
function getProviderFromExplicitDestination(destination) {
|
|
39931
|
-
if (!
|
|
39989
|
+
if (!isRecord8(destination) || typeof destination.tag !== "string") return null;
|
|
39932
39990
|
if (destination.tag === "riverbank_list") return "riverbank";
|
|
39933
39991
|
if (destination.tag === "mailchimp_audience") return "mailchimp";
|
|
39934
39992
|
return null;
|
|
@@ -39938,7 +39996,7 @@ function parseTrimmedString(value) {
|
|
|
39938
39996
|
const trimmed = value.trim();
|
|
39939
39997
|
return trimmed.length > 0 ? trimmed : null;
|
|
39940
39998
|
}
|
|
39941
|
-
function
|
|
39999
|
+
function isRecord8(value) {
|
|
39942
40000
|
return typeof value === "object" && value !== null;
|
|
39943
40001
|
}
|
|
39944
40002
|
var BLOCK_ID_PATTERN, SIGNED_DESTINATION_REF_PATTERN;
|
|
@@ -42156,11 +42214,11 @@ function extractRouteUpdatedAt(candidate) {
|
|
|
42156
42214
|
}
|
|
42157
42215
|
function resolveRouteTargetForStage(routeIdValue, routes, stageInput) {
|
|
42158
42216
|
const routeId = typeof routeIdValue === "string" ? routeIdValue : null;
|
|
42159
|
-
if (
|
|
42217
|
+
if (routeId === null || routeId.length === 0 || routes === void 0) return null;
|
|
42160
42218
|
const routeEntry = routes[routeId];
|
|
42161
42219
|
if (!isRouteVisibleInStage(routeEntry, stageInput)) return null;
|
|
42162
42220
|
const href = extractRouteHref(routeEntry, stageInput);
|
|
42163
|
-
if (
|
|
42221
|
+
if (href === null) return null;
|
|
42164
42222
|
return {
|
|
42165
42223
|
routeId,
|
|
42166
42224
|
href,
|
|
@@ -42350,7 +42408,7 @@ var init_transforms = __esm({
|
|
|
42350
42408
|
|
|
42351
42409
|
// ../blocks/src/system/data/linkedContentEntries.ts
|
|
42352
42410
|
function coerceLinkedContentEntriesPayload(payload) {
|
|
42353
|
-
if (!
|
|
42411
|
+
if (!isRecord9(payload)) return payload;
|
|
42354
42412
|
const response = payload;
|
|
42355
42413
|
if (!Array.isArray(response.entries)) return payload;
|
|
42356
42414
|
const contentType = parsePublicContentTypeMeta(response.contentType);
|
|
@@ -42358,12 +42416,12 @@ function coerceLinkedContentEntriesPayload(payload) {
|
|
|
42358
42416
|
return response.entries.map((entry) => enrichLinkedContentEntry(entry, contentType));
|
|
42359
42417
|
}
|
|
42360
42418
|
function enrichLinkedContentEntry(entry, contentType) {
|
|
42361
|
-
if (!
|
|
42419
|
+
if (!isRecord9(entry)) return entry;
|
|
42362
42420
|
const entryId = typeof entry.id === "string" ? entry.id : null;
|
|
42363
42421
|
if (!entryId) return entry;
|
|
42364
42422
|
const title = typeof entry.title === "string" && entry.title.trim().length > 0 ? entry.title : entryId;
|
|
42365
42423
|
const optimisticHash = typeof entry.optimisticHash === "string" && entry.optimisticHash.length > 0 ? entry.optimisticHash : null;
|
|
42366
|
-
const content =
|
|
42424
|
+
const content = isRecord9(entry.content) ? entry.content : {};
|
|
42367
42425
|
const meta = {
|
|
42368
42426
|
kind: "linked-content-entry",
|
|
42369
42427
|
entryId,
|
|
@@ -42456,7 +42514,7 @@ function capitalize(value) {
|
|
|
42456
42514
|
return value.charAt(0).toUpperCase() + value.slice(1).toLowerCase();
|
|
42457
42515
|
}
|
|
42458
42516
|
function parsePublicContentTypeMeta(value) {
|
|
42459
|
-
if (!
|
|
42517
|
+
if (!isRecord9(value)) return null;
|
|
42460
42518
|
if (typeof value.key !== "string" || value.key.trim().length === 0) return null;
|
|
42461
42519
|
return {
|
|
42462
42520
|
key: value.key,
|
|
@@ -42466,7 +42524,7 @@ function parsePublicContentTypeMeta(value) {
|
|
|
42466
42524
|
};
|
|
42467
42525
|
}
|
|
42468
42526
|
function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
42469
|
-
if (!
|
|
42527
|
+
if (!isRecord9(value) || typeof value.kind !== "string") return null;
|
|
42470
42528
|
switch (value.kind) {
|
|
42471
42529
|
case "generic":
|
|
42472
42530
|
return { kind: "generic" };
|
|
@@ -42480,7 +42538,7 @@ function parsePublicContentTypeLinkedEntryEditing(value) {
|
|
|
42480
42538
|
}
|
|
42481
42539
|
}
|
|
42482
42540
|
function parsePublicContentTypeFieldMeta(value) {
|
|
42483
|
-
if (!
|
|
42541
|
+
if (!isRecord9(value)) return [];
|
|
42484
42542
|
if (typeof value.id !== "string" || typeof value.type !== "string") return [];
|
|
42485
42543
|
return [{
|
|
42486
42544
|
id: value.id,
|
|
@@ -42494,7 +42552,7 @@ function parseStringArray(value) {
|
|
|
42494
42552
|
if (!Array.isArray(value)) return null;
|
|
42495
42553
|
return value.filter((item) => typeof item === "string");
|
|
42496
42554
|
}
|
|
42497
|
-
function
|
|
42555
|
+
function isRecord9(value) {
|
|
42498
42556
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
42499
42557
|
}
|
|
42500
42558
|
var LINKED_CONTENT_ENTRY_META_KEY;
|
|
@@ -45687,8 +45745,15 @@ var init_event_destination_policy = __esm({
|
|
|
45687
45745
|
}
|
|
45688
45746
|
});
|
|
45689
45747
|
|
|
45748
|
+
// ../api/src/event-listing-destination.ts
|
|
45749
|
+
var init_event_listing_destination = __esm({
|
|
45750
|
+
"../api/src/event-listing-destination.ts"() {
|
|
45751
|
+
"use strict";
|
|
45752
|
+
}
|
|
45753
|
+
});
|
|
45754
|
+
|
|
45690
45755
|
// ../api/src/utils/isRecord.ts
|
|
45691
|
-
function
|
|
45756
|
+
function isRecord10(value) {
|
|
45692
45757
|
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
45693
45758
|
}
|
|
45694
45759
|
var init_isRecord = __esm({
|
|
@@ -46061,7 +46126,7 @@ function sanitizeMarks(marks) {
|
|
|
46061
46126
|
if (mark.type === "bold" || mark.type === "strong" || mark.type === "italic" || mark.type === "em") {
|
|
46062
46127
|
return [{ type: mark.type }];
|
|
46063
46128
|
}
|
|
46064
|
-
if (mark.type === "link" &&
|
|
46129
|
+
if (mark.type === "link" && isRecord10(mark.attrs) && typeof mark.attrs.href === "string") {
|
|
46065
46130
|
const attrs = { href: mark.attrs.href };
|
|
46066
46131
|
if (typeof mark.attrs.target === "string" && mark.attrs.target.trim().length > 0) {
|
|
46067
46132
|
attrs.target = mark.attrs.target;
|
|
@@ -46076,10 +46141,10 @@ function sanitizeMarks(marks) {
|
|
|
46076
46141
|
return sanitized.length > 0 ? sanitized : void 0;
|
|
46077
46142
|
}
|
|
46078
46143
|
function unwrapRichTextValue(value) {
|
|
46079
|
-
if (
|
|
46144
|
+
if (isRecord10(value) && isRecord10(value.doc)) {
|
|
46080
46145
|
return unwrapRichTextValue(value.doc);
|
|
46081
46146
|
}
|
|
46082
|
-
if (
|
|
46147
|
+
if (isRecord10(value) && value.type === "doc") {
|
|
46083
46148
|
return {
|
|
46084
46149
|
type: "doc",
|
|
46085
46150
|
content: Array.isArray(value.content) ? value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) : []
|
|
@@ -46088,7 +46153,7 @@ function unwrapRichTextValue(value) {
|
|
|
46088
46153
|
return EMPTY_SITE_BANNER_BODY;
|
|
46089
46154
|
}
|
|
46090
46155
|
function isTipTapNodeLike(value) {
|
|
46091
|
-
return
|
|
46156
|
+
return isRecord10(value) && typeof value.type === "string";
|
|
46092
46157
|
}
|
|
46093
46158
|
function coerceTipTapNode(value) {
|
|
46094
46159
|
return {
|
|
@@ -46096,9 +46161,9 @@ function coerceTipTapNode(value) {
|
|
|
46096
46161
|
...Array.isArray(value.content) ? { content: value.content.filter(isTipTapNodeLike).map(coerceTipTapNode) } : {},
|
|
46097
46162
|
...typeof value.text === "string" ? { text: value.text } : {},
|
|
46098
46163
|
...Array.isArray(value.marks) ? {
|
|
46099
|
-
marks: value.marks.filter((mark) =>
|
|
46164
|
+
marks: value.marks.filter((mark) => isRecord10(mark) && typeof mark.type === "string").map((mark) => ({
|
|
46100
46165
|
type: mark.type,
|
|
46101
|
-
...
|
|
46166
|
+
...isRecord10(mark.attrs) ? { attrs: mark.attrs } : {}
|
|
46102
46167
|
}))
|
|
46103
46168
|
} : {}
|
|
46104
46169
|
};
|
|
@@ -46411,11 +46476,20 @@ var init_dashboardSiteNav = __esm({
|
|
|
46411
46476
|
}
|
|
46412
46477
|
});
|
|
46413
46478
|
|
|
46479
|
+
// ../api/src/settings/permissions.ts
|
|
46480
|
+
var init_permissions = __esm({
|
|
46481
|
+
"../api/src/settings/permissions.ts"() {
|
|
46482
|
+
"use strict";
|
|
46483
|
+
init_siteMembers();
|
|
46484
|
+
}
|
|
46485
|
+
});
|
|
46486
|
+
|
|
46414
46487
|
// ../api/src/navigation/dashboardSettingsNav.ts
|
|
46415
46488
|
var hiddenDemoSettingsNavSurfaceIds, hiddenDemoSettingsNavIds;
|
|
46416
46489
|
var init_dashboardSettingsNav = __esm({
|
|
46417
46490
|
"../api/src/navigation/dashboardSettingsNav.ts"() {
|
|
46418
46491
|
"use strict";
|
|
46492
|
+
init_permissions();
|
|
46419
46493
|
init_visibility();
|
|
46420
46494
|
init_dashboardSiteNav();
|
|
46421
46495
|
hiddenDemoSettingsNavSurfaceIds = [
|
|
@@ -46498,6 +46572,7 @@ var init_navigation = __esm({
|
|
|
46498
46572
|
init_linkUrlType();
|
|
46499
46573
|
init_dashboardSiteNav();
|
|
46500
46574
|
init_dashboardSettingsNav();
|
|
46575
|
+
init_permissions();
|
|
46501
46576
|
init_dashboardTeamMemberNav();
|
|
46502
46577
|
init_dashboardBookingsNav();
|
|
46503
46578
|
init_identity();
|
|
@@ -46690,6 +46765,7 @@ var init_src5 = __esm({
|
|
|
46690
46765
|
init_customerMembershipOutcomes();
|
|
46691
46766
|
init_bookingVerticals();
|
|
46692
46767
|
init_event_destination_policy();
|
|
46768
|
+
init_event_listing_destination();
|
|
46693
46769
|
init_appointmentSetup();
|
|
46694
46770
|
init_bookingOperations();
|
|
46695
46771
|
init_bookings();
|
|
@@ -46725,6 +46801,7 @@ var init_src5 = __esm({
|
|
|
46725
46801
|
init_linkUrlType();
|
|
46726
46802
|
init_dashboardSiteNav();
|
|
46727
46803
|
init_dashboardSettingsNav();
|
|
46804
|
+
init_permissions();
|
|
46728
46805
|
init_automaticWorkflowTriggers();
|
|
46729
46806
|
init_linkResolver();
|
|
46730
46807
|
init_matcher();
|
|
@@ -46752,7 +46829,7 @@ var init_src5 = __esm({
|
|
|
46752
46829
|
function isSupportedLoaderEndpoint2(endpoint) {
|
|
46753
46830
|
return SUPPORTED_LOADER_ENDPOINTS.includes(endpoint);
|
|
46754
46831
|
}
|
|
46755
|
-
function
|
|
46832
|
+
function isRecord11(value) {
|
|
46756
46833
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
46757
46834
|
}
|
|
46758
46835
|
function extractManualEntryRef(item) {
|
|
@@ -46760,7 +46837,7 @@ function extractManualEntryRef(item) {
|
|
|
46760
46837
|
const trimmed = item.trim();
|
|
46761
46838
|
return trimmed.length > 0 ? trimmed : null;
|
|
46762
46839
|
}
|
|
46763
|
-
if (!
|
|
46840
|
+
if (!isRecord11(item)) return null;
|
|
46764
46841
|
for (const key of ENTRY_REF_KEYS) {
|
|
46765
46842
|
const raw = item[key];
|
|
46766
46843
|
if (typeof raw === "string" && raw.trim().length > 0) {
|
|
@@ -47142,7 +47219,7 @@ function collectMediaAssetSidecar(mediaAssets) {
|
|
|
47142
47219
|
return Array.isArray(mediaAssets) && mediaAssets.length > 0 ? mediaAssets : void 0;
|
|
47143
47220
|
}
|
|
47144
47221
|
function convertPageResponseBlock(block) {
|
|
47145
|
-
if (!
|
|
47222
|
+
if (!isRecord12(block)) {
|
|
47146
47223
|
throw new Error("Invalid block format in page API response");
|
|
47147
47224
|
}
|
|
47148
47225
|
if (typeof block.id !== "string" && block.id !== null) {
|
|
@@ -47173,20 +47250,20 @@ function buildPageOutline(input) {
|
|
|
47173
47250
|
blocks: input.blocks.map(convertPageResponseBlock)
|
|
47174
47251
|
};
|
|
47175
47252
|
}
|
|
47176
|
-
function
|
|
47253
|
+
function isRecord12(value) {
|
|
47177
47254
|
return Boolean(value) && typeof value === "object" && !Array.isArray(value);
|
|
47178
47255
|
}
|
|
47179
47256
|
function readContentRecord(value) {
|
|
47180
|
-
return
|
|
47257
|
+
return isRecord12(value) ? value : void 0;
|
|
47181
47258
|
}
|
|
47182
47259
|
function readNestedContentRecord(value) {
|
|
47183
|
-
if (!
|
|
47260
|
+
if (!isRecord12(value)) return null;
|
|
47184
47261
|
return readContentRecord(value.data) ?? null;
|
|
47185
47262
|
}
|
|
47186
47263
|
function sanitizeSdkRuntimeBlockContent(blockKind, content) {
|
|
47187
47264
|
if (blockKind !== "block.newsletter-signup") return content;
|
|
47188
47265
|
const sanitized = sanitizeNewsletterSignupPublicContent(content);
|
|
47189
|
-
return
|
|
47266
|
+
return isRecord12(sanitized) ? sanitized : {};
|
|
47190
47267
|
}
|
|
47191
47268
|
function sanitizeNullableSdkRuntimeBlockContent(blockKind, content) {
|
|
47192
47269
|
return content ? sanitizeSdkRuntimeBlockContent(blockKind, content) : null;
|