@riverbankcms/sdk 0.124.0 → 0.126.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.
Files changed (130) hide show
  1. package/README.md +3 -1
  2. package/dist/{PreviewEditorSidebar-DBmAJJkQ.mjs → PreviewEditorSidebar-DcYJxTgc.mjs} +67 -266
  3. package/dist/{PreviewEditorUI-CfGaz9cY.mjs → PreviewEditorUI-Ctt1yTJr.mjs} +3 -3
  4. package/dist/{PreviewQueryProvider-BH-3-jSj.mjs → PreviewQueryProvider-DgFDIwvK.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-BW9Z8j8T.mjs → SdkPreviewModeRuntime-CvW1vdQ4.mjs} +38 -30
  6. package/dist/{SiteChromeCustomizeContext-2z8moxYf.mjs → SiteChromeCustomizeContext-C87qlKWw.mjs} +493 -1378
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +1354 -202
  8. package/dist/_dts/api/src/accessAdmin.d.ts +2 -14
  9. package/dist/_dts/api/src/common/envelope.d.ts +1 -1
  10. package/dist/_dts/api/src/contentRuntime.d.ts +0 -2
  11. package/dist/_dts/api/src/endpoints.d.ts +0 -7
  12. package/dist/_dts/api/src/sdk-event-upsert.d.ts +42 -0
  13. package/dist/_dts/api/src/sdkContracts.d.ts +11 -9
  14. package/dist/_dts/api/src/siteAccessAdmin.d.ts +23 -0
  15. package/dist/_dts/api/src/siteOperations.d.ts +18 -1
  16. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +1 -14
  17. package/dist/_dts/billing/src/plans/types.d.ts +24 -5
  18. package/dist/_dts/blocks/src/contracts/non-block-islands.d.ts +4 -0
  19. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +2 -0
  20. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +1 -0
  21. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/logic.d.ts +2 -0
  22. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.client.d.ts +3 -1
  23. package/dist/_dts/blocks/src/system/runtime/nodes/event-details.server.d.ts +2 -1
  24. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.d.ts +15 -2
  25. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +331 -19
  26. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +1 -2
  27. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +2 -3
  28. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -2
  29. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +3 -12
  30. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +3 -13
  31. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +8 -100
  32. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +1 -4
  33. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -15
  34. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +11 -21
  35. package/dist/_dts/sdk/src/cli/commands/event.d.ts +2 -2
  36. package/dist/_dts/sdk/src/cli/commands/eventOccurrenceSchedule.d.ts +12 -0
  37. package/dist/_dts/sdk/src/cli/commands/push/pushAllExtras.d.ts +6 -0
  38. package/dist/_dts/sdk/src/cli/commands/style.d.ts +1 -1
  39. package/dist/_dts/sdk/src/cli/content/legacyEventScheduleShapeError.d.ts +5 -0
  40. package/dist/_dts/sdk/src/cli/content/localEventSchedule.d.ts +17 -0
  41. package/dist/_dts/sdk/src/cli/content/reader.d.ts +5 -10
  42. package/dist/_dts/sdk/src/cli/migrations/events.d.ts +1 -1
  43. package/dist/_dts/sdk/src/cli/site-commands/eventScheduleCompiler.d.ts +24 -0
  44. package/dist/_dts/sdk/src/client/management/http.d.ts +1 -1
  45. package/dist/_dts/sdk/src/client/management/types.d.ts +3 -28
  46. package/dist/_dts/sdk/src/config/index.d.ts +1 -1
  47. package/dist/_dts/sdk/src/public-api/contracts.d.ts +5 -20
  48. package/dist/_dts/sdk/src/rendering/index.d.ts +1 -1
  49. package/dist/_dts/sdk/src/version.d.ts +1 -1
  50. package/dist/_dts/site-commands/src/commandContract.d.ts +33 -5
  51. package/dist/_dts/site-commands/src/commandDomain.d.ts +2 -2
  52. package/dist/_dts/site-commands/src/commands.d.ts +38 -9
  53. package/dist/_dts/site-commands/src/siteStyleCommandSchema.d.ts +28 -1
  54. package/dist/_dts/site-commands/src/siteStyleSelectionSchemaBuilder.d.ts +4 -4
  55. package/dist/_dts/theme-core/src/palette/concretePalette.d.ts +20 -0
  56. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +2 -17
  57. package/dist/_dts/theme-core/src/palette/index.d.ts +1 -6
  58. package/dist/_dts/theme-core/src/palette/schema.d.ts +39 -0
  59. package/dist/_dts/theme-core/src/schema.d.ts +38 -26
  60. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +4 -6
  61. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +5 -6
  62. package/dist/cli/index.mjs +631 -525
  63. package/dist/cli/init-docs/content/cli-reference.md +6 -3
  64. package/dist/cli/init-docs/content/content-management.md +24 -13
  65. package/dist/client/{DiscountCodeDisclosure-DxvjKvck.mjs → DiscountCodeDisclosure-DS0AuFWW.mjs} +1 -1
  66. package/dist/client/{EventCombined.client-BydMGc4c.mjs → EventCombined.client-DtMxLr7q.mjs} +2 -2
  67. package/dist/client/{EventListing.client-vpzhhysN.mjs → EventListing.client-BdLSRNg1.mjs} +2 -2
  68. package/dist/client/{LeafletStaticMap-CB07rpf8.mjs → LeafletStaticMap-BrpC6vsT.mjs} +1 -1
  69. package/dist/client/{MagicLinkForm-BzyRJ8VF.mjs → MagicLinkForm-Bt3IuLMy.mjs} +1 -1
  70. package/dist/client/{StepIndicator-CTcGf8Be.mjs → StepIndicator-CBYPFVoy.mjs} +2 -2
  71. package/dist/client/{accordion-B-DUDLRD.mjs → accordion-BqqwPJWM.mjs} +1 -1
  72. package/dist/client/{bookingForm-DSbClLcZ.mjs → bookingForm-SneP3yxC.mjs} +5 -6
  73. package/dist/client/bookings.mjs +190 -24
  74. package/dist/client/{carousel-B6Ccdx8M.mjs → carousel-BTIR9L3I.mjs} +1 -1
  75. package/dist/client/{cart-BZh8G8wM.mjs → cart-bqiqd8SX.mjs} +3 -3
  76. package/dist/client/{checkout-o6zaC-kM.mjs → checkout-WbTFV5v4.mjs} +3 -3
  77. package/dist/client/client.mjs +175 -223
  78. package/dist/client/{courseRegistration-Cf11pNDs.mjs → courseRegistration-BcemLAdN.mjs} +6 -7
  79. package/dist/client/{eventCalendar-BeXrdsSE.mjs → eventCalendar-CsxIw0V_.mjs} +4 -4
  80. package/dist/client/{eventCombined-DA76PZgG.mjs → eventCombined-B6XMoHfa.mjs} +2 -2
  81. package/dist/client/{eventDetails-BLxg0rok.mjs → eventDetails-BJaoPPfo.mjs} +10 -5
  82. package/dist/client/{eventListing-tO9LheBX.mjs → eventListing-DgwdYHRT.mjs} +2 -2
  83. package/dist/client/{eventRegistration-Cnene9D9.mjs → eventRegistration-C0O3folu.mjs} +30 -22
  84. package/dist/client/{form-DZf72CHB.mjs → form-Bk9txGFt.mjs} +1 -1
  85. package/dist/client/{headerSection-Hioja5Cr.mjs → headerSection-yIBt0yTv.mjs} +2 -2
  86. package/dist/client/hooks.mjs +54 -102
  87. package/dist/client/{locationMap-DwhUXEix.mjs → locationMap-C-3KIpv-.mjs} +2 -2
  88. package/dist/client/{newsletterForm-C350bEQf.mjs → newsletterForm-CzB8g8h2.mjs} +1 -1
  89. package/dist/client/{pricing-BYWN_ATa.mjs → pricing-C1QeDes_.mjs} +1 -1
  90. package/dist/client/{productDetail-CCqCyXgU.mjs → productDetail-w7SBp5uc.mjs} +3 -3
  91. package/dist/client/{productList-BAiNJrOU.mjs → productList-D0tGKHGf.mjs} +3 -3
  92. package/dist/client/{propsDecoder-DeunRj6m.mjs → propsDecoder-Bcin2DB3.mjs} +172 -11
  93. package/dist/client/rendering/client.mjs +322 -363
  94. package/dist/client/rendering/islands.mjs +18 -18
  95. package/dist/client/rendering.mjs +231 -272
  96. package/dist/client/{useDiscountCodeUi-I-92-x2V.mjs → scrollToBlock-h-o_STf_.mjs} +18 -2
  97. package/dist/client/{shop-DUmCdBtw.mjs → shop-BGzmL8O_.mjs} +5 -6
  98. package/dist/client/{shop-commerce-CY27mEUr.mjs → shop-commerce-lX8QxjX-.mjs} +4 -4
  99. package/dist/client/{shop-commerce-store-ChXPbWfa.mjs → shop-commerce-store-CEurARtu.mjs} +1 -1
  100. package/dist/client/{shopShared-q0kin1cv.mjs → shopShared-DXxH8xxw.mjs} +2 -2
  101. package/dist/client/{useEventFilters-DlcVluZh.mjs → useEventFilters-B591g9vd.mjs} +2 -2
  102. package/dist/client/{usePolling-Bz7GFV_a.mjs → usePolling-BvnChV4m.mjs} +2 -2
  103. package/dist/preview-next/before-render.mjs +0 -7
  104. package/dist/preview-next/client/runtime.mjs +4 -4
  105. package/dist/preview-next/middleware.mjs +0 -7
  106. package/dist/{previewAuthStore-CJX21dGi.mjs → previewAuthStore-Dev9CdG9.mjs} +0 -7
  107. package/dist/{sdk-runtime-OnPM8Z69.mjs → sdk-runtime-M__i3Jce.mjs} +2 -2
  108. package/dist/{separator-CPtfzHqA.mjs → separator-VSlnI9bc.mjs} +1 -1
  109. package/dist/server/components.mjs +99 -141
  110. package/dist/server/config-validation.mjs +54 -102
  111. package/dist/server/config.mjs +54 -102
  112. package/dist/server/data.mjs +54 -102
  113. package/dist/server/index.mjs +1 -8
  114. package/dist/server/next.mjs +103 -152
  115. package/dist/server/page-converter.mjs +54 -102
  116. package/dist/server/prebuild.mjs +1 -1
  117. package/dist/server/rendering/server.mjs +62 -104
  118. package/dist/server/rendering.mjs +100 -142
  119. package/dist/server/routing.mjs +75 -147
  120. package/dist/server/server.mjs +55 -110
  121. package/dist/server/theme-bridge.mjs +172 -162
  122. package/dist/server/theme.mjs +167 -11
  123. package/package.json +1 -1
  124. package/dist/_dts/theme-core/src/palette/editorState.d.ts +0 -75
  125. package/dist/_dts/theme-core/src/palette/libraryModel.d.ts +0 -64
  126. package/dist/_dts/theme-core/src/palette/persistenceReadSource.d.ts +0 -81
  127. package/dist/_dts/theme-core/src/palette/resolveSelection.d.ts +0 -75
  128. package/dist/_dts/theme-core/src/palette/selection.d.ts +0 -74
  129. package/dist/_dts/theme-core/src/palette/sitePalettePersistence.d.ts +0 -34
  130. package/dist/client/scrollToBlock-C86BYkyV.mjs +0 -17
@@ -1,16 +1,15 @@
1
1
  "use client";
2
- import { At as formatBookingTime, Dt as formatBookingDate, Ft as toBookingTimeZone, Gt as assertNever, It as toScheduledBookingDateTime, Lt as parseEventPageSurfaceSubject, X as themeButtonClassName, t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
3
- import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-BYWN_ATa.mjs";
2
+ import { At as formatBookingTime, Dt as formatBookingDate, Ft as toBookingTimeZone, Gt as assertNever, It as toScheduledBookingDateTime, Lt as parseEventPageSurfaceSubject, X as themeButtonClassName, t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
3
+ import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-C1QeDes_.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
- import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-I-92-x2V.mjs";
7
- import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-DxvjKvck.mjs";
8
- import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-CTcGf8Be.mjs";
6
+ import { a as CheckIcon, i as StateIcon, n as useDiscountCodeUi, r as TerminalPanel, t as scrollToBlock } from "./scrollToBlock-h-o_STf_.mjs";
7
+ import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-DS0AuFWW.mjs";
8
+ import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-CBYPFVoy.mjs";
9
9
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
10
10
  import { n as getFieldValidationControlProps, t as FieldValidationMessage } from "./FieldValidationMessage-AYanWFb-.mjs";
11
11
  import { t as buildCheckoutReturnUrls } from "./checkoutUrls-Ct8Mxna3.mjs";
12
- import { t as scrollToBlock } from "./scrollToBlock-C86BYkyV.mjs";
13
- import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-BzyRJ8VF.mjs";
12
+ import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-Bt3IuLMy.mjs";
14
13
  import { t as CrossIcon } from "./CrossIcon-Dn1KRKW5.mjs";
15
14
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
16
15
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -1,12 +1,12 @@
1
1
  "use client";
2
2
  import { t as clsx } from "./clsx-DgIEfj3H.mjs";
3
- import { E as getEventRuntimeFiltersKey, F as formatEventTeacherLine, G as getLocalDateKey, I as formatTime, K as getLocalMinuteOfDay, T as buildEventRuntimeFilters, U as getEventAvailability, V as resolveEventLinkProps, W as getEventAvailabilityStatus, X as themeButtonClassName, t as defineIslandPropsDecoder, w as buildEventCalendarListingRender, z as groupEventsByDate } from "./propsDecoder-DeunRj6m.mjs";
4
- import { o as EventFilters, t as useEventFilters } from "./useEventFilters-DlcVluZh.mjs";
5
- import { a as CalendarDayCell, c as useCalendarEvents, d as getOrderedDayNames, f as getWeekCalendarDayTuple, h as isToday, i as WeekAgendaView, l as MONTH_NAMES, m as isSameLocalDay, o as EventModalProvider, p as getWeekCalendarDays, r as EventModals, s as useEventModal, t as EventCombinedClient, u as formatDateKey } from "./EventCombined.client-BydMGc4c.mjs";
3
+ import { E as getEventRuntimeFiltersKey, F as formatEventTeacherLine, G as getLocalDateKey, I as formatTime, K as getLocalMinuteOfDay, T as buildEventRuntimeFilters, U as getEventAvailability, V as resolveEventLinkProps, W as getEventAvailabilityStatus, X as themeButtonClassName, t as defineIslandPropsDecoder, w as buildEventCalendarListingRender, z as groupEventsByDate } from "./propsDecoder-Bcin2DB3.mjs";
4
+ import { o as EventFilters, t as useEventFilters } from "./useEventFilters-B591g9vd.mjs";
5
+ import { a as CalendarDayCell, c as useCalendarEvents, d as getOrderedDayNames, f as getWeekCalendarDayTuple, h as isToday, i as WeekAgendaView, l as MONTH_NAMES, m as isSameLocalDay, o as EventModalProvider, p as getWeekCalendarDays, r as EventModals, s as useEventModal, t as EventCombinedClient, u as formatDateKey } from "./EventCombined.client-DtMxLr7q.mjs";
6
6
  import { t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
7
7
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
8
8
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
9
- import { n as EventListingController } from "./EventListing.client-vpzhhysN.mjs";
9
+ import { n as EventListingController } from "./EventListing.client-BdLSRNg1.mjs";
10
10
  import { useEffect, useId, useMemo, useState } from "react";
11
11
  import { jsx, jsxs } from "react/jsx-runtime";
12
12
  //#region ../calendar/src/lane-packing.ts
@@ -1,5 +1,5 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
2
- import { n as EventCombinedIslandClient } from "./EventCombined.client-BydMGc4c.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
2
+ import { n as EventCombinedIslandClient } from "./EventCombined.client-DtMxLr7q.mjs";
3
3
  import { t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
4
4
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
5
5
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -1,8 +1,8 @@
1
- import { Ft as toBookingTimeZone, H as resolveRuntimeEventPricing, It as toScheduledBookingDateTime, M as formatEventDateParts, Mt as getBookingLocalDateKey, N as formatEventPrice, V as resolveEventLinkProps, Vt as publicEventPricingType, Wt as formatCurrencyAmount, t as defineIslandPropsDecoder, zt as publicEventPricingCurrency } from "./propsDecoder-DeunRj6m.mjs";
2
- import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-BYWN_ATa.mjs";
1
+ import { Ft as toBookingTimeZone, H as resolveRuntimeEventPricing, It as toScheduledBookingDateTime, M as formatEventDateParts, Mt as getBookingLocalDateKey, N as formatEventPrice, V as resolveEventLinkProps, Vt as publicEventPricingType, Wt as formatCurrencyAmount, Y as resolveEventRegistrationScopedEvents, t as defineIslandPropsDecoder, zt as publicEventPricingCurrency } from "./propsDecoder-Bcin2DB3.mjs";
2
+ import { n as formatCoursePriceDisplay, r as resolveCoursePricingState, t as formatCoursePriceAmount } from "./pricing-C1QeDes_.mjs";
3
3
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
4
4
  import { n as filterPassesForEvent, t as filterMembershipsForEvent } from "./eventProductEligibility-AVxyCB1u.mjs";
5
- import { t as LeafletStaticMap } from "./LeafletStaticMap-CB07rpf8.mjs";
5
+ import { t as LeafletStaticMap } from "./LeafletStaticMap-BrpC6vsT.mjs";
6
6
  import "react";
7
7
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
8
  //#region ../blocks/src/system/runtime/nodes/event-details/logic.ts
@@ -28,7 +28,10 @@ function uniqByOccurrenceId(events) {
28
28
  return out;
29
29
  }
30
30
  function selectEventDetails(args) {
31
- const all = uniqByOccurrenceId((args.events ?? []).filter(Boolean));
31
+ const all = uniqByOccurrenceId(resolveEventRegistrationScopedEvents((args.events ?? []).filter(Boolean), {
32
+ occurrenceContext: args.occurrenceContext,
33
+ subject: args.subject
34
+ }));
32
35
  const occurrenceContext = args.occurrenceContext ?? null;
33
36
  const otherLimit = parseLimit(args.otherDatesLimit, 5);
34
37
  const selectedFromContext = (() => {
@@ -320,6 +323,7 @@ function EventDetailsView({ selection, showVenue, showMap, showOtherDates, showC
320
323
  function toEventDetailsClientProps(props) {
321
324
  return {
322
325
  occurrenceContext: props.occurrenceContext,
326
+ subject: props.subject,
323
327
  events: props.events ? [...props.events] : props.events,
324
328
  showVenue: props.showVenue,
325
329
  showMap: props.showMap,
@@ -335,10 +339,11 @@ function toEventDetailsClientProps(props) {
335
339
  nowIso: props.nowIso
336
340
  };
337
341
  }
338
- function EventDetailsClient({ occurrenceContext, events, showVenue = true, showMap = true, showOtherDates = true, otherDatesLimit, showCost = true, showAcceptedPasses = true, showAcceptedMemberships = true, sitePasses, siteMemberships, autoApplyDiscount, className, nowIso, children }) {
342
+ function EventDetailsClient({ occurrenceContext, subject, events, showVenue = true, showMap = true, showOtherDates = true, otherDatesLimit, showCost = true, showAcceptedPasses = true, showAcceptedMemberships = true, sitePasses, siteMemberships, autoApplyDiscount, className, nowIso, children }) {
339
343
  const selection = selectEventDetails({
340
344
  events: events ?? null,
341
345
  occurrenceContext: occurrenceContext ?? null,
346
+ subject,
342
347
  nowIso: nowIso ?? (/* @__PURE__ */ new Date()).toISOString(),
343
348
  otherDatesLimit
344
349
  });
@@ -1,8 +1,8 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
2
2
  import { t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
3
3
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
4
4
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
5
- import { t as EventListingClient } from "./EventListing.client-vpzhhysN.mjs";
5
+ import { t as EventListingClient } from "./EventListing.client-BdLSRNg1.mjs";
6
6
  import "react";
7
7
  import { jsx } from "react/jsx-runtime";
8
8
  //#region src/rendering/islands/enhancers/eventListing.tsx
@@ -1,16 +1,17 @@
1
1
  "use client";
2
- import { n as buildBookingPaymentSelectionViewModel, t as usePolling } from "./usePolling-Bz7GFV_a.mjs";
3
- import { At as formatBookingTime, Bt as publicEventPricingMode, C as getWizardStepsForContext, Dt as formatBookingDate, Ft as toBookingTimeZone, H as resolveRuntimeEventPricing, Ht as publicEventScalarPrice, It as toScheduledBookingDateTime, Ot as formatBookingDateTime, P as formatEventPriceDisplay, S as getStepNumber, Ut as publicEventTicketTypes, Vt as publicEventPricingType, Wt as formatCurrencyAmount, X as themeButtonClassName, Y as resolveEventRegistrationScopedEvents, _ as findPreSelectedEvent, b as resolveRegistrationTarget, g as findEventByOccurrenceId, h as toRegistrationEvents, t as defineIslandPropsDecoder, v as resolveDiscountContext, x as WIZARD_STEPS, y as resolveEventRequiresPayment, yt as assertNever, zt as publicEventPricingCurrency } from "./propsDecoder-DeunRj6m.mjs";
2
+ import { n as buildBookingPaymentSelectionViewModel, t as usePolling } from "./usePolling-BvnChV4m.mjs";
3
+ import { At as formatBookingTime, Bt as publicEventPricingMode, C as getWizardStepsForContext, Dt as formatBookingDate, Ft as toBookingTimeZone, H as resolveRuntimeEventPricing, Ht as publicEventScalarPrice, It as toScheduledBookingDateTime, Ot as formatBookingDateTime, P as formatEventPriceDisplay, S as getStepNumber, Ut as publicEventTicketTypes, Vt as publicEventPricingType, Wt as formatCurrencyAmount, X as themeButtonClassName, Y as resolveEventRegistrationScopedEvents, _ as findPreSelectedEvent, b as resolveRegistrationTarget, g as findEventByOccurrenceId, h as toRegistrationEvents, t as defineIslandPropsDecoder, v as resolveDiscountContext, x as WIZARD_STEPS, y as resolveEventRequiresPayment, yt as assertNever, zt as publicEventPricingCurrency } from "./propsDecoder-Bcin2DB3.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
- import { i as CheckIcon, n as TerminalPanel, r as StateIcon, t as useDiscountCodeUi } from "./useDiscountCodeUi-I-92-x2V.mjs";
7
- import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-DxvjKvck.mjs";
8
- import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-CTcGf8Be.mjs";
6
+ import { a as CheckIcon, i as StateIcon, n as useDiscountCodeUi, r as TerminalPanel, t as scrollToBlock } from "./scrollToBlock-h-o_STf_.mjs";
7
+ import { t as DiscountCodeDisclosure } from "./DiscountCodeDisclosure-DS0AuFWW.mjs";
8
+ import { n as SpinnerNode, r as formatPrice, t as StepIndicator$1 } from "./StepIndicator-CBYPFVoy.mjs";
9
9
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
10
10
  import { n as getFieldValidationControlProps, t as FieldValidationMessage } from "./FieldValidationMessage-AYanWFb-.mjs";
11
+ import { t as buildCheckoutReturnUrls } from "./checkoutUrls-Ct8Mxna3.mjs";
11
12
  import { t as createBodyThemePortalRoot } from "./themePortalRoot-AGs4cE7t.mjs";
12
13
  import { t as consumeSearchParam } from "./urlParams-D71VXFGx.mjs";
13
- import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-BzyRJ8VF.mjs";
14
+ import { a as ClockIcon, i as LoggedInAsUser, n as logoutPortal, r as useWaitlistClaim, t as MagicLinkForm } from "./MagicLinkForm-Bt3IuLMy.mjs";
14
15
  import { t as CrossIcon } from "./CrossIcon-Dn1KRKW5.mjs";
15
16
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
16
17
  import { t as buildRouteIslandApiConfig } from "./routeIslandApiConfig-UNsfPcYq.mjs";
@@ -2595,6 +2596,9 @@ function usePaymentVerificationWithDeps(config, deps) {
2595
2596
  };
2596
2597
  }
2597
2598
  //#endregion
2599
+ //#region ../blocks/src/system/runtime/nodes/event-registration/constants.ts
2600
+ const EVENT_REGISTRATION_ANCHOR_ID = "event-registration";
2601
+ //#endregion
2598
2602
  //#region ../blocks/src/system/runtime/nodes/event-registration/sessionStorage.ts
2599
2603
  const STORAGE_PREFIX = "riverbank:event-registration:";
2600
2604
  const STALE_THRESHOLD_MS = 1440 * 60 * 1e3;
@@ -2771,16 +2775,29 @@ function cleanupStaleRegistrations() {
2771
2775
  }
2772
2776
  //#endregion
2773
2777
  //#region ../blocks/src/system/runtime/nodes/event-registration/useEventRegistrationStripeReturn.ts
2778
+ const eventRegistrationStripeReturnDeps = {
2779
+ usePaymentVerification,
2780
+ consumeSearchParam,
2781
+ scrollToBlock,
2782
+ cleanupStaleRegistrations,
2783
+ clearPendingRegistration,
2784
+ getPendingRegistration
2785
+ };
2774
2786
  function useEventRegistrationStripeReturn(options) {
2787
+ return useEventRegistrationStripeReturnWithDeps(options, eventRegistrationStripeReturnDeps);
2788
+ }
2789
+ function useEventRegistrationStripeReturnWithDeps(options, deps) {
2775
2790
  const { api, events, occurrenceId, pendingAttendeeId, setErrorMessage, setFormData, setPaymentSelection, setPendingAttendeeId, setRegistrationResult, setSelectedEvent, setSelectedAttendanceMode, setTicketSelections, setStep, setTicketsCount, step } = options;
2776
- const verification = usePaymentVerification(useMemo(() => step === "verifying-payment" && pendingAttendeeId ? { transactionId: pendingAttendeeId } : null, [step, pendingAttendeeId]));
2791
+ const verificationConfig = useMemo(() => step === "verifying-payment" && pendingAttendeeId ? { transactionId: pendingAttendeeId } : null, [step, pendingAttendeeId]);
2792
+ const verification = deps.usePaymentVerification(verificationConfig);
2777
2793
  useEffect(() => {
2778
- cleanupStaleRegistrations();
2779
- const registrationStatus = consumeSearchParam("registration");
2780
- if (!registrationStatus) return;
2794
+ deps.cleanupStaleRegistrations();
2795
+ const registrationStatus = deps.consumeSearchParam("registration");
2796
+ if (registrationStatus !== "cancelled" && registrationStatus !== "success") return;
2797
+ deps.scrollToBlock(EVENT_REGISTRATION_ANCHOR_ID);
2781
2798
  const siteId = api.config.siteId;
2782
2799
  if (!siteId) return;
2783
- const pending = getPendingRegistration(siteId, occurrenceId || void 0);
2800
+ const pending = deps.getPendingRegistration(siteId, occurrenceId || void 0);
2784
2801
  if (!pending) return;
2785
2802
  setFormData(pending.formData);
2786
2803
  setTicketSelections(pending.ticketSelections);
@@ -2800,7 +2817,7 @@ function useEventRegistrationStripeReturn(options) {
2800
2817
  useEffect(() => {
2801
2818
  if (verification.status === "completed") {
2802
2819
  const siteId = api.config.siteId;
2803
- if (siteId && occurrenceId) clearPendingRegistration(siteId, occurrenceId);
2820
+ if (siteId && occurrenceId) deps.clearPendingRegistration(siteId, occurrenceId);
2804
2821
  setRegistrationResult({ status: "confirmed" });
2805
2822
  setStep("success");
2806
2823
  } else if (verification.status === "failed") {
@@ -2911,13 +2928,7 @@ function useEventRegistrationSubmitWithDeps(options, deps) {
2911
2928
  if (!result.alreadyRegistered && result.status === "confirmed" && result.pendingPayment && (method === "stripe" || method === "pass_bundle" || method === "membership_bundle")) {
2912
2929
  options.setPendingAttendeeId(result.attendeeId);
2913
2930
  options.setStep("redirecting");
2914
- const currentUrl = new URL(window.location.href);
2915
- const successParams = new URLSearchParams(currentUrl.search);
2916
- successParams.set("registration", "success");
2917
- const successUrl = `${currentUrl.origin}${currentUrl.pathname}?${successParams.toString()}${currentUrl.hash}`;
2918
- const cancelParams = new URLSearchParams(currentUrl.search);
2919
- cancelParams.set("registration", "cancelled");
2920
- const cancelUrl = `${currentUrl.origin}${currentUrl.pathname}?${cancelParams.toString()}${currentUrl.hash}`;
2931
+ const { successUrl, cancelUrl } = buildCheckoutReturnUrls("registration", EVENT_REGISTRATION_ANCHOR_ID);
2921
2932
  const checkoutType = method === "pass_bundle" ? "pass_bundle" : method === "membership_bundle" ? "membership_bundle" : "event";
2922
2933
  const checkoutResult = await options.api.createEventCheckout({
2923
2934
  attendeeId: result.attendeeId,
@@ -3653,9 +3664,6 @@ function useEventRegistrationWizardWithDeps(options, deps) {
3653
3664
  };
3654
3665
  }
3655
3666
  //#endregion
3656
- //#region ../blocks/src/system/runtime/nodes/event-registration/constants.ts
3657
- const EVENT_REGISTRATION_ANCHOR_ID = "event-registration";
3658
- //#endregion
3659
3667
  //#region ../blocks/src/system/runtime/nodes/event-registration/EventRegistrationWizard.tsx
3660
3668
  const EVENT_PORTAL_AUTH_COPY = {
3661
3669
  membership: {
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { t as clsx } from "./clsx-DgIEfj3H.mjs";
3
- import { St as ok, X as themeButtonClassName, t as defineIslandPropsDecoder, xt as err, yt as assertNever } from "./propsDecoder-DeunRj6m.mjs";
3
+ import { St as ok, X as themeButtonClassName, t as defineIslandPropsDecoder, xt as err, yt as assertNever } from "./propsDecoder-Bcin2DB3.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
6
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
@@ -1,7 +1,7 @@
1
1
  "use client";
2
- import { X as themeButtonClassName, r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
2
+ import { X as themeButtonClassName, r as buildCartDisplay, t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
3
3
  import { t as resolveDedicatedCheckoutPath } from "./checkoutRoute-ClwHwYVA.mjs";
4
- import { n as useCommerceCart } from "./shop-commerce-store-ChXPbWfa.mjs";
4
+ import { n as useCommerceCart } from "./shop-commerce-store-CEurARtu.mjs";
5
5
  import { t as ModalShell } from "./ModalShell-CqkBvBIC.mjs";
6
6
  import * as React$1 from "react";
7
7
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
@@ -2954,6 +2954,21 @@ const themeColorTokenSchema = z$1.string().min(1).refine((value) => Boolean(isTh
2954
2954
  //#region ../theme-core/src/palette/colors.ts
2955
2955
  const HEX_COLOR_REGEX = /^#[0-9a-f]{6}$/;
2956
2956
  const NORMALIZABLE_HEX_REGEX = /^#(?:[0-9a-f]{3}|[0-9a-f]{6})$/i;
2957
+ const THEME_PALETTE_COLOR_ORDER = [
2958
+ "primary",
2959
+ "secondary",
2960
+ "accent",
2961
+ "success",
2962
+ "warning",
2963
+ "destructive",
2964
+ "background",
2965
+ "surface",
2966
+ "surfaceAlt",
2967
+ "muted",
2968
+ "text",
2969
+ "primaryForeground",
2970
+ "border"
2971
+ ];
2957
2972
  const hexColorSchema = z$1.string().regex(HEX_COLOR_REGEX, "Hex must be #RRGGBB (lowercase)").transform((value) => value);
2958
2973
  const paletteModeSchema = z$1.enum(["light", "dark"]);
2959
2974
  const PALETTE_VALUE_KEY_PREFIX = "palette-value:v1|";
@@ -3031,6 +3046,12 @@ function requirePaletteColorsFromEntries(entries) {
3031
3046
  if (result.ok) return result.colors;
3032
3047
  throw new Error(`Invalid complete palette: ${result.error.kind}`);
3033
3048
  }
3049
+ function paletteColorEntries(colors) {
3050
+ return THEME_PALETTE_COLOR_ORDER.map((name) => ({
3051
+ name,
3052
+ hex: colors[name]
3053
+ }));
3054
+ }
3034
3055
  function paletteColorFingerprint(colors) {
3035
3056
  return PALETTE_TOKEN_NAMES.map((name) => `${name}:${colors[name]}`).join("|");
3036
3057
  }
@@ -4364,13 +4385,6 @@ const warmDarkKirtanGold = defineCuratedPalette({
4364
4385
  });
4365
4386
  //#endregion
4366
4387
  //#region ../theme-core/src/palette/curated/index.ts
4367
- /**
4368
- * Curated palette library.
4369
- *
4370
- * Authoring keys are readable source aliases. Value keys are derived from the
4371
- * complete mode and semantic colours and are the only curated identity used at
4372
- * persistence and runtime boundaries.
4373
- */
4374
4388
  function admitCuratedPaletteDefinition(definition) {
4375
4389
  return {
4376
4390
  ...definition,
@@ -4397,11 +4411,8 @@ const curatedPalettes = [
4397
4411
  admitCuratedPaletteDefinition(warmDarkEmber),
4398
4412
  admitCuratedPaletteDefinition(warmDarkKirtanGold)
4399
4413
  ];
4400
- const curatedPalettesByValueKey = new Map(curatedPalettes.map((palette) => [palette.valueKey, palette]));
4414
+ new Map(curatedPalettes.map((palette) => [palette.valueKey, palette]));
4401
4415
  const curatedPalettesByAuthoringKey = new Map(curatedPalettes.map((palette) => [palette.authoringKey, palette]));
4402
- function findCuratedPalette(valueKey) {
4403
- return curatedPalettesByValueKey.get(valueKey);
4404
- }
4405
4416
  function findCuratedPaletteByAuthoringKey(authoringKey) {
4406
4417
  return curatedPalettesByAuthoringKey.get(authoringKey);
4407
4418
  }
@@ -4410,87 +4421,6 @@ function requireCuratedPaletteValueKey(authoringKey) {
4410
4421
  if (!palette) throw new Error(`Unknown curated palette authoring key "${authoringKey}"`);
4411
4422
  return palette.valueKey;
4412
4423
  }
4413
- /** Parses a raw persisted key into catalogue-proven curated membership. */
4414
- const knownCuratedPaletteValueKeySchema = z$1.string().transform((value, ctx) => {
4415
- const valueKey = parsePaletteValueKey(value);
4416
- if (!valueKey) {
4417
- ctx.addIssue({
4418
- code: "custom",
4419
- message: "Invalid canonical palette value key"
4420
- });
4421
- return z$1.NEVER;
4422
- }
4423
- const palette = findCuratedPalette(valueKey);
4424
- if (!palette) {
4425
- ctx.addIssue({
4426
- code: "custom",
4427
- message: "Unknown curated palette value key"
4428
- });
4429
- return z$1.NEVER;
4430
- }
4431
- return palette.valueKey;
4432
- });
4433
- //#endregion
4434
- //#region ../theme-core/src/palette/selection.ts
4435
- const sitePaletteIdSchema = z$1.string().uuid().transform((value) => value);
4436
- const sitePaletteVersionSchema = z$1.number().int().nonnegative().transform((value) => value);
4437
- const paletteSelectionSchema = z$1.discriminatedUnion("kind", [z$1.object({
4438
- kind: z$1.literal("curated"),
4439
- valueKey: knownCuratedPaletteValueKeySchema
4440
- }), z$1.object({
4441
- kind: z$1.literal("site"),
4442
- paletteId: sitePaletteIdSchema
4443
- })]);
4444
- const onboardingPaletteOriginSchema = z$1.object({
4445
- kind: z$1.literal("onboarding"),
4446
- sourceKey: z$1.string().min(1).nullable()
4447
- });
4448
- const curatedForkPaletteOriginSchema = z$1.object({
4449
- kind: z$1.literal("curated-fork"),
4450
- sourceValueKey: paletteValueKeySchema
4451
- });
4452
- const manualPaletteOriginSchema = z$1.object({ kind: z$1.literal("manual") });
4453
- const legacyCustomizedPaletteOriginSchema = z$1.object({
4454
- kind: z$1.literal("legacy-customized"),
4455
- sourceKey: z$1.string().min(1).nullable()
4456
- });
4457
- const sitePaletteOriginSchema = z$1.discriminatedUnion("kind", [
4458
- onboardingPaletteOriginSchema,
4459
- curatedForkPaletteOriginSchema,
4460
- manualPaletteOriginSchema,
4461
- legacyCustomizedPaletteOriginSchema
4462
- ]);
4463
- const editorSitePaletteOriginSchema = z$1.discriminatedUnion("kind", [z$1.object({
4464
- kind: z$1.literal("curated-fork"),
4465
- sourceValueKey: knownCuratedPaletteValueKeySchema
4466
- }), manualPaletteOriginSchema]);
4467
- z$1.object({
4468
- id: sitePaletteIdSchema,
4469
- colors: paletteColorsSchema,
4470
- mode: paletteModeSchema,
4471
- origin: sitePaletteOriginSchema,
4472
- version: sitePaletteVersionSchema
4473
- });
4474
- z$1.discriminatedUnion("kind", [
4475
- z$1.object({ kind: z$1.literal("preserve") }),
4476
- z$1.object({
4477
- kind: z$1.literal("select"),
4478
- selection: paletteSelectionSchema
4479
- }),
4480
- z$1.object({
4481
- kind: z$1.literal("create-site"),
4482
- colors: paletteColorsSchema,
4483
- mode: paletteModeSchema,
4484
- origin: editorSitePaletteOriginSchema
4485
- }),
4486
- z$1.object({
4487
- kind: z$1.literal("update-site"),
4488
- paletteId: sitePaletteIdSchema,
4489
- expectedVersion: sitePaletteVersionSchema,
4490
- colors: paletteColorsSchema,
4491
- mode: paletteModeSchema
4492
- })
4493
- ]);
4494
4424
  //#endregion
4495
4425
  //#region ../theme-core/src/lib/media.ts
4496
4426
  const hotspotSchema$1 = z.object({
@@ -4549,6 +4479,34 @@ const mediaSchema$1 = z.object({
4549
4479
  transform: transformSchema$1.optional()
4550
4480
  });
4551
4481
  //#endregion
4482
+ //#region ../theme-core/src/palette/schema.ts
4483
+ const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
4484
+ const paletteColorSchema = z$1.object({
4485
+ name: z$1.string().min(1),
4486
+ hex: colourHexString
4487
+ });
4488
+ const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
4489
+ const paletteSchema = z$1.object({
4490
+ colors: z$1.array(paletteColorSchema),
4491
+ meta: paletteMetaSchema
4492
+ }).transform((palette, ctx) => {
4493
+ const colors = paletteColorsFromEntries(palette.colors);
4494
+ if (!colors.ok) {
4495
+ ctx.addIssue({
4496
+ code: "custom",
4497
+ message: `Invalid complete palette: ${colors.error.kind}`
4498
+ });
4499
+ return z$1.NEVER;
4500
+ }
4501
+ return {
4502
+ colors: paletteColorEntries(colors.colors).map(({ name, hex }) => ({
4503
+ name: String(name),
4504
+ hex: String(hex)
4505
+ })),
4506
+ meta: palette.meta
4507
+ };
4508
+ });
4509
+ //#endregion
4552
4510
  //#region ../theme-core/src/buttons/types.ts
4553
4511
  /**
4554
4512
  * Standard semantic variant roles a theme exposes.
@@ -7817,16 +7775,6 @@ const axesSchema = z$1.object({
7817
7775
  "expressive"
7818
7776
  ])
7819
7777
  });
7820
- const colourHexString = z$1.string().regex(/^#([0-9A-Fa-f]{3}){1,2}$/);
7821
- const paletteColorSchema = z$1.object({
7822
- name: z$1.string().min(1),
7823
- hex: colourHexString
7824
- });
7825
- const paletteMetaSchema = z$1.object({ mode: z$1.enum(["light", "dark"]) });
7826
- const paletteSchema = z$1.object({
7827
- colors: z$1.array(paletteColorSchema),
7828
- meta: paletteMetaSchema
7829
- });
7830
7778
  const typographyStyleSchema = z$1.object({
7831
7779
  family: z$1.string().min(1),
7832
7780
  weight: z$1.enum([
@@ -27429,6 +27377,10 @@ const eventDetailsManifest = createBlockManifest({
27429
27377
  from: "$root.occurrenceContext",
27430
27378
  fallback: null
27431
27379
  } },
27380
+ subject: { $bind: {
27381
+ from: "$root.subject",
27382
+ fallback: null
27383
+ } },
27432
27384
  events: { $bind: { from: "data.eventDetailsData.events" } },
27433
27385
  showVenue: { $bind: { from: "content.showVenue" } },
27434
27386
  showMap: { $bind: { from: "content.showMap" } },
@@ -1,7 +1,7 @@
1
1
  import { i as textColorStyle } from "./colorStyles-BWpj_h4C.mjs";
2
- import { X as themeButtonClassName, t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
2
+ import { X as themeButtonClassName, t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
3
3
  import { t as mountReactIsland } from "./reactMount-SY8AVRof.mjs";
4
- import { t as LeafletStaticMap } from "./LeafletStaticMap-CB07rpf8.mjs";
4
+ import { t as LeafletStaticMap } from "./LeafletStaticMap-BrpC6vsT.mjs";
5
5
  import "react";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
7
  //#region ../core/src/location.ts
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { t as clsx } from "./clsx-DgIEfj3H.mjs";
3
- import { X as themeButtonClassName, t as defineIslandPropsDecoder, yt as assertNever } from "./propsDecoder-DeunRj6m.mjs";
3
+ import { X as themeButtonClassName, t as defineIslandPropsDecoder, yt as assertNever } from "./propsDecoder-Bcin2DB3.mjs";
4
4
  import { n as useBlockApi, t as BlockApiProvider } from "./context-CJz1Vlsz.mjs";
5
5
  import { n as isSpamProtectionEnabled, r as AltchaWidget, t as getChallengeUrl } from "./src-B833rYRr.mjs";
6
6
  import { t as FeedbackMessage } from "./FeedbackMessage-ByMrs3cr.mjs";
@@ -1,4 +1,4 @@
1
- import { Rt as formatBookingPriceDisplay } from "./propsDecoder-DeunRj6m.mjs";
1
+ import { Rt as formatBookingPriceDisplay } from "./propsDecoder-Bcin2DB3.mjs";
2
2
  //#region ../core/src/planner.ts
3
3
  /** Default clock for production callers that do not inject time explicitly. */
4
4
  const systemPlanningClock = { now: () => Date.now() };
@@ -1,6 +1,6 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
2
- import { r as ProductDetailController } from "./shop-commerce-CY27mEUr.mjs";
3
- import { t as mountShopBlockIsland } from "./shopShared-q0kin1cv.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
2
+ import { r as ProductDetailController } from "./shop-commerce-lX8QxjX-.mjs";
3
+ import { t as mountShopBlockIsland } from "./shopShared-DXxH8xxw.mjs";
4
4
  import "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  //#region ../blocks/src/system/runtime/nodes/product-detail.client.tsx
@@ -1,6 +1,6 @@
1
- import { t as defineIslandPropsDecoder } from "./propsDecoder-DeunRj6m.mjs";
2
- import { i as ProductListController } from "./shop-commerce-CY27mEUr.mjs";
3
- import { t as mountShopBlockIsland } from "./shopShared-q0kin1cv.mjs";
1
+ import { t as defineIslandPropsDecoder } from "./propsDecoder-Bcin2DB3.mjs";
2
+ import { i as ProductListController } from "./shop-commerce-lX8QxjX-.mjs";
3
+ import { t as mountShopBlockIsland } from "./shopShared-DXxH8xxw.mjs";
4
4
  import "react";
5
5
  import { jsx } from "react/jsx-runtime";
6
6
  //#region ../blocks/src/system/runtime/nodes/product-list.client.tsx