@meistrari/chat-nuxt 1.0.0

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 (479) hide show
  1. package/README.md +274 -0
  2. package/dist/module.d.mts +3 -0
  3. package/dist/module.json +9 -0
  4. package/dist/module.mjs +250 -0
  5. package/dist/runtime/assets/css/code-theme.css +1 -0
  6. package/dist/runtime/assets/css/markstream.css +1 -0
  7. package/dist/runtime/components/AppStatusToast.d.vue.ts +3 -0
  8. package/dist/runtime/components/AppStatusToast.vue +42 -0
  9. package/dist/runtime/components/AppStatusToast.vue.d.ts +3 -0
  10. package/dist/runtime/components/TelaChat.d.vue.ts +19 -0
  11. package/dist/runtime/components/TelaChat.vue +25 -0
  12. package/dist/runtime/components/TelaChat.vue.d.ts +19 -0
  13. package/dist/runtime/components/app-markdown-render.d.vue.ts +15 -0
  14. package/dist/runtime/components/app-markdown-render.vue +45 -0
  15. package/dist/runtime/components/app-markdown-render.vue.d.ts +15 -0
  16. package/dist/runtime/components/application-card.d.vue.ts +9 -0
  17. package/dist/runtime/components/application-card.vue +52 -0
  18. package/dist/runtime/components/application-card.vue.d.ts +9 -0
  19. package/dist/runtime/components/audio-preview.d.vue.ts +14 -0
  20. package/dist/runtime/components/audio-preview.vue +52 -0
  21. package/dist/runtime/components/audio-preview.vue.d.ts +14 -0
  22. package/dist/runtime/components/chat/bash-widget.d.vue.ts +9 -0
  23. package/dist/runtime/components/chat/bash-widget.vue +86 -0
  24. package/dist/runtime/components/chat/bash-widget.vue.d.ts +9 -0
  25. package/dist/runtime/components/chat/canvas-selector-modal.d.vue.ts +14 -0
  26. package/dist/runtime/components/chat/canvas-selector-modal.vue +290 -0
  27. package/dist/runtime/components/chat/canvas-selector-modal.vue.d.ts +14 -0
  28. package/dist/runtime/components/chat/context-config.d.vue.ts +30 -0
  29. package/dist/runtime/components/chat/context-config.vue +423 -0
  30. package/dist/runtime/components/chat/context-config.vue.d.ts +30 -0
  31. package/dist/runtime/components/chat/conversation-item.d.vue.ts +20 -0
  32. package/dist/runtime/components/chat/conversation-item.vue +184 -0
  33. package/dist/runtime/components/chat/conversation-item.vue.d.ts +20 -0
  34. package/dist/runtime/components/chat/conversation-list.d.vue.ts +10 -0
  35. package/dist/runtime/components/chat/conversation-list.vue +78 -0
  36. package/dist/runtime/components/chat/conversation-list.vue.d.ts +10 -0
  37. package/dist/runtime/components/chat/doc-sdk-widget.d.vue.ts +9 -0
  38. package/dist/runtime/components/chat/doc-sdk-widget.vue +74 -0
  39. package/dist/runtime/components/chat/doc-sdk-widget.vue.d.ts +9 -0
  40. package/dist/runtime/components/chat/file-preview.d.vue.ts +7 -0
  41. package/dist/runtime/components/chat/file-preview.vue +313 -0
  42. package/dist/runtime/components/chat/file-preview.vue.d.ts +7 -0
  43. package/dist/runtime/components/chat/files-view.d.vue.ts +6 -0
  44. package/dist/runtime/components/chat/files-view.vue +399 -0
  45. package/dist/runtime/components/chat/files-view.vue.d.ts +6 -0
  46. package/dist/runtime/components/chat/generic-tool-widget.d.vue.ts +9 -0
  47. package/dist/runtime/components/chat/generic-tool-widget.vue +334 -0
  48. package/dist/runtime/components/chat/generic-tool-widget.vue.d.ts +9 -0
  49. package/dist/runtime/components/chat/grep-widget.d.vue.ts +9 -0
  50. package/dist/runtime/components/chat/grep-widget.vue +259 -0
  51. package/dist/runtime/components/chat/grep-widget.vue.d.ts +9 -0
  52. package/dist/runtime/components/chat/mention-dropdown.d.vue.ts +14 -0
  53. package/dist/runtime/components/chat/mention-dropdown.vue +90 -0
  54. package/dist/runtime/components/chat/mention-dropdown.vue.d.ts +14 -0
  55. package/dist/runtime/components/chat/message-bubble.d.vue.ts +11 -0
  56. package/dist/runtime/components/chat/message-bubble.vue +288 -0
  57. package/dist/runtime/components/chat/message-bubble.vue.d.ts +11 -0
  58. package/dist/runtime/components/chat/message-input.d.vue.ts +34 -0
  59. package/dist/runtime/components/chat/message-input.vue +428 -0
  60. package/dist/runtime/components/chat/message-input.vue.d.ts +34 -0
  61. package/dist/runtime/components/chat/message-list.d.vue.ts +11 -0
  62. package/dist/runtime/components/chat/message-list.vue +36 -0
  63. package/dist/runtime/components/chat/message-list.vue.d.ts +11 -0
  64. package/dist/runtime/components/chat/model-selector.d.vue.ts +15 -0
  65. package/dist/runtime/components/chat/model-selector.vue +35 -0
  66. package/dist/runtime/components/chat/model-selector.vue.d.ts +15 -0
  67. package/dist/runtime/components/chat/new-conversation-modal.d.vue.ts +14 -0
  68. package/dist/runtime/components/chat/new-conversation-modal.vue +271 -0
  69. package/dist/runtime/components/chat/new-conversation-modal.vue.d.ts +14 -0
  70. package/dist/runtime/components/chat/read-widget.d.vue.ts +9 -0
  71. package/dist/runtime/components/chat/read-widget.vue +195 -0
  72. package/dist/runtime/components/chat/read-widget.vue.d.ts +9 -0
  73. package/dist/runtime/components/chat/reasoning-message.d.vue.ts +13 -0
  74. package/dist/runtime/components/chat/reasoning-message.vue +341 -0
  75. package/dist/runtime/components/chat/reasoning-message.vue.d.ts +13 -0
  76. package/dist/runtime/components/chat/reasoning-step-item.d.vue.ts +37 -0
  77. package/dist/runtime/components/chat/reasoning-step-item.vue +125 -0
  78. package/dist/runtime/components/chat/reasoning-step-item.vue.d.ts +37 -0
  79. package/dist/runtime/components/chat/reasoning-steps.d.vue.ts +12 -0
  80. package/dist/runtime/components/chat/reasoning-steps.vue +47 -0
  81. package/dist/runtime/components/chat/reasoning-steps.vue.d.ts +12 -0
  82. package/dist/runtime/components/chat/reasoning-thought.d.vue.ts +11 -0
  83. package/dist/runtime/components/chat/reasoning-thought.vue +287 -0
  84. package/dist/runtime/components/chat/reasoning-thought.vue.d.ts +11 -0
  85. package/dist/runtime/components/chat/tela-skill-widget.d.vue.ts +9 -0
  86. package/dist/runtime/components/chat/tela-skill-widget.vue +94 -0
  87. package/dist/runtime/components/chat/tela-skill-widget.vue.d.ts +9 -0
  88. package/dist/runtime/components/chat/thinking-indicator.d.vue.ts +3 -0
  89. package/dist/runtime/components/chat/thinking-indicator.vue +52 -0
  90. package/dist/runtime/components/chat/thinking-indicator.vue.d.ts +3 -0
  91. package/dist/runtime/components/chat/thinking-widget.d.vue.ts +8 -0
  92. package/dist/runtime/components/chat/thinking-widget.vue +53 -0
  93. package/dist/runtime/components/chat/thinking-widget.vue.d.ts +8 -0
  94. package/dist/runtime/components/chat/topbar.d.vue.ts +43 -0
  95. package/dist/runtime/components/chat/topbar.vue +223 -0
  96. package/dist/runtime/components/chat/topbar.vue.d.ts +43 -0
  97. package/dist/runtime/components/chat/usage-view.d.vue.ts +8 -0
  98. package/dist/runtime/components/chat/usage-view.vue +393 -0
  99. package/dist/runtime/components/chat/usage-view.vue.d.ts +8 -0
  100. package/dist/runtime/components/chat/vault-link.d.vue.ts +20 -0
  101. package/dist/runtime/components/chat/vault-link.vue +34 -0
  102. package/dist/runtime/components/chat/vault-link.vue.d.ts +20 -0
  103. package/dist/runtime/components/chat/web-search-widget.d.vue.ts +9 -0
  104. package/dist/runtime/components/chat/web-search-widget.vue +121 -0
  105. package/dist/runtime/components/chat/web-search-widget.vue.d.ts +9 -0
  106. package/dist/runtime/components/chat/workstation-query-widget.d.vue.ts +10 -0
  107. package/dist/runtime/components/chat/workstation-query-widget.vue +552 -0
  108. package/dist/runtime/components/chat/workstation-query-widget.vue.d.ts +10 -0
  109. package/dist/runtime/components/chat/workstation-selector-modal.d.vue.ts +14 -0
  110. package/dist/runtime/components/chat/workstation-selector-modal.vue +272 -0
  111. package/dist/runtime/components/chat/workstation-selector-modal.vue.d.ts +14 -0
  112. package/dist/runtime/components/chat/write-widget.d.vue.ts +9 -0
  113. package/dist/runtime/components/chat/write-widget.vue +165 -0
  114. package/dist/runtime/components/chat/write-widget.vue.d.ts +9 -0
  115. package/dist/runtime/components/conversation-files-panel.d.vue.ts +3 -0
  116. package/dist/runtime/components/conversation-files-panel.vue +252 -0
  117. package/dist/runtime/components/conversation-files-panel.vue.d.ts +3 -0
  118. package/dist/runtime/components/csv-preview.d.vue.ts +20 -0
  119. package/dist/runtime/components/csv-preview.vue +157 -0
  120. package/dist/runtime/components/csv-preview.vue.d.ts +20 -0
  121. package/dist/runtime/components/file-preview-panel.d.vue.ts +3 -0
  122. package/dist/runtime/components/file-preview-panel.vue +185 -0
  123. package/dist/runtime/components/file-preview-panel.vue.d.ts +3 -0
  124. package/dist/runtime/components/file-uploader.d.vue.ts +16 -0
  125. package/dist/runtime/components/file-uploader.vue +136 -0
  126. package/dist/runtime/components/file-uploader.vue.d.ts +16 -0
  127. package/dist/runtime/components/icons/anthropic.d.vue.ts +3 -0
  128. package/dist/runtime/components/icons/anthropic.vue +5 -0
  129. package/dist/runtime/components/icons/anthropic.vue.d.ts +3 -0
  130. package/dist/runtime/components/image-preview.d.vue.ts +14 -0
  131. package/dist/runtime/components/image-preview.vue +54 -0
  132. package/dist/runtime/components/image-preview.vue.d.ts +14 -0
  133. package/dist/runtime/components/json-tree-node.d.vue.ts +9 -0
  134. package/dist/runtime/components/json-tree-node.vue +109 -0
  135. package/dist/runtime/components/json-tree-node.vue.d.ts +9 -0
  136. package/dist/runtime/components/json-viewer.d.vue.ts +6 -0
  137. package/dist/runtime/components/json-viewer.vue +88 -0
  138. package/dist/runtime/components/json-viewer.vue.d.ts +6 -0
  139. package/dist/runtime/components/pdf-preview.d.vue.ts +20 -0
  140. package/dist/runtime/components/pdf-preview.vue +89 -0
  141. package/dist/runtime/components/pdf-preview.vue.d.ts +20 -0
  142. package/dist/runtime/components/pdf-viewer.d.vue.ts +10 -0
  143. package/dist/runtime/components/pdf-viewer.vue +265 -0
  144. package/dist/runtime/components/pdf-viewer.vue.d.ts +10 -0
  145. package/dist/runtime/components/powered-by-tela.d.vue.ts +3 -0
  146. package/dist/runtime/components/powered-by-tela.vue +14 -0
  147. package/dist/runtime/components/powered-by-tela.vue.d.ts +3 -0
  148. package/dist/runtime/components/renderers/artifact-display.d.vue.ts +15 -0
  149. package/dist/runtime/components/renderers/artifact-display.vue +105 -0
  150. package/dist/runtime/components/renderers/artifact-display.vue.d.ts +15 -0
  151. package/dist/runtime/components/renderers/audio-renderer.d.vue.ts +7 -0
  152. package/dist/runtime/components/renderers/audio-renderer.vue +52 -0
  153. package/dist/runtime/components/renderers/audio-renderer.vue.d.ts +7 -0
  154. package/dist/runtime/components/renderers/csv-renderer.d.vue.ts +6 -0
  155. package/dist/runtime/components/renderers/csv-renderer.vue +203 -0
  156. package/dist/runtime/components/renderers/csv-renderer.vue.d.ts +6 -0
  157. package/dist/runtime/components/renderers/image-renderer.d.vue.ts +7 -0
  158. package/dist/runtime/components/renderers/image-renderer.vue +44 -0
  159. package/dist/runtime/components/renderers/image-renderer.vue.d.ts +7 -0
  160. package/dist/runtime/components/renderers/markdown-renderer.d.vue.ts +6 -0
  161. package/dist/runtime/components/renderers/markdown-renderer.vue +66 -0
  162. package/dist/runtime/components/renderers/markdown-renderer.vue.d.ts +6 -0
  163. package/dist/runtime/components/renderers/mermaid-diagram.d.vue.ts +7 -0
  164. package/dist/runtime/components/renderers/mermaid-diagram.vue +165 -0
  165. package/dist/runtime/components/renderers/mermaid-diagram.vue.d.ts +7 -0
  166. package/dist/runtime/components/renderers/text-renderer.d.vue.ts +7 -0
  167. package/dist/runtime/components/renderers/text-renderer.vue +70 -0
  168. package/dist/runtime/components/renderers/text-renderer.vue.d.ts +7 -0
  169. package/dist/runtime/components/renderers/video-renderer.d.vue.ts +6 -0
  170. package/dist/runtime/components/renderers/video-renderer.vue +43 -0
  171. package/dist/runtime/components/renderers/video-renderer.vue.d.ts +6 -0
  172. package/dist/runtime/components/text-preview.d.vue.ts +19 -0
  173. package/dist/runtime/components/text-preview.vue +105 -0
  174. package/dist/runtime/components/text-preview.vue.d.ts +19 -0
  175. package/dist/runtime/components/video-preview.d.vue.ts +14 -0
  176. package/dist/runtime/components/video-preview.vue +55 -0
  177. package/dist/runtime/components/video-preview.vue.d.ts +14 -0
  178. package/dist/runtime/composables/PageNavigation.d.ts +13 -0
  179. package/dist/runtime/composables/PageNavigation.js +18 -0
  180. package/dist/runtime/composables/useChat.d.ts +25 -0
  181. package/dist/runtime/composables/useChat.js +512 -0
  182. package/dist/runtime/composables/useChatApi.d.ts +6 -0
  183. package/dist/runtime/composables/useChatApi.js +28 -0
  184. package/dist/runtime/composables/useConversationFiles.d.ts +13 -0
  185. package/dist/runtime/composables/useConversationFiles.js +98 -0
  186. package/dist/runtime/composables/useConversationFilesPanel.d.ts +11 -0
  187. package/dist/runtime/composables/useConversationFilesPanel.js +35 -0
  188. package/dist/runtime/composables/useConversations.d.ts +15 -0
  189. package/dist/runtime/composables/useConversations.js +191 -0
  190. package/dist/runtime/composables/useDiagramExport.d.ts +11 -0
  191. package/dist/runtime/composables/useDiagramExport.js +186 -0
  192. package/dist/runtime/composables/useEmbedConfig.d.ts +13 -0
  193. package/dist/runtime/composables/useEmbedConfig.js +11 -0
  194. package/dist/runtime/composables/useFeatureFlags.d.ts +19 -0
  195. package/dist/runtime/composables/useFeatureFlags.js +67 -0
  196. package/dist/runtime/composables/useFileDrop.d.ts +17 -0
  197. package/dist/runtime/composables/useFileDrop.js +89 -0
  198. package/dist/runtime/composables/useFilePreviewPanel.d.ts +30 -0
  199. package/dist/runtime/composables/useFilePreviewPanel.js +42 -0
  200. package/dist/runtime/composables/useFileUpload.d.ts +7 -0
  201. package/dist/runtime/composables/useFileUpload.js +39 -0
  202. package/dist/runtime/composables/useGitHubSkills.d.ts +6 -0
  203. package/dist/runtime/composables/useGitHubSkills.js +68 -0
  204. package/dist/runtime/composables/useGitHubSkillsCallback.d.ts +5 -0
  205. package/dist/runtime/composables/useGitHubSkillsCallback.js +42 -0
  206. package/dist/runtime/composables/useIDB.d.ts +11 -0
  207. package/dist/runtime/composables/useIDB.js +57 -0
  208. package/dist/runtime/composables/useInputHistory.d.ts +7 -0
  209. package/dist/runtime/composables/useInputHistory.js +36 -0
  210. package/dist/runtime/composables/useKnowledgeSources.d.ts +6 -0
  211. package/dist/runtime/composables/useKnowledgeSources.js +15 -0
  212. package/dist/runtime/composables/useMediaCache.d.ts +13 -0
  213. package/dist/runtime/composables/useMediaCache.js +92 -0
  214. package/dist/runtime/composables/useMentionAutocomplete.d.ts +10 -0
  215. package/dist/runtime/composables/useMentionAutocomplete.js +272 -0
  216. package/dist/runtime/composables/useMermaidRenderer.d.ts +5 -0
  217. package/dist/runtime/composables/useMermaidRenderer.js +121 -0
  218. package/dist/runtime/composables/usePdf.d.ts +21 -0
  219. package/dist/runtime/composables/usePdf.js +138 -0
  220. package/dist/runtime/composables/usePolling.d.ts +12 -0
  221. package/dist/runtime/composables/usePolling.js +55 -0
  222. package/dist/runtime/composables/useSelectedModel.d.ts +4 -0
  223. package/dist/runtime/composables/useSelectedModel.js +46 -0
  224. package/dist/runtime/composables/useSplashScreen.d.ts +3 -0
  225. package/dist/runtime/composables/useSplashScreen.js +4 -0
  226. package/dist/runtime/composables/useStatusToast.d.ts +22 -0
  227. package/dist/runtime/composables/useStatusToast.js +40 -0
  228. package/dist/runtime/composables/useTela.d.ts +12 -0
  229. package/dist/runtime/composables/useTela.js +47 -0
  230. package/dist/runtime/composables/useToolFormatting.d.ts +5 -0
  231. package/dist/runtime/composables/useToolFormatting.js +61 -0
  232. package/dist/runtime/composables/useVault.d.ts +13 -0
  233. package/dist/runtime/composables/useVault.js +35 -0
  234. package/dist/runtime/composables/useVerbConjugation.d.ts +6 -0
  235. package/dist/runtime/composables/useVerbConjugation.js +256 -0
  236. package/dist/runtime/composables/useWorkspaceContextFiles.d.ts +19 -0
  237. package/dist/runtime/composables/useWorkspaceContextFiles.js +74 -0
  238. package/dist/runtime/composables/useWorkspaceCredentials.d.ts +34 -0
  239. package/dist/runtime/composables/useWorkspaceCredentials.js +175 -0
  240. package/dist/runtime/composables/useWorkspaceExternalSkills.d.ts +22 -0
  241. package/dist/runtime/composables/useWorkspaceExternalSkills.js +135 -0
  242. package/dist/runtime/composables/useWorkspaceKnowledgeSources.d.ts +11 -0
  243. package/dist/runtime/composables/useWorkspaceKnowledgeSources.js +88 -0
  244. package/dist/runtime/composables/useWorkspaceMembers.d.ts +13 -0
  245. package/dist/runtime/composables/useWorkspaceMembers.js +37 -0
  246. package/dist/runtime/composables/useWorkspacePersonalization.d.ts +6 -0
  247. package/dist/runtime/composables/useWorkspacePersonalization.js +19 -0
  248. package/dist/runtime/composables/useWorkspaceSettings.d.ts +30 -0
  249. package/dist/runtime/composables/useWorkspaceSettings.js +135 -0
  250. package/dist/runtime/composables/useWorkspaceTelaTools.d.ts +13 -0
  251. package/dist/runtime/composables/useWorkspaceTelaTools.js +91 -0
  252. package/dist/runtime/composables/useWorkspaces.d.ts +5 -0
  253. package/dist/runtime/composables/useWorkspaces.js +14 -0
  254. package/dist/runtime/composables/useZoomPan.d.ts +18 -0
  255. package/dist/runtime/composables/useZoomPan.js +130 -0
  256. package/dist/runtime/embed/components/ChatEmbed.d.vue.ts +23 -0
  257. package/dist/runtime/embed/components/ChatEmbed.vue +27 -0
  258. package/dist/runtime/embed/components/ChatEmbed.vue.d.ts +23 -0
  259. package/dist/runtime/embed/components/ChatEmbedInner.d.vue.ts +19 -0
  260. package/dist/runtime/embed/components/ChatEmbedInner.vue +604 -0
  261. package/dist/runtime/embed/components/ChatEmbedInner.vue.d.ts +19 -0
  262. package/dist/runtime/public/favicon.svg +4 -0
  263. package/dist/runtime/public/files/archive.svg +9 -0
  264. package/dist/runtime/public/files/audio.svg +4 -0
  265. package/dist/runtime/public/files/c.svg +4 -0
  266. package/dist/runtime/public/files/cpp.svg +6 -0
  267. package/dist/runtime/public/files/css.svg +4 -0
  268. package/dist/runtime/public/files/doc.svg +5 -0
  269. package/dist/runtime/public/files/generic.svg +7 -0
  270. package/dist/runtime/public/files/go.svg +6 -0
  271. package/dist/runtime/public/files/html.svg +4 -0
  272. package/dist/runtime/public/files/image.svg +3 -0
  273. package/dist/runtime/public/files/java.svg +7 -0
  274. package/dist/runtime/public/files/javascript.svg +4 -0
  275. package/dist/runtime/public/files/json.svg +5 -0
  276. package/dist/runtime/public/files/markdown.svg +5 -0
  277. package/dist/runtime/public/files/pdf.svg +5 -0
  278. package/dist/runtime/public/files/presentation.svg +5 -0
  279. package/dist/runtime/public/files/python.svg +5 -0
  280. package/dist/runtime/public/files/ruby.svg +5 -0
  281. package/dist/runtime/public/files/rust.svg +13 -0
  282. package/dist/runtime/public/files/sheet.svg +9 -0
  283. package/dist/runtime/public/files/shell.svg +5 -0
  284. package/dist/runtime/public/files/sql.svg +6 -0
  285. package/dist/runtime/public/files/typescript.svg +5 -0
  286. package/dist/runtime/public/files/video.svg +5 -0
  287. package/dist/runtime/public/files/yaml.svg +7 -0
  288. package/dist/runtime/public/github.svg +3 -0
  289. package/dist/runtime/public/robots.txt +1 -0
  290. package/dist/runtime/server/api/admin/trigger-usage-report.post.d.ts +2 -0
  291. package/dist/runtime/server/api/admin/trigger-usage-report.post.js +15 -0
  292. package/dist/runtime/server/api/chat/conversations/[id]/cancel.post.d.ts +1 -0
  293. package/dist/runtime/server/api/chat/conversations/[id]/cancel.post.js +1 -0
  294. package/dist/runtime/server/api/chat/conversations/[id]/clear.post.d.ts +1 -0
  295. package/dist/runtime/server/api/chat/conversations/[id]/clear.post.js +1 -0
  296. package/dist/runtime/server/api/chat/conversations/[id]/duplicate.post.d.ts +1 -0
  297. package/dist/runtime/server/api/chat/conversations/[id]/duplicate.post.js +1 -0
  298. package/dist/runtime/server/api/chat/conversations/[id]/files.get.d.ts +1 -0
  299. package/dist/runtime/server/api/chat/conversations/[id]/files.get.js +1 -0
  300. package/dist/runtime/server/api/chat/conversations/[id]/index.delete.d.ts +1 -0
  301. package/dist/runtime/server/api/chat/conversations/[id]/index.delete.js +1 -0
  302. package/dist/runtime/server/api/chat/conversations/[id]/index.get.d.ts +1 -0
  303. package/dist/runtime/server/api/chat/conversations/[id]/index.get.js +1 -0
  304. package/dist/runtime/server/api/chat/conversations/[id]/index.patch.d.ts +1 -0
  305. package/dist/runtime/server/api/chat/conversations/[id]/index.patch.js +1 -0
  306. package/dist/runtime/server/api/chat/conversations/[id]/messages/[messageId]/retry.post.d.ts +1 -0
  307. package/dist/runtime/server/api/chat/conversations/[id]/messages/[messageId]/retry.post.js +1 -0
  308. package/dist/runtime/server/api/chat/conversations/[id]/messages/index.get.d.ts +1 -0
  309. package/dist/runtime/server/api/chat/conversations/[id]/messages/index.get.js +1 -0
  310. package/dist/runtime/server/api/chat/conversations/[id]/messages/index.post.d.ts +1 -0
  311. package/dist/runtime/server/api/chat/conversations/[id]/messages/index.post.js +1 -0
  312. package/dist/runtime/server/api/chat/conversations/[id]/usage.get.d.ts +1 -0
  313. package/dist/runtime/server/api/chat/conversations/[id]/usage.get.js +1 -0
  314. package/dist/runtime/server/api/chat/conversations/generate-title.post.d.ts +1 -0
  315. package/dist/runtime/server/api/chat/conversations/generate-title.post.js +1 -0
  316. package/dist/runtime/server/api/chat/conversations/index.get.d.ts +1 -0
  317. package/dist/runtime/server/api/chat/conversations/index.get.js +1 -0
  318. package/dist/runtime/server/api/chat/conversations/index.post.d.ts +1 -0
  319. package/dist/runtime/server/api/chat/conversations/index.post.js +1 -0
  320. package/dist/runtime/server/api/chat/workspace/settings.get.d.ts +2 -0
  321. package/dist/runtime/server/api/chat/workspace/settings.get.js +14 -0
  322. package/dist/runtime/server/api/conversations/[id]/cancel.post.d.ts +2 -0
  323. package/dist/runtime/server/api/conversations/[id]/cancel.post.js +58 -0
  324. package/dist/runtime/server/api/conversations/[id]/clear.post.d.ts +2 -0
  325. package/dist/runtime/server/api/conversations/[id]/clear.post.js +38 -0
  326. package/dist/runtime/server/api/conversations/[id]/duplicate.post.d.ts +2 -0
  327. package/dist/runtime/server/api/conversations/[id]/duplicate.post.js +41 -0
  328. package/dist/runtime/server/api/conversations/[id]/files.get.d.ts +2 -0
  329. package/dist/runtime/server/api/conversations/[id]/files.get.js +131 -0
  330. package/dist/runtime/server/api/conversations/[id]/index.delete.d.ts +2 -0
  331. package/dist/runtime/server/api/conversations/[id]/index.delete.js +35 -0
  332. package/dist/runtime/server/api/conversations/[id]/index.get.d.ts +2 -0
  333. package/dist/runtime/server/api/conversations/[id]/index.get.js +34 -0
  334. package/dist/runtime/server/api/conversations/[id]/index.patch.d.ts +2 -0
  335. package/dist/runtime/server/api/conversations/[id]/index.patch.js +54 -0
  336. package/dist/runtime/server/api/conversations/[id]/messages/[messageId]/retry.post.d.ts +2 -0
  337. package/dist/runtime/server/api/conversations/[id]/messages/[messageId]/retry.post.js +168 -0
  338. package/dist/runtime/server/api/conversations/[id]/messages/index.get.d.ts +2 -0
  339. package/dist/runtime/server/api/conversations/[id]/messages/index.get.js +220 -0
  340. package/dist/runtime/server/api/conversations/[id]/messages/index.post.d.ts +2 -0
  341. package/dist/runtime/server/api/conversations/[id]/messages/index.post.js +181 -0
  342. package/dist/runtime/server/api/conversations/[id]/usage.get.d.ts +8 -0
  343. package/dist/runtime/server/api/conversations/[id]/usage.get.js +96 -0
  344. package/dist/runtime/server/api/conversations/generate-title.post.d.ts +2 -0
  345. package/dist/runtime/server/api/conversations/generate-title.post.js +49 -0
  346. package/dist/runtime/server/api/conversations/index.get.d.ts +2 -0
  347. package/dist/runtime/server/api/conversations/index.get.js +11 -0
  348. package/dist/runtime/server/api/conversations/index.post.d.ts +2 -0
  349. package/dist/runtime/server/api/conversations/index.post.js +41 -0
  350. package/dist/runtime/server/api/external-skills/discover.post.d.ts +2 -0
  351. package/dist/runtime/server/api/external-skills/discover.post.js +65 -0
  352. package/dist/runtime/server/api/github/disconnect.post.d.ts +2 -0
  353. package/dist/runtime/server/api/github/disconnect.post.js +21 -0
  354. package/dist/runtime/server/api/github/status.get.d.ts +2 -0
  355. package/dist/runtime/server/api/github/status.get.js +23 -0
  356. package/dist/runtime/server/api/tela/canvas.get.d.ts +2 -0
  357. package/dist/runtime/server/api/tela/canvas.get.js +18 -0
  358. package/dist/runtime/server/api/tela/projects.get.d.ts +2 -0
  359. package/dist/runtime/server/api/tela/projects.get.js +9 -0
  360. package/dist/runtime/server/api/tela/workspaces.get.d.ts +2 -0
  361. package/dist/runtime/server/api/tela/workspaces.get.js +9 -0
  362. package/dist/runtime/server/api/tela/workstations.get.d.ts +2 -0
  363. package/dist/runtime/server/api/tela/workstations.get.js +24 -0
  364. package/dist/runtime/server/api/vault/permalink-metadata.post.d.ts +2 -0
  365. package/dist/runtime/server/api/vault/permalink-metadata.post.js +77 -0
  366. package/dist/runtime/server/api/vault/resolve.post.d.ts +2 -0
  367. package/dist/runtime/server/api/vault/resolve.post.js +82 -0
  368. package/dist/runtime/server/api/vault/upload.post.d.ts +2 -0
  369. package/dist/runtime/server/api/vault/upload.post.js +55 -0
  370. package/dist/runtime/server/api/workspace/credentials/[id].delete.d.ts +2 -0
  371. package/dist/runtime/server/api/workspace/credentials/[id].delete.js +18 -0
  372. package/dist/runtime/server/api/workspace/credentials/[id].put.d.ts +2 -0
  373. package/dist/runtime/server/api/workspace/credentials/[id].put.js +28 -0
  374. package/dist/runtime/server/api/workspace/credentials/index.get.d.ts +2 -0
  375. package/dist/runtime/server/api/workspace/credentials/index.get.js +10 -0
  376. package/dist/runtime/server/api/workspace/credentials/index.post.d.ts +2 -0
  377. package/dist/runtime/server/api/workspace/credentials/index.post.js +33 -0
  378. package/dist/runtime/server/api/workspace/settings.get.d.ts +2 -0
  379. package/dist/runtime/server/api/workspace/settings.get.js +27 -0
  380. package/dist/runtime/server/api/workspace/settings.patch.d.ts +2 -0
  381. package/dist/runtime/server/api/workspace/settings.patch.js +86 -0
  382. package/dist/runtime/server/api/workspace/usage.get.d.ts +48 -0
  383. package/dist/runtime/server/api/workspace/usage.get.js +186 -0
  384. package/dist/runtime/server/db/index.d.ts +6 -0
  385. package/dist/runtime/server/db/index.js +19 -0
  386. package/dist/runtime/server/db/schema/conversation-usage.d.ts +438 -0
  387. package/dist/runtime/server/db/schema/conversation-usage.js +34 -0
  388. package/dist/runtime/server/db/schema/conversations.d.ts +197 -0
  389. package/dist/runtime/server/db/schema/conversations.js +18 -0
  390. package/dist/runtime/server/db/schema/external-skills.d.ts +235 -0
  391. package/dist/runtime/server/db/schema/external-skills.js +26 -0
  392. package/dist/runtime/server/db/schema/index.d.ts +5 -0
  393. package/dist/runtime/server/db/schema/index.js +5 -0
  394. package/dist/runtime/server/db/schema/messages.d.ts +221 -0
  395. package/dist/runtime/server/db/schema/messages.js +19 -0
  396. package/dist/runtime/server/db/schema/workspace-settings.d.ts +164 -0
  397. package/dist/runtime/server/db/schema/workspace-settings.js +15 -0
  398. package/dist/runtime/server/db/schema.d.ts +1 -0
  399. package/dist/runtime/server/db/schema.js +1 -0
  400. package/dist/runtime/server/middleware/domain-validation.d.ts +2 -0
  401. package/dist/runtime/server/middleware/domain-validation.js +22 -0
  402. package/dist/runtime/server/middleware/request-logger.d.ts +2 -0
  403. package/dist/runtime/server/middleware/request-logger.js +15 -0
  404. package/dist/runtime/server/prompts/base-system.d.ts +2 -0
  405. package/dist/runtime/server/prompts/base-system.js +100 -0
  406. package/dist/runtime/server/prompts/base-system.md +99 -0
  407. package/dist/runtime/server/prompts/knowledge-sources.d.ts +2 -0
  408. package/dist/runtime/server/prompts/knowledge-sources.js +37 -0
  409. package/dist/runtime/server/prompts/knowledge-sources.md +36 -0
  410. package/dist/runtime/server/tasks/send-daily-usage-report.d.ts +2 -0
  411. package/dist/runtime/server/tasks/send-daily-usage-report.js +73 -0
  412. package/dist/runtime/server/tsconfig.json +21 -0
  413. package/dist/runtime/server/utils/agent-api.d.ts +39 -0
  414. package/dist/runtime/server/utils/agent-api.js +169 -0
  415. package/dist/runtime/server/utils/auth-api.d.ts +1 -0
  416. package/dist/runtime/server/utils/auth-api.js +25 -0
  417. package/dist/runtime/server/utils/auth.d.ts +17 -0
  418. package/dist/runtime/server/utils/auth.js +28 -0
  419. package/dist/runtime/server/utils/billing.d.ts +37 -0
  420. package/dist/runtime/server/utils/billing.js +68 -0
  421. package/dist/runtime/server/utils/chat-context.d.ts +9 -0
  422. package/dist/runtime/server/utils/chat-context.js +24 -0
  423. package/dist/runtime/server/utils/chat-message-builder.d.ts +4 -0
  424. package/dist/runtime/server/utils/chat-message-builder.js +39 -0
  425. package/dist/runtime/server/utils/chat-prompts.d.ts +7 -0
  426. package/dist/runtime/server/utils/chat-prompts.js +9 -0
  427. package/dist/runtime/server/utils/chat-workspace-settings.d.ts +16 -0
  428. package/dist/runtime/server/utils/chat-workspace-settings.js +115 -0
  429. package/dist/runtime/server/utils/external-skills.d.ts +2 -0
  430. package/dist/runtime/server/utils/external-skills.js +15 -0
  431. package/dist/runtime/server/utils/logger.d.ts +2 -0
  432. package/dist/runtime/server/utils/logger.js +12 -0
  433. package/dist/runtime/server/utils/slack.d.ts +32 -0
  434. package/dist/runtime/server/utils/slack.js +102 -0
  435. package/dist/runtime/server/utils/tela-api.d.ts +2 -0
  436. package/dist/runtime/server/utils/tela-api.js +29 -0
  437. package/dist/runtime/server/utils/vault.d.ts +3 -0
  438. package/dist/runtime/server/utils/vault.js +52 -0
  439. package/dist/runtime/server/utils/workspace-settings-resolver.stub.d.ts +2 -0
  440. package/dist/runtime/server/utils/workspace-settings-resolver.stub.js +1 -0
  441. package/dist/runtime/server/utils/workspace.d.ts +4 -0
  442. package/dist/runtime/server/utils/workspace.js +21 -0
  443. package/dist/runtime/types/agent.d.ts +168 -0
  444. package/dist/runtime/types/agent.js +95 -0
  445. package/dist/runtime/types/chat-workspace-settings-resolver.d.ts +4 -0
  446. package/dist/runtime/types/chat.d.ts +81 -0
  447. package/dist/runtime/types/chat.js +12 -0
  448. package/dist/runtime/types/credential.d.ts +8 -0
  449. package/dist/runtime/types/credential.js +0 -0
  450. package/dist/runtime/types/csv.d.ts +4 -0
  451. package/dist/runtime/types/csv.js +0 -0
  452. package/dist/runtime/types/external-skills.d.ts +8 -0
  453. package/dist/runtime/types/external-skills.js +0 -0
  454. package/dist/runtime/types/feature-flags.d.ts +7 -0
  455. package/dist/runtime/types/feature-flags.js +6 -0
  456. package/dist/runtime/types/reasoning.d.ts +17 -0
  457. package/dist/runtime/types/reasoning.js +0 -0
  458. package/dist/runtime/types/tela.d.ts +46 -0
  459. package/dist/runtime/types/tela.js +0 -0
  460. package/dist/runtime/types/workspace.d.ts +20 -0
  461. package/dist/runtime/types/workspace.js +0 -0
  462. package/dist/runtime/utils/calculate-usage.d.ts +48 -0
  463. package/dist/runtime/utils/calculate-usage.js +63 -0
  464. package/dist/runtime/utils/code-detection.d.ts +1 -0
  465. package/dist/runtime/utils/code-detection.js +24 -0
  466. package/dist/runtime/utils/export-conversation.d.ts +2 -0
  467. package/dist/runtime/utils/export-conversation.js +43 -0
  468. package/dist/runtime/utils/file.d.ts +46 -0
  469. package/dist/runtime/utils/file.js +500 -0
  470. package/dist/runtime/utils/format-time.d.ts +22 -0
  471. package/dist/runtime/utils/format-time.js +96 -0
  472. package/dist/runtime/utils/markdown-nodes.d.ts +22 -0
  473. package/dist/runtime/utils/markdown-nodes.js +40 -0
  474. package/dist/runtime/utils/string.d.ts +4 -0
  475. package/dist/runtime/utils/string.js +5 -0
  476. package/dist/runtime/utils/tela-chat.d.ts +19 -0
  477. package/dist/runtime/utils/tela-chat.js +20 -0
  478. package/dist/types.d.mts +7 -0
  479. package/package.json +72 -0
@@ -0,0 +1,15 @@
1
+ import type { Component } from 'vue';
2
+ type __VLS_Props = {
3
+ content?: string | null;
4
+ renderCodeBlocksAsPre?: boolean;
5
+ typewriter?: boolean;
6
+ customComponents?: Record<string, Component>;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
9
+ content: string | null;
10
+ renderCodeBlocksAsPre: boolean;
11
+ typewriter: boolean;
12
+ customComponents: Record<string, Component>;
13
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ declare const _default: typeof __VLS_export;
15
+ export default _default;
@@ -0,0 +1,45 @@
1
+ <script setup>
2
+ import MarkdownRender, { getMarkdown, parseMarkdownToStructure, removeCustomComponents, setCustomComponents } from "markstream-vue";
3
+ import MermaidDiagram from "./renderers/mermaid-diagram.vue";
4
+ import { transformMarkdownNodes } from "../utils/markdown-nodes";
5
+ const props = defineProps({
6
+ content: { type: [String, null], required: false, default: "" },
7
+ renderCodeBlocksAsPre: { type: Boolean, required: false, default: false },
8
+ typewriter: { type: Boolean, required: false, default: true },
9
+ customComponents: { type: Object, required: false, default: () => ({}) }
10
+ });
11
+ const attrs = useAttrs();
12
+ const markdown = getMarkdown();
13
+ const instance = getCurrentInstance();
14
+ const scopeId = `app-markdown-render-${instance?.uid ?? Math.random().toString(36).slice(2)}`;
15
+ function escapeSingleDollarSigns(text) {
16
+ return text.replace(/(```[\s\S]*?```|``+[^`]*``+|`[^`]*`|!?\[(?:[^\[\]]|\[[^\[\]]*\])*\]\([^)]*\))|(?<![$\\])\$(?!\$)/g, (_match, codeSpan) => {
17
+ if (codeSpan)
18
+ return codeSpan;
19
+ return "\\$";
20
+ });
21
+ }
22
+ const nodes = computed(() => {
23
+ const parsedNodes = parseMarkdownToStructure(escapeSingleDollarSigns(props.content ?? ""), markdown);
24
+ return transformMarkdownNodes(parsedNodes);
25
+ });
26
+ watchEffect(() => {
27
+ setCustomComponents(scopeId, {
28
+ mermaid: MermaidDiagram,
29
+ ...props.customComponents
30
+ });
31
+ });
32
+ onBeforeUnmount(() => {
33
+ removeCustomComponents(scopeId);
34
+ });
35
+ </script>
36
+
37
+ <template>
38
+ <MarkdownRender
39
+ v-bind="attrs"
40
+ :nodes="nodes"
41
+ :custom-id="scopeId"
42
+ :render-code-blocks-as-pre="renderCodeBlocksAsPre"
43
+ :typewriter="typewriter"
44
+ />
45
+ </template>
@@ -0,0 +1,15 @@
1
+ import type { Component } from 'vue';
2
+ type __VLS_Props = {
3
+ content?: string | null;
4
+ renderCodeBlocksAsPre?: boolean;
5
+ typewriter?: boolean;
6
+ customComponents?: Record<string, Component>;
7
+ };
8
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
9
+ content: string | null;
10
+ renderCodeBlocksAsPre: boolean;
11
+ typewriter: boolean;
12
+ customComponents: Record<string, Component>;
13
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
14
+ declare const _default: typeof __VLS_export;
15
+ export default _default;
@@ -0,0 +1,9 @@
1
+ type __VLS_Props = {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ doneCount: number;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,52 @@
1
+ <script setup>
2
+ import { useLocalStorage } from "@vueuse/core";
3
+ const props = defineProps({
4
+ id: { type: String, required: true },
5
+ name: { type: String, required: true },
6
+ description: { type: String, required: true },
7
+ doneCount: { type: Number, required: true }
8
+ });
9
+ const lastUsedAtDate = useLocalStorage(`${props.id}-last-used-at`, null);
10
+ const lastUsedAtText = computed(() => {
11
+ if (!lastUsedAtDate.value) {
12
+ return "Nunca utilizado";
13
+ }
14
+ return formatTime(lastUsedAtDate.value);
15
+ });
16
+ </script>
17
+
18
+ <template>
19
+ <NuxtLink
20
+ :to="`/app/${id}`" px-32px py-24px b=".5px gray-120" rounded-16px
21
+ hover:bg-gray-40 transition ease
22
+ flex-none
23
+ >
24
+ <div body-12-regular text-black-900 op-50>
25
+ {{ lastUsedAtText }}
26
+ </div>
27
+
28
+ <div h-48px />
29
+
30
+ <div body-18-semibold text-black-900>
31
+ {{ name }}
32
+ </div>
33
+ <div h-7px />
34
+ <div body-14-regular text-black-560>
35
+ {{ description }}
36
+ </div>
37
+
38
+ <div h-69px />
39
+
40
+ <div v-if="doneCount > 0">
41
+ <div body-12-regular text-black-560>
42
+ Concluídos
43
+ </div>
44
+ <div flex items-center gap-4px>
45
+ <div body-16-semibold text="#6D8784">
46
+ {{ doneCount }}
47
+ </div>
48
+ <div i-ph-check-circle text="#27CA69" />
49
+ </div>
50
+ </div>
51
+ </NuxtLink>
52
+ </template>
@@ -0,0 +1,9 @@
1
+ type __VLS_Props = {
2
+ id: string;
3
+ name: string;
4
+ description: string;
5
+ doneCount: number;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,14 @@
1
+ type __VLS_Props = {
2
+ url: string;
3
+ name?: string;
4
+ clickable?: boolean;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
+ click: () => any;
8
+ loaded: () => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onClick?: (() => any) | undefined;
11
+ onLoaded?: (() => any) | undefined;
12
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
@@ -0,0 +1,52 @@
1
+ <script setup>
2
+ defineProps({
3
+ url: { type: String, required: true },
4
+ name: { type: String, required: false },
5
+ clickable: { type: Boolean, required: false }
6
+ });
7
+ const emit = defineEmits(["click", "loaded"]);
8
+ const isLoading = ref(true);
9
+ const error = ref(false);
10
+ function onCanPlay() {
11
+ isLoading.value = false;
12
+ emit("loaded");
13
+ }
14
+ function onError() {
15
+ isLoading.value = false;
16
+ error.value = true;
17
+ }
18
+ </script>
19
+
20
+ <template>
21
+ <div
22
+ relative
23
+ w-full
24
+ overflow-hidden
25
+ rounded-16px
26
+ bg-transparent
27
+ transition-all
28
+ :class="clickable !== false ? 'cursor-pointer hover:shadow-md' : ''"
29
+ @click="clickable !== false && emit('click')"
30
+ >
31
+ <div v-if="isLoading" class="flex items-center justify-center h-300px mt-24px mb-24px">
32
+ <TelaSkeleton class="rounded-8px" />
33
+ </div>
34
+
35
+ <div v-else-if="error" class="flex items-center justify-center h-300px mt-24px">
36
+ <div class="flex items-center gap-8px text-negative-dark">
37
+ <TelaIcon name="i-ph-speaker-x" />
38
+ <span body-small-regular>Falha ao carregar áudio</span>
39
+ </div>
40
+ </div>
41
+
42
+ <div v-show="!isLoading && !error" class="w-full">
43
+ <audio
44
+ :src="url"
45
+ controls
46
+ class="w-full"
47
+ @canplay="onCanPlay"
48
+ @error="onError"
49
+ />
50
+ </div>
51
+ </div>
52
+ </template>
@@ -0,0 +1,14 @@
1
+ type __VLS_Props = {
2
+ url: string;
3
+ name?: string;
4
+ clickable?: boolean;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
7
+ click: () => any;
8
+ loaded: () => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onClick?: (() => any) | undefined;
11
+ onLoaded?: (() => any) | undefined;
12
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
@@ -0,0 +1,9 @@
1
+ import type { ToolUse, ToolResult } from '../../types/reasoning.js';
2
+ type __VLS_Props = {
3
+ toolUse: ToolUse;
4
+ toolResult?: ToolResult;
5
+ isActive?: boolean;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,86 @@
1
+ <script setup>
2
+ import { isCodeLike } from "../../utils/code-detection";
3
+ const props = defineProps({
4
+ toolUse: { type: Object, required: true },
5
+ toolResult: { type: Object, required: false },
6
+ isActive: { type: Boolean, required: false }
7
+ });
8
+ const command = computed(() => {
9
+ const cmd = props.toolUse.input?.command;
10
+ return typeof cmd === "string" ? cmd : "";
11
+ });
12
+ const statusVariant = computed(() => {
13
+ if (props.toolResult) {
14
+ return props.toolResult.isError ? "error" : "completed";
15
+ }
16
+ return "executing";
17
+ });
18
+ const statusLabel = computed(() => {
19
+ if (props.toolResult) {
20
+ return props.toolResult.isError ? "Erro" : "Conclu\xEDdo";
21
+ }
22
+ return "Executando...";
23
+ });
24
+ const isOutputCode = computed(() => {
25
+ if (!props.toolResult?.output)
26
+ return false;
27
+ return isCodeLike(props.toolResult.output);
28
+ });
29
+ </script>
30
+
31
+ <template>
32
+ <div class="bg-subtle rounded-16px border border-gray-200">
33
+ <!-- Header -->
34
+ <div class="px-24px py-24px flex items-center justify-between">
35
+ <h3 class="text-20px font-580 leading-24px tracking-[-0.5px] text-primary truncate">
36
+ Bash
37
+ </h3>
38
+ <TelaStatus :variant="statusVariant" :label="statusLabel" />
39
+ </div>
40
+
41
+ <!-- Content -->
42
+ <div v-if="toolResult" class="px-24px pb-24px space-y-16px">
43
+ <!-- Command section -->
44
+ <div>
45
+ <div class="text-14px font-580 leading-16px tracking-[-0.15px] text-gray-700 mb-2">
46
+ Comando executado
47
+ </div>
48
+ <div class="bg-white rounded-xl border-0.5px border-gray-200 px-3 py-2">
49
+ <p class="text-14px text-primary font-mono break-words">
50
+ <span class="text-emerald-600 mr-2">$</span>{{ command }}
51
+ </p>
52
+ </div>
53
+ </div>
54
+
55
+ <!-- Output section -->
56
+ <div>
57
+ <div class="text-14px font-580 leading-16px tracking-[-0.15px] text-gray-700 mb-2">
58
+ {{ toolResult.isError ? "Erro" : "Resultado" }}
59
+ </div>
60
+ <div
61
+ v-if="isOutputCode"
62
+ class="bg-[#1e1e1e] rounded-8px p-12px overflow-auto max-h-300px"
63
+ >
64
+ <pre class="font-mono text-12px text-gray-300 whitespace-pre-wrap break-all"><code>{{ toolResult.output }}</code></pre>
65
+ </div>
66
+ <div
67
+ v-else-if="!toolResult.output || toolResult.output.trim().length === 0"
68
+ class="bg-white rounded-xl border-0.5px border-gray-200 px-3 py-2"
69
+ >
70
+ <p class="text-14px text-tertiary m-0">
71
+ Nenhum resultado disponível
72
+ </p>
73
+ </div>
74
+ <div
75
+ v-else
76
+ class="bg-white rounded-xl border-0.5px border-gray-200 px-3 py-2"
77
+ :class="toolResult.isError ? 'text-red-600' : 'text-primary'"
78
+ >
79
+ <p class="text-14px whitespace-pre-wrap break-words m-0">
80
+ {{ toolResult.output }}
81
+ </p>
82
+ </div>
83
+ </div>
84
+ </div>
85
+ </div>
86
+ </template>
@@ -0,0 +1,9 @@
1
+ import type { ToolUse, ToolResult } from '../../types/reasoning.js';
2
+ type __VLS_Props = {
3
+ toolUse: ToolUse;
4
+ toolResult?: ToolResult;
5
+ isActive?: boolean;
6
+ };
7
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
8
+ declare const _default: typeof __VLS_export;
9
+ export default _default;
@@ -0,0 +1,14 @@
1
+ import type { CanvasTool } from '../../types/agent.js';
2
+ type __VLS_Props = {
3
+ open: boolean;
4
+ canvasTools: readonly CanvasTool[] | CanvasTool[] | null;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
7
+ close: () => any;
8
+ save: (tools: CanvasTool[]) => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onClose?: (() => any) | undefined;
11
+ onSave?: ((tools: CanvasTool[]) => any) | undefined;
12
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;
@@ -0,0 +1,290 @@
1
+ <script setup>
2
+ import { useMagicKeys } from "@vueuse/core";
3
+ const props = defineProps({
4
+ open: { type: Boolean, required: true },
5
+ canvasTools: { type: [Array, null], required: true }
6
+ });
7
+ const emit = defineEmits(["close", "save"]);
8
+ const { canvas, projects, loading: loadingCanvas } = useTela();
9
+ const searchQuery = ref("");
10
+ const selectedCanvas = ref(/* @__PURE__ */ new Map());
11
+ function initSelectedCanvas() {
12
+ const map = /* @__PURE__ */ new Map();
13
+ if (props.canvasTools) {
14
+ for (const tool of props.canvasTools) {
15
+ map.set(tool.canvasId, { description: tool.description });
16
+ }
17
+ }
18
+ selectedCanvas.value = map;
19
+ }
20
+ const { escape } = useMagicKeys();
21
+ watch(() => props.open, (isOpen) => {
22
+ if (isOpen) {
23
+ initSelectedCanvas();
24
+ searchQuery.value = "";
25
+ }
26
+ });
27
+ watch(() => escape?.value, (pressed) => {
28
+ if (pressed && props.open) {
29
+ handleClose();
30
+ }
31
+ });
32
+ const filteredCanvas = computed(() => {
33
+ const query = searchQuery.value.toLowerCase().trim();
34
+ const matchingProjects = query ? projects.value.filter((p) => p.title.toLowerCase().includes(query)) : [];
35
+ const matchingProjectIds = new Set(matchingProjects.map((p) => p.id));
36
+ return query ? canvas.value.filter(
37
+ (c) => c.title.toLowerCase().includes(query) || matchingProjectIds.has(c.projectId)
38
+ ) : canvas.value;
39
+ });
40
+ const groupedByProject = computed(() => {
41
+ const canvasList = filteredCanvas.value;
42
+ const groups = /* @__PURE__ */ new Map();
43
+ for (const c of canvasList) {
44
+ const key = c.projectId;
45
+ if (!groups.has(key)) {
46
+ groups.set(key, []);
47
+ }
48
+ groups.get(key).push(c);
49
+ }
50
+ const result = [];
51
+ for (const project of projects.value) {
52
+ const projectCanvas = groups.get(project.id);
53
+ if (projectCanvas?.length) {
54
+ result.push({ project, canvas: projectCanvas });
55
+ }
56
+ }
57
+ const orphanCanvas = canvasList.filter(
58
+ (c) => !projects.value.some((p) => p.id === c.projectId)
59
+ );
60
+ if (orphanCanvas.length)
61
+ result.push({ project: null, canvas: orphanCanvas });
62
+ return result;
63
+ });
64
+ function toggleCanvas(canvasId) {
65
+ if (selectedCanvas.value.has(canvasId))
66
+ selectedCanvas.value.delete(canvasId);
67
+ else
68
+ selectedCanvas.value.set(canvasId, { description: "" });
69
+ selectedCanvas.value = new Map(selectedCanvas.value);
70
+ }
71
+ function updateCanvasDescription(canvasId, description) {
72
+ const current = selectedCanvas.value.get(canvasId);
73
+ if (current) {
74
+ selectedCanvas.value.set(canvasId, { description });
75
+ selectedCanvas.value = new Map(selectedCanvas.value);
76
+ }
77
+ }
78
+ function transformVariables(variables) {
79
+ if (!variables?.length)
80
+ return void 0;
81
+ return variables.reduce((acc, v) => {
82
+ acc[v.name] = {
83
+ name: v.name,
84
+ description: v.description ?? v.name,
85
+ type: v.type
86
+ };
87
+ return acc;
88
+ }, {});
89
+ }
90
+ function buildCanvasTools() {
91
+ const tools = [];
92
+ for (const [canvasId, data] of selectedCanvas.value) {
93
+ const item = canvas.value.find((c) => c.id === canvasId);
94
+ if (!item)
95
+ continue;
96
+ const name = item.title.toLowerCase().replace(/[^a-z0-9]+/g, "_").replace(/^_|_$/g, "");
97
+ tools.push({
98
+ canvasId,
99
+ name,
100
+ description: data.description.trim() || item.title,
101
+ variables: transformVariables(item.promotedVersion?.variables)
102
+ });
103
+ }
104
+ return tools;
105
+ }
106
+ function handleSave() {
107
+ emit("save", buildCanvasTools());
108
+ emit("close");
109
+ }
110
+ function handleClose() {
111
+ emit("close");
112
+ }
113
+ </script>
114
+
115
+ <template>
116
+ <Teleport to="body">
117
+ <div
118
+ v-if="open"
119
+ fixed inset-0 z-50 flex items-center justify-center
120
+ @click.self="handleClose"
121
+ >
122
+ <!-- Backdrop -->
123
+ <div absolute inset-0 bg-black op-40 />
124
+
125
+ <!-- Modal -->
126
+ <div
127
+ relative w-full max-w-540px mx-16px
128
+ bg-white rounded-16px shadow-xl
129
+ flex="~ col"
130
+ max-h="90vh"
131
+ >
132
+ <!-- Header -->
133
+ <div flex items-center justify-between px-24px py-16px b-b=".5px gray-120">
134
+ <div flex="~ col" gap-2px>
135
+ <h2 text-16px font-semibold text-gray-900>
136
+ Selecionar Canvas / Workflows
137
+ </h2>
138
+ <p text-12px text-gray-500>
139
+ Escolha os canvas do Tela para usar como ferramentas
140
+ </p>
141
+ </div>
142
+ <button
143
+ p-8px rounded-8px hover:bg-gray-100 transition cursor-pointer
144
+ @click="handleClose"
145
+ >
146
+ <div i-ph-x text-20px text-gray-400 />
147
+ </button>
148
+ </div>
149
+
150
+ <!-- Search -->
151
+ <div px-24px py-12px b-b=".5px gray-120">
152
+ <div relative>
153
+ <div absolute left-12px top="50%" translate-y="-50%" i-ph-magnifying-glass text-14px text-gray-400 />
154
+ <input
155
+ v-model="searchQuery"
156
+ type="text"
157
+ placeholder="Buscar canvas ou projeto..."
158
+ w-full pl-36px pr-12px py-10px rounded-8px
159
+ b=".5px gray-200" text-14px bg-gray-50
160
+ focus:outline-none focus:b-blue-400 focus:bg-white
161
+ >
162
+ </div>
163
+ </div>
164
+
165
+ <!-- Selected Pills -->
166
+ <div v-if="selectedCanvas.size > 0" px-24px py-12px b-b=".5px gray-120" bg-blue-50>
167
+ <div flex items-center gap-8px mb-8px>
168
+ <div i-ph-check-circle text-14px text-blue-500 />
169
+ <span text-12px font-medium text-blue-700>
170
+ {{ selectedCanvas.size }} selecionado{{ selectedCanvas.size > 1 ? "s" : "" }}
171
+ </span>
172
+ </div>
173
+ <div flex flex-wrap gap-6px>
174
+ <div
175
+ v-for="[canvasId] in selectedCanvas" :key="canvasId"
176
+ flex items-center gap-6px px-8px py-4px rounded-6px bg-white b=".5px blue-200"
177
+ >
178
+ <div i-ph-puzzle-piece text-blue-500 text-12px />
179
+ <span text-12px text-blue-700 max-w-120px truncate>
180
+ {{ canvas.find((c) => c.id === canvasId)?.title ?? "Canvas" }}
181
+ </span>
182
+ <button p-1px rounded-2px hover:bg-blue-100 transition cursor-pointer @click="toggleCanvas(canvasId)">
183
+ <div i-ph-x text-blue-400 text-10px />
184
+ </button>
185
+ </div>
186
+ </div>
187
+ </div>
188
+
189
+ <!-- Canvas List -->
190
+ <div flex-1 overflow-y-auto min-h-200px max-h-400px>
191
+ <div v-if="loadingCanvas" flex items-center justify-center py-48px>
192
+ <div i-ph-spinner animate-spin text-24px text-gray-400 />
193
+ </div>
194
+
195
+ <div v-else-if="filteredCanvas.length === 0" text-center py-48px>
196
+ <div i-ph-puzzle-piece text-32px text-gray-300 mb-8px />
197
+ <p text-gray-400 text-14px>
198
+ {{ canvas.length === 0 ? "Nenhum canvas dispon\xEDvel" : "Nenhum resultado encontrado" }}
199
+ </p>
200
+ </div>
201
+
202
+ <template v-else>
203
+ <div v-for="group in groupedByProject" :key="group.project?.id ?? 'orphan'" py-12px>
204
+ <div flex items-center gap-8px px-24px mb-8px>
205
+ <div i-ph-folder text-14px text-gray-400 />
206
+ <span text-12px font-semibold text-gray-500 uppercase tracking-wide>
207
+ {{ group.project?.title ?? "Sem projeto" }}
208
+ </span>
209
+ <span text-11px text-gray-400>
210
+ ({{ group.canvas.length }})
211
+ </span>
212
+ </div>
213
+
214
+ <div flex="~ col">
215
+ <div
216
+ v-for="item in group.canvas"
217
+ :key="item.id"
218
+ flex="~ col"
219
+ px-24px py-10px
220
+ transition
221
+ :class="[
222
+ !item.promotedVersion ? 'opacity-40 cursor-not-allowed' : selectedCanvas.has(item.id) ? 'bg-blue-50 cursor-pointer' : 'hover:bg-gray-50 cursor-pointer'
223
+ ]"
224
+ @click="item.promotedVersion && toggleCanvas(item.id)"
225
+ >
226
+ <div flex items-center gap-12px>
227
+ <div
228
+ w-18px h-18px rounded-4px b=".5px solid"
229
+ flex items-center justify-center flex-shrink-0
230
+ :class="[
231
+ selectedCanvas.has(item.id) ? 'bg-blue-500 b-blue-500' : 'bg-white b-gray-300'
232
+ ]"
233
+ >
234
+ <div v-if="selectedCanvas.has(item.id)" i-ph-check text-11px text-white />
235
+ </div>
236
+
237
+ <div flex="~ col" gap-2px flex-1 min-w-0>
238
+ <span text-14px text-gray-800 truncate>
239
+ {{ item.title }}
240
+ </span>
241
+ </div>
242
+
243
+ <span
244
+ text-10px px-6px py-2px rounded-4px
245
+ :class="[
246
+ !item.promotedVersion ? 'bg-gray-100 text-gray-400' : item.promotedVersion.workflowSpec ? 'bg-purple-100 text-purple-600' : 'bg-green-100 text-green-600'
247
+ ]"
248
+ >
249
+ {{ !item.promotedVersion ? "Rascunho" : item.promotedVersion.workflowSpec ? "Workflow" : "Canvas" }}
250
+ </span>
251
+ </div>
252
+
253
+ <!-- Description input when selected -->
254
+ <div
255
+ v-if="selectedCanvas.has(item.id)"
256
+ mt-10px ml-30px
257
+ @click.stop
258
+ >
259
+ <label text-11px text-gray-500 mb-4px block>
260
+ Descrição (opcional)
261
+ </label>
262
+ <input
263
+ type="text"
264
+ :value="selectedCanvas.get(item.id)?.description"
265
+ :placeholder="`Ex: Use para ${item.title.toLowerCase()}`"
266
+ w-full px-10px py-6px rounded-6px
267
+ b=".5px gray-200" text-13px bg-white
268
+ focus:outline-none focus:b-blue-400
269
+ @input="(e) => updateCanvasDescription(item.id, e.target.value)"
270
+ >
271
+ </div>
272
+ </div>
273
+ </div>
274
+ </div>
275
+ </template>
276
+ </div>
277
+
278
+ <!-- Footer -->
279
+ <div flex items-center justify-end gap-12px px-24px py-16px b-t=".5px gray-120">
280
+ <TelaButton variant="ghost" @click="handleClose">
281
+ Cancelar
282
+ </TelaButton>
283
+ <TelaButton @click="handleSave">
284
+ Confirmar seleção
285
+ </TelaButton>
286
+ </div>
287
+ </div>
288
+ </div>
289
+ </Teleport>
290
+ </template>
@@ -0,0 +1,14 @@
1
+ import type { CanvasTool } from '../../types/agent.js';
2
+ type __VLS_Props = {
3
+ open: boolean;
4
+ canvasTools: readonly CanvasTool[] | CanvasTool[] | null;
5
+ };
6
+ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
7
+ close: () => any;
8
+ save: (tools: CanvasTool[]) => any;
9
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
10
+ onClose?: (() => any) | undefined;
11
+ onSave?: ((tools: CanvasTool[]) => any) | undefined;
12
+ }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
13
+ declare const _default: typeof __VLS_export;
14
+ export default _default;