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
@@ -64,6 +64,7 @@ export interface FilterOption {
64
64
  value: string;
65
65
  /** Leading glyph. */
66
66
  icon: ReactNode;
67
+ /** Nested options. SELECT and MULTI_SELECT editors show them level by level, and a chosen option reads as its path. */
67
68
  children?: FilterOption[];
68
69
  /** Renders the entry as unselectable. */
69
70
  disabled?: boolean;
@@ -134,9 +135,9 @@ export interface AsyncSelectConfig<TItem = unknown> {
134
135
  preload?: boolean;
135
136
  /** Debounce delay in ms (default: 300) */
136
137
  debounceMs?: number;
137
- /** Freshness window in ms before a cached result refetches (default: 60_000). */
138
+ /** Freshness window in ms for cached results within one mounted editor (default: 60_000). */
138
139
  staleTime?: number;
139
- /** Retention window in ms before a cached result is discarded (default: 300_000). */
140
+ /** Retention window in ms within one mounted editor (default: 300_000). Closing the editor discards its cache. */
140
141
  gcTime?: number;
141
142
  }
142
143
  /**
@@ -167,6 +168,8 @@ export interface FilterConfig {
167
168
  validation?: ValidationConfig;
168
169
  dependencies?: FilterDependency[];
169
170
  multiple?: boolean;
171
+ /** For nested options: only leaves can be chosen (default), or any option, including a branch. */
172
+ selectableOptions?: 'leaf' | 'any';
170
173
  closeOnSelect?: boolean;
171
174
  maxSelected?: number;
172
175
  /** Async option loading config for ASYNC_SELECT filters. */
@@ -193,7 +196,7 @@ export interface ActiveFilter {
193
196
  key: string;
194
197
  /** Comparison currently chosen. */
195
198
  operator: FilterOperator;
196
- /** Current value of the filter. */
199
+ /** Current value of the filter. RANGE uses [min, max], with an empty string for an open bound. */
197
200
  value: string[];
198
201
  }
199
202
  export interface FilterGroup {
@@ -1,7 +1,8 @@
1
- import type { FilterConfig, FilterTriggerSource } from '../filters.types';
1
+ import type { FilterConfig, FilterOperator, FilterTriggerSource } from '../filters.types';
2
2
  interface DateFilterContentProps {
3
3
  /** Definition of the filter this control edits. */
4
4
  filter: FilterConfig;
5
+ operator?: FilterOperator;
5
6
  /** Current value. */
6
7
  value: string[];
7
8
  /** Fired when the change filters change. */
@@ -10,5 +11,5 @@ interface DateFilterContentProps {
10
11
  /** Origin of the editor, which determines back-button behavior. */
11
12
  triggerSource?: FilterTriggerSource;
12
13
  }
13
- export declare function DateFilterContent({ filter, value, onFilterChange, onBackToFilterList, triggerSource, }: DateFilterContentProps): import("react").JSX.Element;
14
+ export declare function DateFilterContent({ filter, operator, value, onFilterChange, onBackToFilterList, triggerSource, }: DateFilterContentProps): import("react").JSX.Element;
14
15
  export {};
@@ -0,0 +1,16 @@
1
+ import type { ReactNode } from 'react';
2
+ interface FilterEditorHeaderProps {
3
+ /** The filter label shown as the editor title. */
4
+ title: ReactNode;
5
+ /** Optional supporting line under the title. */
6
+ description?: ReactNode;
7
+ /** Returns to the filter list; the back button shows only when this is set. */
8
+ onBack?: () => void;
9
+ }
10
+ /**
11
+ * The one header every value editor uses — list, date and tag editors alike:
12
+ * an optional back button and the filter label as the popover title, set in
13
+ * the compact editor surface so every editor starts on the same band.
14
+ */
15
+ export declare function FilterEditorHeader({ title, description, onBack }: FilterEditorHeaderProps): import("react").JSX.Element;
16
+ export {};
@@ -1,9 +1,11 @@
1
- import type { ComponentProps } from 'react';
1
+ import { type ComponentProps } from 'react';
2
2
  import { PopoverContent } from '../../../base/popover';
3
- import { type FilterConfig, type FilterTriggerSource } from '../filters.types';
3
+ import { type FilterConfig, type FilterOperator, type FilterTriggerSource } from '../filters.types';
4
4
  export interface FilterPopoverContentProps {
5
5
  /** Which filter the popover is currently editing. */
6
6
  activeFilterInPopover: FilterConfig | null;
7
+ /** Active operator when the caller already owns the displayed selection. */
8
+ operator?: FilterOperator;
7
9
  /** Filters the user may add. */
8
10
  availableFilters: FilterConfig[];
9
11
  /** Filters currently applied. */
@@ -33,4 +35,4 @@ export interface FilterPopoverContentProps {
33
35
  * The component is used to wrap filter content in a consistent
34
36
  * popover interface across different filter types.
35
37
  */
36
- export declare function FilterPopoverContent({ activeFilterInPopover, availableFilters, activeFilters, getFilterValue, setFilterValue, onFilterSelect, onBackToFilterList, onClose, triggerSource, finalFocus, }: FilterPopoverContentProps): import("react").JSX.Element;
38
+ export declare function FilterPopoverContent({ activeFilterInPopover, operator, availableFilters, activeFilters, getFilterValue, setFilterValue, onFilterSelect, onBackToFilterList, onClose, triggerSource, finalFocus, }: FilterPopoverContentProps): import("react").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import { type ReactNode } from 'react';
2
+ import type { FilterConfig } from '../filters.types';
3
+ interface NestedFilterOptionsProps {
4
+ /** Definition of the filter this control edits; its options nest `children`. */
5
+ filter: FilterConfig;
6
+ /** Current draft value. */
7
+ value: string[];
8
+ /** Whether several options can be chosen. */
9
+ multiple: boolean;
10
+ /** Receives the next draft value. */
11
+ onChange: (value: string[]) => void;
12
+ /** The editor's header, shown at the root level; a drilled level shows its own header and path instead. */
13
+ header: ReactNode;
14
+ }
15
+ /**
16
+ * NestedFilterOptions — the SELECT / MULTI_SELECT editor body for options with
17
+ * `children`. It shows one level at a time through the shared cascader panel,
18
+ * with path search across every level, inside the filter's own popover.
19
+ */
20
+ export declare function NestedFilterOptions({ filter, value, multiple, onChange, header }: NestedFilterOptionsProps): import("react").JSX.Element;
21
+ export {};
@@ -0,0 +1,12 @@
1
+ import type { FilterConfig, FilterOperator, FilterTriggerSource } from '../filters.types';
2
+ interface RangeFilterContentProps {
3
+ filter: FilterConfig;
4
+ operator: FilterOperator;
5
+ value: string[];
6
+ onFilterChange: (value: string[]) => void;
7
+ onBackToFilterList: () => void;
8
+ onClose: () => void;
9
+ triggerSource: FilterTriggerSource;
10
+ }
11
+ export declare function RangeFilterContent({ filter, operator, value, onFilterChange, onBackToFilterList, onClose, triggerSource }: RangeFilterContentProps): import("react").JSX.Element;
12
+ export {};
@@ -22,7 +22,8 @@ interface RegularFilterContentProps {
22
22
  * the trailing edge — only rendered when the user has changed selection.
23
23
  *
24
24
  * Sizes are tuned to feel like a native menu, not a card. Popover width
25
- * stays at ~260-300px so labels read at one glance.
25
+ * stays at ~260-300px so labels read at one glance. Options with `children`
26
+ * replace the flat list with one level at a time (NestedFilterOptions).
26
27
  */
27
28
  export declare function RegularFilterContent({ filter, value, onFilterChange, onBackToFilterList, onClose, triggerSource, }: RegularFilterContentProps): import("react").JSX.Element;
28
29
  export {};
@@ -1,9 +1,31 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { FilterConfig, FilterDependency } from '../filters.types';
2
+ import type { CascaderNode } from '../../../base/cascader';
3
+ import type { FilterConfig, FilterDependency, FilterOperator, FilterOption } from '../filters.types';
4
+ export declare function getRangeBounds(value: readonly string[], operator?: FilterOperator): [min: string, max: string];
5
+ export declare function isCompleteDateRange(value: readonly string[]): boolean;
6
+ /** Filter dates use local calendar days or the app's explicit parameter format. */
7
+ export declare function parseFilterDate(value: string | undefined, pattern?: string): Date | undefined;
3
8
  /**
4
- * Gets the label for a filter option
9
+ * The option for a value and its ancestors, searching nested options.
5
10
  */
6
- export declare function getFilterOptionLabel(filter: FilterConfig, value: string): string | undefined;
11
+ export declare function findFilterOptionPath(options: readonly FilterOption[] | undefined, value: string): FilterOption[];
12
+ /**
13
+ * A sentence-case label inside running text, such as a footer count:
14
+ * "Created date" reads "created date", while acronyms such as "SKU" stay.
15
+ */
16
+ export declare function labelInRunningText(label: string): string;
17
+ /**
18
+ * Whether any option nests children, so the editor shows them level by level.
19
+ */
20
+ export declare function hasNestedFilterOptions(options?: readonly FilterOption[]): boolean;
21
+ /**
22
+ * Nested filter options as cascader nodes.
23
+ */
24
+ export declare function toCascaderNodes(options: readonly FilterOption[]): CascaderNode[];
25
+ /**
26
+ * Gets the label for a filter option; a nested option reads as its path, such as "Europe / Greece".
27
+ */
28
+ export declare function getFilterOptionLabel(filter: FilterConfig, value: string, separator?: string): string | undefined;
7
29
  /**
8
30
  * Gets the icon for a filter option
9
31
  */
@@ -85,6 +85,8 @@ export interface GlobalSearchRenderResultContext {
85
85
  query: string;
86
86
  /** Fired when an entry is activated. */
87
87
  onSelect: () => void;
88
+ /** Id of the option wrapping this row, which the search field names as its active descendant. */
89
+ optionId?: string;
88
90
  }
89
91
  /** Slot map — every consumer-overridable surface. */
90
92
  export interface GlobalSearchSlots<TGroup extends string = string> {
@@ -13,5 +13,15 @@ export interface GlobalSearchInputProps {
13
13
  loading?: boolean;
14
14
  /** Focuses the control on mount. */
15
15
  autoFocus?: boolean;
16
+ /**
17
+ * Whether the results list is showing. Setting it makes the field a
18
+ * combobox (`role="combobox"`, `aria-expanded`), the pattern for a search
19
+ * whose results are navigated with the arrow keys while focus stays here.
20
+ */
21
+ expanded?: boolean;
22
+ /** Id(s) of the results listbox(es) the combobox controls, while expanded. */
23
+ controls?: string;
24
+ /** Id of the highlighted result, announced as the active option. */
25
+ activeDescendant?: string;
16
26
  }
17
27
  export declare const GlobalSearchInput: React.ForwardRefExoticComponent<GlobalSearchInputProps & React.RefAttributes<HTMLInputElement>>;
@@ -10,7 +10,13 @@ export interface GlobalSearchResultRowProps<TGroup extends string = string> {
10
10
  /** Fired when an entry is activated. */
11
11
  onSelect?: () => void;
12
12
  onMouseEnter?: () => void;
13
+ /**
14
+ * Id of this row as an option of a results listbox. When set, the row is a
15
+ * `role="option"` reached through the search field's active descendant
16
+ * rather than by Tab; standalone rows stay plain buttons.
17
+ */
18
+ optionId?: string;
13
19
  /** Merged onto the outermost node. */
14
20
  className?: string;
15
21
  }
16
- export declare function GlobalSearchResultRow<TGroup extends string = string>({ result, active, query, onSelect, onMouseEnter, className, }: GlobalSearchResultRowProps<TGroup>): React.JSX.Element;
22
+ export declare function GlobalSearchResultRow<TGroup extends string = string>({ result, active, query, onSelect, onMouseEnter, optionId, className, }: GlobalSearchResultRowProps<TGroup>): React.JSX.Element;
@@ -2,4 +2,4 @@ import type { MediaLibraryAccessors, MediaLibraryItem, ResolvedMediaLibraryAcces
2
2
  export declare function resolveMediaLibraryAccessors<TItem = MediaLibraryItem>(accessors?: MediaLibraryAccessors<TItem>): ResolvedMediaLibraryAccessors<TItem>;
3
3
  export declare function formatMediaLibrarySize(bytes?: number): string;
4
4
  export declare function getMediaLibraryDimensions<TItem>(item: TItem, accessors: ResolvedMediaLibraryAccessors<TItem>): string;
5
- export declare function useMediaLibrary<TItem = MediaLibraryItem>({ items: itemsProp, fetcher, accessors: accessorsProp, selectionMode, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onUpload, onError, tab: tabProp, defaultTab, onTabChange, view: viewProp, defaultView, onViewChange, query: queryProp, defaultQuery, onQueryChange, type: typeProp, defaultType, onTypeChange, collection: collectionProp, defaultCollection, onCollectionChange, sort: sortProp, defaultSort, onSortChange, uploadOptions: uploadOptionsProp, defaultUploadOptions, onUploadOptionsChange, selecting: selectingProp, defaultSelecting, onSelectingChange, }?: UseMediaLibraryOptions<TItem>): MediaLibraryState<TItem>;
5
+ export declare function useMediaLibrary<TItem = MediaLibraryItem>({ items: itemsProp, fetcher, refreshKey, accessors: accessorsProp, selectionMode, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onUpload, onError, tab: tabProp, defaultTab, onTabChange, view: viewProp, defaultView, onViewChange, query: queryProp, defaultQuery, onQueryChange, type: typeProp, defaultType, onTypeChange, collection: collectionProp, defaultCollection, onCollectionChange, sort: sortProp, defaultSort, onSortChange, uploadOptions: uploadOptionsProp, defaultUploadOptions, onUploadOptionsChange, selecting: selectingProp, defaultSelecting, onSelectingChange, }?: UseMediaLibraryOptions<TItem>): MediaLibraryState<TItem>;
@@ -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, titleSuffix, description, confirmLabel, cancelLabel, selectionMode, density, showMeta, allowUpload, typeFilters, confirmOnSelect, onConfirm, onCancel, onClose, bulkActions, strings: stringsProp, slots, heightClassName, className, items, fetcher, accessors, collections, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onItemReplace, onItemOpen, onUpload, onError, selecting, defaultSelecting, onSelectingChange, 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, bulkActions, strings: stringsProp, slots, heightClassName, className, items, fetcher, refreshKey, accessors, collections, value, defaultValue, onValueChange, onItemUpdate, onItemDelete, onItemReplace, onItemOpen, onUpload, onError, selecting, defaultSelecting, onSelectingChange, 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;
@@ -39,6 +39,8 @@ export interface MediaLibraryStrings {
39
39
  loading: string;
40
40
  errorTitle: string;
41
41
  errorDescription: string;
42
+ /** Retry action in the load error state. Defaults to "Try again". */
43
+ retry?: string;
42
44
  cardDetails: string;
43
45
  /** Toolbar toggle that turns selection mode on or off. */
44
46
  selectMode: string;
@@ -79,6 +81,11 @@ export interface MediaLibraryStrings {
79
81
  replace: string;
80
82
  delete: string;
81
83
  close: string;
84
+ mutationError?: string;
85
+ confirmDeleteTitle?: string;
86
+ confirmDeleteDescription?: string;
87
+ confirmDeleteLabel?: string;
88
+ confirmDeleteError?: string;
82
89
  };
83
90
  upload: {
84
91
  dropTitle: string;
@@ -94,6 +101,7 @@ export interface MediaLibraryStrings {
94
101
  removeFile: string;
95
102
  uploading: string;
96
103
  done: string;
104
+ error?: string;
97
105
  };
98
106
  footer: {
99
107
  pickOne: string;
@@ -89,6 +89,8 @@ export type MediaLibraryFetcher<TItem = MediaLibraryItem> = (params: MediaLibrar
89
89
  export interface MediaLibraryUploadHelpers {
90
90
  /** Aborted when the user cancels or the media-library instance unmounts. */
91
91
  signal: AbortSignal;
92
+ /** IDs in the same order as the files passed to this upload call. */
93
+ fileIds?: readonly string[];
92
94
  setProgress: (fileId: string, progress: number) => void;
93
95
  setFileStatus: (fileId: string, status: MediaLibraryUploadStatus, error?: string) => void;
94
96
  }
@@ -154,6 +156,9 @@ export interface MediaLibraryDetailRenderContext<TItem = MediaLibraryItem> {
154
156
  /** Reads id, name, URL, type, and size off your own asset shape. */
155
157
  accessors: ResolvedMediaLibraryAccessors<TItem>;
156
158
  update: (patch: MediaLibraryItemPatch) => Promise<boolean>;
159
+ /** The most recent failed mutation for this asset. */
160
+ mutationError?: MediaLibraryState<TItem>['mutationError'];
161
+ /** In MediaLibrary, resolves after the user confirms or cancels removal. */
157
162
  remove: () => Promise<boolean>;
158
163
  /** Requests the consumer's replacement workflow for this inspected item, when supported. */
159
164
  replace?: () => void;
@@ -185,7 +190,7 @@ export interface MediaLibraryState<TItem = MediaLibraryItem> {
185
190
  visibleItems: TItem[];
186
191
  /** Ids of the currently selected assets. */
187
192
  selectedIds: string[];
188
- /** The currently selected assets, resolved from their ids. */
193
+ /** The selected assets that have been loaded or uploaded, including earlier server results. */
189
194
  selectedItems: TItem[];
190
195
  /** Ids of the currently selected assets, for fast lookup per row. */
191
196
  selectedSet: Set<string>;
@@ -200,7 +205,22 @@ export interface MediaLibraryState<TItem = MediaLibraryItem> {
200
205
  setSelecting: (selecting: boolean) => void;
201
206
  clearFilters: () => void;
202
207
  loading: boolean;
208
+ /** Whether remote or newly uploaded results are available during a request. */
209
+ hasLoadedResults?: boolean;
210
+ /** Legacy operation error. Cleared when the next load, mutation or upload starts. */
203
211
  error: unknown;
212
+ /** The current fetch failure. Local mode has no load error. */
213
+ loadError?: unknown;
214
+ /** The most recent failed update or delete, with the affected asset ID. */
215
+ mutationError?: {
216
+ itemId: string;
217
+ operation: 'update' | 'delete';
218
+ cause: unknown;
219
+ } | null;
220
+ /** The current upload request failure, separate from individual file statuses. */
221
+ uploadError?: unknown;
222
+ /** Runs the fetcher again for the current query after a failure; does nothing in local mode. */
223
+ retry: () => void;
204
224
  hasFilters: boolean;
205
225
  totalCount: number;
206
226
  filteredCount: number;
@@ -216,9 +236,9 @@ export interface MediaLibraryState<TItem = MediaLibraryItem> {
216
236
  uploading: boolean;
217
237
  startUpload: () => Promise<void>;
218
238
  cancelUpload: () => void;
219
- /** Resolves `false` after rollback when the consumer mutation fails. */
239
+ /** Requires `onItemUpdate`. Resolves `false` when unavailable or after a failed edit rolls back. */
220
240
  updateItem: (item: TItem, patch: MediaLibraryItemPatch) => Promise<boolean>;
221
- /** Resolves `false` after rollback when the consumer mutation fails. */
241
+ /** Requires `onItemDelete`. Resolves `false` when unavailable or after a failed delete rolls back. */
222
242
  removeItem: (item: TItem) => Promise<boolean>;
223
243
  /** Reads id, name, URL, type, and size off your own asset shape. */
224
244
  accessors: ResolvedMediaLibraryAccessors<TItem>;
@@ -244,6 +264,8 @@ export interface UseMediaLibraryOptions<TItem = MediaLibraryItem> {
244
264
  * the returned assets itself.
245
265
  */
246
266
  fetcher?: MediaLibraryFetcher<TItem>;
267
+ /** Change this key to reload the current remote query. Callback identity alone does not reload it. */
268
+ refreshKey?: string | number;
247
269
  /**
248
270
  * Reads id, name, URL, type, and size off your own asset shape. Omit only
249
271
  * when items already match `MediaLibraryItem`.
@@ -257,11 +279,11 @@ export interface UseMediaLibraryOptions<TItem = MediaLibraryItem> {
257
279
  value?: readonly string[];
258
280
  /** Initially selected asset ids, for uncontrolled use. */
259
281
  defaultValue?: readonly string[];
260
- /** Fired with the selected ids and their resolved assets. */
282
+ /** Fired with every selected id and the records loaded or uploaded so far. */
261
283
  onValueChange?: (ids: string[], items: TItem[]) => void;
262
- /** Applies an edit to an asset's metadata. May be awaited. */
284
+ /** Applies a metadata edit. Without it, details are read-only. May be awaited. */
263
285
  onItemUpdate?: (item: TItem, patch: MediaLibraryItemPatch) => void | Promise<void>;
264
- /** Removes an asset. May be awaited. */
286
+ /** Persists removal. The built-in library asks for confirmation and only offers Delete with this callback. */
265
287
  onItemDelete?: (item: TItem) => void | Promise<void>;
266
288
  /** Fired when an entry is uploaded. */
267
289
  onUpload?: MediaLibraryUploadHandler<TItem>;
@@ -358,7 +380,7 @@ export interface MediaLibraryProps<TItem = MediaLibraryItem> extends Omit<Compon
358
380
  * and skipping the footer. Suits single-select pickers.
359
381
  */
360
382
  confirmOnSelect?: boolean;
361
- /** Fired with the chosen assets and their ids. */
383
+ /** Fired with every chosen ID and the selected records loaded or uploaded so far. */
362
384
  onConfirm?: (items: TItem[], ids: string[]) => void;
363
385
  /** Fired when the user backs out without choosing. */
364
386
  onCancel?: () => void;
@@ -419,14 +441,18 @@ export interface MediaResourceGalleryItemRenderContext<TItem = MediaLibraryItem>
419
441
  id: string;
420
442
  /** Zero-based position of the entry in its list. */
421
443
  index: number;
422
- /** Total number of records across all pages. */
444
+ /** Number of attached items in this gallery. */
423
445
  total: number;
424
446
  primary: boolean;
425
447
  /** Reads id, name, URL, type, and size off your own asset shape. */
426
448
  accessors: ResolvedMediaLibraryAccessors<TItem>;
449
+ /** Whether reordering is supported, writable, and an earlier position exists. */
427
450
  canMovePrevious: boolean;
451
+ /** Whether reordering is supported, writable, and a later position exists. */
428
452
  canMoveNext: boolean;
453
+ /** Keeps its callable shape; does nothing in read-only mode or without its handler. */
429
454
  setPrimary: () => void;
455
+ /** Keeps its callable shape; does nothing in read-only mode or without its handler. */
430
456
  remove: () => void;
431
457
  movePrevious: () => void;
432
458
  moveNext: () => void;
@@ -442,11 +468,11 @@ export interface MediaResourceGalleryProps<TItem = MediaLibraryItem> extends Omi
442
468
  description?: ReactNode;
443
469
  /** Id of the asset marked primary — the resource's cover image. */
444
470
  primaryId?: string;
445
- /** Fired when a different asset is promoted to primary. */
471
+ /** Fired when a different asset is promoted to primary. Omit to hide the default primary command. */
446
472
  onPrimaryChange?: (id: string, item: TItem) => void;
447
- /** Fired when an asset is detached from the resource. */
473
+ /** Fired when an asset is detached from the resource. Omit to hide the default remove command. */
448
474
  onRemove?: (id: string, item: TItem) => void;
449
- /** Fired with the next order after a drag. */
475
+ /** Fired with the next order from a move command. Omit to hide default reorder commands. */
450
476
  onReorder?: (ids: string[], items: TItem[]) => void;
451
477
  /** Fired when the user asks to attach more assets — usually opens the library dialog. */
452
478
  onAdd?: () => void;
@@ -528,8 +554,14 @@ export interface MediaLibraryDetailPanelProps<TItem = MediaLibraryItem> {
528
554
  strings: MediaLibraryStrings;
529
555
  onClose: () => void;
530
556
  onUpdate: (patch: MediaLibraryItemPatch) => Promise<boolean>;
531
- /** Fired when an entry is removed. */
557
+ /** Keeps metadata visible while preventing edits. */
558
+ readOnly?: boolean;
559
+ /** A failed mutation for the inspected asset. */
560
+ mutationError?: MediaLibraryState<TItem>['mutationError'];
561
+ /** Requests removal. */
532
562
  onRemove: () => Promise<boolean>;
563
+ /** Offers the Delete action and enables removal from custom details. Defaults to true. */
564
+ allowDelete?: boolean;
533
565
  /** Opens the consumer-owned replacement workflow for the inspected item. */
534
566
  onReplace?: () => void;
535
567
  /** Replaces the default detail rendering. */
@@ -544,6 +576,8 @@ export interface MediaLibraryUploadPanelProps {
544
576
  collections?: readonly MediaLibraryCollectionOption[];
545
577
  /** Whether an upload is in flight. */
546
578
  uploading?: boolean;
579
+ /** Shows an inline notice for a failed upload request. */
580
+ hasUploadError?: boolean;
547
581
  /** Overrides this surface's own copy. */
548
582
  strings: MediaLibraryStrings;
549
583
  onFiles: (files: File[]) => void;
@@ -583,6 +617,10 @@ export interface MediaLibraryToolbarProps {
583
617
  selecting?: boolean;
584
618
  /** Renders the Select toggle, which turns selection mode on or off. */
585
619
  onSelectingChange?: (selecting: boolean) => void;
620
+ /** Result summary, such as the item count; it sits with the view controls. */
621
+ summary?: ReactNode;
622
+ /** Disables every control, for example while the collection failed to load. */
623
+ disabled?: boolean;
586
624
  }
587
625
  export interface MediaLibraryFooterSummaryProps {
588
626
  /** Which tab is showing — browse or upload. */
@@ -1,10 +1,10 @@
1
1
  import type { MediaLibraryCardProps, MediaLibraryDetailPanelProps, MediaLibraryEmptyStateProps, MediaLibraryFooterActionsProps, MediaLibraryFooterProps, MediaLibraryFooterSummaryProps, MediaLibraryListProps, MediaLibraryToolbarProps, MediaLibraryUploadPanelProps } from '../media-library.types';
2
2
  export declare function MediaLibraryEmptyState({ icon, title, description, action, className, }: MediaLibraryEmptyStateProps): import("react").JSX.Element;
3
- export declare function MediaLibraryToolbar({ query, type, typeFilters, collection, sort, view, collections, strings, onQueryChange, onTypeChange, onCollectionChange, onSortChange, onViewChange, onClearFilters, toolbarEnd, selecting, onSelectingChange, }: MediaLibraryToolbarProps): import("react").JSX.Element;
3
+ export declare function MediaLibraryToolbar({ query, type, typeFilters, collection, sort, view, collections, strings, onQueryChange, onTypeChange, onCollectionChange, onSortChange, onViewChange, onClearFilters, toolbarEnd, selecting, onSelectingChange, summary, disabled, }: MediaLibraryToolbarProps): import("react").JSX.Element;
4
4
  export declare function MediaLibraryCard<TItem>({ item, selected, density, showMeta, accessors, strings, onToggle, onDetails, onOpen, selecting, className, }: MediaLibraryCardProps<TItem>): import("react").JSX.Element;
5
5
  export declare function MediaLibraryList<TItem>({ items, selectedSet, accessors, strings, onToggle, onDetails, onOpen, selecting, }: MediaLibraryListProps<TItem>): import("react").JSX.Element;
6
- export declare function MediaLibraryDetailPanel<TItem>({ item, collections, accessors, strings, onClose, onUpdate, onRemove, onReplace, renderDetail, }: MediaLibraryDetailPanelProps<TItem>): import("react").JSX.Element | null;
7
- export declare function MediaLibraryUploadPanel({ stagedFiles, uploadOptions, collections, uploading, strings, onFiles, onRemoveFile, onOptionsChange, empty, }: MediaLibraryUploadPanelProps): import("react").JSX.Element;
6
+ export declare function MediaLibraryDetailPanel<TItem>({ item, collections, accessors, strings, onClose, onUpdate, readOnly, mutationError, onRemove, allowDelete, onReplace, renderDetail, }: MediaLibraryDetailPanelProps<TItem>): import("react").JSX.Element | null;
7
+ export declare function MediaLibraryUploadPanel({ stagedFiles, uploadOptions, collections, uploading, hasUploadError, 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
- export declare function MediaLibraryFooterActions<TItem>({ tab, selectedItems, selectedIds, stagedFiles, uploading, strings, confirmLabel, cancelLabel, onCancel, onConfirm, onUpload, onCancelUpload, className, }: MediaLibraryFooterActionsProps<TItem>): import("react").JSX.Element;
9
+ export declare function MediaLibraryFooterActions<TItem>({ tab, selectedIds, stagedFiles, uploading, strings, confirmLabel, cancelLabel, onCancel, onConfirm, onUpload, onCancelUpload, className, }: MediaLibraryFooterActionsProps<TItem>): import("react").JSX.Element;
10
10
  export declare function MediaLibraryFooter<TItem>({ tab, selectedItems, selectedIds, selectionMode, stagedFiles, uploading, strings, confirmLabel, cancelLabel, onCancel, onConfirm, onClearSelection, onUpload, onCancelUpload, chrome, className, }: MediaLibraryFooterProps<TItem>): import("react").JSX.Element;
@@ -1,4 +1,4 @@
1
- import type { RefObject } from 'react';
1
+ import type { FocusEvent, RefObject } from 'react';
2
2
  import type { Mention, MentionSuggestion } from '../mentions.types';
3
3
  import { type UseMentionsSearchOptions, type UseMentionsSearchReturn } from './use-mentions-search';
4
4
  /**
@@ -25,6 +25,21 @@ export interface UseMentionsReturn<TResource extends string = string> extends Us
25
25
  triggerActive: boolean;
26
26
  /** Wire to the editor's `onCaretChange` to enable inline triggers. */
27
27
  handleCaretChange: () => void;
28
+ /** Whether the inline suggestions panel is open. */
29
+ inlineOpen: boolean;
30
+ /** ID to pass to the inline suggestion list. */
31
+ listboxId: string;
32
+ /** Highlighted option index, or -1 when no option is highlighted. */
33
+ activeIndex: number;
34
+ /** Completion metadata for the editable body while options are available. */
35
+ suggestionPopup?: {
36
+ listboxId: string;
37
+ activeOptionId?: string;
38
+ };
39
+ /** Handles inline navigation and returns whether the editor should consume the key. */
40
+ handleKeyDown: (event: KeyboardEvent) => boolean;
41
+ /** Bind to the wrapper containing both the editor and inline suggestions. */
42
+ handleBlur: (event: FocusEvent<HTMLElement>) => void;
28
43
  /**
29
44
  * Convert a suggestion into a Mention, register it, insert the chip
30
45
  * into the editor (replacing the trigger range when one is active),
@@ -17,6 +17,10 @@ export interface MentionInlineSuggestionsProps<TResource extends string = string
17
17
  suggestionsByKind?: Readonly<Record<string, ReadonlyArray<MentionSuggestion<TResource>>>>;
18
18
  /** Matches for the text typed after the trigger character. */
19
19
  suggestions: ReadonlyArray<MentionSuggestion<TResource>>;
20
+ /** ID shared with the editor's controlled listbox. */
21
+ listboxId?: string;
22
+ /** Highlighted option supplied by the editor's keyboard navigation. */
23
+ activeIndex?: number;
20
24
  /** Replaces the content with the loading state. */
21
25
  loading: boolean;
22
26
  /** Live query the panel echoes in the header; the consumer owns the editor input. */
@@ -33,4 +37,4 @@ export interface MentionInlineSuggestionsProps<TResource extends string = string
33
37
  /** Merged onto the outermost node. */
34
38
  className?: string;
35
39
  }
36
- export declare function MentionInlineSuggestions<TResource extends string = string>({ open, activeKind, setActiveKind, kinds, resources, suggestionsByKind, suggestions, loading, query, onManualKindChange, onSelect, strings: stringsProp, className, }: MentionInlineSuggestionsProps<TResource>): import("react").JSX.Element | null;
40
+ export declare function MentionInlineSuggestions<TResource extends string = string>({ open, activeKind, setActiveKind, kinds, resources, suggestionsByKind, suggestions, listboxId, activeIndex, loading, query, onManualKindChange, onSelect, strings: stringsProp, className, }: MentionInlineSuggestionsProps<TResource>): import("react").JSX.Element | null;
@@ -1,10 +1,3 @@
1
- /**
2
- * Split an HTML string into a list of `html` chunks and `mention`
3
- * placeholders, keyed by the `data-ref-id` attribute the writer set.
4
- *
5
- * Used by `<MentionContent>` to render the body once with React chips
6
- * for the references and `dangerouslySetInnerHTML` for everything else.
7
- */
8
1
  export type MentionHtmlSegment = {
9
2
  kind: 'html';
10
3
  value: string;
@@ -13,4 +6,5 @@ export type MentionHtmlSegment = {
13
6
  refId: string;
14
7
  fallback: string;
15
8
  };
9
+ /** @deprecated Render mentions within the original HTML tree with MentionContent. */
16
10
  export declare function splitHtmlByMentions(html: string): MentionHtmlSegment[];
@@ -11,7 +11,7 @@ export interface UseOverlayVisibilityOptions {
11
11
  defaultOpen?: boolean;
12
12
  /** Controlled visibility. Omit to let the hook own it. */
13
13
  open?: boolean;
14
- /** Fired once for every actual visibility change. */
14
+ /** Fired for each request that differs from the current visibility. */
15
15
  onOpenChange?: (open: boolean) => void;
16
16
  /** Fired after a change to open. */
17
17
  onOpen?: () => void;
@@ -33,7 +33,7 @@ export interface UseOverlayVisibilityGroupOptions<TKey extends string = string>
33
33
  defaultOpen?: Partial<Record<TKey, boolean>>;
34
34
  /** Controlled visibility per key. */
35
35
  open?: Partial<Record<TKey, boolean>>;
36
- /** Fired once for every actual change, with the key, its visibility and the next group state. */
36
+ /** Fired for each requested change, with the key, its visibility and the proposed group state. */
37
37
  onOpenChange?: (key: TKey, open: boolean, state: OverlayVisibilityGroupState<TKey>) => void;
38
38
  /** Opening one key closes the others, for one-at-a-time overlays. Default: `false`. */
39
39
  closeOthersOnOpen?: boolean;
@@ -1,5 +1,5 @@
1
1
  import type { ProductOptionsMatrixProps } from '../products.types';
2
- export declare function ProductOptionsMatrix({ optionGroups, surface, collapsedOptionIds, defaultCollapsedOptionIds, onCollapsedOptionIdsChange, editingOptionId, defaultEditingOptionId, onEditingOptionIdChange, onCreateOption, onEditOption, onDeleteOption, confirmDelete, onAddValue, onDeleteValue, onOptionNameChange, onValueLabelChange, onDoneEditingOption, onSaveEditingOption, onCancelEditingOption, onToggleUsedForVariants, renderOptionActions, renderValue, showHeader: showHeaderProp, showCollapseControls, showInlineActions, showVariantToggle, actions, headerEnd, footerSlot, empty, className, strings: stringsProp, }: ProductOptionsMatrixProps): import("react").JSX.Element;
2
+ export declare function ProductOptionsMatrix({ optionGroups, surface, collapsedOptionIds, defaultCollapsedOptionIds, onCollapsedOptionIdsChange, editingOptionId, defaultEditingOptionId, onEditingOptionIdChange, onCreateOption, onEditOption, onDeleteOption, confirmDelete, onAddValue, onDeleteValue, onOptionNameChange, onValueLabelChange, onDoneEditingOption, onSaveEditingOption, onError, onCancelEditingOption, onToggleUsedForVariants, renderOptionActions, renderValue, showHeader: showHeaderProp, showCollapseControls, showInlineActions, showVariantToggle, actions, headerEnd, footerSlot, empty, className, strings: stringsProp, }: ProductOptionsMatrixProps): import("react").JSX.Element;
3
3
  export declare namespace ProductOptionsMatrix {
4
4
  var displayName: string;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import type { ProductVariantEditorProps } from '../products.types';
2
- export declare function ProductVariantEditor({ value: valueProp, defaultValue, optionFields, statusOptions, onValueChange, onSubmit, onError, onCancel, onDelete, actions, headerEnd, footerSlot, disabled, submitting, className, strings: stringsProp, }: ProductVariantEditorProps): import("react").JSX.Element;
2
+ export declare function ProductVariantEditor({ value: valueProp, defaultValue, optionFields, statusOptions, onValueChange, onSubmit, onError, onCancel, onDelete, actions, headerEnd, footerSlot, visibleFields, errors, formId: formIdProp, showHeader, children, disabled, submitting, className, strings: stringsProp, }: ProductVariantEditorProps): import("react").JSX.Element;
3
3
  export declare namespace ProductVariantEditor {
4
4
  var displayName: string;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import type { ProductVariantsManagerProps } from '../products.types';
2
- export declare function ProductVariantsManager({ optionGroups, variants, visibleColumns, optionCombinationDisplay, cellDisplay, selectionMode, renderOptionCombination, renderCell, selectedVariantIds, defaultSelectedVariantIds, onSelectedVariantIdsChange, onVariantFieldChange, onVariantFieldBlur, collapsedOptionIds, defaultCollapsedOptionIds, onCollapsedOptionIdsChange, editingOptionId, defaultEditingOptionId, onEditingOptionIdChange, onCreateOption, onEditOption, onDeleteOption, onAddValue, onDeleteValue, onOptionNameChange, onValueLabelChange, onDoneEditingOption, onSaveEditingOption, onCancelEditingOption, onToggleUsedForVariants, renderOptionActions, renderValue, onCreateVariant, onGenerateVariants, onSelectVariant, onEditVariant, onDuplicateVariant, onDeleteVariant, onBulkEdit, onBulkApply, onBulkDelete, renderVariantActions, renderBulkActions, groupByOptionId, defaultGroupByOptionId, onGroupByOptionIdChange, onSearchVariants, onFilterVariants, controlsEnd, actions, headerEnd, footerSlot, surface, padding, headerDivider, footerDivider, className, strings: stringsProp, optionsStrings, variantsStrings, }: ProductVariantsManagerProps): import("react").JSX.Element;
2
+ export declare function ProductVariantsManager({ optionGroups, variants, visibleColumns, optionCombinationDisplay, cellDisplay, selectionMode, renderOptionCombination, renderCell, selectedVariantIds, defaultSelectedVariantIds, onSelectedVariantIdsChange, onVariantFieldChange, onVariantFieldBlur, collapsedOptionIds, defaultCollapsedOptionIds, onCollapsedOptionIdsChange, editingOptionId, defaultEditingOptionId, onEditingOptionIdChange, onCreateOption, onEditOption, onDeleteOption, onAddValue, onDeleteValue, onOptionNameChange, onValueLabelChange, onDoneEditingOption, onSaveEditingOption, onError, onCancelEditingOption, onToggleUsedForVariants, renderOptionActions, renderValue, onCreateVariant, onGenerateVariants, onSelectVariant, onEditVariant, onDuplicateVariant, onDeleteVariant, onBulkEdit, onBulkApply, onBulkDelete, renderVariantActions, renderBulkActions, groupByOptionId, defaultGroupByOptionId, onGroupByOptionIdChange, showGroupBy, onSearchVariants, onFilterVariants, controlsEnd, actions, headerEnd, footerSlot, surface, padding, headerDivider, footerDivider, className, strings: stringsProp, optionsStrings, variantsStrings, }: ProductVariantsManagerProps): import("react").JSX.Element;
3
3
  export declare namespace ProductVariantsManager {
4
4
  var displayName: string;
5
5
  }
@@ -109,7 +109,7 @@ export interface ProductOptionsMatrixStrings {
109
109
  /** Title of the confirmation shown when saving would drop option values. */
110
110
  confirmRemoveValuesTitle: string;
111
111
  /**
112
- * Consequence of saving an edit that drops values. Receives `{count}`, the
112
+ * Consequence of saving an edit that drops values. Receives `{{count}}`, the
113
113
  * number of values the save removes.
114
114
  */
115
115
  confirmRemoveValuesDescription: string;
@@ -119,6 +119,14 @@ export interface ProductOptionsMatrixStrings {
119
119
  confirmDeleteOptionDescription: string;
120
120
  doneLabel: string;
121
121
  saveLabel: string;
122
+ /** Pending option-save copy. Optional for compatibility with complete legacy string objects. */
123
+ savingLabel?: string;
124
+ /** Heading for a rejected option save. */
125
+ saveErrorTitle?: string;
126
+ /** Fallback when a rejection has no displayable Error message. */
127
+ saveErrorMessage?: string;
128
+ /** Save command after a rejected option save. */
129
+ retrySaveLabel?: string;
122
130
  cancelLabel: string;
123
131
  expandOptionLabel: string;
124
132
  collapseOptionLabel: string;