@google/gemini-cli 0.6.0-nightly.20250910.a31830a3 → 0.6.0-preview.10

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 (372) hide show
  1. package/LICENSE +2 -2
  2. package/README.md +12 -2
  3. package/dist/package.json +4 -2
  4. package/dist/src/commands/extensions/disable.d.ts +2 -3
  5. package/dist/src/commands/extensions/disable.js +20 -6
  6. package/dist/src/commands/extensions/disable.js.map +1 -1
  7. package/dist/src/commands/extensions/enable.d.ts +2 -3
  8. package/dist/src/commands/extensions/enable.js +20 -9
  9. package/dist/src/commands/extensions/enable.js.map +1 -1
  10. package/dist/src/commands/extensions/install.d.ts +2 -0
  11. package/dist/src/commands/extensions/install.js +20 -4
  12. package/dist/src/commands/extensions/install.js.map +1 -1
  13. package/dist/src/commands/extensions/install.test.js +80 -3
  14. package/dist/src/commands/extensions/install.test.js.map +1 -1
  15. package/dist/src/commands/extensions/link.js +1 -1
  16. package/dist/src/commands/extensions/link.js.map +1 -1
  17. package/dist/src/commands/extensions/uninstall.js +1 -1
  18. package/dist/src/commands/extensions/uninstall.js.map +1 -1
  19. package/dist/src/commands/extensions/update.js +42 -11
  20. package/dist/src/commands/extensions/update.js.map +1 -1
  21. package/dist/src/config/config.d.ts +1 -1
  22. package/dist/src/config/config.js +20 -6
  23. package/dist/src/config/config.js.map +1 -1
  24. package/dist/src/config/extension.d.ts +10 -14
  25. package/dist/src/config/extension.js +156 -145
  26. package/dist/src/config/extension.js.map +1 -1
  27. package/dist/src/config/extensions/extensionEnablement.d.ts +44 -0
  28. package/dist/src/config/extensions/extensionEnablement.js +161 -0
  29. package/dist/src/config/extensions/extensionEnablement.js.map +1 -0
  30. package/dist/src/config/extensions/extensionEnablement.test.d.ts +6 -0
  31. package/dist/src/config/extensions/extensionEnablement.test.js +261 -0
  32. package/dist/src/config/extensions/extensionEnablement.test.js.map +1 -0
  33. package/dist/src/config/extensions/github.d.ts +29 -0
  34. package/dist/src/config/extensions/github.js +301 -0
  35. package/dist/src/config/extensions/github.js.map +1 -0
  36. package/dist/src/config/extensions/github.test.d.ts +6 -0
  37. package/dist/src/config/extensions/github.test.js +267 -0
  38. package/dist/src/config/extensions/github.test.js.map +1 -0
  39. package/dist/src/config/extensions/update.d.ts +20 -0
  40. package/dist/src/config/extensions/update.js +94 -0
  41. package/dist/src/config/extensions/update.js.map +1 -0
  42. package/dist/src/config/extensions/update.test.d.ts +6 -0
  43. package/dist/src/config/extensions/update.test.js +324 -0
  44. package/dist/src/config/extensions/update.test.js.map +1 -0
  45. package/dist/src/config/extensions/variableSchema.d.ts +8 -0
  46. package/dist/src/config/extensions/variableSchema.js +4 -0
  47. package/dist/src/config/extensions/variableSchema.js.map +1 -1
  48. package/dist/src/config/keyBindings.d.ts +4 -1
  49. package/dist/src/config/keyBindings.js +8 -0
  50. package/dist/src/config/keyBindings.js.map +1 -1
  51. package/dist/src/config/settings.d.ts +3 -0
  52. package/dist/src/config/settings.js +55 -16
  53. package/dist/src/config/settings.js.map +1 -1
  54. package/dist/src/config/settingsSchema.d.ts +74 -8
  55. package/dist/src/config/settingsSchema.js +71 -8
  56. package/dist/src/config/settingsSchema.js.map +1 -1
  57. package/dist/src/config/settingsSchema.test.js +6 -0
  58. package/dist/src/config/settingsSchema.test.js.map +1 -1
  59. package/dist/src/config/trustedFolders.d.ts +1 -1
  60. package/dist/src/config/trustedFolders.js +9 -4
  61. package/dist/src/config/trustedFolders.js.map +1 -1
  62. package/dist/src/config/trustedFolders.test.js +41 -25
  63. package/dist/src/config/trustedFolders.test.js.map +1 -1
  64. package/dist/src/core/initializer.js +6 -1
  65. package/dist/src/core/initializer.js.map +1 -1
  66. package/dist/src/gemini.js +53 -32
  67. package/dist/src/gemini.js.map +1 -1
  68. package/dist/src/gemini.test.js +24 -2
  69. package/dist/src/gemini.test.js.map +1 -1
  70. package/dist/src/generated/git-commit.d.ts +2 -2
  71. package/dist/src/generated/git-commit.js +2 -2
  72. package/dist/src/generated/git-commit.js.map +1 -1
  73. package/dist/src/nonInteractiveCli.js +23 -9
  74. package/dist/src/nonInteractiveCli.js.map +1 -1
  75. package/dist/src/services/McpPromptLoader.js +43 -8
  76. package/dist/src/services/McpPromptLoader.js.map +1 -1
  77. package/dist/src/services/McpPromptLoader.test.js +228 -1
  78. package/dist/src/services/McpPromptLoader.test.js.map +1 -1
  79. package/dist/src/services/prompt-processors/shellProcessor.js +8 -1
  80. package/dist/src/services/prompt-processors/shellProcessor.js.map +1 -1
  81. package/dist/src/test-utils/createExtension.d.ts +15 -0
  82. package/dist/src/test-utils/createExtension.js +25 -0
  83. package/dist/src/test-utils/createExtension.js.map +1 -0
  84. package/dist/src/test-utils/mockCommandContext.js +2 -0
  85. package/dist/src/test-utils/mockCommandContext.js.map +1 -1
  86. package/dist/src/ui/AppContainer.js +66 -32
  87. package/dist/src/ui/AppContainer.js.map +1 -1
  88. package/dist/src/ui/AppContainer.test.js +36 -0
  89. package/dist/src/ui/AppContainer.test.js.map +1 -1
  90. package/dist/src/ui/IdeIntegrationNudge.js +2 -1
  91. package/dist/src/ui/IdeIntegrationNudge.js.map +1 -1
  92. package/dist/src/ui/auth/AuthDialog.js +2 -2
  93. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  94. package/dist/src/ui/auth/AuthInProgress.js +2 -2
  95. package/dist/src/ui/auth/AuthInProgress.js.map +1 -1
  96. package/dist/src/ui/commands/chatCommand.d.ts +2 -0
  97. package/dist/src/ui/commands/chatCommand.js +82 -3
  98. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  99. package/dist/src/ui/commands/extensionsCommand.js +86 -16
  100. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  101. package/dist/src/ui/commands/ideCommand.js +2 -2
  102. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  103. package/dist/src/ui/commands/types.d.ts +4 -1
  104. package/dist/src/ui/commands/types.js +0 -1
  105. package/dist/src/ui/commands/types.js.map +1 -1
  106. package/dist/src/ui/components/AboutBox.js +2 -2
  107. package/dist/src/ui/components/AboutBox.js.map +1 -1
  108. package/dist/src/ui/components/AnsiOutput.d.ts +13 -0
  109. package/dist/src/ui/components/AnsiOutput.js +12 -0
  110. package/dist/src/ui/components/AnsiOutput.js.map +1 -0
  111. package/dist/src/ui/components/AnsiOutput.test.d.ts +6 -0
  112. package/dist/src/ui/components/AnsiOutput.test.js +97 -0
  113. package/dist/src/ui/components/AnsiOutput.test.js.map +1 -0
  114. package/dist/src/ui/components/AutoAcceptIndicator.js +4 -4
  115. package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -1
  116. package/dist/src/ui/components/Composer.js +10 -5
  117. package/dist/src/ui/components/Composer.js.map +1 -1
  118. package/dist/src/ui/components/ConfigInitDisplay.js +2 -1
  119. package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
  120. package/dist/src/ui/components/ConsoleSummaryDisplay.js +2 -2
  121. package/dist/src/ui/components/ConsoleSummaryDisplay.js.map +1 -1
  122. package/dist/src/ui/components/ContextSummaryDisplay.js +3 -3
  123. package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
  124. package/dist/src/ui/components/ContextUsageDisplay.js +2 -2
  125. package/dist/src/ui/components/ContextUsageDisplay.js.map +1 -1
  126. package/dist/src/ui/components/DebugProfiler.js +2 -2
  127. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  128. package/dist/src/ui/components/DetailedMessagesDisplay.js +7 -7
  129. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  130. package/dist/src/ui/components/DialogManager.js +9 -5
  131. package/dist/src/ui/components/DialogManager.js.map +1 -1
  132. package/dist/src/ui/components/EditorSettingsDialog.js +5 -5
  133. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  134. package/dist/src/ui/components/FolderTrustDialog.js +16 -8
  135. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  136. package/dist/src/ui/components/FolderTrustDialog.test.js +18 -8
  137. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  138. package/dist/src/ui/components/Footer.d.ts +3 -0
  139. package/dist/src/ui/components/Footer.js +8 -3
  140. package/dist/src/ui/components/Footer.js.map +1 -1
  141. package/dist/src/ui/components/GeminiRespondingSpinner.js +3 -2
  142. package/dist/src/ui/components/GeminiRespondingSpinner.js.map +1 -1
  143. package/dist/src/ui/components/Header.js +2 -2
  144. package/dist/src/ui/components/Header.js.map +1 -1
  145. package/dist/src/ui/components/Help.js +5 -5
  146. package/dist/src/ui/components/Help.js.map +1 -1
  147. package/dist/src/ui/components/HistoryItemDisplay.d.ts +2 -0
  148. package/dist/src/ui/components/HistoryItemDisplay.js +2 -1
  149. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  150. package/dist/src/ui/components/InputPrompt.d.ts +3 -0
  151. package/dist/src/ui/components/InputPrompt.js +97 -19
  152. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  153. package/dist/src/ui/components/LoadingIndicator.js +2 -2
  154. package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
  155. package/dist/src/ui/components/LoopDetectionConfirmation.d.ts +13 -0
  156. package/dist/src/ui/components/LoopDetectionConfirmation.js +35 -0
  157. package/dist/src/ui/components/LoopDetectionConfirmation.js.map +1 -0
  158. package/dist/src/ui/components/LoopDetectionConfirmation.test.d.ts +6 -0
  159. package/dist/src/ui/components/LoopDetectionConfirmation.test.js +25 -0
  160. package/dist/src/ui/components/LoopDetectionConfirmation.test.js.map +1 -0
  161. package/dist/src/ui/components/MainContent.js +1 -1
  162. package/dist/src/ui/components/MainContent.js.map +1 -1
  163. package/dist/src/ui/components/MemoryUsageDisplay.js +6 -4
  164. package/dist/src/ui/components/MemoryUsageDisplay.js.map +1 -1
  165. package/dist/src/ui/components/ModelStatsDisplay.js +7 -7
  166. package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
  167. package/dist/src/ui/components/Notifications.js +2 -2
  168. package/dist/src/ui/components/Notifications.js.map +1 -1
  169. package/dist/src/ui/components/PrepareLabel.d.ts +5 -5
  170. package/dist/src/ui/components/PrepareLabel.js +67 -11
  171. package/dist/src/ui/components/PrepareLabel.js.map +1 -1
  172. package/dist/src/ui/components/PrepareLabel.test.d.ts +6 -0
  173. package/dist/src/ui/components/PrepareLabel.test.js +71 -0
  174. package/dist/src/ui/components/PrepareLabel.test.js.map +1 -0
  175. package/dist/src/ui/components/ProQuotaDialog.js +2 -2
  176. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  177. package/dist/src/ui/components/SettingsDialog.d.ts +2 -1
  178. package/dist/src/ui/components/SettingsDialog.js +73 -17
  179. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  180. package/dist/src/ui/components/SettingsDialog.test.js +291 -0
  181. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  182. package/dist/src/ui/components/ShellConfirmationDialog.js +2 -2
  183. package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
  184. package/dist/src/ui/components/ShellInputPrompt.d.ts +11 -0
  185. package/dist/src/ui/components/ShellInputPrompt.js +36 -0
  186. package/dist/src/ui/components/ShellInputPrompt.js.map +1 -0
  187. package/dist/src/ui/components/ShellModeIndicator.js +2 -2
  188. package/dist/src/ui/components/ShellModeIndicator.js.map +1 -1
  189. package/dist/src/ui/components/ShowMoreLines.js +2 -2
  190. package/dist/src/ui/components/ShowMoreLines.js.map +1 -1
  191. package/dist/src/ui/components/StatsDisplay.js +6 -6
  192. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  193. package/dist/src/ui/components/SuggestionsDisplay.d.ts +5 -2
  194. package/dist/src/ui/components/SuggestionsDisplay.js +17 -11
  195. package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
  196. package/dist/src/ui/components/ThemeDialog.js +4 -4
  197. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  198. package/dist/src/ui/components/ThemeDialog.test.js +10 -0
  199. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  200. package/dist/src/ui/components/Tips.js +2 -2
  201. package/dist/src/ui/components/Tips.js.map +1 -1
  202. package/dist/src/ui/components/ToolStatsDisplay.js +4 -4
  203. package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -1
  204. package/dist/src/ui/components/UpdateNotification.js +2 -2
  205. package/dist/src/ui/components/UpdateNotification.js.map +1 -1
  206. package/dist/src/ui/components/WorkspaceMigrationDialog.js +4 -4
  207. package/dist/src/ui/components/WorkspaceMigrationDialog.js.map +1 -1
  208. package/dist/src/ui/components/messages/CompressionMessage.d.ts +1 -2
  209. package/dist/src/ui/components/messages/CompressionMessage.js +37 -8
  210. package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
  211. package/dist/src/ui/components/messages/CompressionMessage.test.d.ts +6 -0
  212. package/dist/src/ui/components/messages/CompressionMessage.test.js +160 -0
  213. package/dist/src/ui/components/messages/CompressionMessage.test.js.map +1 -0
  214. package/dist/src/ui/components/messages/DiffRenderer.d.ts +2 -1
  215. package/dist/src/ui/components/messages/DiffRenderer.js +14 -22
  216. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  217. package/dist/src/ui/components/messages/ErrorMessage.js +2 -2
  218. package/dist/src/ui/components/messages/ErrorMessage.js.map +1 -1
  219. package/dist/src/ui/components/messages/GeminiMessage.js +2 -2
  220. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  221. package/dist/src/ui/components/messages/InfoMessage.js +2 -2
  222. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  223. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +31 -19
  224. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  225. package/dist/src/ui/components/messages/ToolGroupMessage.d.ts +3 -0
  226. package/dist/src/ui/components/messages/ToolGroupMessage.js +14 -8
  227. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  228. package/dist/src/ui/components/messages/ToolMessage.d.ts +4 -0
  229. package/dist/src/ui/components/messages/ToolMessage.js +24 -10
  230. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  231. package/dist/src/ui/components/messages/ToolMessage.test.js +33 -1
  232. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  233. package/dist/src/ui/components/messages/UserMessage.js +3 -3
  234. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  235. package/dist/src/ui/components/messages/UserShellMessage.js +2 -2
  236. package/dist/src/ui/components/messages/UserShellMessage.js.map +1 -1
  237. package/dist/src/ui/components/shared/MaxSizedBox.js +2 -2
  238. package/dist/src/ui/components/shared/MaxSizedBox.js.map +1 -1
  239. package/dist/src/ui/components/shared/RadioButtonSelect.js +12 -12
  240. package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
  241. package/dist/src/ui/components/shared/text-buffer.d.ts +19 -2
  242. package/dist/src/ui/components/shared/text-buffer.js +191 -133
  243. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  244. package/dist/src/ui/components/views/ExtensionsList.d.ts +6 -0
  245. package/dist/src/ui/components/views/ExtensionsList.js +47 -0
  246. package/dist/src/ui/components/views/ExtensionsList.js.map +1 -0
  247. package/dist/src/ui/components/views/ExtensionsList.test.d.ts +6 -0
  248. package/dist/src/ui/components/views/ExtensionsList.test.js +97 -0
  249. package/dist/src/ui/components/views/ExtensionsList.test.js.map +1 -0
  250. package/dist/src/ui/constants.d.ts +1 -0
  251. package/dist/src/ui/constants.js +1 -0
  252. package/dist/src/ui/constants.js.map +1 -1
  253. package/dist/src/ui/contexts/UIStateContext.d.ts +6 -1
  254. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  255. package/dist/src/ui/hooks/keyToAnsi.d.ts +15 -0
  256. package/dist/src/ui/hooks/keyToAnsi.js +67 -0
  257. package/dist/src/ui/hooks/keyToAnsi.js.map +1 -0
  258. package/dist/src/ui/hooks/shellCommandProcessor.d.ts +2 -1
  259. package/dist/src/ui/hooks/shellCommandProcessor.js +60 -15
  260. package/dist/src/ui/hooks/shellCommandProcessor.js.map +1 -1
  261. package/dist/src/ui/hooks/shellCommandProcessor.test.js +196 -17
  262. package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
  263. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +4 -1
  264. package/dist/src/ui/hooks/slashCommandProcessor.js +16 -46
  265. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  266. package/dist/src/ui/hooks/useAutoAcceptIndicator.d.ts +3 -2
  267. package/dist/src/ui/hooks/useAutoAcceptIndicator.js +9 -5
  268. package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +1 -1
  269. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js +69 -0
  270. package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +1 -1
  271. package/dist/src/ui/hooks/useExtensionUpdates.d.ts +12 -0
  272. package/dist/src/ui/hooks/useExtensionUpdates.js +64 -0
  273. package/dist/src/ui/hooks/useExtensionUpdates.js.map +1 -0
  274. package/dist/src/ui/hooks/useExtensionUpdates.test.d.ts +6 -0
  275. package/dist/src/ui/hooks/useExtensionUpdates.test.js +162 -0
  276. package/dist/src/ui/hooks/useExtensionUpdates.test.js.map +1 -0
  277. package/dist/src/ui/hooks/useGeminiStream.d.ts +11 -1
  278. package/dist/src/ui/hooks/useGeminiStream.js +89 -26
  279. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  280. package/dist/src/ui/hooks/useGitBranchName.js +15 -18
  281. package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
  282. package/dist/src/ui/hooks/useGitBranchName.test.js +49 -53
  283. package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
  284. package/dist/src/ui/hooks/useIdeTrustListener.js +2 -2
  285. package/dist/src/ui/hooks/useIdeTrustListener.js.map +1 -1
  286. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +0 -2
  287. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  288. package/dist/src/ui/hooks/useReactToolScheduler.d.ts +3 -2
  289. package/dist/src/ui/hooks/useReactToolScheduler.js +21 -17
  290. package/dist/src/ui/hooks/useReactToolScheduler.js.map +1 -1
  291. package/dist/src/ui/hooks/useReverseSearchCompletion.d.ts +1 -1
  292. package/dist/src/ui/hooks/useReverseSearchCompletion.js +67 -20
  293. package/dist/src/ui/hooks/useReverseSearchCompletion.js.map +1 -1
  294. package/dist/src/ui/hooks/useSlashCompletion.d.ts +1 -1
  295. package/dist/src/ui/hooks/useSlashCompletion.js +12 -1
  296. package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
  297. package/dist/src/ui/hooks/useSlashCompletion.test.js +14 -2
  298. package/dist/src/ui/hooks/useSlashCompletion.test.js.map +1 -1
  299. package/dist/src/ui/hooks/useToolScheduler.test.js +6 -4
  300. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  301. package/dist/src/ui/keyMatchers.test.js +8 -0
  302. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  303. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +8 -8
  304. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  305. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js +2 -2
  306. package/dist/src/ui/privacy/CloudPaidPrivacyNotice.js.map +1 -1
  307. package/dist/src/ui/privacy/GeminiPrivacyNotice.js +2 -2
  308. package/dist/src/ui/privacy/GeminiPrivacyNotice.js.map +1 -1
  309. package/dist/src/ui/state/extensions.d.ts +15 -0
  310. package/dist/src/ui/state/extensions.js +17 -0
  311. package/dist/src/ui/state/extensions.js.map +1 -0
  312. package/dist/src/ui/themes/ayu.js +1 -1
  313. package/dist/src/ui/themes/dracula.js +2 -2
  314. package/dist/src/ui/themes/github-dark.js +1 -1
  315. package/dist/src/ui/themes/theme.js +17 -17
  316. package/dist/src/ui/themes/theme.js.map +1 -1
  317. package/dist/src/ui/types.d.ts +12 -2
  318. package/dist/src/ui/types.js +1 -0
  319. package/dist/src/ui/types.js.map +1 -1
  320. package/dist/src/ui/utils/CodeColorizer.js +3 -2
  321. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  322. package/dist/src/ui/utils/InlineMarkdownRenderer.js +7 -7
  323. package/dist/src/ui/utils/InlineMarkdownRenderer.js.map +1 -1
  324. package/dist/src/ui/utils/MarkdownDisplay.js +10 -10
  325. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  326. package/dist/src/ui/utils/MarkdownDisplay.test.js +6 -2
  327. package/dist/src/ui/utils/MarkdownDisplay.test.js.map +1 -1
  328. package/dist/src/ui/utils/TableRenderer.js +4 -4
  329. package/dist/src/ui/utils/TableRenderer.js.map +1 -1
  330. package/dist/src/ui/utils/clipboardUtils.js +5 -6
  331. package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
  332. package/dist/src/ui/utils/displayUtils.js +4 -4
  333. package/dist/src/ui/utils/displayUtils.js.map +1 -1
  334. package/dist/src/ui/utils/textUtils.d.ts +9 -0
  335. package/dist/src/ui/utils/textUtils.js +52 -3
  336. package/dist/src/ui/utils/textUtils.js.map +1 -1
  337. package/dist/src/utils/commands.d.ts +20 -0
  338. package/dist/src/utils/commands.js +53 -0
  339. package/dist/src/utils/commands.js.map +1 -0
  340. package/dist/src/utils/commands.test.d.ts +6 -0
  341. package/dist/src/utils/commands.test.js +115 -0
  342. package/dist/src/utils/commands.test.js.map +1 -0
  343. package/dist/src/utils/commentJson.d.ts +9 -0
  344. package/dist/src/utils/commentJson.js +48 -0
  345. package/dist/src/utils/commentJson.js.map +1 -0
  346. package/dist/src/utils/commentJson.test.d.ts +6 -0
  347. package/dist/src/utils/commentJson.test.js +146 -0
  348. package/dist/src/utils/commentJson.test.js.map +1 -0
  349. package/dist/src/utils/errors.d.ts +21 -0
  350. package/dist/src/utils/errors.js +93 -0
  351. package/dist/src/utils/errors.js.map +1 -1
  352. package/dist/src/utils/errors.test.d.ts +6 -0
  353. package/dist/src/utils/errors.test.js +303 -0
  354. package/dist/src/utils/errors.test.js.map +1 -0
  355. package/dist/src/utils/processUtils.d.ts +13 -0
  356. package/dist/src/utils/processUtils.js +18 -0
  357. package/dist/src/utils/processUtils.js.map +1 -0
  358. package/dist/src/utils/processUtils.test.d.ts +6 -0
  359. package/dist/src/utils/processUtils.test.js +20 -0
  360. package/dist/src/utils/processUtils.test.js.map +1 -0
  361. package/dist/src/utils/sandbox.d.ts +1 -1
  362. package/dist/src/utils/sandbox.js +19 -8
  363. package/dist/src/utils/sandbox.js.map +1 -1
  364. package/dist/src/utils/settingsUtils.test.js +37 -2
  365. package/dist/src/utils/settingsUtils.test.js.map +1 -1
  366. package/dist/src/validateNonInterActiveAuth.js +30 -18
  367. package/dist/src/validateNonInterActiveAuth.js.map +1 -1
  368. package/dist/src/zed-integration/schema.d.ts +22 -22
  369. package/dist/src/zed-integration/zedIntegration.js +10 -7
  370. package/dist/src/zed-integration/zedIntegration.js.map +1 -1
  371. package/dist/tsconfig.tsbuildinfo +1 -1
  372. package/package.json +5 -3
@@ -5,29 +5,37 @@
5
5
  */
6
6
  import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest';
7
7
  import { act } from 'react';
8
- import { renderHook } from '@testing-library/react';
8
+ import { renderHook, waitFor } from '@testing-library/react';
9
9
  import { useGitBranchName } from './useGitBranchName.js';
10
10
  import { fs, vol } from 'memfs'; // For mocking fs
11
- import { EventEmitter } from 'node:events';
12
- import { exec as mockExec } from 'node:child_process';
13
- // Mock child_process
14
- vi.mock('child_process');
11
+ import { spawnAsync as mockSpawnAsync } from '@google/gemini-cli-core';
12
+ // Mock @google/gemini-cli-core
13
+ vi.mock('@google/gemini-cli-core', async () => {
14
+ const original = await vi.importActual('@google/gemini-cli-core');
15
+ return {
16
+ ...original,
17
+ spawnAsync: vi.fn(),
18
+ };
19
+ });
15
20
  // Mock fs and fs/promises
16
21
  vi.mock('node:fs', async () => {
17
22
  const memfs = await vi.importActual('memfs');
18
- return memfs.fs;
23
+ return {
24
+ ...memfs.fs,
25
+ default: memfs.fs,
26
+ };
19
27
  });
20
28
  vi.mock('node:fs/promises', async () => {
21
29
  const memfs = await vi.importActual('memfs');
22
30
  return memfs.fs.promises;
23
31
  });
24
32
  const CWD = '/test/project';
25
- const GIT_HEAD_PATH = `${CWD}/.git/HEAD`;
33
+ const GIT_LOGS_HEAD_PATH = `${CWD}/.git/logs/HEAD`;
26
34
  describe('useGitBranchName', () => {
27
35
  beforeEach(() => {
28
36
  vol.reset(); // Reset in-memory filesystem
29
37
  vol.fromJSON({
30
- [GIT_HEAD_PATH]: 'ref: refs/heads/main',
38
+ [GIT_LOGS_HEAD_PATH]: 'ref: refs/heads/main',
31
39
  });
32
40
  vi.useFakeTimers(); // Use fake timers for async operations
33
41
  });
@@ -36,9 +44,8 @@ describe('useGitBranchName', () => {
36
44
  vi.clearAllTimers();
37
45
  });
38
46
  it('should return branch name', async () => {
39
- mockExec.mockImplementation((_command, _options, callback) => {
40
- callback?.(null, 'main\n', '');
41
- return new EventEmitter();
47
+ mockSpawnAsync.mockResolvedValue({
48
+ stdout: 'main\n',
42
49
  });
43
50
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
44
51
  await act(async () => {
@@ -48,10 +55,7 @@ describe('useGitBranchName', () => {
48
55
  expect(result.current).toBe('main');
49
56
  });
50
57
  it('should return undefined if git command fails', async () => {
51
- mockExec.mockImplementation((_command, _options, callback) => {
52
- callback?.(new Error('Git error'), '', 'error output');
53
- return new EventEmitter();
54
- });
58
+ mockSpawnAsync.mockRejectedValue(new Error('Git error'));
55
59
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
56
60
  expect(result.current).toBeUndefined();
57
61
  await act(async () => {
@@ -61,14 +65,14 @@ describe('useGitBranchName', () => {
61
65
  expect(result.current).toBeUndefined();
62
66
  });
63
67
  it('should return short commit hash if branch is HEAD (detached state)', async () => {
64
- mockExec.mockImplementation((command, _options, callback) => {
65
- if (command === 'git rev-parse --abbrev-ref HEAD') {
66
- callback?.(null, 'HEAD\n', '');
68
+ mockSpawnAsync.mockImplementation(async (command, args) => {
69
+ if (args.includes('--abbrev-ref')) {
70
+ return { stdout: 'HEAD\n' };
67
71
  }
68
- else if (command === 'git rev-parse --short HEAD') {
69
- callback?.(null, 'a1b2c3d\n', '');
72
+ else if (args.includes('--short')) {
73
+ return { stdout: 'a1b2c3d\n' };
70
74
  }
71
- return new EventEmitter();
75
+ return { stdout: '' };
72
76
  });
73
77
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
74
78
  await act(async () => {
@@ -78,14 +82,14 @@ describe('useGitBranchName', () => {
78
82
  expect(result.current).toBe('a1b2c3d');
79
83
  });
80
84
  it('should return undefined if branch is HEAD and getting commit hash fails', async () => {
81
- mockExec.mockImplementation((command, _options, callback) => {
82
- if (command === 'git rev-parse --abbrev-ref HEAD') {
83
- callback?.(null, 'HEAD\n', '');
85
+ mockSpawnAsync.mockImplementation(async (command, args) => {
86
+ if (args.includes('--abbrev-ref')) {
87
+ return { stdout: 'HEAD\n' };
84
88
  }
85
- else if (command === 'git rev-parse --short HEAD') {
86
- callback?.(new Error('Git error'), '', 'error output');
89
+ else if (args.includes('--short')) {
90
+ throw new Error('Git error');
87
91
  }
88
- return new EventEmitter();
92
+ return { stdout: '' };
89
93
  });
90
94
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
91
95
  await act(async () => {
@@ -96,36 +100,31 @@ describe('useGitBranchName', () => {
96
100
  });
97
101
  it('should update branch name when .git/HEAD changes', async ({ skip }) => {
98
102
  skip(); // TODO: fix
99
- mockExec.mockImplementationOnce((_command, _options, callback) => {
100
- callback?.(null, 'main\n', '');
101
- return new EventEmitter();
102
- });
103
+ mockSpawnAsync
104
+ .mockResolvedValueOnce({ stdout: 'main\n' })
105
+ .mockResolvedValueOnce({ stdout: 'develop\n' });
103
106
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
104
107
  await act(async () => {
105
108
  vi.runAllTimers();
106
109
  rerender();
107
110
  });
108
111
  expect(result.current).toBe('main');
109
- // Simulate a branch change
110
- mockExec.mockImplementationOnce((_command, _options, callback) => {
111
- callback?.(null, 'develop\n', '');
112
- return new EventEmitter();
113
- });
114
112
  // Simulate file change event
115
113
  // Ensure the watcher is set up before triggering the change
116
114
  await act(async () => {
117
- fs.writeFileSync(GIT_HEAD_PATH, 'ref: refs/heads/develop'); // Trigger watcher
115
+ fs.writeFileSync(GIT_LOGS_HEAD_PATH, 'ref: refs/heads/develop'); // Trigger watcher
118
116
  vi.runAllTimers(); // Process timers for watcher and exec
119
117
  rerender();
120
118
  });
121
- expect(result.current).toBe('develop');
119
+ await waitFor(() => {
120
+ expect(result.current).toBe('develop');
121
+ });
122
122
  });
123
123
  it('should handle watcher setup error silently', async () => {
124
- // Remove .git/HEAD to cause an error in fs.watch setup
125
- vol.unlinkSync(GIT_HEAD_PATH);
126
- mockExec.mockImplementation((_command, _options, callback) => {
127
- callback?.(null, 'main\n', '');
128
- return new EventEmitter();
124
+ // Remove .git/logs/HEAD to cause an error in fs.watch setup
125
+ vol.unlinkSync(GIT_LOGS_HEAD_PATH);
126
+ mockSpawnAsync.mockResolvedValue({
127
+ stdout: 'main\n',
129
128
  });
130
129
  const { result, rerender } = renderHook(() => useGitBranchName(CWD));
131
130
  await act(async () => {
@@ -133,19 +132,17 @@ describe('useGitBranchName', () => {
133
132
  rerender();
134
133
  });
135
134
  expect(result.current).toBe('main'); // Branch name should still be fetched initially
136
- // Try to trigger a change that would normally be caught by the watcher
137
- mockExec.mockImplementationOnce((_command, _options, callback) => {
138
- callback?.(null, 'develop\n', '');
139
- return new EventEmitter();
135
+ mockSpawnAsync.mockResolvedValueOnce({
136
+ stdout: 'develop\n',
140
137
  });
141
138
  // This write would trigger the watcher if it was set up
142
139
  // but since it failed, the branch name should not update
143
140
  // We need to create the file again for writeFileSync to not throw
144
141
  vol.fromJSON({
145
- [GIT_HEAD_PATH]: 'ref: refs/heads/develop',
142
+ [GIT_LOGS_HEAD_PATH]: 'ref: refs/heads/develop',
146
143
  });
147
144
  await act(async () => {
148
- fs.writeFileSync(GIT_HEAD_PATH, 'ref: refs/heads/develop');
145
+ fs.writeFileSync(GIT_LOGS_HEAD_PATH, 'ref: refs/heads/develop');
149
146
  vi.runAllTimers();
150
147
  rerender();
151
148
  });
@@ -158,9 +155,8 @@ describe('useGitBranchName', () => {
158
155
  const watchMock = vi.spyOn(fs, 'watch').mockReturnValue({
159
156
  close: closeMock,
160
157
  });
161
- mockExec.mockImplementation((_command, _options, callback) => {
162
- callback?.(null, 'main\n', '');
163
- return new EventEmitter();
158
+ mockSpawnAsync.mockResolvedValue({
159
+ stdout: 'main\n',
164
160
  });
165
161
  const { unmount, rerender } = renderHook(() => useGitBranchName(CWD));
166
162
  await act(async () => {
@@ -168,7 +164,7 @@ describe('useGitBranchName', () => {
168
164
  rerender();
169
165
  });
170
166
  unmount();
171
- expect(watchMock).toHaveBeenCalledWith(GIT_HEAD_PATH, expect.any(Function));
167
+ expect(watchMock).toHaveBeenCalledWith(GIT_LOGS_HEAD_PATH, expect.any(Function));
172
168
  expect(closeMock).toHaveBeenCalled();
173
169
  });
174
170
  });
@@ -1 +1 @@
1
- {"version":3,"file":"useGitBranchName.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGitBranchName.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useGitBranchName.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useGitBranchName.test.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { useCallback, useEffect, useState, useSyncExternalStore } from 'react';
7
- import { IdeClient, ideContext } from '@google/gemini-cli-core';
7
+ import { IdeClient, ideContextStore } from '@google/gemini-cli-core';
8
8
  /**
9
9
  * This hook listens for trust status updates from the IDE companion extension.
10
10
  * It provides the current trust status from the IDE and a flag indicating
@@ -23,7 +23,7 @@ export function useIdeTrustListener() {
23
23
  })();
24
24
  };
25
25
  }, []);
26
- const getSnapshot = () => ideContext.getIdeContext()?.workspaceState?.isTrusted;
26
+ const getSnapshot = () => ideContextStore.get()?.workspaceState?.isTrusted;
27
27
  const isIdeTrusted = useSyncExternalStore(subscribe, getSnapshot);
28
28
  const [needsRestart, setNeedsRestart] = useState(false);
29
29
  const [initialTrustValue] = useState(isIdeTrusted);
@@ -1 +1 @@
1
- {"version":3,"file":"useIdeTrustListener.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useIdeTrustListener.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,aAAyB,EAAE,EAAE;QAC1D,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;YAChD,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,GAAG,EAAE;YACV,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;gBAChD,SAAS,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;YACrD,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,GAAG,EAAE,CACvB,UAAU,CAAC,aAAa,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC;IAExD,MAAM,YAAY,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAElE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEnD,SAAS,CAAC,GAAG,EAAE;QACb,IACE,CAAC,YAAY;YACb,iBAAiB,KAAK,SAAS;YAC/B,iBAAiB,KAAK,YAAY,EAClC,CAAC;YACD,eAAe,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;IAEpD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACxC,CAAC"}
1
+ {"version":3,"file":"useIdeTrustListener.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useIdeTrustListener.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,oBAAoB,EAAE,MAAM,OAAO,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAErE;;;;GAIG;AACH,MAAM,UAAU,mBAAmB;IACjC,MAAM,SAAS,GAAG,WAAW,CAAC,CAAC,aAAyB,EAAE,EAAE;QAC1D,CAAC,KAAK,IAAI,EAAE;YACV,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;YAChD,SAAS,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAClD,CAAC,CAAC,EAAE,CAAC;QACL,OAAO,GAAG,EAAE;YACV,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,SAAS,GAAG,MAAM,SAAS,CAAC,WAAW,EAAE,CAAC;gBAChD,SAAS,CAAC,yBAAyB,CAAC,aAAa,CAAC,CAAC;YACrD,CAAC,CAAC,EAAE,CAAC;QACP,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,SAAS,CAAC;IAE3E,MAAM,YAAY,GAAG,oBAAoB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;IAElE,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,iBAAiB,CAAC,GAAG,QAAQ,CAAC,YAAY,CAAC,CAAC;IAEnD,SAAS,CAAC,GAAG,EAAE;QACb,IACE,CAAC,YAAY;YACb,iBAAiB,KAAK,SAAS;YAC/B,iBAAiB,KAAK,YAAY,EAClC,CAAC;YACD,eAAe,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC;IACH,CAAC,EAAE,CAAC,YAAY,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC,CAAC;IAEpD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC;AACxC,CAAC"}
@@ -30,7 +30,6 @@ describe('useQuotaAndFallback', () => {
30
30
  // Spy on the method that requires the private field and mock its return.
31
31
  // This is cleaner than modifying the config class for tests.
32
32
  vi.spyOn(mockConfig, 'getContentGeneratorConfig').mockReturnValue({
33
- model: 'gemini-pro',
34
33
  authType: AuthType.LOGIN_WITH_GOOGLE,
35
34
  });
36
35
  mockHistoryManager = {
@@ -83,7 +82,6 @@ describe('useQuotaAndFallback', () => {
83
82
  it('should return null and take no action if authType is not LOGIN_WITH_GOOGLE', async () => {
84
83
  // Override the default mock from beforeEach for this specific test
85
84
  vi.spyOn(mockConfig, 'getContentGeneratorConfig').mockReturnValue({
86
- model: 'gemini-pro',
87
85
  authType: AuthType.USE_GEMINI,
88
86
  });
89
87
  const handler = getRegisteredHandler();
@@ -1 +1 @@
1
- {"version":3,"file":"useQuotaAndFallback.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useQuotaAndFallback.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useQuotaAndFallback.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useQuotaAndFallback.test.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { Config, ToolCallRequestInfo, ExecutingToolCall, ScheduledToolCall, ValidatingToolCall, WaitingToolCall, CompletedToolCall, CancelledToolCall, EditorType } from '@google/gemini-cli-core';
7
- import type { HistoryItemToolGroup, HistoryItemWithoutId } from '../types.js';
7
+ import type { HistoryItemToolGroup } from '../types.js';
8
8
  export type ScheduleFn = (request: ToolCallRequestInfo | ToolCallRequestInfo[], signal: AbortSignal) => void;
9
9
  export type MarkToolsAsSubmittedFn = (callIds: string[]) => void;
10
10
  export type TrackedScheduledToolCall = ScheduledToolCall & {
@@ -18,6 +18,7 @@ export type TrackedWaitingToolCall = WaitingToolCall & {
18
18
  };
19
19
  export type TrackedExecutingToolCall = ExecutingToolCall & {
20
20
  responseSubmittedToGemini?: boolean;
21
+ pid?: number;
21
22
  };
22
23
  export type TrackedCompletedToolCall = CompletedToolCall & {
23
24
  responseSubmittedToGemini?: boolean;
@@ -26,7 +27,7 @@ export type TrackedCancelledToolCall = CancelledToolCall & {
26
27
  responseSubmittedToGemini?: boolean;
27
28
  };
28
29
  export type TrackedToolCall = TrackedScheduledToolCall | TrackedValidatingToolCall | TrackedWaitingToolCall | TrackedExecutingToolCall | TrackedCompletedToolCall | TrackedCancelledToolCall;
29
- export declare function useReactToolScheduler(onComplete: (tools: CompletedToolCall[]) => Promise<void>, config: Config, setPendingHistoryItem: React.Dispatch<React.SetStateAction<HistoryItemWithoutId | null>>, getPreferredEditor: () => EditorType | undefined, onEditorClose: () => void): [TrackedToolCall[], ScheduleFn, MarkToolsAsSubmittedFn];
30
+ export declare function useReactToolScheduler(onComplete: (tools: CompletedToolCall[]) => Promise<void>, config: Config, getPreferredEditor: () => EditorType | undefined, onEditorClose: () => void): [TrackedToolCall[], ScheduleFn, MarkToolsAsSubmittedFn];
30
31
  /**
31
32
  * Transforms `TrackedToolCall` objects into `HistoryItemToolGroup` objects for UI display.
32
33
  */
@@ -6,21 +6,9 @@
6
6
  import { CoreToolScheduler } from '@google/gemini-cli-core';
7
7
  import { useCallback, useState, useMemo } from 'react';
8
8
  import { ToolCallStatus } from '../types.js';
9
- export function useReactToolScheduler(onComplete, config, setPendingHistoryItem, getPreferredEditor, onEditorClose) {
9
+ export function useReactToolScheduler(onComplete, config, getPreferredEditor, onEditorClose) {
10
10
  const [toolCallsForDisplay, setToolCallsForDisplay] = useState([]);
11
11
  const outputUpdateHandler = useCallback((toolCallId, outputChunk) => {
12
- setPendingHistoryItem((prevItem) => {
13
- if (prevItem?.type === 'tool_group') {
14
- return {
15
- ...prevItem,
16
- tools: prevItem.tools.map((toolDisplay) => toolDisplay.callId === toolCallId &&
17
- toolDisplay.status === ToolCallStatus.Executing
18
- ? { ...toolDisplay, resultDisplay: outputChunk }
19
- : toolDisplay),
20
- };
21
- }
22
- return prevItem;
23
- });
24
12
  setToolCallsForDisplay((prevCalls) => prevCalls.map((tc) => {
25
13
  if (tc.request.callId === toolCallId && tc.status === 'executing') {
26
14
  const executingTc = tc;
@@ -28,18 +16,33 @@ export function useReactToolScheduler(onComplete, config, setPendingHistoryItem,
28
16
  }
29
17
  return tc;
30
18
  }));
31
- }, [setPendingHistoryItem]);
19
+ }, []);
32
20
  const allToolCallsCompleteHandler = useCallback(async (completedToolCalls) => {
33
21
  await onComplete(completedToolCalls);
34
22
  }, [onComplete]);
35
23
  const toolCallsUpdateHandler = useCallback((updatedCoreToolCalls) => {
36
24
  setToolCallsForDisplay((prevTrackedCalls) => updatedCoreToolCalls.map((coreTc) => {
37
25
  const existingTrackedCall = prevTrackedCalls.find((ptc) => ptc.request.callId === coreTc.request.callId);
38
- const newTrackedCall = {
26
+ // Start with the new core state, then layer on the existing UI state
27
+ // to ensure UI-only properties like pid are preserved.
28
+ const responseSubmittedToGemini = existingTrackedCall?.responseSubmittedToGemini ?? false;
29
+ if (coreTc.status === 'executing') {
30
+ return {
31
+ ...coreTc,
32
+ responseSubmittedToGemini,
33
+ liveOutput: existingTrackedCall
34
+ ?.liveOutput,
35
+ pid: coreTc.pid,
36
+ };
37
+ }
38
+ // For other statuses, explicitly set liveOutput and pid to undefined
39
+ // to ensure they are not carried over from a previous executing state.
40
+ return {
39
41
  ...coreTc,
40
- responseSubmittedToGemini: existingTrackedCall?.responseSubmittedToGemini ?? false,
42
+ responseSubmittedToGemini,
43
+ liveOutput: undefined,
44
+ pid: undefined,
41
45
  };
42
- return newTrackedCall;
43
46
  }));
44
47
  }, [setToolCallsForDisplay]);
45
48
  const scheduler = useMemo(() => new CoreToolScheduler({
@@ -157,6 +160,7 @@ export function mapToDisplay(toolOrTools) {
157
160
  status: mapCoreStatusToDisplayStatus(trackedCall.status),
158
161
  resultDisplay: trackedCall.liveOutput ?? undefined,
159
162
  confirmationDetails: undefined,
163
+ ptyId: trackedCall.pid,
160
164
  };
161
165
  case 'validating': // Fallthrough
162
166
  case 'scheduled':
@@ -1 +1 @@
1
- {"version":3,"file":"useReactToolScheduler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useReactToolScheduler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"useReactToolScheduler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useReactToolScheduler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAkBH,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,WAAW,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAKvD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAoC7C,MAAM,UAAU,qBAAqB,CACnC,UAAyD,EACzD,MAAc,EACd,kBAAgD,EAChD,aAAyB;IAEzB,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAE5D,EAAE,CAAC,CAAC;IAEN,MAAM,mBAAmB,GAAwB,WAAW,CAC1D,CAAC,UAAU,EAAE,WAAW,EAAE,EAAE;QAC1B,sBAAsB,CAAC,CAAC,SAAS,EAAE,EAAE,CACnC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YACnB,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,KAAK,UAAU,IAAI,EAAE,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClE,MAAM,WAAW,GAAG,EAA8B,CAAC;gBACnD,OAAO,EAAE,GAAG,WAAW,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC;YACrD,CAAC;YACD,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EACD,EAAE,CACH,CAAC;IAEF,MAAM,2BAA2B,GAAgC,WAAW,CAC1E,KAAK,EAAE,kBAAkB,EAAE,EAAE;QAC3B,MAAM,UAAU,CAAC,kBAAkB,CAAC,CAAC;IACvC,CAAC,EACD,CAAC,UAAU,CAAC,CACb,CAAC;IAEF,MAAM,sBAAsB,GAA2B,WAAW,CAChE,CAAC,oBAAgC,EAAE,EAAE;QACnC,sBAAsB,CAAC,CAAC,gBAAgB,EAAE,EAAE,CAC1C,oBAAoB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;YAClC,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,IAAI,CAC/C,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,CAAC,MAAM,CACtD,CAAC;YACF,qEAAqE;YACrE,uDAAuD;YACvD,MAAM,yBAAyB,GAC7B,mBAAmB,EAAE,yBAAyB,IAAI,KAAK,CAAC;YAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;gBAClC,OAAO;oBACL,GAAG,MAAM;oBACT,yBAAyB;oBACzB,UAAU,EAAG,mBAAgD;wBAC3D,EAAE,UAAU;oBACd,GAAG,EAAG,MAA4B,CAAC,GAAG;iBACvC,CAAC;YACJ,CAAC;YAED,qEAAqE;YACrE,uEAAuE;YACvE,OAAO;gBACL,GAAG,MAAM;gBACT,yBAAyB;gBACzB,UAAU,EAAE,SAAS;gBACrB,GAAG,EAAE,SAAS;aACf,CAAC;QACJ,CAAC,CAAC,CACH,CAAC;IACJ,CAAC,EACD,CAAC,sBAAsB,CAAC,CACzB,CAAC;IAEF,MAAM,SAAS,GAAG,OAAO,CACvB,GAAG,EAAE,CACH,IAAI,iBAAiB,CAAC;QACpB,mBAAmB;QACnB,sBAAsB,EAAE,2BAA2B;QACnD,iBAAiB,EAAE,sBAAsB;QACzC,kBAAkB;QAClB,MAAM;QACN,aAAa;QACb,8DAA8D;KACxD,CAAC,EACX;QACE,MAAM;QACN,mBAAmB;QACnB,2BAA2B;QAC3B,sBAAsB;QACtB,kBAAkB;QAClB,aAAa;KACd,CACF,CAAC;IAEF,MAAM,QAAQ,GAAe,WAAW,CACtC,CACE,OAAoD,EACpD,MAAmB,EACnB,EAAE;QACF,KAAK,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IAEF,MAAM,oBAAoB,GAA2B,WAAW,CAC9D,CAAC,aAAuB,EAAE,EAAE;QAC1B,sBAAsB,CAAC,CAAC,SAAS,EAAE,EAAE,CACnC,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACnB,aAAa,CAAC,QAAQ,CAAC,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC;YACvC,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,yBAAyB,EAAE,IAAI,EAAE;YAC5C,CAAC,CAAC,EAAE,CACP,CACF,CAAC;IACJ,CAAC,EACD,EAAE,CACH,CAAC;IAEF,OAAO,CAAC,mBAAmB,EAAE,QAAQ,EAAE,oBAAoB,CAAC,CAAC;AAC/D,CAAC;AAED;;GAEG;AACH,SAAS,4BAA4B,CAAC,UAAsB;IAC1D,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,cAAc,CAAC,SAAS,CAAC;QAClC,KAAK,mBAAmB;YACtB,OAAO,cAAc,CAAC,UAAU,CAAC;QACnC,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,SAAS,CAAC;QAClC,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC,OAAO,CAAC;QAChC,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,QAAQ,CAAC;QACjC,KAAK,OAAO;YACV,OAAO,cAAc,CAAC,KAAK,CAAC;QAC9B,KAAK,WAAW;YACd,OAAO,cAAc,CAAC,OAAO,CAAC;QAChC,OAAO,CAAC,CAAC,CAAC;YACR,MAAM,eAAe,GAAU,UAAU,CAAC;YAC1C,OAAO,CAAC,IAAI,CAAC,oCAAoC,eAAe,EAAE,CAAC,CAAC;YACpE,OAAO,cAAc,CAAC,KAAK,CAAC;QAC9B,CAAC;IACH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAC1B,WAAgD;IAEhD,MAAM,SAAS,GAAG,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAE3E,MAAM,YAAY,GAAG,SAAS,CAAC,GAAG,CAChC,CAAC,WAAW,EAA6B,EAAE;QACzC,IAAI,WAAmB,CAAC;QACxB,IAAI,WAAmB,CAAC;QACxB,IAAI,sBAAsB,GAAG,KAAK,CAAC;QAEnC,IAAI,WAAW,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACnC,WAAW;gBACT,WAAW,CAAC,IAAI,KAAK,SAAS;oBAC5B,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI;oBAC1B,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;YACnC,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,CAAC;aAAM,CAAC;YACN,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC;YAC3C,WAAW,GAAG,WAAW,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC;YACtD,sBAAsB,GAAG,WAAW,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAC7D,CAAC;QAED,MAAM,qBAAqB,GAGvB;YACF,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM;YAClC,IAAI,EAAE,WAAW;YACjB,WAAW;YACX,sBAAsB;SACvB,CAAC;QAEF,QAAQ,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3B,KAAK,SAAS;gBACZ,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EAAE,WAAW,CAAC,QAAQ,CAAC,aAAa;oBACjD,mBAAmB,EAAE,SAAS;oBAC9B,UAAU,EAAE,WAAW,CAAC,QAAQ,CAAC,UAAU;iBAC5C,CAAC;YACJ,KAAK,OAAO;gBACV,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EAAE,WAAW,CAAC,QAAQ,CAAC,aAAa;oBACjD,mBAAmB,EAAE,SAAS;iBAC/B,CAAC;YACJ,KAAK,WAAW;gBACd,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EAAE,WAAW,CAAC,QAAQ,CAAC,aAAa;oBACjD,mBAAmB,EAAE,SAAS;iBAC/B,CAAC;YACJ,KAAK,mBAAmB;gBACtB,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EAAE,SAAS;oBACxB,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;iBACrD,CAAC;YACJ,KAAK,WAAW;gBACd,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EACV,WAAwC,CAAC,UAAU,IAAI,SAAS;oBACnE,mBAAmB,EAAE,SAAS;oBAC9B,KAAK,EAAG,WAAwC,CAAC,GAAG;iBACrD,CAAC;YACJ,KAAK,YAAY,CAAC,CAAC,cAAc;YACjC,KAAK,WAAW;gBACd,OAAO;oBACL,GAAG,qBAAqB;oBACxB,MAAM,EAAE,4BAA4B,CAAC,WAAW,CAAC,MAAM,CAAC;oBACxD,aAAa,EAAE,SAAS;oBACxB,mBAAmB,EAAE,SAAS;iBAC/B,CAAC;YACJ,OAAO,CAAC,CAAC,CAAC;gBACR,MAAM,eAAe,GAAU,WAAW,CAAC;gBAC3C,OAAO;oBACL,MAAM,EAAG,eAAmC,CAAC,OAAO,CAAC,MAAM;oBAC3D,IAAI,EAAE,cAAc;oBACpB,WAAW,EAAE,yCAAyC;oBACtD,MAAM,EAAE,cAAc,CAAC,KAAK;oBAC5B,aAAa,EAAE,yBAAyB;oBACxC,mBAAmB,EAAE,SAAS;oBAC9B,sBAAsB,EAAE,KAAK;iBAC9B,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC,CACF,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,KAAK,EAAE,YAAY;KACpB,CAAC;AACJ,CAAC"}
@@ -16,4 +16,4 @@ export interface UseReverseSearchCompletionReturn {
16
16
  handleAutocomplete: (i: number) => void;
17
17
  resetCompletionState: () => void;
18
18
  }
19
- export declare function useReverseSearchCompletion(buffer: TextBuffer, shellHistory: readonly string[], reverseSearchActive: boolean): UseReverseSearchCompletionReturn;
19
+ export declare function useReverseSearchCompletion(buffer: TextBuffer, history: readonly string[], reverseSearchActive: boolean): UseReverseSearchCompletionReturn;
@@ -3,37 +3,84 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { useEffect, useCallback } from 'react';
6
+ import { useState, useEffect, useMemo, useCallback, useRef } from 'react';
7
7
  import { useCompletion } from './useCompletion.js';
8
- export function useReverseSearchCompletion(buffer, shellHistory, reverseSearchActive) {
9
- const { suggestions, activeSuggestionIndex, visibleStartIndex, showSuggestions, isLoadingSuggestions, setSuggestions, setShowSuggestions, setActiveSuggestionIndex, resetCompletionState, navigateUp, navigateDown, } = useCompletion();
8
+ function useDebouncedValue(value, delay = 200) {
9
+ const [debounced, setDebounced] = useState(value);
10
10
  useEffect(() => {
11
- if (!reverseSearchActive) {
12
- resetCompletionState();
11
+ const handle = setTimeout(() => setDebounced(value), delay);
12
+ return () => clearTimeout(handle);
13
+ }, [value, delay]);
14
+ return debounced;
15
+ }
16
+ export function useReverseSearchCompletion(buffer, history, reverseSearchActive) {
17
+ const { suggestions, activeSuggestionIndex, visibleStartIndex, showSuggestions, isLoadingSuggestions, setSuggestions, setShowSuggestions, setActiveSuggestionIndex, resetCompletionState, navigateUp, navigateDown, setVisibleStartIndex, } = useCompletion();
18
+ const debouncedQuery = useDebouncedValue(buffer.text, 100);
19
+ // incremental search
20
+ const prevQueryRef = useRef('');
21
+ const prevMatchesRef = useRef([]);
22
+ // Clear incremental cache when activating reverse search
23
+ useEffect(() => {
24
+ if (reverseSearchActive) {
25
+ prevQueryRef.current = '';
26
+ prevMatchesRef.current = [];
27
+ }
28
+ }, [reverseSearchActive]);
29
+ // Also clear cache when history changes so new items are considered
30
+ useEffect(() => {
31
+ prevQueryRef.current = '';
32
+ prevMatchesRef.current = [];
33
+ }, [history]);
34
+ const searchHistory = useCallback((query, items) => {
35
+ const out = [];
36
+ for (let i = 0; i < items.length; i++) {
37
+ const cmd = items[i];
38
+ const idx = cmd.toLowerCase().indexOf(query);
39
+ if (idx !== -1) {
40
+ out.push({ label: cmd, value: cmd, matchedIndex: idx });
41
+ }
13
42
  }
14
- }, [reverseSearchActive, resetCompletionState]);
43
+ return out;
44
+ }, []);
45
+ const matches = useMemo(() => {
46
+ if (!reverseSearchActive)
47
+ return [];
48
+ if (debouncedQuery.length === 0)
49
+ return history.map((cmd) => ({
50
+ label: cmd,
51
+ value: cmd,
52
+ matchedIndex: -1,
53
+ }));
54
+ const query = debouncedQuery.toLowerCase();
55
+ const canUseCache = prevQueryRef.current &&
56
+ query.startsWith(prevQueryRef.current) &&
57
+ prevMatchesRef.current.length > 0;
58
+ const source = canUseCache
59
+ ? prevMatchesRef.current.map((m) => m.value)
60
+ : history;
61
+ return searchHistory(query, source);
62
+ }, [debouncedQuery, history, reverseSearchActive, searchHistory]);
15
63
  useEffect(() => {
16
64
  if (!reverseSearchActive) {
65
+ resetCompletionState();
17
66
  return;
18
67
  }
19
- const q = buffer.text.toLowerCase();
20
- const matches = shellHistory.reduce((acc, cmd) => {
21
- const idx = cmd.toLowerCase().indexOf(q);
22
- if (idx !== -1) {
23
- acc.push({ label: cmd, value: cmd, matchedIndex: idx });
24
- }
25
- return acc;
26
- }, []);
27
68
  setSuggestions(matches);
28
- setShowSuggestions(matches.length > 0);
29
- setActiveSuggestionIndex(matches.length > 0 ? 0 : -1);
69
+ const hasAny = matches.length > 0;
70
+ setShowSuggestions(hasAny);
71
+ setActiveSuggestionIndex(hasAny ? 0 : -1);
72
+ setVisibleStartIndex(0);
73
+ prevQueryRef.current = debouncedQuery.toLowerCase();
74
+ prevMatchesRef.current = matches;
30
75
  }, [
31
- buffer.text,
32
- shellHistory,
76
+ debouncedQuery,
77
+ matches,
33
78
  reverseSearchActive,
34
- setActiveSuggestionIndex,
35
- setShowSuggestions,
36
79
  setSuggestions,
80
+ setShowSuggestions,
81
+ setActiveSuggestionIndex,
82
+ setVisibleStartIndex,
83
+ resetCompletionState,
37
84
  ]);
38
85
  const handleAutocomplete = useCallback((i) => {
39
86
  if (i < 0 || i >= suggestions.length)
@@ -1 +1 @@
1
- {"version":3,"file":"useReverseSearchCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useReverseSearchCompletion.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAgBnD,MAAM,UAAU,0BAA0B,CACxC,MAAkB,EAClB,YAA+B,EAC/B,mBAA4B;IAE5B,MAAM,EACJ,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EACf,oBAAoB,EAEpB,cAAc,EACd,kBAAkB,EAClB,wBAAwB,EACxB,oBAAoB,EACpB,UAAU,EACV,YAAY,GACb,GAAG,aAAa,EAAE,CAAC;IAEpB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,oBAAoB,EAAE,CAAC;QACzB,CAAC;IACH,CAAC,EAAE,CAAC,mBAAmB,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAEhD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,mBAAmB,EAAE,CAAC;YACzB,OAAO;QACT,CAAC;QAED,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAe,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC7D,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;YACzC,IAAI,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gBACf,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;YAC1D,CAAC;YACD,OAAO,GAAG,CAAC;QACb,CAAC,EAAE,EAAE,CAAC,CAAC;QAEP,cAAc,CAAC,OAAO,CAAC,CAAC;QACxB,kBAAkB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACvC,wBAAwB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC,EAAE;QACD,MAAM,CAAC,IAAI;QACX,YAAY;QACZ,mBAAmB;QACnB,wBAAwB;QACxB,kBAAkB;QAClB,cAAc;KACf,CAAC,CAAC;IAEH,MAAM,kBAAkB,GAAG,WAAW,CACpC,CAAC,CAAS,EAAE,EAAE;QACZ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,WAAW,CAAC,MAAM;YAAE,OAAO;QAC7C,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACrC,oBAAoB,EAAE,CAAC;IACzB,CAAC,EACD,CAAC,MAAM,EAAE,WAAW,EAAE,oBAAoB,CAAC,CAC5C,CAAC;IAEF,OAAO;QACL,WAAW;QACX,qBAAqB;QACrB,iBAAiB;QACjB,eAAe;QACf,oBAAoB;QACpB,UAAU;QACV,YAAY;QACZ,kBAAkB;QAClB,oBAAoB;KACrB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"useReverseSearchCompletion.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useReverseSearchCompletion.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import type { Suggestion } from '../components/SuggestionsDisplay.js';
7
- import type { CommandContext, SlashCommand } from '../commands/types.js';
7
+ import { type CommandContext, type SlashCommand } from '../commands/types.js';
8
8
  export interface UseSlashCompletionProps {
9
9
  enabled: boolean;
10
10
  query: string | null;