themelia-react-ui 2.0.4 → 2.0.6

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 (715) hide show
  1. package/CHANGELOG.md +211 -0
  2. package/MIGRATION.md +119 -0
  3. package/README.md +122 -20
  4. package/dist/{accordion-96o0pN62.js → accordion-0tQUZ20r.js} +13 -13
  5. package/dist/accordion-0tQUZ20r.js.map +1 -0
  6. package/dist/{action-menu-CHgs8vmj.js → action-menu-C0gjzLyE.js} +48 -45
  7. package/dist/action-menu-C0gjzLyE.js.map +1 -0
  8. package/dist/{affordance-geometry.generated-B8yGOr8-.js → affordance-geometry.generated-P-aVJisu.js} +36 -36
  9. package/dist/affordance-geometry.generated-P-aVJisu.js.map +1 -0
  10. package/dist/{ai-artifact-BZUGwBq6.js → ai-artifact-CGGpQryR.js} +281 -230
  11. package/dist/ai-artifact-CGGpQryR.js.map +1 -0
  12. package/dist/app-shell-EHuuRDGy.js +321 -0
  13. package/dist/app-shell-EHuuRDGy.js.map +1 -0
  14. package/dist/{attachment-DkoqHPPl.js → attachment-BCpA4e7i.js} +10 -10
  15. package/dist/{attachment-DkoqHPPl.js.map → attachment-BCpA4e7i.js.map} +1 -1
  16. package/dist/{auth-D2FVZ1MH.js → auth-B0girIk_.js} +49 -52
  17. package/dist/auth-B0girIk_.js.map +1 -0
  18. package/dist/{avatar-DWO_HHhB.js → avatar-B9Jnp-T-.js} +8 -8
  19. package/dist/avatar-B9Jnp-T-.js.map +1 -0
  20. package/dist/{badge-DErMA7ul.js → badge-wWauMgAt.js} +5 -5
  21. package/dist/{badge-DErMA7ul.js.map → badge-wWauMgAt.js.map} +1 -1
  22. package/dist/base/accordion.js +1 -1
  23. package/dist/base/action-menu.js +1 -1
  24. package/dist/base/attachment.js +1 -1
  25. package/dist/base/avatar.js +1 -1
  26. package/dist/base/badge.js +1 -1
  27. package/dist/base/batch-action-bar.js +1 -1
  28. package/dist/base/buttons.js +1 -1
  29. package/dist/base/cards.js +2 -2
  30. package/dist/base/carousel.js +3 -3
  31. package/dist/base/cascader.js +2 -372
  32. package/dist/base/chart.js +1 -1
  33. package/dist/base/choice-inputs.js +2 -2
  34. package/dist/base/code-block.js +1 -1
  35. package/dist/base/combobox.js +2 -2
  36. package/dist/base/command.js +1 -1
  37. package/dist/base/copyable.js +1 -1
  38. package/dist/base/date-pickers.js +2 -2
  39. package/dist/base/display.js +6 -6
  40. package/dist/base/feedback.js +4 -4
  41. package/dist/base/forms-numeric.js +1 -1
  42. package/dist/base/forms.js +2 -2
  43. package/dist/base/inline-edit.js +10 -10
  44. package/dist/base/item.js +1 -1
  45. package/dist/base/media-gallery.js +1 -1
  46. package/dist/base/metadata-list.js +1 -1
  47. package/dist/base/navigation.js +7 -7
  48. package/dist/base/popover-menu.js +1 -1
  49. package/dist/base/popover.js +1 -1
  50. package/dist/base/qr-code.js +1 -1
  51. package/dist/base/repeaters.js +200 -193
  52. package/dist/base/repeaters.js.map +1 -1
  53. package/dist/base/sheet.js +1 -1
  54. package/dist/base/sidebar.js +2 -2
  55. package/dist/base/signature-pad.js +8 -8
  56. package/dist/base/signature-pad.js.map +1 -1
  57. package/dist/base/skeleton.js +1 -1
  58. package/dist/base/spinner.js +6 -6
  59. package/dist/base/spinner.js.map +1 -1
  60. package/dist/base/structure.js +1 -1
  61. package/dist/base/table.js +1 -1
  62. package/dist/base/text-inputs.js +2 -2
  63. package/dist/base/toaster.js +36 -36
  64. package/dist/base/toaster.js.map +1 -1
  65. package/dist/base/tree.js +1 -1
  66. package/dist/base/upload-queue.js +1 -1
  67. package/dist/base/upload.js +3 -3
  68. package/dist/base/value-inputs.js +1 -1
  69. package/dist/{batch-action-bar-CdfIkCsV.js → batch-action-bar-BoqWIIpV.js} +7 -7
  70. package/dist/batch-action-bar-BoqWIIpV.js.map +1 -0
  71. package/dist/blocks/admin.js +21 -21
  72. package/dist/blocks/admin.js.map +1 -1
  73. package/dist/blocks/ai.js +267 -247
  74. package/dist/blocks/ai.js.map +1 -1
  75. package/dist/blocks/analytics/usage-card.js +1 -1
  76. package/dist/blocks/analytics.js +537 -543
  77. package/dist/blocks/analytics.js.map +1 -1
  78. package/dist/blocks/collaboration.js +1 -1
  79. package/dist/blocks/commerce/receipt.js +1 -1
  80. package/dist/blocks/commerce.js +1330 -1250
  81. package/dist/blocks/commerce.js.map +1 -1
  82. package/dist/blocks/data-display.js +2 -2
  83. package/dist/blocks/onboarding.js +6 -6
  84. package/dist/blocks/onboarding.js.map +1 -1
  85. package/dist/blocks/planning.js +11 -11
  86. package/dist/blocks/timelines.js +1 -1
  87. package/dist/{breadcrumbs-B-WFKecD.js → breadcrumbs-Bp9Ke7kd.js} +7 -7
  88. package/dist/breadcrumbs-Bp9Ke7kd.js.map +1 -0
  89. package/dist/{button-DkmK-z8E.js → button-ChBovTx0.js} +3 -3
  90. package/dist/button-ChBovTx0.js.map +1 -0
  91. package/dist/{buttons-BbfzgczK.js → buttons-DeW0bQeK.js} +16 -16
  92. package/dist/buttons-DeW0bQeK.js.map +1 -0
  93. package/dist/cards-CNXnmvV5.js +69 -0
  94. package/dist/cards-CNXnmvV5.js.map +1 -0
  95. package/dist/cascader-CrAl9zD5.js +439 -0
  96. package/dist/cascader-CrAl9zD5.js.map +1 -0
  97. package/dist/chart-I7ROnsl8.js +162 -0
  98. package/dist/chart-I7ROnsl8.js.map +1 -0
  99. package/dist/{checkbox-CzYUTPeJ.js → checkbox-MoyHIAPs.js} +3 -3
  100. package/dist/{checkbox-CzYUTPeJ.js.map → checkbox-MoyHIAPs.js.map} +1 -1
  101. package/dist/choice-inputs-DHGtx0QV.js +789 -0
  102. package/dist/choice-inputs-DHGtx0QV.js.map +1 -0
  103. package/dist/{code-block-CGNaUtAE.js → code-block-BSJyq9e-.js} +9 -9
  104. package/dist/code-block-BSJyq9e-.js.map +1 -0
  105. package/dist/{collapsible-Do4G0zcC.js → collapsible-BzJ91LUG.js} +5 -5
  106. package/dist/{collapsible-Do4G0zcC.js.map → collapsible-BzJ91LUG.js.map} +1 -1
  107. package/dist/{collection-content-C0e8SsTm.js → collection-content-CSnwtOTH.js} +3 -3
  108. package/dist/{collection-content-C0e8SsTm.js.map → collection-content-CSnwtOTH.js.map} +1 -1
  109. package/dist/combobox-Bcvu5J8O.js +363 -0
  110. package/dist/combobox-Bcvu5J8O.js.map +1 -0
  111. package/dist/combobox-C2JiSQPc.js +915 -0
  112. package/dist/combobox-C2JiSQPc.js.map +1 -0
  113. package/dist/{command-D8NrBj-b.js → command-9e52NPgK.js} +11 -11
  114. package/dist/command-9e52NPgK.js.map +1 -0
  115. package/dist/{comments-Di4w0H_S.js → comments-BsgErEqd.js} +44 -39
  116. package/dist/comments-BsgErEqd.js.map +1 -0
  117. package/dist/components/base/action-menu/action-menu.d.ts +7 -1
  118. package/dist/components/base/buttons/button-group.recipes.d.ts +2 -2
  119. package/dist/components/base/cards/card.recipes.d.ts +6 -4
  120. package/dist/components/base/cards/partials/card-primitives.d.ts +9 -2
  121. package/dist/components/base/cards/partials/smart-card-header-row.d.ts +3 -1
  122. package/dist/components/base/cards/smart-card.types.d.ts +3 -4
  123. package/dist/components/base/cascader/cascader-panel.d.ts +76 -0
  124. package/dist/components/base/chart/chart.d.ts +6 -1
  125. package/dist/components/base/choice-inputs/choice-types.d.ts +5 -1
  126. package/dist/components/base/choice-inputs/pill-radio-group.d.ts +7 -6
  127. package/dist/components/base/combobox/combobox-field.d.ts +2 -2
  128. package/dist/components/base/combobox/index.d.ts +4 -2
  129. package/dist/components/base/date-pickers/date-picker-internals.d.ts +3 -1
  130. package/dist/components/base/date-pickers/datepicker.types.d.ts +10 -4
  131. package/dist/components/base/date-pickers/time-picker.d.ts +17 -3
  132. package/dist/components/base/feedback/alert.d.ts +1 -1
  133. package/dist/components/base/feedback/state-display.d.ts +5 -1
  134. package/dist/components/base/feedback/state-display.strings.d.ts +9 -0
  135. package/dist/components/base/forms/form-field.d.ts +7 -2
  136. package/dist/components/base/forms/form-sizing.d.ts +7 -7
  137. package/dist/components/base/forms/workflow.d.ts +7 -1
  138. package/dist/components/base/forms-numeric/coordinates-input.d.ts +8 -1
  139. package/dist/components/base/forms-numeric/decimal-input.d.ts +2 -2
  140. package/dist/components/base/forms-numeric/dimensions-input.d.ts +4 -1
  141. package/dist/components/base/forms-numeric/numeric-composite-field.d.ts +12 -0
  142. package/dist/components/base/forms-numeric/weight-input.d.ts +6 -1
  143. package/dist/components/base/metadata-list/metadata-list.d.ts +1 -1
  144. package/dist/components/base/navigation/dropdown-menu.d.ts +1 -1
  145. package/dist/components/base/navigation/language-switcher.d.ts +12 -4
  146. package/dist/components/base/navigation/page-header/page-header-commands.d.ts +14 -7
  147. package/dist/components/base/navigation/page-header/page-header.d.ts +10 -3
  148. package/dist/components/base/popover/popover.d.ts +3 -3
  149. package/dist/components/base/popover/popover.recipes.d.ts +10 -6
  150. package/dist/components/base/repeaters/key-value-editor.d.ts +2 -1
  151. package/dist/components/base/sheet/sheet.d.ts +2 -0
  152. package/dist/components/base/sidebar/index.d.ts +1 -1
  153. package/dist/components/base/sidebar/sidebar.d.ts +29 -5
  154. package/dist/components/base/toaster/index.d.ts +1 -0
  155. package/dist/components/base/upload/avatar-upload.d.ts +2 -1
  156. package/dist/components/base/upload/image-upload.d.ts +2 -1
  157. package/dist/components/blocks/ai/ai-citation/types.d.ts +2 -0
  158. package/dist/components/blocks/ai/ai-file-tree/types.d.ts +1 -1
  159. package/dist/components/blocks/ai/ai-reasoning/types.d.ts +2 -0
  160. package/dist/components/blocks/ai/ai-sources/types.d.ts +2 -0
  161. package/dist/components/blocks/ai/ai-tool-call/types.d.ts +5 -1
  162. package/dist/components/blocks/ai/ai.strings.d.ts +2 -0
  163. package/dist/components/blocks/analytics/metric/metric.d.ts +4 -0
  164. package/dist/components/blocks/analytics/metric-comparison/metric-comparison.d.ts +4 -0
  165. package/dist/components/blocks/analytics/metric-grid/metric-grid.d.ts +4 -5
  166. package/dist/components/blocks/analytics/types.d.ts +2 -2
  167. package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +2 -0
  168. package/dist/components/blocks/commerce/cart-summary/cart-summary.d.ts +1 -1
  169. package/dist/components/blocks/commerce/cart-summary/types.d.ts +3 -1
  170. package/dist/components/blocks/commerce/discount-stack/discount-stack.d.ts +1 -1
  171. package/dist/components/blocks/commerce/discount-stack/types.d.ts +3 -1
  172. package/dist/components/blocks/commerce/fulfillment-group/fulfillment-group.d.ts +1 -1
  173. package/dist/components/blocks/commerce/fulfillment-group/types.d.ts +11 -2
  174. package/dist/components/blocks/commerce/index.d.ts +7 -6
  175. package/dist/components/blocks/commerce/inventory-section/inventory-section.d.ts +1 -1
  176. package/dist/components/blocks/commerce/inventory-section/types.d.ts +7 -2
  177. package/dist/components/blocks/commerce/invoice-header/index.d.ts +2 -1
  178. package/dist/components/blocks/commerce/invoice-header/invoice-header.d.ts +1 -1
  179. package/dist/components/blocks/commerce/invoice-header/types.d.ts +20 -6
  180. package/dist/components/blocks/commerce/invoice-line-items/invoice-line-items.d.ts +1 -1
  181. package/dist/components/blocks/commerce/invoice-line-items/types.d.ts +24 -7
  182. package/dist/components/blocks/commerce/invoice-mini/index.d.ts +2 -1
  183. package/dist/components/blocks/commerce/invoice-mini/types.d.ts +7 -1
  184. package/dist/components/blocks/commerce/order-customer/order-customer.d.ts +1 -1
  185. package/dist/components/blocks/commerce/order-customer/types.d.ts +9 -1
  186. package/dist/components/blocks/commerce/order-status/types.d.ts +4 -0
  187. package/dist/components/blocks/commerce/refund-status/refund-status.d.ts +1 -1
  188. package/dist/components/blocks/commerce/refund-status/types.d.ts +3 -1
  189. package/dist/components/blocks/commerce/shipment-tracking/shipment-tracking.d.ts +1 -1
  190. package/dist/components/blocks/commerce/shipment-tracking/types.d.ts +3 -1
  191. package/dist/components/blocks/commerce/tax-breakdown/tax-breakdown.d.ts +1 -1
  192. package/dist/components/blocks/commerce/tax-breakdown/types.d.ts +3 -1
  193. package/dist/components/blocks/data-display/empty-state/empty-state.types.d.ts +4 -3
  194. package/dist/components/features/activities/activities.types.d.ts +26 -13
  195. package/dist/components/features/activities/hooks/use-activity-resources.d.ts +2 -1
  196. package/dist/components/features/activities/partials/activity-marker.d.ts +7 -3
  197. package/dist/components/features/activities/partials/activity-row.d.ts +24 -0
  198. package/dist/components/features/ai-chat/hooks/use-ai-chat-scroll.d.ts +1 -1
  199. package/dist/components/features/appointment-calendar/appointment-calendar.d.ts +1 -1
  200. package/dist/components/features/appointment-calendar/appointment-calendar.types.d.ts +4 -2
  201. package/dist/components/features/combobox/async-resource-combobox.d.ts +2 -2
  202. package/dist/components/features/combobox/combobox.d.ts +2 -2
  203. package/dist/components/features/combobox/hooks/use-combobox-core.d.ts +2 -1
  204. package/dist/components/features/combobox/hooks/use-combobox-state.d.ts +1 -0
  205. package/dist/components/features/combobox/hooks/use-load-more.d.ts +1 -0
  206. package/dist/components/features/combobox/types.d.ts +37 -8
  207. package/dist/components/features/email-composer/types.d.ts +3 -1
  208. package/dist/components/features/event-calendar/colors.d.ts +2 -2
  209. package/dist/components/features/event-calendar/event-calendar.types.d.ts +4 -0
  210. package/dist/components/features/filters/facets/date-facet.d.ts +4 -2
  211. package/dist/components/features/filters/facets/range-facet.d.ts +12 -0
  212. package/dist/components/features/filters/facets/select-facet.d.ts +2 -1
  213. package/dist/components/features/filters/filters.strings.d.ts +4 -0
  214. package/dist/components/features/filters/filters.types.d.ts +6 -3
  215. package/dist/components/features/filters/partials/date-filter-content.d.ts +3 -2
  216. package/dist/components/features/filters/partials/filter-editor-header.d.ts +16 -0
  217. package/dist/components/features/filters/partials/filter-popover-content.d.ts +5 -3
  218. package/dist/components/features/filters/partials/nested-filter-options.d.ts +21 -0
  219. package/dist/components/features/filters/partials/range-filter-content.d.ts +12 -0
  220. package/dist/components/features/filters/partials/regular-filter-content.d.ts +2 -1
  221. package/dist/components/features/filters/utils/filter-utils.d.ts +25 -3
  222. package/dist/components/features/global-search/global-search.types.d.ts +2 -0
  223. package/dist/components/features/global-search/partials/global-search-input.d.ts +10 -0
  224. package/dist/components/features/global-search/partials/global-search-result-row.d.ts +7 -1
  225. package/dist/components/features/media-library/hooks/use-media-library.d.ts +1 -1
  226. package/dist/components/features/media-library/media-library.d.ts +1 -1
  227. package/dist/components/features/media-library/media-library.strings.d.ts +8 -0
  228. package/dist/components/features/media-library/media-library.types.d.ts +50 -12
  229. package/dist/components/features/media-library/partials/media-library-partials.d.ts +4 -4
  230. package/dist/components/features/mentions/hooks/use-mentions.d.ts +16 -1
  231. package/dist/components/features/mentions/partials/mention-inline-suggestions.d.ts +5 -1
  232. package/dist/components/features/mentions/utils/split-html-by-mentions.d.ts +1 -7
  233. package/dist/components/features/overlays/hooks/use-overlay-visibility.d.ts +2 -2
  234. package/dist/components/features/products/components/product-options-matrix.d.ts +1 -1
  235. package/dist/components/features/products/components/product-variant-editor.d.ts +1 -1
  236. package/dist/components/features/products/components/product-variants-manager.d.ts +1 -1
  237. package/dist/components/features/products/products.strings.d.ts +9 -1
  238. package/dist/components/features/products/products.types.d.ts +45 -8
  239. package/dist/components/features/questionnaire/questionnaire.types.d.ts +3 -0
  240. package/dist/components/features/resource/resource.d.ts +6 -2
  241. package/dist/components/features/resource/resource.types.d.ts +14 -1
  242. package/dist/components/features/rich-text-editor/form-rich-text-editor.d.ts +1 -1
  243. package/dist/components/features/rich-text-editor/partials/caret-helpers.d.ts +1 -1
  244. package/dist/components/features/rich-text-editor/partials/editor-field-aria.d.ts +14 -0
  245. package/dist/components/features/rich-text-editor/partials/image-uploads.d.ts +1 -1
  246. package/dist/components/features/rich-text-editor/partials/rich-text-editor-toolbar.d.ts +3 -1
  247. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +12 -2
  248. package/dist/components/features/rich-text-editor/rich-text-editor.types.d.ts +17 -3
  249. package/dist/components/features/schema-form/hooks/use-schema-form.d.ts +5 -1
  250. package/dist/components/features/schema-form/partials/schema-form-field.d.ts +3 -1
  251. package/dist/components/features/schema-form/schema-form.utils.d.ts +1 -1
  252. package/dist/components/features/suggestions/suggestions.types.d.ts +1 -1
  253. package/dist/components/features/table/data-table.d.ts +1 -1
  254. package/dist/components/features/table/index.d.ts +1 -0
  255. package/dist/components/features/table/partials/resource-cell.d.ts +22 -5
  256. package/dist/components/features/table/table-body.d.ts +1 -1
  257. package/dist/components/features/table/table-helpers.d.ts +6 -3
  258. package/dist/components/features/table/table.strings.d.ts +3 -0
  259. package/dist/components/features/table/table.types.d.ts +18 -2
  260. package/dist/components/layout/app-shell/app-shell.types.d.ts +35 -6
  261. package/dist/components/layout/app-shell/index.d.ts +1 -1
  262. package/dist/components/layout/app-shell/shell-regions.d.ts +27 -0
  263. package/dist/components/layout/app-shell/sidebar-inset-layout.d.ts +1 -1
  264. package/dist/components/layout/app-shell/stacked-layout.d.ts +1 -1
  265. package/dist/components/layout/app-shell/topbar-sidebar-layout.d.ts +1 -1
  266. package/dist/components/layout/containers/two-column-layout.d.ts +2 -0
  267. package/dist/components/layout/header/header.recipes.d.ts +6 -0
  268. package/dist/components/layout/header/header.types.d.ts +9 -8
  269. package/dist/components/layout/layout.types.d.ts +5 -3
  270. package/dist/components/layout/navigation/section-nav/section-nav.d.ts +5 -0
  271. package/dist/components/layout/navigation/side-nav.d.ts +3 -2
  272. package/dist/components/layout/normalize-layout-path.d.ts +1 -0
  273. package/dist/components/layout/page/index.d.ts +2 -1
  274. package/dist/components/layout/page/page.d.ts +1 -0
  275. package/dist/components/layout/page/page.strings.d.ts +11 -0
  276. package/dist/components/layout/page/page.types.d.ts +69 -17
  277. package/dist/components/layout/page/partials/page-header.d.ts +1 -1
  278. package/dist/components/layout/settings/settings.d.ts +10 -3
  279. package/dist/components/layout/sidebar/app-sidebar.d.ts +1 -1
  280. package/dist/components/layout/sidebar/components/sidebar-grouped-navigation.d.ts +1 -1
  281. package/dist/components/layout/sidebar/components/sidebar-navigation.d.ts +1 -1
  282. package/dist/components/layout/sidebar/index.d.ts +2 -1
  283. package/dist/components/layout/sidebar/sidebar-navigation-rail.d.ts +38 -0
  284. package/dist/components/layout/sidebar/sidebar.context.d.ts +6 -7
  285. package/dist/components/layout/sidebar/sidebar.types.d.ts +50 -10
  286. package/dist/components/layout/sidebar/sidebar.utils.d.ts +9 -1
  287. package/dist/components/layout/workspace/workspace.types.d.ts +8 -1
  288. package/dist/components/primitives/link.d.ts +3 -2
  289. package/dist/components/primitives/money.d.ts +1 -1
  290. package/dist/components/primitives/number.d.ts +1 -1
  291. package/dist/components/typography/rich-text/rich-text-tree.d.ts +7 -5
  292. package/dist/components/ui/alert-dialog.d.ts +2 -2
  293. package/dist/components/ui/combobox.d.ts +1 -1
  294. package/dist/components/ui/dialog.d.ts +2 -2
  295. package/dist/components/ui/overlay-layer.d.ts +18 -0
  296. package/dist/components/ui/sheet.d.ts +5 -1
  297. package/dist/components/ui/sidebar-state.d.ts +82 -0
  298. package/dist/components/ui/sidebar.d.ts +5 -17
  299. package/dist/{containers-CRmHf7GP.js → containers-CSdc32h9.js} +26 -18
  300. package/dist/containers-CSdc32h9.js.map +1 -0
  301. package/dist/{control-group-recipes-DBXmfh2E.js → control-group-recipes-fMuFo0H7.js} +6 -6
  302. package/dist/control-group-recipes-fMuFo0H7.js.map +1 -0
  303. package/dist/{copyable-CnGCZdX4.js → copyable-3fdHfMR3.js} +7 -7
  304. package/dist/{copyable-CnGCZdX4.js.map → copyable-3fdHfMR3.js.map} +1 -1
  305. package/dist/{data-display-D4oujtx0.js → data-display-Cmj-xZYl.js} +271 -279
  306. package/dist/data-display-Cmj-xZYl.js.map +1 -0
  307. package/dist/{date-Q7jnXxpk.js → date-Br0FicVv.js} +5 -5
  308. package/dist/{date-Q7jnXxpk.js.map → date-Br0FicVv.js.map} +1 -1
  309. package/dist/date-picker-CyQlFYsP.js +1617 -0
  310. package/dist/date-picker-CyQlFYsP.js.map +1 -0
  311. package/dist/date-pickers-tj2MXmXd.js +185 -0
  312. package/dist/date-pickers-tj2MXmXd.js.map +1 -0
  313. package/dist/{display-BB4BL_-K.js → display-CT_N2a3w.js} +9 -9
  314. package/dist/{display-BB4BL_-K.js.map → display-CT_N2a3w.js.map} +1 -1
  315. package/dist/dropdown-menu-C08iIugv.js +194 -0
  316. package/dist/dropdown-menu-C08iIugv.js.map +1 -0
  317. package/dist/features/activities.js +388 -326
  318. package/dist/features/activities.js.map +1 -1
  319. package/dist/features/ai-chat.js +46 -32
  320. package/dist/features/ai-chat.js.map +1 -1
  321. package/dist/features/appointment-calendar.js +130 -130
  322. package/dist/features/appointment-calendar.js.map +1 -1
  323. package/dist/features/async-preview.js +11 -10
  324. package/dist/features/async-preview.js.map +1 -1
  325. package/dist/features/combobox.js +1 -1
  326. package/dist/features/comments.js +1 -1
  327. package/dist/features/data-view.js +13 -13
  328. package/dist/features/data-view.js.map +1 -1
  329. package/dist/features/email-composer.js +243 -239
  330. package/dist/features/email-composer.js.map +1 -1
  331. package/dist/features/event-calendar.js +197 -199
  332. package/dist/features/event-calendar.js.map +1 -1
  333. package/dist/features/filters.js +2 -2
  334. package/dist/features/global-search.js +168 -143
  335. package/dist/features/global-search.js.map +1 -1
  336. package/dist/features/kanban.js +19 -30
  337. package/dist/features/kanban.js.map +1 -1
  338. package/dist/features/map/style.css +15 -0
  339. package/dist/features/map.js +369 -343
  340. package/dist/features/map.js.map +1 -1
  341. package/dist/features/media-library.js +1202 -975
  342. package/dist/features/media-library.js.map +1 -1
  343. package/dist/features/mentions.js +2 -2
  344. package/dist/features/overlays.js +1 -1
  345. package/dist/features/products.js +1270 -1183
  346. package/dist/features/products.js.map +1 -1
  347. package/dist/features/questionnaire.js +160 -153
  348. package/dist/features/questionnaire.js.map +1 -1
  349. package/dist/features/resource-assignment.js +8 -8
  350. package/dist/features/resource.js +119 -113
  351. package/dist/features/resource.js.map +1 -1
  352. package/dist/features/rich-text-editor.js +28 -19
  353. package/dist/features/rich-text-editor.js.map +1 -1
  354. package/dist/features/schema-form.js +297 -256
  355. package/dist/features/schema-form.js.map +1 -1
  356. package/dist/features/suggestions.js +57 -50
  357. package/dist/features/suggestions.js.map +1 -1
  358. package/dist/features/sync.js +3 -3
  359. package/dist/features/table.js +1 -1
  360. package/dist/features/theme-tweaker.js +470 -470
  361. package/dist/features/theme-tweaker.js.map +1 -1
  362. package/dist/feedback-Dzo1xtAU.js +246 -0
  363. package/dist/feedback-Dzo1xtAU.js.map +1 -0
  364. package/dist/{field-affordance-recipes-DjwGx8eM.js → field-affordance-recipes-D6H7tVJi.js} +5 -5
  365. package/dist/field-affordance-recipes-D6H7tVJi.js.map +1 -0
  366. package/dist/field-control-attributes-B6i335wr.js +18 -0
  367. package/dist/field-control-attributes-B6i335wr.js.map +1 -0
  368. package/dist/{field-state-recipes-BVA2CWHo.js → field-state-recipes-7sza8QbC.js} +4 -2
  369. package/dist/{field-state-recipes-BVA2CWHo.js.map → field-state-recipes-7sza8QbC.js.map} +1 -1
  370. package/dist/filters-Dl80yYtN.js +2415 -0
  371. package/dist/filters-Dl80yYtN.js.map +1 -0
  372. package/dist/form-field-CAPdwdnZ.js +74 -0
  373. package/dist/form-field-CAPdwdnZ.js.map +1 -0
  374. package/dist/{form-sizing-NXgjkmBG.js → form-sizing-CgcrUbLU.js} +5 -5
  375. package/dist/form-sizing-CgcrUbLU.js.map +1 -0
  376. package/dist/{forms-BV5m5aQF.js → forms-B3W8CH7-.js} +17 -13
  377. package/dist/forms-B3W8CH7-.js.map +1 -0
  378. package/dist/forms-numeric-CwjQJe-O.js +991 -0
  379. package/dist/forms-numeric-CwjQJe-O.js.map +1 -0
  380. package/dist/{header-BA697l4a.js → header-ZIIsRKxP.js} +145 -141
  381. package/dist/header-ZIIsRKxP.js.map +1 -0
  382. package/dist/header.recipes-BigdJjw1.js +6 -0
  383. package/dist/header.recipes-BigdJjw1.js.map +1 -0
  384. package/dist/hooks/use-files.d.ts +2 -0
  385. package/dist/{hooks-BQ-L7Uu2.js → hooks-BitHSh-Y.js} +27 -15
  386. package/dist/hooks-BitHSh-Y.js.map +1 -0
  387. package/dist/{icon-badge-COWbCCWu.js → icon-badge-npxF1SLX.js} +4 -4
  388. package/dist/{icon-badge-COWbCCWu.js.map → icon-badge-npxF1SLX.js.map} +1 -1
  389. package/dist/index.js +4 -5
  390. package/dist/{input-Cdw4k0fb.js → input-7KAc7XQL.js} +9 -9
  391. package/dist/{input-Cdw4k0fb.js.map → input-7KAc7XQL.js.map} +1 -1
  392. package/dist/input-DIREVYHs.js +21 -0
  393. package/dist/input-DIREVYHs.js.map +1 -0
  394. package/dist/{interaction-recipes-XR9ZpVYL.js → interaction-recipes-4wZ2tvfb.js} +2 -2
  395. package/dist/{interaction-recipes-XR9ZpVYL.js.map → interaction-recipes-4wZ2tvfb.js.map} +1 -1
  396. package/dist/item-FfWnaYST.js +278 -0
  397. package/dist/item-FfWnaYST.js.map +1 -0
  398. package/dist/layout/app-shell.js +1 -1
  399. package/dist/layout/auth.js +1 -1
  400. package/dist/layout/containers.js +1 -1
  401. package/dist/layout/header.js +1 -1
  402. package/dist/layout/hooks.js +1 -1
  403. package/dist/layout/navigation.js +1 -1
  404. package/dist/layout/page.js +2 -2
  405. package/dist/layout/settings.js +1 -1
  406. package/dist/layout/sidebar.js +3 -3
  407. package/dist/layout/workspace.js +1 -1
  408. package/dist/layout.js +12 -12
  409. package/dist/layout.types-E_GAApzO.js +30 -0
  410. package/dist/layout.types-E_GAApzO.js.map +1 -0
  411. package/dist/lib/affordance-geometry.generated.d.ts +35 -35
  412. package/dist/lib/control-group-recipes.d.ts +5 -5
  413. package/dist/lib/field-affordance-recipes.d.ts +2 -2
  414. package/dist/lib/field-control-attributes.d.ts +11 -0
  415. package/dist/lib/field-state-recipes.d.ts +2 -0
  416. package/dist/lib/format.d.ts +1 -0
  417. package/dist/lib/motion-recipes.d.ts +3 -0
  418. package/dist/lib/navigation-row-recipes.d.ts +7 -7
  419. package/dist/lib/overlay-anatomy-recipes.d.ts +3 -3
  420. package/dist/lib/portal-recipes.d.ts +3 -0
  421. package/dist/lib/surface-recipes.d.ts +1 -1
  422. package/dist/lib/token-merge.generated.d.ts +18 -15
  423. package/dist/lib/utils.js +1 -1
  424. package/dist/map-demo-tile.svg +1 -1
  425. package/dist/{media-gallery-CSl5W1Fy.js → media-gallery-C81DAnKI.js} +6 -6
  426. package/dist/{media-gallery-CSl5W1Fy.js.map → media-gallery-C81DAnKI.js.map} +1 -1
  427. package/dist/{mentions-RKOQaaIB.js → mentions-qOnedSt4.js} +237 -168
  428. package/dist/mentions-qOnedSt4.js.map +1 -0
  429. package/dist/message-BJHnn43M.js +135 -0
  430. package/dist/message-BJHnn43M.js.map +1 -0
  431. package/dist/{metadata-list-qVV7AVxa.js → metadata-list-XkqZ_UXH.js} +64 -64
  432. package/dist/metadata-list-XkqZ_UXH.js.map +1 -0
  433. package/dist/{motion-recipes-ChBg4HBq.js → motion-recipes-DitYv6P2.js} +10 -2
  434. package/dist/motion-recipes-DitYv6P2.js.map +1 -0
  435. package/dist/navigation-BgtPJAhi.js +288 -0
  436. package/dist/navigation-BgtPJAhi.js.map +1 -0
  437. package/dist/navigation-Bt-v7rWP.js +261 -0
  438. package/dist/navigation-Bt-v7rWP.js.map +1 -0
  439. package/dist/{navigation-row-recipes-WZEs-hYo.js → navigation-row-recipes-BGVLvU_O.js} +9 -9
  440. package/dist/navigation-row-recipes-BGVLvU_O.js.map +1 -0
  441. package/dist/normalize-layout-path-BmEgg6fu.js +14 -0
  442. package/dist/normalize-layout-path-BmEgg6fu.js.map +1 -0
  443. package/dist/{number-E_OiIfJz.js → number-CYqBcrSj.js} +79 -87
  444. package/dist/number-CYqBcrSj.js.map +1 -0
  445. package/dist/overflow-tab-bar-BQCA2Zn2.js +172 -0
  446. package/dist/overflow-tab-bar-BQCA2Zn2.js.map +1 -0
  447. package/dist/overlays-CC8zI3Du.js +1017 -0
  448. package/dist/overlays-CC8zI3Du.js.map +1 -0
  449. package/dist/page-BoQ1VaFJ.js +331 -0
  450. package/dist/page-BoQ1VaFJ.js.map +1 -0
  451. package/dist/page-header-commands-DIKspJfx.js +193 -0
  452. package/dist/page-header-commands-DIKspJfx.js.map +1 -0
  453. package/dist/{pagination-Ch8X_47u.js → pagination-Br8TdV9A.js} +7 -7
  454. package/dist/{pagination-Ch8X_47u.js.map → pagination-Br8TdV9A.js.map} +1 -1
  455. package/dist/popover-k8TdUcAt.js +201 -0
  456. package/dist/popover-k8TdUcAt.js.map +1 -0
  457. package/dist/{popover-menu-BYaCdFhf.js → popover-menu-yn-o0kyA.js} +7 -7
  458. package/dist/{popover-menu-BYaCdFhf.js.map → popover-menu-yn-o0kyA.js.map} +1 -1
  459. package/dist/{popover.recipes-D3j8R8Yp.js → popover.recipes-DJ0AkUan.js} +19 -12
  460. package/dist/popover.recipes-DJ0AkUan.js.map +1 -0
  461. package/dist/portal-recipes-DyUXqUtD.js +9 -0
  462. package/dist/portal-recipes-DyUXqUtD.js.map +1 -0
  463. package/dist/{primitives-Du64iDbb.js → primitives-BkkQjYl7.js} +23 -18
  464. package/dist/primitives-BkkQjYl7.js.map +1 -0
  465. package/dist/primitives.js +4 -4
  466. package/dist/{progress-BvF2oCdV.js → progress-DZFXXzPs.js} +9 -9
  467. package/dist/{progress-BvF2oCdV.js.map → progress-DZFXXzPs.js.map} +1 -1
  468. package/dist/{receipt-D789Jwyy.js → receipt-C7LhOg7Q.js} +7 -7
  469. package/dist/receipt-C7LhOg7Q.js.map +1 -0
  470. package/dist/rich-text-BnTzZjIo.js +45 -0
  471. package/dist/rich-text-BnTzZjIo.js.map +1 -0
  472. package/dist/{rich-text-editor-Cm1dpUpQ.js → rich-text-editor-CAurDwT5.js} +501 -424
  473. package/dist/rich-text-editor-CAurDwT5.js.map +1 -0
  474. package/dist/rich-text-editor-toolbar-DbXig7Jk.js +99 -0
  475. package/dist/rich-text-editor-toolbar-DbXig7Jk.js.map +1 -0
  476. package/dist/rich-text-tree-BqyQ_7-R.js +66 -0
  477. package/dist/rich-text-tree-BqyQ_7-R.js.map +1 -0
  478. package/dist/{sanitize-html-DsQmI48u.js → sanitize-html-BWkH4dLM.js} +29 -16
  479. package/dist/sanitize-html-BWkH4dLM.js.map +1 -0
  480. package/dist/{scroll-area-La5RXsEk.js → scroll-area-Bj6CRUif.js} +2 -2
  481. package/dist/{scroll-area-La5RXsEk.js.map → scroll-area-Bj6CRUif.js.map} +1 -1
  482. package/dist/{separator-DAEV0w65.js → separator-B9ewiCGO.js} +2 -2
  483. package/dist/{separator-DAEV0w65.js.map → separator-B9ewiCGO.js.map} +1 -1
  484. package/dist/{separator-GNfPG-90.js → separator-DM6gs2vu.js} +3 -3
  485. package/dist/{separator-GNfPG-90.js.map → separator-DM6gs2vu.js.map} +1 -1
  486. package/dist/services/actions.js +1 -1
  487. package/dist/settings-DZPHgpx4.js +155 -0
  488. package/dist/settings-DZPHgpx4.js.map +1 -0
  489. package/dist/sheet-C4DHsgLk.js +250 -0
  490. package/dist/sheet-C4DHsgLk.js.map +1 -0
  491. package/dist/sidebar-C8BnDwTH.js +709 -0
  492. package/dist/sidebar-C8BnDwTH.js.map +1 -0
  493. package/dist/sidebar-CmD6a-HK.js +1004 -0
  494. package/dist/sidebar-CmD6a-HK.js.map +1 -0
  495. package/dist/skeleton-DDgdhmu9.js +265 -0
  496. package/dist/skeleton-DDgdhmu9.js.map +1 -0
  497. package/dist/smart-card-B6vLxqa_.js +617 -0
  498. package/dist/smart-card-B6vLxqa_.js.map +1 -0
  499. package/dist/{structure-C0V0_Fyf.js → structure-DZJ2wbAU.js} +2 -2
  500. package/dist/{structure-C0V0_Fyf.js.map → structure-DZJ2wbAU.js.map} +1 -1
  501. package/dist/style.css +1 -1
  502. package/dist/{surface-recipes-BKRVW8Os.js → surface-recipes-C8mNycaY.js} +2 -2
  503. package/dist/{surface-recipes-BKRVW8Os.js.map → surface-recipes-C8mNycaY.js.map} +1 -1
  504. package/dist/{table-DH7rozUv.js → table-CBonSdTp.js} +573 -519
  505. package/dist/table-CBonSdTp.js.map +1 -0
  506. package/dist/{table-CpvnzJn9.js → table-CXSPHH25.js} +75 -71
  507. package/dist/table-CXSPHH25.js.map +1 -0
  508. package/dist/tabs-C4Kr_hCr.js +192 -0
  509. package/dist/tabs-C4Kr_hCr.js.map +1 -0
  510. package/dist/{text-inputs-DXItiR0O.js → text-inputs-jdkS3ReG.js} +18 -18
  511. package/dist/text-inputs-jdkS3ReG.js.map +1 -0
  512. package/dist/theme.css +40 -37
  513. package/dist/{timelines-DmtztAY_.js → timelines-CoPwdJP0.js} +13 -12
  514. package/dist/timelines-CoPwdJP0.js.map +1 -0
  515. package/dist/tooltip-31NwIpTo.js +113 -0
  516. package/dist/tooltip-31NwIpTo.js.map +1 -0
  517. package/dist/{tree-CV11PURP.js → tree-CeYVzdFE.js} +9 -9
  518. package/dist/{tree-CV11PURP.js.map → tree-CeYVzdFE.js.map} +1 -1
  519. package/dist/typography/rich-text.js +1 -1
  520. package/dist/{typography-CSyJrh28.js → typography-C7-YMW1S.js} +12 -12
  521. package/dist/{typography-CSyJrh28.js.map → typography-C7-YMW1S.js.map} +1 -1
  522. package/dist/typography.js +1 -1
  523. package/dist/ui-provider-C-74NVLc.js +178 -0
  524. package/dist/ui-provider-C-74NVLc.js.map +1 -0
  525. package/dist/ui-provider.js +2 -3
  526. package/dist/{upload-C9SA0X-8.js → upload-Hdm5gObf.js} +309 -296
  527. package/dist/upload-Hdm5gObf.js.map +1 -0
  528. package/dist/{upload-queue-DhQJiSRc.js → upload-queue-D0sYPuqo.js} +16 -14
  529. package/dist/upload-queue-D0sYPuqo.js.map +1 -0
  530. package/dist/{usage-card-DVTRDmGz.js → usage-card-9s8hLDfn.js} +24 -17
  531. package/dist/usage-card-9s8hLDfn.js.map +1 -0
  532. package/dist/{utils-CF3c95Io.js → utils-DhuoqFy4.js} +255 -165
  533. package/dist/utils-DhuoqFy4.js.map +1 -0
  534. package/dist/value-inputs-D3aPgq9H.js +980 -0
  535. package/dist/value-inputs-D3aPgq9H.js.map +1 -0
  536. package/dist/{value-typography-ClupF0Gz.js → value-typography-uSzzG9Gf.js} +32 -26
  537. package/dist/value-typography-uSzzG9Gf.js.map +1 -0
  538. package/dist/{workspace-9EFVXUyk.js → workspace-CC8Vchiu.js} +51 -50
  539. package/dist/workspace-CC8Vchiu.js.map +1 -0
  540. package/docs/consumer-skill/SKILL.md +4 -3
  541. package/docs/consumer-skill/agents/themelia-ui-designer.md +96 -0
  542. package/docs/consumer-skill/examples/app-layout.tsx +52 -1
  543. package/docs/consumer-skill/examples/commerce-lines.tsx +271 -0
  544. package/docs/consumer-skill/examples/custom-composition.tsx +21 -0
  545. package/docs/consumer-skill/examples/detail.tsx +5 -4
  546. package/docs/consumer-skill/examples/edit.tsx +3 -3
  547. package/docs/consumer-skill/examples/editable-sections.tsx +38 -0
  548. package/docs/consumer-skill/examples/index-table.tsx +4 -4
  549. package/docs/consumer-skill/examples/manifest.json +38 -1
  550. package/docs/consumer-skill/examples/product-media.tsx +41 -0
  551. package/docs/consumer-skill/examples/product-parts.tsx +81 -0
  552. package/docs/consumer-skill/examples/rhf-edit-page.tsx +1 -1
  553. package/docs/consumer-skill/examples/rhf-overlay-form.tsx +24 -11
  554. package/docs/consumer-skill/examples/token-domain-structure.tsx +68 -0
  555. package/docs/consumer-skill/references/agents-md.md +21 -19
  556. package/docs/consumer-skill/references/analytics.md +33 -1
  557. package/docs/consumer-skill/references/commerce-composition.md +97 -0
  558. package/docs/consumer-skill/references/component-contracts.json +21249 -14205
  559. package/docs/consumer-skill/references/composition-mapping.md +17 -3
  560. package/docs/consumer-skill/references/composition.md +177 -32
  561. package/docs/consumer-skill/references/critique-rubric.md +98 -0
  562. package/docs/consumer-skill/references/custom-composition.md +261 -0
  563. package/docs/consumer-skill/references/data-reading.md +79 -0
  564. package/docs/consumer-skill/references/design-contract.md +12 -9
  565. package/docs/consumer-skill/references/discovery.md +27 -3
  566. package/docs/consumer-skill/references/domain-structures.md +124 -0
  567. package/docs/consumer-skill/references/installation.md +62 -8
  568. package/docs/consumer-skill/references/integration.md +59 -1
  569. package/docs/consumer-skill/references/product-composition.md +94 -0
  570. package/docs/consumer-skill/references/public-api.json +3044 -445
  571. package/docs/consumer-skill/references/review.md +87 -10
  572. package/docs/consumer-skill/references/rhf-workflows.md +79 -0
  573. package/docs/consumer-skill/references/screen-archetypes.md +19 -7
  574. package/docs/consumer-skill/references/screen-decisions.md +126 -0
  575. package/docs/consumer-skill/references/theming.md +24 -20
  576. package/docs/consumer-skill/references/tokens.json +9 -9
  577. package/docs/consumer-skill/references/view-craft.md +153 -0
  578. package/docs/consumer-skill/references/view-spec.md +73 -0
  579. package/docs/consumer-skill/references/workflows.md +7 -1
  580. package/docs/consumer-skill/scripts/composition-policy.mjs +176 -26
  581. package/docs/consumer-skill/scripts/composition-schema.mjs +1 -1
  582. package/docs/consumer-skill/scripts/composition.mjs +61 -5
  583. package/docs/consumer-skill/scripts/discovery.mjs +54 -0
  584. package/docs/consumer-skill/scripts/inspect-component.mjs +1 -1
  585. package/docs/consumer-skill/scripts/inspection.mjs +73 -18
  586. package/docs/consumer-skill/scripts/setup-skills.mjs +79 -7
  587. package/docs/consumer-skill/scripts/surface-policy.mjs +5 -5
  588. package/docs/consumer-skills/themelia-components/SKILL.md +14 -13
  589. package/docs/consumer-skills/themelia-composition/SKILL.md +16 -17
  590. package/docs/consumer-skills/themelia-design/SKILL.md +55 -0
  591. package/docs/consumer-skills/themelia-foundation/SKILL.md +2 -1
  592. package/docs/consumer-skills/themelia-tokenization/SKILL.md +24 -17
  593. package/package.json +4 -2
  594. package/templates/admin-shell-template.tsx +1 -2
  595. package/templates/customers-template.tsx +18 -16
  596. package/dist/accordion-96o0pN62.js.map +0 -1
  597. package/dist/action-menu-CHgs8vmj.js.map +0 -1
  598. package/dist/affordance-geometry.generated-B8yGOr8-.js.map +0 -1
  599. package/dist/ai-artifact-BZUGwBq6.js.map +0 -1
  600. package/dist/app-shell-D63ATkIK.js +0 -237
  601. package/dist/app-shell-D63ATkIK.js.map +0 -1
  602. package/dist/auth-D2FVZ1MH.js.map +0 -1
  603. package/dist/avatar-DWO_HHhB.js.map +0 -1
  604. package/dist/base/cascader.js.map +0 -1
  605. package/dist/batch-action-bar-CdfIkCsV.js.map +0 -1
  606. package/dist/breadcrumbs-B-WFKecD.js.map +0 -1
  607. package/dist/button-DkmK-z8E.js.map +0 -1
  608. package/dist/buttons-BbfzgczK.js.map +0 -1
  609. package/dist/cards-4JTWqvVe.js +0 -68
  610. package/dist/cards-4JTWqvVe.js.map +0 -1
  611. package/dist/chart-C19flDQb.js +0 -155
  612. package/dist/chart-C19flDQb.js.map +0 -1
  613. package/dist/choice-inputs-JLtij2y4.js +0 -776
  614. package/dist/choice-inputs-JLtij2y4.js.map +0 -1
  615. package/dist/code-block-CGNaUtAE.js.map +0 -1
  616. package/dist/combobox-CBJDs6w_.js +0 -877
  617. package/dist/combobox-CBJDs6w_.js.map +0 -1
  618. package/dist/combobox-hbhSS18O.js +0 -355
  619. package/dist/combobox-hbhSS18O.js.map +0 -1
  620. package/dist/command-D8NrBj-b.js.map +0 -1
  621. package/dist/comments-Di4w0H_S.js.map +0 -1
  622. package/dist/containers-CRmHf7GP.js.map +0 -1
  623. package/dist/control-group-recipes-DBXmfh2E.js.map +0 -1
  624. package/dist/data-display-D4oujtx0.js.map +0 -1
  625. package/dist/date-picker-zOt1oNss.js +0 -1542
  626. package/dist/date-picker-zOt1oNss.js.map +0 -1
  627. package/dist/date-pickers-cj8IXbDC.js +0 -179
  628. package/dist/date-pickers-cj8IXbDC.js.map +0 -1
  629. package/dist/dropdown-menu-CjY8Vt7W.js +0 -193
  630. package/dist/dropdown-menu-CjY8Vt7W.js.map +0 -1
  631. package/dist/feedback-DZNL5Lg1.js +0 -239
  632. package/dist/feedback-DZNL5Lg1.js.map +0 -1
  633. package/dist/field-affordance-recipes-DjwGx8eM.js.map +0 -1
  634. package/dist/filters-BcT-uoFy.js +0 -2209
  635. package/dist/filters-BcT-uoFy.js.map +0 -1
  636. package/dist/form-field-CsgRmdit.js +0 -63
  637. package/dist/form-field-CsgRmdit.js.map +0 -1
  638. package/dist/form-sizing-NXgjkmBG.js.map +0 -1
  639. package/dist/forms-BV5m5aQF.js.map +0 -1
  640. package/dist/forms-numeric-Cd33AKbD.js +0 -906
  641. package/dist/forms-numeric-Cd33AKbD.js.map +0 -1
  642. package/dist/header-BA697l4a.js.map +0 -1
  643. package/dist/hooks-BQ-L7Uu2.js.map +0 -1
  644. package/dist/input-DOPL5_QE.js +0 -21
  645. package/dist/input-DOPL5_QE.js.map +0 -1
  646. package/dist/item-BvZ2DR_x.js +0 -277
  647. package/dist/item-BvZ2DR_x.js.map +0 -1
  648. package/dist/layout.types-Cn7aUzJp.js +0 -20
  649. package/dist/layout.types-Cn7aUzJp.js.map +0 -1
  650. package/dist/mentions-RKOQaaIB.js.map +0 -1
  651. package/dist/message-INU2xsxu.js +0 -128
  652. package/dist/message-INU2xsxu.js.map +0 -1
  653. package/dist/metadata-list-qVV7AVxa.js.map +0 -1
  654. package/dist/motion-recipes-ChBg4HBq.js.map +0 -1
  655. package/dist/navigation-BQNcg1jT.js +0 -269
  656. package/dist/navigation-BQNcg1jT.js.map +0 -1
  657. package/dist/navigation-DLF3E1IC.js +0 -145
  658. package/dist/navigation-DLF3E1IC.js.map +0 -1
  659. package/dist/navigation-row-recipes-WZEs-hYo.js.map +0 -1
  660. package/dist/number-E_OiIfJz.js.map +0 -1
  661. package/dist/overflow-tab-bar-CrbqMteP.js +0 -284
  662. package/dist/overflow-tab-bar-CrbqMteP.js.map +0 -1
  663. package/dist/overlays-BlKynmde.js +0 -1004
  664. package/dist/overlays-BlKynmde.js.map +0 -1
  665. package/dist/page-CIwNUtGr.js +0 -227
  666. package/dist/page-CIwNUtGr.js.map +0 -1
  667. package/dist/page-header-commands-DFMlNYzN.js +0 -128
  668. package/dist/page-header-commands-DFMlNYzN.js.map +0 -1
  669. package/dist/popover-uwzX2vo7.js +0 -198
  670. package/dist/popover-uwzX2vo7.js.map +0 -1
  671. package/dist/popover.recipes-D3j8R8Yp.js.map +0 -1
  672. package/dist/primitives-Du64iDbb.js.map +0 -1
  673. package/dist/receipt-D789Jwyy.js.map +0 -1
  674. package/dist/rich-text-CLJEf76s.js +0 -78
  675. package/dist/rich-text-CLJEf76s.js.map +0 -1
  676. package/dist/rich-text-editor-Cm1dpUpQ.js.map +0 -1
  677. package/dist/rich-text-editor-toolbar-L__e4x47.js +0 -94
  678. package/dist/rich-text-editor-toolbar-L__e4x47.js.map +0 -1
  679. package/dist/safe-image-src-C6kQSMBZ.js +0 -17
  680. package/dist/safe-image-src-C6kQSMBZ.js.map +0 -1
  681. package/dist/sanitize-html-DsQmI48u.js.map +0 -1
  682. package/dist/settings-BA2iboic.js +0 -174
  683. package/dist/settings-BA2iboic.js.map +0 -1
  684. package/dist/sheet-DoAxTb2J.js +0 -213
  685. package/dist/sheet-DoAxTb2J.js.map +0 -1
  686. package/dist/sidebar-ByqKR_W5.js +0 -512
  687. package/dist/sidebar-ByqKR_W5.js.map +0 -1
  688. package/dist/sidebar-D2iSnGJ7.js +0 -619
  689. package/dist/sidebar-D2iSnGJ7.js.map +0 -1
  690. package/dist/skeleton-CUj8O5Bd.js +0 -264
  691. package/dist/skeleton-CUj8O5Bd.js.map +0 -1
  692. package/dist/smart-card-CqkzQsK-.js +0 -614
  693. package/dist/smart-card-CqkzQsK-.js.map +0 -1
  694. package/dist/table-CpvnzJn9.js.map +0 -1
  695. package/dist/table-DH7rozUv.js.map +0 -1
  696. package/dist/tabs-eqVsJZWO.js +0 -191
  697. package/dist/tabs-eqVsJZWO.js.map +0 -1
  698. package/dist/text-inputs-DXItiR0O.js.map +0 -1
  699. package/dist/theme-scope-BJ6eE2xt.js +0 -50
  700. package/dist/theme-scope-BJ6eE2xt.js.map +0 -1
  701. package/dist/timelines-DmtztAY_.js.map +0 -1
  702. package/dist/tooltip-B4hjKtoV.js +0 -111
  703. package/dist/tooltip-B4hjKtoV.js.map +0 -1
  704. package/dist/ui-provider-CQCuCBcy.js +0 -136
  705. package/dist/ui-provider-CQCuCBcy.js.map +0 -1
  706. package/dist/upload-C9SA0X-8.js.map +0 -1
  707. package/dist/upload-queue-DhQJiSRc.js.map +0 -1
  708. package/dist/usage-card-DVTRDmGz.js.map +0 -1
  709. package/dist/use-mobile-vaLKwgyf.js +0 -15
  710. package/dist/use-mobile-vaLKwgyf.js.map +0 -1
  711. package/dist/utils-CF3c95Io.js.map +0 -1
  712. package/dist/value-inputs-C0o70p-U.js +0 -980
  713. package/dist/value-inputs-C0o70p-U.js.map +0 -1
  714. package/dist/value-typography-ClupF0Gz.js.map +0 -1
  715. package/dist/workspace-9EFVXUyk.js.map +0 -1
@@ -1,17 +1,16 @@
1
- /** SidebarProvider — layout-scoped wrapper around the shadcn sidebar context. */
2
- import * as React from 'react';
3
- import { useBaseSidebarContext, type SidebarMenuDensity } from '../../base/sidebar/sidebar';
4
- export declare const useLayoutSidebar: typeof import("../../ui/sidebar").useSidebar;
1
+ import { useBaseSidebarContext, type SidebarMenuDensity, type SidebarProviderProps } from '../../base/sidebar/sidebar';
2
+ export declare const useLayoutSidebar: typeof import("../../ui/sidebar-state").useSidebar;
5
3
  export type LayoutSidebarContext = ReturnType<typeof useBaseSidebarContext>;
6
- export type LayoutSidebarProviderProps = React.ComponentProps<'div'> & {
4
+ export declare function useDismissSidebarDrawerOnNavigate({ openMobile, panelId, setOpenMobile }: LayoutSidebarContext, navigationKey: string | undefined, enabled: boolean): void;
5
+ export type LayoutSidebarProviderProps = SidebarProviderProps & {
7
6
  /** Parent-driven drawer adaptation for embedded shells; defaults to viewport. */
8
7
  adaptTo?: 'viewport' | 'container';
9
8
  /** Whether the surface starts open, for uncontrolled use. */
10
9
  defaultOpen?: boolean;
11
- /** Default row and child-list rhythm. @default 'compact' */
10
+ /** Default row and child-list rhythm. @default 'default' */
12
11
  menuDensity?: SidebarMenuDensity;
13
12
  /** Whether the surface is showing. Controlled. */
14
13
  open?: boolean;
15
14
  onOpenChange?: (open: boolean) => void;
16
15
  };
17
- export declare function LayoutSidebarProvider({ defaultOpen, menuDensity, open, onOpenChange, className, style, children, ...props }: LayoutSidebarProviderProps): React.JSX.Element;
16
+ export declare function LayoutSidebarProvider({ defaultOpen, menuDensity, open, onOpenChange, className, style, children, ...props }: LayoutSidebarProviderProps): import("react").JSX.Element;
@@ -4,9 +4,11 @@
4
4
  */
5
5
  import type { ComponentType, ReactNode } from 'react';
6
6
  import type { LayoutIconSource, LayoutLinkRenderer, LayoutNavigationAdapter } from '../layout.types';
7
- import type { SidebarMenuDensity } from '../../base/sidebar';
7
+ import type { SidebarMenuDensity, SidebarPanelId, SidebarPresentation } from '../../base/sidebar';
8
8
  import type { StringsProp } from '../../../lib/strings';
9
9
  export interface SidebarNavItem {
10
+ /** Stable identity for rendering, branch expansion and live badges; precedes handle and href. */
11
+ id?: string;
10
12
  /** Display label. */
11
13
  label: ReactNode;
12
14
  /** Destination for the entry, when it navigates. */
@@ -23,10 +25,20 @@ export interface SidebarNavItem {
23
25
  external?: boolean;
24
26
  }
25
27
  export type SidebarFlatNavItem = Omit<SidebarNavItem, 'children' | 'group'>;
28
+ export interface SidebarNavigationGroup {
29
+ /** Stable identity independent of the displayed group label. */
30
+ id: string;
31
+ /** Optional section heading. */
32
+ label?: ReactNode;
33
+ items: SidebarNavItem[];
34
+ }
35
+ export type SidebarNavigationGroups = Record<string, SidebarNavItem[]> | readonly SidebarNavigationGroup[];
26
36
  export interface SidebarRenderItemContext {
27
37
  depth: number;
28
38
  /** Marks the control as currently engaged. */
29
39
  active: boolean;
40
+ /** This branch contains the current destination, independently of disclosure state. */
41
+ ancestor?: boolean;
30
42
  expanded: boolean;
31
43
  /** Effective disabled state, including any disabled ancestor. */
32
44
  disabled?: boolean;
@@ -38,23 +50,37 @@ export interface SidebarRenderItemContext {
38
50
  badge?: string | number;
39
51
  renderLink: LayoutLinkRenderer;
40
52
  }
53
+ /** Custom row content retains the library-owned link, disclosure and child list. */
54
+ export interface SidebarRenderItemContentContext extends Omit<SidebarRenderItemContext, 'children' | 'setExpanded'> {
55
+ defaultContent: ReactNode;
56
+ }
57
+ export interface SidebarSlotContext {
58
+ panelId: SidebarPanelId;
59
+ collapsed: boolean;
60
+ presentation: SidebarPresentation;
61
+ isMobile: boolean;
62
+ renderLink: LayoutLinkRenderer;
63
+ /** Standard content for this region, without its surrounding anatomy. */
64
+ defaultContent: ReactNode;
65
+ }
66
+ export type SidebarSlot = ReactNode | ((context: SidebarSlotContext) => ReactNode);
41
67
  export interface SidebarSlots {
42
- /** Header region of the shell. */
43
- header?: ReactNode;
68
+ /** A node replaces the full header; a callback supplies content inside the padded header. */
69
+ header?: SidebarSlot;
44
70
  /** Pinned content before the standard logo/workspace region, inside its padded header. */
45
71
  headerStart?: ReactNode;
46
72
  /** Pinned content after the standard logo/workspace region. Full header replacement wins. */
47
73
  headerEnd?: ReactNode;
48
- beforeNavigation?: ReactNode;
49
- afterNavigation?: ReactNode;
74
+ beforeNavigation?: SidebarSlot;
75
+ afterNavigation?: SidebarSlot;
50
76
  /** Content below the body. */
51
- footer?: ReactNode;
77
+ footer?: SidebarSlot;
52
78
  empty?: ReactNode;
53
79
  /** Shows the pending indicator. */
54
80
  loading?: ReactNode;
55
81
  }
56
82
  export interface SidebarExpansionProps {
57
- /** Expanded branch keys from handle, href, or a plain-text label. Controlled. */
83
+ /** Expanded branch keys from id, handle, href, or a plain-text label. Controlled. */
58
84
  expandedItems?: readonly string[];
59
85
  /** Initially expanded branches. Active ancestors also open automatically. */
60
86
  defaultExpandedItems?: readonly string[];
@@ -69,6 +95,8 @@ export interface SidebarNavigationStrings {
69
95
  }
70
96
  export declare const defaultSidebarNavigationStrings: SidebarNavigationStrings;
71
97
  export interface AppSidebarProps extends LayoutNavigationAdapter, SidebarExpansionProps {
98
+ /** Accessible name for the navigation landmark. Defaults to the named panel's role. */
99
+ 'aria-label'?: string;
72
100
  /** Enables the library input and local navigation filtering. */
73
101
  searchable?: boolean;
74
102
  /** Search text. Controlled; renderNode labels use their handle as searchable text. */
@@ -80,7 +108,7 @@ export interface AppSidebarProps extends LayoutNavigationAdapter, SidebarExpansi
80
108
  /** Row and child-list rhythm. Inherits the sidebar provider. */
81
109
  menuDensity?: SidebarMenuDensity;
82
110
  /** Navigation items grouped by section heading. */
83
- navigationGroups?: Record<string, SidebarNavItem[]>;
111
+ navigationGroups?: SidebarNavigationGroups;
84
112
  /** Navigation items pinned to the sidebar footer. */
85
113
  footerNavItems?: SidebarFlatNavItem[];
86
114
  /** Heading above the footer navigation. */
@@ -105,14 +133,20 @@ export interface AppSidebarProps extends LayoutNavigationAdapter, SidebarExpansi
105
133
  }>>;
106
134
  /** URL of the active route, used to mark the current item. */
107
135
  currentUrl?: string;
136
+ /** Close this already-open drawer when the app commits a new currentUrl. @default true */
137
+ closeDrawerOnNavigate?: boolean;
108
138
  /** Render item badges and live counts. @default true */
109
139
  showBadges?: boolean;
110
140
  /** Live counts keyed by item id — unread totals and similar. */
111
141
  liveBadges?: Record<string, string | number>;
112
142
  /** Shows the pending indicator. */
113
143
  loading?: boolean;
114
- /** Whether the sidebar can collapse to icons. */
144
+ /** Desktop collapse: icon keeps a compact rail, offcanvas closes the panel, none stays expanded. */
115
145
  collapsible?: 'offcanvas' | 'icon' | 'none';
146
+ /** Named state owner; inherits the nearest shell region, then primary. */
147
+ panelId?: SidebarPanelId;
148
+ /** Transparent docked surfaces share their shell canvas. Drawers remain opaque. */
149
+ surface?: 'default' | 'transparent';
116
150
  /** Shell treatment. */
117
151
  variant?: 'sidebar' | 'floating' | 'inset';
118
152
  /** Which side of the trigger the surface opens on. */
@@ -126,6 +160,8 @@ export interface AppSidebarProps extends LayoutNavigationAdapter, SidebarExpansi
126
160
  slots?: SidebarSlots;
127
161
  /** Renders one item through the consumer's router. */
128
162
  renderItem?: (item: SidebarNavItem, context: SidebarRenderItemContext) => ReactNode;
163
+ /** Replaces row content while retaining the link, disclosure, focus and descendants. */
164
+ renderItemContent?: (item: SidebarNavItem, context: SidebarRenderItemContentContext) => ReactNode;
129
165
  }
130
166
  export interface SidebarGroupedNavigationProps extends LayoutNavigationAdapter, SidebarExpansionProps {
131
167
  /** Optional local filter. Matching ancestors stay visible and open. */
@@ -134,7 +170,7 @@ export interface SidebarGroupedNavigationProps extends LayoutNavigationAdapter,
134
170
  /** Row and child-list rhythm. Inherits the sidebar provider. */
135
171
  menuDensity?: SidebarMenuDensity;
136
172
  /** Navigation items grouped by section heading. */
137
- navigationByGroups: Record<string, SidebarNavItem[]>;
173
+ navigationByGroups: SidebarNavigationGroups;
138
174
  /** URL of the active route, used to mark the current item. */
139
175
  currentUrl?: string;
140
176
  /** Resolves an item's icon name to a component, keeping navigation data serialisable. */
@@ -149,6 +185,8 @@ export interface SidebarGroupedNavigationProps extends LayoutNavigationAdapter,
149
185
  emptySlot?: ReactNode;
150
186
  /** Renders one item through the consumer's router. */
151
187
  renderItem?: (item: SidebarNavItem, context: SidebarRenderItemContext) => ReactNode;
188
+ /** Replaces row content while retaining accessible navigation anatomy. */
189
+ renderItemContent?: (item: SidebarNavItem, context: SidebarRenderItemContentContext) => ReactNode;
152
190
  className?: string;
153
191
  }
154
192
  export interface SidebarFlatNavigationProps extends LayoutNavigationAdapter {
@@ -170,6 +208,8 @@ export interface SidebarFlatNavigationProps extends LayoutNavigationAdapter {
170
208
  liveBadges?: Record<string, string | number>;
171
209
  /** Renders one item through the consumer's router. */
172
210
  renderItem?: (item: SidebarFlatNavItem, context: SidebarRenderItemContext) => ReactNode;
211
+ /** Replaces row content while retaining the accessible link and focus treatment. */
212
+ renderItemContent?: (item: SidebarFlatNavItem, context: SidebarRenderItemContentContext) => ReactNode;
173
213
  className?: string;
174
214
  }
175
215
  export interface WorkspaceLink {
@@ -5,6 +5,13 @@ import type { SidebarNavItem } from './sidebar.types';
5
5
  import type { ComponentScale } from '../../../lib/component-vocabulary';
6
6
  export declare function toPath(href: string): string;
7
7
  export declare function isPathMatch(currentUrl: string, path: string): boolean;
8
+ /** Choose one destination across the whole navigation tree. Prefix matches
9
+ * still open ancestors, but a shorter sibling route is not also current. */
10
+ interface NavigationPathItem {
11
+ href?: string;
12
+ children?: readonly NavigationPathItem[];
13
+ }
14
+ export declare function getCurrentNavigationHref(currentUrl: string, items: readonly NavigationPathItem[]): string | undefined;
8
15
  export declare function getNavLabel(item: Pick<SidebarNavItem, 'label'>): React.ReactNode;
9
16
  export declare function getNavKey(item: SidebarNavItem, fallbackIndex?: number): React.Key;
10
17
  export declare function NavBadge({ value, size, }: {
@@ -13,7 +20,7 @@ export declare function NavBadge({ value, size, }: {
13
20
  /** Size preset. */
14
21
  size?: ComponentScale;
15
22
  }): React.JSX.Element;
16
- export declare function resolveNavBadge(handle: string | undefined, itemBadge: string | number | undefined, liveBadges: Record<string, string | number> | undefined): string | number | undefined;
23
+ export declare function resolveNavBadge(handle: string | undefined, itemBadge: string | number | undefined, liveBadges: Record<string, string | number> | undefined, id?: string): string | number | undefined;
17
24
  export interface DynamicIconProps extends React.SVGProps<SVGSVGElement> {
18
25
  /** Leading glyph. */
19
26
  icon: LayoutIconSource;
@@ -27,3 +34,4 @@ export interface DynamicIconProps extends React.SVGProps<SVGSVGElement> {
27
34
  }
28
35
  export declare function DynamicIcon({ icon, iconMap, size, className, ...props }: DynamicIconProps): React.JSX.Element | null;
29
36
  export declare function renderSidebarLink(renderLink: LayoutLinkRenderer, item: SidebarNavItem, children: React.ReactNode, className?: string, active?: boolean): React.ReactNode;
37
+ export {};
@@ -61,7 +61,7 @@ export interface WorkspaceRecordHeaderProps extends Omit<HTMLAttributes<HTMLDivE
61
61
  actions?: ReactNode;
62
62
  /**
63
63
  * The record's one main command: a solid primary button after the secondary
64
- * commands, visible at every width.
64
+ * commands, available in the compact header menu.
65
65
  */
66
66
  primaryAction?: PageHeaderAction;
67
67
  /**
@@ -72,6 +72,13 @@ export interface WorkspaceRecordHeaderProps extends Omit<HTMLAttributes<HTMLDivE
72
72
  * command objects instead.
73
73
  */
74
74
  secondaryActions?: ReactNode | readonly PageHeaderAction[];
75
+ /**
76
+ * How many routine secondary commands render as outline buttons on wide
77
+ * headers; later ones join the More actions menu. Use `1` or `0` when long
78
+ * labels beside the primary command would crowd the header; `Infinity`
79
+ * keeps every routine command inline. @default 2
80
+ */
81
+ maxVisibleSecondaryActions?: number;
75
82
  /** Accessible name of the More actions menu trigger. Default: `'More actions'`. */
76
83
  moreActionsLabel?: string;
77
84
  /** Current state, shown as a chip. */
@@ -1,9 +1,10 @@
1
1
  import { type AnchorHTMLAttributes, type ReactNode, type Ref } from 'react';
2
- export interface LinkProps extends AnchorHTMLAttributes<HTMLAnchorElement> {
2
+ export interface LinkProps extends AnchorHTMLAttributes<HTMLElement> {
3
3
  children?: ReactNode;
4
4
  /** Rendered instead of a dead link when there is nothing to show. Defaults to an em dash. */
5
5
  emptyLabel?: ReactNode;
6
- ref?: Ref<HTMLAnchorElement>;
6
+ /** The anchor when populated, or the shared empty span when content is absent. */
7
+ ref?: Ref<HTMLElement>;
7
8
  }
8
9
  /**
9
10
  * Link-coloured inline value. Standalone it uses the provider text size with an
@@ -18,7 +18,7 @@ export interface MoneyValue {
18
18
  minorUnitScale?: number;
19
19
  /** Optional consumer-resolved symbol. Intl placement is preserved. */
20
20
  symbol?: string | null;
21
- /** Intl currency label style when the resolved format mode uses currency formatting. */
21
+ /** Intl label style for `with_symbol`/`locale_aware`. `with_code` always appends the code; `decimal` omits it. Select the format mode explicitly to override provider policy. */
22
22
  currencyDisplay?: Intl.NumberFormatOptions['currencyDisplay'];
23
23
  /** Minimum decimal digits. Defaults to the currency's Intl convention. */
24
24
  minimumFractionDigits?: number;
@@ -25,7 +25,7 @@ export interface NumberProps extends SpanProps {
25
25
  export interface PercentProps extends Omit<NumberProps, 'options'> {
26
26
  /** The value is already 0–100 rather than a 0–1 ratio. Defaults to `false`. */
27
27
  scaled?: boolean;
28
- /** Passed to `Intl.NumberFormat` after the percent style and one-decimal default. */
28
+ /** Passed to `Intl.NumberFormat`. The default maximum is one decimal digit or the supplied minimum, whichever is higher. */
29
29
  options?: Intl.NumberFormatOptions;
30
30
  ref?: Ref<HTMLSpanElement>;
31
31
  }
@@ -1,5 +1,5 @@
1
1
  import { type ReactNode } from 'react';
2
- import type { Root } from 'hast';
2
+ import type { Element, Root } from 'hast';
3
3
  /** An image in sanitized rich text, as handed to `renderImage`. */
4
4
  export interface RichTextImageAttributes {
5
5
  /** Source that passed the package image policy (http, https, blob or relative). */
@@ -11,9 +11,11 @@ export interface RichTextImageAttributes {
11
11
  height?: number;
12
12
  }
13
13
  export type RenderRichTextImage = (image: RichTextImageAttributes) => ReactNode;
14
+ type ReplaceRichTextElement = (element: Element) => ReactNode;
14
15
  /**
15
- * Renders an already sanitized tree as React elements, so each image can be
16
- * the consumer's own component (a framework image, a lightbox trigger) while
17
- * the surrounding markup keeps its structure. Server and client output match.
16
+ * Renders an already sanitized tree as React elements. Individual images or
17
+ * other elements can use React components without breaking the surrounding
18
+ * markup. Server and client output match.
18
19
  */
19
- export declare function renderRichTextTree(tree: Root, renderImage: RenderRichTextImage): ReactNode;
20
+ export declare function renderRichTextTree(tree: Root, renderImage?: RenderRichTextImage, replaceElement?: ReplaceRichTextElement): ReactNode;
21
+ export {};
@@ -4,9 +4,9 @@ import { AlertDialog as AlertDialogPrimitive } from "@base-ui/react/alert-dialog
4
4
  import { Button } from "./button";
5
5
  declare function AlertDialog({ ...props }: AlertDialogPrimitive.Root.Props): React.JSX.Element;
6
6
  declare function AlertDialogTrigger({ ...props }: AlertDialogPrimitive.Trigger.Props): React.JSX.Element;
7
- declare function AlertDialogPortal({ container, ...props }: AlertDialogPrimitive.Portal.Props): React.JSX.Element;
7
+ declare function AlertDialogPortal({ container, className, ...props }: AlertDialogPrimitive.Portal.Props): React.JSX.Element;
8
8
  declare function AlertDialogOverlay({ className, ...props }: AlertDialogPrimitive.Backdrop.Props): React.JSX.Element;
9
- declare function AlertDialogContent({ className, container, size, ...props }: AlertDialogPrimitive.Popup.Props & {
9
+ declare function AlertDialogContent({ className, container, size, children, finalFocus: finalFocusProp, ...props }: AlertDialogPrimitive.Popup.Props & {
10
10
  size?: "default" | "sm";
11
11
  } & {
12
12
  container?: ThemePortalContainer;
@@ -21,7 +21,7 @@ type ComboboxInputTriggerProps = Omit<ComboboxPrimitive.Input.Props, 'size'> & {
21
21
  error?: boolean;
22
22
  };
23
23
  declare function ComboboxInputTrigger({ className, render, showClear, clearLabel, toggleLabel, size, error, ...props }: ComboboxInputTriggerProps): React.JSX.Element;
24
- declare function ComboboxPortal({ container, ...props }: ComboboxPrimitive.Portal.Props): React.JSX.Element;
24
+ declare function ComboboxPortal({ container, className, ...props }: ComboboxPrimitive.Portal.Props): React.JSX.Element;
25
25
  declare function ComboboxPositioner({ className, positionMethod, sideOffset, ...props }: ComboboxPrimitive.Positioner.Props): React.JSX.Element;
26
26
  declare function ComboboxPopup({ className, render, ...props }: ComboboxPrimitive.Popup.Props): React.JSX.Element;
27
27
  declare function ComboboxList({ className, ...props }: ComboboxPrimitive.List.Props): React.JSX.Element;
@@ -5,10 +5,10 @@ declare function Dialog({ ...props }: DialogPrimitive.Root.Props): React.JSX.Ele
5
5
  declare function DialogTrigger({ asChild, ...props }: DialogPrimitive.Trigger.Props & {
6
6
  asChild?: boolean;
7
7
  }): React.JSX.Element;
8
- declare function DialogPortal({ container, ...props }: DialogPrimitive.Portal.Props): React.JSX.Element;
8
+ declare function DialogPortal({ container, className, ...props }: DialogPrimitive.Portal.Props): React.JSX.Element;
9
9
  declare function DialogClose({ ...props }: DialogPrimitive.Close.Props): React.JSX.Element;
10
10
  declare function DialogOverlay({ className, ...props }: DialogPrimitive.Backdrop.Props): React.JSX.Element;
11
- declare function DialogContent({ className, container, children, showCloseButton, onFocusCapture, ...props }: DialogPrimitive.Popup.Props & {
11
+ declare function DialogContent({ className, container, children, showCloseButton, onFocusCapture, finalFocus: finalFocusProp, ...props }: DialogPrimitive.Popup.Props & {
12
12
  showCloseButton?: boolean;
13
13
  } & {
14
14
  container?: ThemePortalContainer;
@@ -0,0 +1,18 @@
1
+ import * as React from "react";
2
+ declare function OverlayLayer({ children }: {
3
+ children?: React.ReactNode;
4
+ }): React.JSX.Element;
5
+ declare function useInsideOverlayLayer(): boolean;
6
+ type FinalFocus = boolean | React.RefObject<HTMLElement | null> | ((closeType: never) => boolean | HTMLElement | null | void);
7
+ /**
8
+ * Returns focus to the element that opened the modal. Base UI returns it to the
9
+ * nested parent instead, and under the sidebar drawer owner that parent is closed,
10
+ * so focus fell to the body. Like the default, it leaves focus alone when the app
11
+ * already moved it outside the popup (a confirm that focuses an editor). An
12
+ * explicit `finalFocus` still wins.
13
+ */
14
+ declare function useOpenerFinalFocus<T extends FinalFocus | undefined>(finalFocus: T): {
15
+ capture: React.JSX.Element;
16
+ finalFocus: (() => boolean | HTMLElement) | NonNullable<T>;
17
+ };
18
+ export { OverlayLayer, useInsideOverlayLayer, useOpenerFinalFocus };
@@ -8,9 +8,13 @@ declare function SheetTrigger({ asChild, ...props }: SheetPrimitive.Trigger.Prop
8
8
  declare function SheetClose({ asChild, ...props }: SheetPrimitive.Close.Props & {
9
9
  asChild?: boolean;
10
10
  }): React.JSX.Element;
11
- declare function SheetContent({ className, container, children, side, showCloseButton, onFocusCapture, ...props }: SheetPrimitive.Popup.Props & {
11
+ declare function SheetContent({ className, container, children, side, showCloseButton, forceRenderBackdrop, backdropClassName, onFocusCapture, finalFocus: finalFocusProp, ...props }: SheetPrimitive.Popup.Props & {
12
12
  side?: "top" | "right" | "bottom" | "left";
13
13
  showCloseButton?: boolean;
14
+ /** @internal Render the native backdrop for an embedded sidebar root. */
15
+ forceRenderBackdrop?: boolean;
16
+ /** @internal Position the existing native backdrop within a sidebar frame. */
17
+ backdropClassName?: string;
14
18
  } & {
15
19
  container?: ThemePortalContainer;
16
20
  }): React.JSX.Element;
@@ -0,0 +1,82 @@
1
+ import * as React from 'react';
2
+ export type SidebarPanelId = 'primary' | 'secondary' | 'aside';
3
+ export type SidebarPresentation = 'docked' | 'drawer';
4
+ export type SidebarCollapseMode = 'offcanvas' | 'icon' | 'none';
5
+ export declare const sidebarDockThresholds: {
6
+ readonly primary: 768;
7
+ readonly secondary: 1024;
8
+ readonly aside: 1440;
9
+ };
10
+ export interface SidebarStateProps {
11
+ defaultOpen?: boolean;
12
+ adaptTo?: 'viewport' | 'container';
13
+ open?: boolean;
14
+ onOpenChange?: (open: boolean) => void;
15
+ /** Controlled expanded desktop panels. Takes precedence over the legacy primary `open` prop. */
16
+ openPanels?: readonly SidebarPanelId[];
17
+ /** Initial uncontrolled desktop panels. Otherwise `defaultOpen` initializes primary only. */
18
+ defaultOpenPanels?: readonly SidebarPanelId[];
19
+ /** Receives an isolated desktop-state proposal; primary changes also notify `onOpenChange`. */
20
+ onOpenPanelsChange?: (panels: SidebarPanelId[]) => void;
21
+ /** Controlled active undocked panel, or null. Independent of remembered desktop expansion. */
22
+ mobilePanel?: SidebarPanelId | null;
23
+ /** Receives drawer selection and dismissal proposals, including removal or return to docked presentation. */
24
+ onMobilePanelChange?: (panel: SidebarPanelId | null) => void;
25
+ /** Default target for untargeted triggers and the keyboard shortcut. @default 'primary' */
26
+ navigationPanel?: 'primary' | 'secondary';
27
+ /** Ctrl/Command key for navigationPanel; false disables it. Editable fields and overlays retain their shortcuts. @default 'b' */
28
+ keyboardShortcut?: string | false;
29
+ }
30
+ type RegionRegistration = {
31
+ dockAt: number;
32
+ width?: number;
33
+ collapsible?: SidebarCollapseMode;
34
+ };
35
+ export interface SidebarScopeValue {
36
+ panelId: SidebarPanelId;
37
+ geometry?: 'panel' | 'rail';
38
+ side?: 'left' | 'right';
39
+ setCollapse?: (value: {
40
+ collapsible: SidebarCollapseMode;
41
+ variant: 'sidebar' | 'floating' | 'inset';
42
+ } | null) => void;
43
+ }
44
+ export declare const SidebarScopeContext: React.Context<SidebarScopeValue | null>;
45
+ export declare const SidebarScope: React.Provider<SidebarScopeValue | null>;
46
+ type SidebarStore = {
47
+ openPanels: readonly SidebarPanelId[];
48
+ mobilePanel: SidebarPanelId | null;
49
+ navigationPanel: SidebarPanelId;
50
+ adaptTo: 'viewport' | 'container';
51
+ hostRef: React.RefObject<HTMLDivElement | null>;
52
+ getPresentation: (panelId: SidebarPanelId) => SidebarPresentation;
53
+ getCollapseMode: (panelId: SidebarPanelId) => SidebarCollapseMode | undefined;
54
+ setPanelOpen: (panelId: SidebarPanelId, value: boolean | ((open: boolean) => boolean)) => void;
55
+ setPanelOpenMobile: (panelId: SidebarPanelId, value: React.SetStateAction<boolean>) => void;
56
+ setMobilePanel: (value: SidebarPanelId | null) => void;
57
+ togglePanel: (panelId: SidebarPanelId) => void;
58
+ registerRegion: (panelId: SidebarPanelId, region: RegionRegistration | null) => void;
59
+ triggerFor: (panelId: SidebarPanelId) => HTMLElement | null;
60
+ rememberTrigger: (panelId: SidebarPanelId, element: HTMLElement) => void;
61
+ };
62
+ export declare function useSidebarStore(): SidebarStore | null;
63
+ export declare function useSidebar(panelId?: SidebarPanelId): {
64
+ panelId: SidebarPanelId;
65
+ side: "left" | "right";
66
+ state: "expanded" | "collapsed";
67
+ open: boolean;
68
+ setOpen: (value: boolean | ((open: boolean) => boolean)) => void;
69
+ /** Whether the selected desktop panel is collapsed; drawers expose expanded content. */
70
+ collapsed: boolean;
71
+ /** Effective presentation for the selected panel, including its own docking threshold. */
72
+ presentation: SidebarPresentation;
73
+ isMobile: boolean;
74
+ openMobile: boolean;
75
+ setOpenMobile: (value: React.SetStateAction<boolean>) => void;
76
+ toggleSidebar: () => void;
77
+ openPanels: readonly SidebarPanelId[];
78
+ mobilePanel: SidebarPanelId | null;
79
+ setMobilePanel: (value: SidebarPanelId | null) => void;
80
+ };
81
+ export declare function SidebarProvider({ defaultOpen, adaptTo, open, onOpenChange, openPanels, defaultOpenPanels, onOpenPanelsChange, mobilePanel: controlledMobilePanel, onMobilePanelChange, navigationPanel, keyboardShortcut, ref: forwardedRef, className, style, children, ...props }: React.ComponentProps<'div'> & SidebarStateProps): React.JSX.Element;
82
+ export {};
@@ -5,28 +5,16 @@ import { Button } from "./button";
5
5
  import { Input } from "./input";
6
6
  import { Separator } from "./separator";
7
7
  import { TooltipContent } from "./tooltip";
8
- type SidebarContextProps = {
9
- state: "expanded" | "collapsed";
10
- open: boolean;
11
- setOpen: (open: boolean) => void;
12
- openMobile: boolean;
13
- setOpenMobile: (open: boolean) => void;
14
- isMobile: boolean;
15
- toggleSidebar: () => void;
16
- };
17
- declare function useSidebar(): SidebarContextProps;
18
- declare function SidebarProvider({ defaultOpen, adaptTo, ref: forwardedRef, open: openProp, onOpenChange: setOpenProp, className, style, children, ...props }: React.ComponentProps<"div"> & {
19
- defaultOpen?: boolean;
20
- adaptTo?: "viewport" | "container";
21
- open?: boolean;
22
- onOpenChange?: (open: boolean) => void;
23
- }): React.JSX.Element;
8
+ import { SidebarProvider, useSidebar } from "./sidebar-state";
9
+ import { type SidebarPanelId } from "./sidebar-state";
24
10
  declare function Sidebar({ side, variant, collapsible, className, children, dir, ...props }: React.ComponentProps<"div"> & {
25
11
  side?: "left" | "right";
26
12
  variant?: "sidebar" | "floating" | "inset";
27
13
  collapsible?: "offcanvas" | "icon" | "none";
28
14
  }): React.JSX.Element;
29
- declare function SidebarTrigger({ className, onClick, ...props }: React.ComponentProps<typeof Button>): React.JSX.Element;
15
+ declare function SidebarTrigger({ className, onClick, panelId, children, ...props }: React.ComponentProps<typeof Button> & {
16
+ panelId?: SidebarPanelId;
17
+ }): React.JSX.Element;
30
18
  declare function SidebarRail({ className, ...props }: React.ComponentProps<"button">): React.JSX.Element;
31
19
  declare function SidebarInset({ className, ...props }: React.ComponentProps<"main">): React.JSX.Element;
32
20
  declare function SidebarInput({ className, ...props }: React.ComponentProps<typeof Input>): React.JSX.Element;
@@ -1,5 +1,5 @@
1
1
  "use client";
2
- import { t as e } from "./utils-CF3c95Io.js";
2
+ import { t as e } from "./utils-DhuoqFy4.js";
3
3
  import { t } from "./focus-recipes-B653VaLq.js";
4
4
  import { o as n } from "./structure.recipes-BB4-n58V.js";
5
5
  import { n as r, t as i } from "./composition.recipes-COdiFhxB.js";
@@ -57,39 +57,47 @@ var p = o(function({ className: t, gap: i, render: a, ...o }, s) {
57
57
  p.displayName = "Section";
58
58
  //#endregion
59
59
  //#region src/components/layout/containers/two-column-layout.tsx
60
- var m = o(function({ header: t, main: n, aside: r, footer: a, stickyAside: o = !1, adaptTo: d = "viewport", slotProps: f, className: p, render: m, ...h }, g) {
61
- let { className: _, ...v } = f?.header ?? {}, { className: y, ...b } = f?.main ?? {}, { className: x, ...S } = f?.aside ?? {}, { className: C, ...w } = f?.footer ?? {};
60
+ var m = {
61
+ default: "@3xl:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]",
62
+ "7/5": "@3xl:grid-cols-[minmax(0,7fr)_minmax(0,5fr)]",
63
+ "8/4": "@3xl:grid-cols-[minmax(0,8fr)_minmax(0,4fr)]"
64
+ }, h = {
65
+ default: "lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]",
66
+ "7/5": "lg:grid-cols-[minmax(0,7fr)_minmax(0,5fr)]",
67
+ "8/4": "lg:grid-cols-[minmax(0,8fr)_minmax(0,4fr)]"
68
+ }, g = o(function({ header: t, main: n, aside: r, footer: a, stickyAside: o = !1, adaptTo: d = "viewport", ratio: f, slotProps: p, className: g, render: _, ...v }, y) {
69
+ let { className: b, ...x } = p?.header ?? {}, { className: S, ...C } = p?.main ?? {}, { className: w, ...T } = p?.aside ?? {}, { className: E, ...D } = p?.footer ?? {};
62
70
  return u({
63
71
  defaultTagName: "div",
64
- ref: g,
65
- render: m,
72
+ ref: y,
73
+ render: _,
66
74
  props: {
67
- ...h,
75
+ ...v,
68
76
  "data-slot": "two-column-layout",
69
- className: e("two-column-layout--component grid min-w-0 grid-cols-1", i.subjects, d === "container" ? "@3xl:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]" : "lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]", p),
77
+ className: e("two-column-layout--component grid min-w-0 grid-cols-1", i.subjects, d === "container" ? m[f ?? "default"] : h[f ?? "default"], g),
70
78
  children: /* @__PURE__ */ l(s, { children: [
71
79
  t == null ? null : /* @__PURE__ */ c("div", {
72
- ...v,
80
+ ...x,
73
81
  "data-slot": "two-column-layout-header",
74
- className: e("two-column-layout--header col-span-full min-w-0", _),
82
+ className: e("two-column-layout--header col-span-full min-w-0", b),
75
83
  children: t
76
84
  }),
77
85
  /* @__PURE__ */ c("div", {
78
- ...b,
86
+ ...C,
79
87
  "data-slot": "two-column-layout-main",
80
- className: e("two-column-layout--main flex min-h-0 min-w-0 flex-col", i.subjects, y),
88
+ className: e("two-column-layout--main flex min-h-0 min-w-0 flex-col", i.subjects, S),
81
89
  children: n
82
90
  }),
83
91
  /* @__PURE__ */ c("aside", {
84
- ...S,
92
+ ...T,
85
93
  "data-slot": "two-column-layout-aside",
86
- className: e("two-column-layout--aside flex min-h-0 min-w-0 flex-col", i.subjects, o && (d === "container" ? "@3xl:sticky @3xl:top-space-2xl @3xl:self-start" : "lg:sticky lg:top-space-2xl lg:self-start"), x),
94
+ className: e("two-column-layout--aside flex min-h-0 min-w-0 flex-col", i.subjects, o && (d === "container" ? "@3xl:sticky @3xl:top-space-2xl @3xl:self-start" : "lg:sticky lg:top-space-2xl lg:self-start"), w),
87
95
  children: r
88
96
  }),
89
97
  a == null ? null : /* @__PURE__ */ c("div", {
90
- ...w,
98
+ ...D,
91
99
  "data-slot": "two-column-layout-footer",
92
- className: e("two-column-layout--footer col-span-full min-w-0", C),
100
+ className: e("two-column-layout--footer col-span-full min-w-0", E),
93
101
  children: a
94
102
  })
95
103
  ] })
@@ -97,8 +105,8 @@ var m = o(function({ header: t, main: n, aside: r, footer: a, stickyAside: o = !
97
105
  state: {}
98
106
  });
99
107
  });
100
- m.displayName = "TwoColumnLayout";
108
+ g.displayName = "TwoColumnLayout";
101
109
  //#endregion
102
- export { d as i, p as n, f as r, m as t };
110
+ export { d as i, p as n, f as r, g as t };
103
111
 
104
- //# sourceMappingURL=containers-CRmHf7GP.js.map
112
+ //# sourceMappingURL=containers-CSdc32h9.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"containers-CSdc32h9.js","names":["_Fragment","cn","stackRecipe","compositionRhythm","compositionClasses","containerRecipe","Fragment$1","Container","forwardRef","props","useRender","className","PageViewport","focusRecipes","Section","gap","containerColumnRecipes","viewportColumnRecipes","TwoColumnLayout","headerClassName","headerProps","slotProps","mainClassName","mainProps","asideClassName","asideProps","footerClassName","footerProps","adaptTo","ratio","header","main","stickyAside","aside","footer"],"sources":["../src/components/layout/containers/content-container.tsx","../src/components/layout/containers/page-viewport.tsx","../src/components/layout/containers/section.tsx","../src/components/layout/containers/two-column-layout.tsx"],"sourcesContent":["import { useRender } from '@base-ui/react/use-render';\nimport { forwardRef } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nimport { containerRecipe } from './container.recipes';\nimport type { ContainerProps } from './containers.types';\n\n/** Container — one centered content-width and inline-gutter owner. */\nexport const Container = forwardRef<HTMLDivElement, ContainerProps>(function Container(\n\t{ className, maxWidth, gutter, render, ...props },\n\tref,\n) {\n\treturn useRender({\n\t\tdefaultTagName: 'div',\n\t\tref,\n\t\trender,\n\t\tprops: {\n\t\t\t...props,\n\t\t\tclassName: cn('container--component @container/content', containerRecipe({ maxWidth, gutter }), className),\n\t\t},\n\t\tstate: {},\n\t});\n});\n\nContainer.displayName = 'Container';\n","import { useRender } from '@base-ui/react/use-render';\nimport { forwardRef } from 'react';\n\nimport { cn } from '../../../lib/utils';\n\nimport type { PageViewportProps } from './containers.types';\nimport { focusRecipes } from '../../../lib/focus-recipes';\n\n/** PageViewport — the single page-scroll and page-container-query owner. */\nexport const PageViewport = forwardRef<HTMLDivElement, PageViewportProps>(function PageViewport(\n\t{ className, render, tabIndex = 0, ...props },\n\tref,\n) {\n\treturn useRender({\n\t\tdefaultTagName: 'div',\n\t\tref,\n\t\trender,\n\t\tprops: {\n\t\t\t...props,\n\t\t\ttabIndex,\n\t\t\tclassName: cn(\n\t\t\t\t`page-viewport--component min-h-0 min-w-0 flex-1 overflow-auto overscroll-contain [scrollbar-gutter:stable] @container/page focus-visible:outline-none ${focusRecipes.inset}`,\n\t\t\t\tclassName,\n\t\t\t),\n\t\t},\n\t\tstate: {},\n\t});\n});\n\nPageViewport.displayName = 'PageViewport';\n","import { useRender } from '@base-ui/react/use-render';\nimport { forwardRef } from 'react';\n\nimport { stackRecipe } from '../../base/structure/structure.recipes';\nimport {compositionRhythm} from '../../base/structure/composition.recipes';\nimport { cn } from '../../../lib/utils';\n\nimport type { SectionProps } from './containers.types';\n\n/** Section — a semantic vertical-rhythm owner for page content groups. */\nexport const Section = forwardRef<HTMLElement, SectionProps>(function Section(\n\t{ className, gap, render, ...props },\n\tref,\n) {\n\treturn useRender({\n\t\tdefaultTagName: 'section',\n\t\tref,\n\t\trender,\n\t\tprops: {\n\t\t\t...props,\n\t\t\tclassName: cn('section--component', stackRecipe({ gap: gap ?? compositionRhythm.related }), className),\n\t\t},\n\t\tstate: {},\n\t});\n});\n\nSection.displayName = 'Section';\n","import { useRender } from '@base-ui/react/use-render';\nimport { forwardRef } from 'react';\nimport type { ReactNode } from 'react';\n\nimport { cn } from '../../../lib/utils';\nimport {compositionClasses} from '../../base/structure/composition.recipes';\nimport type { LayoutSlotAttributes } from '../layout.types';\n\nexport interface TwoColumnLayoutSlotProps {\n\theader?: LayoutSlotAttributes<HTMLDivElement>;\n\tmain?: LayoutSlotAttributes<HTMLDivElement>;\n\taside?: LayoutSlotAttributes<HTMLElement>;\n\tfooter?: LayoutSlotAttributes<HTMLDivElement>;\n}\n\nexport interface TwoColumnLayoutProps extends useRender.ComponentProps<'div'> {\n\t/** Optional content spanning both columns before the work regions. */\n\theader?: ReactNode;\n\t/** Primary detail, form, or index content. */\n\tmain: ReactNode;\n\t/** Secondary summary, support, or action rail. */\n\taside: ReactNode;\n\t/** Optional content spanning both columns after the work regions. */\n\tfooter?: ReactNode;\n\t/** Keep the aside visible while the nearest page viewport scrolls. */\n\tstickyAside?: boolean;\n\t/** Preserve viewport breakpoints by default, or adapt inside Container/PageViewport. */\n\tadaptTo?: 'viewport' | 'container';\n\t/** Optional main/aside proportions; omission preserves the established flexible 2/1 split. */\n\tratio?: '7/5' | '8/4';\n\t/** Native attributes for each stable region. */\n\tslotProps?: TwoColumnLayoutSlotProps;\n}\n\nconst containerColumnRecipes = {\n\tdefault: '@3xl:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]',\n\t'7/5': '@3xl:grid-cols-[minmax(0,7fr)_minmax(0,5fr)]',\n\t'8/4': '@3xl:grid-cols-[minmax(0,8fr)_minmax(0,4fr)]',\n} as const;\nconst viewportColumnRecipes = {\n\tdefault: 'lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]',\n\t'7/5': 'lg:grid-cols-[minmax(0,7fr)_minmax(0,5fr)]',\n\t'8/4': 'lg:grid-cols-[minmax(0,8fr)_minmax(0,4fr)]',\n} as const;\n\n/** TwoColumnLayout — one truthful, stable-order main/aside grid. */\nexport const TwoColumnLayout = forwardRef<HTMLDivElement, TwoColumnLayoutProps>(\n\tfunction TwoColumnLayout(\n\t\t{\n\t\t\theader,\n\t\t\tmain,\n\t\t\taside,\n\t\t\tfooter,\n\t\t\tstickyAside = false,\n\t\t\tadaptTo = 'viewport',\n\t\t\tratio,\n\t\t\tslotProps,\n\t\t\tclassName,\n\t\t\trender,\n\t\t\t...props\n\t\t},\n\t\tref,\n\t) {\n\t\tconst { className: headerClassName, ...headerProps } = slotProps?.header ?? {};\n\t\tconst { className: mainClassName, ...mainProps } = slotProps?.main ?? {};\n\t\tconst { className: asideClassName, ...asideProps } = slotProps?.aside ?? {};\n\t\tconst { className: footerClassName, ...footerProps } = slotProps?.footer ?? {};\n\n\t\treturn useRender({\n\t\t\tdefaultTagName: 'div',\n\t\t\tref,\n\t\t\trender,\n\t\t\tprops: {\n\t\t\t\t...props,\n\t\t\t\t'data-slot': 'two-column-layout',\n\t\t\t\tclassName: cn(\n\t\t\t\t\t'two-column-layout--component grid min-w-0 grid-cols-1', compositionClasses.subjects,\n\t\t\t\t\tadaptTo === 'container' ? containerColumnRecipes[ratio ?? 'default'] : viewportColumnRecipes[ratio ?? 'default'],\n\t\t\t\t\tclassName,\n\t\t\t\t),\n\t\t\t\tchildren: (\n\t\t\t\t\t<>\n\t\t\t\t\t\t{header !== undefined && header !== null ? (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t{...headerProps}\n\t\t\t\t\t\t\t\tdata-slot=\"two-column-layout-header\"\n\t\t\t\t\t\t\t\tclassName={cn('two-column-layout--header col-span-full min-w-0', headerClassName)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{header}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t{...mainProps}\n\t\t\t\t\t\t\tdata-slot=\"two-column-layout-main\"\n\t\t\t\t\t\t\tclassName={cn('two-column-layout--main flex min-h-0 min-w-0 flex-col', compositionClasses.subjects, mainClassName)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{main}\n\t\t\t\t\t\t</div>\n\t\t\t\t\t\t<aside\n\t\t\t\t\t\t\t{...asideProps}\n\t\t\t\t\t\t\tdata-slot=\"two-column-layout-aside\"\n\t\t\t\t\t\t\tclassName={cn(\n\t\t\t\t\t\t\t\t'two-column-layout--aside flex min-h-0 min-w-0 flex-col', compositionClasses.subjects,\n\t\t\t\t\t\t\t\tstickyAside && (adaptTo === 'container' ? '@3xl:sticky @3xl:top-space-2xl @3xl:self-start' : 'lg:sticky lg:top-space-2xl lg:self-start'),\n\t\t\t\t\t\t\t\tasideClassName,\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{aside}\n\t\t\t\t\t\t</aside>\n\t\t\t\t\t\t{footer !== undefined && footer !== null ? (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t{...footerProps}\n\t\t\t\t\t\t\t\tdata-slot=\"two-column-layout-footer\"\n\t\t\t\t\t\t\t\tclassName={cn('two-column-layout--footer col-span-full min-w-0', footerClassName)}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{footer}\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t) : null}\n\t\t\t\t\t</>\n\t\t\t\t),\n\t\t\t},\n\t\t\tstate: {},\n\t\t});\n\t},\n);\n\nTwoColumnLayout.displayName = 'TwoColumnLayout';\n"],"mappings":";;;;;;;;;;AASA,IAAaO,IAAYC,EAA2C,SACnE,EAAE,cAAW,aAAU,WAAQ,WAAQ,GAAGC,KAC1C,GACC;CACD,OAAOC,EAAU;EAChB,gBAAgB;EAChB;EACA;EACA,OAAO;GACN,GAAGD;GACH,WAAWR,EAAG,2CAA2CI,EAAgB;IAAE;IAAU;GAAO,CAAC,GAAGM,CAAS;EAC1G;EACA,OAAO,CAAC;CACT,CAAC;AACF,CAAC;AAED,EAAU,cAAc;;;AChBxB,IAAaC,IAAeJ,EAA8C,SACzE,EAAE,cAAW,WAAQ,cAAW,GAAG,GAAGC,KACtC,GACC;CACD,OAAOC,EAAU;EAChB,gBAAgB;EAChB;EACA;EACA,OAAO;GACN,GAAGD;GACH;GACA,WAAWR,EACV,yJAAyJY,EAAa,SACtKF,CACD;EACD;EACA,OAAO,CAAC;CACT,CAAC;AACF,CAAC;AAED,EAAa,cAAc;;;ACnB3B,IAAaG,IAAUN,EAAsC,SAC5D,EAAE,cAAW,QAAK,WAAQ,GAAGC,KAC7B,GACC;CACD,OAAOC,EAAU;EAChB,gBAAgB;EAChB;EACA;EACA,OAAO;GACN,GAAGD;GACH,WAAWR,EAAG,sBAAsBC,EAAY,EAAE,KAAKa,KAAOZ,EAAkB,QAAQ,CAAC,GAAGQ,CAAS;EACtG;EACA,OAAO,CAAC;CACT,CAAC;AACF,CAAC;AAED,EAAQ,cAAc;;;ACQtB,IAAMK,IAAyB;CAC9B,SAAS;CACT,OAAO;CACP,OAAO;AACR,GACMC,IAAwB;CAC7B,SAAS;CACT,OAAO;CACP,OAAO;AACR,GAGaC,IAAkBV,EAC9B,SACC,EACC,WACA,SACA,UACA,WACA,iBAAc,IACd,aAAU,YACV,UACA,cACA,cACA,WACA,GAAGC,KAEJ,GACC;CACD,IAAM,EAAE,WAAWU,GAAiB,GAAGC,MAAgBC,GAAW,UAAU,CAAC,GACvE,EAAE,WAAWC,GAAe,GAAGC,MAAcF,GAAW,QAAQ,CAAC,GACjE,EAAE,WAAWG,GAAgB,GAAGC,MAAeJ,GAAW,SAAS,CAAC,GACpE,EAAE,WAAWK,GAAiB,GAAGC,MAAgBN,GAAW,UAAU,CAAC;CAE7E,OAAOX,EAAU;EAChB,gBAAgB;EAChB;EACA;EACA,OAAO;GACN,GAAGD;GACH,aAAa;GACb,WAAWR,EACV,yDAAyDG,EAAmB,UAC5EwB,MAAY,cAAcZ,EAAuBa,KAAS,aAAaZ,EAAsBY,KAAS,YACtGlB,CACD;GACA,UACC,kBAAAX,GAAA,EAAA,UAAA;IACE8B,KAAmC,OAQhC,OAPH,kBAAC,OAAD;KACC,GAAIV;KACJ,aAAU;KACV,WAAWnB,EAAG,mDAAmDkB,CAAe;KAE/E,UAAAW;IACG,CAAA;IAEN,kBAAC,OAAD;KACC,GAAIP;KACJ,aAAU;KACV,WAAWtB,EAAG,yDAAyDG,EAAmB,UAAUkB,CAAa;KAEhH,UAAAS;IACG,CAAA;IACL,kBAAC,SAAD;KACC,GAAIN;KACJ,aAAU;KACV,WAAWxB,EACV,0DAA0DG,EAAmB,UAC7E4B,MAAgBJ,MAAY,cAAc,mDAAmD,6CAC7FJ,CACD;KAEC,UAAAS;IACK,CAAA;IACNC,KAAmC,OAQhC,OAPH,kBAAC,OAAD;KACC,GAAIP;KACJ,aAAU;KACV,WAAW1B,EAAG,mDAAmDyB,CAAe;KAE/E,UAAAQ;IACG,CAAA;GAEL,EAAA,CAAA;EAEJ;EACA,OAAO,CAAC;CACT,CAAC;AACF,CACD;AAEA,EAAgB,cAAc"}
@@ -1,11 +1,11 @@
1
1
  //#region src/lib/control-group-recipes.ts
2
2
  var e = {
3
- frame: "box-border inline-flex h-control shrink-0 items-stretch rounded-inner bg-muted p-space-2xs",
4
- item: "!h-full min-h-0 rounded-inner",
5
- joinedFrame: "box-border inline-flex h-control shrink-0 items-stretch overflow-hidden rounded-inner border border-input",
3
+ frame: "box-border inline-flex h-control shrink-0 items-stretch rounded-radius bg-muted p-space-2xs",
4
+ item: "!h-full min-h-0 rounded-radius",
5
+ joinedFrame: "box-border inline-flex h-control shrink-0 items-stretch overflow-hidden rounded-radius border border-input",
6
6
  joinedItem: "!h-full min-h-0 rounded-none",
7
- firstItem: "rounded-s-inner",
8
- lastItem: "rounded-e-inner"
7
+ firstItem: "rounded-s-radius",
8
+ lastItem: "rounded-e-radius"
9
9
  }, t = {
10
10
  sm: "h-control-sm",
11
11
  md: "h-control",
@@ -18,4 +18,4 @@ var e = {
18
18
  //#endregion
19
19
  export { n, e as r, t };
20
20
 
21
- //# sourceMappingURL=control-group-recipes-DBXmfh2E.js.map
21
+ //# sourceMappingURL=control-group-recipes-fMuFo0H7.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"control-group-recipes-fMuFo0H7.js","names":["segmentedControlRecipes","controlGroupHeightClasses","controlGroupSquareClasses"],"sources":["../src/lib/control-group-recipes.ts"],"sourcesContent":["import type { ComponentScale } from './component-vocabulary';\n\n/** One field-height boundary for segmented and joined toolbar controls.\n * Children fit the frame's content box; their action-height token is not added\n * to the field height, border or inset a second time.\n */\nexport const segmentedControlRecipes = {\n\tframe: 'box-border inline-flex h-control shrink-0 items-stretch rounded-radius bg-muted p-space-2xs',\n\titem: '!h-full min-h-0 rounded-radius',\n\tjoinedFrame: 'box-border inline-flex h-control shrink-0 items-stretch overflow-hidden rounded-radius border border-input',\n\tjoinedItem: '!h-full min-h-0 rounded-none',\n\tfirstItem: 'rounded-s-radius',\n\tlastItem: 'rounded-e-radius',\n} as const;\n\nexport const controlGroupHeightClasses = {\n\tsm: 'h-control-sm',\n\tmd: 'h-control',\n\tlg: 'h-control-lg',\n} satisfies Record<ComponentScale, string>;\n\nexport const controlGroupSquareClasses = {\n\tsm: 'size-control-sm',\n\tmd: 'size-control',\n\tlg: 'size-control-lg',\n} satisfies Record<ComponentScale, string>;\n"],"mappings":";AAMA,IAAaA,IAA0B;CACtC,OAAO;CACP,MAAM;CACN,aAAa;CACb,YAAY;CACZ,WAAW;CACX,UAAU;AACX,GAEaC,IAA4B;CACxC,IAAI;CACJ,IAAI;CACJ,IAAI;AACL,GAEaC,IAA4B;CACxC,IAAI;CACJ,IAAI;CACJ,IAAI;AACL"}