@riverbankcms/sdk 0.108.0 → 0.111.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 (278) hide show
  1. package/README.md +21 -1
  2. package/dist/{PreviewEditorSidebar-BBT-kZAM.mjs → PreviewEditorSidebar-CTR6LUhN.mjs} +181 -135
  3. package/dist/{PreviewEditorUI-D69xNKT2.mjs → PreviewEditorUI-DZg15Zip.mjs} +3 -4
  4. package/dist/{PreviewQueryProvider-RRu7wyQ5.mjs → PreviewQueryProvider-kkmjklLG.mjs} +1 -1
  5. package/dist/{SdkPreviewModeRuntime-CuDjXH6o.mjs → SdkPreviewModeRuntime-DeOTAFvR.mjs} +436 -367
  6. package/dist/{SiteChromeCustomizeContext-BQUY2dEk.mjs → SiteChromeCustomizeContext-DOSDLCiJ.mjs} +3442 -3029
  7. package/dist/_dts/ai/src/contracts/proposals.d.ts +12633 -10490
  8. package/dist/_dts/api/src/bookingAdjustments.d.ts +5 -0
  9. package/dist/_dts/api/src/bookingOperations.d.ts +4 -0
  10. package/dist/_dts/api/src/bookingRecords.d.ts +2 -17
  11. package/dist/_dts/api/src/bookingRefundOutcomes.d.ts +6 -6
  12. package/dist/_dts/api/src/commercePortalEndpoints.d.ts +5 -5
  13. package/dist/_dts/api/src/common/envelope.d.ts +7 -0
  14. package/dist/_dts/api/src/contentRuntime.d.ts +4 -1
  15. package/dist/_dts/api/src/courses.d.ts +31 -15
  16. package/dist/_dts/api/src/customerMembershipOutcomes.d.ts +5 -5
  17. package/dist/_dts/api/src/endpoints.d.ts +49 -4
  18. package/dist/_dts/api/src/index.d.ts +3 -3
  19. package/dist/_dts/api/src/participantMessaging.d.ts +18 -12
  20. package/dist/_dts/api/src/publicExperienceEndpoints.d.ts +1 -0
  21. package/dist/_dts/api/src/sdkContracts.d.ts +259 -1
  22. package/dist/_dts/api/src/siteInfrastructure.d.ts +13 -0
  23. package/dist/_dts/api/src/siteManagementEndpoints.d.ts +6 -6
  24. package/dist/_dts/api/src/siteOperations.d.ts +11 -19
  25. package/dist/_dts/api/src/sitePlatformEndpoints.d.ts +29 -1
  26. package/dist/_dts/api/src/siteRuntimeEndpoints.d.ts +37 -31
  27. package/dist/_dts/api/src/webhooks.d.ts +98 -1
  28. package/dist/_dts/billing/src/site-arrangements.d.ts +3 -0
  29. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientField.d.ts +9 -0
  30. package/dist/_dts/block-form/src/widgets/BackgroundGradientWidget/BackgroundGradientWidget.d.ts +3 -4
  31. package/dist/_dts/blocks/src/client/course-registration.d.ts +4 -1
  32. package/dist/_dts/blocks/src/client.d.ts +4 -1
  33. package/dist/_dts/blocks/src/contracts/proof-block-islands.d.ts +8 -8
  34. package/dist/_dts/blocks/src/index.d.ts +4 -2
  35. package/dist/_dts/blocks/src/system/blocks/audio-player.d.ts +3 -0
  36. package/dist/_dts/blocks/src/system/blocks/body-text.d.ts +3 -0
  37. package/dist/_dts/blocks/src/system/blocks/contact-newsletter.d.ts +3 -0
  38. package/dist/_dts/blocks/src/system/blocks/course-registration.d.ts +3 -23
  39. package/dist/_dts/blocks/src/system/blocks/courses/shared/types.d.ts +2 -1
  40. package/dist/_dts/blocks/src/system/blocks/cta-full.d.ts +5 -4
  41. package/dist/_dts/blocks/src/system/blocks/event-registration.d.ts +3 -23
  42. package/dist/_dts/blocks/src/system/blocks/events/event-listing.d.ts +2 -1
  43. package/dist/_dts/blocks/src/system/blocks/events/event-spotlight.d.ts +2 -1
  44. package/dist/_dts/blocks/src/system/blocks/events/recurring-schedule.d.ts +3 -2
  45. package/dist/_dts/blocks/src/system/blocks/events/shared/types.d.ts +2 -1
  46. package/dist/_dts/blocks/src/system/blocks/file-download.d.ts +5 -1
  47. package/dist/_dts/blocks/src/system/blocks/form.d.ts +3 -0
  48. package/dist/_dts/blocks/src/system/blocks/image-gallery.d.ts +3 -0
  49. package/dist/_dts/blocks/src/system/blocks/media-text.d.ts +3 -0
  50. package/dist/_dts/blocks/src/system/blocks/newsletter-signup.d.ts +5 -1
  51. package/dist/_dts/blocks/src/system/blocks/shop.d.ts +2 -1
  52. package/dist/_dts/blocks/src/system/blocks/single-button.d.ts +2 -1
  53. package/dist/_dts/blocks/src/system/blocks/site-header.d.ts +3 -0
  54. package/dist/_dts/blocks/src/system/blocks/team-members.d.ts +3 -0
  55. package/dist/_dts/blocks/src/system/blocks/testimonials.d.ts +3 -0
  56. package/dist/_dts/blocks/src/system/blocks/video-grid.d.ts +3 -0
  57. package/dist/_dts/blocks/src/system/constants/background.d.ts +1 -1
  58. package/dist/_dts/blocks/src/system/constants/buttonRoles.d.ts +35 -0
  59. package/dist/_dts/blocks/src/system/customize/backgrounds.d.ts +16 -6
  60. package/dist/_dts/blocks/src/system/defineBlock.d.ts +9 -1
  61. package/dist/_dts/blocks/src/system/fields/button.d.ts +10 -21
  62. package/dist/_dts/blocks/src/system/fields/ctas.d.ts +10 -1
  63. package/dist/_dts/blocks/src/system/fragments/library/heroCtaRow.d.ts +9 -5
  64. package/dist/_dts/blocks/src/system/manifest/schema.d.ts +31 -0
  65. package/dist/_dts/blocks/src/system/runtime/components/registry.client.d.ts +24 -24
  66. package/dist/_dts/blocks/src/system/runtime/components/runtime-backed-blocks.d.ts +12 -12
  67. package/dist/_dts/blocks/src/system/runtime/hooks/useHeadlessWholeSeriesRegistrationFlow.d.ts +29 -0
  68. package/dist/_dts/blocks/src/system/runtime/nodes/buttonAffordance.d.ts +1 -1
  69. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/ErrorStep.d.ts +2 -1
  70. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/PaymentFailedStep.d.ts +2 -1
  71. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/VerifyingTimeoutStep.d.ts +2 -1
  72. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/types.d.ts +21 -0
  73. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/useCourseRegistrationWizard.d.ts +4 -4
  74. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/whole-series-registration.headless.contract.d.ts +326 -0
  75. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration/whole-series-registration.headless.planning.d.ts +27 -0
  76. package/dist/_dts/blocks/src/system/runtime/nodes/course-registration.interactive.d.ts +5 -4
  77. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/event-registration.headless.contract.d.ts +3 -2
  78. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration/types.d.ts +2 -1
  79. package/dist/_dts/blocks/src/system/runtime/nodes/event-registration.interactive.d.ts +5 -4
  80. package/dist/_dts/blocks/src/system/runtime/nodes/file-download.d.ts +2 -3
  81. package/dist/_dts/blocks/src/system/runtime/nodes/newsletter-form.types.d.ts +2 -1
  82. package/dist/_dts/blocks/src/system/runtime/nodes/shared/contract-schemas.d.ts +7 -4
  83. package/dist/_dts/blocks/src/system/runtime/nodes/shop.interactive.d.ts +7 -6
  84. package/dist/_dts/blocks/src/system/runtime/nodes/shop.types.d.ts +2 -1
  85. package/dist/_dts/blocks/src/system/runtime/shared/types.d.ts +2 -1
  86. package/dist/_dts/content-editor/src/FooterComposerPanel.d.ts +4 -2
  87. package/dist/_dts/content-editor/src/index.d.ts +12 -12
  88. package/dist/_dts/content-editor/src/ui/editorUiStore.d.ts +17 -2
  89. package/dist/_dts/content-model/src/content-types/entryValidation.d.ts +31 -0
  90. package/dist/_dts/content-model/src/content-types/scaffold.d.ts +58 -0
  91. package/dist/_dts/content-model/src/content-types/sentinels.d.ts +36 -0
  92. package/dist/_dts/content-model/src/index.d.ts +3 -0
  93. package/dist/_dts/core/src/booking-date-time.d.ts +8 -0
  94. package/dist/_dts/db/src/generated/supabase/database.types.d.ts +3278 -3196
  95. package/dist/_dts/editor-blocks/src/widgets/button/context.d.ts +3 -2
  96. package/dist/_dts/media-core/src/fileMimeDetection.d.ts +16 -0
  97. package/dist/_dts/media-core/src/fileStorage.d.ts +8 -0
  98. package/dist/_dts/media-core/src/storagePathDomain.d.ts +2 -0
  99. package/dist/_dts/media-core/src/uploadVerificationContract.d.ts +3 -0
  100. package/dist/_dts/preview-next/src/client/blocks/BlockToolbar.d.ts +2 -0
  101. package/dist/_dts/preview-next/src/client/index.d.ts +3 -2
  102. package/dist/_dts/preview-next/src/client/preview/ButtonStylePicker.d.ts +16 -0
  103. package/dist/_dts/preview-next/src/client/preview/PageBlockEditorPanel.d.ts +2 -3
  104. package/dist/_dts/preview-next/src/client/preview/PreviewDesignOpenRequestContext.d.ts +7 -0
  105. package/dist/_dts/preview-next/src/client/preview/PreviewEditorSidebar.d.ts +5 -11
  106. package/dist/_dts/preview-next/src/client/preview/PreviewShell.d.ts +5 -6
  107. package/dist/_dts/preview-next/src/client/preview/PreviewShellLayout.d.ts +6 -7
  108. package/dist/_dts/preview-next/src/client/preview/SiteChromeCustomizeContext.d.ts +7 -9
  109. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.d.ts +4 -11
  110. package/dist/_dts/preview-next/src/client/preview/StyleConfigurator.state.d.ts +8 -7
  111. package/dist/_dts/preview-next/src/client/preview/sidebarTabPreference.d.ts +0 -8
  112. package/dist/_dts/preview-next/src/client/preview/siteChromeLookRows.d.ts +1 -11
  113. package/dist/_dts/preview-next/src/client/preview/siteChromeQuickControlHistoryState.d.ts +1 -5
  114. package/dist/_dts/preview-next/src/client/preview/siteChromeSavePlan.d.ts +2 -3
  115. package/dist/_dts/preview-next/src/client/preview/siteStylePreviewPlanner.d.ts +3 -4
  116. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorApplyPayload.d.ts +1 -1
  117. package/dist/_dts/preview-next/src/client/preview/styleConfiguratorSnapshot.d.ts +3 -5
  118. package/dist/_dts/sdk/src/bookings/index.d.ts +5 -4
  119. package/dist/_dts/sdk/src/bookings/types.d.ts +3 -3
  120. package/dist/_dts/sdk/src/cli/commands/audit.d.ts +1 -1
  121. package/dist/_dts/sdk/src/cli/commands/compare.d.ts +1 -1
  122. package/dist/_dts/sdk/src/cli/commands/deploy.d.ts +1 -1
  123. package/dist/_dts/sdk/src/cli/commands/drafts.d.ts +18 -0
  124. package/dist/_dts/sdk/src/cli/commands/entry.d.ts +15 -0
  125. package/dist/_dts/sdk/src/cli/commands/init-docs.d.ts +2 -2
  126. package/dist/_dts/sdk/src/cli/commands/publish-all.d.ts +1 -1
  127. package/dist/_dts/sdk/src/cli/commands/pull.d.ts +1 -0
  128. package/dist/_dts/sdk/src/cli/commands/push/execute/diff.d.ts +1 -1
  129. package/dist/_dts/sdk/src/cli/commands/push/options.d.ts +3 -0
  130. package/dist/_dts/sdk/src/cli/commands/push-execute.d.ts +12 -1
  131. package/dist/_dts/sdk/src/cli/commands/setup.d.ts +1 -0
  132. package/dist/_dts/sdk/src/cli/commands/style.d.ts +3 -2
  133. package/dist/_dts/sdk/src/cli/commands/verify.d.ts +1 -0
  134. package/dist/_dts/sdk/src/cli/helpers.d.ts +22 -1
  135. package/dist/_dts/sdk/src/cli/index.d.ts +4 -0
  136. package/dist/_dts/sdk/src/cli/output.d.ts +88 -0
  137. package/dist/_dts/sdk/src/cli/program.d.ts +29 -0
  138. package/dist/_dts/sdk/src/cli/push-config.d.ts +1 -1
  139. package/dist/_dts/sdk/src/client/management/catalog.d.ts +10 -0
  140. package/dist/_dts/sdk/src/client/management/http.d.ts +7 -1
  141. package/dist/_dts/sdk/src/client/management/index.d.ts +1 -1
  142. package/dist/_dts/sdk/src/client/management/types.d.ts +45 -20
  143. package/dist/_dts/sdk/src/contracts/system-block-content.d.ts +12 -15
  144. package/dist/_dts/sdk/src/date-time/index.d.ts +68 -0
  145. package/dist/_dts/sdk/src/public-api/contracts.d.ts +3 -1
  146. package/dist/_dts/sdk/src/version.d.ts +1 -1
  147. package/dist/_dts/sdk/src/webhooks/index.d.ts +1 -1
  148. package/dist/_dts/sdk/src/webhooks/verify.d.ts +3 -3
  149. package/dist/_dts/site-commands/src/commands.d.ts +1010 -817
  150. package/dist/_dts/theme-core/src/accordions/types.d.ts +1 -1
  151. package/dist/_dts/theme-core/src/buttons/core.d.ts +15 -46
  152. package/dist/_dts/theme-core/src/buttons/effectClassification.d.ts +147 -0
  153. package/dist/_dts/theme-core/src/buttons/effects/types.d.ts +2 -3
  154. package/dist/_dts/theme-core/src/buttons/generateDefaultButtonSystem.d.ts +1 -1
  155. package/dist/_dts/theme-core/src/buttons/index.d.ts +2 -1
  156. package/dist/_dts/theme-core/src/buttons/presets.d.ts +4 -25
  157. package/dist/_dts/theme-core/src/buttons/resolveButtonColourStates.d.ts +100 -0
  158. package/dist/_dts/theme-core/src/buttons/resolvedButtonCss.d.ts +16 -0
  159. package/dist/_dts/theme-core/src/buttons/styles/domain.d.ts +80 -0
  160. package/dist/_dts/theme-core/src/buttons/styles/index.d.ts +3 -0
  161. package/dist/_dts/theme-core/src/buttons/styles/recipes/defineStaticButtonStyleRecipe.d.ts +49 -0
  162. package/dist/_dts/theme-core/src/buttons/styles/recipes/quietArrow.d.ts +67 -0
  163. package/dist/_dts/theme-core/src/buttons/styles/recipes/staticRecipes.d.ts +649 -0
  164. package/dist/_dts/theme-core/src/buttons/styles/registry.d.ts +753 -0
  165. package/dist/_dts/theme-core/src/buttons/styles/selection.d.ts +69 -0
  166. package/dist/_dts/theme-core/src/buttons/types.d.ts +101 -83
  167. package/dist/_dts/theme-core/src/cards/types.d.ts +16 -16
  168. package/dist/_dts/theme-core/src/generated/containerResponsiveThemeCss.d.ts +1 -1
  169. package/dist/_dts/theme-core/src/gradients/presets.d.ts +200 -8
  170. package/dist/_dts/theme-core/src/gradients/utils.d.ts +6 -2
  171. package/dist/_dts/theme-core/src/mock-themes/all.d.ts +87 -126
  172. package/dist/_dts/theme-core/src/mock-themes/modern-minimal.d.ts +1 -1
  173. package/dist/_dts/theme-core/src/navigation/types.d.ts +2 -2
  174. package/dist/_dts/theme-core/src/palette/curated/index.d.ts +2 -2
  175. package/dist/_dts/theme-core/src/palette/curated/types.d.ts +5 -8
  176. package/dist/_dts/theme-core/src/palette/index.d.ts +0 -1
  177. package/dist/_dts/theme-core/src/schema.d.ts +112 -138
  178. package/dist/_dts/theme-core/src/site-styles/backgroundAppearance.d.ts +2 -2
  179. package/dist/_dts/theme-core/src/site-styles/curatedSiteStyles.d.ts +26 -24
  180. package/dist/_dts/theme-core/src/site-styles/designState.d.ts +10 -10
  181. package/dist/_dts/theme-core/src/site-styles/footerLooks.d.ts +19 -153
  182. package/dist/_dts/theme-core/src/site-styles/headerCtaVariants.d.ts +3 -1
  183. package/dist/_dts/theme-core/src/site-styles/pageDesignEditorModel.d.ts +3 -2
  184. package/dist/_dts/theme-core/src/site-styles/pageDesignIntent.d.ts +13 -6
  185. package/dist/_dts/theme-core/src/site-styles/previewCompiler.d.ts +8 -9
  186. package/dist/_dts/theme-core/src/site-styles/runtimeCompiler.d.ts +33 -12
  187. package/dist/_dts/theme-core/src/site-styles/styleTags.d.ts +2 -2
  188. package/dist/_dts/ui/src/palette/hex.d.ts +3 -3
  189. package/dist/cli/index.mjs +68396 -67339
  190. package/dist/cli/init-docs/content/cli-reference.md +50 -7
  191. package/dist/cli/init-docs/content/content-management.md +7 -4
  192. package/dist/cli/init-docs/content/workflow-isr-revalidation.md +1 -1
  193. package/dist/cli/init-docs/content/workflow-publish.md +5 -1
  194. package/dist/client/{DiscountCodeDisclosure-D6TOf6Hi.mjs → DiscountCodeDisclosure-C4xvTBux.mjs} +1 -1
  195. package/dist/client/{EventCombined.client-Dao3zxRk.mjs → EventCombined.client-Cr7G131j.mjs} +2 -3
  196. package/dist/client/{EventListing.client-B2NNt4y1.mjs → EventListing.client-CAjbseNy.mjs} +2 -2
  197. package/dist/client/{LeafletStaticMap-BhwFo16w.mjs → LeafletStaticMap-BMlWfwz3.mjs} +1 -1
  198. package/dist/client/{MagicLinkForm-BWnB7cMR.mjs → MagicLinkForm-ChdFz96y.mjs} +1 -2
  199. package/dist/client/{StepIndicator-TzRiQ0BY.mjs → StepIndicator-7D3GaBeM.mjs} +2 -2
  200. package/dist/client/{accordion-BPy-AJ4_.mjs → accordion-D8JTs2Si.mjs} +1 -1
  201. package/dist/client/{bookingForm-BL4PGZds.mjs → bookingForm-H3DCRBHs.mjs} +6 -7
  202. package/dist/client/bookings.mjs +4649 -2767
  203. package/dist/client/{carousel-C2b7Cn9-.mjs → carousel-DMr_QWlz.mjs} +1 -1
  204. package/dist/client/{cart-BQcbXIVD.mjs → cart-DWMbfBdR.mjs} +3 -3
  205. package/dist/client/{checkout-DEmpGRJu.mjs → checkout-zmfdkXLx.mjs} +3 -3
  206. package/dist/client/client.mjs +3195 -2488
  207. package/dist/client/{colorStyles-jZS6KfkP.mjs → colorStyles-gcTh5yZT.mjs} +2 -41
  208. package/dist/client/{colorTokenParts-CMugwvX_.mjs → colorTokenParts-FSS3al6l.mjs} +31 -1
  209. package/dist/client/{courseRegistration-BqRZPmsq.mjs → courseRegistration-Z_mn18jy.mjs} +100 -37
  210. package/dist/client/{eventCalendar-B8N_tSl5.mjs → eventCalendar-CYp0YJGF.mjs} +4 -5
  211. package/dist/client/{eventCombined-Gjn6gtq7.mjs → eventCombined-rKyYZUa9.mjs} +2 -2
  212. package/dist/client/{eventDetails-M-VCxA-r.mjs → eventDetails-X0ZaUuMj.mjs} +3 -3
  213. package/dist/client/{eventListing-DR19hqYi.mjs → eventListing-W1SuL7EP.mjs} +2 -2
  214. package/dist/client/{eventRegistration-BR02a0k3.mjs → eventRegistration-ClWricui.mjs} +6 -7
  215. package/dist/client/{form-LY2xIbwg.mjs → form--eKPwAAD.mjs} +1 -2
  216. package/dist/client/{headerSection-CYwwXJfh.mjs → headerSection-BSeGr-FS.mjs} +2 -3
  217. package/dist/client/hooks.mjs +2169 -2093
  218. package/dist/client/{locationMap-DWnBXrFq.mjs → locationMap-BpOrtNYn.mjs} +8 -5
  219. package/dist/client/{media-DHtSxS5V.mjs → media-DoF0dcVx.mjs} +4 -3
  220. package/dist/client/{newsletterForm-D9s-fQ2P.mjs → newsletterForm-Bt7it7Dy.mjs} +1 -2
  221. package/dist/client/{pricing-DDq80oYc.mjs → pricing-BTjSDDr4.mjs} +1 -1
  222. package/dist/client/{productDetail-B0SbWd45.mjs → productDetail-ICnVTcCg.mjs} +3 -3
  223. package/dist/client/{productList-PwYlZn0y.mjs → productList-ZHr6D604.mjs} +3 -3
  224. package/dist/client/{propsDecoder-BRWBiH7i.mjs → propsDecoder-wWN0tBDF.mjs} +2484 -223
  225. package/dist/client/rendering/client.mjs +2532 -2144
  226. package/dist/client/rendering/islands.mjs +20 -20
  227. package/dist/client/rendering.mjs +3322 -2462
  228. package/dist/client/{shop-CMwZPYME.mjs → shop-C1u_BUn0.mjs} +5 -6
  229. package/dist/client/{shop-commerce-BuxsFate.mjs → shop-commerce-CleZdRha.mjs} +5 -6
  230. package/dist/client/{shop-commerce-store-boYlEJ91.mjs → shop-commerce-store-ycnoB2Ce.mjs} +1 -1
  231. package/dist/client/{shopShared-D2naaOes.mjs → shopShared-CPhByt2a.mjs} +3 -3
  232. package/dist/client/{useDiscountCodeUi-D9RHpVoj.mjs → useDiscountCodeUi-cStSQI6C.mjs} +1 -1
  233. package/dist/client/{useEventFilters-igGiK1re.mjs → useEventFilters-DKPN7hSY.mjs} +46 -70
  234. package/dist/client/{usePolling-CI7MbsFB.mjs → usePolling-BKAd6pkZ.mjs} +2 -2
  235. package/dist/preview-next/before-render.mjs +72 -6
  236. package/dist/preview-next/client/runtime.mjs +4 -4
  237. package/dist/preview-next/middleware.mjs +72 -6
  238. package/dist/{previewAuthStore-a_cBD28m.mjs → previewAuthStore-BkT1D06A.mjs} +72 -6
  239. package/dist/{sdk-runtime-MBzD-GmP.mjs → sdk-runtime-hu3wr3ng.mjs} +2 -2
  240. package/dist/{separator-5ahRBC85.mjs → separator-Bln8izQ9.mjs} +1 -1
  241. package/dist/server/components.mjs +3123 -2391
  242. package/dist/server/config-validation.mjs +2169 -2093
  243. package/dist/server/config.mjs +2169 -2093
  244. package/dist/server/data.mjs +2169 -2093
  245. package/dist/server/date-time.mjs +386 -0
  246. package/dist/server/index.mjs +73 -7
  247. package/dist/server/next/revalidate.mjs +53 -1
  248. package/dist/server/next.mjs +3195 -2397
  249. package/dist/server/page-converter.mjs +2192 -1945
  250. package/dist/server/prebuild.mjs +1 -1
  251. package/dist/server/rendering/server.mjs +2844 -2325
  252. package/dist/server/rendering.mjs +3123 -2391
  253. package/dist/server/routing.mjs +2269 -2149
  254. package/dist/server/server.mjs +2244 -2102
  255. package/dist/server/theme-bridge.mjs +2720 -1887
  256. package/dist/server/theme.mjs +1669 -1322
  257. package/dist/server/webhooks.mjs +54 -2
  258. package/dist/styles/index.css +5 -0
  259. package/package.json +7 -1
  260. package/dist/_dts/theme-core/src/buttons/personalities/brushed-wash.d.ts +0 -16
  261. package/dist/_dts/theme-core/src/buttons/personalities/confident-chip.d.ts +0 -16
  262. package/dist/_dts/theme-core/src/buttons/personalities/earth-pill.d.ts +0 -16
  263. package/dist/_dts/theme-core/src/buttons/personalities/editorial-link.d.ts +0 -16
  264. package/dist/_dts/theme-core/src/buttons/personalities/flat-ink.d.ts +0 -20
  265. package/dist/_dts/theme-core/src/buttons/personalities/index.d.ts +0 -172
  266. package/dist/_dts/theme-core/src/buttons/personalities/ink-stamp.d.ts +0 -16
  267. package/dist/_dts/theme-core/src/buttons/personalities/joy-stamp.d.ts +0 -22
  268. package/dist/_dts/theme-core/src/buttons/personalities/ornate-ritual.d.ts +0 -16
  269. package/dist/_dts/theme-core/src/buttons/personalities/pebble.d.ts +0 -16
  270. package/dist/_dts/theme-core/src/buttons/personalities/quiet-arrow.d.ts +0 -17
  271. package/dist/_dts/theme-core/src/buttons/personalities/showtime-pill.d.ts +0 -17
  272. package/dist/_dts/theme-core/src/buttons/personalities/soft-pill.d.ts +0 -16
  273. package/dist/_dts/theme-core/src/buttons/personalities/two-tone-pill.d.ts +0 -17
  274. package/dist/_dts/theme-core/src/buttons/personalities/types.d.ts +0 -273
  275. package/dist/_dts/theme-core/src/buttons/presets/types.d.ts +0 -88
  276. package/dist/_dts/theme-core/src/buttons/utils/contrast.d.ts +0 -38
  277. package/dist/_dts/theme-core/src/palette/themePaletteCompatibility.d.ts +0 -57
  278. package/dist/client/buttons-EBjyslaX.mjs +0 -1852
@@ -19,8 +19,8 @@ export type ThemeChromeTextLegibilityPlan = Readonly<{
19
19
  export declare const backgroundAppearanceQuickColorTokenNames: readonly ["background", "surface", "muted", "primary", "secondary", "accent"];
20
20
  export declare const backgroundAppearanceBaseColorTokenNames: readonly ["background", "surface", "surfaceAlt", "muted", "primary", "secondary", "accent", "neutral"];
21
21
  export declare const backgroundAppearanceShadeableColorTokenNames: readonly ["primary", "secondary", "accent", "neutral"];
22
- export declare const backgroundAppearanceColorTokenNames: readonly ("surface" | "background" | "accent" | "muted" | "primary" | "secondary" | "surfaceAlt" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "accent-500" | "primary-100" | "primary-50" | "primary-900" | "secondary-50" | "secondary-900" | "accent-50" | "accent-900" | "primary-800" | "primary-700" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950")[];
23
- export declare const backgroundAppearanceAdvancedColorTokenNames: ("surface" | "background" | "accent" | "muted" | "primary" | "secondary" | "surfaceAlt" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "accent-500" | "primary-100" | "primary-50" | "primary-900" | "secondary-50" | "secondary-900" | "accent-50" | "accent-900" | "primary-800" | "primary-700" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950")[];
22
+ export declare const backgroundAppearanceColorTokenNames: readonly ("surface" | "background" | "accent" | "muted" | "primary" | "secondary" | "surfaceAlt" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "primary-100" | "primary-50" | "primary-900" | "secondary-50" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "primary-800" | "primary-700" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950")[];
23
+ export declare const backgroundAppearanceAdvancedColorTokenNames: ("surface" | "background" | "accent" | "muted" | "primary" | "secondary" | "surfaceAlt" | "neutral" | "neutral-600" | "neutral-500" | "neutral-800" | "neutral-700" | "neutral-900" | "primary-500" | "primary-400" | "neutral-950" | "primary-300" | "primary-600" | "secondary-600" | "accent-600" | "secondary-500" | "accent-400" | "neutral-400" | "neutral-50" | "neutral-100" | "neutral-200" | "neutral-300" | "secondary-400" | "primary-100" | "primary-50" | "primary-900" | "secondary-50" | "secondary-900" | "accent-50" | "accent-500" | "accent-900" | "primary-800" | "primary-700" | "accent-100" | "accent-200" | "accent-300" | "accent-700" | "accent-800" | "accent-950" | "primary-200" | "primary-950" | "secondary-100" | "secondary-200" | "secondary-300" | "secondary-700" | "secondary-800" | "secondary-950")[];
24
24
  export declare function parseBackgroundAppearanceColorToken(value: unknown): ThemeColorToken | null;
25
25
  export declare function foregroundTokenForBackgroundAppearanceColorToken(token: ThemeColorToken): string;
26
26
  export declare function planThemeBackgroundTextLegibility(backgroundToken: ThemeColorToken, role?: BackgroundTextLegibilityRole): ThemeBackgroundTextLegibilityPlan;
@@ -1,4 +1,4 @@
1
- import { type ButtonPersonalityId, type KnownButtonPersonalityId } from '../buttons/personalities';
1
+ import { type ButtonStyleSelection } from '../buttons/styles';
2
2
  import { type KnownCuratedPaletteValueKey } from '../palette/curated';
3
3
  import type { Theme } from '../schema';
4
4
  import { type HeaderLayoutId, type HeaderLayoutIdValue, type HeaderLookId, type HeaderStyleId } from './headerLooks';
@@ -28,7 +28,7 @@ type CuratedSiteStyleCardOverrides = NonNullable<Theme['cards']>;
28
28
  type CuratedSiteStyleTestimonialQuoteOverrides = NonNullable<Theme['testimonialQuote']>;
29
29
  /**
30
30
  * Site-style-specific Theme overrides are applied after token recipes,
31
- * button personality, and curated palette selection have compiled the base
31
+ * button style, and curated palette selection have compiled the base
32
32
  * Theme. Values here intentionally win; palette and button selections remain
33
33
  * independent Style configurator choices.
34
34
  */
@@ -58,7 +58,9 @@ export type CuratedSiteStyleThemeOverrides = Readonly<{
58
58
  */
59
59
  testimonialQuote?: CuratedSiteStyleTestimonialQuoteOverrides;
60
60
  }>;
61
- export type ButtonPersonalityChoice = CuratedChoice<KnownButtonPersonalityId>;
61
+ export type ButtonStyleChoice = ButtonStyleSelection & Readonly<{
62
+ note?: string;
63
+ }>;
62
64
  export type CuratedPaletteRecommendation = CuratedChoice<KnownCuratedPaletteValueKey>;
63
65
  export type HeaderLayoutChoice = CuratedChoice<HeaderLayoutId>;
64
66
  export type HeaderStyleChoice = CuratedChoice<HeaderStyleId>;
@@ -121,7 +123,7 @@ export type CuratedSiteStyle = Readonly<{
121
123
  recommendedHeaderLookIds: readonly HeaderLookId[];
122
124
  recommendedFooterLookIds: readonly FooterLookId[];
123
125
  /** Authored picker choices. First item is the default/fallback. */
124
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
126
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
125
127
  /** Authored picker choices. First item is the default/fallback. */
126
128
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
127
129
  /** Concrete typography applied when this site style is selected. */
@@ -129,7 +131,7 @@ export type CuratedSiteStyle = Readonly<{
129
131
  /** Optional concrete hero typography applied with the site style. */
130
132
  heroTypography?: SiteStyleHeroTypography;
131
133
  }>;
132
- export declare function defaultButtonPersonalityForSiteStyle(siteStyle: CuratedSiteStyle): ButtonPersonalityId;
134
+ export declare function defaultButtonStyleSelectionForSiteStyle(siteStyle: CuratedSiteStyle): ButtonStyleSelection;
133
135
  export declare function defaultPaletteForSiteStyle(siteStyle: CuratedSiteStyle): KnownCuratedPaletteValueKey;
134
136
  /**
135
137
  * V1 generated site styles are curated product presets, not AI-authored design
@@ -168,7 +170,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
168
170
  recommendedHeaderLookIds: readonly HeaderLookId[];
169
171
  recommendedFooterLookIds: readonly FooterLookId[];
170
172
  /** Authored picker choices. First item is the default/fallback. */
171
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
173
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
172
174
  /** Authored picker choices. First item is the default/fallback. */
173
175
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
174
176
  /** Concrete typography applied when this site style is selected. */
@@ -207,7 +209,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
207
209
  recommendedHeaderLookIds: readonly HeaderLookId[];
208
210
  recommendedFooterLookIds: readonly FooterLookId[];
209
211
  /** Authored picker choices. First item is the default/fallback. */
210
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
212
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
211
213
  /** Authored picker choices. First item is the default/fallback. */
212
214
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
213
215
  /** Concrete typography applied when this site style is selected. */
@@ -246,7 +248,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
246
248
  recommendedHeaderLookIds: readonly HeaderLookId[];
247
249
  recommendedFooterLookIds: readonly FooterLookId[];
248
250
  /** Authored picker choices. First item is the default/fallback. */
249
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
251
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
250
252
  /** Authored picker choices. First item is the default/fallback. */
251
253
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
252
254
  /** Concrete typography applied when this site style is selected. */
@@ -285,7 +287,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
285
287
  recommendedHeaderLookIds: readonly HeaderLookId[];
286
288
  recommendedFooterLookIds: readonly FooterLookId[];
287
289
  /** Authored picker choices. First item is the default/fallback. */
288
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
290
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
289
291
  /** Authored picker choices. First item is the default/fallback. */
290
292
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
291
293
  /** Concrete typography applied when this site style is selected. */
@@ -324,7 +326,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
324
326
  recommendedHeaderLookIds: readonly HeaderLookId[];
325
327
  recommendedFooterLookIds: readonly FooterLookId[];
326
328
  /** Authored picker choices. First item is the default/fallback. */
327
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
329
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
328
330
  /** Authored picker choices. First item is the default/fallback. */
329
331
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
330
332
  /** Concrete typography applied when this site style is selected. */
@@ -363,7 +365,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
363
365
  recommendedHeaderLookIds: readonly HeaderLookId[];
364
366
  recommendedFooterLookIds: readonly FooterLookId[];
365
367
  /** Authored picker choices. First item is the default/fallback. */
366
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
368
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
367
369
  /** Authored picker choices. First item is the default/fallback. */
368
370
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
369
371
  /** Concrete typography applied when this site style is selected. */
@@ -402,7 +404,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
402
404
  recommendedHeaderLookIds: readonly HeaderLookId[];
403
405
  recommendedFooterLookIds: readonly FooterLookId[];
404
406
  /** Authored picker choices. First item is the default/fallback. */
405
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
407
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
406
408
  /** Authored picker choices. First item is the default/fallback. */
407
409
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
408
410
  /** Concrete typography applied when this site style is selected. */
@@ -441,7 +443,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
441
443
  recommendedHeaderLookIds: readonly HeaderLookId[];
442
444
  recommendedFooterLookIds: readonly FooterLookId[];
443
445
  /** Authored picker choices. First item is the default/fallback. */
444
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
446
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
445
447
  /** Authored picker choices. First item is the default/fallback. */
446
448
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
447
449
  /** Concrete typography applied when this site style is selected. */
@@ -480,7 +482,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
480
482
  recommendedHeaderLookIds: readonly HeaderLookId[];
481
483
  recommendedFooterLookIds: readonly FooterLookId[];
482
484
  /** Authored picker choices. First item is the default/fallback. */
483
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
485
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
484
486
  /** Authored picker choices. First item is the default/fallback. */
485
487
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
486
488
  /** Concrete typography applied when this site style is selected. */
@@ -519,7 +521,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
519
521
  recommendedHeaderLookIds: readonly HeaderLookId[];
520
522
  recommendedFooterLookIds: readonly FooterLookId[];
521
523
  /** Authored picker choices. First item is the default/fallback. */
522
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
524
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
523
525
  /** Authored picker choices. First item is the default/fallback. */
524
526
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
525
527
  /** Concrete typography applied when this site style is selected. */
@@ -558,7 +560,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
558
560
  recommendedHeaderLookIds: readonly HeaderLookId[];
559
561
  recommendedFooterLookIds: readonly FooterLookId[];
560
562
  /** Authored picker choices. First item is the default/fallback. */
561
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
563
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
562
564
  /** Authored picker choices. First item is the default/fallback. */
563
565
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
564
566
  /** Concrete typography applied when this site style is selected. */
@@ -597,7 +599,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
597
599
  recommendedHeaderLookIds: readonly HeaderLookId[];
598
600
  recommendedFooterLookIds: readonly FooterLookId[];
599
601
  /** Authored picker choices. First item is the default/fallback. */
600
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
602
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
601
603
  /** Authored picker choices. First item is the default/fallback. */
602
604
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
603
605
  /** Concrete typography applied when this site style is selected. */
@@ -636,7 +638,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
636
638
  recommendedHeaderLookIds: readonly HeaderLookId[];
637
639
  recommendedFooterLookIds: readonly FooterLookId[];
638
640
  /** Authored picker choices. First item is the default/fallback. */
639
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
641
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
640
642
  /** Authored picker choices. First item is the default/fallback. */
641
643
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
642
644
  /** Concrete typography applied when this site style is selected. */
@@ -675,7 +677,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
675
677
  recommendedHeaderLookIds: readonly HeaderLookId[];
676
678
  recommendedFooterLookIds: readonly FooterLookId[];
677
679
  /** Authored picker choices. First item is the default/fallback. */
678
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
680
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
679
681
  /** Authored picker choices. First item is the default/fallback. */
680
682
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
681
683
  /** Concrete typography applied when this site style is selected. */
@@ -714,7 +716,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
714
716
  recommendedHeaderLookIds: readonly HeaderLookId[];
715
717
  recommendedFooterLookIds: readonly FooterLookId[];
716
718
  /** Authored picker choices. First item is the default/fallback. */
717
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
719
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
718
720
  /** Authored picker choices. First item is the default/fallback. */
719
721
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
720
722
  /** Concrete typography applied when this site style is selected. */
@@ -753,7 +755,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
753
755
  recommendedHeaderLookIds: readonly HeaderLookId[];
754
756
  recommendedFooterLookIds: readonly FooterLookId[];
755
757
  /** Authored picker choices. First item is the default/fallback. */
756
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
758
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
757
759
  /** Authored picker choices. First item is the default/fallback. */
758
760
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
759
761
  /** Concrete typography applied when this site style is selected. */
@@ -792,7 +794,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
792
794
  recommendedHeaderLookIds: readonly HeaderLookId[];
793
795
  recommendedFooterLookIds: readonly FooterLookId[];
794
796
  /** Authored picker choices. First item is the default/fallback. */
795
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
797
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
796
798
  /** Authored picker choices. First item is the default/fallback. */
797
799
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
798
800
  /** Concrete typography applied when this site style is selected. */
@@ -831,7 +833,7 @@ export declare const curatedSiteStyles: readonly [Readonly<{
831
833
  recommendedHeaderLookIds: readonly HeaderLookId[];
832
834
  recommendedFooterLookIds: readonly FooterLookId[];
833
835
  /** Authored picker choices. First item is the default/fallback. */
834
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
836
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
835
837
  /** Authored picker choices. First item is the default/fallback. */
836
838
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
837
839
  /** Concrete typography applied when this site style is selected. */
@@ -871,7 +873,7 @@ export declare const curatedSiteStylesById: Map<SiteStyleId, Readonly<{
871
873
  recommendedHeaderLookIds: readonly HeaderLookId[];
872
874
  recommendedFooterLookIds: readonly FooterLookId[];
873
875
  /** Authored picker choices. First item is the default/fallback. */
874
- buttonPersonalityChoices: NonEmptyReadonlyArray<ButtonPersonalityChoice>;
876
+ buttonStyleChoices: NonEmptyReadonlyArray<ButtonStyleChoice>;
875
877
  /** Authored picker choices. First item is the default/fallback. */
876
878
  paletteRecommendations: NonEmptyReadonlyArray<CuratedPaletteRecommendation>;
877
879
  /** Concrete typography applied when this site style is selected. */
@@ -197,8 +197,8 @@ export declare const blockDesignPlanSchema: z.ZodObject<{
197
197
  secondary: "secondary";
198
198
  }>;
199
199
  intensity: z.ZodOptional<z.ZodEnum<{
200
- soft: "soft";
201
200
  balanced: "balanced";
201
+ soft: "soft";
202
202
  strong: "strong";
203
203
  }>>;
204
204
  }, z.core.$strict>, z.ZodObject<{
@@ -209,29 +209,29 @@ export declare const blockDesignPlanSchema: z.ZodObject<{
209
209
  secondary: "secondary";
210
210
  }>;
211
211
  intensity: z.ZodOptional<z.ZodEnum<{
212
- soft: "soft";
213
212
  balanced: "balanced";
213
+ soft: "soft";
214
214
  strong: "strong";
215
215
  }>>;
216
216
  }, z.core.$strict>, z.ZodObject<{
217
217
  kind: z.ZodLiteral<"neutral-scrim">;
218
218
  intensity: z.ZodOptional<z.ZodEnum<{
219
- soft: "soft";
220
219
  balanced: "balanced";
220
+ soft: "soft";
221
221
  strong: "strong";
222
222
  }>>;
223
223
  }, z.core.$strict>, z.ZodObject<{
224
224
  kind: z.ZodLiteral<"neutral-wash">;
225
225
  intensity: z.ZodOptional<z.ZodEnum<{
226
- soft: "soft";
227
226
  balanced: "balanced";
227
+ soft: "soft";
228
228
  strong: "strong";
229
229
  }>>;
230
230
  }, z.core.$strict>, z.ZodObject<{
231
231
  kind: z.ZodLiteral<"solid-panel">;
232
232
  intensity: z.ZodOptional<z.ZodEnum<{
233
- soft: "soft";
234
233
  balanced: "balanced";
234
+ soft: "soft";
235
235
  strong: "strong";
236
236
  }>>;
237
237
  }, z.core.$strict>], "kind">>;
@@ -418,8 +418,8 @@ export declare const persistedPageDesignStateV1Schema: z.ZodObject<{
418
418
  secondary: "secondary";
419
419
  }>;
420
420
  intensity: z.ZodOptional<z.ZodEnum<{
421
- soft: "soft";
422
421
  balanced: "balanced";
422
+ soft: "soft";
423
423
  strong: "strong";
424
424
  }>>;
425
425
  }, z.core.$strict>, z.ZodObject<{
@@ -430,29 +430,29 @@ export declare const persistedPageDesignStateV1Schema: z.ZodObject<{
430
430
  secondary: "secondary";
431
431
  }>;
432
432
  intensity: z.ZodOptional<z.ZodEnum<{
433
- soft: "soft";
434
433
  balanced: "balanced";
434
+ soft: "soft";
435
435
  strong: "strong";
436
436
  }>>;
437
437
  }, z.core.$strict>, z.ZodObject<{
438
438
  kind: z.ZodLiteral<"neutral-scrim">;
439
439
  intensity: z.ZodOptional<z.ZodEnum<{
440
- soft: "soft";
441
440
  balanced: "balanced";
441
+ soft: "soft";
442
442
  strong: "strong";
443
443
  }>>;
444
444
  }, z.core.$strict>, z.ZodObject<{
445
445
  kind: z.ZodLiteral<"neutral-wash">;
446
446
  intensity: z.ZodOptional<z.ZodEnum<{
447
- soft: "soft";
448
447
  balanced: "balanced";
448
+ soft: "soft";
449
449
  strong: "strong";
450
450
  }>>;
451
451
  }, z.core.$strict>, z.ZodObject<{
452
452
  kind: z.ZodLiteral<"solid-panel">;
453
453
  intensity: z.ZodOptional<z.ZodEnum<{
454
- soft: "soft";
455
454
  balanced: "balanced";
455
+ soft: "soft";
456
456
  strong: "strong";
457
457
  }>>;
458
458
  }, z.core.$strict>], "kind">>;
@@ -1,8 +1,7 @@
1
1
  import type { Theme } from '../schema';
2
- import { type SiteChromeLookDiagnostics } from './customizableSurfaces';
3
2
  import { type Brand } from './types';
4
- export declare const footerLookIdValues: readonly ["footer-identity-quiet", "footer-muted-grounding", "footer-centered-calm", "footer-split-editorial", "footer-editorial-columns", "site-footer-brand-two-band"];
5
- export type FooterLookIdValue = typeof footerLookIdValues[number];
3
+ export declare const footerLookIdValues: readonly ["footer-links-quiet", "footer-links-emphasized"];
4
+ export type FooterLookIdValue = (typeof footerLookIdValues)[number];
6
5
  export type FooterLookId = Brand<FooterLookIdValue, 'FooterLookId'>;
7
6
  export declare function asFooterLookId(value: FooterLookIdValue): FooterLookId;
8
7
  export type PersistedFooterLookIdParseResult = Readonly<{
@@ -18,179 +17,46 @@ export declare function parsePersistedFooterLookId(value: string): Exclude<Persi
18
17
  kind: 'empty';
19
18
  }>;
20
19
  export declare function parsePersistedFooterLookId(value: string | null | undefined): PersistedFooterLookIdParseResult;
21
- export declare const footerLayoutIdValues: readonly ["identity", "centered", "split", "columns"];
22
- export type FooterLayoutIdValue = typeof footerLayoutIdValues[number];
23
- export type FooterLayoutId = Brand<FooterLayoutIdValue, 'FooterLayoutId'>;
24
- export declare function asFooterLayoutId(value: FooterLayoutIdValue): FooterLayoutId;
25
- export declare const footerStyleIdValues: readonly ["quiet", "calm", "editorial", "brand-band"];
26
- export type FooterStyleIdValue = typeof footerStyleIdValues[number];
27
- export type FooterStyleId = Brand<FooterStyleIdValue, 'FooterStyleId'>;
28
- export declare function asFooterStyleId(value: FooterStyleIdValue): FooterStyleId;
29
- export type FooterLayoutDefinition = Readonly<{
30
- id: FooterLayoutId;
31
- label: string;
32
- description: string;
33
- requiresFooterNav?: boolean;
34
- requiresFooterNavGroups?: boolean;
35
- maxRecommendedNavDensity?: Extract<FooterSelectionContext['navDensity'], 'sparse' | 'balanced'>;
36
- }>;
37
- export type FooterStyleDefinition = Readonly<{
38
- id: FooterStyleId;
39
- label: string;
40
- description: string;
41
- }>;
42
20
  export type FooterLookDefinition = Readonly<{
43
21
  id: FooterLookId;
44
22
  label: string;
45
- layoutId: FooterLayoutId;
46
- styleId: FooterStyleId;
47
- hiddenFromLayoutStyleControls?: boolean;
48
- requiresFooterNav?: boolean;
49
- requiresFooterNavGroups?: boolean;
50
- maxRecommendedNavDensity?: Extract<FooterSelectionContext['navDensity'], 'sparse' | 'balanced'>;
51
- allowedContentPresence?: readonly Exclude<FooterSelectionContext['contentPresence'], 'unknown'>[];
23
+ description: string;
52
24
  compile: (theme: Theme) => Theme['footer'];
53
25
  }>;
54
- export type FooterSelectionContext = Readonly<{
55
- navDensity: 'unknown' | 'none' | 'sparse' | 'balanced' | 'dense';
56
- groupedNav: 'unknown' | 'none' | 'present';
57
- contentPresence: 'unknown' | 'default-footer' | 'footer-blocks' | 'default-and-blocks';
58
- }>;
59
- export type RejectedFooterLookReason = 'footer-nav-required' | 'footer-nav-groups-required' | 'footer-nav-too-dense' | 'footer-content-incompatible';
60
- export type RejectedFooterLook = Readonly<{
61
- lookId: FooterLookId;
62
- reasons: readonly RejectedFooterLookReason[];
63
- }>;
64
26
  export type FooterSelectionResult = Readonly<{
65
27
  selectedLookId: FooterLookId;
66
28
  selectedLook: FooterLookDefinition;
67
29
  footer: Theme['footer'];
68
- rejected: readonly RejectedFooterLook[];
30
+ rejected: readonly [];
31
+ }>;
32
+ export type FooterLookDiagnostics = Readonly<{
33
+ surface: Readonly<{
34
+ kind: 'site-footer';
35
+ }>;
36
+ selectedLookId: FooterLookId;
37
+ rejected: readonly [];
69
38
  }>;
70
- export type FooterLookDiagnostics = SiteChromeLookDiagnostics<FooterLookId, RejectedFooterLookReason>;
71
39
  export type FooterLookResolutionInput = Readonly<{
72
40
  theme: Theme;
73
41
  recommendedLookIds: readonly FooterLookId[];
74
- context?: Partial<FooterSelectionContext>;
75
42
  }>;
76
- export declare const defaultFooterSelectionContext: FooterSelectionContext;
77
43
  export declare const guaranteedFallbackFooterLookId: FooterLookId;
78
- export declare const footerLayoutCatalog: readonly [{
79
- readonly id: FooterLayoutId;
80
- readonly label: "Identity";
81
- readonly description: "Logo, site text, address, and legal copy without relying on footer navigation.";
82
- }, {
83
- readonly id: FooterLayoutId;
84
- readonly label: "Centered";
85
- readonly description: "A calm centered stack for identity, short copy, and optional compact navigation.";
86
- readonly maxRecommendedNavDensity: "sparse";
87
- }, {
88
- readonly id: FooterLayoutId;
89
- readonly label: "Split";
90
- readonly description: "Navigation and brand signoff separated into a wider split footer.";
91
- readonly requiresFooterNav: true;
92
- readonly maxRecommendedNavDensity: "balanced";
93
- }, {
94
- readonly id: FooterLayoutId;
95
- readonly label: "Columns";
96
- readonly description: "Grouped footer navigation columns with a supporting bottom line.";
97
- readonly requiresFooterNav: true;
98
- readonly requiresFooterNavGroups: true;
99
- }];
100
- export declare const footerStyleCatalog: readonly [{
101
- readonly id: FooterStyleId;
102
- readonly label: "Quiet";
103
- readonly description: "Lightweight, practical footer treatment.";
104
- }, {
105
- readonly id: FooterStyleId;
106
- readonly label: "Calm";
107
- readonly description: "Soft centered treatment with restrained dividers.";
108
- }, {
109
- readonly id: FooterStyleId;
110
- readonly label: "Editorial";
111
- readonly description: "Text-forward treatment with fine-line structure.";
112
- }, {
113
- readonly id: FooterStyleId;
114
- readonly label: "Brand band";
115
- readonly description: "High-contrast brand treatment with a stronger bottom bar.";
116
- }];
117
- export declare function getFooterLayout(id: FooterLayoutId): FooterLayoutDefinition | null;
118
- export declare function getFooterStyle(id: FooterStyleId): FooterStyleDefinition | null;
119
- export declare function getFooterLooksForLayout(layoutId: FooterLayoutId): readonly FooterLookDefinition[];
120
- export declare function getFooterLooksForStyle(styleId: FooterStyleId): readonly FooterLookDefinition[];
121
- export declare function findFooterLookForLayoutStyle(input: Readonly<{
122
- layoutId: FooterLayoutId;
123
- styleId: FooterStyleId;
124
- }>): FooterLookDefinition | null;
125
- export declare function findDefaultFooterLookForLayout(layoutId: FooterLayoutId): FooterLookDefinition | null;
126
- /**
127
- * No-nav-safe identity footer: brand and legal/supporting copy carry the
128
- * footer without implying missing navigation.
129
- */
130
- declare function identityQuietFooter(theme: Theme): Theme['footer'];
131
- /**
132
- * Back-compat alias for the previous default footer Look. It keeps existing
133
- * persisted selections valid while staying hidden from the new layout/style UI.
134
- */
135
- declare function mutedGroundingFooter(theme: Theme): Theme['footer'];
136
- /** Applies a high-contrast brand band with a darker full-bleed bottom bar. */
137
- declare function brandTwoBandFooter(theme: Theme): Theme['footer'];
138
- /**
139
- * Centered stack on a softly tinted band: logo, inline nav, address, and a
140
- * hairline-topped copyright line, all centered.
141
- */
142
- declare function centeredCalmFooter(theme: Theme): Theme['footer'];
143
- /** Editorial split footer: compact nav on one side, brand signoff on the other. */
144
- declare function splitEditorialFooter(theme: Theme): Theme['footer'];
145
- /**
146
- * Editorial columns: site name and supporting copy on the left, inline nav on
147
- * the right, with a hairline-topped bottom line. Uses the footer block's
148
- * columns layout.
149
- */
150
- declare function editorialColumnsFooter(theme: Theme): Theme['footer'];
44
+ declare function quietFooterLinks(theme: Theme): Theme['footer'];
45
+ declare function emphasizedFooterLinks(theme: Theme): Theme['footer'];
151
46
  export declare const footerLookCatalog: readonly [{
152
47
  readonly id: FooterLookId;
153
- readonly label: "Identity footer";
154
- readonly layoutId: FooterLayoutId;
155
- readonly styleId: FooterStyleId;
156
- readonly compile: typeof identityQuietFooter;
157
- }, {
158
- readonly id: FooterLookId;
159
- readonly label: "Muted grounding footer";
160
- readonly layoutId: FooterLayoutId;
161
- readonly styleId: FooterStyleId;
162
- readonly hiddenFromLayoutStyleControls: true;
163
- readonly compile: typeof mutedGroundingFooter;
164
- }, {
165
- readonly id: FooterLookId;
166
- readonly label: "Centered calm footer";
167
- readonly layoutId: FooterLayoutId;
168
- readonly styleId: FooterStyleId;
169
- readonly compile: typeof centeredCalmFooter;
170
- }, {
171
- readonly id: FooterLookId;
172
- readonly label: "Split editorial footer";
173
- readonly layoutId: FooterLayoutId;
174
- readonly styleId: FooterStyleId;
175
- readonly compile: typeof splitEditorialFooter;
176
- }, {
177
- readonly id: FooterLookId;
178
- readonly label: "Editorial columns footer";
179
- readonly layoutId: FooterLayoutId;
180
- readonly styleId: FooterStyleId;
181
- readonly compile: typeof editorialColumnsFooter;
48
+ readonly label: "Quiet links";
49
+ readonly description: "Regular-weight footer navigation with a restrained hover.";
50
+ readonly compile: typeof quietFooterLinks;
182
51
  }, {
183
52
  readonly id: FooterLookId;
184
- readonly label: "Two-band brand footer";
185
- readonly layoutId: FooterLayoutId;
186
- readonly styleId: FooterStyleId;
187
- readonly allowedContentPresence: readonly ["default-footer", "default-and-blocks"];
188
- readonly compile: typeof brandTwoBandFooter;
53
+ readonly label: "Emphasized links";
54
+ readonly description: "Medium-weight footer navigation with a clearer emphasis.";
55
+ readonly compile: typeof emphasizedFooterLinks;
189
56
  }];
190
57
  export declare function getFooterLook(id: FooterLookId): FooterLookDefinition | null;
191
58
  export declare function findFooterLook(id: FooterLookId): FooterLookDefinition | undefined;
192
59
  export declare function getFooterLookOrThrow(id: FooterLookId): FooterLookDefinition;
193
60
  export declare function resolveFooterLook(input: FooterLookResolutionInput): FooterSelectionResult;
194
61
  export declare function footerLookDiagnosticsFromSelectionResult(result: FooterSelectionResult): FooterLookDiagnostics;
195
- export declare function footerLookRejectionReasonLabel(reason: RejectedFooterLookReason): string;
196
62
  export {};
@@ -1,3 +1,5 @@
1
1
  import type { Theme } from '../schema';
2
2
  export type HeaderCtaTreatment = 'default' | 'primary' | 'secondary' | 'inverted' | 'outline' | 'ghost';
3
- export declare function resolveHeaderCtaVariant(theme: Theme, treatment: HeaderCtaTreatment): string | undefined;
3
+ type HeaderCtaButtonTheme = Pick<Theme, 'buttons'>;
4
+ export declare function resolveHeaderCtaVariant(theme: HeaderCtaButtonTheme, treatment: HeaderCtaTreatment): string | undefined;
5
+ export {};
@@ -1,6 +1,6 @@
1
1
  import type { BlockAppearanceDesign, BlockAppearanceOptionGroup } from './appearancePresets';
2
2
  import type { BlockDesignMetadata, BlockLayoutDesignProfile } from './blockFlow';
3
- import { type PageDesignIntent } from './pageDesignIntent';
3
+ import { type PageDesignDecisions } from './pageDesignIntent';
4
4
  import { type AppearancePresetId, type BlockDesignCapability, type BoundaryOptionId, type DesignBlockId, type DesignBoundaryId, type LayoutVariantKey, type NonEmptyReadonlyArray, type PageFlowPresetId, type SiteStyleId, type UnsupportedBlockDesignCapabilityReason } from './types';
5
5
  import { type BoundaryOption } from './sectionTransitions';
6
6
  export { boundaryOptions, type BoundaryOption } from './sectionTransitions';
@@ -163,7 +163,8 @@ export declare const pageFlowPresets: readonly [{
163
163
  readonly defaultBoundaryOptionId: BoundaryOptionId;
164
164
  }];
165
165
  export declare function buildPageDesignEditorReadModel<TBlockId extends DesignBlockId>(input: Readonly<{
166
- intent: PageDesignIntent<TBlockId>;
166
+ siteStyleId: SiteStyleId;
167
+ intent: PageDesignDecisions<TBlockId>;
167
168
  blocks: readonly PageDesignEditorBlockInput<TBlockId>[];
168
169
  }>): PageDesignEditorReadModel<TBlockId>;
169
170
  export declare function resolveVisiblePromotedFieldPathsForEditorBlock(input: Readonly<{
@@ -43,6 +43,8 @@ export type PageDesignIntent<TBlockId extends DesignBlockId = DesignBlockId> = R
43
43
  blockLookPins: readonly PageDesignBlockLookPin<TBlockId>[];
44
44
  boundaryPins: readonly PageDesignBoundaryPin<TBlockId>[];
45
45
  }>;
46
+ /** Page-owned decisions consumed by compilers; site style is supplied separately. */
47
+ export type PageDesignDecisions<TBlockId extends DesignBlockId = DesignBlockId> = Omit<PageDesignIntent<TBlockId>, 'siteStyleId'>;
46
48
  export type PageDesignBlockDescriptor<TBlockId extends DesignBlockId = DesignBlockId> = Readonly<{
47
49
  blockId: TBlockId;
48
50
  blockKind: string;
@@ -110,6 +112,11 @@ export type PageDesignIntentUpdate<TBlockId extends DesignBlockId = DesignBlockI
110
112
  intent: PageDesignIntent<TBlockId>;
111
113
  issues: readonly PageDesignIntentIssue<TBlockId>[];
112
114
  }>;
115
+ /**
116
+ * Site style is site-owned authority. Page design snapshots retain pins and
117
+ * flow choices, but must not keep resolving against a superseded site style.
118
+ */
119
+ export declare function rebasePageDesignIntentToSiteStyle<TBlockId extends DesignBlockId>(intent: PageDesignIntent<TBlockId>, siteStyleId: SiteStyleId): PageDesignIntent<TBlockId>;
113
120
  export type PageDesignDuplicateBlockMapping<TBlockId extends DesignBlockId = DesignBlockId> = Readonly<{
114
121
  sourceBlockId: TBlockId;
115
122
  targetBlockId: TBlockId;
@@ -148,8 +155,8 @@ export declare const pageDesignBoundaryTreatmentSchema: z.ZodDiscriminatedUnion<
148
155
  expansive: "expansive";
149
156
  }>;
150
157
  curve: z.ZodEnum<{
151
- soft: "soft";
152
158
  spacious: "spacious";
159
+ soft: "soft";
153
160
  expansive: "expansive";
154
161
  }>;
155
162
  }, z.core.$strict>, z.ZodObject<{
@@ -206,8 +213,8 @@ export declare const pageDesignUserPinnedBoundaryTreatmentChoiceSchema: z.ZodObj
206
213
  expansive: "expansive";
207
214
  }>;
208
215
  curve: z.ZodEnum<{
209
- soft: "soft";
210
216
  spacious: "spacious";
217
+ soft: "soft";
211
218
  expansive: "expansive";
212
219
  }>;
213
220
  }, z.core.$strict>, z.ZodObject<{
@@ -277,8 +284,8 @@ export declare const pageDesignBoundaryPinSchema: z.ZodObject<{
277
284
  expansive: "expansive";
278
285
  }>;
279
286
  curve: z.ZodEnum<{
280
- soft: "soft";
281
287
  spacious: "spacious";
288
+ soft: "soft";
282
289
  expansive: "expansive";
283
290
  }>;
284
291
  }, z.core.$strict>, z.ZodObject<{
@@ -389,8 +396,8 @@ export declare const pageDesignIntentV2Schema: z.ZodObject<{
389
396
  expansive: "expansive";
390
397
  }>;
391
398
  curve: z.ZodEnum<{
392
- soft: "soft";
393
399
  spacious: "spacious";
400
+ soft: "soft";
394
401
  expansive: "expansive";
395
402
  }>;
396
403
  }, z.core.$strict>, z.ZodObject<{
@@ -441,8 +448,8 @@ export declare function parsePageDesignIntent(value: unknown, options?: ParsePag
441
448
  export declare function normalizeLegacyPageDesignIntent<TBlockId extends DesignBlockId>(intent: LegacyPageDesignIntent<TBlockId>): PageDesignIntent<TBlockId>;
442
449
  export declare function autoDesignChoice(): PageDesignAutoChoice;
443
450
  export declare function userPinnedDesignChoice<TValue>(value: TValue): PageDesignUserPinnedChoice<TValue>;
444
- export declare function resolvePageDesignBlockLookChoice<TBlockId extends DesignBlockId>(intent: PageDesignIntent<TBlockId>, blockId: TBlockId): PageDesignChoice<AppearancePresetId>;
445
- export declare function resolvePageDesignBoundaryChoice<TBlockId extends DesignBlockId>(intent: PageDesignIntent<TBlockId>, previousBlockId: TBlockId, nextBlockId: TBlockId): PageDesignChoice<SectionBoundaryTreatment>;
451
+ export declare function resolvePageDesignBlockLookChoice<TBlockId extends DesignBlockId>(intent: PageDesignDecisions<TBlockId>, blockId: TBlockId): PageDesignChoice<AppearancePresetId>;
452
+ export declare function resolvePageDesignBoundaryChoice<TBlockId extends DesignBlockId>(intent: PageDesignDecisions<TBlockId>, previousBlockId: TBlockId, nextBlockId: TBlockId): PageDesignChoice<SectionBoundaryTreatment>;
446
453
  export declare function buildBoundaryPin<TBlockId extends DesignBlockId>(previousBlockId: TBlockId, nextBlockId: TBlockId, choice: PageDesignUserPinnedChoice<SectionBoundaryTreatment>): PageDesignBoundaryPin<TBlockId>;
447
454
  export declare function reducePageDesignIntentForStructureEvent<TBlockId extends DesignBlockId>(intent: PageDesignIntent<TBlockId>, event: PageDesignStructureEvent<TBlockId>): PageDesignIntentUpdate<TBlockId>;
448
455
  export declare function reducePageDesignIntentForUserAction<TBlockId extends DesignBlockId>(intent: PageDesignIntent<TBlockId>, action: PageDesignUserAction<TBlockId>): PageDesignIntent<TBlockId>;