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
@@ -174,7 +174,7 @@ export interface ProductDetailsCardProps {
174
174
  description?: ReactNode | false;
175
175
  /** Label/value facts rendered as a metadata list. */
176
176
  metadata?: MetadataListItem[];
177
- /** Leading media for the card. */
177
+ /** Leading media; remains visible when no metadata facts are supplied. */
178
178
  media?: ReactNode;
179
179
  /** Fired when a details is edited. */
180
180
  onEditDetails?: () => void;
@@ -290,7 +290,7 @@ export interface ProductOptionValue {
290
290
  export interface ProductOptionGroup {
291
291
  /** Stable identity for this entry. */
292
292
  id: string;
293
- /** Display name. */
293
+ /** Display name. Inline configuration requires text or a number. Use onEditOption for rich names. */
294
294
  name: ReactNode;
295
295
  /** Supporting copy shown under the label. */
296
296
  description?: ReactNode;
@@ -406,8 +406,12 @@ export interface ProductOptionsMatrixProps {
406
406
  onValueLabelChange?: (option: ProductOptionGroup, value: ProductOptionValue, label: string) => void;
407
407
  /** Fired when editing an editing option finishes. */
408
408
  onDoneEditingOption?: (option: ProductOptionGroup) => void;
409
- /** Fired when an editing option is saved. */
410
- onSaveEditingOption?: (option: ProductOptionGroup, draft: ProductOptionEditDraft) => void;
409
+ /** Saves the option draft. A Promise keeps editing locked until acceptance;
410
+ * rejection retains the draft, shows an error and permits retry. Legacy change
411
+ * and done callbacks run only after this callback succeeds. */
412
+ onSaveEditingOption?: (option: ProductOptionGroup, draft: ProductOptionEditDraft) => void | Promise<void>;
413
+ /** Receives a rejected option save after its draft has been retained. */
414
+ onError?: (error: unknown) => void;
411
415
  /** Fired when editing an editing option is cancelled. */
412
416
  onCancelEditingOption?: (option: ProductOptionGroup, draft: ProductOptionEditDraft) => void;
413
417
  /** Fired when an used for variants is toggled. */
@@ -749,13 +753,21 @@ export interface ProductVariantsBulkTableProps {
749
753
  /** Overrides this surface’s own copy. */
750
754
  strings?: StringsProp<ProductVariantBulkTableStrings>;
751
755
  }
752
- export interface ProductVariantsManagerProps extends Pick<CardProps, 'surface' | 'padding' | 'headerDivider' | 'footerDivider'>, Pick<ProductOptionsMatrixProps, 'optionGroups' | 'collapsedOptionIds' | 'defaultCollapsedOptionIds' | 'onCollapsedOptionIdsChange' | 'editingOptionId' | 'defaultEditingOptionId' | 'onEditingOptionIdChange' | 'onCreateOption' | 'onEditOption' | 'onDeleteOption' | 'onAddValue' | 'onDeleteValue' | 'onOptionNameChange' | 'onValueLabelChange' | 'onDoneEditingOption' | 'onSaveEditingOption' | 'onCancelEditingOption' | 'onToggleUsedForVariants' | 'renderOptionActions' | 'renderValue'>, Pick<ProductVariantsBulkTableProps, 'variants' | 'groupByOptionId' | 'visibleColumns' | 'optionCombinationDisplay' | 'cellDisplay' | 'selectionMode' | 'renderOptionCombination' | 'renderCell' | 'selectedVariantIds' | 'defaultSelectedVariantIds' | 'onSelectedVariantIdsChange' | 'onVariantFieldChange' | 'onVariantFieldBlur' | 'onCreateVariant' | 'onGenerateVariants' | 'onSelectVariant' | 'onEditVariant' | 'onDuplicateVariant' | 'onDeleteVariant' | 'onBulkEdit' | 'onBulkApply' | 'onBulkDelete' | 'renderVariantActions' | 'renderBulkActions'> {
756
+ export interface ProductVariantsManagerProps extends Pick<CardProps, 'surface' | 'padding' | 'headerDivider' | 'footerDivider'>, Pick<ProductOptionsMatrixProps, 'optionGroups' | 'collapsedOptionIds' | 'defaultCollapsedOptionIds' | 'onCollapsedOptionIdsChange' | 'editingOptionId' | 'defaultEditingOptionId' | 'onEditingOptionIdChange' | 'onCreateOption' | 'onEditOption' | 'onDeleteOption' | 'onAddValue' | 'onDeleteValue' | 'onOptionNameChange' | 'onValueLabelChange' | 'onDoneEditingOption' | 'onSaveEditingOption' | 'onError' | 'onCancelEditingOption' | 'onToggleUsedForVariants' | 'renderOptionActions' | 'renderValue'>, Pick<ProductVariantsBulkTableProps, 'variants' | 'groupByOptionId' | 'visibleColumns' | 'optionCombinationDisplay' | 'cellDisplay' | 'selectionMode' | 'renderOptionCombination' | 'renderCell' | 'selectedVariantIds' | 'defaultSelectedVariantIds' | 'onSelectedVariantIdsChange' | 'onVariantFieldChange' | 'onVariantFieldBlur' | 'onCreateVariant' | 'onGenerateVariants' | 'onSelectVariant' | 'onEditVariant' | 'onDuplicateVariant' | 'onDeleteVariant' | 'onBulkEdit' | 'onBulkApply' | 'onBulkDelete' | 'renderVariantActions' | 'renderBulkActions'> {
753
757
  /** Groups rows under the values of this option. `null` leaves the list flat. */
754
758
  groupByOptionId?: string | null;
755
759
  /** Option group used for grouping on first render. */
756
760
  defaultGroupByOptionId?: string | null;
761
+ /**
762
+ * Shows the Group by control. Set `false` for a short variant list that
763
+ * needs no grouping chrome; rows then stay flat unless `groupByOptionId`
764
+ * or `defaultGroupByOptionId` names an option. @default true
765
+ */
766
+ showGroupBy?: boolean;
757
767
  onGroupByOptionIdChange?: (optionId: string | undefined, option?: ProductOptionGroup) => void;
768
+ /** Opens the app-owned variant search. Omitted handler hides its toolbar command. */
758
769
  onSearchVariants?: () => void;
770
+ /** Opens or applies app-owned filtering. Omitted handler hides its toolbar command. */
759
771
  onFilterVariants?: () => void;
760
772
  /** Content at the end of the manager's control row. */
761
773
  controlsEnd?: ReactNode;
@@ -772,7 +784,7 @@ export interface ProductVariantsManagerProps extends Pick<CardProps, 'surface' |
772
784
  variantsStrings?: ProductVariantsBulkTableProps['strings'];
773
785
  }
774
786
  export interface ProductVariantDetailsProps {
775
- /** Shell treatment. */
787
+ /** The selected variant and its accepted summary fields. */
776
788
  variant?: ProductVariantSummary;
777
789
  /** Label/value facts rendered as a metadata list. */
778
790
  metadata?: MetadataListItem[];
@@ -823,7 +835,7 @@ export interface ProductVariantOptionField {
823
835
  id: string;
824
836
  /** Display label. */
825
837
  label: string;
826
- /** Value shown beside the label. */
838
+ /** Fallback for an absent option value. @deprecated Set value.options or defaultValue.options on ProductVariantEditor. */
827
839
  value?: string;
828
840
  choices?: ProductChoice[];
829
841
  placeholder?: string;
@@ -842,6 +854,8 @@ export interface ProductVariantEditorValues {
842
854
  /** Options to render. */
843
855
  options?: Record<string, string | undefined>;
844
856
  }
857
+ /** A built-in ProductVariantEditor field that `visibleFields` can hide. */
858
+ export type ProductVariantEditorField = 'name' | 'sku' | 'description' | 'price' | 'inventory' | 'status' | 'channels';
845
859
  export interface ProductVariantEditorProps {
846
860
  /** Value shown beside the label. */
847
861
  value?: ProductVariantEditorValues;
@@ -865,6 +879,29 @@ export interface ProductVariantEditorProps {
865
879
  headerEnd?: ReactNode;
866
880
  /** Content rendered in the footer. */
867
881
  footerSlot?: ReactNode;
882
+ /**
883
+ * Which built-in fields are shown. Omitted fields default to visible; a
884
+ * section whose fields are all hidden is omitted with its heading.
885
+ */
886
+ visibleFields?: Partial<Record<ProductVariantEditorField, boolean>>;
887
+ /** Validation messages for built-in fields, shown under each and marking it invalid. */
888
+ errors?: Partial<Record<ProductVariantEditorField, ReactNode>>;
889
+ /**
890
+ * Id of the editor's form. Pass the same id to `ActionDrawer formId` so the
891
+ * drawer's footer submits it. Generated when omitted.
892
+ */
893
+ formId?: string;
894
+ /**
895
+ * Shows the editor's own title and description. Set `false` inside an
896
+ * overlay whose header already names the task. @default true
897
+ */
898
+ showHeader?: boolean;
899
+ /**
900
+ * App-owned fields, such as unit cost or per-location stock, rendered inside
901
+ * the form after the built-in sections and before the default commands.
902
+ * Their values, validation and submission stay with the caller.
903
+ */
904
+ children?: ReactNode;
868
905
  /** Renders the entry as unselectable. */
869
906
  disabled?: boolean;
870
907
  /** Shows the pending state and blocks repeat submissions. */
@@ -901,7 +938,7 @@ export interface ProductOverviewProps {
901
938
  quote?: ProductQuotePreviewCardProps;
902
939
  /** Policies card configuration. */
903
940
  policies?: ProductPoliciesCardProps;
904
- /** Replaces individual cards in the overview. */
941
+ /** Inserts content at the named main and supporting-region positions. */
905
942
  slots?: ProductOverviewSlots;
906
943
  /** Merged onto the outermost node. */
907
944
  className?: string;
@@ -83,6 +83,9 @@ export interface QuestionnaireProps extends Omit<ComponentPropsWithoutRef<'form'
83
83
  /** Controlled active question key. */
84
84
  questionId?: string;
85
85
  defaultQuestionId?: string;
86
+ /** Fired when navigation requests a question. Takes precedence over `onQuestionChange`. */
87
+ onQuestionIdChange?: (id: string) => void;
88
+ /** Legacy alias for `onQuestionIdChange`. */
86
89
  onQuestionChange?: (id: string) => void;
87
90
  disabled?: boolean;
88
91
  /** Receives only visible, enabled questions. Respect signal to cancel application requests. */
@@ -1,8 +1,12 @@
1
1
  import type { ResourceActionBarProps, ResourceDetailsSectionProps, ResourceEmptyStateProps, ResourceHeaderProps, ResourceIndexShellProps, ResourceShowShellProps, TabbedResourceShellProps } from './resource.types';
2
- export declare function ResourceHeader({ title, description, eyebrow, media, avatarUrl, avatarAlt, avatarFallback, icon, iconTone, badges, metadata, actions, primaryAction, secondaryActions, moreActionsLabel, renderLink, className, contentClassName, mediaClassName, }: ResourceHeaderProps): import("react").JSX.Element;
2
+ /** @deprecated Use Page from themelia-react-ui/layout/page; PageHeader is available for embedded headers. */
3
+ export declare function ResourceHeader({ title, description, eyebrow, media, avatarUrl, avatarAlt, avatarFallback, icon, iconTone, badges, metadata, actions, primaryAction, secondaryActions, maxVisibleSecondaryActions, moreActionsLabel, renderLink, className, contentClassName, mediaClassName, }: ResourceHeaderProps): import("react").JSX.Element;
3
4
  export declare function ResourceActionBar({ children, leading, trailing, sticky, className }: ResourceActionBarProps): import("react").JSX.Element;
4
5
  export declare function ResourceEmptyState(props: ResourceEmptyStateProps): import("react").JSX.Element;
6
+ /** @deprecated Use Page from themelia-react-ui/layout/page; PageHeader is available for embedded headers. */
5
7
  export declare function ResourceIndexShell(props: ResourceIndexShellProps): import("react").JSX.Element;
8
+ /** @deprecated Use Page from themelia-react-ui/layout/page; PageHeader is available for embedded headers. */
6
9
  export declare function ResourceShowShell(props: ResourceShowShellProps): import("react").JSX.Element;
7
- export declare function TabbedResourceShell({ tabs, activeTab, onTabChange, tabsClassName, moreLabel, tabsAriaLabel, toolbar, slots, className, strings: stringsProp, ...props }: TabbedResourceShellProps): import("react").JSX.Element;
10
+ /** @deprecated Use Page from themelia-react-ui/layout/page; PageHeader is available for embedded headers. */
11
+ export declare function TabbedResourceShell({ tabs, activeTab, defaultActiveTab, onTabChange, tabsClassName, moreLabel, tabsAriaLabel, toolbar, slots, className, strings: stringsProp, ...props }: TabbedResourceShellProps): import("react").JSX.Element;
8
12
  export declare function ResourceDetailsSection({ metadata, metadataColumns, metadataDense, body, help, children, contentClassName, ...props }: ResourceDetailsSectionProps): import("react").JSX.Element;
@@ -33,7 +33,7 @@ export interface ResourceShellSlots {
33
33
  * menu.
34
34
  */
35
35
  export interface ResourceHeaderCommandProps {
36
- /** The resource's one main command: a solid primary button, visible at every width. */
36
+ /** The resource's one main command: a solid primary button, in the command menu in compact headers. */
37
37
  primaryAction?: PageHeaderAction;
38
38
  /**
39
39
  * Supporting commands in priority order. The first two render as outline
@@ -41,11 +41,19 @@ export interface ResourceHeaderCommandProps {
41
41
  * command, move into the More actions menu, which always closes the row.
42
42
  */
43
43
  secondaryActions?: readonly PageHeaderAction[];
44
+ /**
45
+ * How many routine secondary commands render as outline buttons on wide
46
+ * headers; later ones join the More actions menu. Use `1` or `0` when long
47
+ * labels beside the primary command would crowd the header; `Infinity`
48
+ * keeps every routine command inline. @default 2
49
+ */
50
+ maxVisibleSecondaryActions?: number;
44
51
  /** Accessible name of the More actions menu trigger. Default: `'More actions'`. */
45
52
  moreActionsLabel?: string;
46
53
  /** Renders `href` commands as framework links. Defaults to a native anchor. */
47
54
  renderLink?: PageHeaderLinkRenderer;
48
55
  }
56
+ /** @deprecated Use PageProps or PageHeaderProps from themelia-react-ui/layout/page. */
49
57
  export interface ResourceIndexShellProps extends ResourceHeaderCommandProps {
50
58
  /** Primary workspace content. Replaced by loading, error, or empty state when active. */
51
59
  children?: ReactNode;
@@ -82,10 +90,12 @@ export interface ResourceIndexShellProps extends ResourceHeaderCommandProps {
82
90
  /** Copy overrides for loading, empty, error, retry, and tab labels. */
83
91
  strings?: StringsProp<ResourceStrings>;
84
92
  }
93
+ /** @deprecated Use PageProps or PageHeaderProps from themelia-react-ui/layout/page. */
85
94
  export interface ResourceShowShellProps extends ResourceIndexShellProps {
86
95
  /** Class name for `slots.aside`. */
87
96
  asideClassName?: string;
88
97
  }
98
+ /** @deprecated Use PageProps or PageHeaderProps from themelia-react-ui/layout/page. */
89
99
  export interface ResourceHeaderProps extends ResourceHeaderCommandProps {
90
100
  /** Primary resource identity. */
91
101
  title: ReactNode;
@@ -172,11 +182,14 @@ export interface ResourceDetailsSectionProps extends ResourceSectionFrameProps {
172
182
  /** Quiet guidance rendered after the section content. */
173
183
  help?: ReactNode;
174
184
  }
185
+ /** @deprecated Use PageProps or PageHeaderProps from themelia-react-ui/layout/page. */
175
186
  export interface TabbedResourceShellProps extends ResourceShowShellProps {
176
187
  /** Workspace tabs, including optional overflow metadata. */
177
188
  tabs: OverflowTabItem[];
178
189
  /** Controlled active tab identifier. */
179
190
  activeTab?: string;
191
+ /** Initial tab identifier when the shell manages selection. `activeTab` takes precedence. */
192
+ defaultActiveTab?: string;
180
193
  /** Called when a visible or overflow tab is selected. */
181
194
  onTabChange?: (id: string) => void;
182
195
  /** Class name for the overflow tab bar. */
@@ -3,4 +3,4 @@ export interface FormRichTextEditorProps extends Omit<RichTextEditorProps, 'valu
3
3
  /** Form field name, forwarded for native submits. */
4
4
  name: string;
5
5
  }
6
- export declare function FormRichTextEditor({ name, ...props }: FormRichTextEditorProps): import("react").JSX.Element;
6
+ export declare function FormRichTextEditor({ name, className, disabled, invalid, onBlur, ...props }: FormRichTextEditorProps): import("react").JSX.Element;
@@ -24,5 +24,5 @@ export declare function readCaretContext(): RichTextCaretContext | null;
24
24
  * range with the chip atomically — no manual text-content mutation, no
25
25
  * timing races between "delete" and "insert".
26
26
  */
27
- export declare function replaceBeforeCaret(editor: TiptapEditor | null, length: number, html: string, notifyChange: (next: string) => void): void;
27
+ export declare function replaceBeforeCaret(editor: TiptapEditor | null, length: number, html: string, notifyChange?: (next: string) => void): void;
28
28
  export declare function insertHtmlIntoEditable(editable: HTMLElement | null, html: string): void;
@@ -0,0 +1,14 @@
1
+ export declare function editorFieldAria(label: string, listboxId?: string, activeOptionId?: string): {
2
+ readonly role: "textbox";
3
+ readonly 'aria-label': string;
4
+ readonly 'aria-multiline': "true";
5
+ } | {
6
+ readonly 'aria-activedescendant'?: string | undefined;
7
+ readonly role: "combobox";
8
+ readonly 'aria-label': string;
9
+ readonly 'aria-expanded': "true";
10
+ readonly 'aria-haspopup': "listbox";
11
+ readonly 'aria-autocomplete': "list";
12
+ readonly 'aria-controls': string;
13
+ readonly 'aria-multiline'?: undefined;
14
+ };
@@ -5,7 +5,7 @@ export declare const DEFAULT_IMAGE_ACCEPT = "image/png,image/jpeg,image/gif,imag
5
5
  /** Marks an upload placeholder in the editing surface; never part of the value. */
6
6
  export declare const UPLOAD_ATTRIBUTE = "data-rte-upload";
7
7
  /** The placeholder occupies a line of its own while its image uploads. */
8
- export declare const UPLOAD_PLACEHOLDER_CLASS = "rich-text-editor--upload my-space-xs flex min-h-control items-center rounded-inner border border-dashed border-input bg-muted/30 px-row-x py-row-y";
8
+ export declare const UPLOAD_PLACEHOLDER_CLASS = "rich-text-editor--upload my-space-xs flex min-h-control items-center rounded-radius border border-dashed border-input bg-muted/30 px-row-x py-row-y";
9
9
  /** Removes upload placeholders from serialized editor HTML. */
10
10
  export declare function stripUploadPlaceholders(html: string): string;
11
11
  export declare function acceptsImageFile(file: File, accept: string): boolean;
@@ -6,6 +6,8 @@ export interface RichTextEditorToolbarProps {
6
6
  buttons: ToolbarButtonConfig[];
7
7
  /** Additional controls appended to the toolbar. */
8
8
  extraToolbarItems?: ReadonlyArray<RichTextEditorToolbarItem>;
9
+ /** Active values read from the editor's transaction subscription. */
10
+ extraToolbarActive?: readonly boolean[];
9
11
  /** Hides the control that switches to HTML source. */
10
12
  hideSourceToggle?: boolean;
11
13
  /** Whether the editor is currently showing HTML source. */
@@ -27,7 +29,7 @@ export interface RichTextEditorToolbarProps {
27
29
  /** Merged onto the outermost node. */
28
30
  className?: string;
29
31
  }
30
- export declare function RichTextEditorToolbar({ buttons, extraToolbarItems, hideSourceToggle, sourceMode, toggleSourceMode, disabled, hasEditor, toolbarTrailing, strings, className, }: RichTextEditorToolbarProps): import("react").JSX.Element;
32
+ export declare function RichTextEditorToolbar({ buttons, extraToolbarItems, extraToolbarActive, hideSourceToggle, sourceMode, toggleSourceMode, disabled, hasEditor, toolbarTrailing, strings, className, }: RichTextEditorToolbarProps): import("react").JSX.Element;
31
33
  export declare namespace RichTextEditorToolbar {
32
34
  var displayName: string;
33
35
  }
@@ -1,7 +1,17 @@
1
- /** Shared field anatomy for rich editors, including specialized document schemas. */
1
+ /**
2
+ * Shared field anatomy for rich editors, including specialized document schemas.
3
+ * Every region takes the toolbar's `surface-xs` inset, on both axes for the body,
4
+ * so the first line sits as far below the toolbar rule as text sits from the frame edge.
5
+ */
2
6
  export declare const richTextEditorRecipes: {
3
7
  readonly source: string;
4
- readonly frame: "min-w-0 overflow-hidden border-input bg-background rounded-inner border";
8
+ /** Editable body: shared content typography inside the editor's surface inset. Every embedded editor uses it. */
9
+ readonly editable: string;
10
+ /** Placeholder overlay, laid over the editable body at the same inset. */
11
+ readonly placeholder: "pointer-events-none absolute inset-0 p-surface-xs";
12
+ /** Inline inset for the regions under the body (image details, counts, footer slot). */
13
+ readonly regionX: "px-surface-xs";
14
+ readonly frame: string;
5
15
  readonly disabled: "opacity-50";
6
16
  readonly disabledControl: "disabled:opacity-100 aria-disabled:opacity-100";
7
17
  readonly content: "h-full [&_.ProseMirror]:h-full [&_.ProseMirror]:min-h-full [&_.ProseMirror]:outline-none";
@@ -1,5 +1,6 @@
1
- import type { ComponentType, ReactNode } from 'react';
1
+ import type { ComponentType, FocusEventHandler, ReactNode } from 'react';
2
2
  import type * as TiptapReact from '@tiptap/react';
3
+ import type { FieldControlAttributes } from '../../../lib/field-control-attributes';
3
4
  import type { StringsProp } from '../../../lib/strings';
4
5
  import type { RichTextImageRendering } from '../../typography/rich-text';
5
6
  import type { RichTextEditorStrings } from './rich-text-editor.strings';
@@ -94,11 +95,15 @@ export interface RichTextEditorImages extends RichTextImageRendering {
94
95
  }
95
96
  /** Body floor roles for the rich text editor. */
96
97
  export type RichTextEditorBodyHeight = 'control' | 'field' | 'document';
97
- export interface RichTextEditorProps {
98
+ export interface RichTextEditorProps extends FieldControlAttributes {
98
99
  /** Editor content as HTML. Controlled. */
99
100
  value: string;
100
- /** Fired with the next value. */
101
+ /** Reports the document HTML. Source edits commit when switching back to rich text. */
101
102
  onValueChange: (html: string) => void;
103
+ /** Includes the committed HTML under this name in native form submissions. */
104
+ name?: string;
105
+ /** Runs when focus leaves the editor and its toolbar. */
106
+ onBlur?: FocusEventHandler<HTMLElement>;
102
107
  /** Shown while the document is empty. */
103
108
  placeholder?: string;
104
109
  /** Tightens the toolbar and body for inline use. */
@@ -115,6 +120,8 @@ export interface RichTextEditorProps {
115
120
  maxHeight?: string;
116
121
  /** Renders the entry as unselectable. */
117
122
  disabled?: boolean;
123
+ /** Marks the editable field invalid and applies the shared field state. */
124
+ invalid?: boolean;
118
125
  /** Show character and word counts in a footer bar. */
119
126
  showCounts?: boolean;
120
127
  /** Optional character limit — displayed as "X / max" when showCounts is true. */
@@ -137,6 +144,13 @@ export interface RichTextEditorProps {
137
144
  * comment composer to detect `@`-style trigger characters.
138
145
  */
139
146
  onCaretChange?: () => void;
147
+ /** Consumes an editable-body key before the editor handles it. Return true to handle the key. */
148
+ onEditorKeyDown?: (event: KeyboardEvent) => boolean;
149
+ /** Associates the editable body with an open inline completion listbox. */
150
+ suggestionPopup?: {
151
+ listboxId: string;
152
+ activeOptionId?: string;
153
+ };
140
154
  /** Per-instance string overrides (deep-merged over `defaultRichTextEditorStrings`). */
141
155
  strings?: StringsProp<RichTextEditorStrings>;
142
156
  /**
@@ -15,9 +15,13 @@ export interface UseSchemaFormResult extends SchemaFormSubmitHelpers {
15
15
  errors: SchemaFormErrors;
16
16
  getFieldError: (key: string) => string | undefined;
17
17
  getFieldValue: (key: string) => SchemaFormValue;
18
+ /** Reads the latest values, including writes made in the current event. */
19
+ getValues: () => SchemaFormValues;
18
20
  setFieldValue: (key: string, value: SchemaFormValue) => void;
19
21
  setValues: (values: SchemaFormValues) => void;
22
+ /** Registers a field editor's current parse validity with form validation. */
23
+ setFieldParseValidity: (key: string, valid: boolean) => void;
20
24
  reset: () => SchemaFormValues;
21
25
  validate: () => boolean;
22
26
  }
23
- export declare function useSchemaForm({ fields, value, defaultValue, errors: externalErrors, onValueChange, onFieldChange, formatRequiredError, validationError, onError, }: UseSchemaFormOptions): UseSchemaFormResult;
27
+ export declare function useSchemaForm(options: UseSchemaFormOptions): UseSchemaFormResult;
@@ -5,8 +5,10 @@ export interface SchemaFormFieldRendererProps extends SchemaFormFieldContext {
5
5
  strings: SchemaFormStrings;
6
6
  /** Merged onto the outermost node. */
7
7
  className?: string;
8
+ /** Reports whether the JSON editor can parse its current draft. */
9
+ onParseValidityChange?: (key: string, valid: boolean) => void;
8
10
  }
9
- export declare function SchemaFormFieldRenderer({ field, value, values, error, disabled, required, fieldId, onValueChange, onError, strings, className, }: SchemaFormFieldRendererProps): import("react").JSX.Element;
11
+ export declare function SchemaFormFieldRenderer({ field, value, values, error, disabled, required, fieldId, onValueChange, onError, strings, className, onParseValidityChange, }: SchemaFormFieldRendererProps): import("react").JSX.Element;
10
12
  export declare namespace SchemaFormFieldRenderer {
11
13
  var displayName: string;
12
14
  }
@@ -10,7 +10,7 @@ export declare function toStringValue(value: SchemaFormValue): string;
10
10
  export declare function toStringArray(value: SchemaFormValue): string[];
11
11
  export declare function toBooleanValue(value: SchemaFormValue): boolean;
12
12
  export declare function parseNumberValue(rawValue: string, integer?: boolean): number | null;
13
- export declare function formatJsonValue(value: SchemaFormValue, indent?: number): string;
13
+ export declare function formatJsonValue(value: SchemaFormValue, indent?: number, quoteString?: boolean): string;
14
14
  export declare function parseJsonValue(rawValue: string): {
15
15
  value: SchemaFormValue;
16
16
  valid: boolean;
@@ -68,7 +68,7 @@ export interface SuggestionsComboboxProps<T> extends UseSuggestionsConfig<T> {
68
68
  renderError?: (context: SuggestionsErrorRenderContext) => ReactNode;
69
69
  /** Shows a control that clears the current selection. */
70
70
  allowClear?: boolean;
71
- /** Resets the query when the list closes without a selection. */
71
+ /** Resets the query when a results list closes. Failed queries remain available to retry. */
72
72
  clearInputOnClose?: boolean;
73
73
  /** Renders the entry as unselectable. */
74
74
  disabled?: boolean;
@@ -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, 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, selectionToolbarPlacement, totalRowCount: totalRowCountProp, storageKey, }: DataTableProps<TData, TValue>): import("react").JSX.Element;
3
+ export declare function DataTable<TData extends object, TValue = unknown>({ size, surface, headerTransparent, columns, data, loading, loadingRows, 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, selectionToolbarPlacement, totalRowCount: totalRowCountProp, storageKey, }: DataTableProps<TData, TValue>): import("react").JSX.Element;
4
4
  export declare namespace DataTable {
5
5
  var displayName: string;
6
6
  }
@@ -9,6 +9,7 @@ export { DataTableToolbar } from './table-toolbar';
9
9
  export { CellValue, CellStack, type CellStackProps, type CellStackValue, type CellValueDescriptor, type CellValueKind, type CellValueProps, type CellValueTuple, type PrimitiveCellValue, } from './partials/cell-value';
10
10
  export { TableLink, type TableLinkProps } from './partials/table-link';
11
11
  export { StatusCell, type StatusCellEntry, type StatusCellProps, StatusClusterCell, type StatusClusterCellItem, type StatusClusterCellProps, DateCell, type DateCellProps, DateMetaCell, type DateMetaCellProps, CurrencyCell, type CurrencyCellProps, AvatarCell, type AvatarCellProps, ResourceCell, type ResourceCellBadge, type ResourceCellLinkProps, type ResourceCellMetadataItem, type ResourceCellProps, } from './partials/cell-renderers';
12
+ export type { ColumnDef } from '@tanstack/react-table';
12
13
  export * from './table.types';
13
14
  export { defaultDataTableStrings, mergeDataTableStrings } from './table.strings';
14
15
  export { handleRowSelectionChange, handleSortingChange, handleColumnVisibilityChange, getRowClassName, getCellClassName, getSelectedRowsData, createRowSelectionCheckbox, createHeaderSelectionCheckbox, addSelectionColumn, } from './table-helpers';
@@ -1,5 +1,5 @@
1
1
  import type { ComponentType, ReactNode } from 'react';
2
- import { type LucideIcon } from 'lucide-react';
2
+ import type { LucideIcon } from 'lucide-react';
3
3
  import { type BadgeTone } from '../../../base/badge';
4
4
  export interface ResourceCellMetadataItem {
5
5
  /** Stable identity for this entry. */
@@ -32,13 +32,24 @@ export interface ResourceCellProps {
32
32
  metadata?: ReactNode | readonly ResourceCellMetadataItem[];
33
33
  /** Status chips shown after the title. */
34
34
  badges?: readonly ResourceCellBadge[];
35
- /** Thumbnail source. Falls back to `icon`, then `fallback`, when absent or broken. */
35
+ /**
36
+ * Thumbnail source. When it is absent or fails to load, the circle shows
37
+ * `fallback`, then `icon`, then the title's initials.
38
+ */
36
39
  imageUrl?: string;
37
- /** Leading glyph. */
40
+ /** Leading glyph in the media circle. Pass one only when it identifies the resource. */
38
41
  icon?: ComponentType<{
39
42
  className?: string;
40
43
  }>;
41
- /** Media shown when neither `imageUrl` nor `icon` resolves — usually initials. */
44
+ /**
45
+ * Media shown when `imageUrl` is absent or fails — usually
46
+ * `<Initials value={name} />` for a person or organization.
47
+ *
48
+ * The cell draws its media circle only when `imageUrl`, `icon` or
49
+ * `fallback` is supplied, so identifiers such as orders and invoices read
50
+ * as plain text with no decorative monogram. In a person column where only
51
+ * some rows have a photo, pass `fallback` on every row so titles align.
52
+ */
42
53
  fallback?: ReactNode;
43
54
  /** Destination for the entry, when it navigates. */
44
55
  href?: string;
@@ -48,6 +59,12 @@ export interface ResourceCellProps {
48
59
  emptyLabel?: ReactNode;
49
60
  /** Merged onto the outermost node. */
50
61
  className?: string;
62
+ /**
63
+ * `circle` for people and organizations; `square` (the default radius) for
64
+ * product photos and documents, so square images are not clipped.
65
+ * @default 'circle'
66
+ */
67
+ mediaShape?: 'circle' | 'square';
51
68
  /** Merged onto the media. */
52
69
  mediaClassName?: string;
53
70
  /** Merged onto the content. */
@@ -57,7 +74,7 @@ export interface ResourceCellProps {
57
74
  /** Merged onto the subtitle. */
58
75
  subtitleClassName?: string;
59
76
  }
60
- export declare function ResourceCell({ title, subtitle, metadata, badges, imageUrl, icon: IconComponent, fallback, href, renderLink, emptyLabel, className, mediaClassName, contentClassName, titleClassName, subtitleClassName, }: ResourceCellProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react").JSX.Element | null | undefined;
77
+ export declare function ResourceCell({ title, subtitle, metadata, badges, imageUrl, icon: IconComponent, fallback, href, renderLink, emptyLabel, className, mediaShape, mediaClassName, contentClassName, titleClassName, subtitleClassName, }: ResourceCellProps): string | number | bigint | boolean | Iterable<ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<ReactNode> | null | undefined> | import("react").JSX.Element | null | undefined;
61
78
  export declare namespace ResourceCell {
62
79
  var displayName: string;
63
80
  }
@@ -1,5 +1,5 @@
1
1
  import { type DataTableBodyProps } from './table.types';
2
- export declare function DataTableBody<TData>({ table, onRowClick, emptyStateMessage, emptyStateAction, cellClassName, rowClassName, stickyFirstColumn, striped, strings, }: DataTableBodyProps<TData>): import("react").JSX.Element;
2
+ export declare function DataTableBody<TData>({ loading, loadingRows, table, onRowClick, emptyStateMessage, emptyStateAction, cellClassName, rowClassName, stickyFirstColumn, striped, strings, }: DataTableBodyProps<TData>): import("react").JSX.Element;
3
3
  export declare namespace DataTableBody {
4
4
  var displayName: string;
5
5
  }
@@ -1,6 +1,11 @@
1
1
  import type { SortingState, RowSelectionState, VisibilityState, Table, Row, Updater, ColumnDef } from '@tanstack/react-table';
2
2
  import React from 'react';
3
3
  import type { DataTableStrings } from './table.types';
4
+ export interface GeneratedColumnOptions<TData> {
5
+ strings: DataTableStrings;
6
+ renderActions?: (row: TData) => React.ReactNode;
7
+ }
8
+ export declare function getGeneratedColumnOptions<TData>(table: Table<TData>): GeneratedColumnOptions<TData> | undefined;
4
9
  /**
5
10
  * Helper function for handling row selection changes with OnChangeFn compatibility
6
11
  */
@@ -33,7 +38,5 @@ export declare const createRowSelectionCheckbox: <TData>(row: Row<TData>, string
33
38
  * Create header selection checkbox
34
39
  */
35
40
  export declare const createHeaderSelectionCheckbox: <TData>(table: Table<TData>, strings?: DataTableStrings) => React.JSX.Element;
36
- /**
37
- * Add selection column to columns
38
- */
41
+ /** Prepends the checkbox selection column. Explicit strings override table defaults. */
39
42
  export declare const addSelectionColumn: <TData, TValue = unknown>(columns: ColumnDef<TData, TValue>[], strings?: DataTableStrings) => ColumnDef<TData, TValue>[];
@@ -1,5 +1,8 @@
1
1
  import { type DataTableStrings, type DataTableStringsOverride } from './table.types';
2
2
  export declare const defaultDataTableStrings: {
3
+ loading: {
4
+ label: string;
5
+ };
3
6
  emptyState: {
4
7
  message: string;
5
8
  ariaLabel: string;
@@ -72,6 +72,10 @@ export interface DataTablePaginationStrings extends ExistingRequiredPaginationLa
72
72
  to: string;
73
73
  }
74
74
  export interface DataTableStrings {
75
+ /** Copy announced while the table body is loading. Optional for existing dictionaries. */
76
+ loading?: {
77
+ label: string;
78
+ };
75
79
  /** Shown in place of the collection when it has no entries. */
76
80
  emptyState: {
77
81
  message: string;
@@ -128,6 +132,7 @@ export interface DataTableStrings {
128
132
  };
129
133
  }
130
134
  export type DataTableStringsOverride = Partial<{
135
+ loading: Partial<NonNullable<DataTableStrings['loading']>>;
131
136
  /** Shown in place of the collection when it has no entries. */
132
137
  emptyState: Partial<DataTableStrings['emptyState']>;
133
138
  /** Overflow menu for the surface as a whole. */
@@ -171,7 +176,9 @@ export interface DataTableToolbarProps<TData> {
171
176
  }
172
177
  export interface DataTableSelectionToolbarContext<TData extends object> {
173
178
  table: Table<TData>;
179
+ /** Selected records available in the current `data` prop. */
174
180
  selectedRows: TData[];
181
+ /** Number of selected IDs, including selections outside the current page. */
175
182
  selectedRowCount: number;
176
183
  /** `totalRowCount` when supplied, else `pagination.total`, else the rows in `data`. */
177
184
  totalRowCount: number;
@@ -190,7 +197,7 @@ export type DataTableSize = ComponentScale;
190
197
  *
191
198
  * - `card` (default): rounded card with `border-border bg-card` and a
192
199
  * soft shadow — the canonical admin treatment.
193
- * - `glass`: a hairline `border-border/60 rounded-radius` outline with no
200
+ * - `glass`: a hairline `border-border/60 rounded-surface` outline with no
194
201
  * shadow and no card background — pairs with consumer-supplied
195
202
  * surrounding chrome (e.g. dropping into an existing SmartCard).
196
203
  * Background remains transparent so a glassy parent shows
@@ -221,7 +228,8 @@ export interface DataTableProps<TData extends object, TValue> {
221
228
  * 1. Regular array: `columns={myColumns}`
222
229
  * 2. Tuple pattern with auto-memoization: `columns={[getColumns(t, actions), [t, actions]]}`
223
230
  *
224
- * The tuple pattern eliminates the need for manual useMemo on the page level.
231
+ * The tuple keeps its definitions until the dependencies change. Include
232
+ * every value read by the definitions, including their cell callbacks.
225
233
  *
226
234
  * @example
227
235
  * // Pattern 1: Regular (requires manual memoization)
@@ -235,6 +243,10 @@ export interface DataTableProps<TData extends object, TValue> {
235
243
  columns: ColumnDef<TData, TValue>[] | [ColumnDef<TData, TValue>[], React.DependencyList];
236
244
  /** Records to render. */
237
245
  data: TData[];
246
+ /** Replaces body rows with placeholders while preserving headers and table state. */
247
+ loading?: boolean;
248
+ /** Number of placeholder rows while loading. Defaults to 6, capped at 20. */
249
+ loadingRows?: number;
238
250
  /** Banded headers spanning several columns, drawn above the header row. */
239
251
  columnGroups?: ColumnGroup[];
240
252
  /** Enables column sorting. */
@@ -485,6 +497,10 @@ export interface DataTableActionsProps<TData> {
485
497
  strings?: DataTableStrings;
486
498
  }
487
499
  export interface DataTableBodyProps<TData> {
500
+ /** Replaces the body with non-interactive shared Skeleton rows. */
501
+ loading?: boolean;
502
+ /** Number of placeholder rows. Defaults to 6, capped at 20. */
503
+ loadingRows?: number;
488
504
  /** The table instance from `useReactTable`, supplied by `DataTable`. */
489
505
  table: Table<TData>;
490
506
  /** Fired when a row is activated. */