centaurus-cli 2.5.2 → 2.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 (310) hide show
  1. package/dist/cli-adapter.d.ts +6 -0
  2. package/dist/cli-adapter.d.ts.map +1 -1
  3. package/dist/cli-adapter.js +215 -29
  4. package/dist/cli-adapter.js.map +1 -1
  5. package/dist/commands/CommandParser.js +2 -2
  6. package/dist/commands/CommandParser.js.map +1 -1
  7. package/dist/config/defaultConfig.js +1 -1
  8. package/dist/config/defaultConfig.js.map +1 -1
  9. package/dist/config/models.d.ts +50 -5
  10. package/dist/config/models.d.ts.map +1 -1
  11. package/dist/config/models.js +144 -20
  12. package/dist/config/models.js.map +1 -1
  13. package/dist/config/types.d.ts +3 -0
  14. package/dist/config/types.d.ts.map +1 -1
  15. package/dist/config/types.js +3 -1
  16. package/dist/config/types.js.map +1 -1
  17. package/dist/index.js +9 -0
  18. package/dist/index.js.map +1 -1
  19. package/dist/services/ai-service-client.d.ts +8 -2
  20. package/dist/services/ai-service-client.d.ts.map +1 -1
  21. package/dist/services/ai-service-client.js +2 -1
  22. package/dist/services/ai-service-client.js.map +1 -1
  23. package/dist/services/environment-context-injector.d.ts +69 -0
  24. package/dist/services/environment-context-injector.d.ts.map +1 -0
  25. package/dist/services/environment-context-injector.js +198 -0
  26. package/dist/services/environment-context-injector.js.map +1 -0
  27. package/dist/tools/ToolRegistry.d.ts.map +1 -1
  28. package/dist/tools/ToolRegistry.js +120 -26
  29. package/dist/tools/ToolRegistry.js.map +1 -1
  30. package/dist/tools/command.d.ts.map +1 -1
  31. package/dist/tools/command.js +30 -6
  32. package/dist/tools/command.js.map +1 -1
  33. package/dist/tools/file-ops.d.ts.map +1 -1
  34. package/dist/tools/file-ops.js +70 -23
  35. package/dist/tools/file-ops.js.map +1 -1
  36. package/dist/tools/find-files.d.ts +47 -0
  37. package/dist/tools/find-files.d.ts.map +1 -0
  38. package/dist/tools/find-files.js +190 -0
  39. package/dist/tools/find-files.js.map +1 -0
  40. package/dist/tools/get-diff.d.ts +45 -0
  41. package/dist/tools/get-diff.d.ts.map +1 -0
  42. package/dist/tools/get-diff.js +138 -0
  43. package/dist/tools/get-diff.js.map +1 -0
  44. package/dist/tools/grep-search.d.ts +85 -0
  45. package/dist/tools/grep-search.d.ts.map +1 -0
  46. package/dist/tools/grep-search.js +497 -0
  47. package/dist/tools/grep-search.js.map +1 -0
  48. package/dist/tools/inspect-symbol.d.ts +27 -0
  49. package/dist/tools/inspect-symbol.d.ts.map +1 -0
  50. package/dist/tools/inspect-symbol.js +259 -0
  51. package/dist/tools/inspect-symbol.js.map +1 -0
  52. package/dist/tools/validation.d.ts +49 -0
  53. package/dist/tools/validation.d.ts.map +1 -0
  54. package/dist/tools/validation.js +125 -0
  55. package/dist/tools/validation.js.map +1 -0
  56. package/dist/types/index.d.ts +13 -0
  57. package/dist/types/index.d.ts.map +1 -1
  58. package/dist/ui/components/App.d.ts +3 -0
  59. package/dist/ui/components/App.d.ts.map +1 -1
  60. package/dist/ui/components/App.js +272 -72
  61. package/dist/ui/components/App.js.map +1 -1
  62. package/dist/ui/components/ContextWindowIndicator.d.ts +8 -0
  63. package/dist/ui/components/ContextWindowIndicator.d.ts.map +1 -0
  64. package/dist/ui/components/ContextWindowIndicator.js +34 -0
  65. package/dist/ui/components/ContextWindowIndicator.js.map +1 -0
  66. package/dist/ui/components/FontRecommendation.d.ts +1 -0
  67. package/dist/ui/components/FontRecommendation.d.ts.map +1 -0
  68. package/dist/ui/components/FontRecommendation.js +1 -0
  69. package/dist/ui/components/FontRecommendation.js.map +1 -0
  70. package/dist/ui/components/InputBox.d.ts +2 -0
  71. package/dist/ui/components/InputBox.d.ts.map +1 -1
  72. package/dist/ui/components/InputBox.js +9 -4
  73. package/dist/ui/components/InputBox.js.map +1 -1
  74. package/dist/ui/components/MarkdownRenderer.d.ts.map +1 -1
  75. package/dist/ui/components/MarkdownRenderer.js +34 -9
  76. package/dist/ui/components/MarkdownRenderer.js.map +1 -1
  77. package/dist/ui/components/MessageDisplay.d.ts.map +1 -1
  78. package/dist/ui/components/MessageDisplay.js +9 -2
  79. package/dist/ui/components/MessageDisplay.js.map +1 -1
  80. package/dist/ui/components/StreamingMessageDisplay.d.ts.map +1 -1
  81. package/dist/ui/components/StreamingMessageDisplay.js +11 -3
  82. package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
  83. package/dist/ui/components/ThinkingDisplay.d.ts +12 -0
  84. package/dist/ui/components/ThinkingDisplay.d.ts.map +1 -0
  85. package/dist/ui/components/ThinkingDisplay.js +41 -0
  86. package/dist/ui/components/ThinkingDisplay.js.map +1 -0
  87. package/dist/utils/markdown-parser.d.ts +4 -0
  88. package/dist/utils/markdown-parser.d.ts.map +1 -1
  89. package/dist/utils/markdown-parser.js +15 -1
  90. package/dist/utils/markdown-parser.js.map +1 -1
  91. package/dist/utils/version-checker.d.ts.map +1 -1
  92. package/dist/utils/version-checker.js +3 -31
  93. package/dist/utils/version-checker.js.map +1 -1
  94. package/package.json +6 -5
  95. package/README.md +0 -501
  96. package/dist/ai/provider-factory.d.ts +0 -6
  97. package/dist/ai/provider-factory.d.ts.map +0 -1
  98. package/dist/ai/provider-factory.js +0 -27
  99. package/dist/ai/provider-factory.js.map +0 -1
  100. package/dist/ai/providers/base.d.ts +0 -25
  101. package/dist/ai/providers/base.d.ts.map +0 -1
  102. package/dist/ai/providers/base.js +0 -9
  103. package/dist/ai/providers/base.js.map +0 -1
  104. package/dist/ai/providers/gemini.d.ts +0 -34
  105. package/dist/ai/providers/gemini.d.ts.map +0 -1
  106. package/dist/ai/providers/gemini.js +0 -146
  107. package/dist/ai/providers/gemini.js.map +0 -1
  108. package/dist/commands/view-duplication-logs.d.ts +0 -5
  109. package/dist/commands/view-duplication-logs.d.ts.map +0 -1
  110. package/dist/commands/view-duplication-logs.js +0 -14
  111. package/dist/commands/view-duplication-logs.js.map +0 -1
  112. package/dist/context/__tests__/command-detector.test.d.ts +0 -14
  113. package/dist/context/__tests__/command-detector.test.d.ts.map +0 -1
  114. package/dist/context/__tests__/command-detector.test.js +0 -318
  115. package/dist/context/__tests__/command-detector.test.js.map +0 -1
  116. package/dist/context/__tests__/context-manager.test.d.ts +0 -16
  117. package/dist/context/__tests__/context-manager.test.d.ts.map +0 -1
  118. package/dist/context/__tests__/context-manager.test.js +0 -375
  119. package/dist/context/__tests__/context-manager.test.js.map +0 -1
  120. package/dist/context/__tests__/error-handling.test.d.ts +0 -15
  121. package/dist/context/__tests__/error-handling.test.d.ts.map +0 -1
  122. package/dist/context/__tests__/error-handling.test.js +0 -447
  123. package/dist/context/__tests__/error-handling.test.js.map +0 -1
  124. package/dist/context/handlers/__tests__/docker-handler.test.d.ts +0 -13
  125. package/dist/context/handlers/__tests__/docker-handler.test.d.ts.map +0 -1
  126. package/dist/context/handlers/__tests__/docker-handler.test.js +0 -285
  127. package/dist/context/handlers/__tests__/docker-handler.test.js.map +0 -1
  128. package/dist/context/handlers/__tests__/ssh-handler.test.d.ts +0 -13
  129. package/dist/context/handlers/__tests__/ssh-handler.test.d.ts.map +0 -1
  130. package/dist/context/handlers/__tests__/ssh-handler.test.js +0 -251
  131. package/dist/context/handlers/__tests__/ssh-handler.test.js.map +0 -1
  132. package/dist/context/handlers/__tests__/wsl-handler.test.d.ts +0 -7
  133. package/dist/context/handlers/__tests__/wsl-handler.test.d.ts.map +0 -1
  134. package/dist/context/handlers/__tests__/wsl-handler.test.js +0 -331
  135. package/dist/context/handlers/__tests__/wsl-handler.test.js.map +0 -1
  136. package/dist/index-custom.d.ts +0 -3
  137. package/dist/index-custom.d.ts.map +0 -1
  138. package/dist/index-custom.js +0 -65
  139. package/dist/index-custom.js.map +0 -1
  140. package/dist/prompts/system-prompt.d.ts +0 -47
  141. package/dist/prompts/system-prompt.d.ts.map +0 -1
  142. package/dist/prompts/system-prompt.js +0 -377
  143. package/dist/prompts/system-prompt.js.map +0 -1
  144. package/dist/providers/GoogleProvider.d.ts +0 -26
  145. package/dist/providers/GoogleProvider.d.ts.map +0 -1
  146. package/dist/providers/GoogleProvider.js +0 -313
  147. package/dist/providers/GoogleProvider.js.map +0 -1
  148. package/dist/providers/Provider.d.ts +0 -114
  149. package/dist/providers/Provider.d.ts.map +0 -1
  150. package/dist/providers/Provider.js +0 -44
  151. package/dist/providers/Provider.js.map +0 -1
  152. package/dist/services/__tests__/ai-context-injector.test.d.ts +0 -15
  153. package/dist/services/__tests__/ai-context-injector.test.d.ts.map +0 -1
  154. package/dist/services/__tests__/ai-context-injector.test.js +0 -326
  155. package/dist/services/__tests__/ai-context-injector.test.js.map +0 -1
  156. package/dist/src/context/types.js +0 -27
  157. package/dist/src/services/ai-context-injector.js +0 -96
  158. package/dist/src/services/ai-service-client.js +0 -270
  159. package/dist/src/services/api-client.js +0 -349
  160. package/dist/src/tools/types.js +0 -1
  161. package/dist/src/types/index.js +0 -1
  162. package/dist/test/context/types.js +0 -27
  163. package/dist/test/services/__tests__/ai-context-injector.test.js +0 -325
  164. package/dist/test/services/ai-context-injector.js +0 -96
  165. package/dist/test/services/ai-service-client.js +0 -270
  166. package/dist/test/services/api-client.js +0 -349
  167. package/dist/test/tools/types.js +0 -1
  168. package/dist/test/types/index.js +0 -1
  169. package/dist/test-ai-context-injector.js +0 -97
  170. package/dist/tests/automated-verification.d.ts +0 -27
  171. package/dist/tests/automated-verification.d.ts.map +0 -1
  172. package/dist/tests/automated-verification.js +0 -359
  173. package/dist/tests/automated-verification.js.map +0 -1
  174. package/dist/tests/integration-tests.d.ts +0 -50
  175. package/dist/tests/integration-tests.d.ts.map +0 -1
  176. package/dist/tests/integration-tests.js +0 -648
  177. package/dist/tests/integration-tests.js.map +0 -1
  178. package/dist/tools/file-ops-test.d.ts +0 -6
  179. package/dist/tools/file-ops-test.d.ts.map +0 -1
  180. package/dist/tools/file-ops-test.js +0 -197
  181. package/dist/tools/file-ops-test.js.map +0 -1
  182. package/dist/ui/DisplayHistory.d.ts +0 -53
  183. package/dist/ui/DisplayHistory.d.ts.map +0 -1
  184. package/dist/ui/DisplayHistory.js +0 -82
  185. package/dist/ui/DisplayHistory.js.map +0 -1
  186. package/dist/ui/clack-ui.d.ts +0 -83
  187. package/dist/ui/clack-ui.d.ts.map +0 -1
  188. package/dist/ui/clack-ui.js +0 -304
  189. package/dist/ui/clack-ui.js.map +0 -1
  190. package/dist/ui/components/DisplayItemRenderer.d.ts +0 -18
  191. package/dist/ui/components/DisplayItemRenderer.d.ts.map +0 -1
  192. package/dist/ui/components/DisplayItemRenderer.js +0 -53
  193. package/dist/ui/components/DisplayItemRenderer.js.map +0 -1
  194. package/dist/ui/components/DynamicMessage.d.ts +0 -13
  195. package/dist/ui/components/DynamicMessage.d.ts.map +0 -1
  196. package/dist/ui/components/DynamicMessage.js +0 -27
  197. package/dist/ui/components/DynamicMessage.js.map +0 -1
  198. package/dist/ui/components/FileViewerScreen.d.ts +0 -14
  199. package/dist/ui/components/FileViewerScreen.d.ts.map +0 -1
  200. package/dist/ui/components/FileViewerScreen.js +0 -74
  201. package/dist/ui/components/FileViewerScreen.js.map +0 -1
  202. package/dist/ui/components/ScrollableContent.d.ts +0 -7
  203. package/dist/ui/components/ScrollableContent.d.ts.map +0 -1
  204. package/dist/ui/components/ScrollableContent.js +0 -6
  205. package/dist/ui/components/ScrollableContent.js.map +0 -1
  206. package/dist/ui/components/ScrollableMessageList.d.ts +0 -10
  207. package/dist/ui/components/ScrollableMessageList.d.ts.map +0 -1
  208. package/dist/ui/components/ScrollableMessageList.js +0 -133
  209. package/dist/ui/components/ScrollableMessageList.js.map +0 -1
  210. package/dist/ui/components/ScrollableScreen.d.ts +0 -9
  211. package/dist/ui/components/ScrollableScreen.d.ts.map +0 -1
  212. package/dist/ui/components/ScrollableScreen.js +0 -22
  213. package/dist/ui/components/ScrollableScreen.js.map +0 -1
  214. package/dist/ui/components/StaticMessageHistory.d.ts +0 -14
  215. package/dist/ui/components/StaticMessageHistory.d.ts.map +0 -1
  216. package/dist/ui/components/StaticMessageHistory.js +0 -19
  217. package/dist/ui/components/StaticMessageHistory.js.map +0 -1
  218. package/dist/ui/components/code-block.d.ts +0 -10
  219. package/dist/ui/components/code-block.d.ts.map +0 -1
  220. package/dist/ui/components/code-block.js +0 -74
  221. package/dist/ui/components/code-block.js.map +0 -1
  222. package/dist/ui/components/confirm-prompt.d.ts +0 -12
  223. package/dist/ui/components/confirm-prompt.d.ts.map +0 -1
  224. package/dist/ui/components/confirm-prompt.js +0 -104
  225. package/dist/ui/components/confirm-prompt.js.map +0 -1
  226. package/dist/ui/components/diff-viewer.d.ts +0 -9
  227. package/dist/ui/components/diff-viewer.d.ts.map +0 -1
  228. package/dist/ui/components/diff-viewer.js +0 -57
  229. package/dist/ui/components/diff-viewer.js.map +0 -1
  230. package/dist/ui/components/input-box.d.ts +0 -18
  231. package/dist/ui/components/input-box.d.ts.map +0 -1
  232. package/dist/ui/components/input-box.js +0 -157
  233. package/dist/ui/components/input-box.js.map +0 -1
  234. package/dist/ui/components/keyboard-help.d.ts +0 -7
  235. package/dist/ui/components/keyboard-help.d.ts.map +0 -1
  236. package/dist/ui/components/keyboard-help.js +0 -43
  237. package/dist/ui/components/keyboard-help.js.map +0 -1
  238. package/dist/ui/components/loading-indicator.d.ts +0 -3
  239. package/dist/ui/components/loading-indicator.d.ts.map +0 -1
  240. package/dist/ui/components/loading-indicator.js +0 -42
  241. package/dist/ui/components/loading-indicator.js.map +0 -1
  242. package/dist/ui/components/message-display.d.ts +0 -7
  243. package/dist/ui/components/message-display.d.ts.map +0 -1
  244. package/dist/ui/components/message-display.js +0 -104
  245. package/dist/ui/components/message-display.js.map +0 -1
  246. package/dist/ui/components/misc.d.ts +0 -28
  247. package/dist/ui/components/misc.d.ts.map +0 -1
  248. package/dist/ui/components/misc.js +0 -128
  249. package/dist/ui/components/misc.js.map +0 -1
  250. package/dist/ui/components/select-prompt.d.ts +0 -13
  251. package/dist/ui/components/select-prompt.d.ts.map +0 -1
  252. package/dist/ui/components/select-prompt.js +0 -42
  253. package/dist/ui/components/select-prompt.js.map +0 -1
  254. package/dist/ui/components/status-bar.d.ts +0 -11
  255. package/dist/ui/components/status-bar.d.ts.map +0 -1
  256. package/dist/ui/components/status-bar.js +0 -47
  257. package/dist/ui/components/status-bar.js.map +0 -1
  258. package/dist/ui/components/tool-execution.d.ts +0 -3
  259. package/dist/ui/components/tool-execution.d.ts.map +0 -1
  260. package/dist/ui/components/tool-execution.js +0 -374
  261. package/dist/ui/components/tool-execution.js.map +0 -1
  262. package/dist/ui/components/tool-result.d.ts +0 -11
  263. package/dist/ui/components/tool-result.d.ts.map +0 -1
  264. package/dist/ui/components/tool-result.js +0 -58
  265. package/dist/ui/components/tool-result.js.map +0 -1
  266. package/dist/ui/components/welcome-banner.d.ts +0 -3
  267. package/dist/ui/components/welcome-banner.d.ts.map +0 -1
  268. package/dist/ui/components/welcome-banner.js +0 -46
  269. package/dist/ui/components/welcome-banner.js.map +0 -1
  270. package/dist/ui/hooks/useDisplayHistory.d.ts +0 -13
  271. package/dist/ui/hooks/useDisplayHistory.d.ts.map +0 -1
  272. package/dist/ui/hooks/useDisplayHistory.js +0 -45
  273. package/dist/ui/hooks/useDisplayHistory.js.map +0 -1
  274. package/dist/ui/render-engine.d.ts +0 -69
  275. package/dist/ui/render-engine.d.ts.map +0 -1
  276. package/dist/ui/render-engine.js +0 -197
  277. package/dist/ui/render-engine.js.map +0 -1
  278. package/dist/ui/terminal/TerminalRenderer.d.ts +0 -84
  279. package/dist/ui/terminal/TerminalRenderer.d.ts.map +0 -1
  280. package/dist/ui/terminal/TerminalRenderer.js +0 -154
  281. package/dist/ui/terminal/TerminalRenderer.js.map +0 -1
  282. package/dist/ui/terminal/TerminalUI.d.ts +0 -139
  283. package/dist/ui/terminal/TerminalUI.d.ts.map +0 -1
  284. package/dist/ui/terminal/TerminalUI.js +0 -430
  285. package/dist/ui/terminal/TerminalUI.js.map +0 -1
  286. package/dist/ui/terminal/VirtualChatBuffer.d.ts +0 -32
  287. package/dist/ui/terminal/VirtualChatBuffer.d.ts.map +0 -1
  288. package/dist/ui/terminal/VirtualChatBuffer.js +0 -37
  289. package/dist/ui/terminal/VirtualChatBuffer.js.map +0 -1
  290. package/dist/ui/terminal-kit-base.d.ts +0 -117
  291. package/dist/ui/terminal-kit-base.d.ts.map +0 -1
  292. package/dist/ui/terminal-kit-base.js +0 -188
  293. package/dist/ui/terminal-kit-base.js.map +0 -1
  294. package/dist/ui/utils/duplication-detector.d.ts +0 -32
  295. package/dist/ui/utils/duplication-detector.d.ts.map +0 -1
  296. package/dist/ui/utils/duplication-detector.js +0 -227
  297. package/dist/ui/utils/duplication-detector.js.map +0 -1
  298. package/dist/ui/utils/duplication-logger.d.ts +0 -21
  299. package/dist/ui/utils/duplication-logger.d.ts.map +0 -1
  300. package/dist/ui/utils/duplication-logger.js +0 -85
  301. package/dist/ui/utils/duplication-logger.js.map +0 -1
  302. package/dist/ui/utils/terminal-scanner.d.ts +0 -19
  303. package/dist/ui/utils/terminal-scanner.d.ts.map +0 -1
  304. package/dist/ui/utils/terminal-scanner.js +0 -217
  305. package/dist/ui/utils/terminal-scanner.js.map +0 -1
  306. package/dist/version.d.ts +0 -2
  307. package/dist/version.d.ts.map +0 -1
  308. package/dist/version.js +0 -3
  309. package/dist/version.js.map +0 -1
  310. package/scripts/generate-version.js +0 -25
@@ -1,42 +0,0 @@
1
- import { term, screenBuffer, createColorAttr, colors, drawBox } from '../terminal-kit-base.js';
2
- // Render the select prompt (static border and message)
3
- export function renderSelectPrompt(options) {
4
- const { x, y, width, message, choices } = options;
5
- const height = 4 + choices.length; // Border + message + empty + choices + border
6
- // Draw rounded border with cyan color
7
- drawBox({
8
- x,
9
- y,
10
- width,
11
- height,
12
- borderStyle: 'rounded',
13
- borderColor: colors.primary, // #00ccff (Cyan)
14
- });
15
- // Message (cyan, bold)
16
- const messageAttr = createColorAttr(colors.primary, true);
17
- screenBuffer.put({ x: x + 2, y: y + 1, attr: messageAttr }, message);
18
- // Return height + bottom margin
19
- return height + 1;
20
- }
21
- // Wait for user selection using terminal-kit's singleColumnMenu
22
- export async function waitForSelection(options) {
23
- const { x, y, choices } = options;
24
- // Position for menu (below message, with 1 line spacing)
25
- const menuY = y + 3;
26
- return new Promise((resolve) => {
27
- term.moveTo(x + 2, menuY);
28
- // Use terminal-kit's singleColumnMenu
29
- term.singleColumnMenu(choices.map(c => c.label), {
30
- cancelable: true,
31
- exitOnUnexpectedKey: false,
32
- }, (error, response) => {
33
- if (error || !response) {
34
- resolve(null);
35
- return;
36
- }
37
- // Return the value corresponding to the selected label
38
- resolve(choices[response.selectedIndex].value);
39
- });
40
- });
41
- }
42
- //# sourceMappingURL=select-prompt.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"select-prompt.js","sourceRoot":"","sources":["../../../src/ui/components/select-prompt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAU/F,uDAAuD;AACvD,MAAM,UAAU,kBAAkB,CAAC,OAA4B;IAC7D,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAElD,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,8CAA8C;IAEjF,sCAAsC;IACtC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,iBAAiB;KAC/C,CAAC,CAAC;IAEH,uBAAuB;IACvB,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1D,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,OAAO,CAAC,CAAC;IAErE,gCAAgC;IAChC,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,gEAAgE;AAChE,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,OAA4B;IAE5B,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAElC,yDAAyD;IACzD,MAAM,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;IAEpB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC;QAE1B,sCAAsC;QACtC,IAAI,CAAC,gBAAgB,CACnB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EACzB;YACE,UAAU,EAAE,IAAI;YAChB,mBAAmB,EAAE,KAAK;SAC3B,EACD,CAAC,KAAmB,EAAE,QAAqE,EAAE,EAAE;YAC7F,IAAI,KAAK,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACvB,OAAO,CAAC,IAAI,CAAC,CAAC;gBACd,OAAO;YACT,CAAC;YAED,uDAAuD;YACvD,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC,CAAC;QACjD,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,11 +0,0 @@
1
- export interface StatusBarOptions {
2
- x: number;
3
- y: number;
4
- width: number;
5
- autoAcceptMode: boolean;
6
- isLoading: boolean;
7
- loadingMessage?: string;
8
- model?: string;
9
- }
10
- export declare function renderStatusBar(options: StatusBarOptions): number;
11
- //# sourceMappingURL=status-bar.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status-bar.d.ts","sourceRoot":"","sources":["../../../src/ui/components/status-bar.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,gBAAgB;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,OAAO,CAAC;IACxB,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAGD,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAkDjE"}
@@ -1,47 +0,0 @@
1
- import { screenBuffer, createColorAttr, colors, drawBox } from '../terminal-kit-base.js';
2
- // Render status bar (single-line border)
3
- export function renderStatusBar(options) {
4
- const { x, y, width, autoAcceptMode, isLoading, loadingMessage = 'Processing...', model } = options;
5
- const height = 3; // Border + content + border
6
- // Draw single-line border with dark blue color
7
- drawBox({
8
- x,
9
- y,
10
- width,
11
- height,
12
- borderStyle: 'single',
13
- borderColor: colors.border, // #003b59 (Dark Blue)
14
- });
15
- const contentY = y + 1;
16
- let leftX = x + 2;
17
- // Left side (loading or model info)
18
- if (isLoading) {
19
- // Loading state: ⏳ {loadingMessage}
20
- const loadingAttr = createColorAttr(colors.primary); // Cyan
21
- const text = `⏳ ${loadingMessage}`;
22
- screenBuffer.put({ x: leftX, y: contentY, attr: loadingAttr }, text);
23
- }
24
- else if (model) {
25
- // Idle state: Model: {model}
26
- const labelAttr = createColorAttr(colors.dimmed); // Gray
27
- const valueAttr = createColorAttr(colors.primary); // Cyan
28
- screenBuffer.put({ x: leftX, y: contentY, attr: labelAttr }, 'Model: ');
29
- screenBuffer.put({ x: leftX + 'Model: '.length, y: contentY, attr: valueAttr }, model);
30
- }
31
- // Right side: Auto-accept status
32
- let autoAcceptText;
33
- let autoAcceptAttr;
34
- if (autoAcceptMode) {
35
- autoAcceptText = '[AUTO-ACCEPT: ON]';
36
- autoAcceptAttr = createColorAttr(colors.success, true); // Green, bold
37
- }
38
- else {
39
- autoAcceptText = '[AUTO-ACCEPT: OFF]';
40
- autoAcceptAttr = createColorAttr(colors.dimmed, false, true); // Gray, dimmed
41
- }
42
- const rightX = x + width - autoAcceptText.length - 2;
43
- screenBuffer.put({ x: rightX, y: contentY, attr: autoAcceptAttr }, autoAcceptText);
44
- // No bottom margin (fixed at screen bottom)
45
- return height;
46
- }
47
- //# sourceMappingURL=status-bar.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"status-bar.js","sourceRoot":"","sources":["../../../src/ui/components/status-bar.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAYzF,yCAAyC;AACzC,MAAM,UAAU,eAAe,CAAC,OAAyB;IACvD,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,cAAc,GAAG,eAAe,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;IAEpG,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,4BAA4B;IAE9C,+CAA+C;IAC/C,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB;KACnD,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,CAAC;IAElB,oCAAoC;IACpC,IAAI,SAAS,EAAE,CAAC;QACd,oCAAoC;QACpC,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;QAC5D,MAAM,IAAI,GAAG,KAAK,cAAc,EAAE,CAAC;QACnC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,6BAA6B;QAC7B,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QACzD,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;QAE1D,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,SAAS,CAAC,CAAC;QACxE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAK,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,KAAK,CAAC,CAAC;IACzF,CAAC;IAED,iCAAiC;IACjC,IAAI,cAAsB,CAAC;IAC3B,IAAI,cAAkD,CAAC;IAEvD,IAAI,cAAc,EAAE,CAAC;QACnB,cAAc,GAAG,mBAAmB,CAAC;QACrC,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IACxE,CAAC;SAAM,CAAC;QACN,cAAc,GAAG,oBAAoB,CAAC;QACtC,cAAc,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,eAAe;IAC/E,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,GAAG,KAAK,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC;IACrD,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,cAAc,CAAC,CAAC;IAEnF,4CAA4C;IAC5C,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -1,3 +0,0 @@
1
- import { Message } from '../../types/index.js';
2
- export declare function renderToolExecutionMessage(message: Message, x: number, y: number, width: number): number;
3
- //# sourceMappingURL=tool-execution.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-execution.d.ts","sourceRoot":"","sources":["../../../src/ui/components/tool-execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAiB,MAAM,sBAAsB,CAAC;AAoc9D,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,OAAO,EAChB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,KAAK,EAAE,MAAM,GACZ,MAAM,CAgCR"}
@@ -1,374 +0,0 @@
1
- import { screenBuffer, createColorAttr, colors, drawBox, truncate, borders } from '../terminal-kit-base.js';
2
- const TOOL_LABELS = {
3
- read_file: { verb: 'Reading file', emoji: '📖' },
4
- write_file: { verb: 'Writing file', emoji: '✍️' },
5
- edit_file: { verb: 'Editing file', emoji: '✏️' },
6
- list_directory: { verb: 'Listing directory', emoji: '📁' },
7
- execute_command: { verb: 'Executing command', emoji: '⚡' },
8
- grep_search: { verb: 'Searching files', emoji: '🔍' },
9
- };
10
- function getToolInfo(toolName) {
11
- return TOOL_LABELS[toolName] || { verb: 'Executing', emoji: '🔧' };
12
- }
13
- // STATE 1: EXECUTING
14
- function renderExecutingState(x, y, width, toolName) {
15
- const toolInfo = getToolInfo(toolName);
16
- const height = 3; // Border + content + border
17
- // Border: Rounded, Dark Blue (#003b59)
18
- drawBox({
19
- x,
20
- y,
21
- width,
22
- height,
23
- borderStyle: 'rounded',
24
- borderColor: colors.border,
25
- });
26
- // Content: ⏳ {emoji} {verb}...
27
- const text = `⏳ ${toolInfo.emoji} ${toolInfo.verb}...`;
28
- const attr = createColorAttr(colors.primary, true); // Cyan, bold
29
- screenBuffer.put({ x: x + 2, y: y + 1, attr }, text);
30
- // Return height + bottom margin (1 line)
31
- return height + 1;
32
- }
33
- // STATE 2: ERROR
34
- function renderErrorState(x, y, width, toolName, error) {
35
- const toolInfo = getToolInfo(toolName);
36
- let height = 3; // Minimum: border + header + border
37
- if (error) {
38
- const errorLines = Math.ceil(Math.min(500, error.length) / (width - 6));
39
- height += errorLines;
40
- }
41
- // Border: Rounded, Red (#ff3366)
42
- drawBox({
43
- x,
44
- y,
45
- width,
46
- height,
47
- borderStyle: 'rounded',
48
- borderColor: colors.error,
49
- });
50
- // Header: ✗ {emoji} {verb} failed
51
- const headerText = `✗ ${toolInfo.emoji} ${toolInfo.verb} failed`;
52
- const headerAttr = createColorAttr(colors.error, true); // Red, bold
53
- screenBuffer.put({ x: x + 2, y: y + 1, attr: headerAttr }, headerText);
54
- // Error message (if present, max 500 chars, padding left 2)
55
- if (error) {
56
- const truncatedError = error.slice(0, 500) + (error.length > 500 ? '...' : '');
57
- const errorAttr = createColorAttr(colors.error); // Red
58
- let currentY = y + 3; // After empty line
59
- const errorWidth = width - 6; // Padding
60
- const words = truncatedError.split(' ');
61
- let currentLine = '';
62
- for (const word of words) {
63
- if (currentLine.length + word.length + 1 <= errorWidth) {
64
- currentLine += (currentLine ? ' ' : '') + word;
65
- }
66
- else {
67
- if (currentLine) {
68
- screenBuffer.put({ x: x + 4, y: currentY, attr: errorAttr }, currentLine);
69
- currentY++;
70
- }
71
- currentLine = word;
72
- }
73
- }
74
- if (currentLine) {
75
- screenBuffer.put({ x: x + 4, y: currentY, attr: errorAttr }, currentLine);
76
- }
77
- }
78
- // Return height + bottom margin
79
- return height + 1;
80
- }
81
- // STATE 3: COMPLETED (General)
82
- function renderCompletedGeneral(x, y, width, toolName, result) {
83
- const toolInfo = getToolInfo(toolName);
84
- let height = 3; // Minimum: border + header + border
85
- if (result && result.length < 300) {
86
- const resultLines = Math.ceil(result.length / (width - 6));
87
- height += resultLines;
88
- }
89
- // Border: Rounded, Cyan (#00ccff)
90
- drawBox({
91
- x,
92
- y,
93
- width,
94
- height,
95
- borderStyle: 'rounded',
96
- borderColor: colors.primary,
97
- });
98
- // Header: ✓ {emoji} {verb}
99
- const headerText = `✓ ${toolInfo.emoji} ${toolInfo.verb}`;
100
- const headerAttr = createColorAttr(colors.success, true); // Green, bold
101
- screenBuffer.put({ x: x + 2, y: y + 1, attr: headerAttr }, headerText);
102
- // Result (if < 300 chars, padding left 2)
103
- if (result && result.length < 300) {
104
- const resultAttr = createColorAttr(colors.lightGray); // #aaaaaa
105
- let currentY = y + 3; // After empty line
106
- const resultWidth = width - 6;
107
- const words = result.split(' ');
108
- let currentLine = '';
109
- for (const word of words) {
110
- if (currentLine.length + word.length + 1 <= resultWidth) {
111
- currentLine += (currentLine ? ' ' : '') + word;
112
- }
113
- else {
114
- if (currentLine) {
115
- screenBuffer.put({ x: x + 4, y: currentY, attr: resultAttr }, currentLine);
116
- currentY++;
117
- }
118
- currentLine = word;
119
- }
120
- }
121
- if (currentLine) {
122
- screenBuffer.put({ x: x + 4, y: currentY, attr: resultAttr }, currentLine);
123
- }
124
- }
125
- return height + 1;
126
- }
127
- // STATE 3a: COMPLETED (execute_command)
128
- function renderCompletedExecuteCommand(x, y, width, toolArgs, result) {
129
- const { command } = toolArgs;
130
- let height = 3; // Minimum
131
- if (result) {
132
- const resultLines = Math.min(Math.ceil(result.length / (width - 8)), 20);
133
- height += resultLines + 2; // + inner box borders
134
- }
135
- // Border: Rounded, Green (#00cc66)
136
- drawBox({
137
- x,
138
- y,
139
- width,
140
- height,
141
- borderStyle: 'rounded',
142
- borderColor: colors.success,
143
- });
144
- // Header: ✓ ⚡ {command}
145
- const headerText = `✓ ⚡ `;
146
- const headerAttr = createColorAttr(colors.success, true); // Green, bold
147
- const commandAttr = createColorAttr(colors.primary); // Cyan
148
- screenBuffer.put({ x: x + 2, y: y + 1, attr: headerAttr }, headerText);
149
- screenBuffer.put({
150
- x: x + 2 + headerText.length,
151
- y: y + 1,
152
- attr: commandAttr
153
- }, truncate(command, width - 8));
154
- // Inner box with result (if present)
155
- if (result) {
156
- const innerY = y + 3;
157
- const innerWidth = width - 4;
158
- const innerHeight = height - 4;
159
- // Draw single-line border
160
- const border = borders.single;
161
- const borderAttr = createColorAttr(colors.dimmed); // Gray
162
- // Top border
163
- screenBuffer.put({
164
- x: x + 2,
165
- y: innerY,
166
- attr: borderAttr,
167
- }, border.topLeft + border.horizontal.repeat(innerWidth - 2) + border.topRight);
168
- // Content
169
- const resultAttr = createColorAttr(colors.lightGray); // #aaaaaa
170
- const truncatedResult = result.slice(0, 1000) + (result.length > 1000 ? '\n...(truncated)' : '');
171
- const resultLines = truncatedResult.split('\n').slice(0, innerHeight - 2);
172
- for (let i = 0; i < resultLines.length; i++) {
173
- const line = resultLines[i];
174
- screenBuffer.put({ x: x + 3, y: innerY + 1 + i, attr: borderAttr }, border.vertical);
175
- screenBuffer.put({
176
- x: x + 5,
177
- y: innerY + 1 + i,
178
- attr: resultAttr
179
- }, truncate(line, innerWidth - 4));
180
- screenBuffer.put({
181
- x: x + innerWidth + 1,
182
- y: innerY + 1 + i,
183
- attr: borderAttr
184
- }, border.vertical);
185
- }
186
- // Bottom border
187
- screenBuffer.put({
188
- x: x + 2,
189
- y: innerY + innerHeight - 1,
190
- attr: borderAttr,
191
- }, border.bottomLeft + border.horizontal.repeat(innerWidth - 2) + border.bottomRight);
192
- }
193
- return height + 1;
194
- }
195
- // STATE 3b: COMPLETED (read_file)
196
- function renderCompletedReadFile(x, y, width, toolArgs) {
197
- const { file_path, start_line, end_line } = toolArgs;
198
- const lineInfo = start_line && end_line
199
- ? `lines ${start_line}-${end_line}`
200
- : 'entire file';
201
- const height = 3;
202
- // Border: Rounded, Cyan (#00ccff)
203
- drawBox({
204
- x,
205
- y,
206
- width,
207
- height,
208
- borderStyle: 'rounded',
209
- borderColor: colors.primary,
210
- });
211
- // Content: ✓ 📖 Read {lineInfo} from {file_path}
212
- const successAttr = createColorAttr(colors.success, true); // Green, bold
213
- const cyanAttr = createColorAttr(colors.primary); // Cyan
214
- const text = `✓ 📖 Read ${lineInfo} from `;
215
- screenBuffer.put({ x: x + 2, y: y + 1, attr: successAttr }, text);
216
- screenBuffer.put({
217
- x: x + 2 + text.length,
218
- y: y + 1,
219
- attr: cyanAttr
220
- }, truncate(file_path, width - text.length - 6));
221
- return height + 1;
222
- }
223
- // STATE 3c: COMPLETED (write_file)
224
- function renderCompletedWriteFile(x, y, width, toolArgs) {
225
- const { file_path, content } = toolArgs;
226
- const lines = content ? content.split('\n').length : 0;
227
- let height = 3;
228
- // Show preview if content < 500 chars
229
- if (content && content.length < 500) {
230
- height += Math.ceil(content.length / (width - 8)) + 2;
231
- }
232
- // Border: Rounded, Cyan (#00ccff)
233
- drawBox({
234
- x,
235
- y,
236
- width,
237
- height,
238
- borderStyle: 'rounded',
239
- borderColor: colors.primary,
240
- });
241
- // Header: ✓ ✍️ Wrote to {file_path} ({lines} lines)
242
- const successAttr = createColorAttr(colors.success, true); // Green, bold
243
- const cyanAttr = createColorAttr(colors.primary); // Cyan
244
- const dimmedAttr = createColorAttr(colors.dimmed); // Gray
245
- const text = `✓ ✍️ Wrote to `;
246
- screenBuffer.put({ x: x + 2, y: y + 1, attr: successAttr }, text);
247
- screenBuffer.put({
248
- x: x + 2 + text.length,
249
- y: y + 1,
250
- attr: cyanAttr
251
- }, truncate(file_path, width - text.length - 15));
252
- screenBuffer.put({
253
- x: x + 2 + text.length + file_path.length,
254
- y: y + 1,
255
- attr: dimmedAttr
256
- }, ` (${lines} lines)`);
257
- // Preview if small
258
- if (content && content.length < 500) {
259
- // Inner box
260
- const innerY = y + 3;
261
- const innerWidth = width - 4;
262
- const border = borders.single;
263
- const borderAttr = createColorAttr(colors.dimmed);
264
- const contentAttr = createColorAttr(colors.lightGray);
265
- // Top border
266
- screenBuffer.put({
267
- x: x + 2,
268
- y: innerY,
269
- attr: borderAttr,
270
- }, border.topLeft + border.horizontal.repeat(innerWidth - 2) + border.topRight);
271
- // Content lines
272
- const contentLines = content.split('\n').slice(0, 10);
273
- for (let i = 0; i < contentLines.length; i++) {
274
- screenBuffer.put({ x: x + 3, y: innerY + 1 + i, attr: borderAttr }, border.vertical);
275
- screenBuffer.put({
276
- x: x + 5,
277
- y: innerY + 1 + i,
278
- attr: contentAttr
279
- }, truncate(contentLines[i], innerWidth - 4));
280
- screenBuffer.put({
281
- x: x + innerWidth + 1,
282
- y: innerY + 1 + i,
283
- attr: borderAttr
284
- }, border.vertical);
285
- }
286
- // Bottom border
287
- const bottomY = innerY + contentLines.length + 1;
288
- screenBuffer.put({
289
- x: x + 2,
290
- y: bottomY,
291
- attr: borderAttr,
292
- }, border.bottomLeft + border.horizontal.repeat(innerWidth - 2) + border.bottomRight);
293
- }
294
- return height + 1;
295
- }
296
- // STATE 3d: COMPLETED (edit_file)
297
- function renderCompletedEditFile(x, y, width, toolArgs) {
298
- const { file_path, search_pattern, replacement } = toolArgs;
299
- let height = 3;
300
- if (search_pattern && replacement) {
301
- height += 2; // For - and + lines
302
- }
303
- // Border: Rounded, Cyan (#00ccff)
304
- drawBox({
305
- x,
306
- y,
307
- width,
308
- height,
309
- borderStyle: 'rounded',
310
- borderColor: colors.primary,
311
- });
312
- // Header: ✓ ✏️ Edited {file_path}
313
- const successAttr = createColorAttr(colors.success, true); // Green, bold
314
- const cyanAttr = createColorAttr(colors.primary); // Cyan
315
- const text = `✓ ✏️ Edited `;
316
- screenBuffer.put({ x: x + 2, y: y + 1, attr: successAttr }, text);
317
- screenBuffer.put({
318
- x: x + 2 + text.length,
319
- y: y + 1,
320
- attr: cyanAttr
321
- }, truncate(file_path, width - text.length - 6));
322
- // Show diff preview
323
- if (search_pattern && replacement) {
324
- const redAttr = createColorAttr(colors.lightRed); // #ff6666
325
- const greenAttr = createColorAttr(colors.lightGreen); // #66ff66
326
- const searchFirstLine = search_pattern.split('\n')[0] + (search_pattern.includes('\n') ? '...' : '');
327
- const replaceFirstLine = replacement.split('\n')[0] + (replacement.includes('\n') ? '...' : '');
328
- screenBuffer.put({
329
- x: x + 2,
330
- y: y + 3,
331
- attr: redAttr
332
- }, `- ${truncate(searchFirstLine, width - 6)}`);
333
- screenBuffer.put({
334
- x: x + 2,
335
- y: y + 4,
336
- attr: greenAttr
337
- }, `+ ${truncate(replaceFirstLine, width - 6)}`);
338
- }
339
- return height + 1;
340
- }
341
- // Main render function
342
- export function renderToolExecutionMessage(message, x, y, width) {
343
- if (!message.toolExecution) {
344
- return 0;
345
- }
346
- const { toolName, status, result, error, arguments: toolArgs } = message.toolExecution;
347
- switch (status) {
348
- case 'executing':
349
- return renderExecutingState(x, y, width, toolName);
350
- case 'error':
351
- return renderErrorState(x, y, width, toolName, error);
352
- case 'completed':
353
- // Specific rendering based on tool type
354
- if (toolName === 'execute_command' && toolArgs) {
355
- return renderCompletedExecuteCommand(x, y, width, toolArgs, result);
356
- }
357
- else if (toolName === 'read_file' && toolArgs) {
358
- return renderCompletedReadFile(x, y, width, toolArgs);
359
- }
360
- else if (toolName === 'write_file' && toolArgs) {
361
- return renderCompletedWriteFile(x, y, width, toolArgs);
362
- }
363
- else if (toolName === 'edit_file' && toolArgs) {
364
- return renderCompletedEditFile(x, y, width, toolArgs);
365
- }
366
- else {
367
- // General completed rendering for other tools
368
- return renderCompletedGeneral(x, y, width, toolName, result);
369
- }
370
- default:
371
- return 0;
372
- }
373
- }
374
- //# sourceMappingURL=tool-execution.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-execution.js","sourceRoot":"","sources":["../../../src/ui/components/tool-execution.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAS5G,MAAM,WAAW,GAA6B;IAC5C,SAAS,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;IAChD,UAAU,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;IACjD,SAAS,EAAE,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,IAAI,EAAE;IAChD,cAAc,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,IAAI,EAAE;IAC1D,eAAe,EAAE,EAAE,IAAI,EAAE,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE;IAC1D,WAAW,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE;CACtD,CAAC;AAEF,SAAS,WAAW,CAAC,QAAgB;IACnC,OAAO,WAAW,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AACrE,CAAC;AAED,qBAAqB;AACrB,SAAS,oBAAoB,CAC3B,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAAgB;IAEhB,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,MAAM,GAAG,CAAC,CAAC,CAAC,4BAA4B;IAE9C,uCAAuC;IACvC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,MAAM;KAC3B,CAAC,CAAC;IAEH,+BAA+B;IAC/B,MAAM,IAAI,GAAG,KAAK,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC;IACvD,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,aAAa;IAEjE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC;IAErD,yCAAyC;IACzC,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,iBAAiB;AACjB,SAAS,gBAAgB,CACvB,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAAgB,EAChB,KAAc;IAEd,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,oCAAoC;IAEpD,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QACxE,MAAM,IAAI,UAAU,CAAC;IACvB,CAAC;IAED,iCAAiC;IACjC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,KAAK;KAC1B,CAAC,CAAC;IAEH,kCAAkC;IAClC,MAAM,UAAU,GAAG,KAAK,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,SAAS,CAAC;IACjE,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,YAAY;IAEpE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;IAEvE,4DAA4D;IAC5D,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM;QAEvD,IAAI,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB;QACzC,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC,CAAC,UAAU;QACxC,MAAM,KAAK,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,EAAE,CAAC;gBACvD,WAAW,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,IAAI,WAAW,EAAE,CAAC;oBAChB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,WAAW,CAAC,CAAC;oBAC1E,QAAQ,EAAE,CAAC;gBACb,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,WAAW,CAAC,CAAC;QAC5E,CAAC;IACH,CAAC;IAED,gCAAgC;IAChC,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,+BAA+B;AAC/B,SAAS,sBAAsB,CAC7B,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAAgB,EAChB,MAAe;IAEf,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,oCAAoC;IAEpD,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,IAAI,WAAW,CAAC;IACxB,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,2BAA2B;IAC3B,MAAM,UAAU,GAAG,KAAK,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;IAC1D,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IAExE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;IAEvE,0CAA0C;IAC1C,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAClC,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;QAEhE,IAAI,QAAQ,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,mBAAmB;QACzC,MAAM,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,WAAW,GAAG,EAAE,CAAC;QAErB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,WAAW,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,EAAE,CAAC;gBACxD,WAAW,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;YACjD,CAAC;iBAAM,CAAC;gBACN,IAAI,WAAW,EAAE,CAAC;oBAChB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;oBAC3E,QAAQ,EAAE,CAAC;gBACb,CAAC;gBACD,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,WAAW,CAAC,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,wCAAwC;AACxC,SAAS,6BAA6B,CACpC,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAA6B,EAC7B,MAAe;IAEf,MAAM,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IAE7B,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU;IAE1B,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACzE,MAAM,IAAI,WAAW,GAAG,CAAC,CAAC,CAAC,sBAAsB;IACnD,CAAC;IAED,mCAAmC;IACnC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,UAAU,GAAG,MAAM,CAAC;IAC1B,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IACxE,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;IAE5D,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,UAAU,CAAC,CAAC;IACvE,YAAY,CAAC,GAAG,CAAC;QACf,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,MAAM;QAC5B,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,IAAI,EAAE,WAAW;KAClB,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC;IAEjC,qCAAqC;IACrC,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;QAC7B,MAAM,WAAW,GAAG,MAAM,GAAG,CAAC,CAAC;QAE/B,0BAA0B;QAC1B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;QAE1D,aAAa;QACb,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,MAAM;YACT,IAAI,EAAE,UAAU;SACjB,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEhF,UAAU;QACV,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU;QAChE,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACjG,MAAM,WAAW,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,GAAG,CAAC,CAAC,CAAC;QAE1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC5C,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YAC5B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrF,YAAY,CAAC,GAAG,CAAC;gBACf,CAAC,EAAE,CAAC,GAAG,CAAC;gBACR,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;gBACjB,IAAI,EAAE,UAAU;aACjB,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;YACnC,YAAY,CAAC,GAAG,CAAC;gBACf,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,CAAC;gBACrB,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;gBACjB,IAAI,EAAE,UAAU;aACjB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QAED,gBAAgB;QAChB,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,CAAC;YAC3B,IAAI,EAAE,UAAU;SACjB,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACxF,CAAC;IAED,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,kCAAkC;AAClC,SAAS,uBAAuB,CAC9B,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAA6B;IAE7B,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACrD,MAAM,QAAQ,GAAG,UAAU,IAAI,QAAQ;QACrC,CAAC,CAAC,SAAS,UAAU,IAAI,QAAQ,EAAE;QACnC,CAAC,CAAC,aAAa,CAAC;IAElB,MAAM,MAAM,GAAG,CAAC,CAAC;IAEjB,kCAAkC;IAClC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,iDAAiD;IACjD,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IACzE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;IAEzD,MAAM,IAAI,GAAG,aAAa,QAAQ,QAAQ,CAAC;IAC3C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IAClE,YAAY,CAAC,GAAG,CAAC;QACf,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;QACtB,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,IAAI,EAAE,QAAQ;KACf,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAEjD,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,mCAAmC;AACnC,SAAS,wBAAwB,CAC/B,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAA6B;IAE7B,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,QAAQ,CAAC;IACxC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;IAEvD,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,sCAAsC;IACtC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACpC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACxD,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,oDAAoD;IACpD,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IACzE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;IACzD,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;IAE1D,MAAM,IAAI,GAAG,gBAAgB,CAAC;IAC9B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IAClE,YAAY,CAAC,GAAG,CAAC;QACf,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;QACtB,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,IAAI,EAAE,QAAQ;KACf,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC;IAClD,YAAY,CAAC,GAAG,CAAC;QACf,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM;QACzC,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,IAAI,EAAE,UAAU;KACjB,EAAE,KAAK,KAAK,SAAS,CAAC,CAAC;IAExB,mBAAmB;IACnB,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACpC,YAAY;QACZ,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,CAAC;QACrB,MAAM,UAAU,GAAG,KAAK,GAAG,CAAC,CAAC;QAC7B,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,UAAU,GAAG,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAClD,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEtD,aAAa;QACb,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,MAAM;YACT,IAAI,EAAE,UAAU;SACjB,EAAE,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;QAEhF,gBAAgB;QAChB,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACrF,YAAY,CAAC,GAAG,CAAC;gBACf,CAAC,EAAE,CAAC,GAAG,CAAC;gBACR,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;gBACjB,IAAI,EAAE,WAAW;aAClB,EAAE,QAAQ,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC;YAC9C,YAAY,CAAC,GAAG,CAAC;gBACf,CAAC,EAAE,CAAC,GAAG,UAAU,GAAG,CAAC;gBACrB,CAAC,EAAE,MAAM,GAAG,CAAC,GAAG,CAAC;gBACjB,IAAI,EAAE,UAAU;aACjB,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtB,CAAC;QAED,gBAAgB;QAChB,MAAM,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,OAAO;YACV,IAAI,EAAE,UAAU;SACjB,EAAE,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;IACxF,CAAC;IAED,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,kCAAkC;AAClC,SAAS,uBAAuB,CAC9B,CAAS,EACT,CAAS,EACT,KAAa,EACb,QAA6B;IAE7B,MAAM,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,GAAG,QAAQ,CAAC;IAE5D,IAAI,MAAM,GAAG,CAAC,CAAC;IAEf,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,CAAC,CAAC,oBAAoB;IACnC,CAAC;IAED,kCAAkC;IAClC,OAAO,CAAC;QACN,CAAC;QACD,CAAC;QACD,KAAK;QACL,MAAM;QACN,WAAW,EAAE,SAAS;QACtB,WAAW,EAAE,MAAM,CAAC,OAAO;KAC5B,CAAC,CAAC;IAEH,kCAAkC;IAClC,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,cAAc;IACzE,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;IAEzD,MAAM,IAAI,GAAG,cAAc,CAAC;IAC5B,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,IAAI,CAAC,CAAC;IAClE,YAAY,CAAC,GAAG,CAAC;QACf,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM;QACtB,CAAC,EAAE,CAAC,GAAG,CAAC;QACR,IAAI,EAAE,QAAQ;KACf,EAAE,QAAQ,CAAC,SAAS,EAAE,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IAEjD,oBAAoB;IACpB,IAAI,cAAc,IAAI,WAAW,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU;QAC5D,MAAM,SAAS,GAAG,eAAe,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;QAEhE,MAAM,eAAe,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACrG,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAEhG,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,IAAI,EAAE,OAAO;SACd,EAAE,KAAK,QAAQ,CAAC,eAAe,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QAEhD,YAAY,CAAC,GAAG,CAAC;YACf,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,CAAC,EAAE,CAAC,GAAG,CAAC;YACR,IAAI,EAAE,SAAS;SAChB,EAAE,KAAK,QAAQ,CAAC,gBAAgB,EAAE,KAAK,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,MAAM,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,uBAAuB;AACvB,MAAM,UAAU,0BAA0B,CACxC,OAAgB,EAChB,CAAS,EACT,CAAS,EACT,KAAa;IAEb,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;QAC3B,OAAO,CAAC,CAAC;IACX,CAAC;IAED,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IAEvF,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,WAAW;YACd,OAAO,oBAAoB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;QAErD,KAAK,OAAO;YACV,OAAO,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QAExD,KAAK,WAAW;YACd,wCAAwC;YACxC,IAAI,QAAQ,KAAK,iBAAiB,IAAI,QAAQ,EAAE,CAAC;gBAC/C,OAAO,6BAA6B,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACtE,CAAC;iBAAM,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,EAAE,CAAC;gBAChD,OAAO,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxD,CAAC;iBAAM,IAAI,QAAQ,KAAK,YAAY,IAAI,QAAQ,EAAE,CAAC;gBACjD,OAAO,wBAAwB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACzD,CAAC;iBAAM,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,EAAE,CAAC;gBAChD,OAAO,uBAAuB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,8CAA8C;gBAC9C,OAAO,sBAAsB,CAAC,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC/D,CAAC;QAEH;YACE,OAAO,CAAC,CAAC;IACb,CAAC;AACH,CAAC"}
@@ -1,11 +0,0 @@
1
- export interface ToolResultOptions {
2
- x: number;
3
- y: number;
4
- width: number;
5
- toolName: string;
6
- result: string;
7
- success: boolean;
8
- duration?: number;
9
- }
10
- export declare function renderToolResult(options: ToolResultOptions): number;
11
- //# sourceMappingURL=tool-result.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-result.d.ts","sourceRoot":"","sources":["../../../src/ui/components/tool-result.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,iBAAiB;IAChC,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAGD,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CAkEnE"}
@@ -1,58 +0,0 @@
1
- import { screenBuffer, createColorAttr, colors, drawBox } from '../terminal-kit-base.js';
2
- // Render tool result
3
- export function renderToolResult(options) {
4
- const { x, y, width, toolName, result, success, duration } = options;
5
- // Calculate height based on result length
6
- const resultLines = Math.ceil(result.length / (width - 6));
7
- const height = 3 + resultLines; // Border + header + result lines + border
8
- // Border color based on success
9
- const borderColor = success ? colors.success : colors.error; // Green or Red
10
- drawBox({
11
- x,
12
- y,
13
- width,
14
- height,
15
- borderStyle: 'rounded',
16
- borderColor,
17
- });
18
- let currentY = y + 1;
19
- // Header: {✓|✗} {toolName} ({duration}ms)
20
- const icon = success ? '✓' : '✗';
21
- const headerAttr = createColorAttr(borderColor, true); // Bold
22
- const durationAttr = createColorAttr(colors.dimmed); // Gray
23
- let headerText = `${icon} ${toolName}`;
24
- screenBuffer.put({ x: x + 2, y: currentY, attr: headerAttr }, headerText);
25
- if (duration !== undefined) {
26
- const durationText = ` (${duration}ms)`;
27
- screenBuffer.put({
28
- x: x + 2 + headerText.length,
29
- y: currentY,
30
- attr: durationAttr
31
- }, durationText);
32
- }
33
- currentY += 2; // Header + empty line
34
- // Result text (white)
35
- const resultAttr = createColorAttr(colors.text);
36
- const maxWidth = width - 6;
37
- // Word wrap result
38
- const words = result.split(' ');
39
- let currentLine = '';
40
- for (const word of words) {
41
- if (currentLine.length + word.length + 1 <= maxWidth) {
42
- currentLine += (currentLine ? ' ' : '') + word;
43
- }
44
- else {
45
- if (currentLine) {
46
- screenBuffer.put({ x: x + 2, y: currentY, attr: resultAttr }, currentLine);
47
- currentY++;
48
- }
49
- currentLine = word;
50
- }
51
- }
52
- if (currentLine) {
53
- screenBuffer.put({ x: x + 2, y: currentY, attr: resultAttr }, currentLine);
54
- }
55
- // Return height + bottom margin
56
- return height + 1;
57
- }
58
- //# sourceMappingURL=tool-result.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tool-result.js","sourceRoot":"","sources":["../../../src/ui/components/tool-result.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- export declare function renderWelcomeBanner(x: number, y: number): number;
2
- export declare function resetWelcomeBanner(): void;
3
- //# sourceMappingURL=welcome-banner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"welcome-banner.d.ts","sourceRoot":"","sources":["../../../src/ui/components/welcome-banner.ts"],"names":[],"mappings":"AAqBA,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgChE;AAED,wBAAgB,kBAAkB,SAEjC"}