@machina.ai/cell-cli 1.10.0-rc1 → 1.13.0-rc1

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 (813) hide show
  1. package/dist/index.js +5 -5
  2. package/dist/index.js.map +1 -1
  3. package/dist/package.json +14 -12
  4. package/dist/src/commands/extensions/disable.d.ts +1 -1
  5. package/dist/src/commands/extensions/disable.js +19 -8
  6. package/dist/src/commands/extensions/disable.js.map +1 -1
  7. package/dist/src/commands/extensions/enable.d.ts +1 -1
  8. package/dist/src/commands/extensions/enable.js +19 -9
  9. package/dist/src/commands/extensions/enable.js.map +1 -1
  10. package/dist/src/commands/extensions/examples/mcp-server/example.js +46 -0
  11. package/dist/src/commands/extensions/examples/mcp-server/example.js.map +1 -0
  12. package/dist/src/commands/extensions/install.d.ts +1 -0
  13. package/dist/src/commands/extensions/install.js +29 -4
  14. package/dist/src/commands/extensions/install.js.map +1 -1
  15. package/dist/src/commands/extensions/install.test.js +39 -19
  16. package/dist/src/commands/extensions/install.test.js.map +1 -1
  17. package/dist/src/commands/extensions/link.js +16 -4
  18. package/dist/src/commands/extensions/link.js.map +1 -1
  19. package/dist/src/commands/extensions/list.js +17 -6
  20. package/dist/src/commands/extensions/list.js.map +1 -1
  21. package/dist/src/commands/extensions/new.js +14 -20
  22. package/dist/src/commands/extensions/new.js.map +1 -1
  23. package/dist/src/commands/extensions/uninstall.js +16 -4
  24. package/dist/src/commands/extensions/uninstall.js.map +1 -1
  25. package/dist/src/commands/extensions/update.js +28 -23
  26. package/dist/src/commands/extensions/update.js.map +1 -1
  27. package/dist/src/commands/extensions/validate.d.ts +12 -0
  28. package/dist/src/commands/extensions/validate.js +83 -0
  29. package/dist/src/commands/extensions/validate.js.map +1 -0
  30. package/dist/src/commands/extensions/validate.test.d.ts +6 -0
  31. package/dist/src/commands/extensions/validate.test.js +93 -0
  32. package/dist/src/commands/extensions/validate.test.js.map +1 -0
  33. package/dist/src/commands/extensions.js +3 -0
  34. package/dist/src/commands/extensions.js.map +1 -1
  35. package/dist/src/commands/mcp/add.js +7 -4
  36. package/dist/src/commands/mcp/add.js.map +1 -1
  37. package/dist/src/commands/mcp/add.test.d.ts +6 -0
  38. package/dist/src/commands/mcp/add.test.js +247 -0
  39. package/dist/src/commands/mcp/add.test.js.map +1 -0
  40. package/dist/src/commands/mcp/list.js +18 -9
  41. package/dist/src/commands/mcp/list.js.map +1 -1
  42. package/dist/src/commands/mcp/list.test.d.ts +6 -0
  43. package/dist/src/commands/mcp/list.test.js +128 -0
  44. package/dist/src/commands/mcp/list.test.js.map +1 -0
  45. package/dist/src/commands/mcp/remove.js +3 -2
  46. package/dist/src/commands/mcp/remove.js.map +1 -1
  47. package/dist/src/commands/mcp/remove.test.d.ts +6 -0
  48. package/dist/src/commands/mcp/remove.test.js +175 -0
  49. package/dist/src/commands/mcp/remove.test.js.map +1 -0
  50. package/dist/src/commands/mcp.test.d.ts +6 -0
  51. package/dist/src/commands/mcp.test.js +62 -0
  52. package/dist/src/commands/mcp.test.js.map +1 -0
  53. package/dist/src/config/auth.js +0 -3
  54. package/dist/src/config/auth.js.map +1 -1
  55. package/dist/src/config/config.d.ts +6 -15
  56. package/dist/src/config/config.integration.test.d.ts +6 -0
  57. package/dist/src/config/config.integration.test.js +321 -0
  58. package/dist/src/config/config.integration.test.js.map +1 -0
  59. package/dist/src/config/config.js +85 -164
  60. package/dist/src/config/config.js.map +1 -1
  61. package/dist/src/config/config.test.d.ts +6 -0
  62. package/dist/src/config/config.test.js +1972 -0
  63. package/dist/src/config/config.test.js.map +1 -0
  64. package/dist/src/config/extension-manager.d.ts +63 -0
  65. package/dist/src/config/extension-manager.js +450 -0
  66. package/dist/src/config/extension-manager.js.map +1 -0
  67. package/dist/src/config/extension.d.ts +4 -61
  68. package/dist/src/config/extension.js +1 -538
  69. package/dist/src/config/extension.js.map +1 -1
  70. package/dist/src/config/extension.test.d.ts +6 -0
  71. package/dist/src/config/extension.test.js +1412 -0
  72. package/dist/src/config/extension.test.js.map +1 -0
  73. package/dist/src/config/extensions/consent.d.ts +38 -0
  74. package/dist/src/config/extensions/consent.js +123 -0
  75. package/dist/src/config/extensions/consent.js.map +1 -0
  76. package/dist/src/config/extensions/extensionEnablement.d.ts +2 -2
  77. package/dist/src/config/extensions/extensionEnablement.js +7 -5
  78. package/dist/src/config/extensions/extensionEnablement.js.map +1 -1
  79. package/dist/src/config/extensions/extensionEnablement.test.js +31 -28
  80. package/dist/src/config/extensions/extensionEnablement.test.js.map +1 -1
  81. package/dist/src/config/extensions/extensionSettings.d.ts +15 -0
  82. package/dist/src/config/extensions/extensionSettings.js +113 -0
  83. package/dist/src/config/extensions/extensionSettings.js.map +1 -0
  84. package/dist/src/config/extensions/extensionSettings.test.d.ts +6 -0
  85. package/dist/src/config/extensions/extensionSettings.test.js +254 -0
  86. package/dist/src/config/extensions/extensionSettings.test.js.map +1 -0
  87. package/dist/src/config/extensions/github.d.ts +18 -9
  88. package/dist/src/config/extensions/github.js +108 -36
  89. package/dist/src/config/extensions/github.js.map +1 -1
  90. package/dist/src/config/extensions/github.test.js +158 -164
  91. package/dist/src/config/extensions/github.test.js.map +1 -1
  92. package/dist/src/config/extensions/github_fetch.d.ts +1 -1
  93. package/dist/src/config/extensions/github_fetch.js +13 -1
  94. package/dist/src/config/extensions/github_fetch.js.map +1 -1
  95. package/dist/src/config/extensions/github_fetch.test.d.ts +6 -0
  96. package/dist/src/config/extensions/github_fetch.test.js +169 -0
  97. package/dist/src/config/extensions/github_fetch.test.js.map +1 -0
  98. package/dist/src/config/extensions/storage.d.ts +14 -0
  99. package/dist/src/config/extensions/storage.js +32 -0
  100. package/dist/src/config/extensions/storage.js.map +1 -0
  101. package/dist/src/config/extensions/update.d.ts +5 -4
  102. package/dist/src/config/extensions/update.js +41 -37
  103. package/dist/src/config/extensions/update.js.map +1 -1
  104. package/dist/src/config/extensions/update.test.js +72 -74
  105. package/dist/src/config/extensions/update.test.js.map +1 -1
  106. package/dist/src/config/extensions/variableSchema.d.ts +0 -4
  107. package/dist/src/config/extensions/variableSchema.js.map +1 -1
  108. package/dist/src/config/extensions/variables.d.ts +4 -0
  109. package/dist/src/config/extensions/variables.js +6 -0
  110. package/dist/src/config/extensions/variables.js.map +1 -1
  111. package/dist/src/config/keyBindings.d.ts +5 -1
  112. package/dist/src/config/keyBindings.js +34 -10
  113. package/dist/src/config/keyBindings.js.map +1 -1
  114. package/dist/src/config/keyBindings.test.js +17 -0
  115. package/dist/src/config/keyBindings.test.js.map +1 -1
  116. package/dist/src/config/policies/read-only.toml +56 -0
  117. package/dist/src/config/policies/write.toml +63 -0
  118. package/dist/src/config/policies/yolo.toml +31 -0
  119. package/dist/src/config/policy-engine.integration.test.js +41 -38
  120. package/dist/src/config/policy-engine.integration.test.js.map +1 -1
  121. package/dist/src/config/policy.d.ts +4 -3
  122. package/dist/src/config/policy.js +13 -142
  123. package/dist/src/config/policy.js.map +1 -1
  124. package/dist/src/config/sandboxConfig.d.ts +1 -2
  125. package/dist/src/config/sandboxConfig.js +7 -6
  126. package/dist/src/config/sandboxConfig.js.map +1 -1
  127. package/dist/src/config/settings.d.ts +2 -1
  128. package/dist/src/config/settings.js +59 -15
  129. package/dist/src/config/settings.js.map +1 -1
  130. package/dist/src/config/settings.test.d.ts +6 -0
  131. package/dist/src/config/settings.test.js +2000 -0
  132. package/dist/src/config/settings.test.js.map +1 -0
  133. package/dist/src/config/settingsSchema.d.ts +170 -28
  134. package/dist/src/config/settingsSchema.js +418 -27
  135. package/dist/src/config/settingsSchema.js.map +1 -1
  136. package/dist/src/config/settingsSchema.test.js +42 -1
  137. package/dist/src/config/settingsSchema.test.js.map +1 -1
  138. package/dist/src/config/trustedFolders.d.ts +1 -1
  139. package/dist/src/config/trustedFolders.js +4 -2
  140. package/dist/src/config/trustedFolders.js.map +1 -1
  141. package/dist/src/core/initializer.js +2 -1
  142. package/dist/src/core/initializer.js.map +1 -1
  143. package/dist/src/gemini.d.ts +1 -1
  144. package/dist/src/gemini.js +63 -27
  145. package/dist/src/gemini.js.map +1 -1
  146. package/dist/src/gemini.test.js +123 -34
  147. package/dist/src/gemini.test.js.map +1 -1
  148. package/dist/src/generated/git-commit.d.ts +2 -2
  149. package/dist/src/generated/git-commit.js +2 -2
  150. package/dist/src/nonInteractiveCli.d.ts +9 -1
  151. package/dist/src/nonInteractiveCli.js +205 -10
  152. package/dist/src/nonInteractiveCli.js.map +1 -1
  153. package/dist/src/nonInteractiveCli.test.d.ts +6 -0
  154. package/dist/src/nonInteractiveCli.test.js +984 -0
  155. package/dist/src/nonInteractiveCli.test.js.map +1 -0
  156. package/dist/src/nonInteractiveCliCommands.js +2 -2
  157. package/dist/src/nonInteractiveCliCommands.js.map +1 -1
  158. package/dist/src/services/BuiltinCommandLoader.js +4 -0
  159. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  160. package/dist/src/services/BuiltinCommandLoader.test.js +22 -0
  161. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  162. package/dist/src/services/CommandService.js +2 -1
  163. package/dist/src/services/CommandService.js.map +1 -1
  164. package/dist/src/services/FeedbackService.js +2 -2
  165. package/dist/src/services/FeedbackService.js.map +1 -1
  166. package/dist/src/services/FileCommandLoader.test.d.ts +6 -0
  167. package/dist/src/services/FileCommandLoader.test.js +971 -0
  168. package/dist/src/services/FileCommandLoader.test.js.map +1 -0
  169. package/dist/src/services/McpPromptLoader.js +2 -2
  170. package/dist/src/services/McpPromptLoader.js.map +1 -1
  171. package/dist/src/services/McpPromptLoader.test.js +4 -2
  172. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  173. package/dist/src/services/prompt-processors/argumentProcessor.test.d.ts +6 -0
  174. package/dist/src/services/prompt-processors/argumentProcessor.test.js +40 -0
  175. package/dist/src/services/prompt-processors/argumentProcessor.test.js.map +1 -0
  176. package/dist/src/services/prompt-processors/atFileProcessor.js +3 -2
  177. package/dist/src/services/prompt-processors/atFileProcessor.js.map +1 -1
  178. package/dist/src/services/prompt-processors/shellProcessor.test.d.ts +6 -0
  179. package/dist/src/services/prompt-processors/shellProcessor.test.js +482 -0
  180. package/dist/src/services/prompt-processors/shellProcessor.test.js.map +1 -0
  181. package/dist/src/test-utils/async.d.ts +9 -0
  182. package/dist/src/test-utils/async.js +29 -0
  183. package/dist/src/test-utils/async.js.map +1 -0
  184. package/dist/src/test-utils/createExtension.d.ts +3 -1
  185. package/dist/src/test-utils/createExtension.js +3 -3
  186. package/dist/src/test-utils/createExtension.js.map +1 -1
  187. package/dist/src/test-utils/render.d.ts +17 -2
  188. package/dist/src/test-utils/render.js +69 -4
  189. package/dist/src/test-utils/render.js.map +1 -1
  190. package/dist/src/test-utils/render.test.d.ts +6 -0
  191. package/dist/src/test-utils/render.test.js +79 -0
  192. package/dist/src/test-utils/render.test.js.map +1 -0
  193. package/dist/src/ui/App.test.d.ts +6 -0
  194. package/dist/src/ui/App.test.js +110 -0
  195. package/dist/src/ui/App.test.js.map +1 -0
  196. package/dist/src/ui/AppContainer.js +223 -92
  197. package/dist/src/ui/AppContainer.js.map +1 -1
  198. package/dist/src/ui/AppContainer.test.js +531 -147
  199. package/dist/src/ui/AppContainer.test.js.map +1 -1
  200. package/dist/src/ui/IdeIntegrationNudge.js +1 -1
  201. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -1
  202. package/dist/src/ui/auth/ApiAuthDialog.d.ts +14 -0
  203. package/dist/src/ui/auth/ApiAuthDialog.js +26 -0
  204. package/dist/src/ui/auth/ApiAuthDialog.js.map +1 -0
  205. package/dist/src/ui/auth/ApiAuthDialog.test.d.ts +6 -0
  206. package/dist/src/ui/auth/ApiAuthDialog.test.js +91 -0
  207. package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -0
  208. package/dist/src/ui/auth/AuthDialog.d.ts +1 -1
  209. package/dist/src/ui/auth/AuthDialog.js +9 -3
  210. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  211. package/dist/src/ui/auth/useAuth.d.ts +3 -1
  212. package/dist/src/ui/auth/useAuth.js +35 -4
  213. package/dist/src/ui/auth/useAuth.js.map +1 -1
  214. package/dist/src/ui/colors.js +3 -0
  215. package/dist/src/ui/colors.js.map +1 -1
  216. package/dist/src/ui/commands/aboutCommand.js +1 -1
  217. package/dist/src/ui/commands/aboutCommand.test.d.ts +6 -0
  218. package/dist/src/ui/commands/aboutCommand.test.js +130 -0
  219. package/dist/src/ui/commands/aboutCommand.test.js.map +1 -0
  220. package/dist/src/ui/commands/authCommand.js +1 -1
  221. package/dist/src/ui/commands/authCommand.test.d.ts +6 -0
  222. package/dist/src/ui/commands/authCommand.test.js +30 -0
  223. package/dist/src/ui/commands/authCommand.test.js.map +1 -0
  224. package/dist/src/ui/commands/bugCommand.js +1 -1
  225. package/dist/src/ui/commands/bugCommand.test.d.ts +6 -0
  226. package/dist/src/ui/commands/bugCommand.test.js +105 -0
  227. package/dist/src/ui/commands/bugCommand.test.js.map +1 -0
  228. package/dist/src/ui/commands/chatCommand.js +1 -1
  229. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  230. package/dist/src/ui/commands/chatCommand.test.d.ts +6 -0
  231. package/dist/src/ui/commands/chatCommand.test.js +555 -0
  232. package/dist/src/ui/commands/chatCommand.test.js.map +1 -0
  233. package/dist/src/ui/commands/clearCommand.js +1 -1
  234. package/dist/src/ui/commands/clearCommand.test.d.ts +6 -0
  235. package/dist/src/ui/commands/clearCommand.test.js +76 -0
  236. package/dist/src/ui/commands/clearCommand.test.js.map +1 -0
  237. package/dist/src/ui/commands/compressCommand.js +1 -1
  238. package/dist/src/ui/commands/compressCommand.js.map +1 -1
  239. package/dist/src/ui/commands/compressCommand.test.d.ts +6 -0
  240. package/dist/src/ui/commands/compressCommand.test.js +98 -0
  241. package/dist/src/ui/commands/compressCommand.test.js.map +1 -0
  242. package/dist/src/ui/commands/copyCommand.js +2 -1
  243. package/dist/src/ui/commands/copyCommand.js.map +1 -1
  244. package/dist/src/ui/commands/copyCommand.test.d.ts +6 -0
  245. package/dist/src/ui/commands/copyCommand.test.js +242 -0
  246. package/dist/src/ui/commands/copyCommand.test.js.map +1 -0
  247. package/dist/src/ui/commands/corgiCommand.js +1 -1
  248. package/dist/src/ui/commands/corgiCommand.js.map +1 -1
  249. package/dist/src/ui/commands/corgiCommand.test.d.ts +6 -0
  250. package/dist/src/ui/commands/corgiCommand.test.js +28 -0
  251. package/dist/src/ui/commands/corgiCommand.test.js.map +1 -0
  252. package/dist/src/ui/commands/directoryCommand.js +1 -1
  253. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  254. package/dist/src/ui/commands/directoryCommand.test.d.ts +6 -0
  255. package/dist/src/ui/commands/directoryCommand.test.js +144 -0
  256. package/dist/src/ui/commands/directoryCommand.test.js.map +1 -0
  257. package/dist/src/ui/commands/docsCommand.js +1 -1
  258. package/dist/src/ui/commands/docsCommand.test.d.ts +6 -0
  259. package/dist/src/ui/commands/docsCommand.test.js +72 -0
  260. package/dist/src/ui/commands/docsCommand.test.js.map +1 -0
  261. package/dist/src/ui/commands/editorCommand.js +1 -1
  262. package/dist/src/ui/commands/editorCommand.test.d.ts +6 -0
  263. package/dist/src/ui/commands/editorCommand.test.js +27 -0
  264. package/dist/src/ui/commands/editorCommand.test.js.map +1 -0
  265. package/dist/src/ui/commands/extensionsCommand.js +64 -11
  266. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  267. package/dist/src/ui/commands/extensionsCommand.test.d.ts +6 -0
  268. package/dist/src/ui/commands/extensionsCommand.test.js +315 -0
  269. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -0
  270. package/dist/src/ui/commands/helpCommand.js +1 -1
  271. package/dist/src/ui/commands/helpCommand.test.d.ts +6 -0
  272. package/dist/src/ui/commands/helpCommand.test.js +42 -0
  273. package/dist/src/ui/commands/helpCommand.test.js.map +1 -0
  274. package/dist/src/ui/commands/ideCommand.js +6 -6
  275. package/dist/src/ui/commands/ideCommand.test.d.ts +6 -0
  276. package/dist/src/ui/commands/ideCommand.test.js +205 -0
  277. package/dist/src/ui/commands/ideCommand.test.js.map +1 -0
  278. package/dist/src/ui/commands/initCommand.js +1 -1
  279. package/dist/src/ui/commands/initCommand.js.map +1 -1
  280. package/dist/src/ui/commands/initCommand.test.d.ts +6 -0
  281. package/dist/src/ui/commands/initCommand.test.js +80 -0
  282. package/dist/src/ui/commands/initCommand.test.js.map +1 -0
  283. package/dist/src/ui/commands/mcpCommand.js +110 -100
  284. package/dist/src/ui/commands/mcpCommand.js.map +1 -1
  285. package/dist/src/ui/commands/mcpCommand.test.d.ts +6 -0
  286. package/dist/src/ui/commands/mcpCommand.test.js +152 -0
  287. package/dist/src/ui/commands/mcpCommand.test.js.map +1 -0
  288. package/dist/src/ui/commands/memoryCommand.js +6 -6
  289. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  290. package/dist/src/ui/commands/memoryCommand.test.d.ts +6 -0
  291. package/dist/src/ui/commands/memoryCommand.test.js +268 -0
  292. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -0
  293. package/dist/src/ui/commands/policiesCommand.d.ts +7 -0
  294. package/dist/src/ui/commands/policiesCommand.js +59 -0
  295. package/dist/src/ui/commands/policiesCommand.js.map +1 -0
  296. package/dist/src/ui/commands/policiesCommand.test.d.ts +6 -0
  297. package/dist/src/ui/commands/policiesCommand.test.js +83 -0
  298. package/dist/src/ui/commands/policiesCommand.test.js.map +1 -0
  299. package/dist/src/ui/commands/privacyCommand.js +1 -1
  300. package/dist/src/ui/commands/privacyCommand.test.d.ts +6 -0
  301. package/dist/src/ui/commands/privacyCommand.test.js +32 -0
  302. package/dist/src/ui/commands/privacyCommand.test.js.map +1 -0
  303. package/dist/src/ui/commands/quitCommand.js +1 -1
  304. package/dist/src/ui/commands/quitCommand.test.d.ts +6 -0
  305. package/dist/src/ui/commands/quitCommand.test.js +50 -0
  306. package/dist/src/ui/commands/quitCommand.test.js.map +1 -0
  307. package/dist/src/ui/commands/restoreCommand.test.d.ts +6 -0
  308. package/dist/src/ui/commands/restoreCommand.test.js +190 -0
  309. package/dist/src/ui/commands/restoreCommand.test.js.map +1 -0
  310. package/dist/src/ui/commands/settingsCommand.test.d.ts +6 -0
  311. package/dist/src/ui/commands/settingsCommand.test.js +30 -0
  312. package/dist/src/ui/commands/settingsCommand.test.js.map +1 -0
  313. package/dist/src/ui/commands/setupGithubCommand.js +4 -3
  314. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  315. package/dist/src/ui/commands/setupGithubCommand.test.js +1 -2
  316. package/dist/src/ui/commands/setupGithubCommand.test.js.map +1 -1
  317. package/dist/src/ui/commands/statsCommand.js +3 -3
  318. package/dist/src/ui/commands/statsCommand.js.map +1 -1
  319. package/dist/src/ui/commands/statsCommand.test.d.ts +6 -0
  320. package/dist/src/ui/commands/statsCommand.test.js +53 -0
  321. package/dist/src/ui/commands/statsCommand.test.js.map +1 -0
  322. package/dist/src/ui/commands/terminalSetupCommand.test.d.ts +6 -0
  323. package/dist/src/ui/commands/terminalSetupCommand.test.js +66 -0
  324. package/dist/src/ui/commands/terminalSetupCommand.test.js.map +1 -0
  325. package/dist/src/ui/commands/themeCommand.js +1 -1
  326. package/dist/src/ui/commands/themeCommand.test.d.ts +6 -0
  327. package/dist/src/ui/commands/themeCommand.test.js +32 -0
  328. package/dist/src/ui/commands/themeCommand.test.js.map +1 -0
  329. package/dist/src/ui/commands/toolsCommand.js +1 -1
  330. package/dist/src/ui/commands/toolsCommand.test.d.ts +6 -0
  331. package/dist/src/ui/commands/toolsCommand.test.js +100 -0
  332. package/dist/src/ui/commands/toolsCommand.test.js.map +1 -0
  333. package/dist/src/ui/commands/types.d.ts +1 -0
  334. package/dist/src/ui/commands/vimCommand.js +1 -1
  335. package/dist/src/ui/components/AnsiOutput.test.js +1 -1
  336. package/dist/src/ui/components/AnsiOutput.test.js.map +1 -1
  337. package/dist/src/ui/components/AsciiArt.d.ts +3 -3
  338. package/dist/src/ui/components/AsciiArt.js +3 -3
  339. package/dist/src/ui/components/Composer.js +6 -4
  340. package/dist/src/ui/components/Composer.js.map +1 -1
  341. package/dist/src/ui/components/Composer.test.js +21 -3
  342. package/dist/src/ui/components/Composer.test.js.map +1 -1
  343. package/dist/src/ui/components/ConfigInitDisplay.js +4 -6
  344. package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
  345. package/dist/src/ui/components/ConsentPrompt.test.js +18 -8
  346. package/dist/src/ui/components/ConsentPrompt.test.js.map +1 -1
  347. package/dist/src/ui/components/ConsoleSummaryDisplay.js +1 -1
  348. package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -1
  349. package/dist/src/ui/components/ContextSummaryDisplay.d.ts +0 -1
  350. package/dist/src/ui/components/ContextSummaryDisplay.js +2 -12
  351. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  352. package/dist/src/ui/components/ContextSummaryDisplay.test.d.ts +6 -0
  353. package/dist/src/ui/components/ContextSummaryDisplay.test.js +71 -0
  354. package/dist/src/ui/components/ContextSummaryDisplay.test.js.map +1 -0
  355. package/dist/src/ui/components/DetailedMessagesDisplay.js +1 -1
  356. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  357. package/dist/src/ui/components/DialogManager.js +5 -5
  358. package/dist/src/ui/components/DialogManager.js.map +1 -1
  359. package/dist/src/ui/components/EditorSettingsDialog.js +1 -1
  360. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  361. package/dist/src/ui/components/FolderTrustDialog.test.js +8 -3
  362. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  363. package/dist/src/ui/components/Footer.js +4 -3
  364. package/dist/src/ui/components/Footer.js.map +1 -1
  365. package/dist/src/ui/components/Footer.test.d.ts +6 -0
  366. package/dist/src/ui/components/Footer.test.js +314 -0
  367. package/dist/src/ui/components/Footer.test.js.map +1 -0
  368. package/dist/src/ui/components/Header.test.js +13 -5
  369. package/dist/src/ui/components/Header.test.js.map +1 -1
  370. package/dist/src/ui/components/Help.test.js +5 -4
  371. package/dist/src/ui/components/Help.test.js.map +1 -1
  372. package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
  373. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  374. package/dist/src/ui/components/InputPrompt.d.ts +4 -0
  375. package/dist/src/ui/components/InputPrompt.js +80 -12
  376. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  377. package/dist/src/ui/components/InputPrompt.test.d.ts +6 -0
  378. package/dist/src/ui/components/InputPrompt.test.js +1786 -0
  379. package/dist/src/ui/components/InputPrompt.test.js.map +1 -0
  380. package/dist/src/ui/components/LoadingIndicator.js +2 -2
  381. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  382. package/dist/src/ui/components/LoadingIndicator.test.js +28 -15
  383. package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -1
  384. package/dist/src/ui/components/LoopDetectionConfirmation.js +1 -1
  385. package/dist/src/ui/components/LoopDetectionConfirmation.js.map +1 -1
  386. package/dist/src/ui/components/LoopDetectionConfirmation.test.js +2 -2
  387. package/dist/src/ui/components/LoopDetectionConfirmation.test.js.map +1 -1
  388. package/dist/src/ui/components/MainContent.js +15 -4
  389. package/dist/src/ui/components/MainContent.js.map +1 -1
  390. package/dist/src/ui/components/ModelDialog.js +1 -1
  391. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  392. package/dist/src/ui/components/ModelDialog.test.js +23 -13
  393. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  394. package/dist/src/ui/components/ModelStatsDisplay.test.d.ts +6 -0
  395. package/dist/src/ui/components/ModelStatsDisplay.test.js +285 -0
  396. package/dist/src/ui/components/ModelStatsDisplay.test.js.map +1 -0
  397. package/dist/src/ui/components/Notifications.js +38 -5
  398. package/dist/src/ui/components/Notifications.js.map +1 -1
  399. package/dist/src/ui/components/PermissionsModifyTrustDialog.js +22 -18
  400. package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -1
  401. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js +12 -4
  402. package/dist/src/ui/components/PermissionsModifyTrustDialog.test.js.map +1 -1
  403. package/dist/src/ui/components/PrepareLabel.test.js +14 -8
  404. package/dist/src/ui/components/PrepareLabel.test.js.map +1 -1
  405. package/dist/src/ui/components/ProQuotaDialog.test.js +14 -6
  406. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -1
  407. package/dist/src/ui/components/QueuedMessageDisplay.js +3 -3
  408. package/dist/src/ui/components/QueuedMessageDisplay.js.map +1 -1
  409. package/dist/src/ui/components/QueuedMessageDisplay.test.js +15 -6
  410. package/dist/src/ui/components/QueuedMessageDisplay.test.js.map +1 -1
  411. package/dist/src/ui/components/RawMarkdownIndicator.d.ts +7 -0
  412. package/dist/src/ui/components/RawMarkdownIndicator.js +8 -0
  413. package/dist/src/ui/components/RawMarkdownIndicator.js.map +1 -0
  414. package/dist/src/ui/components/SessionSummaryDisplay.test.d.ts +6 -0
  415. package/dist/src/ui/components/SessionSummaryDisplay.test.js +74 -0
  416. package/dist/src/ui/components/SessionSummaryDisplay.test.js.map +1 -0
  417. package/dist/src/ui/components/SettingsDialog.js +43 -35
  418. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  419. package/dist/src/ui/components/SettingsDialog.test.js +554 -545
  420. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  421. package/dist/src/ui/components/ShellConfirmationDialog.js +1 -1
  422. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  423. package/dist/src/ui/components/ShellConfirmationDialog.test.js +2 -2
  424. package/dist/src/ui/components/ShellConfirmationDialog.test.js.map +1 -1
  425. package/dist/src/ui/components/StatsDisplay.test.d.ts +6 -0
  426. package/dist/src/ui/components/StatsDisplay.test.js +351 -0
  427. package/dist/src/ui/components/StatsDisplay.test.js.map +1 -0
  428. package/dist/src/ui/components/SuggestionsDisplay.js +1 -1
  429. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  430. package/dist/src/ui/components/ThemeDialog.d.ts +4 -2
  431. package/dist/src/ui/components/ThemeDialog.js +3 -3
  432. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  433. package/dist/src/ui/components/ThemeDialog.test.js +14 -1
  434. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  435. package/dist/src/ui/components/ToolStatsDisplay.test.d.ts +6 -0
  436. package/dist/src/ui/components/ToolStatsDisplay.test.js +227 -0
  437. package/dist/src/ui/components/ToolStatsDisplay.test.js.map +1 -0
  438. package/dist/src/ui/components/messages/CompressionMessage.test.js +25 -17
  439. package/dist/src/ui/components/messages/CompressionMessage.test.js.map +1 -1
  440. package/dist/src/ui/components/messages/DiffRenderer.test.js +1 -1
  441. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
  442. package/dist/src/ui/components/messages/GeminiMessage.js +3 -1
  443. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  444. package/dist/src/ui/components/messages/GeminiMessage.test.d.ts +6 -0
  445. package/dist/src/ui/components/messages/GeminiMessage.test.js +35 -0
  446. package/dist/src/ui/components/messages/GeminiMessage.test.js.map +1 -0
  447. package/dist/src/ui/components/messages/GeminiMessageContent.js +3 -1
  448. package/dist/src/ui/components/messages/GeminiMessageContent.js.map +1 -1
  449. package/dist/src/ui/components/messages/InfoMessage.js +1 -1
  450. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  451. package/dist/src/ui/components/messages/Todo.d.ts +7 -0
  452. package/dist/src/ui/components/messages/Todo.js +91 -0
  453. package/dist/src/ui/components/messages/Todo.js.map +1 -0
  454. package/dist/src/ui/components/messages/Todo.test.d.ts +6 -0
  455. package/dist/src/ui/components/messages/Todo.test.js +114 -0
  456. package/dist/src/ui/components/messages/Todo.test.js.map +1 -0
  457. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +1 -1
  458. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  459. package/dist/src/ui/components/messages/ToolGroupMessage.js +1 -1
  460. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  461. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +29 -15
  462. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  463. package/dist/src/ui/components/messages/ToolMessage.js +8 -3
  464. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  465. package/dist/src/ui/components/messages/ToolMessage.test.js +2 -2
  466. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  467. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.d.ts +6 -0
  468. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js +30 -0
  469. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js.map +1 -0
  470. package/dist/src/ui/components/messages/UserShellMessage.js +1 -1
  471. package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -1
  472. package/dist/src/ui/components/messages/WarningMessage.js +2 -2
  473. package/dist/src/ui/components/messages/WarningMessage.js.map +1 -1
  474. package/dist/src/ui/components/shared/BaseSelectionList.test.js +34 -25
  475. package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
  476. package/dist/src/ui/components/shared/MaxSizedBox.test.js +43 -22
  477. package/dist/src/ui/components/shared/MaxSizedBox.test.js.map +1 -1
  478. package/dist/src/ui/components/shared/TextInput.d.ts +15 -0
  479. package/dist/src/ui/components/shared/TextInput.js +38 -0
  480. package/dist/src/ui/components/shared/TextInput.js.map +1 -0
  481. package/dist/src/ui/components/shared/TextInput.test.d.ts +6 -0
  482. package/dist/src/ui/components/shared/TextInput.test.js +242 -0
  483. package/dist/src/ui/components/shared/TextInput.test.js.map +1 -0
  484. package/dist/src/ui/components/shared/text-buffer.d.ts +9 -2
  485. package/dist/src/ui/components/shared/text-buffer.js +52 -14
  486. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  487. package/dist/src/ui/components/shared/text-buffer.test.d.ts +6 -0
  488. package/dist/src/ui/components/shared/text-buffer.test.js +1761 -0
  489. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -0
  490. package/dist/src/ui/components/shared/vim-buffer-actions.test.d.ts +6 -0
  491. package/dist/src/ui/components/shared/vim-buffer-actions.test.js +951 -0
  492. package/dist/src/ui/components/shared/vim-buffer-actions.test.js.map +1 -0
  493. package/dist/src/ui/components/views/ChatList.test.js +7 -4
  494. package/dist/src/ui/components/views/ChatList.test.js.map +1 -1
  495. package/dist/src/ui/components/views/ExtensionsList.d.ts +7 -1
  496. package/dist/src/ui/components/views/ExtensionsList.js +12 -15
  497. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -1
  498. package/dist/src/ui/components/views/ExtensionsList.test.js +43 -29
  499. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -1
  500. package/dist/src/ui/components/views/McpStatus.d.ts +0 -1
  501. package/dist/src/ui/components/views/McpStatus.js +4 -4
  502. package/dist/src/ui/components/views/McpStatus.js.map +1 -1
  503. package/dist/src/ui/components/views/McpStatus.test.js +23 -17
  504. package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
  505. package/dist/src/ui/components/views/ToolsList.test.js +4 -4
  506. package/dist/src/ui/components/views/ToolsList.test.js.map +1 -1
  507. package/dist/src/ui/contexts/KeypressContext.d.ts +4 -2
  508. package/dist/src/ui/contexts/KeypressContext.js +635 -439
  509. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  510. package/dist/src/ui/contexts/KeypressContext.test.js +634 -515
  511. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  512. package/dist/src/ui/contexts/MouseContext.d.ts +21 -0
  513. package/dist/src/ui/contexts/MouseContext.js +89 -0
  514. package/dist/src/ui/contexts/MouseContext.js.map +1 -0
  515. package/dist/src/ui/contexts/MouseContext.test.d.ts +6 -0
  516. package/dist/src/ui/contexts/MouseContext.test.js +164 -0
  517. package/dist/src/ui/contexts/MouseContext.test.js.map +1 -0
  518. package/dist/src/ui/contexts/SessionContext.test.d.ts +6 -0
  519. package/dist/src/ui/contexts/SessionContext.test.js +195 -0
  520. package/dist/src/ui/contexts/SessionContext.test.js.map +1 -0
  521. package/dist/src/ui/contexts/UIActionsContext.d.ts +7 -4
  522. package/dist/src/ui/contexts/UIStateContext.d.ts +5 -3
  523. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  524. package/dist/src/ui/hooks/atCommandProcessor.js +33 -11
  525. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  526. package/dist/src/ui/hooks/atCommandProcessor.test.js +163 -64
  527. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  528. package/dist/src/ui/hooks/shellCommandProcessor.js +0 -1
  529. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  530. package/dist/src/ui/hooks/shellCommandProcessor.test.js +64 -35
  531. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
  532. package/dist/src/ui/hooks/slashCommandProcessor.js +2 -0
  533. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  534. package/dist/src/ui/hooks/slashCommandProcessor.test.d.ts +6 -0
  535. package/dist/src/ui/hooks/slashCommandProcessor.test.js +807 -0
  536. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -0
  537. package/dist/src/ui/hooks/useAtCompletion.js +2 -2
  538. package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
  539. package/dist/src/ui/hooks/useAtCompletion.test.d.ts +6 -0
  540. package/dist/src/ui/hooks/useAtCompletion.test.js +396 -0
  541. package/dist/src/ui/hooks/useAtCompletion.test.js.map +1 -0
  542. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +10 -0
  543. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  544. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +32 -2
  545. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  546. package/dist/src/ui/hooks/useCommandCompletion.d.ts +1 -1
  547. package/dist/src/ui/hooks/useCommandCompletion.js +5 -3
  548. package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
  549. package/dist/src/ui/hooks/useCommandCompletion.test.d.ts +6 -0
  550. package/dist/src/ui/hooks/useCommandCompletion.test.js +377 -0
  551. package/dist/src/ui/hooks/useCommandCompletion.test.js.map +1 -0
  552. package/dist/src/ui/hooks/useConsoleMessages.test.d.ts +6 -0
  553. package/dist/src/ui/hooks/useConsoleMessages.test.js +127 -0
  554. package/dist/src/ui/hooks/useConsoleMessages.test.js.map +1 -0
  555. package/dist/src/ui/hooks/useEditorSettings.test.js +40 -34
  556. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
  557. package/dist/src/ui/hooks/useExtensionUpdates.d.ts +14 -4
  558. package/dist/src/ui/hooks/useExtensionUpdates.js +18 -11
  559. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -1
  560. package/dist/src/ui/hooks/useExtensionUpdates.test.js +52 -35
  561. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -1
  562. package/dist/src/ui/hooks/useFlickerDetector.test.js +9 -5
  563. package/dist/src/ui/hooks/useFlickerDetector.test.js.map +1 -1
  564. package/dist/src/ui/hooks/useFocus.test.d.ts +6 -0
  565. package/dist/src/ui/hooks/useFocus.test.js +131 -0
  566. package/dist/src/ui/hooks/useFocus.test.js.map +1 -0
  567. package/dist/src/ui/hooks/useFolderTrust.test.d.ts +6 -0
  568. package/dist/src/ui/hooks/useFolderTrust.test.js +188 -0
  569. package/dist/src/ui/hooks/useFolderTrust.test.js.map +1 -0
  570. package/dist/src/ui/hooks/useGeminiStream.js +119 -74
  571. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  572. package/dist/src/ui/hooks/useGeminiStream.test.d.ts +6 -0
  573. package/dist/src/ui/hooks/useGeminiStream.test.js +1820 -0
  574. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -0
  575. package/dist/src/ui/hooks/useGitBranchName.js +4 -0
  576. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  577. package/dist/src/ui/hooks/useGitBranchName.test.js +46 -34
  578. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  579. package/dist/src/ui/hooks/useHistoryManager.test.js +2 -1
  580. package/dist/src/ui/hooks/useHistoryManager.test.js.map +1 -1
  581. package/dist/src/ui/hooks/useIdeTrustListener.test.js +40 -9
  582. package/dist/src/ui/hooks/useIdeTrustListener.test.js.map +1 -1
  583. package/dist/src/ui/hooks/useInputHistory.test.js +2 -1
  584. package/dist/src/ui/hooks/useInputHistory.test.js.map +1 -1
  585. package/dist/src/ui/hooks/useInputHistoryStore.js +2 -1
  586. package/dist/src/ui/hooks/useInputHistoryStore.js.map +1 -1
  587. package/dist/src/ui/hooks/useInputHistoryStore.test.js +2 -1
  588. package/dist/src/ui/hooks/useInputHistoryStore.test.js.map +1 -1
  589. package/dist/src/ui/hooks/useKeypress.test.d.ts +6 -0
  590. package/dist/src/ui/hooks/useKeypress.test.js +223 -0
  591. package/dist/src/ui/hooks/useKeypress.test.js.map +1 -0
  592. package/dist/src/ui/hooks/useLoadingIndicator.test.js +29 -6
  593. package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
  594. package/dist/src/ui/hooks/useMemoryMonitor.test.js +10 -5
  595. package/dist/src/ui/hooks/useMemoryMonitor.test.js.map +1 -1
  596. package/dist/src/ui/hooks/useMessageQueue.d.ts +1 -0
  597. package/dist/src/ui/hooks/useMessageQueue.js +14 -0
  598. package/dist/src/ui/hooks/useMessageQueue.js.map +1 -1
  599. package/dist/src/ui/hooks/useMessageQueue.test.js +173 -35
  600. package/dist/src/ui/hooks/useMessageQueue.test.js.map +1 -1
  601. package/dist/src/ui/hooks/useModelCommand.test.js +21 -11
  602. package/dist/src/ui/hooks/useModelCommand.test.js.map +1 -1
  603. package/dist/src/ui/hooks/useMouse.d.ts +17 -0
  604. package/dist/src/ui/hooks/useMouse.js +27 -0
  605. package/dist/src/ui/hooks/useMouse.js.map +1 -0
  606. package/dist/src/ui/hooks/useMouse.test.d.ts +6 -0
  607. package/dist/src/ui/hooks/useMouse.test.js +57 -0
  608. package/dist/src/ui/hooks/useMouse.test.js.map +1 -0
  609. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js +2 -2
  610. package/dist/src/ui/hooks/usePermissionsModifyTrust.test.js.map +1 -1
  611. package/dist/src/ui/hooks/usePhraseCycler.d.ts +1 -0
  612. package/dist/src/ui/hooks/usePhraseCycler.js +156 -5
  613. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  614. package/dist/src/ui/hooks/usePhraseCycler.test.d.ts +6 -0
  615. package/dist/src/ui/hooks/usePhraseCycler.test.js +158 -0
  616. package/dist/src/ui/hooks/usePhraseCycler.test.js.map +1 -0
  617. package/dist/src/ui/hooks/usePrivacySettings.test.js +26 -6
  618. package/dist/src/ui/hooks/usePrivacySettings.test.js.map +1 -1
  619. package/dist/src/ui/hooks/usePromptCompletion.js +2 -2
  620. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  621. package/dist/src/ui/hooks/useQuotaAndFallback.js +13 -14
  622. package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
  623. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +55 -48
  624. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  625. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +8 -1
  626. package/dist/src/ui/hooks/useReactToolScheduler.js +61 -36
  627. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  628. package/dist/src/ui/hooks/useReactToolScheduler.test.d.ts +6 -0
  629. package/dist/src/ui/hooks/useReactToolScheduler.test.js +65 -0
  630. package/dist/src/ui/hooks/useReactToolScheduler.test.js.map +1 -0
  631. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js +2 -2
  632. package/dist/src/ui/hooks/useReverseSearchCompletion.test.js.map +1 -1
  633. package/dist/src/ui/hooks/useSelectionList.js +5 -4
  634. package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
  635. package/dist/src/ui/hooks/useSelectionList.test.js +272 -183
  636. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  637. package/dist/src/ui/hooks/useShellHistory.test.js +52 -20
  638. package/dist/src/ui/hooks/useShellHistory.test.js.map +1 -1
  639. package/dist/src/ui/hooks/useShowMemoryCommand.d.ts +1 -1
  640. package/dist/src/ui/hooks/useShowMemoryCommand.js +4 -3
  641. package/dist/src/ui/hooks/useShowMemoryCommand.js.map +1 -1
  642. package/dist/src/ui/hooks/useSlashCompletion.js +20 -8
  643. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  644. package/dist/src/ui/hooks/useSlashCompletion.test.js +275 -137
  645. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  646. package/dist/src/ui/hooks/useThemeCommand.d.ts +2 -1
  647. package/dist/src/ui/hooks/useThemeCommand.js +6 -0
  648. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  649. package/dist/src/ui/hooks/useTimer.test.js +43 -14
  650. package/dist/src/ui/hooks/useTimer.test.js.map +1 -1
  651. package/dist/src/ui/hooks/useToolScheduler.test.js +229 -242
  652. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  653. package/dist/src/ui/hooks/vim.js +2 -1
  654. package/dist/src/ui/hooks/vim.js.map +1 -1
  655. package/dist/src/ui/hooks/vim.test.d.ts +6 -0
  656. package/dist/src/ui/hooks/vim.test.js +1269 -0
  657. package/dist/src/ui/hooks/vim.test.js.map +1 -0
  658. package/dist/src/ui/keyMatchers.test.js +39 -6
  659. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  660. package/dist/src/ui/state/extensions.d.ts +1 -0
  661. package/dist/src/ui/state/extensions.js +1 -0
  662. package/dist/src/ui/state/extensions.js.map +1 -1
  663. package/dist/src/ui/themes/ansi-light.js +1 -0
  664. package/dist/src/ui/themes/ansi-light.js.map +1 -1
  665. package/dist/src/ui/themes/ansi.js +1 -0
  666. package/dist/src/ui/themes/ansi.js.map +1 -1
  667. package/dist/src/ui/themes/atom-one-dark.js +2 -0
  668. package/dist/src/ui/themes/atom-one-dark.js.map +1 -1
  669. package/dist/src/ui/themes/ayu-light.js +2 -0
  670. package/dist/src/ui/themes/ayu-light.js.map +1 -1
  671. package/dist/src/ui/themes/ayu.js +2 -0
  672. package/dist/src/ui/themes/ayu.js.map +1 -1
  673. package/dist/src/ui/themes/color-utils.d.ts +1 -0
  674. package/dist/src/ui/themes/color-utils.js +8 -1
  675. package/dist/src/ui/themes/color-utils.js.map +1 -1
  676. package/dist/src/ui/themes/color-utils.test.js +13 -1
  677. package/dist/src/ui/themes/color-utils.test.js.map +1 -1
  678. package/dist/src/ui/themes/dracula.js +2 -0
  679. package/dist/src/ui/themes/dracula.js.map +1 -1
  680. package/dist/src/ui/themes/github-dark.js +2 -0
  681. package/dist/src/ui/themes/github-dark.js.map +1 -1
  682. package/dist/src/ui/themes/github-light.js +2 -0
  683. package/dist/src/ui/themes/github-light.js.map +1 -1
  684. package/dist/src/ui/themes/googlecode.js +2 -0
  685. package/dist/src/ui/themes/googlecode.js.map +1 -1
  686. package/dist/src/ui/themes/no-color.js +3 -0
  687. package/dist/src/ui/themes/no-color.js.map +1 -1
  688. package/dist/src/ui/themes/semantic-tokens.d.ts +2 -0
  689. package/dist/src/ui/themes/semantic-tokens.js +6 -0
  690. package/dist/src/ui/themes/semantic-tokens.js.map +1 -1
  691. package/dist/src/ui/themes/shades-of-purple.js +2 -0
  692. package/dist/src/ui/themes/shades-of-purple.js.map +1 -1
  693. package/dist/src/ui/themes/theme-manager.js +8 -7
  694. package/dist/src/ui/themes/theme-manager.js.map +1 -1
  695. package/dist/src/ui/themes/theme.d.ts +3 -0
  696. package/dist/src/ui/themes/theme.js +14 -3
  697. package/dist/src/ui/themes/theme.js.map +1 -1
  698. package/dist/src/ui/themes/theme.test.d.ts +6 -0
  699. package/dist/src/ui/themes/theme.test.js +151 -0
  700. package/dist/src/ui/themes/theme.test.js.map +1 -0
  701. package/dist/src/ui/themes/xcode.js +2 -0
  702. package/dist/src/ui/themes/xcode.js.map +1 -1
  703. package/dist/src/ui/types.d.ts +3 -2
  704. package/dist/src/ui/types.js +2 -0
  705. package/dist/src/ui/types.js.map +1 -1
  706. package/dist/src/ui/utils/CodeColorizer.d.ts +1 -1
  707. package/dist/src/ui/utils/CodeColorizer.js +6 -3
  708. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  709. package/dist/src/ui/utils/InlineMarkdownRenderer.d.ts +1 -0
  710. package/dist/src/ui/utils/InlineMarkdownRenderer.js +11 -10
  711. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  712. package/dist/src/ui/utils/MarkdownDisplay.d.ts +1 -0
  713. package/dist/src/ui/utils/MarkdownDisplay.js +19 -10
  714. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  715. package/dist/src/ui/utils/clipboardUtils.js +2 -2
  716. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  717. package/dist/src/ui/utils/commandUtils.js +20 -3
  718. package/dist/src/ui/utils/commandUtils.js.map +1 -1
  719. package/dist/src/ui/utils/commandUtils.test.js +61 -6
  720. package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
  721. package/dist/src/ui/utils/computeStats.js +5 -2
  722. package/dist/src/ui/utils/computeStats.js.map +1 -1
  723. package/dist/src/ui/utils/computeStats.test.d.ts +6 -0
  724. package/dist/src/ui/utils/computeStats.test.js +262 -0
  725. package/dist/src/ui/utils/computeStats.test.js.map +1 -0
  726. package/dist/src/ui/utils/input.d.ts +17 -0
  727. package/dist/src/ui/utils/input.js +51 -0
  728. package/dist/src/ui/utils/input.js.map +1 -0
  729. package/dist/src/ui/utils/input.test.d.ts +6 -0
  730. package/dist/src/ui/utils/input.test.js +44 -0
  731. package/dist/src/ui/utils/input.test.js.map +1 -0
  732. package/dist/src/ui/utils/kittyProtocolDetector.js +13 -4
  733. package/dist/src/ui/utils/kittyProtocolDetector.js.map +1 -1
  734. package/dist/src/ui/utils/mouse.d.ts +31 -0
  735. package/dist/src/ui/utils/mouse.js +164 -0
  736. package/dist/src/ui/utils/mouse.js.map +1 -0
  737. package/dist/src/ui/utils/mouse.test.d.ts +6 -0
  738. package/dist/src/ui/utils/mouse.test.js +131 -0
  739. package/dist/src/ui/utils/mouse.test.js.map +1 -0
  740. package/dist/src/ui/utils/terminalSetup.js +3 -2
  741. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  742. package/dist/src/ui/utils/textOutput.d.ts +25 -0
  743. package/dist/src/ui/utils/textOutput.js +49 -0
  744. package/dist/src/ui/utils/textOutput.js.map +1 -0
  745. package/dist/src/ui/utils/textOutput.test.d.ts +6 -0
  746. package/dist/src/ui/utils/textOutput.test.js +79 -0
  747. package/dist/src/ui/utils/textOutput.test.js.map +1 -0
  748. package/dist/src/ui/utils/updateCheck.d.ts +9 -2
  749. package/dist/src/ui/utils/updateCheck.js +38 -30
  750. package/dist/src/ui/utils/updateCheck.js.map +1 -1
  751. package/dist/src/ui/utils/updateCheck.test.js +48 -59
  752. package/dist/src/ui/utils/updateCheck.test.js.map +1 -1
  753. package/dist/src/utils/cleanup.test.d.ts +6 -0
  754. package/dist/src/utils/cleanup.test.js +49 -0
  755. package/dist/src/utils/cleanup.test.js.map +1 -0
  756. package/dist/src/utils/commentJson.js +2 -2
  757. package/dist/src/utils/commentJson.js.map +1 -1
  758. package/dist/src/utils/commentJson.test.js +7 -6
  759. package/dist/src/utils/commentJson.test.js.map +1 -1
  760. package/dist/src/utils/envVarResolver.d.ts +2 -2
  761. package/dist/src/utils/envVarResolver.js +10 -7
  762. package/dist/src/utils/envVarResolver.js.map +1 -1
  763. package/dist/src/utils/errors.d.ts +1 -0
  764. package/dist/src/utils/errors.js +66 -5
  765. package/dist/src/utils/errors.js.map +1 -1
  766. package/dist/src/utils/events.d.ts +11 -2
  767. package/dist/src/utils/events.js +1 -0
  768. package/dist/src/utils/events.js.map +1 -1
  769. package/dist/src/utils/gitUtils.js +3 -2
  770. package/dist/src/utils/gitUtils.js.map +1 -1
  771. package/dist/src/utils/handleAutoUpdate.js +9 -3
  772. package/dist/src/utils/handleAutoUpdate.js.map +1 -1
  773. package/dist/src/utils/handleAutoUpdate.test.d.ts +6 -0
  774. package/dist/src/utils/handleAutoUpdate.test.js +225 -0
  775. package/dist/src/utils/handleAutoUpdate.test.js.map +1 -0
  776. package/dist/src/utils/installationInfo.js +2 -2
  777. package/dist/src/utils/installationInfo.js.map +1 -1
  778. package/dist/src/utils/installationInfo.test.js +8 -4
  779. package/dist/src/utils/installationInfo.test.js.map +1 -1
  780. package/dist/src/utils/readStdin.js +2 -1
  781. package/dist/src/utils/readStdin.js.map +1 -1
  782. package/dist/src/utils/sandbox-macos-permissive-open.sb +2 -0
  783. package/dist/src/utils/sandbox.js +28 -30
  784. package/dist/src/utils/sandbox.js.map +1 -1
  785. package/dist/src/utils/sessionCleanup.js +4 -4
  786. package/dist/src/utils/sessionCleanup.js.map +1 -1
  787. package/dist/src/utils/startupWarnings.test.d.ts +6 -0
  788. package/dist/src/utils/startupWarnings.test.js +61 -0
  789. package/dist/src/utils/startupWarnings.test.js.map +1 -0
  790. package/dist/src/utils/version.js +6 -2
  791. package/dist/src/utils/version.js.map +1 -1
  792. package/dist/src/validateNonInterActiveAuth.js +2 -2
  793. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  794. package/dist/src/zed-integration/acp.js +2 -1
  795. package/dist/src/zed-integration/acp.js.map +1 -1
  796. package/dist/src/zed-integration/schema.d.ts +4 -4
  797. package/dist/src/zed-integration/zedIntegration.d.ts +2 -2
  798. package/dist/src/zed-integration/zedIntegration.js +16 -25
  799. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  800. package/dist/tsconfig.tsbuildinfo +1 -1
  801. package/package.json +17 -17
  802. package/dist/src/config/policy.test.js +0 -336
  803. package/dist/src/config/policy.test.js.map +0 -1
  804. package/dist/src/ui/components/WorkspaceMigrationDialog.d.ts +0 -11
  805. package/dist/src/ui/components/WorkspaceMigrationDialog.js +0 -44
  806. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +0 -1
  807. package/dist/src/ui/hooks/useWorkspaceMigration.d.ts +0 -13
  808. package/dist/src/ui/hooks/useWorkspaceMigration.js +0 -59
  809. package/dist/src/ui/hooks/useWorkspaceMigration.js.map +0 -1
  810. package/dist/src/utils/package.d.ts +0 -12
  811. package/dist/src/utils/package.js +0 -24
  812. package/dist/src/utils/package.js.map +0 -1
  813. /package/dist/src/{config/policy.test.d.ts → commands/extensions/examples/mcp-server/example.d.ts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slashCommandProcessor.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/slashCommandProcessor.test.tsx"],"names":[],"mappings":"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"}
@@ -97,9 +97,9 @@ export function useAtCompletion(props) {
97
97
  }
98
98
  else if ((state.status === AtCompletionStatus.READY ||
99
99
  state.status === AtCompletionStatus.SEARCHING) &&
100
- pattern !== state.pattern // Only search if the pattern has changed
100
+ pattern.toLowerCase() !== state.pattern // Only search if the pattern has changed
101
101
  ) {
102
- dispatch({ type: 'SEARCH', payload: pattern });
102
+ dispatch({ type: 'SEARCH', payload: pattern.toLowerCase() });
103
103
  }
104
104
  }, [enabled, pattern, state.status, state.pattern]);
105
105
  // The "Worker" that performs async operations based on status.
@@ -1 +1 @@
1
- {"version":3,"file":"useAtCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAtCompletion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useAtCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAtCompletion.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ export {};
@@ -0,0 +1,396 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { describe, it, expect, beforeEach, vi, afterEach } from 'vitest';
7
+ import { act, useState } from 'react';
8
+ import { renderHook } from '../../test-utils/render.js';
9
+ import { waitFor } from '../../test-utils/async.js';
10
+ import { useAtCompletion } from './useAtCompletion.js';
11
+ import { FileSearchFactory } from '@google/gemini-cli-core';
12
+ import { createTmpDir, cleanupTmpDir } from '@google/gemini-cli-test-utils';
13
+ // Test harness to capture the state from the hook's callbacks.
14
+ function useTestHarnessForAtCompletion(enabled, pattern, config, cwd) {
15
+ const [suggestions, setSuggestions] = useState([]);
16
+ const [isLoadingSuggestions, setIsLoadingSuggestions] = useState(false);
17
+ useAtCompletion({
18
+ enabled,
19
+ pattern,
20
+ config,
21
+ cwd,
22
+ setSuggestions,
23
+ setIsLoadingSuggestions,
24
+ });
25
+ return { suggestions, isLoadingSuggestions };
26
+ }
27
+ describe('useAtCompletion', () => {
28
+ let testRootDir;
29
+ let mockConfig;
30
+ beforeEach(() => {
31
+ mockConfig = {
32
+ getFileFilteringOptions: vi.fn(() => ({
33
+ respectGitIgnore: true,
34
+ respectGeminiIgnore: true,
35
+ })),
36
+ getEnableRecursiveFileSearch: () => true,
37
+ getFileFilteringDisableFuzzySearch: () => false,
38
+ };
39
+ vi.clearAllMocks();
40
+ });
41
+ afterEach(async () => {
42
+ if (testRootDir) {
43
+ await cleanupTmpDir(testRootDir);
44
+ }
45
+ vi.restoreAllMocks();
46
+ });
47
+ describe('File Search Logic', () => {
48
+ it('should perform a recursive search for an empty pattern', async () => {
49
+ const structure = {
50
+ 'file.txt': '',
51
+ src: {
52
+ 'index.js': '',
53
+ components: ['Button.tsx', 'Button with spaces.tsx'],
54
+ },
55
+ };
56
+ testRootDir = await createTmpDir(structure);
57
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', mockConfig, testRootDir));
58
+ await waitFor(() => {
59
+ expect(result.current.suggestions.length).toBeGreaterThan(5);
60
+ });
61
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
62
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
63
+ 'src/',
64
+ 'src/components/',
65
+ 'file.txt',
66
+ 'src/components/Button\\ with\\ spaces.tsx',
67
+ 'src/components/Button.tsx',
68
+ 'src/index.js',
69
+ ]);
70
+ });
71
+ it('should correctly filter the recursive list based on a pattern', async () => {
72
+ const structure = {
73
+ 'file.txt': '',
74
+ src: {
75
+ 'index.js': '',
76
+ components: {
77
+ 'Button.tsx': '',
78
+ },
79
+ },
80
+ };
81
+ testRootDir = await createTmpDir(structure);
82
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, 'src/', mockConfig, testRootDir));
83
+ await waitFor(() => {
84
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
85
+ });
86
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
87
+ 'src/',
88
+ 'src/components/',
89
+ 'src/index.js',
90
+ 'src/components/Button.tsx',
91
+ ]);
92
+ });
93
+ it('should append a trailing slash to directory paths in suggestions', async () => {
94
+ const structure = {
95
+ 'file.txt': '',
96
+ dir: {},
97
+ };
98
+ testRootDir = await createTmpDir(structure);
99
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', mockConfig, testRootDir));
100
+ await waitFor(() => {
101
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
102
+ });
103
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
104
+ 'dir/',
105
+ 'file.txt',
106
+ ]);
107
+ });
108
+ it('should perform a case-insensitive search by lowercasing the pattern', async () => {
109
+ testRootDir = await createTmpDir({ 'cRaZycAsE.txt': '' });
110
+ const fileSearch = FileSearchFactory.create({
111
+ projectRoot: testRootDir,
112
+ ignoreDirs: [],
113
+ useGitignore: false,
114
+ useGeminiignore: false,
115
+ cache: false,
116
+ cacheTtl: 0,
117
+ enableRecursiveFileSearch: true,
118
+ disableFuzzySearch: false,
119
+ });
120
+ await fileSearch.initialize();
121
+ vi.spyOn(FileSearchFactory, 'create').mockReturnValue(fileSearch);
122
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, 'CrAzYCaSe', mockConfig, testRootDir));
123
+ // The hook should find 'cRaZycAsE.txt' even though the pattern is 'CrAzYCaSe'.
124
+ await waitFor(() => {
125
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
126
+ 'cRaZycAsE.txt',
127
+ ]);
128
+ });
129
+ });
130
+ });
131
+ describe('UI State and Loading Behavior', () => {
132
+ it('should be in a loading state during initial file system crawl', async () => {
133
+ testRootDir = await createTmpDir({});
134
+ // Mock FileSearch to be slow to catch the loading state
135
+ const mockFileSearch = {
136
+ initialize: vi.fn().mockImplementation(async () => {
137
+ await new Promise((resolve) => setTimeout(resolve, 50));
138
+ }),
139
+ search: vi.fn().mockResolvedValue([]),
140
+ };
141
+ vi.spyOn(FileSearchFactory, 'create').mockReturnValue(mockFileSearch);
142
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', mockConfig, testRootDir));
143
+ // It's initially true because the effect runs synchronously.
144
+ await waitFor(() => {
145
+ expect(result.current.isLoadingSuggestions).toBe(true);
146
+ });
147
+ // Wait for the loading to complete.
148
+ await waitFor(() => {
149
+ expect(result.current.isLoadingSuggestions).toBe(false);
150
+ });
151
+ });
152
+ it('should NOT show a loading indicator for subsequent searches that complete under 200ms', async () => {
153
+ const structure = { 'a.txt': '', 'b.txt': '' };
154
+ testRootDir = await createTmpDir(structure);
155
+ const { result, rerender } = renderHook(({ pattern }) => useTestHarnessForAtCompletion(true, pattern, mockConfig, testRootDir), { initialProps: { pattern: 'a' } });
156
+ await waitFor(() => {
157
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
158
+ 'a.txt',
159
+ ]);
160
+ });
161
+ expect(result.current.isLoadingSuggestions).toBe(false);
162
+ rerender({ pattern: 'b' });
163
+ // Wait for the final result
164
+ await waitFor(() => {
165
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
166
+ 'b.txt',
167
+ ]);
168
+ });
169
+ expect(result.current.isLoadingSuggestions).toBe(false);
170
+ });
171
+ it('should show a loading indicator and clear old suggestions for subsequent searches that take longer than 200ms', async () => {
172
+ const structure = { 'a.txt': '', 'b.txt': '' };
173
+ testRootDir = await createTmpDir(structure);
174
+ const realFileSearch = FileSearchFactory.create({
175
+ projectRoot: testRootDir,
176
+ ignoreDirs: [],
177
+ useGitignore: true,
178
+ useGeminiignore: true,
179
+ cache: false,
180
+ cacheTtl: 0,
181
+ enableRecursiveFileSearch: true,
182
+ disableFuzzySearch: false,
183
+ });
184
+ await realFileSearch.initialize();
185
+ // Mock that returns results immediately but we'll control timing with fake timers
186
+ const mockFileSearch = {
187
+ initialize: vi.fn().mockResolvedValue(undefined),
188
+ search: vi
189
+ .fn()
190
+ .mockImplementation(async (pattern, options) => realFileSearch.search(pattern, options)),
191
+ };
192
+ vi.spyOn(FileSearchFactory, 'create').mockReturnValue(mockFileSearch);
193
+ const { result, rerender } = renderHook(({ pattern }) => useTestHarnessForAtCompletion(true, pattern, mockConfig, testRootDir), { initialProps: { pattern: 'a' } });
194
+ // Wait for the initial search to complete (using real timers)
195
+ await waitFor(() => {
196
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
197
+ 'a.txt',
198
+ ]);
199
+ });
200
+ // Now switch to fake timers for precise control of the loading behavior
201
+ vi.useFakeTimers();
202
+ // Trigger the second search
203
+ act(() => {
204
+ rerender({ pattern: 'b' });
205
+ });
206
+ // Initially, loading should be false (before 200ms timer)
207
+ expect(result.current.isLoadingSuggestions).toBe(false);
208
+ // Advance time by exactly 200ms to trigger the loading state
209
+ act(() => {
210
+ vi.advanceTimersByTime(200);
211
+ });
212
+ // Now loading should be true and suggestions should be cleared
213
+ expect(result.current.isLoadingSuggestions).toBe(true);
214
+ expect(result.current.suggestions).toEqual([]);
215
+ // Switch back to real timers for the final waitFor
216
+ vi.useRealTimers();
217
+ // Wait for the search results to be processed
218
+ await waitFor(() => {
219
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
220
+ 'b.txt',
221
+ ]);
222
+ });
223
+ expect(result.current.isLoadingSuggestions).toBe(false);
224
+ });
225
+ it('should abort the previous search when a new one starts', async () => {
226
+ const structure = { 'a.txt': '', 'b.txt': '' };
227
+ testRootDir = await createTmpDir(structure);
228
+ const abortSpy = vi.spyOn(AbortController.prototype, 'abort');
229
+ const mockFileSearch = {
230
+ initialize: vi.fn().mockResolvedValue(undefined),
231
+ search: vi.fn().mockImplementation(async (pattern) => {
232
+ const delay = pattern === 'a' ? 500 : 50;
233
+ await new Promise((resolve) => setTimeout(resolve, delay));
234
+ return [pattern];
235
+ }),
236
+ };
237
+ vi.spyOn(FileSearchFactory, 'create').mockReturnValue(mockFileSearch);
238
+ const { result, rerender } = renderHook(({ pattern }) => useTestHarnessForAtCompletion(true, pattern, mockConfig, testRootDir), { initialProps: { pattern: 'a' } });
239
+ // Wait for the hook to be ready (initialization is complete)
240
+ await waitFor(() => {
241
+ expect(mockFileSearch.search).toHaveBeenCalledWith('a', expect.any(Object));
242
+ });
243
+ // Now that the first search is in-flight, trigger the second one.
244
+ act(() => {
245
+ rerender({ pattern: 'b' });
246
+ });
247
+ // The abort should have been called for the first search.
248
+ expect(abortSpy).toHaveBeenCalledTimes(1);
249
+ // Wait for the final result, which should be from the second, faster search.
250
+ await waitFor(() => {
251
+ expect(result.current.suggestions.map((s) => s.value)).toEqual(['b']);
252
+ }, { timeout: 1000 });
253
+ // The search spy should have been called for both patterns.
254
+ expect(mockFileSearch.search).toHaveBeenCalledWith('b', expect.any(Object));
255
+ });
256
+ });
257
+ describe('State Management', () => {
258
+ it('should reset the state when disabled after being in a READY state', async () => {
259
+ const structure = { 'a.txt': '' };
260
+ testRootDir = await createTmpDir(structure);
261
+ const { result, rerender } = renderHook(({ enabled }) => useTestHarnessForAtCompletion(enabled, 'a', mockConfig, testRootDir), { initialProps: { enabled: true } });
262
+ // Wait for the hook to be ready and have suggestions
263
+ await waitFor(() => {
264
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
265
+ 'a.txt',
266
+ ]);
267
+ });
268
+ // Now, disable the hook
269
+ rerender({ enabled: false });
270
+ // The suggestions should be cleared immediately because of the RESET action
271
+ expect(result.current.suggestions).toEqual([]);
272
+ });
273
+ it('should reset the state when disabled after being in an ERROR state', async () => {
274
+ testRootDir = await createTmpDir({});
275
+ // Force an error during initialization
276
+ const mockFileSearch = {
277
+ initialize: vi
278
+ .fn()
279
+ .mockRejectedValue(new Error('Initialization failed')),
280
+ search: vi.fn(),
281
+ };
282
+ vi.spyOn(FileSearchFactory, 'create').mockReturnValue(mockFileSearch);
283
+ const { result, rerender } = renderHook(({ enabled }) => useTestHarnessForAtCompletion(enabled, '', mockConfig, testRootDir), { initialProps: { enabled: true } });
284
+ // Wait for the hook to enter the error state
285
+ await waitFor(() => {
286
+ expect(result.current.isLoadingSuggestions).toBe(false);
287
+ });
288
+ expect(result.current.suggestions).toEqual([]); // No suggestions on error
289
+ // Now, disable the hook
290
+ rerender({ enabled: false });
291
+ // The state should still be reset (though visually it's the same)
292
+ // We can't directly inspect the internal state, but we can ensure it doesn't crash
293
+ // and the suggestions remain empty.
294
+ expect(result.current.suggestions).toEqual([]);
295
+ });
296
+ });
297
+ describe('Filtering and Configuration', () => {
298
+ it('should respect .gitignore files', async () => {
299
+ const gitignoreContent = ['dist/', '*.log'].join('\n');
300
+ const structure = {
301
+ '.git': {},
302
+ '.gitignore': gitignoreContent,
303
+ dist: {},
304
+ 'test.log': '',
305
+ src: {},
306
+ };
307
+ testRootDir = await createTmpDir(structure);
308
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', mockConfig, testRootDir));
309
+ await waitFor(() => {
310
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
311
+ });
312
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
313
+ 'src/',
314
+ '.gitignore',
315
+ ]);
316
+ });
317
+ it('should work correctly when config is undefined', async () => {
318
+ const structure = {
319
+ node_modules: {},
320
+ src: {},
321
+ };
322
+ testRootDir = await createTmpDir(structure);
323
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', undefined, testRootDir));
324
+ await waitFor(() => {
325
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
326
+ });
327
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
328
+ 'node_modules/',
329
+ 'src/',
330
+ ]);
331
+ });
332
+ it('should reset and re-initialize when the cwd changes', async () => {
333
+ const structure1 = { 'file1.txt': '' };
334
+ const rootDir1 = await createTmpDir(structure1);
335
+ const structure2 = { 'file2.txt': '' };
336
+ const rootDir2 = await createTmpDir(structure2);
337
+ const { result, rerender } = renderHook(({ cwd, pattern }) => useTestHarnessForAtCompletion(true, pattern, mockConfig, cwd), {
338
+ initialProps: {
339
+ cwd: rootDir1,
340
+ pattern: 'file',
341
+ },
342
+ });
343
+ // Wait for initial suggestions from the first directory
344
+ await waitFor(() => {
345
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
346
+ 'file1.txt',
347
+ ]);
348
+ });
349
+ // Change the CWD
350
+ act(() => {
351
+ rerender({ cwd: rootDir2, pattern: 'file' });
352
+ });
353
+ // After CWD changes, suggestions should be cleared and it should load again.
354
+ await waitFor(() => {
355
+ expect(result.current.isLoadingSuggestions).toBe(true);
356
+ expect(result.current.suggestions).toEqual([]);
357
+ });
358
+ // Wait for the new suggestions from the second directory
359
+ await waitFor(() => {
360
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
361
+ 'file2.txt',
362
+ ]);
363
+ });
364
+ expect(result.current.isLoadingSuggestions).toBe(false);
365
+ await cleanupTmpDir(rootDir1);
366
+ await cleanupTmpDir(rootDir2);
367
+ });
368
+ it('should perform a non-recursive search when enableRecursiveFileSearch is false', async () => {
369
+ const structure = {
370
+ 'file.txt': '',
371
+ src: {
372
+ 'index.js': '',
373
+ },
374
+ };
375
+ testRootDir = await createTmpDir(structure);
376
+ const nonRecursiveConfig = {
377
+ getEnableRecursiveFileSearch: () => false,
378
+ getFileFilteringOptions: vi.fn(() => ({
379
+ respectGitIgnore: true,
380
+ respectGeminiIgnore: true,
381
+ })),
382
+ getFileFilteringDisableFuzzySearch: () => false,
383
+ };
384
+ const { result } = renderHook(() => useTestHarnessForAtCompletion(true, '', nonRecursiveConfig, testRootDir));
385
+ await waitFor(() => {
386
+ expect(result.current.suggestions.length).toBeGreaterThan(0);
387
+ });
388
+ // Should only contain top-level items
389
+ expect(result.current.suggestions.map((s) => s.value)).toEqual([
390
+ 'src/',
391
+ 'file.txt',
392
+ ]);
393
+ });
394
+ });
395
+ });
396
+ //# sourceMappingURL=useAtCompletion.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAtCompletion.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAtCompletion.test.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,16 @@ export function useAutoAcceptIndicator({ config, addItem, onApprovalModeChange,
16
16
  useKeypress((key) => {
17
17
  let nextApprovalMode;
18
18
  if (key.ctrl && key.name === 'y') {
19
+ if (config.isYoloModeDisabled() &&
20
+ config.getApprovalMode() !== ApprovalMode.YOLO) {
21
+ if (addItem) {
22
+ addItem({
23
+ type: MessageType.WARNING,
24
+ text: 'You cannot enter YOLO mode since it is disabled in your settings.',
25
+ }, Date.now());
26
+ }
27
+ return;
28
+ }
19
29
  nextApprovalMode =
20
30
  config.getApprovalMode() === ApprovalMode.YOLO
21
31
  ? ApprovalMode.DEFAULT
@@ -1 +1 @@
1
- {"version":3,"file":"useAutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAe,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,MAAM,UAAU,sBAAsB,CAAC,EACrC,MAAM,EACN,OAAO,EACP,oBAAoB,GACO;IAC3B,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACpD,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GACzD,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,gBAA0C,CAAC;QAE/C,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI;oBAC5C,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;QAC1B,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3C,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,SAAS;oBACjD,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBACzC,oDAAoD;gBACpD,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;gBAE7C,4DAA4D;gBAC5D,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CACL;wBACE,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,IAAI,EAAG,CAAW,CAAC,OAAO;qBAC3B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"useAutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useAutoAcceptIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAe,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAQ1C,MAAM,UAAU,sBAAsB,CAAC,EACrC,MAAM,EACN,OAAO,EACP,oBAAoB,GACO;IAC3B,MAAM,kBAAkB,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;IACpD,MAAM,CAAC,uBAAuB,EAAE,0BAA0B,CAAC,GACzD,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IAE/B,SAAS,CAAC,GAAG,EAAE;QACb,0BAA0B,CAAC,kBAAkB,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAEzB,WAAW,CACT,CAAC,GAAG,EAAE,EAAE;QACN,IAAI,gBAA0C,CAAC;QAE/C,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;YACjC,IACE,MAAM,CAAC,kBAAkB,EAAE;gBAC3B,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI,EAC9C,CAAC;gBACD,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CACL;wBACE,IAAI,EAAE,WAAW,CAAC,OAAO;wBACzB,IAAI,EAAE,mEAAmE;qBAC1E,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YACD,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,IAAI;oBAC5C,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC;QAC1B,CAAC;aAAM,IAAI,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YAC3C,gBAAgB;gBACd,MAAM,CAAC,eAAe,EAAE,KAAK,YAAY,CAAC,SAAS;oBACjD,CAAC,CAAC,YAAY,CAAC,OAAO;oBACtB,CAAC,CAAC,YAAY,CAAC,SAAS,CAAC;QAC/B,CAAC;QAED,IAAI,gBAAgB,EAAE,CAAC;YACrB,IAAI,CAAC;gBACH,MAAM,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBACzC,oDAAoD;gBACpD,0BAA0B,CAAC,gBAAgB,CAAC,CAAC;gBAE7C,4DAA4D;gBAC5D,oBAAoB,EAAE,CAAC,gBAAgB,CAAC,CAAC;YAC3C,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,IAAI,OAAO,EAAE,CAAC;oBACZ,OAAO,CACL;wBACE,IAAI,EAAE,WAAW,CAAC,IAAI;wBACtB,IAAI,EAAG,CAAW,CAAC,OAAO;qBAC3B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IAEF,OAAO,uBAAuB,CAAC;AACjC,CAAC"}
@@ -4,7 +4,8 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { describe, it, expect, vi, beforeEach, } from 'vitest';
7
- import { renderHook, act } from '@testing-library/react';
7
+ import { act } from 'react';
8
+ import { renderHook } from '../../test-utils/render.js';
8
9
  import { useAutoAcceptIndicator } from './useAutoAcceptIndicator.js';
9
10
  import { Config, ApprovalMode } from '@google/gemini-cli-core';
10
11
  import { useKeypress } from './useKeypress.js';
@@ -29,6 +30,7 @@ describe('useAutoAcceptIndicator', () => {
29
30
  const instance = {
30
31
  getApprovalMode: instanceGetApprovalModeMock,
31
32
  setApprovalMode: instanceSetApprovalModeMock,
33
+ isYoloModeDisabled: vi.fn().mockReturnValue(false),
32
34
  isTrustedFolder: vi.fn().mockReturnValue(true),
33
35
  getCoreTools: vi.fn().mockReturnValue([]),
34
36
  getToolDiscoveryCommand: vi.fn().mockReturnValue(undefined),
@@ -38,7 +40,6 @@ describe('useAutoAcceptIndicator', () => {
38
40
  getSandbox: vi.fn().mockReturnValue(false),
39
41
  getDebugMode: vi.fn().mockReturnValue(false),
40
42
  getQuestion: vi.fn().mockReturnValue(undefined),
41
- getFullContext: vi.fn().mockReturnValue(false),
42
43
  getUserAgent: vi.fn().mockReturnValue('test-user-agent'),
43
44
  getUserMemory: vi.fn().mockReturnValue(''),
44
45
  getGeminiMdFileCount: vi.fn().mockReturnValue(0),
@@ -307,6 +308,35 @@ describe('useAutoAcceptIndicator', () => {
307
308
  expect(mockAddItem).toHaveBeenCalledTimes(2);
308
309
  });
309
310
  });
311
+ describe('when YOLO mode is disabled by settings', () => {
312
+ beforeEach(() => {
313
+ // Ensure isYoloModeDisabled returns true for these tests
314
+ if (mockConfigInstance && mockConfigInstance.isYoloModeDisabled) {
315
+ mockConfigInstance.isYoloModeDisabled.mockReturnValue(true);
316
+ }
317
+ });
318
+ it('should not enable YOLO mode when Ctrl+Y is pressed and add an info message', () => {
319
+ mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
320
+ const mockAddItem = vi.fn();
321
+ const { result } = renderHook(() => useAutoAcceptIndicator({
322
+ config: mockConfigInstance,
323
+ addItem: mockAddItem,
324
+ }));
325
+ expect(result.current).toBe(ApprovalMode.DEFAULT);
326
+ act(() => {
327
+ capturedUseKeypressHandler({ name: 'y', ctrl: true });
328
+ });
329
+ // setApprovalMode should not be called because the check should return early
330
+ expect(mockConfigInstance.setApprovalMode).not.toHaveBeenCalled();
331
+ // An info message should be added
332
+ expect(mockAddItem).toHaveBeenCalledWith({
333
+ type: MessageType.WARNING,
334
+ text: 'You cannot enter YOLO mode since it is disabled in your settings.',
335
+ }, expect.any(Number));
336
+ // The mode should not change
337
+ expect(result.current).toBe(ApprovalMode.DEFAULT);
338
+ });
339
+ });
310
340
  it('should call onApprovalModeChange when switching to YOLO mode', () => {
311
341
  mockConfigInstance.getApprovalMode.mockReturnValue(ApprovalMode.DEFAULT);
312
342
  const mockOnApprovalModeChange = vi.fn();