@vertesia/ui 1.4.0-dev.20260615.051508Z → 1.4.0-dev.20260629.130134Z

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 (337) hide show
  1. package/lib/core/components/shadcn/dropdown.d.ts.map +1 -1
  2. package/lib/core/components/shadcn/dropdown.js +6 -2
  3. package/lib/core/components/shadcn/dropdown.js.map +1 -1
  4. package/lib/core/components/shadcn/filters/filterBar.d.ts.map +1 -1
  5. package/lib/core/components/shadcn/filters/filterBar.js +9 -2
  6. package/lib/core/components/shadcn/filters/filterBar.js.map +1 -1
  7. package/lib/core/components/shadcn/modal/ConfirmModal.d.ts +16 -1
  8. package/lib/core/components/shadcn/modal/ConfirmModal.d.ts.map +1 -1
  9. package/lib/core/components/shadcn/modal/ConfirmModal.js +25 -3
  10. package/lib/core/components/shadcn/modal/ConfirmModal.js.map +1 -1
  11. package/lib/core/components/shadcn/modal/dialog.js +1 -1
  12. package/lib/core/components/shadcn/modal/dialog.js.map +1 -1
  13. package/lib/core/components/shadcn/popover.d.ts.map +1 -1
  14. package/lib/core/components/shadcn/popover.js +3 -1
  15. package/lib/core/components/shadcn/popover.js.map +1 -1
  16. package/lib/core/components/shadcn/switch.js +3 -3
  17. package/lib/core/components/shadcn/switch.js.map +1 -1
  18. package/lib/core/components/shadcn/tabs.js +1 -1
  19. package/lib/core/components/shadcn/tabs.js.map +1 -1
  20. package/lib/core/components/shadcn/tooltip.d.ts.map +1 -1
  21. package/lib/core/components/shadcn/tooltip.js +3 -1
  22. package/lib/core/components/shadcn/tooltip.js.map +1 -1
  23. package/lib/env/index.d.ts +0 -19
  24. package/lib/env/index.d.ts.map +1 -1
  25. package/lib/env/index.js +0 -6
  26. package/lib/env/index.js.map +1 -1
  27. package/lib/features/agent/PayloadBuilder.d.ts +4 -0
  28. package/lib/features/agent/PayloadBuilder.d.ts.map +1 -1
  29. package/lib/features/agent/PayloadBuilder.js +16 -0
  30. package/lib/features/agent/PayloadBuilder.js.map +1 -1
  31. package/lib/features/agent/chat/AgentApprovalModeSelector.d.ts +10 -0
  32. package/lib/features/agent/chat/AgentApprovalModeSelector.d.ts.map +1 -0
  33. package/lib/features/agent/chat/AgentApprovalModeSelector.js +50 -0
  34. package/lib/features/agent/chat/AgentApprovalModeSelector.js.map +1 -0
  35. package/lib/features/agent/chat/AgentChatFixtureReplay.d.ts +2 -1
  36. package/lib/features/agent/chat/AgentChatFixtureReplay.d.ts.map +1 -1
  37. package/lib/features/agent/chat/AgentChatFixtureReplay.js +3 -3
  38. package/lib/features/agent/chat/AgentChatFixtureReplay.js.map +1 -1
  39. package/lib/features/agent/chat/AgentRequestInputOverlay.d.ts +5 -2
  40. package/lib/features/agent/chat/AgentRequestInputOverlay.d.ts.map +1 -1
  41. package/lib/features/agent/chat/AgentRequestInputOverlay.js +41 -7
  42. package/lib/features/agent/chat/AgentRequestInputOverlay.js.map +1 -1
  43. package/lib/features/agent/chat/AgentRightPanel.d.ts.map +1 -1
  44. package/lib/features/agent/chat/AgentRightPanel.js +133 -12
  45. package/lib/features/agent/chat/AgentRightPanel.js.map +1 -1
  46. package/lib/features/agent/chat/AnimatedThinkingDots.js +1 -1
  47. package/lib/features/agent/chat/AnimatedThinkingDots.js.map +1 -1
  48. package/lib/features/agent/chat/ArtifactsTab.d.ts.map +1 -1
  49. package/lib/features/agent/chat/ArtifactsTab.js +11 -65
  50. package/lib/features/agent/chat/ArtifactsTab.js.map +1 -1
  51. package/lib/features/agent/chat/AskUserWidget.d.ts +3 -1
  52. package/lib/features/agent/chat/AskUserWidget.d.ts.map +1 -1
  53. package/lib/features/agent/chat/AskUserWidget.js +4 -3
  54. package/lib/features/agent/chat/AskUserWidget.js.map +1 -1
  55. package/lib/features/agent/chat/ModernAgentConversation.d.ts +10 -2
  56. package/lib/features/agent/chat/ModernAgentConversation.d.ts.map +1 -1
  57. package/lib/features/agent/chat/ModernAgentConversation.js +526 -117
  58. package/lib/features/agent/chat/ModernAgentConversation.js.map +1 -1
  59. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.d.ts +8 -0
  60. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.d.ts.map +1 -0
  61. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.js +19 -0
  62. package/lib/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.js.map +1 -0
  63. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts +8 -2
  64. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.d.ts.map +1 -1
  65. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js +551 -92
  66. package/lib/features/agent/chat/ModernAgentOutput/AllMessagesMixed.js.map +1 -1
  67. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.d.ts.map +1 -1
  68. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js +7 -6
  69. package/lib/features/agent/chat/ModernAgentOutput/AttachmentPreview.js.map +1 -1
  70. package/lib/features/agent/chat/ModernAgentOutput/Header.js +2 -2
  71. package/lib/features/agent/chat/ModernAgentOutput/Header.js.map +1 -1
  72. package/lib/features/agent/chat/ModernAgentOutput/MessageDeliveryStatus.d.ts +8 -0
  73. package/lib/features/agent/chat/ModernAgentOutput/MessageDeliveryStatus.d.ts.map +1 -0
  74. package/lib/features/agent/chat/ModernAgentOutput/MessageDeliveryStatus.js +61 -0
  75. package/lib/features/agent/chat/ModernAgentOutput/MessageDeliveryStatus.js.map +1 -0
  76. package/lib/features/agent/chat/ModernAgentOutput/MessageInput.d.ts +15 -2
  77. package/lib/features/agent/chat/ModernAgentOutput/MessageInput.d.ts.map +1 -1
  78. package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js +28 -38
  79. package/lib/features/agent/chat/ModernAgentOutput/MessageInput.js.map +1 -1
  80. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts +1 -1
  81. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.d.ts.map +1 -1
  82. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js +3 -2
  83. package/lib/features/agent/chat/ModernAgentOutput/MessageItem.js.map +1 -1
  84. package/lib/features/agent/chat/ModernAgentOutput/SlideInPanel.js +2 -1
  85. package/lib/features/agent/chat/ModernAgentOutput/SlideInPanel.js.map +1 -1
  86. package/lib/features/agent/chat/ModernAgentOutput/SlidingMessages.js +1 -1
  87. package/lib/features/agent/chat/ModernAgentOutput/SlidingMessages.js.map +1 -1
  88. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.d.ts +5 -0
  89. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.d.ts.map +1 -1
  90. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js +59 -4
  91. package/lib/features/agent/chat/ModernAgentOutput/SummaryConversation.js.map +1 -1
  92. package/lib/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js +2 -2
  93. package/lib/features/agent/chat/ModernAgentOutput/WorkstreamTabs.js.map +1 -1
  94. package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.d.ts +9 -0
  95. package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.d.ts.map +1 -1
  96. package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js +180 -0
  97. package/lib/features/agent/chat/ModernAgentOutput/requestInputMessages.js.map +1 -1
  98. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts +6 -0
  99. package/lib/features/agent/chat/ModernAgentOutput/utils.d.ts.map +1 -1
  100. package/lib/features/agent/chat/ModernAgentOutput/utils.js +92 -2
  101. package/lib/features/agent/chat/ModernAgentOutput/utils.js.map +1 -1
  102. package/lib/features/agent/chat/clipboardFiles.d.ts +15 -0
  103. package/lib/features/agent/chat/clipboardFiles.d.ts.map +1 -0
  104. package/lib/features/agent/chat/clipboardFiles.js +35 -0
  105. package/lib/features/agent/chat/clipboardFiles.js.map +1 -0
  106. package/lib/features/agent/chat/hooks/useAgentStream.d.ts +6 -0
  107. package/lib/features/agent/chat/hooks/useAgentStream.d.ts.map +1 -1
  108. package/lib/features/agent/chat/hooks/useAgentStream.js +218 -37
  109. package/lib/features/agent/chat/hooks/useAgentStream.js.map +1 -1
  110. package/lib/features/agent/chat/hooks/useArtifacts.d.ts +1 -8
  111. package/lib/features/agent/chat/hooks/useArtifacts.d.ts.map +1 -1
  112. package/lib/features/agent/chat/hooks/useArtifacts.js +10 -28
  113. package/lib/features/agent/chat/hooks/useArtifacts.js.map +1 -1
  114. package/lib/features/agent/chat/index.d.ts +2 -1
  115. package/lib/features/agent/chat/index.d.ts.map +1 -1
  116. package/lib/features/agent/chat/index.js +2 -1
  117. package/lib/features/agent/chat/index.js.map +1 -1
  118. package/lib/features/agent/chat/workstreams.d.ts +1 -0
  119. package/lib/features/agent/chat/workstreams.d.ts.map +1 -1
  120. package/lib/features/agent/chat/workstreams.js +28 -0
  121. package/lib/features/agent/chat/workstreams.js.map +1 -1
  122. package/lib/features/facets/AgentRunnerFacetsNav.d.ts +10 -1
  123. package/lib/features/facets/AgentRunnerFacetsNav.d.ts.map +1 -1
  124. package/lib/features/facets/AgentRunnerFacetsNav.js +6 -3
  125. package/lib/features/facets/AgentRunnerFacetsNav.js.map +1 -1
  126. package/lib/features/facets/CollectionsFacetsNav.d.ts +10 -1
  127. package/lib/features/facets/CollectionsFacetsNav.d.ts.map +1 -1
  128. package/lib/features/facets/CollectionsFacetsNav.js +14 -5
  129. package/lib/features/facets/CollectionsFacetsNav.js.map +1 -1
  130. package/lib/features/facets/PromptsFacetsNav.d.ts +10 -1
  131. package/lib/features/facets/PromptsFacetsNav.d.ts.map +1 -1
  132. package/lib/features/facets/PromptsFacetsNav.js +14 -5
  133. package/lib/features/facets/PromptsFacetsNav.js.map +1 -1
  134. package/lib/features/facets/RunsFacetsNav.d.ts +10 -1
  135. package/lib/features/facets/RunsFacetsNav.d.ts.map +1 -1
  136. package/lib/features/facets/RunsFacetsNav.js +14 -5
  137. package/lib/features/facets/RunsFacetsNav.js.map +1 -1
  138. package/lib/features/index.d.ts +0 -1
  139. package/lib/features/index.d.ts.map +1 -1
  140. package/lib/features/index.js +0 -1
  141. package/lib/features/index.js.map +1 -1
  142. package/lib/features/oauth/McpConnectionsButton.d.ts +30 -0
  143. package/lib/features/oauth/McpConnectionsButton.d.ts.map +1 -0
  144. package/lib/features/oauth/McpConnectionsButton.js +70 -0
  145. package/lib/features/oauth/McpConnectionsButton.js.map +1 -0
  146. package/lib/features/oauth/McpConnectionsDialog.d.ts +25 -0
  147. package/lib/features/oauth/McpConnectionsDialog.d.ts.map +1 -0
  148. package/lib/features/oauth/McpConnectionsDialog.js +26 -0
  149. package/lib/features/oauth/McpConnectionsDialog.js.map +1 -0
  150. package/lib/features/oauth/RemoteMcpConnectionButton.d.ts.map +1 -1
  151. package/lib/features/oauth/RemoteMcpConnectionButton.js +14 -6
  152. package/lib/features/oauth/RemoteMcpConnectionButton.js.map +1 -1
  153. package/lib/features/oauth/index.d.ts +3 -0
  154. package/lib/features/oauth/index.d.ts.map +1 -1
  155. package/lib/features/oauth/index.js +3 -0
  156. package/lib/features/oauth/index.js.map +1 -1
  157. package/lib/features/oauth/useMcpConnections.d.ts +44 -0
  158. package/lib/features/oauth/useMcpConnections.d.ts.map +1 -0
  159. package/lib/features/oauth/useMcpConnections.js +168 -0
  160. package/lib/features/oauth/useMcpConnections.js.map +1 -0
  161. package/lib/features/permissions/UserPermissionsProvider.d.ts +4 -6
  162. package/lib/features/permissions/UserPermissionsProvider.d.ts.map +1 -1
  163. package/lib/features/permissions/UserPermissionsProvider.js +40 -42
  164. package/lib/features/permissions/UserPermissionsProvider.js.map +1 -1
  165. package/lib/features/store/objects/DocumentPreviewPanel.d.ts.map +1 -1
  166. package/lib/features/store/objects/DocumentPreviewPanel.js +2 -1
  167. package/lib/features/store/objects/DocumentPreviewPanel.js.map +1 -1
  168. package/lib/features/store/objects/DocumentQuickFilter.d.ts +23 -0
  169. package/lib/features/store/objects/DocumentQuickFilter.d.ts.map +1 -0
  170. package/lib/features/store/objects/DocumentQuickFilter.js +30 -0
  171. package/lib/features/store/objects/DocumentQuickFilter.js.map +1 -0
  172. package/lib/features/store/objects/DocumentSearchResults.d.ts.map +1 -1
  173. package/lib/features/store/objects/DocumentSearchResults.js +17 -1
  174. package/lib/features/store/objects/DocumentSearchResults.js.map +1 -1
  175. package/lib/features/store/objects/components/ContentOverview.d.ts.map +1 -1
  176. package/lib/features/store/objects/components/ContentOverview.js +17 -74
  177. package/lib/features/store/objects/components/ContentOverview.js.map +1 -1
  178. package/lib/features/store/objects/layout/DocumentTableColumn.d.ts +7 -1
  179. package/lib/features/store/objects/layout/DocumentTableColumn.d.ts.map +1 -1
  180. package/lib/features/store/objects/layout/DocumentTableColumn.js +27 -3
  181. package/lib/features/store/objects/layout/DocumentTableColumn.js.map +1 -1
  182. package/lib/features/store/objects/layout/documentLayout.js +1 -1
  183. package/lib/features/store/objects/layout/renderers.d.ts +2 -1
  184. package/lib/features/store/objects/layout/renderers.d.ts.map +1 -1
  185. package/lib/features/store/objects/layout/renderers.js +27 -20
  186. package/lib/features/store/objects/layout/renderers.js.map +1 -1
  187. package/lib/features/store/types/ContentObjectTypesSearch.d.ts.map +1 -1
  188. package/lib/features/store/types/ContentObjectTypesSearch.js +4 -1
  189. package/lib/features/store/types/ContentObjectTypesSearch.js.map +1 -1
  190. package/lib/features/store/types/ContentObjectTypesTable.d.ts +2 -1
  191. package/lib/features/store/types/ContentObjectTypesTable.d.ts.map +1 -1
  192. package/lib/features/store/types/ContentObjectTypesTable.js +8 -3
  193. package/lib/features/store/types/ContentObjectTypesTable.js.map +1 -1
  194. package/lib/i18n/instance.d.ts.map +1 -1
  195. package/lib/i18n/instance.js +1 -0
  196. package/lib/i18n/instance.js.map +1 -1
  197. package/lib/i18n/locales/ar.json +72 -45
  198. package/lib/i18n/locales/de.json +65 -34
  199. package/lib/i18n/locales/en.json +63 -47
  200. package/lib/i18n/locales/es.json +65 -35
  201. package/lib/i18n/locales/fr.json +65 -35
  202. package/lib/i18n/locales/it.json +72 -42
  203. package/lib/i18n/locales/ja.json +72 -41
  204. package/lib/i18n/locales/ko.json +72 -41
  205. package/lib/i18n/locales/pt.json +72 -42
  206. package/lib/i18n/locales/ru.json +72 -43
  207. package/lib/i18n/locales/tr.json +72 -41
  208. package/lib/i18n/locales/zh-TW.json +72 -41
  209. package/lib/i18n/locales/zh.json +72 -41
  210. package/lib/session/UserSession.d.ts +0 -6
  211. package/lib/session/UserSession.d.ts.map +1 -1
  212. package/lib/session/UserSession.js +0 -15
  213. package/lib/session/UserSession.js.map +1 -1
  214. package/lib/session/UserSessionProvider.d.ts.map +1 -1
  215. package/lib/session/UserSessionProvider.js +39 -98
  216. package/lib/session/UserSessionProvider.js.map +1 -1
  217. package/lib/session/auth/composable.d.ts.map +1 -1
  218. package/lib/session/auth/composable.js +3 -33
  219. package/lib/session/auth/composable.js.map +1 -1
  220. package/lib/shell/login/SignInPrimitives.d.ts.map +1 -1
  221. package/lib/shell/login/SignInPrimitives.js +3 -2
  222. package/lib/shell/login/SignInPrimitives.js.map +1 -1
  223. package/lib/vertesia-ui-core.js +1 -1
  224. package/lib/vertesia-ui-core.js.map +1 -1
  225. package/lib/vertesia-ui-env.js +1 -1
  226. package/lib/vertesia-ui-env.js.map +1 -1
  227. package/lib/vertesia-ui-features.js +1 -1
  228. package/lib/vertesia-ui-features.js.map +1 -1
  229. package/lib/vertesia-ui-i18n.js +1 -1
  230. package/lib/vertesia-ui-i18n.js.map +1 -1
  231. package/lib/vertesia-ui-session.js +1 -1
  232. package/lib/vertesia-ui-session.js.map +1 -1
  233. package/lib/vertesia-ui-shell.js +1 -1
  234. package/lib/vertesia-ui-shell.js.map +1 -1
  235. package/lib/vertesia-ui-widgets.js +1 -1
  236. package/lib/vertesia-ui-widgets.js.map +1 -1
  237. package/lib/widgets/schema-editor/editor/Editable.js +1 -1
  238. package/lib/widgets/schema-editor/editor/Editable.js.map +1 -1
  239. package/llms.txt +70 -70
  240. package/package.json +35 -32
  241. package/src/core/components/shadcn/dropdown.tsx +2 -0
  242. package/src/core/components/shadcn/filters/filterBar.tsx +9 -2
  243. package/src/core/components/shadcn/modal/ConfirmModal.tsx +65 -3
  244. package/src/core/components/shadcn/modal/dialog.tsx +1 -1
  245. package/src/core/components/shadcn/popover.tsx +1 -0
  246. package/src/core/components/shadcn/switch.tsx +4 -4
  247. package/src/core/components/shadcn/tabs.tsx +1 -1
  248. package/src/core/components/shadcn/tooltip.tsx +1 -0
  249. package/src/env/index.ts +0 -24
  250. package/src/features/agent/PayloadBuilder.tsx +18 -0
  251. package/src/features/agent/chat/AgentApprovalModeSelector.tsx +130 -0
  252. package/src/features/agent/chat/AgentChatFixtureReplay.test.tsx +22 -2
  253. package/src/features/agent/chat/AgentChatFixtureReplay.tsx +33 -27
  254. package/src/features/agent/chat/AgentRequestInputOverlay.test.tsx +122 -0
  255. package/src/features/agent/chat/AgentRequestInputOverlay.tsx +91 -17
  256. package/src/features/agent/chat/AgentRightPanel.tsx +238 -50
  257. package/src/features/agent/chat/AnimatedThinkingDots.tsx +1 -1
  258. package/src/features/agent/chat/ArtifactsTab.tsx +21 -155
  259. package/src/features/agent/chat/AskUserWidget.tsx +6 -2
  260. package/src/features/agent/chat/ModernAgentConversation.test.tsx +1157 -47
  261. package/src/features/agent/chat/ModernAgentConversation.tsx +703 -136
  262. package/src/features/agent/chat/ModernAgentOutput/ActiveWorkstreamsSummary.tsx +74 -0
  263. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.test.tsx +1420 -126
  264. package/src/features/agent/chat/ModernAgentOutput/AllMessagesMixed.tsx +934 -111
  265. package/src/features/agent/chat/ModernAgentOutput/AttachmentPreview.tsx +31 -40
  266. package/src/features/agent/chat/ModernAgentOutput/Header.tsx +28 -28
  267. package/src/features/agent/chat/ModernAgentOutput/MessageDeliveryStatus.tsx +83 -0
  268. package/src/features/agent/chat/ModernAgentOutput/MessageInput.test.tsx +38 -2
  269. package/src/features/agent/chat/ModernAgentOutput/MessageInput.tsx +121 -98
  270. package/src/features/agent/chat/ModernAgentOutput/MessageItem.tsx +7 -1
  271. package/src/features/agent/chat/ModernAgentOutput/SlideInPanel.tsx +3 -3
  272. package/src/features/agent/chat/ModernAgentOutput/SlidingMessages.tsx +1 -1
  273. package/src/features/agent/chat/ModernAgentOutput/SummaryConversation.ts +82 -2
  274. package/src/features/agent/chat/ModernAgentOutput/WorkstreamTabs.tsx +2 -2
  275. package/src/features/agent/chat/ModernAgentOutput/requestInputMessages.ts +216 -0
  276. package/src/features/agent/chat/ModernAgentOutput/utils.test.ts +149 -0
  277. package/src/features/agent/chat/ModernAgentOutput/utils.ts +103 -2
  278. package/src/features/agent/chat/clipboardFiles.ts +33 -0
  279. package/src/features/agent/chat/hooks/useAgentStream.test.tsx +355 -4
  280. package/src/features/agent/chat/hooks/useAgentStream.ts +270 -43
  281. package/src/features/agent/chat/hooks/useArtifacts.ts +11 -44
  282. package/src/features/agent/chat/index.ts +10 -1
  283. package/src/features/agent/chat/workstreams.ts +42 -0
  284. package/src/features/facets/AgentRunnerFacetsNav.tsx +23 -3
  285. package/src/features/facets/CollectionsFacetsNav.tsx +30 -5
  286. package/src/features/facets/PromptsFacetsNav.tsx +30 -5
  287. package/src/features/facets/RunsFacetsNav.tsx +32 -5
  288. package/src/features/index.ts +0 -1
  289. package/src/features/oauth/McpConnectionsButton.test.tsx +248 -0
  290. package/src/features/oauth/McpConnectionsButton.tsx +269 -0
  291. package/src/features/oauth/McpConnectionsDialog.tsx +142 -0
  292. package/src/features/oauth/RemoteMcpConnectionButton.tsx +37 -14
  293. package/src/features/oauth/index.ts +3 -0
  294. package/src/features/oauth/useMcpConnections.test.ts +94 -0
  295. package/src/features/oauth/useMcpConnections.ts +210 -0
  296. package/src/features/permissions/UserPermissionsProvider.tsx +41 -59
  297. package/src/features/store/objects/DocumentPreviewPanel.tsx +4 -2
  298. package/src/features/store/objects/DocumentQuickFilter.tsx +72 -0
  299. package/src/features/store/objects/DocumentSearchResults.tsx +30 -11
  300. package/src/features/store/objects/components/ContentOverview.tsx +30 -99
  301. package/src/features/store/objects/layout/DocumentTableColumn.tsx +29 -4
  302. package/src/features/store/objects/layout/documentLayout.tsx +1 -1
  303. package/src/features/store/objects/layout/renderers.tsx +80 -20
  304. package/src/features/store/types/ContentObjectTypesSearch.tsx +7 -1
  305. package/src/features/store/types/ContentObjectTypesTable.tsx +34 -4
  306. package/src/i18n/instance.ts +1 -0
  307. package/src/i18n/locales/ar.json +72 -45
  308. package/src/i18n/locales/de.json +65 -34
  309. package/src/i18n/locales/en.json +63 -47
  310. package/src/i18n/locales/es.json +65 -35
  311. package/src/i18n/locales/fr.json +65 -35
  312. package/src/i18n/locales/it.json +72 -42
  313. package/src/i18n/locales/ja.json +72 -41
  314. package/src/i18n/locales/ko.json +72 -41
  315. package/src/i18n/locales/pt.json +72 -42
  316. package/src/i18n/locales/ru.json +72 -43
  317. package/src/i18n/locales/tr.json +72 -41
  318. package/src/i18n/locales/zh-TW.json +72 -41
  319. package/src/i18n/locales/zh.json +72 -41
  320. package/src/i18n/rtl.test.ts +57 -1
  321. package/src/session/UserSession.ts +0 -16
  322. package/src/session/UserSessionProvider.tsx +51 -123
  323. package/src/session/auth/composable.ts +3 -34
  324. package/src/shell/login/SignInPrimitives.tsx +3 -2
  325. package/src/widgets/schema-editor/editor/Editable.tsx +1 -1
  326. package/lib/features/document-viewer/UniversalDocumentViewer.d.ts +0 -73
  327. package/lib/features/document-viewer/UniversalDocumentViewer.d.ts.map +0 -1
  328. package/lib/features/document-viewer/UniversalDocumentViewer.js +0 -415
  329. package/lib/features/document-viewer/UniversalDocumentViewer.js.map +0 -1
  330. package/lib/features/document-viewer/index.d.ts +0 -2
  331. package/lib/features/document-viewer/index.d.ts.map +0 -1
  332. package/lib/features/document-viewer/index.js +0 -2
  333. package/lib/features/document-viewer/index.js.map +0 -1
  334. package/src/features/document-viewer/UniversalDocumentViewer.test.tsx +0 -123
  335. package/src/features/document-viewer/UniversalDocumentViewer.tsx +0 -746
  336. package/src/features/document-viewer/index.ts +0 -1
  337. package/src/session/auth/composable.test.ts +0 -79
@@ -59,28 +59,6 @@ export function UserSessionProvider({ children, loadOnboardingStatus = true }: U
59
59
  },
60
60
  });
61
61
 
62
- if (Env.isLocalDev && Env.devAuthToken) {
63
- session.setSession = setSession;
64
- getComposableToken(selectedAccount, selectedProject, Env.devAuthToken)
65
- .then((res) => {
66
- session.login(res.rawToken).then(() => setSession(session.clone()));
67
- })
68
- .catch((err) => {
69
- console.error('Failed to initialize dev auth token', err);
70
- Env.logger.error('Failed to initialize dev auth token', {
71
- vertesia: {
72
- account_id: selectedAccount,
73
- project_id: selectedProject,
74
- error: err,
75
- },
76
- });
77
- session.isLoading = false;
78
- session.authError = err instanceof Error ? err : new Error(String(err));
79
- setSession(session.clone());
80
- });
81
- return;
82
- }
83
-
84
62
  if (token && state) {
85
63
  session.setSession = setSession;
86
64
  const validationError = verifyState(state);
@@ -141,14 +119,7 @@ export function UserSessionProvider({ children, loadOnboardingStatus = true }: U
141
119
  redirectToCentralAuth();
142
120
  });
143
121
  return;
144
- }
145
-
146
- let cancelled = false;
147
- let unsubscribe: (() => void) | undefined;
148
-
149
- const startFirebaseOrCentralAuth = () => {
150
- if (cancelled) return;
151
-
122
+ } else {
152
123
  // If the current host is not in the Firebase allowlist, central auth owns sign-in.
153
124
  if (!session.isLoggedIn()) {
154
125
  console.log('Auth: not logged in & no token/state');
@@ -172,109 +143,66 @@ export function UserSessionProvider({ children, loadOnboardingStatus = true }: U
172
143
  });
173
144
  redirectToCentralAuth();
174
145
  return; // Don't register onAuthStateChanged listener when redirecting
175
- }
176
-
177
- console.log('Auth: host is in Firebase auth allowlist');
178
- Env.logger.info('Host is in Firebase auth allowlist', {
179
- vertesia: {
180
- account_id: selectedAccount,
181
- project_id: selectedProject,
182
- },
183
- });
184
- }
185
-
186
- unsubscribe = onAuthStateChanged(getFirebaseAuth(), async (firebaseUser) => {
187
- if (firebaseUser) {
188
- console.log('Auth: successful login with firebase');
189
- Env.logger.info('Successful login with firebase', {
190
- vertesia: {
191
- account_id: selectedAccount,
192
- project_id: selectedProject,
193
- },
194
- });
195
- session.setSession = setSession;
196
- await getComposableToken(
197
- selectedAccount,
198
- selectedProject,
199
- undefined,
200
- false,
201
- shouldRedirectToCentralAuth(),
202
- )
203
- .then((res) => {
204
- session
205
- .login(res.rawToken, { loadOnboardingStatus })
206
- .then(() => setSession(session.clone()));
207
- })
208
- .catch((err) => {
209
- console.error('Failed to fetch user token from studio', err);
210
- Env.logger.error('Failed to fetch user token from studio', {
211
- vertesia: {
212
- account_id: selectedAccount,
213
- project_id: selectedProject,
214
- error: err,
215
- },
216
- });
217
- if (!(err instanceof UserNotFoundError)) session.logout();
218
- session.isLoading = false;
219
- session.authError = err;
220
- setSession(session.clone());
221
- });
222
146
  } else {
223
- // anonymous user
224
- console.log('Auth: using anonymous user');
225
- Env.logger.info('Using anonymous user', {
147
+ console.log('Auth: host is in Firebase auth allowlist');
148
+ Env.logger.info('Host is in Firebase auth allowlist', {
226
149
  vertesia: {
227
150
  account_id: selectedAccount,
228
151
  project_id: selectedProject,
229
152
  },
230
153
  });
231
- session.client.withAuthCallback(undefined);
232
- session.logout();
233
- setSession(session.clone());
234
154
  }
235
- });
236
- };
155
+ }
156
+ }
237
157
 
238
- if (Env.authTokenProvider) {
239
- session.setSession = setSession;
240
- void Env.authTokenProvider()
241
- .then(async (injectedToken) => {
242
- if (!injectedToken) {
243
- startFirebaseOrCentralAuth();
244
- return;
245
- }
246
- const res = await getComposableToken(
247
- selectedAccount,
248
- selectedProject,
249
- injectedToken,
250
- false,
251
- shouldRedirectToCentralAuth(),
252
- );
253
- await session.login(res.rawToken, { loadOnboardingStatus });
254
- if (!cancelled) setSession(session.clone());
255
- })
256
- .catch((err: unknown) => {
257
- console.warn('Auth: failed to initialize injected auth token', err);
258
- Env.logger.warn('Failed to initialize injected auth token', {
259
- vertesia: {
260
- account_id: selectedAccount,
261
- project_id: selectedProject,
262
- error: err,
263
- },
158
+ return onAuthStateChanged(getFirebaseAuth(), async (firebaseUser) => {
159
+ if (firebaseUser) {
160
+ console.log('Auth: successful login with firebase');
161
+ Env.logger.info('Successful login with firebase', {
162
+ vertesia: {
163
+ account_id: selectedAccount,
164
+ project_id: selectedProject,
165
+ },
166
+ });
167
+ session.setSession = setSession;
168
+ await getComposableToken(
169
+ selectedAccount,
170
+ selectedProject,
171
+ undefined,
172
+ false,
173
+ shouldRedirectToCentralAuth(),
174
+ )
175
+ .then((res) => {
176
+ session.login(res.rawToken, { loadOnboardingStatus }).then(() => setSession(session.clone()));
177
+ })
178
+ .catch((err) => {
179
+ console.error('Failed to fetch user token from studio', err);
180
+ Env.logger.error('Failed to fetch user token from studio', {
181
+ vertesia: {
182
+ account_id: selectedAccount,
183
+ project_id: selectedProject,
184
+ error: err,
185
+ },
186
+ });
187
+ if (!(err instanceof UserNotFoundError)) session.logout();
188
+ session.isLoading = false;
189
+ session.authError = err;
190
+ setSession(session.clone());
264
191
  });
265
- startFirebaseOrCentralAuth();
192
+ } else {
193
+ // anonymous user
194
+ console.log('Auth: using anonymous user');
195
+ Env.logger.info('Using anonymous user', {
196
+ vertesia: {
197
+ account_id: selectedAccount,
198
+ project_id: selectedProject,
199
+ },
266
200
  });
267
- return () => {
268
- cancelled = true;
269
- unsubscribe?.();
270
- };
271
- }
272
-
273
- startFirebaseOrCentralAuth();
274
- return () => {
275
- cancelled = true;
276
- unsubscribe?.();
277
- };
201
+ session.client.withAuthCallback(undefined);
202
+ session.logout();
203
+ setSession(session.clone());
204
+ }
205
+ });
278
206
  };
279
207
 
280
208
  useEffect(() => {
@@ -17,24 +17,6 @@ interface ComposableTokenResponse {
17
17
  message?: string;
18
18
  }
19
19
 
20
- function normalizeIssuer(value: string | undefined): string | undefined {
21
- return value?.replace(/\/+$/, '');
22
- }
23
-
24
- function decodeToken(token: string): AuthTokenPayload {
25
- return jwtDecode(token) as AuthTokenPayload;
26
- }
27
-
28
- function isVertesiaIssuedToken(token: string | undefined): token is string {
29
- if (!token) return false;
30
- try {
31
- const decoded = decodeToken(token) as AuthTokenPayload & { iss?: string };
32
- return normalizeIssuer(decoded.iss) === normalizeIssuer(Env.endpoints.sts);
33
- } catch {
34
- return false;
35
- }
36
- }
37
-
38
20
  export async function fetchComposableToken(
39
21
  getIdToken: () => Promise<string | null | undefined>,
40
22
  accountId?: string,
@@ -312,36 +294,23 @@ export async function getComposableToken(
312
294
  const selectedAccount = accountId ?? localStorage.getItem(LastSelectedAccountId_KEY) ?? undefined;
313
295
  const selectedProject =
314
296
  projectId ?? localStorage.getItem(`${LastSelectedProjectId_KEY}-${selectedAccount}`) ?? undefined;
315
- const devAuthToken = Env.isLocalDev ? Env.devAuthToken : undefined;
316
- const suppliedToken = devAuthToken ?? initToken ?? AUTH_TOKEN_RAW;
317
297
 
318
298
  //token is still valid for more than 5 minutes
319
299
  if (!forceRefresh && AUTH_TOKEN_RAW && AUTH_TOKEN && AUTH_TOKEN.exp > Date.now() / 1000 + 300) {
320
300
  return { rawToken: AUTH_TOKEN_RAW, token: AUTH_TOKEN, error: false };
321
301
  }
322
302
 
323
- if (!forceRefresh && isVertesiaIssuedToken(suppliedToken)) {
324
- AUTH_TOKEN_RAW = suppliedToken;
325
- AUTH_TOKEN = decodeToken(AUTH_TOKEN_RAW);
326
- if (!AUTH_TOKEN.exp) {
327
- throw new Error('Invalid composable token');
328
- }
329
- return { rawToken: AUTH_TOKEN_RAW, token: AUTH_TOKEN, error: false };
330
- }
331
-
332
303
  //token is close to expire, refresh it
333
- if (!devAuthToken && !useInternalAuth && getFirebaseAuth().currentUser) {
304
+ if (!useInternalAuth && getFirebaseAuth().currentUser) {
334
305
  //we have a firebase user, get the token from there
335
306
  AUTH_TOKEN_RAW = await fetchComposableTokenFromFirebaseToken(selectedAccount, selectedProject);
336
- } else if (!devAuthToken && (initToken || AUTH_TOKEN_RAW)) {
307
+ } else if (initToken || AUTH_TOKEN_RAW) {
337
308
  // we have a token already and no firebase user, refresh it
338
309
  AUTH_TOKEN_RAW = await fetchComposableToken(
339
310
  () => Promise.resolve(initToken ?? AUTH_TOKEN_RAW),
340
311
  selectedAccount,
341
312
  selectedProject,
342
313
  );
343
- } else if (devAuthToken) {
344
- AUTH_TOKEN_RAW = devAuthToken;
345
314
  }
346
315
 
347
316
  if (!AUTH_TOKEN_RAW) {
@@ -354,7 +323,7 @@ export async function getComposableToken(
354
323
  throw new Error('Cannot acquire a composable token');
355
324
  }
356
325
 
357
- AUTH_TOKEN = decodeToken(AUTH_TOKEN_RAW);
326
+ AUTH_TOKEN = jwtDecode(AUTH_TOKEN_RAW) as AuthTokenPayload;
358
327
 
359
328
  if (!AUTH_TOKEN?.exp || !AUTH_TOKEN_RAW) {
360
329
  console.error('Invalid composable token', AUTH_TOKEN);
@@ -297,9 +297,10 @@ export function SignInProviderButton({ provider, label, onClick, variant = 'outl
297
297
  const Icon = providerIcon(provider);
298
298
 
299
299
  if (variant === 'arrow') {
300
- // !size beats Button's [&_svg]:size-4 rule. Arrow fades in and nudges right on hover.
300
+ // rtl-ok: arrow hover nudge moves toward inline-end with an explicit RTL mirror.
301
+ // !size beats Button's [&_svg]:size-4 rule. Arrow fades in and nudges on hover.
301
302
  const arrowClass =
302
- '!size-3.5 text-muted opacity-0 group-hover:opacity-100 group-hover:translate-x-0.5 transition';
303
+ '!size-3.5 text-muted opacity-0 group-hover:opacity-100 group-hover:translate-x-0.5 rtl:group-hover:-translate-x-0.5 transition'; // rtl-ok: matched line mirrors the hover nudge for RTL.
303
304
  return (
304
305
  <Button
305
306
  variant="unstyled"
@@ -150,7 +150,7 @@ function EditableDataView<T>({
150
150
  })}
151
151
  >
152
152
  <Viewer value={value} placeholder={placeholder} />
153
- <div className="ms-auto flex space-x-2">
153
+ <div className="ms-auto flex gap-2">
154
154
  {!isReadonly && onDelete && (
155
155
  <Button variant="ghost" size="sm" className={btnStyle} onClick={onDelete}>
156
156
  <Trash2 className="size-4" />
@@ -1,73 +0,0 @@
1
- import { type MarkdownRendererProps } from '@vertesia/ui/widgets';
2
- import { type ComponentType, type ReactNode } from 'react';
3
- export type UniversalDocumentRenditionTarget = 'pdf' | 'markdown' | 'text' | 'image';
4
- export interface UniversalDocumentSource {
5
- id?: string;
6
- title?: string;
7
- fileName?: string;
8
- contentType?: string;
9
- url?: string;
10
- sourcePath?: string;
11
- content?: string;
12
- artifact?: {
13
- runId: string;
14
- path: string;
15
- };
16
- }
17
- export interface UniversalDocumentRendition {
18
- url?: string;
19
- sourcePath?: string;
20
- content?: string;
21
- contentType?: string;
22
- fileName?: string;
23
- }
24
- export interface UniversalDocumentViewerContext {
25
- source: UniversalDocumentSource;
26
- fileName: string;
27
- extension: string;
28
- contentType?: string;
29
- url?: string;
30
- content?: string;
31
- isLoading: boolean;
32
- error: string | null;
33
- reload: () => void;
34
- }
35
- export interface UniversalDocumentRenderer {
36
- id: string;
37
- canRender: (context: UniversalDocumentViewerContext) => boolean;
38
- render?: (context: UniversalDocumentViewerContext) => ReactNode;
39
- Component?: ComponentType<{
40
- context: UniversalDocumentViewerContext;
41
- }>;
42
- }
43
- export interface UniversalDocumentConverterContext {
44
- source: UniversalDocumentSource;
45
- fileName: string;
46
- extension: string;
47
- contentType?: string;
48
- target: UniversalDocumentRenditionTarget;
49
- }
50
- export interface UniversalDocumentConverter {
51
- id: string;
52
- target: UniversalDocumentRenditionTarget;
53
- canConvert: (context: UniversalDocumentConverterContext) => boolean;
54
- convert: (context: UniversalDocumentConverterContext) => Promise<UniversalDocumentRendition | null>;
55
- }
56
- export interface UniversalDocumentViewerProps {
57
- source: UniversalDocumentSource;
58
- className?: string;
59
- bodyClassName?: string;
60
- renderers?: UniversalDocumentRenderer[];
61
- converters?: UniversalDocumentConverter[];
62
- resolveUrl?: (source: UniversalDocumentSource, disposition: 'inline' | 'attachment') => Promise<string>;
63
- loadText?: (source: UniversalDocumentSource) => Promise<string>;
64
- /**
65
- * @deprecated Use converters instead.
66
- */
67
- createRendition?: (source: UniversalDocumentSource, target: UniversalDocumentRenditionTarget) => Promise<UniversalDocumentRendition | null>;
68
- markdownComponents?: MarkdownRendererProps['components'];
69
- showHeader?: boolean;
70
- onDownload?: (source: UniversalDocumentSource) => void;
71
- }
72
- export declare function UniversalDocumentViewer({ source, className, bodyClassName, renderers, converters, resolveUrl, loadText, createRendition, markdownComponents, showHeader, onDownload, }: UniversalDocumentViewerProps): import("react").JSX.Element;
73
- //# sourceMappingURL=UniversalDocumentViewer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"UniversalDocumentViewer.d.ts","sourceRoot":"","sources":["../../../src/features/document-viewer/UniversalDocumentViewer.tsx"],"names":[],"mappings":"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"}