@riverbankcms/sdk 0.60.6 → 0.60.7
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/_dts/api/src/appointmentSetup.d.ts +2 -2
- package/dist/_dts/api/src/bookingConfig.d.ts +6 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +45 -3
- package/dist/_dts/api/src/bookingOperations.d.ts +40 -3
- package/dist/_dts/api/src/courses.d.ts +1 -5
- package/dist/_dts/api/src/endpoints.d.ts +80 -1
- package/dist/_dts/api/src/index.d.ts +3 -2
- package/dist/_dts/api/src/navigation/contracts.d.ts +9 -9
- package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +15 -1
- package/dist/_dts/api/src/resources.d.ts +1 -1
- package/dist/_dts/api/src/siteBanner.d.ts +8 -8
- package/dist/_dts/api/src/siteOnboarding.d.ts +1 -0
- package/dist/_dts/api/src/teamMembers.d.ts +27 -0
- package/dist/_dts/blocks/src/system/blocks/courses/shared/schemas.d.ts +35 -29
- package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +1 -5
- package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +40 -34
- package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +1 -5
- package/dist/_dts/blocks/src/system/blocks/product-list.d.ts +1 -1
- package/dist/_dts/blocks/src/system/blocks/products/shared.d.ts +2 -2
- package/dist/_dts/blocks/src/system/blocks/shared/bookingPaymentTerms.d.ts +9 -9
- package/dist/_dts/blocks/src/system/blocks/shared/teamMembers.d.ts +24 -0
- package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +18 -8
- package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/utils.d.ts +1 -1
- package/dist/_dts/blocks/src/system/manifest/schema.d.ts +201 -201
- package/dist/_dts/blocks/src/system/manifest/validation.d.ts +2 -2
- package/dist/_dts/blocks/src/system/node/schema.d.ts +5 -5
- package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +1 -1
- package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +4 -4
- package/dist/_dts/blocks/src/system/transforms/registry/ui.d.ts +1 -1
- package/dist/_dts/blocks/src/system/transforms/typed.d.ts +3 -3
- package/dist/_dts/content-model/src/content-types/schema.d.ts +8 -8
- package/dist/_dts/content-model/src/metadataConfig.d.ts +1 -0
- package/dist/_dts/core/src/branded.d.ts +2 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +124 -8
- package/dist/_dts/db/src/schemas/forms.d.ts +61 -61
- package/dist/_dts/sdk/src/client/types.d.ts +9 -2
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +40 -37
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +17 -8
- package/dist/_dts/sdk/src/data/prefetchBlockData.d.ts +1 -1
- package/dist/_dts/sdk/src/manifest/passes/pass1-fields.d.ts +19 -19
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +87 -69
- package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +2 -5
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/_dts/theme-core/src/accordions/types.d.ts +11 -11
- package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +10 -10
- package/dist/_dts/theme-core/src/buttons/types.d.ts +27 -27
- package/dist/_dts/theme-core/src/cards/types.d.ts +17 -17
- package/dist/_dts/theme-core/src/inputs/types.d.ts +14 -14
- package/dist/_dts/theme-core/src/interactive/baseSchema.d.ts +2 -2
- package/dist/_dts/theme-core/src/mock-themes/all.d.ts +438 -438
- package/dist/_dts/theme-core/src/navigation/types.d.ts +16 -16
- package/dist/_dts/theme-core/src/palette/variants/types.d.ts +15 -15
- package/dist/_dts/theme-core/src/schema.d.ts +662 -662
- package/dist/_dts/theme-core/src/shared/componentStyles.d.ts +4 -4
- package/dist/_dts/theme-core/src/site-styles/designState.d.ts +15 -15
- package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +7 -7
- package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
- package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +5 -5
- package/dist/_dts/ui/src/badge.d.ts +1 -1
- package/dist/_dts/ui/src/button-group.d.ts +1 -1
- package/dist/_dts/ui/src/button.d.ts +2 -2
- package/dist/_dts/ui/src/callout.d.ts +1 -1
- package/dist/_dts/ui/src/card.d.ts +1 -1
- package/dist/_dts/ui/src/surface.d.ts +2 -2
- package/dist/_dts/ui/src/toggle.d.ts +4 -4
- package/dist/cli/index.mjs +276 -24
- package/dist/client/client.mjs +607 -306
- package/dist/client/hooks.mjs +272 -23
- package/dist/client/rendering/client.mjs +179 -130
- package/dist/client/rendering/islands.mjs +68 -43
- package/dist/client/rendering.mjs +646 -363
- package/dist/preview-next/before-render.mjs +147 -1
- package/dist/preview-next/client/runtime.mjs +338 -43
- package/dist/preview-next/middleware.mjs +147 -1
- package/dist/server/components.mjs +727 -470
- package/dist/server/config-validation.mjs +488 -254
- package/dist/server/config.mjs +488 -254
- package/dist/server/data.mjs +272 -23
- package/dist/server/index.mjs +168 -2
- package/dist/server/next.mjs +476 -185
- package/dist/server/page-converter.mjs +335 -249
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +742 -469
- package/dist/server/rendering.mjs +742 -469
- package/dist/server/routing.mjs +274 -24
- package/dist/server/server.mjs +291 -24
- package/package.json +1 -1
package/dist/client/client.mjs
CHANGED
|
@@ -10955,7 +10955,19 @@ var init_teamMember = __esm({
|
|
|
10955
10955
|
bind("photo")
|
|
10956
10956
|
)
|
|
10957
10957
|
]),
|
|
10958
|
-
|
|
10958
|
+
link(
|
|
10959
|
+
{
|
|
10960
|
+
href: { $bind: { from: "profilePath" } },
|
|
10961
|
+
className: "rb-team-member-name-link"
|
|
10962
|
+
},
|
|
10963
|
+
[text({ as: "h3" }, bind("name"))],
|
|
10964
|
+
when("profilePath")
|
|
10965
|
+
),
|
|
10966
|
+
text(
|
|
10967
|
+
{ as: "h3" },
|
|
10968
|
+
when("profilePath", { not: true }),
|
|
10969
|
+
bind("name")
|
|
10970
|
+
),
|
|
10959
10971
|
text({ as: "p", className: "rb-team-member-role" }, when("role"), bind("role")),
|
|
10960
10972
|
richText(
|
|
10961
10973
|
{ className: "rb-prose rb-max-w-none" },
|
|
@@ -11819,7 +11831,9 @@ var init_schemas = __esm({
|
|
|
11819
11831
|
courseTeamMemberSummarySchema = z44.object({
|
|
11820
11832
|
id: z44.string(),
|
|
11821
11833
|
name: z44.string(),
|
|
11822
|
-
|
|
11834
|
+
roleLabel: z44.string().nullable(),
|
|
11835
|
+
summary: z44.string().nullable(),
|
|
11836
|
+
profilePath: z44.string().nullable()
|
|
11823
11837
|
});
|
|
11824
11838
|
coursePricingOptionSchema = z44.object({
|
|
11825
11839
|
id: z44.string(),
|
|
@@ -11934,7 +11948,9 @@ var init_schemas2 = __esm({
|
|
|
11934
11948
|
publicTeamMemberSummarySchema = z45.object({
|
|
11935
11949
|
id: z45.string(),
|
|
11936
11950
|
name: z45.string(),
|
|
11937
|
-
|
|
11951
|
+
roleLabel: z45.string().nullable(),
|
|
11952
|
+
summary: z45.string().nullable(),
|
|
11953
|
+
profilePath: z45.string().nullable()
|
|
11938
11954
|
});
|
|
11939
11955
|
publicEventSchema = z45.object({
|
|
11940
11956
|
kind: z45.enum(["event", "course_session"]).optional(),
|
|
@@ -22510,7 +22526,7 @@ var init_booking_form_state = __esm({
|
|
|
22510
22526
|
});
|
|
22511
22527
|
|
|
22512
22528
|
// ../blocks/src/system/runtime/nodes/booking-form.interactive.ts
|
|
22513
|
-
import { z as
|
|
22529
|
+
import { z as z64 } from "zod";
|
|
22514
22530
|
function buildBookingFormDisplay(source, form2 = normalizeBookingFormConfig(source.form)) {
|
|
22515
22531
|
return {
|
|
22516
22532
|
kind: "booking-form",
|
|
@@ -22541,14 +22557,14 @@ var init_booking_form_interactive = __esm({
|
|
|
22541
22557
|
init_runtime();
|
|
22542
22558
|
init_booking_form_state();
|
|
22543
22559
|
init_bookingPaymentTerms();
|
|
22544
|
-
bookingFieldOptionSchema =
|
|
22545
|
-
value:
|
|
22546
|
-
label:
|
|
22560
|
+
bookingFieldOptionSchema = z64.object({
|
|
22561
|
+
value: z64.string(),
|
|
22562
|
+
label: z64.string()
|
|
22547
22563
|
});
|
|
22548
|
-
bookingFieldSchema =
|
|
22549
|
-
id:
|
|
22550
|
-
label:
|
|
22551
|
-
type:
|
|
22564
|
+
bookingFieldSchema = z64.object({
|
|
22565
|
+
id: z64.string(),
|
|
22566
|
+
label: z64.string(),
|
|
22567
|
+
type: z64.enum([
|
|
22552
22568
|
"text",
|
|
22553
22569
|
"email",
|
|
22554
22570
|
"textarea",
|
|
@@ -22562,132 +22578,132 @@ var init_booking_form_interactive = __esm({
|
|
|
22562
22578
|
"date",
|
|
22563
22579
|
"time"
|
|
22564
22580
|
]),
|
|
22565
|
-
required:
|
|
22566
|
-
placeholder:
|
|
22567
|
-
helpText:
|
|
22568
|
-
options:
|
|
22569
|
-
multiple:
|
|
22570
|
-
minLength:
|
|
22571
|
-
maxLength:
|
|
22572
|
-
pattern:
|
|
22573
|
-
min:
|
|
22574
|
-
max:
|
|
22581
|
+
required: z64.boolean().optional(),
|
|
22582
|
+
placeholder: z64.string().optional(),
|
|
22583
|
+
helpText: z64.string().optional(),
|
|
22584
|
+
options: z64.array(bookingFieldOptionSchema).optional(),
|
|
22585
|
+
multiple: z64.boolean().optional(),
|
|
22586
|
+
minLength: z64.number().optional(),
|
|
22587
|
+
maxLength: z64.number().optional(),
|
|
22588
|
+
pattern: z64.string().optional(),
|
|
22589
|
+
min: z64.number().optional(),
|
|
22590
|
+
max: z64.number().optional()
|
|
22575
22591
|
});
|
|
22576
|
-
bookingSettingsSchema =
|
|
22577
|
-
type:
|
|
22578
|
-
serviceId:
|
|
22579
|
-
serviceIds:
|
|
22580
|
-
resourceId:
|
|
22581
|
-
requiresApproval:
|
|
22582
|
-
successMessage:
|
|
22592
|
+
bookingSettingsSchema = z64.object({
|
|
22593
|
+
type: z64.literal("booking"),
|
|
22594
|
+
serviceId: z64.string().optional(),
|
|
22595
|
+
serviceIds: z64.array(z64.string()).optional(),
|
|
22596
|
+
resourceId: z64.string().optional(),
|
|
22597
|
+
requiresApproval: z64.boolean().optional(),
|
|
22598
|
+
successMessage: z64.string().optional()
|
|
22583
22599
|
});
|
|
22584
|
-
bookingSourceFormSchema =
|
|
22585
|
-
id:
|
|
22586
|
-
siteId:
|
|
22587
|
-
userId:
|
|
22588
|
-
name:
|
|
22589
|
-
schemaJson:
|
|
22590
|
-
version:
|
|
22591
|
-
fields:
|
|
22600
|
+
bookingSourceFormSchema = z64.object({
|
|
22601
|
+
id: z64.string(),
|
|
22602
|
+
siteId: z64.string(),
|
|
22603
|
+
userId: z64.string(),
|
|
22604
|
+
name: z64.string(),
|
|
22605
|
+
schemaJson: z64.object({
|
|
22606
|
+
version: z64.string().optional(),
|
|
22607
|
+
fields: z64.array(bookingFieldSchema).optional()
|
|
22592
22608
|
}).optional(),
|
|
22593
22609
|
settingsJson: bookingSettingsSchema.optional(),
|
|
22594
|
-
createdAt:
|
|
22595
|
-
updatedAt:
|
|
22610
|
+
createdAt: z64.string(),
|
|
22611
|
+
updatedAt: z64.string()
|
|
22596
22612
|
});
|
|
22597
|
-
blockBookingPaymentTermsAvailabilitySchema =
|
|
22598
|
-
|
|
22599
|
-
kind:
|
|
22613
|
+
blockBookingPaymentTermsAvailabilitySchema = z64.union([
|
|
22614
|
+
z64.object({
|
|
22615
|
+
kind: z64.literal("available"),
|
|
22600
22616
|
paymentTerms: blockBookingPaymentTermsSchema
|
|
22601
22617
|
}),
|
|
22602
|
-
|
|
22603
|
-
kind:
|
|
22618
|
+
z64.object({
|
|
22619
|
+
kind: z64.literal("pending_stripe_setup"),
|
|
22604
22620
|
paymentTerms: blockBookingPaymentTermsSchema,
|
|
22605
|
-
reason:
|
|
22621
|
+
reason: z64.literal("online_payment_configured_before_launch")
|
|
22606
22622
|
})
|
|
22607
22623
|
]);
|
|
22608
|
-
bookingServiceSchema =
|
|
22609
|
-
id:
|
|
22610
|
-
siteId:
|
|
22611
|
-
title:
|
|
22612
|
-
description:
|
|
22613
|
-
durationMinutes:
|
|
22614
|
-
priceAmount:
|
|
22615
|
-
priceCurrency:
|
|
22624
|
+
bookingServiceSchema = z64.object({
|
|
22625
|
+
id: z64.string(),
|
|
22626
|
+
siteId: z64.string(),
|
|
22627
|
+
title: z64.string(),
|
|
22628
|
+
description: z64.string().nullable().optional().transform((value) => value ?? void 0),
|
|
22629
|
+
durationMinutes: z64.number().optional(),
|
|
22630
|
+
priceAmount: z64.number().nullable().optional(),
|
|
22631
|
+
priceCurrency: z64.string().nullable().optional(),
|
|
22616
22632
|
paymentTerms: blockBookingPaymentTermsSchema.optional(),
|
|
22617
22633
|
paymentTermsAvailability: blockBookingPaymentTermsAvailabilitySchema.optional()
|
|
22618
22634
|
});
|
|
22619
|
-
bookingServicesSourceSchema =
|
|
22620
|
-
|
|
22621
|
-
|
|
22622
|
-
services:
|
|
22635
|
+
bookingServicesSourceSchema = z64.union([
|
|
22636
|
+
z64.array(bookingServiceSchema),
|
|
22637
|
+
z64.object({
|
|
22638
|
+
services: z64.array(bookingServiceSchema).optional()
|
|
22623
22639
|
}),
|
|
22624
|
-
|
|
22640
|
+
z64.record(z64.string(), bookingServiceSchema)
|
|
22625
22641
|
]);
|
|
22626
|
-
bookingConfigSchema =
|
|
22627
|
-
id:
|
|
22628
|
-
name:
|
|
22629
|
-
slug:
|
|
22642
|
+
bookingConfigSchema = z64.object({
|
|
22643
|
+
id: z64.string(),
|
|
22644
|
+
name: z64.string(),
|
|
22645
|
+
slug: z64.string(),
|
|
22630
22646
|
settings: bookingSettingsSchema.optional(),
|
|
22631
|
-
schema:
|
|
22632
|
-
version:
|
|
22633
|
-
fields:
|
|
22647
|
+
schema: z64.object({
|
|
22648
|
+
version: z64.string().optional(),
|
|
22649
|
+
fields: z64.array(bookingFieldSchema)
|
|
22634
22650
|
}).optional()
|
|
22635
22651
|
});
|
|
22636
|
-
bookingSourceSchema =
|
|
22637
|
-
siteId:
|
|
22638
|
-
apiBaseUrl:
|
|
22639
|
-
portalToken:
|
|
22640
|
-
formId:
|
|
22641
|
-
serviceId:
|
|
22642
|
-
resourceId:
|
|
22643
|
-
initialData:
|
|
22644
|
-
noticeMessage:
|
|
22645
|
-
requiresServiceSelection:
|
|
22646
|
-
requiresResourceSelection:
|
|
22647
|
-
shouldAutoSelectSingleResource:
|
|
22648
|
-
rebookContext:
|
|
22649
|
-
kind:
|
|
22652
|
+
bookingSourceSchema = z64.object({
|
|
22653
|
+
siteId: z64.string().optional(),
|
|
22654
|
+
apiBaseUrl: z64.string().optional(),
|
|
22655
|
+
portalToken: z64.string().nullable().optional(),
|
|
22656
|
+
formId: z64.string().optional(),
|
|
22657
|
+
serviceId: z64.string().nullable().optional(),
|
|
22658
|
+
resourceId: z64.string().nullable().optional(),
|
|
22659
|
+
initialData: z64.record(z64.string(), z64.unknown()).nullable().optional(),
|
|
22660
|
+
noticeMessage: z64.string().nullable().optional(),
|
|
22661
|
+
requiresServiceSelection: z64.boolean().optional(),
|
|
22662
|
+
requiresResourceSelection: z64.boolean().optional(),
|
|
22663
|
+
shouldAutoSelectSingleResource: z64.boolean().optional(),
|
|
22664
|
+
rebookContext: z64.object({
|
|
22665
|
+
kind: z64.literal("portal_rebook")
|
|
22650
22666
|
}).nullable().optional(),
|
|
22651
|
-
submitLabel:
|
|
22652
|
-
successMessage:
|
|
22667
|
+
submitLabel: z64.string().nullable().optional(),
|
|
22668
|
+
successMessage: z64.string().nullable().optional(),
|
|
22653
22669
|
form: bookingSourceFormSchema.nullable().optional(),
|
|
22654
22670
|
services: bookingServicesSourceSchema.nullable().optional(),
|
|
22655
|
-
spamProtectionEnabled:
|
|
22656
|
-
className:
|
|
22671
|
+
spamProtectionEnabled: z64.boolean().optional(),
|
|
22672
|
+
className: z64.string().nullable().optional()
|
|
22657
22673
|
});
|
|
22658
|
-
bookingDisplaySchema =
|
|
22659
|
-
kind:
|
|
22660
|
-
state:
|
|
22661
|
-
className:
|
|
22662
|
-
submitLabel:
|
|
22663
|
-
successMessage:
|
|
22664
|
-
message:
|
|
22674
|
+
bookingDisplaySchema = z64.object({
|
|
22675
|
+
kind: z64.literal("booking-form"),
|
|
22676
|
+
state: z64.enum(["missing", "ready"]),
|
|
22677
|
+
className: z64.string().nullable(),
|
|
22678
|
+
submitLabel: z64.string(),
|
|
22679
|
+
successMessage: z64.string().nullable(),
|
|
22680
|
+
message: z64.string().nullable()
|
|
22665
22681
|
});
|
|
22666
|
-
bookingHydrationSchema =
|
|
22667
|
-
formId:
|
|
22668
|
-
serviceId:
|
|
22669
|
-
resourceId:
|
|
22670
|
-
initialData:
|
|
22671
|
-
noticeMessage:
|
|
22672
|
-
requiresServiceSelection:
|
|
22673
|
-
requiresResourceSelection:
|
|
22674
|
-
shouldAutoSelectSingleResource:
|
|
22675
|
-
rebookContext:
|
|
22676
|
-
kind:
|
|
22682
|
+
bookingHydrationSchema = z64.object({
|
|
22683
|
+
formId: z64.string().nullable(),
|
|
22684
|
+
serviceId: z64.string().nullable(),
|
|
22685
|
+
resourceId: z64.string().nullable(),
|
|
22686
|
+
initialData: z64.record(z64.string(), z64.unknown()).nullable().optional(),
|
|
22687
|
+
noticeMessage: z64.string().nullable().optional(),
|
|
22688
|
+
requiresServiceSelection: z64.boolean().optional(),
|
|
22689
|
+
requiresResourceSelection: z64.boolean().optional(),
|
|
22690
|
+
shouldAutoSelectSingleResource: z64.boolean().optional(),
|
|
22691
|
+
rebookContext: z64.object({
|
|
22692
|
+
kind: z64.literal("portal_rebook")
|
|
22677
22693
|
}).nullable().optional(),
|
|
22678
22694
|
form: bookingConfigSchema.nullable(),
|
|
22679
|
-
services:
|
|
22680
|
-
spamProtectionEnabled:
|
|
22695
|
+
services: z64.array(bookingServiceSchema),
|
|
22696
|
+
spamProtectionEnabled: z64.boolean().optional()
|
|
22681
22697
|
});
|
|
22682
|
-
bookingRenderSchema =
|
|
22698
|
+
bookingRenderSchema = z64.object({
|
|
22683
22699
|
display: bookingDisplaySchema,
|
|
22684
22700
|
hydration: bookingHydrationSchema
|
|
22685
22701
|
});
|
|
22686
22702
|
bookingFormIslandMetaCodec = createZodCodec(
|
|
22687
|
-
|
|
22688
|
-
siteId:
|
|
22689
|
-
apiBaseUrl:
|
|
22690
|
-
portalToken:
|
|
22703
|
+
z64.object({
|
|
22704
|
+
siteId: z64.string().optional(),
|
|
22705
|
+
apiBaseUrl: z64.string().optional(),
|
|
22706
|
+
portalToken: z64.string().nullable().optional()
|
|
22691
22707
|
})
|
|
22692
22708
|
);
|
|
22693
22709
|
bookingFormIslandMetaKeys = defineInteractiveIslandMetaKeys(
|
|
@@ -22943,6 +22959,12 @@ var init_CoursePricingDisplay = __esm({
|
|
|
22943
22959
|
|
|
22944
22960
|
// ../blocks/src/system/runtime/nodes/event-details/view.tsx
|
|
22945
22961
|
import { Fragment as Fragment3, jsx as jsx27, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
22962
|
+
function TeamMemberName({
|
|
22963
|
+
name,
|
|
22964
|
+
profilePath
|
|
22965
|
+
}) {
|
|
22966
|
+
return profilePath ? /* @__PURE__ */ jsx27("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx27("strong", { children: name }) }) : /* @__PURE__ */ jsx27("strong", { children: name });
|
|
22967
|
+
}
|
|
22946
22968
|
function EventDetailsView({
|
|
22947
22969
|
selection,
|
|
22948
22970
|
showVenue,
|
|
@@ -23006,7 +23028,13 @@ function EventDetailsView({
|
|
|
23006
23028
|
teamMembers.length > 0 ? /* @__PURE__ */ jsxs13("div", { className: "rb-mt-6", children: [
|
|
23007
23029
|
/* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: "Team members" }),
|
|
23008
23030
|
/* @__PURE__ */ jsx27("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs13("div", { children: [
|
|
23009
|
-
/* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27(
|
|
23031
|
+
/* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27(
|
|
23032
|
+
TeamMemberName,
|
|
23033
|
+
{
|
|
23034
|
+
name: teamMember.name,
|
|
23035
|
+
profilePath: teamMember.profilePath
|
|
23036
|
+
}
|
|
23037
|
+
) }),
|
|
23010
23038
|
teamMember.summary ? /* @__PURE__ */ jsx27("p", { className: "rb-caption status-muted", children: teamMember.summary }) : null
|
|
23011
23039
|
] }, teamMember.id)) })
|
|
23012
23040
|
] }) : null,
|
|
@@ -23397,6 +23425,12 @@ var init_runs = __esm({
|
|
|
23397
23425
|
|
|
23398
23426
|
// ../blocks/src/system/runtime/nodes/course-details/view.tsx
|
|
23399
23427
|
import { jsx as jsx31, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
23428
|
+
function TeamMemberName2({
|
|
23429
|
+
name,
|
|
23430
|
+
profilePath
|
|
23431
|
+
}) {
|
|
23432
|
+
return profilePath ? /* @__PURE__ */ jsx31("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx31("strong", { children: name }) }) : /* @__PURE__ */ jsx31("strong", { children: name });
|
|
23433
|
+
}
|
|
23400
23434
|
function parseLimit2(value, fallback2) {
|
|
23401
23435
|
if (value === "all") return "all";
|
|
23402
23436
|
const n = typeof value === "string" ? Number.parseInt(value, 10) : typeof value === "number" ? value : NaN;
|
|
@@ -23454,7 +23488,13 @@ function CourseDetailsView(props2) {
|
|
|
23454
23488
|
teamMembers.length > 0 && /* @__PURE__ */ jsxs17("div", { children: [
|
|
23455
23489
|
/* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Team members" }),
|
|
23456
23490
|
/* @__PURE__ */ jsx31("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs17("div", { children: [
|
|
23457
|
-
/* @__PURE__ */ jsx31("p", { children: /* @__PURE__ */ jsx31(
|
|
23491
|
+
/* @__PURE__ */ jsx31("p", { children: /* @__PURE__ */ jsx31(
|
|
23492
|
+
TeamMemberName2,
|
|
23493
|
+
{
|
|
23494
|
+
name: teamMember.name,
|
|
23495
|
+
profilePath: teamMember.profilePath
|
|
23496
|
+
}
|
|
23497
|
+
) }),
|
|
23458
23498
|
teamMember.summary && /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: teamMember.summary })
|
|
23459
23499
|
] }, teamMember.id)) })
|
|
23460
23500
|
] })
|
|
@@ -23655,7 +23695,7 @@ var init_EventSpotlight = __esm({
|
|
|
23655
23695
|
});
|
|
23656
23696
|
|
|
23657
23697
|
// ../blocks/src/system/runtime/nodes/events/EventCombined.interactive.ts
|
|
23658
|
-
import { z as
|
|
23698
|
+
import { z as z65 } from "zod";
|
|
23659
23699
|
function buildEventCombinedDisplay(source) {
|
|
23660
23700
|
return {
|
|
23661
23701
|
kind: "event-combined",
|
|
@@ -23732,87 +23772,87 @@ var init_EventCombined_interactive = __esm({
|
|
|
23732
23772
|
init_runtime();
|
|
23733
23773
|
init_shared5();
|
|
23734
23774
|
init_contract_schemas();
|
|
23735
|
-
eventBlockKindSchema3 =
|
|
23736
|
-
eventSurfaceScopeSchema3 =
|
|
23737
|
-
eventScheduleScopeSchema4 =
|
|
23738
|
-
eventCombinedSourceSchema =
|
|
23775
|
+
eventBlockKindSchema3 = z65.enum(eventBlockKindValues);
|
|
23776
|
+
eventSurfaceScopeSchema3 = z65.enum(eventSurfaceScopeValues);
|
|
23777
|
+
eventScheduleScopeSchema4 = z65.enum(eventScheduleScopeValues);
|
|
23778
|
+
eventCombinedSourceSchema = z65.object(
|
|
23739
23779
|
{
|
|
23740
|
-
events:
|
|
23741
|
-
siteId:
|
|
23742
|
-
apiBaseUrl:
|
|
23780
|
+
events: z65.array(publicEventSchema).nullable().optional(),
|
|
23781
|
+
siteId: z65.string(),
|
|
23782
|
+
apiBaseUrl: z65.string().optional(),
|
|
23743
23783
|
stage: previewStageSchema.optional(),
|
|
23744
23784
|
listLayout: eventLayoutSchema.optional(),
|
|
23745
23785
|
listColumns: columnOptionSchema.optional(),
|
|
23746
|
-
eventsPerPage:
|
|
23747
|
-
compactEventsPerPage:
|
|
23748
|
-
loadMoreText:
|
|
23786
|
+
eventsPerPage: z65.string().optional(),
|
|
23787
|
+
compactEventsPerPage: z65.string().optional(),
|
|
23788
|
+
loadMoreText: z65.string().optional(),
|
|
23749
23789
|
startOfWeek: weekStartSchema.optional(),
|
|
23750
23790
|
calendarTabViews: calendarTabViewsSchema.optional(),
|
|
23751
|
-
showFilters:
|
|
23791
|
+
showFilters: z65.boolean().nullable().optional(),
|
|
23752
23792
|
showCategoryFilter: filterAutoShowSchema.optional(),
|
|
23753
|
-
showVenueFilter:
|
|
23754
|
-
showStaffFilter:
|
|
23793
|
+
showVenueFilter: z65.boolean().nullable().optional(),
|
|
23794
|
+
showStaffFilter: z65.boolean().nullable().optional(),
|
|
23755
23795
|
eventKind: eventBlockKindSchema3.nullable().optional(),
|
|
23756
23796
|
eventSurface: eventSurfaceScopeSchema3.nullable().optional(),
|
|
23757
|
-
filterEventPresets:
|
|
23797
|
+
filterEventPresets: z65.union([z65.string(), z65.array(z65.string())]).nullable().optional(),
|
|
23758
23798
|
scheduleScope: eventScheduleScopeSchema4.nullable().optional(),
|
|
23759
|
-
filterCategoryIds:
|
|
23760
|
-
filterStaffMemberId:
|
|
23761
|
-
filterVenueId:
|
|
23762
|
-
showVenue:
|
|
23763
|
-
showMap:
|
|
23764
|
-
showCapacity:
|
|
23799
|
+
filterCategoryIds: z65.union([z65.string(), z65.array(z65.string())]).nullable().optional(),
|
|
23800
|
+
filterStaffMemberId: z65.string().nullable().optional(),
|
|
23801
|
+
filterVenueId: z65.string().nullable().optional(),
|
|
23802
|
+
showVenue: z65.boolean().nullable().optional(),
|
|
23803
|
+
showMap: z65.boolean().nullable().optional(),
|
|
23804
|
+
showCapacity: z65.boolean().nullable().optional(),
|
|
23765
23805
|
buttonVariant: eventButtonVariantSchema.optional(),
|
|
23766
|
-
buttonText:
|
|
23767
|
-
emptyMessage:
|
|
23768
|
-
className:
|
|
23806
|
+
buttonText: z65.string().optional(),
|
|
23807
|
+
emptyMessage: z65.string().optional(),
|
|
23808
|
+
className: z65.string().optional()
|
|
23769
23809
|
}
|
|
23770
23810
|
);
|
|
23771
|
-
eventCombinedDisplaySchema =
|
|
23772
|
-
kind:
|
|
23773
|
-
className:
|
|
23774
|
-
events:
|
|
23811
|
+
eventCombinedDisplaySchema = z65.object({
|
|
23812
|
+
kind: z65.literal("event-combined"),
|
|
23813
|
+
className: z65.string().nullable(),
|
|
23814
|
+
events: z65.array(publicEventSchema),
|
|
23775
23815
|
listLayout: eventLayoutSchema,
|
|
23776
23816
|
listColumns: columnOptionSchema,
|
|
23777
|
-
eventsPerPage:
|
|
23778
|
-
loadMoreText:
|
|
23817
|
+
eventsPerPage: z65.string(),
|
|
23818
|
+
loadMoreText: z65.string(),
|
|
23779
23819
|
startOfWeek: weekStartSchema,
|
|
23780
23820
|
calendarTabViews: calendarTabViewsSchema,
|
|
23781
|
-
showFilters:
|
|
23821
|
+
showFilters: z65.boolean(),
|
|
23782
23822
|
showCategoryFilter: filterAutoShowSchema,
|
|
23783
|
-
showVenueFilter:
|
|
23784
|
-
showStaffFilter:
|
|
23823
|
+
showVenueFilter: z65.boolean(),
|
|
23824
|
+
showStaffFilter: z65.boolean(),
|
|
23785
23825
|
eventKind: eventBlockKindSchema3,
|
|
23786
23826
|
eventSurface: eventSurfaceScopeSchema3,
|
|
23787
|
-
filterEventPresets:
|
|
23827
|
+
filterEventPresets: z65.string().nullable(),
|
|
23788
23828
|
scheduleScope: eventScheduleScopeSchema4,
|
|
23789
|
-
filterCategoryIds:
|
|
23790
|
-
filterStaffMemberId:
|
|
23791
|
-
filterVenueId:
|
|
23792
|
-
showVenue:
|
|
23793
|
-
showMap:
|
|
23794
|
-
showCapacity:
|
|
23829
|
+
filterCategoryIds: z65.string().nullable(),
|
|
23830
|
+
filterStaffMemberId: z65.string().nullable(),
|
|
23831
|
+
filterVenueId: z65.string().nullable(),
|
|
23832
|
+
showVenue: z65.boolean(),
|
|
23833
|
+
showMap: z65.boolean(),
|
|
23834
|
+
showCapacity: z65.boolean(),
|
|
23795
23835
|
buttonVariant: eventButtonVariantSchema,
|
|
23796
|
-
buttonText:
|
|
23797
|
-
emptyMessage:
|
|
23836
|
+
buttonText: z65.string(),
|
|
23837
|
+
emptyMessage: z65.string()
|
|
23798
23838
|
});
|
|
23799
|
-
eventCombinedHydrationSchema =
|
|
23800
|
-
siteId:
|
|
23839
|
+
eventCombinedHydrationSchema = z65.object({
|
|
23840
|
+
siteId: z65.string(),
|
|
23801
23841
|
stage: previewStageSchema.optional(),
|
|
23802
|
-
prefetchedEvents:
|
|
23842
|
+
prefetchedEvents: z65.boolean(),
|
|
23803
23843
|
eventKind: eventBlockKindSchema3,
|
|
23804
23844
|
eventSurface: eventSurfaceScopeSchema3,
|
|
23805
|
-
filterEventPresets:
|
|
23845
|
+
filterEventPresets: z65.string().nullable(),
|
|
23806
23846
|
scheduleScope: eventScheduleScopeSchema4
|
|
23807
23847
|
});
|
|
23808
|
-
eventCombinedRenderSchema =
|
|
23848
|
+
eventCombinedRenderSchema = z65.object({
|
|
23809
23849
|
display: eventCombinedDisplaySchema,
|
|
23810
23850
|
hydration: eventCombinedHydrationSchema
|
|
23811
23851
|
});
|
|
23812
23852
|
eventCombinedIslandMetaCodec = createZodCodec(
|
|
23813
|
-
|
|
23814
|
-
siteId:
|
|
23815
|
-
apiBaseUrl:
|
|
23853
|
+
z65.object({
|
|
23854
|
+
siteId: z65.string(),
|
|
23855
|
+
apiBaseUrl: z65.string().optional(),
|
|
23816
23856
|
stage: previewStageSchema.optional()
|
|
23817
23857
|
})
|
|
23818
23858
|
);
|
|
@@ -25779,7 +25819,7 @@ function ze() {
|
|
|
25779
25819
|
/* @__PURE__ */ Te(P)
|
|
25780
25820
|
);
|
|
25781
25821
|
}
|
|
25782
|
-
function
|
|
25822
|
+
function z66(e) {
|
|
25783
25823
|
if (L) {
|
|
25784
25824
|
if (/* @__PURE__ */ Te(P) !== null)
|
|
25785
25825
|
throw Tt(), Je;
|
|
@@ -27808,12 +27848,12 @@ function ha(e, t) {
|
|
|
27808
27848
|
var mt = we(Dr, 2);
|
|
27809
27849
|
let Pr;
|
|
27810
27850
|
var We = X2(mt);
|
|
27811
|
-
en(We), We.__change = ui,
|
|
27851
|
+
en(We), We.__change = ui, z66(mt);
|
|
27812
27852
|
var Ut = we(mt, 2), wi = X2(Ut);
|
|
27813
27853
|
{
|
|
27814
27854
|
var pi = (n) => {
|
|
27815
27855
|
var u = na(), _ = Gr(u), y = X2(_);
|
|
27816
|
-
Ge(y, () => c(re).verified),
|
|
27856
|
+
Ge(y, () => c(re).verified), z66(_);
|
|
27817
27857
|
var T = we(_, 2);
|
|
27818
27858
|
en(T), Pe(() => {
|
|
27819
27859
|
se(T, "name", V()), jo(T, c(Le));
|
|
@@ -27822,10 +27862,10 @@ function ha(e, t) {
|
|
|
27822
27862
|
{
|
|
27823
27863
|
var _ = (T) => {
|
|
27824
27864
|
var E = ia(), p = X2(E);
|
|
27825
|
-
Ge(p, () => c(re).verifying),
|
|
27865
|
+
Ge(p, () => c(re).verifying), z66(E), ne(T, E);
|
|
27826
27866
|
}, y = (T) => {
|
|
27827
27867
|
var E = oa(), p = X2(E);
|
|
27828
|
-
Ge(p, () => c(re).label),
|
|
27868
|
+
Ge(p, () => c(re).label), z66(E), Pe(() => se(E, "for", c(cr))), ne(T, E);
|
|
27829
27869
|
};
|
|
27830
27870
|
$e(
|
|
27831
27871
|
n,
|
|
@@ -27840,18 +27880,18 @@ function ha(e, t) {
|
|
|
27840
27880
|
c(C) === b.VERIFIED ? n(pi) : n(bi, false);
|
|
27841
27881
|
});
|
|
27842
27882
|
}
|
|
27843
|
-
|
|
27883
|
+
z66(Ut);
|
|
27844
27884
|
var yi = we(Ut, 2);
|
|
27845
27885
|
{
|
|
27846
27886
|
var Ei = (n) => {
|
|
27847
27887
|
var u = aa(), _ = X2(u);
|
|
27848
|
-
se(_, "href", sr),
|
|
27888
|
+
se(_, "href", sr), z66(u), Pe(() => se(_, "aria-label", c(re).ariaLinkLabel)), ne(n, u);
|
|
27849
27889
|
};
|
|
27850
27890
|
$e(yi, (n) => {
|
|
27851
27891
|
(N() !== true || c(Dt)) && n(Ei);
|
|
27852
27892
|
});
|
|
27853
27893
|
}
|
|
27854
|
-
|
|
27894
|
+
z66(Mt);
|
|
27855
27895
|
var Or = we(Mt, 2);
|
|
27856
27896
|
{
|
|
27857
27897
|
var xi = (n) => {
|
|
@@ -27859,16 +27899,16 @@ function ha(e, t) {
|
|
|
27859
27899
|
{
|
|
27860
27900
|
var y = (E) => {
|
|
27861
27901
|
var p = la(), x = X2(p);
|
|
27862
|
-
Ge(x, () => c(re).expired),
|
|
27902
|
+
Ge(x, () => c(re).expired), z66(p), Pe(() => se(p, "title", c(He))), ne(E, p);
|
|
27863
27903
|
}, T = (E) => {
|
|
27864
27904
|
var p = sa(), x = X2(p);
|
|
27865
|
-
Ge(x, () => c(re).error),
|
|
27905
|
+
Ge(x, () => c(re).error), z66(p), Pe(() => se(p, "title", c(He))), ne(E, p);
|
|
27866
27906
|
};
|
|
27867
27907
|
$e(_, (E) => {
|
|
27868
27908
|
c(C) === b.EXPIRED ? E(y) : E(T, false);
|
|
27869
27909
|
});
|
|
27870
27910
|
}
|
|
27871
|
-
|
|
27911
|
+
z66(u), ne(n, u);
|
|
27872
27912
|
};
|
|
27873
27913
|
$e(Or, (n) => {
|
|
27874
27914
|
(c(He) || c(C) === b.EXPIRED) && n(xi);
|
|
@@ -27878,7 +27918,7 @@ function ha(e, t) {
|
|
|
27878
27918
|
{
|
|
27879
27919
|
var $i = (n) => {
|
|
27880
27920
|
var u = ua(), _ = X2(u), y = X2(_);
|
|
27881
|
-
Ge(y, () => c(re).footer),
|
|
27921
|
+
Ge(y, () => c(re).footer), z66(_), z66(u), ne(n, u);
|
|
27882
27922
|
};
|
|
27883
27923
|
$e(Fr, (n) => {
|
|
27884
27924
|
c(re).footer && (k() !== true || c(Dt)) && n($i);
|
|
@@ -27894,7 +27934,7 @@ function ha(e, t) {
|
|
|
27894
27934
|
v() && n(Ci);
|
|
27895
27935
|
});
|
|
27896
27936
|
}
|
|
27897
|
-
return
|
|
27937
|
+
return z66(ot), nn(ot, (n) => D(B, n), () => c(B)), Pe(
|
|
27898
27938
|
(n) => {
|
|
27899
27939
|
se(ot, "data-state", c(C)), se(ot, "data-floating", v()), Pr = Fo(mt, 1, "altcha-checkbox", null, Pr, n), se(We, "id", c(cr)), We.required = r2() !== "onsubmit" && (!v() || r2() !== "off");
|
|
27900
27940
|
},
|
|
@@ -36201,7 +36241,16 @@ var init_CourseRegistrationErrorBoundary = __esm({
|
|
|
36201
36241
|
});
|
|
36202
36242
|
|
|
36203
36243
|
// ../blocks/src/system/runtime/nodes/course-registration/components.tsx
|
|
36244
|
+
import React19 from "react";
|
|
36204
36245
|
import { Fragment as Fragment15, jsx as jsx105, jsxs as jsxs78 } from "react/jsx-runtime";
|
|
36246
|
+
function TeamMemberInlineList({
|
|
36247
|
+
teamMembers
|
|
36248
|
+
}) {
|
|
36249
|
+
return /* @__PURE__ */ jsx105(Fragment15, { children: teamMembers.map((teamMember, index) => /* @__PURE__ */ jsxs78(React19.Fragment, { children: [
|
|
36250
|
+
index > 0 ? ", " : "",
|
|
36251
|
+
teamMember.profilePath ? /* @__PURE__ */ jsx105("a", { href: teamMember.profilePath, children: teamMember.name }) : teamMember.name
|
|
36252
|
+
] }, teamMember.id)) });
|
|
36253
|
+
}
|
|
36205
36254
|
function CourseCard({
|
|
36206
36255
|
course,
|
|
36207
36256
|
isSelected,
|
|
@@ -36282,7 +36331,7 @@ function CourseSummary({
|
|
|
36282
36331
|
teamMembers.length > 0 && /* @__PURE__ */ jsxs78("div", { className: "cr-summary__venue", children: [
|
|
36283
36332
|
/* @__PURE__ */ jsx105("strong", { children: "Team:" }),
|
|
36284
36333
|
" ",
|
|
36285
|
-
|
|
36334
|
+
/* @__PURE__ */ jsx105(TeamMemberInlineList, { teamMembers })
|
|
36286
36335
|
] }),
|
|
36287
36336
|
showPrice && pricing.display.kind !== "unavailable" && /* @__PURE__ */ jsxs78("p", { className: "cr-summary__price", children: [
|
|
36288
36337
|
/* @__PURE__ */ jsx105("strong", { children: pricing.selectableOptions.length > 0 ? "Pricing:" : "Price:" }),
|
|
@@ -37840,7 +37889,7 @@ var init_location_map_client = __esm({
|
|
|
37840
37889
|
});
|
|
37841
37890
|
|
|
37842
37891
|
// ../blocks/src/system/runtime/nodes/shop-commerce-store.ts
|
|
37843
|
-
import * as
|
|
37892
|
+
import * as React21 from "react";
|
|
37844
37893
|
function storageKey(siteId) {
|
|
37845
37894
|
return `riverbank:shop-cart:${siteId}`;
|
|
37846
37895
|
}
|
|
@@ -37856,8 +37905,8 @@ function addPassToCommerceCart(siteId, input) {
|
|
|
37856
37905
|
}
|
|
37857
37906
|
function useCommerceCart(siteId) {
|
|
37858
37907
|
const effectiveSiteId = siteId ?? "unknown";
|
|
37859
|
-
const store =
|
|
37860
|
-
const state =
|
|
37908
|
+
const store = React21.useMemo(() => getStore(effectiveSiteId), [effectiveSiteId]);
|
|
37909
|
+
const state = React21.useSyncExternalStore(
|
|
37861
37910
|
(listener) => store.subscribe(listener),
|
|
37862
37911
|
() => store.getSnapshot(),
|
|
37863
37912
|
() => EMPTY_STATE
|
|
@@ -37952,11 +38001,11 @@ var init_shop_commerce_store = __esm({
|
|
|
37952
38001
|
});
|
|
37953
38002
|
|
|
37954
38003
|
// ../blocks/src/system/runtime/nodes/shop-add-feedback.tsx
|
|
37955
|
-
import * as
|
|
38004
|
+
import * as React22 from "react";
|
|
37956
38005
|
import { jsx as jsx111, jsxs as jsxs82 } from "react/jsx-runtime";
|
|
37957
38006
|
function useTransientShopAddFeedback(timeoutMs = DEFAULT_TIMEOUT_MS) {
|
|
37958
|
-
const [activeKey, setActiveKey] =
|
|
37959
|
-
|
|
38007
|
+
const [activeKey, setActiveKey] = React22.useState(null);
|
|
38008
|
+
React22.useEffect(() => {
|
|
37960
38009
|
if (!activeKey) return;
|
|
37961
38010
|
const timeoutId = window.setTimeout(() => {
|
|
37962
38011
|
setActiveKey((current) => current === activeKey ? null : current);
|
|
@@ -38113,7 +38162,7 @@ var init_shop_state = __esm({
|
|
|
38113
38162
|
});
|
|
38114
38163
|
|
|
38115
38164
|
// ../blocks/src/system/runtime/nodes/shop.client.tsx
|
|
38116
|
-
import
|
|
38165
|
+
import React23, { useCallback as useCallback10, useEffect as useEffect23, useRef as useRef11, useState as useState19 } from "react";
|
|
38117
38166
|
import { Fragment as Fragment17, jsx as jsx112, jsxs as jsxs83 } from "react/jsx-runtime";
|
|
38118
38167
|
function ShopClient(props2) {
|
|
38119
38168
|
return /* @__PURE__ */ jsx112(PassesMembershipsController, { render: props2.render });
|
|
@@ -38125,7 +38174,7 @@ function getCheckoutModalTitle(checkout2) {
|
|
|
38125
38174
|
}
|
|
38126
38175
|
function PassesMembershipsController({ render }) {
|
|
38127
38176
|
const api = useBlockApi();
|
|
38128
|
-
const [state, dispatch] =
|
|
38177
|
+
const [state, dispatch] = React23.useReducer(
|
|
38129
38178
|
shopPassesMembershipsReducer,
|
|
38130
38179
|
initialShopPassesMembershipsState
|
|
38131
38180
|
);
|
|
@@ -40343,7 +40392,7 @@ var init_embla_carousel_react_esm = __esm({
|
|
|
40343
40392
|
});
|
|
40344
40393
|
|
|
40345
40394
|
// ../blocks/src/system/runtime/nodes/carousel.client.tsx
|
|
40346
|
-
import
|
|
40395
|
+
import React24 from "react";
|
|
40347
40396
|
import { Fragment as Fragment18, jsx as jsx113, jsxs as jsxs84 } from "react/jsx-runtime";
|
|
40348
40397
|
function normalizeCarouselProps(input) {
|
|
40349
40398
|
const transition = input.transition === "fade" ? "fade" : "slide";
|
|
@@ -40398,8 +40447,8 @@ var init_carousel_client = __esm({
|
|
|
40398
40447
|
autoplayDelay,
|
|
40399
40448
|
loop
|
|
40400
40449
|
}) => {
|
|
40401
|
-
const slides =
|
|
40402
|
-
const normalized =
|
|
40450
|
+
const slides = React24.Children.toArray(children).filter(Boolean);
|
|
40451
|
+
const normalized = React24.useMemo(
|
|
40403
40452
|
() => normalizeCarouselProps({
|
|
40404
40453
|
slidesToShow,
|
|
40405
40454
|
transition,
|
|
@@ -40422,11 +40471,11 @@ var init_carousel_client = __esm({
|
|
|
40422
40471
|
]
|
|
40423
40472
|
);
|
|
40424
40473
|
const resolvedSlides = resolveSlidesToShowMobile(normalized.slidesToShow);
|
|
40425
|
-
const cssVars =
|
|
40474
|
+
const cssVars = React24.useMemo(
|
|
40426
40475
|
() => getCarouselSlidesToShowCssVars(normalized.slidesToShow),
|
|
40427
40476
|
[normalized.slidesToShow]
|
|
40428
40477
|
);
|
|
40429
|
-
const plugins =
|
|
40478
|
+
const plugins = React24.useMemo(() => {
|
|
40430
40479
|
if (!normalized.autoplay) return void 0;
|
|
40431
40480
|
return [
|
|
40432
40481
|
Autoplay({
|
|
@@ -40448,11 +40497,11 @@ var init_carousel_client = __esm({
|
|
|
40448
40497
|
},
|
|
40449
40498
|
plugins
|
|
40450
40499
|
);
|
|
40451
|
-
const [selectedIndex, setSelectedIndex] =
|
|
40452
|
-
const [scrollSnaps, setScrollSnaps] =
|
|
40453
|
-
const [canScrollPrev, setCanScrollPrev] =
|
|
40454
|
-
const [canScrollNext, setCanScrollNext] =
|
|
40455
|
-
|
|
40500
|
+
const [selectedIndex, setSelectedIndex] = React24.useState(0);
|
|
40501
|
+
const [scrollSnaps, setScrollSnaps] = React24.useState([]);
|
|
40502
|
+
const [canScrollPrev, setCanScrollPrev] = React24.useState(false);
|
|
40503
|
+
const [canScrollNext, setCanScrollNext] = React24.useState(false);
|
|
40504
|
+
React24.useEffect(() => {
|
|
40456
40505
|
if (!api) return;
|
|
40457
40506
|
const onInit = () => {
|
|
40458
40507
|
setScrollSnaps(api.scrollSnapList());
|
|
@@ -40475,7 +40524,7 @@ var init_carousel_client = __esm({
|
|
|
40475
40524
|
api.off("reInit", onSelect);
|
|
40476
40525
|
};
|
|
40477
40526
|
}, [api]);
|
|
40478
|
-
|
|
40527
|
+
React24.useEffect(() => {
|
|
40479
40528
|
if (!api || !normalized.autoplay) return;
|
|
40480
40529
|
const autoplayPlugin = api.plugins()?.autoplay;
|
|
40481
40530
|
if (!autoplayPlugin) return;
|
|
@@ -40686,16 +40735,16 @@ var init_shop_checkout_state = __esm({
|
|
|
40686
40735
|
});
|
|
40687
40736
|
|
|
40688
40737
|
// ../blocks/src/system/runtime/nodes/shop-commerce.tsx
|
|
40689
|
-
import * as
|
|
40738
|
+
import * as React25 from "react";
|
|
40690
40739
|
import { Fragment as Fragment19, jsx as jsx114, jsxs as jsxs85 } from "react/jsx-runtime";
|
|
40691
40740
|
function ProductListController(props2) {
|
|
40692
40741
|
const api = useBlockApi();
|
|
40693
40742
|
const cart2 = useCommerceCart(api.config.siteId);
|
|
40694
40743
|
const addFeedback = useTransientShopAddFeedback();
|
|
40695
|
-
const [variantSelection, setVariantSelection] =
|
|
40744
|
+
const [variantSelection, setVariantSelection] = React25.useState(
|
|
40696
40745
|
() => Object.fromEntries(props2.render.display.cards.map((card) => [card.productId, card.selectedVariantId]))
|
|
40697
40746
|
);
|
|
40698
|
-
const cards =
|
|
40747
|
+
const cards = React25.useMemo(
|
|
40699
40748
|
() => props2.render.hydration.products.map(
|
|
40700
40749
|
(product) => buildProductCardDisplay(
|
|
40701
40750
|
product,
|
|
@@ -40710,7 +40759,7 @@ function ProductListController(props2) {
|
|
|
40710
40759
|
),
|
|
40711
40760
|
[props2.render.hydration, variantSelection]
|
|
40712
40761
|
);
|
|
40713
|
-
const display =
|
|
40762
|
+
const display = React25.useMemo(
|
|
40714
40763
|
() => ({
|
|
40715
40764
|
...props2.render.display,
|
|
40716
40765
|
state: cards.length === 0 ? "empty" : "ready",
|
|
@@ -40772,17 +40821,17 @@ function ProductDetailController(props2) {
|
|
|
40772
40821
|
const api = useBlockApi();
|
|
40773
40822
|
const cart2 = useCommerceCart(api.config.siteId);
|
|
40774
40823
|
const addFeedback = useTransientShopAddFeedback();
|
|
40775
|
-
const selectedProduct =
|
|
40824
|
+
const selectedProduct = React25.useMemo(
|
|
40776
40825
|
() => props2.render.hydration.products.find((product) => product.id === props2.render.hydration.productId) ?? null,
|
|
40777
40826
|
[props2.render.hydration.productId, props2.render.hydration.products]
|
|
40778
40827
|
);
|
|
40779
|
-
const [variantId, setVariantId] =
|
|
40828
|
+
const [variantId, setVariantId] = React25.useState(
|
|
40780
40829
|
props2.render.display.state === "ready" ? props2.render.display.selectedVariantId : null
|
|
40781
40830
|
);
|
|
40782
|
-
|
|
40831
|
+
React25.useEffect(() => {
|
|
40783
40832
|
setVariantId(props2.render.display.state === "ready" ? props2.render.display.selectedVariantId : null);
|
|
40784
40833
|
}, [props2.render.display]);
|
|
40785
|
-
const display =
|
|
40834
|
+
const display = React25.useMemo(
|
|
40786
40835
|
() => buildProductDetailDisplay(
|
|
40787
40836
|
selectedProduct,
|
|
40788
40837
|
{
|
|
@@ -40850,7 +40899,7 @@ function ProductDetailController(props2) {
|
|
|
40850
40899
|
function CartController(props2) {
|
|
40851
40900
|
const api = useBlockApi();
|
|
40852
40901
|
const cart2 = useCommerceCart(api.config.siteId);
|
|
40853
|
-
const display =
|
|
40902
|
+
const display = React25.useMemo(
|
|
40854
40903
|
() => getShopDisplayForItems(props2.render, cart2.items),
|
|
40855
40904
|
[cart2.items, props2.render]
|
|
40856
40905
|
);
|
|
@@ -40893,11 +40942,11 @@ function CartController(props2) {
|
|
|
40893
40942
|
function CheckoutController(props2) {
|
|
40894
40943
|
const api = useBlockApi();
|
|
40895
40944
|
const cart2 = useCommerceCart(api.config.siteId);
|
|
40896
|
-
const [state, dispatch] =
|
|
40945
|
+
const [state, dispatch] = React25.useReducer(
|
|
40897
40946
|
shopCheckoutReducer,
|
|
40898
40947
|
initialShopCheckoutState
|
|
40899
40948
|
);
|
|
40900
|
-
|
|
40949
|
+
React25.useEffect(() => {
|
|
40901
40950
|
const checkout2 = consumeSearchParam("checkout");
|
|
40902
40951
|
if (checkout2 === "success") {
|
|
40903
40952
|
cart2.clear();
|
|
@@ -40906,7 +40955,7 @@ function CheckoutController(props2) {
|
|
|
40906
40955
|
dispatch({ type: "setNotice", notice: "cancelled" });
|
|
40907
40956
|
}
|
|
40908
40957
|
}, [cart2]);
|
|
40909
|
-
const display =
|
|
40958
|
+
const display = React25.useMemo(
|
|
40910
40959
|
() => getShopDisplayForItems(props2.render, cart2.items),
|
|
40911
40960
|
[cart2.items, props2.render]
|
|
40912
40961
|
);
|
|
@@ -41066,7 +41115,7 @@ var init_checkout_client = __esm({
|
|
|
41066
41115
|
});
|
|
41067
41116
|
|
|
41068
41117
|
// ../blocks/src/system/runtime/header/HeaderCartDrawer.tsx
|
|
41069
|
-
import * as
|
|
41118
|
+
import * as React26 from "react";
|
|
41070
41119
|
import { jsx as jsx119, jsxs as jsxs86 } from "react/jsx-runtime";
|
|
41071
41120
|
function normalizeQuantityInput(value) {
|
|
41072
41121
|
const parsed = Number(value);
|
|
@@ -41116,8 +41165,8 @@ function HeaderCartDrawerItems(props2) {
|
|
|
41116
41165
|
)) });
|
|
41117
41166
|
}
|
|
41118
41167
|
function HeaderCartDrawer(props2) {
|
|
41119
|
-
const titleId =
|
|
41120
|
-
const display =
|
|
41168
|
+
const titleId = React26.useId();
|
|
41169
|
+
const display = React26.useMemo(
|
|
41121
41170
|
() => buildCartDisplay(props2.cart.items, {
|
|
41122
41171
|
heading: "Cart",
|
|
41123
41172
|
emptyMessage: "Your cart is empty.",
|
|
@@ -41331,15 +41380,15 @@ var init_HeaderCartTrigger = __esm({
|
|
|
41331
41380
|
});
|
|
41332
41381
|
|
|
41333
41382
|
// ../blocks/src/system/runtime/header/headerCartRuntime.tsx
|
|
41334
|
-
import * as
|
|
41383
|
+
import * as React27 from "react";
|
|
41335
41384
|
import { createPortal as createPortal2 } from "react-dom";
|
|
41336
41385
|
import { createRoot } from "react-dom/client";
|
|
41337
41386
|
import { Fragment as Fragment20, jsx as jsx121, jsxs as jsxs88 } from "react/jsx-runtime";
|
|
41338
41387
|
function HeaderCartRuntime(props2) {
|
|
41339
41388
|
const cart2 = useCommerceCart(props2.siteId);
|
|
41340
|
-
const itemCount =
|
|
41341
|
-
const [open, setOpen] =
|
|
41342
|
-
const checkoutHref =
|
|
41389
|
+
const itemCount = React27.useMemo(() => getCartItemCount(cart2.items), [cart2.items]);
|
|
41390
|
+
const [open, setOpen] = React27.useState(false);
|
|
41391
|
+
const checkoutHref = React27.useMemo(
|
|
41343
41392
|
() => resolveHeaderCartCheckoutHref(
|
|
41344
41393
|
props2.mounts,
|
|
41345
41394
|
typeof window === "undefined" ? null : window.location.pathname
|
|
@@ -59254,13 +59303,150 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
59254
59303
|
"server:internal_error"
|
|
59255
59304
|
]
|
|
59256
59305
|
},
|
|
59257
|
-
|
|
59306
|
+
removeAppointmentResource: {
|
|
59258
59307
|
path: "/sites/{siteId}/bookings/resources/{resourceId}",
|
|
59259
59308
|
method: "DELETE",
|
|
59260
59309
|
auth: "user",
|
|
59261
59310
|
responseKind: "json",
|
|
59262
59311
|
errors: ["resource:not_found", "server:internal_error"]
|
|
59263
59312
|
},
|
|
59313
|
+
createTeamMemberProfile: {
|
|
59314
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile",
|
|
59315
|
+
method: "POST",
|
|
59316
|
+
auth: "user",
|
|
59317
|
+
responseKind: "json",
|
|
59318
|
+
errors: [
|
|
59319
|
+
"validation:invalid_input",
|
|
59320
|
+
"resource:not_found",
|
|
59321
|
+
"resource:conflict",
|
|
59322
|
+
"server:internal_error"
|
|
59323
|
+
]
|
|
59324
|
+
},
|
|
59325
|
+
updateTeamMemberProfilePolicy: {
|
|
59326
|
+
path: "/sites/{siteId}/bookings/resources/profile-policy",
|
|
59327
|
+
method: "PUT",
|
|
59328
|
+
auth: "user",
|
|
59329
|
+
responseKind: "json",
|
|
59330
|
+
errors: ["validation:invalid_input", "server:internal_error"]
|
|
59331
|
+
},
|
|
59332
|
+
updateTeamMemberProfileContent: {
|
|
59333
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/content",
|
|
59334
|
+
method: "PUT",
|
|
59335
|
+
tags: [
|
|
59336
|
+
"site-{siteId}",
|
|
59337
|
+
"content-{siteId}-team-member",
|
|
59338
|
+
"content-entry-{entryId}"
|
|
59339
|
+
],
|
|
59340
|
+
auth: "user",
|
|
59341
|
+
responseKind: "json",
|
|
59342
|
+
errors: [
|
|
59343
|
+
"validation:invalid_input",
|
|
59344
|
+
"resource:not_found",
|
|
59345
|
+
"resource:conflict",
|
|
59346
|
+
"server:internal_error"
|
|
59347
|
+
]
|
|
59348
|
+
},
|
|
59349
|
+
publishTeamMemberProfile: {
|
|
59350
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/publish",
|
|
59351
|
+
method: "POST",
|
|
59352
|
+
tags: [
|
|
59353
|
+
"site-{siteId}",
|
|
59354
|
+
"content-{siteId}-team-member",
|
|
59355
|
+
"content-entry-{entryId}"
|
|
59356
|
+
],
|
|
59357
|
+
auth: "user",
|
|
59358
|
+
responseKind: "json",
|
|
59359
|
+
errors: [
|
|
59360
|
+
"validation:invalid_input",
|
|
59361
|
+
"resource:not_found",
|
|
59362
|
+
"server:internal_error"
|
|
59363
|
+
]
|
|
59364
|
+
},
|
|
59365
|
+
discardTeamMemberProfileDraft: {
|
|
59366
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/discard",
|
|
59367
|
+
method: "POST",
|
|
59368
|
+
tags: [
|
|
59369
|
+
"site-{siteId}",
|
|
59370
|
+
"content-{siteId}-team-member",
|
|
59371
|
+
"content-entry-{entryId}"
|
|
59372
|
+
],
|
|
59373
|
+
auth: "user",
|
|
59374
|
+
responseKind: "json",
|
|
59375
|
+
errors: [
|
|
59376
|
+
"validation:invalid_input",
|
|
59377
|
+
"resource:not_found",
|
|
59378
|
+
"resource:conflict",
|
|
59379
|
+
"server:internal_error"
|
|
59380
|
+
]
|
|
59381
|
+
},
|
|
59382
|
+
unpublishTeamMemberProfile: {
|
|
59383
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/unpublish",
|
|
59384
|
+
method: "POST",
|
|
59385
|
+
tags: [
|
|
59386
|
+
"site-{siteId}",
|
|
59387
|
+
"content-{siteId}-team-member",
|
|
59388
|
+
"content-entry-{entryId}"
|
|
59389
|
+
],
|
|
59390
|
+
auth: "user",
|
|
59391
|
+
responseKind: "json",
|
|
59392
|
+
errors: [
|
|
59393
|
+
"validation:invalid_input",
|
|
59394
|
+
"resource:not_found",
|
|
59395
|
+
"resource:conflict",
|
|
59396
|
+
"server:internal_error"
|
|
59397
|
+
]
|
|
59398
|
+
},
|
|
59399
|
+
scheduleTeamMemberProfile: {
|
|
59400
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
|
|
59401
|
+
method: "POST",
|
|
59402
|
+
tags: [
|
|
59403
|
+
"site-{siteId}",
|
|
59404
|
+
"content-{siteId}-team-member",
|
|
59405
|
+
"content-entry-{entryId}"
|
|
59406
|
+
],
|
|
59407
|
+
auth: "user",
|
|
59408
|
+
responseKind: "json",
|
|
59409
|
+
errors: [
|
|
59410
|
+
"validation:invalid_input",
|
|
59411
|
+
"resource:not_found",
|
|
59412
|
+
"resource:conflict",
|
|
59413
|
+
"server:internal_error"
|
|
59414
|
+
]
|
|
59415
|
+
},
|
|
59416
|
+
cancelScheduledTeamMemberProfile: {
|
|
59417
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/{entryId}/schedule",
|
|
59418
|
+
method: "DELETE",
|
|
59419
|
+
tags: [
|
|
59420
|
+
"site-{siteId}",
|
|
59421
|
+
"content-{siteId}-team-member",
|
|
59422
|
+
"content-entry-{entryId}"
|
|
59423
|
+
],
|
|
59424
|
+
auth: "user",
|
|
59425
|
+
responseKind: "json",
|
|
59426
|
+
errors: [
|
|
59427
|
+
"validation:invalid_input",
|
|
59428
|
+
"resource:not_found",
|
|
59429
|
+
"resource:conflict",
|
|
59430
|
+
"server:internal_error"
|
|
59431
|
+
]
|
|
59432
|
+
},
|
|
59433
|
+
updateTeamMemberProfileRouteMetadata: {
|
|
59434
|
+
path: "/sites/{siteId}/bookings/resources/{resourceId}/profile/routes/{routeId}/metadata",
|
|
59435
|
+
method: "PATCH",
|
|
59436
|
+
tags: [
|
|
59437
|
+
TAG_TEMPLATES.siteCollection,
|
|
59438
|
+
TAG_TEMPLATES.siteRoutableContent,
|
|
59439
|
+
TAG_TEMPLATES.routeById
|
|
59440
|
+
],
|
|
59441
|
+
auth: "user",
|
|
59442
|
+
responseKind: "json",
|
|
59443
|
+
errors: [
|
|
59444
|
+
"validation:invalid_input",
|
|
59445
|
+
"resource:not_found",
|
|
59446
|
+
"resource:conflict",
|
|
59447
|
+
"server:internal_error"
|
|
59448
|
+
]
|
|
59449
|
+
},
|
|
59264
59450
|
listAppointmentServices: {
|
|
59265
59451
|
path: "/sites/{siteId}/bookings/services",
|
|
59266
59452
|
method: "GET",
|
|
@@ -61634,6 +61820,15 @@ var ENDPOINT_DEFINITIONS = {
|
|
|
61634
61820
|
auth: "public",
|
|
61635
61821
|
responseKind: "json"
|
|
61636
61822
|
},
|
|
61823
|
+
listPublicTeamMembers: {
|
|
61824
|
+
path: "/public/sites/{siteId}/team-members",
|
|
61825
|
+
method: "GET",
|
|
61826
|
+
revalidate: 60,
|
|
61827
|
+
tags: ["public-team-members-{siteId}"],
|
|
61828
|
+
errors: [],
|
|
61829
|
+
auth: "public",
|
|
61830
|
+
responseKind: "json"
|
|
61831
|
+
},
|
|
61637
61832
|
getPublicCourse: {
|
|
61638
61833
|
path: "/public/sites/{siteId}/courses/{courseId}",
|
|
61639
61834
|
method: "GET",
|
|
@@ -64013,6 +64208,7 @@ var SUPPORTED_LOADER_ENDPOINTS = [
|
|
|
64013
64208
|
"listPublicEvents",
|
|
64014
64209
|
"getPublicEventDetails",
|
|
64015
64210
|
"listPublicCourses",
|
|
64211
|
+
"listPublicTeamMembers",
|
|
64016
64212
|
"listPublicProducts",
|
|
64017
64213
|
"listPublicPasses",
|
|
64018
64214
|
"listPublicMemberships",
|
|
@@ -73794,7 +73990,26 @@ init_schema2();
|
|
|
73794
73990
|
init_defineBlock();
|
|
73795
73991
|
init_builder();
|
|
73796
73992
|
init_fragments();
|
|
73993
|
+
import { z as z63 } from "zod";
|
|
73994
|
+
init_media();
|
|
73797
73995
|
var ITEM_NAME2 = "member";
|
|
73996
|
+
var teamMemberPhotoSchema = mediaSchema2.refine((media2) => media2.type === "image", {
|
|
73997
|
+
message: "Team member photos must be image media"
|
|
73998
|
+
}).nullable();
|
|
73999
|
+
var teamMemberDataSchema = z63.object({
|
|
74000
|
+
_type: z63.literal("teamMember"),
|
|
74001
|
+
id: z63.string(),
|
|
74002
|
+
name: z63.string(),
|
|
74003
|
+
role: z63.string().nullable(),
|
|
74004
|
+
roleLabel: z63.string().nullable(),
|
|
74005
|
+
bio: z63.string().nullable(),
|
|
74006
|
+
summary: z63.string().nullable(),
|
|
74007
|
+
photo: teamMemberPhotoSchema,
|
|
74008
|
+
profilePath: z63.string().nullable()
|
|
74009
|
+
});
|
|
74010
|
+
var teamMembersDataSchema = z63.array(teamMemberDataSchema);
|
|
74011
|
+
var dynamicSourceWhen = { equals: "site_staff" };
|
|
74012
|
+
var manualSourceWhen = { equals: "site_staff", not: true };
|
|
73798
74013
|
var headingNode = text(
|
|
73799
74014
|
{ as: "h2" },
|
|
73800
74015
|
bind("content.heading"),
|
|
@@ -73884,7 +74099,15 @@ var teamMemberStackLayout = el(
|
|
|
73884
74099
|
]
|
|
73885
74100
|
),
|
|
73886
74101
|
stack({ gap: "sm", className: "rb-team-member-body rb-flex-1 rb-min-w-0" }, [
|
|
73887
|
-
|
|
74102
|
+
link(
|
|
74103
|
+
{
|
|
74104
|
+
href: { $bind: { from: "profilePath" } },
|
|
74105
|
+
className: "rb-team-member-name-link"
|
|
74106
|
+
},
|
|
74107
|
+
[text({ as: "h3" }, bind("name"))],
|
|
74108
|
+
when("profilePath")
|
|
74109
|
+
),
|
|
74110
|
+
text({ as: "h3" }, when("profilePath", { not: true }), bind("name")),
|
|
73888
74111
|
text(
|
|
73889
74112
|
{ as: "p", className: "rb-team-member-role" },
|
|
73890
74113
|
when("role"),
|
|
@@ -73898,12 +74121,18 @@ var teamMemberStackLayout = el(
|
|
|
73898
74121
|
])
|
|
73899
74122
|
]
|
|
73900
74123
|
);
|
|
73901
|
-
var
|
|
74124
|
+
var manualGridMembersNode = when("content.source", manualSourceWhen)(repeaterFragmentLayout({
|
|
73902
74125
|
collectionPath: "content.members",
|
|
73903
74126
|
itemName: ITEM_NAME2,
|
|
73904
74127
|
fragments: { teamMember: teamMemberFragment },
|
|
73905
74128
|
itemGap: "sm"
|
|
73906
|
-
});
|
|
74129
|
+
}));
|
|
74130
|
+
var dynamicGridMembersNode = when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
|
|
74131
|
+
collectionPath: "data.members",
|
|
74132
|
+
itemName: ITEM_NAME2,
|
|
74133
|
+
fragments: { teamMember: teamMemberFragment },
|
|
74134
|
+
itemGap: "sm"
|
|
74135
|
+
}));
|
|
73907
74136
|
var gridVariant = wrapVariant3(
|
|
73908
74137
|
el(
|
|
73909
74138
|
"grid",
|
|
@@ -73917,22 +74146,29 @@ var gridVariant = wrapVariant3(
|
|
|
73917
74146
|
},
|
|
73918
74147
|
gap: { $bind: { from: "content.gap", fallback: "medium" } }
|
|
73919
74148
|
},
|
|
73920
|
-
[
|
|
74149
|
+
[manualGridMembersNode, dynamicGridMembersNode]
|
|
73921
74150
|
)
|
|
73922
74151
|
);
|
|
73923
|
-
var
|
|
74152
|
+
var manualStackMembersNode = when("content.source", manualSourceWhen)(repeaterFragmentLayout({
|
|
73924
74153
|
collectionPath: "content.members",
|
|
73925
74154
|
itemName: ITEM_NAME2,
|
|
73926
74155
|
fragments: { teamMember: teamMemberFragment },
|
|
73927
74156
|
layoutOverrides: { teamMember: teamMemberStackLayout },
|
|
73928
74157
|
itemGap: "sm"
|
|
73929
|
-
});
|
|
74158
|
+
}));
|
|
74159
|
+
var dynamicStackMembersNode = when("content.source", dynamicSourceWhen)(repeaterFragmentLayout({
|
|
74160
|
+
collectionPath: "data.members",
|
|
74161
|
+
itemName: ITEM_NAME2,
|
|
74162
|
+
fragments: { teamMember: teamMemberFragment },
|
|
74163
|
+
layoutOverrides: { teamMember: teamMemberStackLayout },
|
|
74164
|
+
itemGap: "sm"
|
|
74165
|
+
}));
|
|
73930
74166
|
var stackVariant = wrapVariant3({
|
|
73931
74167
|
type: "stack",
|
|
73932
74168
|
props: {
|
|
73933
74169
|
gap: { $bind: { from: "content.gap", fallback: "medium" } }
|
|
73934
74170
|
},
|
|
73935
|
-
children: [
|
|
74171
|
+
children: [manualStackMembersNode, dynamicStackMembersNode]
|
|
73936
74172
|
});
|
|
73937
74173
|
var teamMembersManifest = createBlockManifest({
|
|
73938
74174
|
id: "block.team-members",
|
|
@@ -73947,6 +74183,18 @@ var teamMembersManifest = createBlockManifest({
|
|
|
73947
74183
|
required: false,
|
|
73948
74184
|
maxLength: 120
|
|
73949
74185
|
}),
|
|
74186
|
+
parseFieldDefinition({
|
|
74187
|
+
id: "source",
|
|
74188
|
+
type: "select",
|
|
74189
|
+
label: "Team members",
|
|
74190
|
+
description: "Choose whether to use the site-wide team or a hand-picked list.",
|
|
74191
|
+
defaultValue: "manual",
|
|
74192
|
+
options: [
|
|
74193
|
+
{ value: "manual", label: "Choose manually" },
|
|
74194
|
+
{ value: "site_staff", label: "Use all site team members" }
|
|
74195
|
+
],
|
|
74196
|
+
ui: { intent: "behavior" }
|
|
74197
|
+
}),
|
|
73950
74198
|
parseFieldDefinition({
|
|
73951
74199
|
id: "layoutAlign",
|
|
73952
74200
|
type: "select",
|
|
@@ -74049,18 +74297,24 @@ var teamMembersManifest = createBlockManifest({
|
|
|
74049
74297
|
],
|
|
74050
74298
|
ui: { intent: "display" }
|
|
74051
74299
|
}),
|
|
74052
|
-
|
|
74053
|
-
|
|
74054
|
-
|
|
74055
|
-
|
|
74056
|
-
|
|
74057
|
-
|
|
74058
|
-
|
|
74059
|
-
|
|
74060
|
-
|
|
74061
|
-
|
|
74300
|
+
{
|
|
74301
|
+
...fragmentsToRepeaterField(
|
|
74302
|
+
"members",
|
|
74303
|
+
"Team members",
|
|
74304
|
+
{ teamMember: teamMemberFragment },
|
|
74305
|
+
{
|
|
74306
|
+
minItems: 0,
|
|
74307
|
+
maxItems: 50,
|
|
74308
|
+
itemLabel: "Team member",
|
|
74309
|
+
itemLabelSource: "name",
|
|
74310
|
+
description: "Add people to this section."
|
|
74311
|
+
}
|
|
74312
|
+
),
|
|
74313
|
+
ui: {
|
|
74314
|
+
intent: "content",
|
|
74315
|
+
visibleWhen: { field: "source", equals: "manual" }
|
|
74062
74316
|
}
|
|
74063
|
-
|
|
74317
|
+
}
|
|
74064
74318
|
],
|
|
74065
74319
|
layout: gridVariant,
|
|
74066
74320
|
variants: {
|
|
@@ -74086,7 +74340,20 @@ var teamMembersManifest = createBlockManifest({
|
|
|
74086
74340
|
styleTokens: { spacing: "lg" }
|
|
74087
74341
|
});
|
|
74088
74342
|
var teamMembersBlockDefinition = {
|
|
74089
|
-
manifest: teamMembersManifest
|
|
74343
|
+
manifest: teamMembersManifest,
|
|
74344
|
+
dataSchemas: {
|
|
74345
|
+
members: teamMembersDataSchema
|
|
74346
|
+
},
|
|
74347
|
+
dataLoaders: {
|
|
74348
|
+
members: {
|
|
74349
|
+
endpoint: "listPublicTeamMembers",
|
|
74350
|
+
params: {
|
|
74351
|
+
siteId: { $bind: { from: "$root.siteId" } },
|
|
74352
|
+
stage: { $bind: { from: "$root.previewStage", fallback: "published" } }
|
|
74353
|
+
},
|
|
74354
|
+
mode: "server"
|
|
74355
|
+
}
|
|
74356
|
+
}
|
|
74090
74357
|
};
|
|
74091
74358
|
|
|
74092
74359
|
// ../blocks/src/system/blocks/location-map.ts
|
|
@@ -75398,6 +75665,7 @@ function coercePayload(payload) {
|
|
|
75398
75665
|
if ("form" in record && typeof record.form !== "function") return record.form;
|
|
75399
75666
|
if ("entries" in record && typeof record.entries !== "function") return record.entries;
|
|
75400
75667
|
if ("services" in record && typeof record.services !== "function") return record.services;
|
|
75668
|
+
if ("teamMembers" in record && typeof record.teamMembers !== "function") return record.teamMembers;
|
|
75401
75669
|
}
|
|
75402
75670
|
return payload;
|
|
75403
75671
|
}
|
|
@@ -75520,6 +75788,10 @@ function normalizeLoaderParams(endpoint, params, context) {
|
|
|
75520
75788
|
ensureSiteId(out, context);
|
|
75521
75789
|
return out;
|
|
75522
75790
|
}
|
|
75791
|
+
if (endpoint === "listPublicTeamMembers") {
|
|
75792
|
+
ensureSiteId(out, context);
|
|
75793
|
+
return out;
|
|
75794
|
+
}
|
|
75523
75795
|
if (endpoint === "getPublishedEntryPreview") {
|
|
75524
75796
|
ensureSiteId(out, context);
|
|
75525
75797
|
return out;
|
|
@@ -75534,6 +75806,7 @@ var SUPPORTED_LOADER_ENDPOINTS2 = [
|
|
|
75534
75806
|
"getPublishedEntryPreview",
|
|
75535
75807
|
"listPublicEvents",
|
|
75536
75808
|
"listPublicCourses",
|
|
75809
|
+
"listPublicTeamMembers",
|
|
75537
75810
|
"listPublicProducts",
|
|
75538
75811
|
"listPublicPasses",
|
|
75539
75812
|
"listPublicMemberships",
|
|
@@ -75698,6 +75971,16 @@ async function prefetchBlockData2(page, context, client, options) {
|
|
|
75698
75971
|
const parsedLimit = typeof limit === "string" ? Number.parseInt(limit, 10) : typeof limit === "number" ? limit : void 0;
|
|
75699
75972
|
return await client.listPublicCourses({ siteId, limit: parsedLimit, stage });
|
|
75700
75973
|
}
|
|
75974
|
+
case "listPublicTeamMembers": {
|
|
75975
|
+
const { siteId, stage } = resolvedParams ?? {};
|
|
75976
|
+
if (!siteId) {
|
|
75977
|
+
throw new Error("listPublicTeamMembers requires siteId param");
|
|
75978
|
+
}
|
|
75979
|
+
return await client.listPublicTeamMembers({
|
|
75980
|
+
siteId,
|
|
75981
|
+
stage: typeof stage === "string" ? stage : void 0
|
|
75982
|
+
});
|
|
75983
|
+
}
|
|
75701
75984
|
case "listPublicProducts": {
|
|
75702
75985
|
const { siteId, stage, categorySelector } = resolvedParams ?? {};
|
|
75703
75986
|
if (!siteId) {
|
|
@@ -76019,71 +76302,71 @@ import { useEffect as useEffect30 } from "react";
|
|
|
76019
76302
|
init_runtime();
|
|
76020
76303
|
init_shop_shared();
|
|
76021
76304
|
init_schemas2();
|
|
76022
|
-
import { z as
|
|
76023
|
-
var accordionIslandSchema =
|
|
76024
|
-
type:
|
|
76025
|
-
defaultValue:
|
|
76026
|
-
collapsible:
|
|
76027
|
-
});
|
|
76028
|
-
var headerSectionIslandSchema =
|
|
76029
|
-
enabled:
|
|
76030
|
-
scrollEnabled:
|
|
76031
|
-
});
|
|
76032
|
-
var responsiveSlidesToShowSchema =
|
|
76033
|
-
mobile:
|
|
76034
|
-
tablet:
|
|
76035
|
-
desktop:
|
|
76036
|
-
});
|
|
76037
|
-
var carouselIslandSchema =
|
|
76038
|
-
slidesToShow:
|
|
76039
|
-
transition:
|
|
76040
|
-
showControls:
|
|
76041
|
-
showDots:
|
|
76042
|
-
arrowVisibility:
|
|
76043
|
-
autoplay:
|
|
76044
|
-
autoplayDelay:
|
|
76045
|
-
loop:
|
|
76046
|
-
});
|
|
76047
|
-
var eventDetailsOccurrenceContextSchema =
|
|
76048
|
-
id:
|
|
76049
|
-
seriesId:
|
|
76050
|
-
startsAt:
|
|
76051
|
-
endsAt:
|
|
76052
|
-
timeZone:
|
|
76053
|
-
});
|
|
76054
|
-
var eventDetailsContentEntrySchema =
|
|
76055
|
-
id:
|
|
76056
|
-
slug:
|
|
76057
|
-
contentTypeSlug:
|
|
76058
|
-
});
|
|
76059
|
-
var eventDetailsIslandSchema =
|
|
76305
|
+
import { z as z67 } from "zod";
|
|
76306
|
+
var accordionIslandSchema = z67.object({
|
|
76307
|
+
type: z67.enum(["single", "multiple"]).optional(),
|
|
76308
|
+
defaultValue: z67.union([z67.string(), z67.array(z67.string())]).optional(),
|
|
76309
|
+
collapsible: z67.boolean().optional()
|
|
76310
|
+
});
|
|
76311
|
+
var headerSectionIslandSchema = z67.object({
|
|
76312
|
+
enabled: z67.boolean().optional(),
|
|
76313
|
+
scrollEnabled: z67.boolean().optional()
|
|
76314
|
+
});
|
|
76315
|
+
var responsiveSlidesToShowSchema = z67.object({
|
|
76316
|
+
mobile: z67.union([z67.number(), z67.string()]).optional(),
|
|
76317
|
+
tablet: z67.union([z67.number(), z67.string()]).optional(),
|
|
76318
|
+
desktop: z67.union([z67.number(), z67.string()]).optional()
|
|
76319
|
+
});
|
|
76320
|
+
var carouselIslandSchema = z67.object({
|
|
76321
|
+
slidesToShow: z67.union([z67.number(), z67.string(), responsiveSlidesToShowSchema]).optional(),
|
|
76322
|
+
transition: z67.enum(["slide", "fade"]).optional(),
|
|
76323
|
+
showControls: z67.union([z67.boolean(), z67.string()]).optional(),
|
|
76324
|
+
showDots: z67.union([z67.boolean(), z67.string()]).optional(),
|
|
76325
|
+
arrowVisibility: z67.enum(["always", "hover", "never"]).optional(),
|
|
76326
|
+
autoplay: z67.union([z67.boolean(), z67.string()]).optional(),
|
|
76327
|
+
autoplayDelay: z67.union([z67.number(), z67.string()]).optional(),
|
|
76328
|
+
loop: z67.union([z67.boolean(), z67.string()]).optional()
|
|
76329
|
+
});
|
|
76330
|
+
var eventDetailsOccurrenceContextSchema = z67.object({
|
|
76331
|
+
id: z67.string(),
|
|
76332
|
+
seriesId: z67.string(),
|
|
76333
|
+
startsAt: z67.string(),
|
|
76334
|
+
endsAt: z67.string(),
|
|
76335
|
+
timeZone: z67.string()
|
|
76336
|
+
});
|
|
76337
|
+
var eventDetailsContentEntrySchema = z67.object({
|
|
76338
|
+
id: z67.string(),
|
|
76339
|
+
slug: z67.string(),
|
|
76340
|
+
contentTypeSlug: z67.string()
|
|
76341
|
+
});
|
|
76342
|
+
var eventDetailsIslandSchema = z67.object({
|
|
76060
76343
|
occurrenceContext: eventDetailsOccurrenceContextSchema.nullable().optional(),
|
|
76061
76344
|
contentEntry: eventDetailsContentEntrySchema.nullable().optional(),
|
|
76062
|
-
events:
|
|
76063
|
-
showVenue:
|
|
76064
|
-
showMap:
|
|
76065
|
-
showOtherDates:
|
|
76066
|
-
otherDatesLimit:
|
|
76067
|
-
showCost:
|
|
76068
|
-
showAcceptedPasses:
|
|
76069
|
-
showAcceptedMemberships:
|
|
76070
|
-
sitePasses:
|
|
76071
|
-
siteMemberships:
|
|
76072
|
-
className:
|
|
76073
|
-
nowIso:
|
|
76074
|
-
});
|
|
76075
|
-
var locationMapIslandSchema =
|
|
76076
|
-
location:
|
|
76077
|
-
addressText:
|
|
76078
|
-
lat:
|
|
76079
|
-
lng:
|
|
76345
|
+
events: z67.array(publicEventSchema).nullable().optional(),
|
|
76346
|
+
showVenue: z67.boolean().optional(),
|
|
76347
|
+
showMap: z67.boolean().optional(),
|
|
76348
|
+
showOtherDates: z67.boolean().optional(),
|
|
76349
|
+
otherDatesLimit: z67.string().optional(),
|
|
76350
|
+
showCost: z67.boolean().optional(),
|
|
76351
|
+
showAcceptedPasses: z67.boolean().optional(),
|
|
76352
|
+
showAcceptedMemberships: z67.boolean().optional(),
|
|
76353
|
+
sitePasses: z67.object({ passes: z67.array(publicPassProductSchema) }).nullable().optional(),
|
|
76354
|
+
siteMemberships: z67.object({ memberships: z67.array(publicMembershipProductSchema) }).nullable().optional(),
|
|
76355
|
+
className: z67.string().nullable().optional(),
|
|
76356
|
+
nowIso: z67.string().optional()
|
|
76357
|
+
});
|
|
76358
|
+
var locationMapIslandSchema = z67.object({
|
|
76359
|
+
location: z67.object({
|
|
76360
|
+
addressText: z67.string().nullable(),
|
|
76361
|
+
lat: z67.number().nullable(),
|
|
76362
|
+
lng: z67.number().nullable()
|
|
76080
76363
|
}).nullable().optional(),
|
|
76081
|
-
zoom:
|
|
76082
|
-
heightPx:
|
|
76083
|
-
showAddressText:
|
|
76084
|
-
showDirections:
|
|
76085
|
-
directionsLabel:
|
|
76086
|
-
className:
|
|
76364
|
+
zoom: z67.number().nullable().optional(),
|
|
76365
|
+
heightPx: z67.number().nullable().optional(),
|
|
76366
|
+
showAddressText: z67.boolean().optional(),
|
|
76367
|
+
showDirections: z67.boolean().optional(),
|
|
76368
|
+
directionsLabel: z67.string().nullable().optional(),
|
|
76369
|
+
className: z67.string().nullable().optional()
|
|
76087
76370
|
});
|
|
76088
76371
|
var accordionIslandPropsCodec = createZodCodec(accordionIslandSchema);
|
|
76089
76372
|
var headerSectionIslandPropsCodec = createZodCodec(headerSectionIslandSchema);
|
|
@@ -76333,11 +76616,11 @@ function hydrateBlocksIslands(options = {}) {
|
|
|
76333
76616
|
}
|
|
76334
76617
|
|
|
76335
76618
|
// ../blocks/src/PageRenderer.tsx
|
|
76336
|
-
import * as
|
|
76619
|
+
import * as React38 from "react";
|
|
76337
76620
|
|
|
76338
76621
|
// ../blocks/src/system/runtime/resolver.ts
|
|
76339
76622
|
init_node();
|
|
76340
|
-
import
|
|
76623
|
+
import React36 from "react";
|
|
76341
76624
|
init_registry_server();
|
|
76342
76625
|
init_layout();
|
|
76343
76626
|
var META_PATH_TO_STORE_KEY = {
|
|
@@ -76810,7 +77093,7 @@ function resolveNode2(node, context, indexFallback) {
|
|
|
76810
77093
|
blockContent: context.blockContent,
|
|
76811
77094
|
fragmentRegistry: context.fragmentRegistry
|
|
76812
77095
|
};
|
|
76813
|
-
return
|
|
77096
|
+
return React36.createElement(component, elementProps, ...children);
|
|
76814
77097
|
}
|
|
76815
77098
|
function resolveValue(value, context) {
|
|
76816
77099
|
if (value && typeof value === "object" && "$bind" in value) {
|
|
@@ -76897,7 +77180,7 @@ function getDefaultComponentRegistry() {
|
|
|
76897
77180
|
var defaultComponentRegistry = getDefaultComponentRegistry();
|
|
76898
77181
|
|
|
76899
77182
|
// ../blocks/src/system/componentFactory.ts
|
|
76900
|
-
import
|
|
77183
|
+
import React37 from "react";
|
|
76901
77184
|
init_blockOverrides();
|
|
76902
77185
|
function resolveBlockVariantKey(manifest, content) {
|
|
76903
77186
|
return resolveVariantKey(manifest, content);
|
|
@@ -77174,7 +77457,7 @@ function PageRenderer({
|
|
|
77174
77457
|
customBlocks,
|
|
77175
77458
|
isEditingMode = false
|
|
77176
77459
|
}) {
|
|
77177
|
-
const imageResolveContext =
|
|
77460
|
+
const imageResolveContext = React38.useMemo(
|
|
77178
77461
|
() => resolvePageRendererImageResolveContext(dataContext),
|
|
77179
77462
|
[
|
|
77180
77463
|
dataContext?.imageResolveContext,
|
|
@@ -77285,7 +77568,7 @@ function getCachedManifestValidator(manifest, options = {}) {
|
|
|
77285
77568
|
manifestValidatorCache.set(manifest, { ...cacheEntry, [mode]: created });
|
|
77286
77569
|
return created;
|
|
77287
77570
|
}
|
|
77288
|
-
var MemoBlockSection =
|
|
77571
|
+
var MemoBlockSection = React38.memo(
|
|
77289
77572
|
function MemoBlockSection2({
|
|
77290
77573
|
themeTokens,
|
|
77291
77574
|
themeConfig,
|
|
@@ -78917,7 +79200,7 @@ function ThemeScope({
|
|
|
78917
79200
|
}
|
|
78918
79201
|
|
|
78919
79202
|
// ../theme-core/src/ThemeFontLoader.tsx
|
|
78920
|
-
import * as
|
|
79203
|
+
import * as React39 from "react";
|
|
78921
79204
|
init_selectorUtils();
|
|
78922
79205
|
import { Fragment as Fragment24, jsx as jsx157, jsxs as jsxs103 } from "react/jsx-runtime";
|
|
78923
79206
|
|
|
@@ -78970,7 +79253,7 @@ function BlocksIslandsHydrator(props2 = {}) {
|
|
|
78970
79253
|
}
|
|
78971
79254
|
|
|
78972
79255
|
// src/rendering/blocks-page-renderer.ts
|
|
78973
|
-
import * as
|
|
79256
|
+
import * as React40 from "react";
|
|
78974
79257
|
|
|
78975
79258
|
// ../blocks/src/rendering/server.ts
|
|
78976
79259
|
init_schema2();
|
|
@@ -79050,7 +79333,7 @@ function toBlocksBlockOverrides(overrides) {
|
|
|
79050
79333
|
for (const [key, OverrideComponent] of Object.entries(overrides)) {
|
|
79051
79334
|
result[key] = function BlocksOverrideAdapter(props2) {
|
|
79052
79335
|
const sdkOverride = OverrideComponent;
|
|
79053
|
-
return
|
|
79336
|
+
return React40.createElement(sdkOverride, props2);
|
|
79054
79337
|
};
|
|
79055
79338
|
}
|
|
79056
79339
|
return result;
|
|
@@ -79065,15 +79348,15 @@ function PageRenderer2(props2) {
|
|
|
79065
79348
|
sdkConfig: blocksSdkConfig,
|
|
79066
79349
|
customBlocks: normalizeSdkCustomBlocks(props2.customBlocks)
|
|
79067
79350
|
};
|
|
79068
|
-
return
|
|
79351
|
+
return React40.createElement(PageRenderer, blocksProps);
|
|
79069
79352
|
}
|
|
79070
79353
|
|
|
79071
79354
|
// src/rendering/blocks-theme-scope.ts
|
|
79072
|
-
import * as
|
|
79355
|
+
import * as React41 from "react";
|
|
79073
79356
|
function ThemeScope2(props2) {
|
|
79074
79357
|
const { theme, children, ...rest } = props2;
|
|
79075
79358
|
const blocksTheme = parseBlocksTheme(theme);
|
|
79076
|
-
return
|
|
79359
|
+
return React41.createElement(ThemeScope, {
|
|
79077
79360
|
...rest,
|
|
79078
79361
|
theme: blocksTheme,
|
|
79079
79362
|
children: children ?? null
|
|
@@ -79277,7 +79560,7 @@ var SimpleCache = class {
|
|
|
79277
79560
|
};
|
|
79278
79561
|
|
|
79279
79562
|
// src/version.ts
|
|
79280
|
-
var SDK_VERSION = "0.60.
|
|
79563
|
+
var SDK_VERSION = "0.60.7";
|
|
79281
79564
|
|
|
79282
79565
|
// src/client/error.ts
|
|
79283
79566
|
var RiverbankApiError = class _RiverbankApiError extends Error {
|
|
@@ -80316,6 +80599,24 @@ function createRiverbankClient(config) {
|
|
|
80316
80599
|
return await apiClient({ endpoint: "listPublicCourses", params: apiParams, options: { signal: sig } });
|
|
80317
80600
|
}, { signal });
|
|
80318
80601
|
},
|
|
80602
|
+
async listPublicTeamMembers(params) {
|
|
80603
|
+
const { siteId, stage, signal } = params;
|
|
80604
|
+
if (!siteId) {
|
|
80605
|
+
throw new Error("listPublicTeamMembers() requires siteId");
|
|
80606
|
+
}
|
|
80607
|
+
const cacheKey = `public-team-members:${siteId}:${stage ?? ""}`;
|
|
80608
|
+
return resilientFetch(cacheKey, async (sig) => {
|
|
80609
|
+
const apiParams = {
|
|
80610
|
+
siteId,
|
|
80611
|
+
...stage && { stage }
|
|
80612
|
+
};
|
|
80613
|
+
return await apiClient({
|
|
80614
|
+
endpoint: "listPublicTeamMembers",
|
|
80615
|
+
params: apiParams,
|
|
80616
|
+
options: { signal: sig }
|
|
80617
|
+
});
|
|
80618
|
+
}, { signal });
|
|
80619
|
+
},
|
|
80319
80620
|
async listPublicProducts(params) {
|
|
80320
80621
|
const { siteId, stage, categorySelector, signal } = params;
|
|
80321
80622
|
if (!siteId) {
|