themelia-react-ui 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/CHANGELOG.md +190 -1
  2. package/README.md +92 -13
  3. package/dist/{accordion-BRWh3BM1.js → accordion-BRTcsp8J.js} +8 -8
  4. package/dist/accordion-BRTcsp8J.js.map +1 -0
  5. package/dist/{action-menu-Cx3SdfbN.js → action-menu-Drxw_vJk.js} +36 -36
  6. package/dist/action-menu-Drxw_vJk.js.map +1 -0
  7. package/dist/affordance-geometry.generated-CL84ZN9A.js +63 -0
  8. package/dist/affordance-geometry.generated-CL84ZN9A.js.map +1 -0
  9. package/dist/{ai-artifact-DkOArd3-.js → ai-artifact-DLVdK0Py.js} +151 -155
  10. package/dist/ai-artifact-DLVdK0Py.js.map +1 -0
  11. package/dist/{app-shell-BH_bGcE2.js → app-shell-C_fKpljx.js} +11 -10
  12. package/dist/app-shell-C_fKpljx.js.map +1 -0
  13. package/dist/{attachment-DsLgNHXt.js → attachment-DbjUWsP0.js} +12 -12
  14. package/dist/{attachment-DsLgNHXt.js.map → attachment-DbjUWsP0.js.map} +1 -1
  15. package/dist/auth-CAQcasMV.js +723 -0
  16. package/dist/auth-CAQcasMV.js.map +1 -0
  17. package/dist/{avatar-CsnWaYmt.js → avatar-Bu2HhitA.js} +76 -71
  18. package/dist/avatar-Bu2HhitA.js.map +1 -0
  19. package/dist/{badge-BZXZT9wd.js → badge-CzId1Wlm.js} +4 -4
  20. package/dist/{badge-BZXZT9wd.js.map → badge-CzId1Wlm.js.map} +1 -1
  21. package/dist/base/accordion.js +1 -1
  22. package/dist/base/action-menu.js +1 -1
  23. package/dist/base/attachment.js +1 -1
  24. package/dist/base/avatar.js +1 -1
  25. package/dist/base/badge.js +1 -1
  26. package/dist/base/buttons.js +3 -2
  27. package/dist/base/cards.js +3 -3
  28. package/dist/base/carousel.js +25 -27
  29. package/dist/base/carousel.js.map +1 -1
  30. package/dist/base/cascader.js +150 -148
  31. package/dist/base/cascader.js.map +1 -1
  32. package/dist/base/chart.js +1 -1
  33. package/dist/base/choice-inputs.js +3 -2
  34. package/dist/base/code-block.js +1 -1
  35. package/dist/base/combobox.js +1 -1
  36. package/dist/base/command.js +1 -1
  37. package/dist/base/copyable.js +1 -1
  38. package/dist/base/date-pickers.js +3 -3
  39. package/dist/base/display.js +7 -7
  40. package/dist/base/feedback.js +4 -3
  41. package/dist/base/forms-numeric.js +1 -1
  42. package/dist/base/forms.js +2 -2
  43. package/dist/base/inline-edit.js +233 -0
  44. package/dist/base/inline-edit.js.map +1 -0
  45. package/dist/base/item.js +1 -1
  46. package/dist/base/media-gallery.js +1 -1
  47. package/dist/base/navigation.js +6 -6
  48. package/dist/base/popover-menu.js +1 -1
  49. package/dist/base/popover.js +1 -1
  50. package/dist/base/qr-code.js +1 -1
  51. package/dist/base/repeaters.js +33 -33
  52. package/dist/base/repeaters.js.map +1 -1
  53. package/dist/base/sheet.js +1 -1
  54. package/dist/base/sidebar.js +1 -1
  55. package/dist/base/signature-pad.js +83 -81
  56. package/dist/base/signature-pad.js.map +1 -1
  57. package/dist/base/skeleton.js +1 -1
  58. package/dist/base/spinner.js +1 -1
  59. package/dist/base/structure.js +1 -1
  60. package/dist/base/table.js +1 -1
  61. package/dist/base/text-inputs.js +2 -2
  62. package/dist/base/toaster.js +6 -6
  63. package/dist/base/toaster.js.map +1 -1
  64. package/dist/base/tree.js +1 -1
  65. package/dist/base/upload-queue.js +1 -1
  66. package/dist/base/upload.js +3 -3
  67. package/dist/base/value-inputs.js +1 -1
  68. package/dist/blocks/admin.js +134 -134
  69. package/dist/blocks/admin.js.map +1 -1
  70. package/dist/blocks/ai.js +120 -117
  71. package/dist/blocks/ai.js.map +1 -1
  72. package/dist/blocks/analytics/usage-card.js +3 -0
  73. package/dist/blocks/analytics.js +530 -491
  74. package/dist/blocks/analytics.js.map +1 -1
  75. package/dist/blocks/collaboration.js +2 -2
  76. package/dist/blocks/commerce/receipt.js +1 -1
  77. package/dist/blocks/commerce.js +395 -383
  78. package/dist/blocks/commerce.js.map +1 -1
  79. package/dist/blocks/data-display.js +1 -1
  80. package/dist/blocks/onboarding.js +6 -6
  81. package/dist/blocks/onboarding.js.map +1 -1
  82. package/dist/blocks/planning.js +311 -0
  83. package/dist/blocks/planning.js.map +1 -0
  84. package/dist/blocks/timelines.js +1 -1
  85. package/dist/{breadcrumbs-DdQ_I5ra.js → breadcrumbs-BuYz5SDU.js} +9 -8
  86. package/dist/breadcrumbs-BuYz5SDU.js.map +1 -0
  87. package/dist/button-BZDasD04.js +651 -0
  88. package/dist/button-BZDasD04.js.map +1 -0
  89. package/dist/{button-BS6l5JUw.js → button-BZyfTvwm.js} +3 -3
  90. package/dist/button-BZyfTvwm.js.map +1 -0
  91. package/dist/buttons-D_6KJvEE.js +99 -0
  92. package/dist/buttons-D_6KJvEE.js.map +1 -0
  93. package/dist/{cards-BMB0laLG.js → cards-qGSErLw_.js} +12 -12
  94. package/dist/{cards-BMB0laLG.js.map → cards-qGSErLw_.js.map} +1 -1
  95. package/dist/chart-Bsc5BICK.js +150 -0
  96. package/dist/chart-Bsc5BICK.js.map +1 -0
  97. package/dist/checkbox-BQNDjUCh.js +34 -0
  98. package/dist/checkbox-BQNDjUCh.js.map +1 -0
  99. package/dist/choice-inputs-Mk3iWbhr.js +725 -0
  100. package/dist/choice-inputs-Mk3iWbhr.js.map +1 -0
  101. package/dist/{code-block-DIlqzoiD.js → code-block-DzHKRybS.js} +23 -23
  102. package/dist/code-block-DzHKRybS.js.map +1 -0
  103. package/dist/{collapsible-DsnktFNv.js → collapsible-ClvC7Bj3.js} +3 -3
  104. package/dist/{collapsible-DsnktFNv.js.map → collapsible-ClvC7Bj3.js.map} +1 -1
  105. package/dist/{collection-content-C4fthJV_.js → collection-content-D6S8cv_n.js} +3 -3
  106. package/dist/{collection-content-C4fthJV_.js.map → collection-content-D6S8cv_n.js.map} +1 -1
  107. package/dist/{combobox-HDftpzxt.js → combobox-BFnbJJp3.js} +18 -18
  108. package/dist/combobox-BFnbJJp3.js.map +1 -0
  109. package/dist/{combobox-CHD750do.js → combobox-hozNwUcc.js} +313 -316
  110. package/dist/combobox-hozNwUcc.js.map +1 -0
  111. package/dist/{command-D0kWBZfd.js → command-BnmSchli.js} +9 -9
  112. package/dist/command-BnmSchli.js.map +1 -0
  113. package/dist/comments-u5L0OGip.js +1156 -0
  114. package/dist/comments-u5L0OGip.js.map +1 -0
  115. package/dist/components/base/buttons/button-group.recipes.d.ts +1 -1
  116. package/dist/components/base/buttons/button.recipes.d.ts +10 -19
  117. package/dist/components/base/buttons/use-pending-button-focus.d.ts +3 -0
  118. package/dist/components/base/cards/card.recipes.d.ts +13 -5
  119. package/dist/components/base/cards/partials/card-primitives.d.ts +9 -4
  120. package/dist/components/base/cards/smart-card.types.d.ts +3 -1
  121. package/dist/components/base/date-pickers/date-picker.recipes.d.ts +5 -18
  122. package/dist/components/base/date-pickers/datepicker.types.d.ts +3 -0
  123. package/dist/components/base/forms/form-field.d.ts +1 -0
  124. package/dist/components/base/forms/form-sizing.d.ts +3 -3
  125. package/dist/components/base/inline-edit/index.d.ts +2 -0
  126. package/dist/components/base/inline-edit/inline-edit.d.ts +81 -0
  127. package/dist/components/base/inline-edit/inline-edit.recipes.d.ts +6 -0
  128. package/dist/components/base/navigation/tabs.d.ts +3 -5
  129. package/dist/components/base/popover/popover.recipes.d.ts +3 -3
  130. package/dist/components/base/structure/structure.recipes.d.ts +6 -0
  131. package/dist/components/base/table/index.d.ts +1 -1
  132. package/dist/components/base/text-inputs/clear-native-field.d.ts +2 -0
  133. package/dist/components/base/text-inputs/input-trailing-action.d.ts +3 -0
  134. package/dist/components/blocks/analytics/index.d.ts +1 -0
  135. package/dist/components/blocks/analytics/types.d.ts +1 -1
  136. package/dist/components/blocks/analytics/usage-card/index.d.ts +3 -0
  137. package/dist/components/blocks/analytics/usage-card/types.d.ts +52 -0
  138. package/dist/components/blocks/analytics/usage-card/usage-card.d.ts +6 -0
  139. package/dist/components/blocks/analytics/usage-card/usage-card.data.d.ts +19 -0
  140. package/dist/components/blocks/analytics/usage-card/usage-card.strings.d.ts +22 -0
  141. package/dist/components/blocks/collaboration/message/message.recipes.d.ts +12 -0
  142. package/dist/components/blocks/data-display/empty-state/partials/illustrations/document-stack.d.ts +1 -4
  143. package/dist/components/blocks/data-display/empty-state/partials/illustrations/inbox-clean.d.ts +1 -4
  144. package/dist/components/blocks/data-display/empty-state/partials/illustrations/index.d.ts +3 -3
  145. package/dist/components/blocks/data-display/empty-state/partials/illustrations/stacked-cards.d.ts +1 -6
  146. package/dist/components/blocks/planning/index.d.ts +3 -0
  147. package/dist/components/blocks/planning/task-card.d.ts +3 -0
  148. package/dist/components/blocks/planning/task-card.strings.d.ts +15 -0
  149. package/dist/components/blocks/planning/task-card.types.d.ts +66 -0
  150. package/dist/components/features/combobox/components/error-message.d.ts +1 -1
  151. package/dist/components/features/comments/hooks/use-attachment-upload.d.ts +5 -0
  152. package/dist/components/features/filters/facets/search-facet.d.ts +0 -12
  153. package/dist/components/features/filters/facets/tags-facet.d.ts +1 -1
  154. package/dist/components/features/media-library/media-library.d.ts +1 -1
  155. package/dist/components/features/media-library/media-library.types.d.ts +9 -1
  156. package/dist/components/features/media-library/partials/media-library-partials.d.ts +1 -1
  157. package/dist/components/features/overlays/hooks/use-pending-overlay-focus.d.ts +2 -0
  158. package/dist/components/features/overlays/overlays.types.d.ts +5 -4
  159. package/dist/components/features/rich-text-editor/rich-text-editor.recipes.d.ts +2 -1
  160. package/dist/components/features/table/data-table.d.ts +1 -1
  161. package/dist/components/features/table/table.types.d.ts +1 -1
  162. package/dist/components/features/theme-tweaker/theme-provider-settings.d.ts +3 -1
  163. package/dist/components/layout/auth/auth.types.d.ts +1 -0
  164. package/dist/components/layout/page/page.d.ts +0 -1
  165. package/dist/components/layout/page/page.types.d.ts +9 -3
  166. package/dist/components/layout/sidebar/sidebar.context.d.ts +1 -1
  167. package/dist/components/layout/sidebar/sidebar.types.d.ts +4 -0
  168. package/dist/components/layout/workspace/workspace.types.d.ts +3 -0
  169. package/dist/components/typography/heading.d.ts +5 -2
  170. package/dist/components/typography/index.d.ts +1 -1
  171. package/dist/components/typography/text.styles.d.ts +10 -0
  172. package/dist/components/ui/popover.d.ts +1 -1
  173. package/dist/components/ui/sidebar.d.ts +1 -1
  174. package/dist/components/ui/table.d.ts +2 -1
  175. package/dist/container.recipes-D9t8MHR3.js +27 -0
  176. package/dist/container.recipes-D9t8MHR3.js.map +1 -0
  177. package/dist/{containers-CPNyNo1_.js → containers-DqB-bSYE.js} +34 -56
  178. package/dist/containers-DqB-bSYE.js.map +1 -0
  179. package/dist/control-group-recipes-DBXmfh2E.js +21 -0
  180. package/dist/control-group-recipes-DBXmfh2E.js.map +1 -0
  181. package/dist/{copyable-B7SBXJMr.js → copyable-BTSByfmq.js} +6 -6
  182. package/dist/{copyable-B7SBXJMr.js.map → copyable-BTSByfmq.js.map} +1 -1
  183. package/dist/{data-display-b3d1TfL4.js → data-display-Bihs9Ven.js} +542 -329
  184. package/dist/data-display-Bihs9Ven.js.map +1 -0
  185. package/dist/{date-BFNMnrS5.js → date-DOKhJPu7.js} +4 -4
  186. package/dist/{date-BFNMnrS5.js.map → date-DOKhJPu7.js.map} +1 -1
  187. package/dist/{date-picker-DI6kPNof.js → date-picker-DzP5HQq7.js} +492 -472
  188. package/dist/date-picker-DzP5HQq7.js.map +1 -0
  189. package/dist/date-pickers-BpgGz7S-.js +196 -0
  190. package/dist/date-pickers-BpgGz7S-.js.map +1 -0
  191. package/dist/{display-ByI5tkqy.js → display-CS6Hbk18.js} +8 -8
  192. package/dist/{display-ByI5tkqy.js.map → display-CS6Hbk18.js.map} +1 -1
  193. package/dist/{dropdown-menu-BlnyHr-9.js → dropdown-menu-D-boNgGO.js} +7 -7
  194. package/dist/{dropdown-menu-BlnyHr-9.js.map → dropdown-menu-D-boNgGO.js.map} +1 -1
  195. package/dist/features/activities.js +152 -141
  196. package/dist/features/activities.js.map +1 -1
  197. package/dist/features/ai-chat.js +182 -179
  198. package/dist/features/ai-chat.js.map +1 -1
  199. package/dist/features/async-preview.js +9 -9
  200. package/dist/features/async-preview.js.map +1 -1
  201. package/dist/features/combobox.js +1 -1
  202. package/dist/features/comments.js +1 -1
  203. package/dist/features/data-view.js +25 -23
  204. package/dist/features/data-view.js.map +1 -1
  205. package/dist/features/email-composer/engine.js +1 -1
  206. package/dist/features/email-composer.js +103 -104
  207. package/dist/features/email-composer.js.map +1 -1
  208. package/dist/features/event-calendar.js +375 -373
  209. package/dist/features/event-calendar.js.map +1 -1
  210. package/dist/features/filters.js +1 -1
  211. package/dist/features/global-search.js +222 -224
  212. package/dist/features/global-search.js.map +1 -1
  213. package/dist/features/kanban.js +29 -29
  214. package/dist/features/kanban.js.map +1 -1
  215. package/dist/features/map.js +59 -58
  216. package/dist/features/map.js.map +1 -1
  217. package/dist/features/media-library.js +856 -855
  218. package/dist/features/media-library.js.map +1 -1
  219. package/dist/features/mentions.js +1 -1
  220. package/dist/features/overlays.js +1 -1
  221. package/dist/features/products.js +1210 -1209
  222. package/dist/features/products.js.map +1 -1
  223. package/dist/features/questionnaire.js +133 -132
  224. package/dist/features/questionnaire.js.map +1 -1
  225. package/dist/features/resource-assignment.js +29 -31
  226. package/dist/features/resource-assignment.js.map +1 -1
  227. package/dist/features/resource.js +13 -13
  228. package/dist/features/resource.js.map +1 -1
  229. package/dist/features/rich-text-editor.js +2 -2
  230. package/dist/features/schema-form.js +82 -82
  231. package/dist/features/schema-form.js.map +1 -1
  232. package/dist/features/suggestions.js +3 -3
  233. package/dist/features/sync.js +4 -4
  234. package/dist/features/sync.js.map +1 -1
  235. package/dist/features/table.js +1 -1
  236. package/dist/features/theme-tweaker.js +456 -450
  237. package/dist/features/theme-tweaker.js.map +1 -1
  238. package/dist/feedback-CJkUAapr.js +233 -0
  239. package/dist/feedback-CJkUAapr.js.map +1 -0
  240. package/dist/field-affordance-recipes-uKY4MsZ_.js +25 -0
  241. package/dist/field-affordance-recipes-uKY4MsZ_.js.map +1 -0
  242. package/dist/{field-state-recipes-CBTRt9Bt.js → field-state-recipes-DQQpiLWC.js} +3 -3
  243. package/dist/field-state-recipes-DQQpiLWC.js.map +1 -0
  244. package/dist/{filters-qtrcv1hf.js → filters-D6FF8L6s.js} +715 -720
  245. package/dist/filters-D6FF8L6s.js.map +1 -0
  246. package/dist/{form-field-C6W-y2hR.js → form-field-CZwrkP7m.js} +17 -9
  247. package/dist/form-field-CZwrkP7m.js.map +1 -0
  248. package/dist/{form-sizing-39NohSqn.js → form-sizing-QP8aIRaW.js} +10 -6
  249. package/dist/form-sizing-QP8aIRaW.js.map +1 -0
  250. package/dist/{forms-BF-HSbff.js → forms-B5NCbkSC.js} +35 -35
  251. package/dist/{forms-BF-HSbff.js.map → forms-B5NCbkSC.js.map} +1 -1
  252. package/dist/forms-numeric-Crrm80Lm.js +867 -0
  253. package/dist/forms-numeric-Crrm80Lm.js.map +1 -0
  254. package/dist/{header-B8ex54cY.js → header-kxruN3RM.js} +53 -49
  255. package/dist/header-kxruN3RM.js.map +1 -0
  256. package/dist/{hooks-D6UBVzf2.js → hooks-BrlnCwQd.js} +2 -2
  257. package/dist/{hooks-D6UBVzf2.js.map → hooks-BrlnCwQd.js.map} +1 -1
  258. package/dist/{http-CLTVJc5I.js → http-CdEIHyQf.js} +2 -2
  259. package/dist/http-CdEIHyQf.js.map +1 -0
  260. package/dist/{icon-badge-Dv0RYQwj.js → icon-badge-Btc6pQrp.js} +4 -4
  261. package/dist/{icon-badge-Dv0RYQwj.js.map → icon-badge-Btc6pQrp.js.map} +1 -1
  262. package/dist/index.js +2 -2
  263. package/dist/input-SX9V0AL3.js +255 -0
  264. package/dist/input-SX9V0AL3.js.map +1 -0
  265. package/dist/input-vxcaNCYC.js +20 -0
  266. package/dist/input-vxcaNCYC.js.map +1 -0
  267. package/dist/{item-pJ0GsOiJ.js → item-DE4YnuJx.js} +18 -17
  268. package/dist/item-DE4YnuJx.js.map +1 -0
  269. package/dist/layout/app-shell.js +1 -1
  270. package/dist/layout/auth.js +1 -1
  271. package/dist/layout/containers.js +1 -1
  272. package/dist/layout/header.js +1 -1
  273. package/dist/layout/hooks.js +1 -1
  274. package/dist/layout/navigation.js +1 -1
  275. package/dist/layout/page.js +1 -1
  276. package/dist/layout/settings.js +1 -1
  277. package/dist/layout/sidebar.js +2 -2
  278. package/dist/layout/workspace.js +1 -1
  279. package/dist/layout.js +10 -10
  280. package/dist/lib/affordance-geometry.generated.d.ts +44 -4
  281. package/dist/lib/control-group-recipes.d.ts +22 -0
  282. package/dist/lib/field-affordance-recipes.d.ts +35 -2
  283. package/dist/lib/field-state-recipes.d.ts +2 -2
  284. package/dist/lib/navigation-row-recipes.d.ts +3 -2
  285. package/dist/lib/overlay-anatomy-recipes.d.ts +1 -1
  286. package/dist/lib/surface-recipes.d.ts +5 -2
  287. package/dist/lib/token-merge.generated.d.ts +144 -2
  288. package/dist/lib/ui-provider/types.d.ts +4 -2
  289. package/dist/lib/use-prefers-reduced-motion.d.ts +2 -0
  290. package/dist/lib/utils.js +1 -1
  291. package/dist/{media-gallery-Ca4YmvBi.js → media-gallery-DLp3HAz0.js} +75 -74
  292. package/dist/media-gallery-DLp3HAz0.js.map +1 -0
  293. package/dist/{mentions-CRio8mTm.js → mentions-Cl0Kt_Pd.js} +52 -50
  294. package/dist/{mentions-CRio8mTm.js.map → mentions-Cl0Kt_Pd.js.map} +1 -1
  295. package/dist/message-SZUNB1eX.js +127 -0
  296. package/dist/message-SZUNB1eX.js.map +1 -0
  297. package/dist/{navigation-BTrEb5u4.js → navigation-DnQSNMT0.js} +64 -55
  298. package/dist/navigation-DnQSNMT0.js.map +1 -0
  299. package/dist/{navigation-DqEITuD2.js → navigation-DyytsLRB.js} +37 -37
  300. package/dist/navigation-DyytsLRB.js.map +1 -0
  301. package/dist/{navigation-row-recipes-BFpvGPGE.js → navigation-row-recipes-DQEXQcqY.js} +3 -3
  302. package/dist/navigation-row-recipes-DQEXQcqY.js.map +1 -0
  303. package/dist/{number-BNT_BIzJ.js → number-DasMFWEG.js} +4 -4
  304. package/dist/{number-BNT_BIzJ.js.map → number-DasMFWEG.js.map} +1 -1
  305. package/dist/overlays-DUbs1KEi.js +1011 -0
  306. package/dist/overlays-DUbs1KEi.js.map +1 -0
  307. package/dist/{page-BMBGjJY8.js → page-hGmT4nWK.js} +75 -64
  308. package/dist/page-hGmT4nWK.js.map +1 -0
  309. package/dist/{page-header-BH41wCyY.js → page-header-D8nERkn5.js} +9 -9
  310. package/dist/page-header-D8nERkn5.js.map +1 -0
  311. package/dist/{pagination-C29vvt3I.js → pagination-NLGqRirf.js} +20 -20
  312. package/dist/pagination-NLGqRirf.js.map +1 -0
  313. package/dist/{popover-TInGXsjg.js → popover-CghIYdQf.js} +23 -22
  314. package/dist/popover-CghIYdQf.js.map +1 -0
  315. package/dist/{popover-menu-BzqXqE72.js → popover-menu-B4PoWhRl.js} +6 -6
  316. package/dist/{popover-menu-BzqXqE72.js.map → popover-menu-B4PoWhRl.js.map} +1 -1
  317. package/dist/{popover.recipes-zgBhMlUu.js → popover.recipes-QlD4JenO.js} +5 -5
  318. package/dist/popover.recipes-QlD4JenO.js.map +1 -0
  319. package/dist/{primitives-DKPOGVpj.js → primitives-C7ff0QaI.js} +120 -113
  320. package/dist/primitives-C7ff0QaI.js.map +1 -0
  321. package/dist/primitives.js +3 -3
  322. package/dist/progress-BroqrAyV.js +169 -0
  323. package/dist/progress-BroqrAyV.js.map +1 -0
  324. package/dist/{receipt-DYWTQGEc.js → receipt-BuJynLgf.js} +8 -8
  325. package/dist/{receipt-DYWTQGEc.js.map → receipt-BuJynLgf.js.map} +1 -1
  326. package/dist/{rich-text-B7sBAdDG.js → rich-text-DlxDOtf4.js} +4 -4
  327. package/dist/{rich-text-B7sBAdDG.js.map → rich-text-DlxDOtf4.js.map} +1 -1
  328. package/dist/rich-text-editor-BKyG7rWz.js +574 -0
  329. package/dist/rich-text-editor-BKyG7rWz.js.map +1 -0
  330. package/dist/{rich-text-editor.recipes-DxvOE0Lp.js → rich-text-editor.recipes-B72Nfuze.js} +35 -26
  331. package/dist/rich-text-editor.recipes-B72Nfuze.js.map +1 -0
  332. package/dist/{scroll-area-BheMQ270.js → scroll-area-D-pIhEKl.js} +3 -3
  333. package/dist/scroll-area-D-pIhEKl.js.map +1 -0
  334. package/dist/{separator-Gk_WXH-l.js → separator-BNIgG3au.js} +3 -3
  335. package/dist/{separator-Gk_WXH-l.js.map → separator-BNIgG3au.js.map} +1 -1
  336. package/dist/{separator-DO0EbCEm.js → separator-BhtFyo4x.js} +2 -2
  337. package/dist/{separator-DO0EbCEm.js.map → separator-BhtFyo4x.js.map} +1 -1
  338. package/dist/services/actions.js +1 -1
  339. package/dist/{settings-D9f_wdIC.js → settings-DOTOzeZ2.js} +10 -9
  340. package/dist/{settings-D9f_wdIC.js.map → settings-DOTOzeZ2.js.map} +1 -1
  341. package/dist/{sheet-vOUloJ4O.js → sheet-BFhrNehm.js} +11 -11
  342. package/dist/sheet-BFhrNehm.js.map +1 -0
  343. package/dist/{sidebar-CNBKFDRW.js → sidebar-CyR4XKwR.js} +219 -200
  344. package/dist/sidebar-CyR4XKwR.js.map +1 -0
  345. package/dist/{sidebar-C3UKkbC5.js → sidebar-SvGJ0Zwi.js} +63 -58
  346. package/dist/sidebar-SvGJ0Zwi.js.map +1 -0
  347. package/dist/{skeleton-BvRhK8y-.js → skeleton-3F0uhYn3.js} +4 -4
  348. package/dist/{skeleton-BvRhK8y-.js.map → skeleton-3F0uhYn3.js.map} +1 -1
  349. package/dist/{smart-card-B5FcKODh.js → smart-card-DjGVV2xr.js} +206 -199
  350. package/dist/smart-card-DjGVV2xr.js.map +1 -0
  351. package/dist/{spinner-JtlFJ7Nc.js → spinner-Cpf7oRkF.js} +5 -5
  352. package/dist/{spinner-JtlFJ7Nc.js.map → spinner-Cpf7oRkF.js.map} +1 -1
  353. package/dist/{structure-BvW4vG4H.js → structure-CRdqVawd.js} +14 -14
  354. package/dist/{structure-BvW4vG4H.js.map → structure-CRdqVawd.js.map} +1 -1
  355. package/dist/{structure.recipes-DjqnBpwz.js → structure.recipes-Bqhf9oIh.js} +2 -2
  356. package/dist/structure.recipes-Bqhf9oIh.js.map +1 -0
  357. package/dist/style.css +1 -1
  358. package/dist/{surface-recipes-CQfRr-VL.js → surface-recipes-Dd__PD-w.js} +4 -3
  359. package/dist/surface-recipes-Dd__PD-w.js.map +1 -0
  360. package/dist/{table-DnlAJ-xR.js → table-CLtJTxoR.js} +17 -16
  361. package/dist/table-CLtJTxoR.js.map +1 -0
  362. package/dist/table-CcRDZiLP.js +1444 -0
  363. package/dist/table-CcRDZiLP.js.map +1 -0
  364. package/dist/tabs-BNgu7g0u.js +188 -0
  365. package/dist/tabs-BNgu7g0u.js.map +1 -0
  366. package/dist/text-inputs-DsR56TR-.js +330 -0
  367. package/dist/text-inputs-DsR56TR-.js.map +1 -0
  368. package/dist/{text.styles-BwB7vAF2.js → text.styles-Q4sGAIgA.js} +18 -10
  369. package/dist/text.styles-Q4sGAIgA.js.map +1 -0
  370. package/dist/theme.css +77 -115
  371. package/dist/{timelines-CnZ2S_Gr.js → timelines-D1pkt3se.js} +84 -78
  372. package/dist/timelines-D1pkt3se.js.map +1 -0
  373. package/dist/{tree-COD9BGdU.js → tree-BtmYyMZV.js} +8 -8
  374. package/dist/{tree-COD9BGdU.js.map → tree-BtmYyMZV.js.map} +1 -1
  375. package/dist/typography/rich-text.js +1 -1
  376. package/dist/typography-BxQgiZyw.js +96 -0
  377. package/dist/typography-BxQgiZyw.js.map +1 -0
  378. package/dist/typography.js +1 -1
  379. package/dist/{ui-provider-CftIB6TY.js → ui-provider-DRPn3qNl.js} +3 -2
  380. package/dist/ui-provider-DRPn3qNl.js.map +1 -0
  381. package/dist/ui-provider.js +1 -1
  382. package/dist/{upload-DIzw1dx1.js → upload-CDbYw1WN.js} +326 -323
  383. package/dist/upload-CDbYw1WN.js.map +1 -0
  384. package/dist/{upload-queue-xRJ3qDmd.js → upload-queue-CNd_hH_a.js} +25 -25
  385. package/dist/upload-queue-CNd_hH_a.js.map +1 -0
  386. package/dist/usage-card-VyJLUwRr.js +457 -0
  387. package/dist/usage-card-VyJLUwRr.js.map +1 -0
  388. package/dist/utils-BvH9PSmq.js +4275 -0
  389. package/dist/utils-BvH9PSmq.js.map +1 -0
  390. package/dist/value-inputs-D0KCrfVC.js +840 -0
  391. package/dist/value-inputs-D0KCrfVC.js.map +1 -0
  392. package/dist/{workspace-Cbqz4FzN.js → workspace-CcR8r-Nt.js} +115 -122
  393. package/dist/workspace-CcR8r-Nt.js.map +1 -0
  394. package/docs/consumer-skill/SKILL.md +112 -18
  395. package/docs/consumer-skill/examples/analytics.tsx +34 -0
  396. package/docs/consumer-skill/examples/app-layout.tsx +42 -12
  397. package/docs/consumer-skill/examples/detail.tsx +24 -9
  398. package/docs/consumer-skill/examples/manifest.json +27 -1
  399. package/docs/consumer-skill/examples/planning-usage-edit.tsx +29 -0
  400. package/docs/consumer-skill/examples/scoped-directory.tsx +77 -0
  401. package/docs/consumer-skill/examples/website.tsx +56 -0
  402. package/docs/consumer-skill/references/analytics.md +70 -0
  403. package/docs/consumer-skill/references/composition.md +219 -2
  404. package/docs/consumer-skill/references/design-contract.md +37 -10
  405. package/docs/consumer-skill/references/discovery.md +93 -5
  406. package/docs/consumer-skill/references/installation.md +20 -3
  407. package/docs/consumer-skill/references/integration.md +26 -0
  408. package/docs/consumer-skill/references/public-api.json +2416 -388
  409. package/docs/consumer-skill/references/review.md +126 -0
  410. package/docs/consumer-skill/references/theming.md +52 -7
  411. package/docs/consumer-skill/references/tokens.json +177 -9
  412. package/docs/consumer-skill/references/workflows.md +129 -1
  413. package/docs/consumer-skill/scripts/check-composition.mjs +31 -0
  414. package/docs/consumer-skill/scripts/composition-policy.mjs +317 -0
  415. package/docs/consumer-skill/scripts/discovery.mjs +65 -8
  416. package/docs/consumer-skill/scripts/surface-policy.mjs +66 -0
  417. package/package.json +30 -6
  418. package/dist/accordion-BRWh3BM1.js.map +0 -1
  419. package/dist/action-menu-Cx3SdfbN.js.map +0 -1
  420. package/dist/affordance-geometry.generated-DXl-Zb3Z.js +0 -23
  421. package/dist/affordance-geometry.generated-DXl-Zb3Z.js.map +0 -1
  422. package/dist/ai-artifact-DkOArd3-.js.map +0 -1
  423. package/dist/app-shell-BH_bGcE2.js.map +0 -1
  424. package/dist/auth-BDB1V_2q.js +0 -704
  425. package/dist/auth-BDB1V_2q.js.map +0 -1
  426. package/dist/avatar-CsnWaYmt.js.map +0 -1
  427. package/dist/breadcrumbs-DdQ_I5ra.js.map +0 -1
  428. package/dist/button-BS6l5JUw.js.map +0 -1
  429. package/dist/buttons-Co6GavvM.js +0 -674
  430. package/dist/buttons-Co6GavvM.js.map +0 -1
  431. package/dist/chart-DVfcwQu6.js +0 -149
  432. package/dist/chart-DVfcwQu6.js.map +0 -1
  433. package/dist/choice-inputs-CavA-SGV.js +0 -644
  434. package/dist/choice-inputs-CavA-SGV.js.map +0 -1
  435. package/dist/code-block-DIlqzoiD.js.map +0 -1
  436. package/dist/combobox-CHD750do.js.map +0 -1
  437. package/dist/combobox-HDftpzxt.js.map +0 -1
  438. package/dist/command-D0kWBZfd.js.map +0 -1
  439. package/dist/comments-CvYeglMS.js +0 -1132
  440. package/dist/comments-CvYeglMS.js.map +0 -1
  441. package/dist/containers-CPNyNo1_.js.map +0 -1
  442. package/dist/data-display-b3d1TfL4.js.map +0 -1
  443. package/dist/date-picker-DI6kPNof.js.map +0 -1
  444. package/dist/date-pickers-ByP6Cv2z.js +0 -224
  445. package/dist/date-pickers-ByP6Cv2z.js.map +0 -1
  446. package/dist/feedback-a9j9J-9A.js +0 -391
  447. package/dist/feedback-a9j9J-9A.js.map +0 -1
  448. package/dist/field-affordance-recipes-CHdUtn2Z.js +0 -17
  449. package/dist/field-affordance-recipes-CHdUtn2Z.js.map +0 -1
  450. package/dist/field-state-recipes-CBTRt9Bt.js.map +0 -1
  451. package/dist/filters-qtrcv1hf.js.map +0 -1
  452. package/dist/form-field-C6W-y2hR.js.map +0 -1
  453. package/dist/form-sizing-39NohSqn.js.map +0 -1
  454. package/dist/forms-numeric-Y15Bg5Nr.js +0 -867
  455. package/dist/forms-numeric-Y15Bg5Nr.js.map +0 -1
  456. package/dist/header-B8ex54cY.js.map +0 -1
  457. package/dist/http-CLTVJc5I.js.map +0 -1
  458. package/dist/input-DMorJiTI.js +0 -202
  459. package/dist/input-DMorJiTI.js.map +0 -1
  460. package/dist/input-ci9fIgFH.js +0 -20
  461. package/dist/input-ci9fIgFH.js.map +0 -1
  462. package/dist/item-pJ0GsOiJ.js.map +0 -1
  463. package/dist/media-gallery-Ca4YmvBi.js.map +0 -1
  464. package/dist/message-B5-6LeYl.js +0 -108
  465. package/dist/message-B5-6LeYl.js.map +0 -1
  466. package/dist/navigation-BTrEb5u4.js.map +0 -1
  467. package/dist/navigation-DqEITuD2.js.map +0 -1
  468. package/dist/navigation-row-recipes-BFpvGPGE.js.map +0 -1
  469. package/dist/overlays-DBqV0J_V.js +0 -982
  470. package/dist/overlays-DBqV0J_V.js.map +0 -1
  471. package/dist/page-BMBGjJY8.js.map +0 -1
  472. package/dist/page-header-BH41wCyY.js.map +0 -1
  473. package/dist/pagination-C29vvt3I.js.map +0 -1
  474. package/dist/popover-TInGXsjg.js.map +0 -1
  475. package/dist/popover.recipes-zgBhMlUu.js.map +0 -1
  476. package/dist/primitives-DKPOGVpj.js.map +0 -1
  477. package/dist/rich-text-editor-BZSJchAF.js +0 -575
  478. package/dist/rich-text-editor-BZSJchAF.js.map +0 -1
  479. package/dist/rich-text-editor.recipes-DxvOE0Lp.js.map +0 -1
  480. package/dist/scroll-area-BheMQ270.js.map +0 -1
  481. package/dist/select-B2mb-qN2.js +0 -108
  482. package/dist/select-B2mb-qN2.js.map +0 -1
  483. package/dist/sheet-vOUloJ4O.js.map +0 -1
  484. package/dist/sidebar-C3UKkbC5.js.map +0 -1
  485. package/dist/sidebar-CNBKFDRW.js.map +0 -1
  486. package/dist/smart-card-B5FcKODh.js.map +0 -1
  487. package/dist/structure.recipes-DjqnBpwz.js.map +0 -1
  488. package/dist/surface-recipes-CQfRr-VL.js.map +0 -1
  489. package/dist/table-DnlAJ-xR.js.map +0 -1
  490. package/dist/table-ghtAQ-JJ.js +0 -1424
  491. package/dist/table-ghtAQ-JJ.js.map +0 -1
  492. package/dist/tabs-DY09eoZg.js +0 -187
  493. package/dist/tabs-DY09eoZg.js.map +0 -1
  494. package/dist/text-inputs-BhOcedTo.js +0 -331
  495. package/dist/text-inputs-BhOcedTo.js.map +0 -1
  496. package/dist/text.styles-BwB7vAF2.js.map +0 -1
  497. package/dist/timelines-CnZ2S_Gr.js.map +0 -1
  498. package/dist/typography-Cv8MT-82.js +0 -96
  499. package/dist/typography-Cv8MT-82.js.map +0 -1
  500. package/dist/ui-provider-CftIB6TY.js.map +0 -1
  501. package/dist/upload-DIzw1dx1.js.map +0 -1
  502. package/dist/upload-queue-xRJ3qDmd.js.map +0 -1
  503. package/dist/utils-C2EKeIw3.js +0 -72
  504. package/dist/utils-C2EKeIw3.js.map +0 -1
  505. package/dist/value-inputs-Co1fu-xv.js +0 -824
  506. package/dist/value-inputs-Co1fu-xv.js.map +0 -1
  507. package/dist/workspace-Cbqz4FzN.js.map +0 -1
@@ -1,52 +1,53 @@
1
1
  "use client";
2
2
  import { interpolateString as e, useStrings as t } from "../lib/strings.js";
3
- import { t as n } from "../utils-C2EKeIw3.js";
4
- import { n as r } from "../buttons-Co6GavvM.js";
5
- import { a as i, r as a } from "../typography-Cv8MT-82.js";
6
- import { t as o } from "../structure-BvW4vG4H.js";
7
- import { t as s } from "../badge-BZXZT9wd.js";
8
- import { d as c } from "../text-inputs-BhOcedTo.js";
9
- import { l } from "../data-display-b3d1TfL4.js";
10
- import { S as u, _ as d, a as f, b as p, d as m, h, l as g, p as _, r as v, s as y, t as b, y as x } from "../ai-artifact-DkOArd3-.js";
11
- import { useCallback as S, useEffect as C, useRef as w, useState as T } from "react";
12
- import { Fragment as E, jsx as D, jsxs as O } from "react/jsx-runtime";
13
- import { ArrowDown as k, ArrowUp as A, Loader2 as j, Paperclip as M, Sparkles as N, Square as P, X as F } from "lucide-react";
3
+ import { t as n } from "../utils-BvH9PSmq.js";
4
+ import { a as r, r as i } from "../typography-BxQgiZyw.js";
5
+ import { t as a } from "../button-BZDasD04.js";
6
+ import { t as o } from "../structure-CRdqVawd.js";
7
+ import { t as s } from "../badge-CzId1Wlm.js";
8
+ import { d as c } from "../text-inputs-DsR56TR-.js";
9
+ import { l } from "../data-display-Bihs9Ven.js";
10
+ import { c as u, l as d, s as f } from "../message-SZUNB1eX.js";
11
+ import { S as p, _ as m, a as h, b as g, d as _, h as v, l as y, p as b, r as x, s as S, t as C, y as w } from "../ai-artifact-DLVdK0Py.js";
12
+ import { useCallback as T, useEffect as E, useRef as D, useState as O } from "react";
13
+ import { Fragment as k, jsx as A, jsxs as j } from "react/jsx-runtime";
14
+ import { ArrowDown as M, ArrowUp as N, Loader2 as P, Paperclip as F, Sparkles as I, Square as L, X as R } from "lucide-react";
14
15
  //#region src/components/features/ai-chat/ai-chat.strings.ts
15
- var I = {
16
+ var z = {
16
17
  placeholder: "Ask anything…",
17
18
  attachAria: "Attach files",
18
19
  submitAria: "Send message",
19
20
  stopAria: "Stop generating",
20
21
  modelPickerAria: "Choose model",
21
22
  hint: "Press {{submitKey}} to send · {{newlineKey}} for newline"
22
- }, L = {
23
+ }, B = {
23
24
  transcriptAria: "Conversation messages",
24
25
  empty: "No messages yet.",
25
26
  scrollToBottom: "Jump to latest",
26
27
  scrollToBottomAria: "Scroll to bottom"
27
- }, R = {
28
+ }, V = {
28
29
  header: "In queue",
29
30
  cancelAria: "Remove from queue",
30
31
  queuedLabel: "Queued",
31
32
  runningLabel: "Running"
32
- }, z = { header: "Try" }, B = { pending: "Thinking…" }, V = {
33
- prompt: I,
34
- conversation: L,
35
- queue: R,
36
- suggestions: z,
37
- message: B,
33
+ }, H = { header: "Try" }, U = { pending: "Thinking…" }, W = {
34
+ prompt: z,
35
+ conversation: B,
36
+ queue: V,
37
+ suggestions: H,
38
+ message: U,
38
39
  emptyTitle: "Start a conversation",
39
40
  emptyDescription: "Ask a question, share context, or attach a file to get going.",
40
41
  disabledAnnouncement: "Chat is disabled"
41
42
  };
42
43
  //#endregion
43
44
  //#region src/components/features/ai-chat/partials/ai-chat-attachments-strip.tsx
44
- function H({ attachments: e, onRemove: t, onOpen: r, className: i }) {
45
- return e.length === 0 ? null : /* @__PURE__ */ D(o, {
45
+ function G({ attachments: e, onRemove: t, onOpen: r, className: i }) {
46
+ return e.length === 0 ? null : /* @__PURE__ */ A(o, {
46
47
  direction: "horizontal",
47
48
  gap: "sm",
48
49
  className: n("ai-chat-attachments-strip--component", i),
49
- children: e.map((e) => /* @__PURE__ */ D(h, {
50
+ children: e.map((e) => /* @__PURE__ */ A(v, {
50
51
  name: e.name,
51
52
  meta: e.meta,
52
53
  kind: e.kind,
@@ -59,17 +60,17 @@ function H({ attachments: e, onRemove: t, onOpen: r, className: i }) {
59
60
  }, e.id))
60
61
  });
61
62
  }
62
- H.displayName = "AiChatAttachmentsStrip";
63
+ G.displayName = "AiChatAttachmentsStrip";
63
64
  //#endregion
64
65
  //#region src/components/features/ai-chat/hooks/use-ai-chat-scroll.ts
65
- function U({ threshold: e = 80, dependency: t, disableAutoScroll: n = !1 } = {}) {
66
- let r = w(null), i = w(null), [a, o] = T(!0), s = S((e = "smooth") => {
66
+ function K({ threshold: e = 80, dependency: t, disableAutoScroll: n = !1 } = {}) {
67
+ let r = D(null), i = D(null), [a, o] = O(!0), s = T((e = "smooth") => {
67
68
  i.current?.scrollIntoView({
68
69
  behavior: e,
69
70
  block: "end"
70
71
  });
71
72
  }, []);
72
- return C(() => {
73
+ return E(() => {
73
74
  let t = r.current;
74
75
  if (!t) return;
75
76
  let n = () => {
@@ -77,7 +78,7 @@ function U({ threshold: e = 80, dependency: t, disableAutoScroll: n = !1 } = {})
77
78
  o(n <= e);
78
79
  };
79
80
  return n(), t.addEventListener("scroll", n, { passive: !0 }), () => t.removeEventListener("scroll", n);
80
- }, [e]), C(() => {
81
+ }, [e]), E(() => {
81
82
  if (n || !a) return;
82
83
  let e = window.requestAnimationFrame(() => s("auto"));
83
84
  return () => window.cancelAnimationFrame(e);
@@ -90,61 +91,61 @@ function U({ threshold: e = 80, dependency: t, disableAutoScroll: n = !1 } = {})
90
91
  }
91
92
  //#endregion
92
93
  //#region src/components/features/ai-chat/partials/ai-chat-conversation.tsx
93
- function W({ messages: e, renderMessage: a, intro: s, footer: c, empty: l, disableAutoScroll: u, className: d, strings: f }) {
94
- let p = t(L, f), { containerRef: m, endRef: h, isAtBottom: g, scrollToBottom: _ } = U({
94
+ function q({ messages: e, renderMessage: i, intro: s, footer: c, empty: l, disableAutoScroll: u, className: d, strings: f }) {
95
+ let p = t(B, f), { containerRef: m, endRef: h, isAtBottom: g, scrollToBottom: _ } = K({
95
96
  dependency: e.length,
96
97
  disableAutoScroll: u
97
98
  }), v = e.length === 0 && !s;
98
- return /* @__PURE__ */ O("div", {
99
+ return /* @__PURE__ */ j("div", {
99
100
  className: n("ai-chat-conversation--component relative flex h-full min-h-0 flex-col", d),
100
- children: [/* @__PURE__ */ O("div", {
101
+ children: [/* @__PURE__ */ j("div", {
101
102
  ref: m,
102
103
  tabIndex: 0,
103
104
  "aria-label": p.transcriptAria,
104
105
  className: "flex-1 overflow-y-auto p-surface focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-ring",
105
106
  children: [
106
- !!s && /* @__PURE__ */ D("div", {
107
+ !!s && /* @__PURE__ */ A("div", {
107
108
  className: "mb-space-xl",
108
109
  children: s
109
110
  }),
110
- v ? l ?? /* @__PURE__ */ D("div", {
111
+ v ? l ?? /* @__PURE__ */ A("div", {
111
112
  className: "flex h-full items-center justify-center p-surface-lg",
112
- children: /* @__PURE__ */ D(i, {
113
+ children: /* @__PURE__ */ A(r, {
113
114
  type: "secondary",
114
115
  children: p.empty
115
116
  })
116
- }) : /* @__PURE__ */ D(o, {
117
- render: /* @__PURE__ */ D("ol", {}),
117
+ }) : /* @__PURE__ */ A(o, {
118
+ render: /* @__PURE__ */ A("ol", {}),
118
119
  gap: "xl",
119
- className: "ai-chat-conversation--messages",
120
+ className: "ai-chat-conversation--messages m-0 list-none p-0 font-sans",
120
121
  children: e.map((t, n) => {
121
122
  let r = {
122
123
  isLast: n === e.length - 1,
123
124
  index: n
124
125
  };
125
- return /* @__PURE__ */ D("li", { children: a(t, r) }, t.id);
126
+ return /* @__PURE__ */ A("li", { children: i(t, r) }, t.id);
126
127
  })
127
128
  }),
128
- !!c && /* @__PURE__ */ D("div", {
129
+ !!c && /* @__PURE__ */ A("div", {
129
130
  className: "mt-space-xl",
130
131
  children: c
131
132
  }),
132
- /* @__PURE__ */ D("div", {
133
+ /* @__PURE__ */ A("div", {
133
134
  ref: h,
134
135
  "aria-hidden": !0,
135
136
  className: "h-px"
136
137
  })
137
138
  ]
138
- }), !g && /* @__PURE__ */ D("div", {
139
+ }), !g && /* @__PURE__ */ A("div", {
139
140
  className: "ai-chat-conversation--jump flex shrink-0 justify-center border-t border-border/50 bg-background/95 px-space-md py-space-sm",
140
- children: /* @__PURE__ */ O(r, {
141
+ children: /* @__PURE__ */ j(a, {
141
142
  type: "button",
142
143
  tone: "secondary",
143
144
  buttonStyle: "solid",
144
145
  "aria-label": p.scrollToBottomAria,
145
146
  onClick: () => _("smooth"),
146
- className: n("rounded-full shadow-sm max-sm:size-action-sm max-sm:p-0", "border border-border/60"),
147
- children: [/* @__PURE__ */ D(k, { className: "size-icon-md" }), /* @__PURE__ */ D(i, {
147
+ className: n("shadow-sm max-sm:size-action-sm max-sm:p-0", "border border-border/60"),
148
+ children: [/* @__PURE__ */ A(M, { className: "size-icon-md" }), /* @__PURE__ */ A(r, {
148
149
  tag: "span",
149
150
  size: "pxs",
150
151
  className: "max-sm:sr-only",
@@ -154,89 +155,90 @@ function W({ messages: e, renderMessage: a, intro: s, footer: c, empty: l, disab
154
155
  })]
155
156
  });
156
157
  }
157
- W.displayName = "AiChatConversation";
158
+ q.displayName = "AiChatConversation";
158
159
  //#endregion
159
160
  //#region src/components/features/ai-chat/partials/ai-chat-empty-state.tsx
160
- function G({ title: e = "Start a conversation", description: t, icon: r = N, below: i, className: a }) {
161
- let s = /* @__PURE__ */ D(r, {
161
+ function J({ title: e = "Start a conversation", description: t, icon: r = I, below: i, className: a }) {
162
+ let s = /* @__PURE__ */ A(r, {
162
163
  className: "size-icon",
163
164
  "aria-hidden": "true"
164
165
  });
165
- return /* @__PURE__ */ O(o, {
166
+ return /* @__PURE__ */ j(o, {
166
167
  gap: "md",
167
168
  align: "center",
168
169
  justify: "center",
169
170
  className: n("ai-chat-empty-state--component h-full text-center", a),
170
- children: [/* @__PURE__ */ D(l, {
171
+ children: [/* @__PURE__ */ A(l, {
171
172
  title: e,
172
173
  description: t ?? !1,
173
174
  media: s,
174
175
  mediaVariant: "icon",
175
176
  padding: "md",
176
177
  className: "w-full"
177
- }), !!i && /* @__PURE__ */ D("div", {
178
+ }), !!i && /* @__PURE__ */ A("div", {
178
179
  className: "w-full max-w-2xl",
179
180
  children: i
180
181
  })]
181
182
  });
182
183
  }
183
- G.displayName = "AiChatEmptyState";
184
+ J.displayName = "AiChatEmptyState";
184
185
  //#endregion
185
186
  //#region src/components/features/ai-chat/partials/ai-chat-message.tsx
186
- function K({ message: e, onCopy: r, onRegenerate: i, onAttachmentOpen: a, className: s, strings: c }) {
187
- let l = t(B, c), d = [], f = [];
188
- for (let t of e.parts) t.type === "text" ? d.push(t) : f.push(t);
189
- let p = d.map((e) => e.type === "text" ? e.plain ?? J(e.content) : "").filter(Boolean).join("\n") || void 0, m = e.pending ? /* @__PURE__ */ D(x, { children: l.pending }) : d.length === 0 && f.length > 0 ? null : /* @__PURE__ */ D(o, {
187
+ function Y({ message: e, onCopy: r, onRegenerate: i, onAttachmentOpen: a, className: s, strings: c }) {
188
+ let l = t(U, c), m = e.role === "user" ? "end" : "start", h = [], g = [];
189
+ for (let t of e.parts) t.type === "text" ? h.push(t) : g.push(t);
190
+ let _ = h.map((e) => e.type === "text" ? e.plain ?? X(e.content) : "").filter(Boolean).join("\n") || void 0, v = e.pending ? /* @__PURE__ */ A(w, { children: l.pending }) : h.length === 0 && g.length > 0 ? null : /* @__PURE__ */ A(o, {
190
191
  gap: "md",
191
- children: d.map((e, t) => e.type === "text" ? /* @__PURE__ */ D("div", {
192
+ children: h.map((e, t) => e.type === "text" ? /* @__PURE__ */ A("div", {
192
193
  className: "whitespace-pre-wrap",
193
194
  children: e.content
194
195
  }, t) : null)
195
- });
196
- return /* @__PURE__ */ O(o, {
196
+ }), y = v !== null || e.pending, b = y && (e.avatar == null || f(e.avatar)), x = b ? d[m] : "col-start-1";
197
+ return /* @__PURE__ */ j(o, {
197
198
  gap: "md",
198
- className: n("ai-chat-message--component", s),
199
+ className: n("ai-chat-message--component grid min-w-0", b ? u[m] : "grid-cols-1", s),
199
200
  children: [
200
- (m !== null || e.pending) && /* @__PURE__ */ D(u, {
201
+ y && /* @__PURE__ */ A(p, {
201
202
  role: e.role,
202
203
  avatar: e.avatar,
203
204
  authorName: e.authorName,
204
205
  timestamp: e.timestamp,
205
- plainText: p,
206
+ plainText: _,
206
207
  loading: e.loading,
207
- onCopy: p ? r ?? (() => void 0) : void 0,
208
+ className: "col-span-full grid-cols-subgrid",
209
+ onCopy: _ ? r ?? (() => void 0) : void 0,
208
210
  onRegenerate: i,
209
- children: m
211
+ children: v
210
212
  }),
211
- f.length > 0 && /* @__PURE__ */ D(o, {
213
+ g.length > 0 && /* @__PURE__ */ A(o, {
212
214
  gap: "md",
213
- className: n(e.role === "user" ? "pr-9 sm:pl-12" : "pl-9 sm:pr-12"),
214
- children: f.map((e, t) => /* @__PURE__ */ D(q, {
215
+ className: n("ai-chat-message--parts min-w-0", x),
216
+ children: g.map((e, t) => /* @__PURE__ */ A(ee, {
215
217
  part: e,
216
218
  onAttachmentOpen: a
217
219
  }, t))
218
220
  }),
219
- !!e.trailing && /* @__PURE__ */ D("div", {
220
- className: n(e.role === "user" ? "pr-9 sm:pl-12" : "pl-9 sm:pr-12"),
221
+ !!e.trailing && /* @__PURE__ */ A("div", {
222
+ className: n("ai-chat-message--trailing min-w-0", x),
221
223
  children: e.trailing
222
224
  })
223
225
  ]
224
226
  });
225
227
  }
226
- K.displayName = "AiChatMessage";
227
- function q({ part: e, onAttachmentOpen: t }) {
228
+ Y.displayName = "AiChatMessage";
229
+ function ee({ part: e, onAttachmentOpen: t }) {
228
230
  switch (e.type) {
229
- case "text": return /* @__PURE__ */ D(i, { children: e.content });
230
- case "reasoning": return /* @__PURE__ */ D(y, {
231
+ case "text": return /* @__PURE__ */ A(r, { children: e.content });
232
+ case "reasoning": return /* @__PURE__ */ A(S, {
231
233
  streaming: e.streaming,
232
234
  durationSeconds: e.durationSeconds,
233
235
  children: e.content
234
236
  });
235
- case "chain-of-thought": return /* @__PURE__ */ D(f, {
237
+ case "chain-of-thought": return /* @__PURE__ */ A(h, {
236
238
  steps: e.steps,
237
239
  streaming: e.streaming
238
240
  });
239
- case "tool": return /* @__PURE__ */ D(p, {
241
+ case "tool": return /* @__PURE__ */ A(g, {
240
242
  name: e.name,
241
243
  status: e.status,
242
244
  icon: e.icon,
@@ -246,24 +248,24 @@ function q({ part: e, onAttachmentOpen: t }) {
246
248
  durationMs: e.durationMs,
247
249
  defaultExpanded: e.defaultExpanded
248
250
  });
249
- case "code": return /* @__PURE__ */ D(d, {
251
+ case "code": return /* @__PURE__ */ A(m, {
250
252
  code: e.code,
251
253
  language: e.language,
252
254
  filename: e.filename,
253
255
  showLineNumbers: e.showLineNumbers,
254
256
  highlightLines: e.highlightLines
255
257
  });
256
- case "attachments": return /* @__PURE__ */ D(H, {
258
+ case "attachments": return /* @__PURE__ */ A(G, {
257
259
  attachments: e.items,
258
260
  onOpen: t ? (e) => t(e.id) : void 0
259
261
  });
260
- case "sources": return /* @__PURE__ */ D(g, {
262
+ case "sources": return /* @__PURE__ */ A(y, {
261
263
  sources: e.items,
262
264
  variant: e.variant,
263
265
  defaultExpanded: e.defaultExpanded
264
266
  });
265
- case "task": return /* @__PURE__ */ D(v, { task: e.task });
266
- case "artifact": return /* @__PURE__ */ D(b, {
267
+ case "task": return /* @__PURE__ */ A(x, { task: e.task });
268
+ case "artifact": return /* @__PURE__ */ A(C, {
267
269
  title: e.title,
268
270
  subtitle: e.subtitle,
269
271
  icon: e.icon,
@@ -273,7 +275,7 @@ function q({ part: e, onAttachmentOpen: t }) {
273
275
  onDownload: e.onDownload,
274
276
  children: e.body
275
277
  });
276
- case "confirmation": return /* @__PURE__ */ D(m, {
278
+ case "confirmation": return /* @__PURE__ */ A(_, {
277
279
  title: e.title,
278
280
  description: e.description,
279
281
  tone: e.tone,
@@ -282,99 +284,99 @@ function q({ part: e, onAttachmentOpen: t }) {
282
284
  onApprove: e.onApprove,
283
285
  onReject: e.onReject
284
286
  });
285
- case "custom": return /* @__PURE__ */ D(E, { children: e.render() });
287
+ case "custom": return /* @__PURE__ */ A(k, { children: e.render() });
286
288
  default: return null;
287
289
  }
288
290
  }
289
- function J(e) {
290
- return typeof e == "string" || typeof e == "number" ? String(e) : Array.isArray(e) ? e.map(J).join("") : "";
291
+ function X(e) {
292
+ return typeof e == "string" || typeof e == "number" ? String(e) : Array.isArray(e) ? e.map(X).join("") : "";
291
293
  }
292
294
  //#endregion
293
295
  //#region src/components/features/ai-chat/partials/ai-chat-prompt-input.tsx
294
- function Y({ value: a, onValueChange: o, onSubmit: s, onStop: l, streaming: u = !1, disabled: d = !1, attachments: f = [], onRemoveAttachment: p, onAttach: m, showAttach: h, leadingActions: g, trailingActions: _, hideHint: v = !1, minRows: y = 1, maxRows: b = 8, autoFocus: x = !1, submitKeyLabel: C = "↩", className: T, strings: E }) {
295
- let k = t(I, E), j = w(null), N = !u && !d && (a.trim().length > 0 || f.length > 0), F = S(() => {
296
- N && s?.({
297
- text: a,
296
+ function Z({ value: i, onValueChange: o, onSubmit: s, onStop: l, streaming: u = !1, disabled: d = !1, attachments: f = [], onRemoveAttachment: p, onAttach: m, showAttach: h, leadingActions: g, trailingActions: _, hideHint: v = !1, minRows: y = 1, maxRows: b = 8, autoFocus: x = !1, submitKeyLabel: S = "↩", className: C, strings: w }) {
297
+ let E = t(z, w), O = D(null), k = !u && !d && (i.trim().length > 0 || f.length > 0), M = T(() => {
298
+ k && s?.({
299
+ text: i,
298
300
  attachments: f
299
301
  });
300
302
  }, [
301
- N,
303
+ k,
302
304
  s,
303
- a,
305
+ i,
304
306
  f
305
- ]), L = S((e) => {
306
- e.key === "Enter" && !e.shiftKey && !e.nativeEvent.isComposing && (e.preventDefault(), F());
307
- }, [F]), R = h ?? !!m;
308
- return /* @__PURE__ */ O("div", {
309
- className: n("ai-chat-prompt-input--component", "rounded-radius-lg border border-border bg-card transition-colors duration-150", "focus-within:border-foreground/20 focus-within:ring-2 focus-within:ring-ring/30", d && "opacity-60 pointer-events-none", T),
307
+ ]), P = T((e) => {
308
+ e.key === "Enter" && !e.shiftKey && !e.nativeEvent.isComposing && (e.preventDefault(), M());
309
+ }, [M]), I = h ?? !!m;
310
+ return /* @__PURE__ */ j("div", {
311
+ className: n("ai-chat-prompt-input--component", "rounded-radius border border-border bg-card transition-colors duration-150", "focus-within:border-foreground/20 focus-within:ring-2 focus-within:ring-ring", d && "opacity-60 pointer-events-none", C),
310
312
  children: [
311
- f.length > 0 && /* @__PURE__ */ D("div", {
313
+ f.length > 0 && /* @__PURE__ */ A("div", {
312
314
  className: "border-b border-border/60 p-surface-xs",
313
- children: /* @__PURE__ */ D(H, {
315
+ children: /* @__PURE__ */ A(G, {
314
316
  attachments: f,
315
317
  onRemove: p
316
318
  })
317
319
  }),
318
- /* @__PURE__ */ D(c, {
319
- ref: j,
320
- value: a,
320
+ /* @__PURE__ */ A(c, {
321
+ ref: O,
322
+ value: i,
321
323
  onChange: (e) => o(e.target.value),
322
- onKeyDown: L,
323
- placeholder: k.placeholder,
324
+ onKeyDown: P,
325
+ placeholder: E.placeholder,
324
326
  autoResize: !0,
325
327
  minRows: y,
326
328
  maxRows: b,
327
329
  autoFocus: x,
328
330
  disabled: d,
329
- className: n("!border-0 !bg-transparent !shadow-none focus-visible:!ring-0 resize-none px-control py-2.5")
331
+ className: n("!border-0 !bg-transparent !shadow-none focus-visible:!ring-0 resize-none")
330
332
  }),
331
- /* @__PURE__ */ O("div", {
333
+ /* @__PURE__ */ j("div", {
332
334
  className: "flex items-center gap-space-xs border-t border-border/60 px-surface-xs py-space-sm",
333
335
  children: [
334
336
  g,
335
- R && /* @__PURE__ */ D(r, {
337
+ I && /* @__PURE__ */ A(a, {
336
338
  type: "button",
337
339
  tone: "secondary",
338
340
  buttonStyle: "ghost",
339
341
  size: "sm",
340
342
  iconOnly: !0,
341
- "aria-label": k.attachAria,
343
+ "aria-label": E.attachAria,
342
344
  onClick: m,
343
345
  disabled: d,
344
- children: /* @__PURE__ */ D(M, { className: "size-icon" })
346
+ children: /* @__PURE__ */ A(F, { className: "size-icon" })
345
347
  }),
346
- /* @__PURE__ */ O("div", {
348
+ /* @__PURE__ */ j("div", {
347
349
  className: "ml-auto flex items-center gap-space-xs",
348
- children: [_, u ? /* @__PURE__ */ D(r, {
350
+ children: [_, u ? /* @__PURE__ */ A(a, {
349
351
  type: "button",
350
352
  tone: "secondary",
351
353
  buttonStyle: "solid",
352
354
  size: "sm",
353
355
  iconOnly: !0,
354
- "aria-label": k.stopAria,
356
+ "aria-label": E.stopAria,
355
357
  onClick: l,
356
- children: /* @__PURE__ */ D(P, { className: "size-icon-md fill-current" })
357
- }) : /* @__PURE__ */ D(r, {
358
+ children: /* @__PURE__ */ A(L, { className: "size-icon-md fill-current" })
359
+ }) : /* @__PURE__ */ A(a, {
358
360
  type: "button",
359
361
  tone: "primary",
360
362
  buttonStyle: "solid",
361
363
  size: "sm",
362
364
  iconOnly: !0,
363
- "aria-label": k.submitAria,
364
- onClick: F,
365
- disabled: !N,
366
- children: /* @__PURE__ */ D(A, { className: "size-icon" })
365
+ "aria-label": E.submitAria,
366
+ onClick: M,
367
+ disabled: !k,
368
+ children: /* @__PURE__ */ A(N, { className: "size-icon" })
367
369
  })]
368
370
  })
369
371
  ]
370
372
  }),
371
- !v && /* @__PURE__ */ D("div", {
373
+ !v && /* @__PURE__ */ A("div", {
372
374
  className: "px-surface-xs pb-surface-xs",
373
- children: /* @__PURE__ */ D(i, {
375
+ children: /* @__PURE__ */ A(r, {
374
376
  size: "xs",
375
377
  type: "discrete",
376
- children: e(k.hint, {
377
- submitKey: C,
378
+ children: e(E.hint, {
379
+ submitKey: S,
378
380
  newlineKey: "⇧↩"
379
381
  })
380
382
  })
@@ -382,42 +384,43 @@ function Y({ value: a, onValueChange: o, onSubmit: s, onStop: l, streaming: u =
382
384
  ]
383
385
  });
384
386
  }
385
- Y.displayName = "AiChatPromptInput";
387
+ Z.displayName = "AiChatPromptInput";
386
388
  //#endregion
387
389
  //#region src/components/features/ai-chat/partials/ai-chat-queue.tsx
388
- function X({ items: e, hideHeader: c = !1, onCancel: l, className: u, strings: d }) {
389
- let f = t(R, d);
390
- return e.length === 0 ? null : /* @__PURE__ */ O("div", {
390
+ function Q({ items: e, hideHeader: c = !1, onCancel: l, className: u, strings: d }) {
391
+ let f = t(V, d);
392
+ return e.length === 0 ? null : /* @__PURE__ */ j(o, {
393
+ gap: "sm",
391
394
  className: n("ai-chat-queue--component", "rounded-radius border border-border/60 bg-muted/20 p-surface-xs", u),
392
- children: [!c && /* @__PURE__ */ O(a, {
393
- className: "mb-1.5 px-1",
395
+ children: [!c && /* @__PURE__ */ j(i, {
396
+ className: "px-1",
394
397
  children: [
395
398
  f.header,
396
399
  " · ",
397
400
  e.length
398
401
  ]
399
- }), /* @__PURE__ */ D(o, {
400
- render: /* @__PURE__ */ D("ul", {}),
402
+ }), /* @__PURE__ */ A(o, {
403
+ render: /* @__PURE__ */ A("ul", {}),
401
404
  gap: "xs",
402
- className: "ai-chat-queue--list",
405
+ className: "ai-chat-queue--list m-0 list-none p-0 font-sans",
403
406
  children: e.map((e) => {
404
407
  let t = e.status ?? "queued";
405
- return /* @__PURE__ */ O("li", {
406
- className: "flex items-center gap-space-md rounded-radius-md bg-card px-space-md py-space-sm",
408
+ return /* @__PURE__ */ j("li", {
409
+ className: "flex items-center gap-space-md rounded-radius bg-card px-space-md py-space-sm",
407
410
  children: [
408
- t === "running" ? /* @__PURE__ */ D(j, { className: "size-icon-md shrink-0 animate-spin text-primary-accent" }) : /* @__PURE__ */ D("span", {
411
+ t === "running" ? /* @__PURE__ */ A(P, { className: "size-icon-md shrink-0 animate-spin text-primary-accent" }) : /* @__PURE__ */ A("span", {
409
412
  "aria-hidden": !0,
410
413
  className: "size-2 shrink-0 rounded-full bg-muted-foreground/50"
411
414
  }),
412
- /* @__PURE__ */ D(i, {
415
+ /* @__PURE__ */ A(r, {
413
416
  className: "flex-1 truncate",
414
417
  children: e.label
415
418
  }),
416
- /* @__PURE__ */ D(s, {
419
+ /* @__PURE__ */ A(s, {
417
420
  tone: t === "running" ? "primary" : "secondary",
418
421
  children: t === "running" ? f.runningLabel : f.queuedLabel
419
422
  }),
420
- (!!e.onCancel || !!l) && /* @__PURE__ */ D(r, {
423
+ (!!e.onCancel || !!l) && /* @__PURE__ */ A(a, {
421
424
  type: "button",
422
425
  tone: "secondary",
423
426
  buttonStyle: "ghost",
@@ -427,7 +430,7 @@ function X({ items: e, hideHeader: c = !1, onCancel: l, className: u, strings: d
427
430
  onClick: () => {
428
431
  e.onCancel?.(), l?.(e.id);
429
432
  },
430
- children: /* @__PURE__ */ D(F, { className: "size-icon-md" })
433
+ children: /* @__PURE__ */ A(R, { className: "size-icon-md" })
431
434
  })
432
435
  ]
433
436
  }, e.id);
@@ -435,28 +438,28 @@ function X({ items: e, hideHeader: c = !1, onCancel: l, className: u, strings: d
435
438
  })]
436
439
  });
437
440
  }
438
- X.displayName = "AiChatQueue";
441
+ Q.displayName = "AiChatQueue";
439
442
  //#endregion
440
443
  //#region src/components/features/ai-chat/partials/ai-chat-suggestions-row.tsx
441
- function Z({ suggestions: e, onPick: o, hideHeader: s = !1, className: c, strings: l }) {
442
- let u = t(z, l);
443
- return e.length === 0 ? null : /* @__PURE__ */ O("div", {
444
+ function $({ suggestions: e, onPick: o, hideHeader: s = !1, className: c, strings: l }) {
445
+ let u = t(H, l);
446
+ return e.length === 0 ? null : /* @__PURE__ */ j("div", {
444
447
  className: n("ai-chat-suggestions-row--component flex items-center gap-space-md", c),
445
- children: [!s && /* @__PURE__ */ O("div", {
448
+ children: [!s && /* @__PURE__ */ j("div", {
446
449
  className: "inline-flex shrink-0 items-center gap-space-sm",
447
- children: [/* @__PURE__ */ D(N, { className: "size-icon-md text-muted-foreground" }), /* @__PURE__ */ D(a, { children: u.header })]
448
- }), /* @__PURE__ */ D("div", {
449
- className: "-mx-1 flex flex-1 items-center gap-space-sm overflow-x-auto px-1 py-0.5 [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
450
+ children: [/* @__PURE__ */ A(I, { className: "size-icon-md text-muted-foreground" }), /* @__PURE__ */ A(i, { children: u.header })]
451
+ }), /* @__PURE__ */ A("div", {
452
+ className: "flex min-w-0 flex-1 items-center gap-space-sm overflow-x-auto p-space-xs [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",
450
453
  children: e.map((e) => {
451
454
  let t = e.icon;
452
- return /* @__PURE__ */ O(r, {
455
+ return /* @__PURE__ */ j(a, {
453
456
  type: "button",
454
457
  tone: "secondary",
455
458
  buttonStyle: "ghost",
456
459
  size: "sm",
457
460
  onClick: () => o?.(e),
458
- className: n("h-auto shrink-0 gap-space-sm rounded-full border border-border/60 bg-card px-control-sm py-1", "transition-[border-color,background] duration-150", "hover:border-foreground/20 hover:bg-muted/40"),
459
- children: [!!t && /* @__PURE__ */ D(t, { className: "size-icon-sm text-muted-foreground" }), /* @__PURE__ */ D(i, {
461
+ className: n("shrink-0 gap-space-sm border border-border/60 bg-card", "transition-[border-color,background] duration-150", "hover:border-foreground/20 hover:bg-muted/40"),
462
+ children: [!!t && /* @__PURE__ */ A(t, { className: "size-icon-sm text-muted-foreground" }), /* @__PURE__ */ A(r, {
460
463
  tag: "span",
461
464
  weight: "medium",
462
465
  children: e.label
@@ -466,30 +469,30 @@ function Z({ suggestions: e, onPick: o, hideHeader: s = !1, className: c, string
466
469
  })]
467
470
  });
468
471
  }
469
- Z.displayName = "AiChatSuggestionsRow";
472
+ $.displayName = "AiChatSuggestionsRow";
470
473
  //#endregion
471
474
  //#region src/components/features/ai-chat/ai-chat.tsx
472
- function Q({ messages: e, inputValue: r, onInputChange: a, onSubmit: s, onStop: c, streaming: l = !1, disabled: u = !1, attachments: d = [], onRemoveAttachment: f, onAttach: p, showAttach: m, agent: h, headerActions: g, queue: v = [], onCancelQueueItem: y, suggestions: b = [], onPickSuggestion: x, onMessageCopy: C, onMessageRegenerate: w, onAttachmentOpen: E, disableAutoScroll: k, slots: A, strings: j, className: M }) {
473
- let N = t(V, j), [, P] = T(0), F = S((e, t) => A?.renderMessage ? A.renderMessage(e, t) : /* @__PURE__ */ D(K, {
475
+ function te({ messages: e, inputValue: i, onInputChange: a, onSubmit: s, onStop: c, streaming: l = !1, disabled: u = !1, attachments: d = [], onRemoveAttachment: f, onAttach: p, showAttach: m, agent: h, headerActions: g, queue: _ = [], onCancelQueueItem: v, suggestions: y = [], onPickSuggestion: x, onMessageCopy: S, onMessageRegenerate: C, onAttachmentOpen: w, disableAutoScroll: E, slots: D, strings: k, className: M }) {
476
+ let N = t(W, k), [, P] = O(0), F = T((e, t) => D?.renderMessage ? D.renderMessage(e, t) : /* @__PURE__ */ A(Y, {
474
477
  className: "ai-chat-message--component",
475
478
  message: e,
476
479
  strings: N.message,
477
- onCopy: C ? () => C(e) : void 0,
478
- onRegenerate: w ? () => w(e) : void 0,
479
- onAttachmentOpen: E ? (t) => E(e.id, t) : void 0
480
+ onCopy: S ? () => S(e) : void 0,
481
+ onRegenerate: C ? () => C(e) : void 0,
482
+ onAttachmentOpen: w ? (t) => w(e.id, t) : void 0
480
483
  }), [
481
- E,
482
- C,
483
484
  w,
484
- A,
485
+ S,
486
+ C,
487
+ D,
485
488
  N.message
486
- ]), I = A?.header ?? (h ? /* @__PURE__ */ D("div", {
489
+ ]), I = D?.header ?? (h ? /* @__PURE__ */ A("div", {
487
490
  className: "border-b border-border bg-card p-surface",
488
- children: /* @__PURE__ */ O(o, {
491
+ children: /* @__PURE__ */ j(o, {
489
492
  direction: "horizontal",
490
493
  align: "center",
491
494
  gap: "lg",
492
- children: [/* @__PURE__ */ D(_, {
495
+ children: [/* @__PURE__ */ A(b, {
493
496
  name: h.name,
494
497
  icon: h.icon,
495
498
  avatar: h.avatar,
@@ -497,24 +500,24 @@ function Q({ messages: e, inputValue: r, onInputChange: a, onSubmit: s, onStop:
497
500
  tone: h.tone,
498
501
  status: h.status,
499
502
  variant: "inline"
500
- }), !!g && /* @__PURE__ */ D("div", {
503
+ }), !!g && /* @__PURE__ */ A("div", {
501
504
  className: "ml-auto flex items-center gap-space-xs",
502
505
  children: g
503
506
  })]
504
507
  })
505
- }) : null), L = A?.empty ?? (e.length === 0 ? /* @__PURE__ */ D(G, {
508
+ }) : null), L = D?.empty ?? (e.length === 0 ? /* @__PURE__ */ A(J, {
506
509
  title: N.emptyTitle,
507
510
  description: N.emptyDescription
508
- }) : null), R = A?.queue ?? (v.length > 0 ? /* @__PURE__ */ D(X, {
509
- items: v,
510
- onCancel: y,
511
+ }) : null), R = D?.queue ?? (_.length > 0 ? /* @__PURE__ */ A(Q, {
512
+ items: _,
513
+ onCancel: v,
511
514
  strings: N.queue
512
- }) : null), z = A?.suggestions ?? (b.length > 0 ? /* @__PURE__ */ D(Z, {
513
- suggestions: b,
515
+ }) : null), z = D?.suggestions ?? (y.length > 0 ? /* @__PURE__ */ A($, {
516
+ suggestions: y,
514
517
  onPick: x,
515
518
  strings: N.suggestions
516
- }) : null), B = A?.input ?? /* @__PURE__ */ D(Y, {
517
- value: r,
519
+ }) : null), B = D?.input ?? /* @__PURE__ */ A(Z, {
520
+ value: i,
518
521
  onValueChange: a,
519
522
  onSubmit: (e) => {
520
523
  s?.(e), P((e) => e + 1);
@@ -528,22 +531,22 @@ function Q({ messages: e, inputValue: r, onInputChange: a, onSubmit: s, onStop:
528
531
  showAttach: m,
529
532
  strings: N.prompt
530
533
  });
531
- return /* @__PURE__ */ O("div", {
532
- className: n("ai-chat--component flex h-full flex-col overflow-hidden rounded-radius-lg border border-border bg-background", M),
534
+ return /* @__PURE__ */ j("div", {
535
+ className: n("ai-chat--component flex h-full flex-col overflow-hidden rounded-radius border border-border bg-background", M),
533
536
  children: [
534
537
  I,
535
- /* @__PURE__ */ D(W, {
538
+ /* @__PURE__ */ A(q, {
536
539
  messages: e,
537
540
  renderMessage: F,
538
- intro: A?.intro,
539
- footer: A?.belowMessages,
541
+ intro: D?.intro,
542
+ footer: D?.belowMessages,
540
543
  empty: L,
541
- disableAutoScroll: k,
544
+ disableAutoScroll: E,
542
545
  strings: N.conversation
543
546
  }),
544
- (R || z || B) && /* @__PURE__ */ D("div", {
547
+ (R || z || B) && /* @__PURE__ */ A("div", {
545
548
  className: "border-t border-border bg-card/60 p-surface",
546
- children: /* @__PURE__ */ O(o, {
549
+ children: /* @__PURE__ */ j(o, {
547
550
  gap: "md",
548
551
  children: [
549
552
  R,
@@ -552,7 +555,7 @@ function Q({ messages: e, inputValue: r, onInputChange: a, onSubmit: s, onStop:
552
555
  ]
553
556
  })
554
557
  }),
555
- u && /* @__PURE__ */ D(i, {
558
+ u && /* @__PURE__ */ A(r, {
556
559
  className: "sr-only",
557
560
  "aria-live": "polite",
558
561
  children: N.disabledAnnouncement
@@ -560,8 +563,8 @@ function Q({ messages: e, inputValue: r, onInputChange: a, onSubmit: s, onStop:
560
563
  ]
561
564
  });
562
565
  }
563
- Q.displayName = "AiChat";
566
+ te.displayName = "AiChat";
564
567
  //#endregion
565
- export { Q as AiChat, H as AiChatAttachmentsStrip, W as AiChatConversation, G as AiChatEmptyState, K as AiChatMessageView, Y as AiChatPromptInput, X as AiChatQueue, Z as AiChatSuggestionsRow, L as defaultAiChatConversationStrings, B as defaultAiChatMessageStrings, I as defaultAiChatPromptInputStrings, R as defaultAiChatQueueStrings, V as defaultAiChatStrings, z as defaultAiChatSuggestionsStrings, U as useAiChatScroll };
568
+ export { te as AiChat, G as AiChatAttachmentsStrip, q as AiChatConversation, J as AiChatEmptyState, Y as AiChatMessageView, Z as AiChatPromptInput, Q as AiChatQueue, $ as AiChatSuggestionsRow, B as defaultAiChatConversationStrings, U as defaultAiChatMessageStrings, z as defaultAiChatPromptInputStrings, V as defaultAiChatQueueStrings, W as defaultAiChatStrings, H as defaultAiChatSuggestionsStrings, K as useAiChatScroll };
566
569
 
567
570
  //# sourceMappingURL=ai-chat.js.map