@vertesia/ui 1.5.0-dev.20260722.120446Z → 1.5.0-dev.20260725.083715Z

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 (307) hide show
  1. package/lib/core/components/shadcn/filters/filterBar.d.ts.map +1 -1
  2. package/lib/core/components/shadcn/filters/filterBar.js +1 -1
  3. package/lib/core/components/shadcn/filters/filterBar.js.map +1 -1
  4. package/lib/core/components/shadcn/modal/dialog.d.ts +1 -1
  5. package/lib/core/components/shadcn/modal/dialog.d.ts.map +1 -1
  6. package/lib/core/components/shadcn/modal/dialog.js +2 -0
  7. package/lib/core/components/shadcn/modal/dialog.js.map +1 -1
  8. package/lib/core/components/shadcn/tabs.d.ts +12 -1
  9. package/lib/core/components/shadcn/tabs.d.ts.map +1 -1
  10. package/lib/core/components/shadcn/tabs.js +12 -4
  11. package/lib/core/components/shadcn/tabs.js.map +1 -1
  12. package/lib/features/agent/chat/AgentRightPanel.d.ts +5 -1
  13. package/lib/features/agent/chat/AgentRightPanel.d.ts.map +1 -1
  14. package/lib/features/agent/chat/AgentRightPanel.js +2 -2
  15. package/lib/features/agent/chat/AgentRightPanel.js.map +1 -1
  16. package/lib/features/agent/chat/ArtifactsTab.d.ts +5 -1
  17. package/lib/features/agent/chat/ArtifactsTab.d.ts.map +1 -1
  18. package/lib/features/agent/chat/ArtifactsTab.js +48 -11
  19. package/lib/features/agent/chat/ArtifactsTab.js.map +1 -1
  20. package/lib/features/agent/chat/DocumentEditingActionCard.d.ts +6 -0
  21. package/lib/features/agent/chat/DocumentEditingActionCard.d.ts.map +1 -0
  22. package/lib/features/agent/chat/DocumentEditingActionCard.js +129 -0
  23. package/lib/features/agent/chat/DocumentEditingActionCard.js.map +1 -0
  24. package/lib/features/agent/chat/ModernAgentConversation.d.ts +19 -1
  25. package/lib/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
  26. package/lib/features/agent/chat/ModernAgentConversation.js +125 -27
  27. package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
  28. package/lib/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.d.ts +45 -0
  29. package/lib/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.d.ts.map +1 -0
  30. package/lib/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.js +40 -0
  31. package/lib/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.js.map +1 -0
  32. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts +3 -1
  33. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  34. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +94 -49
  35. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  36. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.d.ts +2 -1
  37. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.d.ts.map +1 -1
  38. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js +9 -5
  39. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js.map +1 -1
  40. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts +25 -0
  41. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.d.ts.map +1 -0
  42. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js +33 -0
  43. package/lib/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.js.map +1 -0
  44. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts +3 -1
  45. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
  46. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +22 -24
  47. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
  48. package/lib/features/agent/chat/ModernAgentOutput/ResourceChangeSummary.d.ts +14 -0
  49. package/lib/features/agent/chat/ModernAgentOutput/ResourceChangeSummary.d.ts.map +1 -0
  50. package/lib/features/agent/chat/ModernAgentOutput/ResourceChangeSummary.js +21 -0
  51. package/lib/features/agent/chat/ModernAgentOutput/ResourceChangeSummary.js.map +1 -0
  52. package/lib/features/agent/chat/ModernAgentOutput/ResourceChip.d.ts +30 -0
  53. package/lib/features/agent/chat/ModernAgentOutput/ResourceChip.d.ts.map +1 -0
  54. package/lib/features/agent/chat/ModernAgentOutput/ResourceChip.js +53 -0
  55. package/lib/features/agent/chat/ModernAgentOutput/ResourceChip.js.map +1 -0
  56. package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.d.ts.map +1 -1
  57. package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js +21 -2
  58. package/lib/features/agent/chat/ModernAgentOutput/ToolCallGroup.js.map +1 -1
  59. package/lib/features/agent/chat/ModernAgentOutput/resourceLinks.d.ts +6 -0
  60. package/lib/features/agent/chat/ModernAgentOutput/resourceLinks.d.ts.map +1 -0
  61. package/lib/features/agent/chat/ModernAgentOutput/resourceLinks.js +29 -0
  62. package/lib/features/agent/chat/ModernAgentOutput/resourceLinks.js.map +1 -0
  63. package/lib/features/agent/chat/ModernAgentOutput/resourceSummary.d.ts +33 -0
  64. package/lib/features/agent/chat/ModernAgentOutput/resourceSummary.d.ts.map +1 -0
  65. package/lib/features/agent/chat/ModernAgentOutput/resourceSummary.js +129 -0
  66. package/lib/features/agent/chat/ModernAgentOutput/resourceSummary.js.map +1 -0
  67. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts +7 -0
  68. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts.map +1 -1
  69. package/lib/features/agent/chat/ModernAgentOutput/utils.js +11 -1
  70. package/lib/features/agent/chat/ModernAgentOutput/utils.js.map +1 -1
  71. package/lib/features/agent/chat/hooks/useAgentStream.d.ts +1 -1
  72. package/lib/features/agent/chat/hooks/useAgentStream.d.ts.map +1 -1
  73. package/lib/features/agent/chat/hooks/useAgentStream.js +24 -9
  74. package/lib/features/agent/chat/hooks/useAgentStream.js.map +1 -1
  75. package/lib/features/agent/chat/index.d.ts +2 -1
  76. package/lib/features/agent/chat/index.d.ts.map +1 -1
  77. package/lib/features/agent/chat/index.js +3 -0
  78. package/lib/features/agent/chat/index.js.map +1 -1
  79. package/lib/features/store/objects/DocumentSearchResults.js +2 -2
  80. package/lib/features/store/objects/DocumentSearchResults.js.map +1 -1
  81. package/lib/features/store/objects/components/ContentOverview.d.ts +2 -1
  82. package/lib/features/store/objects/components/ContentOverview.d.ts.map +1 -1
  83. package/lib/features/store/objects/components/ContentOverview.js +86 -15
  84. package/lib/features/store/objects/components/ContentOverview.js.map +1 -1
  85. package/lib/features/store/objects/components/DocumentEditingConfigurationSelector.d.ts +16 -0
  86. package/lib/features/store/objects/components/DocumentEditingConfigurationSelector.d.ts.map +1 -0
  87. package/lib/features/store/objects/components/DocumentEditingConfigurationSelector.js +116 -0
  88. package/lib/features/store/objects/components/DocumentEditingConfigurationSelector.js.map +1 -0
  89. package/lib/features/store/objects/components/DocumentEditingLockStatus.d.ts +7 -0
  90. package/lib/features/store/objects/components/DocumentEditingLockStatus.d.ts.map +1 -0
  91. package/lib/features/store/objects/components/DocumentEditingLockStatus.js +13 -0
  92. package/lib/features/store/objects/components/DocumentEditingLockStatus.js.map +1 -0
  93. package/lib/features/store/objects/components/DocumentEditingPanel.d.ts +48 -0
  94. package/lib/features/store/objects/components/DocumentEditingPanel.d.ts.map +1 -0
  95. package/lib/features/store/objects/components/DocumentEditingPanel.js +720 -0
  96. package/lib/features/store/objects/components/DocumentEditingPanel.js.map +1 -0
  97. package/lib/features/store/objects/components/TextEditorPanel.d.ts.map +1 -1
  98. package/lib/features/store/objects/components/TextEditorPanel.js +22 -9
  99. package/lib/features/store/objects/components/TextEditorPanel.js.map +1 -1
  100. package/lib/features/store/objects/components/documentArtifactRefs.d.ts +26 -0
  101. package/lib/features/store/objects/components/documentArtifactRefs.d.ts.map +1 -0
  102. package/lib/features/store/objects/components/documentArtifactRefs.js +52 -0
  103. package/lib/features/store/objects/components/documentArtifactRefs.js.map +1 -0
  104. package/lib/features/store/objects/components/documentEditingAgentConfig.d.ts +4 -0
  105. package/lib/features/store/objects/components/documentEditingAgentConfig.d.ts.map +1 -0
  106. package/lib/features/store/objects/components/documentEditingAgentConfig.js +40 -0
  107. package/lib/features/store/objects/components/documentEditingAgentConfig.js.map +1 -0
  108. package/lib/features/store/objects/components/documentEditingPrompts.d.ts +3 -0
  109. package/lib/features/store/objects/components/documentEditingPrompts.d.ts.map +1 -0
  110. package/lib/features/store/objects/components/documentEditingPrompts.js +13 -0
  111. package/lib/features/store/objects/components/documentEditingPrompts.js.map +1 -0
  112. package/lib/features/store/objects/components/documentEditingRun.d.ts +27 -0
  113. package/lib/features/store/objects/components/documentEditingRun.d.ts.map +1 -0
  114. package/lib/features/store/objects/components/documentEditingRun.js +126 -0
  115. package/lib/features/store/objects/components/documentEditingRun.js.map +1 -0
  116. package/lib/features/store/objects/components/documentEditingTarget.d.ts +20 -0
  117. package/lib/features/store/objects/components/documentEditingTarget.d.ts.map +1 -0
  118. package/lib/features/store/objects/components/documentEditingTarget.js +40 -0
  119. package/lib/features/store/objects/components/documentEditingTarget.js.map +1 -0
  120. package/lib/features/store/objects/components/index.d.ts +1 -0
  121. package/lib/features/store/objects/components/index.d.ts.map +1 -1
  122. package/lib/features/store/objects/components/index.js +1 -0
  123. package/lib/features/store/objects/components/index.js.map +1 -1
  124. package/lib/features/store/objects/components/useContentPanelHooks.d.ts +5 -1
  125. package/lib/features/store/objects/components/useContentPanelHooks.d.ts.map +1 -1
  126. package/lib/features/store/objects/components/useContentPanelHooks.js +53 -29
  127. package/lib/features/store/objects/components/useContentPanelHooks.js.map +1 -1
  128. package/lib/features/store/objects/components/useDownloadFile.d.ts +2 -1
  129. package/lib/features/store/objects/components/useDownloadFile.d.ts.map +1 -1
  130. package/lib/features/store/objects/components/useDownloadFile.js +3 -0
  131. package/lib/features/store/objects/components/useDownloadFile.js.map +1 -1
  132. package/lib/features/store/objects/selection/actions/StartWorkflowButton.js +1 -1
  133. package/lib/features/store/objects/selection/actions/StartWorkflowButton.js.map +1 -1
  134. package/lib/i18n/locales/ar.json +118 -1
  135. package/lib/i18n/locales/de.json +118 -1
  136. package/lib/i18n/locales/en.json +118 -0
  137. package/lib/i18n/locales/es.json +118 -1
  138. package/lib/i18n/locales/fr.json +118 -1
  139. package/lib/i18n/locales/it.json +118 -1
  140. package/lib/i18n/locales/ja.json +118 -1
  141. package/lib/i18n/locales/ko.json +118 -1
  142. package/lib/i18n/locales/pt.json +118 -1
  143. package/lib/i18n/locales/ru.json +118 -1
  144. package/lib/i18n/locales/tr.json +118 -1
  145. package/lib/i18n/locales/zh-TW.json +118 -1
  146. package/lib/i18n/locales/zh.json +118 -1
  147. package/lib/rich-text/EditorToolbar.d.ts +37 -0
  148. package/lib/rich-text/EditorToolbar.d.ts.map +1 -0
  149. package/lib/rich-text/EditorToolbar.js +215 -0
  150. package/lib/rich-text/EditorToolbar.js.map +1 -0
  151. package/lib/rich-text/VertesiaRichTextEditor.d.ts +26 -0
  152. package/lib/rich-text/VertesiaRichTextEditor.d.ts.map +1 -0
  153. package/lib/rich-text/VertesiaRichTextEditor.js +67 -0
  154. package/lib/rich-text/VertesiaRichTextEditor.js.map +1 -0
  155. package/lib/rich-text/index.d.ts +2 -0
  156. package/lib/rich-text/index.d.ts.map +1 -0
  157. package/lib/rich-text/index.js +2 -0
  158. package/lib/rich-text/index.js.map +1 -0
  159. package/lib/vertesia-ui-core.js +2 -2
  160. package/lib/vertesia-ui-core.js.map +1 -1
  161. package/lib/vertesia-ui-features.js +35 -30
  162. package/lib/vertesia-ui-features.js.map +1 -1
  163. package/lib/vertesia-ui-i18n.js +14 -14
  164. package/lib/vertesia-ui-i18n.js.map +1 -1
  165. package/lib/vertesia-ui-rich-text.js +5 -0
  166. package/lib/vertesia-ui-rich-text.js.map +1 -0
  167. package/lib/vertesia-ui-widgets.js +25 -7
  168. package/lib/vertesia-ui-widgets.js.map +1 -1
  169. package/lib/widgets/markdown/AgentResourceResolver.d.ts +31 -0
  170. package/lib/widgets/markdown/AgentResourceResolver.d.ts.map +1 -0
  171. package/lib/widgets/markdown/AgentResourceResolver.js +39 -0
  172. package/lib/widgets/markdown/AgentResourceResolver.js.map +1 -0
  173. package/lib/widgets/markdown/ArtifactEditingSurface.d.ts +63 -0
  174. package/lib/widgets/markdown/ArtifactEditingSurface.d.ts.map +1 -0
  175. package/lib/widgets/markdown/ArtifactEditingSurface.js +582 -0
  176. package/lib/widgets/markdown/ArtifactEditingSurface.js.map +1 -0
  177. package/lib/widgets/markdown/CollaborativeMarkdownRenderer.d.ts +69 -0
  178. package/lib/widgets/markdown/CollaborativeMarkdownRenderer.d.ts.map +1 -0
  179. package/lib/widgets/markdown/CollaborativeMarkdownRenderer.js +374 -0
  180. package/lib/widgets/markdown/CollaborativeMarkdownRenderer.js.map +1 -0
  181. package/lib/widgets/markdown/MarkdownLink.d.ts +3 -1
  182. package/lib/widgets/markdown/MarkdownLink.d.ts.map +1 -1
  183. package/lib/widgets/markdown/MarkdownLink.js +41 -14
  184. package/lib/widgets/markdown/MarkdownLink.js.map +1 -1
  185. package/lib/widgets/markdown/MarkdownRenderer.d.ts +8 -1
  186. package/lib/widgets/markdown/MarkdownRenderer.d.ts.map +1 -1
  187. package/lib/widgets/markdown/MarkdownRenderer.js +20 -4
  188. package/lib/widgets/markdown/MarkdownRenderer.js.map +1 -1
  189. package/lib/widgets/markdown/index.d.ts +5 -1
  190. package/lib/widgets/markdown/index.d.ts.map +1 -1
  191. package/lib/widgets/markdown/index.js +5 -1
  192. package/lib/widgets/markdown/index.js.map +1 -1
  193. package/lib/widgets/markdown/normalizeCustomSchemeLinks.d.ts.map +1 -1
  194. package/lib/widgets/markdown/normalizeCustomSchemeLinks.js +14 -2
  195. package/lib/widgets/markdown/normalizeCustomSchemeLinks.js.map +1 -1
  196. package/lib/widgets/markdown/textDiff.d.ts +52 -0
  197. package/lib/widgets/markdown/textDiff.d.ts.map +1 -0
  198. package/lib/widgets/markdown/textDiff.js +362 -0
  199. package/lib/widgets/markdown/textDiff.js.map +1 -0
  200. package/lib/widgets/markdown/useArtifactContent.d.ts +5 -3
  201. package/lib/widgets/markdown/useArtifactContent.d.ts.map +1 -1
  202. package/lib/widgets/markdown/useArtifactContent.js +6 -3
  203. package/lib/widgets/markdown/useArtifactContent.js.map +1 -1
  204. package/lib/widgets/markdown/useResolvedUrl.d.ts +1 -5
  205. package/lib/widgets/markdown/useResolvedUrl.d.ts.map +1 -1
  206. package/lib/widgets/markdown/useResolvedUrl.js +19 -31
  207. package/lib/widgets/markdown/useResolvedUrl.js.map +1 -1
  208. package/lib/widgets/xml-viewer/hooks/useXMLViewer.d.ts +9 -0
  209. package/lib/widgets/xml-viewer/hooks/useXMLViewer.d.ts.map +1 -1
  210. package/lib/widgets/xml-viewer/hooks/useXMLViewer.js +20 -17
  211. package/lib/widgets/xml-viewer/hooks/useXMLViewer.js.map +1 -1
  212. package/package.json +13 -9
  213. package/src/__tests__/a11y.test.tsx +4 -1
  214. package/src/__tests__/axe-helper.ts +17 -7
  215. package/src/__tests__/setup.ts +25 -0
  216. package/src/core/components/shadcn/filters/filterBar.tsx +1 -0
  217. package/src/core/components/shadcn/modal/dialog.tsx +3 -1
  218. package/src/core/components/shadcn/tabs.test.tsx +65 -0
  219. package/src/core/components/shadcn/tabs.tsx +25 -3
  220. package/src/features/agent/chat/AgentRightPanel.tsx +16 -1
  221. package/src/features/agent/chat/ArtifactsTab.test.tsx +55 -0
  222. package/src/features/agent/chat/ArtifactsTab.tsx +203 -52
  223. package/src/features/agent/chat/DocumentEditingActionCard.test.tsx +105 -0
  224. package/src/features/agent/chat/DocumentEditingActionCard.tsx +210 -0
  225. package/src/features/agent/chat/ModernAgentConversation.test.tsx +237 -40
  226. package/src/features/agent/chat/ModernAgentConversation.tsx +247 -75
  227. package/src/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.test.tsx +79 -0
  228. package/src/features/agent/chat/ModernAgentOutput/AgentMarkdownAnchor.tsx +94 -0
  229. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +257 -34
  230. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +217 -105
  231. package/src/features/agent/chat/ModernAgentOutput/AttachmentPreview.tsx +17 -0
  232. package/src/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.test.tsx +44 -0
  233. package/src/features/agent/chat/ModernAgentOutput/CollapsibleAgentMarkdown.tsx +88 -0
  234. package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +30 -46
  235. package/src/features/agent/chat/ModernAgentOutput/ResourceChangeSummary.tsx +40 -0
  236. package/src/features/agent/chat/ModernAgentOutput/ResourceChip.test.tsx +148 -0
  237. package/src/features/agent/chat/ModernAgentOutput/ResourceChip.tsx +141 -0
  238. package/src/features/agent/chat/ModernAgentOutput/ToolCallGroup.tsx +33 -1
  239. package/src/features/agent/chat/ModernAgentOutput/resourceLinks.tsx +43 -0
  240. package/src/features/agent/chat/ModernAgentOutput/resourceSummary.test.ts +229 -0
  241. package/src/features/agent/chat/ModernAgentOutput/resourceSummary.ts +152 -0
  242. package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +17 -0
  243. package/src/features/agent/chat/ModernAgentOutput/utils.ts +14 -1
  244. package/src/features/agent/chat/hooks/useAgentStream.test.tsx +188 -0
  245. package/src/features/agent/chat/hooks/useAgentStream.ts +28 -8
  246. package/src/features/agent/chat/index.ts +11 -0
  247. package/src/features/store/objects/DocumentSearchResults.tsx +2 -2
  248. package/src/features/store/objects/components/ContentOverview.tsx +216 -65
  249. package/src/features/store/objects/components/DocumentEditingConfigurationSelector.test.ts +34 -0
  250. package/src/features/store/objects/components/DocumentEditingConfigurationSelector.tsx +211 -0
  251. package/src/features/store/objects/components/DocumentEditingLockStatus.test.tsx +32 -0
  252. package/src/features/store/objects/components/DocumentEditingLockStatus.tsx +45 -0
  253. package/src/features/store/objects/components/DocumentEditingPanel.test.tsx +336 -0
  254. package/src/features/store/objects/components/DocumentEditingPanel.tsx +1236 -0
  255. package/src/features/store/objects/components/TextEditorPanel.test.tsx +48 -0
  256. package/src/features/store/objects/components/TextEditorPanel.tsx +41 -20
  257. package/src/features/store/objects/components/documentArtifactRefs.test.ts +65 -0
  258. package/src/features/store/objects/components/documentArtifactRefs.ts +72 -0
  259. package/src/features/store/objects/components/documentEditingAgentConfig.test.ts +28 -0
  260. package/src/features/store/objects/components/documentEditingAgentConfig.ts +41 -0
  261. package/src/features/store/objects/components/documentEditingPrompts.test.ts +26 -0
  262. package/src/features/store/objects/components/documentEditingPrompts.ts +12 -0
  263. package/src/features/store/objects/components/documentEditingRun.test.ts +176 -0
  264. package/src/features/store/objects/components/documentEditingRun.ts +184 -0
  265. package/src/features/store/objects/components/documentEditingTarget.test.ts +96 -0
  266. package/src/features/store/objects/components/documentEditingTarget.ts +63 -0
  267. package/src/features/store/objects/components/index.ts +1 -0
  268. package/src/features/store/objects/components/useContentPanelHooks.ts +52 -27
  269. package/src/features/store/objects/components/useDownloadFile.test.ts +20 -0
  270. package/src/features/store/objects/components/useDownloadFile.ts +5 -1
  271. package/src/features/store/objects/selection/actions/StartWorkflowButton.tsx +2 -2
  272. package/src/i18n/locales/ar.json +118 -1
  273. package/src/i18n/locales/de.json +118 -1
  274. package/src/i18n/locales/en.json +118 -0
  275. package/src/i18n/locales/es.json +118 -1
  276. package/src/i18n/locales/fr.json +118 -1
  277. package/src/i18n/locales/it.json +118 -1
  278. package/src/i18n/locales/ja.json +118 -1
  279. package/src/i18n/locales/ko.json +118 -1
  280. package/src/i18n/locales/pt.json +118 -1
  281. package/src/i18n/locales/ru.json +118 -1
  282. package/src/i18n/locales/tr.json +118 -1
  283. package/src/i18n/locales/zh-TW.json +118 -1
  284. package/src/i18n/locales/zh.json +118 -1
  285. package/src/rich-text/EditorToolbar.tsx +708 -0
  286. package/src/rich-text/VertesiaRichTextEditor.test.tsx +211 -0
  287. package/src/rich-text/VertesiaRichTextEditor.tsx +241 -0
  288. package/src/rich-text/index.ts +9 -0
  289. package/src/session/UserSession.test.ts +11 -11
  290. package/src/widgets/markdown/AgentResourceResolver.test.ts +24 -0
  291. package/src/widgets/markdown/AgentResourceResolver.tsx +70 -0
  292. package/src/widgets/markdown/ArtifactEditingSurface.test.tsx +537 -0
  293. package/src/widgets/markdown/ArtifactEditingSurface.tsx +878 -0
  294. package/src/widgets/markdown/CollaborativeMarkdownRenderer.test.tsx +484 -0
  295. package/src/widgets/markdown/CollaborativeMarkdownRenderer.tsx +825 -0
  296. package/src/widgets/markdown/MarkdownLink.test.tsx +122 -0
  297. package/src/widgets/markdown/MarkdownLink.tsx +102 -17
  298. package/src/widgets/markdown/MarkdownRenderer.tsx +30 -3
  299. package/src/widgets/markdown/index.ts +39 -1
  300. package/src/widgets/markdown/normalizeCustomSchemeLinks.ts +15 -2
  301. package/src/widgets/markdown/textDiff.test.ts +156 -0
  302. package/src/widgets/markdown/textDiff.ts +399 -0
  303. package/src/widgets/markdown/useArtifactContent.ts +9 -3
  304. package/src/widgets/markdown/useResolvedUrl.test.ts +29 -40
  305. package/src/widgets/markdown/useResolvedUrl.ts +33 -35
  306. package/src/widgets/xml-viewer/hooks/useXMLViewer.test.ts +26 -0
  307. package/src/widgets/xml-viewer/hooks/useXMLViewer.ts +23 -18
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentEditingPanel.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/DocumentEditingPanel.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditorPanel.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/TextEditorPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAStD,UAAU,oBAAoB;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAgBD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,oBAAoB,+BAoHvF"}
1
+ {"version":3,"file":"TextEditorPanel.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/TextEditorPanel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAWtD,UAAU,oBAAoB;IAC1B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,IAAI,CAAC;CACvB;AAiBD,wBAAgB,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,oBAAoB,+BAsIvF"}
@@ -1,14 +1,17 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import { Button, errorMessage, useTheme, useToast } from '@vertesia/ui/core';
3
3
  import { useUITranslation } from '@vertesia/ui/i18n';
4
+ import { VertesiaMarkdownDocumentEditor } from '@vertesia/ui/rich-text';
4
5
  import { useNavigate } from '@vertesia/ui/router';
5
6
  import { useUserSession } from '@vertesia/ui/session';
6
7
  import { MonacoEditor } from '@vertesia/ui/widgets';
7
- import { useCallback, useRef, useState } from 'react';
8
+ import { useCallback, useEffect, useRef, useState } from 'react';
9
+ import { isMarkdownContentType } from './documentEditingRun.js';
8
10
  import { SaveVersionConfirmModal } from './SaveVersionConfirmModal.js';
9
11
  function getMonacoLanguage(contentType) {
10
12
  switch (contentType) {
11
13
  case 'text/markdown':
14
+ case 'text/x-markdown':
12
15
  return 'markdown';
13
16
  case 'application/json':
14
17
  return 'json';
@@ -26,30 +29,40 @@ export function TextEditorPanel({ object, text, onClose, onSaved }) {
26
29
  const { theme } = useTheme();
27
30
  const navigate = useNavigate();
28
31
  const editorRef = useRef(undefined);
32
+ const [editorText, setEditorText] = useState(text);
29
33
  const [isDirty, setIsDirty] = useState(false);
30
34
  const [isSaving, setIsSaving] = useState(false);
31
35
  const [showConfirmation, setShowConfirmation] = useState(false);
32
36
  const language = getMonacoLanguage(object.content?.type);
33
- console.log('Determined language for Monaco Editor:', language);
34
- console.log('TextEditorPanel rendered with object:', object, text);
37
+ const isMarkdown = isMarkdownContentType(object.content?.type);
38
+ useEffect(() => {
39
+ setEditorText(text);
40
+ setIsDirty(false);
41
+ }, [text]);
35
42
  const handleEditorChange = useCallback(() => {
36
43
  if (!isDirty)
37
44
  setIsDirty(true);
38
45
  }, [isDirty]);
46
+ const handleMarkdownChange = useCallback((markdown) => {
47
+ setEditorText(markdown);
48
+ setIsDirty(markdown !== text);
49
+ }, [text]);
39
50
  function handleSave() {
40
- if (!editorRef.current)
51
+ if (!isMarkdown && !editorRef.current)
41
52
  return;
42
53
  setShowConfirmation(true);
43
54
  }
44
55
  async function saveText(createVersion, versionLabel) {
45
- if (!editorRef.current)
56
+ if (!isMarkdown && !editorRef.current)
57
+ return;
58
+ const content = isMarkdown ? editorText : editorRef.current?.getValue();
59
+ if (content === undefined)
46
60
  return;
47
- const editorText = editorRef.current.getValue();
48
61
  const contentType = object.content?.type || 'text/plain';
49
62
  const fileName = object.content?.name || 'content.txt';
50
63
  try {
51
64
  setIsSaving(true);
52
- const blob = new Blob([editorText], { type: contentType });
65
+ const blob = new Blob([content], { type: contentType });
53
66
  const file = new File([blob], fileName, { type: contentType });
54
67
  const response = await store.objects.update(object.id, {
55
68
  content: file,
@@ -89,11 +102,11 @@ export function TextEditorPanel({ object, text, onClose, onSaved }) {
89
102
  setIsSaving(false);
90
103
  }
91
104
  }
92
- return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center gap-2 px-2 py-1 shrink-0", children: [isDirty && _jsx("span", { className: "text-xs text-attention", children: t('store.unsavedChanges') }), _jsx("div", { className: "flex-1" }), _jsx(Button, { variant: "ghost", size: "sm", onClick: onClose, disabled: isSaving, children: t('store.cancelEdit') }), _jsx(Button, { variant: "secondary", size: "sm", onClick: handleSave, disabled: !isDirty, isLoading: isSaving, children: t('store.saveText') })] }), _jsx("div", { className: "flex-1 min-h-0 border rounded-md overflow-hidden mx-2 mb-2", children: _jsx(MonacoEditor, { value: text, language: language, editorRef: editorRef, onChange: handleEditorChange, theme: theme === 'dark' ? 'vs-dark' : 'vs', options: {
105
+ return (_jsxs(_Fragment, { children: [_jsxs("div", { className: "flex items-center gap-2 px-2 py-1 shrink-0", children: [isDirty && _jsx("span", { className: "text-xs text-attention", children: t('store.unsavedChanges') }), _jsx("div", { className: "flex-1" }), _jsx(Button, { variant: "ghost", size: "sm", onClick: onClose, disabled: isSaving, children: t('store.cancelEdit') }), _jsx(Button, { variant: "secondary", size: "sm", onClick: handleSave, disabled: !isDirty, isLoading: isSaving, children: t('store.saveText') })] }), _jsx("div", { className: "flex-1 min-h-0 border rounded-md overflow-hidden mx-2 mb-2", children: isMarkdown ? (_jsx(VertesiaMarkdownDocumentEditor, { value: editorText, onChange: handleMarkdownChange })) : (_jsx(MonacoEditor, { value: text, language: language, editorRef: editorRef, onChange: handleEditorChange, theme: theme === 'dark' ? 'vs-dark' : 'vs', options: {
93
106
  wordWrap: 'on',
94
107
  minimap: { enabled: false },
95
108
  lineNumbers: 'on',
96
109
  scrollBeyondLastLine: false,
97
- } }) }), _jsx(SaveVersionConfirmModal, { isOpen: showConfirmation, onClose: () => setShowConfirmation(false), onConfirm: saveText, isLoading: isSaving })] }));
110
+ } })) }), _jsx(SaveVersionConfirmModal, { isOpen: showConfirmation, onClose: () => setShowConfirmation(false), onConfirm: saveText, isLoading: isSaving })] }));
98
111
  }
99
112
  //# sourceMappingURL=TextEditorPanel.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TextEditorPanel.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/TextEditorPanel.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TextEditorPanel.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/TextEditorPanel.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ export interface DocumentArtifactCopyApi {
2
+ copyFile(source: string, dest: string): Promise<unknown>;
3
+ }
4
+ export declare function collectRunLocalArtifactRefs(content: string): string[];
5
+ export interface PersistRunLocalArtifactRefsResult {
6
+ content: string;
7
+ /** Links rewritten to a durable documents/ copy. */
8
+ persisted: Array<{
9
+ from: string;
10
+ to: string;
11
+ }>;
12
+ /** Links whose copy failed; rewritten to the run-scoped agents/ path instead. */
13
+ failed: string[];
14
+ }
15
+ /**
16
+ * Copy run-local `artifact:` references into durable `documents/{batchId}/` storage
17
+ * and rewrite the links — the Save-to-document counterpart of the persistence pass
18
+ * `create_document` applies when a document is first created from agent content.
19
+ *
20
+ * Run artifact storage is scoped to the agent run and does not outlive it, so a
21
+ * published document must never depend on it. When a copy fails the link is pinned
22
+ * to the explicit run-scoped `agents/` path rather than left run-relative, so it
23
+ * can never silently resolve against a different run's artifact space.
24
+ */
25
+ export declare function persistRunLocalArtifactRefs(files: DocumentArtifactCopyApi, content: string, agentRunId: string, batchId: string): Promise<PersistRunLocalArtifactRefsResult>;
26
+ //# sourceMappingURL=documentArtifactRefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentArtifactRefs.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentArtifactRefs.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,uBAAuB;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5D;AAOD,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,EAAE,CAMrE;AAED,MAAM,WAAW,iCAAiC;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC/C,iFAAiF;IACjF,MAAM,EAAE,MAAM,EAAE,CAAC;CACpB;AAED;;;;;;;;;GASG;AACH,wBAAsB,2BAA2B,CAC7C,KAAK,EAAE,uBAAuB,EAC9B,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,iCAAiC,CAAC,CA+B5C"}
@@ -0,0 +1,52 @@
1
+ // Run-local artifact links — excludes paths already pointing at durable storage
2
+ // (agents/ run prefixes, documents/ repository copies). Mirrors the regex used by
3
+ // the create_document tool so both publication paths persist the same links.
4
+ const RUN_LOCAL_ARTIFACT_REF_REGEX = /artifact:(?!agents\/)(?!documents\/)([^\s)\]"]+)/g;
5
+ export function collectRunLocalArtifactRefs(content) {
6
+ const refs = new Set();
7
+ for (const match of content.matchAll(RUN_LOCAL_ARTIFACT_REF_REGEX)) {
8
+ refs.add(match[1].replace(/^\/+/, ''));
9
+ }
10
+ return [...refs];
11
+ }
12
+ /**
13
+ * Copy run-local `artifact:` references into durable `documents/{batchId}/` storage
14
+ * and rewrite the links — the Save-to-document counterpart of the persistence pass
15
+ * `create_document` applies when a document is first created from agent content.
16
+ *
17
+ * Run artifact storage is scoped to the agent run and does not outlive it, so a
18
+ * published document must never depend on it. When a copy fails the link is pinned
19
+ * to the explicit run-scoped `agents/` path rather than left run-relative, so it
20
+ * can never silently resolve against a different run's artifact space.
21
+ */
22
+ export async function persistRunLocalArtifactRefs(files, content, agentRunId, batchId) {
23
+ const refs = collectRunLocalArtifactRefs(content);
24
+ if (refs.length === 0) {
25
+ return { content, persisted: [], failed: [] };
26
+ }
27
+ const rewrites = new Map();
28
+ const persisted = [];
29
+ const failed = [];
30
+ for (const relPath of refs) {
31
+ const destPath = `documents/${batchId}/${relPath}`;
32
+ try {
33
+ await files.copyFile(`agents/${agentRunId}/${relPath}`, destPath);
34
+ rewrites.set(relPath, destPath);
35
+ persisted.push({ from: relPath, to: destPath });
36
+ }
37
+ catch (error) {
38
+ console.warn('Failed to persist a referenced artifact; keeping a run-scoped link', {
39
+ artifact_path: relPath,
40
+ error: error instanceof Error ? error.message : String(error),
41
+ });
42
+ rewrites.set(relPath, `agents/${agentRunId}/${relPath}`);
43
+ failed.push(relPath);
44
+ }
45
+ }
46
+ const rewritten = content.replace(RUN_LOCAL_ARTIFACT_REF_REGEX, (match, relPath) => {
47
+ const destPath = rewrites.get(relPath.replace(/^\/+/, ''));
48
+ return destPath ? `artifact:${destPath}` : match;
49
+ });
50
+ return { content: rewritten, persisted, failed };
51
+ }
52
+ //# sourceMappingURL=documentArtifactRefs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentArtifactRefs.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentArtifactRefs.ts"],"names":[],"mappings":"AAIA,gFAAgF;AAChF,kFAAkF;AAClF,6EAA6E;AAC7E,MAAM,4BAA4B,GAAG,mDAAmD,CAAC;AAEzF,MAAM,UAAU,2BAA2B,CAAC,OAAe;IACvD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;QACjE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;AACrB,CAAC;AAUD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC7C,KAA8B,EAC9B,OAAe,EACf,UAAkB,EAClB,OAAe;IAEf,MAAM,IAAI,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAClD,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC3C,MAAM,SAAS,GAAwC,EAAE,CAAC;IAC1D,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,OAAO,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,QAAQ,GAAG,aAAa,OAAO,IAAI,OAAO,EAAE,CAAC;QACnD,IAAI,CAAC;YACD,MAAM,KAAK,CAAC,QAAQ,CAAC,UAAU,UAAU,IAAI,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;YAClE,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;YAChC,SAAS,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpD,CAAC;QAAC,OAAO,KAAc,EAAE,CAAC;YACtB,OAAO,CAAC,IAAI,CAAC,oEAAoE,EAAE;gBAC/E,aAAa,EAAE,OAAO;gBACtB,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAChE,CAAC,CAAC;YACH,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,UAAU,UAAU,IAAI,OAAO,EAAE,CAAC,CAAC;YACzD,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;IACL,CAAC;IAED,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,4BAA4B,EAAE,CAAC,KAAK,EAAE,OAAe,EAAE,EAAE;QACvF,MAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC;QAC3D,OAAO,QAAQ,CAAC,CAAC,CAAC,YAAY,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AACrD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const DOCUMENT_EDITING_TOOLS: string[];
2
+ export declare const DOCUMENT_EDITING_INITIAL_SKILLS: string[];
3
+ export declare const DOCUMENT_EDITING_EXCLUDED_TOOLS: string[];
4
+ //# sourceMappingURL=documentEditingAgentConfig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingAgentConfig.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingAgentConfig.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,sBAAsB,UAkBlC,CAAC;AAKF,eAAO,MAAM,+BAA+B,UAA4C,CAAC;AAKzF,eAAO,MAAM,+BAA+B,UAY3C,CAAC"}
@@ -0,0 +1,40 @@
1
+ export const DOCUMENT_EDITING_TOOLS = [
2
+ 'ask_user',
3
+ 'think',
4
+ 'plan',
5
+ 'update_plan',
6
+ 'end_conversation',
7
+ 'learn_artifact_operations',
8
+ 'learn_code_execution',
9
+ 'learn_content_authoring',
10
+ 'learn_document_management',
11
+ 'learn_document_search',
12
+ 'learn_image_analysis',
13
+ // Available immediately as well as through the code_execution skill so an
14
+ // editing agent can regenerate charts and other derived assets.
15
+ 'execute_shell',
16
+ // Read access to canonical revisions: reconcile-after-conflict and change
17
+ // summaries fetch other revisions into reference artifacts for comparison.
18
+ 'fetch_document',
19
+ ];
20
+ // Artifact operations and code execution are core editing capabilities, so their
21
+ // guidance and tools are active before the first model turn. Other skills remain
22
+ // available through their learn_* tools when the task calls for them.
23
+ export const DOCUMENT_EDITING_INITIAL_SKILLS = ['artifact_operations', 'code_execution'];
24
+ // Editing sessions mutate only the working-copy artifact; the canonical document is
25
+ // published exclusively through Save to document. These tools stay unavailable even
26
+ // if a skill or tool refresh would otherwise unlock them.
27
+ export const DOCUMENT_EDITING_EXCLUDED_TOOLS = [
28
+ 'update_document',
29
+ 'update_document_properties',
30
+ 'create_document',
31
+ 'set_document_type',
32
+ 'merge_documents',
33
+ 'import_file',
34
+ 'create_or_update_object_type',
35
+ 'disable_type',
36
+ // Keep multi-command fan-out unavailable; execute_shell is intentionally
37
+ // allowed as the single, observable sandbox execution path.
38
+ 'batch_execute',
39
+ ];
40
+ //# sourceMappingURL=documentEditingAgentConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingAgentConfig.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingAgentConfig.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG;IAClC,UAAU;IACV,OAAO;IACP,MAAM;IACN,aAAa;IACb,kBAAkB;IAClB,2BAA2B;IAC3B,sBAAsB;IACtB,yBAAyB;IACzB,2BAA2B;IAC3B,uBAAuB;IACvB,sBAAsB;IACtB,0EAA0E;IAC1E,gEAAgE;IAChE,eAAe;IACf,0EAA0E;IAC1E,2EAA2E;IAC3E,gBAAgB;CACnB,CAAC;AAEF,iFAAiF;AACjF,iFAAiF;AACjF,sEAAsE;AACtE,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,qBAAqB,EAAE,gBAAgB,CAAC,CAAC;AAEzF,oFAAoF;AACpF,oFAAoF;AACpF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,+BAA+B,GAAG;IAC3C,iBAAiB;IACjB,4BAA4B;IAC5B,iBAAiB;IACjB,mBAAmB;IACnB,iBAAiB;IACjB,aAAa;IACb,8BAA8B;IAC9B,cAAc;IACd,yEAAyE;IACzE,4DAA4D;IAC5D,eAAe;CAClB,CAAC"}
@@ -0,0 +1,3 @@
1
+ /** Chat notice handing the agent direct editor edits that already exist in the working copy. */
2
+ export declare function createDirectEditsAppliedPrompt(draftPath: string, unifiedDiff: string): string;
3
+ //# sourceMappingURL=documentEditingPrompts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingPrompts.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingPrompts.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,wBAAgB,8BAA8B,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAU7F"}
@@ -0,0 +1,13 @@
1
+ /** Chat notice handing the agent direct editor edits that already exist in the working copy. */
2
+ export function createDirectEditsAppliedPrompt(draftPath, unifiedDiff) {
3
+ return [
4
+ `Direct edits are already saved to '${draftPath}'. Use this compact unified diff as context only;`,
5
+ 'do not re-apply it. The artifact remains the current source of truth.',
6
+ '```diff',
7
+ `--- a/${draftPath}`,
8
+ `+++ b/${draftPath}`,
9
+ unifiedDiff,
10
+ '```',
11
+ ].join('\n');
12
+ }
13
+ //# sourceMappingURL=documentEditingPrompts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingPrompts.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingPrompts.ts"],"names":[],"mappings":"AAAA,gGAAgG;AAChG,MAAM,UAAU,8BAA8B,CAAC,SAAiB,EAAE,WAAmB;IACjF,OAAO;QACH,sCAAsC,SAAS,mDAAmD;QAClG,uEAAuE;QACvE,SAAS;QACT,SAAS,SAAS,EAAE;QACpB,SAAS,SAAS,EAAE;QACpB,WAAW;QACX,KAAK;KACR,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjB,CAAC"}
@@ -0,0 +1,27 @@
1
+ import type { AgentsApi } from '@vertesia/client';
2
+ import type { AgentRun } from '@vertesia/common';
3
+ export declare const DOCUMENT_EDITING_DEFAULT_INTERACTION = "sys:GeneralAgent";
4
+ export type DocumentEditingRunProperties = {
5
+ resource_kind: 'store_document';
6
+ document_id: string;
7
+ document_root_id: string;
8
+ };
9
+ export interface DocumentEditingRunIdentity {
10
+ tags: string[];
11
+ properties: DocumentEditingRunProperties;
12
+ }
13
+ type DocumentEditingRunApi = Pick<AgentsApi, 'list' | 'retrieve' | 'search'>;
14
+ export declare function createDocumentEditingScopeKey(projectId: string, documentRootId: string): string;
15
+ export declare function isDocumentEditingScopeOpen(scopeKey: string): boolean;
16
+ export declare function setDocumentEditingScopeOpen(scopeKey: string, isOpen: boolean): void;
17
+ export declare function createDocumentEditingRunIdentity(documentId: string, documentRootId: string): DocumentEditingRunIdentity;
18
+ export declare function getDocumentTextActionAccess(canEdit: boolean, canCollaborate: boolean): {
19
+ canEdit: boolean;
20
+ canCollaborate: boolean;
21
+ };
22
+ export declare function isMarkdownContentType(contentType: string | undefined): boolean;
23
+ export declare function isDocumentEditingContentType(contentType: string | undefined): boolean;
24
+ export declare function isDocumentEditingRun(run: AgentRun, documentId: string, documentRootId: string, startedBy: string, interaction?: string): boolean;
25
+ export declare function findDocumentEditingRun(agents: DocumentEditingRunApi, documentId: string, documentRootId: string, startedBy: string, interaction?: string): Promise<AgentRun | undefined>;
26
+ export {};
27
+ //# sourceMappingURL=documentEditingRun.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingRun.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingRun.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAKjD,eAAO,MAAM,oCAAoC,qBAAqB,CAAC;AAKvE,MAAM,MAAM,4BAA4B,GAAG;IACvC,aAAa,EAAE,gBAAgB,CAAC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;CAC5B,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACvC,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,UAAU,EAAE,4BAA4B,CAAC;CAC5C;AAED,KAAK,qBAAqB,GAAG,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC,CAAC;AAE7E,wBAAgB,6BAA6B,CAAC,SAAS,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAE/F;AAED,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED,wBAAgB,2BAA2B,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,IAAI,CAMnF;AAcD,wBAAgB,gCAAgC,CAC5C,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,GACvB,0BAA0B,CAS5B;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,OAAO;;;EAKpF;AAMD,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAG9E;AAED,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAGrF;AAED,wBAAgB,oBAAoB,CAChC,GAAG,EAAE,QAAQ,EACb,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,WAAW,SAAuC,GACnD,OAAO,CAgBT;AAqBD,wBAAsB,sBAAsB,CACxC,MAAM,EAAE,qBAAqB,EAC7B,UAAU,EAAE,MAAM,EAClB,cAAc,EAAE,MAAM,EACtB,SAAS,EAAE,MAAM,EACjB,WAAW,SAAuC,GACnD,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC,CA+C/B"}
@@ -0,0 +1,126 @@
1
+ const DOCUMENT_EDITING_TAG = 'document-editing';
2
+ const DOCUMENT_ROOT_TAG_PREFIX = 'document-root:';
3
+ const LEGACY_DOCUMENT_TAG_PREFIX = 'document:';
4
+ export const DOCUMENT_EDITING_DEFAULT_INTERACTION = 'sys:GeneralAgent';
5
+ const openDocumentEditingScopes = new Set();
6
+ const MARKDOWN_CONTENT_TYPES = new Set(['text/markdown', 'text/x-markdown']);
7
+ const DOCUMENT_EDITING_CONTENT_TYPES = new Set([...MARKDOWN_CONTENT_TYPES, 'text/plain']);
8
+ export function createDocumentEditingScopeKey(projectId, documentRootId) {
9
+ return `${projectId}:${documentRootId}`;
10
+ }
11
+ export function isDocumentEditingScopeOpen(scopeKey) {
12
+ return openDocumentEditingScopes.has(scopeKey);
13
+ }
14
+ export function setDocumentEditingScopeOpen(scopeKey, isOpen) {
15
+ if (isOpen) {
16
+ openDocumentEditingScopes.add(scopeKey);
17
+ }
18
+ else {
19
+ openDocumentEditingScopes.delete(scopeKey);
20
+ }
21
+ }
22
+ function getRecord(value) {
23
+ return value && typeof value === 'object' && !Array.isArray(value) ? value : undefined;
24
+ }
25
+ function documentRootTag(documentRootId) {
26
+ return `${DOCUMENT_ROOT_TAG_PREFIX}${documentRootId}`;
27
+ }
28
+ function legacyDocumentTag(documentId) {
29
+ return `${LEGACY_DOCUMENT_TAG_PREFIX}${documentId}`;
30
+ }
31
+ export function createDocumentEditingRunIdentity(documentId, documentRootId) {
32
+ return {
33
+ tags: [DOCUMENT_EDITING_TAG, documentRootTag(documentRootId), legacyDocumentTag(documentId)],
34
+ properties: {
35
+ resource_kind: 'store_document',
36
+ document_id: documentId,
37
+ document_root_id: documentRootId,
38
+ },
39
+ };
40
+ }
41
+ export function getDocumentTextActionAccess(canEdit, canCollaborate) {
42
+ return {
43
+ canEdit,
44
+ canCollaborate,
45
+ };
46
+ }
47
+ function normalizedContentType(contentType) {
48
+ return contentType?.split(';', 1)[0]?.trim().toLowerCase() || undefined;
49
+ }
50
+ export function isMarkdownContentType(contentType) {
51
+ const normalized = normalizedContentType(contentType);
52
+ return normalized !== undefined && MARKDOWN_CONTENT_TYPES.has(normalized);
53
+ }
54
+ export function isDocumentEditingContentType(contentType) {
55
+ const normalized = normalizedContentType(contentType);
56
+ return normalized !== undefined && DOCUMENT_EDITING_CONTENT_TYPES.has(normalized);
57
+ }
58
+ export function isDocumentEditingRun(run, documentId, documentRootId, startedBy, interaction = DOCUMENT_EDITING_DEFAULT_INTERACTION) {
59
+ if (run.interaction !== interaction || run.started_by !== startedBy)
60
+ return false;
61
+ // A cancelled run was explicitly terminated by the user; never resume it as the editing session.
62
+ if (run.status === 'cancelled')
63
+ return false;
64
+ const tags = run.tags ?? [];
65
+ if (!tags.includes(DOCUMENT_EDITING_TAG))
66
+ return false;
67
+ const properties = getRecord(run.properties);
68
+ const hasStableRootTag = tags.includes(documentRootTag(documentRootId));
69
+ if (hasStableRootTag) {
70
+ return properties?.resource_kind === 'store_document' && properties.document_root_id === documentRootId;
71
+ }
72
+ // Runs created before stable root properties were added only carry a document tag.
73
+ return tags.includes(legacyDocumentTag(documentRootId)) || tags.includes(legacyDocumentTag(documentId));
74
+ }
75
+ async function retrieveMatchingRun(agents, runIds, documentId, documentRootId, startedBy, interaction) {
76
+ for (const runId of runIds) {
77
+ try {
78
+ const run = await agents.retrieve(runId);
79
+ if (isDocumentEditingRun(run, documentId, documentRootId, startedBy, interaction))
80
+ return run;
81
+ }
82
+ catch {
83
+ // The run may have been deleted between search and retrieval. Try the next candidate.
84
+ }
85
+ }
86
+ return undefined;
87
+ }
88
+ export async function findDocumentEditingRun(agents, documentId, documentRootId, startedBy, interaction = DOCUMENT_EDITING_DEFAULT_INTERACTION) {
89
+ const lookupTags = [
90
+ documentRootTag(documentRootId),
91
+ legacyDocumentTag(documentRootId),
92
+ legacyDocumentTag(documentId),
93
+ ];
94
+ const searchedRunIds = new Set();
95
+ for (const tag of new Set(lookupTags)) {
96
+ try {
97
+ const response = await agents.search({
98
+ interaction,
99
+ started_by: startedBy,
100
+ tags: [tag],
101
+ limit: 20,
102
+ sort: ['updated_at:desc'],
103
+ });
104
+ const candidateIds = response.hits.map((hit) => hit.id).filter((id) => !searchedRunIds.has(id));
105
+ for (const id of candidateIds) {
106
+ searchedRunIds.add(id);
107
+ }
108
+ const run = await retrieveMatchingRun(agents, candidateIds, documentId, documentRootId, startedBy, interaction);
109
+ if (run)
110
+ return run;
111
+ }
112
+ catch {
113
+ // Fall through to the authoritative Mongo-backed list lookup below.
114
+ break;
115
+ }
116
+ }
117
+ const response = await agents.list({
118
+ interaction,
119
+ started_by: startedBy,
120
+ limit: 100,
121
+ sort: 'updated_at',
122
+ order: 'desc',
123
+ });
124
+ return response.items.find((run) => run.run_kind === 'agent' && isDocumentEditingRun(run, documentId, documentRootId, startedBy, interaction));
125
+ }
126
+ //# sourceMappingURL=documentEditingRun.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingRun.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingRun.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { ContentObject, ContentObjectItem, ContentObjectTextResponse } from '@vertesia/common';
2
+ export interface DocumentEditingTargetApi {
3
+ retrieve(id: string): Promise<ContentObject>;
4
+ getRevisions(id: string): Promise<ContentObjectItem[]>;
5
+ getObjectText(id: string): Promise<ContentObjectTextResponse>;
6
+ }
7
+ export interface ResolvedDocumentEditingTarget {
8
+ id: string;
9
+ etag: string;
10
+ content: string;
11
+ }
12
+ export declare class DocumentEditingTargetError extends Error {
13
+ constructor(message: string, cause?: unknown);
14
+ }
15
+ /**
16
+ * Resolve the current head and load its write precondition and text as one unit.
17
+ * Nothing from a historical revision is returned when the head cannot be proven.
18
+ */
19
+ export declare function resolveDocumentEditingTarget(objects: DocumentEditingTargetApi, requestedDocumentId: string): Promise<ResolvedDocumentEditingTarget>;
20
+ //# sourceMappingURL=documentEditingTarget.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingTarget.d.ts","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingTarget.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,MAAM,kBAAkB,CAAC;AAEpG,MAAM,WAAW,wBAAwB;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAC7C,YAAY,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACvD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;CACjE;AAED,MAAM,WAAW,6BAA6B;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,0BAA2B,SAAQ,KAAK;gBACrC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAI/C;AAED;;;GAGG;AACH,wBAAsB,4BAA4B,CAC9C,OAAO,EAAE,wBAAwB,EACjC,mBAAmB,EAAE,MAAM,GAC5B,OAAO,CAAC,6BAA6B,CAAC,CAkCxC"}
@@ -0,0 +1,40 @@
1
+ export class DocumentEditingTargetError extends Error {
2
+ constructor(message, cause) {
3
+ super(message, cause === undefined ? undefined : { cause });
4
+ this.name = 'DocumentEditingTargetError';
5
+ }
6
+ }
7
+ /**
8
+ * Resolve the current head and load its write precondition and text as one unit.
9
+ * Nothing from a historical revision is returned when the head cannot be proven.
10
+ */
11
+ export async function resolveDocumentEditingTarget(objects, requestedDocumentId) {
12
+ const requestedObject = await objects.retrieve(requestedDocumentId);
13
+ let targetObject = requestedObject;
14
+ const resolvingHistoricalRevision = Boolean(requestedObject.revision && !requestedObject.revision.head);
15
+ if (resolvingHistoricalRevision) {
16
+ const revisions = await objects.getRevisions(requestedObject.id);
17
+ const heads = revisions.filter((revision) => revision.revision?.head === true);
18
+ if (heads.length !== 1) {
19
+ throw new DocumentEditingTargetError(`Expected one head revision for document ${requestedDocumentId}, found ${heads.length}`);
20
+ }
21
+ targetObject = await objects.retrieve(heads[0].id);
22
+ if (targetObject.revision?.head !== true) {
23
+ throw new DocumentEditingTargetError(`Resolved document ${targetObject.id} is no longer the current head`);
24
+ }
25
+ }
26
+ const etag = targetObject.content?.etag;
27
+ if (!etag) {
28
+ throw new DocumentEditingTargetError(`Document ${targetObject.id} has no content ETag`);
29
+ }
30
+ const response = await objects.getObjectText(targetObject.id);
31
+ if (typeof response.text !== 'string') {
32
+ throw new DocumentEditingTargetError(`Document ${targetObject.id} has no text content`);
33
+ }
34
+ return {
35
+ id: targetObject.id,
36
+ etag,
37
+ content: response.text,
38
+ };
39
+ }
40
+ //# sourceMappingURL=documentEditingTarget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"documentEditingTarget.js","sourceRoot":"","sources":["../../../../../src/features/store/objects/components/documentEditingTarget.ts"],"names":[],"mappings":"AAcA,MAAM,OAAO,0BAA2B,SAAQ,KAAK;IACjD,YAAY,OAAe,EAAE,KAAe;QACxC,KAAK,CAAC,OAAO,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5D,IAAI,CAAC,IAAI,GAAG,4BAA4B,CAAC;IAC7C,CAAC;CACJ;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAC9C,OAAiC,EACjC,mBAA2B;IAE3B,MAAM,eAAe,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;IACpE,IAAI,YAAY,GAAG,eAAe,CAAC;IACnC,MAAM,2BAA2B,GAAG,OAAO,CAAC,eAAe,CAAC,QAAQ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAExG,IAAI,2BAA2B,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,CAAC,CAAC;QAC/E,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,0BAA0B,CAChC,2CAA2C,mBAAmB,WAAW,KAAK,CAAC,MAAM,EAAE,CAC1F,CAAC;QACN,CAAC;QACD,YAAY,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnD,IAAI,YAAY,CAAC,QAAQ,EAAE,IAAI,KAAK,IAAI,EAAE,CAAC;YACvC,MAAM,IAAI,0BAA0B,CAAC,qBAAqB,YAAY,CAAC,EAAE,gCAAgC,CAAC,CAAC;QAC/G,CAAC;IACL,CAAC;IAED,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,EAAE,IAAI,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACR,MAAM,IAAI,0BAA0B,CAAC,YAAY,YAAY,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC5F,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;IAC9D,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QACpC,MAAM,IAAI,0BAA0B,CAAC,YAAY,YAAY,CAAC,EAAE,sBAAsB,CAAC,CAAC;IAC5F,CAAC;IAED,OAAO;QACH,EAAE,EAAE,YAAY,CAAC,EAAE;QACnB,IAAI;QACJ,OAAO,EAAE,QAAQ,CAAC,IAAI;KACzB,CAAC;AACN,CAAC"}
@@ -1,5 +1,6 @@
1
1
  export * from './ContentDispositionButton';
2
2
  export * from './ContentOverview';
3
+ export * from './DocumentEditingPanel';
3
4
  export * from './DocumentIcon';
4
5
  export * from './DocumentInput';
5
6
  export * from './PropertiesEditorModal';