@riverbankcms/sdk 0.96.0 → 0.98.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/README.md +20 -1
- package/dist/{PreviewEditorSidebar-46VT4QVU.mjs → PreviewEditorSidebar-CG3SSJND.mjs} +3 -3
- package/dist/{PreviewEditorUI-JD75GE5F.mjs → PreviewEditorUI-RHNGKAAU.mjs} +3 -3
- package/dist/SdkPreviewModeRuntime-OV5PNJBB.mjs +8 -0
- package/dist/_dts/api/src/bookingManagementEndpoints.d.ts +35 -1
- package/dist/_dts/api/src/bookingOperations.d.ts +246 -0
- package/dist/_dts/api/src/contentRuntime.d.ts +109 -40
- package/dist/_dts/api/src/endpoints.d.ts +80 -0
- package/dist/_dts/api/src/index.d.ts +3 -2
- package/dist/_dts/api/src/public/endpoints.d.ts +1 -1
- package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +10 -0
- package/dist/_dts/api/src/sdkContracts.d.ts +2 -0
- package/dist/_dts/api/src/siteManagementEndpoints.d.ts +2 -1
- package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +7 -1
- package/dist/_dts/blocks/src/PageRenderer.d.ts +2 -1
- package/dist/_dts/blocks/src/bindings/types.d.ts +0 -4
- package/dist/_dts/blocks/src/client/site-chrome.d.ts +7 -0
- package/dist/_dts/blocks/src/contracts/index.d.ts +1 -0
- package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +12 -12
- package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +4 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/events/shared/layout.d.ts +2 -0
- package/dist/_dts/blocks/src/system/blocks/index.d.ts +1 -0
- package/dist/_dts/blocks/src/system/blocks/weekly-slot-availability.d.ts +34 -0
- package/dist/_dts/blocks/src/system/componentFactory.d.ts +1 -0
- package/dist/_dts/blocks/src/system/constants/blockKinds.d.ts +1 -1
- package/dist/_dts/blocks/src/system/customize/facets.d.ts +2 -2
- package/dist/_dts/blocks/src/system/data/loaderEndpoints.d.ts +1 -1
- package/dist/_dts/blocks/src/system/data/prefetchBlockData.d.ts +4 -1
- package/dist/_dts/blocks/src/system/node/builder.d.ts +2 -0
- package/dist/_dts/blocks/src/system/node/schema.d.ts +13 -0
- package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
- package/dist/_dts/blocks/src/system/registry.d.ts +1 -0
- package/dist/_dts/blocks/src/system/runtime/api/client.d.ts +2 -1
- package/dist/_dts/blocks/src/system/runtime/api/endpoints.d.ts +8 -0
- package/dist/_dts/blocks/src/system/runtime/api/types.d.ts +24 -0
- package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +6 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAppointmentCheckoutVerification.d.ts +7 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/useAvailableSlots.d.ts +2 -2
- package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessEventRegistrationFlow.d.ts +4 -0
- package/dist/_dts/blocks/src/system/runtime/hooks/usePaymentVerification.d.ts +5 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/hooks.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.d.ts +8 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.d.ts +133 -2
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.controller.d.ts +3 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.d.ts +9 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.client.state.d.ts +14 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.server.d.ts +10 -0
- package/dist/_dts/blocks/src/system/runtime/nodes/weekly-slot-availability.view.d.ts +11 -0
- package/dist/_dts/blocks/src/system/runtime/resolver.d.ts +31 -1
- package/dist/_dts/blocks/src/system/runtime/shared/useWaitlistClaim.d.ts +5 -0
- package/dist/_dts/blocks/src/utils/date-formatting.d.ts +1 -1
- package/dist/_dts/content-editor/src/primitives/PreviewInlineTextEditor.d.ts +1 -1
- package/dist/_dts/content-editor/src/primitives/PreviewRichTextEditor.d.ts +1 -1
- package/dist/_dts/content-model/src/templates/defaults.d.ts +5 -5
- package/dist/_dts/content-model/src/templates/types.d.ts +2 -6
- package/dist/_dts/core/src/branded.d.ts +8 -0
- package/dist/_dts/db/src/generated/supabase/database.types.d.ts +505 -2
- package/dist/_dts/field-primitives/src/bindings/index.d.ts +8 -0
- package/dist/_dts/sdk/src/cli/commands/push/publishGuidance.d.ts +15 -0
- package/dist/_dts/sdk/src/cli/commands/push/scopes/commandBackedDatedOfferingScope.d.ts +2 -1
- package/dist/_dts/sdk/src/cli/commands/push/scopes/types.d.ts +3 -1
- package/dist/_dts/sdk/src/cli/commands/push/stale-resolution.d.ts +9 -3
- package/dist/_dts/sdk/src/cli/commands/push/workflowPlan.d.ts +34 -0
- package/dist/_dts/sdk/src/cli/commands/setup.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/config-loader.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/content/metadataStore.d.ts +29 -0
- package/dist/_dts/sdk/src/cli/content/reader.d.ts +16 -14
- package/dist/_dts/sdk/src/cli/content/writer.d.ts +6 -4
- package/dist/_dts/sdk/src/cli/env-scope.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/helpers.d.ts +6 -7
- package/dist/_dts/sdk/src/cli/merge-remote/entryMergePush.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/merge-remote/pageMergePush.d.ts +2 -0
- package/dist/_dts/sdk/src/cli/push-config.d.ts +13 -2
- package/dist/_dts/sdk/src/cli/setup/setupPlan.d.ts +51 -0
- package/dist/_dts/sdk/src/cli/site-commands/commandRuntime.d.ts +21 -0
- package/dist/_dts/sdk/src/client/runtimeCachePolicy.d.ts +1 -1
- package/dist/_dts/sdk/src/client/types.d.ts +18 -2
- package/dist/_dts/sdk/src/config/types.d.ts +1 -1
- package/dist/_dts/sdk/src/config/validation.d.ts +3 -0
- package/dist/_dts/sdk/src/contracts/bindings.d.ts +3 -7
- package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +13 -0
- package/dist/_dts/sdk/src/next/route-outcome-proxy.d.ts +3 -3
- package/dist/_dts/sdk/src/public-api/contracts.d.ts +174 -78
- package/dist/_dts/sdk/src/public-api/runtime.d.ts +1 -1
- package/dist/_dts/sdk/src/rendering/helpers/bindings.d.ts +4 -4
- package/dist/_dts/sdk/src/rendering/helpers/loadContent.d.ts +52 -1
- package/dist/_dts/sdk/src/rendering/hooks/usePage.d.ts +2 -2
- package/dist/_dts/sdk/src/rendering/islands/types.d.ts +18 -66
- package/dist/_dts/sdk/src/types/block-kinds.d.ts +1 -1
- package/dist/_dts/sdk/src/version.d.ts +1 -1
- package/dist/{chunk-EL55VV6Q.mjs → chunk-6WDBXCPX.mjs} +31 -10
- package/dist/{chunk-XMATDBXO.mjs → chunk-DBRI3PQF.mjs} +731 -180
- package/dist/{chunk-VHIMXQ7Z.mjs → chunk-H24OU7WG.mjs} +2 -2
- package/dist/{chunk-4TLTV7OB.mjs → chunk-PKDPQHB5.mjs} +2 -2
- package/dist/{chunk-VTPPVAOL.mjs → chunk-QPXE2OUZ.mjs} +1 -1
- package/dist/{chunk-7ED5UNHL.mjs → chunk-V2BYFSPW.mjs} +109 -0
- package/dist/cli/index.mjs +2131 -1033
- package/dist/cli/init-docs/content/cli-reference.md +29 -1
- package/dist/cli/init-docs/content/getting-started.md +8 -0
- package/dist/cli/init-docs/content/workflow-agent-safe-sync.md +3 -1
- package/dist/cli/init-docs/content/workflow-preview-mode.md +6 -0
- package/dist/cli/init-docs/content/workflow-remote-setup.md +51 -0
- package/dist/client/{accordion-GUNXIIZR.mjs → accordion-Q2BDNL53.mjs} +1 -1
- package/dist/client/{bookingForm-AOU4VHP5.mjs → bookingForm-ZMP4P7EK.mjs} +16 -6
- package/dist/client/bookings.mjs +98 -18
- package/dist/client/{carousel-4QSX2JPC.mjs → carousel-LW3UXPWO.mjs} +1 -1
- package/dist/client/{cart-JKN6C4ZB.mjs → cart-Z6D3KS6K.mjs} +5 -5
- package/dist/client/{checkout-YY6YMITW.mjs → checkout-YMT2QJQM.mjs} +5 -5
- package/dist/client/{chunk-6H27K6AA.mjs → chunk-26ZBRXFR.mjs} +9 -3
- package/dist/client/{chunk-VJROUYOQ.mjs → chunk-DRRQ7QSL.mjs} +2 -2
- package/dist/client/{chunk-BFCJZODD.mjs → chunk-ET2MDQQT.mjs} +4 -4
- package/dist/client/{chunk-H7A6PUGM.mjs → chunk-HBQEAOG4.mjs} +1 -1
- package/dist/client/{chunk-CPKMJVBD.mjs → chunk-IEOECM7U.mjs} +62 -43
- package/dist/client/{chunk-TNGL2WJF.mjs → chunk-KDP7ZRZV.mjs} +16 -0
- package/dist/client/{chunk-GWCRCJLB.mjs → chunk-R4XK3CKR.mjs} +12 -1
- package/dist/client/{chunk-A3YN7M3G.mjs → chunk-SK2BMD22.mjs} +2 -2
- package/dist/client/{chunk-SY543WZ3.mjs → chunk-XNTHVZ25.mjs} +1 -1
- package/dist/client/client.mjs +3729 -3054
- package/dist/client/{courseRegistration-UU2KMPSQ.mjs → courseRegistration-DGKCMC77.mjs} +4 -4
- package/dist/client/{eventCalendar-WIVNS2TM.mjs → eventCalendar-74Z2NNFM.mjs} +7 -7
- package/dist/client/{eventCombined-P3G5MW4J.mjs → eventCombined-GK2ODOX2.mjs} +7 -7
- package/dist/client/{eventDetails-2VHJ2RDG.mjs → eventDetails-MONAGT3N.mjs} +7 -7
- package/dist/client/{eventListing-TGO6JI3R.mjs → eventListing-SKGAO6PS.mjs} +7 -7
- package/dist/client/{eventRegistration-B46HEJES.mjs → eventRegistration-6KISGXRD.mjs} +7 -7
- package/dist/client/{form-VKRTFUNQ.mjs → form-FXPRTXHI.mjs} +2 -2
- package/dist/client/{headerSection-XUX4ZJLO.mjs → headerSection-7NAN5WNB.mjs} +2 -2
- package/dist/client/hooks.mjs +1661 -1334
- package/dist/client/{locationMap-NQFI5MJO.mjs → locationMap-UERN74U4.mjs} +2 -2
- package/dist/client/{newsletterForm-P2GETCQK.mjs → newsletterForm-SGWXMJ7U.mjs} +2 -2
- package/dist/client/{productDetail-7NQ7O5IF.mjs → productDetail-HN3HWZQZ.mjs} +5 -5
- package/dist/client/{productList-RX6ZJ7BL.mjs → productList-YT22Z5UR.mjs} +5 -5
- package/dist/client/rendering/client.mjs +2208 -1922
- package/dist/client/rendering/islands.mjs +18 -18
- package/dist/client/rendering.mjs +1497 -811
- package/dist/client/{shop-BHN5AKY6.mjs → shop-TKEDNWUS.mjs} +5 -5
- package/dist/preview-next/before-render.mjs +109 -0
- package/dist/preview-next/client/runtime.mjs +5 -5
- package/dist/preview-next/middleware.mjs +109 -0
- package/dist/{sdk-runtime-X2LXQ5IC.mjs → sdk-runtime-LWNYCQF2.mjs} +6 -6
- package/dist/server/components.mjs +2351 -1872
- package/dist/server/config-template-validation.mjs +6 -2
- package/dist/server/config-validation.mjs +1861 -1561
- package/dist/server/config.mjs +1861 -1561
- package/dist/server/data.mjs +1647 -1331
- package/dist/server/index.mjs +208 -9
- package/dist/server/next/middleware.mjs +2 -2
- package/dist/server/next.mjs +2572 -1878
- package/dist/server/page-converter.mjs +1461 -1276
- package/dist/server/prebuild.mjs +1 -1
- package/dist/server/rendering/server.mjs +2372 -1875
- package/dist/server/rendering.mjs +2557 -1941
- package/dist/server/routing.mjs +1716 -1353
- package/dist/server/server.mjs +1911 -1380
- package/package.json +1 -1
- package/dist/SdkPreviewModeRuntime-MJUSYUFB.mjs +0 -8
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { LeafletStaticMap } from './chunk-
|
|
3
|
-
import { resolveCoursePricingState,
|
|
2
|
+
import { LeafletStaticMap } from './chunk-XNTHVZ25.mjs';
|
|
3
|
+
import { resolveCoursePricingState, MagicLinkForm, formatCoursePriceAmount, formatCoursePriceDisplay, useWaitlistClaim } from './chunk-26ZBRXFR.mjs';
|
|
4
4
|
import { CreditCard, Ticket, Star, Sparkles } from './chunk-6N7YRNYU.mjs';
|
|
5
|
-
import {
|
|
5
|
+
import { buildBookingPaymentSelectionViewModel, usePolling } from './chunk-DRRQ7QSL.mjs';
|
|
6
6
|
import { SpinnerNode } from './chunk-OLAOAZEO.mjs';
|
|
7
|
-
import { createBodyThemePortalRoot, TabBarFragment,
|
|
7
|
+
import { createBodyThemePortalRoot, TabBarFragment, logoutPortal, StepIndicator, DiscountCodeDisclosure, TerminalPanel, StateIcon, formatPrice, CrossIcon, ClockIcon, LoggedInAsUser, CheckIcon, useDiscountCodeUi, consumeSearchParam } from './chunk-SK2BMD22.mjs';
|
|
8
8
|
import { getFieldValidationControlProps, FieldValidationMessage } from './chunk-3DCJ45Z2.mjs';
|
|
9
9
|
import { ModalShell } from './chunk-WBQG7VJA.mjs';
|
|
10
10
|
import { isSpamProtectionEnabled, AltchaWidget, getChallengeUrl } from './chunk-LJCX6V7Q.mjs';
|
|
11
|
-
import { useBlockApi, FeedbackMessage } from './chunk-
|
|
12
|
-
import { buildEventRuntimeFilters, buildEventCalendarListingRender, groupEventsByDate, getOrderedDayNames, formatDateKey, getEventRuntimeFiltersKey, themeButtonClassName, normalizeCsvIds, normalizeOptionalId, normalizeEventBlockKind, normalizeCsvString, EventCompactRow, EmptyState, getContainerClass, getCardOrientation, isToday, MAX_EVENTS_PER_DAY, formatTime, WIZARD_STEPS, getWizardStepsForContext, getStepNumber, formatEventPriceDisplay, resolveRuntimeEventPricing, formatEventPrice, formatEventDateParts, resolveEventLinkProps, DateTimeTile, assertNever, EventCard, buildCalendarViewport, shiftCalendarAnchorDate, addMonths, getThreeMonthRange, buildTimetableModel, formatDate, MONTH_NAMES, getEventAvailability, formatEventTeacherLine, toRegistrationEvents, isEventContentType, findPreSelectedEvent, resolveRegistrationTarget, findEventByOccurrenceId, resolveEventRequiresPayment, resolveDiscountContext } from './chunk-
|
|
13
|
-
import { publicEventPricingType, getBookingLocalDateKey, toScheduledBookingDateTime, toBookingTimeZone, publicEventPricingCurrency, formatBookingDateTime, publicEventPricingMode, publicEventScalarPrice,
|
|
11
|
+
import { useBlockApi, FeedbackMessage } from './chunk-KDP7ZRZV.mjs';
|
|
12
|
+
import { buildEventRuntimeFilters, buildEventCalendarListingRender, groupEventsByDate, getOrderedDayNames, formatDateKey, getEventRuntimeFiltersKey, themeButtonClassName, normalizeCsvIds, normalizeOptionalId, normalizeEventBlockKind, normalizeCsvString, EventCompactRow, EmptyState, getContainerClass, getCardOrientation, isToday, MAX_EVENTS_PER_DAY, formatTime, WIZARD_STEPS, getWizardStepsForContext, getStepNumber, formatEventPriceDisplay, resolveRuntimeEventPricing, formatEventPrice, formatEventDateParts, resolveEventLinkProps, DateTimeTile, assertNever, EventCard, buildCalendarViewport, shiftCalendarAnchorDate, addMonths, getThreeMonthRange, buildTimetableModel, formatDate, MONTH_NAMES, getEventAvailability, formatEventTeacherLine, toRegistrationEvents, isEventContentType, findPreSelectedEvent, resolveRegistrationTarget, findEventByOccurrenceId, resolveEventRequiresPayment, resolveDiscountContext } from './chunk-R4XK3CKR.mjs';
|
|
13
|
+
import { publicEventPricingType, getBookingLocalDateKey, toScheduledBookingDateTime, toBookingTimeZone, publicEventPricingCurrency, formatBookingDateTime, publicEventPricingMode, publicEventScalarPrice, formatCurrencyAmount, publicEventTicketTypes, formatBookingDate, formatBookingTime } from './chunk-PCHACQEB.mjs';
|
|
14
14
|
import React9, { createContext, useId, useMemo, useReducer, useState, useRef, useEffect, useCallback, useContext } from 'react';
|
|
15
15
|
import { createPortal } from 'react-dom';
|
|
16
16
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
@@ -516,8 +516,14 @@ function existingRegistrationLookupReducer(state, action) {
|
|
|
516
516
|
}
|
|
517
517
|
|
|
518
518
|
// ../blocks/src/system/runtime/nodes/event-registration/hooks.ts
|
|
519
|
+
var eventRegistrationHooksDeps = {
|
|
520
|
+
useBlockApi
|
|
521
|
+
};
|
|
519
522
|
function usePortalAuth() {
|
|
520
|
-
|
|
523
|
+
return usePortalAuthWithDeps(eventRegistrationHooksDeps);
|
|
524
|
+
}
|
|
525
|
+
function usePortalAuthWithDeps(deps) {
|
|
526
|
+
const api = deps.useBlockApi();
|
|
521
527
|
const [authState, setAuthState] = useState("checking");
|
|
522
528
|
const [profile, setProfile] = useState(null);
|
|
523
529
|
useEffect(() => {
|
|
@@ -565,7 +571,10 @@ function usePortalAuth() {
|
|
|
565
571
|
};
|
|
566
572
|
}
|
|
567
573
|
function useEligibility(params) {
|
|
568
|
-
|
|
574
|
+
return useEligibilityWithDeps(params, eventRegistrationHooksDeps);
|
|
575
|
+
}
|
|
576
|
+
function useEligibilityWithDeps(params, deps) {
|
|
577
|
+
const api = deps.useBlockApi();
|
|
569
578
|
const ticketSelectionsKey = JSON.stringify(normalizeTicketSelectionLines(params.ticketSelections));
|
|
570
579
|
const [state, dispatch] = useReducer(
|
|
571
580
|
eligibilityLookupReducer,
|
|
@@ -634,7 +643,16 @@ function useExistingEventRegistration({
|
|
|
634
643
|
isAuthenticated,
|
|
635
644
|
occurrenceId
|
|
636
645
|
}) {
|
|
637
|
-
|
|
646
|
+
return useExistingEventRegistrationWithDeps(
|
|
647
|
+
{ isAuthenticated, occurrenceId },
|
|
648
|
+
eventRegistrationHooksDeps
|
|
649
|
+
);
|
|
650
|
+
}
|
|
651
|
+
function useExistingEventRegistrationWithDeps({
|
|
652
|
+
isAuthenticated,
|
|
653
|
+
occurrenceId
|
|
654
|
+
}, deps) {
|
|
655
|
+
const api = deps.useBlockApi();
|
|
638
656
|
const [state, dispatch] = useReducer(
|
|
639
657
|
existingRegistrationLookupReducer,
|
|
640
658
|
initialExistingRegistrationLookupState
|
|
@@ -970,9 +988,6 @@ function SlidingScaleAmountField(props) {
|
|
|
970
988
|
}
|
|
971
989
|
function TicketTypeQuantityRows(props) {
|
|
972
990
|
const totalSelectedQuantity = getTicketSelectionTotal(props.ticketSelections);
|
|
973
|
-
const selectedTicketTypes = props.ticketTypes.filter(
|
|
974
|
-
(ticketType) => getTicketLineQuantity(props.ticketSelections, ticketType.id) > 0
|
|
975
|
-
);
|
|
976
991
|
return /* @__PURE__ */ jsxs("div", { className: "er-ticket-lines", children: [
|
|
977
992
|
/* @__PURE__ */ jsx("div", { className: "er-ticket-line-list", role: "list", "aria-label": "Tickets", children: props.ticketTypes.map((ticketType) => {
|
|
978
993
|
const quantity = getTicketLineQuantity(props.ticketSelections, ticketType.id);
|
|
@@ -1031,22 +1046,7 @@ function TicketTypeQuantityRows(props) {
|
|
|
1031
1046
|
availabilityLabel: props.availableSpots != null ? `${props.availableSpots} spots available` : null
|
|
1032
1047
|
}
|
|
1033
1048
|
),
|
|
1034
|
-
|
|
1035
|
-
/* @__PURE__ */ jsxs("div", { className: "er-ticket-line-summary-title", children: [
|
|
1036
|
-
totalSelectedQuantity,
|
|
1037
|
-
" ticket",
|
|
1038
|
-
totalSelectedQuantity === 1 ? "" : "s",
|
|
1039
|
-
" selected"
|
|
1040
|
-
] }),
|
|
1041
|
-
/* @__PURE__ */ jsx("ul", { className: "er-ticket-line-summary-list", children: selectedTicketTypes.map((ticketType) => {
|
|
1042
|
-
const quantity = getTicketLineQuantity(props.ticketSelections, ticketType.id);
|
|
1043
|
-
return /* @__PURE__ */ jsxs("li", { children: [
|
|
1044
|
-
quantity,
|
|
1045
|
-
" x ",
|
|
1046
|
-
ticketType.name
|
|
1047
|
-
] }, ticketType.id);
|
|
1048
|
-
}) })
|
|
1049
|
-
] }) : props.hasAvailableTicketTypes ? /* @__PURE__ */ jsx("p", { className: "er-text er-text--muted", children: "Choose at least one ticket to continue." }) : /* @__PURE__ */ jsx("p", { className: "er-text er-text--muted", children: "No ticket types are currently available." })
|
|
1049
|
+
totalSelectedQuantity === 0 && props.hasAvailableTicketTypes ? /* @__PURE__ */ jsx("p", { className: "er-text er-text--muted", children: "Choose at least one ticket to continue." }) : totalSelectedQuantity === 0 ? /* @__PURE__ */ jsx("p", { className: "er-text er-text--muted", children: "No ticket types are currently available." }) : null
|
|
1050
1050
|
] });
|
|
1051
1051
|
}
|
|
1052
1052
|
function getAttendanceModeDetail(attendanceMode) {
|
|
@@ -2258,7 +2258,6 @@ function EventRegistrationSummaryBar(props) {
|
|
|
2258
2258
|
const autoAppliedDiscount = wizard.discountCode.trim().length > 0 ? null : wizard.autoAppliedDiscount;
|
|
2259
2259
|
const autoAppliedDiscountCents = Math.max(0, autoAppliedDiscount?.computedAmountCents ?? 0);
|
|
2260
2260
|
const discountedTotalCents = Math.max(0, subtotalCents - autoAppliedDiscountCents);
|
|
2261
|
-
const selectedLineSummary = (wizard.ticketSelectionSummaryLines ?? []).filter((line) => line.ticketTypeId !== null).map((line) => `${line.quantity} x ${line.label}`).join(", ");
|
|
2262
2261
|
const selectedDirectPaymentOption = getSelectedDirectPaymentOption({
|
|
2263
2262
|
wizard,
|
|
2264
2263
|
totalCents: discountedTotalCents,
|
|
@@ -2295,10 +2294,6 @@ function EventRegistrationSummaryBar(props) {
|
|
|
2295
2294
|
/* @__PURE__ */ jsx("h4", { className: "er-summary-bar-event", children: summaryTitle }),
|
|
2296
2295
|
/* @__PURE__ */ jsxs("span", { className: "er-summary-bar-meta", children: [
|
|
2297
2296
|
summaryDate && formatEventDateTime(summaryDate, { timeZone: summaryTimeZone }),
|
|
2298
|
-
selectedLineSummary ? /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2299
|
-
" \xB7 ",
|
|
2300
|
-
selectedLineSummary
|
|
2301
|
-
] }) : null,
|
|
2302
2297
|
wizard.step !== "select-event" && wizard.step !== "select-tickets" && wizard.ticketsCount > 0 && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
2303
2298
|
" \xB7 ",
|
|
2304
2299
|
wizard.ticketsCount,
|
|
@@ -2356,8 +2351,14 @@ function validateFormData(formData) {
|
|
|
2356
2351
|
}
|
|
2357
2352
|
return errors;
|
|
2358
2353
|
}
|
|
2354
|
+
var paymentVerificationDeps = {
|
|
2355
|
+
useBlockApi
|
|
2356
|
+
};
|
|
2359
2357
|
function usePaymentVerification(config) {
|
|
2360
|
-
|
|
2358
|
+
return usePaymentVerificationWithDeps(config, paymentVerificationDeps);
|
|
2359
|
+
}
|
|
2360
|
+
function usePaymentVerificationWithDeps(config, deps) {
|
|
2361
|
+
const api = deps.useBlockApi();
|
|
2361
2362
|
const pollingConfig = useMemo(() => {
|
|
2362
2363
|
if (!config) return null;
|
|
2363
2364
|
return {
|
|
@@ -2467,7 +2468,13 @@ function useEventRegistrationStripeReturn(options) {
|
|
|
2467
2468
|
}
|
|
2468
2469
|
|
|
2469
2470
|
// ../blocks/src/system/runtime/nodes/event-registration/useEventRegistrationSubmit.ts
|
|
2471
|
+
var eventRegistrationSubmitDeps = {
|
|
2472
|
+
savePendingRegistration
|
|
2473
|
+
};
|
|
2470
2474
|
function useEventRegistrationSubmit(options) {
|
|
2475
|
+
return useEventRegistrationSubmitWithDeps(options, eventRegistrationSubmitDeps);
|
|
2476
|
+
}
|
|
2477
|
+
function useEventRegistrationSubmitWithDeps(options, deps) {
|
|
2471
2478
|
return async (method, passId, membershipId, selection, submitOptions) => {
|
|
2472
2479
|
const submitOccurrenceId = options.registrationTarget?.occurrenceId;
|
|
2473
2480
|
if (!submitOccurrenceId) {
|
|
@@ -2556,7 +2563,7 @@ function useEventRegistrationSubmit(options) {
|
|
|
2556
2563
|
}
|
|
2557
2564
|
const siteId = options.api.config.siteId;
|
|
2558
2565
|
if (siteId && submitOccurrenceId) {
|
|
2559
|
-
savePendingRegistration(siteId, submitOccurrenceId, {
|
|
2566
|
+
deps.savePendingRegistration(siteId, submitOccurrenceId, {
|
|
2560
2567
|
attendeeId: result.attendeeId,
|
|
2561
2568
|
formData: options.formData,
|
|
2562
2569
|
ticketSelections,
|
|
@@ -2612,6 +2619,15 @@ function useEventRegistrationSubmit(options) {
|
|
|
2612
2619
|
}
|
|
2613
2620
|
|
|
2614
2621
|
// ../blocks/src/system/runtime/nodes/event-registration/useEventRegistrationWizard.ts
|
|
2622
|
+
var eventRegistrationWizardDeps = {
|
|
2623
|
+
usePortalAuth,
|
|
2624
|
+
useEligibility,
|
|
2625
|
+
useExistingEventRegistration,
|
|
2626
|
+
useWaitlistClaim,
|
|
2627
|
+
useEventRegistrationStripeReturn,
|
|
2628
|
+
useEventRegistrationSubmit,
|
|
2629
|
+
useDiscountCodeUi
|
|
2630
|
+
};
|
|
2615
2631
|
function parseCurrencyInputToCents(value) {
|
|
2616
2632
|
const trimmed = value.trim();
|
|
2617
2633
|
if (!trimmed) return null;
|
|
@@ -2642,6 +2658,9 @@ function getSlidingScaleSelectionMessage(input) {
|
|
|
2642
2658
|
return null;
|
|
2643
2659
|
}
|
|
2644
2660
|
function useEventRegistrationWizard(options) {
|
|
2661
|
+
return useEventRegistrationWizardWithDeps(options, eventRegistrationWizardDeps);
|
|
2662
|
+
}
|
|
2663
|
+
function useEventRegistrationWizardWithDeps(options, deps) {
|
|
2645
2664
|
const api = useBlockApi();
|
|
2646
2665
|
const registrationEvents = useMemo(
|
|
2647
2666
|
() => toRegistrationEvents(options.events ?? []),
|
|
@@ -2691,8 +2710,8 @@ function useEventRegistrationWizard(options) {
|
|
|
2691
2710
|
const [registrationResult, setRegistrationResult] = useState(null);
|
|
2692
2711
|
const [errorMessage, setErrorMessage] = useState("");
|
|
2693
2712
|
const [altchaSolution, setAltchaSolution] = useState(null);
|
|
2694
|
-
const { authState: portalAuthState, profile: portalProfile } = usePortalAuth();
|
|
2695
|
-
const waitlistClaim = useWaitlistClaim();
|
|
2713
|
+
const { authState: portalAuthState, profile: portalProfile } = deps.usePortalAuth();
|
|
2714
|
+
const waitlistClaim = deps.useWaitlistClaim();
|
|
2696
2715
|
const [showMagicLinkModal, setShowMagicLinkModal] = useState(false);
|
|
2697
2716
|
const [pendingAttendeeId, setPendingAttendeeId] = useState(null);
|
|
2698
2717
|
const [paymentStepState, setPaymentStepState] = useState({
|
|
@@ -2757,7 +2776,7 @@ function useEventRegistrationWizard(options) {
|
|
|
2757
2776
|
if (flowState.ticketsCount === ticketsCount) return;
|
|
2758
2777
|
dispatchFlow({ type: "set-tickets-count", ticketsCount });
|
|
2759
2778
|
}, [flowState.ticketsCount, ticketsCount]);
|
|
2760
|
-
const eligibilityResult = useEligibility({
|
|
2779
|
+
const eligibilityResult = deps.useEligibility({
|
|
2761
2780
|
enabled: portalAuthState === "authenticated" || step === "enter-details" || step === "select-payment",
|
|
2762
2781
|
occurrenceId,
|
|
2763
2782
|
attendanceMode: selectedAttendanceMode,
|
|
@@ -2765,7 +2784,7 @@ function useEventRegistrationWizard(options) {
|
|
|
2765
2784
|
selectedSlidingAmount: parseCurrencyInputToCents(selectedSlidingAmountInput),
|
|
2766
2785
|
email: formData.email
|
|
2767
2786
|
});
|
|
2768
|
-
const existingRegistrationResult = useExistingEventRegistration({
|
|
2787
|
+
const existingRegistrationResult = deps.useExistingEventRegistration({
|
|
2769
2788
|
isAuthenticated: portalAuthState === "authenticated",
|
|
2770
2789
|
occurrenceId
|
|
2771
2790
|
});
|
|
@@ -2859,7 +2878,7 @@ function useEventRegistrationWizard(options) {
|
|
|
2859
2878
|
useEffect(() => {
|
|
2860
2879
|
dispatchFlow({ type: "eligibility-updated", eligibility });
|
|
2861
2880
|
}, [eligibility]);
|
|
2862
|
-
const verification = useEventRegistrationStripeReturn({
|
|
2881
|
+
const verification = deps.useEventRegistrationStripeReturn({
|
|
2863
2882
|
api,
|
|
2864
2883
|
events: registrationEvents,
|
|
2865
2884
|
occurrenceId,
|
|
@@ -3123,10 +3142,10 @@ function useEventRegistrationWizard(options) {
|
|
|
3123
3142
|
if (discountContext?.type !== "event") return void 0;
|
|
3124
3143
|
return ticketSelectionSubtotalCents;
|
|
3125
3144
|
}, [discountContext, ticketSelectionSubtotalCents]);
|
|
3126
|
-
const discountUi = useDiscountCodeUi({ api, discountContext, subtotalCents: discountSubtotalCents });
|
|
3145
|
+
const discountUi = deps.useDiscountCodeUi({ api, discountContext, subtotalCents: discountSubtotalCents });
|
|
3127
3146
|
const selectionMethod = paymentSelection.method;
|
|
3128
3147
|
const shouldShowDiscountToggle = discountContext !== null && discountUi.manualCodeEntryAllowed && (selectionMethod === "stripe" || selectionMethod === "pass_bundle" || selectionMethod === "membership_bundle");
|
|
3129
|
-
const handleSubmit = useEventRegistrationSubmit({
|
|
3148
|
+
const handleSubmit = deps.useEventRegistrationSubmit({
|
|
3130
3149
|
api,
|
|
3131
3150
|
registrationTarget,
|
|
3132
3151
|
selectedAttendanceMode,
|
|
@@ -119,6 +119,10 @@ var BOOKINGS = {
|
|
|
119
119
|
path: "/public/bookings/availability/slots",
|
|
120
120
|
method: "GET"
|
|
121
121
|
},
|
|
122
|
+
getWeeklySlotAvailability: {
|
|
123
|
+
path: "/public/bookings/weekly-slot-availability",
|
|
124
|
+
method: "GET"
|
|
125
|
+
},
|
|
122
126
|
getAvailableDates: {
|
|
123
127
|
path: "/public/bookings/availability/dates",
|
|
124
128
|
method: "GET"
|
|
@@ -661,6 +665,18 @@ function createBlockApi(config) {
|
|
|
661
665
|
}
|
|
662
666
|
});
|
|
663
667
|
},
|
|
668
|
+
async getWeeklySlotAvailability(params) {
|
|
669
|
+
const sid = requireSiteId();
|
|
670
|
+
return request(BOOKINGS.getWeeklySlotAvailability, {
|
|
671
|
+
query: {
|
|
672
|
+
siteId: sid,
|
|
673
|
+
serviceId: params.serviceId,
|
|
674
|
+
resourceId: params.resourceId,
|
|
675
|
+
horizonWeeks: params.horizonWeeks,
|
|
676
|
+
timezone: params.timezone
|
|
677
|
+
}
|
|
678
|
+
});
|
|
679
|
+
},
|
|
664
680
|
async getAvailableDates(params) {
|
|
665
681
|
const sid = requireSiteId();
|
|
666
682
|
return request(BOOKINGS.getAvailableDates, {
|
|
@@ -584,10 +584,20 @@ var repeatSchema = z.object({
|
|
|
584
584
|
direction: z.enum(["asc", "desc"]).default("asc")
|
|
585
585
|
}).optional()
|
|
586
586
|
});
|
|
587
|
+
var conditionalAuthoringPresenceSchema = z.discriminatedUnion("kind", [
|
|
588
|
+
z.object({ kind: z.literal("visitor-only") }),
|
|
589
|
+
z.object({
|
|
590
|
+
kind: z.literal("recover-empty-when-active"),
|
|
591
|
+
placeholder: z.string().min(1).optional()
|
|
592
|
+
})
|
|
593
|
+
]);
|
|
587
594
|
var conditionSchema = z.object({
|
|
588
595
|
when: bindingSchema,
|
|
589
596
|
equals: z.unknown().optional(),
|
|
590
|
-
not: z.boolean().default(false)
|
|
597
|
+
not: z.boolean().default(false),
|
|
598
|
+
authoringPresence: conditionalAuthoringPresenceSchema.default({
|
|
599
|
+
kind: "visitor-only"
|
|
600
|
+
})
|
|
591
601
|
});
|
|
592
602
|
var dataScopeSchema = z.object({
|
|
593
603
|
name: z.string().min(1),
|
|
@@ -688,6 +698,7 @@ function when(path, options) {
|
|
|
688
698
|
$when: {
|
|
689
699
|
when: { from: path },
|
|
690
700
|
...{},
|
|
701
|
+
...{},
|
|
691
702
|
...{}
|
|
692
703
|
}
|
|
693
704
|
});
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import { FeedbackMessage, discountAvailabilityHasDiscounts, getAutoAppliedDiscountPreview, discountAvailabilityAllowsManualEntry } from './chunk-
|
|
3
|
-
import { themeButtonClassName } from './chunk-
|
|
2
|
+
import { FeedbackMessage, discountAvailabilityHasDiscounts, getAutoAppliedDiscountPreview, discountAvailabilityAllowsManualEntry } from './chunk-KDP7ZRZV.mjs';
|
|
3
|
+
import { themeButtonClassName } from './chunk-R4XK3CKR.mjs';
|
|
4
4
|
import { formatCurrencyAmount, clsx_default } from './chunk-PCHACQEB.mjs';
|
|
5
5
|
import { useReducer, useEffect, useId, useRef } from 'react';
|
|
6
6
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|