@umsai/ums-code 0.0.13-v1 → 0.0.14-v1

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 (892) hide show
  1. package/dist/index.js +0 -9
  2. package/dist/index.js.map +1 -1
  3. package/dist/package.json +7 -10
  4. package/dist/src/acp/acp.d.ts +208 -0
  5. package/dist/src/{zed-integration → acp}/acp.js +45 -78
  6. package/dist/src/acp/acp.js.map +1 -0
  7. package/dist/src/acp/acpPeer.d.ts +8 -0
  8. package/dist/src/acp/acpPeer.js +537 -0
  9. package/dist/src/acp/acpPeer.js.map +1 -0
  10. package/dist/src/config/auth.js +12 -13
  11. package/dist/src/config/auth.js.map +1 -1
  12. package/dist/src/config/config.d.ts +9 -11
  13. package/dist/src/config/config.js +133 -257
  14. package/dist/src/config/config.js.map +1 -1
  15. package/dist/src/config/extension.d.ts +3 -41
  16. package/dist/src/config/extension.js +18 -277
  17. package/dist/src/config/extension.js.map +1 -1
  18. package/dist/src/config/sandboxConfig.d.ts +2 -2
  19. package/dist/src/config/sandboxConfig.js +10 -8
  20. package/dist/src/config/sandboxConfig.js.map +1 -1
  21. package/dist/src/config/settings.d.ts +69 -14
  22. package/dist/src/config/settings.js +94 -425
  23. package/dist/src/config/settings.js.map +1 -1
  24. package/dist/src/gemini.d.ts +1 -3
  25. package/dist/src/gemini.js +99 -118
  26. package/dist/src/gemini.js.map +1 -1
  27. package/dist/src/generated/git-commit.d.ts +1 -2
  28. package/dist/src/generated/git-commit.js +1 -2
  29. package/dist/src/generated/git-commit.js.map +1 -1
  30. package/dist/src/nonInteractiveCli.d.ts +1 -1
  31. package/dist/src/nonInteractiveCli.js +42 -26
  32. package/dist/src/nonInteractiveCli.js.map +1 -1
  33. package/dist/src/services/BuiltinCommandLoader.d.ts +4 -3
  34. package/dist/src/services/BuiltinCommandLoader.js +4 -15
  35. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  36. package/dist/src/services/CommandService.d.ts +2 -2
  37. package/dist/src/services/FileCommandLoader.d.ts +3 -3
  38. package/dist/src/services/FileCommandLoader.js +19 -31
  39. package/dist/src/services/FileCommandLoader.js.map +1 -1
  40. package/dist/src/services/McpPromptLoader.d.ts +4 -14
  41. package/dist/src/services/McpPromptLoader.js +20 -46
  42. package/dist/src/services/McpPromptLoader.js.map +1 -1
  43. package/dist/src/services/prompt-processors/argumentProcessor.d.ts +10 -5
  44. package/dist/src/services/prompt-processors/argumentProcessor.js +12 -5
  45. package/dist/src/services/prompt-processors/argumentProcessor.js.map +1 -1
  46. package/dist/src/services/prompt-processors/shellProcessor.d.ts +16 -11
  47. package/dist/src/services/prompt-processors/shellProcessor.js +41 -85
  48. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  49. package/dist/src/services/prompt-processors/types.d.ts +8 -15
  50. package/dist/src/services/prompt-processors/types.js +0 -6
  51. package/dist/src/services/prompt-processors/types.js.map +1 -1
  52. package/dist/src/services/types.d.ts +1 -1
  53. package/dist/src/ui/App.d.ts +2 -2
  54. package/dist/src/ui/App.js +70 -341
  55. package/dist/src/ui/App.js.map +1 -1
  56. package/dist/src/ui/colors.d.ts +1 -1
  57. package/dist/src/ui/commands/aboutCommand.d.ts +1 -1
  58. package/dist/src/ui/commands/aboutCommand.js +6 -10
  59. package/dist/src/ui/commands/aboutCommand.js.map +1 -1
  60. package/dist/src/ui/commands/authCommand.d.ts +1 -1
  61. package/dist/src/ui/commands/authCommand.js.map +1 -1
  62. package/dist/src/ui/commands/bugCommand.js +5 -13
  63. package/dist/src/ui/commands/bugCommand.js.map +1 -1
  64. package/dist/src/ui/commands/chatCommand.d.ts +1 -1
  65. package/dist/src/ui/commands/chatCommand.js +9 -27
  66. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  67. package/dist/src/ui/commands/clearCommand.d.ts +1 -1
  68. package/dist/src/ui/commands/clearCommand.js +1 -0
  69. package/dist/src/ui/commands/clearCommand.js.map +1 -1
  70. package/dist/src/ui/commands/compressCommand.d.ts +1 -1
  71. package/dist/src/ui/commands/compressCommand.js +0 -2
  72. package/dist/src/ui/commands/compressCommand.js.map +1 -1
  73. package/dist/src/ui/commands/copyCommand.d.ts +1 -1
  74. package/dist/src/ui/commands/copyCommand.js +2 -2
  75. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  76. package/dist/src/ui/commands/directoryCommand.d.ts +1 -1
  77. package/dist/src/ui/commands/directoryCommand.js +8 -7
  78. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  79. package/dist/src/ui/commands/docsCommand.js +1 -1
  80. package/dist/src/ui/commands/docsCommand.js.map +1 -1
  81. package/dist/src/ui/commands/helpCommand.d.ts +1 -1
  82. package/dist/src/ui/commands/helpCommand.js.map +1 -1
  83. package/dist/src/ui/commands/ideCommand.d.ts +2 -2
  84. package/dist/src/ui/commands/ideCommand.js +22 -92
  85. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  86. package/dist/src/ui/commands/initCommand.d.ts +2 -2
  87. package/dist/src/ui/commands/initCommand.js +10 -20
  88. package/dist/src/ui/commands/initCommand.js.map +1 -1
  89. package/dist/src/ui/commands/mcpCommand.d.ts +1 -1
  90. package/dist/src/ui/commands/mcpCommand.js +8 -12
  91. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  92. package/dist/src/ui/commands/memoryCommand.d.ts +1 -1
  93. package/dist/src/ui/commands/memoryCommand.js +9 -143
  94. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  95. package/dist/src/ui/commands/privacyCommand.d.ts +1 -1
  96. package/dist/src/ui/commands/privacyCommand.js.map +1 -1
  97. package/dist/src/ui/commands/quitCommand.d.ts +0 -1
  98. package/dist/src/ui/commands/quitCommand.js +0 -25
  99. package/dist/src/ui/commands/quitCommand.js.map +1 -1
  100. package/dist/src/ui/commands/restoreCommand.d.ts +1 -1
  101. package/dist/src/ui/commands/restoreCommand.js +8 -4
  102. package/dist/src/ui/commands/restoreCommand.js.map +1 -1
  103. package/dist/src/ui/commands/setupGithubCommand.d.ts +1 -3
  104. package/dist/src/ui/commands/setupGithubCommand.js +27 -133
  105. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  106. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  107. package/dist/src/ui/commands/themeCommand.d.ts +1 -1
  108. package/dist/src/ui/commands/themeCommand.js.map +1 -1
  109. package/dist/src/ui/commands/toolsCommand.js +1 -1
  110. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  111. package/dist/src/ui/commands/types.d.ts +11 -26
  112. package/dist/src/ui/commands/types.js +0 -1
  113. package/dist/src/ui/commands/types.js.map +1 -1
  114. package/dist/src/ui/commands/ums/umsInitCommand.d.ts +1 -1
  115. package/dist/src/ui/commands/ums/umsInitCommand.js +20 -54
  116. package/dist/src/ui/commands/ums/umsInitCommand.js.map +1 -1
  117. package/dist/src/ui/commands/vimCommand.d.ts +1 -1
  118. package/dist/src/ui/commands/vimCommand.js.map +1 -1
  119. package/dist/src/ui/components/AboutBox.d.ts +1 -2
  120. package/dist/src/ui/components/AboutBox.js +1 -1
  121. package/dist/src/ui/components/AboutBox.js.map +1 -1
  122. package/dist/src/ui/components/AsciiArt.d.ts +0 -1
  123. package/dist/src/ui/components/AsciiArt.js +0 -8
  124. package/dist/src/ui/components/AsciiArt.js.map +1 -1
  125. package/dist/src/ui/components/AuthDialog.d.ts +2 -2
  126. package/dist/src/ui/components/AuthDialog.js +22 -19
  127. package/dist/src/ui/components/AuthDialog.js.map +1 -1
  128. package/dist/src/ui/components/AuthInProgress.d.ts +1 -1
  129. package/dist/src/ui/components/AuthInProgress.js +10 -6
  130. package/dist/src/ui/components/AuthInProgress.js.map +1 -1
  131. package/dist/src/ui/components/AutoAcceptIndicator.d.ts +1 -1
  132. package/dist/src/ui/components/AutoAcceptIndicator.js +3 -8
  133. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -1
  134. package/dist/src/ui/components/ConsoleSummaryDisplay.d.ts +1 -1
  135. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +1 -1
  136. package/dist/src/ui/components/ContextSummaryDisplay.js +25 -23
  137. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  138. package/dist/src/ui/components/DebugProfiler.js +4 -5
  139. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  140. package/dist/src/ui/components/DetailedMessagesDisplay.d.ts +2 -2
  141. package/dist/src/ui/components/DetailedMessagesDisplay.js +1 -1
  142. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  143. package/dist/src/ui/components/EditorSettingsDialog.d.ts +3 -4
  144. package/dist/src/ui/components/EditorSettingsDialog.js +16 -14
  145. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  146. package/dist/src/ui/components/Footer.d.ts +1 -2
  147. package/dist/src/ui/components/Footer.js +6 -16
  148. package/dist/src/ui/components/Footer.js.map +1 -1
  149. package/dist/src/ui/components/GeminiRespondingSpinner.d.ts +1 -1
  150. package/dist/src/ui/components/GeminiRespondingSpinner.js +3 -5
  151. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -1
  152. package/dist/src/ui/components/Header.d.ts +2 -1
  153. package/dist/src/ui/components/Header.js +5 -13
  154. package/dist/src/ui/components/Header.js.map +1 -1
  155. package/dist/src/ui/components/Help.d.ts +2 -2
  156. package/dist/src/ui/components/Help.js +2 -2
  157. package/dist/src/ui/components/Help.js.map +1 -1
  158. package/dist/src/ui/components/HistoryItemDisplay.d.ts +5 -5
  159. package/dist/src/ui/components/HistoryItemDisplay.js +1 -5
  160. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  161. package/dist/src/ui/components/IDEContextDetailDisplay.d.ts +12 -0
  162. package/dist/src/ui/components/IDEContextDetailDisplay.js +12 -0
  163. package/dist/src/ui/components/IDEContextDetailDisplay.js.map +1 -0
  164. package/dist/src/ui/components/InputPrompt.d.ts +5 -6
  165. package/dist/src/ui/components/InputPrompt.js +53 -238
  166. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  167. package/dist/src/ui/components/LoadingIndicator.d.ts +2 -2
  168. package/dist/src/ui/components/LoadingIndicator.js +5 -10
  169. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  170. package/dist/src/ui/components/MemoryUsageDisplay.d.ts +1 -1
  171. package/dist/src/ui/components/MemoryUsageDisplay.js +5 -0
  172. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  173. package/dist/src/ui/components/ModelStatsDisplay.d.ts +1 -1
  174. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  175. package/dist/src/ui/components/OpenAIKeyPrompt.d.ts +1 -1
  176. package/dist/src/ui/components/OpenAIKeyPrompt.js +5 -0
  177. package/dist/src/ui/components/OpenAIKeyPrompt.js.map +1 -1
  178. package/dist/src/ui/components/PrepareLabel.d.ts +1 -1
  179. package/dist/src/ui/components/QwenOAuthProgress.d.ts +2 -2
  180. package/dist/src/ui/components/QwenOAuthProgress.js +5 -0
  181. package/dist/src/ui/components/QwenOAuthProgress.js.map +1 -1
  182. package/dist/src/ui/components/SessionSummaryDisplay.d.ts +1 -1
  183. package/dist/src/ui/components/ShellConfirmationDialog.d.ts +1 -1
  184. package/dist/src/ui/components/ShellConfirmationDialog.js +6 -8
  185. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  186. package/dist/src/ui/components/ShellModeIndicator.d.ts +1 -1
  187. package/dist/src/ui/components/StatsDisplay.d.ts +1 -1
  188. package/dist/src/ui/components/StatsDisplay.js +8 -9
  189. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  190. package/dist/src/ui/components/SuggestionsDisplay.js +4 -12
  191. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  192. package/dist/src/ui/components/ThemeDialog.d.ts +2 -3
  193. package/dist/src/ui/components/ThemeDialog.js +29 -14
  194. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  195. package/dist/src/ui/components/Tips.d.ts +1 -1
  196. package/dist/src/ui/components/Tips.js +0 -1
  197. package/dist/src/ui/components/Tips.js.map +1 -1
  198. package/dist/src/ui/components/ToolStatsDisplay.d.ts +1 -1
  199. package/dist/src/ui/components/messages/CompressionMessage.d.ts +2 -2
  200. package/dist/src/ui/components/messages/CompressionMessage.js +1 -2
  201. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  202. package/dist/src/ui/components/messages/DiffRenderer.d.ts +1 -1
  203. package/dist/src/ui/components/messages/DiffRenderer.js +3 -16
  204. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  205. package/dist/src/ui/components/messages/ErrorMessage.d.ts +1 -1
  206. package/dist/src/ui/components/messages/GeminiMessage.d.ts +1 -1
  207. package/dist/src/ui/components/messages/GeminiMessage.js +1 -2
  208. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  209. package/dist/src/ui/components/messages/GeminiMessageContent.d.ts +1 -1
  210. package/dist/src/ui/components/messages/InfoMessage.d.ts +1 -1
  211. package/dist/src/ui/components/messages/InfoMessage.js +1 -6
  212. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  213. package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +3 -4
  214. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +35 -111
  215. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  216. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +4 -4
  217. package/dist/src/ui/components/messages/ToolGroupMessage.js +7 -2
  218. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  219. package/dist/src/ui/components/messages/ToolMessage.d.ts +1 -3
  220. package/dist/src/ui/components/messages/ToolMessage.js +11 -88
  221. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  222. package/dist/src/ui/components/messages/UserMessage.d.ts +1 -1
  223. package/dist/src/ui/components/messages/UserMessage.js +2 -4
  224. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  225. package/dist/src/ui/components/messages/UserShellMessage.d.ts +1 -1
  226. package/dist/src/ui/components/shared/MaxSizedBox.js +1 -1
  227. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  228. package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +1 -1
  229. package/dist/src/ui/components/shared/RadioButtonSelect.js +15 -12
  230. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  231. package/dist/src/ui/components/shared/text-buffer.d.ts +4 -17
  232. package/dist/src/ui/components/shared/text-buffer.js +97 -235
  233. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  234. package/dist/src/ui/components/shared/vim-buffer-actions.d.ts +1 -1
  235. package/dist/src/ui/components/shared/vim-buffer-actions.js +152 -139
  236. package/dist/src/ui/components/shared/vim-buffer-actions.js.map +1 -1
  237. package/dist/src/ui/components/ums/UMSKeyPrompt.js +4 -4
  238. package/dist/src/ui/components/ums/UMSKeyPrompt.js.map +1 -1
  239. package/dist/src/ui/components/ums/useUMSAuth.d.ts +1 -1
  240. package/dist/src/ui/components/ums/useUMSAuth.js +1 -1
  241. package/dist/src/ui/components/ums/useUMSAuth.js.map +1 -1
  242. package/dist/src/ui/constants.d.ts +0 -8
  243. package/dist/src/ui/constants.js +0 -9
  244. package/dist/src/ui/constants.js.map +1 -1
  245. package/dist/src/ui/contexts/OverflowContext.d.ts +1 -1
  246. package/dist/src/ui/contexts/OverflowContext.js +5 -0
  247. package/dist/src/ui/contexts/OverflowContext.js.map +1 -1
  248. package/dist/src/ui/contexts/SessionContext.d.ts +3 -5
  249. package/dist/src/ui/contexts/SessionContext.js +16 -3
  250. package/dist/src/ui/contexts/SessionContext.js.map +1 -1
  251. package/dist/src/ui/contexts/StreamingContext.d.ts +1 -1
  252. package/dist/src/ui/contexts/VimModeContext.d.ts +1 -1
  253. package/dist/src/ui/contexts/VimModeContext.js +4 -4
  254. package/dist/src/ui/contexts/VimModeContext.js.map +1 -1
  255. package/dist/src/ui/hooks/atCommandProcessor.d.ts +3 -3
  256. package/dist/src/ui/hooks/atCommandProcessor.js +20 -20
  257. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  258. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +3 -3
  259. package/dist/src/ui/hooks/shellCommandProcessor.js +19 -15
  260. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  261. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +6 -14
  262. package/dist/src/ui/hooks/slashCommandProcessor.js +65 -243
  263. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  264. package/dist/src/ui/hooks/useAtCompletion.d.ts +2 -2
  265. package/dist/src/ui/hooks/useAtCompletion.js +4 -6
  266. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  267. package/dist/src/ui/hooks/useAuthCommand.d.ts +2 -2
  268. package/dist/src/ui/hooks/useAuthCommand.js +4 -5
  269. package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
  270. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +2 -4
  271. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +19 -20
  272. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  273. package/dist/src/ui/hooks/useCommandCompletion.d.ts +5 -8
  274. package/dist/src/ui/hooks/useCommandCompletion.js +9 -30
  275. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  276. package/dist/src/ui/hooks/useCompletion.d.ts +1 -1
  277. package/dist/src/ui/hooks/useCompletion.js +1 -1
  278. package/dist/src/ui/hooks/useCompletion.js.map +1 -1
  279. package/dist/src/ui/hooks/useConsoleMessages.d.ts +1 -1
  280. package/dist/src/ui/hooks/useEditorSettings.d.ts +2 -2
  281. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -1
  282. package/dist/src/ui/hooks/useFocus.d.ts +0 -4
  283. package/dist/src/ui/hooks/useFocus.js +4 -4
  284. package/dist/src/ui/hooks/useFocus.js.map +1 -1
  285. package/dist/src/ui/hooks/useGeminiStream.d.ts +5 -10
  286. package/dist/src/ui/hooks/useGeminiStream.js +71 -118
  287. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  288. package/dist/src/ui/hooks/useGitBranchName.js +1 -1
  289. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  290. package/dist/src/ui/hooks/useHistoryManager.d.ts +1 -1
  291. package/dist/src/ui/hooks/useKeypress.d.ts +16 -4
  292. package/dist/src/ui/hooks/useKeypress.js +140 -8
  293. package/dist/src/ui/hooks/useKeypress.js.map +1 -1
  294. package/dist/src/ui/hooks/useLogger.d.ts +1 -2
  295. package/dist/src/ui/hooks/useLogger.js +3 -3
  296. package/dist/src/ui/hooks/useLogger.js.map +1 -1
  297. package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
  298. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  299. package/dist/src/ui/hooks/usePrivacySettings.d.ts +1 -1
  300. package/dist/src/ui/hooks/usePrivacySettings.js +2 -6
  301. package/dist/src/ui/hooks/usePrivacySettings.js.map +1 -1
  302. package/dist/src/ui/hooks/useQwenAuth.d.ts +1 -1
  303. package/dist/src/ui/hooks/useQwenAuth.js +1 -1
  304. package/dist/src/ui/hooks/useQwenAuth.js.map +1 -1
  305. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +3 -3
  306. package/dist/src/ui/hooks/useReactToolScheduler.js +18 -17
  307. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  308. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +2 -2
  309. package/dist/src/ui/hooks/useShellHistory.d.ts +1 -2
  310. package/dist/src/ui/hooks/useShellHistory.js +10 -9
  311. package/dist/src/ui/hooks/useShellHistory.js.map +1 -1
  312. package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +3 -3
  313. package/dist/src/ui/hooks/useShowMemoryCommand.js +1 -1
  314. package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -1
  315. package/dist/src/ui/hooks/useSlashCompletion.d.ts +2 -2
  316. package/dist/src/ui/hooks/useThemeCommand.d.ts +1 -1
  317. package/dist/src/ui/hooks/useThemeCommand.js +9 -9
  318. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  319. package/dist/src/ui/privacy/CloudFreePrivacyNotice.d.ts +1 -1
  320. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +4 -5
  321. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  322. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +4 -5
  323. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -1
  324. package/dist/src/ui/privacy/GeminiPrivacyNotice.js +4 -5
  325. package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -1
  326. package/dist/src/ui/themes/ansi-light.js +1 -2
  327. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  328. package/dist/src/ui/themes/ansi.js +1 -2
  329. package/dist/src/ui/themes/ansi.js.map +1 -1
  330. package/dist/src/ui/themes/googlecode.js +1 -1
  331. package/dist/src/ui/themes/googlecode.js.map +1 -1
  332. package/dist/src/ui/themes/no-color.js +1 -30
  333. package/dist/src/ui/themes/no-color.js.map +1 -1
  334. package/dist/src/ui/themes/qwen-dark.js +1 -2
  335. package/dist/src/ui/themes/qwen-dark.js.map +1 -1
  336. package/dist/src/ui/themes/qwen-light.js +1 -2
  337. package/dist/src/ui/themes/qwen-light.js.map +1 -1
  338. package/dist/src/ui/themes/theme-manager.d.ts +1 -9
  339. package/dist/src/ui/themes/theme-manager.js +7 -81
  340. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  341. package/dist/src/ui/themes/theme.d.ts +2 -45
  342. package/dist/src/ui/themes/theme.js +107 -120
  343. package/dist/src/ui/themes/theme.js.map +1 -1
  344. package/dist/src/ui/types.d.ts +6 -34
  345. package/dist/src/ui/types.js +0 -2
  346. package/dist/src/ui/types.js.map +1 -1
  347. package/dist/src/ui/utils/CodeColorizer.d.ts +2 -3
  348. package/dist/src/ui/utils/CodeColorizer.js +4 -5
  349. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  350. package/dist/src/ui/utils/ConsolePatcher.d.ts +1 -2
  351. package/dist/src/ui/utils/ConsolePatcher.js +1 -4
  352. package/dist/src/ui/utils/ConsolePatcher.js.map +1 -1
  353. package/dist/src/ui/utils/InlineMarkdownRenderer.js +1 -8
  354. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  355. package/dist/src/ui/utils/MarkdownDisplay.js +3 -5
  356. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  357. package/dist/src/ui/utils/clipboardUtils.js +4 -4
  358. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  359. package/dist/src/ui/utils/commandUtils.d.ts +1 -2
  360. package/dist/src/ui/utils/commandUtils.js +15 -74
  361. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  362. package/dist/src/ui/utils/computeStats.d.ts +1 -1
  363. package/dist/src/ui/utils/computeStats.js +1 -3
  364. package/dist/src/ui/utils/computeStats.js.map +1 -1
  365. package/dist/src/ui/utils/errorParsing.d.ts +7 -0
  366. package/dist/src/ui/utils/errorParsing.js +90 -0
  367. package/dist/src/ui/utils/errorParsing.js.map +1 -0
  368. package/dist/src/ui/utils/textUtils.d.ts +0 -18
  369. package/dist/src/ui/utils/textUtils.js +0 -44
  370. package/dist/src/ui/utils/textUtils.js.map +1 -1
  371. package/dist/src/ui/utils/updateCheck.d.ts +2 -2
  372. package/dist/src/ui/utils/updateCheck.js +2 -2
  373. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  374. package/dist/src/utils/cleanup.d.ts +2 -2
  375. package/dist/src/utils/cleanup.js +6 -7
  376. package/dist/src/utils/cleanup.js.map +1 -1
  377. package/dist/src/utils/events.d.ts +1 -1
  378. package/dist/src/utils/events.js +1 -1
  379. package/dist/src/utils/events.js.map +1 -1
  380. package/dist/src/utils/gitUtils.d.ts +1 -21
  381. package/dist/src/utils/gitUtils.js +4 -69
  382. package/dist/src/utils/gitUtils.js.map +1 -1
  383. package/dist/src/utils/handleAutoUpdate.d.ts +4 -4
  384. package/dist/src/utils/handleAutoUpdate.js +3 -4
  385. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  386. package/dist/src/utils/installationInfo.js +3 -3
  387. package/dist/src/utils/installationInfo.js.map +1 -1
  388. package/dist/src/utils/package.js +2 -2
  389. package/dist/src/utils/package.js.map +1 -1
  390. package/dist/src/utils/readStdin.js +0 -25
  391. package/dist/src/utils/readStdin.js.map +1 -1
  392. package/dist/src/utils/resolvePath.js +2 -2
  393. package/dist/src/utils/resolvePath.js.map +1 -1
  394. package/dist/src/utils/sandbox.d.ts +2 -2
  395. package/dist/src/utils/sandbox.js +444 -460
  396. package/dist/src/utils/sandbox.js.map +1 -1
  397. package/dist/src/utils/spawnWrapper.d.ts +1 -1
  398. package/dist/src/utils/spawnWrapper.js +1 -1
  399. package/dist/src/utils/spawnWrapper.js.map +1 -1
  400. package/dist/src/utils/startupWarnings.js +2 -2
  401. package/dist/src/utils/startupWarnings.js.map +1 -1
  402. package/dist/src/utils/updateEventEmitter.d.ts +1 -1
  403. package/dist/src/utils/updateEventEmitter.js +1 -1
  404. package/dist/src/utils/updateEventEmitter.js.map +1 -1
  405. package/dist/src/utils/userStartupWarnings.js +3 -3
  406. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  407. package/dist/src/utils/version.js +1 -1
  408. package/dist/src/utils/version.js.map +1 -1
  409. package/dist/src/validateNonInterActiveAuth.d.ts +1 -1
  410. package/dist/src/validateNonInterActiveAuth.js +7 -4
  411. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  412. package/dist/tsconfig.tsbuildinfo +1 -1
  413. package/package.json +7 -10
  414. package/dist/src/commands/extensions/disable.d.ts +0 -14
  415. package/dist/src/commands/extensions/disable.js +0 -42
  416. package/dist/src/commands/extensions/disable.js.map +0 -1
  417. package/dist/src/commands/extensions/enable.d.ts +0 -14
  418. package/dist/src/commands/extensions/enable.js +0 -48
  419. package/dist/src/commands/extensions/enable.js.map +0 -1
  420. package/dist/src/commands/extensions/install.d.ts +0 -13
  421. package/dist/src/commands/extensions/install.js +0 -48
  422. package/dist/src/commands/extensions/install.js.map +0 -1
  423. package/dist/src/commands/extensions/install.test.d.ts +0 -6
  424. package/dist/src/commands/extensions/install.test.js +0 -25
  425. package/dist/src/commands/extensions/install.test.js.map +0 -1
  426. package/dist/src/commands/extensions/list.d.ts +0 -8
  427. package/dist/src/commands/extensions/list.js +0 -32
  428. package/dist/src/commands/extensions/list.js.map +0 -1
  429. package/dist/src/commands/extensions/uninstall.d.ts +0 -12
  430. package/dist/src/commands/extensions/uninstall.js +0 -38
  431. package/dist/src/commands/extensions/uninstall.js.map +0 -1
  432. package/dist/src/commands/extensions/uninstall.test.d.ts +0 -6
  433. package/dist/src/commands/extensions/uninstall.test.js +0 -18
  434. package/dist/src/commands/extensions/uninstall.test.js.map +0 -1
  435. package/dist/src/commands/extensions/update.d.ts +0 -12
  436. package/dist/src/commands/extensions/update.js +0 -38
  437. package/dist/src/commands/extensions/update.js.map +0 -1
  438. package/dist/src/commands/extensions.d.ts +0 -7
  439. package/dist/src/commands/extensions.js +0 -29
  440. package/dist/src/commands/extensions.js.map +0 -1
  441. package/dist/src/commands/mcp/add.d.ts +0 -7
  442. package/dist/src/commands/mcp/add.js +0 -167
  443. package/dist/src/commands/mcp/add.js.map +0 -1
  444. package/dist/src/commands/mcp/list.d.ts +0 -8
  445. package/dist/src/commands/mcp/list.js +0 -110
  446. package/dist/src/commands/mcp/list.js.map +0 -1
  447. package/dist/src/commands/mcp/remove.d.ts +0 -7
  448. package/dist/src/commands/mcp/remove.js +0 -44
  449. package/dist/src/commands/mcp/remove.js.map +0 -1
  450. package/dist/src/commands/mcp.d.ts +0 -7
  451. package/dist/src/commands/mcp.js +0 -23
  452. package/dist/src/commands/mcp.js.map +0 -1
  453. package/dist/src/config/auth.test.d.ts +0 -6
  454. package/dist/src/config/auth.test.js +0 -57
  455. package/dist/src/config/auth.test.js.map +0 -1
  456. package/dist/src/config/extensions/variableSchema.d.ts +0 -28
  457. package/dist/src/config/extensions/variableSchema.js +0 -18
  458. package/dist/src/config/extensions/variableSchema.js.map +0 -1
  459. package/dist/src/config/extensions/variables.d.ts +0 -17
  460. package/dist/src/config/extensions/variables.js +0 -40
  461. package/dist/src/config/extensions/variables.js.map +0 -1
  462. package/dist/src/config/extensions/variables.test.d.ts +0 -6
  463. package/dist/src/config/extensions/variables.test.js +0 -17
  464. package/dist/src/config/extensions/variables.test.js.map +0 -1
  465. package/dist/src/config/keyBindings.d.ts +0 -66
  466. package/dist/src/config/keyBindings.js +0 -141
  467. package/dist/src/config/keyBindings.js.map +0 -1
  468. package/dist/src/config/keyBindings.test.d.ts +0 -6
  469. package/dist/src/config/keyBindings.test.js +0 -51
  470. package/dist/src/config/keyBindings.test.js.map +0 -1
  471. package/dist/src/config/settingsSchema.d.ts +0 -884
  472. package/dist/src/config/settingsSchema.js +0 -857
  473. package/dist/src/config/settingsSchema.js.map +0 -1
  474. package/dist/src/config/settingsSchema.test.d.ts +0 -6
  475. package/dist/src/config/settingsSchema.test.js +0 -194
  476. package/dist/src/config/settingsSchema.test.js.map +0 -1
  477. package/dist/src/config/trustedFolders.d.ts +0 -37
  478. package/dist/src/config/trustedFolders.js +0 -118
  479. package/dist/src/config/trustedFolders.js.map +0 -1
  480. package/dist/src/config/trustedFolders.test.d.ts +0 -6
  481. package/dist/src/config/trustedFolders.test.js +0 -164
  482. package/dist/src/config/trustedFolders.test.js.map +0 -1
  483. package/dist/src/gemini.test.d.ts +0 -6
  484. package/dist/src/gemini.test.js +0 -247
  485. package/dist/src/gemini.test.js.map +0 -1
  486. package/dist/src/services/BuiltinCommandLoader.test.d.ts +0 -6
  487. package/dist/src/services/BuiltinCommandLoader.test.js +0 -130
  488. package/dist/src/services/BuiltinCommandLoader.test.js.map +0 -1
  489. package/dist/src/services/CommandService.test.d.ts +0 -6
  490. package/dist/src/services/CommandService.test.js +0 -233
  491. package/dist/src/services/CommandService.test.js.map +0 -1
  492. package/dist/src/services/McpPromptLoader.test.d.ts +0 -6
  493. package/dist/src/services/McpPromptLoader.test.js +0 -114
  494. package/dist/src/services/McpPromptLoader.test.js.map +0 -1
  495. package/dist/src/services/prompt-processors/atFileProcessor.d.ts +0 -12
  496. package/dist/src/services/prompt-processors/atFileProcessor.js +0 -62
  497. package/dist/src/services/prompt-processors/atFileProcessor.js.map +0 -1
  498. package/dist/src/services/prompt-processors/atFileProcessor.test.d.ts +0 -6
  499. package/dist/src/services/prompt-processors/atFileProcessor.test.js +0 -174
  500. package/dist/src/services/prompt-processors/atFileProcessor.test.js.map +0 -1
  501. package/dist/src/services/prompt-processors/injectionParser.d.ts +0 -29
  502. package/dist/src/services/prompt-processors/injectionParser.js +0 -60
  503. package/dist/src/services/prompt-processors/injectionParser.js.map +0 -1
  504. package/dist/src/services/prompt-processors/injectionParser.test.d.ts +0 -6
  505. package/dist/src/services/prompt-processors/injectionParser.test.js +0 -189
  506. package/dist/src/services/prompt-processors/injectionParser.test.js.map +0 -1
  507. package/dist/src/test-utils/customMatchers.d.ts +0 -14
  508. package/dist/src/test-utils/customMatchers.js +0 -40
  509. package/dist/src/test-utils/customMatchers.js.map +0 -1
  510. package/dist/src/test-utils/mockCommandContext.d.ts +0 -18
  511. package/dist/src/test-utils/mockCommandContext.js +0 -90
  512. package/dist/src/test-utils/mockCommandContext.js.map +0 -1
  513. package/dist/src/test-utils/mockCommandContext.test.d.ts +0 -6
  514. package/dist/src/test-utils/mockCommandContext.test.js +0 -51
  515. package/dist/src/test-utils/mockCommandContext.test.js.map +0 -1
  516. package/dist/src/test-utils/render.d.ts +0 -8
  517. package/dist/src/test-utils/render.js +0 -10
  518. package/dist/src/test-utils/render.js.map +0 -1
  519. package/dist/src/ui/IdeIntegrationNudge.d.ts +0 -16
  520. package/dist/src/ui/IdeIntegrationNudge.js +0 -52
  521. package/dist/src/ui/IdeIntegrationNudge.js.map +0 -1
  522. package/dist/src/ui/commands/agentsCommand.d.ts +0 -7
  523. package/dist/src/ui/commands/agentsCommand.js +0 -32
  524. package/dist/src/ui/commands/agentsCommand.js.map +0 -1
  525. package/dist/src/ui/commands/approvalModeCommand.d.ts +0 -7
  526. package/dist/src/ui/commands/approvalModeCommand.js +0 -340
  527. package/dist/src/ui/commands/approvalModeCommand.js.map +0 -1
  528. package/dist/src/ui/commands/approvalModeCommand.test.d.ts +0 -6
  529. package/dist/src/ui/commands/approvalModeCommand.test.js +0 -293
  530. package/dist/src/ui/commands/approvalModeCommand.test.js.map +0 -1
  531. package/dist/src/ui/commands/modelCommand.d.ts +0 -7
  532. package/dist/src/ui/commands/modelCommand.js +0 -68
  533. package/dist/src/ui/commands/modelCommand.js.map +0 -1
  534. package/dist/src/ui/commands/modelCommand.test.d.ts +0 -6
  535. package/dist/src/ui/commands/modelCommand.test.js +0 -138
  536. package/dist/src/ui/commands/modelCommand.test.js.map +0 -1
  537. package/dist/src/ui/commands/settingsCommand.d.ts +0 -7
  538. package/dist/src/ui/commands/settingsCommand.js +0 -16
  539. package/dist/src/ui/commands/settingsCommand.js.map +0 -1
  540. package/dist/src/ui/commands/setupGithubCommand.test.d.ts +0 -6
  541. package/dist/src/ui/commands/setupGithubCommand.test.js +0 -167
  542. package/dist/src/ui/commands/setupGithubCommand.test.js.map +0 -1
  543. package/dist/src/ui/commands/summaryCommand.d.ts +0 -7
  544. package/dist/src/ui/commands/summaryCommand.js +0 -149
  545. package/dist/src/ui/commands/summaryCommand.js.map +0 -1
  546. package/dist/src/ui/commands/terminalSetupCommand.d.ts +0 -13
  547. package/dist/src/ui/commands/terminalSetupCommand.js +0 -41
  548. package/dist/src/ui/commands/terminalSetupCommand.js.map +0 -1
  549. package/dist/src/ui/components/AuthDialog.test.d.ts +0 -6
  550. package/dist/src/ui/components/AuthDialog.test.js +0 -280
  551. package/dist/src/ui/components/AuthDialog.test.js.map +0 -1
  552. package/dist/src/ui/components/ContextUsageDisplay.d.ts +0 -9
  553. package/dist/src/ui/components/ContextUsageDisplay.js +0 -14
  554. package/dist/src/ui/components/ContextUsageDisplay.js.map +0 -1
  555. package/dist/src/ui/components/FolderTrustDialog.d.ts +0 -17
  556. package/dist/src/ui/components/FolderTrustDialog.js +0 -45
  557. package/dist/src/ui/components/FolderTrustDialog.js.map +0 -1
  558. package/dist/src/ui/components/FolderTrustDialog.test.d.ts +0 -6
  559. package/dist/src/ui/components/FolderTrustDialog.test.js +0 -63
  560. package/dist/src/ui/components/FolderTrustDialog.test.js.map +0 -1
  561. package/dist/src/ui/components/Header.test.d.ts +0 -6
  562. package/dist/src/ui/components/Header.test.js +0 -37
  563. package/dist/src/ui/components/Header.test.js.map +0 -1
  564. package/dist/src/ui/components/HistoryItemDisplay.test.d.ts +0 -6
  565. package/dist/src/ui/components/HistoryItemDisplay.test.js +0 -93
  566. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +0 -1
  567. package/dist/src/ui/components/LoadingIndicator.test.d.ts +0 -6
  568. package/dist/src/ui/components/LoadingIndicator.test.js +0 -190
  569. package/dist/src/ui/components/LoadingIndicator.test.js.map +0 -1
  570. package/dist/src/ui/components/ModelSelectionDialog.d.ts +0 -14
  571. package/dist/src/ui/components/ModelSelectionDialog.js +0 -26
  572. package/dist/src/ui/components/ModelSelectionDialog.js.map +0 -1
  573. package/dist/src/ui/components/ModelSelectionDialog.test.d.ts +0 -6
  574. package/dist/src/ui/components/ModelSelectionDialog.test.js +0 -124
  575. package/dist/src/ui/components/ModelSelectionDialog.test.js.map +0 -1
  576. package/dist/src/ui/components/ModelSwitchDialog.d.ts +0 -15
  577. package/dist/src/ui/components/ModelSwitchDialog.js +0 -37
  578. package/dist/src/ui/components/ModelSwitchDialog.js.map +0 -1
  579. package/dist/src/ui/components/ModelSwitchDialog.test.d.ts +0 -6
  580. package/dist/src/ui/components/ModelSwitchDialog.test.js +0 -125
  581. package/dist/src/ui/components/ModelSwitchDialog.test.js.map +0 -1
  582. package/dist/src/ui/components/OpenAIKeyPrompt.test.d.ts +0 -6
  583. package/dist/src/ui/components/OpenAIKeyPrompt.test.js +0 -44
  584. package/dist/src/ui/components/OpenAIKeyPrompt.test.js.map +0 -1
  585. package/dist/src/ui/components/PlanSummaryDisplay.d.ts +0 -14
  586. package/dist/src/ui/components/PlanSummaryDisplay.js +0 -9
  587. package/dist/src/ui/components/PlanSummaryDisplay.js.map +0 -1
  588. package/dist/src/ui/components/QuitConfirmationDialog.d.ts +0 -17
  589. package/dist/src/ui/components/QuitConfirmationDialog.js +0 -44
  590. package/dist/src/ui/components/QuitConfirmationDialog.js.map +0 -1
  591. package/dist/src/ui/components/QwenOAuthProgress.test.d.ts +0 -6
  592. package/dist/src/ui/components/QwenOAuthProgress.test.js +0 -292
  593. package/dist/src/ui/components/QwenOAuthProgress.test.js.map +0 -1
  594. package/dist/src/ui/components/SettingsDialog.d.ts +0 -15
  595. package/dist/src/ui/components/SettingsDialog.js +0 -550
  596. package/dist/src/ui/components/SettingsDialog.js.map +0 -1
  597. package/dist/src/ui/components/SettingsDialog.test.d.ts +0 -6
  598. package/dist/src/ui/components/SettingsDialog.test.js +0 -646
  599. package/dist/src/ui/components/SettingsDialog.test.js.map +0 -1
  600. package/dist/src/ui/components/ShellConfirmationDialog.test.d.ts +0 -6
  601. package/dist/src/ui/components/ShellConfirmationDialog.test.js +0 -40
  602. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +0 -1
  603. package/dist/src/ui/components/TodoDisplay.d.ts +0 -16
  604. package/dist/src/ui/components/TodoDisplay.js +0 -27
  605. package/dist/src/ui/components/TodoDisplay.js.map +0 -1
  606. package/dist/src/ui/components/TodoDisplay.test.d.ts +0 -6
  607. package/dist/src/ui/components/TodoDisplay.test.js +0 -77
  608. package/dist/src/ui/components/TodoDisplay.test.js.map +0 -1
  609. package/dist/src/ui/components/WelcomeBackDialog.d.ts +0 -13
  610. package/dist/src/ui/components/WelcomeBackDialog.js +0 -32
  611. package/dist/src/ui/components/WelcomeBackDialog.js.map +0 -1
  612. package/dist/src/ui/components/WorkspaceMigrationDialog.d.ts +0 -11
  613. package/dist/src/ui/components/WorkspaceMigrationDialog.js +0 -42
  614. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +0 -1
  615. package/dist/src/ui/components/messages/DiffRenderer.test.d.ts +0 -6
  616. package/dist/src/ui/components/messages/DiffRenderer.test.js +0 -239
  617. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +0 -1
  618. package/dist/src/ui/components/messages/SummaryMessage.d.ts +0 -11
  619. package/dist/src/ui/components/messages/SummaryMessage.js +0 -35
  620. package/dist/src/ui/components/messages/SummaryMessage.js.map +0 -1
  621. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.d.ts +0 -6
  622. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +0 -137
  623. package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +0 -1
  624. package/dist/src/ui/components/messages/ToolGroupMessage.test.d.ts +0 -6
  625. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +0 -259
  626. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +0 -1
  627. package/dist/src/ui/components/messages/ToolMessage.test.d.ts +0 -6
  628. package/dist/src/ui/components/messages/ToolMessage.test.js +0 -149
  629. package/dist/src/ui/components/messages/ToolMessage.test.js.map +0 -1
  630. package/dist/src/ui/components/shared/MaxSizedBox.test.d.ts +0 -6
  631. package/dist/src/ui/components/shared/MaxSizedBox.test.js +0 -154
  632. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +0 -1
  633. package/dist/src/ui/components/shared/RadioButtonSelect.test.d.ts +0 -6
  634. package/dist/src/ui/components/shared/RadioButtonSelect.test.js +0 -111
  635. package/dist/src/ui/components/shared/RadioButtonSelect.test.js.map +0 -1
  636. package/dist/src/ui/components/shared/TextInput.d.ts +0 -16
  637. package/dist/src/ui/components/shared/TextInput.js +0 -127
  638. package/dist/src/ui/components/shared/TextInput.js.map +0 -1
  639. package/dist/src/ui/components/subagents/constants.d.ts +0 -23
  640. package/dist/src/ui/components/subagents/constants.js +0 -67
  641. package/dist/src/ui/components/subagents/constants.js.map +0 -1
  642. package/dist/src/ui/components/subagents/create/AgentCreationWizard.d.ts +0 -15
  643. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js +0 -174
  644. package/dist/src/ui/components/subagents/create/AgentCreationWizard.js.map +0 -1
  645. package/dist/src/ui/components/subagents/create/ColorSelector.d.ts +0 -15
  646. package/dist/src/ui/components/subagents/create/ColorSelector.js +0 -42
  647. package/dist/src/ui/components/subagents/create/ColorSelector.js.map +0 -1
  648. package/dist/src/ui/components/subagents/create/CreationSummary.d.ts +0 -10
  649. package/dist/src/ui/components/subagents/create/CreationSummary.js +0 -163
  650. package/dist/src/ui/components/subagents/create/CreationSummary.js.map +0 -1
  651. package/dist/src/ui/components/subagents/create/DescriptionInput.d.ts +0 -10
  652. package/dist/src/ui/components/subagents/create/DescriptionInput.js +0 -105
  653. package/dist/src/ui/components/subagents/create/DescriptionInput.js.map +0 -1
  654. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.d.ts +0 -10
  655. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js +0 -33
  656. package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js.map +0 -1
  657. package/dist/src/ui/components/subagents/create/LocationSelector.d.ts +0 -10
  658. package/dist/src/ui/components/subagents/create/LocationSelector.js +0 -33
  659. package/dist/src/ui/components/subagents/create/LocationSelector.js.map +0 -1
  660. package/dist/src/ui/components/subagents/create/TextEntryStep.d.ts +0 -26
  661. package/dist/src/ui/components/subagents/create/TextEntryStep.js +0 -28
  662. package/dist/src/ui/components/subagents/create/TextEntryStep.js.map +0 -1
  663. package/dist/src/ui/components/subagents/create/ToolSelector.d.ts +0 -16
  664. package/dist/src/ui/components/subagents/create/ToolSelector.js +0 -143
  665. package/dist/src/ui/components/subagents/create/ToolSelector.js.map +0 -1
  666. package/dist/src/ui/components/subagents/index.d.ts +0 -8
  667. package/dist/src/ui/components/subagents/index.js +0 -12
  668. package/dist/src/ui/components/subagents/index.js.map +0 -1
  669. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.d.ts +0 -13
  670. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js +0 -46
  671. package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js.map +0 -1
  672. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.d.ts +0 -13
  673. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js +0 -33
  674. package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js.map +0 -1
  675. package/dist/src/ui/components/subagents/manage/AgentEditStep.d.ts +0 -15
  676. package/dist/src/ui/components/subagents/manage/AgentEditStep.js +0 -63
  677. package/dist/src/ui/components/subagents/manage/AgentEditStep.js.map +0 -1
  678. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.d.ts +0 -12
  679. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js +0 -225
  680. package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js.map +0 -1
  681. package/dist/src/ui/components/subagents/manage/AgentViewerStep.d.ts +0 -11
  682. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js +0 -19
  683. package/dist/src/ui/components/subagents/manage/AgentViewerStep.js.map +0 -1
  684. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.d.ts +0 -15
  685. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js +0 -212
  686. package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js.map +0 -1
  687. package/dist/src/ui/components/subagents/reducers.d.ts +0 -14
  688. package/dist/src/ui/components/subagents/reducers.js +0 -162
  689. package/dist/src/ui/components/subagents/reducers.js.map +0 -1
  690. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.d.ts +0 -20
  691. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js +0 -194
  692. package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js.map +0 -1
  693. package/dist/src/ui/components/subagents/types.d.ts +0 -137
  694. package/dist/src/ui/components/subagents/types.js +0 -15
  695. package/dist/src/ui/components/subagents/types.js.map +0 -1
  696. package/dist/src/ui/components/subagents/utils.d.ts +0 -15
  697. package/dist/src/ui/components/subagents/utils.js +0 -79
  698. package/dist/src/ui/components/subagents/utils.js.map +0 -1
  699. package/dist/src/ui/contexts/KeypressContext.d.ts +0 -32
  700. package/dist/src/ui/contexts/KeypressContext.js +0 -371
  701. package/dist/src/ui/contexts/KeypressContext.js.map +0 -1
  702. package/dist/src/ui/contexts/KeypressContext.test.d.ts +0 -6
  703. package/dist/src/ui/contexts/KeypressContext.test.js +0 -894
  704. package/dist/src/ui/contexts/KeypressContext.test.js.map +0 -1
  705. package/dist/src/ui/contexts/SettingsContext.d.ts +0 -9
  706. package/dist/src/ui/contexts/SettingsContext.js +0 -15
  707. package/dist/src/ui/contexts/SettingsContext.js.map +0 -1
  708. package/dist/src/ui/hooks/atCommandProcessor.test.d.ts +0 -6
  709. package/dist/src/ui/hooks/atCommandProcessor.test.js +0 -832
  710. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +0 -1
  711. package/dist/src/ui/hooks/shellCommandProcessor.test.d.ts +0 -6
  712. package/dist/src/ui/hooks/shellCommandProcessor.test.js +0 -329
  713. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +0 -1
  714. package/dist/src/ui/hooks/useAgentsManagerDialog.d.ts +0 -11
  715. package/dist/src/ui/hooks/useAgentsManagerDialog.js +0 -21
  716. package/dist/src/ui/hooks/useAgentsManagerDialog.js.map +0 -1
  717. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.d.ts +0 -6
  718. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +0 -263
  719. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +0 -1
  720. package/dist/src/ui/hooks/useDialogClose.d.ts +0 -34
  721. package/dist/src/ui/hooks/useDialogClose.js +0 -62
  722. package/dist/src/ui/hooks/useDialogClose.js.map +0 -1
  723. package/dist/src/ui/hooks/useEditorSettings.test.d.ts +0 -6
  724. package/dist/src/ui/hooks/useEditorSettings.test.js +0 -164
  725. package/dist/src/ui/hooks/useEditorSettings.test.js.map +0 -1
  726. package/dist/src/ui/hooks/useFolderTrust.d.ts +0 -13
  727. package/dist/src/ui/hooks/useFolderTrust.js +0 -64
  728. package/dist/src/ui/hooks/useFolderTrust.js.map +0 -1
  729. package/dist/src/ui/hooks/useGitBranchName.test.d.ts +0 -6
  730. package/dist/src/ui/hooks/useGitBranchName.test.js +0 -175
  731. package/dist/src/ui/hooks/useGitBranchName.test.js.map +0 -1
  732. package/dist/src/ui/hooks/useHistoryManager.test.d.ts +0 -6
  733. package/dist/src/ui/hooks/useHistoryManager.test.js +0 -171
  734. package/dist/src/ui/hooks/useHistoryManager.test.js.map +0 -1
  735. package/dist/src/ui/hooks/useInputHistory.test.d.ts +0 -6
  736. package/dist/src/ui/hooks/useInputHistory.test.js +0 -207
  737. package/dist/src/ui/hooks/useInputHistory.test.js.map +0 -1
  738. package/dist/src/ui/hooks/useKittyKeyboardProtocol.d.ts +0 -15
  739. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js +0 -20
  740. package/dist/src/ui/hooks/useKittyKeyboardProtocol.js.map +0 -1
  741. package/dist/src/ui/hooks/useLaunchEditor.d.ts +0 -10
  742. package/dist/src/ui/hooks/useLaunchEditor.js +0 -70
  743. package/dist/src/ui/hooks/useLaunchEditor.js.map +0 -1
  744. package/dist/src/ui/hooks/useLoadingIndicator.test.d.ts +0 -6
  745. package/dist/src/ui/hooks/useLoadingIndicator.test.js +0 -91
  746. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +0 -1
  747. package/dist/src/ui/hooks/useMessageQueue.d.ts +0 -22
  748. package/dist/src/ui/hooks/useMessageQueue.js +0 -49
  749. package/dist/src/ui/hooks/useMessageQueue.js.map +0 -1
  750. package/dist/src/ui/hooks/useMessageQueue.test.d.ts +0 -6
  751. package/dist/src/ui/hooks/useMessageQueue.test.js +0 -158
  752. package/dist/src/ui/hooks/useMessageQueue.test.js.map +0 -1
  753. package/dist/src/ui/hooks/usePrivacySettings.test.d.ts +0 -6
  754. package/dist/src/ui/hooks/usePrivacySettings.test.js +0 -154
  755. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +0 -1
  756. package/dist/src/ui/hooks/usePromptCompletion.d.ts +0 -23
  757. package/dist/src/ui/hooks/usePromptCompletion.js +0 -177
  758. package/dist/src/ui/hooks/usePromptCompletion.js.map +0 -1
  759. package/dist/src/ui/hooks/useQuitConfirmation.d.ts +0 -14
  760. package/dist/src/ui/hooks/useQuitConfirmation.js +0 -36
  761. package/dist/src/ui/hooks/useQuitConfirmation.js.map +0 -1
  762. package/dist/src/ui/hooks/useQwenAuth.test.d.ts +0 -6
  763. package/dist/src/ui/hooks/useQwenAuth.test.js +0 -292
  764. package/dist/src/ui/hooks/useQwenAuth.test.js.map +0 -1
  765. package/dist/src/ui/hooks/useReverseSearchCompletion.test.d.ts +0 -6
  766. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +0 -163
  767. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +0 -1
  768. package/dist/src/ui/hooks/useSettingsCommand.d.ts +0 -10
  769. package/dist/src/ui/hooks/useSettingsCommand.js +0 -21
  770. package/dist/src/ui/hooks/useSettingsCommand.js.map +0 -1
  771. package/dist/src/ui/hooks/useShellHistory.test.d.ts +0 -6
  772. package/dist/src/ui/hooks/useShellHistory.test.js +0 -187
  773. package/dist/src/ui/hooks/useShellHistory.test.js.map +0 -1
  774. package/dist/src/ui/hooks/useSlashCompletion.test.d.ts +0 -6
  775. package/dist/src/ui/hooks/useSlashCompletion.test.js +0 -272
  776. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +0 -1
  777. package/dist/src/ui/hooks/useSubagentCreateDialog.d.ts +0 -10
  778. package/dist/src/ui/hooks/useSubagentCreateDialog.js +0 -21
  779. package/dist/src/ui/hooks/useSubagentCreateDialog.js.map +0 -1
  780. package/dist/src/ui/hooks/useTimer.test.d.ts +0 -6
  781. package/dist/src/ui/hooks/useTimer.test.js +0 -90
  782. package/dist/src/ui/hooks/useTimer.test.js.map +0 -1
  783. package/dist/src/ui/hooks/useToolScheduler.test.d.ts +0 -6
  784. package/dist/src/ui/hooks/useToolScheduler.test.js +0 -850
  785. package/dist/src/ui/hooks/useToolScheduler.test.js.map +0 -1
  786. package/dist/src/ui/hooks/useVisionAutoSwitch.d.ts +0 -47
  787. package/dist/src/ui/hooks/useVisionAutoSwitch.js +0 -262
  788. package/dist/src/ui/hooks/useVisionAutoSwitch.js.map +0 -1
  789. package/dist/src/ui/hooks/useVisionAutoSwitch.test.d.ts +0 -6
  790. package/dist/src/ui/hooks/useVisionAutoSwitch.test.js +0 -515
  791. package/dist/src/ui/hooks/useVisionAutoSwitch.test.js.map +0 -1
  792. package/dist/src/ui/hooks/useWelcomeBack.d.ts +0 -23
  793. package/dist/src/ui/hooks/useWelcomeBack.js +0 -79
  794. package/dist/src/ui/hooks/useWelcomeBack.js.map +0 -1
  795. package/dist/src/ui/hooks/useWorkspaceMigration.d.ts +0 -13
  796. package/dist/src/ui/hooks/useWorkspaceMigration.js +0 -53
  797. package/dist/src/ui/hooks/useWorkspaceMigration.js.map +0 -1
  798. package/dist/src/ui/keyMatchers.d.ts +0 -27
  799. package/dist/src/ui/keyMatchers.js +0 -68
  800. package/dist/src/ui/keyMatchers.js.map +0 -1
  801. package/dist/src/ui/keyMatchers.test.d.ts +0 -6
  802. package/dist/src/ui/keyMatchers.test.js +0 -276
  803. package/dist/src/ui/keyMatchers.test.js.map +0 -1
  804. package/dist/src/ui/models/availableModels.d.ts +0 -29
  805. package/dist/src/ui/models/availableModels.js +0 -40
  806. package/dist/src/ui/models/availableModels.js.map +0 -1
  807. package/dist/src/ui/semantic-colors.d.ts +0 -7
  808. package/dist/src/ui/semantic-colors.js +0 -24
  809. package/dist/src/ui/semantic-colors.js.map +0 -1
  810. package/dist/src/ui/textConstants.d.ts +0 -9
  811. package/dist/src/ui/textConstants.js +0 -10
  812. package/dist/src/ui/textConstants.js.map +0 -1
  813. package/dist/src/ui/themes/color-utils.test.d.ts +0 -6
  814. package/dist/src/ui/themes/color-utils.test.js +0 -197
  815. package/dist/src/ui/themes/color-utils.test.js.map +0 -1
  816. package/dist/src/ui/themes/semantic-tokens.d.ts +0 -37
  817. package/dist/src/ui/themes/semantic-tokens.js +0 -94
  818. package/dist/src/ui/themes/semantic-tokens.js.map +0 -1
  819. package/dist/src/ui/themes/theme-manager.test.d.ts +0 -6
  820. package/dist/src/ui/themes/theme-manager.test.js +0 -142
  821. package/dist/src/ui/themes/theme-manager.test.js.map +0 -1
  822. package/dist/src/ui/utils/MarkdownDisplay.test.d.ts +0 -6
  823. package/dist/src/ui/utils/MarkdownDisplay.test.js +0 -161
  824. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +0 -1
  825. package/dist/src/ui/utils/clipboardUtils.test.d.ts +0 -6
  826. package/dist/src/ui/utils/clipboardUtils.test.js +0 -65
  827. package/dist/src/ui/utils/clipboardUtils.test.js.map +0 -1
  828. package/dist/src/ui/utils/commandUtils.test.d.ts +0 -6
  829. package/dist/src/ui/utils/commandUtils.test.js +0 -349
  830. package/dist/src/ui/utils/commandUtils.test.js.map +0 -1
  831. package/dist/src/ui/utils/displayUtils.test.d.ts +0 -6
  832. package/dist/src/ui/utils/displayUtils.test.js +0 -42
  833. package/dist/src/ui/utils/displayUtils.test.js.map +0 -1
  834. package/dist/src/ui/utils/formatters.test.d.ts +0 -6
  835. package/dist/src/ui/utils/formatters.test.js +0 -56
  836. package/dist/src/ui/utils/formatters.test.js.map +0 -1
  837. package/dist/src/ui/utils/isNarrowWidth.d.ts +0 -6
  838. package/dist/src/ui/utils/isNarrowWidth.js +0 -9
  839. package/dist/src/ui/utils/isNarrowWidth.js.map +0 -1
  840. package/dist/src/ui/utils/kittyProtocolDetector.d.ts +0 -13
  841. package/dist/src/ui/utils/kittyProtocolDetector.js +0 -88
  842. package/dist/src/ui/utils/kittyProtocolDetector.js.map +0 -1
  843. package/dist/src/ui/utils/markdownUtilities.test.d.ts +0 -6
  844. package/dist/src/ui/utils/markdownUtilities.test.js +0 -42
  845. package/dist/src/ui/utils/markdownUtilities.test.js.map +0 -1
  846. package/dist/src/ui/utils/platformConstants.d.ts +0 -52
  847. package/dist/src/ui/utils/platformConstants.js +0 -53
  848. package/dist/src/ui/utils/platformConstants.js.map +0 -1
  849. package/dist/src/ui/utils/terminalSetup.d.ts +0 -30
  850. package/dist/src/ui/utils/terminalSetup.js +0 -281
  851. package/dist/src/ui/utils/terminalSetup.js.map +0 -1
  852. package/dist/src/ui/utils/updateCheck.test.d.ts +0 -6
  853. package/dist/src/ui/utils/updateCheck.test.js +0 -145
  854. package/dist/src/ui/utils/updateCheck.test.js.map +0 -1
  855. package/dist/src/utils/checks.d.ts +0 -19
  856. package/dist/src/utils/checks.js +0 -24
  857. package/dist/src/utils/checks.js.map +0 -1
  858. package/dist/src/utils/dialogScopeUtils.d.ts +0 -32
  859. package/dist/src/utils/dialogScopeUtils.js +0 -48
  860. package/dist/src/utils/dialogScopeUtils.js.map +0 -1
  861. package/dist/src/utils/errors.d.ts +0 -6
  862. package/dist/src/utils/errors.js +0 -12
  863. package/dist/src/utils/errors.js.map +0 -1
  864. package/dist/src/utils/gitUtils.test.d.ts +0 -6
  865. package/dist/src/utils/gitUtils.test.js +0 -113
  866. package/dist/src/utils/gitUtils.test.js.map +0 -1
  867. package/dist/src/utils/installationInfo.test.d.ts +0 -6
  868. package/dist/src/utils/installationInfo.test.js +0 -242
  869. package/dist/src/utils/installationInfo.test.js.map +0 -1
  870. package/dist/src/utils/readStdin.test.d.ts +0 -6
  871. package/dist/src/utils/readStdin.test.js +0 -88
  872. package/dist/src/utils/readStdin.test.js.map +0 -1
  873. package/dist/src/utils/settingsUtils.d.ts +0 -134
  874. package/dist/src/utils/settingsUtils.js +0 -330
  875. package/dist/src/utils/settingsUtils.js.map +0 -1
  876. package/dist/src/utils/settingsUtils.test.d.ts +0 -6
  877. package/dist/src/utils/settingsUtils.test.js +0 -511
  878. package/dist/src/utils/settingsUtils.test.js.map +0 -1
  879. package/dist/src/utils/userStartupWarnings.test.d.ts +0 -6
  880. package/dist/src/utils/userStartupWarnings.test.js +0 -67
  881. package/dist/src/utils/userStartupWarnings.test.js.map +0 -1
  882. package/dist/src/zed-integration/acp.d.ts +0 -63
  883. package/dist/src/zed-integration/acp.js.map +0 -1
  884. package/dist/src/zed-integration/fileSystemService.d.ts +0 -19
  885. package/dist/src/zed-integration/fileSystemService.js +0 -43
  886. package/dist/src/zed-integration/fileSystemService.js.map +0 -1
  887. package/dist/src/zed-integration/schema.d.ts +0 -11782
  888. package/dist/src/zed-integration/schema.js +0 -311
  889. package/dist/src/zed-integration/schema.js.map +0 -1
  890. package/dist/src/zed-integration/zedIntegration.d.ts +0 -10
  891. package/dist/src/zed-integration/zedIntegration.js +0 -787
  892. package/dist/src/zed-integration/zedIntegration.js.map +0 -1
@@ -3,14 +3,15 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { spawnSync } from 'node:child_process';
7
- import fs from 'node:fs';
8
- import os from 'node:os';
9
- import pathMod from 'node:path';
6
+ import stripAnsi from 'strip-ansi';
7
+ import { spawnSync } from 'child_process';
8
+ import fs from 'fs';
9
+ import os from 'os';
10
+ import pathMod from 'path';
10
11
  import { useState, useCallback, useEffect, useMemo, useReducer } from 'react';
11
12
  import stringWidth from 'string-width';
12
13
  import { unescapePath } from '@umsai/ums-code-core';
13
- import { toCodePoints, cpLen, cpSlice, stripUnsafeCharacters, } from '../../utils/textUtils.js';
14
+ import { toCodePoints, cpLen, cpSlice } from '../../utils/textUtils.js';
14
15
  import { handleVimAction } from './vim-buffer-actions.js';
15
16
  // Simple helper for word‑wise ops.
16
17
  function isWordChar(ch) {
@@ -19,266 +20,112 @@ function isWordChar(ch) {
19
20
  }
20
21
  return !/[\s,.;!?]/.test(ch);
21
22
  }
22
- // Helper functions for line-based word navigation
23
- export const isWordCharStrict = (char) => /[\w\p{L}\p{N}]/u.test(char); // Matches a single character that is any Unicode letter, any Unicode number, or an underscore
24
- export const isWhitespace = (char) => /\s/.test(char);
25
- // Check if a character is a combining mark (only diacritics for now)
26
- export const isCombiningMark = (char) => /\p{M}/u.test(char);
27
- // Check if a character should be considered part of a word (including combining marks)
28
- export const isWordCharWithCombining = (char) => isWordCharStrict(char) || isCombiningMark(char);
29
- // Get the script of a character (simplified for common scripts)
30
- export const getCharScript = (char) => {
31
- if (/[\p{Script=Latin}]/u.test(char))
32
- return 'latin'; // All Latin script chars including diacritics
33
- if (/[\p{Script=Han}]/u.test(char))
34
- return 'han'; // Chinese
35
- if (/[\p{Script=Arabic}]/u.test(char))
36
- return 'arabic';
37
- if (/[\p{Script=Hiragana}]/u.test(char))
38
- return 'hiragana';
39
- if (/[\p{Script=Katakana}]/u.test(char))
40
- return 'katakana';
41
- if (/[\p{Script=Cyrillic}]/u.test(char))
42
- return 'cyrillic';
43
- return 'other';
44
- };
45
- // Check if two characters are from different scripts (indicating word boundary)
46
- export const isDifferentScript = (char1, char2) => {
47
- if (!isWordCharStrict(char1) || !isWordCharStrict(char2))
48
- return false;
49
- return getCharScript(char1) !== getCharScript(char2);
50
- };
51
- // Find next word start within a line, starting from col
52
- export const findNextWordStartInLine = (line, col) => {
53
- const chars = toCodePoints(line);
54
- let i = col;
55
- if (i >= chars.length)
56
- return null;
57
- const currentChar = chars[i];
23
+ // Vim-specific word boundary functions
24
+ export const findNextWordStart = (text, currentOffset) => {
25
+ let i = currentOffset;
26
+ if (i >= text.length)
27
+ return i;
28
+ const currentChar = text[i];
58
29
  // Skip current word/sequence based on character type
59
- if (isWordCharStrict(currentChar)) {
60
- while (i < chars.length && isWordCharWithCombining(chars[i])) {
61
- // Check for script boundary - if next character is from different script, stop here
62
- if (i + 1 < chars.length &&
63
- isWordCharStrict(chars[i + 1]) &&
64
- isDifferentScript(chars[i], chars[i + 1])) {
65
- i++; // Include current character
66
- break; // Stop at script boundary
67
- }
30
+ if (/\w/.test(currentChar)) {
31
+ // Skip current word characters
32
+ while (i < text.length && /\w/.test(text[i])) {
68
33
  i++;
69
34
  }
70
35
  }
71
- else if (!isWhitespace(currentChar)) {
72
- while (i < chars.length &&
73
- !isWordCharStrict(chars[i]) &&
74
- !isWhitespace(chars[i])) {
36
+ else if (!/\s/.test(currentChar)) {
37
+ // Skip current non-word, non-whitespace characters (like "/", ".", etc.)
38
+ while (i < text.length && !/\w/.test(text[i]) && !/\s/.test(text[i])) {
75
39
  i++;
76
40
  }
77
41
  }
78
42
  // Skip whitespace
79
- while (i < chars.length && isWhitespace(chars[i])) {
43
+ while (i < text.length && /\s/.test(text[i])) {
80
44
  i++;
81
45
  }
82
- return i < chars.length ? i : null;
46
+ // If we reached the end of text and there's no next word,
47
+ // vim behavior for dw is to delete to the end of the current word
48
+ if (i >= text.length) {
49
+ // Go back to find the end of the last word
50
+ let endOfLastWord = text.length - 1;
51
+ while (endOfLastWord >= 0 && /\s/.test(text[endOfLastWord])) {
52
+ endOfLastWord--;
53
+ }
54
+ // For dw on last word, return position AFTER the last character to delete entire word
55
+ return Math.max(currentOffset + 1, endOfLastWord + 1);
56
+ }
57
+ return i;
83
58
  };
84
- // Find previous word start within a line
85
- export const findPrevWordStartInLine = (line, col) => {
86
- const chars = toCodePoints(line);
87
- let i = col;
88
- if (i <= 0)
89
- return null;
59
+ export const findPrevWordStart = (text, currentOffset) => {
60
+ let i = currentOffset;
61
+ // If at beginning of text, return current position
62
+ if (i <= 0) {
63
+ return currentOffset;
64
+ }
65
+ // Move back one character to start searching
90
66
  i--;
91
67
  // Skip whitespace moving backwards
92
- while (i >= 0 && isWhitespace(chars[i])) {
68
+ while (i >= 0 && (text[i] === ' ' || text[i] === '\t' || text[i] === '\n')) {
93
69
  i--;
94
70
  }
95
- if (i < 0)
96
- return null;
97
- if (isWordCharStrict(chars[i])) {
71
+ if (i < 0) {
72
+ return 0; // Reached beginning of text
73
+ }
74
+ const charAtI = text[i];
75
+ if (/\w/.test(charAtI)) {
98
76
  // We're in a word, move to its beginning
99
- while (i >= 0 && isWordCharStrict(chars[i])) {
100
- // Check for script boundary - if previous character is from different script, stop here
101
- if (i - 1 >= 0 &&
102
- isWordCharStrict(chars[i - 1]) &&
103
- isDifferentScript(chars[i], chars[i - 1])) {
104
- return i; // Return current position at script boundary
105
- }
77
+ while (i >= 0 && /\w/.test(text[i])) {
106
78
  i--;
107
79
  }
108
- return i + 1;
80
+ return i + 1; // Return first character of word
109
81
  }
110
82
  else {
111
83
  // We're in punctuation, move to its beginning
112
- while (i >= 0 && !isWordCharStrict(chars[i]) && !isWhitespace(chars[i])) {
84
+ while (i >= 0 &&
85
+ !/\w/.test(text[i]) &&
86
+ text[i] !== ' ' &&
87
+ text[i] !== '\t' &&
88
+ text[i] !== '\n') {
113
89
  i--;
114
90
  }
115
- return i + 1;
91
+ return i + 1; // Return first character of punctuation sequence
116
92
  }
117
93
  };
118
- // Find word end within a line
119
- export const findWordEndInLine = (line, col) => {
120
- const chars = toCodePoints(line);
121
- let i = col;
122
- // If we're already at the end of a word (including punctuation sequences), advance to next word
123
- // This includes both regular word endings and script boundaries
124
- const atEndOfWordChar = i < chars.length &&
125
- isWordCharWithCombining(chars[i]) &&
126
- (i + 1 >= chars.length ||
127
- !isWordCharWithCombining(chars[i + 1]) ||
128
- (isWordCharStrict(chars[i]) &&
129
- i + 1 < chars.length &&
130
- isWordCharStrict(chars[i + 1]) &&
131
- isDifferentScript(chars[i], chars[i + 1])));
132
- const atEndOfPunctuation = i < chars.length &&
133
- !isWordCharWithCombining(chars[i]) &&
134
- !isWhitespace(chars[i]) &&
135
- (i + 1 >= chars.length ||
136
- isWhitespace(chars[i + 1]) ||
137
- isWordCharWithCombining(chars[i + 1]));
138
- if (atEndOfWordChar || atEndOfPunctuation) {
139
- // We're at the end of a word or punctuation sequence, move forward to find next word
94
+ export const findWordEnd = (text, currentOffset) => {
95
+ let i = currentOffset;
96
+ // If we're already at the end of a word, advance to next word
97
+ if (i < text.length &&
98
+ /\w/.test(text[i]) &&
99
+ (i + 1 >= text.length || !/\w/.test(text[i + 1]))) {
100
+ // We're at the end of a word, move forward to find next word
140
101
  i++;
141
- // Skip whitespace to find next word or punctuation
142
- while (i < chars.length && isWhitespace(chars[i])) {
143
- i++;
144
- }
145
- }
146
- // If we're not on a word character, find the next word or punctuation sequence
147
- if (i < chars.length && !isWordCharWithCombining(chars[i])) {
148
- // Skip whitespace to find next word or punctuation
149
- while (i < chars.length && isWhitespace(chars[i])) {
102
+ // Skip whitespace/punctuation to find next word
103
+ while (i < text.length && !/\w/.test(text[i])) {
150
104
  i++;
151
105
  }
152
106
  }
153
- // Move to end of current word (including combining marks, but stop at script boundaries)
154
- let foundWord = false;
155
- let lastBaseCharPos = -1;
156
- if (i < chars.length && isWordCharWithCombining(chars[i])) {
157
- // Handle word characters
158
- while (i < chars.length && isWordCharWithCombining(chars[i])) {
159
- foundWord = true;
160
- // Track the position of the last base character (not combining mark)
161
- if (isWordCharStrict(chars[i])) {
162
- lastBaseCharPos = i;
163
- }
164
- // Check if next character is from a different script (word boundary)
165
- if (i + 1 < chars.length &&
166
- isWordCharStrict(chars[i + 1]) &&
167
- isDifferentScript(chars[i], chars[i + 1])) {
168
- i++; // Include current character
169
- if (isWordCharStrict(chars[i - 1])) {
170
- lastBaseCharPos = i - 1;
171
- }
172
- break; // Stop at script boundary
173
- }
174
- i++;
175
- }
176
- }
177
- else if (i < chars.length && !isWhitespace(chars[i])) {
178
- // Handle punctuation sequences (like ████)
179
- while (i < chars.length &&
180
- !isWordCharStrict(chars[i]) &&
181
- !isWhitespace(chars[i])) {
182
- foundWord = true;
183
- lastBaseCharPos = i;
107
+ // If we're not on a word character, find the next word
108
+ if (i < text.length && !/\w/.test(text[i])) {
109
+ while (i < text.length && !/\w/.test(text[i])) {
184
110
  i++;
185
111
  }
186
112
  }
187
- // Only return a position if we actually found a word
188
- // Return the position of the last base character, not combining marks
189
- if (foundWord && lastBaseCharPos >= col) {
190
- return lastBaseCharPos;
191
- }
192
- return null;
193
- };
194
- // Find next word across lines
195
- export const findNextWordAcrossLines = (lines, cursorRow, cursorCol, searchForWordStart) => {
196
- // First try current line
197
- const currentLine = lines[cursorRow] || '';
198
- const colInCurrentLine = searchForWordStart
199
- ? findNextWordStartInLine(currentLine, cursorCol)
200
- : findWordEndInLine(currentLine, cursorCol);
201
- if (colInCurrentLine !== null) {
202
- return { row: cursorRow, col: colInCurrentLine };
203
- }
204
- // Search subsequent lines
205
- for (let row = cursorRow + 1; row < lines.length; row++) {
206
- const line = lines[row] || '';
207
- const chars = toCodePoints(line);
208
- // For empty lines, if we haven't found any words yet, return the empty line
209
- if (chars.length === 0) {
210
- // Check if there are any words in remaining lines
211
- let hasWordsInLaterLines = false;
212
- for (let laterRow = row + 1; laterRow < lines.length; laterRow++) {
213
- const laterLine = lines[laterRow] || '';
214
- const laterChars = toCodePoints(laterLine);
215
- let firstNonWhitespace = 0;
216
- while (firstNonWhitespace < laterChars.length &&
217
- isWhitespace(laterChars[firstNonWhitespace])) {
218
- firstNonWhitespace++;
219
- }
220
- if (firstNonWhitespace < laterChars.length) {
221
- hasWordsInLaterLines = true;
222
- break;
223
- }
224
- }
225
- // If no words in later lines, return the empty line
226
- if (!hasWordsInLaterLines) {
227
- return { row, col: 0 };
228
- }
229
- continue;
230
- }
231
- // Find first non-whitespace
232
- let firstNonWhitespace = 0;
233
- while (firstNonWhitespace < chars.length &&
234
- isWhitespace(chars[firstNonWhitespace])) {
235
- firstNonWhitespace++;
236
- }
237
- if (firstNonWhitespace < chars.length) {
238
- if (searchForWordStart) {
239
- return { row, col: firstNonWhitespace };
240
- }
241
- else {
242
- // For word end, find the end of the first word
243
- const endCol = findWordEndInLine(line, firstNonWhitespace);
244
- if (endCol !== null) {
245
- return { row, col: endCol };
246
- }
247
- }
248
- }
113
+ // Move to end of current word
114
+ while (i < text.length && /\w/.test(text[i])) {
115
+ i++;
249
116
  }
250
- return null;
117
+ // Move back one to be on the last character of the word
118
+ return Math.max(currentOffset, i - 1);
251
119
  };
252
- // Find previous word across lines
253
- export const findPrevWordAcrossLines = (lines, cursorRow, cursorCol) => {
254
- // First try current line
255
- const currentLine = lines[cursorRow] || '';
256
- const colInCurrentLine = findPrevWordStartInLine(currentLine, cursorCol);
257
- if (colInCurrentLine !== null) {
258
- return { row: cursorRow, col: colInCurrentLine };
259
- }
260
- // Search previous lines
261
- for (let row = cursorRow - 1; row >= 0; row--) {
262
- const line = lines[row] || '';
263
- const chars = toCodePoints(line);
264
- if (chars.length === 0)
265
- continue;
266
- // Find last word start
267
- let lastWordStart = chars.length;
268
- while (lastWordStart > 0 && isWhitespace(chars[lastWordStart - 1])) {
269
- lastWordStart--;
270
- }
271
- if (lastWordStart > 0) {
272
- // Find start of this word
273
- const wordStart = findPrevWordStartInLine(line, lastWordStart);
274
- if (wordStart !== null) {
275
- return { row, col: wordStart };
276
- }
277
- }
120
+ // Helper functions for vim operations
121
+ export const getOffsetFromPosition = (row, col, lines) => {
122
+ let offset = 0;
123
+ for (let i = 0; i < row; i++) {
124
+ offset += lines[i].length + 1; // +1 for newline
278
125
  }
279
- return null;
126
+ offset += col;
127
+ return offset;
280
128
  };
281
- // Helper functions for vim line operations
282
129
  export const getPositionFromOffsets = (startOffset, endOffset, lines) => {
283
130
  let offset = 0;
284
131
  let startRow = 0;
@@ -371,6 +218,27 @@ export const replaceRangeInternal = (state, startRow, startCol, endRow, endCol,
371
218
  preferredCol: null,
372
219
  };
373
220
  };
221
+ /**
222
+ * Strip characters that can break terminal rendering.
223
+ *
224
+ * Strip ANSI escape codes and control characters except for line breaks.
225
+ * Control characters such as delete break terminal UI rendering.
226
+ */
227
+ function stripUnsafeCharacters(str) {
228
+ const stripped = stripAnsi(str);
229
+ return toCodePoints(stripped)
230
+ .filter((char) => {
231
+ if (char.length > 1)
232
+ return false;
233
+ const code = char.codePointAt(0);
234
+ if (code === undefined) {
235
+ return false;
236
+ }
237
+ const isUnsafe = code === 127 || (code <= 31 && code !== 13 && code !== 10);
238
+ return !isUnsafe;
239
+ })
240
+ .join('');
241
+ }
374
242
  function clamp(v, min, max) {
375
243
  return v < min ? min : v > max ? max : v;
376
244
  }
@@ -1351,12 +1219,6 @@ export function useTextBuffer({ initialText = '', initialCursorOffset = 0, viewp
1351
1219
  }, [text, stdin, setRawMode]);
1352
1220
  const handleInput = useCallback((key) => {
1353
1221
  const { sequence: input } = key;
1354
- if (key.paste) {
1355
- // Do not do any other processing on pastes so ensure we handle them
1356
- // before all other cases.
1357
- insert(input, { paste: key.paste });
1358
- return;
1359
- }
1360
1222
  if (key.name === 'return' ||
1361
1223
  input === '\r' ||
1362
1224
  input === '\n' ||
@@ -1 +1 @@
1
- {"version":3,"file":"text-buffer.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/text-buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-buffer.js","sourceRoot":"","sources":["../../../../../src/ui/components/shared/text-buffer.ts"],"names":[],"mappings":"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"}