@celljs/ta-web 0.0.0-stage → 4.6.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 (1077) hide show
  1. package/README.md +83 -2
  2. package/esm/browser/assistant/assistant-export.d.ts +13 -0
  3. package/esm/browser/assistant/assistant-export.js +33 -0
  4. package/esm/browser/assistant/assistant-export.js.map +1 -0
  5. package/esm/browser/assistant/assistant-extension.d.ts +20 -0
  6. package/esm/browser/assistant/assistant-extension.js +153 -0
  7. package/esm/browser/assistant/assistant-extension.js.map +1 -0
  8. package/esm/browser/assistant/assistant-hooks.d.ts +8 -0
  9. package/esm/browser/assistant/assistant-hooks.js +55 -0
  10. package/esm/browser/assistant/assistant-hooks.js.map +1 -0
  11. package/esm/browser/assistant/assistant-protocol.d.ts +51 -0
  12. package/esm/browser/assistant/assistant-protocol.js +2 -0
  13. package/esm/browser/assistant/assistant-protocol.js.map +1 -0
  14. package/esm/browser/assistant/assistant-tasks.d.ts +48 -0
  15. package/esm/browser/assistant/assistant-tasks.js +115 -0
  16. package/esm/browser/assistant/assistant-tasks.js.map +1 -0
  17. package/esm/browser/assistant/assistant-view.d.ts +21 -0
  18. package/esm/browser/assistant/assistant-view.js +324 -0
  19. package/esm/browser/assistant/assistant-view.js.map +1 -0
  20. package/esm/browser/assistant/assistant.d.ts +51 -0
  21. package/esm/browser/assistant/assistant.js +302 -0
  22. package/esm/browser/assistant/assistant.js.map +1 -0
  23. package/esm/browser/assistant/voice.d.ts +14 -0
  24. package/esm/browser/assistant/voice.js +72 -0
  25. package/esm/browser/assistant/voice.js.map +1 -0
  26. package/esm/browser/avatar/dino-avatar.d.ts +139 -0
  27. package/esm/browser/avatar/dino-avatar.js +420 -0
  28. package/esm/browser/avatar/dino-avatar.js.map +1 -0
  29. package/esm/browser/avatar/dino-motion.d.ts +24 -0
  30. package/esm/browser/avatar/dino-motion.js +295 -0
  31. package/esm/browser/avatar/dino-motion.js.map +1 -0
  32. package/esm/browser/chat/chat-protocol.d.ts +46 -0
  33. package/esm/browser/chat/chat-protocol.js +2 -0
  34. package/esm/browser/chat/chat-protocol.js.map +1 -0
  35. package/esm/browser/chat/chat-view.d.ts +15 -0
  36. package/esm/browser/chat/chat-view.js +87 -0
  37. package/esm/browser/chat/chat-view.js.map +1 -0
  38. package/esm/browser/chat/chat.d.ts +69 -0
  39. package/esm/browser/chat/chat.js +343 -0
  40. package/esm/browser/chat/chat.js.map +1 -0
  41. package/esm/browser/components/account-menu.d.ts +8 -0
  42. package/esm/browser/components/account-menu.js +82 -0
  43. package/esm/browser/components/account-menu.js.map +1 -0
  44. package/esm/browser/components/agent-settings-view.d.ts +23 -0
  45. package/esm/browser/components/agent-settings-view.js +105 -0
  46. package/esm/browser/components/agent-settings-view.js.map +1 -0
  47. package/esm/browser/components/app-view.d.ts +9 -0
  48. package/esm/browser/components/app-view.js +405 -0
  49. package/esm/browser/components/app-view.js.map +1 -0
  50. package/esm/browser/components/auth-pictures.d.ts +6 -0
  51. package/esm/browser/components/auth-pictures.js +37 -0
  52. package/esm/browser/components/auth-pictures.js.map +1 -0
  53. package/esm/browser/components/auth-view.d.ts +54 -0
  54. package/esm/browser/components/auth-view.js +300 -0
  55. package/esm/browser/components/auth-view.js.map +1 -0
  56. package/esm/browser/components/callout.d.ts +18 -0
  57. package/esm/browser/components/callout.js +17 -0
  58. package/esm/browser/components/callout.js.map +1 -0
  59. package/esm/browser/components/chat-list.d.ts +52 -0
  60. package/esm/browser/components/chat-list.js +189 -0
  61. package/esm/browser/components/chat-list.js.map +1 -0
  62. package/esm/browser/components/code-editor.d.ts +7 -0
  63. package/esm/browser/components/code-editor.js +85 -0
  64. package/esm/browser/components/code-editor.js.map +1 -0
  65. package/esm/browser/components/composer-box.d.ts +73 -0
  66. package/esm/browser/components/composer-box.js +297 -0
  67. package/esm/browser/components/composer-box.js.map +1 -0
  68. package/esm/browser/components/composer-menu.d.ts +17 -0
  69. package/esm/browser/components/composer-menu.js +18 -0
  70. package/esm/browser/components/composer-menu.js.map +1 -0
  71. package/esm/browser/components/composer.d.ts +37 -0
  72. package/esm/browser/components/composer.js +99 -0
  73. package/esm/browser/components/composer.js.map +1 -0
  74. package/esm/browser/components/connection-bar.d.ts +6 -0
  75. package/esm/browser/components/connection-bar.js +73 -0
  76. package/esm/browser/components/connection-bar.js.map +1 -0
  77. package/esm/browser/components/context-menu.d.ts +12 -0
  78. package/esm/browser/components/context-menu.js +68 -0
  79. package/esm/browser/components/context-menu.js.map +1 -0
  80. package/esm/browser/components/conversation-scroll.d.ts +13 -0
  81. package/esm/browser/components/conversation-scroll.js +121 -0
  82. package/esm/browser/components/conversation-scroll.js.map +1 -0
  83. package/esm/browser/components/dialog-view.d.ts +9 -0
  84. package/esm/browser/components/dialog-view.js +41 -0
  85. package/esm/browser/components/dialog-view.js.map +1 -0
  86. package/esm/browser/components/diff-editor.d.ts +10 -0
  87. package/esm/browser/components/diff-editor.js +101 -0
  88. package/esm/browser/components/diff-editor.js.map +1 -0
  89. package/esm/browser/components/diff-view.d.ts +4 -0
  90. package/esm/browser/components/diff-view.js +11 -0
  91. package/esm/browser/components/diff-view.js.map +1 -0
  92. package/esm/browser/components/dino.d.ts +8 -0
  93. package/esm/browser/components/dino.js +14 -0
  94. package/esm/browser/components/dino.js.map +1 -0
  95. package/esm/browser/components/editor-area.d.ts +28 -0
  96. package/esm/browser/components/editor-area.js +134 -0
  97. package/esm/browser/components/editor-area.js.map +1 -0
  98. package/esm/browser/components/folder-picker.d.ts +28 -0
  99. package/esm/browser/components/folder-picker.js +106 -0
  100. package/esm/browser/components/folder-picker.js.map +1 -0
  101. package/esm/browser/components/fork-view.d.ts +14 -0
  102. package/esm/browser/components/fork-view.js +43 -0
  103. package/esm/browser/components/fork-view.js.map +1 -0
  104. package/esm/browser/components/hero-cards.d.ts +20 -0
  105. package/esm/browser/components/hero-cards.js +109 -0
  106. package/esm/browser/components/hero-cards.js.map +1 -0
  107. package/esm/browser/components/icon.d.ts +29 -0
  108. package/esm/browser/components/icon.js +23 -0
  109. package/esm/browser/components/icon.js.map +1 -0
  110. package/esm/browser/components/link-dialog.d.ts +3 -0
  111. package/esm/browser/components/link-dialog.js +45 -0
  112. package/esm/browser/components/link-dialog.js.map +1 -0
  113. package/esm/browser/components/link.d.ts +19 -0
  114. package/esm/browser/components/link.js +56 -0
  115. package/esm/browser/components/link.js.map +1 -0
  116. package/esm/browser/components/manage-menu.d.ts +13 -0
  117. package/esm/browser/components/manage-menu.js +96 -0
  118. package/esm/browser/components/manage-menu.js.map +1 -0
  119. package/esm/browser/components/markdown.d.ts +9 -0
  120. package/esm/browser/components/markdown.js +98 -0
  121. package/esm/browser/components/markdown.js.map +1 -0
  122. package/esm/browser/components/math.d.ts +10 -0
  123. package/esm/browser/components/math.js +21 -0
  124. package/esm/browser/components/math.js.map +1 -0
  125. package/esm/browser/components/media.d.ts +11 -0
  126. package/esm/browser/components/media.js +76 -0
  127. package/esm/browser/components/media.js.map +1 -0
  128. package/esm/browser/components/mermaid-view.d.ts +10 -0
  129. package/esm/browser/components/mermaid-view.js +84 -0
  130. package/esm/browser/components/mermaid-view.js.map +1 -0
  131. package/esm/browser/components/message-actions.d.ts +12 -0
  132. package/esm/browser/components/message-actions.js +78 -0
  133. package/esm/browser/components/message-actions.js.map +1 -0
  134. package/esm/browser/components/message-footer.d.ts +29 -0
  135. package/esm/browser/components/message-footer.js +86 -0
  136. package/esm/browser/components/message-footer.js.map +1 -0
  137. package/esm/browser/components/message-list.d.ts +37 -0
  138. package/esm/browser/components/message-list.js +216 -0
  139. package/esm/browser/components/message-list.js.map +1 -0
  140. package/esm/browser/components/notice-center.d.ts +3 -0
  141. package/esm/browser/components/notice-center.js +114 -0
  142. package/esm/browser/components/notice-center.js.map +1 -0
  143. package/esm/browser/components/relay-view.d.ts +5 -0
  144. package/esm/browser/components/relay-view.js +114 -0
  145. package/esm/browser/components/relay-view.js.map +1 -0
  146. package/esm/browser/components/run-status.d.ts +9 -0
  147. package/esm/browser/components/run-status.js +54 -0
  148. package/esm/browser/components/run-status.js.map +1 -0
  149. package/esm/browser/components/session-settings.d.ts +37 -0
  150. package/esm/browser/components/session-settings.js +84 -0
  151. package/esm/browser/components/session-settings.js.map +1 -0
  152. package/esm/browser/components/session-view.d.ts +24 -0
  153. package/esm/browser/components/session-view.js +84 -0
  154. package/esm/browser/components/session-view.js.map +1 -0
  155. package/esm/browser/components/settings-controls.d.ts +40 -0
  156. package/esm/browser/components/settings-controls.js +28 -0
  157. package/esm/browser/components/settings-controls.js.map +1 -0
  158. package/esm/browser/components/settings-view.d.ts +22 -0
  159. package/esm/browser/components/settings-view.js +357 -0
  160. package/esm/browser/components/settings-view.js.map +1 -0
  161. package/esm/browser/components/split-pane.d.ts +24 -0
  162. package/esm/browser/components/split-pane.js +75 -0
  163. package/esm/browser/components/split-pane.js.map +1 -0
  164. package/esm/browser/components/ta-avatar.d.ts +13 -0
  165. package/esm/browser/components/ta-avatar.js +185 -0
  166. package/esm/browser/components/ta-avatar.js.map +1 -0
  167. package/esm/browser/components/tool-view.d.ts +18 -0
  168. package/esm/browser/components/tool-view.js +110 -0
  169. package/esm/browser/components/tool-view.js.map +1 -0
  170. package/esm/browser/components/trusted-domains.d.ts +3 -0
  171. package/esm/browser/components/trusted-domains.js +39 -0
  172. package/esm/browser/components/trusted-domains.js.map +1 -0
  173. package/esm/browser/components/web-composer.d.ts +14 -0
  174. package/esm/browser/components/web-composer.js +22 -0
  175. package/esm/browser/components/web-composer.js.map +1 -0
  176. package/esm/browser/components/web-dialog.d.ts +4 -0
  177. package/esm/browser/components/web-dialog.js +22 -0
  178. package/esm/browser/components/web-dialog.js.map +1 -0
  179. package/esm/browser/components/workbench-toggle.d.ts +12 -0
  180. package/esm/browser/components/workbench-toggle.js +17 -0
  181. package/esm/browser/components/workbench-toggle.js.map +1 -0
  182. package/esm/browser/components/workbench-view.d.ts +8 -0
  183. package/esm/browser/components/workbench-view.js +62 -0
  184. package/esm/browser/components/workbench-view.js.map +1 -0
  185. package/esm/browser/components/working-directory.d.ts +5 -0
  186. package/esm/browser/components/working-directory.js +25 -0
  187. package/esm/browser/components/working-directory.js.map +1 -0
  188. package/esm/browser/editor/monaco-loader.d.ts +60 -0
  189. package/esm/browser/editor/monaco-loader.js +135 -0
  190. package/esm/browser/editor/monaco-loader.js.map +1 -0
  191. package/esm/browser/editor/monaco.d.ts +45 -0
  192. package/esm/browser/editor/monaco.js +54 -0
  193. package/esm/browser/editor/monaco.js.map +1 -0
  194. package/esm/browser/extension/extension-view.d.ts +35 -0
  195. package/esm/browser/extension/extension-view.js +53 -0
  196. package/esm/browser/extension/extension-view.js.map +1 -0
  197. package/esm/browser/extension/icons.d.ts +3 -0
  198. package/esm/browser/extension/icons.js +82 -0
  199. package/esm/browser/extension/icons.js.map +1 -0
  200. package/esm/browser/extension/web-extension-api.d.ts +362 -0
  201. package/esm/browser/extension/web-extension-api.js +2 -0
  202. package/esm/browser/extension/web-extension-api.js.map +1 -0
  203. package/esm/browser/extension/web-extension-protocol.d.ts +132 -0
  204. package/esm/browser/extension/web-extension-protocol.js +10 -0
  205. package/esm/browser/extension/web-extension-protocol.js.map +1 -0
  206. package/esm/browser/extension/web-extensions.d.ts +118 -0
  207. package/esm/browser/extension/web-extensions.js +654 -0
  208. package/esm/browser/extension/web-extensions.js.map +1 -0
  209. package/esm/browser/hooks.d.ts +21 -0
  210. package/esm/browser/hooks.js +65 -0
  211. package/esm/browser/hooks.js.map +1 -0
  212. package/esm/browser/i18n/locales.d.ts +435 -0
  213. package/esm/browser/i18n/locales.js +35 -0
  214. package/esm/browser/i18n/locales.js.map +1 -0
  215. package/esm/browser/i18n/messages.d.ts +427 -0
  216. package/esm/browser/i18n/messages.js +858 -0
  217. package/esm/browser/i18n/messages.js.map +1 -0
  218. package/esm/browser/i18n/use-t.d.ts +7 -0
  219. package/esm/browser/i18n/use-t.js +18 -0
  220. package/esm/browser/i18n/use-t.js.map +1 -0
  221. package/esm/browser/index.d.ts +52 -0
  222. package/esm/browser/index.js +53 -0
  223. package/esm/browser/index.js.map +1 -0
  224. package/esm/browser/links/links-protocol.d.ts +35 -0
  225. package/esm/browser/links/links-protocol.js +2 -0
  226. package/esm/browser/links/links-protocol.js.map +1 -0
  227. package/esm/browser/links/links.d.ts +32 -0
  228. package/esm/browser/links/links.js +141 -0
  229. package/esm/browser/links/links.js.map +1 -0
  230. package/esm/browser/markdown/hooks.d.ts +6 -0
  231. package/esm/browser/markdown/hooks.js +21 -0
  232. package/esm/browser/markdown/hooks.js.map +1 -0
  233. package/esm/browser/markdown/lazy.d.ts +21 -0
  234. package/esm/browser/markdown/lazy.js +39 -0
  235. package/esm/browser/markdown/lazy.js.map +1 -0
  236. package/esm/browser/markdown/math.d.ts +18 -0
  237. package/esm/browser/markdown/math.js +30 -0
  238. package/esm/browser/markdown/math.js.map +1 -0
  239. package/esm/browser/markdown/mermaid.d.ts +20 -0
  240. package/esm/browser/markdown/mermaid.js +84 -0
  241. package/esm/browser/markdown/mermaid.js.map +1 -0
  242. package/esm/browser/module.d.ts +4 -0
  243. package/esm/browser/module.js +6 -0
  244. package/esm/browser/module.js.map +1 -0
  245. package/esm/browser/notices/notices-protocol.d.ts +82 -0
  246. package/esm/browser/notices/notices-protocol.js +2 -0
  247. package/esm/browser/notices/notices-protocol.js.map +1 -0
  248. package/esm/browser/notices/notices.d.ts +47 -0
  249. package/esm/browser/notices/notices.js +162 -0
  250. package/esm/browser/notices/notices.js.map +1 -0
  251. package/esm/browser/pwa/pwa-protocol.d.ts +20 -0
  252. package/esm/browser/pwa/pwa-protocol.js +2 -0
  253. package/esm/browser/pwa/pwa-protocol.js.map +1 -0
  254. package/esm/browser/pwa/pwa.d.ts +39 -0
  255. package/esm/browser/pwa/pwa.js +120 -0
  256. package/esm/browser/pwa/pwa.js.map +1 -0
  257. package/esm/browser/settings/agent-settings.d.ts +33 -0
  258. package/esm/browser/settings/agent-settings.js +85 -0
  259. package/esm/browser/settings/agent-settings.js.map +1 -0
  260. package/esm/browser/settings/settings-protocol.d.ts +44 -0
  261. package/esm/browser/settings/settings-protocol.js +35 -0
  262. package/esm/browser/settings/settings-protocol.js.map +1 -0
  263. package/esm/browser/settings/settings.d.ts +31 -0
  264. package/esm/browser/settings/settings.js +102 -0
  265. package/esm/browser/settings/settings.js.map +1 -0
  266. package/esm/browser/state/state-protocol.d.ts +48 -0
  267. package/esm/browser/state/state-protocol.js +32 -0
  268. package/esm/browser/state/state-protocol.js.map +1 -0
  269. package/esm/browser/state/state.d.ts +39 -0
  270. package/esm/browser/state/state.js +210 -0
  271. package/esm/browser/state/state.js.map +1 -0
  272. package/esm/browser/style/base.d.ts +2 -0
  273. package/esm/browser/style/base.js +140 -0
  274. package/esm/browser/style/base.js.map +1 -0
  275. package/esm/browser/style/conversation.d.ts +2 -0
  276. package/esm/browser/style/conversation.js +201 -0
  277. package/esm/browser/style/conversation.js.map +1 -0
  278. package/esm/browser/style/layout.d.ts +2 -0
  279. package/esm/browser/style/layout.js +371 -0
  280. package/esm/browser/style/layout.js.map +1 -0
  281. package/esm/browser/style/pages.d.ts +2 -0
  282. package/esm/browser/style/pages.js +75 -0
  283. package/esm/browser/style/pages.js.map +1 -0
  284. package/esm/browser/style/shell.d.ts +2 -0
  285. package/esm/browser/style/shell.js +236 -0
  286. package/esm/browser/style/shell.js.map +1 -0
  287. package/esm/browser/style.d.ts +5 -0
  288. package/esm/browser/style.js +11 -0
  289. package/esm/browser/style.js.map +1 -0
  290. package/esm/browser/util/composer.d.ts +85 -0
  291. package/esm/browser/util/composer.js +121 -0
  292. package/esm/browser/util/composer.js.map +1 -0
  293. package/esm/browser/util/diff.d.ts +17 -0
  294. package/esm/browser/util/diff.js +29 -0
  295. package/esm/browser/util/diff.js.map +1 -0
  296. package/esm/browser/util/frame.d.ts +32 -0
  297. package/esm/browser/util/frame.js +47 -0
  298. package/esm/browser/util/frame.js.map +1 -0
  299. package/esm/browser/util/layout.d.ts +26 -0
  300. package/esm/browser/util/layout.js +54 -0
  301. package/esm/browser/util/layout.js.map +1 -0
  302. package/esm/browser/util/link.d.ts +53 -0
  303. package/esm/browser/util/link.js +229 -0
  304. package/esm/browser/util/link.js.map +1 -0
  305. package/esm/browser/util/markdown.d.ts +86 -0
  306. package/esm/browser/util/markdown.js +330 -0
  307. package/esm/browser/util/markdown.js.map +1 -0
  308. package/esm/browser/util/message.d.ts +74 -0
  309. package/esm/browser/util/message.js +143 -0
  310. package/esm/browser/util/message.js.map +1 -0
  311. package/esm/browser/util/process.d.ts +73 -0
  312. package/esm/browser/util/process.js +135 -0
  313. package/esm/browser/util/process.js.map +1 -0
  314. package/esm/browser/util/progress.d.ts +50 -0
  315. package/esm/browser/util/progress.js +143 -0
  316. package/esm/browser/util/progress.js.map +1 -0
  317. package/esm/browser/util/qr-code.d.ts +37 -0
  318. package/esm/browser/util/qr-code.js +349 -0
  319. package/esm/browser/util/qr-code.js.map +1 -0
  320. package/esm/browser/util/tool.d.ts +41 -0
  321. package/esm/browser/util/tool.js +151 -0
  322. package/esm/browser/util/tool.js.map +1 -0
  323. package/esm/browser/view.d.ts +3 -0
  324. package/esm/browser/view.js +16 -0
  325. package/esm/browser/view.js.map +1 -0
  326. package/esm/browser/workbench-protocol.d.ts +50 -0
  327. package/esm/browser/workbench-protocol.js +2 -0
  328. package/esm/browser/workbench-protocol.js.map +1 -0
  329. package/esm/browser/workbench.d.ts +63 -0
  330. package/esm/browser/workbench.js +278 -0
  331. package/esm/browser/workbench.js.map +1 -0
  332. package/esm/package.json +3 -0
  333. package/lib/browser/assistant/assistant-export.d.ts +14 -0
  334. package/lib/browser/assistant/assistant-export.d.ts.map +1 -0
  335. package/lib/browser/assistant/assistant-export.js +36 -0
  336. package/lib/browser/assistant/assistant-export.js.map +1 -0
  337. package/lib/browser/assistant/assistant-export.spec.d.ts +2 -0
  338. package/lib/browser/assistant/assistant-export.spec.d.ts.map +1 -0
  339. package/lib/browser/assistant/assistant-export.spec.js +27 -0
  340. package/lib/browser/assistant/assistant-export.spec.js.map +1 -0
  341. package/lib/browser/assistant/assistant-extension.d.ts +21 -0
  342. package/lib/browser/assistant/assistant-extension.d.ts.map +1 -0
  343. package/lib/browser/assistant/assistant-extension.js +189 -0
  344. package/lib/browser/assistant/assistant-extension.js.map +1 -0
  345. package/lib/browser/assistant/assistant-extension.spec.d.ts +2 -0
  346. package/lib/browser/assistant/assistant-extension.spec.d.ts.map +1 -0
  347. package/lib/browser/assistant/assistant-extension.spec.js +121 -0
  348. package/lib/browser/assistant/assistant-extension.spec.js.map +1 -0
  349. package/lib/browser/assistant/assistant-hooks.d.ts +9 -0
  350. package/lib/browser/assistant/assistant-hooks.d.ts.map +1 -0
  351. package/lib/browser/assistant/assistant-hooks.js +94 -0
  352. package/lib/browser/assistant/assistant-hooks.js.map +1 -0
  353. package/lib/browser/assistant/assistant-protocol.d.ts +52 -0
  354. package/lib/browser/assistant/assistant-protocol.d.ts.map +1 -0
  355. package/lib/browser/assistant/assistant-protocol.js +5 -0
  356. package/lib/browser/assistant/assistant-protocol.js.map +1 -0
  357. package/lib/browser/assistant/assistant-tasks.d.ts +49 -0
  358. package/lib/browser/assistant/assistant-tasks.d.ts.map +1 -0
  359. package/lib/browser/assistant/assistant-tasks.js +158 -0
  360. package/lib/browser/assistant/assistant-tasks.js.map +1 -0
  361. package/lib/browser/assistant/assistant-view.d.ts +22 -0
  362. package/lib/browser/assistant/assistant-view.d.ts.map +1 -0
  363. package/lib/browser/assistant/assistant-view.js +365 -0
  364. package/lib/browser/assistant/assistant-view.js.map +1 -0
  365. package/lib/browser/assistant/assistant.d.ts +52 -0
  366. package/lib/browser/assistant/assistant.d.ts.map +1 -0
  367. package/lib/browser/assistant/assistant.js +305 -0
  368. package/lib/browser/assistant/assistant.js.map +1 -0
  369. package/lib/browser/assistant/assistant.spec.d.ts +2 -0
  370. package/lib/browser/assistant/assistant.spec.d.ts.map +1 -0
  371. package/lib/browser/assistant/assistant.spec.js +80 -0
  372. package/lib/browser/assistant/assistant.spec.js.map +1 -0
  373. package/lib/browser/assistant/voice.d.ts +15 -0
  374. package/lib/browser/assistant/voice.d.ts.map +1 -0
  375. package/lib/browser/assistant/voice.js +75 -0
  376. package/lib/browser/assistant/voice.js.map +1 -0
  377. package/lib/browser/assistant/voice.spec.d.ts +2 -0
  378. package/lib/browser/assistant/voice.spec.d.ts.map +1 -0
  379. package/lib/browser/assistant/voice.spec.js +10 -0
  380. package/lib/browser/assistant/voice.spec.js.map +1 -0
  381. package/lib/browser/avatar/dino-avatar.d.ts +140 -0
  382. package/lib/browser/avatar/dino-avatar.d.ts.map +1 -0
  383. package/lib/browser/avatar/dino-avatar.js +429 -0
  384. package/lib/browser/avatar/dino-avatar.js.map +1 -0
  385. package/lib/browser/avatar/dino-avatar.spec.d.ts +2 -0
  386. package/lib/browser/avatar/dino-avatar.spec.d.ts.map +1 -0
  387. package/lib/browser/avatar/dino-avatar.spec.js +143 -0
  388. package/lib/browser/avatar/dino-avatar.spec.js.map +1 -0
  389. package/lib/browser/avatar/dino-motion.d.ts +25 -0
  390. package/lib/browser/avatar/dino-motion.d.ts.map +1 -0
  391. package/lib/browser/avatar/dino-motion.js +298 -0
  392. package/lib/browser/avatar/dino-motion.js.map +1 -0
  393. package/lib/browser/chat/chat-protocol.d.ts +47 -0
  394. package/lib/browser/chat/chat-protocol.d.ts.map +1 -0
  395. package/lib/browser/chat/chat-protocol.js +5 -0
  396. package/lib/browser/chat/chat-protocol.js.map +1 -0
  397. package/lib/browser/chat/chat-view.d.ts +16 -0
  398. package/lib/browser/chat/chat-view.d.ts.map +1 -0
  399. package/lib/browser/chat/chat-view.js +125 -0
  400. package/lib/browser/chat/chat-view.js.map +1 -0
  401. package/lib/browser/chat/chat.d.ts +70 -0
  402. package/lib/browser/chat/chat.d.ts.map +1 -0
  403. package/lib/browser/chat/chat.js +346 -0
  404. package/lib/browser/chat/chat.js.map +1 -0
  405. package/lib/browser/chat/chat.spec.d.ts +2 -0
  406. package/lib/browser/chat/chat.spec.d.ts.map +1 -0
  407. package/lib/browser/chat/chat.spec.js +185 -0
  408. package/lib/browser/chat/chat.spec.js.map +1 -0
  409. package/lib/browser/components/account-menu.d.ts +9 -0
  410. package/lib/browser/components/account-menu.d.ts.map +1 -0
  411. package/lib/browser/components/account-menu.js +119 -0
  412. package/lib/browser/components/account-menu.js.map +1 -0
  413. package/lib/browser/components/agent-settings-view.d.ts +24 -0
  414. package/lib/browser/components/agent-settings-view.d.ts.map +1 -0
  415. package/lib/browser/components/agent-settings-view.js +143 -0
  416. package/lib/browser/components/agent-settings-view.js.map +1 -0
  417. package/lib/browser/components/app-view.d.ts +10 -0
  418. package/lib/browser/components/app-view.d.ts.map +1 -0
  419. package/lib/browser/components/app-view.js +441 -0
  420. package/lib/browser/components/app-view.js.map +1 -0
  421. package/lib/browser/components/auth-pictures.d.ts +7 -0
  422. package/lib/browser/components/auth-pictures.d.ts.map +1 -0
  423. package/lib/browser/components/auth-pictures.js +73 -0
  424. package/lib/browser/components/auth-pictures.js.map +1 -0
  425. package/lib/browser/components/auth-view.d.ts +55 -0
  426. package/lib/browser/components/auth-view.d.ts.map +1 -0
  427. package/lib/browser/components/auth-view.js +340 -0
  428. package/lib/browser/components/auth-view.js.map +1 -0
  429. package/lib/browser/components/callout.d.ts +19 -0
  430. package/lib/browser/components/callout.d.ts.map +1 -0
  431. package/lib/browser/components/callout.js +54 -0
  432. package/lib/browser/components/callout.js.map +1 -0
  433. package/lib/browser/components/chat-list.d.ts +53 -0
  434. package/lib/browser/components/chat-list.d.ts.map +1 -0
  435. package/lib/browser/components/chat-list.js +226 -0
  436. package/lib/browser/components/chat-list.js.map +1 -0
  437. package/lib/browser/components/chat-list.spec.d.ts +2 -0
  438. package/lib/browser/components/chat-list.spec.d.ts.map +1 -0
  439. package/lib/browser/components/chat-list.spec.js +61 -0
  440. package/lib/browser/components/chat-list.spec.js.map +1 -0
  441. package/lib/browser/components/code-editor.d.ts +8 -0
  442. package/lib/browser/components/code-editor.d.ts.map +1 -0
  443. package/lib/browser/components/code-editor.js +121 -0
  444. package/lib/browser/components/code-editor.js.map +1 -0
  445. package/lib/browser/components/composer-box.d.ts +74 -0
  446. package/lib/browser/components/composer-box.d.ts.map +1 -0
  447. package/lib/browser/components/composer-box.js +334 -0
  448. package/lib/browser/components/composer-box.js.map +1 -0
  449. package/lib/browser/components/composer-menu.d.ts +18 -0
  450. package/lib/browser/components/composer-menu.d.ts.map +1 -0
  451. package/lib/browser/components/composer-menu.js +54 -0
  452. package/lib/browser/components/composer-menu.js.map +1 -0
  453. package/lib/browser/components/composer.d.ts +38 -0
  454. package/lib/browser/components/composer.d.ts.map +1 -0
  455. package/lib/browser/components/composer.js +135 -0
  456. package/lib/browser/components/composer.js.map +1 -0
  457. package/lib/browser/components/composer.spec.d.ts +2 -0
  458. package/lib/browser/components/composer.spec.d.ts.map +1 -0
  459. package/lib/browser/components/composer.spec.js +129 -0
  460. package/lib/browser/components/composer.spec.js.map +1 -0
  461. package/lib/browser/components/connection-bar.d.ts +7 -0
  462. package/lib/browser/components/connection-bar.d.ts.map +1 -0
  463. package/lib/browser/components/connection-bar.js +109 -0
  464. package/lib/browser/components/connection-bar.js.map +1 -0
  465. package/lib/browser/components/context-menu.d.ts +13 -0
  466. package/lib/browser/components/context-menu.d.ts.map +1 -0
  467. package/lib/browser/components/context-menu.js +104 -0
  468. package/lib/browser/components/context-menu.js.map +1 -0
  469. package/lib/browser/components/conversation-scroll.d.ts +14 -0
  470. package/lib/browser/components/conversation-scroll.d.ts.map +1 -0
  471. package/lib/browser/components/conversation-scroll.js +158 -0
  472. package/lib/browser/components/conversation-scroll.js.map +1 -0
  473. package/lib/browser/components/dialog-view.d.ts +10 -0
  474. package/lib/browser/components/dialog-view.d.ts.map +1 -0
  475. package/lib/browser/components/dialog-view.js +77 -0
  476. package/lib/browser/components/dialog-view.js.map +1 -0
  477. package/lib/browser/components/diff-editor.d.ts +11 -0
  478. package/lib/browser/components/diff-editor.d.ts.map +1 -0
  479. package/lib/browser/components/diff-editor.js +137 -0
  480. package/lib/browser/components/diff-editor.js.map +1 -0
  481. package/lib/browser/components/diff-view.d.ts +5 -0
  482. package/lib/browser/components/diff-view.d.ts.map +1 -0
  483. package/lib/browser/components/diff-view.js +47 -0
  484. package/lib/browser/components/diff-view.js.map +1 -0
  485. package/lib/browser/components/dino.d.ts +9 -0
  486. package/lib/browser/components/dino.d.ts.map +1 -0
  487. package/lib/browser/components/dino.js +52 -0
  488. package/lib/browser/components/dino.js.map +1 -0
  489. package/lib/browser/components/editor-area.d.ts +29 -0
  490. package/lib/browser/components/editor-area.d.ts.map +1 -0
  491. package/lib/browser/components/editor-area.js +171 -0
  492. package/lib/browser/components/editor-area.js.map +1 -0
  493. package/lib/browser/components/folder-picker.d.ts +29 -0
  494. package/lib/browser/components/folder-picker.d.ts.map +1 -0
  495. package/lib/browser/components/folder-picker.js +144 -0
  496. package/lib/browser/components/folder-picker.js.map +1 -0
  497. package/lib/browser/components/folder-picker.spec.d.ts +2 -0
  498. package/lib/browser/components/folder-picker.spec.d.ts.map +1 -0
  499. package/lib/browser/components/folder-picker.spec.js +28 -0
  500. package/lib/browser/components/folder-picker.spec.js.map +1 -0
  501. package/lib/browser/components/fork-view.d.ts +15 -0
  502. package/lib/browser/components/fork-view.d.ts.map +1 -0
  503. package/lib/browser/components/fork-view.js +79 -0
  504. package/lib/browser/components/fork-view.js.map +1 -0
  505. package/lib/browser/components/hero-cards.d.ts +21 -0
  506. package/lib/browser/components/hero-cards.d.ts.map +1 -0
  507. package/lib/browser/components/hero-cards.js +146 -0
  508. package/lib/browser/components/hero-cards.js.map +1 -0
  509. package/lib/browser/components/icon.d.ts +30 -0
  510. package/lib/browser/components/icon.d.ts.map +1 -0
  511. package/lib/browser/components/icon.js +61 -0
  512. package/lib/browser/components/icon.js.map +1 -0
  513. package/lib/browser/components/link-dialog.d.ts +4 -0
  514. package/lib/browser/components/link-dialog.d.ts.map +1 -0
  515. package/lib/browser/components/link-dialog.js +81 -0
  516. package/lib/browser/components/link-dialog.js.map +1 -0
  517. package/lib/browser/components/link.d.ts +20 -0
  518. package/lib/browser/components/link.d.ts.map +1 -0
  519. package/lib/browser/components/link.js +94 -0
  520. package/lib/browser/components/link.js.map +1 -0
  521. package/lib/browser/components/manage-menu.d.ts +14 -0
  522. package/lib/browser/components/manage-menu.d.ts.map +1 -0
  523. package/lib/browser/components/manage-menu.js +132 -0
  524. package/lib/browser/components/manage-menu.js.map +1 -0
  525. package/lib/browser/components/markdown.d.ts +10 -0
  526. package/lib/browser/components/markdown.d.ts.map +1 -0
  527. package/lib/browser/components/markdown.js +135 -0
  528. package/lib/browser/components/markdown.js.map +1 -0
  529. package/lib/browser/components/markdown.spec.d.ts +2 -0
  530. package/lib/browser/components/markdown.spec.d.ts.map +1 -0
  531. package/lib/browser/components/markdown.spec.js +72 -0
  532. package/lib/browser/components/markdown.spec.js.map +1 -0
  533. package/lib/browser/components/math.d.ts +11 -0
  534. package/lib/browser/components/math.d.ts.map +1 -0
  535. package/lib/browser/components/math.js +57 -0
  536. package/lib/browser/components/math.js.map +1 -0
  537. package/lib/browser/components/media.d.ts +12 -0
  538. package/lib/browser/components/media.d.ts.map +1 -0
  539. package/lib/browser/components/media.js +113 -0
  540. package/lib/browser/components/media.js.map +1 -0
  541. package/lib/browser/components/mermaid-view.d.ts +11 -0
  542. package/lib/browser/components/mermaid-view.d.ts.map +1 -0
  543. package/lib/browser/components/mermaid-view.js +120 -0
  544. package/lib/browser/components/mermaid-view.js.map +1 -0
  545. package/lib/browser/components/message-actions.d.ts +13 -0
  546. package/lib/browser/components/message-actions.d.ts.map +1 -0
  547. package/lib/browser/components/message-actions.js +114 -0
  548. package/lib/browser/components/message-actions.js.map +1 -0
  549. package/lib/browser/components/message-footer.d.ts +30 -0
  550. package/lib/browser/components/message-footer.d.ts.map +1 -0
  551. package/lib/browser/components/message-footer.js +124 -0
  552. package/lib/browser/components/message-footer.js.map +1 -0
  553. package/lib/browser/components/message-list.d.ts +38 -0
  554. package/lib/browser/components/message-list.d.ts.map +1 -0
  555. package/lib/browser/components/message-list.js +257 -0
  556. package/lib/browser/components/message-list.js.map +1 -0
  557. package/lib/browser/components/message-list.spec.d.ts +2 -0
  558. package/lib/browser/components/message-list.spec.d.ts.map +1 -0
  559. package/lib/browser/components/message-list.spec.js +269 -0
  560. package/lib/browser/components/message-list.spec.js.map +1 -0
  561. package/lib/browser/components/notice-center.d.ts +4 -0
  562. package/lib/browser/components/notice-center.d.ts.map +1 -0
  563. package/lib/browser/components/notice-center.js +150 -0
  564. package/lib/browser/components/notice-center.js.map +1 -0
  565. package/lib/browser/components/relay-view.d.ts +6 -0
  566. package/lib/browser/components/relay-view.d.ts.map +1 -0
  567. package/lib/browser/components/relay-view.js +150 -0
  568. package/lib/browser/components/relay-view.js.map +1 -0
  569. package/lib/browser/components/run-status.d.ts +10 -0
  570. package/lib/browser/components/run-status.d.ts.map +1 -0
  571. package/lib/browser/components/run-status.js +90 -0
  572. package/lib/browser/components/run-status.js.map +1 -0
  573. package/lib/browser/components/session-settings.d.ts +38 -0
  574. package/lib/browser/components/session-settings.d.ts.map +1 -0
  575. package/lib/browser/components/session-settings.js +121 -0
  576. package/lib/browser/components/session-settings.js.map +1 -0
  577. package/lib/browser/components/session-settings.spec.d.ts +2 -0
  578. package/lib/browser/components/session-settings.spec.d.ts.map +1 -0
  579. package/lib/browser/components/session-settings.spec.js +47 -0
  580. package/lib/browser/components/session-settings.spec.js.map +1 -0
  581. package/lib/browser/components/session-view.d.ts +25 -0
  582. package/lib/browser/components/session-view.d.ts.map +1 -0
  583. package/lib/browser/components/session-view.js +120 -0
  584. package/lib/browser/components/session-view.js.map +1 -0
  585. package/lib/browser/components/settings-controls.d.ts +41 -0
  586. package/lib/browser/components/settings-controls.d.ts.map +1 -0
  587. package/lib/browser/components/settings-controls.js +68 -0
  588. package/lib/browser/components/settings-controls.js.map +1 -0
  589. package/lib/browser/components/settings-view.d.ts +23 -0
  590. package/lib/browser/components/settings-view.d.ts.map +1 -0
  591. package/lib/browser/components/settings-view.js +394 -0
  592. package/lib/browser/components/settings-view.js.map +1 -0
  593. package/lib/browser/components/split-pane.d.ts +25 -0
  594. package/lib/browser/components/split-pane.d.ts.map +1 -0
  595. package/lib/browser/components/split-pane.js +113 -0
  596. package/lib/browser/components/split-pane.js.map +1 -0
  597. package/lib/browser/components/ta-avatar.d.ts +14 -0
  598. package/lib/browser/components/ta-avatar.d.ts.map +1 -0
  599. package/lib/browser/components/ta-avatar.js +221 -0
  600. package/lib/browser/components/ta-avatar.js.map +1 -0
  601. package/lib/browser/components/ta-avatar.spec.d.ts +2 -0
  602. package/lib/browser/components/ta-avatar.spec.d.ts.map +1 -0
  603. package/lib/browser/components/ta-avatar.spec.js +60 -0
  604. package/lib/browser/components/ta-avatar.spec.js.map +1 -0
  605. package/lib/browser/components/tool-view.d.ts +19 -0
  606. package/lib/browser/components/tool-view.d.ts.map +1 -0
  607. package/lib/browser/components/tool-view.js +146 -0
  608. package/lib/browser/components/tool-view.js.map +1 -0
  609. package/lib/browser/components/trusted-domains.d.ts +4 -0
  610. package/lib/browser/components/trusted-domains.d.ts.map +1 -0
  611. package/lib/browser/components/trusted-domains.js +75 -0
  612. package/lib/browser/components/trusted-domains.js.map +1 -0
  613. package/lib/browser/components/web-composer.d.ts +15 -0
  614. package/lib/browser/components/web-composer.d.ts.map +1 -0
  615. package/lib/browser/components/web-composer.js +58 -0
  616. package/lib/browser/components/web-composer.js.map +1 -0
  617. package/lib/browser/components/web-dialog.d.ts +5 -0
  618. package/lib/browser/components/web-dialog.d.ts.map +1 -0
  619. package/lib/browser/components/web-dialog.js +58 -0
  620. package/lib/browser/components/web-dialog.js.map +1 -0
  621. package/lib/browser/components/workbench-toggle.d.ts +13 -0
  622. package/lib/browser/components/workbench-toggle.d.ts.map +1 -0
  623. package/lib/browser/components/workbench-toggle.js +54 -0
  624. package/lib/browser/components/workbench-toggle.js.map +1 -0
  625. package/lib/browser/components/workbench-toggle.spec.d.ts +2 -0
  626. package/lib/browser/components/workbench-toggle.spec.d.ts.map +1 -0
  627. package/lib/browser/components/workbench-toggle.spec.js +64 -0
  628. package/lib/browser/components/workbench-toggle.spec.js.map +1 -0
  629. package/lib/browser/components/workbench-view.d.ts +9 -0
  630. package/lib/browser/components/workbench-view.d.ts.map +1 -0
  631. package/lib/browser/components/workbench-view.js +99 -0
  632. package/lib/browser/components/workbench-view.js.map +1 -0
  633. package/lib/browser/components/working-directory.d.ts +6 -0
  634. package/lib/browser/components/working-directory.d.ts.map +1 -0
  635. package/lib/browser/components/working-directory.js +61 -0
  636. package/lib/browser/components/working-directory.js.map +1 -0
  637. package/lib/browser/editor/monaco-loader.d.ts +61 -0
  638. package/lib/browser/editor/monaco-loader.d.ts.map +1 -0
  639. package/lib/browser/editor/monaco-loader.js +138 -0
  640. package/lib/browser/editor/monaco-loader.js.map +1 -0
  641. package/lib/browser/editor/monaco-loader.spec.d.ts +2 -0
  642. package/lib/browser/editor/monaco-loader.spec.d.ts.map +1 -0
  643. package/lib/browser/editor/monaco-loader.spec.js +39 -0
  644. package/lib/browser/editor/monaco-loader.spec.js.map +1 -0
  645. package/lib/browser/editor/monaco.d.ts +46 -0
  646. package/lib/browser/editor/monaco.d.ts.map +1 -0
  647. package/lib/browser/editor/monaco.js +93 -0
  648. package/lib/browser/editor/monaco.js.map +1 -0
  649. package/lib/browser/extension/extension-view.d.ts +36 -0
  650. package/lib/browser/extension/extension-view.d.ts.map +1 -0
  651. package/lib/browser/extension/extension-view.js +91 -0
  652. package/lib/browser/extension/extension-view.js.map +1 -0
  653. package/lib/browser/extension/icons.d.ts +4 -0
  654. package/lib/browser/extension/icons.d.ts.map +1 -0
  655. package/lib/browser/extension/icons.js +85 -0
  656. package/lib/browser/extension/icons.js.map +1 -0
  657. package/lib/browser/extension/web-extension-api.d.ts +363 -0
  658. package/lib/browser/extension/web-extension-api.d.ts.map +1 -0
  659. package/lib/browser/extension/web-extension-api.js +3 -0
  660. package/lib/browser/extension/web-extension-api.js.map +1 -0
  661. package/lib/browser/extension/web-extension-protocol.d.ts +133 -0
  662. package/lib/browser/extension/web-extension-protocol.d.ts.map +1 -0
  663. package/lib/browser/extension/web-extension-protocol.js +13 -0
  664. package/lib/browser/extension/web-extension-protocol.js.map +1 -0
  665. package/lib/browser/extension/web-extensions.d.ts +119 -0
  666. package/lib/browser/extension/web-extensions.d.ts.map +1 -0
  667. package/lib/browser/extension/web-extensions.js +690 -0
  668. package/lib/browser/extension/web-extensions.js.map +1 -0
  669. package/lib/browser/extension/web-extensions.spec.d.ts +2 -0
  670. package/lib/browser/extension/web-extensions.spec.d.ts.map +1 -0
  671. package/lib/browser/extension/web-extensions.spec.js +617 -0
  672. package/lib/browser/extension/web-extensions.spec.js.map +1 -0
  673. package/lib/browser/hooks.d.ts +22 -0
  674. package/lib/browser/hooks.d.ts.map +1 -0
  675. package/lib/browser/hooks.js +109 -0
  676. package/lib/browser/hooks.js.map +1 -0
  677. package/lib/browser/i18n/locales.d.ts +436 -0
  678. package/lib/browser/i18n/locales.d.ts.map +1 -0
  679. package/lib/browser/i18n/locales.js +38 -0
  680. package/lib/browser/i18n/locales.js.map +1 -0
  681. package/lib/browser/i18n/messages.d.ts +428 -0
  682. package/lib/browser/i18n/messages.d.ts.map +1 -0
  683. package/lib/browser/i18n/messages.js +862 -0
  684. package/lib/browser/i18n/messages.js.map +1 -0
  685. package/lib/browser/i18n/use-t.d.ts +8 -0
  686. package/lib/browser/i18n/use-t.d.ts.map +1 -0
  687. package/lib/browser/i18n/use-t.js +54 -0
  688. package/lib/browser/i18n/use-t.js.map +1 -0
  689. package/lib/browser/index.d.ts +53 -0
  690. package/lib/browser/index.d.ts.map +1 -0
  691. package/lib/browser/index.js +69 -0
  692. package/lib/browser/index.js.map +1 -0
  693. package/lib/browser/links/links-protocol.d.ts +36 -0
  694. package/lib/browser/links/links-protocol.d.ts.map +1 -0
  695. package/lib/browser/links/links-protocol.js +5 -0
  696. package/lib/browser/links/links-protocol.js.map +1 -0
  697. package/lib/browser/links/links.d.ts +33 -0
  698. package/lib/browser/links/links.d.ts.map +1 -0
  699. package/lib/browser/links/links.js +144 -0
  700. package/lib/browser/links/links.js.map +1 -0
  701. package/lib/browser/links/links.spec.d.ts +2 -0
  702. package/lib/browser/links/links.spec.d.ts.map +1 -0
  703. package/lib/browser/links/links.spec.js +123 -0
  704. package/lib/browser/links/links.spec.js.map +1 -0
  705. package/lib/browser/markdown/hooks.d.ts +7 -0
  706. package/lib/browser/markdown/hooks.d.ts.map +1 -0
  707. package/lib/browser/markdown/hooks.js +58 -0
  708. package/lib/browser/markdown/hooks.js.map +1 -0
  709. package/lib/browser/markdown/lazy.d.ts +22 -0
  710. package/lib/browser/markdown/lazy.d.ts.map +1 -0
  711. package/lib/browser/markdown/lazy.js +44 -0
  712. package/lib/browser/markdown/lazy.js.map +1 -0
  713. package/lib/browser/markdown/lazy.spec.d.ts +2 -0
  714. package/lib/browser/markdown/lazy.spec.d.ts.map +1 -0
  715. package/lib/browser/markdown/lazy.spec.js +35 -0
  716. package/lib/browser/markdown/lazy.spec.js.map +1 -0
  717. package/lib/browser/markdown/math.d.ts +19 -0
  718. package/lib/browser/markdown/math.d.ts.map +1 -0
  719. package/lib/browser/markdown/math.js +33 -0
  720. package/lib/browser/markdown/math.js.map +1 -0
  721. package/lib/browser/markdown/math.spec.d.ts +2 -0
  722. package/lib/browser/markdown/math.spec.d.ts.map +1 -0
  723. package/lib/browser/markdown/math.spec.js +24 -0
  724. package/lib/browser/markdown/math.spec.js.map +1 -0
  725. package/lib/browser/markdown/mermaid.d.ts +21 -0
  726. package/lib/browser/markdown/mermaid.d.ts.map +1 -0
  727. package/lib/browser/markdown/mermaid.js +87 -0
  728. package/lib/browser/markdown/mermaid.js.map +1 -0
  729. package/lib/browser/markdown/mermaid.spec.d.ts +2 -0
  730. package/lib/browser/markdown/mermaid.spec.d.ts.map +1 -0
  731. package/lib/browser/markdown/mermaid.spec.js +21 -0
  732. package/lib/browser/markdown/mermaid.spec.js.map +1 -0
  733. package/lib/browser/module.d.ts +5 -0
  734. package/lib/browser/module.d.ts.map +1 -0
  735. package/lib/browser/module.js +8 -0
  736. package/lib/browser/module.js.map +1 -0
  737. package/lib/browser/notices/notices-protocol.d.ts +83 -0
  738. package/lib/browser/notices/notices-protocol.d.ts.map +1 -0
  739. package/lib/browser/notices/notices-protocol.js +5 -0
  740. package/lib/browser/notices/notices-protocol.js.map +1 -0
  741. package/lib/browser/notices/notices.d.ts +48 -0
  742. package/lib/browser/notices/notices.d.ts.map +1 -0
  743. package/lib/browser/notices/notices.js +165 -0
  744. package/lib/browser/notices/notices.js.map +1 -0
  745. package/lib/browser/notices/notices.spec.d.ts +2 -0
  746. package/lib/browser/notices/notices.spec.d.ts.map +1 -0
  747. package/lib/browser/notices/notices.spec.js +96 -0
  748. package/lib/browser/notices/notices.spec.js.map +1 -0
  749. package/lib/browser/pwa/pwa-protocol.d.ts +21 -0
  750. package/lib/browser/pwa/pwa-protocol.d.ts.map +1 -0
  751. package/lib/browser/pwa/pwa-protocol.js +5 -0
  752. package/lib/browser/pwa/pwa-protocol.js.map +1 -0
  753. package/lib/browser/pwa/pwa.d.ts +40 -0
  754. package/lib/browser/pwa/pwa.d.ts.map +1 -0
  755. package/lib/browser/pwa/pwa.js +123 -0
  756. package/lib/browser/pwa/pwa.js.map +1 -0
  757. package/lib/browser/pwa/pwa.spec.d.ts +2 -0
  758. package/lib/browser/pwa/pwa.spec.d.ts.map +1 -0
  759. package/lib/browser/pwa/pwa.spec.js +134 -0
  760. package/lib/browser/pwa/pwa.spec.js.map +1 -0
  761. package/lib/browser/settings/agent-settings.d.ts +34 -0
  762. package/lib/browser/settings/agent-settings.d.ts.map +1 -0
  763. package/lib/browser/settings/agent-settings.js +88 -0
  764. package/lib/browser/settings/agent-settings.js.map +1 -0
  765. package/lib/browser/settings/agent-settings.spec.d.ts +2 -0
  766. package/lib/browser/settings/agent-settings.spec.d.ts.map +1 -0
  767. package/lib/browser/settings/agent-settings.spec.js +53 -0
  768. package/lib/browser/settings/agent-settings.spec.js.map +1 -0
  769. package/lib/browser/settings/settings-protocol.d.ts +45 -0
  770. package/lib/browser/settings/settings-protocol.d.ts.map +1 -0
  771. package/lib/browser/settings/settings-protocol.js +38 -0
  772. package/lib/browser/settings/settings-protocol.js.map +1 -0
  773. package/lib/browser/settings/settings.d.ts +32 -0
  774. package/lib/browser/settings/settings.d.ts.map +1 -0
  775. package/lib/browser/settings/settings.js +105 -0
  776. package/lib/browser/settings/settings.js.map +1 -0
  777. package/lib/browser/settings/settings.spec.d.ts +2 -0
  778. package/lib/browser/settings/settings.spec.d.ts.map +1 -0
  779. package/lib/browser/settings/settings.spec.js +32 -0
  780. package/lib/browser/settings/settings.spec.js.map +1 -0
  781. package/lib/browser/state/state-protocol.d.ts +49 -0
  782. package/lib/browser/state/state-protocol.d.ts.map +1 -0
  783. package/lib/browser/state/state-protocol.js +35 -0
  784. package/lib/browser/state/state-protocol.js.map +1 -0
  785. package/lib/browser/state/state.d.ts +40 -0
  786. package/lib/browser/state/state.d.ts.map +1 -0
  787. package/lib/browser/state/state.js +213 -0
  788. package/lib/browser/state/state.js.map +1 -0
  789. package/lib/browser/state/state.spec.d.ts +2 -0
  790. package/lib/browser/state/state.spec.d.ts.map +1 -0
  791. package/lib/browser/state/state.spec.js +201 -0
  792. package/lib/browser/state/state.spec.js.map +1 -0
  793. package/lib/browser/style/base.d.ts +3 -0
  794. package/lib/browser/style/base.d.ts.map +1 -0
  795. package/lib/browser/style/base.js +143 -0
  796. package/lib/browser/style/base.js.map +1 -0
  797. package/lib/browser/style/conversation.d.ts +3 -0
  798. package/lib/browser/style/conversation.d.ts.map +1 -0
  799. package/lib/browser/style/conversation.js +204 -0
  800. package/lib/browser/style/conversation.js.map +1 -0
  801. package/lib/browser/style/layout.d.ts +3 -0
  802. package/lib/browser/style/layout.d.ts.map +1 -0
  803. package/lib/browser/style/layout.js +374 -0
  804. package/lib/browser/style/layout.js.map +1 -0
  805. package/lib/browser/style/pages.d.ts +3 -0
  806. package/lib/browser/style/pages.d.ts.map +1 -0
  807. package/lib/browser/style/pages.js +78 -0
  808. package/lib/browser/style/pages.js.map +1 -0
  809. package/lib/browser/style/shell.d.ts +3 -0
  810. package/lib/browser/style/shell.d.ts.map +1 -0
  811. package/lib/browser/style/shell.js +239 -0
  812. package/lib/browser/style/shell.js.map +1 -0
  813. package/lib/browser/style.d.ts +6 -0
  814. package/lib/browser/style.d.ts.map +1 -0
  815. package/lib/browser/style.js +14 -0
  816. package/lib/browser/style.js.map +1 -0
  817. package/lib/browser/util/composer.d.ts +86 -0
  818. package/lib/browser/util/composer.d.ts.map +1 -0
  819. package/lib/browser/util/composer.js +124 -0
  820. package/lib/browser/util/composer.js.map +1 -0
  821. package/lib/browser/util/composer.spec.d.ts +2 -0
  822. package/lib/browser/util/composer.spec.d.ts.map +1 -0
  823. package/lib/browser/util/composer.spec.js +66 -0
  824. package/lib/browser/util/composer.spec.js.map +1 -0
  825. package/lib/browser/util/diff.d.ts +18 -0
  826. package/lib/browser/util/diff.d.ts.map +1 -0
  827. package/lib/browser/util/diff.js +32 -0
  828. package/lib/browser/util/diff.js.map +1 -0
  829. package/lib/browser/util/diff.spec.d.ts +2 -0
  830. package/lib/browser/util/diff.spec.d.ts.map +1 -0
  831. package/lib/browser/util/diff.spec.js +21 -0
  832. package/lib/browser/util/diff.spec.js.map +1 -0
  833. package/lib/browser/util/frame.d.ts +33 -0
  834. package/lib/browser/util/frame.d.ts.map +1 -0
  835. package/lib/browser/util/frame.js +50 -0
  836. package/lib/browser/util/frame.js.map +1 -0
  837. package/lib/browser/util/frame.spec.d.ts +2 -0
  838. package/lib/browser/util/frame.spec.d.ts.map +1 -0
  839. package/lib/browser/util/frame.spec.js +60 -0
  840. package/lib/browser/util/frame.spec.js.map +1 -0
  841. package/lib/browser/util/layout.d.ts +27 -0
  842. package/lib/browser/util/layout.d.ts.map +1 -0
  843. package/lib/browser/util/layout.js +57 -0
  844. package/lib/browser/util/layout.js.map +1 -0
  845. package/lib/browser/util/layout.spec.d.ts +2 -0
  846. package/lib/browser/util/layout.spec.d.ts.map +1 -0
  847. package/lib/browser/util/layout.spec.js +35 -0
  848. package/lib/browser/util/layout.spec.js.map +1 -0
  849. package/lib/browser/util/link.d.ts +54 -0
  850. package/lib/browser/util/link.d.ts.map +1 -0
  851. package/lib/browser/util/link.js +232 -0
  852. package/lib/browser/util/link.js.map +1 -0
  853. package/lib/browser/util/link.spec.d.ts +2 -0
  854. package/lib/browser/util/link.spec.d.ts.map +1 -0
  855. package/lib/browser/util/link.spec.js +101 -0
  856. package/lib/browser/util/link.spec.js.map +1 -0
  857. package/lib/browser/util/markdown.d.ts +87 -0
  858. package/lib/browser/util/markdown.d.ts.map +1 -0
  859. package/lib/browser/util/markdown.js +333 -0
  860. package/lib/browser/util/markdown.js.map +1 -0
  861. package/lib/browser/util/markdown.spec.d.ts +2 -0
  862. package/lib/browser/util/markdown.spec.d.ts.map +1 -0
  863. package/lib/browser/util/markdown.spec.js +124 -0
  864. package/lib/browser/util/markdown.spec.js.map +1 -0
  865. package/lib/browser/util/message.d.ts +75 -0
  866. package/lib/browser/util/message.d.ts.map +1 -0
  867. package/lib/browser/util/message.js +146 -0
  868. package/lib/browser/util/message.js.map +1 -0
  869. package/lib/browser/util/message.spec.d.ts +2 -0
  870. package/lib/browser/util/message.spec.d.ts.map +1 -0
  871. package/lib/browser/util/message.spec.js +59 -0
  872. package/lib/browser/util/message.spec.js.map +1 -0
  873. package/lib/browser/util/process.d.ts +74 -0
  874. package/lib/browser/util/process.d.ts.map +1 -0
  875. package/lib/browser/util/process.js +138 -0
  876. package/lib/browser/util/process.js.map +1 -0
  877. package/lib/browser/util/process.spec.d.ts +2 -0
  878. package/lib/browser/util/process.spec.d.ts.map +1 -0
  879. package/lib/browser/util/process.spec.js +106 -0
  880. package/lib/browser/util/process.spec.js.map +1 -0
  881. package/lib/browser/util/progress.d.ts +51 -0
  882. package/lib/browser/util/progress.d.ts.map +1 -0
  883. package/lib/browser/util/progress.js +146 -0
  884. package/lib/browser/util/progress.js.map +1 -0
  885. package/lib/browser/util/progress.spec.d.ts +2 -0
  886. package/lib/browser/util/progress.spec.d.ts.map +1 -0
  887. package/lib/browser/util/progress.spec.js +77 -0
  888. package/lib/browser/util/progress.spec.js.map +1 -0
  889. package/lib/browser/util/qr-code.d.ts +38 -0
  890. package/lib/browser/util/qr-code.d.ts.map +1 -0
  891. package/lib/browser/util/qr-code.js +353 -0
  892. package/lib/browser/util/qr-code.js.map +1 -0
  893. package/lib/browser/util/qr-code.spec.d.ts +2 -0
  894. package/lib/browser/util/qr-code.spec.d.ts.map +1 -0
  895. package/lib/browser/util/qr-code.spec.js +48 -0
  896. package/lib/browser/util/qr-code.spec.js.map +1 -0
  897. package/lib/browser/util/tool.d.ts +42 -0
  898. package/lib/browser/util/tool.d.ts.map +1 -0
  899. package/lib/browser/util/tool.js +154 -0
  900. package/lib/browser/util/tool.js.map +1 -0
  901. package/lib/browser/util/tool.spec.d.ts +2 -0
  902. package/lib/browser/util/tool.spec.d.ts.map +1 -0
  903. package/lib/browser/util/tool.spec.js +73 -0
  904. package/lib/browser/util/tool.spec.js.map +1 -0
  905. package/lib/browser/view.d.ts +4 -0
  906. package/lib/browser/view.d.ts.map +1 -0
  907. package/lib/browser/view.js +19 -0
  908. package/lib/browser/view.js.map +1 -0
  909. package/lib/browser/workbench-protocol.d.ts +51 -0
  910. package/lib/browser/workbench-protocol.d.ts.map +1 -0
  911. package/lib/browser/workbench-protocol.js +5 -0
  912. package/lib/browser/workbench-protocol.js.map +1 -0
  913. package/lib/browser/workbench.d.ts +64 -0
  914. package/lib/browser/workbench.d.ts.map +1 -0
  915. package/lib/browser/workbench.js +281 -0
  916. package/lib/browser/workbench.js.map +1 -0
  917. package/lib/browser/workbench.spec.d.ts +2 -0
  918. package/lib/browser/workbench.spec.d.ts.map +1 -0
  919. package/lib/browser/workbench.spec.js +34 -0
  920. package/lib/browser/workbench.spec.js.map +1 -0
  921. package/package.json +81 -4
  922. package/src/browser/assistant/assistant-export.spec.ts +30 -0
  923. package/src/browser/assistant/assistant-export.ts +41 -0
  924. package/src/browser/assistant/assistant-extension.spec.ts +122 -0
  925. package/src/browser/assistant/assistant-extension.ts +137 -0
  926. package/src/browser/assistant/assistant-hooks.ts +63 -0
  927. package/src/browser/assistant/assistant-protocol.ts +55 -0
  928. package/src/browser/assistant/assistant-tasks.tsx +194 -0
  929. package/src/browser/assistant/assistant-view.tsx +453 -0
  930. package/src/browser/assistant/assistant.spec.ts +80 -0
  931. package/src/browser/assistant/assistant.ts +315 -0
  932. package/src/browser/assistant/voice.spec.ts +8 -0
  933. package/src/browser/assistant/voice.ts +87 -0
  934. package/src/browser/avatar/dino-avatar.spec.ts +151 -0
  935. package/src/browser/avatar/dino-avatar.ts +541 -0
  936. package/src/browser/avatar/dino-motion.ts +313 -0
  937. package/src/browser/chat/chat-protocol.ts +47 -0
  938. package/src/browser/chat/chat-view.tsx +155 -0
  939. package/src/browser/chat/chat.spec.ts +194 -0
  940. package/src/browser/chat/chat.ts +335 -0
  941. package/src/browser/components/account-menu.tsx +114 -0
  942. package/src/browser/components/agent-settings-view.tsx +196 -0
  943. package/src/browser/components/app-view.tsx +553 -0
  944. package/src/browser/components/auth-pictures.tsx +55 -0
  945. package/src/browser/components/auth-view.tsx +421 -0
  946. package/src/browser/components/callout.tsx +33 -0
  947. package/src/browser/components/chat-list.spec.ts +66 -0
  948. package/src/browser/components/chat-list.tsx +276 -0
  949. package/src/browser/components/code-editor.tsx +114 -0
  950. package/src/browser/components/composer-box.tsx +475 -0
  951. package/src/browser/components/composer-menu.tsx +49 -0
  952. package/src/browser/components/composer.spec.tsx +130 -0
  953. package/src/browser/components/composer.tsx +170 -0
  954. package/src/browser/components/connection-bar.tsx +85 -0
  955. package/src/browser/components/context-menu.tsx +100 -0
  956. package/src/browser/components/conversation-scroll.ts +126 -0
  957. package/src/browser/components/dialog-view.tsx +82 -0
  958. package/src/browser/components/diff-editor.tsx +131 -0
  959. package/src/browser/components/diff-view.tsx +19 -0
  960. package/src/browser/components/dino.tsx +19 -0
  961. package/src/browser/components/editor-area.tsx +234 -0
  962. package/src/browser/components/folder-picker.spec.ts +30 -0
  963. package/src/browser/components/folder-picker.tsx +177 -0
  964. package/src/browser/components/fork-view.tsx +65 -0
  965. package/src/browser/components/hero-cards.tsx +189 -0
  966. package/src/browser/components/icon.tsx +62 -0
  967. package/src/browser/components/link-dialog.tsx +66 -0
  968. package/src/browser/components/link.tsx +77 -0
  969. package/src/browser/components/manage-menu.tsx +165 -0
  970. package/src/browser/components/markdown.spec.tsx +46 -0
  971. package/src/browser/components/markdown.tsx +155 -0
  972. package/src/browser/components/math.tsx +21 -0
  973. package/src/browser/components/media.tsx +91 -0
  974. package/src/browser/components/mermaid-view.tsx +105 -0
  975. package/src/browser/components/message-actions.tsx +89 -0
  976. package/src/browser/components/message-footer.tsx +128 -0
  977. package/src/browser/components/message-list.spec.tsx +321 -0
  978. package/src/browser/components/message-list.tsx +328 -0
  979. package/src/browser/components/notice-center.tsx +187 -0
  980. package/src/browser/components/relay-view.tsx +146 -0
  981. package/src/browser/components/run-status.tsx +70 -0
  982. package/src/browser/components/session-settings.spec.tsx +49 -0
  983. package/src/browser/components/session-settings.tsx +119 -0
  984. package/src/browser/components/session-view.tsx +153 -0
  985. package/src/browser/components/settings-controls.tsx +94 -0
  986. package/src/browser/components/settings-view.tsx +573 -0
  987. package/src/browser/components/split-pane.tsx +108 -0
  988. package/src/browser/components/ta-avatar.spec.tsx +27 -0
  989. package/src/browser/components/ta-avatar.tsx +251 -0
  990. package/src/browser/components/tool-view.tsx +186 -0
  991. package/src/browser/components/trusted-domains.tsx +60 -0
  992. package/src/browser/components/web-composer.tsx +47 -0
  993. package/src/browser/components/web-dialog.tsx +29 -0
  994. package/src/browser/components/workbench-toggle.spec.tsx +35 -0
  995. package/src/browser/components/workbench-toggle.tsx +24 -0
  996. package/src/browser/components/workbench-view.tsx +77 -0
  997. package/src/browser/components/working-directory.tsx +22 -0
  998. package/src/browser/editor/monaco-loader.spec.ts +39 -0
  999. package/src/browser/editor/monaco-loader.ts +139 -0
  1000. package/src/browser/editor/monaco.ts +55 -0
  1001. package/src/browser/editor/worker-modules.d.ts +5 -0
  1002. package/src/browser/extension/extension-view.tsx +78 -0
  1003. package/src/browser/extension/icons.ts +161 -0
  1004. package/src/browser/extension/web-extension-api.ts +346 -0
  1005. package/src/browser/extension/web-extension-protocol.ts +154 -0
  1006. package/src/browser/extension/web-extensions.spec.ts +597 -0
  1007. package/src/browser/extension/web-extensions.ts +717 -0
  1008. package/src/browser/hooks.ts +102 -0
  1009. package/src/browser/i18n/locales.ts +20 -0
  1010. package/src/browser/i18n/messages.ts +864 -0
  1011. package/src/browser/i18n/use-t.ts +21 -0
  1012. package/src/browser/index.ts +52 -0
  1013. package/src/browser/links/links-protocol.ts +41 -0
  1014. package/src/browser/links/links.spec.ts +132 -0
  1015. package/src/browser/links/links.ts +127 -0
  1016. package/src/browser/markdown/hooks.ts +32 -0
  1017. package/src/browser/markdown/lazy.spec.ts +34 -0
  1018. package/src/browser/markdown/lazy.ts +46 -0
  1019. package/src/browser/markdown/math.spec.ts +20 -0
  1020. package/src/browser/markdown/math.ts +33 -0
  1021. package/src/browser/markdown/mermaid.spec.ts +21 -0
  1022. package/src/browser/markdown/mermaid.ts +89 -0
  1023. package/src/browser/markdown/style-modules.d.ts +2 -0
  1024. package/src/browser/module.ts +6 -0
  1025. package/src/browser/notices/notices-protocol.ts +92 -0
  1026. package/src/browser/notices/notices.spec.ts +99 -0
  1027. package/src/browser/notices/notices.ts +173 -0
  1028. package/src/browser/public/icons/apple-touch-icon.png +0 -0
  1029. package/src/browser/public/icons/icon-192.png +0 -0
  1030. package/src/browser/public/icons/icon-512.png +0 -0
  1031. package/src/browser/public/icons/icon.svg +1 -0
  1032. package/src/browser/public/icons/maskable-512.png +0 -0
  1033. package/src/browser/public/manifest.webmanifest +40 -0
  1034. package/src/browser/public/sw.js +78 -0
  1035. package/src/browser/pwa/pwa-protocol.ts +22 -0
  1036. package/src/browser/pwa/pwa.spec.ts +143 -0
  1037. package/src/browser/pwa/pwa.ts +123 -0
  1038. package/src/browser/settings/agent-settings.spec.ts +56 -0
  1039. package/src/browser/settings/agent-settings.ts +96 -0
  1040. package/src/browser/settings/settings-protocol.ts +75 -0
  1041. package/src/browser/settings/settings.spec.ts +31 -0
  1042. package/src/browser/settings/settings.ts +89 -0
  1043. package/src/browser/state/state-protocol.ts +71 -0
  1044. package/src/browser/state/state.spec.ts +214 -0
  1045. package/src/browser/state/state.ts +217 -0
  1046. package/src/browser/style/base.ts +139 -0
  1047. package/src/browser/style/conversation.ts +200 -0
  1048. package/src/browser/style/layout.ts +370 -0
  1049. package/src/browser/style/pages.ts +74 -0
  1050. package/src/browser/style/shell.ts +235 -0
  1051. package/src/browser/style.ts +11 -0
  1052. package/src/browser/util/composer.spec.ts +71 -0
  1053. package/src/browser/util/composer.ts +157 -0
  1054. package/src/browser/util/diff.spec.ts +20 -0
  1055. package/src/browser/util/diff.ts +33 -0
  1056. package/src/browser/util/frame.spec.ts +62 -0
  1057. package/src/browser/util/frame.ts +54 -0
  1058. package/src/browser/util/layout.spec.ts +37 -0
  1059. package/src/browser/util/layout.ts +71 -0
  1060. package/src/browser/util/link.spec.ts +104 -0
  1061. package/src/browser/util/link.ts +237 -0
  1062. package/src/browser/util/markdown.spec.ts +133 -0
  1063. package/src/browser/util/markdown.ts +347 -0
  1064. package/src/browser/util/message.spec.ts +63 -0
  1065. package/src/browser/util/message.ts +188 -0
  1066. package/src/browser/util/process.spec.ts +133 -0
  1067. package/src/browser/util/process.ts +166 -0
  1068. package/src/browser/util/progress.spec.ts +86 -0
  1069. package/src/browser/util/progress.ts +170 -0
  1070. package/src/browser/util/qr-code.spec.ts +49 -0
  1071. package/src/browser/util/qr-code.ts +371 -0
  1072. package/src/browser/util/tool.spec.ts +78 -0
  1073. package/src/browser/util/tool.ts +190 -0
  1074. package/src/browser/view.ts +6 -0
  1075. package/src/browser/workbench-protocol.ts +66 -0
  1076. package/src/browser/workbench.spec.ts +37 -0
  1077. package/src/browser/workbench.ts +297 -0
@@ -0,0 +1,146 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MessageUtil = void 0;
4
+ const SCRIPT_HEADER = /^Script (completed|failed)\nWall time [\d.]+ seconds\nOutput:\n/;
5
+ var MessageUtil;
6
+ (function (MessageUtil) {
7
+ function blocks(message) {
8
+ const content = message.content;
9
+ if (typeof content === 'string') {
10
+ return [{ type: 'text', text: content }];
11
+ }
12
+ return Array.isArray(content) ? content : [];
13
+ }
14
+ MessageUtil.blocks = blocks;
15
+ function text(content) {
16
+ if (typeof content === 'string') {
17
+ return content;
18
+ }
19
+ return (content !== null && content !== void 0 ? content : [])
20
+ .filter(block => block.type === 'text')
21
+ .map(block => { var _a; return (_a = block.text) !== null && _a !== void 0 ? _a : ''; })
22
+ .join('\n');
23
+ }
24
+ MessageUtil.text = text;
25
+ /** The tool result messages of a conversation by tool call id: shown with their calls. */
26
+ function results(messages) {
27
+ const results = new Map();
28
+ for (const message of messages) {
29
+ const { role, toolCallId } = message;
30
+ if (role === 'toolResult' && toolCallId) {
31
+ results.set(toolCallId, message);
32
+ }
33
+ }
34
+ return results;
35
+ }
36
+ MessageUtil.results = results;
37
+ /** The live run wins over the message: it has the partial results and the diffs of nested calls. */
38
+ function output(run, message) {
39
+ const live = run === null || run === void 0 ? void 0 : run.result;
40
+ if (live && (live.content || live.details)) {
41
+ return { ...live, isError: (run === null || run === void 0 ? void 0 : run.status) === 'error' };
42
+ }
43
+ return message;
44
+ }
45
+ MessageUtil.output = output;
46
+ function status(run, output) {
47
+ if (run) {
48
+ return run.status;
49
+ }
50
+ if (!output) {
51
+ return 'running';
52
+ }
53
+ return output.isError ? 'error' : 'done';
54
+ }
55
+ MessageUtil.status = status;
56
+ /**
57
+ * The id of the entry of the session that holds a message: pi's messages carry no id, but each the
58
+ * time it was made, and entries of other branches have other times.
59
+ */
60
+ function entryId(entries, message) {
61
+ var _a, _b;
62
+ const { role, timestamp } = message;
63
+ if (timestamp === undefined) {
64
+ return undefined;
65
+ }
66
+ for (let index = entries.length - 1; index >= 0; index--) {
67
+ const entry = entries[index];
68
+ if (entry.type === 'message' && ((_a = entry.message) === null || _a === void 0 ? void 0 : _a.role) === role && ((_b = entry.message) === null || _b === void 0 ? void 0 : _b.timestamp) === timestamp) {
69
+ return entry.id;
70
+ }
71
+ }
72
+ return undefined;
73
+ }
74
+ MessageUtil.entryId = entryId;
75
+ function usage(messages) {
76
+ var _a;
77
+ var _b, _c, _d, _e, _f;
78
+ const total = { input: 0, output: 0, cost: 0 };
79
+ for (const message of messages) {
80
+ const usage = message.role === 'assistant' ? message.usage : undefined;
81
+ if (usage) {
82
+ total.input += ((_b = usage.input) !== null && _b !== void 0 ? _b : 0) + ((_c = usage.cacheRead) !== null && _c !== void 0 ? _c : 0) + ((_d = usage.cacheWrite) !== null && _d !== void 0 ? _d : 0);
83
+ total.output += (_e = usage.output) !== null && _e !== void 0 ? _e : 0;
84
+ total.cost += (_f = (_a = usage.cost) === null || _a === void 0 ? void 0 : _a.total) !== null && _f !== void 0 ? _f : 0;
85
+ }
86
+ }
87
+ return total;
88
+ }
89
+ MessageUtil.usage = usage;
90
+ /** $0.0042 below a cent, else $1.23: enough to tell turns apart. */
91
+ function cost(dollars) {
92
+ return `$${dollars < 0.01 ? dollars.toFixed(4) : dollars.toFixed(2)}`;
93
+ }
94
+ MessageUtil.cost = cost;
95
+ /**
96
+ * When a message came, as short as it can be said: the time today, yesterday and the day before with
97
+ * their word, else the date (with the year only when it is not this one).
98
+ */
99
+ function when(timestamp, now = Date.now()) {
100
+ const date = new Date(timestamp);
101
+ const pad = (value) => String(value).padStart(2, '0');
102
+ const time = `${pad(date.getHours())}:${pad(date.getMinutes())}`;
103
+ const midnight = (value) => new Date(value.getFullYear(), value.getMonth(), value.getDate()).getTime();
104
+ const days = Math.round((midnight(new Date(now)) - midnight(date)) / 86400000);
105
+ if (days === 0) {
106
+ return { day: 'today', time };
107
+ }
108
+ if (days === 1 || days === 2) {
109
+ return { day: days === 1 ? 'yesterday' : 'dayBefore', time };
110
+ }
111
+ const day = `${pad(date.getMonth() + 1)}-${pad(date.getDate())}`;
112
+ return { day: 'date', date: date.getFullYear() === new Date(now).getFullYear() ? day : `${date.getFullYear()}-${day}`, time };
113
+ }
114
+ MessageUtil.when = when;
115
+ /** The output of a codemode script without the header the model needs and a person does not. */
116
+ function scriptOutput(output) {
117
+ return output.replace(SCRIPT_HEADER, '');
118
+ }
119
+ MessageUtil.scriptOutput = scriptOutput;
120
+ function duration(ms) {
121
+ if (ms === undefined) {
122
+ return '';
123
+ }
124
+ return ms < 1000 ? `${Math.round(ms)}ms` : `${(ms / 1000).toFixed(1)}s`;
125
+ }
126
+ MessageUtil.duration = duration;
127
+ /** The last `count` lines, and how many were left out. */
128
+ function tail(text, count) {
129
+ const lines = text.split('\n');
130
+ return lines.length <= count ? { text, hidden: 0 } : { text: lines.slice(-count).join('\n'), hidden: lines.length - count };
131
+ }
132
+ MessageUtil.tail = tail;
133
+ /** The last two parts of a path: enough to recognize a project. */
134
+ function shortPath(path) {
135
+ const parts = path.split(/[\\/]/).filter(Boolean);
136
+ return parts.length > 2 ? `…/${parts.slice(-2).join('/')}` : path;
137
+ }
138
+ MessageUtil.shortPath = shortPath;
139
+ function basename(path) {
140
+ var _a;
141
+ const parts = path.split(/[\\/]/).filter(Boolean);
142
+ return (_a = parts[parts.length - 1]) !== null && _a !== void 0 ? _a : path;
143
+ }
144
+ MessageUtil.basename = basename;
145
+ })(MessageUtil || (exports.MessageUtil = MessageUtil = {}));
146
+ //# sourceMappingURL=message.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.js","sourceRoot":"","sources":["../../../src/browser/util/message.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=message.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.spec.d.ts","sourceRoot":"","sources":["../../../src/browser/util/message.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bun_test_1 = require("bun:test");
4
+ const message_1 = require("./message");
5
+ (0, bun_test_1.describe)('MessageUtil', () => {
6
+ (0, bun_test_1.it)('pairs tool results with their calls', () => {
7
+ const result = { role: 'toolResult', toolCallId: 'c1', content: [{ type: 'text', text: 'ok' }] };
8
+ (0, bun_test_1.expect)(message_1.MessageUtil.results([result]).get('c1')).toBe(result);
9
+ });
10
+ (0, bun_test_1.it)('prefers the live run, which has the diffs, over the message', () => {
11
+ var _a;
12
+ const message = { content: [{ type: 'text', text: 'saved' }] };
13
+ const run = { toolName: 'edit', args: {}, status: 'done', result: { content: [], details: { diff: '+1 a' } } };
14
+ (0, bun_test_1.expect)((_a = message_1.MessageUtil.output(run, message)) === null || _a === void 0 ? void 0 : _a.details).toEqual({ diff: '+1 a' });
15
+ (0, bun_test_1.expect)(message_1.MessageUtil.output(undefined, message)).toBe(message);
16
+ (0, bun_test_1.expect)(message_1.MessageUtil.status(undefined, undefined)).toBe('running');
17
+ (0, bun_test_1.expect)(message_1.MessageUtil.status(undefined, { isError: true })).toBe('error');
18
+ });
19
+ (0, bun_test_1.it)('drops the header of a codemode result', () => {
20
+ (0, bun_test_1.expect)(message_1.MessageUtil.scriptOutput('Script completed\nWall time 0.1 seconds\nOutput:\nhello')).toBe('hello');
21
+ });
22
+ (0, bun_test_1.it)('keeps the last lines of long output', () => {
23
+ (0, bun_test_1.expect)(message_1.MessageUtil.tail('a\nb\nc', 2)).toEqual({ text: 'b\nc', hidden: 1 });
24
+ (0, bun_test_1.expect)(message_1.MessageUtil.basename('/home/me/project/')).toBe('project');
25
+ (0, bun_test_1.expect)(message_1.MessageUtil.shortPath('/home/me/work/project')).toBe('…/work/project');
26
+ (0, bun_test_1.expect)(message_1.MessageUtil.shortPath('/srv')).toBe('/srv');
27
+ });
28
+ (0, bun_test_1.it)('finds the entry of a message by its role and time, the newest first', () => {
29
+ const entries = [
30
+ { id: 'a', type: 'message', message: { role: 'user', timestamp: 1 } },
31
+ { id: 'b', type: 'model_change' },
32
+ { id: 'c', type: 'message', message: { role: 'assistant', timestamp: 1 } },
33
+ ];
34
+ (0, bun_test_1.expect)(message_1.MessageUtil.entryId(entries, { role: 'assistant', timestamp: 1 })).toBe('c');
35
+ (0, bun_test_1.expect)(message_1.MessageUtil.entryId(entries, { role: 'user', timestamp: 1 })).toBe('a');
36
+ (0, bun_test_1.expect)(message_1.MessageUtil.entryId(entries, { role: 'user', timestamp: 2 })).toBeUndefined();
37
+ (0, bun_test_1.expect)(message_1.MessageUtil.entryId(entries, { role: 'user' })).toBeUndefined();
38
+ });
39
+ (0, bun_test_1.it)('sums what the models of a turn took, the cached context with the rest', () => {
40
+ const messages = [
41
+ { role: 'assistant', usage: { input: 100, cacheRead: 900, output: 20, cost: { total: 0.001 } } },
42
+ { role: 'toolResult', usage: { input: 5 } },
43
+ { role: 'assistant', usage: { input: 50, cacheWrite: 50, output: 30, cost: { total: 0.002 } } },
44
+ ];
45
+ const usage = message_1.MessageUtil.usage(messages);
46
+ (0, bun_test_1.expect)(usage).toMatchObject({ input: 1100, output: 50 });
47
+ (0, bun_test_1.expect)(message_1.MessageUtil.cost(usage.cost)).toBe('$0.0030');
48
+ (0, bun_test_1.expect)(message_1.MessageUtil.cost(1.234)).toBe('$1.23');
49
+ });
50
+ (0, bun_test_1.it)('says when a message came as short as it can: the time today, yesterday and the day before by their word, else the date', () => {
51
+ const now = new Date(2026, 10, 10, 0, 30).getTime();
52
+ (0, bun_test_1.expect)(message_1.MessageUtil.when(new Date(2026, 10, 10, 0, 5).getTime(), now)).toEqual({ day: 'today', time: '00:05' });
53
+ (0, bun_test_1.expect)(message_1.MessageUtil.when(new Date(2026, 10, 9, 23, 59).getTime(), now)).toEqual({ day: 'yesterday', time: '23:59' });
54
+ (0, bun_test_1.expect)(message_1.MessageUtil.when(new Date(2026, 10, 8, 18, 51).getTime(), now)).toEqual({ day: 'dayBefore', time: '18:51' });
55
+ (0, bun_test_1.expect)(message_1.MessageUtil.when(new Date(2026, 10, 7, 9, 0).getTime(), now)).toEqual({ day: 'date', date: '11-07', time: '09:00' });
56
+ (0, bun_test_1.expect)(message_1.MessageUtil.when(new Date(2025, 0, 2, 3, 4).getTime(), now)).toEqual({ day: 'date', date: '2025-01-02', time: '03:04' });
57
+ });
58
+ });
59
+ //# sourceMappingURL=message.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message.spec.js","sourceRoot":"","sources":["../../../src/browser/util/message.spec.ts"],"names":[],"mappings":";;AAAA,uCAAgD;AAEhD,uCAAwC;AAExC,IAAA,mBAAQ,EAAC,aAAa,EAAE,GAAG,EAAE;IACzB,IAAA,aAAE,EAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACjG,IAAA,iBAAM,EAAC,qBAAW,CAAC,OAAO,CAAC,CAAC,MAAmC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,MAAe,CAAC,CAAC;IACvG,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,6DAA6D,EAAE,GAAG,EAAE;;QACnE,MAAM,OAAO,GAAG,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;QAC/D,MAAM,GAAG,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,MAAe,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;QACxH,IAAA,iBAAM,EAAC,MAAA,qBAAW,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,0CAAE,OAAO,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5E,IAAA,iBAAM,EAAC,qBAAW,CAAC,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7D,IAAA,iBAAM,EAAC,qBAAW,CAAC,MAAM,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACjE,IAAA,iBAAM,EAAC,qBAAW,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3E,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,uCAAuC,EAAE,GAAG,EAAE;QAC7C,IAAA,iBAAM,EAAC,qBAAW,CAAC,YAAY,CAAC,yDAAyD,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC9G,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,qCAAqC,EAAE,GAAG,EAAE;QAC3C,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAC5E,IAAA,iBAAM,EAAC,qBAAW,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAClE,IAAA,iBAAM,EAAC,qBAAW,CAAC,SAAS,CAAC,uBAAuB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC9E,IAAA,iBAAM,EAAC,qBAAW,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,qEAAqE,EAAE,GAAG,EAAE;QAC3E,MAAM,OAAO,GAAG;YACZ,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;YACrE,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,cAAc,EAAE;YACjC,EAAE,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;SAC7E,CAAC;QACF,IAAA,iBAAM,EAAC,qBAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,EAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC7F,IAAA,iBAAM,EAAC,qBAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAW,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxF,IAAA,iBAAM,EAAC,qBAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,EAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;QAC9F,IAAA,iBAAM,EAAC,qBAAW,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAW,CAAC,CAAC,CAAC,aAAa,EAAE,CAAC;IACpF,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,uEAAuE,EAAE,GAAG,EAAE;QAC7E,MAAM,QAAQ,GAAG;YACb,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;YAChG,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;YAC3C,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE;SAClG,CAAC;QACF,MAAM,KAAK,GAAG,qBAAW,CAAC,KAAK,CAAC,QAAiB,CAAC,CAAC;QACnD,IAAA,iBAAM,EAAC,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAAC;QACzD,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACrD,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,IAAA,aAAE,EAAC,wHAAwH,EAAE,GAAG,EAAE;QAC9H,MAAM,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;QACpD,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC/G,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACpH,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACpH,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QAC5H,IAAA,iBAAM,EAAC,qBAAW,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACpI,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
@@ -0,0 +1,74 @@
1
+ import type { SessionMessage } from '@celljs/ta-client';
2
+ import type { Mood } from '../avatar/dino-avatar';
3
+ import { type ContentBlock } from './message';
4
+ /** One step of the work of ta between two messages of the user. */
5
+ export type ProcessStep = {
6
+ kind: 'thinking';
7
+ key: string;
8
+ text: string;
9
+ } | {
10
+ kind: 'text';
11
+ key: string;
12
+ text: string;
13
+ } | {
14
+ kind: 'tool';
15
+ key: string;
16
+ call: ContentBlock;
17
+ };
18
+ /** A message shown as it is: from the user, a `!command`, a message of an extension, a summary. */
19
+ export interface MessageItem {
20
+ kind: 'message';
21
+ key: string;
22
+ message: SessionMessage;
23
+ }
24
+ /**
25
+ * The assistant and tool result messages in a row: the work (thinking, tool calls, what ta said on
26
+ * the way) folds into one line, and the text ta ends with is the reply.
27
+ */
28
+ export interface TurnItem {
29
+ kind: 'turn';
30
+ key: string;
31
+ /** The messages it is made of; the same objects while they do not change. */
32
+ messages: SessionMessage[];
33
+ steps: ProcessStep[];
34
+ /** The text at the end, after the last tool call. */
35
+ reply: string[];
36
+ /** The last assistant message: its stop reason and error. */
37
+ last?: SessionMessage;
38
+ /** The agent is still at it. */
39
+ active: boolean;
40
+ }
41
+ export type ThreadItem = MessageItem | TurnItem;
42
+ /** While the agent works, only the latest steps show; the earlier ones fold into one row. */
43
+ export declare const VISIBLE_STEPS = 8;
44
+ /**
45
+ * How the conversation is laid out (thinking and tool calls folded into steps): pure functions over pi's
46
+ * messages, so that a component only draws what they return.
47
+ */
48
+ export declare namespace ProcessUtil {
49
+ /**
50
+ * The items of the conversation. While the agent works and has not answered yet, its turn is there
51
+ * already, empty, with the key the turn will have: the head drawn while it waits is the one its answer
52
+ * fills, not another put in its place.
53
+ */
54
+ function items(messages: SessionMessage[], working: boolean): ThreadItem[];
55
+ /** The tool calls: what "N steps" counts. */
56
+ function tools(steps: ProcessStep[]): ContentBlock[];
57
+ /** The steps shown: all of them, or while it works the latest few when more than two would fold. */
58
+ function fold(steps: ProcessStep[], active: boolean, showAll: boolean, visible?: number): {
59
+ hidden: number;
60
+ steps: ProcessStep[];
61
+ };
62
+ /** One line of thinking, without markdown: what a folded thought shows. */
63
+ function preview(text: string, length?: number): string;
64
+ /** What ta does now, by the last block of the conversation: for its face and the working line. */
65
+ function phase(messages: SessionMessage[]): 'thinking' | 'working' | 'writing';
66
+ /**
67
+ * The face of ta at the head of a turn: what it does while it works (it needs you while a dialog
68
+ * waits), then done for the last turn, needing you after an error, and calm for the rest.
69
+ */
70
+ function mood(item: TurnItem, last: boolean, waiting: boolean): Mood;
71
+ /** The two items show the same: their messages are the same objects, and so is whether it works. */
72
+ function same(a: ThreadItem, b: ThreadItem): boolean;
73
+ }
74
+ //# sourceMappingURL=process.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.d.ts","sourceRoot":"","sources":["../../../src/browser/util/process.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,KAAK,YAAY,EAAe,MAAM,WAAW,CAAC;AAE3D,mEAAmE;AACnE,MAAM,MAAM,WAAW,GACjB;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,YAAY,CAAA;CAAE,CAAC;AAExD,mGAAmG;AACnG,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,cAAc,CAAC;CAC3B;AAED;;;GAGG;AACH,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,6EAA6E;IAC7E,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,WAAW,EAAE,CAAC;IACrB,qDAAqD;IACrD,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,6DAA6D;IAC7D,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,gCAAgC;IAChC,MAAM,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,QAAQ,CAAC;AAEhD,6FAA6F;AAC7F,eAAO,MAAM,aAAa,IAAI,CAAC;AAI/B;;;GAGG;AACH,yBAAiB,WAAW,CAAC;IACzB;;;;OAIG;IACH,SAAgB,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,UAAU,EAAE,CAoBhF;IA6BD,6CAA6C;IAC7C,SAAgB,KAAK,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,CAE1D;IAED,oGAAoG;IACpG,SAAgB,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,SAAgB,GAAG;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,WAAW,EAAE,CAAA;KAAE,CAK/I;IAED,2EAA2E;IAC3E,SAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAM,GAAG,MAAM,CAO1D;IAED,kGAAkG;IAClG,SAAgB,KAAK,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAYpF;IAED;;;OAGG;IACH,SAAgB,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAa1E;IAED,oGAAoG;IACpG,SAAgB,IAAI,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAK1D;CACJ"}
@@ -0,0 +1,138 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ProcessUtil = exports.VISIBLE_STEPS = void 0;
4
+ const message_1 = require("./message");
5
+ /** While the agent works, only the latest steps show; the earlier ones fold into one row. */
6
+ exports.VISIBLE_STEPS = 8;
7
+ const TURN_ROLES = new Set(['assistant', 'toolResult']);
8
+ /**
9
+ * How the conversation is laid out (thinking and tool calls folded into steps): pure functions over pi's
10
+ * messages, so that a component only draws what they return.
11
+ */
12
+ var ProcessUtil;
13
+ (function (ProcessUtil) {
14
+ /**
15
+ * The items of the conversation. While the agent works and has not answered yet, its turn is there
16
+ * already, empty, with the key the turn will have: the head drawn while it waits is the one its answer
17
+ * fills, not another put in its place.
18
+ */
19
+ function items(messages, working) {
20
+ var _a;
21
+ const items = [];
22
+ let index = 0;
23
+ while (index < messages.length) {
24
+ const role = messages[index].role;
25
+ if (!TURN_ROLES.has(role)) {
26
+ items.push({ kind: 'message', key: `m${index}`, message: messages[index] });
27
+ index++;
28
+ continue;
29
+ }
30
+ const start = index;
31
+ while (index < messages.length && TURN_ROLES.has(messages[index].role)) {
32
+ index++;
33
+ }
34
+ items.push(turn(messages.slice(start, index), start, working && index === messages.length));
35
+ }
36
+ if (working && ((_a = items[items.length - 1]) === null || _a === void 0 ? void 0 : _a.kind) !== 'turn') {
37
+ items.push({ kind: 'turn', key: `t${messages.length}`, messages: [], steps: [], reply: [], active: true });
38
+ }
39
+ return items;
40
+ }
41
+ ProcessUtil.items = items;
42
+ function turn(messages, start, active) {
43
+ const steps = [];
44
+ let last;
45
+ messages.forEach((message, offset) => {
46
+ if (message.role !== 'assistant') {
47
+ return;
48
+ }
49
+ last = message;
50
+ message_1.MessageUtil.blocks(message).forEach((block, position) => {
51
+ var _a, _b;
52
+ const key = `${start + offset}.${position}`;
53
+ if (block.type === 'thinking' && ((_a = block.thinking) === null || _a === void 0 ? void 0 : _a.trim())) {
54
+ steps.push({ kind: 'thinking', key, text: block.thinking });
55
+ }
56
+ else if (block.type === 'text' && ((_b = block.text) === null || _b === void 0 ? void 0 : _b.trim())) {
57
+ steps.push({ kind: 'text', key, text: block.text });
58
+ }
59
+ else if (block.type === 'toolCall') {
60
+ steps.push({ kind: 'tool', key: block.id || key, call: block });
61
+ }
62
+ });
63
+ });
64
+ let end = steps.length;
65
+ while (end > 0 && steps[end - 1].kind === 'text') {
66
+ end--;
67
+ }
68
+ const reply = steps.slice(end).map(step => (step.kind === 'text' ? step.text : ''));
69
+ return { kind: 'turn', key: `t${start}`, messages, steps: steps.slice(0, end), reply, last, active };
70
+ }
71
+ /** The tool calls: what "N steps" counts. */
72
+ function tools(steps) {
73
+ return steps.flatMap(step => (step.kind === 'tool' ? [step.call] : []));
74
+ }
75
+ ProcessUtil.tools = tools;
76
+ /** The steps shown: all of them, or while it works the latest few when more than two would fold. */
77
+ function fold(steps, active, showAll, visible = exports.VISIBLE_STEPS) {
78
+ if (!active || showAll || steps.length <= visible + 2) {
79
+ return { hidden: 0, steps };
80
+ }
81
+ return { hidden: steps.length - visible, steps: steps.slice(-visible) };
82
+ }
83
+ ProcessUtil.fold = fold;
84
+ /** One line of thinking, without markdown: what a folded thought shows. */
85
+ function preview(text, length = 120) {
86
+ const line = text
87
+ .replace(/\*\*([^*]+)\*\*/g, '$1')
88
+ .replace(/[`*_#>]+/g, '')
89
+ .replace(/\s+/g, ' ')
90
+ .trim();
91
+ return line.length > length ? `${line.slice(0, length - 1)}…` : line;
92
+ }
93
+ ProcessUtil.preview = preview;
94
+ /** What ta does now, by the last block of the conversation: for its face and the working line. */
95
+ function phase(messages) {
96
+ const last = messages[messages.length - 1];
97
+ if ((last === null || last === void 0 ? void 0 : last.role) !== 'assistant') {
98
+ // Waiting for the model: after a message of the user or the result of a tool.
99
+ return 'thinking';
100
+ }
101
+ const blocks = message_1.MessageUtil.blocks(last);
102
+ const block = blocks[blocks.length - 1];
103
+ if (!block || block.type === 'thinking') {
104
+ return 'thinking';
105
+ }
106
+ return block.type === 'text' ? 'writing' : 'working';
107
+ }
108
+ ProcessUtil.phase = phase;
109
+ /**
110
+ * The face of ta at the head of a turn: what it does while it works (it needs you while a dialog
111
+ * waits), then done for the last turn, needing you after an error, and calm for the rest.
112
+ */
113
+ function mood(item, last, waiting) {
114
+ var _a;
115
+ if (item.active) {
116
+ if (waiting) {
117
+ return 'attention';
118
+ }
119
+ const phase = ProcessUtil.phase(item.messages);
120
+ return phase === 'thinking' ? 'thinking' : phase === 'writing' ? 'speaking' : 'working';
121
+ }
122
+ const { stopReason } = ((_a = item.last) !== null && _a !== void 0 ? _a : {});
123
+ if (stopReason === 'error') {
124
+ return 'attention';
125
+ }
126
+ return last && stopReason !== 'aborted' ? 'done' : 'idle';
127
+ }
128
+ ProcessUtil.mood = mood;
129
+ /** The two items show the same: their messages are the same objects, and so is whether it works. */
130
+ function same(a, b) {
131
+ if (a.kind === 'message' || b.kind === 'message') {
132
+ return a.kind === b.kind && a.message === b.message;
133
+ }
134
+ return a.active === b.active && a.messages.length === b.messages.length && a.messages.every((message, index) => message === b.messages[index]);
135
+ }
136
+ ProcessUtil.same = same;
137
+ })(ProcessUtil || (exports.ProcessUtil = ProcessUtil = {}));
138
+ //# sourceMappingURL=process.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.js","sourceRoot":"","sources":["../../../src/browser/util/process.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=process.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.spec.d.ts","sourceRoot":"","sources":["../../../src/browser/util/process.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const bun_test_1 = require("bun:test");
4
+ const process_1 = require("./process");
5
+ const messages = (...list) => list;
6
+ const user = (text) => ({ role: 'user', content: text });
7
+ const call = (id, name = 'bash') => ({ type: 'toolCall', id, name, arguments: {} });
8
+ const result = (id) => ({ role: 'toolResult', toolCallId: id, content: [{ type: 'text', text: 'ok' }] });
9
+ (0, bun_test_1.describe)('ProcessUtil', () => {
10
+ (0, bun_test_1.it)('folds thinking, tool calls and the text on the way into the work of a turn, and keeps the last text as the reply', () => {
11
+ const items = process_1.ProcessUtil.items(messages(user('fix it'), { role: 'assistant', content: [{ type: 'thinking', thinking: 'look first' }, { type: 'text', text: 'Reading.' }, call('c1', 'read')] }, result('c1'), { role: 'assistant', content: [call('c2', 'edit')] }, result('c2'), {
12
+ role: 'assistant',
13
+ content: [
14
+ { type: 'thinking', thinking: 'done?' },
15
+ { type: 'text', text: 'Fixed.' },
16
+ ],
17
+ stopReason: 'stop',
18
+ }), false);
19
+ (0, bun_test_1.expect)(items.map(item => item.kind)).toEqual(['message', 'turn']);
20
+ const turn = items[1];
21
+ (0, bun_test_1.expect)(turn.steps.map(step => step.kind)).toEqual(['thinking', 'text', 'tool', 'tool', 'thinking']);
22
+ (0, bun_test_1.expect)(process_1.ProcessUtil.tools(turn.steps).map(block => block.id)).toEqual(['c1', 'c2']);
23
+ (0, bun_test_1.expect)(turn.reply).toEqual(['Fixed.']);
24
+ (0, bun_test_1.expect)(turn.messages).toHaveLength(5);
25
+ (0, bun_test_1.expect)(turn.last.stopReason).toBe('stop');
26
+ (0, bun_test_1.expect)(turn.active).toBe(false);
27
+ });
28
+ (0, bun_test_1.it)('has no work for a plain answer, and no reply while the last thing is a tool call', () => {
29
+ const plain = process_1.ProcessUtil.items(messages(user('hi'), { role: 'assistant', content: [{ type: 'text', text: 'Hello' }] }), false)[1];
30
+ (0, bun_test_1.expect)(plain.steps).toEqual([]);
31
+ (0, bun_test_1.expect)(plain.reply).toEqual(['Hello']);
32
+ const running = process_1.ProcessUtil.items(messages(user('go'), { role: 'assistant', content: [{ type: 'text', text: 'On it' }, call('c1')] }), true)[1];
33
+ (0, bun_test_1.expect)(running.reply).toEqual([]);
34
+ (0, bun_test_1.expect)(running.steps.map(step => step.kind)).toEqual(['text', 'tool']);
35
+ (0, bun_test_1.expect)(running.active).toBe(true);
36
+ });
37
+ (0, bun_test_1.it)('is active only for the last turn while the agent works, and a message of the user splits turns', () => {
38
+ const items = process_1.ProcessUtil.items(messages(user('a'), { role: 'assistant', content: [call('c1')] }, result('c1'), user('steer'), { role: 'assistant', content: [] }), true);
39
+ (0, bun_test_1.expect)(items.map(item => (item.kind === 'turn' ? `turn:${item.active}` : 'message'))).toEqual(['message', 'turn:false', 'message', 'turn:true']);
40
+ });
41
+ (0, bun_test_1.it)('has the turn of an answer that has not come yet, under the key the answer takes', () => {
42
+ const asked = messages(user('a'));
43
+ const waiting = process_1.ProcessUtil.items(asked, true);
44
+ (0, bun_test_1.expect)(waiting.map(item => item.kind)).toEqual(['message', 'turn']);
45
+ (0, bun_test_1.expect)(waiting[1]).toMatchObject({ key: 't1', steps: [], reply: [], active: true });
46
+ (0, bun_test_1.expect)(process_1.ProcessUtil.items(messages(...asked, { role: 'assistant', content: [] }), true)[1].key).toBe('t1');
47
+ (0, bun_test_1.expect)(process_1.ProcessUtil.items(asked, false)).toHaveLength(1);
48
+ });
49
+ (0, bun_test_1.it)('gives items keys that stay while the conversation grows', () => {
50
+ const first = messages(user('a'), { role: 'assistant', content: [call('c1')] });
51
+ const grown = messages(...first, result('c1'), { role: 'assistant', content: [{ type: 'text', text: 'ok' }] }, user('b'));
52
+ const keys = process_1.ProcessUtil.items(first, true).map(item => item.key);
53
+ (0, bun_test_1.expect)(process_1.ProcessUtil.items(grown, false)
54
+ .map(item => item.key)
55
+ .slice(0, keys.length)).toEqual(keys);
56
+ (0, bun_test_1.expect)(process_1.ProcessUtil.items(first, true)[1]).toMatchObject({ steps: [{ key: 'c1' }] });
57
+ });
58
+ (0, bun_test_1.it)('tells items apart by the identity of their messages, so that unchanged ones are not drawn again', () => {
59
+ const list = messages(user('a'), { role: 'assistant', content: [call('c1')] }, result('c1'));
60
+ const before = process_1.ProcessUtil.items(list, true);
61
+ const after = process_1.ProcessUtil.items([...list], true);
62
+ (0, bun_test_1.expect)(process_1.ProcessUtil.same(before[0], after[0])).toBe(true);
63
+ (0, bun_test_1.expect)(process_1.ProcessUtil.same(before[1], after[1])).toBe(true);
64
+ const changed = process_1.ProcessUtil.items([list[0], { ...list[1] }, list[2]], true);
65
+ (0, bun_test_1.expect)(process_1.ProcessUtil.same(before[1], changed[1])).toBe(false);
66
+ (0, bun_test_1.expect)(process_1.ProcessUtil.same(before[1], process_1.ProcessUtil.items(list, false)[1])).toBe(false);
67
+ });
68
+ (0, bun_test_1.it)('shows the latest steps while it works, unless only one or two would fold', () => {
69
+ const steps = Array.from({ length: 12 }, (_, index) => ({ kind: 'text', key: String(index), text: '' }));
70
+ (0, bun_test_1.expect)(process_1.ProcessUtil.fold(steps, true, false)).toMatchObject({ hidden: 4 });
71
+ (0, bun_test_1.expect)(process_1.ProcessUtil.fold(steps, true, false).steps[0].key).toBe('4');
72
+ (0, bun_test_1.expect)(process_1.ProcessUtil.fold(steps.slice(0, 10), true, false).hidden).toBe(0);
73
+ (0, bun_test_1.expect)(process_1.ProcessUtil.fold(steps, false, false).hidden).toBe(0);
74
+ (0, bun_test_1.expect)(process_1.ProcessUtil.fold(steps, true, true).hidden).toBe(0);
75
+ });
76
+ (0, bun_test_1.it)('previews a thought in one line without markdown', () => {
77
+ (0, bun_test_1.expect)(process_1.ProcessUtil.preview('**Plan**\n- read `a.ts`\n- fix')).toBe('Plan - read a.ts - fix');
78
+ (0, bun_test_1.expect)(process_1.ProcessUtil.preview('x'.repeat(10), 5)).toBe('xxxx…');
79
+ });
80
+ (0, bun_test_1.it)('knows whether ta thinks, works or writes', () => {
81
+ (0, bun_test_1.expect)(process_1.ProcessUtil.phase(messages(user('a')))).toBe('thinking');
82
+ (0, bun_test_1.expect)(process_1.ProcessUtil.phase(messages({ role: 'assistant', content: [{ type: 'thinking', thinking: '' }] }))).toBe('thinking');
83
+ (0, bun_test_1.expect)(process_1.ProcessUtil.phase(messages({ role: 'assistant', content: [call('c1')] }))).toBe('working');
84
+ (0, bun_test_1.expect)(process_1.ProcessUtil.phase(messages({ role: 'assistant', content: [{ type: 'text', text: 'a' }] }))).toBe('writing');
85
+ (0, bun_test_1.expect)(process_1.ProcessUtil.phase(messages({ role: 'assistant', content: [call('c1')] }, result('c1')))).toBe('thinking');
86
+ });
87
+ (0, bun_test_1.it)('shows on the face of ta what a turn did: at work, done, needing you after an error, calm before', () => {
88
+ const turn = (last, active = false) => ({
89
+ kind: 'turn',
90
+ key: 't',
91
+ messages: [last],
92
+ steps: [],
93
+ reply: [],
94
+ last: last,
95
+ active,
96
+ });
97
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [call('c1')] }, true), true, false)).toBe('working');
98
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [{ type: 'text', text: 'a' }] }, true), true, false)).toBe('speaking');
99
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [] }, true), true, true)).toBe('attention');
100
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [], stopReason: 'stop' }), true, false)).toBe('done');
101
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [], stopReason: 'stop' }), false, false)).toBe('idle');
102
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [], stopReason: 'error' }), false, false)).toBe('attention');
103
+ (0, bun_test_1.expect)(process_1.ProcessUtil.mood(turn({ role: 'assistant', content: [], stopReason: 'aborted' }), true, false)).toBe('idle');
104
+ });
105
+ });
106
+ //# sourceMappingURL=process.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process.spec.js","sourceRoot":"","sources":["../../../src/browser/util/process.spec.ts"],"names":[],"mappings":"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"}