@riverbankcms/sdk 0.79.0 → 0.80.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 (160) hide show
  1. package/dist/PreviewEditorSidebar-QZG37QIF.mjs +2655 -0
  2. package/dist/{PreviewEditorUI-27KJVEET.mjs → PreviewEditorUI-AXIKSMZA.mjs} +27 -4
  3. package/dist/SdkPreviewModeRuntime-XE5M4UKM.mjs +8 -0
  4. package/dist/_dts/ai/src/contracts/proposals.d.ts +20 -0
  5. package/dist/_dts/api/src/endpoints.d.ts +24 -0
  6. package/dist/_dts/api/src/index.d.ts +1 -1
  7. package/dist/_dts/api/src/siteInfrastructure.d.ts +124 -0
  8. package/dist/_dts/api/src/siteOnboarding.d.ts +13 -0
  9. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +10 -1
  10. package/dist/_dts/block-form/src/client/index.d.ts +2 -0
  11. package/dist/_dts/block-form/src/index.d.ts +2 -0
  12. package/dist/_dts/block-form/src/utils/evaluateVisibility.d.ts +2 -1
  13. package/dist/_dts/blocks/src/client/header.d.ts +1 -1
  14. package/dist/_dts/blocks/src/client.d.ts +12 -12
  15. package/dist/_dts/blocks/src/index.d.ts +1 -1
  16. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +2 -2
  17. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -1
  18. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +4 -1
  19. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +7 -1
  20. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +21 -12
  21. package/dist/_dts/blocks/src/system/fields/boxStyles.d.ts +4 -2
  22. package/dist/_dts/blocks/src/system/fragments/library/faqHeading.d.ts +1 -0
  23. package/dist/_dts/blocks/src/system/fragments/library/testimonialsCarousel.d.ts +5 -0
  24. package/dist/_dts/blocks/src/system/node/fragments/headingDecoration.d.ts +1 -4
  25. package/dist/_dts/blocks/src/system/node/validation-constants.d.ts +1 -1
  26. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +7 -7
  27. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +3 -3
  28. package/dist/_dts/blocks/src/system/runtime/header/enhanceHeaderSection.d.ts +10 -2
  29. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.interactive.d.ts +5 -5
  30. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventListing.server.d.ts +2 -2
  31. package/dist/_dts/blocks/src/system/runtime/nodes/events/EventSpotlight.d.ts +2 -2
  32. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventCard.d.ts +2 -2
  33. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventDetailModal.d.ts +2 -2
  34. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/EventModals.d.ts +2 -2
  35. package/dist/_dts/blocks/src/system/runtime/nodes/header-section.client.d.ts +2 -2
  36. package/dist/_dts/blocks/src/system/transforms/registry/boxStyles.d.ts +3 -0
  37. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +9 -0
  38. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +14 -1
  39. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +9 -3
  40. package/dist/_dts/editor-blocks/src/block-editor/BlockCard.d.ts +2 -6
  41. package/dist/_dts/editor-blocks/src/block-editor/BlockCardBody.d.ts +2 -6
  42. package/dist/_dts/editor-blocks/src/block-editor/BlockCardHeader.d.ts +2 -6
  43. package/dist/_dts/editor-blocks/src/block-editor/FeatureCardIconsPanel.d.ts +2 -6
  44. package/dist/_dts/editor-blocks/src/block-editor/GeneratedIconSetDialog.d.ts +6 -4
  45. package/dist/_dts/editor-blocks/src/block-editor/SortableBlockItem.d.ts +2 -6
  46. package/dist/_dts/editor-blocks/src/index.d.ts +2 -0
  47. package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +5 -1
  48. package/dist/_dts/preview-next/src/client/blocks/previewCustomizeControlPlan.d.ts +24 -0
  49. package/dist/_dts/preview-next/src/client/blocks/useBlockCustomizeControls.d.ts +34 -0
  50. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -5
  51. package/dist/_dts/preview-next/src/client/preview/PageDesignEditorStateContext.d.ts +4 -1
  52. package/dist/_dts/preview-next/src/client/preview/PreviewBlockCustomizeSelectionContext.d.ts +20 -0
  53. package/dist/_dts/preview-next/src/client/preview/PreviewOpenEditorButton.d.ts +2 -0
  54. package/dist/_dts/preview-next/src/client/preview/SelectedBlockCustomizePanel.d.ts +13 -0
  55. package/dist/_dts/preview-next/src/client/preview/previewCustomizeEditorDraftPatch.d.ts +13 -0
  56. package/dist/_dts/preview-next/src/client/preview/previewCustomizeRuntimePatch.d.ts +2 -0
  57. package/dist/_dts/preview-next/src/client/preview/storeTypes.d.ts +4 -0
  58. package/dist/_dts/preview-next/src/client/widgets/widgetOverrides.d.ts +3 -1
  59. package/dist/_dts/sdk/src/cli/commands/webhooks.d.ts +44 -0
  60. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
  61. package/dist/_dts/sdk/src/client/management/types.d.ts +56 -0
  62. package/dist/_dts/sdk/src/client/management/webhooks.d.ts +3 -0
  63. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +6 -3
  64. package/dist/_dts/sdk/src/version.d.ts +1 -1
  65. package/dist/_dts/theme-core/src/accordions/siteStyleDefaults.d.ts +220 -0
  66. package/dist/_dts/theme-core/src/accordions/types.d.ts +45 -2
  67. package/dist/_dts/theme-core/src/blockOverrides.d.ts +8 -0
  68. package/dist/_dts/theme-core/src/blocks/types.d.ts +1 -1
  69. package/dist/_dts/theme-core/src/blocks/vars/testimonials.d.ts +4 -1
  70. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +1 -1
  71. package/dist/_dts/theme-core/src/cards/core.d.ts +20 -0
  72. package/dist/_dts/theme-core/src/cards/generateDefaultCardSystem.d.ts +6 -3
  73. package/dist/_dts/theme-core/src/cards/siteStyleDefaults.d.ts +105 -0
  74. package/dist/_dts/theme-core/src/cards/types.d.ts +177 -0
  75. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  76. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +156 -18
  77. package/dist/_dts/theme-core/src/palette/variants/index.d.ts +15 -0
  78. package/dist/_dts/theme-core/src/palette/variants/soft-natural.d.ts +16 -0
  79. package/dist/_dts/theme-core/src/palette/variants/types.d.ts +1 -1
  80. package/dist/_dts/theme-core/src/schema.d.ts +446 -52
  81. package/dist/_dts/theme-core/src/site-styles/appearancePresetCatalog.d.ts +86 -17
  82. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +2 -3
  83. package/dist/_dts/theme-core/src/site-styles/blockAppearancePresets.d.ts +86 -17
  84. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +110 -1
  85. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +20 -1
  86. package/dist/_dts/theme-core/src/site-styles/generatedSchemas.d.ts +4 -0
  87. package/dist/_dts/theme-core/src/site-styles/headerLooks.d.ts +286 -6
  88. package/dist/_dts/theme-core/src/site-styles/index.d.ts +2 -0
  89. package/dist/_dts/theme-core/src/site-styles/logoBranding.d.ts +193 -0
  90. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +2 -8
  91. package/dist/_dts/theme-core/src/site-styles/rawStyleFields.d.ts +2 -0
  92. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +10 -7
  93. package/dist/_dts/theme-core/src/site-styles/siteStyleThemeCompiler.d.ts +11 -0
  94. package/dist/_dts/theme-core/src/site-styles/sourceCatalogs.d.ts +2 -2
  95. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +1 -1
  96. package/dist/_dts/theme-core/src/site-styles/testimonialQuotePresets.d.ts +15 -0
  97. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  98. package/dist/_dts/theme-core/src/site-styles/types.d.ts +7 -29
  99. package/dist/{PreviewEditorSidebar-56NMJMIK.mjs → chunk-5NZGBSJF.mjs} +1423 -2451
  100. package/dist/{chunk-4HCW7FHJ.mjs → chunk-7PCYG6YV.mjs} +215 -137
  101. package/dist/{chunk-K2IIF34C.mjs → chunk-BBLZSQEY.mjs} +24 -0
  102. package/dist/{chunk-V47ZU33I.mjs → chunk-GYXKAUFV.mjs} +2785 -785
  103. package/dist/{chunk-GP555I66.mjs → chunk-HTB4BMKD.mjs} +94 -46
  104. package/dist/{chunk-A3HHFKVT.mjs → chunk-MPBNEVPB.mjs} +1 -1
  105. package/dist/cli/index.mjs +2100 -545
  106. package/dist/cli/init-docs/content/workflow-isr-revalidation.md +16 -4
  107. package/dist/client/{accordion-QLA7KBYO.mjs → accordion-QFZMNB7O.mjs} +1 -1
  108. package/dist/client/{bookingForm-PYZIPA5G.mjs → bookingForm-NCIXFWIG.mjs} +3 -3
  109. package/dist/client/bookings.mjs +1144 -329
  110. package/dist/client/{carousel-5EIULWBI.mjs → carousel-EO4BJMWD.mjs} +2 -2
  111. package/dist/client/{cart-DOP3FNI4.mjs → cart-FTYCLYUW.mjs} +5 -5
  112. package/dist/client/{checkout-BVMF6FBV.mjs → checkout-NFGLVCOX.mjs} +5 -5
  113. package/dist/client/{chunk-TYONZMST.mjs → chunk-4W66ALYT.mjs} +1 -1
  114. package/dist/client/{chunk-44K2U3QI.mjs → chunk-6GVVWSPU.mjs} +4 -4
  115. package/dist/client/{chunk-UDS3NTWA.mjs → chunk-IWFZSQNZ.mjs} +1 -1
  116. package/dist/client/{chunk-R5ESWNKX.mjs → chunk-PUOELU4O.mjs} +89 -5
  117. package/dist/client/{chunk-YLDYVRZL.mjs → chunk-PYRBIURC.mjs} +4 -4
  118. package/dist/client/{chunk-GG4M2NP6.mjs → chunk-T6UIP6UZ.mjs} +1 -1
  119. package/dist/client/{chunk-V6M5FCR5.mjs → chunk-VDS5YFLX.mjs} +1 -1
  120. package/dist/client/{chunk-CCNTDRCF.mjs → chunk-Y37KDO7P.mjs} +1 -1
  121. package/dist/client/client.mjs +4205 -2324
  122. package/dist/client/{courseRegistration-E6EAA6NL.mjs → courseRegistration-2EORROPS.mjs} +3 -3
  123. package/dist/client/{eventCalendar-HBG3HAK6.mjs → eventCalendar-WZI4VL6N.mjs} +5 -5
  124. package/dist/client/{eventCombined-6K5ZZWAK.mjs → eventCombined-QCB2TCNL.mjs} +5 -5
  125. package/dist/client/{eventDetails-Q75ICXLT.mjs → eventDetails-TFTATAPH.mjs} +5 -5
  126. package/dist/client/{eventListing-27P5F7DZ.mjs → eventListing-A2CQEHEQ.mjs} +5 -5
  127. package/dist/client/{eventRegistration-IQ7AMASR.mjs → eventRegistration-OELPVLUY.mjs} +5 -5
  128. package/dist/client/{form-JRTD65FN.mjs → form-NTIFD6WQ.mjs} +1 -1
  129. package/dist/client/{headerSection-7FPSSZHS.mjs → headerSection-7TBNKCLA.mjs} +65 -24
  130. package/dist/client/hooks.mjs +3354 -2006
  131. package/dist/client/{locationMap-7NGFNYBH.mjs → locationMap-LRLB5A3H.mjs} +1 -1
  132. package/dist/client/{newsletterForm-F3BADCI2.mjs → newsletterForm-XI52RZSN.mjs} +1 -1
  133. package/dist/client/{productDetail-V3HP7ITJ.mjs → productDetail-GSNKBFLY.mjs} +5 -5
  134. package/dist/client/{productList-L3EGJUF2.mjs → productList-BGCGT4KZ.mjs} +5 -5
  135. package/dist/client/rendering/client.mjs +2570 -1657
  136. package/dist/client/rendering/islands.mjs +18 -18
  137. package/dist/client/rendering.mjs +4275 -2394
  138. package/dist/client/{shop-DQUB5E2C.mjs → shop-RQHUCLNY.mjs} +5 -5
  139. package/dist/preview-next/before-render.mjs +24 -0
  140. package/dist/preview-next/client/runtime.mjs +5 -5
  141. package/dist/preview-next/middleware.mjs +24 -0
  142. package/dist/{sdk-runtime-AF6KXJU4.mjs → sdk-runtime-A4LHT2RS.mjs} +6 -6
  143. package/dist/server/components.mjs +4063 -2293
  144. package/dist/server/config-validation.mjs +3525 -2176
  145. package/dist/server/config.mjs +3525 -2176
  146. package/dist/server/data.mjs +3354 -2006
  147. package/dist/server/index.mjs +25 -1
  148. package/dist/server/next.mjs +4006 -2236
  149. package/dist/server/page-converter.mjs +2747 -1816
  150. package/dist/server/prebuild.mjs +1 -1
  151. package/dist/server/rendering/server.mjs +4063 -2293
  152. package/dist/server/rendering.mjs +4063 -2293
  153. package/dist/server/routing.mjs +3508 -2111
  154. package/dist/server/server.mjs +3372 -2024
  155. package/dist/server/theme-bridge.mjs +1436 -310
  156. package/dist/server/theme.mjs +409 -219
  157. package/dist/styles/index.css +300 -33
  158. package/package.json +1 -1
  159. package/dist/SdkPreviewModeRuntime-H4BSP6E7.mjs +0 -8
  160. package/dist/chunk-LCY32PXF.mjs +0 -1175
@@ -1,6 +1,6 @@
1
- import { normalizeCarouselProps, CarouselNodeClient } from './chunk-UDS3NTWA.mjs';
1
+ import { normalizeCarouselProps, CarouselNodeClient } from './chunk-IWFZSQNZ.mjs';
2
2
  import { mountReactIsland } from './chunk-N7PBWBWQ.mjs';
3
- import { defineIslandPropsDecoder } from './chunk-R5ESWNKX.mjs';
3
+ import { defineIslandPropsDecoder } from './chunk-PUOELU4O.mjs';
4
4
  import './chunk-AUJ5DBZJ.mjs';
5
5
  import { jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,14 +1,14 @@
1
- import { mountShopBlockIsland, CartClient } from './chunk-YLDYVRZL.mjs';
2
- import './chunk-TYONZMST.mjs';
3
- import './chunk-UDS3NTWA.mjs';
1
+ import { mountShopBlockIsland, CartClient } from './chunk-PYRBIURC.mjs';
2
+ import './chunk-4W66ALYT.mjs';
3
+ import './chunk-IWFZSQNZ.mjs';
4
4
  import './chunk-I2MMZO53.mjs';
5
5
  import './chunk-ZFHRN6W2.mjs';
6
- import './chunk-CCNTDRCF.mjs';
6
+ import './chunk-Y37KDO7P.mjs';
7
7
  import './chunk-3DCJ45Z2.mjs';
8
8
  import './chunk-3PEDD5KJ.mjs';
9
9
  import './chunk-UDNSI5PY.mjs';
10
10
  import './chunk-N7PBWBWQ.mjs';
11
- import { defineIslandPropsDecoder } from './chunk-R5ESWNKX.mjs';
11
+ import { defineIslandPropsDecoder } from './chunk-PUOELU4O.mjs';
12
12
  import './chunk-AUJ5DBZJ.mjs';
13
13
 
14
14
  // src/rendering/islands/enhancers/cart.tsx
@@ -1,14 +1,14 @@
1
- import { mountShopBlockIsland, CheckoutClient } from './chunk-YLDYVRZL.mjs';
2
- import './chunk-TYONZMST.mjs';
3
- import './chunk-UDS3NTWA.mjs';
1
+ import { mountShopBlockIsland, CheckoutClient } from './chunk-PYRBIURC.mjs';
2
+ import './chunk-4W66ALYT.mjs';
3
+ import './chunk-IWFZSQNZ.mjs';
4
4
  import './chunk-I2MMZO53.mjs';
5
5
  import './chunk-ZFHRN6W2.mjs';
6
- import './chunk-CCNTDRCF.mjs';
6
+ import './chunk-Y37KDO7P.mjs';
7
7
  import './chunk-3DCJ45Z2.mjs';
8
8
  import './chunk-3PEDD5KJ.mjs';
9
9
  import './chunk-UDNSI5PY.mjs';
10
10
  import './chunk-N7PBWBWQ.mjs';
11
- import { defineIslandPropsDecoder } from './chunk-R5ESWNKX.mjs';
11
+ import { defineIslandPropsDecoder } from './chunk-PUOELU4O.mjs';
12
12
  import './chunk-AUJ5DBZJ.mjs';
13
13
 
14
14
  // src/rendering/islands/enhancers/checkout.tsx
@@ -1,4 +1,4 @@
1
- import { EMPTY_COMMERCE_CART_STATE, parseStoredCommerceCartState, reduceCommerceCart, buildPassCartItem } from './chunk-R5ESWNKX.mjs';
1
+ import { EMPTY_COMMERCE_CART_STATE, parseStoredCommerceCartState, reduceCommerceCart, buildPassCartItem } from './chunk-PUOELU4O.mjs';
2
2
  import * as React from 'react';
3
3
 
4
4
  var EMPTY_STATE = EMPTY_COMMERCE_CART_STATE;
@@ -1,15 +1,15 @@
1
1
  "use client";
2
2
  import { LeafletStaticMap } from './chunk-XSV6KW4D.mjs';
3
- import { MagicLinkForm, useWaitlistClaim } from './chunk-GG4M2NP6.mjs';
4
- import { usePolling } from './chunk-V6M5FCR5.mjs';
3
+ import { MagicLinkForm, useWaitlistClaim } from './chunk-T6UIP6UZ.mjs';
4
+ import { usePolling } from './chunk-VDS5YFLX.mjs';
5
5
  import { SpinnerNode } from './chunk-CE7IBGVW.mjs';
6
6
  import { useDiscountCodeUi } from './chunk-ZFHRN6W2.mjs';
7
- import { TabBarFragment, logoutPortal, StepIndicator, DiscountCodeDisclosure, TerminalPanel, StateIcon, formatPrice, CrossIcon, ClockIcon, consumeSearchParam, LoggedInAsUser, CheckIcon } from './chunk-CCNTDRCF.mjs';
7
+ import { TabBarFragment, logoutPortal, StepIndicator, DiscountCodeDisclosure, TerminalPanel, StateIcon, formatPrice, CrossIcon, ClockIcon, consumeSearchParam, LoggedInAsUser, CheckIcon } from './chunk-Y37KDO7P.mjs';
8
8
  import { getFieldValidationControlProps, FieldValidationMessage } from './chunk-3DCJ45Z2.mjs';
9
9
  import { ModalShell } from './chunk-3PEDD5KJ.mjs';
10
10
  import { isSpamProtectionEnabled, AltchaWidget, getChallengeUrl } from './chunk-YLMKMCSJ.mjs';
11
11
  import { useBlockApi, FeedbackMessage } from './chunk-UDNSI5PY.mjs';
12
- import { buildEventCalendarListingRender, getWeekCalendarDays, formatCalendarTitle, groupEventsByDate, getOrderedDayNames, getMonthCalendarDays, formatDateKey, themeButtonClassName, normalizeEventBlockKind, EventCompactRow, EmptyState, getContainerClass, getCardOrientation, addMonths, getThreeMonthRange, isToday, MAX_EVENTS_PER_DAY, formatTime, resolveCoursePricingState, formatEventDateParts, formatCoursePriceAmount, DateTimeTile, normalizeIdList, EventCard, buildTimetableModel, formatDate, isEventContentType, formatCoursePriceDisplay, MONTH_NAMES, formatEventPrice, getEventAvailability, formatEventTeacherLine, CreditCard, Ticket, Star, Sparkles, assertNever11 } from './chunk-R5ESWNKX.mjs';
12
+ import { buildEventCalendarListingRender, getWeekCalendarDays, formatCalendarTitle, groupEventsByDate, getOrderedDayNames, getMonthCalendarDays, formatDateKey, themeButtonClassName, normalizeEventBlockKind, EventCompactRow, EmptyState, getContainerClass, getCardOrientation, addMonths, getThreeMonthRange, isToday, MAX_EVENTS_PER_DAY, formatTime, resolveCoursePricingState, formatEventDateParts, formatCoursePriceAmount, DateTimeTile, normalizeIdList, EventCard, buildTimetableModel, formatDate, isEventContentType, formatCoursePriceDisplay, MONTH_NAMES, formatEventPrice, getEventAvailability, formatEventTeacherLine, CreditCard, Ticket, Star, Sparkles, assertNever11 } from './chunk-PUOELU4O.mjs';
13
13
  import { getBookingLocalDateKey, toScheduledBookingDateTime, toBookingTimeZone, formatBookingDateTime, formatBookingDate, formatBookingTime } from './chunk-AUJ5DBZJ.mjs';
14
14
  import { createContext, useId, useMemo, useState, useRef, useEffect, useCallback, useContext, useReducer } from 'react';
15
15
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { ChevronLeft, ChevronRight } from './chunk-R5ESWNKX.mjs';
2
+ import { ChevronLeft, ChevronRight } from './chunk-PUOELU4O.mjs';
3
3
  import { clsx_default } from './chunk-AUJ5DBZJ.mjs';
4
4
  import React, { useRef, useState, useCallback, useEffect } from 'react';
5
5
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
@@ -1735,6 +1735,86 @@ function themeButtonClassName(spec) {
1735
1735
 
1736
1736
  // ../theme-core/src/buttons/generateButtonCss.ts
1737
1737
  buttonSizeNameSchema.options;
1738
+ var cardVariantRoleValues = ["default", "alternative"];
1739
+ var boxlessCardVariantValue = "none";
1740
+ var legacyCardVariantRoleAliases = {
1741
+ variant1: "alternative",
1742
+ variant2: "alternative"
1743
+ };
1744
+ var cardSpacingSchema = z.enum(["none", "compact", "cozy", "medium", "comfortable", "spacious"]);
1745
+ var gradientDirectionSchema2 = z.enum(["to-r", "to-l", "to-t", "to-b", "to-tr", "to-tl", "to-br", "to-bl"]);
1746
+ var cardVariantRoleSchema = z.enum(cardVariantRoleValues);
1747
+ z.enum([
1748
+ ...cardVariantRoleValues,
1749
+ boxlessCardVariantValue
1750
+ ]);
1751
+ function isCardVariantRole(value) {
1752
+ return typeof value === "string" && cardVariantRoleValues.includes(value);
1753
+ }
1754
+ function normalizeCardVariantRole(value) {
1755
+ if (isCardVariantRole(value)) return value;
1756
+ if (typeof value !== "string") return null;
1757
+ return legacyCardVariantRoleAliases[value] ?? null;
1758
+ }
1759
+ var cardBackgroundSchema = z.discriminatedUnion("type", [
1760
+ z.object({ type: z.literal("solid"), colorToken: themeColorTokenSchema }),
1761
+ z.object({
1762
+ type: z.literal("gradient"),
1763
+ fromToken: themeColorTokenSchema,
1764
+ toToken: themeColorTokenSchema,
1765
+ direction: gradientDirectionSchema2
1766
+ }),
1767
+ z.object({ type: z.literal("transparent") })
1768
+ ]);
1769
+ var cardBorderSchema = z.object({
1770
+ widthClass: z.string(),
1771
+ colorToken: themeColorTokenSchema
1772
+ });
1773
+ var cardCornerValueSchema = z.enum([
1774
+ "square",
1775
+ "soft",
1776
+ "rounded",
1777
+ "pill",
1778
+ "expressive"
1779
+ ]);
1780
+ var cardAccentEdgeSchema = z.object({
1781
+ edge: z.enum(["left", "top", "right", "bottom"]),
1782
+ colorToken: themeColorTokenSchema,
1783
+ width: z.enum(["thin", "medium", "thick", "heavy"])
1784
+ });
1785
+ var cardCornerRadiiSchema = z.object({
1786
+ topLeft: cardCornerValueSchema.optional(),
1787
+ topRight: cardCornerValueSchema.optional(),
1788
+ bottomLeft: cardCornerValueSchema.optional(),
1789
+ bottomRight: cardCornerValueSchema.optional()
1790
+ });
1791
+ var cardVariantSchema = z.object({
1792
+ id: z.string(),
1793
+ name: z.string().min(1).max(20),
1794
+ enabled: z.boolean(),
1795
+ priority: z.union([z.literal(1), z.literal(2), z.literal(3)]),
1796
+ // Appearance (token-based)
1797
+ background: cardBackgroundSchema,
1798
+ spacing: cardSpacingSchema,
1799
+ // Optional foreground (card text) color, for cards on a strong fill.
1800
+ foregroundToken: themeColorTokenSchema.optional(),
1801
+ // Optional overrides (uses theme defaults if not specified)
1802
+ shadow: z.object({
1803
+ elevation: z.enum(["none", "low", "medium", "high"]),
1804
+ softness: z.enum(["crisp", "soft", "hard"]).nullable(),
1805
+ position: z.enum(["bottom", "bottom-right"]).default("bottom")
1806
+ }).optional(),
1807
+ corners: z.enum(["square", "soft", "rounded", "pill"]).optional(),
1808
+ // Per-corner radius override; wins over `corners` when set.
1809
+ cornerRadii: cardCornerRadiiSchema.optional(),
1810
+ // Border (optional)
1811
+ border: cardBorderSchema.optional(),
1812
+ // Single accent edge; replaces `border` when set.
1813
+ accentEdge: cardAccentEdgeSchema.optional()
1814
+ });
1815
+ z.object({
1816
+ variants: z.array(cardVariantSchema).min(1).max(3)
1817
+ });
1738
1818
  z.string();
1739
1819
  var CSS_COLOR_FUNCTION_PATTERN = /^(?:rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch|color|color-mix|light-dark)\(/i;
1740
1820
  var CSS_HEX_COLOR_PATTERN = /^#(?:[0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i;
@@ -5654,7 +5734,7 @@ var EventCard = ({
5654
5734
  const cta = resolveEventCta(event, buttonText);
5655
5735
  const isSoldOut = cta.hidden;
5656
5736
  const { available: spotsLeft } = getEventAvailability(event);
5657
- const cardClass = `card-${cardVariant}`;
5737
+ const cardClass = `card-${normalizeCardVariantRole(cardVariant) ?? "default"}`;
5658
5738
  const buttonClass = themeButtonClassName({ variant: buttonVariant, size: "md" });
5659
5739
  const title = event.title;
5660
5740
  const summary = event.presentation?.summary ?? event.description;
@@ -5993,7 +6073,11 @@ function DateTimeTile({ startsAt, endsAt, timeZone }) {
5993
6073
  }
5994
6074
 
5995
6075
  // ../blocks/src/system/runtime/nodes/events/EventListing.interactive.ts
5996
- var cardVariantSchema = z.enum(["default", "variant1", "variant2"]);
6076
+ var legacyEventCardVariantSchema = z.enum(["variant1", "variant2"]);
6077
+ var eventCardVariantInputSchema = z.union([
6078
+ cardVariantRoleSchema,
6079
+ legacyEventCardVariantSchema
6080
+ ]);
5997
6081
  var cardOrientationSchema = z.enum(["vertical", "horizontal"]);
5998
6082
  var eventBlockKindSchema = z.enum(eventBlockKindValues);
5999
6083
  var eventSurfaceScopeSchema = z.enum(eventSurfaceScopeValues);
@@ -6009,7 +6093,7 @@ var eventListingSourceSchema = z.object({
6009
6093
  paginationMode: z.enum(["loadMore", "seeAllLink"]).optional(),
6010
6094
  seeAllUrl: z.string().optional(),
6011
6095
  loadMoreText: z.string().optional(),
6012
- cardVariant: cardVariantSchema.optional(),
6096
+ cardVariant: eventCardVariantInputSchema.optional(),
6013
6097
  buttonVariant: eventButtonVariantSchema.optional(),
6014
6098
  buttonText: z.string().optional(),
6015
6099
  showVenue: z.boolean().optional(),
@@ -6037,7 +6121,7 @@ var eventListingDisplaySchema = z.object({
6037
6121
  emptyMessage: z.string(),
6038
6122
  loadingMessage: z.string(),
6039
6123
  containerClass: z.string(),
6040
- cardVariant: cardVariantSchema,
6124
+ cardVariant: cardVariantRoleSchema,
6041
6125
  buttonVariant: eventButtonVariantSchema,
6042
6126
  buttonText: z.string(),
6043
6127
  showVenue: z.boolean(),
@@ -6098,7 +6182,7 @@ var eventListingBlockRuntime = defineProgressiveBlockRuntime({
6098
6182
  emptyMessage: source.emptyMessage ?? "No upcoming events scheduled.",
6099
6183
  loadingMessage: "Loading events\u2026",
6100
6184
  containerClass: getContainerClass(layout, source.columns ?? "3"),
6101
- cardVariant: source.cardVariant ?? "default",
6185
+ cardVariant: normalizeCardVariantRole(source.cardVariant) ?? "default",
6102
6186
  buttonVariant: source.buttonVariant ?? "primary",
6103
6187
  buttonText: source.buttonText ?? "Book now",
6104
6188
  showVenue: source.showVenue ?? true,
@@ -1,13 +1,13 @@
1
1
  "use client";
2
- import { addPassToCommerceCart, useCommerceCart } from './chunk-TYONZMST.mjs';
3
- import { CarouselNodeClient } from './chunk-UDS3NTWA.mjs';
2
+ import { addPassToCommerceCart, useCommerceCart } from './chunk-4W66ALYT.mjs';
3
+ import { CarouselNodeClient } from './chunk-IWFZSQNZ.mjs';
4
4
  import { isRecord } from './chunk-I2MMZO53.mjs';
5
5
  import { useDiscountCodeUi } from './chunk-ZFHRN6W2.mjs';
6
- import { createBodyThemePortalRoot, consumeSearchParams, scrollToBlock, TerminalPanel, StateIcon, CheckIcon, CrossIcon, ActionRow, DiscountCodeDisclosure, consumeSearchParam, buildCheckoutReturnUrls } from './chunk-CCNTDRCF.mjs';
6
+ import { createBodyThemePortalRoot, consumeSearchParams, scrollToBlock, TerminalPanel, StateIcon, CheckIcon, CrossIcon, ActionRow, DiscountCodeDisclosure, consumeSearchParam, buildCheckoutReturnUrls } from './chunk-Y37KDO7P.mjs';
7
7
  import { ModalShell, resolveDedicatedCheckoutPath } from './chunk-3PEDD5KJ.mjs';
8
8
  import { useBlockApi, FeedbackMessage, BlockApiProvider } from './chunk-UDNSI5PY.mjs';
9
9
  import { mountReactIsland } from './chunk-N7PBWBWQ.mjs';
10
- import { themeButtonClassName, formatCommercePrice, formatInterval, getShopDisplayForItems, deriveCommerceCheckoutState, buildProductDetailDisplay, productItemKey, buildProductCartItem, buildProductCardDisplay, assertNever11, reportWorkflowError, clearWorkflowFeedback } from './chunk-R5ESWNKX.mjs';
10
+ import { themeButtonClassName, formatCommercePrice, formatInterval, getShopDisplayForItems, deriveCommerceCheckoutState, buildProductDetailDisplay, productItemKey, buildProductCartItem, buildProductCardDisplay, assertNever11, reportWorkflowError, clearWorkflowFeedback } from './chunk-PUOELU4O.mjs';
11
11
  import { assertNever, ok, err, getCurrentResolveImageUrlContext, resolveImageUrlWithContext, ImagePresets } from './chunk-AUJ5DBZJ.mjs';
12
12
  import * as React3 from 'react';
13
13
  import React3__default, { useState, useRef, useCallback, useEffect } from 'react';
@@ -1,6 +1,6 @@
1
1
  "use client";
2
2
  import { useBlockApi, BlockApiError } from './chunk-UDNSI5PY.mjs';
3
- import { themeButtonClassName } from './chunk-R5ESWNKX.mjs';
3
+ import { themeButtonClassName } from './chunk-PUOELU4O.mjs';
4
4
  import { useState, useSyncExternalStore, useEffect } from 'react';
5
5
  import { jsxs, jsx } from 'react/jsx-runtime';
6
6
 
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { assertNever11 } from './chunk-R5ESWNKX.mjs';
2
+ import { assertNever11 } from './chunk-PUOELU4O.mjs';
3
3
  import { useReducer, useRef, useCallback, useEffect } from 'react';
4
4
 
5
5
  // ../blocks/src/system/runtime/hooks/usePolling.state.ts
@@ -1,5 +1,5 @@
1
1
  import { FeedbackMessage } from './chunk-UDNSI5PY.mjs';
2
- import { themeButtonClassName } from './chunk-R5ESWNKX.mjs';
2
+ import { themeButtonClassName } from './chunk-PUOELU4O.mjs';
3
3
  import { clsx_default } from './chunk-AUJ5DBZJ.mjs';
4
4
  import { useId } from 'react';
5
5
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';