@riverbankcms/sdk 0.75.0 → 0.76.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 (87) hide show
  1. package/README.md +2 -0
  2. package/dist/{PreviewEditorSidebar-U2IHCBYN.mjs → PreviewEditorSidebar-X2HWXFOL.mjs} +171 -88
  3. package/dist/{PreviewEditorUI-ZGH2RQNP.mjs → PreviewEditorUI-AQXIXPOH.mjs} +2 -2
  4. package/dist/SdkPreviewModeRuntime-ZQNDCASH.mjs +8 -0
  5. package/dist/_dts/api/src/bookingOperations.d.ts +12 -0
  6. package/dist/_dts/api/src/index.d.ts +1 -1
  7. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +11 -3
  8. package/dist/_dts/block-form/src/blockDraftSaveability.d.ts +0 -1
  9. package/dist/_dts/block-form/src/client/index.d.ts +1 -1
  10. package/dist/_dts/block-form/src/manifest/utils.d.ts +24 -0
  11. package/dist/_dts/blocks/src/client/events.d.ts +3 -1
  12. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +4 -4
  13. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +6 -6
  14. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +3 -3
  15. package/dist/_dts/blocks/src/system/runtime/nodes/booking-form.interactive.d.ts +3 -27
  16. package/dist/_dts/blocks/src/system/runtime/nodes/booking-runtime-sources.d.ts +163 -0
  17. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +5 -5
  18. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionCompactRow.d.ts +29 -0
  19. package/dist/_dts/blocks/src/system/runtime/shared/components/BookingOptionList.d.ts +13 -0
  20. package/dist/_dts/blocks/src/system/runtime/shared/components/index.d.ts +4 -0
  21. package/dist/_dts/blocks/src/system/runtime/shared/index.d.ts +4 -3
  22. package/dist/_dts/blocks/src/system/runtime/shared/utils/bookingRoute.d.ts +20 -0
  23. package/dist/_dts/blocks/src/system/runtime/shared/utils/index.d.ts +2 -1
  24. package/dist/_dts/blocks/src/system/types/link.d.ts +12 -0
  25. package/dist/_dts/editor-blocks/src/BlockEditor.d.ts +2 -0
  26. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +3 -1
  27. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +3 -1
  28. package/dist/_dts/editor-blocks/src/block-editor/BlockSettingsModal.d.ts +5 -1
  29. package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -0
  30. package/dist/_dts/editor-blocks/src/block-editor/actionControlMode.d.ts +2 -0
  31. package/dist/_dts/editor-blocks/src/index.d.ts +1 -1
  32. package/dist/_dts/preview-next/src/client/preview/themeOverlay.d.ts +21 -3
  33. package/dist/_dts/sdk/src/components.d.ts +2 -2
  34. package/dist/_dts/sdk/src/rendering/index.d.ts +2 -2
  35. package/dist/_dts/sdk/src/rendering/overrideResolution.d.ts +6 -0
  36. package/dist/_dts/sdk/src/rendering/overrides.d.ts +21 -1
  37. package/dist/_dts/sdk/src/rendering/server.d.ts +4 -3
  38. package/dist/_dts/sdk/src/version.d.ts +1 -1
  39. package/dist/{chunk-GFE74WRD.mjs → chunk-LYI7TEMH.mjs} +188 -90
  40. package/dist/{chunk-BGMNDF6T.mjs → chunk-Q4OLG66B.mjs} +7 -7
  41. package/dist/{chunk-RWXQBRQZ.mjs → chunk-TW2Y4RR5.mjs} +69 -14
  42. package/dist/{chunk-ZSHFGFUG.mjs → chunk-V5VORNEJ.mjs} +1 -1
  43. package/dist/cli/index.mjs +1 -1
  44. package/dist/client/{accordion-T2UD2ZTH.mjs → accordion-2YHIBOZH.mjs} +1 -1
  45. package/dist/client/{bookingForm-GUP75FKN.mjs → bookingForm-35IBDWAS.mjs} +3 -13
  46. package/dist/client/bookings.mjs +11 -11
  47. package/dist/client/{carousel-2NQA6V57.mjs → carousel-K6XG7NZQ.mjs} +1 -1
  48. package/dist/client/{cart-5TFIAFDS.mjs → cart-HCFYUTTU.mjs} +4 -4
  49. package/dist/client/{checkout-TP4WAHZE.mjs → checkout-J3U4XR7K.mjs} +4 -4
  50. package/dist/client/{chunk-FU2QRZMX.mjs → chunk-7UOSCYY4.mjs} +71 -24
  51. package/dist/client/{chunk-ZLMS67RR.mjs → chunk-BOIHIU7E.mjs} +1 -1
  52. package/dist/client/{chunk-CY2ZTSE5.mjs → chunk-FGUIVT2B.mjs} +1 -1
  53. package/dist/client/{chunk-WJXXNDSE.mjs → chunk-J227A3CQ.mjs} +1 -1
  54. package/dist/client/{chunk-NWOUL6JY.mjs → chunk-PFBX3IQL.mjs} +3 -3
  55. package/dist/client/{chunk-VUAOE3AG.mjs → chunk-SNSWVZEP.mjs} +4 -4
  56. package/dist/client/client.mjs +2261 -2279
  57. package/dist/client/{courseRegistration-5DPU6PDY.mjs → courseRegistration-ZBXS7VGI.mjs} +3 -3
  58. package/dist/client/{eventCalendar-F3GZGTEF.mjs → eventCalendar-EQQZHJBA.mjs} +5 -5
  59. package/dist/client/{eventCombined-BQOB6QMY.mjs → eventCombined-JCFTGBFQ.mjs} +5 -5
  60. package/dist/client/{eventDetails-PEM2EJWE.mjs → eventDetails-HLUTQSYY.mjs} +5 -5
  61. package/dist/client/{eventListing-YMIQPVME.mjs → eventListing-FG4MICVB.mjs} +5 -5
  62. package/dist/client/{eventRegistration-4I6ZNDUF.mjs → eventRegistration-GUEB7LBT.mjs} +5 -5
  63. package/dist/client/{form-ZJVAYZ6G.mjs → form-YQEW4YIT.mjs} +1 -1
  64. package/dist/client/{headerSection-TOT5MGTF.mjs → headerSection-GTR3TTRM.mjs} +2 -2
  65. package/dist/client/{locationMap-J66NZREU.mjs → locationMap-SPC7VGUH.mjs} +1 -1
  66. package/dist/client/{newsletterForm-ET2XUMRO.mjs → newsletterForm-4IW5BLID.mjs} +1 -1
  67. package/dist/client/{productDetail-C2XIH7C5.mjs → productDetail-KP5H2WJO.mjs} +4 -4
  68. package/dist/client/{productList-T2AZLFTP.mjs → productList-3M3M72XZ.mjs} +4 -4
  69. package/dist/client/rendering/client.mjs +3132 -3147
  70. package/dist/client/rendering/islands.mjs +18 -18
  71. package/dist/client/rendering.mjs +3344 -3354
  72. package/dist/client/{shop-UZ6IUZXD.mjs → shop-ACQKVGOM.mjs} +4 -4
  73. package/dist/preview-next/chrome.css +1 -1
  74. package/dist/preview-next/client/runtime.mjs +3 -3
  75. package/dist/preview-next/editor-base.css +2 -148
  76. package/dist/preview-next/editor-chrome.css +179 -0
  77. package/dist/{sdk-runtime-JCUQM63Y.mjs → sdk-runtime-K7HNB4U2.mjs} +4 -4
  78. package/dist/server/components.mjs +939 -891
  79. package/dist/server/index.mjs +1 -1
  80. package/dist/server/next.mjs +887 -840
  81. package/dist/server/prebuild.mjs +1 -1
  82. package/dist/server/rendering/server.mjs +951 -894
  83. package/dist/server/rendering.mjs +944 -896
  84. package/dist/server/server.mjs +1 -1
  85. package/package.json +1 -1
  86. package/dist/SdkPreviewModeRuntime-MTUGBTLQ.mjs +0 -8
  87. /package/dist/client/{chunk-2PHQZ666.mjs → chunk-JEZECJ3W.mjs} +0 -0
@@ -22106,8 +22106,42 @@ function pickReadableTextColor(background) {
22106
22106
  }
22107
22107
  }
22108
22108
 
22109
- // ../blocks/src/system/runtime/nodes/events/shared/EventCompactRow.tsx
22109
+ // ../blocks/src/system/runtime/shared/components/BookingOptionCompactRow.tsx
22110
22110
  import { jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
22111
+ function BookingOptionCompactRow({
22112
+ option,
22113
+ buttonVariant = "primary"
22114
+ }) {
22115
+ const primaryMeta = option.primaryMeta?.filter((item) => item.length > 0) ?? [];
22116
+ const secondaryMeta = option.secondaryMeta?.filter((item) => item.label.length > 0) ?? [];
22117
+ const buttonClass = themeButtonClassName({ variant: buttonVariant, size: "sm" });
22118
+ return /* @__PURE__ */ jsxs3("div", { className: "event-compact-row", children: [
22119
+ /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-content", children: [
22120
+ /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-top", children: [
22121
+ /* @__PURE__ */ jsx5("span", { className: "event-compact-row-title", children: option.title }),
22122
+ primaryMeta.length > 0 && /* @__PURE__ */ jsx5("span", { className: "event-compact-row-datetime", children: primaryMeta.join(" \xB7 ") })
22123
+ ] }),
22124
+ /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-bottom", children: [
22125
+ secondaryMeta.map((item) => /* @__PURE__ */ jsxs3(
22126
+ "span",
22127
+ {
22128
+ className: item.className,
22129
+ children: [
22130
+ item.icon,
22131
+ item.label
22132
+ ]
22133
+ },
22134
+ item.id ?? `${item.className ?? "meta"}:${item.label}`
22135
+ )),
22136
+ option.priceLabel && /* @__PURE__ */ jsx5("span", { className: "event-compact-row-price", children: option.priceLabel })
22137
+ ] })
22138
+ ] }),
22139
+ option.action.kind === "status" ? /* @__PURE__ */ jsx5("span", { className: "event-compact-row-status", children: option.action.label }) : /* @__PURE__ */ jsx5("a", { href: option.action.href, className: `${buttonClass} event-compact-row-cta`, children: option.action.label })
22140
+ ] });
22141
+ }
22142
+
22143
+ // ../blocks/src/system/runtime/nodes/events/shared/EventCompactRow.tsx
22144
+ import { jsx as jsx6 } from "react/jsx-runtime";
22111
22145
  var EventCompactRow = ({
22112
22146
  event,
22113
22147
  buttonVariant = "primary",
@@ -22119,32 +22153,35 @@ var EventCompactRow = ({
22119
22153
  const price = formatEventPrice(event);
22120
22154
  const teacherLine = formatEventTeacherLine(event);
22121
22155
  const cta = resolveEventCta(event, buttonText);
22122
- const buttonClass = themeButtonClassName({ variant: buttonVariant, size: "sm" });
22123
- return /* @__PURE__ */ jsxs3("div", { className: "event-compact-row", children: [
22124
- /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-content", children: [
22125
- /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-top", children: [
22126
- /* @__PURE__ */ jsx5("span", { className: "event-compact-row-title", children: event.title }),
22127
- /* @__PURE__ */ jsxs3("span", { className: "event-compact-row-datetime", children: [
22128
- formattedDate,
22129
- " \xB7 ",
22130
- formattedTime
22131
- ] })
22132
- ] }),
22133
- /* @__PURE__ */ jsxs3("div", { className: "event-compact-row-bottom", children: [
22134
- event.venue && /* @__PURE__ */ jsxs3("span", { className: "event-compact-row-venue", children: [
22135
- /* @__PURE__ */ jsx5(MapPinIcon, { className: "rb-shrink-0" }),
22136
- event.venue.name
22137
- ] }),
22138
- teacherLine && /* @__PURE__ */ jsx5("span", { className: "event-compact-row-teacher", children: teacherLine }),
22139
- /* @__PURE__ */ jsx5("span", { className: "event-compact-row-price", children: price })
22140
- ] })
22141
- ] }),
22142
- cta.hidden ? /* @__PURE__ */ jsx5("span", { className: "event-compact-row-status", children: cta.label }) : /* @__PURE__ */ jsx5("a", { href: cta.href, className: `${buttonClass} event-compact-row-cta`, children: cta.label })
22143
- ] });
22156
+ const option = {
22157
+ id: event.occurrenceId ?? event.id,
22158
+ title: event.title,
22159
+ primaryMeta: [formattedDate, formattedTime],
22160
+ secondaryMeta: [
22161
+ ...event.venue ? [
22162
+ {
22163
+ id: "venue",
22164
+ label: event.venue.name,
22165
+ icon: /* @__PURE__ */ jsx6(MapPinIcon, { className: "rb-shrink-0" }),
22166
+ className: "event-compact-row-venue"
22167
+ }
22168
+ ] : [],
22169
+ ...teacherLine ? [
22170
+ {
22171
+ id: "teacher",
22172
+ label: teacherLine,
22173
+ className: "event-compact-row-teacher"
22174
+ }
22175
+ ] : []
22176
+ ],
22177
+ priceLabel: price,
22178
+ action: cta.hidden ? { kind: "status", label: cta.label } : { kind: "action", label: cta.label, href: cta.href }
22179
+ };
22180
+ return /* @__PURE__ */ jsx6(BookingOptionCompactRow, { buttonVariant, option });
22144
22181
  };
22145
22182
 
22146
22183
  // ../blocks/src/system/runtime/nodes/events/shared/EmptyState.tsx
22147
- import { jsx as jsx6, jsxs as jsxs4 } from "react/jsx-runtime";
22184
+ import { jsx as jsx7, jsxs as jsxs4 } from "react/jsx-runtime";
22148
22185
  var EmptyState = ({
22149
22186
  message = "No upcoming events scheduled.",
22150
22187
  className,
@@ -22153,8 +22190,8 @@ var EmptyState = ({
22153
22190
  resetFiltersText = "Reset filters"
22154
22191
  }) => {
22155
22192
  return /* @__PURE__ */ jsxs4("div", { className: `event-list-empty ${className || ""}`, children: [
22156
- /* @__PURE__ */ jsx6("p", { className: "rb-caption status-muted", children: message }),
22157
- hasActiveFilters && onResetFilters && /* @__PURE__ */ jsx6(
22193
+ /* @__PURE__ */ jsx7("p", { className: "rb-caption status-muted", children: message }),
22194
+ hasActiveFilters && onResetFilters && /* @__PURE__ */ jsx7(
22158
22195
  "button",
22159
22196
  {
22160
22197
  type: "button",
@@ -22167,12 +22204,12 @@ var EmptyState = ({
22167
22204
  };
22168
22205
 
22169
22206
  // ../blocks/src/system/runtime/nodes/events/shared/DateTimeTile.tsx
22170
- import { jsx as jsx7, jsxs as jsxs5 } from "react/jsx-runtime";
22207
+ import { jsx as jsx8, jsxs as jsxs5 } from "react/jsx-runtime";
22171
22208
  function DateTimeTile({ startsAt, endsAt, timeZone }) {
22172
22209
  const { date, timeRange } = formatEventDateParts({ startsAt, endsAt, timeZone });
22173
22210
  return /* @__PURE__ */ jsxs5("div", { className: "rb-flex rb-flex-col rb-gap-1", children: [
22174
- /* @__PURE__ */ jsx7("strong", { className: "rb-caption", children: date }),
22175
- /* @__PURE__ */ jsx7("div", { className: "rb-caption", children: timeRange })
22211
+ /* @__PURE__ */ jsx8("strong", { className: "rb-caption", children: date }),
22212
+ /* @__PURE__ */ jsx8("div", { className: "rb-caption", children: timeRange })
22176
22213
  ] });
22177
22214
  }
22178
22215
 
@@ -28536,7 +28573,7 @@ import React4 from "react";
28536
28573
 
28537
28574
  // ../blocks/src/primitives/layout/Section.tsx
28538
28575
  import { forwardRef } from "react";
28539
- import { jsx as jsx8 } from "react/jsx-runtime";
28576
+ import { jsx as jsx9 } from "react/jsx-runtime";
28540
28577
  var Section = forwardRef(function Section2({
28541
28578
  as: Comp = "section",
28542
28579
  children,
@@ -28549,7 +28586,7 @@ var Section = forwardRef(function Section2({
28549
28586
  const overflowClass = allowOverflow ? "rb-overflow-visible" : "rb-overflow-hidden";
28550
28587
  const alwaysClass = clsx_default("rb-relative rb-isolate", overflowClass, className);
28551
28588
  const backgroundStyle = typeof background === "string" && background.trim().length > 0 ? backgroundColorStyle(background.trim()) : void 0;
28552
- return /* @__PURE__ */ jsx8(
28589
+ return /* @__PURE__ */ jsx9(
28553
28590
  Comp,
28554
28591
  {
28555
28592
  ref,
@@ -28563,7 +28600,7 @@ var Section = forwardRef(function Section2({
28563
28600
  var Section_default = Section;
28564
28601
 
28565
28602
  // ../blocks/src/primitives/layout/Stack.tsx
28566
- import { jsx as jsx9 } from "react/jsx-runtime";
28603
+ import { jsx as jsx10 } from "react/jsx-runtime";
28567
28604
  function Stack({
28568
28605
  as: Comp = "div",
28569
28606
  gap = "md",
@@ -28574,7 +28611,7 @@ function Stack({
28574
28611
  "data-slot": dataSlot,
28575
28612
  ...rest
28576
28613
  }) {
28577
- return /* @__PURE__ */ jsx9(
28614
+ return /* @__PURE__ */ jsx10(
28578
28615
  Comp,
28579
28616
  {
28580
28617
  ...rest,
@@ -28604,7 +28641,7 @@ function Stack({
28604
28641
  }
28605
28642
 
28606
28643
  // ../blocks/src/primitives/layout/Inline.tsx
28607
- import { jsx as jsx10 } from "react/jsx-runtime";
28644
+ import { jsx as jsx11 } from "react/jsx-runtime";
28608
28645
  function Inline({
28609
28646
  as: Comp = "div",
28610
28647
  gap = "md",
@@ -28616,7 +28653,7 @@ function Inline({
28616
28653
  "data-slot": dataSlot,
28617
28654
  ...rest
28618
28655
  }) {
28619
- return /* @__PURE__ */ jsx10(
28656
+ return /* @__PURE__ */ jsx11(
28620
28657
  Comp,
28621
28658
  {
28622
28659
  ...rest,
@@ -28648,7 +28685,7 @@ function Inline({
28648
28685
  }
28649
28686
 
28650
28687
  // ../blocks/src/primitives/layout/Grid.tsx
28651
- import { jsx as jsx11 } from "react/jsx-runtime";
28688
+ import { jsx as jsx12 } from "react/jsx-runtime";
28652
28689
  function Grid({
28653
28690
  as: Comp = "div",
28654
28691
  cols = { base: 1, md: 2 },
@@ -28666,7 +28703,7 @@ function Grid({
28666
28703
  colsObj.lg && `rb-lg-grid-cols-${colsObj.lg}`,
28667
28704
  colsObj.xl && `rb-xl-grid-cols-${colsObj.xl}`
28668
28705
  ];
28669
- return /* @__PURE__ */ jsx11(
28706
+ return /* @__PURE__ */ jsx12(
28670
28707
  Comp,
28671
28708
  {
28672
28709
  ...rest,
@@ -28696,7 +28733,7 @@ function Grid({
28696
28733
  }
28697
28734
 
28698
28735
  // ../blocks/src/system/runtime/nodes/layout.tsx
28699
- import { jsx as jsx12 } from "react/jsx-runtime";
28736
+ import { jsx as jsx13 } from "react/jsx-runtime";
28700
28737
  var SectionNode = ({
28701
28738
  blockId: _blockId,
28702
28739
  blockKind: _blockKind,
@@ -28705,7 +28742,7 @@ var SectionNode = ({
28705
28742
  pathBase: _pathBase,
28706
28743
  allowOverflow,
28707
28744
  ...props2
28708
- }) => /* @__PURE__ */ jsx12(Section_default, { ...props2, allowOverflow });
28745
+ }) => /* @__PURE__ */ jsx13(Section_default, { ...props2, allowOverflow });
28709
28746
  var StackNode = ({
28710
28747
  blockId: _blockId,
28711
28748
  blockKind: _blockKind,
@@ -28713,7 +28750,7 @@ var StackNode = ({
28713
28750
  fragmentRegistry: _fragmentRegistry,
28714
28751
  pathBase: _pathBase,
28715
28752
  ...props2
28716
- }) => /* @__PURE__ */ jsx12(Stack, { ...props2 });
28753
+ }) => /* @__PURE__ */ jsx13(Stack, { ...props2 });
28717
28754
  var InlineNode = ({
28718
28755
  blockId: _blockId,
28719
28756
  blockKind: _blockKind,
@@ -28721,7 +28758,7 @@ var InlineNode = ({
28721
28758
  fragmentRegistry: _fragmentRegistry,
28722
28759
  pathBase: _pathBase,
28723
28760
  ...props2
28724
- }) => /* @__PURE__ */ jsx12(Inline, { ...props2 });
28761
+ }) => /* @__PURE__ */ jsx13(Inline, { ...props2 });
28725
28762
  var GridNode = ({
28726
28763
  blockId: _blockId,
28727
28764
  blockKind: _blockKind,
@@ -28729,7 +28766,7 @@ var GridNode = ({
28729
28766
  fragmentRegistry: _fragmentRegistry,
28730
28767
  pathBase: _pathBase,
28731
28768
  ...props2
28732
- }) => /* @__PURE__ */ jsx12(Grid, { ...props2 });
28769
+ }) => /* @__PURE__ */ jsx13(Grid, { ...props2 });
28733
28770
  var DivNode = ({
28734
28771
  blockId: _blockId,
28735
28772
  blockKind: _blockKind,
@@ -28737,7 +28774,7 @@ var DivNode = ({
28737
28774
  fragmentRegistry: _fragmentRegistry,
28738
28775
  pathBase: _pathBase,
28739
28776
  ...props2
28740
- }) => /* @__PURE__ */ jsx12("div", { ...props2 });
28777
+ }) => /* @__PURE__ */ jsx13("div", { ...props2 });
28741
28778
  var FigureNode = ({
28742
28779
  blockId: _blockId,
28743
28780
  blockKind: _blockKind,
@@ -28745,7 +28782,7 @@ var FigureNode = ({
28745
28782
  fragmentRegistry: _fragmentRegistry,
28746
28783
  pathBase: _pathBase,
28747
28784
  ...props2
28748
- }) => /* @__PURE__ */ jsx12("figure", { ...props2 });
28785
+ }) => /* @__PURE__ */ jsx13("figure", { ...props2 });
28749
28786
 
28750
28787
  // ../blocks/src/primitives/content/components/RichText.tsx
28751
28788
  import React2 from "react";
@@ -28789,7 +28826,7 @@ function sanitizeHref(raw) {
28789
28826
  }
28790
28827
 
28791
28828
  // ../blocks/src/primitives/content/components/RichText.tsx
28792
- import { Fragment, jsx as jsx13 } from "react/jsx-runtime";
28829
+ import { Fragment, jsx as jsx14 } from "react/jsx-runtime";
28793
28830
  function parseDimension(value) {
28794
28831
  if (typeof value === "number" && Number.isFinite(value) && value > 0) {
28795
28832
  return Math.round(value);
@@ -28820,10 +28857,10 @@ function renderMarks(text2, marks, key) {
28820
28857
  switch (mark.type) {
28821
28858
  case "bold":
28822
28859
  case "strong":
28823
- return /* @__PURE__ */ jsx13("strong", { children: acc }, `${key}-b`);
28860
+ return /* @__PURE__ */ jsx14("strong", { children: acc }, `${key}-b`);
28824
28861
  case "italic":
28825
28862
  case "em":
28826
- return /* @__PURE__ */ jsx13("em", { children: acc }, `${key}-i`);
28863
+ return /* @__PURE__ */ jsx14("em", { children: acc }, `${key}-i`);
28827
28864
  case "link": {
28828
28865
  if (typeof acc === "string" && acc.length === 0) return acc;
28829
28866
  const attrs = mark.attrs ?? {};
@@ -28831,7 +28868,7 @@ function renderMarks(text2, marks, key) {
28831
28868
  if (!href) return acc;
28832
28869
  const target = typeof attrs.target === "string" && attrs.target.trim().length > 0 ? attrs.target.trim() : void 0;
28833
28870
  const rel = typeof attrs.rel === "string" ? attrs.rel : void 0;
28834
- return /* @__PURE__ */ jsx13("a", { href, target, rel: normalizeRel(target, rel), children: acc }, `${key}-l`);
28871
+ return /* @__PURE__ */ jsx14("a", { href, target, rel: normalizeRel(target, rel), children: acc }, `${key}-l`);
28835
28872
  }
28836
28873
  default:
28837
28874
  return acc;
@@ -28843,25 +28880,25 @@ function renderDoc(node, key, imageResolveContext) {
28843
28880
  const children = node.content?.map((child, index) => renderDoc(child, `${key}-${index}`, imageResolveContext));
28844
28881
  switch (node.type) {
28845
28882
  case "doc":
28846
- return /* @__PURE__ */ jsx13(Fragment, { children });
28883
+ return /* @__PURE__ */ jsx14(Fragment, { children });
28847
28884
  case "paragraph":
28848
- if (!children && !node.text) return /* @__PURE__ */ jsx13("p", {}, key);
28849
- return /* @__PURE__ */ jsx13("p", { children: children ?? renderMarks(node.text ?? "", node.marks, key) }, key);
28885
+ if (!children && !node.text) return /* @__PURE__ */ jsx14("p", {}, key);
28886
+ return /* @__PURE__ */ jsx14("p", { children: children ?? renderMarks(node.text ?? "", node.marks, key) }, key);
28850
28887
  case "heading": {
28851
28888
  const level = Math.min(Math.max(node.attrs?.level ?? 2, 1), 6);
28852
28889
  const headingTag = `h${level}`;
28853
28890
  return React2.createElement(headingTag, { key }, children);
28854
28891
  }
28855
28892
  case "bulletList":
28856
- return /* @__PURE__ */ jsx13("ul", { children }, key);
28893
+ return /* @__PURE__ */ jsx14("ul", { children }, key);
28857
28894
  case "orderedList":
28858
- return /* @__PURE__ */ jsx13("ol", { children }, key);
28895
+ return /* @__PURE__ */ jsx14("ol", { children }, key);
28859
28896
  case "listItem":
28860
- return /* @__PURE__ */ jsx13("li", { children }, key);
28897
+ return /* @__PURE__ */ jsx14("li", { children }, key);
28861
28898
  case "blockquote":
28862
- return /* @__PURE__ */ jsx13("blockquote", { children }, key);
28899
+ return /* @__PURE__ */ jsx14("blockquote", { children }, key);
28863
28900
  case "horizontalRule":
28864
- return /* @__PURE__ */ jsx13("hr", {}, key);
28901
+ return /* @__PURE__ */ jsx14("hr", {}, key);
28865
28902
  case "image": {
28866
28903
  const attrs = node.attrs ?? {};
28867
28904
  const src = typeof attrs.src === "string" ? attrs.src.trim() : "";
@@ -28876,7 +28913,7 @@ function renderDoc(node, key, imageResolveContext) {
28876
28913
  imageResolveContext ?? void 0
28877
28914
  ) ?? "" : "");
28878
28915
  if (!resolvedSrc) return null;
28879
- return /* @__PURE__ */ jsx13(
28916
+ return /* @__PURE__ */ jsx14(
28880
28917
  "img",
28881
28918
  {
28882
28919
  src: resolvedSrc,
@@ -28902,14 +28939,14 @@ function RichText({ as: Comp = "div", className, doc, path }) {
28902
28939
  const content = doc ? renderDoc(doc, "doc", imageResolveContext) : null;
28903
28940
  const dataAttributes = path ? { "data-builder-richtext": path } : void 0;
28904
28941
  const resolvedClassName = className?.trim() || DEFAULT_RICH_TEXT_CLASS;
28905
- return /* @__PURE__ */ jsx13(Comp, { className: resolvedClassName, ...dataAttributes, children: content });
28942
+ return /* @__PURE__ */ jsx14(Comp, { className: resolvedClassName, ...dataAttributes, children: content });
28906
28943
  }
28907
28944
 
28908
28945
  // ../blocks/src/primitives/content/components/Text.tsx
28909
- import { jsx as jsx14 } from "react/jsx-runtime";
28946
+ import { jsx as jsx15 } from "react/jsx-runtime";
28910
28947
  function Text({ as: Comp = "span", children, className = "", path }) {
28911
28948
  const dataAttributes = path ? { "data-builder-text": path } : void 0;
28912
- return /* @__PURE__ */ jsx14(Comp, { className, ...dataAttributes, children });
28949
+ return /* @__PURE__ */ jsx15(Comp, { className, ...dataAttributes, children });
28913
28950
  }
28914
28951
 
28915
28952
  // ../blocks/src/system/manifest/richTextSchema.ts
@@ -28998,13 +29035,13 @@ function coerceRichTextDoc(value) {
28998
29035
  }
28999
29036
 
29000
29037
  // ../blocks/src/system/runtime/nodes/basic.tsx
29001
- import { jsx as jsx15 } from "react/jsx-runtime";
29038
+ import { jsx as jsx16 } from "react/jsx-runtime";
29002
29039
  var TextNode = ({ value, children, blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, pathBase: _pathBase, ...rest }) => {
29003
- return /* @__PURE__ */ jsx15(Text, { ...rest, children: value ?? children });
29040
+ return /* @__PURE__ */ jsx16(Text, { ...rest, children: value ?? children });
29004
29041
  };
29005
29042
  var RichTextNode = ({ value, blockId: _blockId, blockKind: _blockKind, blockContent: _blockContent, fragmentRegistry: _fragmentRegistry, pathBase: _pathBase, ...rest }) => {
29006
29043
  const doc = coerceRichTextDoc(value);
29007
- return /* @__PURE__ */ jsx15(RichText, { doc: doc ?? void 0, ...rest });
29044
+ return /* @__PURE__ */ jsx16(RichText, { doc: doc ?? void 0, ...rest });
29008
29045
  };
29009
29046
  var ButtonNode = ({
29010
29047
  value,
@@ -29044,7 +29081,7 @@ var ButtonNode = ({
29044
29081
  extraClassName: className
29045
29082
  }) : className;
29046
29083
  if (resolvedHref) {
29047
- return /* @__PURE__ */ jsx15(
29084
+ return /* @__PURE__ */ jsx16(
29048
29085
  "a",
29049
29086
  {
29050
29087
  href: resolvedHref,
@@ -29056,7 +29093,7 @@ var ButtonNode = ({
29056
29093
  }
29057
29094
  );
29058
29095
  }
29059
- return /* @__PURE__ */ jsx15(
29096
+ return /* @__PURE__ */ jsx16(
29060
29097
  "button",
29061
29098
  {
29062
29099
  type,
@@ -29088,9 +29125,9 @@ var LinkNode = ({
29088
29125
  console.warn("[LinkNode] Missing href for link-required link");
29089
29126
  }
29090
29127
  if (linkRequired) return null;
29091
- return /* @__PURE__ */ jsx15("span", { className, ...rest, children });
29128
+ return /* @__PURE__ */ jsx16("span", { className, ...rest, children });
29092
29129
  }
29093
- return /* @__PURE__ */ jsx15("a", { href: resolvedHref, className, target, rel, ...rest, children });
29130
+ return /* @__PURE__ */ jsx16("a", { href: resolvedHref, className, target, rel, ...rest, children });
29094
29131
  };
29095
29132
 
29096
29133
  // ../../node_modules/.pnpm/lucide-react@0.563.0_react@19.2.4/node_modules/lucide-react/dist/esm/createLucideIcon.js
@@ -29495,7 +29532,7 @@ function getCtaIconComponent(name) {
29495
29532
  }
29496
29533
 
29497
29534
  // ../blocks/src/system/runtime/nodes/icon.tsx
29498
- import { jsx as jsx16 } from "react/jsx-runtime";
29535
+ import { jsx as jsx17 } from "react/jsx-runtime";
29499
29536
  var IconNode = ({
29500
29537
  value,
29501
29538
  title,
@@ -29511,7 +29548,7 @@ var IconNode = ({
29511
29548
  if (!Icon2) return null;
29512
29549
  const ariaLabel = rest["aria-label"];
29513
29550
  const decorative = !ariaLabel && !title;
29514
- return /* @__PURE__ */ jsx16(
29551
+ return /* @__PURE__ */ jsx17(
29515
29552
  Icon2,
29516
29553
  {
29517
29554
  className,
@@ -29523,7 +29560,7 @@ var IconNode = ({
29523
29560
  };
29524
29561
 
29525
29562
  // ../blocks/src/system/runtime/nodes/file-download.tsx
29526
- import { jsx as jsx17, jsxs as jsxs6 } from "react/jsx-runtime";
29563
+ import { jsx as jsx18, jsxs as jsxs6 } from "react/jsx-runtime";
29527
29564
  var FILE_DOWNLOAD_BUTTON_VARIANTS = [
29528
29565
  "primary",
29529
29566
  "secondary",
@@ -29543,13 +29580,13 @@ function displayFilename(value) {
29543
29580
  function iconForMediaType(type) {
29544
29581
  switch (type) {
29545
29582
  case "audio":
29546
- return /* @__PURE__ */ jsx17(FileHeadphone, { "aria-hidden": "true" });
29583
+ return /* @__PURE__ */ jsx18(FileHeadphone, { "aria-hidden": "true" });
29547
29584
  case "document":
29548
- return /* @__PURE__ */ jsx17(FileText, { "aria-hidden": "true" });
29585
+ return /* @__PURE__ */ jsx18(FileText, { "aria-hidden": "true" });
29549
29586
  case "spreadsheet":
29550
- return /* @__PURE__ */ jsx17(FileSpreadsheet, { "aria-hidden": "true" });
29587
+ return /* @__PURE__ */ jsx18(FileSpreadsheet, { "aria-hidden": "true" });
29551
29588
  case "archive":
29552
- return /* @__PURE__ */ jsx17(FileArchive, { "aria-hidden": "true" });
29589
+ return /* @__PURE__ */ jsx18(FileArchive, { "aria-hidden": "true" });
29553
29590
  }
29554
29591
  }
29555
29592
  function normalizeButtonVariant(value) {
@@ -29571,9 +29608,9 @@ function FileDownloadNode({
29571
29608
  const body = description?.trim();
29572
29609
  const label = buttonLabel?.trim() || "Download";
29573
29610
  const variant = normalizeButtonVariant(buttonVariant);
29574
- return /* @__PURE__ */ jsx17("div", { className, children: /* @__PURE__ */ jsxs6("div", { className: "card-surface rb-flex rb-flex-col rb-gap-4 rb-p-5 rb-sm-flex-row rb-sm-items-center rb-sm-justify-between", children: [
29611
+ return /* @__PURE__ */ jsx18("div", { className, children: /* @__PURE__ */ jsxs6("div", { className: "card-surface rb-flex rb-flex-col rb-gap-4 rb-p-5 rb-sm-flex-row rb-sm-items-center rb-sm-justify-between", children: [
29575
29612
  /* @__PURE__ */ jsxs6("div", { className: "rb-flex rb-min-w-0 rb-items-start rb-gap-3", children: [
29576
- /* @__PURE__ */ jsx17(
29613
+ /* @__PURE__ */ jsx18(
29577
29614
  "span",
29578
29615
  {
29579
29616
  className: "rb-mt-1 rb-flex rb-h-10 rb-w-10 rb-shrink-0 rb-items-center rb-justify-center rb-rounded-full rb-border",
@@ -29582,7 +29619,7 @@ function FileDownloadNode({
29582
29619
  }
29583
29620
  ),
29584
29621
  /* @__PURE__ */ jsxs6("div", { className: "rb-min-w-0 rb-space-y-1", children: [
29585
- /* @__PURE__ */ jsx17(
29622
+ /* @__PURE__ */ jsx18(
29586
29623
  "h2",
29587
29624
  {
29588
29625
  className: "rb-m-0 rb-text-lg rb-font-semibold",
@@ -29590,7 +29627,7 @@ function FileDownloadNode({
29590
29627
  children: heading
29591
29628
  }
29592
29629
  ),
29593
- body ? /* @__PURE__ */ jsx17(
29630
+ body ? /* @__PURE__ */ jsx18(
29594
29631
  "p",
29595
29632
  {
29596
29633
  className: "rb-m-0 rb-text-sm",
@@ -29598,7 +29635,7 @@ function FileDownloadNode({
29598
29635
  children: body
29599
29636
  }
29600
29637
  ) : null,
29601
- /* @__PURE__ */ jsx17(
29638
+ /* @__PURE__ */ jsx18(
29602
29639
  "p",
29603
29640
  {
29604
29641
  className: "rb-m-0 rb-truncate rb-text-xs",
@@ -29619,7 +29656,7 @@ function FileDownloadNode({
29619
29656
  extraClassName: "rb-inline-flex rb-shrink-0 rb-items-center rb-justify-center rb-gap-2"
29620
29657
  }),
29621
29658
  children: [
29622
- /* @__PURE__ */ jsx17(Download, { "aria-hidden": "true" }),
29659
+ /* @__PURE__ */ jsx18(Download, { "aria-hidden": "true" }),
29623
29660
  label
29624
29661
  ]
29625
29662
  }
@@ -29771,7 +29808,7 @@ function getVideoEmbed(url) {
29771
29808
  }
29772
29809
 
29773
29810
  // ../blocks/src/system/runtime/nodes/video-embed.tsx
29774
- import { jsx as jsx18, jsxs as jsxs7 } from "react/jsx-runtime";
29811
+ import { jsx as jsx19, jsxs as jsxs7 } from "react/jsx-runtime";
29775
29812
  var VideoEmbedNode = ({
29776
29813
  value,
29777
29814
  className,
@@ -29791,7 +29828,7 @@ var VideoEmbedNode = ({
29791
29828
  }
29792
29829
  const embedInfo = getVideoEmbed(value);
29793
29830
  if (!embedInfo) {
29794
- return /* @__PURE__ */ jsx18(
29831
+ return /* @__PURE__ */ jsx19(
29795
29832
  "div",
29796
29833
  {
29797
29834
  className,
@@ -29816,7 +29853,7 @@ var VideoEmbedNode = ({
29816
29853
  const title = getVideoTitle(embedInfo);
29817
29854
  const loadingStrategy = getVideoEmbedLoadingStrategy(embedInfo.provider);
29818
29855
  const shouldDeferSrc = loadingStrategy === "defer-until-near-viewport";
29819
- return /* @__PURE__ */ jsx18("div", { ...rest, children: /* @__PURE__ */ jsxs7(
29856
+ return /* @__PURE__ */ jsx19("div", { ...rest, children: /* @__PURE__ */ jsxs7(
29820
29857
  "div",
29821
29858
  {
29822
29859
  className,
@@ -29828,7 +29865,7 @@ var VideoEmbedNode = ({
29828
29865
  width: "100%"
29829
29866
  },
29830
29867
  children: [
29831
- /* @__PURE__ */ jsx18(
29868
+ /* @__PURE__ */ jsx19(
29832
29869
  "iframe",
29833
29870
  {
29834
29871
  src: shouldDeferSrc ? void 0 : embedInfo.embedUrl,
@@ -29849,7 +29886,7 @@ var VideoEmbedNode = ({
29849
29886
  allowFullScreen: true
29850
29887
  }
29851
29888
  ),
29852
- shouldDeferSrc ? /* @__PURE__ */ jsx18("noscript", { children: /* @__PURE__ */ jsx18("a", { href: embedInfo.url, children: "View on Instagram" }) }) : null
29889
+ shouldDeferSrc ? /* @__PURE__ */ jsx19("noscript", { children: /* @__PURE__ */ jsx19("a", { href: embedInfo.url, children: "View on Instagram" }) }) : null
29853
29890
  ]
29854
29891
  }
29855
29892
  ) });
@@ -29892,7 +29929,7 @@ function normalizeAspectRatio(value) {
29892
29929
  import React3 from "react";
29893
29930
 
29894
29931
  // ../blocks/src/system/runtime/islands/ssr.tsx
29895
- import { jsx as jsx19 } from "react/jsx-runtime";
29932
+ import { jsx as jsx20 } from "react/jsx-runtime";
29896
29933
  function getIslandRootProps(kind, id) {
29897
29934
  const resolved = { "data-rb-island": kind };
29898
29935
  if (id) resolved["data-rb-island-id"] = id;
@@ -29902,7 +29939,7 @@ function serializeIslandProps(value) {
29902
29939
  return JSON.stringify(value).replace(/</g, "\\u003c");
29903
29940
  }
29904
29941
  function IslandPropsScript({ value }) {
29905
- return /* @__PURE__ */ jsx19(
29942
+ return /* @__PURE__ */ jsx20(
29906
29943
  "script",
29907
29944
  {
29908
29945
  type: "application/json",
@@ -29949,7 +29986,7 @@ function getCarouselSlidesToShowCssVars(value) {
29949
29986
  }
29950
29987
 
29951
29988
  // ../blocks/src/system/runtime/nodes/carousel.server.tsx
29952
- import { jsx as jsx20, jsxs as jsxs8 } from "react/jsx-runtime";
29989
+ import { jsx as jsx21, jsxs as jsxs8 } from "react/jsx-runtime";
29953
29990
  var CarouselNodeSSR = ({
29954
29991
  blockId,
29955
29992
  children,
@@ -29980,7 +30017,7 @@ var CarouselNodeSSR = ({
29980
30017
  "data-show-controls": controlsEnabled ? "true" : "false",
29981
30018
  ...getIslandRootProps("carousel", blockId),
29982
30019
  children: [
29983
- /* @__PURE__ */ jsx20(
30020
+ /* @__PURE__ */ jsx21(
29984
30021
  IslandPropsScript,
29985
30022
  {
29986
30023
  value: {
@@ -29995,7 +30032,7 @@ var CarouselNodeSSR = ({
29995
30032
  }
29996
30033
  }
29997
30034
  ),
29998
- /* @__PURE__ */ jsx20("div", { className: "carousel-frame rb-overflow-hidden rb-w-full", children: /* @__PURE__ */ jsx20(
30035
+ /* @__PURE__ */ jsx21("div", { className: "carousel-frame rb-overflow-hidden rb-w-full", children: /* @__PURE__ */ jsx21(
29999
30036
  "div",
30000
30037
  {
30001
30038
  className: clsx_default(
@@ -30003,7 +30040,7 @@ var CarouselNodeSSR = ({
30003
30040
  "rb-overflow-x-auto",
30004
30041
  shouldSnap && "rb-snap-x rb-snap-mandatory"
30005
30042
  ),
30006
- children: /* @__PURE__ */ jsx20("div", { className: "carousel-track rb-flex rb-w-full", children: slides.map((slide, index) => /* @__PURE__ */ jsx20(
30043
+ children: /* @__PURE__ */ jsx21("div", { className: "carousel-track rb-flex rb-w-full", children: slides.map((slide, index) => /* @__PURE__ */ jsx21(
30007
30044
  "div",
30008
30045
  {
30009
30046
  "data-carousel-slide": true,
@@ -30032,7 +30069,7 @@ function normalizeBoolean2(value) {
30032
30069
  }
30033
30070
 
30034
30071
  // ../blocks/src/system/runtime/nodes/accordion.server.tsx
30035
- import { jsx as jsx21, jsxs as jsxs9 } from "react/jsx-runtime";
30072
+ import { jsx as jsx22, jsxs as jsxs9 } from "react/jsx-runtime";
30036
30073
  var ACCORDION_ICONS = {
30037
30074
  Plus,
30038
30075
  Minus,
@@ -30057,7 +30094,7 @@ var AccordionNodeSSR = ({
30057
30094
  "data-default-value": Array.isArray(defaultValue) ? defaultValue.join(",") : defaultValue,
30058
30095
  ...getIslandRootProps("accordion", blockId),
30059
30096
  children: [
30060
- /* @__PURE__ */ jsx21(IslandPropsScript, { value: { type, defaultValue, collapsible } }),
30097
+ /* @__PURE__ */ jsx22(IslandPropsScript, { value: { type, defaultValue, collapsible } }),
30061
30098
  children
30062
30099
  ]
30063
30100
  }
@@ -30087,13 +30124,13 @@ var AccordionItemNodeSSR = ({
30087
30124
  "data-state": "closed",
30088
30125
  children: [
30089
30126
  /* @__PURE__ */ jsxs9("div", { className: "accordion-trigger", role: "button", tabIndex: 0, "aria-expanded": "false", children: [
30090
- /* @__PURE__ */ jsx21("span", { className: "accordion-trigger-text", children: resolveNode(triggerSource) }),
30127
+ /* @__PURE__ */ jsx22("span", { className: "accordion-trigger-text", children: resolveNode(triggerSource) }),
30091
30128
  /* @__PURE__ */ jsxs9("span", { className: "accordion-icon", "aria-hidden": "true", children: [
30092
- ClosedIconComponent && /* @__PURE__ */ jsx21(ClosedIconComponent, { className: "accordion-icon-closed" }),
30093
- OpenIconComponent && /* @__PURE__ */ jsx21(OpenIconComponent, { className: "accordion-icon-open" })
30129
+ ClosedIconComponent && /* @__PURE__ */ jsx22(ClosedIconComponent, { className: "accordion-icon-closed" }),
30130
+ OpenIconComponent && /* @__PURE__ */ jsx22(OpenIconComponent, { className: "accordion-icon-open" })
30094
30131
  ] })
30095
30132
  ] }),
30096
- /* @__PURE__ */ jsx21(
30133
+ /* @__PURE__ */ jsx22(
30097
30134
  "div",
30098
30135
  {
30099
30136
  className: "accordion-content",
@@ -30102,7 +30139,7 @@ var AccordionItemNodeSSR = ({
30102
30139
  hidden: true,
30103
30140
  "aria-hidden": "true",
30104
30141
  inert: true,
30105
- children: /* @__PURE__ */ jsx21("div", { className: "accordion-content-inner", children: resolveNode(contentSource) })
30142
+ children: /* @__PURE__ */ jsx22("div", { className: "accordion-content-inner", children: resolveNode(contentSource) })
30106
30143
  }
30107
30144
  )
30108
30145
  ]
@@ -30112,12 +30149,12 @@ var AccordionItemNodeSSR = ({
30112
30149
  function resolveNode(value) {
30113
30150
  if (typeof value === "string" || typeof value === "number") return String(value);
30114
30151
  const doc = coerceRichTextDoc(value);
30115
- if (doc) return /* @__PURE__ */ jsx21(RichText, { doc });
30152
+ if (doc) return /* @__PURE__ */ jsx22(RichText, { doc });
30116
30153
  return value;
30117
30154
  }
30118
30155
 
30119
30156
  // ../blocks/src/system/runtime/nodes/header-section.server.tsx
30120
- import { jsx as jsx22, jsxs as jsxs10 } from "react/jsx-runtime";
30157
+ import { jsx as jsx23, jsxs as jsxs10 } from "react/jsx-runtime";
30121
30158
  function hasShrinkClasses(className) {
30122
30159
  return typeof className === "string" && className.includes("rb-header-shrink");
30123
30160
  }
@@ -30151,8 +30188,8 @@ var HeaderSectionNode = ({
30151
30188
  "data-block-id": blockId ?? void 0,
30152
30189
  "data-preview-site-chrome-surface": previewSiteChromeSurface,
30153
30190
  children: [
30154
- /* @__PURE__ */ jsx22(IslandPropsScript, { value: { enabled: hasShrinkClasses(className) } }),
30155
- /* @__PURE__ */ jsx22(
30191
+ /* @__PURE__ */ jsx23(IslandPropsScript, { value: { enabled: hasShrinkClasses(className) } }),
30192
+ /* @__PURE__ */ jsx23(
30156
30193
  Section_default,
30157
30194
  {
30158
30195
  as: asProp,
@@ -30171,7 +30208,7 @@ var HeaderSectionNode = ({
30171
30208
  var header_section_server_default = HeaderSectionNode;
30172
30209
 
30173
30210
  // ../blocks/src/system/runtime/nodes/spinner.tsx
30174
- import { jsx as jsx23, jsxs as jsxs11 } from "react/jsx-runtime";
30211
+ import { jsx as jsx24, jsxs as jsxs11 } from "react/jsx-runtime";
30175
30212
  function resolveColorStyle(color) {
30176
30213
  switch (color) {
30177
30214
  case "inherit":
@@ -30215,7 +30252,7 @@ function SpinnerNode({
30215
30252
  ...rest,
30216
30253
  children: [
30217
30254
  /* @__PURE__ */ jsxs11("svg", { viewBox: "0 0 24 24", fill: "none", "aria-hidden": "true", children: [
30218
- /* @__PURE__ */ jsx23(
30255
+ /* @__PURE__ */ jsx24(
30219
30256
  "circle",
30220
30257
  {
30221
30258
  cx: "12",
@@ -30226,7 +30263,7 @@ function SpinnerNode({
30226
30263
  opacity: trackOpacity
30227
30264
  }
30228
30265
  ),
30229
- /* @__PURE__ */ jsx23(
30266
+ /* @__PURE__ */ jsx24(
30230
30267
  "path",
30231
30268
  {
30232
30269
  d: "M12 2a10 10 0 0 1 10 10",
@@ -30236,14 +30273,14 @@ function SpinnerNode({
30236
30273
  }
30237
30274
  )
30238
30275
  ] }),
30239
- srLabel ? /* @__PURE__ */ jsx23("span", { className: "rb-sr-only", children: srLabel }) : null
30276
+ srLabel ? /* @__PURE__ */ jsx24("span", { className: "rb-sr-only", children: srLabel }) : null
30240
30277
  ]
30241
30278
  }
30242
30279
  );
30243
30280
  }
30244
30281
 
30245
30282
  // ../blocks/src/system/runtime/nodes/booking-form.interactive.ts
30246
- import { z as z62 } from "zod";
30283
+ import { z as z63 } from "zod";
30247
30284
 
30248
30285
  // ../blocks/src/system/runtime/nodes/booking-form.state.ts
30249
30286
  function toTrimmedString(value) {
@@ -30380,7 +30417,8 @@ function isRecord4(value) {
30380
30417
  return typeof value === "object" && value !== null;
30381
30418
  }
30382
30419
 
30383
- // ../blocks/src/system/runtime/nodes/booking-form.interactive.ts
30420
+ // ../blocks/src/system/runtime/nodes/booking-runtime-sources.ts
30421
+ import { z as z62 } from "zod";
30384
30422
  var bookingFieldOptionSchema = z62.object({
30385
30423
  value: z62.string(),
30386
30424
  label: z62.string()
@@ -30434,100 +30472,102 @@ var bookingSourceFormSchema = z62.object({
30434
30472
  createdAt: z62.string(),
30435
30473
  updatedAt: z62.string()
30436
30474
  });
30437
- var blockBookingPaymentTermsAvailabilitySchema = z62.union([
30438
- z62.object({
30439
- kind: z62.literal("available"),
30475
+
30476
+ // ../blocks/src/system/runtime/nodes/booking-form.interactive.ts
30477
+ var blockBookingPaymentTermsAvailabilitySchema = z63.union([
30478
+ z63.object({
30479
+ kind: z63.literal("available"),
30440
30480
  paymentTerms: blockBookingPaymentTermsSchema
30441
30481
  }),
30442
- z62.object({
30443
- kind: z62.literal("pending_stripe_setup"),
30482
+ z63.object({
30483
+ kind: z63.literal("pending_stripe_setup"),
30444
30484
  paymentTerms: blockBookingPaymentTermsSchema,
30445
- reason: z62.literal("online_payment_configured_before_launch")
30485
+ reason: z63.literal("online_payment_configured_before_launch")
30446
30486
  })
30447
30487
  ]);
30448
- var bookingServiceSchema = z62.object({
30449
- id: z62.string(),
30450
- siteId: z62.string(),
30451
- title: z62.string(),
30452
- description: z62.string().nullable().optional().transform((value) => value ?? void 0),
30453
- durationMinutes: z62.number().optional(),
30454
- priceAmount: z62.number().nullable().optional(),
30455
- priceCurrency: z62.string().nullable().optional(),
30488
+ var bookingServiceSchema = z63.object({
30489
+ id: z63.string(),
30490
+ siteId: z63.string(),
30491
+ title: z63.string(),
30492
+ description: z63.string().nullable().optional().transform((value) => value ?? void 0),
30493
+ durationMinutes: z63.number().optional(),
30494
+ priceAmount: z63.number().nullable().optional(),
30495
+ priceCurrency: z63.string().nullable().optional(),
30456
30496
  paymentTerms: blockBookingPaymentTermsSchema.optional(),
30457
30497
  paymentTermsAvailability: blockBookingPaymentTermsAvailabilitySchema.optional()
30458
30498
  });
30459
- var bookingServicesSourceSchema = z62.union([
30460
- z62.array(bookingServiceSchema),
30461
- z62.object({
30462
- services: z62.array(bookingServiceSchema).optional()
30499
+ var bookingServicesSourceSchema = z63.union([
30500
+ z63.array(bookingServiceSchema),
30501
+ z63.object({
30502
+ services: z63.array(bookingServiceSchema).optional()
30463
30503
  }),
30464
- z62.record(z62.string(), bookingServiceSchema)
30504
+ z63.record(z63.string(), bookingServiceSchema)
30465
30505
  ]);
30466
- var bookingConfigSchema = z62.object({
30467
- id: z62.string(),
30468
- name: z62.string(),
30469
- slug: z62.string(),
30506
+ var bookingConfigSchema = z63.object({
30507
+ id: z63.string(),
30508
+ name: z63.string(),
30509
+ slug: z63.string(),
30470
30510
  settings: bookingSettingsSchema.optional(),
30471
- schema: z62.object({
30472
- version: z62.string().optional(),
30473
- fields: z62.array(bookingFieldSchema)
30511
+ schema: z63.object({
30512
+ version: z63.string().optional(),
30513
+ fields: z63.array(bookingFieldSchema)
30474
30514
  }).optional()
30475
30515
  });
30476
- var bookingSourceSchema = z62.object({
30477
- siteId: z62.string().optional(),
30478
- apiBaseUrl: z62.string().optional(),
30479
- portalToken: z62.string().nullable().optional(),
30480
- formId: z62.string().optional(),
30481
- serviceId: z62.string().nullable().optional(),
30482
- resourceId: z62.string().nullable().optional(),
30483
- initialData: z62.record(z62.string(), z62.unknown()).nullable().optional(),
30484
- noticeMessage: z62.string().nullable().optional(),
30485
- requiresServiceSelection: z62.boolean().optional(),
30486
- requiresResourceSelection: z62.boolean().optional(),
30487
- shouldAutoSelectSingleResource: z62.boolean().optional(),
30488
- rebookContext: z62.object({
30489
- kind: z62.literal("portal_rebook")
30516
+ var bookingSourceSchema = z63.object({
30517
+ siteId: z63.string().optional(),
30518
+ apiBaseUrl: z63.string().optional(),
30519
+ portalToken: z63.string().nullable().optional(),
30520
+ formId: z63.string().optional(),
30521
+ serviceId: z63.string().nullable().optional(),
30522
+ resourceId: z63.string().nullable().optional(),
30523
+ initialData: z63.record(z63.string(), z63.unknown()).nullable().optional(),
30524
+ noticeMessage: z63.string().nullable().optional(),
30525
+ requiresServiceSelection: z63.boolean().optional(),
30526
+ requiresResourceSelection: z63.boolean().optional(),
30527
+ shouldAutoSelectSingleResource: z63.boolean().optional(),
30528
+ rebookContext: z63.object({
30529
+ kind: z63.literal("portal_rebook")
30490
30530
  }).nullable().optional(),
30491
- submitLabel: z62.string().nullable().optional(),
30492
- successMessage: z62.string().nullable().optional(),
30531
+ submitLabel: z63.string().nullable().optional(),
30532
+ successMessage: z63.string().nullable().optional(),
30493
30533
  form: bookingSourceFormSchema.nullable().optional(),
30494
30534
  services: bookingServicesSourceSchema.nullable().optional(),
30495
- spamProtectionEnabled: z62.boolean().optional(),
30496
- className: z62.string().nullable().optional()
30497
- });
30498
- var bookingDisplaySchema = z62.object({
30499
- kind: z62.literal("booking-form"),
30500
- state: z62.enum(["missing", "ready"]),
30501
- className: z62.string().nullable(),
30502
- submitLabel: z62.string(),
30503
- successMessage: z62.string().nullable(),
30504
- message: z62.string().nullable()
30505
- });
30506
- var bookingHydrationSchema = z62.object({
30507
- formId: z62.string().nullable(),
30508
- serviceId: z62.string().nullable(),
30509
- resourceId: z62.string().nullable(),
30510
- initialData: z62.record(z62.string(), z62.unknown()).nullable().optional(),
30511
- noticeMessage: z62.string().nullable().optional(),
30512
- requiresServiceSelection: z62.boolean().optional(),
30513
- requiresResourceSelection: z62.boolean().optional(),
30514
- shouldAutoSelectSingleResource: z62.boolean().optional(),
30515
- rebookContext: z62.object({
30516
- kind: z62.literal("portal_rebook")
30535
+ spamProtectionEnabled: z63.boolean().optional(),
30536
+ className: z63.string().nullable().optional()
30537
+ });
30538
+ var bookingDisplaySchema = z63.object({
30539
+ kind: z63.literal("booking-form"),
30540
+ state: z63.enum(["missing", "ready"]),
30541
+ className: z63.string().nullable(),
30542
+ submitLabel: z63.string(),
30543
+ successMessage: z63.string().nullable(),
30544
+ message: z63.string().nullable()
30545
+ });
30546
+ var bookingHydrationSchema = z63.object({
30547
+ formId: z63.string().nullable(),
30548
+ serviceId: z63.string().nullable(),
30549
+ resourceId: z63.string().nullable(),
30550
+ initialData: z63.record(z63.string(), z63.unknown()).nullable().optional(),
30551
+ noticeMessage: z63.string().nullable().optional(),
30552
+ requiresServiceSelection: z63.boolean().optional(),
30553
+ requiresResourceSelection: z63.boolean().optional(),
30554
+ shouldAutoSelectSingleResource: z63.boolean().optional(),
30555
+ rebookContext: z63.object({
30556
+ kind: z63.literal("portal_rebook")
30517
30557
  }).nullable().optional(),
30518
30558
  form: bookingConfigSchema.nullable(),
30519
- services: z62.array(bookingServiceSchema),
30520
- spamProtectionEnabled: z62.boolean().optional()
30559
+ services: z63.array(bookingServiceSchema),
30560
+ spamProtectionEnabled: z63.boolean().optional()
30521
30561
  });
30522
- var bookingRenderSchema = z62.object({
30562
+ var bookingRenderSchema = z63.object({
30523
30563
  display: bookingDisplaySchema,
30524
30564
  hydration: bookingHydrationSchema
30525
30565
  });
30526
30566
  var bookingFormIslandMetaCodec = createZodCodec(
30527
- z62.object({
30528
- siteId: z62.string().optional(),
30529
- apiBaseUrl: z62.string().optional(),
30530
- portalToken: z62.string().nullable().optional()
30567
+ z63.object({
30568
+ siteId: z63.string().optional(),
30569
+ apiBaseUrl: z63.string().optional(),
30570
+ portalToken: z63.string().nullable().optional()
30531
30571
  })
30532
30572
  );
30533
30573
  var bookingFormIslandMetaKeys = defineInteractiveIslandMetaKeys(
@@ -30598,7 +30638,7 @@ function buildBookingFormInteractiveIslandProps(props2) {
30598
30638
  }
30599
30639
 
30600
30640
  // ../blocks/src/system/runtime/nodes/booking-form.server.tsx
30601
- import { Fragment as Fragment2, jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
30641
+ import { Fragment as Fragment2, jsx as jsx25, jsxs as jsxs12 } from "react/jsx-runtime";
30602
30642
  function BookingFormSSR({
30603
30643
  blockId,
30604
30644
  siteId,
@@ -30648,10 +30688,10 @@ function BookingFormSSR({
30648
30688
  className: `booking-form-ssr ${className ?? ""}`.trim(),
30649
30689
  ...getIslandRootProps("booking-form", blockId),
30650
30690
  children: [
30651
- /* @__PURE__ */ jsx24(IslandPropsScript, { value: islandProps }),
30652
- /* @__PURE__ */ jsx24("div", { className: "booking-form-ssr__summary", children: display.state === "missing" ? /* @__PURE__ */ jsx24("p", { className: "booking-form-ssr__error", children: display.message }) : /* @__PURE__ */ jsxs12(Fragment2, { children: [
30653
- /* @__PURE__ */ jsx24("strong", { children: display.submitLabel }),
30654
- display.successMessage ? /* @__PURE__ */ jsx24("p", { className: "booking-form-ssr__success", children: display.successMessage }) : null
30691
+ /* @__PURE__ */ jsx25(IslandPropsScript, { value: islandProps }),
30692
+ /* @__PURE__ */ jsx25("div", { className: "booking-form-ssr__summary", children: display.state === "missing" ? /* @__PURE__ */ jsx25("p", { className: "booking-form-ssr__error", children: display.message }) : /* @__PURE__ */ jsxs12(Fragment2, { children: [
30693
+ /* @__PURE__ */ jsx25("strong", { children: display.submitLabel }),
30694
+ display.successMessage ? /* @__PURE__ */ jsx25("p", { className: "booking-form-ssr__success", children: display.successMessage }) : null
30655
30695
  ] }) }),
30656
30696
  children
30657
30697
  ]
@@ -30759,21 +30799,21 @@ function filterMembershipsForEvent(siteMemberships, event) {
30759
30799
  }
30760
30800
 
30761
30801
  // ../blocks/src/system/runtime/nodes/event-details/CoursePricingDisplay.tsx
30762
- import { jsx as jsx25, jsxs as jsxs13 } from "react/jsx-runtime";
30802
+ import { jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
30763
30803
  function CoursePricingDisplay({
30764
30804
  pricing,
30765
30805
  acceptedItems
30766
30806
  }) {
30767
30807
  return /* @__PURE__ */ jsxs13("div", { className: "rb-mt-6", children: [
30768
- /* @__PURE__ */ jsx25("div", { className: "rb-label rb-mb-2", children: pricing.selectableOptions.length > 1 ? "Pricing" : "Cost" }),
30769
- pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx25("div", { className: "rb-flex rb-flex-col rb-gap-2", children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs13("div", { children: [
30808
+ /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: pricing.selectableOptions.length > 1 ? "Pricing" : "Cost" }),
30809
+ pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx26("div", { className: "rb-flex rb-flex-col rb-gap-2", children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs13("div", { children: [
30770
30810
  /* @__PURE__ */ jsxs13("strong", { children: [
30771
30811
  option.name,
30772
30812
  ": ",
30773
30813
  formatCoursePriceAmount(option.priceAmount, pricing.currency)
30774
30814
  ] }),
30775
- option.description ? /* @__PURE__ */ jsx25("p", { className: "rb-caption status-muted", children: option.description }) : null
30776
- ] }, option.id)) }) : /* @__PURE__ */ jsx25("p", { children: /* @__PURE__ */ jsx25("strong", { children: formatCoursePriceDisplay(pricing.display) }) }),
30815
+ option.description ? /* @__PURE__ */ jsx26("p", { className: "rb-caption status-muted", children: option.description }) : null
30816
+ ] }, option.id)) }) : /* @__PURE__ */ jsx26("p", { children: /* @__PURE__ */ jsx26("strong", { children: formatCoursePriceDisplay(pricing.display) }) }),
30777
30817
  acceptedItems.length > 0 ? /* @__PURE__ */ jsxs13("p", { className: "rb-caption rb-mt-1", children: [
30778
30818
  "You can also attend with: ",
30779
30819
  acceptedItems.join(", ")
@@ -30782,7 +30822,7 @@ function CoursePricingDisplay({
30782
30822
  }
30783
30823
 
30784
30824
  // ../blocks/src/system/runtime/nodes/event-details/view.tsx
30785
- import { Fragment as Fragment3, jsx as jsx26, jsxs as jsxs14 } from "react/jsx-runtime";
30825
+ import { Fragment as Fragment3, jsx as jsx27, jsxs as jsxs14 } from "react/jsx-runtime";
30786
30826
  function formatAutoApplyDiscountLine(preview, currency) {
30787
30827
  const rate = preview.discountType === "percent" ? `${preview.discountPercent}% off` : `${formatCoursePriceAmount(preview.discountAmountCents, currency)} off`;
30788
30828
  const label = preview.publicLabel.trim() || "Discount";
@@ -30792,7 +30832,7 @@ function TeamMemberName({
30792
30832
  name,
30793
30833
  profilePath
30794
30834
  }) {
30795
- return profilePath ? /* @__PURE__ */ jsx26("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx26("strong", { children: name }) }) : /* @__PURE__ */ jsx26("strong", { children: name });
30835
+ return profilePath ? /* @__PURE__ */ jsx27("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx27("strong", { children: name }) }) : /* @__PURE__ */ jsx27("strong", { children: name });
30796
30836
  }
30797
30837
  function EventDetailsView({
30798
30838
  selection,
@@ -30811,7 +30851,7 @@ function EventDetailsView({
30811
30851
  }) {
30812
30852
  const selected = selection.selected;
30813
30853
  if (!selected) {
30814
- return /* @__PURE__ */ jsx26("p", { className: "rb-caption status-muted", children: "No upcoming dates scheduled." });
30854
+ return /* @__PURE__ */ jsx27("p", { className: "rb-caption status-muted", children: "No upcoming dates scheduled." });
30815
30855
  }
30816
30856
  const venue = showVenue ? selected.venue : void 0;
30817
30857
  const isDropIn = selected.kind !== "course_session" && selected.requiresRegistration === false;
@@ -30837,7 +30877,7 @@ function EventDetailsView({
30837
30877
  /* @__PURE__ */ jsxs14("div", { className: "rb-grid rb-grid-cols-1 rb-gap-6 rb-items-start rb-sm-grid-cols-2", children: [
30838
30878
  /* @__PURE__ */ jsxs14("div", { className: "rb-flex rb-flex-col rb-gap-4", children: [
30839
30879
  /* @__PURE__ */ jsxs14("div", { children: [
30840
- /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: selection.mode === "next" ? "Next date" : "Date" }),
30880
+ /* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: selection.mode === "next" ? "Next date" : "Date" }),
30841
30881
  (() => {
30842
30882
  const { date, timeRange } = formatEventDateParts({
30843
30883
  startsAt: selected.startsAt,
@@ -30845,61 +30885,61 @@ function EventDetailsView({
30845
30885
  timeZone: selection.timeZone
30846
30886
  });
30847
30887
  return /* @__PURE__ */ jsxs14(Fragment3, { children: [
30848
- /* @__PURE__ */ jsx26("p", { children: /* @__PURE__ */ jsx26("strong", { children: date }) }),
30849
- /* @__PURE__ */ jsx26("p", { className: "rb-caption", children: timeRange })
30888
+ /* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27("strong", { children: date }) }),
30889
+ /* @__PURE__ */ jsx27("p", { className: "rb-caption", children: timeRange })
30850
30890
  ] });
30851
30891
  })()
30852
30892
  ] }),
30853
30893
  venue ? /* @__PURE__ */ jsxs14("div", { className: "rb-mt-6", children: [
30854
- /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: "Venue" }),
30855
- /* @__PURE__ */ jsx26("p", { children: /* @__PURE__ */ jsx26("strong", { children: venue.name }) }),
30856
- venue.address ? /* @__PURE__ */ jsx26("p", { className: "rb-caption", children: venue.address }) : null
30894
+ /* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: "Venue" }),
30895
+ /* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27("strong", { children: venue.name }) }),
30896
+ venue.address ? /* @__PURE__ */ jsx27("p", { className: "rb-caption", children: venue.address }) : null
30857
30897
  ] }) : null,
30858
30898
  teamMembers.length > 0 ? /* @__PURE__ */ jsxs14("div", { className: "rb-mt-6", children: [
30859
- /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: "Team members" }),
30860
- /* @__PURE__ */ jsx26("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs14("div", { children: [
30861
- /* @__PURE__ */ jsx26("p", { children: /* @__PURE__ */ jsx26(
30899
+ /* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: "Team members" }),
30900
+ /* @__PURE__ */ jsx27("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs14("div", { children: [
30901
+ /* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27(
30862
30902
  TeamMemberName,
30863
30903
  {
30864
30904
  name: teamMember.name,
30865
30905
  profilePath: teamMember.profilePath
30866
30906
  }
30867
30907
  ) }),
30868
- teamMember.summary ? /* @__PURE__ */ jsx26("p", { className: "rb-caption status-muted", children: teamMember.summary }) : null
30908
+ teamMember.summary ? /* @__PURE__ */ jsx27("p", { className: "rb-caption status-muted", children: teamMember.summary }) : null
30869
30909
  ] }, teamMember.id)) })
30870
30910
  ] }) : null,
30871
30911
  isDropIn ? /* @__PURE__ */ jsxs14("div", { className: "rb-mt-6", children: [
30872
- /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: "Registration" }),
30873
- /* @__PURE__ */ jsx26("p", { className: "rb-caption status-muted", children: "No registration required - just show up" })
30874
- ] }) : shouldShowCoursePricing ? /* @__PURE__ */ jsx26(
30912
+ /* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: "Registration" }),
30913
+ /* @__PURE__ */ jsx27("p", { className: "rb-caption status-muted", children: "No registration required - just show up" })
30914
+ ] }) : shouldShowCoursePricing ? /* @__PURE__ */ jsx27(
30875
30915
  CoursePricingDisplay,
30876
30916
  {
30877
30917
  pricing: coursePricing,
30878
30918
  acceptedItems
30879
30919
  }
30880
30920
  ) : shouldShowEventCost ? /* @__PURE__ */ jsxs14("div", { className: "rb-mt-6", children: [
30881
- /* @__PURE__ */ jsx26("div", { className: "rb-label rb-mb-2", children: "Cost" }),
30882
- eventPrice !== null ? /* @__PURE__ */ jsx26("p", { children: /* @__PURE__ */ jsx26("strong", { children: formatCoursePriceAmount(eventPrice, selected.currency ?? "USD") }) }) : /* @__PURE__ */ jsx26("p", { className: "rb-caption status-muted", children: "See checkout for details" }),
30883
- autoApplyDiscount ? /* @__PURE__ */ jsx26("p", { className: "rb-caption rb-mt-1", children: formatAutoApplyDiscountLine(autoApplyDiscount, selected.currency ?? "USD") }) : null,
30921
+ /* @__PURE__ */ jsx27("div", { className: "rb-label rb-mb-2", children: "Cost" }),
30922
+ eventPrice !== null ? /* @__PURE__ */ jsx27("p", { children: /* @__PURE__ */ jsx27("strong", { children: formatCoursePriceAmount(eventPrice, selected.currency ?? "USD") }) }) : /* @__PURE__ */ jsx27("p", { className: "rb-caption status-muted", children: "See checkout for details" }),
30923
+ autoApplyDiscount ? /* @__PURE__ */ jsx27("p", { className: "rb-caption rb-mt-1", children: formatAutoApplyDiscountLine(autoApplyDiscount, selected.currency ?? "USD") }) : null,
30884
30924
  hasAcceptedItems ? /* @__PURE__ */ jsxs14("p", { className: "rb-caption rb-mt-1", children: [
30885
30925
  "You can also attend with: ",
30886
30926
  acceptedItems.join(", ")
30887
30927
  ] }) : null
30888
- ] }) : hasAcceptedItems ? /* @__PURE__ */ jsx26("div", { className: "rb-mt-6", children: /* @__PURE__ */ jsxs14("p", { className: "rb-caption", children: [
30928
+ ] }) : hasAcceptedItems ? /* @__PURE__ */ jsx27("div", { className: "rb-mt-6", children: /* @__PURE__ */ jsxs14("p", { className: "rb-caption", children: [
30889
30929
  "You can also attend with: ",
30890
30930
  acceptedItems.join(", ")
30891
30931
  ] }) }) : null
30892
30932
  ] }),
30893
- showMap && renderVenueMap && venue?.location ? /* @__PURE__ */ jsx26(Fragment3, { children: renderVenueMap({ venueName: venue.name, location: venue.location, className: mapClassName, height: mapHeight }) }) : null
30933
+ showMap && renderVenueMap && venue?.location ? /* @__PURE__ */ jsx27(Fragment3, { children: renderVenueMap({ venueName: venue.name, location: venue.location, className: mapClassName, height: mapHeight }) }) : null
30894
30934
  ] }),
30895
30935
  showOtherDates && selection.otherDates.length > 0 ? /* @__PURE__ */ jsxs14("div", { children: [
30896
- /* @__PURE__ */ jsx26("div", { className: "rb-label", children: "Other dates" }),
30897
- /* @__PURE__ */ jsx26("div", { className: "rb-mt-2 rb-tiles-grid", children: selection.otherDates.map((e) => /* @__PURE__ */ jsx26(
30936
+ /* @__PURE__ */ jsx27("div", { className: "rb-label", children: "Other dates" }),
30937
+ /* @__PURE__ */ jsx27("div", { className: "rb-mt-2 rb-tiles-grid", children: selection.otherDates.map((e) => /* @__PURE__ */ jsx27(
30898
30938
  "a",
30899
30939
  {
30900
30940
  className: "rb-tile rb-tile--interactive",
30901
30941
  href: e.path,
30902
- children: /* @__PURE__ */ jsx26(
30942
+ children: /* @__PURE__ */ jsx27(
30903
30943
  DateTimeTile,
30904
30944
  {
30905
30945
  startsAt: e.startsAt,
@@ -30915,7 +30955,7 @@ function EventDetailsView({
30915
30955
  }
30916
30956
 
30917
30957
  // ../blocks/src/system/runtime/nodes/event-details.server.tsx
30918
- import { jsx as jsx27, jsxs as jsxs15 } from "react/jsx-runtime";
30958
+ import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
30919
30959
  function EventDetailsSSR({
30920
30960
  blockId,
30921
30961
  occurrenceContext,
@@ -30951,7 +30991,7 @@ function EventDetailsSSR({
30951
30991
  "data-block": "event-details",
30952
30992
  ...getIslandRootProps("event-details", blockId),
30953
30993
  children: [
30954
- /* @__PURE__ */ jsx27(
30994
+ /* @__PURE__ */ jsx28(
30955
30995
  IslandPropsScript,
30956
30996
  {
30957
30997
  value: {
@@ -30972,7 +31012,7 @@ function EventDetailsSSR({
30972
31012
  }
30973
31013
  }
30974
31014
  ),
30975
- /* @__PURE__ */ jsx27(
31015
+ /* @__PURE__ */ jsx28(
30976
31016
  EventDetailsView,
30977
31017
  {
30978
31018
  selection,
@@ -30986,7 +31026,7 @@ function EventDetailsSSR({
30986
31026
  applicableMemberships,
30987
31027
  autoApplyDiscount: autoApplyDiscount ?? null,
30988
31028
  mapClassName: "venue-map event-details-map",
30989
- renderVenueMap: ({ venueName, className: className2, height }) => /* @__PURE__ */ jsx27("div", { className: "event-details-map-wrap rb-w-full rb-ml-auto", children: /* @__PURE__ */ jsx27(
31029
+ renderVenueMap: ({ venueName, className: className2, height }) => /* @__PURE__ */ jsx28("div", { className: "event-details-map-wrap rb-w-full rb-ml-auto", children: /* @__PURE__ */ jsx28(
30990
31030
  "div",
30991
31031
  {
30992
31032
  className: className2,
@@ -31010,7 +31050,7 @@ function EventDetailsSSR({
31010
31050
  var event_details_server_default = EventDetailsSSR;
31011
31051
 
31012
31052
  // ../blocks/src/system/runtime/nodes/location-map.view.tsx
31013
- import { jsx as jsx28, jsxs as jsxs16 } from "react/jsx-runtime";
31053
+ import { jsx as jsx29, jsxs as jsxs16 } from "react/jsx-runtime";
31014
31054
  function LocationMapView({
31015
31055
  addressText,
31016
31056
  location: location2,
@@ -31024,7 +31064,7 @@ function LocationMapView({
31024
31064
  }) {
31025
31065
  const directionsUrl = buildGoogleMapsDirectionsUrl({ addressText, location: location2 });
31026
31066
  if (!location2 && !addressText && !directionsUrl) {
31027
- return /* @__PURE__ */ jsx28("p", { className: "rb-caption", style: textColorStyle("mutedText"), children: unresolvedMessage ?? "Location details coming soon." });
31067
+ return /* @__PURE__ */ jsx29("p", { className: "rb-caption", style: textColorStyle("mutedText"), children: unresolvedMessage ?? "Location details coming soon." });
31028
31068
  }
31029
31069
  return /* @__PURE__ */ jsxs16("div", { className: "rb-flex rb-flex-col rb-gap-4 rb-text-left", children: [
31030
31070
  location2 && renderMap ? renderMap({
@@ -31034,8 +31074,8 @@ function LocationMapView({
31034
31074
  height: heightPx,
31035
31075
  zoom
31036
31076
  }) : null,
31037
- showAddressText && addressText ? /* @__PURE__ */ jsx28("p", { className: "rb-caption", style: textColorStyle("mutedText"), children: addressText }) : null,
31038
- showDirections && directionsUrl ? /* @__PURE__ */ jsx28(
31077
+ showAddressText && addressText ? /* @__PURE__ */ jsx29("p", { className: "rb-caption", style: textColorStyle("mutedText"), children: addressText }) : null,
31078
+ showDirections && directionsUrl ? /* @__PURE__ */ jsx29(
31039
31079
  "a",
31040
31080
  {
31041
31081
  href: directionsUrl,
@@ -31054,7 +31094,7 @@ function LocationMapView({
31054
31094
  }
31055
31095
 
31056
31096
  // ../blocks/src/system/runtime/nodes/location-map.server.tsx
31057
- import { jsx as jsx29, jsxs as jsxs17 } from "react/jsx-runtime";
31097
+ import { jsx as jsx30, jsxs as jsxs17 } from "react/jsx-runtime";
31058
31098
  function LocationMapSSR(props2) {
31059
31099
  const normalized = normalizeLocationMapProps(props2);
31060
31100
  const hydrationProps = toLocationMapHydrationProps(props2);
@@ -31065,8 +31105,8 @@ function LocationMapSSR(props2) {
31065
31105
  "data-block": "location-map",
31066
31106
  ...getIslandRootProps("location-map", props2.blockId),
31067
31107
  children: [
31068
- /* @__PURE__ */ jsx29(IslandPropsScript, { value: hydrationProps }),
31069
- /* @__PURE__ */ jsx29(
31108
+ /* @__PURE__ */ jsx30(IslandPropsScript, { value: hydrationProps }),
31109
+ /* @__PURE__ */ jsx30(
31070
31110
  LocationMapView,
31071
31111
  {
31072
31112
  addressText: normalized.addressText,
@@ -31077,7 +31117,7 @@ function LocationMapSSR(props2) {
31077
31117
  showDirections: normalized.showDirections,
31078
31118
  directionsLabel: normalized.directionsLabel,
31079
31119
  unresolvedMessage: normalized.unresolvedMessage,
31080
- renderMap: ({ addressText, className, height }) => /* @__PURE__ */ jsx29(
31120
+ renderMap: ({ addressText, className, height }) => /* @__PURE__ */ jsx30(
31081
31121
  "div",
31082
31122
  {
31083
31123
  className,
@@ -31213,12 +31253,12 @@ function formatCourseDateRange(range) {
31213
31253
  }
31214
31254
 
31215
31255
  // ../blocks/src/system/runtime/nodes/course-details/view.tsx
31216
- import { jsx as jsx30, jsxs as jsxs18 } from "react/jsx-runtime";
31256
+ import { jsx as jsx31, jsxs as jsxs18 } from "react/jsx-runtime";
31217
31257
  function TeamMemberName2({
31218
31258
  name,
31219
31259
  profilePath
31220
31260
  }) {
31221
- return profilePath ? /* @__PURE__ */ jsx30("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx30("strong", { children: name }) }) : /* @__PURE__ */ jsx30("strong", { children: name });
31261
+ return profilePath ? /* @__PURE__ */ jsx31("a", { href: profilePath, className: "rb-hover-opacity-80", children: /* @__PURE__ */ jsx31("strong", { children: name }) }) : /* @__PURE__ */ jsx31("strong", { children: name });
31222
31262
  }
31223
31263
  function parseLimit2(value, fallback2) {
31224
31264
  if (value === "all") return "all";
@@ -31239,7 +31279,7 @@ function CourseDetailsView(props2) {
31239
31279
  showMembershipNote = true
31240
31280
  } = props2;
31241
31281
  if (!course) {
31242
- return /* @__PURE__ */ jsx30("p", { className: "rb-caption status-muted", children: "Course details unavailable." });
31282
+ return /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: "Course details unavailable." });
31243
31283
  }
31244
31284
  const pricing = resolveCoursePricingState(course);
31245
31285
  const sessionLimit = parseLimit2(sessionsLimit, 10);
@@ -31249,12 +31289,12 @@ function CourseDetailsView(props2) {
31249
31289
  const descriptionDoc = showDescription ? coerceRichTextDoc(course.description) : null;
31250
31290
  const teamMembers = course.teamMembers ?? [];
31251
31291
  return /* @__PURE__ */ jsxs18("div", { className: "rb-flex rb-flex-col rb-gap-6", children: [
31252
- showTitle && /* @__PURE__ */ jsx30("h3", { children: course.title }),
31292
+ showTitle && /* @__PURE__ */ jsx31("h3", { children: course.title }),
31253
31293
  /* @__PURE__ */ jsxs18("div", { className: "rb-grid rb-grid-cols-1 rb-gap-6 rb-items-start rb-sm-grid-cols-2", children: [
31254
31294
  /* @__PURE__ */ jsxs18("div", { className: "rb-flex rb-flex-col rb-gap-4", children: [
31255
31295
  showPrice && /* @__PURE__ */ jsxs18("div", { children: [
31256
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: pricing.selectableOptions.length > 0 ? "Pricing" : "Price" }),
31257
- pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx30("div", { className: "rb-flex rb-flex-col rb-gap-2", children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs18("div", { children: [
31296
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: pricing.selectableOptions.length > 0 ? "Pricing" : "Price" }),
31297
+ pricing.selectableOptions.length > 1 ? /* @__PURE__ */ jsx31("div", { className: "rb-flex rb-flex-col rb-gap-2", children: pricing.selectableOptions.map((option) => /* @__PURE__ */ jsxs18("div", { children: [
31258
31298
  /* @__PURE__ */ jsxs18("strong", { children: [
31259
31299
  option.name,
31260
31300
  ": ",
@@ -31263,47 +31303,47 @@ function CourseDetailsView(props2) {
31263
31303
  pricing.currency
31264
31304
  )
31265
31305
  ] }),
31266
- option.description ? /* @__PURE__ */ jsx30("p", { className: "rb-caption status-muted", children: option.description }) : null
31267
- ] }, option.id)) }) : /* @__PURE__ */ jsx30("div", { children: /* @__PURE__ */ jsx30("strong", { children: formatCoursePriceDisplay(pricing.display) }) })
31306
+ option.description ? /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: option.description }) : null
31307
+ ] }, option.id)) }) : /* @__PURE__ */ jsx31("div", { children: /* @__PURE__ */ jsx31("strong", { children: formatCoursePriceDisplay(pricing.display) }) })
31268
31308
  ] }),
31269
31309
  showCapacity && /* @__PURE__ */ jsxs18("div", { children: [
31270
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: "Spots" }),
31271
- /* @__PURE__ */ jsx30("div", { children: /* @__PURE__ */ jsx30("strong", { children: course.enrollmentCapacity === null ? "Unlimited" : `${course.availableSpots ?? Math.max(0, course.enrollmentCapacity - course.enrolledCount)} left` }) })
31310
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Spots" }),
31311
+ /* @__PURE__ */ jsx31("div", { children: /* @__PURE__ */ jsx31("strong", { children: course.enrollmentCapacity === null ? "Unlimited" : `${course.availableSpots ?? Math.max(0, course.enrollmentCapacity - course.enrolledCount)} left` }) })
31272
31312
  ] }),
31273
31313
  showMembershipNote && course.acceptsMemberships && /* @__PURE__ */ jsxs18("div", { children: [
31274
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: "Membership" }),
31275
- /* @__PURE__ */ jsx30("p", { className: "rb-caption status-muted", children: "Eligible memberships can be used for free enrollment" })
31314
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Membership" }),
31315
+ /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: "Eligible memberships can be used for free enrollment" })
31276
31316
  ] }),
31277
31317
  teamMembers.length > 0 && /* @__PURE__ */ jsxs18("div", { children: [
31278
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: "Team members" }),
31279
- /* @__PURE__ */ jsx30("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs18("div", { children: [
31280
- /* @__PURE__ */ jsx30("p", { children: /* @__PURE__ */ jsx30(
31318
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Team members" }),
31319
+ /* @__PURE__ */ jsx31("div", { className: "rb-flex rb-flex-col rb-gap-3", children: teamMembers.map((teamMember) => /* @__PURE__ */ jsxs18("div", { children: [
31320
+ /* @__PURE__ */ jsx31("p", { children: /* @__PURE__ */ jsx31(
31281
31321
  TeamMemberName2,
31282
31322
  {
31283
31323
  name: teamMember.name,
31284
31324
  profilePath: teamMember.profilePath
31285
31325
  }
31286
31326
  ) }),
31287
- teamMember.summary && /* @__PURE__ */ jsx30("p", { className: "rb-caption status-muted", children: teamMember.summary })
31327
+ teamMember.summary && /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: teamMember.summary })
31288
31328
  ] }, teamMember.id)) })
31289
31329
  ] })
31290
31330
  ] }),
31291
31331
  /* @__PURE__ */ jsxs18("div", { className: "rb-flex rb-flex-col rb-gap-4", children: [
31292
31332
  showVenue && course.venue && /* @__PURE__ */ jsxs18("div", { children: [
31293
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: "Venue" }),
31294
- /* @__PURE__ */ jsx30("h3", { children: course.venue.name }),
31295
- course.venue.address && /* @__PURE__ */ jsx30("p", { className: "rb-caption status-muted", children: course.venue.address })
31333
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Venue" }),
31334
+ /* @__PURE__ */ jsx31("h3", { children: course.venue.name }),
31335
+ course.venue.address && /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: course.venue.address })
31296
31336
  ] }),
31297
31337
  showEnrollmentStatus && /* @__PURE__ */ jsxs18("div", { children: [
31298
- /* @__PURE__ */ jsx30("div", { className: "rb-label rb-mb-2", children: "Enrollment" }),
31299
- /* @__PURE__ */ jsx30("p", { className: course.enrollmentOpen ? "cd-enrollment--open" : "cd-enrollment--closed", children: /* @__PURE__ */ jsx30("strong", { children: course.enrollmentOpen ? "Open" : "Closed" }) })
31338
+ /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Enrollment" }),
31339
+ /* @__PURE__ */ jsx31("p", { className: course.enrollmentOpen ? "cd-enrollment--open" : "cd-enrollment--closed", children: /* @__PURE__ */ jsx31("strong", { children: course.enrollmentOpen ? "Open" : "Closed" }) })
31300
31340
  ] })
31301
31341
  ] })
31302
31342
  ] }),
31303
- descriptionDoc && /* @__PURE__ */ jsx30("div", { className: "cd-description", children: /* @__PURE__ */ jsx30(RichText, { doc: descriptionDoc }) }),
31343
+ descriptionDoc && /* @__PURE__ */ jsx31("div", { className: "cd-description", children: /* @__PURE__ */ jsx31(RichText, { doc: descriptionDoc }) }),
31304
31344
  showSessions && visibleSessions.length > 0 && /* @__PURE__ */ jsxs18("div", { children: [
31305
- /* @__PURE__ */ jsx30("div", { className: "rb-label", children: "Sessions" }),
31306
- /* @__PURE__ */ jsx30("div", { className: "rb-mt-2 rb-tiles-grid", children: visibleSessions.map((s) => /* @__PURE__ */ jsx30("div", { className: "rb-tile", children: /* @__PURE__ */ jsx30(DateTimeTile, { startsAt: s.startsAt, endsAt: s.endsAt }) }, s.id)) }),
31345
+ /* @__PURE__ */ jsx31("div", { className: "rb-label", children: "Sessions" }),
31346
+ /* @__PURE__ */ jsx31("div", { className: "rb-mt-2 rb-tiles-grid", children: visibleSessions.map((s) => /* @__PURE__ */ jsx31("div", { className: "rb-tile", children: /* @__PURE__ */ jsx31(DateTimeTile, { startsAt: s.startsAt, endsAt: s.endsAt }) }, s.id)) }),
31307
31347
  hasMoreSessions && /* @__PURE__ */ jsxs18("p", { className: "cd-sessions__more", children: [
31308
31348
  "Showing ",
31309
31349
  visibleSessions.length,
@@ -31316,7 +31356,7 @@ function CourseDetailsView(props2) {
31316
31356
  }
31317
31357
 
31318
31358
  // ../blocks/src/system/runtime/nodes/course-details.server.tsx
31319
- import { jsx as jsx31, jsxs as jsxs19 } from "react/jsx-runtime";
31359
+ import { jsx as jsx32, jsxs as jsxs19 } from "react/jsx-runtime";
31320
31360
  function CourseDetailsSSR({
31321
31361
  courses,
31322
31362
  contentEntry,
@@ -31355,7 +31395,7 @@ function CourseDetailsSSR({
31355
31395
  const lastPastRun = pastRuns[0] ?? null;
31356
31396
  const nonPastRuns = scopedSorted.filter(({ range }) => !(range.end && range.end <= now));
31357
31397
  return /* @__PURE__ */ jsxs19("div", { className: `course-details ${className ?? ""}`.trim(), "data-block": "course-details", children: [
31358
- selection.selected ? /* @__PURE__ */ jsx31(
31398
+ selection.selected ? /* @__PURE__ */ jsx32(
31359
31399
  CourseDetailsView,
31360
31400
  {
31361
31401
  course: selection.selected,
@@ -31371,30 +31411,30 @@ function CourseDetailsSSR({
31371
31411
  }
31372
31412
  ) : selection.scoped.length > 0 ? /* @__PURE__ */ jsxs19("div", { className: "rb-flex rb-flex-col rb-gap-3", children: [
31373
31413
  /* @__PURE__ */ jsxs19("div", { children: [
31374
- /* @__PURE__ */ jsx31("div", { className: "rb-label rb-mb-2", children: "Upcoming runs" }),
31375
- /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: "Choose a run to see sessions and details." })
31414
+ /* @__PURE__ */ jsx32("div", { className: "rb-label rb-mb-2", children: "Upcoming runs" }),
31415
+ /* @__PURE__ */ jsx32("p", { className: "rb-caption status-muted", children: "Choose a run to see sessions and details." })
31376
31416
  ] }),
31377
- nonPastRuns.length > 0 ? /* @__PURE__ */ jsx31("ul", { className: "rb-flex rb-flex-col rb-gap-2", children: nonPastRuns.map(({ course, range }) => {
31417
+ nonPastRuns.length > 0 ? /* @__PURE__ */ jsx32("ul", { className: "rb-flex rb-flex-col rb-gap-2", children: nonPastRuns.map(({ course, range }) => {
31378
31418
  const start = range.start;
31379
31419
  const end = range.end;
31380
31420
  const isInProgress = Boolean(start && end && start <= now && end > now);
31381
31421
  const href = basePath ? `${basePath.replace(/\/$/, "")}/${course.slug}` : null;
31382
- return /* @__PURE__ */ jsx31("li", { className: "rb-rounded-md rb-border rb-p-3", children: /* @__PURE__ */ jsx31("div", { className: "rb-flex rb-flex-col rb-gap-1", children: /* @__PURE__ */ jsxs19("div", { className: "rb-flex rb-items-center rb-justify-between rb-gap-3", children: [
31422
+ return /* @__PURE__ */ jsx32("li", { className: "rb-rounded-md rb-border rb-p-3", children: /* @__PURE__ */ jsx32("div", { className: "rb-flex rb-flex-col rb-gap-1", children: /* @__PURE__ */ jsxs19("div", { className: "rb-flex rb-items-center rb-justify-between rb-gap-3", children: [
31383
31423
  /* @__PURE__ */ jsxs19("div", { className: "rb-min-w-0", children: [
31384
- href ? /* @__PURE__ */ jsx31("a", { href, className: "rb-truncate", children: /* @__PURE__ */ jsx31("strong", { children: course.title }) }) : /* @__PURE__ */ jsx31("div", { className: "rb-truncate", children: /* @__PURE__ */ jsx31("strong", { children: course.title }) }),
31385
- /* @__PURE__ */ jsx31("div", { className: "rb-caption status-muted", children: formatCourseDateRange(range) })
31424
+ href ? /* @__PURE__ */ jsx32("a", { href, className: "rb-truncate", children: /* @__PURE__ */ jsx32("strong", { children: course.title }) }) : /* @__PURE__ */ jsx32("div", { className: "rb-truncate", children: /* @__PURE__ */ jsx32("strong", { children: course.title }) }),
31425
+ /* @__PURE__ */ jsx32("div", { className: "rb-caption status-muted", children: formatCourseDateRange(range) })
31386
31426
  ] }),
31387
- /* @__PURE__ */ jsx31("div", { className: "rb-caption status-muted rb-shrink-0", children: course.enrollmentOpen ? "Enrollment open" : isInProgress ? "Currently in progress" : "Enrollment closed" })
31427
+ /* @__PURE__ */ jsx32("div", { className: "rb-caption status-muted rb-shrink-0", children: course.enrollmentOpen ? "Enrollment open" : isInProgress ? "Currently in progress" : "Enrollment closed" })
31388
31428
  ] }) }) }, course.id);
31389
- }) }) : /* @__PURE__ */ jsx31("p", { className: "rb-caption status-muted", children: "No upcoming runs." }),
31429
+ }) }) : /* @__PURE__ */ jsx32("p", { className: "rb-caption status-muted", children: "No upcoming runs." }),
31390
31430
  lastPastRun ? /* @__PURE__ */ jsxs19("div", { className: "rb-caption status-muted", children: [
31391
31431
  "Last run: ",
31392
- /* @__PURE__ */ jsx31("strong", { children: lastPastRun.course.title }),
31432
+ /* @__PURE__ */ jsx32("strong", { children: lastPastRun.course.title }),
31393
31433
  " (",
31394
31434
  formatCourseDateRange(lastPastRun.range),
31395
31435
  ")"
31396
31436
  ] }) : null
31397
- ] }) : /* @__PURE__ */ jsx31(
31437
+ ] }) : /* @__PURE__ */ jsx32(
31398
31438
  CourseDetailsView,
31399
31439
  {
31400
31440
  course: null,
@@ -31415,7 +31455,7 @@ function CourseDetailsSSR({
31415
31455
  var course_details_server_default = CourseDetailsSSR;
31416
31456
 
31417
31457
  // ../blocks/src/system/runtime/nodes/events/EventSpotlight.tsx
31418
- import { jsx as jsx32, jsxs as jsxs20 } from "react/jsx-runtime";
31458
+ import { jsx as jsx33, jsxs as jsxs20 } from "react/jsx-runtime";
31419
31459
  var EventSpotlight = ({
31420
31460
  events,
31421
31461
  layout = "grid",
@@ -31433,13 +31473,13 @@ var EventSpotlight = ({
31433
31473
  }) => {
31434
31474
  const normalizedEvents = events ?? [];
31435
31475
  if (normalizedEvents.length === 0) {
31436
- return /* @__PURE__ */ jsx32(EmptyState, { message: emptyMessage, className });
31476
+ return /* @__PURE__ */ jsx33(EmptyState, { message: emptyMessage, className });
31437
31477
  }
31438
31478
  const containerClass = getContainerClass(layout, columns);
31439
31479
  const cardOrientation = getCardOrientation(layout);
31440
31480
  const buttonClass = themeButtonClassName({ variant: buttonVariant, size: "md" });
31441
31481
  return /* @__PURE__ */ jsxs20("div", { className: `event-spotlight-section ${className || ""}`, "data-block": "event-spotlight", children: [
31442
- /* @__PURE__ */ jsx32("div", { className: `event-spotlight ${containerClass}`, children: normalizedEvents.map((event) => /* @__PURE__ */ jsx32(
31482
+ /* @__PURE__ */ jsx33("div", { className: `event-spotlight ${containerClass}`, children: normalizedEvents.map((event) => /* @__PURE__ */ jsx33(
31443
31483
  EventCard,
31444
31484
  {
31445
31485
  event,
@@ -31453,93 +31493,93 @@ var EventSpotlight = ({
31453
31493
  },
31454
31494
  event.occurrenceId || event.id
31455
31495
  )) }),
31456
- ctaLabel && ctaUrl ? /* @__PURE__ */ jsx32("div", { className: "rb-mt-8 rb-text-center", children: /* @__PURE__ */ jsx32("a", { href: ctaUrl, className: buttonClass, children: ctaLabel }) }) : null
31496
+ ctaLabel && ctaUrl ? /* @__PURE__ */ jsx33("div", { className: "rb-mt-8 rb-text-center", children: /* @__PURE__ */ jsx33("a", { href: ctaUrl, className: buttonClass, children: ctaLabel }) }) : null
31457
31497
  ] });
31458
31498
  };
31459
31499
 
31460
31500
  // ../blocks/src/system/runtime/nodes/events/EventCombined.interactive.ts
31461
- import { z as z63 } from "zod";
31462
- var eventBlockKindSchema3 = z63.enum(eventBlockKindValues);
31463
- var eventSurfaceScopeSchema3 = z63.enum(eventSurfaceScopeValues);
31464
- var eventScheduleScopeSchema4 = z63.enum(eventScheduleScopeValues);
31465
- var eventCombinedSourceSchema = z63.object(
31501
+ import { z as z64 } from "zod";
31502
+ var eventBlockKindSchema3 = z64.enum(eventBlockKindValues);
31503
+ var eventSurfaceScopeSchema3 = z64.enum(eventSurfaceScopeValues);
31504
+ var eventScheduleScopeSchema4 = z64.enum(eventScheduleScopeValues);
31505
+ var eventCombinedSourceSchema = z64.object(
31466
31506
  {
31467
- events: z63.array(publicEventSchema).nullable().optional(),
31468
- siteId: z63.string(),
31469
- apiBaseUrl: z63.string().optional(),
31507
+ events: z64.array(publicEventSchema).nullable().optional(),
31508
+ siteId: z64.string(),
31509
+ apiBaseUrl: z64.string().optional(),
31470
31510
  stage: previewStageSchema.optional(),
31471
31511
  listLayout: eventLayoutSchema.optional(),
31472
31512
  listColumns: columnOptionSchema.optional(),
31473
- eventsPerPage: z63.string().optional(),
31474
- compactEventsPerPage: z63.string().optional(),
31475
- loadMoreText: z63.string().optional(),
31513
+ eventsPerPage: z64.string().optional(),
31514
+ compactEventsPerPage: z64.string().optional(),
31515
+ loadMoreText: z64.string().optional(),
31476
31516
  startOfWeek: weekStartSchema.optional(),
31477
31517
  calendarTabViews: calendarTabViewsSchema.optional(),
31478
- showFilters: z63.boolean().nullable().optional(),
31518
+ showFilters: z64.boolean().nullable().optional(),
31479
31519
  showCategoryFilter: filterAutoShowSchema.optional(),
31480
- showVenueFilter: z63.boolean().nullable().optional(),
31481
- showStaffFilter: z63.boolean().nullable().optional(),
31520
+ showVenueFilter: z64.boolean().nullable().optional(),
31521
+ showStaffFilter: z64.boolean().nullable().optional(),
31482
31522
  eventKind: eventBlockKindSchema3.nullable().optional(),
31483
31523
  eventSurface: eventSurfaceScopeSchema3.nullable().optional(),
31484
- filterEventPresets: z63.union([z63.string(), z63.array(z63.string())]).nullable().optional(),
31524
+ filterEventPresets: z64.union([z64.string(), z64.array(z64.string())]).nullable().optional(),
31485
31525
  scheduleScope: eventScheduleScopeSchema4.nullable().optional(),
31486
- filterCategoryIds: z63.union([z63.string(), z63.array(z63.string())]).nullable().optional(),
31487
- filterStaffMemberId: z63.string().nullable().optional(),
31488
- filterVenueId: z63.string().nullable().optional(),
31489
- showVenue: z63.boolean().nullable().optional(),
31490
- showMap: z63.boolean().nullable().optional(),
31491
- showCapacity: z63.boolean().nullable().optional(),
31526
+ filterCategoryIds: z64.union([z64.string(), z64.array(z64.string())]).nullable().optional(),
31527
+ filterStaffMemberId: z64.string().nullable().optional(),
31528
+ filterVenueId: z64.string().nullable().optional(),
31529
+ showVenue: z64.boolean().nullable().optional(),
31530
+ showMap: z64.boolean().nullable().optional(),
31531
+ showCapacity: z64.boolean().nullable().optional(),
31492
31532
  buttonVariant: eventButtonVariantSchema.optional(),
31493
- buttonText: z63.string().optional(),
31494
- emptyMessage: z63.string().optional(),
31495
- className: z63.string().optional()
31533
+ buttonText: z64.string().optional(),
31534
+ emptyMessage: z64.string().optional(),
31535
+ className: z64.string().optional()
31496
31536
  }
31497
31537
  );
31498
- var eventCombinedDisplaySchema = z63.object({
31499
- kind: z63.literal("event-combined"),
31500
- className: z63.string().nullable(),
31501
- events: z63.array(publicEventSchema),
31538
+ var eventCombinedDisplaySchema = z64.object({
31539
+ kind: z64.literal("event-combined"),
31540
+ className: z64.string().nullable(),
31541
+ events: z64.array(publicEventSchema),
31502
31542
  listLayout: eventLayoutSchema,
31503
31543
  listColumns: columnOptionSchema,
31504
- eventsPerPage: z63.string(),
31505
- loadMoreText: z63.string(),
31544
+ eventsPerPage: z64.string(),
31545
+ loadMoreText: z64.string(),
31506
31546
  startOfWeek: weekStartSchema,
31507
31547
  calendarTabViews: calendarTabViewsSchema,
31508
- showFilters: z63.boolean(),
31548
+ showFilters: z64.boolean(),
31509
31549
  showCategoryFilter: filterAutoShowSchema,
31510
- showVenueFilter: z63.boolean(),
31511
- showStaffFilter: z63.boolean(),
31550
+ showVenueFilter: z64.boolean(),
31551
+ showStaffFilter: z64.boolean(),
31512
31552
  eventKind: eventBlockKindSchema3,
31513
31553
  eventSurface: eventSurfaceScopeSchema3,
31514
- filterEventPresets: z63.string().nullable(),
31554
+ filterEventPresets: z64.string().nullable(),
31515
31555
  scheduleScope: eventScheduleScopeSchema4,
31516
- filterCategoryIds: z63.string().nullable(),
31517
- filterStaffMemberId: z63.string().nullable(),
31518
- filterVenueId: z63.string().nullable(),
31519
- showVenue: z63.boolean(),
31520
- showMap: z63.boolean(),
31521
- showCapacity: z63.boolean(),
31556
+ filterCategoryIds: z64.string().nullable(),
31557
+ filterStaffMemberId: z64.string().nullable(),
31558
+ filterVenueId: z64.string().nullable(),
31559
+ showVenue: z64.boolean(),
31560
+ showMap: z64.boolean(),
31561
+ showCapacity: z64.boolean(),
31522
31562
  buttonVariant: eventButtonVariantSchema,
31523
- buttonText: z63.string(),
31524
- emptyMessage: z63.string()
31563
+ buttonText: z64.string(),
31564
+ emptyMessage: z64.string()
31525
31565
  });
31526
- var eventCombinedHydrationSchema = z63.object({
31527
- siteId: z63.string(),
31566
+ var eventCombinedHydrationSchema = z64.object({
31567
+ siteId: z64.string(),
31528
31568
  stage: previewStageSchema.optional(),
31529
- prefetchedEvents: z63.boolean(),
31569
+ prefetchedEvents: z64.boolean(),
31530
31570
  eventKind: eventBlockKindSchema3,
31531
31571
  eventSurface: eventSurfaceScopeSchema3,
31532
- filterEventPresets: z63.string().nullable(),
31572
+ filterEventPresets: z64.string().nullable(),
31533
31573
  scheduleScope: eventScheduleScopeSchema4
31534
31574
  });
31535
- var eventCombinedRenderSchema = z63.object({
31575
+ var eventCombinedRenderSchema = z64.object({
31536
31576
  display: eventCombinedDisplaySchema,
31537
31577
  hydration: eventCombinedHydrationSchema
31538
31578
  });
31539
31579
  var eventCombinedIslandMetaCodec = createZodCodec(
31540
- z63.object({
31541
- siteId: z63.string(),
31542
- apiBaseUrl: z63.string().optional(),
31580
+ z64.object({
31581
+ siteId: z64.string(),
31582
+ apiBaseUrl: z64.string().optional(),
31543
31583
  stage: previewStageSchema.optional()
31544
31584
  })
31545
31585
  );
@@ -31646,10 +31686,10 @@ function buildEventCombinedInteractiveIslandProps(props2) {
31646
31686
  }
31647
31687
 
31648
31688
  // ../blocks/src/system/runtime/nodes/events/shared/renderEventListItem.tsx
31649
- import { jsx as jsx33 } from "react/jsx-runtime";
31689
+ import { jsx as jsx34 } from "react/jsx-runtime";
31650
31690
  function renderEventListItem(event, display) {
31651
31691
  if (display.listLayout === "compact") {
31652
- return /* @__PURE__ */ jsx33(
31692
+ return /* @__PURE__ */ jsx34(
31653
31693
  EventCompactRow,
31654
31694
  {
31655
31695
  event,
@@ -31659,7 +31699,7 @@ function renderEventListItem(event, display) {
31659
31699
  event.occurrenceId || event.id
31660
31700
  );
31661
31701
  }
31662
- return /* @__PURE__ */ jsx33(
31702
+ return /* @__PURE__ */ jsx34(
31663
31703
  EventCard,
31664
31704
  {
31665
31705
  event,
@@ -31677,7 +31717,7 @@ function renderEventListItem(event, display) {
31677
31717
  }
31678
31718
 
31679
31719
  // ../blocks/src/system/runtime/nodes/events/EventCombined.server.tsx
31680
- import { jsx as jsx34, jsxs as jsxs21 } from "react/jsx-runtime";
31720
+ import { jsx as jsx35, jsxs as jsxs21 } from "react/jsx-runtime";
31681
31721
  var EventCombinedSSR = ({
31682
31722
  blockId,
31683
31723
  ...source
@@ -31693,9 +31733,9 @@ var EventCombinedSSR = ({
31693
31733
  "data-block": "event-combined",
31694
31734
  ...getIslandRootProps("event-combined", blockId),
31695
31735
  children: [
31696
- /* @__PURE__ */ jsx34(IslandPropsScript, { value: islandProps }),
31736
+ /* @__PURE__ */ jsx35(IslandPropsScript, { value: islandProps }),
31697
31737
  /* @__PURE__ */ jsxs21("div", { className: "nav-tabs", role: "tablist", children: [
31698
- /* @__PURE__ */ jsx34(
31738
+ /* @__PURE__ */ jsx35(
31699
31739
  "button",
31700
31740
  {
31701
31741
  type: "button",
@@ -31705,7 +31745,7 @@ var EventCombinedSSR = ({
31705
31745
  children: "List"
31706
31746
  }
31707
31747
  ),
31708
- /* @__PURE__ */ jsx34(
31748
+ /* @__PURE__ */ jsx35(
31709
31749
  "button",
31710
31750
  {
31711
31751
  type: "button",
@@ -31716,17 +31756,17 @@ var EventCombinedSSR = ({
31716
31756
  }
31717
31757
  )
31718
31758
  ] }),
31719
- /* @__PURE__ */ jsx34("div", { className: "event-combined-content", children: listDisplay.events.length === 0 ? /* @__PURE__ */ jsx34(EmptyState, { message: ssrEmptyMessage }) : /* @__PURE__ */ jsx34("div", { className: listDisplay.containerClass, children: listDisplay.events.map((event) => renderEventListItem(event, listDisplay)) }) })
31759
+ /* @__PURE__ */ jsx35("div", { className: "event-combined-content", children: listDisplay.events.length === 0 ? /* @__PURE__ */ jsx35(EmptyState, { message: ssrEmptyMessage }) : /* @__PURE__ */ jsx35("div", { className: listDisplay.containerClass, children: listDisplay.events.map((event) => renderEventListItem(event, listDisplay)) }) })
31720
31760
  ]
31721
31761
  }
31722
31762
  );
31723
31763
  };
31724
31764
 
31725
31765
  // ../blocks/src/system/runtime/nodes/commerce/shared/view.tsx
31726
- import { Fragment as Fragment4, jsx as jsx35, jsxs as jsxs22 } from "react/jsx-runtime";
31766
+ import { Fragment as Fragment4, jsx as jsx36, jsxs as jsxs22 } from "react/jsx-runtime";
31727
31767
  function ProductBadgesView({ badges }) {
31728
31768
  if (badges.length === 0) return null;
31729
- return /* @__PURE__ */ jsx35("div", { className: "rb-flex rb-flex-wrap rb-gap-2", children: badges.map((badge) => /* @__PURE__ */ jsx35(
31769
+ return /* @__PURE__ */ jsx36("div", { className: "rb-flex rb-flex-wrap rb-gap-2", children: badges.map((badge) => /* @__PURE__ */ jsx36(
31730
31770
  "span",
31731
31771
  {
31732
31772
  className: "rb-inline-flex rb-items-center rb-rounded-full rb-border rb-px-3 rb-py-1 rb-text-xs",
@@ -31739,8 +31779,8 @@ function VariantSelectView(props2) {
31739
31779
  const { options, selectedVariantId, disabled = false, onChange } = props2;
31740
31780
  if (options.length === 0) return null;
31741
31781
  return /* @__PURE__ */ jsxs22("label", { className: "rb-flex rb-flex-col rb-gap-1", children: [
31742
- /* @__PURE__ */ jsx35("span", { className: "rb-label", children: "Variant" }),
31743
- /* @__PURE__ */ jsx35(
31782
+ /* @__PURE__ */ jsx36("span", { className: "rb-label", children: "Variant" }),
31783
+ /* @__PURE__ */ jsx36(
31744
31784
  "select",
31745
31785
  {
31746
31786
  className: "form-input",
@@ -31759,30 +31799,30 @@ function VariantSelectView(props2) {
31759
31799
  function ProductCardView(props2) {
31760
31800
  const { display, layout, variantControl, actions, feedback } = props2;
31761
31801
  return /* @__PURE__ */ jsxs22("article", { className: `rb-flex rb-gap-4 rb-rounded-2xl rb-border rb-p-4 ${layout === "list" ? "rb-flex-row" : "rb-flex-col"}`, children: [
31762
- display.image ? /* @__PURE__ */ jsx35("a", { href: display.path ?? void 0, className: "rb-block rb-overflow-hidden rb-rounded-xl rb-border", children: /* @__PURE__ */ jsx35("img", { src: display.image.url, alt: display.image.alt ?? "", className: "rb-h-48 rb-w-full rb-object-cover" }) }) : null,
31802
+ display.image ? /* @__PURE__ */ jsx36("a", { href: display.path ?? void 0, className: "rb-block rb-overflow-hidden rb-rounded-xl rb-border", children: /* @__PURE__ */ jsx36("img", { src: display.image.url, alt: display.image.alt ?? "", className: "rb-h-48 rb-w-full rb-object-cover" }) }) : null,
31763
31803
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-1 rb-flex-col rb-gap-3", children: [
31764
31804
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-col rb-gap-2", children: [
31765
31805
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-items-start rb-justify-between rb-gap-3", children: [
31766
31806
  /* @__PURE__ */ jsxs22("div", { children: [
31767
- display.path ? /* @__PURE__ */ jsx35("a", { href: display.path, children: /* @__PURE__ */ jsx35("h3", { children: display.title }) }) : /* @__PURE__ */ jsx35("h3", { children: display.title }),
31768
- display.summary ? /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.summary }) : null
31807
+ display.path ? /* @__PURE__ */ jsx36("a", { href: display.path, children: /* @__PURE__ */ jsx36("h3", { children: display.title }) }) : /* @__PURE__ */ jsx36("h3", { children: display.title }),
31808
+ display.summary ? /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.summary }) : null
31769
31809
  ] }),
31770
- display.priceLabel ? /* @__PURE__ */ jsx35("div", { className: "rb-text-right", children: /* @__PURE__ */ jsx35("strong", { children: display.priceLabel }) }) : null
31810
+ display.priceLabel ? /* @__PURE__ */ jsx36("div", { className: "rb-text-right", children: /* @__PURE__ */ jsx36("strong", { children: display.priceLabel }) }) : null
31771
31811
  ] }),
31772
- /* @__PURE__ */ jsx35(ProductBadgesView, { badges: display.badges })
31812
+ /* @__PURE__ */ jsx36(ProductBadgesView, { badges: display.badges })
31773
31813
  ] }),
31774
31814
  variantControl,
31775
- /* @__PURE__ */ jsx35("div", { className: "rb-mt-auto rb-flex rb-items-center rb-gap-3", children: actions }),
31815
+ /* @__PURE__ */ jsx36("div", { className: "rb-mt-auto rb-flex rb-items-center rb-gap-3", children: actions }),
31776
31816
  feedback,
31777
- /* @__PURE__ */ jsx35("span", { className: "rb-caption status-muted", children: display.selectionLabel })
31817
+ /* @__PURE__ */ jsx36("span", { className: "rb-caption status-muted", children: display.selectionLabel })
31778
31818
  ] })
31779
31819
  ] });
31780
31820
  }
31781
31821
  function ProductListSectionView(props2) {
31782
31822
  const { display, children } = props2;
31783
31823
  return /* @__PURE__ */ jsxs22("div", { className: `shop shop--product-list ${display.className ?? ""}`.trim(), "data-block": "shop", children: [
31784
- display.heading ? /* @__PURE__ */ jsx35("h2", { children: display.heading }) : null,
31785
- display.state === "empty" ? /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.emptyMessage }) : /* @__PURE__ */ jsx35(
31824
+ display.heading ? /* @__PURE__ */ jsx36("h2", { children: display.heading }) : null,
31825
+ display.state === "empty" ? /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.emptyMessage }) : /* @__PURE__ */ jsx36(
31786
31826
  "div",
31787
31827
  {
31788
31828
  className: `rb-grid rb-gap-4 ${display.layout === "list" ? "rb-grid-cols-1" : ""}`,
@@ -31795,22 +31835,22 @@ function ProductListSectionView(props2) {
31795
31835
  function ProductDetailView(props2) {
31796
31836
  const { display, gallery, variantControl, actions, feedback, body } = props2;
31797
31837
  if (display.state === "empty") {
31798
- return /* @__PURE__ */ jsx35("div", { className: `shop shop--product-detail ${display.className ?? ""}`.trim(), "data-block": "shop", children: /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.emptyMessage }) });
31838
+ return /* @__PURE__ */ jsx36("div", { className: `shop shop--product-detail ${display.className ?? ""}`.trim(), "data-block": "shop", children: /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.emptyMessage }) });
31799
31839
  }
31800
31840
  return /* @__PURE__ */ jsxs22("div", { className: `shop shop--product-detail rb-grid rb-gap-6 rb-md-grid-cols-2 ${display.className ?? ""}`.trim(), "data-block": "shop", children: [
31801
- /* @__PURE__ */ jsx35("div", { className: "rb-flex rb-flex-col rb-gap-4", children: gallery }),
31841
+ /* @__PURE__ */ jsx36("div", { className: "rb-flex rb-flex-col rb-gap-4", children: gallery }),
31802
31842
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-col rb-gap-4", children: [
31803
- display.heading ? /* @__PURE__ */ jsx35("p", { className: "rb-label", children: display.heading }) : null,
31843
+ display.heading ? /* @__PURE__ */ jsx36("p", { className: "rb-label", children: display.heading }) : null,
31804
31844
  /* @__PURE__ */ jsxs22("div", { children: [
31805
- /* @__PURE__ */ jsx35("h2", { children: display.title }),
31806
- /* @__PURE__ */ jsx35("div", { className: "rb-mt-2", children: /* @__PURE__ */ jsx35("strong", { children: display.priceLabel }) })
31845
+ /* @__PURE__ */ jsx36("h2", { children: display.title }),
31846
+ /* @__PURE__ */ jsx36("div", { className: "rb-mt-2", children: /* @__PURE__ */ jsx36("strong", { children: display.priceLabel }) })
31807
31847
  ] }),
31808
- /* @__PURE__ */ jsx35(ProductBadgesView, { badges: display.badges }),
31809
- display.summary ? /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.summary }) : null,
31848
+ /* @__PURE__ */ jsx36(ProductBadgesView, { badges: display.badges }),
31849
+ display.summary ? /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.summary }) : null,
31810
31850
  variantControl,
31811
31851
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-items-center rb-gap-3", children: [
31812
31852
  actions,
31813
- display.categoryLabel ? /* @__PURE__ */ jsx35("span", { className: "rb-caption status-muted", children: display.categoryLabel }) : null
31853
+ display.categoryLabel ? /* @__PURE__ */ jsx36("span", { className: "rb-caption status-muted", children: display.categoryLabel }) : null
31814
31854
  ] }),
31815
31855
  feedback,
31816
31856
  body
@@ -31820,7 +31860,7 @@ function ProductDetailView(props2) {
31820
31860
  function ProductGalleryFrameView(props2) {
31821
31861
  const { gallery, renderCarousel } = props2;
31822
31862
  if (gallery.length === 0) return null;
31823
- const slides = gallery.map((image, index) => /* @__PURE__ */ jsx35("div", { className: "rb-overflow-hidden rb-rounded-xl rb-border", children: /* @__PURE__ */ jsx35(
31863
+ const slides = gallery.map((image, index) => /* @__PURE__ */ jsx36("div", { className: "rb-overflow-hidden rb-rounded-xl rb-border", children: /* @__PURE__ */ jsx36(
31824
31864
  "img",
31825
31865
  {
31826
31866
  src: image.url,
@@ -31831,23 +31871,23 @@ function ProductGalleryFrameView(props2) {
31831
31871
  if (slides.length === 1) {
31832
31872
  return slides[0] ?? null;
31833
31873
  }
31834
- return /* @__PURE__ */ jsx35(Fragment4, { children: renderCarousel(slides) });
31874
+ return /* @__PURE__ */ jsx36(Fragment4, { children: renderCarousel(slides) });
31835
31875
  }
31836
31876
  function PassCardView(props2) {
31837
31877
  return /* @__PURE__ */ jsxs22("article", { className: "shop__card shop__card--pass", children: [
31838
31878
  /* @__PURE__ */ jsxs22("div", { className: "shop__card-header", children: [
31839
- /* @__PURE__ */ jsx35("h4", { className: "shop__card-name", children: props2.display.title }),
31840
- /* @__PURE__ */ jsx35("div", { className: "shop__card-price", children: props2.display.priceLabel })
31879
+ /* @__PURE__ */ jsx36("h4", { className: "shop__card-name", children: props2.display.title }),
31880
+ /* @__PURE__ */ jsx36("div", { className: "shop__card-price", children: props2.display.priceLabel })
31841
31881
  ] }),
31842
- props2.display.description ? /* @__PURE__ */ jsx35("p", { className: "shop__card-description", children: props2.display.description }) : null,
31882
+ props2.display.description ? /* @__PURE__ */ jsx36("p", { className: "shop__card-description", children: props2.display.description }) : null,
31843
31883
  /* @__PURE__ */ jsxs22("div", { className: "shop__card-details", children: [
31844
- /* @__PURE__ */ jsx35("span", { className: "shop__card-credits", children: props2.display.creditsLabel }),
31884
+ /* @__PURE__ */ jsx36("span", { className: "shop__card-credits", children: props2.display.creditsLabel }),
31845
31885
  props2.display.perCreditLabel ? /* @__PURE__ */ jsxs22("span", { className: "shop__card-per-credit", children: [
31846
31886
  "(",
31847
31887
  props2.display.perCreditLabel,
31848
31888
  ")"
31849
31889
  ] }) : null,
31850
- props2.display.validityLabel ? /* @__PURE__ */ jsx35("span", { className: "shop__card-validity", children: props2.display.validityLabel }) : null
31890
+ props2.display.validityLabel ? /* @__PURE__ */ jsx36("span", { className: "shop__card-validity", children: props2.display.validityLabel }) : null
31851
31891
  ] }),
31852
31892
  props2.action,
31853
31893
  props2.feedback
@@ -31856,14 +31896,14 @@ function PassCardView(props2) {
31856
31896
  function MembershipCardView(props2) {
31857
31897
  return /* @__PURE__ */ jsxs22("article", { className: "shop__card shop__card--membership", children: [
31858
31898
  /* @__PURE__ */ jsxs22("div", { className: "shop__card-header", children: [
31859
- /* @__PURE__ */ jsx35("h4", { className: "shop__card-name", children: props2.display.title }),
31899
+ /* @__PURE__ */ jsx36("h4", { className: "shop__card-name", children: props2.display.title }),
31860
31900
  /* @__PURE__ */ jsxs22("div", { className: "shop__card-price", children: [
31861
31901
  props2.display.priceLabel,
31862
- /* @__PURE__ */ jsx35("span", { className: "shop__card-interval", children: props2.display.intervalLabel })
31902
+ /* @__PURE__ */ jsx36("span", { className: "shop__card-interval", children: props2.display.intervalLabel })
31863
31903
  ] })
31864
31904
  ] }),
31865
- props2.display.description ? /* @__PURE__ */ jsx35("p", { className: "shop__card-description", children: props2.display.description }) : null,
31866
- /* @__PURE__ */ jsx35("div", { className: "shop__card-details", children: /* @__PURE__ */ jsx35("span", { className: "shop__card-unlimited", children: "Unlimited classes" }) }),
31905
+ props2.display.description ? /* @__PURE__ */ jsx36("p", { className: "shop__card-description", children: props2.display.description }) : null,
31906
+ /* @__PURE__ */ jsx36("div", { className: "shop__card-details", children: /* @__PURE__ */ jsx36("span", { className: "shop__card-unlimited", children: "Unlimited classes" }) }),
31867
31907
  props2.action
31868
31908
  ] });
31869
31909
  }
@@ -31880,14 +31920,14 @@ function PassesMembershipsSectionView(props2) {
31880
31920
  style: gridStyle,
31881
31921
  children: [
31882
31922
  beforeContent,
31883
- display.state === "empty" ? /* @__PURE__ */ jsx35("p", { className: "shop__empty-text", children: display.emptyMessage }) : null,
31923
+ display.state === "empty" ? /* @__PURE__ */ jsx36("p", { className: "shop__empty-text", children: display.emptyMessage }) : null,
31884
31924
  display.passes.length > 0 ? /* @__PURE__ */ jsxs22("section", { className: "shop__section shop__section--passes", children: [
31885
- /* @__PURE__ */ jsx35("h3", { className: "shop__section-heading", children: display.passesHeading }),
31886
- /* @__PURE__ */ jsx35("div", { className: productsClass, children: passCards })
31925
+ /* @__PURE__ */ jsx36("h3", { className: "shop__section-heading", children: display.passesHeading }),
31926
+ /* @__PURE__ */ jsx36("div", { className: productsClass, children: passCards })
31887
31927
  ] }) : null,
31888
31928
  display.memberships.length > 0 ? /* @__PURE__ */ jsxs22("section", { className: "shop__section shop__section--memberships", children: [
31889
- /* @__PURE__ */ jsx35("h3", { className: "shop__section-heading", children: display.membershipsHeading }),
31890
- /* @__PURE__ */ jsx35("div", { className: productsClass, children: membershipCards })
31929
+ /* @__PURE__ */ jsx36("h3", { className: "shop__section-heading", children: display.membershipsHeading }),
31930
+ /* @__PURE__ */ jsx36("div", { className: productsClass, children: membershipCards })
31891
31931
  ] }) : null
31892
31932
  ]
31893
31933
  }
@@ -31896,41 +31936,41 @@ function PassesMembershipsSectionView(props2) {
31896
31936
  function CartShellView(props2) {
31897
31937
  const { display, renderControls, footerActions } = props2;
31898
31938
  return /* @__PURE__ */ jsxs22("div", { className: `shop shop--cart ${display.className ?? ""}`.trim(), "data-block": "shop", id: "shop-cart", children: [
31899
- display.heading ? /* @__PURE__ */ jsx35("h2", { children: display.heading }) : null,
31939
+ display.heading ? /* @__PURE__ */ jsx36("h2", { children: display.heading }) : null,
31900
31940
  display.state === "empty" ? /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-col rb-gap-2", children: [
31901
- /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.emptyMessage }),
31902
- display.supportText ? /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: display.supportText }) : null
31941
+ /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.emptyMessage }),
31942
+ display.supportText ? /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: display.supportText }) : null
31903
31943
  ] }) : /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-col rb-gap-4", children: [
31904
- /* @__PURE__ */ jsx35("div", { className: "rb-flex rb-flex-col rb-gap-3", children: display.items.map((item) => /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-items-center rb-justify-between rb-gap-4 rb-rounded-xl rb-border rb-p-4", children: [
31944
+ /* @__PURE__ */ jsx36("div", { className: "rb-flex rb-flex-col rb-gap-3", children: display.items.map((item) => /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-items-center rb-justify-between rb-gap-4 rb-rounded-xl rb-border rb-p-4", children: [
31905
31945
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-flex-col rb-gap-1", children: [
31906
- /* @__PURE__ */ jsx35("strong", { children: item.title }),
31907
- /* @__PURE__ */ jsx35("span", { className: "rb-caption status-muted", children: item.priceLabel })
31946
+ /* @__PURE__ */ jsx36("strong", { children: item.title }),
31947
+ /* @__PURE__ */ jsx36("span", { className: "rb-caption status-muted", children: item.priceLabel })
31908
31948
  ] }),
31909
- /* @__PURE__ */ jsx35("div", { className: "rb-flex rb-items-center rb-gap-2", children: renderControls ? renderControls(item) : null })
31949
+ /* @__PURE__ */ jsx36("div", { className: "rb-flex rb-items-center rb-gap-2", children: renderControls ? renderControls(item) : null })
31910
31950
  ] }, item.key)) }),
31911
31951
  /* @__PURE__ */ jsxs22("div", { className: "rb-flex rb-items-center rb-justify-between rb-gap-4", children: [
31912
31952
  /* @__PURE__ */ jsxs22("div", { children: [
31913
- /* @__PURE__ */ jsx35("strong", { children: "Subtotal" }),
31914
- /* @__PURE__ */ jsx35("div", { children: display.subtotalLabel })
31953
+ /* @__PURE__ */ jsx36("strong", { children: "Subtotal" }),
31954
+ /* @__PURE__ */ jsx36("div", { children: display.subtotalLabel })
31915
31955
  ] }),
31916
- /* @__PURE__ */ jsx35("div", { className: "rb-flex rb-gap-2", children: footerActions })
31956
+ /* @__PURE__ */ jsx36("div", { className: "rb-flex rb-gap-2", children: footerActions })
31917
31957
  ] })
31918
31958
  ] })
31919
31959
  ] });
31920
31960
  }
31921
31961
  function CheckoutShellView(props2) {
31922
31962
  return /* @__PURE__ */ jsxs22("div", { className: `shop shop--checkout ${props2.display.className ?? ""}`.trim(), "data-block": "shop", id: "shop-checkout", children: [
31923
- props2.display.heading ? /* @__PURE__ */ jsx35("h2", { children: props2.display.heading }) : null,
31963
+ props2.display.heading ? /* @__PURE__ */ jsx36("h2", { children: props2.display.heading }) : null,
31924
31964
  props2.notice,
31925
- props2.display.state === "ready" ? props2.body : /* @__PURE__ */ jsx35("p", { className: "rb-caption status-muted", children: props2.display.message })
31965
+ props2.display.state === "ready" ? props2.body : /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: props2.display.message })
31926
31966
  ] });
31927
31967
  }
31928
31968
 
31929
31969
  // ../blocks/src/system/runtime/nodes/shop-commerce.server.tsx
31930
- import { Fragment as Fragment5, jsx as jsx36, jsxs as jsxs23 } from "react/jsx-runtime";
31970
+ import { Fragment as Fragment5, jsx as jsx37, jsxs as jsxs23 } from "react/jsx-runtime";
31931
31971
  function renderServerPendingAction(label, soldOut) {
31932
31972
  return /* @__PURE__ */ jsxs23(Fragment5, { children: [
31933
- /* @__PURE__ */ jsx36(
31973
+ /* @__PURE__ */ jsx37(
31934
31974
  "button",
31935
31975
  {
31936
31976
  type: "button",
@@ -31940,16 +31980,16 @@ function renderServerPendingAction(label, soldOut) {
31940
31980
  children: soldOut ? "Sold out" : label
31941
31981
  }
31942
31982
  ),
31943
- !soldOut ? /* @__PURE__ */ jsx36("p", { className: "rb-caption status-muted", children: "Cart actions become interactive after page load." }) : null
31983
+ !soldOut ? /* @__PURE__ */ jsx37("p", { className: "rb-caption status-muted", children: "Cart actions become interactive after page load." }) : null
31944
31984
  ] });
31945
31985
  }
31946
31986
  function ProductListServerContent(props2) {
31947
- return /* @__PURE__ */ jsx36(ProductListSectionView, { display: props2.render.display, children: props2.render.display.cards.map((card) => /* @__PURE__ */ jsx36(
31987
+ return /* @__PURE__ */ jsx37(ProductListSectionView, { display: props2.render.display, children: props2.render.display.cards.map((card) => /* @__PURE__ */ jsx37(
31948
31988
  ProductCardView,
31949
31989
  {
31950
31990
  display: card,
31951
31991
  layout: props2.render.display.layout,
31952
- variantControl: /* @__PURE__ */ jsx36(
31992
+ variantControl: /* @__PURE__ */ jsx37(
31953
31993
  VariantSelectView,
31954
31994
  {
31955
31995
  options: card.variantOptions,
@@ -31959,7 +31999,7 @@ function ProductListServerContent(props2) {
31959
31999
  ),
31960
32000
  actions: /* @__PURE__ */ jsxs23(Fragment5, { children: [
31961
32001
  renderServerPendingAction(card.actionLabel, card.soldOut),
31962
- card.path ? /* @__PURE__ */ jsx36(
32002
+ card.path ? /* @__PURE__ */ jsx37(
31963
32003
  "a",
31964
32004
  {
31965
32005
  href: card.path,
@@ -31973,18 +32013,18 @@ function ProductListServerContent(props2) {
31973
32013
  )) });
31974
32014
  }
31975
32015
  function ProductDetailServerContent(props2) {
31976
- return /* @__PURE__ */ jsx36(
32016
+ return /* @__PURE__ */ jsx37(
31977
32017
  ProductDetailView,
31978
32018
  {
31979
32019
  display: props2.render.display,
31980
- gallery: props2.render.display.state === "ready" ? /* @__PURE__ */ jsx36(
32020
+ gallery: props2.render.display.state === "ready" ? /* @__PURE__ */ jsx37(
31981
32021
  ProductGalleryFrameView,
31982
32022
  {
31983
32023
  gallery: props2.render.display.gallery,
31984
- renderCarousel: (slides) => /* @__PURE__ */ jsx36(CarouselNodeSSR, { slidesToShow: 1, showDots: true, showControls: true, className: "rb-w-full", children: slides })
32024
+ renderCarousel: (slides) => /* @__PURE__ */ jsx37(CarouselNodeSSR, { slidesToShow: 1, showDots: true, showControls: true, className: "rb-w-full", children: slides })
31985
32025
  }
31986
32026
  ) : null,
31987
- variantControl: props2.render.display.state === "ready" ? /* @__PURE__ */ jsx36(
32027
+ variantControl: props2.render.display.state === "ready" ? /* @__PURE__ */ jsx37(
31988
32028
  VariantSelectView,
31989
32029
  {
31990
32030
  options: props2.render.display.variantOptions,
@@ -31996,19 +32036,19 @@ function ProductDetailServerContent(props2) {
31996
32036
  props2.render.display.actionLabel,
31997
32037
  props2.render.display.soldOut
31998
32038
  ) : null,
31999
- body: props2.render.display.state === "ready" && props2.render.display.body ? /* @__PURE__ */ jsx36("div", { className: "rb-prose rb-max-w-none", children: /* @__PURE__ */ jsx36(RichText, { doc: coerceRichTextDoc(props2.render.display.body) }) }) : null
32039
+ body: props2.render.display.state === "ready" && props2.render.display.body ? /* @__PURE__ */ jsx37("div", { className: "rb-prose rb-max-w-none", children: /* @__PURE__ */ jsx37(RichText, { doc: coerceRichTextDoc(props2.render.display.body) }) }) : null
32000
32040
  }
32001
32041
  );
32002
32042
  }
32003
32043
  function CartServerContent(props2) {
32004
- return /* @__PURE__ */ jsx36(CartShellView, { display: props2.render.display });
32044
+ return /* @__PURE__ */ jsx37(CartShellView, { display: props2.render.display });
32005
32045
  }
32006
32046
  function CheckoutServerContent(props2) {
32007
- return /* @__PURE__ */ jsx36(CheckoutShellView, { display: props2.render.display });
32047
+ return /* @__PURE__ */ jsx37(CheckoutShellView, { display: props2.render.display });
32008
32048
  }
32009
32049
 
32010
32050
  // ../blocks/src/system/runtime/nodes/cart.server.tsx
32011
- import { jsx as jsx37, jsxs as jsxs24 } from "react/jsx-runtime";
32051
+ import { jsx as jsx38, jsxs as jsxs24 } from "react/jsx-runtime";
32012
32052
  function CartSSR({
32013
32053
  blockId,
32014
32054
  siteId,
@@ -32033,8 +32073,8 @@ function CartSSR({
32033
32073
  "data-site-id": siteId ?? void 0,
32034
32074
  ...getIslandRootProps("cart", blockId),
32035
32075
  children: [
32036
- /* @__PURE__ */ jsx37(IslandPropsScript, { value: islandProps }),
32037
- /* @__PURE__ */ jsx37(CartServerContent, { render: islandProps.render }),
32076
+ /* @__PURE__ */ jsx38(IslandPropsScript, { value: islandProps }),
32077
+ /* @__PURE__ */ jsx38(CartServerContent, { render: islandProps.render }),
32038
32078
  children
32039
32079
  ]
32040
32080
  }
@@ -32043,7 +32083,7 @@ function CartSSR({
32043
32083
  var cart_server_default = CartSSR;
32044
32084
 
32045
32085
  // ../blocks/src/system/runtime/nodes/checkout.server.tsx
32046
- import { jsx as jsx38, jsxs as jsxs25 } from "react/jsx-runtime";
32086
+ import { jsx as jsx39, jsxs as jsxs25 } from "react/jsx-runtime";
32047
32087
  function CheckoutSSR({
32048
32088
  blockId,
32049
32089
  siteId,
@@ -32068,8 +32108,8 @@ function CheckoutSSR({
32068
32108
  "data-site-id": siteId ?? void 0,
32069
32109
  ...getIslandRootProps("checkout", blockId),
32070
32110
  children: [
32071
- /* @__PURE__ */ jsx38(IslandPropsScript, { value: islandProps }),
32072
- /* @__PURE__ */ jsx38(CheckoutServerContent, { render: islandProps.render }),
32111
+ /* @__PURE__ */ jsx39(IslandPropsScript, { value: islandProps }),
32112
+ /* @__PURE__ */ jsx39(CheckoutServerContent, { render: islandProps.render }),
32073
32113
  children
32074
32114
  ]
32075
32115
  }
@@ -32078,7 +32118,7 @@ function CheckoutSSR({
32078
32118
  var checkout_server_default = CheckoutSSR;
32079
32119
 
32080
32120
  // ../blocks/src/system/runtime/nodes/course-registration.server.tsx
32081
- import { jsx as jsx39, jsxs as jsxs26 } from "react/jsx-runtime";
32121
+ import { jsx as jsx40, jsxs as jsxs26 } from "react/jsx-runtime";
32082
32122
  function CourseRegistrationSSR({
32083
32123
  blockId,
32084
32124
  siteId,
@@ -32126,8 +32166,8 @@ function CourseRegistrationSSR({
32126
32166
  "data-block": "course-registration",
32127
32167
  ...getIslandRootProps("course-registration", blockId),
32128
32168
  children: [
32129
- /* @__PURE__ */ jsx39(IslandPropsScript, { value: islandProps }),
32130
- /* @__PURE__ */ jsx39("div", { className: "course-registration__summary", children: /* @__PURE__ */ jsx39("strong", { children: islandProps.render.display.summaryButtonText }) }),
32169
+ /* @__PURE__ */ jsx40(IslandPropsScript, { value: islandProps }),
32170
+ /* @__PURE__ */ jsx40("div", { className: "course-registration__summary", children: /* @__PURE__ */ jsx40("strong", { children: islandProps.render.display.summaryButtonText }) }),
32131
32171
  children
32132
32172
  ]
32133
32173
  }
@@ -32136,7 +32176,7 @@ function CourseRegistrationSSR({
32136
32176
  var course_registration_server_default = CourseRegistrationSSR;
32137
32177
 
32138
32178
  // ../blocks/src/system/runtime/nodes/gifting.server.tsx
32139
- import { jsx as jsx40, jsxs as jsxs27 } from "react/jsx-runtime";
32179
+ import { jsx as jsx41, jsxs as jsxs27 } from "react/jsx-runtime";
32140
32180
  function GiftingSSR({ blockId, ...rest }) {
32141
32181
  const islandProps = buildGiftingInteractiveIslandProps(rest);
32142
32182
  const offers = islandProps.render.hydration.offers;
@@ -32153,7 +32193,7 @@ function GiftingSSR({ blockId, ...rest }) {
32153
32193
  },
32154
32194
  ...getIslandRootProps("gifting", blockId),
32155
32195
  children: [
32156
- /* @__PURE__ */ jsx40(IslandPropsScript, { value: islandProps }),
32196
+ /* @__PURE__ */ jsx41(IslandPropsScript, { value: islandProps }),
32157
32197
  /* @__PURE__ */ jsxs27(
32158
32198
  "div",
32159
32199
  {
@@ -32163,13 +32203,13 @@ function GiftingSSR({ blockId, ...rest }) {
32163
32203
  },
32164
32204
  children: [
32165
32205
  /* @__PURE__ */ jsxs27("div", { className: "rb-grid", style: { gap: "0.5rem" }, children: [
32166
- /* @__PURE__ */ jsx40("h2", { style: { fontSize: "clamp(1.75rem, 3vw, 2.5rem)", fontWeight: 700, margin: 0 }, children: islandProps.render.display.heading }),
32167
- islandProps.render.display.intro ? /* @__PURE__ */ jsx40("p", { style: { margin: 0, color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: islandProps.render.display.intro }) : null
32206
+ /* @__PURE__ */ jsx41("h2", { style: { fontSize: "clamp(1.75rem, 3vw, 2.5rem)", fontWeight: 700, margin: 0 }, children: islandProps.render.display.heading }),
32207
+ islandProps.render.display.intro ? /* @__PURE__ */ jsx41("p", { style: { margin: 0, color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: islandProps.render.display.intro }) : null
32168
32208
  ] }),
32169
32209
  hasOffers ? /* @__PURE__ */ jsxs27("div", { className: "rb-grid", style: { gap: "1.5rem" }, children: [
32170
32210
  (offers?.giftCards.length ?? 0) > 0 ? /* @__PURE__ */ jsxs27("div", { className: "rb-grid", style: { gap: "1rem" }, children: [
32171
- /* @__PURE__ */ jsx40("h3", { style: { margin: 0, fontSize: "1.25rem", fontWeight: 700 }, children: islandProps.render.display.giftCardsHeading }),
32172
- /* @__PURE__ */ jsx40("div", { className: "rb-grid", style: { gap: "1rem" }, children: offers?.giftCards.map((offer) => /* @__PURE__ */ jsxs27(
32211
+ /* @__PURE__ */ jsx41("h3", { style: { margin: 0, fontSize: "1.25rem", fontWeight: 700 }, children: islandProps.render.display.giftCardsHeading }),
32212
+ /* @__PURE__ */ jsx41("div", { className: "rb-grid", style: { gap: "1rem" }, children: offers?.giftCards.map((offer) => /* @__PURE__ */ jsxs27(
32173
32213
  "article",
32174
32214
  {
32175
32215
  style: {
@@ -32179,16 +32219,16 @@ function GiftingSSR({ blockId, ...rest }) {
32179
32219
  background: "rgb(var(--tb-surface, 255 255 255) / 0.92)"
32180
32220
  },
32181
32221
  children: [
32182
- /* @__PURE__ */ jsx40("h4", { style: { margin: 0, fontSize: "1.05rem", fontWeight: 700 }, children: offer.title }),
32183
- offer.description ? /* @__PURE__ */ jsx40("p", { style: { margin: "0.5rem 0 0", color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: offer.description }) : null
32222
+ /* @__PURE__ */ jsx41("h4", { style: { margin: 0, fontSize: "1.05rem", fontWeight: 700 }, children: offer.title }),
32223
+ offer.description ? /* @__PURE__ */ jsx41("p", { style: { margin: "0.5rem 0 0", color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: offer.description }) : null
32184
32224
  ]
32185
32225
  },
32186
32226
  offer.id
32187
32227
  )) })
32188
32228
  ] }) : null,
32189
32229
  (offers?.vouchers.length ?? 0) > 0 ? /* @__PURE__ */ jsxs27("div", { className: "rb-grid", style: { gap: "1rem" }, children: [
32190
- /* @__PURE__ */ jsx40("h3", { style: { margin: 0, fontSize: "1.25rem", fontWeight: 700 }, children: islandProps.render.display.vouchersHeading }),
32191
- /* @__PURE__ */ jsx40("div", { className: "rb-grid", style: { gap: "1rem" }, children: offers?.vouchers.map((offer) => /* @__PURE__ */ jsxs27(
32230
+ /* @__PURE__ */ jsx41("h3", { style: { margin: 0, fontSize: "1.25rem", fontWeight: 700 }, children: islandProps.render.display.vouchersHeading }),
32231
+ /* @__PURE__ */ jsx41("div", { className: "rb-grid", style: { gap: "1rem" }, children: offers?.vouchers.map((offer) => /* @__PURE__ */ jsxs27(
32192
32232
  "article",
32193
32233
  {
32194
32234
  style: {
@@ -32198,14 +32238,14 @@ function GiftingSSR({ blockId, ...rest }) {
32198
32238
  background: "rgb(var(--tb-surface, 255 255 255) / 0.92)"
32199
32239
  },
32200
32240
  children: [
32201
- /* @__PURE__ */ jsx40("h4", { style: { margin: 0, fontSize: "1.05rem", fontWeight: 700 }, children: offer.title }),
32202
- offer.description ? /* @__PURE__ */ jsx40("p", { style: { margin: "0.5rem 0 0", color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: offer.description }) : null
32241
+ /* @__PURE__ */ jsx41("h4", { style: { margin: 0, fontSize: "1.05rem", fontWeight: 700 }, children: offer.title }),
32242
+ offer.description ? /* @__PURE__ */ jsx41("p", { style: { margin: "0.5rem 0 0", color: "rgb(var(--tb-text, 17 24 39) / 0.72)" }, children: offer.description }) : null
32203
32243
  ]
32204
32244
  },
32205
32245
  offer.id
32206
32246
  )) })
32207
32247
  ] }) : null
32208
- ] }) : /* @__PURE__ */ jsx40("p", { style: { margin: 0 }, children: islandProps.render.display.emptyStateText })
32248
+ ] }) : /* @__PURE__ */ jsx41("p", { style: { margin: 0 }, children: islandProps.render.display.emptyStateText })
32209
32249
  ]
32210
32250
  }
32211
32251
  )
@@ -32216,12 +32256,12 @@ function GiftingSSR({ blockId, ...rest }) {
32216
32256
  var gifting_server_default = GiftingSSR;
32217
32257
 
32218
32258
  // ../blocks/src/system/runtime/nodes/events/EventListing.view.tsx
32219
- import { jsx as jsx41, jsxs as jsxs28 } from "react/jsx-runtime";
32259
+ import { jsx as jsx42, jsxs as jsxs28 } from "react/jsx-runtime";
32220
32260
  function EventListingFrameView(props2) {
32221
32261
  const { display, filters, emptyState: emptyState4, footer, renderEventCard: renderEventCard2 } = props2;
32222
32262
  return /* @__PURE__ */ jsxs28("div", { className: `event-listing ${display.className ?? ""}`, "data-block": "event-listing", children: [
32223
32263
  filters,
32224
- display.state === "loading" ? /* @__PURE__ */ jsx41(EmptyState, { message: display.loadingMessage }) : display.state === "empty" ? emptyState4 ?? /* @__PURE__ */ jsx41(EmptyState, { message: display.emptyMessage }) : /* @__PURE__ */ jsx41("div", { className: display.containerClass, children: display.events.map((event) => renderEventCard2(event)) }),
32264
+ display.state === "loading" ? /* @__PURE__ */ jsx42(EmptyState, { message: display.loadingMessage }) : display.state === "empty" ? emptyState4 ?? /* @__PURE__ */ jsx42(EmptyState, { message: display.emptyMessage }) : /* @__PURE__ */ jsx42("div", { className: display.containerClass, children: display.events.map((event) => renderEventCard2(event)) }),
32225
32265
  footer
32226
32266
  ] });
32227
32267
  }
@@ -32298,7 +32338,7 @@ function formatShortDayLabel(date) {
32298
32338
  }
32299
32339
 
32300
32340
  // ../blocks/src/system/runtime/nodes/events/EventCalendar.server.tsx
32301
- import { jsx as jsx42, jsxs as jsxs29 } from "react/jsx-runtime";
32341
+ import { jsx as jsx43, jsxs as jsxs29 } from "react/jsx-runtime";
32302
32342
  function assertNeverDisplayMode(value) {
32303
32343
  throw new Error(`Unsupported event-calendar displayMode: ${String(value)}`);
32304
32344
  }
@@ -32312,7 +32352,7 @@ function renderCombinedSsr(display, prefetchedEvents) {
32312
32352
  const listDisplay = buildEventCalendarListingDisplay(display, prefetchedEvents, "event-combined-content");
32313
32353
  return /* @__PURE__ */ jsxs29("div", { className: clsx_default("event-combined", display.className ?? void 0), "data-block": "event-combined", children: [
32314
32354
  /* @__PURE__ */ jsxs29("div", { className: "nav-tabs", role: "tablist", children: [
32315
- /* @__PURE__ */ jsx42(
32355
+ /* @__PURE__ */ jsx43(
32316
32356
  "button",
32317
32357
  {
32318
32358
  type: "button",
@@ -32322,7 +32362,7 @@ function renderCombinedSsr(display, prefetchedEvents) {
32322
32362
  children: "List"
32323
32363
  }
32324
32364
  ),
32325
- /* @__PURE__ */ jsx42(
32365
+ /* @__PURE__ */ jsx43(
32326
32366
  "button",
32327
32367
  {
32328
32368
  type: "button",
@@ -32333,7 +32373,7 @@ function renderCombinedSsr(display, prefetchedEvents) {
32333
32373
  }
32334
32374
  )
32335
32375
  ] }),
32336
- /* @__PURE__ */ jsx42(
32376
+ /* @__PURE__ */ jsx43(
32337
32377
  EventListingFrameView,
32338
32378
  {
32339
32379
  display: listDisplay,
@@ -32344,7 +32384,7 @@ function renderCombinedSsr(display, prefetchedEvents) {
32344
32384
  }
32345
32385
  function renderListSsr(display, prefetchedEvents) {
32346
32386
  const listDisplay = buildEventCalendarListingDisplay(display, prefetchedEvents);
32347
- return /* @__PURE__ */ jsx42(
32387
+ return /* @__PURE__ */ jsx43(
32348
32388
  EventListingFrameView,
32349
32389
  {
32350
32390
  display: listDisplay,
@@ -32362,27 +32402,27 @@ function renderCalendarGrid(display) {
32362
32402
  return /* @__PURE__ */ jsxs29("div", { className: clsx_default("event-calendar", display.className ?? void 0), "data-block": "event-calendar", children: [
32363
32403
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-header", children: [
32364
32404
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-nav", children: [
32365
- /* @__PURE__ */ jsx42(
32405
+ /* @__PURE__ */ jsx43(
32366
32406
  "button",
32367
32407
  {
32368
32408
  type: "button",
32369
32409
  className: "event-calendar-nav-btn",
32370
32410
  "aria-label": calendarView === "week" ? "Previous week" : "Previous month",
32371
- children: /* @__PURE__ */ jsx42("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx42("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
32411
+ children: /* @__PURE__ */ jsx43("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx43("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
32372
32412
  }
32373
32413
  ),
32374
- /* @__PURE__ */ jsx42("h3", { className: "event-calendar-title", children: headerTitle }),
32375
- /* @__PURE__ */ jsx42(
32414
+ /* @__PURE__ */ jsx43("h3", { className: "event-calendar-title", children: headerTitle }),
32415
+ /* @__PURE__ */ jsx43(
32376
32416
  "button",
32377
32417
  {
32378
32418
  type: "button",
32379
32419
  className: "event-calendar-nav-btn",
32380
32420
  "aria-label": calendarView === "week" ? "Next week" : "Next month",
32381
- children: /* @__PURE__ */ jsx42("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx42("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
32421
+ children: /* @__PURE__ */ jsx43("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx43("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
32382
32422
  }
32383
32423
  )
32384
32424
  ] }),
32385
- /* @__PURE__ */ jsx42(
32425
+ /* @__PURE__ */ jsx43(
32386
32426
  "button",
32387
32427
  {
32388
32428
  type: "button",
@@ -32395,8 +32435,8 @@ function renderCalendarGrid(display) {
32395
32435
  )
32396
32436
  ] }),
32397
32437
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-container", children: [
32398
- /* @__PURE__ */ jsx42("div", { className: "event-calendar-day-headers", children: dayNames.map((day) => /* @__PURE__ */ jsx42("div", { className: "event-calendar-day-header", children: day }, day)) }),
32399
- /* @__PURE__ */ jsx42("div", { className: "event-calendar-grid", children: calendarDays.map((date) => {
32438
+ /* @__PURE__ */ jsx43("div", { className: "event-calendar-day-headers", children: dayNames.map((day) => /* @__PURE__ */ jsx43("div", { className: "event-calendar-day-header", children: day }, day)) }),
32439
+ /* @__PURE__ */ jsx43("div", { className: "event-calendar-grid", children: calendarDays.map((date) => {
32400
32440
  const dateKey = formatDateKey2(date);
32401
32441
  const dayEvents = eventsByDate.get(dateKey) || [];
32402
32442
  const isCurrentMonth = date.getMonth() === viewDate.getMonth();
@@ -32407,7 +32447,7 @@ function renderCalendarGrid(display) {
32407
32447
  today && "event-calendar-day--today"
32408
32448
  );
32409
32449
  return /* @__PURE__ */ jsxs29("div", { className: dayClasses, children: [
32410
- /* @__PURE__ */ jsx42("div", { className: "event-calendar-day-number", children: date.getDate() }),
32450
+ /* @__PURE__ */ jsx43("div", { className: "event-calendar-day-number", children: date.getDate() }),
32411
32451
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-events", children: [
32412
32452
  dayEvents.slice(0, MAX_EVENTS_PER_DAY).map((event) => /* @__PURE__ */ jsxs29(
32413
32453
  "a",
@@ -32416,9 +32456,9 @@ function renderCalendarGrid(display) {
32416
32456
  className: "event-calendar-event",
32417
32457
  title: `${event.title} at ${formatTime(event.startsAt, { timeZone: getEventTimeZone(event) })}`,
32418
32458
  children: [
32419
- /* @__PURE__ */ jsx42("span", { className: "event-calendar-event-time", children: formatTime(event.startsAt, { timeZone: getEventTimeZone(event) }) }),
32459
+ /* @__PURE__ */ jsx43("span", { className: "event-calendar-event-time", children: formatTime(event.startsAt, { timeZone: getEventTimeZone(event) }) }),
32420
32460
  " ",
32421
- /* @__PURE__ */ jsx42("span", { className: "event-calendar-event-title", children: event.title })
32461
+ /* @__PURE__ */ jsx43("span", { className: "event-calendar-event-title", children: event.title })
32422
32462
  ]
32423
32463
  },
32424
32464
  event.occurrenceId || event.id
@@ -32432,7 +32472,7 @@ function renderCalendarGrid(display) {
32432
32472
  ] }, dateKey);
32433
32473
  }) })
32434
32474
  ] }),
32435
- display.events.length === 0 ? /* @__PURE__ */ jsx42("p", { className: "event-calendar-empty", children: display.emptyMessage }) : null
32475
+ display.events.length === 0 ? /* @__PURE__ */ jsx43("p", { className: "event-calendar-empty", children: display.emptyMessage }) : null
32436
32476
  ] });
32437
32477
  }
32438
32478
  function renderTimetableSsr(display) {
@@ -32448,27 +32488,27 @@ function renderTimetableSsr(display) {
32448
32488
  return /* @__PURE__ */ jsxs29("div", { className: clsx_default("event-calendar", "event-calendar--timetable", display.className ?? void 0), "data-block": "event-calendar", children: [
32449
32489
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-header", children: [
32450
32490
  /* @__PURE__ */ jsxs29("div", { className: "event-calendar-nav", children: [
32451
- /* @__PURE__ */ jsx42(
32491
+ /* @__PURE__ */ jsx43(
32452
32492
  "button",
32453
32493
  {
32454
32494
  type: "button",
32455
32495
  className: "event-calendar-nav-btn",
32456
32496
  "aria-label": "Previous week",
32457
- children: /* @__PURE__ */ jsx42("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx42("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
32497
+ children: /* @__PURE__ */ jsx43("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx43("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M15 19l-7-7 7-7" }) })
32458
32498
  }
32459
32499
  ),
32460
- /* @__PURE__ */ jsx42("h3", { className: "event-calendar-title", children: headerTitle }),
32461
- /* @__PURE__ */ jsx42(
32500
+ /* @__PURE__ */ jsx43("h3", { className: "event-calendar-title", children: headerTitle }),
32501
+ /* @__PURE__ */ jsx43(
32462
32502
  "button",
32463
32503
  {
32464
32504
  type: "button",
32465
32505
  className: "event-calendar-nav-btn",
32466
32506
  "aria-label": "Next week",
32467
- children: /* @__PURE__ */ jsx42("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx42("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
32507
+ children: /* @__PURE__ */ jsx43("svg", { width: "20", height: "20", fill: "none", stroke: "currentColor", strokeWidth: 2, viewBox: "0 0 24 24", children: /* @__PURE__ */ jsx43("path", { strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: 2, d: "M9 5l7 7-7 7" }) })
32468
32508
  }
32469
32509
  )
32470
32510
  ] }),
32471
- /* @__PURE__ */ jsx42(
32511
+ /* @__PURE__ */ jsx43(
32472
32512
  "button",
32473
32513
  {
32474
32514
  type: "button",
@@ -32481,7 +32521,7 @@ function renderTimetableSsr(display) {
32481
32521
  )
32482
32522
  ] }),
32483
32523
  /* @__PURE__ */ jsxs29("div", { className: "event-timetable", children: [
32484
- /* @__PURE__ */ jsx42("div", { className: "event-timetable-day-selector", "aria-label": "Choose timetable day", children: model.days.map((day) => /* @__PURE__ */ jsx42(
32524
+ /* @__PURE__ */ jsx43("div", { className: "event-timetable-day-selector", "aria-label": "Choose timetable day", children: model.days.map((day) => /* @__PURE__ */ jsx43(
32485
32525
  "button",
32486
32526
  {
32487
32527
  type: "button",
@@ -32493,10 +32533,10 @@ function renderTimetableSsr(display) {
32493
32533
  },
32494
32534
  day.dateKey
32495
32535
  )) }),
32496
- /* @__PURE__ */ jsx42("div", { className: "event-timetable-container", children: /* @__PURE__ */ jsxs29("div", { className: "event-timetable-grid", "aria-label": "Weekly timetable", children: [
32536
+ /* @__PURE__ */ jsx43("div", { className: "event-timetable-container", children: /* @__PURE__ */ jsxs29("div", { className: "event-timetable-grid", "aria-label": "Weekly timetable", children: [
32497
32537
  /* @__PURE__ */ jsxs29("div", { className: "event-timetable-time-rail", "aria-hidden": "true", children: [
32498
- /* @__PURE__ */ jsx42("div", { className: "event-timetable-day-heading" }),
32499
- /* @__PURE__ */ jsx42("div", { className: "event-timetable-time-body", children: model.hourTicks.map((hour) => /* @__PURE__ */ jsx42(
32538
+ /* @__PURE__ */ jsx43("div", { className: "event-timetable-day-heading" }),
32539
+ /* @__PURE__ */ jsx43("div", { className: "event-timetable-time-body", children: model.hourTicks.map((hour) => /* @__PURE__ */ jsx43(
32500
32540
  "div",
32501
32541
  {
32502
32542
  className: "event-timetable-time-label",
@@ -32517,7 +32557,7 @@ function renderTimetableSsr(display) {
32517
32557
  children: [
32518
32558
  /* @__PURE__ */ jsxs29("h4", { className: "event-timetable-day-heading", children: [
32519
32559
  day.label,
32520
- day.isToday ? /* @__PURE__ */ jsx42("span", { className: "event-timetable-today-badge", children: "Today" }) : null
32560
+ day.isToday ? /* @__PURE__ */ jsx43("span", { className: "event-timetable-today-badge", children: "Today" }) : null
32521
32561
  ] }),
32522
32562
  /* @__PURE__ */ jsxs29(
32523
32563
  "div",
@@ -32525,7 +32565,7 @@ function renderTimetableSsr(display) {
32525
32565
  className: "event-timetable-day-body",
32526
32566
  style: { "--event-timetable-range-minutes": String(model.rangeMinutes) },
32527
32567
  children: [
32528
- model.hourTicks.map((hour) => /* @__PURE__ */ jsx42(
32568
+ model.hourTicks.map((hour) => /* @__PURE__ */ jsx43(
32529
32569
  "div",
32530
32570
  {
32531
32571
  className: "event-timetable-hour-line",
@@ -32534,7 +32574,7 @@ function renderTimetableSsr(display) {
32534
32574
  },
32535
32575
  hour
32536
32576
  )),
32537
- day.events.length === 0 ? /* @__PURE__ */ jsx42("p", { className: "event-timetable-day-empty", children: "No classes" }) : day.events.map((cell) => /* @__PURE__ */ jsxs29(
32577
+ day.events.length === 0 ? /* @__PURE__ */ jsx43("p", { className: "event-timetable-day-empty", children: "No classes" }) : day.events.map((cell) => /* @__PURE__ */ jsxs29(
32538
32578
  "a",
32539
32579
  {
32540
32580
  href: cell.event.path,
@@ -32548,11 +32588,11 @@ function renderTimetableSsr(display) {
32548
32588
  borderColor: cell.categoryColor
32549
32589
  },
32550
32590
  children: [
32551
- /* @__PURE__ */ jsx42("span", { className: "event-timetable-event-time", children: cell.timeLabel }),
32552
- /* @__PURE__ */ jsx42("span", { className: "event-timetable-event-title", children: cell.event.title }),
32553
- cell.teacherLine ? /* @__PURE__ */ jsx42("span", { className: "event-timetable-event-teacher", children: cell.teacherLine }) : null,
32554
- cell.event.venue ? /* @__PURE__ */ jsx42("span", { className: "event-timetable-event-meta", children: cell.event.venue.name }) : null,
32555
- display.showCapacity && cell.capacityLabel ? /* @__PURE__ */ jsx42(
32591
+ /* @__PURE__ */ jsx43("span", { className: "event-timetable-event-time", children: cell.timeLabel }),
32592
+ /* @__PURE__ */ jsx43("span", { className: "event-timetable-event-title", children: cell.event.title }),
32593
+ cell.teacherLine ? /* @__PURE__ */ jsx43("span", { className: "event-timetable-event-teacher", children: cell.teacherLine }) : null,
32594
+ cell.event.venue ? /* @__PURE__ */ jsx43("span", { className: "event-timetable-event-meta", children: cell.event.venue.name }) : null,
32595
+ display.showCapacity && cell.capacityLabel ? /* @__PURE__ */ jsx43(
32556
32596
  "span",
32557
32597
  {
32558
32598
  className: clsx_default(
@@ -32574,7 +32614,7 @@ function renderTimetableSsr(display) {
32574
32614
  day.dateKey
32575
32615
  ))
32576
32616
  ] }) }),
32577
- !model.hasEvents ? /* @__PURE__ */ jsx42("p", { className: "event-timetable-empty", children: display.emptyMessage }) : null
32617
+ !model.hasEvents ? /* @__PURE__ */ jsx43("p", { className: "event-timetable-empty", children: display.emptyMessage }) : null
32578
32618
  ] })
32579
32619
  ] });
32580
32620
  }
@@ -32612,19 +32652,19 @@ var EventCalendarSSR = (props2) => {
32612
32652
  content = assertNeverDisplayMode(display.displayMode);
32613
32653
  }
32614
32654
  return /* @__PURE__ */ jsxs29("div", { ...getIslandRootProps("event-calendar", props2.blockId), children: [
32615
- /* @__PURE__ */ jsx42(IslandPropsScript, { value: islandProps }),
32655
+ /* @__PURE__ */ jsx43(IslandPropsScript, { value: islandProps }),
32616
32656
  content
32617
32657
  ] });
32618
32658
  };
32619
32659
 
32620
32660
  // ../blocks/src/system/runtime/nodes/events/EventListing.server.tsx
32621
- import { jsx as jsx43, jsxs as jsxs30 } from "react/jsx-runtime";
32661
+ import { jsx as jsx44, jsxs as jsxs30 } from "react/jsx-runtime";
32622
32662
  var EventListingSSR = (props2) => {
32623
32663
  const islandProps = buildEventListingInteractiveIslandProps(props2);
32624
32664
  const display = islandProps.render.display;
32625
32665
  return /* @__PURE__ */ jsxs30("div", { ...getIslandRootProps("event-listing", props2.blockId), children: [
32626
- /* @__PURE__ */ jsx43(IslandPropsScript, { value: islandProps }),
32627
- /* @__PURE__ */ jsx43(
32666
+ /* @__PURE__ */ jsx44(IslandPropsScript, { value: islandProps }),
32667
+ /* @__PURE__ */ jsx44(
32628
32668
  EventListingFrameView,
32629
32669
  {
32630
32670
  display,
@@ -32635,7 +32675,7 @@ var EventListingSSR = (props2) => {
32635
32675
  };
32636
32676
 
32637
32677
  // ../blocks/src/system/runtime/nodes/event-registration.server.tsx
32638
- import { jsx as jsx44, jsxs as jsxs31 } from "react/jsx-runtime";
32678
+ import { jsx as jsx45, jsxs as jsxs31 } from "react/jsx-runtime";
32639
32679
  function EventRegistrationSSR({
32640
32680
  blockId,
32641
32681
  siteId,
@@ -32682,8 +32722,8 @@ function EventRegistrationSSR({
32682
32722
  className: `event-registration ${className ?? ""}`.trim(),
32683
32723
  ...getIslandRootProps("event-registration", blockId),
32684
32724
  children: [
32685
- /* @__PURE__ */ jsx44(IslandPropsScript, { value: islandProps }),
32686
- /* @__PURE__ */ jsx44("div", { className: "event-registration__summary", children: /* @__PURE__ */ jsx44("strong", { children: islandProps.render.display.summaryButtonText }) }),
32725
+ /* @__PURE__ */ jsx45(IslandPropsScript, { value: islandProps }),
32726
+ /* @__PURE__ */ jsx45("div", { className: "event-registration__summary", children: /* @__PURE__ */ jsx45("strong", { children: islandProps.render.display.summaryButtonText }) }),
32687
32727
  children
32688
32728
  ]
32689
32729
  }
@@ -32692,7 +32732,7 @@ function EventRegistrationSSR({
32692
32732
  var event_registration_server_default = EventRegistrationSSR;
32693
32733
 
32694
32734
  // ../blocks/src/system/runtime/shared/components/FeedbackMessage.tsx
32695
- import { jsx as jsx45, jsxs as jsxs32 } from "react/jsx-runtime";
32735
+ import { jsx as jsx46, jsxs as jsxs32 } from "react/jsx-runtime";
32696
32736
  function joinClasses5(...parts) {
32697
32737
  return parts.filter((part) => typeof part === "string" && part.length > 0).join(" ");
32698
32738
  }
@@ -32716,15 +32756,15 @@ function FeedbackMessage({
32716
32756
  role,
32717
32757
  "aria-live": resolvedLive === "off" ? void 0 : resolvedLive,
32718
32758
  children: [
32719
- title ? /* @__PURE__ */ jsx45("p", { className: joinClasses5(titleClassName), "data-feedback-title": true, children: title }) : null,
32720
- shouldWrapBody ? /* @__PURE__ */ jsx45("div", { className: joinClasses5(bodyClassName), "data-feedback-body": true, children }) : children
32759
+ title ? /* @__PURE__ */ jsx46("p", { className: joinClasses5(titleClassName), "data-feedback-title": true, children: title }) : null,
32760
+ shouldWrapBody ? /* @__PURE__ */ jsx46("div", { className: joinClasses5(bodyClassName), "data-feedback-body": true, children }) : children
32721
32761
  ]
32722
32762
  }
32723
32763
  );
32724
32764
  }
32725
32765
 
32726
32766
  // ../blocks/src/system/runtime/nodes/form.server.tsx
32727
- import { jsx as jsx46, jsxs as jsxs33 } from "react/jsx-runtime";
32767
+ import { jsx as jsx47, jsxs as jsxs33 } from "react/jsx-runtime";
32728
32768
  var FormNodeSSR = ({
32729
32769
  blockId,
32730
32770
  value,
@@ -32750,8 +32790,8 @@ var FormNodeSSR = ({
32750
32790
  const form2 = display.form;
32751
32791
  if (!form2) {
32752
32792
  return /* @__PURE__ */ jsxs33("div", { ...getIslandRootProps("form", blockId), children: [
32753
- /* @__PURE__ */ jsx46(IslandPropsScript, { value: islandProps }),
32754
- /* @__PURE__ */ jsx46(FeedbackMessage, { tone: "warning", className: clsx_default("fb-empty", className), role: "status", children: "Missing or unknown form." })
32793
+ /* @__PURE__ */ jsx47(IslandPropsScript, { value: islandProps }),
32794
+ /* @__PURE__ */ jsx47(FeedbackMessage, { tone: "warning", className: clsx_default("fb-empty", className), role: "status", children: "Missing or unknown form." })
32755
32795
  ] });
32756
32796
  }
32757
32797
  const groups = display.groups;
@@ -32762,8 +32802,8 @@ var FormNodeSSR = ({
32762
32802
  const type = String(field.type ?? "text");
32763
32803
  if (type === "textarea") {
32764
32804
  return /* @__PURE__ */ jsxs33("div", { className: "fb-field", children: [
32765
- /* @__PURE__ */ jsx46("label", { htmlFor: inputId, className: "form-label", children: label }),
32766
- /* @__PURE__ */ jsx46(
32805
+ /* @__PURE__ */ jsx47("label", { htmlFor: inputId, className: "form-label", children: label }),
32806
+ /* @__PURE__ */ jsx47(
32767
32807
  "textarea",
32768
32808
  {
32769
32809
  id: inputId,
@@ -32780,19 +32820,19 @@ var FormNodeSSR = ({
32780
32820
  const options = field.options ?? [];
32781
32821
  const multiple = Boolean(field.multiple);
32782
32822
  return /* @__PURE__ */ jsxs33("div", { className: "fb-field", children: [
32783
- /* @__PURE__ */ jsx46("label", { htmlFor: inputId, className: "form-label", children: label }),
32823
+ /* @__PURE__ */ jsx47("label", { htmlFor: inputId, className: "form-label", children: label }),
32784
32824
  /* @__PURE__ */ jsxs33("select", { id: inputId, name: field.id, multiple, required, className: "form-select", children: [
32785
- !multiple && /* @__PURE__ */ jsx46("option", { value: "", children: "Select\u2026" }),
32786
- options.map((opt) => /* @__PURE__ */ jsx46("option", { value: opt.value, children: opt.label }, opt.value))
32825
+ !multiple && /* @__PURE__ */ jsx47("option", { value: "", children: "Select\u2026" }),
32826
+ options.map((opt) => /* @__PURE__ */ jsx47("option", { value: opt.value, children: opt.label }, opt.value))
32787
32827
  ] })
32788
32828
  ] }, field.id);
32789
32829
  }
32790
32830
  if (type === "radio") {
32791
32831
  const options = field.options ?? [];
32792
32832
  return /* @__PURE__ */ jsxs33("fieldset", { className: "fb-fieldset", children: [
32793
- /* @__PURE__ */ jsx46("legend", { className: "form-label", children: label }),
32833
+ /* @__PURE__ */ jsx47("legend", { className: "form-label", children: label }),
32794
32834
  options.map((opt) => /* @__PURE__ */ jsxs33("label", { className: "fb-inline form-label", children: [
32795
- /* @__PURE__ */ jsx46(
32835
+ /* @__PURE__ */ jsx47(
32796
32836
  "input",
32797
32837
  {
32798
32838
  type: "radio",
@@ -32802,14 +32842,14 @@ var FormNodeSSR = ({
32802
32842
  className: "form-radio"
32803
32843
  }
32804
32844
  ),
32805
- /* @__PURE__ */ jsx46("span", { children: opt.label })
32845
+ /* @__PURE__ */ jsx47("span", { children: opt.label })
32806
32846
  ] }, opt.value))
32807
32847
  ] }, field.id);
32808
32848
  }
32809
32849
  if (type === "checkbox" || type === "consent") {
32810
32850
  return /* @__PURE__ */ jsxs33("label", { className: "fb-inline form-label", children: [
32811
- /* @__PURE__ */ jsx46("input", { type: "checkbox", name: field.id, required, className: "form-checkbox" }),
32812
- /* @__PURE__ */ jsx46("span", { children: label })
32851
+ /* @__PURE__ */ jsx47("input", { type: "checkbox", name: field.id, required, className: "form-checkbox" }),
32852
+ /* @__PURE__ */ jsx47("span", { children: label })
32813
32853
  ] }, field.id);
32814
32854
  }
32815
32855
  const inputType = type === "email" || type === "url" || type === "tel" || type === "number" ? type : "text";
@@ -32824,8 +32864,8 @@ var FormNodeSSR = ({
32824
32864
  if (typeof field.max === "number") extra.max = field.max;
32825
32865
  }
32826
32866
  return /* @__PURE__ */ jsxs33("div", { className: "fb-field", children: [
32827
- /* @__PURE__ */ jsx46("label", { htmlFor: inputId, className: "form-label", children: label }),
32828
- /* @__PURE__ */ jsx46(
32867
+ /* @__PURE__ */ jsx47("label", { htmlFor: inputId, className: "form-label", children: label }),
32868
+ /* @__PURE__ */ jsx47(
32829
32869
  "input",
32830
32870
  {
32831
32871
  id: inputId,
@@ -32840,7 +32880,7 @@ var FormNodeSSR = ({
32840
32880
  ] }, field.id);
32841
32881
  };
32842
32882
  return /* @__PURE__ */ jsxs33("div", { ...getIslandRootProps("form", blockId), children: [
32843
- /* @__PURE__ */ jsx46(IslandPropsScript, { value: islandProps }),
32883
+ /* @__PURE__ */ jsx47(IslandPropsScript, { value: islandProps }),
32844
32884
  /* @__PURE__ */ jsxs33(
32845
32885
  "form",
32846
32886
  {
@@ -32849,15 +32889,15 @@ var FormNodeSSR = ({
32849
32889
  onSubmit,
32850
32890
  className: clsx_default("fb-form", display.className ?? void 0),
32851
32891
  children: [
32852
- /* @__PURE__ */ jsx46("input", { type: "hidden", name: "form_id", value: form2.id }),
32853
- /* @__PURE__ */ jsx46("input", { type: "text", name: "company", className: "hidden", tabIndex: -1, autoComplete: "off" }),
32892
+ /* @__PURE__ */ jsx47("input", { type: "hidden", name: "form_id", value: form2.id }),
32893
+ /* @__PURE__ */ jsx47("input", { type: "text", name: "company", className: "hidden", tabIndex: -1, autoComplete: "off" }),
32854
32894
  groups.map((group) => {
32855
32895
  if (group.type === "row") {
32856
- return /* @__PURE__ */ jsx46("div", { className: "fb-row fb-row-2", children: group.fields.map(renderField) }, group.key);
32896
+ return /* @__PURE__ */ jsx47("div", { className: "fb-row fb-row-2", children: group.fields.map(renderField) }, group.key);
32857
32897
  }
32858
32898
  return renderField(group.field);
32859
32899
  }),
32860
- /* @__PURE__ */ jsx46("div", { className: "fb-actions", children: /* @__PURE__ */ jsx46("div", { className: "fb-actions-inner", children: /* @__PURE__ */ jsx46(
32900
+ /* @__PURE__ */ jsx47("div", { className: "fb-actions", children: /* @__PURE__ */ jsx47("div", { className: "fb-actions-inner", children: /* @__PURE__ */ jsx47(
32861
32901
  "button",
32862
32902
  {
32863
32903
  type: "submit",
@@ -32876,7 +32916,7 @@ var FormNodeSSR = ({
32876
32916
  };
32877
32917
 
32878
32918
  // ../blocks/src/system/runtime/nodes/newsletter-form.server.tsx
32879
- import { jsx as jsx47, jsxs as jsxs34 } from "react/jsx-runtime";
32919
+ import { jsx as jsx48, jsxs as jsxs34 } from "react/jsx-runtime";
32880
32920
  function NewsletterFormSSR({
32881
32921
  blockId,
32882
32922
  siteId,
@@ -32911,9 +32951,9 @@ function NewsletterFormSSR({
32911
32951
  return /* @__PURE__ */ jsxs34("div", { className: "fb-field newsletter-field", children: [
32912
32952
  /* @__PURE__ */ jsxs34("label", { htmlFor: inputId, className: "form-label", children: [
32913
32953
  field.label,
32914
- field.required && /* @__PURE__ */ jsx47("span", { className: "newsletter-required", "aria-hidden": "true", children: "*" })
32954
+ field.required && /* @__PURE__ */ jsx48("span", { className: "newsletter-required", "aria-hidden": "true", children: "*" })
32915
32955
  ] }),
32916
- /* @__PURE__ */ jsx47(
32956
+ /* @__PURE__ */ jsx48(
32917
32957
  "input",
32918
32958
  {
32919
32959
  id: inputId,
@@ -32933,9 +32973,9 @@ function NewsletterFormSSR({
32933
32973
  ...getIslandRootProps("newsletter-form", blockId),
32934
32974
  className: clsx_default("newsletter-form-ssr", className),
32935
32975
  children: [
32936
- /* @__PURE__ */ jsx47(IslandPropsScript, { value: islandProps }),
32976
+ /* @__PURE__ */ jsx48(IslandPropsScript, { value: islandProps }),
32937
32977
  /* @__PURE__ */ jsxs34("form", { method: "POST", className: "newsletter-form fb-form", children: [
32938
- /* @__PURE__ */ jsx47(
32978
+ /* @__PURE__ */ jsx48(
32939
32979
  "input",
32940
32980
  {
32941
32981
  type: "text",
@@ -32948,7 +32988,7 @@ function NewsletterFormSSR({
32948
32988
  ),
32949
32989
  /* @__PURE__ */ jsxs34("div", { className: "newsletter-form-fields", children: [
32950
32990
  fields3.map(renderField),
32951
- /* @__PURE__ */ jsx47("div", { className: "newsletter-submit", children: /* @__PURE__ */ jsx47(
32991
+ /* @__PURE__ */ jsx48("div", { className: "newsletter-submit", children: /* @__PURE__ */ jsx48(
32952
32992
  "button",
32953
32993
  {
32954
32994
  type: "submit",
@@ -32957,7 +32997,7 @@ function NewsletterFormSSR({
32957
32997
  }
32958
32998
  ) })
32959
32999
  ] }),
32960
- display.privacyNote && /* @__PURE__ */ jsx47("p", { className: "newsletter-privacy-note", children: display.privacyNote })
33000
+ display.privacyNote && /* @__PURE__ */ jsx48("p", { className: "newsletter-privacy-note", children: display.privacyNote })
32961
33001
  ] })
32962
33002
  ]
32963
33003
  }
@@ -32966,7 +33006,7 @@ function NewsletterFormSSR({
32966
33006
  var newsletter_form_server_default = NewsletterFormSSR;
32967
33007
 
32968
33008
  // ../blocks/src/system/runtime/nodes/product-detail.server.tsx
32969
- import { jsx as jsx48, jsxs as jsxs35 } from "react/jsx-runtime";
33009
+ import { jsx as jsx49, jsxs as jsxs35 } from "react/jsx-runtime";
32970
33010
  function ProductDetailSSR({
32971
33011
  blockId,
32972
33012
  siteId,
@@ -32991,8 +33031,8 @@ function ProductDetailSSR({
32991
33031
  "data-site-id": siteId ?? void 0,
32992
33032
  ...getIslandRootProps("product-detail", blockId),
32993
33033
  children: [
32994
- /* @__PURE__ */ jsx48(IslandPropsScript, { value: islandProps }),
32995
- /* @__PURE__ */ jsx48(ProductDetailServerContent, { render: islandProps.render }),
33034
+ /* @__PURE__ */ jsx49(IslandPropsScript, { value: islandProps }),
33035
+ /* @__PURE__ */ jsx49(ProductDetailServerContent, { render: islandProps.render }),
32996
33036
  children
32997
33037
  ]
32998
33038
  }
@@ -33001,7 +33041,7 @@ function ProductDetailSSR({
33001
33041
  var product_detail_server_default = ProductDetailSSR;
33002
33042
 
33003
33043
  // ../blocks/src/system/runtime/nodes/product-list.server.tsx
33004
- import { jsx as jsx49, jsxs as jsxs36 } from "react/jsx-runtime";
33044
+ import { jsx as jsx50, jsxs as jsxs36 } from "react/jsx-runtime";
33005
33045
  function ProductListSSR({
33006
33046
  blockId,
33007
33047
  siteId,
@@ -33026,8 +33066,8 @@ function ProductListSSR({
33026
33066
  "data-site-id": siteId ?? void 0,
33027
33067
  ...getIslandRootProps("product-list", blockId),
33028
33068
  children: [
33029
- /* @__PURE__ */ jsx49(IslandPropsScript, { value: islandProps }),
33030
- /* @__PURE__ */ jsx49(ProductListServerContent, { render: islandProps.render }),
33069
+ /* @__PURE__ */ jsx50(IslandPropsScript, { value: islandProps }),
33070
+ /* @__PURE__ */ jsx50(ProductListServerContent, { render: islandProps.render }),
33031
33071
  children
33032
33072
  ]
33033
33073
  }
@@ -33036,7 +33076,7 @@ function ProductListSSR({
33036
33076
  var product_list_server_default = ProductListSSR;
33037
33077
 
33038
33078
  // ../blocks/src/system/runtime/nodes/shop.server.tsx
33039
- import { jsx as jsx50, jsxs as jsxs37 } from "react/jsx-runtime";
33079
+ import { jsx as jsx51, jsxs as jsxs37 } from "react/jsx-runtime";
33040
33080
  function ShopSSR({
33041
33081
  blockId,
33042
33082
  siteId,
@@ -33063,16 +33103,16 @@ function ShopSSR({
33063
33103
  "data-site-id": siteId ?? void 0,
33064
33104
  ...getIslandRootProps("shop", blockId),
33065
33105
  children: [
33066
- /* @__PURE__ */ jsx50(IslandPropsScript, { value: islandProps }),
33067
- /* @__PURE__ */ jsx50(
33106
+ /* @__PURE__ */ jsx51(IslandPropsScript, { value: islandProps }),
33107
+ /* @__PURE__ */ jsx51(
33068
33108
  PassesMembershipsSectionView,
33069
33109
  {
33070
33110
  display: render.display,
33071
- passCards: render.display.passes.map((pass) => /* @__PURE__ */ jsx50(
33111
+ passCards: render.display.passes.map((pass) => /* @__PURE__ */ jsx51(
33072
33112
  PassCardView,
33073
33113
  {
33074
33114
  display: pass,
33075
- action: /* @__PURE__ */ jsx50(
33115
+ action: /* @__PURE__ */ jsx51(
33076
33116
  "button",
33077
33117
  {
33078
33118
  type: "button",
@@ -33085,11 +33125,11 @@ function ShopSSR({
33085
33125
  },
33086
33126
  pass.id
33087
33127
  )),
33088
- membershipCards: render.display.memberships.map((membership) => /* @__PURE__ */ jsx50(
33128
+ membershipCards: render.display.memberships.map((membership) => /* @__PURE__ */ jsx51(
33089
33129
  MembershipCardView,
33090
33130
  {
33091
33131
  display: membership,
33092
- action: /* @__PURE__ */ jsx50(
33132
+ action: /* @__PURE__ */ jsx51(
33093
33133
  "button",
33094
33134
  {
33095
33135
  type: "button",
@@ -37517,7 +37557,7 @@ function transformSdkBlockToDefinition(sdkBlock) {
37517
37557
  }
37518
37558
 
37519
37559
  // ../blocks/src/PageRenderer.tsx
37520
- import { Fragment as Fragment6, jsx as jsx51 } from "react/jsx-runtime";
37560
+ import { Fragment as Fragment6, jsx as jsx52 } from "react/jsx-runtime";
37521
37561
  function PageRenderer({
37522
37562
  theme,
37523
37563
  page,
@@ -37541,12 +37581,12 @@ function PageRenderer({
37541
37581
  ]
37542
37582
  );
37543
37583
  if (!page || page.blocks.length === 0) {
37544
- return /* @__PURE__ */ jsx51("div", { className: "rb-p-6 rb-caption", style: textColorStyle("mutedText"), children: "No blocks found." });
37584
+ return /* @__PURE__ */ jsx52("div", { className: "rb-p-6 rb-caption", style: textColorStyle("mutedText"), children: "No blocks found." });
37545
37585
  }
37546
37586
  const themeTokens = providedThemeTokens ?? buildThemeRuntime(theme).tokens;
37547
37587
  const resolvedRegistry = registry ?? getDefaultComponentRegistry();
37548
37588
  setContextResolveImageUrlContext(imageResolveContext);
37549
- return /* @__PURE__ */ jsx51("div", { children: page.blocks.map((block, index) => {
37589
+ return /* @__PURE__ */ jsx52("div", { children: page.blocks.map((block, index) => {
37550
37590
  const blockKey = block.id ?? `${block.kind}-${index}`;
37551
37591
  const cleanKind = block.kind.replace(/^block\./, "");
37552
37592
  const definition = getBlockDefinition(block.kind);
@@ -37569,14 +37609,14 @@ function PageRenderer({
37569
37609
  customBlocks
37570
37610
  };
37571
37611
  if (!shouldUseWrapper) {
37572
- return /* @__PURE__ */ jsx51(MemoBlockSection, { ...blockSectionProps }, blockKey);
37612
+ return /* @__PURE__ */ jsx52(MemoBlockSection, { ...blockSectionProps }, blockKey);
37573
37613
  }
37574
37614
  const wrapperClassName = [
37575
37615
  `block-${cleanKind}`,
37576
37616
  wrapBlock ? "group relative" : null
37577
37617
  ].filter(Boolean).join(" ");
37578
37618
  const styleGroup = typeof renderableContent.styleGroup === "string" ? renderableContent.styleGroup : void 0;
37579
- return /* @__PURE__ */ jsx51(
37619
+ return /* @__PURE__ */ jsx52(
37580
37620
  "div",
37581
37621
  {
37582
37622
  className: wrapperClassName,
@@ -37586,7 +37626,7 @@ function PageRenderer({
37586
37626
  "data-variant": variantKey ?? void 0,
37587
37627
  "data-block-variant": variantKey ?? void 0,
37588
37628
  "data-style-group": styleGroup,
37589
- children: /* @__PURE__ */ jsx51(MemoBlockSection, { ...blockSectionProps })
37629
+ children: /* @__PURE__ */ jsx52(MemoBlockSection, { ...blockSectionProps })
37590
37630
  },
37591
37631
  blockKey
37592
37632
  );
@@ -37710,8 +37750,8 @@ var MemoBlockSection = React6.memo(
37710
37750
  blockId: block.id ?? null,
37711
37751
  blockKind: block.kind
37712
37752
  };
37713
- const rendered2 = /* @__PURE__ */ jsx51(OverrideComponent, { ...baseProps });
37714
- const node2 = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered2) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered2 });
37753
+ const rendered2 = /* @__PURE__ */ jsx52(OverrideComponent, { ...baseProps });
37754
+ const node2 = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered2) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered2 });
37715
37755
  return finish(node2, {
37716
37756
  outcome: "overrideWithoutDefinition",
37717
37757
  override: true,
@@ -37733,7 +37773,7 @@ var MemoBlockSection = React6.memo(
37733
37773
  const rendered = fallback(
37734
37774
  block.kind.startsWith("custom.") ? `No renderer available for block kind "${block.kind}". The custom block definition was not found (missing manifest).` : `No renderer available for block kind "${block.kind}".`
37735
37775
  );
37736
- const node = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered });
37776
+ const node = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered });
37737
37777
  return finish(node, { outcome: "missingDefinition", override: false });
37738
37778
  }
37739
37779
  const manifestHasLayout = Boolean(definition.manifest.layout) || definition.manifest.variants && Object.keys(definition.manifest.variants).length > 0;
@@ -37752,7 +37792,7 @@ var MemoBlockSection = React6.memo(
37752
37792
  const rendered = fallback(
37753
37793
  block.kind.startsWith("custom.") ? `No renderer available for block kind "${block.kind}". This custom block has no layout/variants, so it must be rendered via blockOverrides["${block.kind}"].` : `No renderer available for block kind "${block.kind}".`
37754
37794
  );
37755
- const node = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered });
37795
+ const node = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered });
37756
37796
  return finish(node, { outcome: "missingLayout", override: false });
37757
37797
  }
37758
37798
  const content = getRenderableContent(block);
@@ -37788,14 +37828,14 @@ var MemoBlockSection = React6.memo(
37788
37828
  const rendered = fallback(
37789
37829
  `Unable to render block kind "${block.kind}".`
37790
37830
  );
37791
- const node = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered });
37831
+ const node = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered });
37792
37832
  return finish(node, { outcome: "invalidPlaceholder", override: false });
37793
37833
  }
37794
37834
  } else {
37795
37835
  const rendered = fallback(
37796
37836
  `Invalid content for block kind "${block.kind}".`
37797
37837
  );
37798
- const node = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered });
37838
+ const node = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered });
37799
37839
  return finish(node, { outcome: "invalidContent", override: false });
37800
37840
  }
37801
37841
  try {
@@ -37828,7 +37868,7 @@ var MemoBlockSection = React6.memo(
37828
37868
  };
37829
37869
  let rendered;
37830
37870
  if (OverrideComponent) {
37831
- rendered = /* @__PURE__ */ jsx51(OverrideComponent, { ...baseProps });
37871
+ rendered = /* @__PURE__ */ jsx52(OverrideComponent, { ...baseProps });
37832
37872
  } else {
37833
37873
  const BlockComponent = getCachedBlockComponent(definition.manifest);
37834
37874
  const pathBase = typeof block.id === "string" && block.id.length > 0 ? `blocks.${block.id}.` : void 0;
@@ -37851,7 +37891,7 @@ var MemoBlockSection = React6.memo(
37851
37891
  };
37852
37892
  const blockBindings = block.bindings;
37853
37893
  const fragmentRegistry2 = getFragmentRegistry();
37854
- rendered = /* @__PURE__ */ jsx51(
37894
+ rendered = /* @__PURE__ */ jsx52(
37855
37895
  BlockComponent,
37856
37896
  {
37857
37897
  ...baseProps,
@@ -37865,18 +37905,18 @@ var MemoBlockSection = React6.memo(
37865
37905
  );
37866
37906
  }
37867
37907
  if (wrapBlock && block.id) {
37868
- return finish(/* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }), {
37908
+ return finish(/* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }), {
37869
37909
  override: Boolean(OverrideComponent),
37870
37910
  hasResolvedData
37871
37911
  });
37872
37912
  }
37873
- return finish(/* @__PURE__ */ jsx51(Fragment6, { children: rendered }), {
37913
+ return finish(/* @__PURE__ */ jsx52(Fragment6, { children: rendered }), {
37874
37914
  override: Boolean(OverrideComponent),
37875
37915
  hasResolvedData
37876
37916
  });
37877
37917
  } catch {
37878
37918
  const rendered = usePlaceholders ? fallback(`Unable to render block kind "${block.kind}".`) : fallback(`Invalid content for block kind "${block.kind}".`);
37879
- const node = wrapBlock && block.id ? /* @__PURE__ */ jsx51(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx51(Fragment6, { children: rendered });
37919
+ const node = wrapBlock && block.id ? /* @__PURE__ */ jsx52(Fragment6, { children: wrapBlock(block.id, rendered) }) : /* @__PURE__ */ jsx52(Fragment6, { children: rendered });
37880
37920
  return finish(node, { outcome: "exception", override: false });
37881
37921
  }
37882
37922
  },
@@ -37885,7 +37925,7 @@ var MemoBlockSection = React6.memo(
37885
37925
  }
37886
37926
  );
37887
37927
  function fallback(message) {
37888
- return /* @__PURE__ */ jsx51("div", { className: "rb-p-6 rb-caption", style: textColorStyle("mutedText"), children: message });
37928
+ return /* @__PURE__ */ jsx52("div", { className: "rb-p-6 rb-caption", style: textColorStyle("mutedText"), children: message });
37889
37929
  }
37890
37930
  function shouldDebugCustomBlocks() {
37891
37931
  try {
@@ -46928,7 +46968,7 @@ var containerResponsiveThemeCss = `/*
46928
46968
  }`;
46929
46969
 
46930
46970
  // ../theme-core/src/ThemeScopeCore.tsx
46931
- import { jsx as jsx52, jsxs as jsxs38 } from "react/jsx-runtime";
46971
+ import { jsx as jsx53, jsxs as jsxs38 } from "react/jsx-runtime";
46932
46972
  function ThemeScopeCore({
46933
46973
  cssVars,
46934
46974
  buttonCss,
@@ -46969,7 +47009,7 @@ function ThemeScopeCore({
46969
47009
  ...dataAttrs,
46970
47010
  suppressHydrationWarning,
46971
47011
  children: [
46972
- isContainerResponsive && /* @__PURE__ */ jsx52(
47012
+ isContainerResponsive && /* @__PURE__ */ jsx53(
46973
47013
  "style",
46974
47014
  {
46975
47015
  "data-container-responsive-overrides": true,
@@ -46978,70 +47018,70 @@ function ThemeScopeCore({
46978
47018
  }
46979
47019
  }
46980
47020
  ),
46981
- layoutCss && /* @__PURE__ */ jsx52(
47021
+ layoutCss && /* @__PURE__ */ jsx53(
46982
47022
  "style",
46983
47023
  {
46984
47024
  "data-layout-styles": true,
46985
47025
  dangerouslySetInnerHTML: { __html: escapeStyleContent(layoutCss) }
46986
47026
  }
46987
47027
  ),
46988
- buttonCss && /* @__PURE__ */ jsx52(
47028
+ buttonCss && /* @__PURE__ */ jsx53(
46989
47029
  "style",
46990
47030
  {
46991
47031
  "data-button-effects": true,
46992
47032
  dangerouslySetInnerHTML: { __html: escapeStyleContent(buttonCss) }
46993
47033
  }
46994
47034
  ),
46995
- headerCss && /* @__PURE__ */ jsx52(
47035
+ headerCss && /* @__PURE__ */ jsx53(
46996
47036
  "style",
46997
47037
  {
46998
47038
  "data-header-styles": true,
46999
47039
  dangerouslySetInnerHTML: { __html: escapeStyleContent(headerCss) }
47000
47040
  }
47001
47041
  ),
47002
- footerCss && /* @__PURE__ */ jsx52(
47042
+ footerCss && /* @__PURE__ */ jsx53(
47003
47043
  "style",
47004
47044
  {
47005
47045
  "data-footer-styles": true,
47006
47046
  dangerouslySetInnerHTML: { __html: escapeStyleContent(footerCss) }
47007
47047
  }
47008
47048
  ),
47009
- cardCss && /* @__PURE__ */ jsx52(
47049
+ cardCss && /* @__PURE__ */ jsx53(
47010
47050
  "style",
47011
47051
  {
47012
47052
  "data-card-styles": true,
47013
47053
  dangerouslySetInnerHTML: { __html: escapeStyleContent(cardCss) }
47014
47054
  }
47015
47055
  ),
47016
- accordionCss && /* @__PURE__ */ jsx52(
47056
+ accordionCss && /* @__PURE__ */ jsx53(
47017
47057
  "style",
47018
47058
  {
47019
47059
  "data-accordion-styles": true,
47020
47060
  dangerouslySetInnerHTML: { __html: escapeStyleContent(accordionCss) }
47021
47061
  }
47022
47062
  ),
47023
- inputCss && /* @__PURE__ */ jsx52(
47063
+ inputCss && /* @__PURE__ */ jsx53(
47024
47064
  "style",
47025
47065
  {
47026
47066
  "data-input-styles": true,
47027
47067
  dangerouslySetInnerHTML: { __html: escapeStyleContent(inputCss) }
47028
47068
  }
47029
47069
  ),
47030
- statusCss && /* @__PURE__ */ jsx52(
47070
+ statusCss && /* @__PURE__ */ jsx53(
47031
47071
  "style",
47032
47072
  {
47033
47073
  "data-status-styles": true,
47034
47074
  dangerouslySetInnerHTML: { __html: escapeStyleContent(statusCss) }
47035
47075
  }
47036
47076
  ),
47037
- progressCss && /* @__PURE__ */ jsx52(
47077
+ progressCss && /* @__PURE__ */ jsx53(
47038
47078
  "style",
47039
47079
  {
47040
47080
  "data-progress-styles": true,
47041
47081
  dangerouslySetInnerHTML: { __html: escapeStyleContent(progressCss) }
47042
47082
  }
47043
47083
  ),
47044
- typographyCss && /* @__PURE__ */ jsx52(
47084
+ typographyCss && /* @__PURE__ */ jsx53(
47045
47085
  "style",
47046
47086
  {
47047
47087
  "data-typography-styles": true,
@@ -47050,7 +47090,7 @@ function ThemeScopeCore({
47050
47090
  }
47051
47091
  }
47052
47092
  ),
47053
- eventCalendarCss && /* @__PURE__ */ jsx52(
47093
+ eventCalendarCss && /* @__PURE__ */ jsx53(
47054
47094
  "style",
47055
47095
  {
47056
47096
  "data-event-calendar-styles": true,
@@ -47059,14 +47099,14 @@ function ThemeScopeCore({
47059
47099
  }
47060
47100
  }
47061
47101
  ),
47062
- blockVarsCss && /* @__PURE__ */ jsx52(
47102
+ blockVarsCss && /* @__PURE__ */ jsx53(
47063
47103
  "style",
47064
47104
  {
47065
47105
  "data-block-vars-styles": true,
47066
47106
  dangerouslySetInnerHTML: { __html: escapeStyleContent(blockVarsCss) }
47067
47107
  }
47068
47108
  ),
47069
- blockCustomVarsCss && /* @__PURE__ */ jsx52(
47109
+ blockCustomVarsCss && /* @__PURE__ */ jsx53(
47070
47110
  "style",
47071
47111
  {
47072
47112
  "data-block-custom-vars-styles": true,
@@ -47075,7 +47115,7 @@ function ThemeScopeCore({
47075
47115
  }
47076
47116
  }
47077
47117
  ),
47078
- blockCustomCss && /* @__PURE__ */ jsx52(
47118
+ blockCustomCss && /* @__PURE__ */ jsx53(
47079
47119
  "style",
47080
47120
  {
47081
47121
  "data-block-custom-styles": true,
@@ -47084,14 +47124,14 @@ function ThemeScopeCore({
47084
47124
  }
47085
47125
  }
47086
47126
  ),
47087
- atRulesCss && /* @__PURE__ */ jsx52(
47127
+ atRulesCss && /* @__PURE__ */ jsx53(
47088
47128
  "style",
47089
47129
  {
47090
47130
  "data-at-rules-styles": true,
47091
47131
  dangerouslySetInnerHTML: { __html: escapeStyleContent(atRulesCss) }
47092
47132
  }
47093
47133
  ),
47094
- customCss && /* @__PURE__ */ jsx52(
47134
+ customCss && /* @__PURE__ */ jsx53(
47095
47135
  "style",
47096
47136
  {
47097
47137
  "data-custom-theme-styles": true,
@@ -47118,7 +47158,7 @@ function buildThemeDataAttrs(axes, themeId) {
47118
47158
  }
47119
47159
 
47120
47160
  // ../theme-core/src/ThemeScope.tsx
47121
- import { jsx as jsx53 } from "react/jsx-runtime";
47161
+ import { jsx as jsx54 } from "react/jsx-runtime";
47122
47162
  function ThemeScope({
47123
47163
  theme,
47124
47164
  children,
@@ -47128,7 +47168,7 @@ function ThemeScope({
47128
47168
  }) {
47129
47169
  const runtime = buildThemeRuntime(theme, { themeId, responsiveMode });
47130
47170
  const dataAttrs = buildThemeDataAttrs(theme.axes, themeId);
47131
- return /* @__PURE__ */ jsx53(
47171
+ return /* @__PURE__ */ jsx54(
47132
47172
  ThemeScopeCore,
47133
47173
  {
47134
47174
  cssVars: runtime.cssVars,
@@ -47178,47 +47218,47 @@ function resolveFooterRenderPlan(params) {
47178
47218
 
47179
47219
  // ../theme-core/src/ThemeFontLoader.tsx
47180
47220
  import * as React7 from "react";
47181
- import { Fragment as Fragment7, jsx as jsx54, jsxs as jsxs39 } from "react/jsx-runtime";
47221
+ import { Fragment as Fragment7, jsx as jsx55, jsxs as jsxs39 } from "react/jsx-runtime";
47182
47222
 
47183
47223
  // ../theme-core/src/siteChrome.tsx
47184
- import { Fragment as Fragment8, jsx as jsx55, jsxs as jsxs40 } from "react/jsx-runtime";
47224
+ import { Fragment as Fragment8, jsx as jsx56, jsxs as jsxs40 } from "react/jsx-runtime";
47185
47225
 
47186
47226
  // ../theme-core/src/runtime/buildThemeRuntimeFromBridge.ts
47187
- import { z as z64 } from "zod";
47188
- var themeBridgeConfigSchema = z64.object({
47189
- tokens: z64.record(z64.string(), z64.string()),
47190
- typography: z64.object({
47191
- headingFamily: z64.string().optional(),
47192
- bodyFamily: z64.string().optional(),
47193
- headingWeight: z64.number().optional(),
47194
- bodyWeight: z64.number().optional()
47227
+ import { z as z65 } from "zod";
47228
+ var themeBridgeConfigSchema = z65.object({
47229
+ tokens: z65.record(z65.string(), z65.string()),
47230
+ typography: z65.object({
47231
+ headingFamily: z65.string().optional(),
47232
+ bodyFamily: z65.string().optional(),
47233
+ headingWeight: z65.number().optional(),
47234
+ bodyWeight: z65.number().optional()
47195
47235
  }).optional(),
47196
- spacing: z64.enum(["comfortable", "standard", "dense"]).optional(),
47197
- corners: z64.enum(["square", "soft", "rounded", "pill"]).optional(),
47198
- shadows: z64.enum(["none", "low", "medium", "high"]).optional(),
47199
- components: z64.object({
47200
- buttons: z64.union([
47201
- z64.boolean(),
47202
- z64.object({
47203
- variants: z64.array(z64.enum(["primary", "secondary", "outline", "ghost"])).optional()
47236
+ spacing: z65.enum(["comfortable", "standard", "dense"]).optional(),
47237
+ corners: z65.enum(["square", "soft", "rounded", "pill"]).optional(),
47238
+ shadows: z65.enum(["none", "low", "medium", "high"]).optional(),
47239
+ components: z65.object({
47240
+ buttons: z65.union([
47241
+ z65.boolean(),
47242
+ z65.object({
47243
+ variants: z65.array(z65.enum(["primary", "secondary", "outline", "ghost"])).optional()
47204
47244
  })
47205
47245
  ]).optional(),
47206
- cards: z64.union([
47207
- z64.boolean(),
47208
- z64.object({
47209
- variants: z64.array(z64.enum(["default", "elevated", "outlined"])).optional()
47246
+ cards: z65.union([
47247
+ z65.boolean(),
47248
+ z65.object({
47249
+ variants: z65.array(z65.enum(["default", "elevated", "outlined"])).optional()
47210
47250
  })
47211
47251
  ]).optional(),
47212
- inputs: z64.boolean().optional()
47252
+ inputs: z65.boolean().optional()
47213
47253
  }).optional(),
47214
- overrides: z64.record(z64.string(), z64.string()).optional()
47254
+ overrides: z65.record(z65.string(), z65.string()).optional()
47215
47255
  }).passthrough();
47216
47256
 
47217
47257
  // ../theme-core/src/mock-themes/components/swatch.tsx
47218
- import { jsx as jsx56, jsxs as jsxs41 } from "react/jsx-runtime";
47258
+ import { jsx as jsx57, jsxs as jsxs41 } from "react/jsx-runtime";
47219
47259
 
47220
47260
  // ../theme-core/src/mock-themes/components/PaletteCard.tsx
47221
- import { jsx as jsx57, jsxs as jsxs42 } from "react/jsx-runtime";
47261
+ import { jsx as jsx58, jsxs as jsxs42 } from "react/jsx-runtime";
47222
47262
 
47223
47263
  // src/rendering/blocks-theme-runtime.ts
47224
47264
  var AXES_TONE_OPTIONS = ["minimal", "classic", "bold"];
@@ -47318,7 +47358,7 @@ function ThemeScope2(props2) {
47318
47358
  }
47319
47359
 
47320
47360
  // src/rendering/components/pageShared.tsx
47321
- import { jsx as jsx58 } from "react/jsx-runtime";
47361
+ import { jsx as jsx59 } from "react/jsx-runtime";
47322
47362
  function toPageHydrationBootstrapConfig(props2) {
47323
47363
  return {
47324
47364
  siteId: props2.siteId,
@@ -47350,7 +47390,7 @@ function PageContent({
47350
47390
  }) {
47351
47391
  const baseTokens = providedTokens ?? buildThemeRuntime2(theme).tokens;
47352
47392
  const themeTokens = sdkConfig?.theme?.palette ? { ...baseTokens, palette: { ...baseTokens.palette, ...sdkConfig.theme.palette } } : baseTokens;
47353
- const content = /* @__PURE__ */ jsx58(
47393
+ const content = /* @__PURE__ */ jsx59(
47354
47394
  PageRenderer2,
47355
47395
  {
47356
47396
  theme,
@@ -47386,16 +47426,16 @@ function PageContent({
47386
47426
  customBlocks
47387
47427
  }
47388
47428
  );
47389
- return useThemeScope ? /* @__PURE__ */ jsx58(ThemeScope2, { theme, children: content }) : content;
47429
+ return useThemeScope ? /* @__PURE__ */ jsx59(ThemeScope2, { theme, children: content }) : content;
47390
47430
  }
47391
47431
 
47392
47432
  // src/rendering/components/Page.tsx
47393
- import { Fragment as Fragment9, jsx as jsx59, jsxs as jsxs43 } from "react/jsx-runtime";
47433
+ import { Fragment as Fragment9, jsx as jsx60, jsxs as jsxs43 } from "react/jsx-runtime";
47394
47434
  var HydratorWithContextProps = BlocksIslandsHydrator;
47395
47435
  function Page(props2) {
47396
47436
  return /* @__PURE__ */ jsxs43(Fragment9, { children: [
47397
- /* @__PURE__ */ jsx59(HydratorWithContextProps, { ...toPageHydrationBootstrapConfig(props2) }),
47398
- /* @__PURE__ */ jsx59(PageContent, { ...props2 })
47437
+ /* @__PURE__ */ jsx60(HydratorWithContextProps, { ...toPageHydrationBootstrapConfig(props2) }),
47438
+ /* @__PURE__ */ jsx60(PageContent, { ...props2 })
47399
47439
  ] });
47400
47440
  }
47401
47441
 
@@ -47833,7 +47873,7 @@ function buildLogo(logo, fallbackAlt) {
47833
47873
  }
47834
47874
 
47835
47875
  // src/rendering/components/Layout.tsx
47836
- import { Fragment as Fragment10, jsx as jsx60, jsxs as jsxs44 } from "react/jsx-runtime";
47876
+ import { Fragment as Fragment10, jsx as jsx61, jsxs as jsxs44 } from "react/jsx-runtime";
47837
47877
  async function Layout({
47838
47878
  siteData: providedSiteData,
47839
47879
  client,
@@ -47935,7 +47975,7 @@ async function Layout({
47935
47975
  isSdkSite,
47936
47976
  mode: theme.footer?.mode
47937
47977
  });
47938
- const footerBlocksElement = footerPlan.renderFooterBlocks && footerBlocks.length > 0 ? /* @__PURE__ */ jsx60(
47978
+ const footerBlocksElement = footerPlan.renderFooterBlocks && footerBlocks.length > 0 ? /* @__PURE__ */ jsx61(
47939
47979
  PageRenderer2,
47940
47980
  {
47941
47981
  theme,
@@ -47980,7 +48020,7 @@ async function Layout({
47980
48020
  children,
47981
48021
  footerElement
47982
48022
  ] });
47983
- return useThemeScope ? /* @__PURE__ */ jsx60(ThemeScope2, { theme, children: content }) : content;
48023
+ return useThemeScope ? /* @__PURE__ */ jsx61(ThemeScope2, { theme, children: content }) : content;
47984
48024
  }
47985
48025
 
47986
48026
  // src/rendering/components/Block.tsx
@@ -55447,73 +55487,73 @@ var ENDPOINT_DEFINITIONS = {
55447
55487
  };
55448
55488
 
55449
55489
  // ../api/src/accessAdmin.ts
55450
- import { z as z65 } from "zod";
55451
- var managedDomainAddOnPricingSnapshotSchema = z65.object({
55452
- formulaVersion: z65.literal("managed-domain-overage-v1"),
55453
- conversionRule: z65.literal("usd-to-gbp-1-to-1-v1"),
55454
- registrarAnnualCost: z65.number().nonnegative(),
55455
- registrarCurrency: z65.literal("USD"),
55456
- includedAnnualAllowance: z65.number().nonnegative(),
55457
- includedAnnualAllowanceCurrency: z65.literal("USD"),
55458
- monthlyAmountCents: z65.number().int().nonnegative(),
55459
- monthlyCurrency: z65.literal("gbp")
55490
+ import { z as z66 } from "zod";
55491
+ var managedDomainAddOnPricingSnapshotSchema = z66.object({
55492
+ formulaVersion: z66.literal("managed-domain-overage-v1"),
55493
+ conversionRule: z66.literal("usd-to-gbp-1-to-1-v1"),
55494
+ registrarAnnualCost: z66.number().nonnegative(),
55495
+ registrarCurrency: z66.literal("USD"),
55496
+ includedAnnualAllowance: z66.number().nonnegative(),
55497
+ includedAnnualAllowanceCurrency: z66.literal("USD"),
55498
+ monthlyAmountCents: z66.number().int().nonnegative(),
55499
+ monthlyCurrency: z66.literal("gbp")
55460
55500
  });
55461
55501
 
55462
55502
  // ../api/src/navigation/contracts.ts
55463
- import { z as z66 } from "zod";
55464
- var portalLinkPayloadSchema = z66.object({
55465
- kind: z66.literal("portal"),
55466
- path: z66.string().trim().startsWith("/").optional(),
55467
- labels: z66.object({
55468
- loggedOut: z66.string().trim().min(1).optional(),
55469
- loggedIn: z66.string().trim().min(1).optional()
55503
+ import { z as z67 } from "zod";
55504
+ var portalLinkPayloadSchema = z67.object({
55505
+ kind: z67.literal("portal"),
55506
+ path: z67.string().trim().startsWith("/").optional(),
55507
+ labels: z67.object({
55508
+ loggedOut: z67.string().trim().min(1).optional(),
55509
+ loggedIn: z67.string().trim().min(1).optional()
55470
55510
  }).optional()
55471
55511
  });
55472
- var cartLinkLabelConfigSchema = z66.discriminatedUnion("kind", [
55473
- z66.object({
55474
- kind: z66.literal("icon-only")
55512
+ var cartLinkLabelConfigSchema = z67.discriminatedUnion("kind", [
55513
+ z67.object({
55514
+ kind: z67.literal("icon-only")
55475
55515
  }),
55476
- z66.object({
55477
- kind: z66.literal("icon-with-label"),
55478
- label: z66.string().trim().min(1)
55516
+ z67.object({
55517
+ kind: z67.literal("icon-with-label"),
55518
+ label: z67.string().trim().min(1)
55479
55519
  })
55480
55520
  ]);
55481
- var cartLinkPayloadSchema = z66.object({
55482
- kind: z66.literal("cart"),
55483
- badge: z66.enum(["show-count", "hidden"]),
55521
+ var cartLinkPayloadSchema = z67.object({
55522
+ kind: z67.literal("cart"),
55523
+ badge: z67.enum(["show-count", "hidden"]),
55484
55524
  label: cartLinkLabelConfigSchema
55485
55525
  });
55486
- var internalLinkPayloadSchema = z66.object({
55487
- kind: z66.literal("internal"),
55488
- routeId: z66.string().uuid(),
55489
- entityId: z66.string().uuid(),
55490
- entityType: z66.enum(["page", "content"]),
55491
- href: z66.string().min(1),
55492
- title: z66.string().min(1),
55493
- typeLabel: z66.string().min(1),
55494
- contentTypeKey: z66.string().nullable().optional(),
55495
- contentTypeName: z66.string().nullable().optional(),
55496
- updatedAt: z66.string().nullable().optional()
55526
+ var internalLinkPayloadSchema = z67.object({
55527
+ kind: z67.literal("internal"),
55528
+ routeId: z67.string().uuid(),
55529
+ entityId: z67.string().uuid(),
55530
+ entityType: z67.enum(["page", "content"]),
55531
+ href: z67.string().min(1),
55532
+ title: z67.string().min(1),
55533
+ typeLabel: z67.string().min(1),
55534
+ contentTypeKey: z67.string().nullable().optional(),
55535
+ contentTypeName: z67.string().nullable().optional(),
55536
+ updatedAt: z67.string().nullable().optional()
55497
55537
  }).passthrough();
55498
- var externalLinkSchema2 = z66.object({
55499
- kind: z66.literal("external"),
55538
+ var externalLinkSchema2 = z67.object({
55539
+ kind: z67.literal("external"),
55500
55540
  // Navigation external links are expected to be absolute URLs.
55501
- href: z66.string().url()
55541
+ href: z67.string().url()
55502
55542
  });
55503
- var customLinkSchema2 = z66.object({
55504
- kind: z66.literal("url"),
55505
- href: z66.string().min(1)
55543
+ var customLinkSchema2 = z67.object({
55544
+ kind: z67.literal("url"),
55545
+ href: z67.string().min(1)
55506
55546
  });
55507
- var pageLinkSchema2 = z66.object({
55508
- kind: z66.literal("page"),
55509
- identifier: z66.string().min(1)
55547
+ var pageLinkSchema2 = z67.object({
55548
+ kind: z67.literal("page"),
55549
+ identifier: z67.string().min(1)
55510
55550
  });
55511
- var entryLinkSchema2 = z66.object({
55512
- kind: z66.literal("entry"),
55513
- contentType: z66.string().min(1),
55514
- identifier: z66.string().min(1)
55551
+ var entryLinkSchema2 = z67.object({
55552
+ kind: z67.literal("entry"),
55553
+ contentType: z67.string().min(1),
55554
+ identifier: z67.string().min(1)
55515
55555
  });
55516
- var linkPayloadSchema = z66.discriminatedUnion("kind", [
55556
+ var linkPayloadSchema = z67.discriminatedUnion("kind", [
55517
55557
  internalLinkPayloadSchema,
55518
55558
  pageLinkSchema2,
55519
55559
  entryLinkSchema2,
@@ -55530,27 +55570,27 @@ var navigationLinkInputSchemaOptions = [
55530
55570
  portalLinkPayloadSchema,
55531
55571
  cartLinkPayloadSchema
55532
55572
  ];
55533
- var navigationLinkInputSchema = z66.discriminatedUnion(
55573
+ var navigationLinkInputSchema = z67.discriminatedUnion(
55534
55574
  "kind",
55535
55575
  navigationLinkInputSchemaOptions
55536
55576
  );
55537
55577
 
55538
55578
  // ../api/src/sdkConfig/contracts.ts
55539
- import { z as z67 } from "zod";
55579
+ import { z as z68 } from "zod";
55540
55580
  function unsafeRetypeZodSchema(schema) {
55541
55581
  return schema;
55542
55582
  }
55543
- var navIdListSchema = z67.preprocess((value) => {
55583
+ var navIdListSchema = z68.preprocess((value) => {
55544
55584
  if (!Array.isArray(value)) return void 0;
55545
55585
  const filtered = value.filter((v) => typeof v === "string" && v.trim().length > 0);
55546
55586
  return filtered.length > 0 ? filtered : void 0;
55547
- }, z67.array(z67.string()).max(200).optional());
55548
- var dashboardNavVisibilityBaseSchema = z67.object({
55549
- mode: z67.enum(["augment", "restrict"]).optional(),
55587
+ }, z68.array(z68.string()).max(200).optional());
55588
+ var dashboardNavVisibilityBaseSchema = z68.object({
55589
+ mode: z68.enum(["augment", "restrict"]).optional(),
55550
55590
  allowIds: navIdListSchema,
55551
55591
  denyIds: navIdListSchema
55552
55592
  }).strip();
55553
- var dashboardNavVisibilityRolesSchema = z67.object({
55593
+ var dashboardNavVisibilityRolesSchema = z68.object({
55554
55594
  administrator: dashboardNavVisibilityBaseSchema.optional(),
55555
55595
  editor: dashboardNavVisibilityBaseSchema.optional(),
55556
55596
  team_member: dashboardNavVisibilityBaseSchema.optional()
@@ -55558,57 +55598,57 @@ var dashboardNavVisibilityRolesSchema = z67.object({
55558
55598
  var dashboardNavVisibilitySchema = dashboardNavVisibilityBaseSchema.extend({
55559
55599
  roles: dashboardNavVisibilityRolesSchema
55560
55600
  }).strip();
55561
- var dashboardNavigationConfigSchema = z67.object({
55601
+ var dashboardNavigationConfigSchema = z68.object({
55562
55602
  siteNav: dashboardNavVisibilitySchema.optional(),
55563
55603
  settingsNav: dashboardNavVisibilitySchema.optional()
55564
55604
  }).strip();
55565
- var dashboardConfigSchema = z67.object({
55566
- previewEditingEnabled: z67.boolean().optional(),
55605
+ var dashboardConfigSchema = z68.object({
55606
+ previewEditingEnabled: z68.boolean().optional(),
55567
55607
  navigation: dashboardNavigationConfigSchema.optional()
55568
55608
  }).strip();
55569
55609
  var fieldDefinitionInputSchema = unsafeRetypeZodSchema(fieldSchema);
55570
55610
  var nodeDefinitionSchema = unsafeRetypeZodSchema(NodeSchema);
55571
- var sdkLoaderEndpointSchema = z67.enum(SUPPORTED_LOADER_ENDPOINTS);
55572
- var loaderParamBindingSchema = z67.object({
55573
- $bind: z67.object({
55574
- from: z67.string().min(1, "Binding path is required"),
55575
- fallback: z67.string().optional()
55611
+ var sdkLoaderEndpointSchema = z68.enum(SUPPORTED_LOADER_ENDPOINTS);
55612
+ var loaderParamBindingSchema = z68.object({
55613
+ $bind: z68.object({
55614
+ from: z68.string().min(1, "Binding path is required"),
55615
+ fallback: z68.string().optional()
55576
55616
  })
55577
55617
  });
55578
- var loaderParamValueSchema = z67.union([
55579
- z67.string(),
55580
- z67.number(),
55581
- z67.boolean(),
55618
+ var loaderParamValueSchema = z68.union([
55619
+ z68.string(),
55620
+ z68.number(),
55621
+ z68.boolean(),
55582
55622
  loaderParamBindingSchema
55583
55623
  ]);
55584
- var sdkConfigLoaderSchema = z67.object({
55624
+ var sdkConfigLoaderSchema = z68.object({
55585
55625
  endpoint: sdkLoaderEndpointSchema,
55586
- params: z67.record(z67.string(), loaderParamValueSchema),
55587
- mode: z67.enum(["server", "client"]).default("server")
55626
+ params: z68.record(z68.string(), loaderParamValueSchema),
55627
+ mode: z68.enum(["server", "client"]).default("server")
55588
55628
  });
55589
- var sdkDataLoadersSchema = z67.record(z67.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
55590
- var sdkCustomBlockIdSchema = z67.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
55629
+ var sdkDataLoadersSchema = z68.record(z68.string(), sdkConfigLoaderSchema).refine((loaders) => Object.keys(loaders).length <= 5, { message: "Maximum 5 data loaders per block" }).optional();
55630
+ var sdkCustomBlockIdSchema = z68.string().min(8).regex(/^custom\.[a-z][a-z0-9-]*$/, {
55591
55631
  message: "Block ID must start with 'custom.' followed by lowercase letters, numbers, or hyphens"
55592
55632
  }).transform((value) => value);
55593
- var sdkCustomBlockInputSchema = z67.object({
55633
+ var sdkCustomBlockInputSchema = z68.object({
55594
55634
  id: sdkCustomBlockIdSchema,
55595
- title: z67.string().min(1),
55596
- titleSource: z67.union([z67.string().min(1), z67.array(z67.string().min(1)).min(1)]).optional(),
55597
- description: z67.string().optional(),
55635
+ title: z68.string().min(1),
55636
+ titleSource: z68.union([z68.string().min(1), z68.array(z68.string().min(1)).min(1)]).optional(),
55637
+ description: z68.string().optional(),
55598
55638
  category: blockCategoryEnum,
55599
- icon: z67.string().optional(),
55600
- tags: z67.array(z67.string()).optional(),
55639
+ icon: z68.string().optional(),
55640
+ tags: z68.array(z68.string()).optional(),
55601
55641
  fields: fieldDefinitionInputSchema.array().min(1),
55602
55642
  dataLoaders: sdkDataLoadersSchema,
55603
55643
  layout: NodeSchema.optional(),
55604
- variants: z67.record(z67.string().min(1), NodeSchema).optional(),
55605
- defaultVariant: z67.string().min(1).optional(),
55606
- variantOptions: z67.record(
55607
- z67.string().min(1),
55608
- z67.object({
55609
- label: z67.string().min(1).optional(),
55610
- description: z67.string().min(1).optional(),
55611
- icon: z67.string().min(1).optional()
55644
+ variants: z68.record(z68.string().min(1), NodeSchema).optional(),
55645
+ defaultVariant: z68.string().min(1).optional(),
55646
+ variantOptions: z68.record(
55647
+ z68.string().min(1),
55648
+ z68.object({
55649
+ label: z68.string().min(1).optional(),
55650
+ description: z68.string().min(1).optional(),
55651
+ icon: z68.string().min(1).optional()
55612
55652
  })
55613
55653
  ).optional()
55614
55654
  }).superRefine((data, ctx) => {
@@ -55618,7 +55658,7 @@ var sdkCustomBlockInputSchema = z67.object({
55618
55658
  const exists = data.fields.some((field) => field.id === source);
55619
55659
  if (!exists) {
55620
55660
  ctx.addIssue({
55621
- code: z67.ZodIssueCode.custom,
55661
+ code: z68.ZodIssueCode.custom,
55622
55662
  message: `titleSource must reference a valid field ID (got "${source}")`,
55623
55663
  path: Array.isArray(data.titleSource) ? ["titleSource", index] : ["titleSource"]
55624
55664
  });
@@ -55627,7 +55667,7 @@ var sdkCustomBlockInputSchema = z67.object({
55627
55667
  }
55628
55668
  if (data.layout && data.variants) {
55629
55669
  ctx.addIssue({
55630
- code: z67.ZodIssueCode.custom,
55670
+ code: z68.ZodIssueCode.custom,
55631
55671
  message: "Custom block must define either `layout` or `variants`, not both",
55632
55672
  path: ["variants"]
55633
55673
  });
@@ -55636,14 +55676,14 @@ var sdkCustomBlockInputSchema = z67.object({
55636
55676
  const keys = Object.keys(data.variants);
55637
55677
  if (keys.length === 0) {
55638
55678
  ctx.addIssue({
55639
- code: z67.ZodIssueCode.custom,
55679
+ code: z68.ZodIssueCode.custom,
55640
55680
  message: "`variants` must contain at least one variant key",
55641
55681
  path: ["variants"]
55642
55682
  });
55643
55683
  }
55644
55684
  if (data.defaultVariant && !Object.prototype.hasOwnProperty.call(data.variants, data.defaultVariant)) {
55645
55685
  ctx.addIssue({
55646
- code: z67.ZodIssueCode.custom,
55686
+ code: z68.ZodIssueCode.custom,
55647
55687
  message: "`defaultVariant` must be a key present in `variants`",
55648
55688
  path: ["defaultVariant"]
55649
55689
  });
@@ -55652,7 +55692,7 @@ var sdkCustomBlockInputSchema = z67.object({
55652
55692
  for (const key of Object.keys(data.variantOptions)) {
55653
55693
  if (!Object.prototype.hasOwnProperty.call(data.variants, key)) {
55654
55694
  ctx.addIssue({
55655
- code: z67.ZodIssueCode.custom,
55695
+ code: z68.ZodIssueCode.custom,
55656
55696
  message: "`variantOptions` key must exist in `variants`",
55657
55697
  path: ["variantOptions", key]
55658
55698
  });
@@ -55661,74 +55701,74 @@ var sdkCustomBlockInputSchema = z67.object({
55661
55701
  }
55662
55702
  }
55663
55703
  });
55664
- var sdkBlockFieldExtensionInputSchema = z67.object({
55704
+ var sdkBlockFieldExtensionInputSchema = z68.object({
55665
55705
  fields: fieldDefinitionInputSchema.array().min(1)
55666
55706
  });
55667
- var sdkBlockFieldExtensionsInputSchema = z67.record(
55668
- z67.string().min(1),
55707
+ var sdkBlockFieldExtensionsInputSchema = z68.record(
55708
+ z68.string().min(1),
55669
55709
  sdkBlockFieldExtensionInputSchema
55670
55710
  );
55671
- var sdkThemePaletteSchema = z67.record(z67.string(), z67.string());
55672
- var sdkThemeConfigSchema = z67.object({
55711
+ var sdkThemePaletteSchema = z68.record(z68.string(), z68.string());
55712
+ var sdkThemeConfigSchema = z68.object({
55673
55713
  palette: sdkThemePaletteSchema
55674
55714
  });
55675
- var sdkSectionBackgroundSchema = z67.object({
55676
- id: z67.string().min(1),
55677
- label: z67.string().min(1),
55678
- token: z67.string().min(1)
55715
+ var sdkSectionBackgroundSchema = z68.object({
55716
+ id: z68.string().min(1),
55717
+ label: z68.string().min(1),
55718
+ token: z68.string().min(1)
55679
55719
  });
55680
- var sdkSectionOptionsConfigSchema = z67.object({
55681
- backgroundColor: z67.boolean().optional(),
55682
- backgroundImage: z67.boolean().optional(),
55683
- backgroundGradient: z67.boolean().optional(),
55684
- spacing: z67.union([z67.array(z67.enum(["compact", "default", "spacious"])), z67.boolean()]).optional(),
55685
- textColor: z67.boolean().optional()
55720
+ var sdkSectionOptionsConfigSchema = z68.object({
55721
+ backgroundColor: z68.boolean().optional(),
55722
+ backgroundImage: z68.boolean().optional(),
55723
+ backgroundGradient: z68.boolean().optional(),
55724
+ spacing: z68.union([z68.array(z68.enum(["compact", "default", "spacious"])), z68.boolean()]).optional(),
55725
+ textColor: z68.boolean().optional()
55686
55726
  });
55687
- var sdkContainerOptionsConfigSchema = z67.object({
55688
- maxWidth: z67.union([z67.array(z67.enum(["narrow", "default", "wide", "full"])), z67.boolean()]).optional(),
55689
- alignment: z67.union([z67.array(z67.enum(["left", "center", "right"])), z67.boolean()]).optional()
55727
+ var sdkContainerOptionsConfigSchema = z68.object({
55728
+ maxWidth: z68.union([z68.array(z68.enum(["narrow", "default", "wide", "full"])), z68.boolean()]).optional(),
55729
+ alignment: z68.union([z68.array(z68.enum(["left", "center", "right"])), z68.boolean()]).optional()
55690
55730
  });
55691
- var sdkSiteStyleConfigSchema = z67.object({
55692
- sectionBackgrounds: z67.array(sdkSectionBackgroundSchema).optional(),
55731
+ var sdkSiteStyleConfigSchema = z68.object({
55732
+ sectionBackgrounds: z68.array(sdkSectionBackgroundSchema).optional(),
55693
55733
  sectionOptions: sdkSectionOptionsConfigSchema.optional(),
55694
55734
  containerOptions: sdkContainerOptionsConfigSchema.optional()
55695
55735
  });
55696
- var sdkSiteLayoutConfigSchema = z67.object({
55697
- footerBlocks: z67.array(
55698
- z67.object({
55699
- id: z67.string().min(1).optional(),
55700
- kind: z67.string().min(1),
55701
- content: z67.record(z67.string(), z67.unknown()).optional()
55736
+ var sdkSiteLayoutConfigSchema = z68.object({
55737
+ footerBlocks: z68.array(
55738
+ z68.object({
55739
+ id: z68.string().min(1).optional(),
55740
+ kind: z68.string().min(1),
55741
+ content: z68.record(z68.string(), z68.unknown()).optional()
55702
55742
  })
55703
55743
  ).optional()
55704
55744
  });
55705
- var sdkFieldSelectOptionSchema = z67.object({
55706
- value: z67.string(),
55707
- label: z67.string()
55745
+ var sdkFieldSelectOptionSchema = z68.object({
55746
+ value: z68.string(),
55747
+ label: z68.string()
55708
55748
  });
55709
- var sdkBlockFieldConfigSchema = z67.object({
55710
- options: z67.array(sdkFieldSelectOptionSchema).optional()
55749
+ var sdkBlockFieldConfigSchema = z68.object({
55750
+ options: z68.array(sdkFieldSelectOptionSchema).optional()
55711
55751
  });
55712
- var sdkBlockFieldOptionsMapSchema = z67.record(
55713
- z67.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
55752
+ var sdkBlockFieldOptionsMapSchema = z68.record(
55753
+ z68.string().regex(/^(block\.|custom\.)[a-z][a-z0-9-]*$/, {
55714
55754
  message: "Block ID must be 'block.*' or 'custom.*' format"
55715
55755
  }),
55716
- z67.record(z67.string().min(1), sdkBlockFieldConfigSchema)
55756
+ z68.record(z68.string().min(1), sdkBlockFieldConfigSchema)
55717
55757
  ).optional();
55718
- var sdkContentTypeTemplateConfigSchema = z67.object({
55719
- blocks: z67.array(z67.unknown())
55758
+ var sdkContentTypeTemplateConfigSchema = z68.object({
55759
+ blocks: z68.array(z68.unknown())
55720
55760
  }).passthrough();
55721
- var sdkContentTypeConfigSchema = z67.object({
55722
- key: z67.string().min(1),
55723
- fields: z67.array(z67.unknown()),
55761
+ var sdkContentTypeConfigSchema = z68.object({
55762
+ key: z68.string().min(1),
55763
+ fields: z68.array(z68.unknown()),
55724
55764
  template: sdkContentTypeTemplateConfigSchema.nullable().optional()
55725
55765
  }).passthrough();
55726
- var sdkContentConfigSchema = z67.object({
55727
- contentTypes: z67.array(sdkContentTypeConfigSchema).optional(),
55728
- pages: z67.array(z67.unknown()).optional(),
55729
- entries: z67.array(z67.unknown()).optional(),
55730
- navigationMenus: z67.array(z67.unknown()).optional(),
55731
- settings: z67.unknown().optional()
55766
+ var sdkContentConfigSchema = z68.object({
55767
+ contentTypes: z68.array(sdkContentTypeConfigSchema).optional(),
55768
+ pages: z68.array(z68.unknown()).optional(),
55769
+ entries: z68.array(z68.unknown()).optional(),
55770
+ navigationMenus: z68.array(z68.unknown()).optional(),
55771
+ settings: z68.unknown().optional()
55732
55772
  }).passthrough();
55733
55773
  var SDK_WORKFLOW_ID_MAX_LENGTH = 120;
55734
55774
  var SDK_WORKFLOW_TITLE_MAX_LENGTH = 120;
@@ -55743,62 +55783,62 @@ var SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH = 120;
55743
55783
  var SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH = 500;
55744
55784
  var SDK_WORKFLOW_ID_PATTERN = /^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/;
55745
55785
  var SDK_WORKFLOW_ENDPOINT_PATTERN = /^\//;
55746
- var sdkWorkflowIdSchema = z67.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
55786
+ var sdkWorkflowIdSchema = z68.string().min(1).max(SDK_WORKFLOW_ID_MAX_LENGTH).regex(SDK_WORKFLOW_ID_PATTERN, {
55747
55787
  message: "Workflow ID must start with a lowercase letter and use lowercase letters, numbers, dots, underscores, or hyphens"
55748
55788
  });
55749
- var sdkWorkflowEndpointSchema = z67.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
55750
- var sdkWorkflowManualTriggerSchema = z67.object({
55751
- type: z67.literal("manual")
55789
+ var sdkWorkflowEndpointSchema = z68.string().min(1).max(SDK_WORKFLOW_ENDPOINT_MAX_LENGTH).regex(SDK_WORKFLOW_ENDPOINT_PATTERN, { message: 'Workflow endpoint must be a site-relative path starting with "/"' });
55790
+ var sdkWorkflowManualTriggerSchema = z68.object({
55791
+ type: z68.literal("manual")
55752
55792
  }).strict();
55753
- var sdkWorkflowTriggerFieldSchema = z67.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
55793
+ var sdkWorkflowTriggerFieldSchema = z68.string().trim().min(1).max(SDK_WORKFLOW_TRIGGER_FIELD_MAX_LENGTH).refine((field) => !field.includes("."), {
55754
55794
  message: "Workflow trigger fields must be top-level content field IDs, not paths"
55755
55795
  });
55756
- var sdkWorkflowFieldChangedConditionSchema = z67.object({
55796
+ var sdkWorkflowFieldChangedConditionSchema = z68.object({
55757
55797
  field: sdkWorkflowTriggerFieldSchema,
55758
- changed: z67.literal(true)
55798
+ changed: z68.literal(true)
55759
55799
  }).strict();
55760
- var sdkWorkflowFieldEmptyConditionSchema = z67.object({
55800
+ var sdkWorkflowFieldEmptyConditionSchema = z68.object({
55761
55801
  field: sdkWorkflowTriggerFieldSchema,
55762
- isEmpty: z67.boolean()
55802
+ isEmpty: z68.boolean()
55763
55803
  }).strict();
55764
- var sdkWorkflowEntryDraftUpdatedTriggerSchema = z67.object({
55765
- type: z67.literal("entry.draft.updated"),
55766
- when: z67.array(
55767
- z67.union([
55804
+ var sdkWorkflowEntryDraftUpdatedTriggerSchema = z68.object({
55805
+ type: z68.literal("entry.draft.updated"),
55806
+ when: z68.array(
55807
+ z68.union([
55768
55808
  sdkWorkflowFieldChangedConditionSchema,
55769
55809
  sdkWorkflowFieldEmptyConditionSchema
55770
55810
  ])
55771
55811
  ).min(1).max(SDK_WORKFLOW_TRIGGER_CONDITION_MAX_COUNT)
55772
55812
  }).strict();
55773
- var sdkWorkflowTriggerSchema = z67.discriminatedUnion("type", [
55813
+ var sdkWorkflowTriggerSchema = z68.discriminatedUnion("type", [
55774
55814
  sdkWorkflowManualTriggerSchema,
55775
55815
  sdkWorkflowEntryDraftUpdatedTriggerSchema
55776
55816
  ]);
55777
- var sdkWorkflowConfirmationSchema = z67.object({
55778
- title: z67.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
55779
- body: z67.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
55817
+ var sdkWorkflowConfirmationSchema = z68.object({
55818
+ title: z68.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_TITLE_MAX_LENGTH),
55819
+ body: z68.string().trim().min(1).max(SDK_WORKFLOW_CONFIRMATION_BODY_MAX_LENGTH).optional()
55780
55820
  }).strict();
55781
- var sdkWorkflowConfigSchema = z67.object({
55821
+ var sdkWorkflowConfigSchema = z68.object({
55782
55822
  id: sdkWorkflowIdSchema,
55783
- title: z67.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
55784
- description: z67.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
55785
- contentType: z67.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
55823
+ title: z68.string().trim().min(1).max(SDK_WORKFLOW_TITLE_MAX_LENGTH),
55824
+ description: z68.string().trim().min(1).max(SDK_WORKFLOW_DESCRIPTION_MAX_LENGTH).optional(),
55825
+ contentType: z68.string().trim().min(1).max(SDK_WORKFLOW_CONTENT_TYPE_MAX_LENGTH),
55786
55826
  endpoint: sdkWorkflowEndpointSchema,
55787
- triggers: z67.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
55827
+ triggers: z68.array(sdkWorkflowTriggerSchema).min(1).max(SDK_WORKFLOW_TRIGGER_MAX_COUNT),
55788
55828
  confirmation: sdkWorkflowConfirmationSchema.optional()
55789
55829
  }).strict();
55790
- var sdkWorkflowsSchema = z67.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
55830
+ var sdkWorkflowsSchema = z68.array(sdkWorkflowConfigSchema).max(SDK_WORKFLOW_MAX_COUNT, "Maximum 50 workflows per site").refine((workflows) => {
55791
55831
  const ids = workflows.map((workflow) => workflow.id);
55792
55832
  return ids.length === new Set(ids).size;
55793
55833
  }, { message: "Workflow IDs must be unique" }).optional();
55794
- var riverbankSiteConfigInputSchema = z67.object({
55795
- siteId: z67.string().uuid(),
55796
- previewUrl: z67.string().url().optional(),
55797
- liveUrl: z67.string().url().optional(),
55834
+ var riverbankSiteConfigInputSchema = z68.object({
55835
+ siteId: z68.string().uuid(),
55836
+ previewUrl: z68.string().url().optional(),
55837
+ liveUrl: z68.string().url().optional(),
55798
55838
  theme: sdkThemeConfigSchema.optional(),
55799
55839
  styles: sdkSiteStyleConfigSchema.optional(),
55800
55840
  layout: sdkSiteLayoutConfigSchema.optional(),
55801
- customBlocks: z67.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
55841
+ customBlocks: z68.array(sdkCustomBlockInputSchema).max(100, "Maximum 100 custom blocks per site").refine((blocks) => {
55802
55842
  const ids = blocks.map((b) => b.id);
55803
55843
  return ids.length === new Set(ids).size;
55804
55844
  }, { message: "Block IDs must be unique" }).optional(),
@@ -55806,50 +55846,50 @@ var riverbankSiteConfigInputSchema = z67.object({
55806
55846
  blockFieldExtensions: sdkBlockFieldExtensionsInputSchema.optional(),
55807
55847
  workflows: sdkWorkflowsSchema,
55808
55848
  content: sdkContentConfigSchema.optional(),
55809
- contentDir: z67.string().optional(),
55810
- sync: z67.object({
55811
- existingEntries: z67.enum(["skip", "update"]).optional()
55849
+ contentDir: z68.string().optional(),
55850
+ sync: z68.object({
55851
+ existingEntries: z68.enum(["skip", "update"]).optional()
55812
55852
  }).optional(),
55813
- deploy: z67.object({
55814
- verifyCommand: z67.string().optional(),
55815
- prebuildOutput: z67.string().optional()
55853
+ deploy: z68.object({
55854
+ verifyCommand: z68.string().optional(),
55855
+ prebuildOutput: z68.string().optional()
55816
55856
  }).optional(),
55817
- themeSource: z67.enum(["local", "cms"]).optional(),
55818
- activeTheme: z67.string().optional(),
55819
- enablePortal: z67.boolean().optional(),
55857
+ themeSource: z68.enum(["local", "cms"]).optional(),
55858
+ activeTheme: z68.string().optional(),
55859
+ enablePortal: z68.boolean().optional(),
55820
55860
  dashboard: dashboardConfigSchema.optional()
55821
55861
  }).strict();
55822
- var pushSdkConfigBodySchema = z67.object({
55862
+ var pushSdkConfigBodySchema = z68.object({
55823
55863
  config: riverbankSiteConfigInputSchema,
55824
- forceContentTypes: z67.boolean().optional()
55864
+ forceContentTypes: z68.boolean().optional()
55825
55865
  }).strict();
55826
55866
 
55827
55867
  // ../api/src/siteOnboarding.ts
55828
- import { z as z68 } from "zod";
55868
+ import { z as z69 } from "zod";
55829
55869
  var LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS = {
55830
55870
  configure_appointments: {
55831
55871
  requirementId: "configure_appointments",
55832
55872
  reason: "launch_anyway"
55833
55873
  }
55834
55874
  };
55835
- var acknowledgeLaunchRequirementRequestSchema = z68.discriminatedUnion(
55875
+ var acknowledgeLaunchRequirementRequestSchema = z69.discriminatedUnion(
55836
55876
  "requirementId",
55837
55877
  [
55838
- z68.object({
55839
- requirementId: z68.literal("review_generated_site")
55878
+ z69.object({
55879
+ requirementId: z69.literal("review_generated_site")
55840
55880
  }),
55841
- z68.object({
55842
- requirementId: z68.literal(
55881
+ z69.object({
55882
+ requirementId: z69.literal(
55843
55883
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.requirementId
55844
55884
  ),
55845
- overrideReason: z68.literal(
55885
+ overrideReason: z69.literal(
55846
55886
  LAUNCH_REQUIREMENT_OVERRIDE_DEFINITIONS.configure_appointments.reason
55847
55887
  )
55848
55888
  })
55849
55889
  ]
55850
55890
  );
55851
- var goLiveSiteRequestSchema = z68.object({
55852
- acceptExtraSiteCharge: z68.boolean().optional()
55891
+ var goLiveSiteRequestSchema = z69.object({
55892
+ acceptExtraSiteCharge: z69.boolean().optional()
55853
55893
  });
55854
55894
 
55855
55895
  // ../surfaces/src/index.ts
@@ -56030,51 +56070,51 @@ function isRecord5(value) {
56030
56070
  }
56031
56071
 
56032
56072
  // ../api/src/appointmentSetup.ts
56033
- import { z as z69 } from "zod";
56073
+ import { z as z70 } from "zod";
56034
56074
  var APPOINTMENT_SETUP_MAX_MINUTES = 1440;
56035
- var appointmentSetupRefSchema = z69.discriminatedUnion("kind", [
56036
- z69.object({ kind: z69.literal("existing"), id: z69.string().min(1) }),
56037
- z69.object({ kind: z69.literal("new"), draftId: z69.string().min(1) })
56075
+ var appointmentSetupRefSchema = z70.discriminatedUnion("kind", [
56076
+ z70.object({ kind: z70.literal("existing"), id: z70.string().min(1) }),
56077
+ z70.object({ kind: z70.literal("new"), draftId: z70.string().min(1) })
56038
56078
  ]);
56039
- var appointmentSetupVenueChoiceSchema = z69.discriminatedUnion("kind", [
56040
- z69.object({ kind: z69.literal("none") }),
56041
- z69.object({ kind: z69.literal("existing"), venueId: z69.string().min(1) }),
56042
- z69.object({
56043
- kind: z69.literal("create"),
56044
- draftId: z69.string().min(1),
56045
- title: z69.string().trim().min(1),
56046
- description: z69.string().nullable(),
56047
- timezone: z69.string().trim().min(1).nullable(),
56048
- addressJson: z69.record(z69.string(), z69.unknown()),
56049
- locationJson: z69.object({ lat: z69.number(), lng: z69.number() }).nullable()
56079
+ var appointmentSetupVenueChoiceSchema = z70.discriminatedUnion("kind", [
56080
+ z70.object({ kind: z70.literal("none") }),
56081
+ z70.object({ kind: z70.literal("existing"), venueId: z70.string().min(1) }),
56082
+ z70.object({
56083
+ kind: z70.literal("create"),
56084
+ draftId: z70.string().min(1),
56085
+ title: z70.string().trim().min(1),
56086
+ description: z70.string().nullable(),
56087
+ timezone: z70.string().trim().min(1).nullable(),
56088
+ addressJson: z70.record(z70.string(), z70.unknown()),
56089
+ locationJson: z70.object({ lat: z70.number(), lng: z70.number() }).nullable()
56050
56090
  })
56051
56091
  ]);
56052
- var appointmentSetupPaymentDraftSchema = z69.object({
56053
- priceType: z69.union([z69.literal("free"), z69.literal("paid")])
56054
- });
56055
- var appointmentSetupServiceAssignmentDraftSchema = z69.discriminatedUnion("kind", [
56056
- z69.object({ kind: z69.literal("all_practitioners") }),
56057
- z69.object({
56058
- kind: z69.literal("selected_practitioners"),
56059
- resourceRefs: z69.array(appointmentSetupRefSchema)
56092
+ var appointmentSetupPaymentDraftSchema = z70.object({
56093
+ priceType: z70.union([z70.literal("free"), z70.literal("paid")])
56094
+ });
56095
+ var appointmentSetupServiceAssignmentDraftSchema = z70.discriminatedUnion("kind", [
56096
+ z70.object({ kind: z70.literal("all_practitioners") }),
56097
+ z70.object({
56098
+ kind: z70.literal("selected_practitioners"),
56099
+ resourceRefs: z70.array(appointmentSetupRefSchema)
56060
56100
  })
56061
56101
  ]);
56062
- var appointmentSetupServiceDraftSchema = z69.object({
56102
+ var appointmentSetupServiceDraftSchema = z70.object({
56063
56103
  ref: appointmentSetupRefSchema,
56064
- title: z69.string().trim().min(1),
56065
- description: z69.string().nullable(),
56066
- durationMinutes: z69.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
56067
- prepMinutes: z69.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
56068
- cleanupMinutes: z69.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
56069
- priceAmount: z69.number().int().nonnegative().nullable(),
56070
- isActive: z69.boolean(),
56071
- locationType: z69.union([
56072
- z69.literal("virtual"),
56073
- z69.literal("in_person"),
56074
- z69.literal("hybrid")
56104
+ title: z70.string().trim().min(1),
56105
+ description: z70.string().nullable(),
56106
+ durationMinutes: z70.number().int().positive().max(APPOINTMENT_SETUP_MAX_MINUTES),
56107
+ prepMinutes: z70.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
56108
+ cleanupMinutes: z70.number().int().nonnegative().max(APPOINTMENT_SETUP_MAX_MINUTES).default(0),
56109
+ priceAmount: z70.number().int().nonnegative().nullable(),
56110
+ isActive: z70.boolean(),
56111
+ locationType: z70.union([
56112
+ z70.literal("virtual"),
56113
+ z70.literal("in_person"),
56114
+ z70.literal("hybrid")
56075
56115
  ]),
56076
56116
  venue: appointmentSetupVenueChoiceSchema,
56077
- timezone: z69.string().trim().min(1).nullable(),
56117
+ timezone: z70.string().trim().min(1).nullable(),
56078
56118
  payment: appointmentSetupPaymentDraftSchema,
56079
56119
  assignment: appointmentSetupServiceAssignmentDraftSchema
56080
56120
  }).superRefine((service, ctx) => {
@@ -56093,49 +56133,49 @@ var appointmentSetupServiceDraftSchema = z69.object({
56093
56133
  });
56094
56134
  }
56095
56135
  });
56096
- var appointmentSetupPractitionerDraftSchema = z69.object({
56136
+ var appointmentSetupPractitionerDraftSchema = z70.object({
56097
56137
  ref: appointmentSetupRefSchema,
56098
- displayName: z69.string().trim().min(1),
56099
- bio: z69.string().nullable(),
56100
- timezone: z69.string().trim().min(1),
56101
- colorHex: z69.string().nullable()
56102
- });
56103
- var appointmentSetupWeeklyWindowDraftSchema = z69.object({
56104
- weekday: z69.number().int().min(0).max(6),
56105
- startTime: z69.string(),
56106
- endTime: z69.string()
56107
- });
56108
- var appointmentSetupStartTimePolicyDraftSchema = z69.discriminatedUnion("kind", [
56109
- z69.object({ kind: z69.literal("automatic_spacing") }),
56110
- z69.object({
56111
- kind: z69.literal("regular_interval"),
56112
- intervalMinutes: z69.union([
56113
- z69.literal(10),
56114
- z69.literal(15),
56115
- z69.literal(20),
56116
- z69.literal(30),
56117
- z69.literal(45),
56118
- z69.literal(60)
56138
+ displayName: z70.string().trim().min(1),
56139
+ bio: z70.string().nullable(),
56140
+ timezone: z70.string().trim().min(1),
56141
+ colorHex: z70.string().nullable()
56142
+ });
56143
+ var appointmentSetupWeeklyWindowDraftSchema = z70.object({
56144
+ weekday: z70.number().int().min(0).max(6),
56145
+ startTime: z70.string(),
56146
+ endTime: z70.string()
56147
+ });
56148
+ var appointmentSetupStartTimePolicyDraftSchema = z70.discriminatedUnion("kind", [
56149
+ z70.object({ kind: z70.literal("automatic_spacing") }),
56150
+ z70.object({
56151
+ kind: z70.literal("regular_interval"),
56152
+ intervalMinutes: z70.union([
56153
+ z70.literal(10),
56154
+ z70.literal(15),
56155
+ z70.literal(20),
56156
+ z70.literal(30),
56157
+ z70.literal(45),
56158
+ z70.literal(60)
56119
56159
  ])
56120
56160
  })
56121
56161
  ]);
56122
- var appointmentSetupAvailabilityDraftSchema = z69.object({
56123
- kind: z69.literal("weekly_windows"),
56162
+ var appointmentSetupAvailabilityDraftSchema = z70.object({
56163
+ kind: z70.literal("weekly_windows"),
56124
56164
  resourceRef: appointmentSetupRefSchema,
56125
56165
  serviceRef: appointmentSetupRefSchema.nullable(),
56126
- windows: z69.array(appointmentSetupWeeklyWindowDraftSchema),
56166
+ windows: z70.array(appointmentSetupWeeklyWindowDraftSchema),
56127
56167
  startTimePolicy: appointmentSetupStartTimePolicyDraftSchema.optional()
56128
56168
  });
56129
56169
  var APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX = 28 * 24 * 60;
56130
56170
  var APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX = 10 * 365 * 24 * 60;
56131
- var appointmentSetupBookingNoticeSchema = z69.object({
56132
- minLeadMinutes: z69.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
56133
- maxBookingNoticeMinutes: z69.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
56134
- });
56135
- var applyAppointmentSetupRequestSchema = z69.object({
56136
- services: z69.array(appointmentSetupServiceDraftSchema),
56137
- practitioners: z69.array(appointmentSetupPractitionerDraftSchema),
56138
- availability: z69.array(appointmentSetupAvailabilityDraftSchema),
56171
+ var appointmentSetupBookingNoticeSchema = z70.object({
56172
+ minLeadMinutes: z70.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MIN_LEAD_MINUTES_MAX),
56173
+ maxBookingNoticeMinutes: z70.number().int().nonnegative().max(APPOINTMENT_DEFAULT_MAX_BOOKING_NOTICE_MINUTES_MAX)
56174
+ });
56175
+ var applyAppointmentSetupRequestSchema = z70.object({
56176
+ services: z70.array(appointmentSetupServiceDraftSchema),
56177
+ practitioners: z70.array(appointmentSetupPractitionerDraftSchema),
56178
+ availability: z70.array(appointmentSetupAvailabilityDraftSchema),
56139
56179
  bookingNotice: appointmentSetupBookingNoticeSchema
56140
56180
  });
56141
56181
 
@@ -56168,24 +56208,24 @@ var STAFF_CANCELLATION_CONTEXT_CATEGORIES = [
56168
56208
  ];
56169
56209
 
56170
56210
  // ../api/src/siteBanner.ts
56171
- import { z as z70 } from "zod";
56211
+ import { z as z71 } from "zod";
56172
56212
  var SITE_BANNER_SCOPE_VALUES = ["homepage", "all-pages"];
56173
56213
  var SITE_BANNER_TONE_VALUES = ["announcement", "promotion", "notice", "warning"];
56174
56214
  var SITE_BANNER_MAX_TEXT_LENGTH = 320;
56175
56215
  var SITE_BANNER_MAX_PARAGRAPHS = 2;
56176
- var siteBannerScopeSchema = z70.enum(SITE_BANNER_SCOPE_VALUES);
56177
- var siteBannerToneSchema = z70.enum(SITE_BANNER_TONE_VALUES);
56178
- var siteBannerBodySchema = z70.unknown().transform(unwrapRichTextValue);
56179
- var siteBannerCtaSchema = z70.object({
56180
- label: z70.string().trim().min(1),
56216
+ var siteBannerScopeSchema = z71.enum(SITE_BANNER_SCOPE_VALUES);
56217
+ var siteBannerToneSchema = z71.enum(SITE_BANNER_TONE_VALUES);
56218
+ var siteBannerBodySchema = z71.unknown().transform(unwrapRichTextValue);
56219
+ var siteBannerCtaSchema = z71.object({
56220
+ label: z71.string().trim().min(1),
56181
56221
  link: linkPayloadSchema
56182
56222
  });
56183
- var siteBannerSettingsSchema = z70.discriminatedUnion("enabled", [
56184
- z70.object({
56185
- enabled: z70.literal(false)
56223
+ var siteBannerSettingsSchema = z71.discriminatedUnion("enabled", [
56224
+ z71.object({
56225
+ enabled: z71.literal(false)
56186
56226
  }),
56187
- z70.object({
56188
- enabled: z70.literal(true),
56227
+ z71.object({
56228
+ enabled: z71.literal(true),
56189
56229
  scope: siteBannerScopeSchema,
56190
56230
  tone: siteBannerToneSchema,
56191
56231
  body: siteBannerBodySchema,
@@ -56199,7 +56239,7 @@ var siteBannerSettingsInputSchema = siteBannerSettingsSchema.superRefine((value,
56199
56239
  const analysis = analyzeSiteBannerBody(value.body);
56200
56240
  for (const issue2 of analysis.issues) {
56201
56241
  ctx.addIssue({
56202
- code: z70.ZodIssueCode.custom,
56242
+ code: z71.ZodIssueCode.custom,
56203
56243
  path: ["body"],
56204
56244
  message: siteBannerBodyIssueMessage(issue2)
56205
56245
  });
@@ -56388,78 +56428,78 @@ function collectText(node) {
56388
56428
  }
56389
56429
 
56390
56430
  // ../api/src/aiPlayground.ts
56391
- import { z as z71 } from "zod";
56392
- var Rfc6902PatchOp = z71.discriminatedUnion("op", [
56431
+ import { z as z72 } from "zod";
56432
+ var Rfc6902PatchOp = z72.discriminatedUnion("op", [
56393
56433
  // Standard RFC-6902 operations
56394
- z71.object({
56395
- op: z71.literal("add"),
56396
- path: z71.string(),
56397
- value: z71.unknown()
56434
+ z72.object({
56435
+ op: z72.literal("add"),
56436
+ path: z72.string(),
56437
+ value: z72.unknown()
56398
56438
  }),
56399
- z71.object({
56400
- op: z71.literal("remove"),
56401
- path: z71.string()
56439
+ z72.object({
56440
+ op: z72.literal("remove"),
56441
+ path: z72.string()
56402
56442
  }),
56403
- z71.object({
56404
- op: z71.literal("replace"),
56405
- path: z71.string(),
56406
- value: z71.unknown()
56443
+ z72.object({
56444
+ op: z72.literal("replace"),
56445
+ path: z72.string(),
56446
+ value: z72.unknown()
56407
56447
  }),
56408
- z71.object({
56409
- op: z71.literal("move"),
56410
- from: z71.string(),
56411
- path: z71.string()
56448
+ z72.object({
56449
+ op: z72.literal("move"),
56450
+ from: z72.string(),
56451
+ path: z72.string()
56412
56452
  }),
56413
- z71.object({
56414
- op: z71.literal("copy"),
56415
- from: z71.string(),
56416
- path: z71.string()
56453
+ z72.object({
56454
+ op: z72.literal("copy"),
56455
+ from: z72.string(),
56456
+ path: z72.string()
56417
56457
  }),
56418
56458
  // Block-level operations (Phase 2)
56419
- z71.object({
56420
- op: z71.literal("add_block"),
56421
- blockKind: z71.string(),
56422
- afterBlockId: z71.string().nullable(),
56423
- content: z71.record(z71.string(), z71.unknown()),
56424
- rationale: z71.string()
56459
+ z72.object({
56460
+ op: z72.literal("add_block"),
56461
+ blockKind: z72.string(),
56462
+ afterBlockId: z72.string().nullable(),
56463
+ content: z72.record(z72.string(), z72.unknown()),
56464
+ rationale: z72.string()
56425
56465
  }),
56426
- z71.object({
56427
- op: z71.literal("delete_block"),
56428
- blockId: z71.string(),
56429
- rationale: z71.string()
56466
+ z72.object({
56467
+ op: z72.literal("delete_block"),
56468
+ blockId: z72.string(),
56469
+ rationale: z72.string()
56430
56470
  }),
56431
- z71.object({
56432
- op: z71.literal("reorder_block"),
56433
- blockId: z71.string(),
56434
- afterBlockId: z71.string().nullable(),
56435
- rationale: z71.string()
56471
+ z72.object({
56472
+ op: z72.literal("reorder_block"),
56473
+ blockId: z72.string(),
56474
+ afterBlockId: z72.string().nullable(),
56475
+ rationale: z72.string()
56436
56476
  })
56437
56477
  ]);
56438
- var PlaygroundProposeRequest = z71.object({
56439
- request: z71.string().min(1).max(2e3)
56478
+ var PlaygroundProposeRequest = z72.object({
56479
+ request: z72.string().min(1).max(2e3)
56440
56480
  });
56441
- var MultiPagePatchEnvelope = z71.object({
56442
- pageId: z71.string(),
56443
- blockId: z71.string().optional(),
56481
+ var MultiPagePatchEnvelope = z72.object({
56482
+ pageId: z72.string(),
56483
+ blockId: z72.string().optional(),
56444
56484
  // Not present for page-level ops
56445
- blockKind: z71.string().optional(),
56446
- blockPurpose: z71.string().optional().nullable(),
56447
- ops: z71.array(Rfc6902PatchOp),
56448
- rationale: z71.string(),
56449
- currentContent: z71.record(z71.string(), z71.unknown()).optional()
56485
+ blockKind: z72.string().optional(),
56486
+ blockPurpose: z72.string().optional().nullable(),
56487
+ ops: z72.array(Rfc6902PatchOp),
56488
+ rationale: z72.string(),
56489
+ currentContent: z72.record(z72.string(), z72.unknown()).optional()
56450
56490
  });
56451
- var MultiPageUpdateResponse = z71.object({
56452
- patches: z71.array(MultiPagePatchEnvelope),
56453
- assistantMessage: z71.string(),
56454
- pagesModified: z71.number(),
56455
- toolCallsUsed: z71.number()
56491
+ var MultiPageUpdateResponse = z72.object({
56492
+ patches: z72.array(MultiPagePatchEnvelope),
56493
+ assistantMessage: z72.string(),
56494
+ pagesModified: z72.number(),
56495
+ toolCallsUsed: z72.number()
56456
56496
  });
56457
56497
 
56458
56498
  // src/rendering/components/Block.shared.tsx
56459
- import { jsx as jsx61, jsxs as jsxs45 } from "react/jsx-runtime";
56499
+ import { jsx as jsx62, jsxs as jsxs45 } from "react/jsx-runtime";
56460
56500
 
56461
56501
  // src/rendering/components/Block.tsx
56462
- import { Fragment as Fragment11, jsx as jsx62, jsxs as jsxs46 } from "react/jsx-runtime";
56502
+ import { Fragment as Fragment11, jsx as jsx63, jsxs as jsxs46 } from "react/jsx-runtime";
56463
56503
 
56464
56504
  // src/contracts/bindings.ts
56465
56505
  var BINDING_TRANSFORMS = {
@@ -56479,9 +56519,9 @@ var ImagePresets2 = {
56479
56519
  };
56480
56520
 
56481
56521
  // src/rendering/primitives/RichText.tsx
56482
- import { jsx as jsx63 } from "react/jsx-runtime";
56522
+ import { jsx as jsx64 } from "react/jsx-runtime";
56483
56523
  function RichText3(props2) {
56484
- return /* @__PURE__ */ jsx63(RichText2, { ...props2 });
56524
+ return /* @__PURE__ */ jsx64(RichText2, { ...props2 });
56485
56525
  }
56486
56526
 
56487
56527
  // src/rendering/image.ts
@@ -56503,6 +56543,12 @@ function defineLazyBlockOverride(load) {
56503
56543
  load
56504
56544
  };
56505
56545
  }
56546
+ function defineBlockOverrides(overrides) {
56547
+ return overrides;
56548
+ }
56549
+ function defineBlockOverrideRegistrations(registrations) {
56550
+ return registrations;
56551
+ }
56506
56552
  export {
56507
56553
  ImagePresets2 as ImagePresets,
56508
56554
  Layout,
@@ -56511,6 +56557,8 @@ export {
56511
56557
  RichText3 as RichText,
56512
56558
  ThemeScope2 as ThemeScope,
56513
56559
  buildThemeRuntime2 as buildThemeRuntime,
56560
+ defineBlockOverrideRegistrations,
56561
+ defineBlockOverrides,
56514
56562
  defineLazyBlockOverride,
56515
56563
  resolveImageSourceSetWithContext2 as resolveImageSourceSetWithContext,
56516
56564
  resolveImageUrl2 as resolveImageUrl,