themelia-react-ui 1.0.1 → 1.0.2

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 (488) hide show
  1. package/CHANGELOG.md +137 -0
  2. package/README.md +59 -13
  3. package/dist/{accordion-B-5Focs8.js → accordion-BRTcsp8J.js} +8 -8
  4. package/dist/accordion-BRTcsp8J.js.map +1 -0
  5. package/dist/{action-menu-Cx3SdfbN.js → action-menu-Drxw_vJk.js} +36 -36
  6. package/dist/action-menu-Drxw_vJk.js.map +1 -0
  7. package/dist/affordance-geometry.generated-CL84ZN9A.js +63 -0
  8. package/dist/affordance-geometry.generated-CL84ZN9A.js.map +1 -0
  9. package/dist/{ai-artifact-B5tPpXnS.js → ai-artifact-DLVdK0Py.js} +151 -155
  10. package/dist/ai-artifact-DLVdK0Py.js.map +1 -0
  11. package/dist/{app-shell-at8Kt4l_.js → app-shell-C_fKpljx.js} +11 -10
  12. package/dist/app-shell-C_fKpljx.js.map +1 -0
  13. package/dist/{attachment-BO2R47wn.js → attachment-DbjUWsP0.js} +12 -12
  14. package/dist/{attachment-BO2R47wn.js.map → attachment-DbjUWsP0.js.map} +1 -1
  15. package/dist/auth-CAQcasMV.js +723 -0
  16. package/dist/auth-CAQcasMV.js.map +1 -0
  17. package/dist/{avatar-Bpzty83c.js → avatar-Bu2HhitA.js} +6 -6
  18. package/dist/{avatar-Bpzty83c.js.map → avatar-Bu2HhitA.js.map} +1 -1
  19. package/dist/{badge-BZXZT9wd.js → badge-CzId1Wlm.js} +4 -4
  20. package/dist/{badge-BZXZT9wd.js.map → badge-CzId1Wlm.js.map} +1 -1
  21. package/dist/base/accordion.js +1 -1
  22. package/dist/base/action-menu.js +1 -1
  23. package/dist/base/attachment.js +1 -1
  24. package/dist/base/avatar.js +1 -1
  25. package/dist/base/badge.js +1 -1
  26. package/dist/base/buttons.js +3 -2
  27. package/dist/base/cards.js +3 -3
  28. package/dist/base/carousel.js +25 -27
  29. package/dist/base/carousel.js.map +1 -1
  30. package/dist/base/cascader.js +150 -148
  31. package/dist/base/cascader.js.map +1 -1
  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 +1 -1
  36. package/dist/base/command.js +1 -1
  37. package/dist/base/copyable.js +1 -1
  38. package/dist/base/date-pickers.js +3 -3
  39. package/dist/base/display.js +7 -7
  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 +40 -43
  44. package/dist/base/inline-edit.js.map +1 -1
  45. package/dist/base/item.js +1 -1
  46. package/dist/base/media-gallery.js +1 -1
  47. package/dist/base/navigation.js +6 -6
  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 +33 -33
  52. package/dist/base/repeaters.js.map +1 -1
  53. package/dist/base/sheet.js +1 -1
  54. package/dist/base/sidebar.js +1 -1
  55. package/dist/base/signature-pad.js +83 -81
  56. package/dist/base/signature-pad.js.map +1 -1
  57. package/dist/base/skeleton.js +1 -1
  58. package/dist/base/spinner.js +1 -1
  59. package/dist/base/structure.js +1 -1
  60. package/dist/base/table.js +1 -1
  61. package/dist/base/text-inputs.js +2 -2
  62. package/dist/base/toaster.js +6 -6
  63. package/dist/base/toaster.js.map +1 -1
  64. package/dist/base/tree.js +1 -1
  65. package/dist/base/upload-queue.js +1 -1
  66. package/dist/base/upload.js +3 -3
  67. package/dist/base/value-inputs.js +1 -1
  68. package/dist/blocks/admin.js +134 -134
  69. package/dist/blocks/admin.js.map +1 -1
  70. package/dist/blocks/ai.js +120 -117
  71. package/dist/blocks/ai.js.map +1 -1
  72. package/dist/blocks/analytics/usage-card.js +1 -1
  73. package/dist/blocks/analytics.js +510 -472
  74. package/dist/blocks/analytics.js.map +1 -1
  75. package/dist/blocks/collaboration.js +2 -2
  76. package/dist/blocks/commerce/receipt.js +1 -1
  77. package/dist/blocks/commerce.js +395 -383
  78. package/dist/blocks/commerce.js.map +1 -1
  79. package/dist/blocks/data-display.js +1 -1
  80. package/dist/blocks/onboarding.js +6 -6
  81. package/dist/blocks/onboarding.js.map +1 -1
  82. package/dist/blocks/planning.js +36 -36
  83. package/dist/blocks/planning.js.map +1 -1
  84. package/dist/blocks/timelines.js +1 -1
  85. package/dist/{breadcrumbs-DdQ_I5ra.js → breadcrumbs-BuYz5SDU.js} +9 -8
  86. package/dist/breadcrumbs-BuYz5SDU.js.map +1 -0
  87. package/dist/button-BZDasD04.js +651 -0
  88. package/dist/button-BZDasD04.js.map +1 -0
  89. package/dist/{button-BS6l5JUw.js → button-BZyfTvwm.js} +3 -3
  90. package/dist/button-BZyfTvwm.js.map +1 -0
  91. package/dist/buttons-D_6KJvEE.js +99 -0
  92. package/dist/buttons-D_6KJvEE.js.map +1 -0
  93. package/dist/{cards-Cum56XOF.js → cards-qGSErLw_.js} +12 -12
  94. package/dist/{cards-Cum56XOF.js.map → cards-qGSErLw_.js.map} +1 -1
  95. package/dist/chart-Bsc5BICK.js +150 -0
  96. package/dist/chart-Bsc5BICK.js.map +1 -0
  97. package/dist/{checkbox-BavDRjF7.js → checkbox-BQNDjUCh.js} +3 -3
  98. package/dist/checkbox-BQNDjUCh.js.map +1 -0
  99. package/dist/choice-inputs-Mk3iWbhr.js +725 -0
  100. package/dist/choice-inputs-Mk3iWbhr.js.map +1 -0
  101. package/dist/{code-block-xHKbAJDj.js → code-block-DzHKRybS.js} +23 -23
  102. package/dist/code-block-DzHKRybS.js.map +1 -0
  103. package/dist/{collapsible-DsnktFNv.js → collapsible-ClvC7Bj3.js} +3 -3
  104. package/dist/{collapsible-DsnktFNv.js.map → collapsible-ClvC7Bj3.js.map} +1 -1
  105. package/dist/{collection-content-C4fthJV_.js → collection-content-D6S8cv_n.js} +3 -3
  106. package/dist/{collection-content-C4fthJV_.js.map → collection-content-D6S8cv_n.js.map} +1 -1
  107. package/dist/{combobox-DEbdr-3u.js → combobox-BFnbJJp3.js} +18 -18
  108. package/dist/combobox-BFnbJJp3.js.map +1 -0
  109. package/dist/{combobox-xv3yJbzl.js → combobox-hozNwUcc.js} +313 -316
  110. package/dist/combobox-hozNwUcc.js.map +1 -0
  111. package/dist/{command-C0xe7u9B.js → command-BnmSchli.js} +9 -9
  112. package/dist/command-BnmSchli.js.map +1 -0
  113. package/dist/comments-u5L0OGip.js +1156 -0
  114. package/dist/comments-u5L0OGip.js.map +1 -0
  115. package/dist/components/base/buttons/button-group.recipes.d.ts +1 -1
  116. package/dist/components/base/buttons/button.recipes.d.ts +10 -19
  117. package/dist/components/base/buttons/use-pending-button-focus.d.ts +3 -0
  118. package/dist/components/base/cards/card.recipes.d.ts +13 -5
  119. package/dist/components/base/cards/partials/card-primitives.d.ts +9 -4
  120. package/dist/components/base/cards/smart-card.types.d.ts +1 -1
  121. package/dist/components/base/date-pickers/date-picker.recipes.d.ts +5 -18
  122. package/dist/components/base/date-pickers/datepicker.types.d.ts +3 -0
  123. package/dist/components/base/forms/form-field.d.ts +1 -0
  124. package/dist/components/base/forms/form-sizing.d.ts +3 -3
  125. package/dist/components/base/navigation/tabs.d.ts +3 -5
  126. package/dist/components/base/popover/popover.recipes.d.ts +3 -3
  127. package/dist/components/base/table/index.d.ts +1 -1
  128. package/dist/components/base/text-inputs/clear-native-field.d.ts +2 -0
  129. package/dist/components/base/text-inputs/input-trailing-action.d.ts +3 -0
  130. package/dist/components/blocks/analytics/types.d.ts +1 -1
  131. package/dist/components/blocks/collaboration/message/message.recipes.d.ts +12 -0
  132. package/dist/components/blocks/data-display/empty-state/partials/illustrations/document-stack.d.ts +1 -4
  133. package/dist/components/blocks/data-display/empty-state/partials/illustrations/inbox-clean.d.ts +1 -4
  134. package/dist/components/blocks/data-display/empty-state/partials/illustrations/index.d.ts +3 -3
  135. package/dist/components/blocks/data-display/empty-state/partials/illustrations/stacked-cards.d.ts +1 -6
  136. package/dist/components/features/combobox/components/error-message.d.ts +1 -1
  137. package/dist/components/features/comments/hooks/use-attachment-upload.d.ts +5 -0
  138. package/dist/components/features/filters/facets/search-facet.d.ts +0 -12
  139. package/dist/components/features/filters/facets/tags-facet.d.ts +1 -1
  140. package/dist/components/features/media-library/media-library.d.ts +1 -1
  141. package/dist/components/features/media-library/media-library.types.d.ts +9 -1
  142. package/dist/components/features/media-library/partials/media-library-partials.d.ts +1 -1
  143. package/dist/components/features/overlays/hooks/use-pending-overlay-focus.d.ts +2 -0
  144. package/dist/components/features/overlays/overlays.types.d.ts +5 -4
  145. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +2 -1
  146. package/dist/components/features/table/data-table.d.ts +1 -1
  147. package/dist/components/features/table/table.types.d.ts +1 -1
  148. package/dist/components/features/theme-tweaker/theme-provider-settings.d.ts +3 -1
  149. package/dist/components/layout/auth/auth.types.d.ts +1 -0
  150. package/dist/components/layout/page/page.d.ts +0 -1
  151. package/dist/components/layout/page/page.types.d.ts +9 -3
  152. package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -1
  153. package/dist/components/layout/sidebar/sidebar.types.d.ts +4 -0
  154. package/dist/components/layout/workspace/workspace.types.d.ts +3 -0
  155. package/dist/components/typography/heading.d.ts +5 -2
  156. package/dist/components/typography/index.d.ts +1 -1
  157. package/dist/components/typography/text.styles.d.ts +10 -0
  158. package/dist/components/ui/popover.d.ts +1 -1
  159. package/dist/components/ui/sidebar.d.ts +1 -1
  160. package/dist/components/ui/table.d.ts +2 -1
  161. package/dist/container.recipes-D9t8MHR3.js +27 -0
  162. package/dist/container.recipes-D9t8MHR3.js.map +1 -0
  163. package/dist/{containers-6s-ucRQQ.js → containers-DqB-bSYE.js} +33 -56
  164. package/dist/containers-DqB-bSYE.js.map +1 -0
  165. package/dist/control-group-recipes-DBXmfh2E.js +21 -0
  166. package/dist/control-group-recipes-DBXmfh2E.js.map +1 -0
  167. package/dist/{copyable-B7SBXJMr.js → copyable-BTSByfmq.js} +6 -6
  168. package/dist/{copyable-B7SBXJMr.js.map → copyable-BTSByfmq.js.map} +1 -1
  169. package/dist/{data-display-cWIRdeaf.js → data-display-Bihs9Ven.js} +545 -332
  170. package/dist/data-display-Bihs9Ven.js.map +1 -0
  171. package/dist/{date-BFNMnrS5.js → date-DOKhJPu7.js} +4 -4
  172. package/dist/{date-BFNMnrS5.js.map → date-DOKhJPu7.js.map} +1 -1
  173. package/dist/{date-picker-CA6ogMQB.js → date-picker-DzP5HQq7.js} +492 -472
  174. package/dist/date-picker-DzP5HQq7.js.map +1 -0
  175. package/dist/date-pickers-BpgGz7S-.js +196 -0
  176. package/dist/date-pickers-BpgGz7S-.js.map +1 -0
  177. package/dist/{display-CFM5myut.js → display-CS6Hbk18.js} +8 -8
  178. package/dist/{display-CFM5myut.js.map → display-CS6Hbk18.js.map} +1 -1
  179. package/dist/{dropdown-menu-BlnyHr-9.js → dropdown-menu-D-boNgGO.js} +7 -7
  180. package/dist/{dropdown-menu-BlnyHr-9.js.map → dropdown-menu-D-boNgGO.js.map} +1 -1
  181. package/dist/features/activities.js +152 -141
  182. package/dist/features/activities.js.map +1 -1
  183. package/dist/features/ai-chat.js +182 -179
  184. package/dist/features/ai-chat.js.map +1 -1
  185. package/dist/features/async-preview.js +9 -9
  186. package/dist/features/async-preview.js.map +1 -1
  187. package/dist/features/combobox.js +1 -1
  188. package/dist/features/comments.js +1 -1
  189. package/dist/features/data-view.js +25 -23
  190. package/dist/features/data-view.js.map +1 -1
  191. package/dist/features/email-composer/engine.js +1 -1
  192. package/dist/features/email-composer.js +103 -104
  193. package/dist/features/email-composer.js.map +1 -1
  194. package/dist/features/event-calendar.js +375 -373
  195. package/dist/features/event-calendar.js.map +1 -1
  196. package/dist/features/filters.js +1 -1
  197. package/dist/features/global-search.js +222 -224
  198. package/dist/features/global-search.js.map +1 -1
  199. package/dist/features/kanban.js +29 -29
  200. package/dist/features/kanban.js.map +1 -1
  201. package/dist/features/map.js +59 -58
  202. package/dist/features/map.js.map +1 -1
  203. package/dist/features/media-library.js +856 -855
  204. package/dist/features/media-library.js.map +1 -1
  205. package/dist/features/mentions.js +1 -1
  206. package/dist/features/overlays.js +1 -1
  207. package/dist/features/products.js +1209 -1209
  208. package/dist/features/products.js.map +1 -1
  209. package/dist/features/questionnaire.js +52 -52
  210. package/dist/features/questionnaire.js.map +1 -1
  211. package/dist/features/resource-assignment.js +29 -31
  212. package/dist/features/resource-assignment.js.map +1 -1
  213. package/dist/features/resource.js +13 -13
  214. package/dist/features/resource.js.map +1 -1
  215. package/dist/features/rich-text-editor.js +2 -2
  216. package/dist/features/schema-form.js +82 -82
  217. package/dist/features/schema-form.js.map +1 -1
  218. package/dist/features/suggestions.js +3 -3
  219. package/dist/features/sync.js +4 -4
  220. package/dist/features/sync.js.map +1 -1
  221. package/dist/features/table.js +1 -1
  222. package/dist/features/theme-tweaker.js +456 -450
  223. package/dist/features/theme-tweaker.js.map +1 -1
  224. package/dist/{feedback-DWUkgEjR.js → feedback-CJkUAapr.js} +29 -29
  225. package/dist/feedback-CJkUAapr.js.map +1 -0
  226. package/dist/field-affordance-recipes-uKY4MsZ_.js +25 -0
  227. package/dist/field-affordance-recipes-uKY4MsZ_.js.map +1 -0
  228. package/dist/{field-state-recipes-CBTRt9Bt.js → field-state-recipes-DQQpiLWC.js} +3 -3
  229. package/dist/field-state-recipes-DQQpiLWC.js.map +1 -0
  230. package/dist/{filters-BhsUtsxW.js → filters-D6FF8L6s.js} +715 -720
  231. package/dist/filters-D6FF8L6s.js.map +1 -0
  232. package/dist/{form-field-Bn7ZH1rA.js → form-field-CZwrkP7m.js} +17 -9
  233. package/dist/form-field-CZwrkP7m.js.map +1 -0
  234. package/dist/{form-sizing-BWs70_a2.js → form-sizing-QP8aIRaW.js} +8 -5
  235. package/dist/form-sizing-QP8aIRaW.js.map +1 -0
  236. package/dist/{forms-B7pzS25o.js → forms-B5NCbkSC.js} +35 -35
  237. package/dist/{forms-B7pzS25o.js.map → forms-B5NCbkSC.js.map} +1 -1
  238. package/dist/forms-numeric-Crrm80Lm.js +867 -0
  239. package/dist/forms-numeric-Crrm80Lm.js.map +1 -0
  240. package/dist/{header-C59QZyxV.js → header-kxruN3RM.js} +53 -49
  241. package/dist/header-kxruN3RM.js.map +1 -0
  242. package/dist/{hooks-CM1Vp9Pe.js → hooks-BrlnCwQd.js} +2 -2
  243. package/dist/{hooks-CM1Vp9Pe.js.map → hooks-BrlnCwQd.js.map} +1 -1
  244. package/dist/{http-CLTVJc5I.js → http-CdEIHyQf.js} +2 -2
  245. package/dist/http-CdEIHyQf.js.map +1 -0
  246. package/dist/{icon-badge-Dv0RYQwj.js → icon-badge-Btc6pQrp.js} +4 -4
  247. package/dist/{icon-badge-Dv0RYQwj.js.map → icon-badge-Btc6pQrp.js.map} +1 -1
  248. package/dist/index.js +2 -2
  249. package/dist/input-SX9V0AL3.js +255 -0
  250. package/dist/input-SX9V0AL3.js.map +1 -0
  251. package/dist/input-vxcaNCYC.js +20 -0
  252. package/dist/input-vxcaNCYC.js.map +1 -0
  253. package/dist/{item-pJ0GsOiJ.js → item-DE4YnuJx.js} +18 -17
  254. package/dist/item-DE4YnuJx.js.map +1 -0
  255. package/dist/layout/app-shell.js +1 -1
  256. package/dist/layout/auth.js +1 -1
  257. package/dist/layout/containers.js +1 -1
  258. package/dist/layout/header.js +1 -1
  259. package/dist/layout/hooks.js +1 -1
  260. package/dist/layout/navigation.js +1 -1
  261. package/dist/layout/page.js +1 -1
  262. package/dist/layout/settings.js +1 -1
  263. package/dist/layout/sidebar.js +2 -2
  264. package/dist/layout/workspace.js +1 -1
  265. package/dist/layout.js +10 -10
  266. package/dist/lib/affordance-geometry.generated.d.ts +40 -9
  267. package/dist/lib/control-group-recipes.d.ts +22 -0
  268. package/dist/lib/field-affordance-recipes.d.ts +35 -2
  269. package/dist/lib/field-state-recipes.d.ts +2 -2
  270. package/dist/lib/navigation-row-recipes.d.ts +3 -2
  271. package/dist/lib/overlay-anatomy-recipes.d.ts +1 -1
  272. package/dist/lib/surface-recipes.d.ts +5 -2
  273. package/dist/lib/token-merge.generated.d.ts +144 -2
  274. package/dist/lib/ui-provider/types.d.ts +4 -2
  275. package/dist/lib/use-prefers-reduced-motion.d.ts +2 -0
  276. package/dist/lib/utils.js +1 -1
  277. package/dist/{media-gallery-DhDRgnVZ.js → media-gallery-DLp3HAz0.js} +75 -74
  278. package/dist/media-gallery-DLp3HAz0.js.map +1 -0
  279. package/dist/{mentions-B8Ko-fhS.js → mentions-Cl0Kt_Pd.js} +52 -50
  280. package/dist/{mentions-B8Ko-fhS.js.map → mentions-Cl0Kt_Pd.js.map} +1 -1
  281. package/dist/message-SZUNB1eX.js +127 -0
  282. package/dist/message-SZUNB1eX.js.map +1 -0
  283. package/dist/{navigation-DBEu4POU.js → navigation-DnQSNMT0.js} +64 -55
  284. package/dist/navigation-DnQSNMT0.js.map +1 -0
  285. package/dist/{navigation-BUIn2Qxx.js → navigation-DyytsLRB.js} +37 -37
  286. package/dist/navigation-DyytsLRB.js.map +1 -0
  287. package/dist/{navigation-row-recipes-GVh11KiT.js → navigation-row-recipes-DQEXQcqY.js} +3 -3
  288. package/dist/navigation-row-recipes-DQEXQcqY.js.map +1 -0
  289. package/dist/{number-BNT_BIzJ.js → number-DasMFWEG.js} +4 -4
  290. package/dist/{number-BNT_BIzJ.js.map → number-DasMFWEG.js.map} +1 -1
  291. package/dist/overlays-DUbs1KEi.js +1011 -0
  292. package/dist/overlays-DUbs1KEi.js.map +1 -0
  293. package/dist/{page-BV6ioQg3.js → page-hGmT4nWK.js} +75 -64
  294. package/dist/page-hGmT4nWK.js.map +1 -0
  295. package/dist/{page-header-DQRa0jug.js → page-header-D8nERkn5.js} +9 -9
  296. package/dist/page-header-D8nERkn5.js.map +1 -0
  297. package/dist/{pagination-C29vvt3I.js → pagination-NLGqRirf.js} +20 -20
  298. package/dist/pagination-NLGqRirf.js.map +1 -0
  299. package/dist/{popover-CoLDEg19.js → popover-CghIYdQf.js} +23 -22
  300. package/dist/popover-CghIYdQf.js.map +1 -0
  301. package/dist/{popover-menu-GLIQTJTx.js → popover-menu-B4PoWhRl.js} +6 -6
  302. package/dist/{popover-menu-GLIQTJTx.js.map → popover-menu-B4PoWhRl.js.map} +1 -1
  303. package/dist/{popover.recipes-zgBhMlUu.js → popover.recipes-QlD4JenO.js} +5 -5
  304. package/dist/popover.recipes-QlD4JenO.js.map +1 -0
  305. package/dist/{primitives-DKPOGVpj.js → primitives-C7ff0QaI.js} +120 -113
  306. package/dist/primitives-C7ff0QaI.js.map +1 -0
  307. package/dist/primitives.js +3 -3
  308. package/dist/{progress-BOe8l_FZ.js → progress-BroqrAyV.js} +10 -9
  309. package/dist/progress-BroqrAyV.js.map +1 -0
  310. package/dist/{receipt-BM8xsGFy.js → receipt-BuJynLgf.js} +8 -8
  311. package/dist/{receipt-BM8xsGFy.js.map → receipt-BuJynLgf.js.map} +1 -1
  312. package/dist/{rich-text-B7sBAdDG.js → rich-text-DlxDOtf4.js} +4 -4
  313. package/dist/{rich-text-B7sBAdDG.js.map → rich-text-DlxDOtf4.js.map} +1 -1
  314. package/dist/rich-text-editor-BKyG7rWz.js +574 -0
  315. package/dist/rich-text-editor-BKyG7rWz.js.map +1 -0
  316. package/dist/{rich-text-editor.recipes-DxvOE0Lp.js → rich-text-editor.recipes-B72Nfuze.js} +35 -26
  317. package/dist/rich-text-editor.recipes-B72Nfuze.js.map +1 -0
  318. package/dist/{scroll-area-BheMQ270.js → scroll-area-D-pIhEKl.js} +3 -3
  319. package/dist/scroll-area-D-pIhEKl.js.map +1 -0
  320. package/dist/{separator-Gk_WXH-l.js → separator-BNIgG3au.js} +3 -3
  321. package/dist/{separator-Gk_WXH-l.js.map → separator-BNIgG3au.js.map} +1 -1
  322. package/dist/{separator-DO0EbCEm.js → separator-BhtFyo4x.js} +2 -2
  323. package/dist/{separator-DO0EbCEm.js.map → separator-BhtFyo4x.js.map} +1 -1
  324. package/dist/services/actions.js +1 -1
  325. package/dist/{settings-BnCyyPOJ.js → settings-DOTOzeZ2.js} +10 -9
  326. package/dist/{settings-BnCyyPOJ.js.map → settings-DOTOzeZ2.js.map} +1 -1
  327. package/dist/{sheet-B-q914Ad.js → sheet-BFhrNehm.js} +11 -11
  328. package/dist/sheet-BFhrNehm.js.map +1 -0
  329. package/dist/{sidebar-DPR7fmqN.js → sidebar-CyR4XKwR.js} +219 -200
  330. package/dist/sidebar-CyR4XKwR.js.map +1 -0
  331. package/dist/{sidebar-C_2p3Tfj.js → sidebar-SvGJ0Zwi.js} +63 -58
  332. package/dist/sidebar-SvGJ0Zwi.js.map +1 -0
  333. package/dist/{skeleton-CmT1ppqb.js → skeleton-3F0uhYn3.js} +4 -4
  334. package/dist/{skeleton-CmT1ppqb.js.map → skeleton-3F0uhYn3.js.map} +1 -1
  335. package/dist/{smart-card-CYLn46e6.js → smart-card-DjGVV2xr.js} +171 -165
  336. package/dist/smart-card-DjGVV2xr.js.map +1 -0
  337. package/dist/{spinner-BY9HbUEh.js → spinner-Cpf7oRkF.js} +5 -5
  338. package/dist/{spinner-BY9HbUEh.js.map → spinner-Cpf7oRkF.js.map} +1 -1
  339. package/dist/{structure-MvKVq-oL.js → structure-CRdqVawd.js} +2 -2
  340. package/dist/{structure-MvKVq-oL.js.map → structure-CRdqVawd.js.map} +1 -1
  341. package/dist/style.css +1 -1
  342. package/dist/{surface-recipes-CQfRr-VL.js → surface-recipes-Dd__PD-w.js} +4 -3
  343. package/dist/surface-recipes-Dd__PD-w.js.map +1 -0
  344. package/dist/{table-DnlAJ-xR.js → table-CLtJTxoR.js} +17 -16
  345. package/dist/table-CLtJTxoR.js.map +1 -0
  346. package/dist/table-CcRDZiLP.js +1444 -0
  347. package/dist/table-CcRDZiLP.js.map +1 -0
  348. package/dist/tabs-BNgu7g0u.js +188 -0
  349. package/dist/tabs-BNgu7g0u.js.map +1 -0
  350. package/dist/text-inputs-DsR56TR-.js +330 -0
  351. package/dist/text-inputs-DsR56TR-.js.map +1 -0
  352. package/dist/{text.styles-BwB7vAF2.js → text.styles-Q4sGAIgA.js} +18 -10
  353. package/dist/text.styles-Q4sGAIgA.js.map +1 -0
  354. package/dist/theme.css +77 -115
  355. package/dist/{timelines-B9ICkQcV.js → timelines-D1pkt3se.js} +84 -78
  356. package/dist/timelines-D1pkt3se.js.map +1 -0
  357. package/dist/{tree-BdWSaoFT.js → tree-BtmYyMZV.js} +8 -8
  358. package/dist/{tree-BdWSaoFT.js.map → tree-BtmYyMZV.js.map} +1 -1
  359. package/dist/typography/rich-text.js +1 -1
  360. package/dist/typography-BxQgiZyw.js +96 -0
  361. package/dist/typography-BxQgiZyw.js.map +1 -0
  362. package/dist/typography.js +1 -1
  363. package/dist/{ui-provider-CftIB6TY.js → ui-provider-DRPn3qNl.js} +3 -2
  364. package/dist/ui-provider-DRPn3qNl.js.map +1 -0
  365. package/dist/ui-provider.js +1 -1
  366. package/dist/{upload-D8Za5x_c.js → upload-CDbYw1WN.js} +326 -323
  367. package/dist/upload-CDbYw1WN.js.map +1 -0
  368. package/dist/{upload-queue-hIIYBLS7.js → upload-queue-CNd_hH_a.js} +25 -25
  369. package/dist/upload-queue-CNd_hH_a.js.map +1 -0
  370. package/dist/{usage-card-DnmnJ58D.js → usage-card-VyJLUwRr.js} +53 -54
  371. package/dist/usage-card-VyJLUwRr.js.map +1 -0
  372. package/dist/utils-BvH9PSmq.js +4275 -0
  373. package/dist/utils-BvH9PSmq.js.map +1 -0
  374. package/dist/value-inputs-D0KCrfVC.js +840 -0
  375. package/dist/value-inputs-D0KCrfVC.js.map +1 -0
  376. package/dist/{workspace-C1PZmk8L.js → workspace-CcR8r-Nt.js} +115 -122
  377. package/dist/workspace-CcR8r-Nt.js.map +1 -0
  378. package/docs/consumer-skill/SKILL.md +110 -119
  379. package/docs/consumer-skill/examples/analytics.tsx +34 -0
  380. package/docs/consumer-skill/examples/app-layout.tsx +42 -12
  381. package/docs/consumer-skill/examples/detail.tsx +20 -4
  382. package/docs/consumer-skill/examples/manifest.json +13 -1
  383. package/docs/consumer-skill/examples/website.tsx +56 -0
  384. package/docs/consumer-skill/references/analytics.md +70 -0
  385. package/docs/consumer-skill/references/composition.md +116 -2
  386. package/docs/consumer-skill/references/design-contract.md +33 -7
  387. package/docs/consumer-skill/references/discovery.md +76 -5
  388. package/docs/consumer-skill/references/integration.md +14 -0
  389. package/docs/consumer-skill/references/public-api.json +2023 -218
  390. package/docs/consumer-skill/references/review.md +55 -3
  391. package/docs/consumer-skill/references/theming.md +52 -7
  392. package/docs/consumer-skill/references/tokens.json +177 -9
  393. package/docs/consumer-skill/references/workflows.md +32 -0
  394. package/docs/consumer-skill/scripts/check-composition.mjs +1 -1
  395. package/docs/consumer-skill/scripts/composition-policy.mjs +179 -17
  396. package/docs/consumer-skill/scripts/discovery.mjs +61 -9
  397. package/docs/consumer-skill/scripts/surface-policy.mjs +44 -0
  398. package/package.json +7 -4
  399. package/dist/accordion-B-5Focs8.js.map +0 -1
  400. package/dist/action-menu-Cx3SdfbN.js.map +0 -1
  401. package/dist/affordance-geometry.generated-D8Jcfb0G.js +0 -32
  402. package/dist/affordance-geometry.generated-D8Jcfb0G.js.map +0 -1
  403. package/dist/ai-artifact-B5tPpXnS.js.map +0 -1
  404. package/dist/app-shell-at8Kt4l_.js.map +0 -1
  405. package/dist/auth-OFwWSAap.js +0 -704
  406. package/dist/auth-OFwWSAap.js.map +0 -1
  407. package/dist/breadcrumbs-DdQ_I5ra.js.map +0 -1
  408. package/dist/button-BS6l5JUw.js.map +0 -1
  409. package/dist/buttons-Co6GavvM.js +0 -674
  410. package/dist/buttons-Co6GavvM.js.map +0 -1
  411. package/dist/chart-DVfcwQu6.js +0 -149
  412. package/dist/chart-DVfcwQu6.js.map +0 -1
  413. package/dist/checkbox-BavDRjF7.js.map +0 -1
  414. package/dist/choice-inputs-CC7XqPQO.js +0 -619
  415. package/dist/choice-inputs-CC7XqPQO.js.map +0 -1
  416. package/dist/code-block-xHKbAJDj.js.map +0 -1
  417. package/dist/combobox-DEbdr-3u.js.map +0 -1
  418. package/dist/combobox-xv3yJbzl.js.map +0 -1
  419. package/dist/command-C0xe7u9B.js.map +0 -1
  420. package/dist/comments-DviPLnwy.js +0 -1132
  421. package/dist/comments-DviPLnwy.js.map +0 -1
  422. package/dist/containers-6s-ucRQQ.js.map +0 -1
  423. package/dist/data-display-cWIRdeaf.js.map +0 -1
  424. package/dist/date-picker-CA6ogMQB.js.map +0 -1
  425. package/dist/date-pickers-BPIKLdsD.js +0 -224
  426. package/dist/date-pickers-BPIKLdsD.js.map +0 -1
  427. package/dist/feedback-DWUkgEjR.js.map +0 -1
  428. package/dist/field-affordance-recipes-IjzPrCTw.js +0 -17
  429. package/dist/field-affordance-recipes-IjzPrCTw.js.map +0 -1
  430. package/dist/field-state-recipes-CBTRt9Bt.js.map +0 -1
  431. package/dist/filters-BhsUtsxW.js.map +0 -1
  432. package/dist/form-field-Bn7ZH1rA.js.map +0 -1
  433. package/dist/form-sizing-BWs70_a2.js.map +0 -1
  434. package/dist/forms-numeric-BUBxELBv.js +0 -867
  435. package/dist/forms-numeric-BUBxELBv.js.map +0 -1
  436. package/dist/header-C59QZyxV.js.map +0 -1
  437. package/dist/http-CLTVJc5I.js.map +0 -1
  438. package/dist/input-WwYQZJzG.js +0 -202
  439. package/dist/input-WwYQZJzG.js.map +0 -1
  440. package/dist/input-ci9fIgFH.js +0 -20
  441. package/dist/input-ci9fIgFH.js.map +0 -1
  442. package/dist/item-pJ0GsOiJ.js.map +0 -1
  443. package/dist/media-gallery-DhDRgnVZ.js.map +0 -1
  444. package/dist/message-COsdEvXT.js +0 -108
  445. package/dist/message-COsdEvXT.js.map +0 -1
  446. package/dist/navigation-BUIn2Qxx.js.map +0 -1
  447. package/dist/navigation-DBEu4POU.js.map +0 -1
  448. package/dist/navigation-row-recipes-GVh11KiT.js.map +0 -1
  449. package/dist/overlays-B11wZka6.js +0 -982
  450. package/dist/overlays-B11wZka6.js.map +0 -1
  451. package/dist/page-BV6ioQg3.js.map +0 -1
  452. package/dist/page-header-DQRa0jug.js.map +0 -1
  453. package/dist/pagination-C29vvt3I.js.map +0 -1
  454. package/dist/popover-CoLDEg19.js.map +0 -1
  455. package/dist/popover.recipes-zgBhMlUu.js.map +0 -1
  456. package/dist/primitives-DKPOGVpj.js.map +0 -1
  457. package/dist/progress-BOe8l_FZ.js.map +0 -1
  458. package/dist/rich-text-editor-CoVrTiSv.js +0 -575
  459. package/dist/rich-text-editor-CoVrTiSv.js.map +0 -1
  460. package/dist/rich-text-editor.recipes-DxvOE0Lp.js.map +0 -1
  461. package/dist/scroll-area-BheMQ270.js.map +0 -1
  462. package/dist/select-B2mb-qN2.js +0 -108
  463. package/dist/select-B2mb-qN2.js.map +0 -1
  464. package/dist/sheet-B-q914Ad.js.map +0 -1
  465. package/dist/sidebar-C_2p3Tfj.js.map +0 -1
  466. package/dist/sidebar-DPR7fmqN.js.map +0 -1
  467. package/dist/smart-card-CYLn46e6.js.map +0 -1
  468. package/dist/surface-recipes-CQfRr-VL.js.map +0 -1
  469. package/dist/table-BS39xnlq.js +0 -1424
  470. package/dist/table-BS39xnlq.js.map +0 -1
  471. package/dist/table-DnlAJ-xR.js.map +0 -1
  472. package/dist/tabs-B5cNMWiP.js +0 -187
  473. package/dist/tabs-B5cNMWiP.js.map +0 -1
  474. package/dist/text-inputs-Dh9XGyiS.js +0 -331
  475. package/dist/text-inputs-Dh9XGyiS.js.map +0 -1
  476. package/dist/text.styles-BwB7vAF2.js.map +0 -1
  477. package/dist/timelines-B9ICkQcV.js.map +0 -1
  478. package/dist/typography-Cv8MT-82.js +0 -96
  479. package/dist/typography-Cv8MT-82.js.map +0 -1
  480. package/dist/ui-provider-CftIB6TY.js.map +0 -1
  481. package/dist/upload-D8Za5x_c.js.map +0 -1
  482. package/dist/upload-queue-hIIYBLS7.js.map +0 -1
  483. package/dist/usage-card-DnmnJ58D.js.map +0 -1
  484. package/dist/utils-C2EKeIw3.js +0 -72
  485. package/dist/utils-C2EKeIw3.js.map +0 -1
  486. package/dist/value-inputs-DX2dbxjj.js +0 -824
  487. package/dist/value-inputs-DX2dbxjj.js.map +0 -1
  488. package/dist/workspace-C1PZmk8L.js.map +0 -1
@@ -1,8 +1,5 @@
1
1
  import type { EmptyStateIllustrationProps } from './types';
2
- /**
3
- * Two staggered document silhouettes — for "no documents", "no
4
- * invoices", "no reports" surfaces.
5
- */
2
+ /** Two staggered document silhouettes; all coordinates belong to the drawing. */
6
3
  export declare function DocumentStackIllustration({ className }: EmptyStateIllustrationProps): import("react").JSX.Element;
7
4
  export declare namespace DocumentStackIllustration {
8
5
  var displayName: string;
@@ -1,8 +1,5 @@
1
1
  import type { EmptyStateIllustrationProps } from './types';
2
- /**
3
- * Open inbox tray with a soft check above — for "all caught up",
4
- * "no notifications", "inbox zero" surfaces.
5
- */
2
+ /** Open inbox tray with a check; the scene has one intrinsic coordinate system. */
6
3
  export declare function InboxCleanIllustration({ className }: EmptyStateIllustrationProps): import("react").JSX.Element;
7
4
  export declare namespace InboxCleanIllustration {
8
5
  var displayName: string;
@@ -1,9 +1,9 @@
1
1
  /**
2
2
  * Token-driven illustrations for `<EmptyState>`.
3
3
  *
4
- * Each illustration is a small composition of `bg-muted` /
5
- * `bg-background` / `border-border` divs (no raw palette colors), so it
6
- * adapts to the consumer's theme automatically. Use as the `media`
4
+ * Each illustration uses semantic theme colors for its HTML or SVG drawing,
5
+ * so it adapts to the consumer's theme automatically. Intrinsic drawing
6
+ * coordinates remain independent of UI spacing and density. Use as the `media`
7
7
  * prop of `<EmptyState>` — pick one per resource:
8
8
  *
9
9
  * <EmptyState
@@ -1,10 +1,5 @@
1
1
  import type { EmptyStateIllustrationProps } from './types';
2
- /**
3
- * Three stacked card silhouettes with a fade-out at the bottom — the
4
- * generic "no records" illustration. Token-driven so it adapts to any
5
- * theme (uses `bg-muted`, `bg-background`, `border-border`, no raw
6
- * palette).
7
- */
2
+ /** Three card silhouettes with a theme-backed fade; coordinates are drawing geometry. */
8
3
  export declare function StackedCardsIllustration({ className }: EmptyStateIllustrationProps): import("react").JSX.Element;
9
4
  export declare namespace StackedCardsIllustration {
10
5
  var displayName: string;
@@ -9,7 +9,7 @@ export interface ErrorMessageProps {
9
9
  size: ComboboxSize;
10
10
  className?: string;
11
11
  }
12
- export declare function ErrorMessage({ error, size, className, }: ErrorMessageProps): React.ReactElement | null;
12
+ export declare function ErrorMessage({ error, size: _size, className, }: ErrorMessageProps): React.ReactElement | null;
13
13
  export declare namespace ErrorMessage {
14
14
  var displayName: string;
15
15
  }
@@ -1,3 +1,5 @@
1
+ import { type StringsProp } from '../../../../lib/strings';
2
+ import { type CommentsStrings } from '../comments.strings';
1
3
  import type { CommentAttachment, CommentsAttachmentsConfig } from '../comments.types';
2
4
  export interface UseAttachmentUploadOptions extends CommentsAttachmentsConfig {
3
5
  /** Initial attachments — useful when editing an existing comment. */
@@ -6,6 +8,9 @@ export interface UseAttachmentUploadOptions extends CommentsAttachmentsConfig {
6
8
  onValueChange?: (attachments: ReadonlyArray<CommentAttachment>) => void;
7
9
  /** Fires when a validation or upload error happens. */
8
10
  onError?: (error: string) => void;
11
+ /** Validation and non-Error upload fallback copy; omitted keys use Comments defaults.
12
+ * Error objects retain their caller-supplied message. */
13
+ strings?: StringsProp<Pick<CommentsStrings, 'attachmentTooLargeError' | 'attachmentTooManyError' | 'attachmentFailedLabel'>>;
9
14
  }
10
15
  export interface UseAttachmentUploadReturn {
11
16
  /** All attachments — uploading + uploaded + failed. */
@@ -10,18 +10,6 @@ export interface SearchFacetProps {
10
10
  /** Merged onto the outermost node. */
11
11
  className?: string;
12
12
  }
13
- /**
14
- * Search Filter Facet
15
- *
16
- * This component implements a text search filter that allows users to:
17
- * - Enter search terms
18
- * - Configure search behavior (contains, equals, etc.)
19
- * - Set debounce delay for performance
20
- * - Customize placeholder text and appearance
21
- *
22
- * The component integrates with the filter context to manage the search value
23
- * and provides a responsive search input interface.
24
- */
25
13
  declare function SearchFacetComponent({ filter, value, onValueChange, className, }: SearchFacetProps): React.JSX.Element;
26
14
  export declare const SearchFacet: React.MemoExoticComponent<typeof SearchFacetComponent>;
27
15
  export {};
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { type FilterConfig } from '../filters.types';
2
+ import type { FilterConfig } from '../filters.types';
3
3
  export interface TagsFacetProps {
4
4
  /** Definition of the filter this control edits. */
5
5
  filter: FilterConfig;
@@ -1,3 +1,3 @@
1
1
  import type { MediaLibraryDialogProps, MediaLibraryProps } from './media-library.types';
2
- export declare function MediaLibrary<TItem = import('./media-library.types').MediaLibraryItem>({ title, description, confirmLabel, cancelLabel, selectionMode, density, showMeta, allowUpload, typeFilters, confirmOnSelect, onConfirm, onCancel, onClose, strings: stringsProp, slots, heightClassName, className, items, fetcher, accessors, collections, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onUpload, onError, tab, defaultTab, onTabChange, view, defaultView, onViewChange, query, defaultQuery, onQueryChange, type, defaultType, onTypeChange, collection, defaultCollection, onCollectionChange, sort, defaultSort, onSortChange, uploadOptions, defaultUploadOptions, onUploadOptionsChange, ...props }: MediaLibraryProps<TItem>): import("react").JSX.Element;
2
+ export declare function MediaLibrary<TItem = import('./media-library.types').MediaLibraryItem>({ title, titleSuffix, description, confirmLabel, cancelLabel, selectionMode, density, showMeta, allowUpload, typeFilters, confirmOnSelect, onConfirm, onCancel, onClose, strings: stringsProp, slots, heightClassName, className, items, fetcher, accessors, collections, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onItemReplace, onUpload, onError, tab, defaultTab, onTabChange, view, defaultView, onViewChange, query, defaultQuery, onQueryChange, type, defaultType, onTypeChange, collection, defaultCollection, onCollectionChange, sort, defaultSort, onSortChange, uploadOptions, defaultUploadOptions, onUploadOptionsChange, ...props }: MediaLibraryProps<TItem>): import("react").JSX.Element;
3
3
  export declare function MediaLibraryDialog<TItem = import('./media-library.types').MediaLibraryItem>({ open, onOpenChange, trigger, dialogTitle, dialogDescription, onClose, className, dialogClassName, contentClassName, closeOnEscape, closeOnBackdropClick, ...props }: MediaLibraryDialogProps<TItem>): import("react").JSX.Element;
@@ -114,7 +114,7 @@ export interface MediaLibraryAccessors<TItem = MediaLibraryItem> {
114
114
  export type ResolvedMediaLibraryAccessors<TItem = MediaLibraryItem> = Required<MediaLibraryAccessors<TItem>>;
115
115
  export interface MediaLibrarySlots<TItem = MediaLibraryItem> {
116
116
  headerStart?: ReactNode;
117
- /** Content at the end of the header, before the overflow menu. */
117
+ /** Header controls beside the library/upload tabs. Put title status in `titleSuffix`. */
118
118
  headerEnd?: ReactNode;
119
119
  /** Content at the end of the toolbar row. */
120
120
  toolbarEnd?: ReactNode;
@@ -151,6 +151,8 @@ export interface MediaLibraryDetailRenderContext<TItem = MediaLibraryItem> {
151
151
  accessors: ResolvedMediaLibraryAccessors<TItem>;
152
152
  update: (patch: MediaLibraryItemPatch) => Promise<boolean>;
153
153
  remove: () => Promise<boolean>;
154
+ /** Requests the consumer's replacement workflow for this inspected item, when supported. */
155
+ replace?: () => void;
154
156
  close: () => void;
155
157
  }
156
158
  export interface MediaLibraryState<TItem = MediaLibraryItem> {
@@ -300,6 +302,10 @@ export interface UseMediaLibraryOptions<TItem = MediaLibraryItem> {
300
302
  export interface MediaLibraryProps<TItem = MediaLibraryItem> extends Omit<ComponentPropsWithoutRef<'section'>, 'children' | 'defaultValue' | 'onError' | 'onSelect' | 'title'>, UseMediaLibraryOptions<TItem> {
301
303
  /** Heading above the browser. */
302
304
  title?: ReactNode;
305
+ /** Status, count, or version content directly after the title; header actions belong in `slots.headerEnd`. */
306
+ titleSuffix?: ReactNode;
307
+ /** Requests replacement of the inspected asset. The consumer owns file selection, persistence, identity, and refreshed `items`; omitted callbacks hide Replace file. */
308
+ onItemReplace?: (item: TItem) => void;
303
309
  /** Supporting line under the title. */
304
310
  description?: ReactNode;
305
311
  /** Copy for the confirm action. */
@@ -455,6 +461,8 @@ export interface MediaLibraryDetailPanelProps<TItem = MediaLibraryItem> {
455
461
  onUpdate: (patch: MediaLibraryItemPatch) => Promise<boolean>;
456
462
  /** Fired when an entry is removed. */
457
463
  onRemove: () => Promise<boolean>;
464
+ /** Opens the consumer-owned replacement workflow for the inspected item. */
465
+ onReplace?: () => void;
458
466
  /** Replaces the default detail rendering. */
459
467
  renderDetail?: MediaLibrarySlots<TItem>['renderDetail'];
460
468
  }
@@ -3,7 +3,7 @@ export declare function MediaLibraryEmptyState({ icon, title, description, actio
3
3
  export declare function MediaLibraryToolbar({ query, type, typeFilters, collection, sort, view, collections, strings, onQueryChange, onTypeChange, onCollectionChange, onSortChange, onViewChange, onClearFilters, toolbarEnd, }: MediaLibraryToolbarProps): import("react").JSX.Element;
4
4
  export declare function MediaLibraryCard<TItem>({ item, selected, density, showMeta, accessors, strings, onToggle, onDetails, className, }: MediaLibraryCardProps<TItem>): import("react").JSX.Element;
5
5
  export declare function MediaLibraryList<TItem>({ items, selectedSet, accessors, strings, onToggle, onDetails, }: MediaLibraryListProps<TItem>): import("react").JSX.Element;
6
- export declare function MediaLibraryDetailPanel<TItem>({ item, collections, accessors, strings, onClose, onUpdate, onRemove, renderDetail, }: MediaLibraryDetailPanelProps<TItem>): import("react").JSX.Element | null;
6
+ export declare function MediaLibraryDetailPanel<TItem>({ item, collections, accessors, strings, onClose, onUpdate, onRemove, onReplace, renderDetail, }: MediaLibraryDetailPanelProps<TItem>): import("react").JSX.Element | null;
7
7
  export declare function MediaLibraryUploadPanel({ stagedFiles, uploadOptions, collections, uploading, strings, onFiles, onRemoveFile, onOptionsChange, empty, }: MediaLibraryUploadPanelProps): import("react").JSX.Element;
8
8
  export declare function MediaLibraryFooterSummary({ tab, selectedIds, selectionMode, stagedFiles, strings, onClearSelection, className, }: MediaLibraryFooterSummaryProps): import("react").JSX.Element;
9
9
  export declare function MediaLibraryFooterActions<TItem>({ tab, selectedItems, selectedIds, stagedFiles, uploading, strings, confirmLabel, cancelLabel, onCancel, onConfirm, onUpload, onCancelUpload, className, }: MediaLibraryFooterActionsProps<TItem>): import("react").JSX.Element;
@@ -0,0 +1,2 @@
1
+ /** Keep modal focus anchored when its focused action becomes disabled. */
2
+ export declare function usePendingOverlayFocus(pending: boolean, modal?: boolean | 'trap-focus'): import("react").RefObject<HTMLDivElement | null>;
@@ -76,8 +76,9 @@ export interface OverlayActionProps {
76
76
  onConfirm?: () => void;
77
77
  /**
78
78
  * Awaited confirm. The confirm button shows a spinner and both buttons
79
- * disable until it settles. A rejection leaves the overlay open and is
80
- * reported through `onError`. Ignored when `onConfirm` is also set.
79
+ * disable until it settles. Close, Escape and backdrop dismissal also wait
80
+ * for completion. A rejection leaves the overlay open, restores the actions
81
+ * and is reported through `onError`. Ignored when `onConfirm` is also set.
81
82
  */
82
83
  onAsyncConfirm?: () => Promise<void>;
83
84
  /** Receives rejected async confirmations so consumers can report or toast them. */
@@ -91,7 +92,7 @@ export interface OverlayActionProps {
91
92
  confirmTone?: OverlayButtonTone;
92
93
  /** Confirm button fill treatment. */
93
94
  confirmStyle?: OverlayButtonStyle;
94
- /** Forces the pending presentation for confirm work owned outside the overlay. */
95
+ /** Applies the same pending action/dismissal lock for work owned outside the overlay. */
95
96
  loading?: boolean;
96
97
  /**
97
98
  * `id` of a form elsewhere in the tree. The confirm button calls
@@ -99,7 +100,7 @@ export interface OverlayActionProps {
99
100
  * `onSubmit` owns the outcome — `onConfirm` and `onAsyncConfirm` do not fire.
100
101
  */
101
102
  formId?: string;
102
- /** Replaces the generated footer entirely. The props above no longer apply. */
103
+ /** Replaces the generated footer; the consumer owns its action states. Pending dismissal protection still applies. */
103
104
  footer?: ReactNode;
104
105
  }
105
106
  /** Semantic weight — the header icon and the confirm button's tone. */
@@ -1,6 +1,7 @@
1
1
  /** Shared field anatomy for rich editors, including specialized document schemas. */
2
2
  export declare const richTextEditorRecipes: {
3
- readonly frame: "min-w-0 overflow-hidden border-input bg-background rounded-radius border";
3
+ readonly source: string;
4
+ readonly frame: "min-w-0 overflow-hidden border-input bg-background rounded-inner border";
4
5
  readonly disabled: "opacity-70";
5
6
  readonly content: "h-full [&_.ProseMirror]:h-full [&_.ProseMirror]:min-h-full [&_.ProseMirror]:outline-none";
6
7
  };
@@ -1,6 +1,6 @@
1
1
  export declare function useDataTableSize(): 'xs' | 'sm';
2
2
  import { type DataTableProps } from './table.types';
3
- export declare function DataTable<TData extends object, TValue = unknown>({ size, surface, headerTransparent, columns, data, columnGroups, rowActions, rowActionsMenuLabel, rowActionsDisplayMode, rowActionsBreakpoint, enableSorting, enableFiltering, filterColumn, filterPlaceholder, manualSorting, enableColumnVisibility, fullscreen: controlledFullscreen, defaultFullscreen, onFullscreenChange, showFullscreenToggle, enableRowSelection, enableMultiRowSelection, enableSubRowSelection, pagination, pageQueryKey, onPageChange, onSortingChange, onColumnFiltersChange, onRowClick, onRowSelectionChange, stickyHeader, stickyToolbar, stickyFirstColumn, maxBodyHeight, fillAvailableHeight, emptyStateMessage, emptyStateAction, className, rowClassName, cellClassName, headerClassName, wrapperClassName, innerClassName, tableContainerClassName, getRowId, rowSelection: controlledRowSelection, sorting: controlledSorting, defaultSorting, columnVisibility: controlledColumnVisibility, defaultColumnVisibility, initialState, onColumnVisibilityChange, strings: stringsOverride, topbarContent, topbarEnd, topbarClassName, toolbarLabelVisibility, footerContent, selectionToolbar, bulkActions, selectionToolbarClassName, storageKey, }: DataTableProps<TData, TValue>): import("react").JSX.Element;
3
+ export declare function DataTable<TData extends object, TValue = unknown>({ size, surface, headerTransparent, columns, data, columnGroups, rowActions, rowActionsMenuLabel, rowActionsDisplayMode, rowActionsBreakpoint, enableSorting, enableResizing, enableFiltering, filterColumn, filterPlaceholder, manualSorting, enableColumnVisibility, fullscreen: controlledFullscreen, defaultFullscreen, onFullscreenChange, showFullscreenToggle, enableRowSelection, enableMultiRowSelection, enableSubRowSelection, pagination, pageQueryKey, onPageChange, onSortingChange, onColumnFiltersChange, onRowClick, onRowSelectionChange, stickyHeader, stickyToolbar, stickyFirstColumn, maxBodyHeight, fillAvailableHeight, emptyStateMessage, emptyStateAction, className, rowClassName, cellClassName, headerClassName, wrapperClassName, innerClassName, tableContainerClassName, getRowId, rowSelection: controlledRowSelection, sorting: controlledSorting, defaultSorting, columnVisibility: controlledColumnVisibility, defaultColumnVisibility, initialState, onColumnVisibilityChange, strings: stringsOverride, topbarContent, topbarEnd, topbarClassName, toolbarLabelVisibility, footerContent, selectionToolbar, bulkActions, selectionToolbarClassName, storageKey, }: DataTableProps<TData, TValue>): import("react").JSX.Element;
4
4
  export declare namespace DataTable {
5
5
  var displayName: string;
6
6
  }
@@ -171,7 +171,7 @@ export type DataTableSize = ComponentScale;
171
171
  *
172
172
  * - `card` (default): rounded card with `border-border bg-card` and a
173
173
  * soft shadow — the canonical admin treatment.
174
- * - `glass`: a hairline `border-border/60 rounded-radius-md` outline with no
174
+ * - `glass`: a hairline `border-border/60 rounded-radius` outline with no
175
175
  * shadow and no card background — pairs with consumer-supplied
176
176
  * surrounding chrome (e.g. dropping into an existing SmartCard).
177
177
  * Background remains transparent so a glassy parent shows
@@ -39,7 +39,9 @@ export interface ThemeProviderSettingsStrings {
39
39
  description: string;
40
40
  };
41
41
  };
42
- labels: Record<'locale' | 'defaultCurrency' | 'displayCurrency' | 'moneyFormat' | 'firstDay' | 'dateFormat' | 'textSize' | 'commentComposer' | 'dualPricing' | 'dualPricingMode' | 'dualPricingLayout' | 'componentScale' | 'itemVariant' | 'buttonTone' | 'buttonStyle' | 'badgeTone' | 'cardSurface' | 'spinner' | 'cardDivider' | 'toastPosition' | 'toastTheme' | 'toastDuration' | 'visibleToasts' | 'closeButton' | 'richColors', string>;
42
+ labels: Record<'locale' | 'defaultCurrency' | 'displayCurrency' | 'moneyFormat' | 'firstDay' | 'dateFormat' | 'textSize' | 'commentComposer' | 'dualPricing' | 'dualPricingMode' | 'dualPricingLayout' | 'componentScale' | 'itemVariant' | 'buttonTone' | 'buttonStyle' | 'badgeTone' | 'cardSurface' | 'spinner' | 'cardDivider' | 'toastPosition' | 'toastTheme' | 'toastDuration' | 'visibleToasts' | 'closeButton' | 'richColors', string> & {
43
+ cardFooterDivider?: string;
44
+ };
43
45
  dualPricingDescription: string;
44
46
  displayCurrencyPlaceholder: string;
45
47
  options: Record<string, string>;
@@ -205,6 +205,7 @@ export interface AuthShellProps extends Omit<HTMLAttributes<HTMLDivElement>, 'ti
205
205
  /** Content for the panel beside the form in the split layout. */
206
206
  splitPanel?: ReactNode | AuthSplitPanelProps;
207
207
  splitSide?: AuthSplitSide;
208
+ /** Panel behavior below the shell's own 64rem inline width; independent of viewport width. */
208
209
  splitMobile?: AuthSplitMobile;
209
210
  /** Merged onto the main region. */
210
211
  mainClassName?: string;
@@ -1,3 +1,2 @@
1
1
  import type { PageProps } from './page.types';
2
- /** Page — non-scrolling Container, PageHeader, and body-rhythm composition. */
3
2
  export declare const Page: import("react").ForwardRefExoticComponent<Omit<PageProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
@@ -7,7 +7,7 @@ import type { LayoutLinkRenderer, LayoutNavigationAdapter, LayoutSlotAttributes
7
7
  import type { TextGap } from '../../base/structure';
8
8
  import type { ButtonSize } from '../../base/buttons';
9
9
  import type { HeadingTag } from '../../typography';
10
- import type { ContainerMaxWidth, ContainerProps } from '../containers/containers.types';
10
+ import type { ContainerGutter, ContainerMaxWidth, ContainerProps } from '../containers/containers.types';
11
11
  import type { StringsProp } from '../../../lib/strings';
12
12
  import type { BadgeTone } from '../../base/badge';
13
13
  import type { ActionPresentation } from '../../../lib/action-presentation';
@@ -33,7 +33,7 @@ export interface PageHeaderProps extends LayoutNavigationAdapter {
33
33
  title: ReactNode;
34
34
  /** Supporting copy under the title. */
35
35
  description?: ReactNode;
36
- /** Shared title/description rhythm. Defaults to normal. */
36
+ /** Shared title/description rhythm. Defaults to dense for page copy. */
37
37
  textGap?: TextGap;
38
38
  /** Semantic heading level for the title. Defaults to `h3` for nested app pages. */
39
39
  headingTag?: HeadingTag;
@@ -130,8 +130,14 @@ export interface PageSlotProps {
130
130
  export interface PageProps extends LayoutNavigationAdapter, Omit<ContainerProps, 'children'> {
131
131
  /** Header region of the shell. */
132
132
  header?: PageHeaderProps;
133
- /** Maximum content width. Defaults to `lg` for readable page composition. */
133
+ /** Maximum content width. Explicit values override narrow. Defaults to `lg`. */
134
134
  maxWidth?: ContainerMaxWidth;
135
+ /** Center one resource or form at the existing `md` content measure. */
136
+ narrow?: boolean;
137
+ /** Inline page gutters. Defaults to `lg`; none requires an existing padded parent. */
138
+ gutter?: ContainerGutter;
139
+ /** Block padding around the whole page. Defaults to `lg`, independent of gutter. */
140
+ padding?: ContainerGutter;
135
141
  children?: ReactNode;
136
142
  /** Native attributes for stable page regions. */
137
143
  slotProps?: PageSlotProps;
@@ -8,7 +8,7 @@ export type LayoutSidebarProviderProps = React.ComponentProps<'div'> & {
8
8
  adaptTo?: 'viewport' | 'container';
9
9
  /** Whether the surface starts open, for uncontrolled use. */
10
10
  defaultOpen?: boolean;
11
- /** Default row and child-list rhythm. @default 'default' */
11
+ /** Default row and child-list rhythm. @default 'compact' */
12
12
  menuDensity?: SidebarMenuDensity;
13
13
  /** Whether the surface is showing. Controlled. */
14
14
  open?: boolean;
@@ -41,6 +41,10 @@ export interface SidebarRenderItemContext {
41
41
  export interface SidebarSlots {
42
42
  /** Header region of the shell. */
43
43
  header?: ReactNode;
44
+ /** Pinned content before the standard logo/workspace region, inside its padded header. */
45
+ headerStart?: ReactNode;
46
+ /** Pinned content after the standard logo/workspace region. Full header replacement wins. */
47
+ headerEnd?: ReactNode;
44
48
  beforeNavigation?: ReactNode;
45
49
  afterNavigation?: ReactNode;
46
50
  /** Content below the body. */
@@ -1,6 +1,7 @@
1
1
  import type { CSSProperties, HTMLAttributes, MouseEvent, ReactNode } from 'react';
2
2
  import type { LayoutIconComponent, LayoutNavigationAdapter } from '../layout.types';
3
3
  import type { StringsProp } from '../../../lib/strings';
4
+ import type { TextGap } from '../../base/structure';
4
5
  import type { WorkspaceLocaleStripStrings, WorkspaceNavStrings, WorkspaceRecordHeaderStrings } from './workspace.strings';
5
6
  export type WorkspaceContentWidth = 'default' | 'wide' | 'full';
6
7
  export interface WorkspaceLayoutStyle extends CSSProperties {
@@ -42,6 +43,8 @@ export interface WorkspaceRecordHeaderMetadataItem {
42
43
  value: ReactNode;
43
44
  }
44
45
  export interface WorkspaceRecordHeaderProps extends Omit<HTMLAttributes<HTMLDivElement>, 'title'> {
46
+ /** Title/supporting-copy rhythm. Defaults to dense. */
47
+ textGap?: TextGap;
45
48
  /** Surface title. */
46
49
  title: ReactNode;
47
50
  /** Supporting copy under the title. */
@@ -1,10 +1,13 @@
1
1
  import type { HTMLAttributes, ReactNode, Ref } from 'react';
2
2
  import type { TextSize } from '../../lib/ui-provider';
3
- import { textAlignments } from './text.styles';
3
+ import { headingSizes, textAlignments } from './text.styles';
4
4
  export type HeadingTag = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6';
5
+ export type HeadingSize = keyof typeof headingSizes;
5
6
  export interface HeadingProps extends HTMLAttributes<HTMLHeadingElement> {
6
7
  ref?: Ref<HTMLHeadingElement>;
7
8
  tag?: HeadingTag;
9
+ /** Visual emphasis; semantic tag and the default admin size remain independent. */
10
+ size?: HeadingSize;
8
11
  subHeading?: ReactNode;
9
12
  subHeadingClassName?: string;
10
13
  subHeadingSize?: TextSize;
@@ -13,4 +16,4 @@ export interface HeadingProps extends HTMLAttributes<HTMLHeadingElement> {
13
16
  divider?: boolean;
14
17
  }
15
18
  /** Semantic heading levels share Themelia's restrained admin heading scale. */
16
- export declare function Heading({ tag: Tag, subHeading, subHeadingClassName, subHeadingSize, containerClassName, align, divider, className, children, ref, ...props }: HeadingProps): import("react").JSX.Element;
19
+ export declare function Heading({ tag: Tag, size, subHeading, subHeadingClassName, subHeadingSize, containerClassName, align, divider, className, children, ref, ...props }: HeadingProps): import("react").JSX.Element;
@@ -1,7 +1,7 @@
1
1
  export { Text } from './text';
2
2
  export type { TextProps } from './text';
3
3
  export { Heading } from './heading';
4
- export type { HeadingProps, HeadingTag } from './heading';
4
+ export type { HeadingProps, HeadingTag, HeadingSize } from './heading';
5
5
  export { DisplayLabel } from './display-label';
6
6
  export type { DisplayLabelProps } from './display-label';
7
7
  export { Label } from './label';
@@ -17,6 +17,16 @@ export declare const textSizes: {
17
17
  readonly lg: "text-lg";
18
18
  readonly xl: "text-xl";
19
19
  };
20
+ /** Semantic heading level is independent of visual emphasis. No additional theme roots. */
21
+ export declare const headingSizes: {
22
+ readonly sm: "text-sm";
23
+ readonly base: "text-base";
24
+ readonly lg: "text-lg";
25
+ readonly xl: "text-xl";
26
+ readonly '2xl': "text-2xl";
27
+ readonly '3xl': "text-3xl";
28
+ readonly '4xl': "text-4xl";
29
+ };
20
30
  export declare const textWeights: {
21
31
  readonly normal: "font-normal";
22
32
  readonly regular: "font-normal";
@@ -9,7 +9,7 @@ declare function PopoverTrigger({ asChild, nativeButton, render, children, ...pr
9
9
  declare function PopoverAnchor({ asChild, ...props }: React.ComponentPropsWithoutRef<"span"> & {
10
10
  asChild?: boolean;
11
11
  }): React.JSX.Element;
12
- declare function PopoverContent({ className, container, align, alignOffset, side, sideOffset, disablePortal, positionMethod, onOpenAutoFocus, onInteractOutside, ...props }: PopoverPrimitive.Popup.Props & Pick<PopoverPrimitive.Positioner.Props, "align" | "alignOffset" | "side" | "sideOffset" | "positionMethod"> & {
12
+ declare function PopoverContent({ className, container, anchor, align, alignOffset, side, sideOffset, disablePortal, positionMethod, onOpenAutoFocus, onInteractOutside, ...props }: PopoverPrimitive.Popup.Props & Pick<PopoverPrimitive.Positioner.Props, "anchor" | "align" | "alignOffset" | "side" | "sideOffset" | "positionMethod"> & {
13
13
  disablePortal?: boolean;
14
14
  onOpenAutoFocus?: (event: Event) => void;
15
15
  onInteractOutside?: (event: Event) => void;
@@ -44,7 +44,7 @@ declare const sidebarMenuButtonVariants: (props?: ({
44
44
  variant?: "default" | "outline" | null | undefined;
45
45
  size?: "sm" | "lg" | "default" | null | undefined;
46
46
  } & import("class-variance-authority/types").ClassProp) | undefined) => string;
47
- declare function SidebarMenuButton({ render, isActive, variant, size, tooltip, className, ...props }: useRender.ComponentProps<"button"> & React.ComponentProps<"button"> & {
47
+ declare function SidebarMenuButton({ render, disabled, isActive, variant, size, tooltip, className, ...props }: useRender.ComponentProps<"button"> & React.ComponentProps<"button"> & {
48
48
  isActive?: boolean;
49
49
  tooltip?: string | React.ComponentProps<typeof TooltipContent>;
50
50
  } & VariantProps<typeof sidebarMenuButtonVariants>): React.JSX.Element;
@@ -1,8 +1,9 @@
1
1
  import * as React from "react";
2
2
  type TableProps = React.ComponentProps<"table"> & {
3
3
  containerClassName?: string;
4
+ containerProps?: React.ComponentProps<"div">;
4
5
  };
5
- declare function Table({ className, containerClassName, ...props }: TableProps): React.JSX.Element;
6
+ declare function Table({ className, containerClassName, containerProps, ...props }: TableProps): React.JSX.Element;
6
7
  declare function TableHeader({ className, ...props }: React.ComponentProps<"thead">): React.JSX.Element;
7
8
  declare function TableBody({ className, ...props }: React.ComponentProps<"tbody">): React.JSX.Element;
8
9
  declare function TableFooter({ className, ...props }: React.ComponentProps<"tfoot">): React.JSX.Element;
@@ -0,0 +1,27 @@
1
+ //#region src/components/layout/containers/container.recipes.ts
2
+ var e = {
3
+ sm: "max-w-content-sm",
4
+ md: "max-w-content-md",
5
+ lg: "max-w-content-lg",
6
+ xl: "max-w-content-xl",
7
+ "2xl": "max-w-content-2xl",
8
+ full: "max-w-none"
9
+ }, t = {
10
+ none: "px-0",
11
+ sm: "px-surface-xs",
12
+ md: "px-surface",
13
+ lg: "px-surface-lg"
14
+ };
15
+ function n({ maxWidth: n = "xl", gutter: r = "md" }) {
16
+ return [
17
+ "box-border",
18
+ "mx-auto",
19
+ "w-full",
20
+ e[n],
21
+ t[r]
22
+ ];
23
+ }
24
+ //#endregion
25
+ export { n as t };
26
+
27
+ //# sourceMappingURL=container.recipes-D9t8MHR3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"container.recipes-D9t8MHR3.js","names":["maxWidthClasses","gutterClasses","containerRecipe","maxWidth","gutter"],"sources":["../src/components/layout/containers/container.recipes.ts"],"sourcesContent":["import type { ContainerGutter, ContainerMaxWidth } from './containers.types';\n\nconst maxWidthClasses: Record<ContainerMaxWidth, string> = {\n\tsm: 'max-w-content-sm',\n\tmd: 'max-w-content-md',\n\tlg: 'max-w-content-lg',\n\txl: 'max-w-content-xl',\n\t'2xl': 'max-w-content-2xl',\n\tfull: 'max-w-none',\n};\n\nconst gutterClasses: Record<ContainerGutter, string> = {\n\tnone: 'px-0',\n\tsm: 'px-surface-xs',\n\tmd: 'px-surface',\n\tlg: 'px-surface-lg',\n};\n\nexport function containerRecipe({\n\tmaxWidth = 'xl',\n\tgutter = 'md',\n}: {\n\tmaxWidth?: ContainerMaxWidth;\n\tgutter?: ContainerGutter;\n}): string[] {\n\treturn ['box-border', 'mx-auto', 'w-full', maxWidthClasses[maxWidth], gutterClasses[gutter]];\n}\n"],"mappings":";AAEA,IAAMA,IAAqD;CAC1D,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,IAAI;CACJ,OAAO;CACP,MAAM;AACP,GAEMC,IAAiD;CACtD,MAAM;CACN,IAAI;CACJ,IAAI;CACJ,IAAI;AACL;AAEA,SAAgBC,EAAgB,EAC/B,cAAW,MACX,YAAS,QAIG;CACZ,OAAO;EAAC;EAAc;EAAW;EAAUF,EAAgBG;EAAWF,EAAcG;CAAO;AAC5F"}
@@ -1,72 +1,49 @@
1
1
  "use client";
2
- import { t as e } from "./utils-C2EKeIw3.js";
2
+ import { t as e } from "./utils-BvH9PSmq.js";
3
3
  import { o as t } from "./structure.recipes-Bqhf9oIh.js";
4
- import { forwardRef as n } from "react";
5
- import { Fragment as r, jsx as i, jsxs as a } from "react/jsx-runtime";
6
- import { useRender as o } from "@base-ui/react/use-render";
7
- //#region src/components/layout/containers/container.recipes.ts
8
- var s = {
9
- sm: "max-w-content-sm",
10
- md: "max-w-content-md",
11
- lg: "max-w-content-lg",
12
- xl: "max-w-content-xl",
13
- "2xl": "max-w-content-2xl",
14
- full: "max-w-none"
15
- }, c = {
16
- none: "px-0",
17
- sm: "px-surface-xs",
18
- md: "px-surface",
19
- lg: "px-surface-lg"
20
- };
21
- function l({ maxWidth: e = "xl", gutter: t = "md" }) {
22
- return [
23
- "box-border",
24
- "mx-auto",
25
- "w-full",
26
- s[e],
27
- c[t]
28
- ];
29
- }
30
- //#endregion
4
+ import { t as n } from "./container.recipes-D9t8MHR3.js";
5
+ import { forwardRef as r } from "react";
6
+ import { Fragment as i, jsx as a, jsxs as o } from "react/jsx-runtime";
7
+ import { useRender as s } from "@base-ui/react/use-render";
31
8
  //#region src/components/layout/containers/content-container.tsx
32
- var u = n(function({ className: t, maxWidth: n, gutter: r, render: i, ...a }, s) {
33
- return o({
9
+ var c = r(function({ className: t, maxWidth: r, gutter: i, render: a, ...o }, c) {
10
+ return s({
34
11
  defaultTagName: "div",
35
- ref: s,
36
- render: i,
12
+ ref: c,
13
+ render: a,
37
14
  props: {
38
- ...a,
39
- className: e("container--component @container/content", l({
40
- maxWidth: n,
41
- gutter: r
15
+ ...o,
16
+ className: e("container--component @container/content", n({
17
+ maxWidth: r,
18
+ gutter: i
42
19
  }), t)
43
20
  },
44
21
  state: {}
45
22
  });
46
23
  });
47
- u.displayName = "Container";
24
+ c.displayName = "Container";
48
25
  //#endregion
49
26
  //#region src/components/layout/containers/page-viewport.tsx
50
- var d = n(function({ className: t, render: n, tabIndex: r = 0, ...i }, a) {
51
- return o({
27
+ var l = r(function({ className: t, render: n, tabIndex: r = 0, ...i }, a) {
28
+ return s({
52
29
  defaultTagName: "div",
53
30
  ref: a,
54
31
  render: n,
55
32
  props: {
56
33
  ...i,
57
34
  tabIndex: r,
58
- className: e("page-viewport--component min-h-0 min-w-0 flex-1 overflow-auto overscroll-contain [scrollbar-gutter:stable] @container/page focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring/70 focus-visible:ring-inset", t)
35
+ className: e("page-viewport--component min-h-0 min-w-0 flex-1 overflow-auto overscroll-contain [scrollbar-gutter:stable] @container/page focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset", t)
59
36
  },
60
37
  state: {}
61
38
  });
62
39
  });
63
- d.displayName = "PageViewport";
40
+ l.displayName = "PageViewport";
64
41
  //#endregion
65
42
  //#region src/components/layout/containers/section.tsx
66
- var f = n(function({ className: n, gap: r, render: i, ...a }, s) {
67
- return o({
43
+ var u = r(function({ className: n, gap: r, render: i, ...a }, o) {
44
+ return s({
68
45
  defaultTagName: "section",
69
- ref: s,
46
+ ref: o,
70
47
  render: i,
71
48
  props: {
72
49
  ...a,
@@ -75,12 +52,12 @@ var f = n(function({ className: n, gap: r, render: i, ...a }, s) {
75
52
  state: {}
76
53
  });
77
54
  });
78
- f.displayName = "Section";
55
+ u.displayName = "Section";
79
56
  //#endregion
80
57
  //#region src/components/layout/containers/two-column-layout.tsx
81
- var p = n(function({ header: t, main: n, aside: s, footer: c, stickyAside: l = !1, adaptTo: u = "viewport", slotProps: d, className: f, render: p, ...m }, h) {
58
+ var d = r(function({ header: t, main: n, aside: r, footer: c, stickyAside: l = !1, adaptTo: u = "viewport", slotProps: d, className: f, render: p, ...m }, h) {
82
59
  let { className: g, ..._ } = d?.header ?? {}, { className: v, ...y } = d?.main ?? {}, { className: b, ...x } = d?.aside ?? {}, { className: S, ...C } = d?.footer ?? {};
83
- return o({
60
+ return s({
84
61
  defaultTagName: "div",
85
62
  ref: h,
86
63
  render: p,
@@ -88,26 +65,26 @@ var p = n(function({ header: t, main: n, aside: s, footer: c, stickyAside: l = !
88
65
  ...m,
89
66
  "data-slot": "two-column-layout",
90
67
  className: e("two-column-layout--component grid min-w-0 grid-cols-1 gap-space-2xl", u === "container" ? "@3xl:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]" : "lg:grid-cols-[minmax(0,2fr)_minmax(18rem,1fr)]", f),
91
- children: /* @__PURE__ */ a(r, { children: [
92
- t == null ? null : /* @__PURE__ */ i("div", {
68
+ children: /* @__PURE__ */ o(i, { children: [
69
+ t == null ? null : /* @__PURE__ */ a("div", {
93
70
  ..._,
94
71
  "data-slot": "two-column-layout-header",
95
72
  className: e("two-column-layout--header col-span-full min-w-0", g),
96
73
  children: t
97
74
  }),
98
- /* @__PURE__ */ i("div", {
75
+ /* @__PURE__ */ a("div", {
99
76
  ...y,
100
77
  "data-slot": "two-column-layout-main",
101
78
  className: e("two-column-layout--main min-h-0 min-w-0", v),
102
79
  children: n
103
80
  }),
104
- /* @__PURE__ */ i("aside", {
81
+ /* @__PURE__ */ a("aside", {
105
82
  ...x,
106
83
  "data-slot": "two-column-layout-aside",
107
84
  className: e("two-column-layout--aside min-h-0 min-w-0", l && (u === "container" ? "@3xl:sticky @3xl:top-space-2xl @3xl:self-start" : "lg:sticky lg:top-space-2xl lg:self-start"), b),
108
- children: s
85
+ children: r
109
86
  }),
110
- c == null ? null : /* @__PURE__ */ i("div", {
87
+ c == null ? null : /* @__PURE__ */ a("div", {
111
88
  ...C,
112
89
  "data-slot": "two-column-layout-footer",
113
90
  className: e("two-column-layout--footer col-span-full min-w-0", S),
@@ -118,8 +95,8 @@ var p = n(function({ header: t, main: n, aside: s, footer: c, stickyAside: l = !
118
95
  state: {}
119
96
  });
120
97
  });
121
- p.displayName = "TwoColumnLayout";
98
+ d.displayName = "TwoColumnLayout";
122
99
  //#endregion
123
- export { u as i, f as n, d as r, p as t };
100
+ export { c as i, u as n, l as r, d as t };
124
101
 
125
- //# sourceMappingURL=containers-6s-ucRQQ.js.map
102
+ //# sourceMappingURL=containers-DqB-bSYE.js.map