@mieweb/ui 0.6.1 → 0.7.0-dev.178

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 (450) hide show
  1. package/README.md +90 -53
  2. package/dist/CsvBlock-2A5VEDD3.cjs +15 -0
  3. package/dist/CsvBlock-2A5VEDD3.cjs.map +1 -0
  4. package/dist/CsvBlock-D6PWAJ5X.js +6 -0
  5. package/dist/CsvBlock-D6PWAJ5X.js.map +1 -0
  6. package/dist/HtmlPreviewBlock-PEHTJ6C3.js +6 -0
  7. package/dist/HtmlPreviewBlock-PEHTJ6C3.js.map +1 -0
  8. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs +15 -0
  9. package/dist/HtmlPreviewBlock-SYXCV5RH.cjs.map +1 -0
  10. package/dist/MedicationEditor-Bp4NLy7y.d.cts +352 -0
  11. package/dist/MedicationEditor-Bp4NLy7y.d.ts +352 -0
  12. package/dist/MermaidBlock-7NK3AVK2.js +6 -0
  13. package/dist/MermaidBlock-7NK3AVK2.js.map +1 -0
  14. package/dist/MermaidBlock-AFXNP5NK.cjs +15 -0
  15. package/dist/MermaidBlock-AFXNP5NK.cjs.map +1 -0
  16. package/dist/SurveyBlock-6KRNKFH5.cjs +15 -0
  17. package/dist/SurveyBlock-6KRNKFH5.cjs.map +1 -0
  18. package/dist/SurveyBlock-NNDGXGG4.js +6 -0
  19. package/dist/SurveyBlock-NNDGXGG4.js.map +1 -0
  20. package/dist/ag-grid.cjs +6 -6
  21. package/dist/ag-grid.cjs.map +1 -1
  22. package/dist/ag-grid.js +2 -2
  23. package/dist/ag-grid.js.map +1 -1
  24. package/dist/brands/index.cjs +17 -17
  25. package/dist/brands/index.js +4 -4
  26. package/dist/chunk-372IIHUA.cjs +2017 -0
  27. package/dist/chunk-372IIHUA.cjs.map +1 -0
  28. package/dist/{chunk-2DS3RJ2D.js → chunk-3TERETXH.js} +112 -3
  29. package/dist/chunk-3TERETXH.js.map +1 -0
  30. package/dist/chunk-44CK4CT2.cjs +336 -0
  31. package/dist/chunk-44CK4CT2.cjs.map +1 -0
  32. package/dist/{chunk-FSBFQBNE.cjs → chunk-4GXECTPS.cjs} +2 -2
  33. package/dist/{chunk-FSBFQBNE.cjs.map → chunk-4GXECTPS.cjs.map} +1 -1
  34. package/dist/chunk-4LVPQ44A.js +228 -0
  35. package/dist/chunk-4LVPQ44A.js.map +1 -0
  36. package/dist/{chunk-6555OYRU.js → chunk-5BQE6BEL.js} +2 -2
  37. package/dist/{chunk-6555OYRU.js.map → chunk-5BQE6BEL.js.map} +1 -1
  38. package/dist/chunk-62ZOA6PX.js +31 -0
  39. package/dist/chunk-62ZOA6PX.js.map +1 -0
  40. package/dist/chunk-63KVQHGQ.cjs +1802 -0
  41. package/dist/chunk-63KVQHGQ.cjs.map +1 -0
  42. package/dist/chunk-6AHYYWVB.js +78 -0
  43. package/dist/chunk-6AHYYWVB.js.map +1 -0
  44. package/dist/chunk-6I7IDZ4A.js +51 -0
  45. package/dist/chunk-6I7IDZ4A.js.map +1 -0
  46. package/dist/chunk-6ZYE6JUK.cjs +80 -0
  47. package/dist/chunk-6ZYE6JUK.cjs.map +1 -0
  48. package/dist/chunk-7QXG5BBB.cjs +164 -0
  49. package/dist/chunk-7QXG5BBB.cjs.map +1 -0
  50. package/dist/chunk-7WMSUXOQ.js +182 -0
  51. package/dist/chunk-7WMSUXOQ.js.map +1 -0
  52. package/dist/chunk-7XUN3OQT.js +3 -0
  53. package/dist/{chunk-V2DF2GUE.js.map → chunk-7XUN3OQT.js.map} +1 -1
  54. package/dist/chunk-7ZVTLTJF.js +109 -0
  55. package/dist/chunk-7ZVTLTJF.js.map +1 -0
  56. package/dist/chunk-AES2BKEW.cjs +229 -0
  57. package/dist/chunk-AES2BKEW.cjs.map +1 -0
  58. package/dist/chunk-AFKKJEV5.cjs +72 -0
  59. package/dist/chunk-AFKKJEV5.cjs.map +1 -0
  60. package/dist/chunk-AT732HC6.cjs +4 -0
  61. package/dist/{chunk-74K3RRU7.cjs.map → chunk-AT732HC6.cjs.map} +1 -1
  62. package/dist/chunk-BB4WQ4LV.cjs +137 -0
  63. package/dist/chunk-BB4WQ4LV.cjs.map +1 -0
  64. package/dist/chunk-BIT27PPD.js +49 -0
  65. package/dist/chunk-BIT27PPD.js.map +1 -0
  66. package/dist/chunk-BLPCYP4D.cjs +537 -0
  67. package/dist/chunk-BLPCYP4D.cjs.map +1 -0
  68. package/dist/chunk-BT3ZQJGT.cjs +130 -0
  69. package/dist/chunk-BT3ZQJGT.cjs.map +1 -0
  70. package/dist/chunk-BX6BTDTR.js +34 -0
  71. package/dist/chunk-BX6BTDTR.js.map +1 -0
  72. package/dist/chunk-C2544GKZ.js +313 -0
  73. package/dist/chunk-C2544GKZ.js.map +1 -0
  74. package/dist/chunk-C7RVKV25.cjs +25 -0
  75. package/dist/chunk-C7RVKV25.cjs.map +1 -0
  76. package/dist/chunk-CKD554XR.cjs +100 -0
  77. package/dist/chunk-CKD554XR.cjs.map +1 -0
  78. package/dist/chunk-CVC4NWFA.cjs +154 -0
  79. package/dist/chunk-CVC4NWFA.cjs.map +1 -0
  80. package/dist/{chunk-K3IVCUPP.js → chunk-CYMZ2QS5.js} +2 -2
  81. package/dist/{chunk-K3IVCUPP.js.map → chunk-CYMZ2QS5.js.map} +1 -1
  82. package/dist/{chunk-FRT6RQND.cjs → chunk-DAPZPT5N.cjs} +92 -56
  83. package/dist/chunk-DAPZPT5N.cjs.map +1 -0
  84. package/dist/chunk-DHKYGVP7.js +3 -0
  85. package/dist/{chunk-LEMY57MI.js.map → chunk-DHKYGVP7.js.map} +1 -1
  86. package/dist/chunk-DLNJLCNO.cjs +101 -0
  87. package/dist/chunk-DLNJLCNO.cjs.map +1 -0
  88. package/dist/chunk-DUPR6FEL.js +43 -0
  89. package/dist/chunk-DUPR6FEL.js.map +1 -0
  90. package/dist/{chunk-4FALCEJI.cjs → chunk-EL2RSQTJ.cjs} +2 -2
  91. package/dist/{chunk-4FALCEJI.cjs.map → chunk-EL2RSQTJ.cjs.map} +1 -1
  92. package/dist/chunk-ERLPVXOV.js +22 -0
  93. package/dist/chunk-ERLPVXOV.js.map +1 -0
  94. package/dist/chunk-FIWKHLWY.js +197 -0
  95. package/dist/chunk-FIWKHLWY.js.map +1 -0
  96. package/dist/chunk-FJH7P5WG.js +513 -0
  97. package/dist/chunk-FJH7P5WG.js.map +1 -0
  98. package/dist/chunk-FSGEDDF2.cjs +33 -0
  99. package/dist/chunk-FSGEDDF2.cjs.map +1 -0
  100. package/dist/chunk-GLXTVCHN.cjs +4 -0
  101. package/dist/{chunk-4ZU53GNR.cjs.map → chunk-GLXTVCHN.cjs.map} +1 -1
  102. package/dist/chunk-HRS6W74P.js +1568 -0
  103. package/dist/chunk-HRS6W74P.js.map +1 -0
  104. package/dist/chunk-I2W24RHW.js +196 -0
  105. package/dist/chunk-I2W24RHW.js.map +1 -0
  106. package/dist/chunk-I6CY5C6A.js +12 -0
  107. package/dist/chunk-I6CY5C6A.js.map +1 -0
  108. package/dist/chunk-IQ4KQJAO.js +3 -0
  109. package/dist/chunk-IQ4KQJAO.js.map +1 -0
  110. package/dist/chunk-IWDQPSJN.cjs +1452 -0
  111. package/dist/chunk-IWDQPSJN.cjs.map +1 -0
  112. package/dist/chunk-J7KWQJOB.js +14 -0
  113. package/dist/chunk-J7KWQJOB.js.map +1 -0
  114. package/dist/{chunk-R25H4N4Z.js → chunk-J7Z7467B.js} +92 -56
  115. package/dist/chunk-J7Z7467B.js.map +1 -0
  116. package/dist/{chunk-NINI4WVS.cjs → chunk-JC6Y3LGF.cjs} +297 -84
  117. package/dist/chunk-JC6Y3LGF.cjs.map +1 -0
  118. package/dist/chunk-JCNPVK74.cjs +347 -0
  119. package/dist/chunk-JCNPVK74.cjs.map +1 -0
  120. package/dist/chunk-JFLC7SHM.cjs +35 -0
  121. package/dist/chunk-JFLC7SHM.cjs.map +1 -0
  122. package/dist/chunk-JHYFHEHS.js +1967 -0
  123. package/dist/chunk-JHYFHEHS.js.map +1 -0
  124. package/dist/{chunk-IBZXDX4L.cjs → chunk-JQEY53SH.cjs} +112 -3
  125. package/dist/chunk-JQEY53SH.cjs.map +1 -0
  126. package/dist/chunk-JTBQNOSL.cjs +1605 -0
  127. package/dist/chunk-JTBQNOSL.cjs.map +1 -0
  128. package/dist/chunk-JYZW2PZS.cjs +166 -0
  129. package/dist/chunk-JYZW2PZS.cjs.map +1 -0
  130. package/dist/chunk-KBEKQMVY.cjs +198 -0
  131. package/dist/chunk-KBEKQMVY.cjs.map +1 -0
  132. package/dist/chunk-KJ5BSGEO.cjs +258 -0
  133. package/dist/chunk-KJ5BSGEO.cjs.map +1 -0
  134. package/dist/{chunk-DNPRRYPQ.js → chunk-KL2S36FM.js} +2 -2
  135. package/dist/chunk-KL2S36FM.js.map +1 -0
  136. package/dist/chunk-LIH3IZYK.js +689 -0
  137. package/dist/chunk-LIH3IZYK.js.map +1 -0
  138. package/dist/chunk-MAMY5HTT.cjs +1177 -0
  139. package/dist/chunk-MAMY5HTT.cjs.map +1 -0
  140. package/dist/{chunk-WFS6R2F5.js → chunk-MKWGKASO.js} +114 -101
  141. package/dist/chunk-MKWGKASO.js.map +1 -0
  142. package/dist/{chunk-CV4CVGLO.cjs → chunk-MZPF2QGM.cjs} +95 -74
  143. package/dist/chunk-MZPF2QGM.cjs.map +1 -0
  144. package/dist/chunk-NQME7MCK.js +1416 -0
  145. package/dist/chunk-NQME7MCK.js.map +1 -0
  146. package/dist/chunk-NTYGCBCL.js +543 -0
  147. package/dist/chunk-NTYGCBCL.js.map +1 -0
  148. package/dist/chunk-OF7NTZ2I.js +3 -0
  149. package/dist/chunk-OF7NTZ2I.js.map +1 -0
  150. package/dist/chunk-OXYFTCRW.cjs +57 -0
  151. package/dist/chunk-OXYFTCRW.cjs.map +1 -0
  152. package/dist/chunk-QA6ZDHFP.js +117 -0
  153. package/dist/chunk-QA6ZDHFP.js.map +1 -0
  154. package/dist/chunk-RHNPILZQ.cjs +4 -0
  155. package/dist/chunk-RHNPILZQ.cjs.map +1 -0
  156. package/dist/chunk-RHYIFIT5.js +98 -0
  157. package/dist/chunk-RHYIFIT5.js.map +1 -0
  158. package/dist/chunk-RI56YPED.cjs +201 -0
  159. package/dist/chunk-RI56YPED.cjs.map +1 -0
  160. package/dist/chunk-RISZWWEQ.js +3 -0
  161. package/dist/chunk-RISZWWEQ.js.map +1 -0
  162. package/dist/chunk-S6Z3KDEM.js +140 -0
  163. package/dist/chunk-S6Z3KDEM.js.map +1 -0
  164. package/dist/chunk-S7JQ3FV5.cjs +16 -0
  165. package/dist/chunk-S7JQ3FV5.cjs.map +1 -0
  166. package/dist/{chunk-OXGUG57G.cjs → chunk-SNEQXSC5.cjs} +2 -2
  167. package/dist/{chunk-OXGUG57G.cjs.map → chunk-SNEQXSC5.cjs.map} +1 -1
  168. package/dist/chunk-SQHMGT4W.js +164 -0
  169. package/dist/chunk-SQHMGT4W.js.map +1 -0
  170. package/dist/{chunk-JHPFOG2N.cjs → chunk-ST2RE5UB.cjs} +30 -18
  171. package/dist/chunk-ST2RE5UB.cjs.map +1 -0
  172. package/dist/{chunk-QVJBUWJQ.js → chunk-STPK44AU.js} +46 -12
  173. package/dist/chunk-STPK44AU.js.map +1 -0
  174. package/dist/chunk-T3C4RNJ4.js +106 -0
  175. package/dist/chunk-T3C4RNJ4.js.map +1 -0
  176. package/dist/chunk-T3RWXOCM.js +148 -0
  177. package/dist/chunk-T3RWXOCM.js.map +1 -0
  178. package/dist/{chunk-DCER2QQB.js → chunk-T42BCIUA.js} +2 -2
  179. package/dist/{chunk-DCER2QQB.js.map → chunk-T42BCIUA.js.map} +1 -1
  180. package/dist/{chunk-OYKS2JBB.cjs → chunk-TN33E2VN.cjs} +2 -2
  181. package/dist/chunk-TN33E2VN.cjs.map +1 -0
  182. package/dist/{chunk-K7IGBNZA.cjs → chunk-TR2OJKQ4.cjs} +46 -12
  183. package/dist/chunk-TR2OJKQ4.cjs.map +1 -0
  184. package/dist/chunk-UFYXU7KV.js +135 -0
  185. package/dist/chunk-UFYXU7KV.js.map +1 -0
  186. package/dist/chunk-UM6NA7HL.js +1145 -0
  187. package/dist/chunk-UM6NA7HL.js.map +1 -0
  188. package/dist/chunk-UO3KEUYK.cjs +220 -0
  189. package/dist/chunk-UO3KEUYK.cjs.map +1 -0
  190. package/dist/chunk-UOOH356R.cjs +66 -0
  191. package/dist/chunk-UOOH356R.cjs.map +1 -0
  192. package/dist/{chunk-4ZU53GNR.cjs → chunk-UTYUT5YY.cjs} +62 -2
  193. package/dist/chunk-UTYUT5YY.cjs.map +1 -0
  194. package/dist/chunk-UVSODK6V.cjs +53 -0
  195. package/dist/chunk-UVSODK6V.cjs.map +1 -0
  196. package/dist/chunk-V25Z5GR6.cjs +184 -0
  197. package/dist/chunk-V25Z5GR6.cjs.map +1 -0
  198. package/dist/chunk-VBWRH4UW.cjs +4 -0
  199. package/dist/chunk-VBWRH4UW.cjs.map +1 -0
  200. package/dist/chunk-VJOVJTFP.cjs +370 -0
  201. package/dist/chunk-VJOVJTFP.cjs.map +1 -0
  202. package/dist/{chunk-7BARESXI.cjs → chunk-VPNURIAY.cjs} +114 -101
  203. package/dist/chunk-VPNURIAY.cjs.map +1 -0
  204. package/dist/{chunk-I56VBDSC.js → chunk-XDFDVF2O.js} +30 -18
  205. package/dist/chunk-XDFDVF2O.js.map +1 -0
  206. package/dist/chunk-XL7TTKHP.js +327 -0
  207. package/dist/chunk-XL7TTKHP.js.map +1 -0
  208. package/dist/chunk-Y2S6QMKU.js +78 -0
  209. package/dist/chunk-Y2S6QMKU.js.map +1 -0
  210. package/dist/chunk-Y4ESBDQ5.cjs +552 -0
  211. package/dist/chunk-Y4ESBDQ5.cjs.map +1 -0
  212. package/dist/chunk-Y5KEFV5O.js +192 -0
  213. package/dist/chunk-Y5KEFV5O.js.map +1 -0
  214. package/dist/chunk-YBLIDESO.js +365 -0
  215. package/dist/chunk-YBLIDESO.js.map +1 -0
  216. package/dist/chunk-YVLP3ATI.js +1776 -0
  217. package/dist/chunk-YVLP3ATI.js.map +1 -0
  218. package/dist/chunk-YVPC65ZJ.cjs +134 -0
  219. package/dist/chunk-YVPC65ZJ.cjs.map +1 -0
  220. package/dist/{chunk-MPOWJVV4.js → chunk-YZT62IMX.js} +95 -74
  221. package/dist/chunk-YZT62IMX.js.map +1 -0
  222. package/dist/chunk-ZAIEQWRA.js +207 -0
  223. package/dist/chunk-ZAIEQWRA.js.map +1 -0
  224. package/dist/chunk-ZDEYV373.cjs +139 -0
  225. package/dist/chunk-ZDEYV373.cjs.map +1 -0
  226. package/dist/{chunk-Q7NBJFEB.js → chunk-ZGSC2CB2.js} +2 -2
  227. package/dist/{chunk-Q7NBJFEB.js.map → chunk-ZGSC2CB2.js.map} +1 -1
  228. package/dist/{chunk-3M4P2KMG.cjs → chunk-ZHBANUBI.cjs} +2 -2
  229. package/dist/{chunk-3M4P2KMG.cjs.map → chunk-ZHBANUBI.cjs.map} +1 -1
  230. package/dist/components/AlertDialog/index.cjs +18 -0
  231. package/dist/components/AlertDialog/index.cjs.map +1 -0
  232. package/dist/components/AlertDialog/index.d.cts +56 -0
  233. package/dist/components/AlertDialog/index.d.ts +56 -0
  234. package/dist/components/AlertDialog/index.js +9 -0
  235. package/dist/components/AlertDialog/index.js.map +1 -0
  236. package/dist/components/AudioRecorder/index.d.cts +1 -1
  237. package/dist/components/AudioRecorder/index.d.ts +1 -1
  238. package/dist/components/Autocomplete/index.cjs +16 -0
  239. package/dist/components/Autocomplete/index.cjs.map +1 -0
  240. package/dist/components/Autocomplete/index.d.cts +77 -0
  241. package/dist/components/Autocomplete/index.d.ts +77 -0
  242. package/dist/components/Autocomplete/index.js +7 -0
  243. package/dist/components/Autocomplete/index.js.map +1 -0
  244. package/dist/components/Badge/index.cjs +4 -3
  245. package/dist/components/Badge/index.js +2 -1
  246. package/dist/components/Card/index.cjs +16 -15
  247. package/dist/components/Card/index.js +2 -1
  248. package/dist/components/Collapsible/index.cjs +21 -0
  249. package/dist/components/Collapsible/index.cjs.map +1 -0
  250. package/dist/components/Collapsible/index.d.cts +33 -0
  251. package/dist/components/Collapsible/index.d.ts +33 -0
  252. package/dist/components/Collapsible/index.js +4 -0
  253. package/dist/components/Collapsible/index.js.map +1 -0
  254. package/dist/components/CountryCodeDropdown/index.cjs +6 -5
  255. package/dist/components/CountryCodeDropdown/index.js +3 -2
  256. package/dist/components/DateInput/index.cjs +2 -2
  257. package/dist/components/DateInput/index.d.cts +8 -2
  258. package/dist/components/DateInput/index.d.ts +8 -2
  259. package/dist/components/DateInput/index.js +1 -1
  260. package/dist/components/Dropdown/index.cjs +9 -8
  261. package/dist/components/Dropdown/index.d.cts +2 -1
  262. package/dist/components/Dropdown/index.d.ts +2 -1
  263. package/dist/components/Dropdown/index.js +3 -2
  264. package/dist/components/FloatingWindow/index.cjs +18 -0
  265. package/dist/components/FloatingWindow/index.cjs.map +1 -0
  266. package/dist/components/FloatingWindow/index.d.cts +64 -0
  267. package/dist/components/FloatingWindow/index.d.ts +64 -0
  268. package/dist/components/FloatingWindow/index.js +5 -0
  269. package/dist/components/FloatingWindow/index.js.map +1 -0
  270. package/dist/components/Label/index.cjs +17 -0
  271. package/dist/components/Label/index.cjs.map +1 -0
  272. package/dist/components/Label/index.d.cts +23 -0
  273. package/dist/components/Label/index.d.ts +23 -0
  274. package/dist/components/Label/index.js +4 -0
  275. package/dist/components/Label/index.js.map +1 -0
  276. package/dist/components/Markdown/index.cjs +51 -0
  277. package/dist/components/Markdown/index.cjs.map +1 -0
  278. package/dist/components/Markdown/index.css +331 -0
  279. package/dist/components/Markdown/index.css.map +1 -0
  280. package/dist/components/Markdown/index.d.cts +82 -0
  281. package/dist/components/Markdown/index.d.ts +82 -0
  282. package/dist/components/Markdown/index.js +10 -0
  283. package/dist/components/Markdown/index.js.map +1 -0
  284. package/dist/components/Markdown/styles.css +354 -0
  285. package/dist/components/MediaEditor/index.cjs +44 -0
  286. package/dist/components/MediaEditor/index.cjs.map +1 -0
  287. package/dist/components/MediaEditor/index.d.cts +151 -0
  288. package/dist/components/MediaEditor/index.d.ts +151 -0
  289. package/dist/components/MediaEditor/index.js +19 -0
  290. package/dist/components/MediaEditor/index.js.map +1 -0
  291. package/dist/components/MediaPlayer/index.cjs +24 -0
  292. package/dist/components/MediaPlayer/index.cjs.map +1 -0
  293. package/dist/components/MediaPlayer/index.d.cts +71 -0
  294. package/dist/components/MediaPlayer/index.d.ts +71 -0
  295. package/dist/components/MediaPlayer/index.js +7 -0
  296. package/dist/components/MediaPlayer/index.js.map +1 -0
  297. package/dist/components/RecordButton/index.cjs +4 -4
  298. package/dist/components/RecordButton/index.js +1 -1
  299. package/dist/components/RichTextEditor/index.cjs +33 -0
  300. package/dist/components/RichTextEditor/index.cjs.map +1 -0
  301. package/dist/components/RichTextEditor/index.d.cts +62 -0
  302. package/dist/components/RichTextEditor/index.d.ts +62 -0
  303. package/dist/components/RichTextEditor/index.js +12 -0
  304. package/dist/components/RichTextEditor/index.js.map +1 -0
  305. package/dist/components/ScrollArea/index.cjs +17 -0
  306. package/dist/components/ScrollArea/index.cjs.map +1 -0
  307. package/dist/components/ScrollArea/index.d.cts +22 -0
  308. package/dist/components/ScrollArea/index.d.ts +22 -0
  309. package/dist/components/ScrollArea/index.js +4 -0
  310. package/dist/components/ScrollArea/index.js.map +1 -0
  311. package/dist/components/Select/index.cjs +5 -3
  312. package/dist/components/Select/index.js +3 -1
  313. package/dist/components/Separator/index.cjs +17 -0
  314. package/dist/components/Separator/index.cjs.map +1 -0
  315. package/dist/components/Separator/index.d.cts +27 -0
  316. package/dist/components/Separator/index.d.ts +27 -0
  317. package/dist/components/Separator/index.js +4 -0
  318. package/dist/components/Separator/index.js.map +1 -0
  319. package/dist/components/Sheet/index.cjs +48 -0
  320. package/dist/components/Sheet/index.cjs.map +1 -0
  321. package/dist/components/Sheet/index.d.cts +62 -0
  322. package/dist/components/Sheet/index.d.ts +62 -0
  323. package/dist/components/Sheet/index.js +7 -0
  324. package/dist/components/Sheet/index.js.map +1 -0
  325. package/dist/components/SuperChat/index.cjs +1373 -0
  326. package/dist/components/SuperChat/index.cjs.map +1 -0
  327. package/dist/components/SuperChat/index.d.cts +189 -0
  328. package/dist/components/SuperChat/index.d.ts +189 -0
  329. package/dist/components/SuperChat/index.js +1336 -0
  330. package/dist/components/SuperChat/index.js.map +1 -0
  331. package/dist/components/SuperChat/plugins/index.cjs +1292 -0
  332. package/dist/components/SuperChat/plugins/index.cjs.map +1 -0
  333. package/dist/components/SuperChat/plugins/index.d.cts +233 -0
  334. package/dist/components/SuperChat/plugins/index.d.ts +233 -0
  335. package/dist/components/SuperChat/plugins/index.js +1252 -0
  336. package/dist/components/SuperChat/plugins/index.js.map +1 -0
  337. package/dist/components/Table/index.cjs +9 -9
  338. package/dist/components/Table/index.d.cts +4 -0
  339. package/dist/components/Table/index.d.ts +4 -0
  340. package/dist/components/Table/index.js +1 -1
  341. package/dist/components/ThemeProvider/index.cjs +7 -7
  342. package/dist/components/ThemeProvider/index.js +1 -1
  343. package/dist/components/Toggle/index.cjs +17 -0
  344. package/dist/components/Toggle/index.cjs.map +1 -0
  345. package/dist/components/Toggle/index.d.cts +28 -0
  346. package/dist/components/Toggle/index.d.ts +28 -0
  347. package/dist/components/Toggle/index.js +4 -0
  348. package/dist/components/Toggle/index.js.map +1 -0
  349. package/dist/components/TranscriptView/index.cjs +21 -0
  350. package/dist/components/TranscriptView/index.cjs.map +1 -0
  351. package/dist/components/TranscriptView/index.d.cts +55 -0
  352. package/dist/components/TranscriptView/index.d.ts +55 -0
  353. package/dist/components/TranscriptView/index.js +4 -0
  354. package/dist/components/TranscriptView/index.js.map +1 -0
  355. package/dist/datavis.cjs +268 -227
  356. package/dist/datavis.cjs.map +1 -1
  357. package/dist/datavis.d.cts +83 -9
  358. package/dist/datavis.d.ts +83 -9
  359. package/dist/datavis.js +235 -229
  360. package/dist/datavis.js.map +1 -1
  361. package/dist/esheet.cjs +184 -0
  362. package/dist/esheet.cjs.map +1 -1
  363. package/dist/esheet.d.cts +117 -0
  364. package/dist/esheet.d.ts +117 -0
  365. package/dist/esheet.js +163 -0
  366. package/dist/esheet.js.map +1 -1
  367. package/dist/hey-buddy-CLUVAY2X.cjs +1133 -0
  368. package/dist/hey-buddy-CLUVAY2X.cjs.map +1 -0
  369. package/dist/hey-buddy-NMSWZ4TN.js +1131 -0
  370. package/dist/hey-buddy-NMSWZ4TN.js.map +1 -0
  371. package/dist/hooks/index.cjs +76 -16
  372. package/dist/hooks/index.d.cts +151 -2
  373. package/dist/hooks/index.d.ts +151 -2
  374. package/dist/hooks/index.js +6 -2
  375. package/dist/html-MdxqSzjD.d.cts +13 -0
  376. package/dist/html-MdxqSzjD.d.ts +13 -0
  377. package/dist/index.cjs +10394 -6565
  378. package/dist/index.cjs.map +1 -1
  379. package/dist/index.css +331 -0
  380. package/dist/index.css.map +1 -0
  381. package/dist/index.d.cts +2020 -249
  382. package/dist/index.d.ts +2020 -249
  383. package/dist/index.js +9223 -5969
  384. package/dist/index.js.map +1 -1
  385. package/dist/kerebron.cjs +119 -0
  386. package/dist/kerebron.cjs.map +1 -0
  387. package/dist/kerebron.css +11 -0
  388. package/dist/kerebron.d.cts +23 -0
  389. package/dist/kerebron.d.ts +23 -0
  390. package/dist/kerebron.js +116 -0
  391. package/dist/kerebron.js.map +1 -0
  392. package/dist/nitroTableGrid-3J2GY6CK.cjs +47 -0
  393. package/dist/nitroTableGrid-3J2GY6CK.cjs.map +1 -0
  394. package/dist/nitroTableGrid-SIMT7635.js +25 -0
  395. package/dist/nitroTableGrid-SIMT7635.js.map +1 -0
  396. package/dist/orderRows-BUJYgSc7.d.cts +221 -0
  397. package/dist/orderRows-BUJYgSc7.d.ts +221 -0
  398. package/dist/speaker-verify-5GTWAN5Y.cjs +357 -0
  399. package/dist/speaker-verify-5GTWAN5Y.cjs.map +1 -0
  400. package/dist/speaker-verify-R67P433H.js +355 -0
  401. package/dist/speaker-verify-R67P433H.js.map +1 -0
  402. package/dist/styles/init.css +5 -0
  403. package/dist/styles.css +1 -1
  404. package/dist/tailwind-preset.cjs +4 -4
  405. package/dist/tailwind-preset.js +1 -1
  406. package/dist/transcript-oaWqY3yr.d.cts +81 -0
  407. package/dist/transcript-oaWqY3yr.d.ts +81 -0
  408. package/dist/types-BYnLjEFg.d.cts +248 -0
  409. package/dist/types-BYnLjEFg.d.ts +248 -0
  410. package/dist/types-CBh8Zlje.d.cts +240 -0
  411. package/dist/types-CyCwYBlr.d.ts +240 -0
  412. package/dist/useAnchoredPosition-nXdSFKHf.d.cts +65 -0
  413. package/dist/useAnchoredPosition-nXdSFKHf.d.ts +65 -0
  414. package/dist/useTranscriptEdits-BUylQFg0.d.cts +168 -0
  415. package/dist/useTranscriptEdits-CWYnjbGP.d.ts +168 -0
  416. package/dist/utils/index.cjs +27 -18
  417. package/dist/utils/index.d.cts +1 -0
  418. package/dist/utils/index.d.ts +1 -0
  419. package/dist/utils/index.js +3 -2
  420. package/package.json +180 -55
  421. package/dist/chunk-2DS3RJ2D.js.map +0 -1
  422. package/dist/chunk-74K3RRU7.cjs +0 -4
  423. package/dist/chunk-7BARESXI.cjs.map +0 -1
  424. package/dist/chunk-CV4CVGLO.cjs.map +0 -1
  425. package/dist/chunk-DNPRRYPQ.js.map +0 -1
  426. package/dist/chunk-FRT6RQND.cjs.map +0 -1
  427. package/dist/chunk-HYEJLKXI.js +0 -476
  428. package/dist/chunk-HYEJLKXI.js.map +0 -1
  429. package/dist/chunk-I56VBDSC.js.map +0 -1
  430. package/dist/chunk-IBZXDX4L.cjs.map +0 -1
  431. package/dist/chunk-IKMR2ADM.cjs +0 -25
  432. package/dist/chunk-IKMR2ADM.cjs.map +0 -1
  433. package/dist/chunk-JHPFOG2N.cjs.map +0 -1
  434. package/dist/chunk-K7IGBNZA.cjs.map +0 -1
  435. package/dist/chunk-LEMY57MI.js +0 -3
  436. package/dist/chunk-MPOWJVV4.js.map +0 -1
  437. package/dist/chunk-NINI4WVS.cjs.map +0 -1
  438. package/dist/chunk-OKBR6PX4.js +0 -23
  439. package/dist/chunk-OKBR6PX4.js.map +0 -1
  440. package/dist/chunk-OYKS2JBB.cjs.map +0 -1
  441. package/dist/chunk-QVJBUWJQ.js.map +0 -1
  442. package/dist/chunk-R25H4N4Z.js.map +0 -1
  443. package/dist/chunk-V2DF2GUE.js +0 -3
  444. package/dist/chunk-WFS6R2F5.js.map +0 -1
  445. package/dist/ozwell.cjs +0 -385
  446. package/dist/ozwell.cjs.map +0 -1
  447. package/dist/ozwell.d.cts +0 -15
  448. package/dist/ozwell.d.ts +0 -15
  449. package/dist/ozwell.js +0 -360
  450. package/dist/ozwell.js.map +0 -1
@@ -0,0 +1,1452 @@
1
+ 'use strict';
2
+
3
+ var chunkLOTMAKUG_cjs = require('./chunk-LOTMAKUG.cjs');
4
+ var chunkOR5DRJCW_cjs = require('./chunk-OR5DRJCW.cjs');
5
+ var jsxRuntime = require('react/jsx-runtime');
6
+ var React = require('react');
7
+ var classVarianceAuthority = require('class-variance-authority');
8
+
9
+ function _interopNamespace(e) {
10
+ if (e && e.__esModule) return e;
11
+ var n = Object.create(null);
12
+ if (e) {
13
+ Object.keys(e).forEach(function (k) {
14
+ if (k !== 'default') {
15
+ var d = Object.getOwnPropertyDescriptor(e, k);
16
+ Object.defineProperty(n, k, d.get ? d : {
17
+ enumerable: true,
18
+ get: function () { return e[k]; }
19
+ });
20
+ }
21
+ });
22
+ }
23
+ n.default = e;
24
+ return Object.freeze(n);
25
+ }
26
+
27
+ var React__namespace = /*#__PURE__*/_interopNamespace(React);
28
+
29
+ var sizeClasses = {
30
+ sm: "h-4 w-4",
31
+ md: "h-5 w-5",
32
+ lg: "h-7 w-7"
33
+ };
34
+ function SparklesIcon({ className, size = "md" }) {
35
+ return /* @__PURE__ */ jsxRuntime.jsxs(
36
+ "svg",
37
+ {
38
+ "aria-hidden": "true",
39
+ className: chunkOR5DRJCW_cjs.cn(sizeClasses[size], className),
40
+ viewBox: "0 0 24 24",
41
+ fill: "currentColor",
42
+ children: [
43
+ /* @__PURE__ */ jsxRuntime.jsx("path", { d: "M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z" }),
44
+ /* @__PURE__ */ jsxRuntime.jsx(
45
+ "path",
46
+ {
47
+ d: "M20 3v4",
48
+ stroke: "currentColor",
49
+ strokeWidth: "2",
50
+ strokeLinecap: "round"
51
+ }
52
+ ),
53
+ /* @__PURE__ */ jsxRuntime.jsx(
54
+ "path",
55
+ {
56
+ d: "M22 5h-4",
57
+ stroke: "currentColor",
58
+ strokeWidth: "2",
59
+ strokeLinecap: "round"
60
+ }
61
+ )
62
+ ]
63
+ }
64
+ );
65
+ }
66
+ function AILogoIcon({ className, size = "md" }) {
67
+ return /* @__PURE__ */ jsxRuntime.jsxs(
68
+ "svg",
69
+ {
70
+ "aria-hidden": "true",
71
+ className: chunkOR5DRJCW_cjs.cn(sizeClasses[size], className),
72
+ viewBox: "0 0 24 24",
73
+ fill: "none",
74
+ children: [
75
+ /* @__PURE__ */ jsxRuntime.jsx(
76
+ "path",
77
+ {
78
+ d: "M12 2L2 7L12 12L22 7L12 2Z",
79
+ stroke: "currentColor",
80
+ strokeWidth: "1.5",
81
+ strokeLinecap: "round",
82
+ strokeLinejoin: "round",
83
+ fill: "currentColor",
84
+ fillOpacity: "0.2"
85
+ }
86
+ ),
87
+ /* @__PURE__ */ jsxRuntime.jsx(
88
+ "path",
89
+ {
90
+ d: "M2 17L12 22L22 17",
91
+ stroke: "currentColor",
92
+ strokeWidth: "1.5",
93
+ strokeLinecap: "round",
94
+ strokeLinejoin: "round"
95
+ }
96
+ ),
97
+ /* @__PURE__ */ jsxRuntime.jsx(
98
+ "path",
99
+ {
100
+ d: "M2 12L12 17L22 12",
101
+ stroke: "currentColor",
102
+ strokeWidth: "1.5",
103
+ strokeLinecap: "round",
104
+ strokeLinejoin: "round"
105
+ }
106
+ )
107
+ ]
108
+ }
109
+ );
110
+ }
111
+ function CloseIcon({ className }) {
112
+ return /* @__PURE__ */ jsxRuntime.jsx(
113
+ "svg",
114
+ {
115
+ "aria-hidden": "true",
116
+ className: chunkOR5DRJCW_cjs.cn("h-5 w-5", className),
117
+ fill: "none",
118
+ viewBox: "0 0 24 24",
119
+ stroke: "currentColor",
120
+ strokeWidth: "2",
121
+ children: /* @__PURE__ */ jsxRuntime.jsx(
122
+ "path",
123
+ {
124
+ strokeLinecap: "round",
125
+ strokeLinejoin: "round",
126
+ d: "M6 18L18 6M6 6l12 12"
127
+ }
128
+ )
129
+ }
130
+ );
131
+ }
132
+ function RefreshIcon({ className }) {
133
+ return /* @__PURE__ */ jsxRuntime.jsx(
134
+ "svg",
135
+ {
136
+ "aria-hidden": "true",
137
+ className: chunkOR5DRJCW_cjs.cn("h-5 w-5", className),
138
+ fill: "none",
139
+ viewBox: "0 0 24 24",
140
+ stroke: "currentColor",
141
+ strokeWidth: "1.5",
142
+ children: /* @__PURE__ */ jsxRuntime.jsx(
143
+ "path",
144
+ {
145
+ strokeLinecap: "round",
146
+ strokeLinejoin: "round",
147
+ d: "M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0l3.181 3.183a8.25 8.25 0 0013.803-3.7M4.031 9.865a8.25 8.25 0 0113.803-3.7l3.181 3.182m0-4.991v4.99"
148
+ }
149
+ )
150
+ }
151
+ );
152
+ }
153
+ var chevronRotation = {
154
+ up: "-rotate-180",
155
+ down: "",
156
+ left: "rotate-90",
157
+ right: "-rotate-90"
158
+ };
159
+ function ChevronIcon({
160
+ className,
161
+ direction = "down"
162
+ }) {
163
+ return /* @__PURE__ */ jsxRuntime.jsx(
164
+ "svg",
165
+ {
166
+ "aria-hidden": "true",
167
+ className: chunkOR5DRJCW_cjs.cn("h-4 w-4", chevronRotation[direction], className),
168
+ fill: "none",
169
+ viewBox: "0 0 24 24",
170
+ stroke: "currentColor",
171
+ strokeWidth: "2",
172
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M19 9l-7 7-7-7" })
173
+ }
174
+ );
175
+ }
176
+ function SendIcon({ className }) {
177
+ return /* @__PURE__ */ jsxRuntime.jsx(
178
+ "svg",
179
+ {
180
+ "aria-hidden": "true",
181
+ className: chunkOR5DRJCW_cjs.cn("h-5 w-5", className),
182
+ fill: "none",
183
+ viewBox: "0 0 24 24",
184
+ stroke: "currentColor",
185
+ children: /* @__PURE__ */ jsxRuntime.jsx(
186
+ "path",
187
+ {
188
+ strokeLinecap: "round",
189
+ strokeLinejoin: "round",
190
+ strokeWidth: 2,
191
+ d: "M12 19l9 2-9-18-9 18 9-2zm0 0v-8"
192
+ }
193
+ )
194
+ }
195
+ );
196
+ }
197
+ function SpinnerIcon({ className }) {
198
+ return /* @__PURE__ */ jsxRuntime.jsxs(
199
+ "svg",
200
+ {
201
+ "aria-hidden": "true",
202
+ className: chunkOR5DRJCW_cjs.cn("h-5 w-5 animate-spin", className),
203
+ fill: "none",
204
+ viewBox: "0 0 24 24",
205
+ children: [
206
+ /* @__PURE__ */ jsxRuntime.jsx(
207
+ "circle",
208
+ {
209
+ className: "opacity-25",
210
+ cx: "12",
211
+ cy: "12",
212
+ r: "10",
213
+ stroke: "currentColor",
214
+ strokeWidth: "4"
215
+ }
216
+ ),
217
+ /* @__PURE__ */ jsxRuntime.jsx(
218
+ "path",
219
+ {
220
+ className: "opacity-75",
221
+ fill: "currentColor",
222
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
223
+ }
224
+ )
225
+ ]
226
+ }
227
+ );
228
+ }
229
+ var statusIconVariants = classVarianceAuthority.cva(
230
+ "flex h-5 w-5 items-center justify-center rounded-full",
231
+ {
232
+ variants: {
233
+ status: {
234
+ pending: "bg-neutral-200 dark:bg-neutral-700",
235
+ running: "bg-primary-100 dark:bg-primary-900/50",
236
+ success: "bg-green-100 dark:bg-green-900/50",
237
+ error: "bg-red-100 dark:bg-red-900/50",
238
+ cancelled: "bg-neutral-200 dark:bg-neutral-700"
239
+ }
240
+ },
241
+ defaultVariants: {
242
+ status: "pending"
243
+ }
244
+ }
245
+ );
246
+ function ToolStatusIcon({ status, className }) {
247
+ return /* @__PURE__ */ jsxRuntime.jsxs(
248
+ "span",
249
+ {
250
+ "data-slot": "ai-tool-status-icon",
251
+ className: chunkOR5DRJCW_cjs.cn(statusIconVariants({ status }), className),
252
+ children: [
253
+ status === "pending" && /* @__PURE__ */ jsxRuntime.jsx(
254
+ "svg",
255
+ {
256
+ "aria-hidden": "true",
257
+ className: "h-3 w-3 text-neutral-500",
258
+ fill: "currentColor",
259
+ viewBox: "0 0 20 20",
260
+ children: /* @__PURE__ */ jsxRuntime.jsx("circle", { cx: "10", cy: "10", r: "3" })
261
+ }
262
+ ),
263
+ status === "running" && /* @__PURE__ */ jsxRuntime.jsxs(
264
+ "svg",
265
+ {
266
+ "aria-hidden": "true",
267
+ className: "text-primary-800 dark:text-primary-400 h-3 w-3 animate-spin",
268
+ fill: "none",
269
+ viewBox: "0 0 24 24",
270
+ children: [
271
+ /* @__PURE__ */ jsxRuntime.jsx(
272
+ "circle",
273
+ {
274
+ className: "opacity-25",
275
+ cx: "12",
276
+ cy: "12",
277
+ r: "10",
278
+ stroke: "currentColor",
279
+ strokeWidth: "4"
280
+ }
281
+ ),
282
+ /* @__PURE__ */ jsxRuntime.jsx(
283
+ "path",
284
+ {
285
+ className: "opacity-75",
286
+ fill: "currentColor",
287
+ d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
288
+ }
289
+ )
290
+ ]
291
+ }
292
+ ),
293
+ status === "success" && /* @__PURE__ */ jsxRuntime.jsx(
294
+ "svg",
295
+ {
296
+ "aria-hidden": "true",
297
+ className: "h-3 w-3 text-green-600 dark:text-green-400",
298
+ fill: "none",
299
+ viewBox: "0 0 24 24",
300
+ stroke: "currentColor",
301
+ strokeWidth: "3",
302
+ children: /* @__PURE__ */ jsxRuntime.jsx(
303
+ "path",
304
+ {
305
+ strokeLinecap: "round",
306
+ strokeLinejoin: "round",
307
+ d: "M5 13l4 4L19 7"
308
+ }
309
+ )
310
+ }
311
+ ),
312
+ status === "error" && /* @__PURE__ */ jsxRuntime.jsx(
313
+ "svg",
314
+ {
315
+ "aria-hidden": "true",
316
+ className: "h-3 w-3 text-red-600 dark:text-red-400",
317
+ fill: "none",
318
+ viewBox: "0 0 24 24",
319
+ stroke: "currentColor",
320
+ strokeWidth: "3",
321
+ children: /* @__PURE__ */ jsxRuntime.jsx(
322
+ "path",
323
+ {
324
+ strokeLinecap: "round",
325
+ strokeLinejoin: "round",
326
+ d: "M6 18L18 6M6 6l12 12"
327
+ }
328
+ )
329
+ }
330
+ ),
331
+ status === "cancelled" && /* @__PURE__ */ jsxRuntime.jsx(
332
+ "svg",
333
+ {
334
+ "aria-hidden": "true",
335
+ className: "h-3 w-3 text-neutral-500",
336
+ fill: "none",
337
+ viewBox: "0 0 24 24",
338
+ stroke: "currentColor",
339
+ strokeWidth: "3",
340
+ children: /* @__PURE__ */ jsxRuntime.jsx("path", { strokeLinecap: "round", strokeLinejoin: "round", d: "M18 12H6" })
341
+ }
342
+ )
343
+ ]
344
+ }
345
+ );
346
+ }
347
+ var TOOL_ICONS = {
348
+ // Patient tools
349
+ create_patient: /* @__PURE__ */ jsxRuntime.jsx(
350
+ "svg",
351
+ {
352
+ "aria-hidden": "true",
353
+ className: "h-4 w-4",
354
+ fill: "none",
355
+ viewBox: "0 0 24 24",
356
+ stroke: "currentColor",
357
+ strokeWidth: "1.5",
358
+ children: /* @__PURE__ */ jsxRuntime.jsx(
359
+ "path",
360
+ {
361
+ strokeLinecap: "round",
362
+ strokeLinejoin: "round",
363
+ d: "M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 11-6.75 0 3.375 3.375 0 016.75 0zM3 19.235v-.11a6.375 6.375 0 0112.75 0v.109A12.318 12.318 0 019.374 21c-2.331 0-4.512-.645-6.374-1.766z"
364
+ }
365
+ )
366
+ }
367
+ ),
368
+ get_patient: /* @__PURE__ */ jsxRuntime.jsx(
369
+ "svg",
370
+ {
371
+ "aria-hidden": "true",
372
+ className: "h-4 w-4",
373
+ fill: "none",
374
+ viewBox: "0 0 24 24",
375
+ stroke: "currentColor",
376
+ strokeWidth: "1.5",
377
+ children: /* @__PURE__ */ jsxRuntime.jsx(
378
+ "path",
379
+ {
380
+ strokeLinecap: "round",
381
+ strokeLinejoin: "round",
382
+ d: "M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z"
383
+ }
384
+ )
385
+ }
386
+ ),
387
+ search_patients: /* @__PURE__ */ jsxRuntime.jsx(
388
+ "svg",
389
+ {
390
+ "aria-hidden": "true",
391
+ className: "h-4 w-4",
392
+ fill: "none",
393
+ viewBox: "0 0 24 24",
394
+ stroke: "currentColor",
395
+ strokeWidth: "1.5",
396
+ children: /* @__PURE__ */ jsxRuntime.jsx(
397
+ "path",
398
+ {
399
+ strokeLinecap: "round",
400
+ strokeLinejoin: "round",
401
+ d: "M21 21l-5.197-5.197m0 0A7.5 7.5 0 105.196 5.196a7.5 7.5 0 0010.607 10.607z"
402
+ }
403
+ )
404
+ }
405
+ ),
406
+ // Appointment tools
407
+ schedule_appointment: /* @__PURE__ */ jsxRuntime.jsx(
408
+ "svg",
409
+ {
410
+ "aria-hidden": "true",
411
+ className: "h-4 w-4",
412
+ fill: "none",
413
+ viewBox: "0 0 24 24",
414
+ stroke: "currentColor",
415
+ strokeWidth: "1.5",
416
+ children: /* @__PURE__ */ jsxRuntime.jsx(
417
+ "path",
418
+ {
419
+ strokeLinecap: "round",
420
+ strokeLinejoin: "round",
421
+ d: "M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5m-9-6h.008v.008H12v-.008zM12 15h.008v.008H12V15zm0 2.25h.008v.008H12v-.008zM9.75 15h.008v.008H9.75V15zm0 2.25h.008v.008H9.75v-.008zM7.5 15h.008v.008H7.5V15zm0 2.25h.008v.008H7.5v-.008zm6.75-4.5h.008v.008h-.008v-.008zm0 2.25h.008v.008h-.008V15zm0 2.25h.008v.008h-.008v-.008zm2.25-4.5h.008v.008H16.5v-.008zm0 2.25h.008v.008H16.5V15z"
422
+ }
423
+ )
424
+ }
425
+ ),
426
+ // Document tools
427
+ create_document: /* @__PURE__ */ jsxRuntime.jsx(
428
+ "svg",
429
+ {
430
+ "aria-hidden": "true",
431
+ className: "h-4 w-4",
432
+ fill: "none",
433
+ viewBox: "0 0 24 24",
434
+ stroke: "currentColor",
435
+ strokeWidth: "1.5",
436
+ children: /* @__PURE__ */ jsxRuntime.jsx(
437
+ "path",
438
+ {
439
+ strokeLinecap: "round",
440
+ strokeLinejoin: "round",
441
+ d: "M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m3.75 9v6m3-3H9m1.5-12H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"
442
+ }
443
+ )
444
+ }
445
+ ),
446
+ // Provider tools
447
+ search_providers: /* @__PURE__ */ jsxRuntime.jsxs(
448
+ "svg",
449
+ {
450
+ "aria-hidden": "true",
451
+ className: "h-4 w-4",
452
+ fill: "none",
453
+ viewBox: "0 0 24 24",
454
+ stroke: "currentColor",
455
+ strokeWidth: "1.5",
456
+ children: [
457
+ /* @__PURE__ */ jsxRuntime.jsx(
458
+ "path",
459
+ {
460
+ strokeLinecap: "round",
461
+ strokeLinejoin: "round",
462
+ d: "M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"
463
+ }
464
+ ),
465
+ /* @__PURE__ */ jsxRuntime.jsx(
466
+ "path",
467
+ {
468
+ strokeLinecap: "round",
469
+ strokeLinejoin: "round",
470
+ d: "M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z"
471
+ }
472
+ )
473
+ ]
474
+ }
475
+ ),
476
+ // Default tool icon
477
+ default: /* @__PURE__ */ jsxRuntime.jsx(
478
+ "svg",
479
+ {
480
+ "aria-hidden": "true",
481
+ className: "h-4 w-4",
482
+ fill: "none",
483
+ viewBox: "0 0 24 24",
484
+ stroke: "currentColor",
485
+ strokeWidth: "1.5",
486
+ children: /* @__PURE__ */ jsxRuntime.jsx(
487
+ "path",
488
+ {
489
+ strokeLinecap: "round",
490
+ strokeLinejoin: "round",
491
+ d: "M11.42 15.17L17.25 21A2.652 2.652 0 0021 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 11-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 004.486-6.336l-3.276 3.277a3.004 3.004 0 01-2.25-2.25l3.276-3.276a4.5 4.5 0 00-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437l1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008z"
492
+ }
493
+ )
494
+ }
495
+ )
496
+ };
497
+ function getToolIcon(toolName) {
498
+ return TOOL_ICONS[toolName] || TOOL_ICONS.default;
499
+ }
500
+ function ResourceLink({ link, onClick, className }) {
501
+ const handleClick = (e) => {
502
+ if (onClick) {
503
+ e.preventDefault();
504
+ onClick(link);
505
+ }
506
+ };
507
+ const linkTypeIcons = {
508
+ patient: /* @__PURE__ */ jsxRuntime.jsx(
509
+ "svg",
510
+ {
511
+ "aria-hidden": "true",
512
+ className: "h-4 w-4",
513
+ fill: "none",
514
+ viewBox: "0 0 24 24",
515
+ stroke: "currentColor",
516
+ strokeWidth: "1.5",
517
+ children: /* @__PURE__ */ jsxRuntime.jsx(
518
+ "path",
519
+ {
520
+ strokeLinecap: "round",
521
+ strokeLinejoin: "round",
522
+ d: "M15.75 6a3.75 3.75 0 11-7.5 0 3.75 3.75 0 017.5 0zM4.501 20.118a7.5 7.5 0 0114.998 0A17.933 17.933 0 0112 21.75c-2.676 0-5.216-.584-7.499-1.632z"
523
+ }
524
+ )
525
+ }
526
+ ),
527
+ document: /* @__PURE__ */ jsxRuntime.jsx(
528
+ "svg",
529
+ {
530
+ "aria-hidden": "true",
531
+ className: "h-4 w-4",
532
+ fill: "none",
533
+ viewBox: "0 0 24 24",
534
+ stroke: "currentColor",
535
+ strokeWidth: "1.5",
536
+ children: /* @__PURE__ */ jsxRuntime.jsx(
537
+ "path",
538
+ {
539
+ strokeLinecap: "round",
540
+ strokeLinejoin: "round",
541
+ d: "M19.5 14.25v-2.625a3.375 3.375 0 00-3.375-3.375h-1.5A1.125 1.125 0 0113.5 7.125v-1.5a3.375 3.375 0 00-3.375-3.375H8.25m2.25 0H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 00-9-9z"
542
+ }
543
+ )
544
+ }
545
+ ),
546
+ appointment: /* @__PURE__ */ jsxRuntime.jsx(
547
+ "svg",
548
+ {
549
+ "aria-hidden": "true",
550
+ className: "h-4 w-4",
551
+ fill: "none",
552
+ viewBox: "0 0 24 24",
553
+ stroke: "currentColor",
554
+ strokeWidth: "1.5",
555
+ children: /* @__PURE__ */ jsxRuntime.jsx(
556
+ "path",
557
+ {
558
+ strokeLinecap: "round",
559
+ strokeLinejoin: "round",
560
+ d: "M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 012.25-2.25h13.5A2.25 2.25 0 0121 7.5v11.25m-18 0A2.25 2.25 0 005.25 21h13.5A2.25 2.25 0 0021 18.75m-18 0v-7.5A2.25 2.25 0 015.25 9h13.5A2.25 2.25 0 0121 11.25v7.5"
561
+ }
562
+ )
563
+ }
564
+ ),
565
+ order: /* @__PURE__ */ jsxRuntime.jsx(
566
+ "svg",
567
+ {
568
+ "aria-hidden": "true",
569
+ className: "h-4 w-4",
570
+ fill: "none",
571
+ viewBox: "0 0 24 24",
572
+ stroke: "currentColor",
573
+ strokeWidth: "1.5",
574
+ children: /* @__PURE__ */ jsxRuntime.jsx(
575
+ "path",
576
+ {
577
+ strokeLinecap: "round",
578
+ strokeLinejoin: "round",
579
+ d: "M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 002.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48.424 48.424 0 00-1.123-.08m-5.801 0c-.065.21-.1.433-.1.664 0 .414.336.75.75.75h4.5a.75.75 0 00.75-.75 2.25 2.25 0 00-.1-.664m-5.8 0A2.251 2.251 0 0113.5 2.25H15c1.012 0 1.867.668 2.15 1.586m-5.8 0c-.376.023-.75.05-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125H8.25z"
580
+ }
581
+ )
582
+ }
583
+ ),
584
+ provider: /* @__PURE__ */ jsxRuntime.jsxs(
585
+ "svg",
586
+ {
587
+ "aria-hidden": "true",
588
+ className: "h-4 w-4",
589
+ fill: "none",
590
+ viewBox: "0 0 24 24",
591
+ stroke: "currentColor",
592
+ strokeWidth: "1.5",
593
+ children: [
594
+ /* @__PURE__ */ jsxRuntime.jsx(
595
+ "path",
596
+ {
597
+ strokeLinecap: "round",
598
+ strokeLinejoin: "round",
599
+ d: "M15 10.5a3 3 0 11-6 0 3 3 0 016 0z"
600
+ }
601
+ ),
602
+ /* @__PURE__ */ jsxRuntime.jsx(
603
+ "path",
604
+ {
605
+ strokeLinecap: "round",
606
+ strokeLinejoin: "round",
607
+ d: "M19.5 10.5c0 7.142-7.5 11.25-7.5 11.25S4.5 17.642 4.5 10.5a7.5 7.5 0 1115 0z"
608
+ }
609
+ )
610
+ ]
611
+ }
612
+ ),
613
+ external: /* @__PURE__ */ jsxRuntime.jsx(
614
+ "svg",
615
+ {
616
+ "aria-hidden": "true",
617
+ className: "h-4 w-4",
618
+ fill: "none",
619
+ viewBox: "0 0 24 24",
620
+ stroke: "currentColor",
621
+ strokeWidth: "1.5",
622
+ children: /* @__PURE__ */ jsxRuntime.jsx(
623
+ "path",
624
+ {
625
+ strokeLinecap: "round",
626
+ strokeLinejoin: "round",
627
+ d: "M13.5 6H5.25A2.25 2.25 0 003 8.25v10.5A2.25 2.25 0 005.25 21h10.5A2.25 2.25 0 0018 18.75V10.5m-10.5 6L21 3m0 0h-5.25M21 3v5.25"
628
+ }
629
+ )
630
+ }
631
+ ),
632
+ internal: /* @__PURE__ */ jsxRuntime.jsx(
633
+ "svg",
634
+ {
635
+ "aria-hidden": "true",
636
+ className: "h-4 w-4",
637
+ fill: "none",
638
+ viewBox: "0 0 24 24",
639
+ stroke: "currentColor",
640
+ strokeWidth: "1.5",
641
+ children: /* @__PURE__ */ jsxRuntime.jsx(
642
+ "path",
643
+ {
644
+ strokeLinecap: "round",
645
+ strokeLinejoin: "round",
646
+ d: "M13.19 8.688a4.5 4.5 0 011.242 7.244l-4.5 4.5a4.5 4.5 0 01-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 00-6.364-6.364l-4.5 4.5a4.5 4.5 0 001.242 7.244"
647
+ }
648
+ )
649
+ }
650
+ )
651
+ };
652
+ const icon = link.type ? linkTypeIcons[link.type] : linkTypeIcons.internal;
653
+ return /* @__PURE__ */ jsxRuntime.jsxs(
654
+ "a",
655
+ {
656
+ href: link.href,
657
+ onClick: handleClick,
658
+ className: chunkOR5DRJCW_cjs.cn(
659
+ "inline-flex items-center gap-1.5 rounded-md px-2.5 py-1.5",
660
+ "bg-primary-50 text-primary-900 hover:bg-primary-100",
661
+ "dark:bg-primary-900/30 dark:text-primary-300 dark:hover:bg-primary-900/50",
662
+ "text-sm font-medium transition-colors",
663
+ "focus:ring-primary-500 focus:ring-2 focus:ring-offset-2 focus:outline-none",
664
+ "dark:focus:ring-offset-neutral-900",
665
+ className
666
+ ),
667
+ children: [
668
+ icon,
669
+ /* @__PURE__ */ jsxRuntime.jsx("span", { children: link.label }),
670
+ link.type === "external" && /* @__PURE__ */ jsxRuntime.jsx(
671
+ "svg",
672
+ {
673
+ "aria-hidden": "true",
674
+ className: "h-3 w-3 opacity-60",
675
+ fill: "none",
676
+ viewBox: "0 0 24 24",
677
+ stroke: "currentColor",
678
+ strokeWidth: "2",
679
+ children: /* @__PURE__ */ jsxRuntime.jsx(
680
+ "path",
681
+ {
682
+ strokeLinecap: "round",
683
+ strokeLinejoin: "round",
684
+ d: "M4.5 19.5l15-15m0 0H8.25m11.25 0v11.25"
685
+ }
686
+ )
687
+ }
688
+ )
689
+ ]
690
+ }
691
+ );
692
+ }
693
+ function ToolResultDisplay({
694
+ result,
695
+ onLinkClick,
696
+ showRawData = false,
697
+ className
698
+ }) {
699
+ const [showJson, setShowJson] = React__namespace.useState(false);
700
+ if (result.type === "error") {
701
+ return /* @__PURE__ */ jsxRuntime.jsx(
702
+ "div",
703
+ {
704
+ className: chunkOR5DRJCW_cjs.cn(
705
+ "mt-2 rounded-md bg-red-50 p-3 dark:bg-red-900/20",
706
+ className
707
+ ),
708
+ children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-700 dark:text-red-300", children: typeof result.data === "string" ? String(result.data) : "An error occurred" })
709
+ }
710
+ );
711
+ }
712
+ const hasRawData = result.type === "json" && result.data !== void 0 && result.data !== null;
713
+ return /* @__PURE__ */ jsxRuntime.jsxs("div", { className: chunkOR5DRJCW_cjs.cn("space-y-2", className), children: [
714
+ result.summary && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-700 dark:text-neutral-300", children: result.summary }),
715
+ result.link && /* @__PURE__ */ jsxRuntime.jsx(ResourceLink, { link: result.link, onClick: onLinkClick }),
716
+ result.resources && result.resources.length > 0 && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex flex-wrap gap-2", children: result.resources.map((resource) => /* @__PURE__ */ jsxRuntime.jsx(
717
+ ResourceLink,
718
+ {
719
+ link: {
720
+ href: resource.uri || "#",
721
+ label: resource.name,
722
+ type: resource.type
723
+ },
724
+ onClick: onLinkClick
725
+ },
726
+ resource.id
727
+ )) }),
728
+ hasRawData && showRawData && /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "mt-2", children: [
729
+ /* @__PURE__ */ jsxRuntime.jsxs(
730
+ "button",
731
+ {
732
+ onClick: () => setShowJson(!showJson),
733
+ className: "flex items-center gap-1 text-xs text-neutral-600 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-300",
734
+ children: [
735
+ /* @__PURE__ */ jsxRuntime.jsx(
736
+ "svg",
737
+ {
738
+ "aria-hidden": "true",
739
+ className: chunkOR5DRJCW_cjs.cn(
740
+ "h-3 w-3 transition-transform",
741
+ showJson && "rotate-90"
742
+ ),
743
+ fill: "none",
744
+ viewBox: "0 0 24 24",
745
+ stroke: "currentColor",
746
+ strokeWidth: "2",
747
+ children: /* @__PURE__ */ jsxRuntime.jsx(
748
+ "path",
749
+ {
750
+ strokeLinecap: "round",
751
+ strokeLinejoin: "round",
752
+ d: "M9 5l7 7-7 7"
753
+ }
754
+ )
755
+ }
756
+ ),
757
+ showJson ? "Hide" : "Show",
758
+ " raw data"
759
+ ]
760
+ }
761
+ ),
762
+ showJson && /* @__PURE__ */ jsxRuntime.jsx("pre", { className: "mt-2 max-h-40 overflow-auto rounded-md bg-neutral-100 p-2 text-xs dark:bg-neutral-800", children: JSON.stringify(result.data, null, 2) })
763
+ ] })
764
+ ] });
765
+ }
766
+ var toolCallVariants = classVarianceAuthority.cva(
767
+ ["rounded-lg border", "overflow-hidden", "transition-all duration-200"],
768
+ {
769
+ variants: {
770
+ status: {
771
+ pending: "border-neutral-200 bg-neutral-50 dark:border-neutral-700 dark:bg-neutral-800/50",
772
+ running: "border-primary-200 bg-primary-50/50 dark:border-primary-800 dark:bg-primary-900/20",
773
+ success: "border-green-200 bg-green-50/50 dark:border-green-800 dark:bg-green-900/20",
774
+ error: "border-red-200 bg-red-50/50 dark:border-red-800 dark:bg-red-900/20",
775
+ cancelled: "border-neutral-200 bg-neutral-50 dark:border-neutral-700 dark:bg-neutral-800/50 opacity-60"
776
+ },
777
+ compact: {
778
+ true: "p-2",
779
+ false: "p-3"
780
+ }
781
+ },
782
+ defaultVariants: {
783
+ status: "pending",
784
+ compact: false
785
+ }
786
+ }
787
+ );
788
+ var TOOL_FRIENDLY_NAMES = {
789
+ create_patient: "Creating patient",
790
+ get_patient: "Looking up patient",
791
+ search_patients: "Searching patients",
792
+ update_patient: "Updating patient",
793
+ delete_patient: "Removing patient",
794
+ schedule_appointment: "Scheduling appointment",
795
+ cancel_appointment: "Canceling appointment",
796
+ update_appointment: "Updating appointment",
797
+ create_document: "Creating document",
798
+ upload_document: "Uploading document",
799
+ get_document: "Retrieving document",
800
+ search_documents: "Searching documents",
801
+ create_order: "Creating order",
802
+ send_message: "Sending message",
803
+ search: "Searching",
804
+ search_providers: "Searching for providers"
805
+ };
806
+ function getToolFriendlyName(toolName, status) {
807
+ const baseName = TOOL_FRIENDLY_NAMES[toolName] || toolName.replace(/_/g, " ");
808
+ if (status === "success") {
809
+ if (baseName.startsWith("Creating"))
810
+ return baseName.replace("Creating", "Created");
811
+ if (baseName.startsWith("Scheduling"))
812
+ return baseName.replace("Scheduling", "Scheduled");
813
+ if (baseName.startsWith("Searching for"))
814
+ return baseName.replace("Searching for", "Found");
815
+ if (baseName.startsWith("Searching"))
816
+ return baseName.replace("Searching", "Found");
817
+ if (baseName.startsWith("Looking"))
818
+ return baseName.replace("Looking", "Found");
819
+ if (baseName.startsWith("Updating"))
820
+ return baseName.replace("Updating", "Updated");
821
+ if (baseName.startsWith("Removing"))
822
+ return baseName.replace("Removing", "Removed");
823
+ if (baseName.startsWith("Canceling"))
824
+ return baseName.replace("Canceling", "Canceled");
825
+ if (baseName.startsWith("Retrieving"))
826
+ return baseName.replace("Retrieving", "Retrieved");
827
+ if (baseName.startsWith("Uploading"))
828
+ return baseName.replace("Uploading", "Uploaded");
829
+ if (baseName.startsWith("Sending"))
830
+ return baseName.replace("Sending", "Sent");
831
+ }
832
+ return baseName;
833
+ }
834
+ function getParameterSummary(toolName, params) {
835
+ const paramMap = Object.fromEntries(params.map((p) => [p.name, p.value]));
836
+ if (toolName === "create_patient" && paramMap.firstName && paramMap.lastName) {
837
+ return `${paramMap.firstName} ${paramMap.lastName}`;
838
+ }
839
+ if (toolName.includes("search") && paramMap.query) {
840
+ return `"${paramMap.query}"`;
841
+ }
842
+ if (toolName.includes("appointment") && paramMap.patientName) {
843
+ const date = paramMap.preferredDate || paramMap.date;
844
+ return date ? `${paramMap.patientName} on ${date}` : String(paramMap.patientName);
845
+ }
846
+ if (toolName === "search_providers" && paramMap.zipcode) {
847
+ const service = paramMap.service;
848
+ return service ? `${service} near ${paramMap.zipcode}` : `near ${paramMap.zipcode}`;
849
+ }
850
+ return null;
851
+ }
852
+ function MCPToolCallDisplay({
853
+ toolCall,
854
+ showParameters = true,
855
+ collapsible = true,
856
+ defaultCollapsed = true,
857
+ compact,
858
+ onLinkClick,
859
+ className
860
+ }) {
861
+ const [showDetails, setShowDetails] = React__namespace.useState(!defaultCollapsed);
862
+ const formatDuration = (ms) => {
863
+ if (!ms) return null;
864
+ if (ms < 1e3) return `${ms}ms`;
865
+ return `${(ms / 1e3).toFixed(1)}s`;
866
+ };
867
+ const friendlyName = getToolFriendlyName(toolCall.toolName, toolCall.status);
868
+ const paramSummary = getParameterSummary(
869
+ toolCall.toolName,
870
+ toolCall.parameters
871
+ );
872
+ return /* @__PURE__ */ jsxRuntime.jsx(
873
+ "div",
874
+ {
875
+ "data-slot": "ai-tool-call",
876
+ className: chunkOR5DRJCW_cjs.cn(
877
+ toolCallVariants({ status: toolCall.status, compact }),
878
+ className
879
+ ),
880
+ children: /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-start gap-3", children: [
881
+ /* @__PURE__ */ jsxRuntime.jsx(
882
+ "div",
883
+ {
884
+ "data-slot": "ai-tool-icon",
885
+ className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-md bg-white/50 text-neutral-600 dark:bg-neutral-700/50 dark:text-neutral-400",
886
+ children: getToolIcon(toolCall.toolName)
887
+ }
888
+ ),
889
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { "data-slot": "ai-tool-content", className: "min-w-0 flex-1", children: [
890
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "flex items-center gap-2", children: [
891
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-sm font-medium text-neutral-900 dark:text-white", children: friendlyName }),
892
+ /* @__PURE__ */ jsxRuntime.jsx(ToolStatusIcon, { status: toolCall.status }),
893
+ toolCall.duration && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "text-xs text-neutral-600 dark:text-neutral-400", children: formatDuration(toolCall.duration) })
894
+ ] }),
895
+ paramSummary && toolCall.status !== "success" && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-muted-foreground mt-0.5 text-sm", children: paramSummary }),
896
+ toolCall.result && /* @__PURE__ */ jsxRuntime.jsx("div", { "data-slot": "ai-tool-result", className: "mt-2", children: /* @__PURE__ */ jsxRuntime.jsx(
897
+ ToolResultDisplay,
898
+ {
899
+ result: toolCall.result,
900
+ onLinkClick,
901
+ showRawData: showDetails
902
+ }
903
+ ) }),
904
+ toolCall.error && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "mt-2 rounded-md bg-red-100 p-2 dark:bg-red-900/30", children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-red-700 dark:text-red-300", children: toolCall.error }) }),
905
+ collapsible && showParameters && toolCall.parameters.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
906
+ "button",
907
+ {
908
+ onClick: () => setShowDetails(!showDetails),
909
+ className: "mt-2 flex items-center gap-1 text-xs text-neutral-600 hover:text-neutral-700 dark:text-neutral-400 dark:hover:text-neutral-300",
910
+ children: [
911
+ /* @__PURE__ */ jsxRuntime.jsx(
912
+ "svg",
913
+ {
914
+ "aria-hidden": "true",
915
+ className: chunkOR5DRJCW_cjs.cn(
916
+ "h-3 w-3 transition-transform",
917
+ showDetails && "rotate-90"
918
+ ),
919
+ fill: "none",
920
+ viewBox: "0 0 24 24",
921
+ stroke: "currentColor",
922
+ strokeWidth: "2",
923
+ children: /* @__PURE__ */ jsxRuntime.jsx(
924
+ "path",
925
+ {
926
+ strokeLinecap: "round",
927
+ strokeLinejoin: "round",
928
+ d: "M9 5l7 7-7 7"
929
+ }
930
+ )
931
+ }
932
+ ),
933
+ showDetails ? "Hide" : "Show",
934
+ " details"
935
+ ]
936
+ }
937
+ ),
938
+ showDetails && showParameters && toolCall.parameters.length > 0 && /* @__PURE__ */ jsxRuntime.jsxs(
939
+ "div",
940
+ {
941
+ "data-slot": "ai-tool-parameters",
942
+ className: "mt-3 rounded-md bg-neutral-100 p-2 dark:bg-neutral-800",
943
+ children: [
944
+ /* @__PURE__ */ jsxRuntime.jsx("h4", { className: "mb-1.5 text-xs font-medium tracking-wide text-neutral-600 uppercase dark:text-neutral-400", children: "Parameters" }),
945
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-0.5", children: toolCall.parameters.map((param) => /* @__PURE__ */ jsxRuntime.jsxs(
946
+ "div",
947
+ {
948
+ className: "flex items-start gap-2 text-xs",
949
+ children: [
950
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "font-mono text-neutral-600 dark:text-neutral-400", children: [
951
+ param.name,
952
+ ":"
953
+ ] }),
954
+ /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-mono text-neutral-700 dark:text-neutral-300", children: typeof param.value === "string" ? param.value : JSON.stringify(param.value) })
955
+ ]
956
+ },
957
+ param.name
958
+ )) })
959
+ ]
960
+ }
961
+ )
962
+ ] })
963
+ ] })
964
+ }
965
+ );
966
+ }
967
+ var avatarVariants = classVarianceAuthority.cva(
968
+ "flex shrink-0 items-center justify-center rounded-full",
969
+ {
970
+ variants: {
971
+ role: {
972
+ user: "bg-primary-100 text-primary-900 dark:bg-primary-900/50 dark:text-primary-300",
973
+ assistant: "bg-primary-800 text-white dark:bg-primary-800",
974
+ system: "bg-neutral-200 text-neutral-600 dark:bg-neutral-700 dark:text-neutral-400",
975
+ tool: "bg-amber-100 text-amber-700 dark:bg-amber-900/50 dark:text-amber-300"
976
+ },
977
+ size: {
978
+ sm: "h-6 w-6 text-xs",
979
+ md: "h-8 w-8 text-sm",
980
+ lg: "h-10 w-10 text-base"
981
+ }
982
+ },
983
+ defaultVariants: {
984
+ role: "user",
985
+ size: "md"
986
+ }
987
+ }
988
+ );
989
+ function MessageAvatar({
990
+ role,
991
+ size,
992
+ userName,
993
+ className
994
+ }) {
995
+ const getInitials = (name) => {
996
+ if (!name) return "?";
997
+ return name.split(" ").map((n) => n[0]).join("").substring(0, 2).toUpperCase();
998
+ };
999
+ return /* @__PURE__ */ jsxRuntime.jsx(
1000
+ "div",
1001
+ {
1002
+ "data-slot": "ai-message-avatar",
1003
+ className: chunkOR5DRJCW_cjs.cn(avatarVariants({ role, size }), className),
1004
+ children: role === "assistant" ? /* @__PURE__ */ jsxRuntime.jsx(SparklesIcon, { size: "md" }) : role === "user" ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: "font-medium", children: getInitials(userName) }) : role === "system" ? /* @__PURE__ */ jsxRuntime.jsx(
1005
+ "svg",
1006
+ {
1007
+ "aria-hidden": "true",
1008
+ className: "h-4 w-4",
1009
+ fill: "none",
1010
+ viewBox: "0 0 24 24",
1011
+ stroke: "currentColor",
1012
+ strokeWidth: "1.5",
1013
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1014
+ "path",
1015
+ {
1016
+ strokeLinecap: "round",
1017
+ strokeLinejoin: "round",
1018
+ d: "M11.25 11.25l.041-.02a.75.75 0 011.063.852l-.708 2.836a.75.75 0 001.063.853l.041-.021M21 12a9 9 0 11-18 0 9 9 0 0118 0zm-9-3.75h.008v.008H12V8.25z"
1019
+ }
1020
+ )
1021
+ }
1022
+ ) : /* @__PURE__ */ jsxRuntime.jsx(
1023
+ "svg",
1024
+ {
1025
+ "aria-hidden": "true",
1026
+ className: "h-4 w-4",
1027
+ fill: "none",
1028
+ viewBox: "0 0 24 24",
1029
+ stroke: "currentColor",
1030
+ strokeWidth: "1.5",
1031
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1032
+ "path",
1033
+ {
1034
+ strokeLinecap: "round",
1035
+ strokeLinejoin: "round",
1036
+ d: "M11.42 15.17L17.25 21A2.652 2.652 0 0021 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 11-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14a4.5 4.5 0 004.486-6.336l-3.276 3.277a3.004 3.004 0 01-2.25-2.25l3.276-3.276a4.5 4.5 0 00-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437l1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008v-.008z"
1037
+ }
1038
+ )
1039
+ }
1040
+ )
1041
+ }
1042
+ );
1043
+ }
1044
+ function AITypingIndicator({ className }) {
1045
+ const dotStyle = {
1046
+ width: "6px",
1047
+ height: "6px",
1048
+ minWidth: "6px",
1049
+ minHeight: "6px",
1050
+ flexShrink: 0
1051
+ };
1052
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1053
+ "div",
1054
+ {
1055
+ "data-slot": "ai-typing-indicator",
1056
+ className: chunkOR5DRJCW_cjs.cn("inline-flex items-center justify-center gap-2", className),
1057
+ children: [
1058
+ /* @__PURE__ */ jsxRuntime.jsx(
1059
+ "span",
1060
+ {
1061
+ className: "rounded-full bg-neutral-500 dark:bg-neutral-400",
1062
+ style: {
1063
+ ...dotStyle,
1064
+ animation: "typing-dot 1.4s infinite ease-in-out both",
1065
+ animationDelay: "-0.32s"
1066
+ }
1067
+ }
1068
+ ),
1069
+ /* @__PURE__ */ jsxRuntime.jsx(
1070
+ "span",
1071
+ {
1072
+ className: "rounded-full bg-neutral-500 dark:bg-neutral-400",
1073
+ style: {
1074
+ ...dotStyle,
1075
+ animation: "typing-dot 1.4s infinite ease-in-out both",
1076
+ animationDelay: "-0.16s"
1077
+ }
1078
+ }
1079
+ ),
1080
+ /* @__PURE__ */ jsxRuntime.jsx(
1081
+ "span",
1082
+ {
1083
+ className: "rounded-full bg-neutral-500 dark:bg-neutral-400",
1084
+ style: {
1085
+ ...dotStyle,
1086
+ animation: "typing-dot 1.4s infinite ease-in-out both"
1087
+ }
1088
+ }
1089
+ ),
1090
+ /* @__PURE__ */ jsxRuntime.jsx("style", { children: `
1091
+ @keyframes typing-dot {
1092
+ 0%, 80%, 100% { opacity: 0.4; }
1093
+ 40% { opacity: 1; }
1094
+ }
1095
+ ` })
1096
+ ]
1097
+ }
1098
+ );
1099
+ }
1100
+ function ContentBlock({
1101
+ content,
1102
+ onLinkClick,
1103
+ messageId,
1104
+ streaming,
1105
+ role,
1106
+ renderTextContent
1107
+ }) {
1108
+ const [isCollapsed, setIsCollapsed] = React__namespace.useState(
1109
+ content.collapsed ?? false
1110
+ );
1111
+ if (content.type === "text" && content.text) {
1112
+ if (renderTextContent) {
1113
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "prose prose-sm dark:prose-invert max-w-none", children: renderTextContent(content.text, { messageId, streaming, role }) });
1114
+ }
1115
+ return /* @__PURE__ */ jsxRuntime.jsx("div", { className: "prose prose-sm dark:prose-invert max-w-none", children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "whitespace-pre-wrap", children: content.text }) });
1116
+ }
1117
+ if (content.type === "tool_use" && content.toolCall) {
1118
+ return /* @__PURE__ */ jsxRuntime.jsx(
1119
+ MCPToolCallDisplay,
1120
+ {
1121
+ toolCall: content.toolCall,
1122
+ onLinkClick,
1123
+ defaultCollapsed: content.collapsed
1124
+ }
1125
+ );
1126
+ }
1127
+ if (content.type === "thinking" && content.text) {
1128
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1129
+ "div",
1130
+ {
1131
+ "data-slot": "ai-message-thinking",
1132
+ className: "rounded-lg border border-neutral-200 bg-neutral-50 dark:border-neutral-700 dark:bg-neutral-800/50",
1133
+ children: [
1134
+ /* @__PURE__ */ jsxRuntime.jsxs(
1135
+ "button",
1136
+ {
1137
+ onClick: () => setIsCollapsed(!isCollapsed),
1138
+ className: "flex w-full items-center justify-between px-3 py-2 text-left",
1139
+ children: [
1140
+ /* @__PURE__ */ jsxRuntime.jsxs("span", { className: "text-muted-foreground flex items-center gap-2 text-sm", children: [
1141
+ /* @__PURE__ */ jsxRuntime.jsx(
1142
+ "svg",
1143
+ {
1144
+ "aria-hidden": "true",
1145
+ className: "h-4 w-4",
1146
+ fill: "none",
1147
+ viewBox: "0 0 24 24",
1148
+ stroke: "currentColor",
1149
+ strokeWidth: "1.5",
1150
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1151
+ "path",
1152
+ {
1153
+ strokeLinecap: "round",
1154
+ strokeLinejoin: "round",
1155
+ d: "M9.813 15.904L9 18.75l-.813-2.846a4.5 4.5 0 00-3.09-3.09L2.25 12l2.846-.813a4.5 4.5 0 003.09-3.09L9 5.25l.813 2.846a4.5 4.5 0 003.09 3.09L15.75 12l-2.846.813a4.5 4.5 0 00-3.09 3.09zM18.259 8.715L18 9.75l-.259-1.035a3.375 3.375 0 00-2.455-2.456L14.25 6l1.036-.259a3.375 3.375 0 002.455-2.456L18 2.25l.259 1.035a3.375 3.375 0 002.456 2.456L21.75 6l-1.035.259a3.375 3.375 0 00-2.456 2.456zM16.894 20.567L16.5 21.75l-.394-1.183a2.25 2.25 0 00-1.423-1.423L13.5 18.75l1.183-.394a2.25 2.25 0 001.423-1.423l.394-1.183.394 1.183a2.25 2.25 0 001.423 1.423l1.183.394-1.183.394a2.25 2.25 0 00-1.423 1.423z"
1156
+ }
1157
+ )
1158
+ }
1159
+ ),
1160
+ "Thinking..."
1161
+ ] }),
1162
+ /* @__PURE__ */ jsxRuntime.jsx(
1163
+ ChevronIcon,
1164
+ {
1165
+ direction: isCollapsed ? "right" : "down",
1166
+ className: "text-neutral-400"
1167
+ }
1168
+ )
1169
+ ]
1170
+ }
1171
+ ),
1172
+ !isCollapsed && /* @__PURE__ */ jsxRuntime.jsx("div", { className: "border-t border-neutral-200 px-3 py-2 dark:border-neutral-700", children: /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-sm text-neutral-600 italic dark:text-neutral-400", children: content.text }) })
1173
+ ]
1174
+ }
1175
+ );
1176
+ }
1177
+ if (content.type === "code" && content.text) {
1178
+ return /* @__PURE__ */ jsxRuntime.jsx(
1179
+ "pre",
1180
+ {
1181
+ "data-slot": "ai-message-code",
1182
+ className: "rounded-lg bg-neutral-900 p-3 text-sm dark:bg-neutral-950",
1183
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1184
+ "code",
1185
+ {
1186
+ className: content.language ? `language-${content.language}` : "",
1187
+ children: content.text
1188
+ }
1189
+ )
1190
+ }
1191
+ );
1192
+ }
1193
+ if (content.type === "audio" && content.audioUrl) {
1194
+ if (/^\s*javascript:/i.test(content.audioUrl)) {
1195
+ return null;
1196
+ }
1197
+ return /* @__PURE__ */ jsxRuntime.jsx(
1198
+ chunkLOTMAKUG_cjs.AudioPlayer,
1199
+ {
1200
+ src: content.audioUrl,
1201
+ title: content.text || "Audio recording",
1202
+ variant: "waveform",
1203
+ showTime: true,
1204
+ showPlaybackRate: true,
1205
+ fallbackDuration: content.duration
1206
+ }
1207
+ );
1208
+ }
1209
+ if (content.type === "video" && content.videoUrl) {
1210
+ if (/^\s*javascript:/i.test(content.videoUrl)) {
1211
+ return null;
1212
+ }
1213
+ return /* @__PURE__ */ jsxRuntime.jsx(
1214
+ "video",
1215
+ {
1216
+ src: content.videoUrl,
1217
+ controls: true,
1218
+ preload: "metadata",
1219
+ "aria-label": content.text || "Video recording",
1220
+ className: "my-1 max-h-80 w-full rounded-lg bg-black",
1221
+ children: /* @__PURE__ */ jsxRuntime.jsx("track", { kind: "captions" })
1222
+ }
1223
+ );
1224
+ }
1225
+ if (content.type === "image" && content.imageUrl) {
1226
+ const safeHref = /^\s*javascript:/i.test(content.imageUrl) ? void 0 : content.imageUrl;
1227
+ return /* @__PURE__ */ jsxRuntime.jsx(
1228
+ "a",
1229
+ {
1230
+ href: safeHref,
1231
+ target: "_blank",
1232
+ rel: "noopener noreferrer",
1233
+ className: "block w-fit transition-transform hover:scale-[1.02]",
1234
+ "aria-label": `View ${content.name || "Uploaded image"}`,
1235
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1236
+ "img",
1237
+ {
1238
+ src: content.imageUrl,
1239
+ alt: content.name || "Uploaded image",
1240
+ loading: "lazy",
1241
+ className: "my-1 max-h-64 w-auto rounded-lg object-cover"
1242
+ }
1243
+ )
1244
+ }
1245
+ );
1246
+ }
1247
+ if (content.type === "file") {
1248
+ const sizeLabel = typeof content.fileSize === "number" ? formatFileSize(content.fileSize) : void 0;
1249
+ const card = /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "my-1 flex items-center gap-3 rounded-lg bg-neutral-100 p-3 transition-colors dark:bg-neutral-800", children: [
1250
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "rounded-lg bg-neutral-200 p-2 dark:bg-neutral-700", children: /* @__PURE__ */ jsxRuntime.jsx(
1251
+ "svg",
1252
+ {
1253
+ "aria-hidden": "true",
1254
+ className: "h-6 w-6",
1255
+ fill: "none",
1256
+ viewBox: "0 0 24 24",
1257
+ stroke: "currentColor",
1258
+ strokeWidth: 2,
1259
+ children: /* @__PURE__ */ jsxRuntime.jsx(
1260
+ "path",
1261
+ {
1262
+ strokeLinecap: "round",
1263
+ strokeLinejoin: "round",
1264
+ d: "M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"
1265
+ }
1266
+ )
1267
+ }
1268
+ ) }),
1269
+ /* @__PURE__ */ jsxRuntime.jsxs("div", { className: "min-w-0 flex-1", children: [
1270
+ /* @__PURE__ */ jsxRuntime.jsx("p", { className: "truncate text-sm font-medium", children: content.name || "Document" }),
1271
+ sizeLabel && /* @__PURE__ */ jsxRuntime.jsx("p", { className: "text-xs opacity-70", children: sizeLabel })
1272
+ ] })
1273
+ ] });
1274
+ if (content.fileUrl) {
1275
+ const safeFileHref = /^\s*javascript:/i.test(content.fileUrl) ? void 0 : content.fileUrl;
1276
+ return /* @__PURE__ */ jsxRuntime.jsx(
1277
+ "a",
1278
+ {
1279
+ href: safeFileHref,
1280
+ target: "_blank",
1281
+ rel: "noopener noreferrer",
1282
+ className: "block w-fit no-underline",
1283
+ children: card
1284
+ }
1285
+ );
1286
+ }
1287
+ return card;
1288
+ }
1289
+ return null;
1290
+ }
1291
+ function formatFileSize(bytes) {
1292
+ if (bytes < 1024) return `${bytes} B`;
1293
+ if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;
1294
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
1295
+ }
1296
+ var messageVariants = classVarianceAuthority.cva("flex gap-3", {
1297
+ variants: {
1298
+ role: {
1299
+ user: "flex-row-reverse",
1300
+ assistant: "flex-row",
1301
+ system: "flex-row justify-center",
1302
+ tool: "flex-row"
1303
+ }
1304
+ },
1305
+ defaultVariants: {
1306
+ role: "assistant"
1307
+ }
1308
+ });
1309
+ var bubbleVariants = classVarianceAuthority.cva("rounded-2xl px-4 py-2.5 w-fit max-w-[85%]", {
1310
+ variants: {
1311
+ variant: {
1312
+ user: "bg-primary-800 text-white dark:bg-primary-800",
1313
+ assistant: "bg-neutral-100 text-neutral-900 dark:bg-neutral-800 dark:text-white",
1314
+ system: "bg-neutral-100 text-neutral-600 dark:bg-neutral-800 dark:text-neutral-400 text-center text-sm max-w-[95%]",
1315
+ tool: "bg-transparent p-0 max-w-full w-full"
1316
+ }
1317
+ },
1318
+ defaultVariants: {
1319
+ variant: "assistant"
1320
+ }
1321
+ });
1322
+ var ChatBubble = React__namespace.forwardRef(
1323
+ ({ className, variant, hasError, accent, style, children, ...props }, ref) => {
1324
+ return /* @__PURE__ */ jsxRuntime.jsx(
1325
+ "div",
1326
+ {
1327
+ ref,
1328
+ "data-slot": "chat-bubble",
1329
+ className: chunkOR5DRJCW_cjs.cn(
1330
+ bubbleVariants({ variant }),
1331
+ hasError && "border border-red-300 dark:border-red-700",
1332
+ className
1333
+ ),
1334
+ style: accent ? { borderLeft: `3px solid ${accent}`, ...style } : style,
1335
+ ...props,
1336
+ children
1337
+ }
1338
+ );
1339
+ }
1340
+ );
1341
+ ChatBubble.displayName = "ChatBubble";
1342
+ function AIMessageDisplay({
1343
+ message,
1344
+ userName,
1345
+ showAvatar = true,
1346
+ showTimestamp = false,
1347
+ onLinkClick,
1348
+ renderTextContent,
1349
+ className
1350
+ }) {
1351
+ const isStreaming = message.status === "streaming";
1352
+ const hasContent = message.content.length > 0;
1353
+ const formatTime = (timestamp) => {
1354
+ const date = new Date(timestamp);
1355
+ return date.toLocaleTimeString(void 0, {
1356
+ hour: "numeric",
1357
+ minute: "2-digit"
1358
+ });
1359
+ };
1360
+ if (message.role === "tool") {
1361
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1362
+ "div",
1363
+ {
1364
+ "data-slot": "ai-message",
1365
+ className: chunkOR5DRJCW_cjs.cn(messageVariants({ role: message.role }), className),
1366
+ children: [
1367
+ showAvatar && /* @__PURE__ */ jsxRuntime.jsx(MessageAvatar, { role: message.role }),
1368
+ /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex-1 space-y-2", children: message.content.map((content, index) => /* @__PURE__ */ jsxRuntime.jsx(
1369
+ ContentBlock,
1370
+ {
1371
+ content,
1372
+ onLinkClick,
1373
+ messageId: message.id,
1374
+ streaming: isStreaming,
1375
+ role: message.role,
1376
+ renderTextContent
1377
+ },
1378
+ index
1379
+ )) })
1380
+ ]
1381
+ }
1382
+ );
1383
+ }
1384
+ return /* @__PURE__ */ jsxRuntime.jsxs(
1385
+ "div",
1386
+ {
1387
+ "data-slot": "ai-message",
1388
+ className: chunkOR5DRJCW_cjs.cn(messageVariants({ role: message.role }), className),
1389
+ children: [
1390
+ showAvatar && message.role !== "system" && /* @__PURE__ */ jsxRuntime.jsx(MessageAvatar, { role: message.role, userName }),
1391
+ /* @__PURE__ */ jsxRuntime.jsxs(
1392
+ "div",
1393
+ {
1394
+ className: chunkOR5DRJCW_cjs.cn(
1395
+ "flex min-w-0 flex-1 flex-col gap-1",
1396
+ message.role === "user" && "items-end"
1397
+ ),
1398
+ children: [
1399
+ /* @__PURE__ */ jsxRuntime.jsx(
1400
+ ChatBubble,
1401
+ {
1402
+ "data-slot": "ai-message-bubble",
1403
+ variant: message.role,
1404
+ hasError: message.status === "error",
1405
+ children: hasContent ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "space-y-3", children: message.content.map((content, index) => /* @__PURE__ */ jsxRuntime.jsx(
1406
+ ContentBlock,
1407
+ {
1408
+ content,
1409
+ onLinkClick,
1410
+ messageId: message.id,
1411
+ streaming: isStreaming,
1412
+ role: message.role,
1413
+ renderTextContent
1414
+ },
1415
+ index
1416
+ )) }) : isStreaming ? /* @__PURE__ */ jsxRuntime.jsx("div", { className: "flex items-center justify-center", children: /* @__PURE__ */ jsxRuntime.jsx(AITypingIndicator, {}) }) : null
1417
+ }
1418
+ ),
1419
+ showTimestamp && /* @__PURE__ */ jsxRuntime.jsx(
1420
+ "span",
1421
+ {
1422
+ "data-slot": "ai-message-timestamp",
1423
+ className: "px-2 text-xs text-neutral-500",
1424
+ children: formatTime(message.timestamp)
1425
+ }
1426
+ ),
1427
+ message.status === "error" && /* @__PURE__ */ jsxRuntime.jsx("span", { className: "px-2 text-xs text-red-500", children: message.role === "user" ? "Failed to send" : "An error occurred" })
1428
+ ]
1429
+ }
1430
+ )
1431
+ ]
1432
+ }
1433
+ );
1434
+ }
1435
+
1436
+ exports.AILogoIcon = AILogoIcon;
1437
+ exports.AIMessageDisplay = AIMessageDisplay;
1438
+ exports.AITypingIndicator = AITypingIndicator;
1439
+ exports.ChatBubble = ChatBubble;
1440
+ exports.ChevronIcon = ChevronIcon;
1441
+ exports.CloseIcon = CloseIcon;
1442
+ exports.MCPToolCallDisplay = MCPToolCallDisplay;
1443
+ exports.MessageAvatar = MessageAvatar;
1444
+ exports.RefreshIcon = RefreshIcon;
1445
+ exports.ResourceLink = ResourceLink;
1446
+ exports.SendIcon = SendIcon;
1447
+ exports.SparklesIcon = SparklesIcon;
1448
+ exports.SpinnerIcon = SpinnerIcon;
1449
+ exports.ToolStatusIcon = ToolStatusIcon;
1450
+ exports.getToolIcon = getToolIcon;
1451
+ //# sourceMappingURL=chunk-IWDQPSJN.cjs.map
1452
+ //# sourceMappingURL=chunk-IWDQPSJN.cjs.map