@riverbankcms/sdk 0.153.0 → 0.154.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 (216) hide show
  1. package/dist/{EventEmbeddedCheckoutStep-veN-QiAE.mjs → EventEmbeddedCheckoutStep-ba9npQtb.mjs} +1 -1
  2. package/dist/{PreviewEditorSidebar-jI_4DTZY.mjs → PreviewEditorSidebar-C7FiaxlF.mjs} +194 -22
  3. package/dist/{PreviewEditorUI-ORkVZhfu.mjs → PreviewEditorUI-DFst50q1.mjs} +20 -44
  4. package/dist/{SdkPreviewModeRuntime-DaNqevI1.mjs → SdkPreviewModeRuntime-BUNV_YHZ.mjs} +49 -32
  5. package/dist/{SiteChromeCustomizeContext-CgNuBHC0.mjs → SiteChromeCustomizeContext-DEj7qppF.mjs} +3558 -2321
  6. package/dist/{ThemedButton-X2UxhW6F.mjs → ThemedButton-C8kzu0hY.mjs} +400 -81
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +364 -130
  8. package/dist/_dts/ai/src/contracts/siteStyleProposalSchemas.d.ts +1035 -477
  9. package/dist/_dts/api/src/billing.d.ts +2 -0
  10. package/dist/_dts/api/src/billingEndpointDefinitions.d.ts +78 -0
  11. package/dist/_dts/api/src/bookingAdjustments.d.ts +3 -2
  12. package/dist/_dts/api/src/bookingOperations.d.ts +7 -2
  13. package/dist/_dts/api/src/bookingPeople.d.ts +19 -0
  14. package/dist/_dts/api/src/bookingPeopleEndpointDefinitions.d.ts +8 -0
  15. package/dist/_dts/api/src/bookingRecords.d.ts +4 -106
  16. package/dist/_dts/api/src/bookings.d.ts +2 -3
  17. package/dist/_dts/api/src/contentRuntime.d.ts +1 -0
  18. package/dist/_dts/api/src/endpoints.d.ts +88 -43
  19. package/dist/_dts/api/src/index.d.ts +4 -2
  20. package/dist/_dts/api/src/indexCoreTypes.d.ts +1 -0
  21. package/dist/_dts/api/src/moneyPayments.d.ts +116 -0
  22. package/dist/_dts/api/src/onboarding/surfaceData.d.ts +2 -0
  23. package/dist/_dts/api/src/sdk-event-upsert.d.ts +2 -2
  24. package/dist/_dts/api/src/sdkThemeWire.d.ts +162 -103
  25. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +18 -0
  26. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +17 -16
  27. package/dist/_dts/api/src/siteSettings.d.ts +1 -0
  28. package/dist/_dts/api/src/stripeConnectSetup.d.ts +90 -0
  29. package/dist/_dts/api/src/types.d.ts +11 -31
  30. package/dist/_dts/api/src/wholeSeriesRuns.d.ts +2 -4
  31. package/dist/_dts/blocks/src/client/site-chrome.d.ts +1 -1
  32. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +8 -96
  33. package/dist/_dts/blocks/src/primitives/content/components/RichText.d.ts +1 -1
  34. package/dist/_dts/blocks/src/primitives/content/primitives.d.ts +4 -1
  35. package/dist/_dts/blocks/src/primitives/layout/Section.d.ts +1 -0
  36. package/dist/_dts/blocks/src/system/blocks/events/event-calendar.d.ts +1 -1
  37. package/dist/_dts/blocks/src/system/blocks/events/eventSelectionFields.d.ts +1 -1
  38. package/dist/_dts/blocks/src/system/blocks/events/shared/fields.d.ts +0 -4
  39. package/dist/_dts/blocks/src/system/blocks/events/shared/index.d.ts +0 -1
  40. package/dist/_dts/blocks/src/system/blocks/events/shared/schemas.d.ts +4 -4
  41. package/dist/_dts/blocks/src/system/blocks/form.d.ts +10 -0
  42. package/dist/_dts/blocks/src/system/blocks/image-gallery/fields.d.ts +1 -0
  43. package/dist/_dts/blocks/src/system/blocks/image-gallery.d.ts +6 -1
  44. package/dist/_dts/blocks/src/system/blocks/location-map.d.ts +1 -1
  45. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +47 -45
  46. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +12 -0
  47. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime-layout.d.ts +23 -0
  48. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime-profile.d.ts +20 -0
  49. package/dist/_dts/blocks/src/system/blocks/site-footer-runtime.d.ts +17 -16
  50. package/dist/_dts/blocks/src/system/blocks/site-footer.d.ts +1 -1
  51. package/dist/_dts/blocks/src/system/customize/facets.d.ts +75 -9
  52. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +24 -24
  53. package/dist/_dts/blocks/src/system/node/fragments/index.d.ts +1 -0
  54. package/dist/_dts/blocks/src/system/node/fragments/lookSlot.d.ts +1 -1
  55. package/dist/_dts/blocks/src/system/node/fragments/responsiveTwoColumn.d.ts +3 -1
  56. package/dist/_dts/blocks/src/system/node/fragments/sectionHead.d.ts +15 -0
  57. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +18 -198
  58. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +9 -99
  59. package/dist/_dts/blocks/src/system/runtime/lookSurfaces.d.ts +16 -4
  60. package/dist/_dts/blocks/src/system/runtime/nodes/basic.d.ts +2 -1
  61. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/lookPresentation.d.ts +10 -4
  62. package/dist/_dts/blocks/src/system/runtime/nodes/event-details/presentation.d.ts +1 -1
  63. package/dist/_dts/blocks/src/system/runtime/nodes/events/domain/dates.d.ts +1 -1
  64. package/dist/_dts/blocks/src/system/runtime/nodes/events/shared/eventCollectionContract.d.ts +29 -17
  65. package/dist/_dts/blocks/src/system/runtime/nodes/form.fields.d.ts +5 -2
  66. package/dist/_dts/blocks/src/system/runtime/nodes/form.interactive.d.ts +11 -79
  67. package/dist/_dts/blocks/src/system/runtime/nodes/form.parts.d.ts +7 -0
  68. package/dist/_dts/blocks/src/system/runtime/nodes/form.server.d.ts +2 -13
  69. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.interactive.d.ts +8 -72
  70. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.parts.d.ts +6 -6
  71. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +3 -2
  72. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +2 -2
  73. package/dist/_dts/blocks/src/system/transforms/registry/_utils/surfaceForegroundStyles.d.ts +3 -0
  74. package/dist/_dts/blocks/src/system/transforms/registry/footerArrangement.d.ts +6 -0
  75. package/dist/_dts/blocks/src/system/transforms/registry/layout.d.ts +0 -11
  76. package/dist/_dts/blocks/src/system/transforms/typed.d.ts +1 -10
  77. package/dist/_dts/commerce/src/purchase/orderConfirmationPlanning.d.ts +1 -0
  78. package/dist/_dts/content-editor/src/FooterComposerOverview.d.ts +5 -2
  79. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +1 -1
  80. package/dist/_dts/content-editor/src/FooterNavigationLayoutControl.d.ts +6 -3
  81. package/dist/_dts/content-editor/src/controller/editorLeaseParticipation.d.ts +1 -1
  82. package/dist/_dts/content-editor/src/footerComposer.d.ts +2 -1
  83. package/dist/_dts/content-editor/src/footerComposerPanelTypes.d.ts +3 -1
  84. package/dist/_dts/content-editor/src/footerNavigationLayoutState.d.ts +56 -0
  85. package/dist/_dts/content-editor/src/footerPreviewRuntime.d.ts +2 -1
  86. package/dist/_dts/content-editor/src/useFooterComposerState.d.ts +3 -4
  87. package/dist/_dts/content-editor/src/useFooterNavigationLayout.d.ts +11 -8
  88. package/dist/_dts/core/src/booking-refunds.d.ts +2 -0
  89. package/dist/_dts/core/src/date-display.d.ts +85 -0
  90. package/dist/_dts/core/src/date-time-formatter.d.ts +2 -0
  91. package/dist/_dts/core/src/footer-arrangement.d.ts +8 -1
  92. package/dist/_dts/core/src/footer-composition-types.d.ts +6 -1
  93. package/dist/_dts/core/src/footer-composition.d.ts +1 -1
  94. package/dist/_dts/core/src/footer-navigation-layout.d.ts +3 -0
  95. package/dist/_dts/core/src/index.d.ts +2 -0
  96. package/dist/_dts/core/src/mailing-list-setup.d.ts +3 -0
  97. package/dist/_dts/core/src/mailing-list-submission.d.ts +6 -1
  98. package/dist/_dts/core/src/public-profile.d.ts +3 -1
  99. package/dist/_dts/core/src/scheduled-date-time.d.ts +69 -0
  100. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +50 -9
  101. package/dist/_dts/db/src/schemas/forms.d.ts +16 -16
  102. package/dist/_dts/preview-next/src/client/blocks/ArrangementBlockToolbar.d.ts +2 -1
  103. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +1 -0
  104. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +1 -0
  105. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +4 -1
  106. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +27 -5
  107. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +2 -0
  108. package/dist/_dts/preview-next/src/client/preview/useConfirmedPreferenceRecord.d.ts +12 -0
  109. package/dist/_dts/preview-next/src/client/preview/usePersistedFooterPreferences.d.ts +26 -0
  110. package/dist/_dts/preview-next/src/client/preview/usePersistedHeaderPreferences.d.ts +40 -2
  111. package/dist/_dts/sdk/src/config/validation.d.ts +3 -3
  112. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +4 -46
  113. package/dist/_dts/sdk/src/date-time/index.d.ts +2 -68
  114. package/dist/_dts/sdk/src/public-api/contracts.d.ts +1 -0
  115. package/dist/_dts/sdk/src/rendering/islands/types.d.ts +1 -1
  116. package/dist/_dts/sdk/src/version.d.ts +1 -1
  117. package/dist/_dts/theme-core/src/buttons/buttonColourContract.d.ts +2 -0
  118. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +2 -0
  119. package/dist/_dts/theme-core/src/buttons/styles/recipes/lanternRecipes.d.ts +60 -0
  120. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +57 -0
  121. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +10 -1
  122. package/dist/_dts/theme-core/src/buttons/types.d.ts +358 -46
  123. package/dist/_dts/theme-core/src/buttons/typography.d.ts +24 -0
  124. package/dist/_dts/theme-core/src/cards/types.d.ts +8 -8
  125. package/dist/_dts/theme-core/src/footer/effectiveNavLinkStyle.d.ts +1 -1
  126. package/dist/_dts/theme-core/src/footer/generateFooterCss.d.ts +4 -1
  127. package/dist/_dts/theme-core/src/footer/mode.d.ts +2 -11
  128. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  129. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +234 -147
  130. package/dist/_dts/theme-core/src/navigation/types.d.ts +4 -4
  131. package/dist/_dts/theme-core/src/schema.d.ts +300 -192
  132. package/dist/_dts/theme-core/src/site-styles/appearancePresetTypes.d.ts +23 -7
  133. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  134. package/dist/_dts/theme-core/src/site-styles/compilationPlan.d.ts +4 -6
  135. package/dist/_dts/theme-core/src/site-styles/compileFooterAgainstRow.d.ts +121 -0
  136. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +25 -0
  137. package/dist/_dts/theme-core/src/site-styles/footerLookDefaults.d.ts +45 -0
  138. package/dist/_dts/theme-core/src/site-styles/footerLookRecipe.d.ts +50 -0
  139. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +9 -35
  140. package/dist/_dts/theme-core/src/site-styles/footerPreferences.d.ts +29 -0
  141. package/dist/_dts/theme-core/src/site-styles/headerPreferencesPersistence.d.ts +2 -3
  142. package/dist/_dts/theme-core/src/site-styles/index.d.ts +4 -0
  143. package/dist/_dts/theme-core/src/site-styles/lookResolution.d.ts +2 -2
  144. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +1 -1
  145. package/dist/_dts/theme-core/src/site-styles/siteChromeBackgrounds.d.ts +8 -0
  146. package/dist/_dts/theme-core/src/site-styles/themeParity.d.ts +1 -1
  147. package/dist/_dts/theme-core/src/site-styles/tokenRecipes.d.ts +1 -1
  148. package/dist/_dts/ui/src/card.d.ts +1 -1
  149. package/dist/client/{BookingMailingListNote-DrchYW1m.mjs → BookingMailingListNote-CNoSqFtf.mjs} +2 -2
  150. package/dist/client/{CardListItem-CC_GVmF6.mjs → CardListItem-BkTkqBkh.mjs} +3 -3
  151. package/dist/client/{CheckboxChoice-Dq30m3DO.mjs → CheckboxChoice-CHJpsty4.mjs} +1 -1
  152. package/dist/client/{DemoBookingPortalAccess-ojwbVUmx.mjs → DemoBookingPortalAccess-C7KQKFNt.mjs} +2 -2
  153. package/dist/client/{EventCombined.client-DyN0v0Xk.mjs → EventCombined.client-BgeYMjHJ.mjs} +5 -5
  154. package/dist/client/{EventEmbeddedCheckoutStep-CgfpKc3n.mjs → EventEmbeddedCheckoutStep-BTc_lTkM.mjs} +2 -2
  155. package/dist/client/{EventListing.client-CuOuvYMz.mjs → EventListing.client-ChRs9Hl2.mjs} +2 -2
  156. package/dist/client/{LeafletStaticMap-B0WhRr3j.mjs → LeafletStaticMap-C_dNQgd0.mjs} +1 -1
  157. package/dist/client/{RichText-C1fIXBzA.mjs → RichText-BI9bzbjo.mjs} +75 -42
  158. package/dist/client/{ThemedButton-B7HFqFBg.mjs → ThemedButton-wl3Z3wkH.mjs} +1 -1
  159. package/dist/client/{accordion-DCDVWSye.mjs → accordion-6Yz8Wd83.mjs} +1 -1
  160. package/dist/client/{bookingForm-BJ3C4GlM.mjs → bookingForm-i_pKIGiY.mjs} +8 -8
  161. package/dist/client/bookings.mjs +12565 -11839
  162. package/dist/client/{carousel-BSCBhfHY.mjs → carousel-DNqd_PjC.mjs} +2 -2
  163. package/dist/client/{carousel.client-GEtOGsxo.mjs → carousel.client-BUgjPbb6.mjs} +1 -1
  164. package/dist/client/{cart-Yv-aAtck.mjs → cart-D8OBHuF4.mjs} +3 -3
  165. package/dist/client/{checkout-B9xDkl30.mjs → checkout-F3-9IGLU.mjs} +3 -3
  166. package/dist/client/client.mjs +6109 -4778
  167. package/dist/client/{context-BOGe3rIA.mjs → context-Dg4ZrxDD.mjs} +1 -1
  168. package/dist/client/{eventCalendar-D6M0T9hs.mjs → eventCalendar-BUc7YIBM.mjs} +8 -8
  169. package/dist/client/{eventCombined-NM4UFBq8.mjs → eventCombined-BwfShk2a.mjs} +4 -4
  170. package/dist/client/{eventDetails-f_FhV4O8.mjs → eventDetails-BMOVC3go.mjs} +3 -3
  171. package/dist/client/{eventListing-WLkfAROh.mjs → eventListing-BwE9PM-t.mjs} +4 -4
  172. package/dist/client/{eventRegistration-D3ejfLvW.mjs → eventRegistration-CCWPYDc7.mjs} +9 -9
  173. package/dist/client/{form-D5Or2Jyu.mjs → form-CXFr0Gd5.mjs} +115 -51
  174. package/dist/client/{headerSection-hWgnv27V.mjs → headerSection-BX8qw8kH.mjs} +3 -3
  175. package/dist/client/hooks.mjs +2041 -1193
  176. package/dist/client/{locationMap-Di1K0O2S.mjs → locationMap-B3La71m0.mjs} +3 -3
  177. package/dist/client/{media-D29-F1u_.mjs → media-B1Cbv721.mjs} +1 -1
  178. package/dist/client/{newsletterForm-CwxcwTNO.mjs → newsletterForm-DnGyR0x7.mjs} +50 -14
  179. package/dist/client/{productDetail-BLSnhPdA.mjs → productDetail-BVgTqvkb.mjs} +3 -3
  180. package/dist/client/{productList-oGytONOX.mjs → productList-CcO7kUQw.mjs} +3 -3
  181. package/dist/client/{propsDecoder-lf_dTeZS.mjs → propsDecoder-B1OeWavE.mjs} +706 -229
  182. package/dist/client/rendering/client.mjs +11868 -11098
  183. package/dist/client/rendering/islands.mjs +17 -17
  184. package/dist/client/rendering.mjs +6058 -4676
  185. package/dist/client/{routeIslandApiConfig-Bc_WVPS8.mjs → routeIslandApiConfig-Dl4vglJm.mjs} +1 -1
  186. package/dist/client/{shop-BQ3bR7fA.mjs → shop-P72nX5Fs.mjs} +7 -7
  187. package/dist/client/{shop-commerce-DDPll6ZC.mjs → shop-commerce-Bt7uraDx.mjs} +8 -8
  188. package/dist/client/{shop-commerce-store-DO-e1pTe.mjs → shop-commerce-store-C1-mxSye.mjs} +1 -1
  189. package/dist/client/{shopShared-BylM9jh1.mjs → shopShared-Db-cRGu3.mjs} +4 -4
  190. package/dist/client/{useDiscountCodeUi-B1Puub2v.mjs → useDiscountCodeUi-jvAiUoUX.mjs} +1 -1
  191. package/dist/client/{useEventPagination-BBhkmQaT.mjs → useEventPagination-BdWpCniq.mjs} +6 -6
  192. package/dist/preview-next/before-render.mjs +133 -51
  193. package/dist/preview-next/client/runtime.mjs +3 -3
  194. package/dist/preview-next/editor-chrome.css +5 -2
  195. package/dist/preview-next/keepAlive.mjs +133 -51
  196. package/dist/preview-next/middleware.mjs +133 -51
  197. package/dist/{sdk-runtime-DWCvhJGu.mjs → sdk-runtime-DLhjF2Nw.mjs} +1 -1
  198. package/dist/server/components.mjs +11284 -10014
  199. package/dist/server/config-validation.mjs +2016 -1188
  200. package/dist/server/config.mjs +2016 -1188
  201. package/dist/server/data.mjs +2041 -1193
  202. package/dist/server/date-time.mjs +258 -116
  203. package/dist/server/index.mjs +134 -52
  204. package/dist/server/next.mjs +10571 -9350
  205. package/dist/server/page-converter.mjs +1629 -941
  206. package/dist/server/prebuild.mjs +1 -1
  207. package/dist/server/rendering/server.mjs +11156 -9872
  208. package/dist/server/rendering.mjs +11284 -10014
  209. package/dist/server/routing.mjs +2204 -1283
  210. package/dist/server/server.mjs +2369 -1570
  211. package/dist/server/theme-bridge.mjs +838 -124
  212. package/dist/server/theme.mjs +348 -64
  213. package/dist/{spinner-BYM-Y81w.mjs → spinner-MTooKfck.mjs} +1 -1
  214. package/dist/styles/index.css +254 -1
  215. package/package.json +1 -1
  216. package/dist/_dts/blocks/src/system/blocks/events/shared/layout.d.ts +0 -12
@@ -937,6 +937,29 @@ function SpinnerNode({ className, size = "md", color, strokeWidth = 3, srLabel,
937
937
  });
938
938
  }
939
939
  //#endregion
940
+ //#region ../theme-core/src/buttons/typography.ts
941
+ const textTransformSchema = z.enum([
942
+ "none",
943
+ "uppercase",
944
+ "lowercase",
945
+ "capitalize"
946
+ ]);
947
+ const fontWeightSchema = z.union([
948
+ z.literal(400),
949
+ z.literal(500),
950
+ z.literal(600),
951
+ z.literal(700),
952
+ z.literal(800)
953
+ ]);
954
+ const buttonTypographySchema = z.enum(["body", "heading"]);
955
+ const letterSpacingSchema = z.enum([
956
+ "tight",
957
+ "normal",
958
+ "slight",
959
+ "loose",
960
+ "wide"
961
+ ]);
962
+ //#endregion
940
963
  //#region ../theme-core/src/tokens/colorTokenParts.ts
941
964
  function parseOpacityPercent(source) {
942
965
  const trimmed = source.trim();
@@ -1214,6 +1237,7 @@ const buttonEffectApplicationSchema = z.discriminatedUnion("effectId", [
1214
1237
  z.strictObject({
1215
1238
  effectId: z.literal("lift"),
1216
1239
  options: z.strictObject({ amount: z.enum([
1240
+ "0.125",
1217
1241
  "0.25",
1218
1242
  "0.5",
1219
1243
  "1"
@@ -1260,24 +1284,6 @@ const shadowSizeSchema = z.enum([
1260
1284
  "medium",
1261
1285
  "high"
1262
1286
  ]);
1263
- const textTransformSchema = z.enum([
1264
- "none",
1265
- "uppercase",
1266
- "lowercase",
1267
- "capitalize"
1268
- ]);
1269
- const fontWeightSchema = z.union([
1270
- z.literal(500),
1271
- z.literal(600),
1272
- z.literal(700),
1273
- z.literal(800)
1274
- ]);
1275
- const buttonTypographySchema = z.enum(["body", "heading"]);
1276
- const letterSpacingSchema = z.enum([
1277
- "tight",
1278
- "normal",
1279
- "loose"
1280
- ]);
1281
1287
  const hoverTransformSchema = z.enum([
1282
1288
  "none",
1283
1289
  "lift",
@@ -1349,7 +1355,8 @@ const paddingShorthandSchema = z.string().refine((value) => {
1349
1355
  }, { message: "Padding must be two space-separated CSS length tokens (e.g. \"0.5rem 1rem\"). Use `0` for zero." });
1350
1356
  const buttonSizeConfigSchema = z.object({
1351
1357
  padding: paddingShorthandSchema,
1352
- fontSize: z.string().optional()
1358
+ fontSize: z.string().optional(),
1359
+ borderRadius: z.string().optional()
1353
1360
  });
1354
1361
  /**
1355
1362
  * `xl` is optional on the wire so themes persisted before the `xl` size was
@@ -1472,12 +1479,20 @@ const buttonVisualAppearanceSchema = z.strictObject({
1472
1479
  textTransform: textTransformSchema
1473
1480
  }),
1474
1481
  effects: z.array(buttonEffectApplicationSchema),
1482
+ transform: z.literal("none").optional(),
1475
1483
  contextualHover: contextualButtonHoverSchema.optional()
1476
1484
  });
1477
1485
  const buttonVisualStatesSchema = z.strictObject({
1478
1486
  base: buttonVisualAppearanceSchema.extend({ shadow: variantShadowSchema }),
1479
1487
  hover: buttonVisualAppearanceSchema.extend({ shadow: variantShadowSchema }),
1480
- focus: buttonVisualAppearanceSchema.extend({ shadow: z.literal("focus-indicator") }),
1488
+ focus: buttonVisualAppearanceSchema.extend({
1489
+ shadow: z.literal("focus-indicator"),
1490
+ indicator: z.strictObject({
1491
+ kind: z.literal("surface-ink"),
1492
+ width: z.union([z.literal(2), z.literal(3)]),
1493
+ offset: z.union([z.literal(3), z.literal(4)])
1494
+ }).optional()
1495
+ }),
1481
1496
  active: buttonVisualAppearanceSchema.extend({ shadow: variantShadowSchema }),
1482
1497
  disabled: buttonVisualAppearanceSchema.extend({ shadow: variantShadowSchema })
1483
1498
  });
@@ -2088,19 +2103,6 @@ const themeLookMetadataSchema = z.object({
2088
2103
  skinMarks: skinMarksSchema.optional()
2089
2104
  });
2090
2105
  //#endregion
2091
- //#region ../theme-core/src/footer/mode.ts
2092
- const footerModeSchema = z.enum([
2093
- "default",
2094
- "blocks",
2095
- "default+blocks",
2096
- "none"
2097
- ]);
2098
- /** Reads only SDK footer intent; unrelated config and theme fields are not authorities. */
2099
- function resolveSdkFooterMode(config) {
2100
- const parsed = z.object({ layout: z.object({ footerMode: footerModeSchema.optional() }).optional() }).safeParse(config);
2101
- return parsed.success ? parsed.data.layout?.footerMode ?? "default" : "default";
2102
- }
2103
- //#endregion
2104
2106
  //#region ../media-core/src/identifiers.ts
2105
2107
  function slugifyMediaIdentifier(value) {
2106
2108
  return value.toLowerCase().trim().replace(/[^a-z0-9\s-]/g, "").replace(/\s+/g, "-").replace(/-+/g, "-");
@@ -4165,6 +4167,8 @@ const GRADIENT_DIRECTION_MAP = {
4165
4167
  */
4166
4168
  const BORDER_RADIUS_MAP = {
4167
4169
  "rounded-none": "0",
4170
+ "rounded-3px": "3px",
4171
+ "rounded-10px": "10px",
4168
4172
  "rounded-sm": "0.125rem",
4169
4173
  "rounded": "0.25rem",
4170
4174
  "rounded-md": "0.375rem",
@@ -4238,6 +4242,10 @@ const BORDER_WIDTH_MAP = {
4238
4242
  */
4239
4243
  const FONT_SIZE_MAP = {
4240
4244
  "text-xs": "0.75rem",
4245
+ "text-13px": "0.8125rem",
4246
+ "text-15px": "0.9375rem",
4247
+ "text-17px": "1.0625rem",
4248
+ "text-19px": "1.1875rem",
4241
4249
  "text-sm": "0.875rem",
4242
4250
  "text-base": "1rem",
4243
4251
  "text-lg": "1.125rem",
@@ -4373,7 +4381,9 @@ function buttonTypographyDeclarations(type) {
4373
4381
  const spacing = type.letterSpacing === null ? null : type.letterSpacing === "heading" ? "var(--ls-heading)" : {
4374
4382
  tight: "-0.025em",
4375
4383
  normal: "0",
4376
- loose: "0.05em"
4384
+ slight: "0.01em",
4385
+ loose: "0.05em",
4386
+ wide: "0.125em"
4377
4387
  }[type.letterSpacing];
4378
4388
  return [
4379
4389
  ["font-weight", String(type.fontWeight)],
@@ -4393,21 +4403,23 @@ function buttonShadow(shadow, tokens) {
4393
4403
  function buttonBorder(border, tokens) {
4394
4404
  return border === "none" ? null : `${BORDER_WIDTH_MAP[border.widthClass] || "1px"} solid ${border.boundaryInk ? tokens.getColor(border.boundaryInk) : "currentColor"}`;
4395
4405
  }
4396
- /** Emit only changed declarations; identical states keep historical CSS bytes. */
4397
- function buttonStateAppearanceDeclarations(base, state, tokens, disabled = false) {
4398
- const original = new Map(buttonTypographyDeclarations(base.typography));
4399
- const declared = new Map(buttonTypographyDeclarations(state.typography));
4406
+ function buttonTypographyChanges(base, state) {
4407
+ const original = new Map(buttonTypographyDeclarations(base));
4408
+ const declared = new Map(buttonTypographyDeclarations(state));
4400
4409
  const resets = [
4401
4410
  ["font-style", "normal"],
4402
4411
  ["text-transform", "none"],
4403
4412
  ["letter-spacing", "normal"]
4404
4413
  ].filter(([property]) => original.has(property) && !declared.has(property));
4405
- const type = [...declared, ...resets].filter(([property, value]) => original.get(property) !== value);
4414
+ return [...declared, ...resets].filter(([property, value]) => original.get(property) !== value);
4415
+ }
4416
+ /** Emit only changed declarations; identical states keep historical CSS bytes. */
4417
+ function buttonStateAppearanceDeclarations(base, state, tokens, disabled = false) {
4406
4418
  const border = buttonBorder(state.border, tokens);
4407
4419
  const radius = buttonRadius(state.borderRadius);
4408
4420
  const shadow = !disabled && state.shadow !== "focus-indicator" ? buttonShadow(state.shadow, tokens) : null;
4409
4421
  return [
4410
- ...type,
4422
+ ...buttonTypographyChanges(base.typography, state.typography),
4411
4423
  ...buttonRadius(base.borderRadius) === radius ? [] : [["border-radius", radius]],
4412
4424
  ...buttonBorder(base.border, tokens) === border ? [] : [["border", border ?? "none"]],
4413
4425
  ...shadow === null || base.shadow === "focus-indicator" || buttonShadow(base.shadow, tokens) === shadow ? [] : [["box-shadow", shadow]]
@@ -4868,6 +4880,10 @@ function validateButtonTextContrast(input) {
4868
4880
  }
4869
4881
  };
4870
4882
  }
4883
+ /** A text-token slab inverts the palette's text/background pair, including text shades. */
4884
+ function solidForegroundToken(backgroundToken) {
4885
+ return /^text(?:-\d+)?$/.test(backgroundToken) ? "background" : onColorTokenName(backgroundToken);
4886
+ }
4871
4887
  //#endregion
4872
4888
  //#region ../theme-core/src/buttons/contextualHover.ts
4873
4889
  function resolveContextualHoverPreference(input) {
@@ -4965,7 +4981,7 @@ function candidate(family, shade, currentShade, direction, seedHex, palette) {
4965
4981
  }
4966
4982
  function hasSafeTextContrast(token, palette) {
4967
4983
  const background = palette[token];
4968
- const foreground = palette[onColorTokenName(token)];
4984
+ const foreground = palette[solidForegroundToken(token)];
4969
4985
  return typeof background === "string" && typeof foreground === "string" && contrastRatio(background, foreground) >= BUTTON_CONTRAST_POLICY.textMinimumRatio;
4970
4986
  }
4971
4987
  function isSafeCandidate(token, palette, surface) {
@@ -5060,6 +5076,13 @@ function compileDeclaredVisualStates(input, states) {
5060
5076
  const colours = collectStateColours(mapVisualStates((state) => compileDeclaredVisualState(input, states, state, state === "hover" ? hover.treatment : states[state].background)));
5061
5077
  return colours.ok ? {
5062
5078
  ...colours,
5079
+ focusIndicator: states.focus.indicator ? {
5080
+ kind: "surface-role",
5081
+ colorCss: input.surface?.foregroundCss ?? surfaceForegroundValue("text"),
5082
+ width: states.focus.indicator.width,
5083
+ offset: states.focus.indicator.offset,
5084
+ minimumSurfaceContrast: BUTTON_CONTRAST_POLICY.nonTextMinimumRatio
5085
+ } : colours.focusIndicator,
5063
5086
  contextualHoverRepair: hover.repair
5064
5087
  } : colours;
5065
5088
  }
@@ -5197,7 +5220,7 @@ function resolveFocusIndicator(colour) {
5197
5220
  function resolveSolid(input, backgroundToken, edge) {
5198
5221
  const backgroundHex = paletteHex(input, backgroundToken);
5199
5222
  if (!backgroundHex.ok) return backgroundHex;
5200
- const foregroundToken = unsafeAsOpaqueButtonColourToken(onColorTokenName(backgroundToken));
5223
+ const foregroundToken = unsafeAsOpaqueButtonColourToken(solidForegroundToken(backgroundToken));
5201
5224
  const foregroundHex = input.palette[foregroundToken];
5202
5225
  if (typeof foregroundHex !== "string") return {
5203
5226
  ok: false,
@@ -8533,20 +8556,15 @@ const headerSchema = z.object({
8533
8556
  const footerVariant = z.enum([
8534
8557
  "simple",
8535
8558
  "columns",
8536
- "split"
8537
- ]);
8559
+ "split",
8560
+ "centred"
8561
+ ]).transform((value) => value === "columns" ? "simple" : value);
8538
8562
  const footerMaxWidth = z.enum(["container", "full"]);
8539
8563
  const footerNavLayoutMode = z.enum([
8540
8564
  "stack",
8541
8565
  "inline",
8542
8566
  "inline-wrap"
8543
8567
  ]);
8544
- const footerNavLayoutAlign = z.enum([
8545
- "start",
8546
- "center",
8547
- "end",
8548
- "space-between"
8549
- ]);
8550
8568
  const footerSpacing = z.enum([
8551
8569
  "none",
8552
8570
  "tight",
@@ -8555,12 +8573,6 @@ const footerSpacing = z.enum([
8555
8573
  "relaxed",
8556
8574
  "spacious"
8557
8575
  ]);
8558
- const footerLogoPlacement = z.enum([
8559
- "left",
8560
- "right",
8561
- "above",
8562
- "below"
8563
- ]);
8564
8576
  const footerLogoSize = z.enum([
8565
8577
  "sm",
8566
8578
  "md",
@@ -8601,17 +8613,8 @@ const footerBottomBarSchema = z.object({
8601
8613
  ]).optional()
8602
8614
  }).optional()
8603
8615
  });
8604
- const footerNavLayoutSchema = z.object({
8605
- layout: footerNavLayoutMode.optional(),
8606
- align: footerNavLayoutAlign.optional(),
8607
- gapX: footerSpacing.optional(),
8608
- gapY: footerSpacing.optional(),
8609
- columns: z.number().int().min(1).max(6).optional()
8610
- });
8616
+ const footerNavLayoutSchema = z.object({ layout: footerNavLayoutMode.optional() });
8611
8617
  const footerLogoSchema = z.object({
8612
- showLogo: z.boolean().default(true),
8613
- showLogoText: z.boolean().optional(),
8614
- placement: footerLogoPlacement.optional(),
8615
8618
  size: footerLogoSize.optional(),
8616
8619
  maxHeight: footerLogoMaxHeight.optional(),
8617
8620
  align: z.enum([
@@ -8621,15 +8624,8 @@ const footerLogoSchema = z.object({
8621
8624
  ]).optional()
8622
8625
  });
8623
8626
  const footerSchema = z.object({
8624
- /**
8625
- * SDK-only footer rendering mode.
8626
- *
8627
- * Historical persisted field; SDK rendering mode now lives in layout.footerMode.
8628
- */
8629
- mode: footerModeSchema.optional(),
8630
8627
  variant: footerVariant,
8631
8628
  maxWidth: footerMaxWidth,
8632
- showLogoText: z.boolean().optional(),
8633
8629
  background: headerBackgroundSchema.default({
8634
8630
  type: "color",
8635
8631
  color: "surface"
@@ -9510,6 +9506,7 @@ const liftEffect = {
9510
9506
  label: "Lift Amount",
9511
9507
  default: "0.5",
9512
9508
  options: [
9509
+ "0.125",
9513
9510
  "0.25",
9514
9511
  "0.5",
9515
9512
  "1"
@@ -10475,7 +10472,7 @@ function resolvedButtonFocusDeclarations(indicator, role) {
10475
10472
  ["outline", value("outline", `2px solid ${indicator.innerCss}`)],
10476
10473
  ["outline-offset", value("outline-offset", "2px")],
10477
10474
  ["box-shadow", value("box-shadow", `0 0 0 4px ${indicator.outerCss}`)]
10478
- ] : [["outline", value("outline", `3px solid ${indicator.colorCss}`)], ["outline-offset", value("outline-offset", "3px")]];
10475
+ ] : [["outline", value("outline", `${indicator.width ?? 3}px solid ${indicator.colorCss}`)], ["outline-offset", value("outline-offset", `${indicator.offset ?? 3}px`)]];
10479
10476
  }
10480
10477
  /**
10481
10478
  * Disabled buttons are deliberately muted as unavailable controls. Native
@@ -10646,6 +10643,7 @@ function variantChunks(variant, global, themeSizes, themeId, tokens, theme, colo
10646
10643
  ]) out.push(variantStateColourRule(variant, variantId, themeId, state, colours[state], tokens));
10647
10644
  const effects = variantEffectsCss(variant, nonColourEffects, themeId, tokens, theme);
10648
10645
  if (effects) out.push({ raw: effects });
10646
+ out.push(...variantStateTransformRules(variant, selector));
10649
10647
  out.push(variantFocusVisibleRule(variantId, themeId, focusIndicator));
10650
10648
  const affordance = variantAffordanceRule(variant, selector);
10651
10649
  if (affordance) out.push(affordance);
@@ -10759,12 +10757,27 @@ function variantDisabledRules(variant, variantId, themeId, colour, tokens) {
10759
10757
  ["pointer-events", "none"]
10760
10758
  ])];
10761
10759
  }
10760
+ /** Explicit rest transforms follow hover effects so :active can return to rest. */
10761
+ function variantStateTransformRules(variant, selector) {
10762
+ return [
10763
+ "hover",
10764
+ "focus",
10765
+ "active"
10766
+ ].flatMap((state) => {
10767
+ const transform = variant.visualStates?.[state].transform;
10768
+ return transform ? [rule(`${selector}:${state}`, [["transform", transform]])] : [];
10769
+ });
10770
+ }
10762
10771
  function variantSizeRules(variant, variantId, themeSizes, themeId) {
10763
10772
  const border = variant.visualStates?.base.border ?? variant.border;
10764
10773
  const borderWidth = border && border !== "none" ? BORDER_WIDTH_MAP[border.widthClass] || "1px" : "0px";
10765
10774
  return BUTTON_SIZE_NAMES.map((sizeName) => {
10766
10775
  const config = resolveSizeConfig(variant, sizeName, themeSizes);
10767
- return rule(`:where([data-theme-scope="${themeId}"]) ${themeButtonSelector(variantId, sizeName)}`, [...paddingDeclarations(config.padding, borderWidth), ...config.fontSize ? [["font-size", FONT_SIZE_MAP[config.fontSize] || "1rem"]] : []]);
10776
+ return rule(`:where([data-theme-scope="${themeId}"]) ${themeButtonSelector(variantId, sizeName)}`, [
10777
+ ...paddingDeclarations(config.padding, borderWidth),
10778
+ ...config.fontSize ? [["font-size", FONT_SIZE_MAP[config.fontSize] || "1rem"]] : [],
10779
+ ...config.borderRadius ? [["border-radius", buttonRadius(config.borderRadius)]] : []
10780
+ ]);
10768
10781
  });
10769
10782
  }
10770
10783
  function variantStateSizeRules(variant, variantId, themeId) {
@@ -10779,11 +10792,24 @@ function variantStateSizeRules(variant, variantId, themeId) {
10779
10792
  ].flatMap((state) => BUTTON_SIZE_NAMES.flatMap((size) => {
10780
10793
  const base = states.base.sizes[size];
10781
10794
  const target = states[state].sizes[size];
10782
- if (base.padding === target.padding && base.fontSize === target.fontSize && width(states.base.border) === width(states[state].border)) return [];
10795
+ const declarations = stateSizeDeclarations(base, target, width(states.base.border), width(states[state].border), states.base.borderRadius, states[state].borderRadius);
10796
+ if (declarations.length === 0) return [];
10783
10797
  const selector = `:where([data-theme-scope="${themeId}"]) ${themeButtonSelector(variantId, size)}`;
10784
- return [rule(state === "hover" ? [`${selector}:hover`, `${selector}[data-force-hover="true"]`] : `${selector}:${state}`, [...paddingDeclarations(target.padding, width(states[state].border)), ...target.fontSize ? [["font-size", FONT_SIZE_MAP[target.fontSize] || "1rem"]] : []])];
10798
+ return [rule(state === "hover" ? [`${selector}:hover`, `${selector}[data-force-hover="true"]`] : `${selector}:${state}`, declarations)];
10785
10799
  }));
10786
10800
  }
10801
+ /** Size radius overrides remain owned by each state, just like padding and type. */
10802
+ function stateSizeDeclarations(base, target, baseWidth, targetWidth, baseRadius, targetRadius) {
10803
+ const originalRadius = buttonRadius(base.borderRadius ?? baseRadius);
10804
+ const radius = buttonRadius(target.borderRadius ?? targetRadius);
10805
+ const radiusChanges = originalRadius === radius ? [] : [["border-radius", radius]];
10806
+ if (base.padding === target.padding && base.fontSize === target.fontSize && baseWidth === targetWidth) return radiusChanges;
10807
+ return [
10808
+ ...paddingDeclarations(target.padding, targetWidth),
10809
+ ...target.fontSize ? [["font-size", FONT_SIZE_MAP[target.fontSize] || "1rem"]] : [],
10810
+ ...radiusChanges
10811
+ ];
10812
+ }
10787
10813
  /** Layout contexts do not change a recipe: grouped actions share its ordinary box. */
10788
10814
  function generateButtonActionLayoutCss(options) {
10789
10815
  const system = options.buttonSystem ?? generateDefaultButtonSystem(options.theme);
@@ -10866,6 +10892,287 @@ function normalizeAppearance(appearance) {
10866
10892
  };
10867
10893
  }
10868
10894
  //#endregion
10895
+ //#region ../theme-core/src/buttons/styles/recipes/lanternRecipes.ts
10896
+ const flatShadow = {
10897
+ elevation: "none",
10898
+ softness: null,
10899
+ position: "bottom"
10900
+ };
10901
+ const lift$1 = {
10902
+ effectId: "lift",
10903
+ options: { amount: "0.125" }
10904
+ };
10905
+ const tags = {
10906
+ tone: "classic",
10907
+ energy: "calm",
10908
+ motion: "subtle",
10909
+ era: "editorial"
10910
+ };
10911
+ /** Each role supplies complete states, including a flat surface-ink focus ring. */
10912
+ function states(base, hover, offset = 4, width = 2) {
10913
+ return {
10914
+ base,
10915
+ hover,
10916
+ focus: {
10917
+ ...base,
10918
+ shadow: "focus-indicator",
10919
+ indicator: {
10920
+ kind: "surface-ink",
10921
+ width,
10922
+ offset
10923
+ }
10924
+ },
10925
+ active: {
10926
+ ...base,
10927
+ transform: "none"
10928
+ },
10929
+ disabled: {
10930
+ ...base,
10931
+ effects: []
10932
+ }
10933
+ };
10934
+ }
10935
+ const gilt = {
10936
+ text: "treatment",
10937
+ border: "none",
10938
+ borderRadius: "rounded-10px",
10939
+ shadow: flatShadow,
10940
+ sizes: {
10941
+ sm: {
10942
+ padding: "10px 20px",
10943
+ fontSize: "text-base",
10944
+ borderRadius: "rounded-lg"
10945
+ },
10946
+ md: {
10947
+ padding: "18px 36px",
10948
+ fontSize: "text-19px"
10949
+ },
10950
+ lg: {
10951
+ padding: "18px 36px",
10952
+ fontSize: "text-19px"
10953
+ },
10954
+ xl: {
10955
+ padding: "18px 36px",
10956
+ fontSize: "text-19px"
10957
+ }
10958
+ },
10959
+ typography: {
10960
+ fontWeight: 400,
10961
+ typography: "heading",
10962
+ fontSize: "text-19px",
10963
+ letterSpacing: "slight",
10964
+ italic: false,
10965
+ textTransform: "none"
10966
+ },
10967
+ effects: []
10968
+ };
10969
+ const giltPrimary = {
10970
+ ...gilt,
10971
+ background: {
10972
+ type: "gradient",
10973
+ stops: ["accent", "primary"],
10974
+ direction: "to-br",
10975
+ foregroundToken: "onAccent"
10976
+ }
10977
+ };
10978
+ const giltPrimaryHover = {
10979
+ ...giltPrimary,
10980
+ background: {
10981
+ ...giltPrimary.background,
10982
+ stops: ["accent-400", "primary-400"],
10983
+ foregroundToken: "secondary-950"
10984
+ },
10985
+ effects: [lift$1]
10986
+ };
10987
+ const giltSecondary = {
10988
+ ...gilt,
10989
+ background: {
10990
+ type: "solid",
10991
+ colorToken: "text"
10992
+ }
10993
+ };
10994
+ const giltSecondaryHover = {
10995
+ ...giltSecondary,
10996
+ effects: [lift$1],
10997
+ contextualHover: {
10998
+ kind: "shade-shift",
10999
+ seedToken: unsafeAsOpaqueButtonColourToken("text"),
11000
+ fallbackDirection: "lighter"
11001
+ }
11002
+ };
11003
+ const giltPrimaryStates = states(giltPrimary, giltPrimaryHover);
11004
+ const giltSecondaryStates = states(giltSecondary, giltSecondaryHover);
11005
+ const giltSlabRecipe = defineStaticButtonStyleRecipe({
11006
+ id: "gilt-slab",
11007
+ accessibilityLabel: "Gilt slab",
11008
+ tags,
11009
+ system: { roles: {
11010
+ primary: { states: giltPrimaryStates },
11011
+ secondary: { states: giltSecondaryStates },
11012
+ outline: { states: giltSecondaryStates },
11013
+ ghost: { states: giltSecondaryStates },
11014
+ accent: { states: giltPrimaryStates }
11015
+ } }
11016
+ });
11017
+ const hairline = {
11018
+ text: "treatment",
11019
+ borderRadius: "rounded-3px",
11020
+ shadow: flatShadow,
11021
+ sizes: {
11022
+ sm: {
11023
+ padding: "9px 16px",
11024
+ fontSize: "text-xs"
11025
+ },
11026
+ md: {
11027
+ padding: "15px 28px",
11028
+ fontSize: "text-13px"
11029
+ },
11030
+ lg: {
11031
+ padding: "15px 28px",
11032
+ fontSize: "text-13px"
11033
+ },
11034
+ xl: {
11035
+ padding: "15px 28px",
11036
+ fontSize: "text-13px"
11037
+ }
11038
+ },
11039
+ typography: {
11040
+ fontWeight: 700,
11041
+ typography: "body",
11042
+ fontSize: "text-13px",
11043
+ letterSpacing: "wide",
11044
+ italic: false,
11045
+ textTransform: "uppercase"
11046
+ },
11047
+ effects: []
11048
+ };
11049
+ const hairlinePrimary = {
11050
+ ...hairline,
11051
+ background: {
11052
+ type: "solid",
11053
+ colorToken: "primary"
11054
+ },
11055
+ border: {
11056
+ widthClass: "border",
11057
+ boundaryInk: unsafeAsOpaqueButtonColourToken("primary")
11058
+ }
11059
+ };
11060
+ const hairlineOutline = {
11061
+ ...hairline,
11062
+ background: {
11063
+ type: "surface",
11064
+ role: "link"
11065
+ },
11066
+ border: {
11067
+ widthClass: "border",
11068
+ boundaryInk: unsafeAsOpaqueButtonColourToken("primary")
11069
+ }
11070
+ };
11071
+ const hairlineSecondary = {
11072
+ ...hairlineOutline,
11073
+ border: {
11074
+ widthClass: "border",
11075
+ boundaryInk: unsafeAsOpaqueButtonColourToken("accent")
11076
+ }
11077
+ };
11078
+ const hairlineFilled = {
11079
+ ...hairlineSecondary,
11080
+ background: {
11081
+ type: "solid",
11082
+ colorToken: "accent"
11083
+ }
11084
+ };
11085
+ const hairlinePrimaryStates = states(hairlinePrimary, hairlineOutline, 3);
11086
+ const hairlineSecondaryStates = states(hairlineSecondary, hairlineFilled, 3);
11087
+ const hairlineTabRecipe = defineStaticButtonStyleRecipe({
11088
+ id: "hairline-tab",
11089
+ accessibilityLabel: "Hairline tab",
11090
+ tags,
11091
+ system: { roles: {
11092
+ primary: { states: hairlinePrimaryStates },
11093
+ secondary: { states: hairlineSecondaryStates },
11094
+ outline: { states: hairlineSecondaryStates },
11095
+ ghost: { states: hairlineSecondaryStates },
11096
+ accent: { states: states(hairlineFilled, hairlineSecondary, 3) }
11097
+ } }
11098
+ });
11099
+ const marqueeAccent = {
11100
+ text: "treatment",
11101
+ borderRadius: "rounded-none",
11102
+ shadow: flatShadow,
11103
+ sizes: {
11104
+ sm: {
11105
+ padding: "8px 17px",
11106
+ fontSize: "text-15px"
11107
+ },
11108
+ md: {
11109
+ padding: "14px 25px",
11110
+ fontSize: "text-17px"
11111
+ },
11112
+ lg: {
11113
+ padding: "14px 25px",
11114
+ fontSize: "text-17px"
11115
+ },
11116
+ xl: {
11117
+ padding: "14px 25px",
11118
+ fontSize: "text-17px"
11119
+ }
11120
+ },
11121
+ typography: {
11122
+ fontWeight: 800,
11123
+ typography: "body",
11124
+ fontSize: "text-17px",
11125
+ letterSpacing: "loose",
11126
+ italic: false,
11127
+ textTransform: "uppercase"
11128
+ },
11129
+ effects: [],
11130
+ background: {
11131
+ type: "solid",
11132
+ colorToken: "accent"
11133
+ },
11134
+ border: {
11135
+ widthClass: "border-2",
11136
+ boundaryInk: unsafeAsOpaqueButtonColourToken("accent")
11137
+ }
11138
+ };
11139
+ const marqueePrimary = {
11140
+ ...marqueeAccent,
11141
+ background: {
11142
+ type: "solid",
11143
+ colorToken: "primary"
11144
+ },
11145
+ border: {
11146
+ widthClass: "border-2",
11147
+ boundaryInk: unsafeAsOpaqueButtonColourToken("primary")
11148
+ }
11149
+ };
11150
+ const marqueeSecondary = {
11151
+ ...marqueeAccent,
11152
+ background: {
11153
+ type: "solid",
11154
+ colorToken: "text"
11155
+ },
11156
+ border: {
11157
+ widthClass: "border-2",
11158
+ boundaryInk: unsafeAsOpaqueButtonColourToken("text")
11159
+ }
11160
+ };
11161
+ const marqueePrimaryStates = states(marqueeAccent, marqueePrimary, 4, 3);
11162
+ const marqueeSecondaryStates = states(marqueeSecondary, marqueeAccent, 4, 3);
11163
+ const marqueeRecipe = defineStaticButtonStyleRecipe({
11164
+ id: "marquee",
11165
+ accessibilityLabel: "Marquee",
11166
+ tags,
11167
+ system: { roles: {
11168
+ primary: { states: marqueePrimaryStates },
11169
+ secondary: { states: marqueeSecondaryStates },
11170
+ outline: { states: marqueeSecondaryStates },
11171
+ ghost: { states: marqueeSecondaryStates },
11172
+ accent: { states: marqueePrimaryStates }
11173
+ } }
11174
+ });
11175
+ //#endregion
10869
11176
  //#region ../theme-core/src/buttons/styles/recipes/fulcrumRecipe.ts
10870
11177
  const fulcrumSizes = {
10871
11178
  sm: {
@@ -11607,7 +11914,10 @@ const BUTTON_STYLE_IDS = [
11607
11914
  "offset-block",
11608
11915
  "ringed-pill",
11609
11916
  "square-outline",
11610
- "fulcrum"
11917
+ "fulcrum",
11918
+ "gilt-slab",
11919
+ "hairline-tab",
11920
+ "marquee"
11611
11921
  ];
11612
11922
  const quietArrowParametersSchema = z.object({ secondaryTreatment: z.enum(["outlined", "solid-accent"]) }).strict();
11613
11923
  const flatInkHoverTreatmentSchema = z.enum([
@@ -11644,7 +11954,10 @@ const buttonStyleSelectionSchema = z.discriminatedUnion("styleId", [
11644
11954
  selectionBranch("offset-block", emptyParametersSchema),
11645
11955
  selectionBranch("ringed-pill", emptyParametersSchema),
11646
11956
  selectionBranch("square-outline", emptyParametersSchema),
11647
- selectionBranch("fulcrum", emptyParametersSchema)
11957
+ selectionBranch("fulcrum", emptyParametersSchema),
11958
+ selectionBranch("gilt-slab", emptyParametersSchema),
11959
+ selectionBranch("hairline-tab", emptyParametersSchema),
11960
+ selectionBranch("marquee", emptyParametersSchema)
11648
11961
  ]);
11649
11962
  /**
11650
11963
  * Stable identity for a validated style selection. Parsing first canonicalises
@@ -15171,7 +15484,10 @@ const buttonStyleRecipes = [
15171
15484
  offsetBlockRecipe,
15172
15485
  ringedPillRecipe,
15173
15486
  squareOutlineRecipe,
15174
- fulcrumRecipe
15487
+ fulcrumRecipe,
15488
+ giltSlabRecipe,
15489
+ hairlineTabRecipe,
15490
+ marqueeRecipe
15175
15491
  ];
15176
15492
  const recipesById = new Map(buttonStyleRecipes.map((recipe) => [recipe.id, recipe]));
15177
15493
  function findButtonStyleRecipe(id) {
@@ -15187,6 +15503,9 @@ function resolveButtonStyleSelection(selection) {
15187
15503
  case "editorial-link": return resolveButtonStyleRecipe(editorialLinkRecipe, selection.parameters);
15188
15504
  case "pebble": return resolveButtonStyleRecipe(pebbleRecipe, selection.parameters);
15189
15505
  case "ink-stamp": return resolveButtonStyleRecipe(inkStampRecipe, selection.parameters);
15506
+ case "gilt-slab": return resolveButtonStyleRecipe(giltSlabRecipe, selection.parameters);
15507
+ case "hairline-tab": return resolveButtonStyleRecipe(hairlineTabRecipe, selection.parameters);
15508
+ case "marquee": return resolveButtonStyleRecipe(marqueeRecipe, selection.parameters);
15190
15509
  case "fulcrum": return resolveButtonStyleRecipe(fulcrumRecipe, selection.parameters);
15191
15510
  case "flat-ink": return resolveButtonStyleRecipe(flatInkRecipe, selection.parameters);
15192
15511
  case "brushed-wash": return resolveButtonStyleRecipe(brushedWashRecipe, selection.parameters);
@@ -16522,4 +16841,4 @@ function ThemedAuthoredButton({ label, href, variant, size, extraClassName, disa
16522
16841
  });
16523
16842
  }
16524
16843
  //#endregion
16525
- export { headerInteractionPaletteValues as $, renderableMediaAssetSchema as $n, checkoutCopy as $r, TokenResolver as $t, updateButtonStyleHoverPreference as A, unsafeAsPositiveByteCount as Ai, DEFAULT_SURFACE_TEXT_COLOR as An, makeBoundaryId as Ar, NAV_LINK_PADDING_MAP as At, generateInteractiveChildInheritanceCSS as B, hexColorSchema as Bn, generateFontFaceCss as Br, LABEL_FONT_SIZE_MAP as Bt, MinusIcon as C, parseUserId as Ci, defaultThemeTokens as Cn, designIssueSeverityForPolicy as Cr, selectLogoAccommodation as Ct, defaultButtonStyleSelectionFor as D, unsafeAsFormId as Di, featuresFromHex as Dn, flushPanelFrame as Dr, parseCustomCssRules as Dt, buttonStyleSelectionParameterValue as E, unsafeAsCustomerPassId as Ei, relativeLuminance as En, featureCardCompositionTreatmentValues as Er, parseBlockCustomCssRules as Et, generateButtonActionLayoutCss as F, err as Fi, generateShadowValue$1 as Fn, requireNonEmptyReadonlyArray as Fr, navLinkOwnsUnderline as Ft, corners as G, paletteValueKey as Gn, themeColorShadeSteps as Gr, ICON_CONFIG as Gt, parseThemeForPersistence as H, paletteColorsEqual as Hn, VARIANT_ROLES as Hr, ACCORDION_SPACING_MAP as Ht, generateButtonCss as I, ok as Ii, cardRoleSchema as In, testimonialsCompositionTreatmentValues as Ir, navEffectPolicy as It, themeSchema as J, imageMediaSchema as Jn, SpinnerNode as Jr, renderCssDeclarations as Jt, headerPositioningValues as K, paletteValueKeySchema as Kn, parseBlockColorToken as Kr, ICON_SIZE_PX as Kt, generateDefaultButtonSystem as L, __commonJSMin as Li, cardRoleValues as Ln, tileTreatmentValues as Lr, FONT_WEIGHT_MAP$1 as Lt, buttonStyleSelectionKey as M, unsafeAsSiteId as Mi, surfaceForegroundInputFromResolved as Mn, offeringsPreviewCompositionTreatmentValues as Mr, NAV_LINK_TEXT_SIZE_MAP as Mt, buttonStyleSelectionSchema as N, unsafeAsStorageBucketName as Ni, surfaceForegroundStyle as Nn, panelFrame as Nr, navLinkHoverColorCandidate as Nt, findButtonStyleRecipe as O, unsafeAsMediaAssetId as Oi, hexToRgb as On, headingDecorationColorTokenValues as Or, NAV_LINK_BORDER_RADIUS_MAP as Ot, buttonStyleSelectionsEqual as P, unsafeAsStoragePath as Pi, surfaceForegroundValue as Pn, plainFrame as Pr, navLinkOwnsHoverForeground as Pt, headerInteractionPalettePair as Q, buildRenderableMediaAssetIndex as Qn, parseEventRegistrationErrorReason as Qr, toAccessibleColorSurfaceIntent as Qt, generateEffectsCSS as R, __exportAll as Ri, cardVariantRoleValues as Rn, visibleHeadingDecorationFamilyValues as Rr, INPUT_FONT_SIZE_MAP as Rt, FileTextIcon as S, parseSiteId as Si, buildThemeTokens as Sn, defineFrameCapability as Sr, resolveBrandDisplay as St, buttonStyleHoverPreferenceValue as T, unsafeAsAppointmentServiceId as Ti, contrastRatio as Tn, eyebrowTreatmentValues as Tr, getComponentShadowVar as Tt, cardStylesOverrideSchema as U, paletteColorsSchema as Un, unsafeAsOpaqueButtonColourToken as Ur, ACCORDION_TRIGGER_FONT_SCALE as Ut, parseThemeButtonVariantId as V, paletteColorEntries as Vn, getSiteFontsStorageUrl as Vr, ACCORDION_OPEN_ACCENT_THICKNESS as Vt, containerStylesOverrideSchema as W, paletteModeSchema as Wn, parseThemeColorToken as Wr, ACCORDION_TRIGGER_LETTER_SPACING as Wt, boxBackgroundSchema as X, mediaSchema as Xn, checkBrowserStripeKey as Xr, resolveSurface as Xt, boxBackgroundOverlaySchema as Y, mediaPosterSchema as Yn, clsx as Yr, contrastThresholdByPolicy as Yt, runtimeBoxBackgroundSchema as Z, runtimeMediaSchema as Zn, eventRegistrationErrors as Zr, surfaceDecorationColors as Zt, CirclePlusIcon as _, parseEventOfferingId as _i, resolveSurfaceForeground as _n, asPageFlowPresetId as _r, stripStaleTransitionStyleGroup as _t, ThemedDownloadLink as a, repriceBookingCollectionOptions as ai, textColorStyle as an, resolveSdkFooterMode as ar, BREAKPOINT_LG as at, FileAudioIcon as b, parsePageId as bi, planForegroundHover as bn, defineBlockDesignCapability as br, deterministicLogoFactsForShape as bt, isKnownIconName as c, getBookingLaterInstalments as ci, opaqueSurfaceDeclarations as cn, asBlockContentVersionId as cr, MQ_MD_DOWN as ct, resolveIconPickerPreset as d, formatCurrencyAmount as di, resolveThemeColorReferenceValue as dn, asDesignBlockId as dr, MQ_TABLET_ONLY as dt, getStripeMinimumChargeRequirement as ei, backgroundColorStyle as en, indexRenderableMediaAssets as er, headerInteractionQuietPalette as et, SEMANTIC_ICON_DEFINITIONS as f, expectParsedBrandedId as fi, resolveTokenOrCssColorValue as fn, asDesignBoundaryId as fr, headerVariantValues as ft, CircleMinusIcon as g, parseEditorClientId as gi, surfaceToneFromForegroundToken as gn, asLayoutVariantKey as gr, siteChromeBackgroundOverrideOwner as gt, ChevronDownIcon as h, parseContentVersionId as hi, selectLogoVariant as hn, asDesignSystemTemplateId as hr, pageDesignEditorBackgroundOverrideOwner as ht, ThemedButtonSpecimen as i, isBookingCollectionEquivalentToUpfront as ii, rgbColorValue as in, footerModeSchema as ir, renderHeaderPaintTargetRules as it, updateButtonStyleSelectionChoice as j, unsafeAsPositiveSeconds as ji, surfaceForegroundDeclarations as jn, noHeadingDecoration as jr, NAV_LINK_PADDING_X_MAP as jt, resolveButtonStyleSelection as k, unsafeAsPassId as ki, rgbToHex as kn, introCompositionTreatmentValues as kr, NAV_LINK_LETTER_SPACING_MAP as kt, ICON_PICKER_PRESETS as l, validateBookingPaymentOptionKinds as li, isCssColorLiteral as ln, asBlockOrderIndex as lr, MQ_SM_DOWN as lt, ArrowDownIcon as m, parseContentEntryId as mi, PUBLIC_BUTTON_ROLES as mn, asDesignPageId as mr, isThemeV2NormalEditorRawStylePath as mt, ThemedButton as n, planCheckoutPaymentFlow as ni, cssVarValue as nn, mediaIdentifierSchema as nr, generateMobileOverlayBackdropFilterFix as nt, getIconComponent as o, resolveAvailableBookingCollectionOptions as oi, textColorValue as on, skinTokenCssVars as or, BREAKPOINT_XL as ot, isSemanticIconId as p, parseApiKeyId as pi, generateShadowValue as pn, asDesignEntryId as pr, isThemeV2NormalEditorRawStyleFieldName as pt, sectionStylesOverrideSchema as q, requirePaletteColorsFromEntries as qn, parseColorTokenParts as qr, generateCardCss as qt, ThemedButtonLink as r, planFlexibleBalanceCreditFirst as ri, mergeStyles as rn, parseCanonicalMediaIdentifier as rr, getHeaderPaintTargets as rt, getIconPickerOptionsForPreset as s, resolveBookingCollectionOptionFacts as si, opaqueSurfaceContextFromTheme as sn, asAppearancePresetId as sr, MQ_LG_UP as st, ThemedAuthoredButton as t, confirmationPaymentSchema as ti, borderColorStyle as tn, resolveManagedMediaReference as tr, generateHeaderScrollTreatmentStyles as tt, isIconPickerPreset as u, getBookingInstalmentPlanIntervalCount as ui, resolveOnColorForThemeToken as un, asBoundaryOptionId as ur, MQ_SM_UP as ut, ClockIcon as v, parseEventSeriesId as vi, expandPalette as vn, asSiteStyleId as vr, themeV2RuntimeStyleFieldNames as vt, PlusIcon as w, unsafeAsAppointmentResourceId as wi, ORDINARY_TEXT_MIN_CONTRAST_RATIO as wn, eventListTreatmentValues as wr, getComponentBorderWidthPx as wt, FileSpreadsheetIcon as x, parsePageSurfaceId as xi, resolveConcreteColorHex as xn, defineExactCatalog as xr, logoSizePolicyValues as xt, FileArchiveIcon as y, parseFormId as yi, getTextColorForBackground as yn, assertNever as yr, brandDisplayModeValues as yt, generateBaseInteractiveCSS as z, __toESM as zi, normalizeCardRole as zn, buildFontPreviewUrl as zr, INPUT_SPACING_MAP as zt };
16844
+ export { headerInteractionPaletteValues as $, renderableMediaAssetSchema as $n, confirmationPaymentSchema as $r, TokenResolver as $t, updateButtonStyleHoverPreference as A, unsafeAsSiteId as Ai, DEFAULT_SURFACE_TEXT_COLOR as An, offeringsPreviewCompositionTreatmentValues as Ar, NAV_LINK_PADDING_MAP as At, generateInteractiveChildInheritanceCSS as B, hexColorSchema as Bn, VARIANT_ROLES as Br, LABEL_FONT_SIZE_MAP as Bt, MinusIcon as C, unsafeAsAppointmentServiceId as Ci, defaultThemeTokens as Cn, eyebrowTreatmentValues as Cr, selectLogoAccommodation as Ct, defaultButtonStyleSelectionFor as D, unsafeAsPassId as Di, featuresFromHex as Dn, introCompositionTreatmentValues as Dr, parseCustomCssRules as Dt, buttonStyleSelectionParameterValue as E, unsafeAsMediaAssetId as Ei, relativeLuminance as En, headingDecorationColorTokenValues as Er, parseBlockCustomCssRules as Et, generateButtonActionLayoutCss as F, __commonJSMin as Fi, generateShadowValue$1 as Fn, tileTreatmentValues as Fr, navLinkOwnsUnderline as Ft, corners as G, paletteValueKey as Gn, parseColorTokenParts as Gr, ICON_CONFIG as Gt, parseThemeForPersistence as H, paletteColorsEqual as Hn, parseThemeColorToken as Hr, ACCORDION_SPACING_MAP as Ht, generateButtonCss as I, __exportAll as Ii, cardRoleSchema as In, visibleHeadingDecorationFamilyValues as Ir, navEffectPolicy as It, themeSchema as J, imageMediaSchema as Jn, checkBrowserStripeKey as Jr, renderCssDeclarations as Jt, headerPositioningValues as K, paletteValueKeySchema as Kn, SpinnerNode as Kr, ICON_SIZE_PX as Kt, generateDefaultButtonSystem as L, __toESM as Li, cardRoleValues as Ln, buildFontPreviewUrl as Lr, FONT_WEIGHT_MAP$1 as Lt, buttonStyleSelectionKey as M, unsafeAsStoragePath as Mi, surfaceForegroundInputFromResolved as Mn, plainFrame as Mr, NAV_LINK_TEXT_SIZE_MAP as Mt, buttonStyleSelectionSchema as N, err as Ni, surfaceForegroundStyle as Nn, requireNonEmptyReadonlyArray as Nr, navLinkHoverColorCandidate as Nt, findButtonStyleRecipe as O, unsafeAsPositiveByteCount as Oi, hexToRgb as On, makeBoundaryId as Or, NAV_LINK_BORDER_RADIUS_MAP as Ot, buttonStyleSelectionsEqual as P, ok as Pi, surfaceForegroundValue as Pn, testimonialsCompositionTreatmentValues as Pr, navLinkOwnsHoverForeground as Pt, headerInteractionPalettePair as Q, buildRenderableMediaAssetIndex as Qn, getStripeMinimumChargeRequirement as Qr, toAccessibleColorSurfaceIntent as Qt, generateEffectsCSS as R, cardVariantRoleValues as Rn, generateFontFaceCss as Rr, INPUT_FONT_SIZE_MAP as Rt, FileTextIcon as S, unsafeAsAppointmentResourceId as Si, buildThemeTokens as Sn, eventListTreatmentValues as Sr, resolveBrandDisplay as St, buttonStyleHoverPreferenceValue as T, unsafeAsFormId as Ti, contrastRatio as Tn, flushPanelFrame as Tr, getComponentShadowVar as Tt, cardStylesOverrideSchema as U, paletteColorsSchema as Un, themeColorShadeSteps as Ur, ACCORDION_TRIGGER_FONT_SCALE as Ut, parseThemeButtonVariantId as V, paletteColorEntries as Vn, unsafeAsOpaqueButtonColourToken as Vr, ACCORDION_OPEN_ACCENT_THICKNESS as Vt, containerStylesOverrideSchema as W, paletteModeSchema as Wn, parseBlockColorToken as Wr, ACCORDION_TRIGGER_LETTER_SPACING as Wt, boxBackgroundSchema as X, mediaSchema as Xn, parseEventRegistrationErrorReason as Xr, resolveSurface as Xt, boxBackgroundOverlaySchema as Y, mediaPosterSchema as Yn, eventRegistrationErrors as Yr, contrastThresholdByPolicy as Yt, runtimeBoxBackgroundSchema as Z, runtimeMediaSchema as Zn, checkoutCopy as Zr, surfaceDecorationColors as Zt, CirclePlusIcon as _, parseFormId as _i, resolveSurfaceForeground as _n, assertNever as _r, stripStaleTransitionStyleGroup as _t, ThemedDownloadLink as a, resolveBookingCollectionOptionFacts as ai, textColorStyle as an, asAppearancePresetId as ar, BREAKPOINT_LG as at, FileAudioIcon as b, parseSiteId as bi, planForegroundHover as bn, defineFrameCapability as br, deterministicLogoFactsForShape as bt, isKnownIconName as c, getBookingInstalmentPlanIntervalCount as ci, opaqueSurfaceDeclarations as cn, asBoundaryOptionId as cr, MQ_MD_DOWN as ct, resolveIconPickerPreset as d, parseApiKeyId as di, resolveThemeColorReferenceValue as dn, asDesignEntryId as dr, MQ_TABLET_ONLY as dt, planCheckoutPaymentFlow as ei, backgroundColorStyle as en, indexRenderableMediaAssets as er, headerInteractionQuietPalette as et, SEMANTIC_ICON_DEFINITIONS as f, parseContentEntryId as fi, resolveTokenOrCssColorValue as fn, asDesignPageId as fr, headerVariantValues as ft, CircleMinusIcon as g, parseEventSeriesId as gi, surfaceToneFromForegroundToken as gn, asSiteStyleId as gr, siteChromeBackgroundOverrideOwner as gt, ChevronDownIcon as h, parseEventOfferingId as hi, selectLogoVariant as hn, asPageFlowPresetId as hr, pageDesignEditorBackgroundOverrideOwner as ht, ThemedButtonSpecimen as i, resolveAvailableBookingCollectionOptions as ii, rgbColorValue as in, skinTokenCssVars as ir, renderHeaderPaintTargetRules as it, updateButtonStyleSelectionChoice as j, unsafeAsStorageBucketName as ji, surfaceForegroundDeclarations as jn, panelFrame as jr, NAV_LINK_PADDING_X_MAP as jt, resolveButtonStyleSelection as k, unsafeAsPositiveSeconds as ki, rgbToHex as kn, noHeadingDecoration as kr, NAV_LINK_LETTER_SPACING_MAP as kt, ICON_PICKER_PRESETS as l, formatCurrencyAmount as li, isCssColorLiteral as ln, asDesignBlockId as lr, MQ_SM_DOWN as lt, ArrowDownIcon as m, parseEditorClientId as mi, PUBLIC_BUTTON_ROLES as mn, asLayoutVariantKey as mr, isThemeV2NormalEditorRawStylePath as mt, ThemedButton as n, isBookingCollectionEquivalentToUpfront as ni, cssVarValue as nn, mediaIdentifierSchema as nr, generateMobileOverlayBackdropFilterFix as nt, getIconComponent as o, getBookingLaterInstalments as oi, textColorValue as on, asBlockContentVersionId as or, BREAKPOINT_XL as ot, isSemanticIconId as p, parseContentVersionId as pi, generateShadowValue as pn, asDesignSystemTemplateId as pr, isThemeV2NormalEditorRawStyleFieldName as pt, sectionStylesOverrideSchema as q, requirePaletteColorsFromEntries as qn, clsx as qr, generateCardCss as qt, ThemedButtonLink as r, repriceBookingCollectionOptions as ri, mergeStyles as rn, parseCanonicalMediaIdentifier as rr, getHeaderPaintTargets as rt, getIconPickerOptionsForPreset as s, validateBookingPaymentOptionKinds as si, opaqueSurfaceContextFromTheme as sn, asBlockOrderIndex as sr, MQ_LG_UP as st, ThemedAuthoredButton as t, planFlexibleBalanceCreditFirst as ti, borderColorStyle as tn, resolveManagedMediaReference as tr, generateHeaderScrollTreatmentStyles as tt, isIconPickerPreset as u, expectParsedBrandedId as ui, resolveOnColorForThemeToken as un, asDesignBoundaryId as ur, MQ_SM_UP as ut, ClockIcon as v, parsePageId as vi, expandPalette as vn, defineBlockDesignCapability as vr, themeV2RuntimeStyleFieldNames as vt, PlusIcon as w, unsafeAsCustomerPassId as wi, ORDINARY_TEXT_MIN_CONTRAST_RATIO as wn, featureCardCompositionTreatmentValues as wr, getComponentBorderWidthPx as wt, FileSpreadsheetIcon as x, parseUserId as xi, resolveConcreteColorHex as xn, designIssueSeverityForPolicy as xr, logoSizePolicyValues as xt, FileArchiveIcon as y, parsePageSurfaceId as yi, getTextColorForBackground as yn, defineExactCatalog as yr, brandDisplayModeValues as yt, generateBaseInteractiveCSS as z, normalizeCardRole as zn, getSiteFontsStorageUrl as zr, INPUT_SPACING_MAP as zt };