@vertesia/ui 1.0.0-dev.20260128.144200 → 1.0.0-dev.20260225.024852Z

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 (500) hide show
  1. package/lib/esm/core/components/InputList.js +1 -1
  2. package/lib/esm/core/components/InputList.js.map +1 -1
  3. package/lib/esm/core/components/Overlay.js +1 -1
  4. package/lib/esm/core/components/Overlay.js.map +1 -1
  5. package/lib/esm/core/components/SidePanel.js +8 -2
  6. package/lib/esm/core/components/SidePanel.js.map +1 -1
  7. package/lib/esm/core/components/Switch.js +1 -1
  8. package/lib/esm/core/components/Switch.js.map +1 -1
  9. package/lib/esm/core/components/index.js +0 -8
  10. package/lib/esm/core/components/index.js.map +1 -1
  11. package/lib/esm/core/components/shadcn/MessageBox.js.map +1 -0
  12. package/lib/esm/core/components/shadcn/Panel.js +13 -0
  13. package/lib/esm/core/components/shadcn/Panel.js.map +1 -0
  14. package/lib/esm/core/components/{Badge.js → shadcn/badge.js} +2 -2
  15. package/lib/esm/core/components/shadcn/badge.js.map +1 -0
  16. package/lib/esm/core/components/shadcn/command.js +1 -1
  17. package/lib/esm/core/components/shadcn/command.js.map +1 -1
  18. package/lib/esm/core/components/shadcn/filters/filterBar.js +73 -83
  19. package/lib/esm/core/components/shadcn/filters/filterBar.js.map +1 -1
  20. package/lib/esm/core/components/shadcn/index.js +4 -2
  21. package/lib/esm/core/components/shadcn/index.js.map +1 -1
  22. package/lib/esm/core/components/shadcn/modal/ConfirmModal.js +10 -0
  23. package/lib/esm/core/components/shadcn/modal/ConfirmModal.js.map +1 -0
  24. package/lib/esm/core/components/{DeleteModal.js → shadcn/modal/DeleteModal.js} +1 -1
  25. package/lib/esm/core/components/shadcn/modal/DeleteModal.js.map +1 -0
  26. package/lib/esm/core/components/shadcn/{dialog.js → modal/dialog.js} +19 -15
  27. package/lib/esm/core/components/shadcn/modal/dialog.js.map +1 -0
  28. package/lib/esm/core/components/shadcn/modal/index.js +4 -0
  29. package/lib/esm/core/components/shadcn/modal/index.js.map +1 -0
  30. package/lib/esm/core/components/shadcn/popover.js +4 -2
  31. package/lib/esm/core/components/shadcn/popover.js.map +1 -1
  32. package/lib/esm/core/components/shadcn/selectBox.js +19 -15
  33. package/lib/esm/core/components/shadcn/selectBox.js.map +1 -1
  34. package/lib/esm/core/components/shadcn/tabs.js +16 -14
  35. package/lib/esm/core/components/shadcn/tabs.js.map +1 -1
  36. package/lib/esm/core/components/shadcn/textarea.js +30 -2
  37. package/lib/esm/core/components/shadcn/textarea.js.map +1 -1
  38. package/lib/esm/core/components/shadcn/tooltip.js +5 -1
  39. package/lib/esm/core/components/shadcn/tooltip.js.map +1 -1
  40. package/lib/esm/features/agent/PayloadBuilder.js +45 -0
  41. package/lib/esm/features/agent/PayloadBuilder.js.map +1 -1
  42. package/lib/esm/features/agent/chat/AgentChart.js +12 -232
  43. package/lib/esm/features/agent/chat/AgentChart.js.map +1 -1
  44. package/lib/esm/features/agent/chat/AskUserWidget.js +2 -1
  45. package/lib/esm/features/agent/chat/AskUserWidget.js.map +1 -1
  46. package/lib/esm/features/agent/chat/DocumentPanel.js +46 -0
  47. package/lib/esm/features/agent/chat/DocumentPanel.js.map +1 -0
  48. package/lib/esm/features/agent/chat/DocumentTabBar.js +17 -0
  49. package/lib/esm/features/agent/chat/DocumentTabBar.js.map +1 -0
  50. package/lib/esm/features/agent/chat/ModernAgentConversation.js +159 -402
  51. package/lib/esm/features/agent/chat/ModernAgentConversation.js.map +1 -1
  52. package/lib/esm/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +99 -57
  53. package/lib/esm/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  54. package/lib/esm/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js +4 -4
  55. package/lib/esm/features/agent/chat/ModernAgentOutput/BatchProgressPanel.js.map +1 -1
  56. package/lib/esm/features/agent/chat/ModernAgentOutput/Header.js +4 -4
  57. package/lib/esm/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
  58. package/lib/esm/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.js +3 -3
  59. package/lib/esm/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.js.map +1 -1
  60. package/lib/esm/features/agent/chat/ModernAgentOutput/MessageInput.js +25 -22
  61. package/lib/esm/features/agent/chat/ModernAgentOutput/MessageInput.js.map +1 -1
  62. package/lib/esm/features/agent/chat/ModernAgentOutput/MessageItem.js +110 -55
  63. package/lib/esm/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
  64. package/lib/esm/features/agent/chat/ModernAgentOutput/StreamingMessage.js +2 -2
  65. package/lib/esm/features/agent/chat/ModernAgentOutput/StreamingMessage.js.map +1 -1
  66. package/lib/esm/features/agent/chat/ModernAgentOutput/ToolCallGroup.js +146 -55
  67. package/lib/esm/features/agent/chat/ModernAgentOutput/ToolCallGroup.js.map +1 -1
  68. package/lib/esm/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js +5 -6
  69. package/lib/esm/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js.map +1 -1
  70. package/lib/esm/features/agent/chat/ModernAgentOutput/utils.js +110 -2
  71. package/lib/esm/features/agent/chat/ModernAgentOutput/utils.js.map +1 -1
  72. package/lib/esm/features/agent/chat/SkillWidgetProvider.js +28 -15
  73. package/lib/esm/features/agent/chat/SkillWidgetProvider.js.map +1 -1
  74. package/lib/esm/features/agent/chat/hooks/useAgentPlans.js +146 -0
  75. package/lib/esm/features/agent/chat/hooks/useAgentPlans.js.map +1 -0
  76. package/lib/esm/features/agent/chat/hooks/useAgentStream.js +180 -0
  77. package/lib/esm/features/agent/chat/hooks/useAgentStream.js.map +1 -0
  78. package/lib/esm/features/agent/chat/hooks/useDocumentPanel.js +100 -0
  79. package/lib/esm/features/agent/chat/hooks/useDocumentPanel.js.map +1 -0
  80. package/lib/esm/features/agent/chat/hooks/useFileProcessing.js +90 -0
  81. package/lib/esm/features/agent/chat/hooks/useFileProcessing.js.map +1 -0
  82. package/lib/esm/features/agent/chat/index.js +6 -5
  83. package/lib/esm/features/agent/chat/index.js.map +1 -1
  84. package/lib/esm/features/agent/chat/types/document.js +2 -0
  85. package/lib/esm/features/agent/chat/types/document.js.map +1 -0
  86. package/lib/esm/features/agent/index.js +0 -2
  87. package/lib/esm/features/agent/index.js.map +1 -1
  88. package/lib/esm/features/store/collections/BrowseCollectionView.js +4 -6
  89. package/lib/esm/features/store/collections/BrowseCollectionView.js.map +1 -1
  90. package/lib/esm/features/store/collections/CreateCollection.js +4 -4
  91. package/lib/esm/features/store/collections/CreateCollection.js.map +1 -1
  92. package/lib/esm/features/store/collections/EditCollectionView.js +1 -1
  93. package/lib/esm/features/store/collections/EditCollectionView.js.map +1 -1
  94. package/lib/esm/features/store/objects/DocumentSearchResults.js +5 -5
  95. package/lib/esm/features/store/objects/DocumentSearchResults.js.map +1 -1
  96. package/lib/esm/features/store/objects/ExportPropertiesModal.js +3 -3
  97. package/lib/esm/features/store/objects/ExportPropertiesModal.js.map +1 -1
  98. package/lib/esm/features/store/objects/components/ContentOverview.js +19 -120
  99. package/lib/esm/features/store/objects/components/ContentOverview.js.map +1 -1
  100. package/lib/esm/features/store/objects/components/PropertiesEditorModal.js +1 -1
  101. package/lib/esm/features/store/objects/components/PropertiesEditorModal.js.map +1 -1
  102. package/lib/esm/features/store/objects/components/SelectDocumentModal.js +2 -2
  103. package/lib/esm/features/store/objects/components/SelectDocumentModal.js.map +1 -1
  104. package/lib/esm/features/store/objects/components/VectorSearchWidget.js +1 -1
  105. package/lib/esm/features/store/objects/components/VectorSearchWidget.js.map +1 -1
  106. package/lib/esm/features/store/objects/components/index.js +1 -1
  107. package/lib/esm/features/store/objects/components/index.js.map +1 -1
  108. package/lib/esm/features/store/objects/components/useDownloadFile.js +192 -0
  109. package/lib/esm/features/store/objects/components/useDownloadFile.js.map +1 -0
  110. package/lib/esm/features/store/objects/search/DocumentSearchContext.js +1 -2
  111. package/lib/esm/features/store/objects/search/DocumentSearchContext.js.map +1 -1
  112. package/lib/esm/features/store/objects/selection/SelectionActions.js +5 -8
  113. package/lib/esm/features/store/objects/selection/SelectionActions.js.map +1 -1
  114. package/lib/esm/features/store/objects/selection/actions/AddToCollectionAction.js +4 -4
  115. package/lib/esm/features/store/objects/selection/actions/AddToCollectionAction.js.map +1 -1
  116. package/lib/esm/features/store/objects/selection/actions/ChangeTypeAction.js +2 -2
  117. package/lib/esm/features/store/objects/selection/actions/ChangeTypeAction.js.map +1 -1
  118. package/lib/esm/features/store/objects/selection/actions/ExportPropertiesAction.js +1 -1
  119. package/lib/esm/features/store/objects/selection/actions/ExportPropertiesAction.js.map +1 -1
  120. package/lib/esm/features/store/objects/selection/actions/StartWorkflowComponent.js +3 -3
  121. package/lib/esm/features/store/objects/selection/actions/StartWorkflowComponent.js.map +1 -1
  122. package/lib/esm/features/store/objects/upload/DocumentUploadModal.js +13 -13
  123. package/lib/esm/features/store/objects/upload/DocumentUploadModal.js.map +1 -1
  124. package/lib/esm/features/store/objects/upload/useSmartFileUploadProcessing.js +15 -8
  125. package/lib/esm/features/store/objects/upload/useSmartFileUploadProcessing.js.map +1 -1
  126. package/lib/esm/features/store/types/ObjectSchemaEditor.js +6 -5
  127. package/lib/esm/features/store/types/ObjectSchemaEditor.js.map +1 -1
  128. package/lib/esm/features/store/types/SelectContentType.js +3 -3
  129. package/lib/esm/features/store/types/SelectContentType.js.map +1 -1
  130. package/lib/esm/features/store/types/SelectContentTypeModal.js +5 -4
  131. package/lib/esm/features/store/types/SelectContentTypeModal.js.map +1 -1
  132. package/lib/esm/features/store/types/TableLayoutEditor.js +4 -4
  133. package/lib/esm/features/store/types/TableLayoutEditor.js.map +1 -1
  134. package/lib/esm/features/user/UserInfo.js +73 -9
  135. package/lib/esm/features/user/UserInfo.js.map +1 -1
  136. package/lib/esm/features/utils/print.js +0 -1
  137. package/lib/esm/features/utils/print.js.map +1 -1
  138. package/lib/esm/layout/AppLayout.js +3 -4
  139. package/lib/esm/layout/AppLayout.js.map +1 -1
  140. package/lib/esm/layout/Sidebar.js +5 -5
  141. package/lib/esm/layout/Sidebar.js.map +1 -1
  142. package/lib/esm/router/HistoryNavigator.js +7 -1
  143. package/lib/esm/router/HistoryNavigator.js.map +1 -1
  144. package/lib/esm/router/Nav.js +2 -2
  145. package/lib/esm/router/Nav.js.map +1 -1
  146. package/lib/esm/session/UserSession.js +35 -9
  147. package/lib/esm/session/UserSession.js.map +1 -1
  148. package/lib/esm/session/UserSessionProvider.js +3 -2
  149. package/lib/esm/session/UserSessionProvider.js.map +1 -1
  150. package/lib/esm/shell/apps/AppProjectSelector.js +2 -2
  151. package/lib/esm/shell/apps/AppProjectSelector.js.map +1 -1
  152. package/lib/esm/shell/apps/StandaloneApp.js +2 -2
  153. package/lib/esm/shell/apps/StandaloneApp.js.map +1 -1
  154. package/lib/esm/shell/login/InviteAcceptModal.js +2 -2
  155. package/lib/esm/shell/login/InviteAcceptModal.js.map +1 -1
  156. package/lib/esm/shell/login/SignInModal.js +1 -1
  157. package/lib/esm/shell/login/SignInModal.js.map +1 -1
  158. package/lib/esm/shell/login/SignupForm.js +2 -2
  159. package/lib/esm/shell/login/SignupForm.js.map +1 -1
  160. package/lib/esm/shell/login/UserInfo.js +2 -2
  161. package/lib/esm/shell/login/UserInfo.js.map +1 -1
  162. package/lib/esm/widgets/json-view/JSONCode.js +1 -1
  163. package/lib/esm/widgets/json-view/JSONCode.js.map +1 -1
  164. package/lib/esm/widgets/json-view/JSONDisplay.js +1 -1
  165. package/lib/esm/widgets/json-view/JSONDisplay.js.map +1 -1
  166. package/lib/esm/widgets/markdown/ArtifactContentRenderer.js +84 -13
  167. package/lib/esm/widgets/markdown/ArtifactContentRenderer.js.map +1 -1
  168. package/lib/esm/widgets/markdown/MarkdownFigure.js +40 -0
  169. package/lib/esm/widgets/markdown/MarkdownFigure.js.map +1 -0
  170. package/lib/esm/widgets/markdown/MarkdownRenderer.js +42 -7
  171. package/lib/esm/widgets/markdown/MarkdownRenderer.js.map +1 -1
  172. package/lib/esm/widgets/markdown/MermaidDiagram.js +80 -5
  173. package/lib/esm/widgets/markdown/MermaidDiagram.js.map +1 -1
  174. package/lib/esm/widgets/markdown/codeBlockHandlers.js +33 -33
  175. package/lib/esm/widgets/markdown/codeBlockHandlers.js.map +1 -1
  176. package/lib/esm/widgets/markdown/codeBlockHandlers.test.js +2 -29
  177. package/lib/esm/widgets/markdown/codeBlockHandlers.test.js.map +1 -1
  178. package/lib/esm/widgets/markdown/index.js +1 -0
  179. package/lib/esm/widgets/markdown/index.js.map +1 -1
  180. package/lib/esm/widgets/markdown/normalizeCustomSchemeLinks.js +77 -0
  181. package/lib/esm/widgets/markdown/normalizeCustomSchemeLinks.js.map +1 -0
  182. package/lib/esm/widgets/markdown/normalizeDirectives.js +45 -0
  183. package/lib/esm/widgets/markdown/normalizeDirectives.js.map +1 -0
  184. package/lib/esm/widgets/markdown/remarkDirectiveHandler.js +96 -0
  185. package/lib/esm/widgets/markdown/remarkDirectiveHandler.js.map +1 -0
  186. package/lib/esm/widgets/monacoEditor/MonacoEditor.js +8 -14
  187. package/lib/esm/widgets/monacoEditor/MonacoEditor.js.map +1 -1
  188. package/lib/esm/widgets/schema-editor/ManagedSchema.js.map +1 -1
  189. package/lib/esm/widgets/schema-editor/editor/PropertyEditor.js +3 -3
  190. package/lib/esm/widgets/schema-editor/editor/PropertyEditor.js.map +1 -1
  191. package/lib/esm/widgets/schema-editor/json-schema4-utils.js.map +1 -1
  192. package/lib/tsconfig.tsbuildinfo +1 -1
  193. package/lib/types/core/components/SidePanel.d.ts +4 -1
  194. package/lib/types/core/components/SidePanel.d.ts.map +1 -1
  195. package/lib/types/core/components/index.d.ts +0 -8
  196. package/lib/types/core/components/index.d.ts.map +1 -1
  197. package/lib/types/core/components/shadcn/MessageBox.d.ts.map +1 -0
  198. package/lib/types/core/components/{Panel.d.ts → shadcn/Panel.d.ts} +3 -1
  199. package/lib/types/core/components/shadcn/Panel.d.ts.map +1 -0
  200. package/lib/types/core/components/{Badge.d.ts → shadcn/badge.d.ts} +4 -4
  201. package/lib/types/core/components/shadcn/badge.d.ts.map +1 -0
  202. package/lib/types/core/components/shadcn/button.d.ts +1 -1
  203. package/lib/types/core/components/shadcn/filters/filterBar.d.ts.map +1 -1
  204. package/lib/types/core/components/shadcn/index.d.ts +4 -2
  205. package/lib/types/core/components/shadcn/index.d.ts.map +1 -1
  206. package/lib/types/core/components/shadcn/input.d.ts +1 -1
  207. package/lib/types/core/components/shadcn/modal/ConfirmModal.d.ts.map +1 -0
  208. package/lib/types/core/components/shadcn/modal/DeleteModal.d.ts.map +1 -0
  209. package/lib/types/core/components/shadcn/{dialog.d.ts → modal/dialog.d.ts} +7 -4
  210. package/lib/types/core/components/shadcn/modal/dialog.d.ts.map +1 -0
  211. package/lib/types/core/components/shadcn/modal/index.d.ts +4 -0
  212. package/lib/types/core/components/shadcn/modal/index.d.ts.map +1 -0
  213. package/lib/types/core/components/shadcn/popover.d.ts.map +1 -1
  214. package/lib/types/core/components/shadcn/selectBox.d.ts +9 -5
  215. package/lib/types/core/components/shadcn/selectBox.d.ts.map +1 -1
  216. package/lib/types/core/components/shadcn/tabs.d.ts +14 -5
  217. package/lib/types/core/components/shadcn/tabs.d.ts.map +1 -1
  218. package/lib/types/core/components/shadcn/textarea.d.ts +6 -2
  219. package/lib/types/core/components/shadcn/textarea.d.ts.map +1 -1
  220. package/lib/types/core/components/shadcn/tooltip.d.ts.map +1 -1
  221. package/lib/types/features/agent/PayloadBuilder.d.ts +22 -4
  222. package/lib/types/features/agent/PayloadBuilder.d.ts.map +1 -1
  223. package/lib/types/features/agent/chat/AgentChart.d.ts +3 -44
  224. package/lib/types/features/agent/chat/AgentChart.d.ts.map +1 -1
  225. package/lib/types/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  226. package/lib/types/features/agent/chat/DocumentPanel.d.ts +16 -0
  227. package/lib/types/features/agent/chat/DocumentPanel.d.ts.map +1 -0
  228. package/lib/types/features/agent/chat/DocumentTabBar.d.ts +10 -0
  229. package/lib/types/features/agent/chat/DocumentTabBar.d.ts.map +1 -0
  230. package/lib/types/features/agent/chat/ModernAgentConversation.d.ts +69 -1
  231. package/lib/types/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
  232. package/lib/types/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts +36 -1
  233. package/lib/types/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  234. package/lib/types/features/agent/chat/ModernAgentOutput/BatchProgressPanel.d.ts +18 -2
  235. package/lib/types/features/agent/chat/ModernAgentOutput/BatchProgressPanel.d.ts.map +1 -1
  236. package/lib/types/features/agent/chat/ModernAgentOutput/Header.d.ts +4 -7
  237. package/lib/types/features/agent/chat/ModernAgentOutput/Header.d.ts.map +1 -1
  238. package/lib/types/features/agent/chat/ModernAgentOutput/MessageInput.d.ts +2 -1
  239. package/lib/types/features/agent/chat/ModernAgentOutput/MessageInput.d.ts.map +1 -1
  240. package/lib/types/features/agent/chat/ModernAgentOutput/MessageItem.d.ts +35 -7
  241. package/lib/types/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
  242. package/lib/types/features/agent/chat/ModernAgentOutput/StreamingMessage.d.ts +11 -1
  243. package/lib/types/features/agent/chat/ModernAgentOutput/StreamingMessage.d.ts.map +1 -1
  244. package/lib/types/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts +20 -2
  245. package/lib/types/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts.map +1 -1
  246. package/lib/types/features/agent/chat/ModernAgentOutput/WorkstreamTabs.d.ts.map +1 -1
  247. package/lib/types/features/agent/chat/ModernAgentOutput/utils.d.ts +18 -1
  248. package/lib/types/features/agent/chat/ModernAgentOutput/utils.d.ts.map +1 -1
  249. package/lib/types/features/agent/chat/SkillWidgetProvider.d.ts.map +1 -1
  250. package/lib/types/features/agent/chat/hooks/useAgentPlans.d.ts +22 -0
  251. package/lib/types/features/agent/chat/hooks/useAgentPlans.d.ts.map +1 -0
  252. package/lib/types/features/agent/chat/hooks/useAgentStream.d.ts +42 -0
  253. package/lib/types/features/agent/chat/hooks/useAgentStream.d.ts.map +1 -0
  254. package/lib/types/features/agent/chat/hooks/useDocumentPanel.d.ts +22 -0
  255. package/lib/types/features/agent/chat/hooks/useDocumentPanel.d.ts.map +1 -0
  256. package/lib/types/features/agent/chat/hooks/useFileProcessing.d.ts +27 -0
  257. package/lib/types/features/agent/chat/hooks/useFileProcessing.d.ts.map +1 -0
  258. package/lib/types/features/agent/chat/index.d.ts +12 -8
  259. package/lib/types/features/agent/chat/index.d.ts.map +1 -1
  260. package/lib/types/features/agent/chat/types/document.d.ts +5 -0
  261. package/lib/types/features/agent/chat/types/document.d.ts.map +1 -0
  262. package/lib/types/features/agent/index.d.ts +0 -2
  263. package/lib/types/features/agent/index.d.ts.map +1 -1
  264. package/lib/types/features/store/collections/BrowseCollectionView.d.ts.map +1 -1
  265. package/lib/types/features/store/objects/ExportPropertiesModal.d.ts.map +1 -1
  266. package/lib/types/features/store/objects/components/ContentOverview.d.ts.map +1 -1
  267. package/lib/types/features/store/objects/components/PropertiesEditorModal.d.ts.map +1 -1
  268. package/lib/types/features/store/objects/components/index.d.ts +1 -1
  269. package/lib/types/features/store/objects/components/index.d.ts.map +1 -1
  270. package/lib/types/features/store/objects/components/useDownloadFile.d.ts +35 -0
  271. package/lib/types/features/store/objects/components/useDownloadFile.d.ts.map +1 -0
  272. package/lib/types/features/store/objects/search/DocumentSearchContext.d.ts.map +1 -1
  273. package/lib/types/features/store/objects/selection/SelectionActions.d.ts +1 -1
  274. package/lib/types/features/store/objects/selection/SelectionActions.d.ts.map +1 -1
  275. package/lib/types/features/store/objects/selection/actions/ChangeTypeAction.d.ts.map +1 -1
  276. package/lib/types/features/store/objects/selection/actions/ExportPropertiesAction.d.ts.map +1 -1
  277. package/lib/types/features/store/objects/upload/useSmartFileUploadProcessing.d.ts.map +1 -1
  278. package/lib/types/features/store/types/ObjectSchemaEditor.d.ts +2 -1
  279. package/lib/types/features/store/types/ObjectSchemaEditor.d.ts.map +1 -1
  280. package/lib/types/features/store/types/SelectContentTypeModal.d.ts +1 -1
  281. package/lib/types/features/store/types/SelectContentTypeModal.d.ts.map +1 -1
  282. package/lib/types/features/store/types/TableLayoutEditor.d.ts +2 -1
  283. package/lib/types/features/store/types/TableLayoutEditor.d.ts.map +1 -1
  284. package/lib/types/features/user/UserInfo.d.ts +12 -1
  285. package/lib/types/features/user/UserInfo.d.ts.map +1 -1
  286. package/lib/types/features/utils/print.d.ts.map +1 -1
  287. package/lib/types/layout/AppLayout.d.ts.map +1 -1
  288. package/lib/types/layout/Sidebar.d.ts +4 -2
  289. package/lib/types/layout/Sidebar.d.ts.map +1 -1
  290. package/lib/types/router/HistoryNavigator.d.ts.map +1 -1
  291. package/lib/types/router/Nav.d.ts +6 -1
  292. package/lib/types/router/Nav.d.ts.map +1 -1
  293. package/lib/types/session/UserSession.d.ts.map +1 -1
  294. package/lib/types/session/UserSessionProvider.d.ts +1 -0
  295. package/lib/types/session/UserSessionProvider.d.ts.map +1 -1
  296. package/lib/types/widgets/json-view/JSONCode.d.ts.map +1 -1
  297. package/lib/types/widgets/markdown/ArtifactContentRenderer.d.ts +10 -1
  298. package/lib/types/widgets/markdown/ArtifactContentRenderer.d.ts.map +1 -1
  299. package/lib/types/widgets/markdown/MarkdownFigure.d.ts +15 -0
  300. package/lib/types/widgets/markdown/MarkdownFigure.d.ts.map +1 -0
  301. package/lib/types/widgets/markdown/MarkdownRenderer.d.ts.map +1 -1
  302. package/lib/types/widgets/markdown/MermaidDiagram.d.ts.map +1 -1
  303. package/lib/types/widgets/markdown/codeBlockHandlers.d.ts +5 -2
  304. package/lib/types/widgets/markdown/codeBlockHandlers.d.ts.map +1 -1
  305. package/lib/types/widgets/markdown/index.d.ts +1 -0
  306. package/lib/types/widgets/markdown/index.d.ts.map +1 -1
  307. package/lib/types/widgets/markdown/normalizeCustomSchemeLinks.d.ts +9 -0
  308. package/lib/types/widgets/markdown/normalizeCustomSchemeLinks.d.ts.map +1 -0
  309. package/lib/types/widgets/markdown/normalizeDirectives.d.ts +20 -0
  310. package/lib/types/widgets/markdown/normalizeDirectives.d.ts.map +1 -0
  311. package/lib/types/widgets/markdown/remarkDirectiveHandler.d.ts +2 -0
  312. package/lib/types/widgets/markdown/remarkDirectiveHandler.d.ts.map +1 -0
  313. package/lib/types/widgets/monacoEditor/MonacoEditor.d.ts +1 -3
  314. package/lib/types/widgets/monacoEditor/MonacoEditor.d.ts.map +1 -1
  315. package/lib/types/widgets/schema-editor/ManagedSchema.d.ts +1 -1
  316. package/lib/types/widgets/schema-editor/ManagedSchema.d.ts.map +1 -1
  317. package/lib/vertesia-ui-core.js +1 -1
  318. package/lib/vertesia-ui-core.js.map +1 -1
  319. package/lib/vertesia-ui-features.js +1 -1
  320. package/lib/vertesia-ui-features.js.map +1 -1
  321. package/lib/vertesia-ui-layout.js +1 -1
  322. package/lib/vertesia-ui-layout.js.map +1 -1
  323. package/lib/vertesia-ui-router.js +1 -1
  324. package/lib/vertesia-ui-router.js.map +1 -1
  325. package/lib/vertesia-ui-session.js +1 -1
  326. package/lib/vertesia-ui-session.js.map +1 -1
  327. package/lib/vertesia-ui-shell.js +1 -1
  328. package/lib/vertesia-ui-shell.js.map +1 -1
  329. package/lib/vertesia-ui-widgets.js +1 -1
  330. package/lib/vertesia-ui-widgets.js.map +1 -1
  331. package/package.json +14 -10
  332. package/src/core/components/InputList.tsx +1 -1
  333. package/src/core/components/Overlay.tsx +1 -1
  334. package/src/core/components/SidePanel.tsx +29 -15
  335. package/src/core/components/Switch.tsx +1 -1
  336. package/src/core/components/index.ts +0 -8
  337. package/src/core/components/shadcn/Panel.tsx +50 -0
  338. package/src/core/components/{Badge.tsx → shadcn/badge.tsx} +3 -3
  339. package/src/core/components/shadcn/command.tsx +1 -1
  340. package/src/core/components/shadcn/filters/filterBar.tsx +76 -87
  341. package/src/core/components/shadcn/index.ts +5 -3
  342. package/src/core/components/{ConfirmModal.tsx → shadcn/modal/ConfirmModal.tsx} +8 -8
  343. package/src/core/components/{DeleteModal.tsx → shadcn/modal/DeleteModal.tsx} +1 -1
  344. package/src/core/components/shadcn/{dialog.tsx → modal/dialog.tsx} +43 -32
  345. package/src/core/components/shadcn/modal/index.ts +3 -0
  346. package/src/core/components/shadcn/popover.tsx +4 -2
  347. package/src/core/components/shadcn/selectBox.tsx +71 -52
  348. package/src/core/components/shadcn/tabs.tsx +36 -19
  349. package/src/core/components/shadcn/textarea.tsx +43 -2
  350. package/src/core/components/shadcn/tooltip.tsx +23 -17
  351. package/src/features/agent/PayloadBuilder.tsx +70 -9
  352. package/src/features/agent/chat/AgentChart.tsx +46 -678
  353. package/src/features/agent/chat/AskUserWidget.tsx +4 -3
  354. package/src/features/agent/chat/DocumentPanel.tsx +120 -0
  355. package/src/features/agent/chat/DocumentTabBar.tsx +49 -0
  356. package/src/features/agent/chat/ModernAgentConversation.tsx +403 -549
  357. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +162 -55
  358. package/src/features/agent/chat/ModernAgentOutput/BatchProgressPanel.tsx +40 -10
  359. package/src/features/agent/chat/ModernAgentOutput/Header.tsx +12 -16
  360. package/src/features/agent/chat/ModernAgentOutput/InlineSlidingPlanPanel.tsx +3 -3
  361. package/src/features/agent/chat/ModernAgentOutput/MessageInput.tsx +68 -75
  362. package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +206 -94
  363. package/src/features/agent/chat/ModernAgentOutput/StreamingMessage.tsx +22 -5
  364. package/src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx +295 -113
  365. package/src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx +11 -8
  366. package/src/features/agent/chat/ModernAgentOutput/utils.ts +133 -4
  367. package/src/features/agent/chat/SkillWidgetProvider.tsx +32 -15
  368. package/src/features/agent/chat/hooks/useAgentPlans.ts +190 -0
  369. package/src/features/agent/chat/hooks/useAgentStream.ts +239 -0
  370. package/src/features/agent/chat/hooks/useDocumentPanel.ts +118 -0
  371. package/src/features/agent/chat/hooks/useFileProcessing.ts +126 -0
  372. package/src/features/agent/chat/index.ts +18 -17
  373. package/src/features/agent/chat/types/document.ts +4 -0
  374. package/src/features/agent/index.ts +0 -2
  375. package/src/features/store/collections/BrowseCollectionView.tsx +5 -8
  376. package/src/features/store/collections/CreateCollection.tsx +8 -8
  377. package/src/features/store/collections/EditCollectionView.tsx +1 -1
  378. package/src/features/store/objects/DocumentSearchResults.tsx +9 -13
  379. package/src/features/store/objects/ExportPropertiesModal.tsx +9 -7
  380. package/src/features/store/objects/components/ContentOverview.tsx +29 -155
  381. package/src/features/store/objects/components/PropertiesEditorModal.tsx +0 -1
  382. package/src/features/store/objects/components/SelectDocumentModal.tsx +6 -6
  383. package/src/features/store/objects/components/VectorSearchWidget.tsx +2 -2
  384. package/src/features/store/objects/components/index.ts +1 -1
  385. package/src/features/store/objects/components/useDownloadFile.ts +237 -0
  386. package/src/features/store/objects/search/DocumentSearchContext.ts +1 -2
  387. package/src/features/store/objects/selection/SelectionActions.tsx +0 -4
  388. package/src/features/store/objects/selection/actions/AddToCollectionAction.tsx +13 -13
  389. package/src/features/store/objects/selection/actions/ChangeTypeAction.tsx +2 -6
  390. package/src/features/store/objects/selection/actions/ExportPropertiesAction.tsx +1 -3
  391. package/src/features/store/objects/selection/actions/StartWorkflowComponent.tsx +8 -8
  392. package/src/features/store/objects/upload/DocumentUploadModal.tsx +25 -25
  393. package/src/features/store/objects/upload/useSmartFileUploadProcessing.ts +16 -10
  394. package/src/features/store/types/ObjectSchemaEditor.tsx +32 -29
  395. package/src/features/store/types/SelectContentType.tsx +3 -3
  396. package/src/features/store/types/SelectContentTypeModal.tsx +17 -30
  397. package/src/features/store/types/TableLayoutEditor.tsx +14 -18
  398. package/src/features/user/UserInfo.tsx +176 -10
  399. package/src/features/utils/print.ts +0 -1
  400. package/src/layout/AppLayout.tsx +16 -44
  401. package/src/layout/Sidebar.tsx +7 -5
  402. package/src/router/HistoryNavigator.ts +9 -1
  403. package/src/router/Nav.tsx +7 -2
  404. package/src/session/UserSession.ts +38 -9
  405. package/src/session/UserSessionProvider.tsx +3 -2
  406. package/src/shell/apps/AppProjectSelector.tsx +2 -2
  407. package/src/shell/apps/StandaloneApp.tsx +3 -3
  408. package/src/shell/login/InviteAcceptModal.tsx +6 -6
  409. package/src/shell/login/SignInModal.tsx +1 -1
  410. package/src/shell/login/SignupForm.tsx +3 -3
  411. package/src/shell/login/UserInfo.tsx +5 -5
  412. package/src/widgets/json-view/JSONCode.tsx +1 -3
  413. package/src/widgets/json-view/JSONDisplay.tsx +1 -1
  414. package/src/widgets/markdown/ArtifactContentRenderer.tsx +115 -14
  415. package/src/widgets/markdown/MarkdownFigure.tsx +100 -0
  416. package/src/widgets/markdown/MarkdownRenderer.tsx +62 -9
  417. package/src/widgets/markdown/MermaidDiagram.tsx +97 -5
  418. package/src/widgets/markdown/codeBlockHandlers.test.tsx +3 -34
  419. package/src/widgets/markdown/codeBlockHandlers.tsx +47 -42
  420. package/src/widgets/markdown/index.ts +1 -0
  421. package/src/widgets/markdown/markdown.css +192 -0
  422. package/src/widgets/markdown/normalizeCustomSchemeLinks.test.ts +86 -0
  423. package/src/widgets/markdown/normalizeCustomSchemeLinks.ts +91 -0
  424. package/src/widgets/markdown/normalizeDirectives.ts +50 -0
  425. package/src/widgets/markdown/remarkDirectiveHandler.ts +119 -0
  426. package/src/widgets/monacoEditor/MonacoEditor.tsx +8 -22
  427. package/src/widgets/schema-editor/ManagedSchema.ts +1 -1
  428. package/src/widgets/schema-editor/editor/PropertyEditor.tsx +5 -5
  429. package/src/widgets/schema-editor/json-schema4-utils.ts +1 -1
  430. package/lib/esm/core/components/Badge.js.map +0 -1
  431. package/lib/esm/core/components/Button.js +0 -32
  432. package/lib/esm/core/components/Button.js.map +0 -1
  433. package/lib/esm/core/components/ConfirmModal.js +0 -10
  434. package/lib/esm/core/components/ConfirmModal.js.map +0 -1
  435. package/lib/esm/core/components/DeleteModal.js.map +0 -1
  436. package/lib/esm/core/components/MessageBox.js.map +0 -1
  437. package/lib/esm/core/components/Modal.js +0 -26
  438. package/lib/esm/core/components/Modal.js.map +0 -1
  439. package/lib/esm/core/components/Panel.js +0 -8
  440. package/lib/esm/core/components/Panel.js.map +0 -1
  441. package/lib/esm/core/components/SelectBox.js +0 -67
  442. package/lib/esm/core/components/SelectBox.js.map +0 -1
  443. package/lib/esm/core/components/shadcn/dialog.js.map +0 -1
  444. package/lib/esm/core/components/tabs/Tabs.js +0 -78
  445. package/lib/esm/core/components/tabs/Tabs.js.map +0 -1
  446. package/lib/esm/core/components/tabs/TabsContext.js +0 -7
  447. package/lib/esm/core/components/tabs/TabsContext.js.map +0 -1
  448. package/lib/esm/core/components/tabs/index.js +0 -3
  449. package/lib/esm/core/components/tabs/index.js.map +0 -1
  450. package/lib/esm/features/agent/createChartTool.js +0 -632
  451. package/lib/esm/features/agent/createChartTool.js.map +0 -1
  452. package/lib/esm/features/agent/examples.js +0 -295
  453. package/lib/esm/features/agent/examples.js.map +0 -1
  454. package/lib/esm/features/agent/visualization.js +0 -165
  455. package/lib/esm/features/agent/visualization.js.map +0 -1
  456. package/lib/esm/features/store/objects/components/useDownloadObject.js +0 -21
  457. package/lib/esm/features/store/objects/components/useDownloadObject.js.map +0 -1
  458. package/lib/types/core/components/Badge.d.ts.map +0 -1
  459. package/lib/types/core/components/Button.d.ts +0 -14
  460. package/lib/types/core/components/Button.d.ts.map +0 -1
  461. package/lib/types/core/components/ConfirmModal.d.ts.map +0 -1
  462. package/lib/types/core/components/DeleteModal.d.ts.map +0 -1
  463. package/lib/types/core/components/MessageBox.d.ts.map +0 -1
  464. package/lib/types/core/components/Modal.d.ts +0 -30
  465. package/lib/types/core/components/Modal.d.ts.map +0 -1
  466. package/lib/types/core/components/Panel.d.ts.map +0 -1
  467. package/lib/types/core/components/SelectBox.d.ts +0 -36
  468. package/lib/types/core/components/SelectBox.d.ts.map +0 -1
  469. package/lib/types/core/components/shadcn/dialog.d.ts.map +0 -1
  470. package/lib/types/core/components/tabs/Tabs.d.ts +0 -25
  471. package/lib/types/core/components/tabs/Tabs.d.ts.map +0 -1
  472. package/lib/types/core/components/tabs/TabsContext.d.ts +0 -17
  473. package/lib/types/core/components/tabs/TabsContext.d.ts.map +0 -1
  474. package/lib/types/core/components/tabs/index.d.ts +0 -3
  475. package/lib/types/core/components/tabs/index.d.ts.map +0 -1
  476. package/lib/types/features/agent/createChartTool.d.ts +0 -178
  477. package/lib/types/features/agent/createChartTool.d.ts.map +0 -1
  478. package/lib/types/features/agent/examples.d.ts +0 -59
  479. package/lib/types/features/agent/examples.d.ts.map +0 -1
  480. package/lib/types/features/agent/visualization.d.ts +0 -95
  481. package/lib/types/features/agent/visualization.d.ts.map +0 -1
  482. package/lib/types/features/store/objects/components/useDownloadObject.d.ts +0 -4
  483. package/lib/types/features/store/objects/components/useDownloadObject.d.ts.map +0 -1
  484. package/src/core/components/Button.tsx +0 -63
  485. package/src/core/components/Modal.tsx +0 -144
  486. package/src/core/components/Panel.tsx +0 -34
  487. package/src/core/components/SelectBox.tsx +0 -188
  488. package/src/core/components/tabs/Tabs.tsx +0 -132
  489. package/src/core/components/tabs/TabsContext.ts +0 -25
  490. package/src/core/components/tabs/index.ts +0 -2
  491. package/src/features/agent/CHART_INSTRUCTIONS.md +0 -228
  492. package/src/features/agent/createChartTool.ts +0 -643
  493. package/src/features/agent/examples.ts +0 -321
  494. package/src/features/agent/visualization.ts +0 -227
  495. package/src/features/store/objects/components/useDownloadObject.ts +0 -29
  496. /package/lib/esm/core/components/{MessageBox.js → shadcn/MessageBox.js} +0 -0
  497. /package/lib/types/core/components/{MessageBox.d.ts → shadcn/MessageBox.d.ts} +0 -0
  498. /package/lib/types/core/components/{ConfirmModal.d.ts → shadcn/modal/ConfirmModal.d.ts} +0 -0
  499. /package/lib/types/core/components/{DeleteModal.d.ts → shadcn/modal/DeleteModal.d.ts} +0 -0
  500. /package/src/core/components/{MessageBox.tsx → shadcn/MessageBox.tsx} +0 -0
@@ -1,5 +1,6 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Button, useToast } from "@vertesia/ui/core";
2
+ import { AgentMessageType } from "@vertesia/common";
3
+ import { Button, cn, useToast } from "@vertesia/ui/core";
3
4
  import { useUserSession } from "@vertesia/ui/session";
4
5
  import { MarkdownRenderer } from "@vertesia/ui/widgets";
5
6
  import dayjs from "dayjs";
@@ -8,14 +9,48 @@ import { useState, memo, useEffect, useRef } from "react";
8
9
  import { PulsatingCircle } from "../AnimatedThinkingDots";
9
10
  import { useImageLightbox } from "../ImageLightbox";
10
11
  import { useArtifactUrlCache, getArtifactCacheKey } from "../useArtifactUrlCache.js";
12
+ /** Keys that are internal metadata and not interesting to display */
13
+ const META_KEYS = new Set([
14
+ 'tool', 'tool_run_id', 'activity_group_id', 'event_class',
15
+ 'tool_iteration', 'tool_status', 'tools', 'streamed',
16
+ 'files', 'outputFiles',
17
+ ]);
18
+ /** Filter out internal metadata keys, return user-facing detail entries */
19
+ function extractInterestingDetails(details) {
20
+ if (!details)
21
+ return [];
22
+ return Object.entries(details).filter(([key, value]) => !META_KEYS.has(key) && value !== undefined && value !== null && value !== '');
23
+ }
24
+ /** Convert snake_case or camelCase key to a readable label */
25
+ function formatDetailKey(key) {
26
+ return key
27
+ .replace(/_/g, ' ')
28
+ .replace(/([a-z])([A-Z])/g, '$1 $2')
29
+ .replace(/^./, c => c.toUpperCase());
30
+ }
31
+ /** Badge color per status */
32
+ function statusBadgeClass(status) {
33
+ switch (status) {
34
+ case 'completed':
35
+ return 'bg-green-50 dark:bg-green-900/30 text-green-700 dark:text-green-300 border-green-200 dark:border-green-800';
36
+ case 'running':
37
+ return 'bg-blue-50 dark:bg-blue-900/30 text-blue-700 dark:text-blue-300 border-blue-200 dark:border-blue-800';
38
+ case 'error':
39
+ return 'bg-red-50 dark:bg-red-900/30 text-red-700 dark:text-red-300 border-red-200 dark:border-red-800';
40
+ case 'warning':
41
+ return 'bg-yellow-50 dark:bg-yellow-900/30 text-yellow-700 dark:text-yellow-300 border-yellow-200 dark:border-yellow-800';
42
+ default:
43
+ return '';
44
+ }
45
+ }
11
46
  // Helper to check if URL is an image
12
47
  const isImageUrl = (url) => /\.(png|jpg|jpeg|gif|webp|svg)(\?|$)/i.test(url);
13
48
  // Component to render files (images inline, others as links)
14
- function FileDisplay({ files }) {
49
+ function FileDisplay({ files, className: fileClassName }) {
15
50
  const { openImage } = useImageLightbox();
16
51
  if (!files || files.length === 0)
17
52
  return null;
18
- return (_jsx("div", { className: "mt-2 flex flex-wrap gap-2", children: files.map((file, idx) => {
53
+ return (_jsx("div", { className: cn("mt-2 flex flex-wrap gap-2", fileClassName), children: files.map((file, idx) => {
19
54
  const fileName = file.split('/').pop()?.split('?')[0] || 'file';
20
55
  if (isImageUrl(file)) {
21
56
  return (_jsx("div", { className: "cursor-pointer", onClick: () => openImage(file, fileName), title: "Click to enlarge", children: _jsx("img", { src: file, alt: fileName, className: "max-w-[300px] max-h-[200px] rounded border hover:opacity-80 transition-opacity hover:shadow-lg" }) }, idx));
@@ -30,13 +65,35 @@ const getFilesFromDetails = (details) => {
30
65
  const files = details.files ?? details.outputFiles;
31
66
  return Array.isArray(files) ? files : undefined;
32
67
  };
33
- function ToolCallItem({ message, isExpanded, onToggle, artifactRunId }) {
68
+ const getMessageActivityLabel = (message) => {
69
+ const details = message.details;
70
+ if (details?.tool)
71
+ return details.tool;
72
+ switch (message.type) {
73
+ case AgentMessageType.UPDATE:
74
+ return "update";
75
+ case AgentMessageType.WARNING:
76
+ return "warning";
77
+ case AgentMessageType.ERROR:
78
+ return "error";
79
+ case AgentMessageType.SYSTEM:
80
+ return "system";
81
+ default:
82
+ return "activity";
83
+ }
84
+ };
85
+ function ToolCallItem({ message, isExpanded, onToggle, artifactRunId, classNames = {} }) {
34
86
  const [resolvedFiles, setResolvedFiles] = useState([]);
35
87
  const toast = useToast();
36
88
  const { client } = useUserSession();
37
89
  const urlCache = useArtifactUrlCache();
90
+ // PERFORMANCE: Use refs to avoid triggering effect re-runs when these stable values change identity
91
+ const clientRef = useRef(client);
92
+ clientRef.current = client;
93
+ const urlCacheRef = useRef(urlCache);
94
+ urlCacheRef.current = urlCache;
38
95
  const details = message.details;
39
- const toolName = details?.tool || "Tool";
96
+ const toolName = getMessageActivityLabel(message);
40
97
  const files = getFilesFromDetails(details);
41
98
  const messageContent = typeof message.message === "string" ? message.message : "";
42
99
  // Resolve artifact paths to signed URLs
@@ -47,6 +104,8 @@ function ToolCallItem({ message, isExpanded, onToggle, artifactRunId }) {
47
104
  }
48
105
  let cancelled = false;
49
106
  const resolveFiles = async () => {
107
+ const currentClient = clientRef.current;
108
+ const currentUrlCache = urlCacheRef.current;
50
109
  const resolved = await Promise.all(files.map(async (file) => {
51
110
  if (!file || typeof file !== "string")
52
111
  return null;
@@ -54,24 +113,22 @@ function ToolCallItem({ message, isExpanded, onToggle, artifactRunId }) {
54
113
  if (file.startsWith("http://") || file.startsWith("https://")) {
55
114
  return file;
56
115
  }
57
- // Resolve artifact path to signed URL
58
- const artifactPath = file.startsWith("out/") || file.startsWith("files/") || file.startsWith("scripts/")
59
- ? file
60
- : `out/${file}`;
116
+ // Strip artifact: protocol prefix to get the artifact-relative path
117
+ const artifactPath = file.startsWith("artifact:") ? file.slice(9) : file;
61
118
  const ext = artifactPath.split(".").pop()?.toLowerCase() || "";
62
119
  const imageExtensions = new Set(["png", "jpg", "jpeg", "gif", "webp", "bmp", "svg"]);
63
120
  const isImage = imageExtensions.has(ext);
64
121
  const disposition = isImage ? "inline" : "attachment";
65
122
  try {
66
123
  const cacheKey = getArtifactCacheKey(artifactRunId, artifactPath, disposition);
67
- if (urlCache) {
68
- return await urlCache.getOrFetch(cacheKey, async () => {
69
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, disposition);
124
+ if (currentUrlCache) {
125
+ return await currentUrlCache.getOrFetch(cacheKey, async () => {
126
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, disposition);
70
127
  return result.url;
71
128
  });
72
129
  }
73
130
  else {
74
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, disposition);
131
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, disposition);
75
132
  return result.url;
76
133
  }
77
134
  }
@@ -86,7 +143,7 @@ function ToolCallItem({ message, isExpanded, onToggle, artifactRunId }) {
86
143
  };
87
144
  resolveFiles();
88
145
  return () => { cancelled = true; };
89
- }, [files, artifactRunId, client, urlCache]);
146
+ }, [files, artifactRunId]);
90
147
  // Separate image files from other files for inline preview
91
148
  const imageFiles = resolvedFiles.filter(f => isImageUrl(f));
92
149
  const nonImageFiles = resolvedFiles.filter(f => !isImageUrl(f));
@@ -103,10 +160,14 @@ function ToolCallItem({ message, isExpanded, onToggle, artifactRunId }) {
103
160
  });
104
161
  });
105
162
  };
106
- return (_jsxs("div", { className: "border-b border-gray-100 dark:border-gray-800 last:border-b-0", children: [_jsxs("div", { className: "flex items-start justify-between px-3 py-2 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors", onClick: onToggle, children: [_jsxs("div", { className: "flex items-start gap-2 flex-1 min-w-0", children: [_jsx("div", { className: "flex-shrink-0 pt-0.5", children: isExpanded ? (_jsx(ChevronDown, { className: "size-3 text-muted" })) : (_jsx(ChevronRight, { className: "size-3 text-muted" })) }), _jsx("div", { className: "flex-1 min-w-0", children: messageContent ? (_jsx("span", { className: "text-xs text-foreground line-clamp-2", children: messageContent })) : (_jsxs("span", { className: "text-xs text-muted italic", children: ["Tool: ", toolName] })) })] }), _jsxs("div", { className: "flex items-center gap-2 flex-shrink-0", children: [!isExpanded && (_jsx("span", { className: "text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium", children: toolName })), _jsx(Button, { variant: "ghost", size: "xs", onClick: (e) => {
163
+ return (_jsxs("div", { className: cn("border-b border-gray-100 dark:border-gray-800 last:border-b-0", classNames.itemClassName), children: [_jsxs("div", { className: cn("flex items-start justify-between px-3 py-2 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors", classNames.itemHeaderClassName), onClick: onToggle, children: [_jsxs("div", { className: "flex items-start gap-2 flex-1 min-w-0", children: [_jsx("div", { className: "flex-shrink-0 pt-0.5", children: isExpanded ? (_jsx(ChevronDown, { className: "size-3 text-muted" })) : (_jsx(ChevronRight, { className: "size-3 text-muted" })) }), _jsx("div", { className: "flex-1 min-w-0", children: messageContent ? (_jsx("span", { className: "text-xs text-foreground line-clamp-2", children: messageContent })) : (_jsxs("span", { className: "text-xs text-muted italic", children: ["Activity: ", toolName] })) })] }), _jsxs("div", { className: "flex items-center gap-2 flex-shrink-0", children: [!isExpanded && (_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium", classNames.toolBadgeClassName), children: toolName })), _jsx(Button, { variant: "ghost", size: "xs", onClick: (e) => {
107
164
  e.stopPropagation();
108
165
  copyToClipboard();
109
- }, className: "text-muted opacity-0 group-hover:opacity-100 transition-opacity", title: "Copy message", children: _jsx(CopyIcon, { className: "size-3" }) })] })] }), imageFiles.length > 0 && (_jsx("div", { className: "px-4 pb-2", children: _jsx(FileDisplay, { files: imageFiles }) })), isExpanded && (_jsxs("div", { className: "px-4 py-2 bg-gray-50/50 dark:bg-gray-800/30", children: [_jsx("div", { className: "mb-2", children: _jsx("span", { className: "text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium", children: toolName }) }), messageContent && (_jsx("div", { className: "vprose prose prose-slate dark:prose-invert prose-p:leading-relaxed prose-p:my-1.5 max-w-none text-sm", children: _jsx(MarkdownRenderer, { artifactRunId: artifactRunId, children: messageContent }) })), nonImageFiles.length > 0 && _jsx(FileDisplay, { files: nonImageFiles }), details && Object.keys(details).length > 1 && (_jsxs("details", { className: "mt-3 text-xs border rounded p-2 bg-muted/30", onClick: (e) => e.stopPropagation(), children: [_jsx("summary", { className: "cursor-pointer text-muted", children: "Technical Details" }), _jsx("pre", { className: "mt-2 p-2 bg-muted rounded text-xs overflow-x-auto font-mono whitespace-pre-wrap", children: JSON.stringify(details, null, 2) })] }))] }))] }));
166
+ }, className: "text-muted opacity-0 group-hover:opacity-100 transition-opacity", title: "Copy message", children: _jsx(CopyIcon, { className: "size-3" }) })] })] }), imageFiles.length > 0 && (_jsx("div", { className: "px-3 pb-1.5", children: _jsx(FileDisplay, { files: imageFiles }) })), isExpanded && (() => {
167
+ const toolStatusValue = details?.tool_status;
168
+ const interestingDetails = extractInterestingDetails(details);
169
+ return (_jsxs("div", { className: cn("px-4 py-2 bg-gray-50/50 dark:bg-gray-800/30", classNames.itemContentClassName), children: [_jsxs("div", { className: "flex items-center gap-2 mb-2 flex-wrap", children: [_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium", classNames.toolBadgeClassName), children: toolName }), toolStatusValue && (_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md border font-medium", statusBadgeClass(toolStatusValue)), children: toolStatusValue })), _jsx("span", { className: "text-[10px] text-muted/70", children: dayjs(message.timestamp).format("HH:mm:ss") })] }), interestingDetails.length > 0 && (_jsx("div", { className: "mb-2 space-y-0.5", children: interestingDetails.map(([key, value]) => (_jsxs("div", { className: "flex gap-1.5 text-xs", children: [_jsxs("span", { className: "text-muted font-medium flex-shrink-0", children: [formatDetailKey(key), ":"] }), _jsx("span", { className: "text-foreground break-all", children: typeof value === 'object' ? JSON.stringify(value) : String(value) })] }, key))) })), messageContent && (_jsx("div", { className: "vprose prose prose-slate dark:prose-invert prose-p:leading-relaxed prose-p:my-1.5 max-w-none text-sm", children: _jsx(MarkdownRenderer, { artifactRunId: artifactRunId, children: messageContent }) })), nonImageFiles.length > 0 && _jsx(FileDisplay, { files: nonImageFiles }), details && Object.keys(details).length > 1 && (_jsxs("details", { className: "mt-2 text-xs border rounded p-1.5 bg-muted/30", onClick: (e) => e.stopPropagation(), children: [_jsx("summary", { className: "cursor-pointer text-muted", children: "Raw details" }), _jsx("pre", { className: "mt-2 p-2 bg-muted rounded text-xs overflow-x-auto font-mono whitespace-pre-wrap", children: JSON.stringify(details, null, 2) })] }))] }));
170
+ })()] }));
110
171
  }
111
172
  // Component for resolving and displaying non-image files from a collapsed tool message
112
173
  // Note: Images are shown at the group level by GroupImageDisplay, so this only shows other files
@@ -114,6 +175,10 @@ function CollapsedItemFiles({ files, artifactRunId }) {
114
175
  const [resolvedFiles, setResolvedFiles] = useState([]);
115
176
  const { client } = useUserSession();
116
177
  const urlCache = useArtifactUrlCache();
178
+ const clientRef = useRef(client);
179
+ clientRef.current = client;
180
+ const urlCacheRef = useRef(urlCache);
181
+ urlCacheRef.current = urlCache;
117
182
  useEffect(() => {
118
183
  if (!files || files.length === 0 || !artifactRunId) {
119
184
  setResolvedFiles([]);
@@ -121,30 +186,31 @@ function CollapsedItemFiles({ files, artifactRunId }) {
121
186
  }
122
187
  let cancelled = false;
123
188
  const resolveFiles = async () => {
189
+ const currentClient = clientRef.current;
190
+ const currentUrlCache = urlCacheRef.current;
124
191
  const resolved = await Promise.all(files.map(async (file) => {
125
192
  if (!file || typeof file !== "string")
126
193
  return null;
194
+ // Strip artifact: protocol prefix to get the artifact-relative path
195
+ const artifactPath = file.startsWith("artifact:") ? file.slice(9) : file;
127
196
  // Skip image files - they're shown at the group level
128
- const ext = file.split(".").pop()?.toLowerCase() || "";
197
+ const ext = artifactPath.split(".").pop()?.toLowerCase() || "";
129
198
  const imageExtensions = new Set(["png", "jpg", "jpeg", "gif", "webp", "bmp", "svg"]);
130
199
  if (imageExtensions.has(ext))
131
200
  return null;
132
- if (file.startsWith("http://") || file.startsWith("https://")) {
133
- return file;
201
+ if (artifactPath.startsWith("http://") || artifactPath.startsWith("https://")) {
202
+ return artifactPath;
134
203
  }
135
- const artifactPath = file.startsWith("out/") || file.startsWith("files/") || file.startsWith("scripts/")
136
- ? file
137
- : `out/${file}`;
138
204
  try {
139
205
  const cacheKey = getArtifactCacheKey(artifactRunId, artifactPath, "attachment");
140
- if (urlCache) {
141
- return await urlCache.getOrFetch(cacheKey, async () => {
142
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "attachment");
206
+ if (currentUrlCache) {
207
+ return await currentUrlCache.getOrFetch(cacheKey, async () => {
208
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "attachment");
143
209
  return result.url;
144
210
  });
145
211
  }
146
212
  else {
147
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "attachment");
213
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "attachment");
148
214
  return result.url;
149
215
  }
150
216
  }
@@ -159,17 +225,21 @@ function CollapsedItemFiles({ files, artifactRunId }) {
159
225
  };
160
226
  resolveFiles();
161
227
  return () => { cancelled = true; };
162
- }, [files, artifactRunId, client, urlCache]);
228
+ }, [files, artifactRunId]);
163
229
  // Only show non-image files (images are shown at group level)
164
230
  if (resolvedFiles.length === 0)
165
231
  return null;
166
- return (_jsx("div", { className: "pl-5 pr-3 pb-2", children: _jsx(FileDisplay, { files: resolvedFiles }) }));
232
+ return (_jsx("div", { className: "pl-4 pr-2 pb-1.5", children: _jsx(FileDisplay, { files: resolvedFiles }) }));
167
233
  }
168
234
  // Component to show images from the most recent tool call prominently at the top
169
235
  function GroupImageDisplay({ messages, artifactRunId }) {
170
236
  const [resolvedImages, setResolvedImages] = useState([]);
171
237
  const { client } = useUserSession();
172
238
  const urlCache = useArtifactUrlCache();
239
+ const clientRef = useRef(client);
240
+ clientRef.current = client;
241
+ const urlCacheRef = useRef(urlCache);
242
+ urlCacheRef.current = urlCache;
173
243
  // Only show files from the last (most recent) message in the group
174
244
  useEffect(() => {
175
245
  if (!artifactRunId || messages.length === 0) {
@@ -186,32 +256,32 @@ function GroupImageDisplay({ messages, artifactRunId }) {
186
256
  }
187
257
  let cancelled = false;
188
258
  const resolveFiles = async () => {
259
+ const currentClient = clientRef.current;
260
+ const currentUrlCache = urlCacheRef.current;
189
261
  const resolved = await Promise.all(files.map(async (file) => {
190
262
  if (!file || typeof file !== "string")
191
263
  return null;
264
+ // Strip artifact: protocol prefix to get the artifact-relative path
265
+ const artifactPath = file.startsWith("artifact:") ? file.slice(9) : file;
192
266
  // Check if it's an image file
193
- const ext = file.split(".").pop()?.toLowerCase() || "";
267
+ const ext = artifactPath.split(".").pop()?.toLowerCase() || "";
194
268
  const imageExtensions = new Set(["png", "jpg", "jpeg", "gif", "webp", "bmp", "svg"]);
195
269
  if (!imageExtensions.has(ext))
196
270
  return null;
197
271
  // If it's already a full URL, return as-is
198
- if (file.startsWith("http://") || file.startsWith("https://")) {
199
- return file;
272
+ if (artifactPath.startsWith("http://") || artifactPath.startsWith("https://")) {
273
+ return artifactPath;
200
274
  }
201
- // Resolve artifact path to signed URL
202
- const artifactPath = file.startsWith("out/") || file.startsWith("files/") || file.startsWith("scripts/")
203
- ? file
204
- : `out/${file}`;
205
275
  try {
206
276
  const cacheKey = getArtifactCacheKey(artifactRunId, artifactPath, "inline");
207
- if (urlCache) {
208
- return await urlCache.getOrFetch(cacheKey, async () => {
209
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "inline");
277
+ if (currentUrlCache) {
278
+ return await currentUrlCache.getOrFetch(cacheKey, async () => {
279
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "inline");
210
280
  return result.url;
211
281
  });
212
282
  }
213
283
  else {
214
- const result = await client.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "inline");
284
+ const result = await currentClient.files.getArtifactDownloadUrl(artifactRunId, artifactPath, "inline");
215
285
  return result.url;
216
286
  }
217
287
  }
@@ -226,12 +296,12 @@ function GroupImageDisplay({ messages, artifactRunId }) {
226
296
  };
227
297
  resolveFiles();
228
298
  return () => { cancelled = true; };
229
- }, [messages, artifactRunId, client, urlCache]);
299
+ }, [messages, artifactRunId]);
230
300
  if (resolvedImages.length === 0)
231
301
  return null;
232
- return (_jsx("div", { className: "px-4 py-2 border-b border-gray-100 dark:border-gray-800", children: _jsx(FileDisplay, { files: resolvedImages }) }));
302
+ return (_jsx("div", { className: "px-3 py-1.5 border-b border-gray-100 dark:border-gray-800", children: _jsx(FileDisplay, { files: resolvedImages }) }));
233
303
  }
234
- function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRunId: _toolRunId, toolStatus }) {
304
+ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRunId: _toolRunId, toolStatus, rootClassName, headerClassName, senderClassName, toolSummaryClassName, toolBadgeClassName, itemClassName, itemHeaderClassName, itemContentClassName, }) {
235
305
  const [isCollapsed, setIsCollapsed] = useState(true);
236
306
  const [expandedItems, setExpandedItems] = useState(new Set());
237
307
  const [animatingIndices, setAnimatingIndices] = useState(new Set());
@@ -242,9 +312,13 @@ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRun
242
312
  ?? messages[0]?.workflow_run_id;
243
313
  // Render status indicator based on tool execution status
244
314
  const renderStatusIndicator = () => {
245
- if (showPulsatingCircle || toolStatus === "running") {
315
+ // Only pulse for the currently active/latest group
316
+ if (showPulsatingCircle) {
246
317
  return _jsx(PulsatingCircle, { size: "sm", color: "blue" });
247
318
  }
319
+ if (toolStatus === "running") {
320
+ return _jsx("span", { className: "size-2 rounded-full bg-blue-500 inline-block" });
321
+ }
248
322
  if (toolStatus === "completed") {
249
323
  return _jsx(CheckCircle, { className: "size-4 text-success" });
250
324
  }
@@ -291,14 +365,11 @@ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRun
291
365
  const firstTimestamp = firstMessage.timestamp;
292
366
  const lastTimestamp = lastMessage.timestamp;
293
367
  // Get tool names for summary
294
- const toolNames = messages.map(m => {
295
- const details = m.details;
296
- return details?.tool || "tool";
297
- });
368
+ const toolNames = messages.map((m) => getMessageActivityLabel(m));
298
369
  const uniqueToolCount = new Set(toolNames).size;
299
370
  const toolSummary = uniqueToolCount === 1
300
371
  ? `${messages.length}× ${toolNames[0]}`
301
- : `${messages.length} tool calls`;
372
+ : `${messages.length} activity updates`;
302
373
  const toggleItem = (index) => {
303
374
  setExpandedItems(prev => {
304
375
  const next = new Set(prev);
@@ -314,7 +385,7 @@ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRun
314
385
  const copyAllToClipboard = () => {
315
386
  const allContent = messages.map(m => {
316
387
  const details = m.details;
317
- return `[${details?.tool || "tool"}] ${m.message || ""}\n${details ? JSON.stringify(details, null, 2) : ""}`;
388
+ return `[${getMessageActivityLabel(m)}] ${m.message || ""}\n${details ? JSON.stringify(details, null, 2) : ""}`;
318
389
  }).join("\n\n---\n\n");
319
390
  navigator.clipboard.writeText(allContent).then(() => {
320
391
  toast({
@@ -324,24 +395,28 @@ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRun
324
395
  });
325
396
  });
326
397
  };
327
- return (_jsxs("div", { className: `border-l-4 ${getBorderColor()} overflow-hidden bg-white dark:bg-gray-900 mb-4`, children: [_jsxs("div", { className: "flex items-center justify-between px-4 py-1.5 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors", onClick: () => setIsCollapsed(!isCollapsed), children: [_jsxs("div", { className: "flex items-center gap-1.5", children: [renderStatusIndicator(), _jsx("span", { className: "text-xs font-medium text-muted", children: "Agent" }), _jsx("span", { className: "text-xs text-purple-600 dark:text-purple-400 font-medium", children: toolSummary }), isCollapsed ? (_jsx(ChevronRight, { className: "size-3 text-muted" })) : (_jsx(ChevronDown, { className: "size-3 text-muted" }))] }), _jsxs("div", { className: "flex items-center gap-1.5", children: [_jsxs("span", { className: "text-[11px] text-muted/70", children: [dayjs(firstTimestamp).format("HH:mm:ss"), messages.length > 1 && ` - ${dayjs(lastTimestamp).format("HH:mm:ss")}`] }), _jsx(Button, { variant: "ghost", size: "xs", onClick: (e) => {
398
+ return (_jsxs("div", { className: cn("border-l-4 overflow-hidden bg-white dark:bg-gray-900 mb-4", getBorderColor(), rootClassName), children: [_jsxs("div", { className: cn("flex items-center justify-between px-4 py-1.5 cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors", headerClassName), onClick: () => setIsCollapsed(!isCollapsed), children: [_jsxs("div", { className: "flex items-center gap-1", children: [renderStatusIndicator(), _jsx("span", { className: cn("text-xs font-medium text-muted", senderClassName), children: "Agent" }), _jsx("span", { className: cn("text-xs text-purple-600 dark:text-purple-400 font-medium", toolSummaryClassName), children: toolSummary }), isCollapsed ? (_jsx(ChevronRight, { className: "size-3 text-muted" })) : (_jsx(ChevronDown, { className: "size-3 text-muted" }))] }), _jsxs("div", { className: "flex items-center gap-1", children: [_jsxs("span", { className: "text-[11px] text-muted/70", children: [dayjs(firstTimestamp).format("HH:mm:ss"), messages.length > 1 && ` - ${dayjs(lastTimestamp).format("HH:mm:ss")}`] }), _jsx(Button, { variant: "ghost", size: "xs", onClick: (e) => {
328
399
  e.stopPropagation();
329
400
  copyAllToClipboard();
330
- }, className: "text-muted/50 hover:text-muted h-5 w-5 p-0", title: "Copy all tool calls", children: _jsx(CopyIcon, { className: "size-3" }) })] })] }), _jsx(GroupImageDisplay, { messages: messages, artifactRunId: artifactRunId }), isCollapsed && (_jsx("div", { className: "px-4 py-1 space-y-0", children: messages.map((m, idx) => {
401
+ }, className: "text-muted/50 hover:text-muted h-5 w-5 p-0", title: "Copy all tool calls", children: _jsx(CopyIcon, { className: "size-3" }) })] })] }), _jsx(GroupImageDisplay, { messages: messages, artifactRunId: artifactRunId }), isCollapsed && (_jsx("div", { className: "px-3 py-0.5 space-y-0", children: messages.map((m, idx) => {
331
402
  const details = m.details;
332
- const toolName = details?.tool || "tool";
403
+ const toolName = getMessageActivityLabel(m);
333
404
  const fullMessage = typeof m.message === "string" ? m.message : "";
334
405
  const isAnimating = animatingIndices.has(idx);
335
406
  const isItemExpanded = expandedItems.has(idx);
336
407
  const files = getFilesFromDetails(details);
337
- return (_jsxs("div", { className: "border-b border-gray-100 dark:border-gray-800 last:border-b-0", style: {
408
+ return (_jsxs("div", { className: cn("border-b border-gray-100 dark:border-gray-800 last:border-b-0", itemClassName), style: {
338
409
  opacity: isAnimating ? 0 : 1,
339
410
  transform: isAnimating ? 'translateX(-10px)' : 'translateX(0)',
340
411
  transition: 'opacity 0.3s ease-out, transform 0.3s ease-out',
341
412
  transitionDelay: `${(idx - (messages.length - animatingIndices.size)) * 100}ms`,
342
413
  animation: isAnimating ? 'slideInFade 0.4s ease-out forwards' : 'none',
343
414
  animationDelay: `${(idx - (messages.length - animatingIndices.size)) * 100}ms`,
344
- }, children: [_jsxs("div", { className: "flex items-start gap-2 py-2 text-xs cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50", onClick: () => toggleItem(idx), title: fullMessage, children: [_jsx("div", { className: "flex-shrink-0 pt-0.5", children: isItemExpanded ? (_jsx(ChevronDown, { className: "size-3 text-muted" })) : (_jsx(ChevronRight, { className: "size-3 text-muted" })) }), _jsx("div", { className: "flex-1 min-w-0", children: fullMessage ? (_jsx("span", { className: "text-foreground line-clamp-2", children: fullMessage })) : (_jsxs("span", { className: "text-muted italic", children: ["Tool: ", toolName] })) }), !isItemExpanded && (_jsx("span", { className: "text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium flex-shrink-0", children: toolName }))] }), _jsx(CollapsedItemFiles, { files: files, artifactRunId: artifactRunId }), isItemExpanded && (_jsxs("div", { className: "pl-5 pr-3 pb-2 text-sm", children: [_jsx("div", { className: "vprose prose prose-slate dark:prose-invert prose-p:leading-relaxed prose-p:my-1.5 max-w-none text-sm", children: _jsx(MarkdownRenderer, { artifactRunId: artifactRunId, children: fullMessage }) }), details && Object.keys(details).length > 1 && (_jsxs("details", { className: "mt-2 text-xs", children: [_jsx("summary", { className: "text-muted cursor-pointer", children: "Show details" }), _jsx("pre", { className: "mt-1 p-2 bg-muted rounded text-xs overflow-x-auto", children: JSON.stringify(details, null, 2) })] }))] }))] }, `${m.timestamp}-${idx}`));
415
+ }, children: [_jsxs("div", { className: cn("flex items-start gap-2 py-1.5 text-xs cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800/50", itemHeaderClassName), onClick: () => toggleItem(idx), title: fullMessage, children: [_jsx("div", { className: "flex-shrink-0 pt-0.5", children: isItemExpanded ? (_jsx(ChevronDown, { className: "size-3 text-muted" })) : (_jsx(ChevronRight, { className: "size-3 text-muted" })) }), _jsx("div", { className: "flex-1 min-w-0", children: fullMessage ? (_jsx("span", { className: "text-foreground line-clamp-2", children: fullMessage })) : (_jsxs("span", { className: "text-muted italic", children: ["Activity: ", toolName] })) }), !isItemExpanded && (_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium flex-shrink-0", toolBadgeClassName), children: toolName }))] }), _jsx(CollapsedItemFiles, { files: files, artifactRunId: artifactRunId }), isItemExpanded && (() => {
416
+ const toolStatusValue = details?.tool_status;
417
+ const interestingDetails = extractInterestingDetails(details);
418
+ return (_jsxs("div", { className: cn("pl-5 pr-3 pb-2 text-sm", itemContentClassName), children: [_jsxs("div", { className: "flex items-center gap-2 mb-1.5 flex-wrap", children: [_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md bg-purple-50 dark:bg-purple-900/30 text-purple-700 dark:text-purple-300 border border-purple-200 dark:border-purple-800 font-medium", toolBadgeClassName), children: toolName }), toolStatusValue && (_jsx("span", { className: cn("text-[10px] px-1.5 py-0.5 rounded-md border font-medium", statusBadgeClass(toolStatusValue)), children: toolStatusValue })), _jsx("span", { className: "text-[10px] text-muted/70", children: dayjs(m.timestamp).format("HH:mm:ss") })] }), interestingDetails.length > 0 && (_jsx("div", { className: "mb-1.5 space-y-0.5", children: interestingDetails.map(([key, value]) => (_jsxs("div", { className: "flex gap-1.5 text-xs", children: [_jsxs("span", { className: "text-muted font-medium flex-shrink-0", children: [formatDetailKey(key), ":"] }), _jsx("span", { className: "text-foreground break-all", children: typeof value === 'object' ? JSON.stringify(value) : String(value) })] }, key))) })), fullMessage && (_jsx("div", { className: "vprose prose prose-slate dark:prose-invert prose-p:leading-relaxed prose-p:my-1.5 max-w-none text-sm", children: _jsx(MarkdownRenderer, { artifactRunId: artifactRunId, children: fullMessage }) })), details && Object.keys(details).length > 1 && (_jsxs("details", { className: "mt-1.5 text-xs", children: [_jsx("summary", { className: "text-muted cursor-pointer", children: "Raw details" }), _jsx("pre", { className: "mt-1 p-2 bg-muted rounded text-xs overflow-x-auto", children: JSON.stringify(details, null, 2) })] }))] }));
419
+ })()] }, `${m.timestamp}-${idx}`));
345
420
  }) })), _jsx("style", { children: `
346
421
  @keyframes slideInFade {
347
422
  from {
@@ -353,7 +428,7 @@ function ToolCallGroupComponent({ messages, showPulsatingCircle = false, toolRun
353
428
  transform: translateX(0);
354
429
  }
355
430
  }
356
- ` }), !isCollapsed && (_jsx("div", { className: "group", children: messages.map((message, index) => (_jsx(ToolCallItem, { message: message, isExpanded: expandedItems.has(index), onToggle: () => toggleItem(index), artifactRunId: artifactRunId }, `${message.timestamp}-${index}`))) }))] }));
431
+ ` }), !isCollapsed && (_jsx("div", { className: "group", children: messages.map((message, index) => (_jsx(ToolCallItem, { message: message, isExpanded: expandedItems.has(index), onToggle: () => toggleItem(index), artifactRunId: artifactRunId, classNames: { toolBadgeClassName, itemClassName, itemHeaderClassName, itemContentClassName } }, `${message.timestamp}-${index}`))) }))] }));
357
432
  }
358
433
  // Memoize to prevent unnecessary re-renders
359
434
  const ToolCallGroup = memo(ToolCallGroupComponent, (prevProps, nextProps) => {
@@ -365,6 +440,22 @@ const ToolCallGroup = memo(ToolCallGroupComponent, (prevProps, nextProps) => {
365
440
  return false;
366
441
  if (prevProps.toolStatus !== nextProps.toolStatus)
367
442
  return false;
443
+ if (prevProps.rootClassName !== nextProps.rootClassName)
444
+ return false;
445
+ if (prevProps.headerClassName !== nextProps.headerClassName)
446
+ return false;
447
+ if (prevProps.senderClassName !== nextProps.senderClassName)
448
+ return false;
449
+ if (prevProps.toolSummaryClassName !== nextProps.toolSummaryClassName)
450
+ return false;
451
+ if (prevProps.toolBadgeClassName !== nextProps.toolBadgeClassName)
452
+ return false;
453
+ if (prevProps.itemClassName !== nextProps.itemClassName)
454
+ return false;
455
+ if (prevProps.itemHeaderClassName !== nextProps.itemHeaderClassName)
456
+ return false;
457
+ if (prevProps.itemContentClassName !== nextProps.itemContentClassName)
458
+ return false;
368
459
  // Compare first and last timestamps as a proxy for content changes
369
460
  return (prevProps.messages[0]?.timestamp === nextProps.messages[0]?.timestamp &&
370
461
  prevProps.messages[prevProps.messages.length - 1]?.timestamp ===
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallGroup.js","sourceRoot":"","sources":["../../../../../../src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCallGroup.js","sourceRoot":"","sources":["../../../../../../src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { cn } from "@vertesia/ui/core";
2
3
  import { CheckCircle, Clock } from "lucide-react";
3
4
  import { getWorkstreamId } from "./utils";
4
5
  /**
@@ -39,15 +40,13 @@ export default function WorkstreamTabs({ workstreams, activeWorkstream, onSelect
39
40
  const hasMultipleWorkstreams = sortedWorkstreams.length > 2;
40
41
  // If there are no multiple workstreams, return an empty div to maintain layout
41
42
  if (!hasMultipleWorkstreams) {
42
- return _jsx("div", { className: "py-1" });
43
+ return _jsx("div", { className: "py-0.5" });
43
44
  }
44
- return (_jsx("div", { className: "flex overflow-x-auto space-x-1 mb-2 bg-muted border-b-2 border-muted/20 sticky top-0 z-10", children: sortedWorkstreams.map(([id, name]) => (_jsxs("button", { className: `px-2 py-1 text-xs font-medium whitespace-nowrap transition-colors flex items-center gap-1.5
45
- ${activeWorkstream === id
45
+ return (_jsx("div", { className: "flex overflow-x-auto space-x-1 mb-1 bg-muted border-b border-muted/20 sticky top-0 z-10", children: sortedWorkstreams.map(([id, name]) => (_jsxs("button", { className: cn("px-2 py-1 text-xs font-medium whitespace-nowrap transition-colors flex items-center gap-1.5", activeWorkstream === id
46
46
  ? "bg-info text-info border-b-2 border-info"
47
- : "text-muted hover:bg-muted border-b-2 border-transparent"}`, onClick: () => onSelectWorkstream(id), title: name.length > 20 ? name : undefined, children: [name.length > 20 ? name.substring(0, 18) + "..." : name, count && count.has(id) && count.get(id) > 0 && (_jsxs("div", { className: "flex items-center space-x-1", children: [_jsx("span", { className: `inline-flex items-center justify-center p-1 text-xs rounded-full
48
- ${activeWorkstream === id
47
+ : "text-muted hover:bg-muted border-b-2 border-transparent"), onClick: () => onSelectWorkstream(id), title: name.length > 20 ? name : undefined, children: [name.length > 20 ? name.substring(0, 18) + "..." : name, count && count.has(id) && count.get(id) > 0 && (_jsxs("div", { className: "flex items-center space-x-1", children: [_jsx("span", { className: cn("inline-flex items-center justify-center p-1 text-xs rounded-full", activeWorkstream === id
49
48
  ? "bg-info text-info"
50
- : "bg-muted text-muted"}`, children: count.get(id) }), completionStatus &&
49
+ : "bg-muted text-muted"), children: count.get(id) }), completionStatus &&
51
50
  id !== "all" &&
52
51
  (completionStatus.get(id) ? (_jsx(CheckCircle, { className: "size-3 text-success" })) : (_jsx(Clock, { className: "size-3 text-attention" })))] }))] }, id))) }));
53
52
  }
@@ -1 +1 @@
1
- {"version":3,"file":"WorkstreamTabs.js","sourceRoot":"","sources":["../../../../../../src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WorkstreamTabs.js","sourceRoot":"","sources":["../../../../../../src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx"],"names":[],"mappings":"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"}