@machina.ai/cell-cli 1.13.0-rc5 → 1.16.0-rc2

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 (443) hide show
  1. package/dist/package.json +4 -4
  2. package/dist/src/commands/extensions/disable.js +2 -2
  3. package/dist/src/commands/extensions/disable.js.map +1 -1
  4. package/dist/src/commands/extensions/enable.js +4 -4
  5. package/dist/src/commands/extensions/enable.js.map +1 -1
  6. package/dist/src/commands/extensions/examples/mcp-server/package.json +1 -1
  7. package/dist/src/commands/extensions.js +1 -1
  8. package/dist/src/commands/extensions.js.map +1 -1
  9. package/dist/src/config/config.d.ts +4 -8
  10. package/dist/src/config/config.js +37 -24
  11. package/dist/src/config/config.js.map +1 -1
  12. package/dist/src/config/config.test.js +31 -11
  13. package/dist/src/config/config.test.js.map +1 -1
  14. package/dist/src/config/extension-manager.js +39 -14
  15. package/dist/src/config/extension-manager.js.map +1 -1
  16. package/dist/src/config/extension.test.js +65 -0
  17. package/dist/src/config/extension.test.js.map +1 -1
  18. package/dist/src/config/extensions/extensionSettings.js +3 -2
  19. package/dist/src/config/extensions/extensionSettings.js.map +1 -1
  20. package/dist/src/config/extensions/github.d.ts +1 -1
  21. package/dist/src/config/extensions/github.js +8 -2
  22. package/dist/src/config/extensions/github.js.map +1 -1
  23. package/dist/src/config/extensions/github.test.js +8 -10
  24. package/dist/src/config/extensions/github.test.js.map +1 -1
  25. package/dist/src/config/keyBindings.d.ts +19 -0
  26. package/dist/src/config/keyBindings.js +151 -0
  27. package/dist/src/config/keyBindings.js.map +1 -1
  28. package/dist/src/config/keyBindings.test.js +26 -1
  29. package/dist/src/config/keyBindings.test.js.map +1 -1
  30. package/dist/src/config/policy-engine.integration.test.js +62 -44
  31. package/dist/src/config/policy-engine.integration.test.js.map +1 -1
  32. package/dist/src/config/settingPaths.d.ts +10 -0
  33. package/dist/src/config/settingPaths.js +11 -0
  34. package/dist/src/config/settingPaths.js.map +1 -0
  35. package/dist/src/config/settings.d.ts +15 -5
  36. package/dist/src/config/settings.js +28 -8
  37. package/dist/src/config/settings.js.map +1 -1
  38. package/dist/src/config/settingsSchema.d.ts +64 -7
  39. package/dist/src/config/settingsSchema.js +68 -11
  40. package/dist/src/config/settingsSchema.js.map +1 -1
  41. package/dist/src/config/settingsSchema.test.js +9 -0
  42. package/dist/src/config/settingsSchema.test.js.map +1 -1
  43. package/dist/src/gemini.d.ts +2 -2
  44. package/dist/src/gemini.js +56 -27
  45. package/dist/src/gemini.js.map +1 -1
  46. package/dist/src/gemini.test.js +18 -7
  47. package/dist/src/gemini.test.js.map +1 -1
  48. package/dist/src/generated/git-commit.d.ts +2 -2
  49. package/dist/src/generated/git-commit.js +2 -2
  50. package/dist/src/nonInteractiveCli.d.ts +3 -2
  51. package/dist/src/nonInteractiveCli.js +6 -1
  52. package/dist/src/nonInteractiveCli.js.map +1 -1
  53. package/dist/src/nonInteractiveCli.test.js +2 -1
  54. package/dist/src/nonInteractiveCli.test.js.map +1 -1
  55. package/dist/src/services/BuiltinCommandLoader.d.ts +1 -1
  56. package/dist/src/services/BuiltinCommandLoader.js +2 -2
  57. package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
  58. package/dist/src/services/BuiltinCommandLoader.test.js +3 -1
  59. package/dist/src/services/BuiltinCommandLoader.test.js.map +1 -1
  60. package/dist/src/services/FileCommandLoader.js +9 -6
  61. package/dist/src/services/FileCommandLoader.js.map +1 -1
  62. package/dist/src/services/FileCommandLoader.test.js +76 -1
  63. package/dist/src/services/FileCommandLoader.test.js.map +1 -1
  64. package/dist/src/test-utils/render.d.ts +2 -2
  65. package/dist/src/test-utils/render.js +18 -3
  66. package/dist/src/test-utils/render.js.map +1 -1
  67. package/dist/src/ui/App.js +9 -1
  68. package/dist/src/ui/App.js.map +1 -1
  69. package/dist/src/ui/App.test.js +37 -1
  70. package/dist/src/ui/App.test.js.map +1 -1
  71. package/dist/src/ui/AppContainer.d.ts +2 -3
  72. package/dist/src/ui/AppContainer.js +126 -29
  73. package/dist/src/ui/AppContainer.js.map +1 -1
  74. package/dist/src/ui/AppContainer.test.js +356 -48
  75. package/dist/src/ui/AppContainer.test.js.map +1 -1
  76. package/dist/src/ui/auth/AuthDialog.js +1 -1
  77. package/dist/src/ui/auth/AuthDialog.js.map +1 -1
  78. package/dist/src/ui/auth/AuthDialog.test.js +1 -1
  79. package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
  80. package/dist/src/ui/commands/chatCommand.js +15 -3
  81. package/dist/src/ui/commands/chatCommand.js.map +1 -1
  82. package/dist/src/ui/commands/chatCommand.test.js +44 -5
  83. package/dist/src/ui/commands/chatCommand.test.js.map +1 -1
  84. package/dist/src/ui/commands/directoryCommand.js +2 -10
  85. package/dist/src/ui/commands/directoryCommand.js.map +1 -1
  86. package/dist/src/ui/commands/docsCommand.js +1 -1
  87. package/dist/src/ui/commands/docsCommand.js.map +1 -1
  88. package/dist/src/ui/commands/extensionsCommand.d.ts +7 -2
  89. package/dist/src/ui/commands/extensionsCommand.js +238 -24
  90. package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
  91. package/dist/src/ui/commands/extensionsCommand.test.js +323 -82
  92. package/dist/src/ui/commands/extensionsCommand.test.js.map +1 -1
  93. package/dist/src/ui/commands/ideCommand.js +6 -4
  94. package/dist/src/ui/commands/ideCommand.js.map +1 -1
  95. package/dist/src/ui/commands/memoryCommand.js +2 -10
  96. package/dist/src/ui/commands/memoryCommand.js.map +1 -1
  97. package/dist/src/ui/commands/memoryCommand.test.js +11 -28
  98. package/dist/src/ui/commands/memoryCommand.test.js.map +1 -1
  99. package/dist/src/ui/commands/settingsCommand.js +1 -1
  100. package/dist/src/ui/commands/settingsCommand.js.map +1 -1
  101. package/dist/src/ui/commands/settingsCommand.test.js +1 -1
  102. package/dist/src/ui/commands/settingsCommand.test.js.map +1 -1
  103. package/dist/src/ui/commands/setupGithubCommand.js +1 -1
  104. package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
  105. package/dist/src/ui/commands/toolsCommand.js +1 -1
  106. package/dist/src/ui/commands/toolsCommand.js.map +1 -1
  107. package/dist/src/ui/commands/types.d.ts +1 -2
  108. package/dist/src/ui/commands/types.js.map +1 -1
  109. package/dist/src/ui/components/AboutBox.js +1 -1
  110. package/dist/src/ui/components/AboutBox.js.map +1 -1
  111. package/dist/src/ui/components/AlternateBufferQuittingDisplay.d.ts +6 -0
  112. package/dist/src/ui/components/AlternateBufferQuittingDisplay.js +24 -0
  113. package/dist/src/ui/components/AlternateBufferQuittingDisplay.js.map +1 -0
  114. package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.d.ts +6 -0
  115. package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js +110 -0
  116. package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js.map +1 -0
  117. package/dist/src/ui/components/AppHeader.js +25 -3
  118. package/dist/src/ui/components/AppHeader.js.map +1 -1
  119. package/dist/src/ui/components/AppHeader.test.d.ts +6 -0
  120. package/dist/src/ui/components/AppHeader.test.js +138 -0
  121. package/dist/src/ui/components/AppHeader.test.js.map +1 -0
  122. package/dist/src/ui/components/AsciiArt.d.ts +6 -3
  123. package/dist/src/ui/components/AsciiArt.js +40 -3
  124. package/dist/src/ui/components/AsciiArt.js.map +1 -1
  125. package/dist/src/ui/components/Banner.d.ts +12 -0
  126. package/dist/src/ui/components/Banner.js +14 -0
  127. package/dist/src/ui/components/Banner.js.map +1 -0
  128. package/dist/src/ui/components/CliSpinner.d.ts +0 -1
  129. package/dist/src/ui/components/CliSpinner.js +3 -4
  130. package/dist/src/ui/components/CliSpinner.js.map +1 -1
  131. package/dist/src/ui/components/CliSpinner.test.d.ts +6 -0
  132. package/dist/src/ui/components/CliSpinner.test.js +23 -0
  133. package/dist/src/ui/components/CliSpinner.test.js.map +1 -0
  134. package/dist/src/ui/components/Composer.js +11 -4
  135. package/dist/src/ui/components/Composer.js.map +1 -1
  136. package/dist/src/ui/components/CopyModeWarning.d.ts +7 -0
  137. package/dist/src/ui/components/CopyModeWarning.js +12 -0
  138. package/dist/src/ui/components/CopyModeWarning.js.map +1 -0
  139. package/dist/src/ui/components/DebugProfiler.js +2 -2
  140. package/dist/src/ui/components/DebugProfiler.js.map +1 -1
  141. package/dist/src/ui/components/DebugProfiler.test.js +15 -0
  142. package/dist/src/ui/components/DebugProfiler.test.js.map +1 -1
  143. package/dist/src/ui/components/DetailedMessagesDisplay.d.ts +1 -0
  144. package/dist/src/ui/components/DetailedMessagesDisplay.js +47 -27
  145. package/dist/src/ui/components/DetailedMessagesDisplay.js.map +1 -1
  146. package/dist/src/ui/components/DialogManager.js +1 -1
  147. package/dist/src/ui/components/DialogManager.js.map +1 -1
  148. package/dist/src/ui/components/EditorSettingsDialog.d.ts +3 -4
  149. package/dist/src/ui/components/EditorSettingsDialog.js +2 -2
  150. package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
  151. package/dist/src/ui/components/FolderTrustDialog.js +1 -1
  152. package/dist/src/ui/components/FolderTrustDialog.js.map +1 -1
  153. package/dist/src/ui/components/FolderTrustDialog.test.js +1 -1
  154. package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
  155. package/dist/src/ui/components/Footer.js +2 -2
  156. package/dist/src/ui/components/Footer.js.map +1 -1
  157. package/dist/src/ui/components/GradientRegression.test.d.ts +6 -0
  158. package/dist/src/ui/components/GradientRegression.test.js +84 -0
  159. package/dist/src/ui/components/GradientRegression.test.js.map +1 -0
  160. package/dist/src/ui/components/Header.js +9 -8
  161. package/dist/src/ui/components/Header.js.map +1 -1
  162. package/dist/src/ui/components/Header.test.js +102 -34
  163. package/dist/src/ui/components/Header.test.js.map +1 -1
  164. package/dist/src/ui/components/Help.js +1 -1
  165. package/dist/src/ui/components/Help.js.map +1 -1
  166. package/dist/src/ui/components/Help.test.js +9 -0
  167. package/dist/src/ui/components/Help.test.js.map +1 -1
  168. package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
  169. package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
  170. package/dist/src/ui/components/HistoryItemDisplay.test.js +51 -40
  171. package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
  172. package/dist/src/ui/components/InputPrompt.d.ts +3 -0
  173. package/dist/src/ui/components/InputPrompt.js +18 -8
  174. package/dist/src/ui/components/InputPrompt.js.map +1 -1
  175. package/dist/src/ui/components/InputPrompt.test.js +99 -116
  176. package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
  177. package/dist/src/ui/components/MainContent.js +52 -15
  178. package/dist/src/ui/components/MainContent.js.map +1 -1
  179. package/dist/src/ui/components/ModelDialog.js +38 -29
  180. package/dist/src/ui/components/ModelDialog.js.map +1 -1
  181. package/dist/src/ui/components/ModelDialog.test.js +22 -11
  182. package/dist/src/ui/components/ModelDialog.test.js.map +1 -1
  183. package/dist/src/ui/components/PermissionsModifyTrustDialog.js +1 -1
  184. package/dist/src/ui/components/PermissionsModifyTrustDialog.js.map +1 -1
  185. package/dist/src/ui/components/ProQuotaDialog.d.ts +7 -2
  186. package/dist/src/ui/components/ProQuotaDialog.js +80 -15
  187. package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
  188. package/dist/src/ui/components/ProQuotaDialog.test.js +146 -40
  189. package/dist/src/ui/components/ProQuotaDialog.test.js.map +1 -1
  190. package/dist/src/ui/components/SettingsDialog.js +1 -1
  191. package/dist/src/ui/components/SettingsDialog.js.map +1 -1
  192. package/dist/src/ui/components/SettingsDialog.test.js +12 -12
  193. package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
  194. package/dist/src/ui/components/StatsDisplay.js +2 -2
  195. package/dist/src/ui/components/StatsDisplay.js.map +1 -1
  196. package/dist/src/ui/components/StickyHeader.d.ts +14 -0
  197. package/dist/src/ui/components/StickyHeader.js +5 -0
  198. package/dist/src/ui/components/StickyHeader.js.map +1 -0
  199. package/dist/src/ui/components/StickyHeader.test.d.ts +6 -0
  200. package/dist/src/ui/components/StickyHeader.test.js +17 -0
  201. package/dist/src/ui/components/StickyHeader.test.js.map +1 -0
  202. package/dist/src/ui/components/ThemeDialog.d.ts +2 -3
  203. package/dist/src/ui/components/ThemeDialog.js +11 -3
  204. package/dist/src/ui/components/ThemeDialog.js.map +1 -1
  205. package/dist/src/ui/components/ThemeDialog.test.js +3 -3
  206. package/dist/src/ui/components/ThemeDialog.test.js.map +1 -1
  207. package/dist/src/ui/components/ThemedGradient.d.ts +8 -0
  208. package/dist/src/ui/components/ThemedGradient.js +15 -0
  209. package/dist/src/ui/components/ThemedGradient.js.map +1 -0
  210. package/dist/src/ui/components/messages/DiffRenderer.js +129 -89
  211. package/dist/src/ui/components/messages/DiffRenderer.js.map +1 -1
  212. package/dist/src/ui/components/messages/DiffRenderer.test.js +107 -115
  213. package/dist/src/ui/components/messages/DiffRenderer.test.js.map +1 -1
  214. package/dist/src/ui/components/messages/GeminiMessage.js +3 -1
  215. package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
  216. package/dist/src/ui/components/messages/GeminiMessageContent.js +3 -1
  217. package/dist/src/ui/components/messages/GeminiMessageContent.js.map +1 -1
  218. package/dist/src/ui/components/messages/InfoMessage.d.ts +2 -0
  219. package/dist/src/ui/components/messages/InfoMessage.js +4 -3
  220. package/dist/src/ui/components/messages/InfoMessage.js.map +1 -1
  221. package/dist/src/ui/components/messages/Todo.test.js +1 -1
  222. package/dist/src/ui/components/messages/Todo.test.js.map +1 -1
  223. package/dist/src/ui/components/messages/ToolConfirmationMessage.js +151 -122
  224. package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
  225. package/dist/src/ui/components/messages/ToolGroupMessage.js +18 -14
  226. package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
  227. package/dist/src/ui/components/messages/ToolGroupMessage.test.js +57 -32
  228. package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
  229. package/dist/src/ui/components/messages/ToolMessage.d.ts +3 -0
  230. package/dist/src/ui/components/messages/ToolMessage.js +36 -17
  231. package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
  232. package/dist/src/ui/components/messages/ToolMessage.test.js +3 -0
  233. package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
  234. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js +36 -4
  235. package/dist/src/ui/components/messages/ToolMessageRawMarkdown.test.js.map +1 -1
  236. package/dist/src/ui/components/messages/UserMessage.d.ts +1 -0
  237. package/dist/src/ui/components/messages/UserMessage.js +2 -2
  238. package/dist/src/ui/components/messages/UserMessage.js.map +1 -1
  239. package/dist/src/ui/components/shared/ScopeSelector.d.ts +4 -4
  240. package/dist/src/ui/components/shared/Scrollable.d.ts +18 -0
  241. package/dist/src/ui/components/shared/Scrollable.js +84 -0
  242. package/dist/src/ui/components/shared/Scrollable.js.map +1 -0
  243. package/dist/src/ui/components/shared/Scrollable.test.d.ts +6 -0
  244. package/dist/src/ui/components/shared/Scrollable.test.js +74 -0
  245. package/dist/src/ui/components/shared/Scrollable.test.js.map +1 -0
  246. package/dist/src/ui/components/shared/ScrollableList.d.ts +26 -0
  247. package/dist/src/ui/components/shared/ScrollableList.js +152 -0
  248. package/dist/src/ui/components/shared/ScrollableList.js.map +1 -0
  249. package/dist/src/ui/components/shared/ScrollableList.test.d.ts +6 -0
  250. package/dist/src/ui/components/shared/ScrollableList.test.js +228 -0
  251. package/dist/src/ui/components/shared/ScrollableList.test.js.map +1 -0
  252. package/dist/src/ui/components/shared/VirtualizedList.d.ts +44 -0
  253. package/dist/src/ui/components/shared/VirtualizedList.js +312 -0
  254. package/dist/src/ui/components/shared/VirtualizedList.js.map +1 -0
  255. package/dist/src/ui/components/shared/VirtualizedList.test.d.ts +6 -0
  256. package/dist/src/ui/components/shared/VirtualizedList.test.js +171 -0
  257. package/dist/src/ui/components/shared/VirtualizedList.test.js.map +1 -0
  258. package/dist/src/ui/components/shared/text-buffer.d.ts +2 -8
  259. package/dist/src/ui/components/shared/text-buffer.js +1 -1
  260. package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
  261. package/dist/src/ui/components/shared/text-buffer.test.js +35 -0
  262. package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
  263. package/dist/src/ui/components/views/ToolsList.js +1 -1
  264. package/dist/src/ui/components/views/ToolsList.js.map +1 -1
  265. package/dist/src/ui/constants.d.ts +1 -0
  266. package/dist/src/ui/constants.js +5 -0
  267. package/dist/src/ui/constants.js.map +1 -1
  268. package/dist/src/ui/contexts/KeypressContext.d.ts +6 -11
  269. package/dist/src/ui/contexts/KeypressContext.js +456 -756
  270. package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
  271. package/dist/src/ui/contexts/KeypressContext.test.js +103 -334
  272. package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
  273. package/dist/src/ui/contexts/MouseContext.js +16 -1
  274. package/dist/src/ui/contexts/MouseContext.js.map +1 -1
  275. package/dist/src/ui/contexts/MouseContext.test.js +34 -0
  276. package/dist/src/ui/contexts/MouseContext.test.js.map +1 -1
  277. package/dist/src/ui/contexts/ScrollProvider.d.ts +25 -0
  278. package/dist/src/ui/contexts/ScrollProvider.drag.test.d.ts +6 -0
  279. package/dist/src/ui/contexts/ScrollProvider.drag.test.js +319 -0
  280. package/dist/src/ui/contexts/ScrollProvider.drag.test.js.map +1 -0
  281. package/dist/src/ui/contexts/ScrollProvider.js +242 -0
  282. package/dist/src/ui/contexts/ScrollProvider.js.map +1 -0
  283. package/dist/src/ui/contexts/ScrollProvider.test.d.ts +6 -0
  284. package/dist/src/ui/contexts/ScrollProvider.test.js +377 -0
  285. package/dist/src/ui/contexts/ScrollProvider.test.js.map +1 -0
  286. package/dist/src/ui/contexts/UIActionsContext.d.ts +6 -5
  287. package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
  288. package/dist/src/ui/contexts/UIStateContext.d.ts +10 -0
  289. package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
  290. package/dist/src/ui/debug.d.ts +8 -0
  291. package/dist/src/ui/debug.js +11 -0
  292. package/dist/src/ui/debug.js.map +1 -0
  293. package/dist/src/ui/editors/editorSettingsManager.d.ts +0 -1
  294. package/dist/src/ui/editors/editorSettingsManager.js +1 -11
  295. package/dist/src/ui/editors/editorSettingsManager.js.map +1 -1
  296. package/dist/src/ui/hooks/atCommandProcessor.js +3 -3
  297. package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
  298. package/dist/src/ui/hooks/atCommandProcessor.test.js +2 -1
  299. package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
  300. package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -1
  301. package/dist/src/ui/hooks/slashCommandProcessor.js +23 -5
  302. package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
  303. package/dist/src/ui/hooks/slashCommandProcessor.test.js +103 -68
  304. package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
  305. package/dist/src/ui/hooks/useAlternateBuffer.d.ts +8 -0
  306. package/dist/src/ui/hooks/useAlternateBuffer.js +12 -0
  307. package/dist/src/ui/hooks/useAlternateBuffer.js.map +1 -0
  308. package/dist/src/ui/hooks/useAnimatedScrollbar.d.ts +10 -0
  309. package/dist/src/ui/hooks/useAnimatedScrollbar.js +91 -0
  310. package/dist/src/ui/hooks/useAnimatedScrollbar.js.map +1 -0
  311. package/dist/src/ui/hooks/useAnimatedScrollbar.test.d.ts +6 -0
  312. package/dist/src/ui/hooks/useAnimatedScrollbar.test.js +85 -0
  313. package/dist/src/ui/hooks/useAnimatedScrollbar.test.js.map +1 -0
  314. package/dist/src/ui/hooks/useBatchedScroll.d.ts +14 -0
  315. package/dist/src/ui/hooks/useBatchedScroll.js +27 -0
  316. package/dist/src/ui/hooks/useBatchedScroll.js.map +1 -0
  317. package/dist/src/ui/hooks/useBatchedScroll.test.d.ts +6 -0
  318. package/dist/src/ui/hooks/useBatchedScroll.test.js +62 -0
  319. package/dist/src/ui/hooks/useBatchedScroll.test.js.map +1 -0
  320. package/dist/src/ui/hooks/useEditorSettings.d.ts +2 -2
  321. package/dist/src/ui/hooks/useEditorSettings.js +4 -3
  322. package/dist/src/ui/hooks/useEditorSettings.js.map +1 -1
  323. package/dist/src/ui/hooks/useEditorSettings.test.js +17 -8
  324. package/dist/src/ui/hooks/useEditorSettings.test.js.map +1 -1
  325. package/dist/src/ui/hooks/useFocus.test.js +10 -10
  326. package/dist/src/ui/hooks/useFocus.test.js.map +1 -1
  327. package/dist/src/ui/hooks/useGeminiStream.js +2 -2
  328. package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
  329. package/dist/src/ui/hooks/useGeminiStream.test.js +4 -0
  330. package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
  331. package/dist/src/ui/hooks/useKeypress.test.js +9 -32
  332. package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
  333. package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
  334. package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
  335. package/dist/src/ui/hooks/usePromptCompletion.js +2 -9
  336. package/dist/src/ui/hooks/usePromptCompletion.js.map +1 -1
  337. package/dist/src/ui/hooks/useQuotaAndFallback.d.ts +3 -5
  338. package/dist/src/ui/hooks/useQuotaAndFallback.js +62 -77
  339. package/dist/src/ui/hooks/useQuotaAndFallback.js.map +1 -1
  340. package/dist/src/ui/hooks/useQuotaAndFallback.test.js +142 -106
  341. package/dist/src/ui/hooks/useQuotaAndFallback.test.js.map +1 -1
  342. package/dist/src/ui/hooks/useSelectionList.test.js +3 -0
  343. package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
  344. package/dist/src/ui/hooks/useSessionBrowser.d.ts +18 -0
  345. package/dist/src/ui/hooks/useSessionBrowser.js +152 -0
  346. package/dist/src/ui/hooks/useSessionBrowser.js.map +1 -0
  347. package/dist/src/ui/hooks/useSessionBrowser.test.d.ts +6 -0
  348. package/dist/src/ui/hooks/useSessionBrowser.test.js +544 -0
  349. package/dist/src/ui/hooks/useSessionBrowser.test.js.map +1 -0
  350. package/dist/src/ui/hooks/useSessionResume.d.ts +30 -0
  351. package/dist/src/ui/hooks/useSessionResume.js +56 -0
  352. package/dist/src/ui/hooks/useSessionResume.js.map +1 -0
  353. package/dist/src/ui/hooks/useSessionResume.test.d.ts +6 -0
  354. package/dist/src/ui/hooks/useSessionResume.test.js +325 -0
  355. package/dist/src/ui/hooks/useSessionResume.test.js.map +1 -0
  356. package/dist/src/ui/hooks/useThemeCommand.d.ts +2 -2
  357. package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
  358. package/dist/src/ui/hooks/useToolScheduler.test.js +1 -0
  359. package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
  360. package/dist/src/ui/hooks/vim.js +1 -0
  361. package/dist/src/ui/hooks/vim.js.map +1 -1
  362. package/dist/src/ui/hooks/vim.test.js +1 -0
  363. package/dist/src/ui/hooks/vim.test.js.map +1 -1
  364. package/dist/src/ui/keyMatchers.test.js +38 -0
  365. package/dist/src/ui/keyMatchers.test.js.map +1 -1
  366. package/dist/src/ui/layouts/DefaultAppLayout.js +9 -1
  367. package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -1
  368. package/dist/src/ui/noninteractive/nonInteractiveUi.js +0 -1
  369. package/dist/src/ui/noninteractive/nonInteractiveUi.js.map +1 -1
  370. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js +1 -1
  371. package/dist/src/ui/privacy/CloudFreePrivacyNotice.js.map +1 -1
  372. package/dist/src/ui/state/extensions.d.ts +5 -0
  373. package/dist/src/ui/state/extensions.js +12 -0
  374. package/dist/src/ui/state/extensions.js.map +1 -1
  375. package/dist/src/ui/state/extensions.test.d.ts +6 -0
  376. package/dist/src/ui/state/extensions.test.js +62 -0
  377. package/dist/src/ui/state/extensions.test.js.map +1 -0
  378. package/dist/src/ui/themes/color-utils.js +9 -0
  379. package/dist/src/ui/themes/color-utils.js.map +1 -1
  380. package/dist/src/ui/themes/color-utils.test.js +17 -0
  381. package/dist/src/ui/themes/color-utils.test.js.map +1 -1
  382. package/dist/src/ui/types.d.ts +6 -0
  383. package/dist/src/ui/types.js +4 -0
  384. package/dist/src/ui/types.js.map +1 -1
  385. package/dist/src/ui/utils/CodeColorizer.d.ts +11 -3
  386. package/dist/src/ui/utils/CodeColorizer.js +18 -9
  387. package/dist/src/ui/utils/CodeColorizer.js.map +1 -1
  388. package/dist/src/ui/utils/CodeColorizer.test.d.ts +6 -0
  389. package/dist/src/ui/utils/CodeColorizer.test.js +38 -0
  390. package/dist/src/ui/utils/CodeColorizer.test.js.map +1 -0
  391. package/dist/src/ui/utils/MarkdownDisplay.js +32 -6
  392. package/dist/src/ui/utils/MarkdownDisplay.js.map +1 -1
  393. package/dist/src/ui/utils/mouse.d.ts +2 -1
  394. package/dist/src/ui/utils/mouse.js +27 -1
  395. package/dist/src/ui/utils/mouse.js.map +1 -1
  396. package/dist/src/ui/utils/mouse.test.js +5 -0
  397. package/dist/src/ui/utils/mouse.test.js.map +1 -1
  398. package/dist/src/ui/utils/terminalSetup.d.ts +4 -0
  399. package/dist/src/ui/utils/terminalSetup.js +10 -3
  400. package/dist/src/ui/utils/terminalSetup.js.map +1 -1
  401. package/dist/src/ui/utils/textUtils.d.ts +1 -0
  402. package/dist/src/ui/utils/textUtils.js +3 -2
  403. package/dist/src/ui/utils/textUtils.js.map +1 -1
  404. package/dist/src/ui/utils/textUtils.test.js +7 -1
  405. package/dist/src/ui/utils/textUtils.test.js.map +1 -1
  406. package/dist/src/ui/utils/ui-sizing.js +10 -3
  407. package/dist/src/ui/utils/ui-sizing.js.map +1 -1
  408. package/dist/src/utils/cleanup.test.js +1 -1
  409. package/dist/src/utils/cleanup.test.js.map +1 -1
  410. package/dist/src/utils/dialogScopeUtils.d.ts +6 -13
  411. package/dist/src/utils/dialogScopeUtils.js +4 -2
  412. package/dist/src/utils/dialogScopeUtils.js.map +1 -1
  413. package/dist/src/utils/events.d.ts +5 -1
  414. package/dist/src/utils/events.js +2 -0
  415. package/dist/src/utils/events.js.map +1 -1
  416. package/dist/src/utils/persistentState.d.ts +19 -0
  417. package/dist/src/utils/persistentState.js +65 -0
  418. package/dist/src/utils/persistentState.js.map +1 -0
  419. package/dist/src/utils/sessionCleanup.test.js +76 -0
  420. package/dist/src/utils/sessionCleanup.test.js.map +1 -1
  421. package/dist/src/utils/sessionUtils.d.ts +54 -0
  422. package/dist/src/utils/sessionUtils.js +141 -1
  423. package/dist/src/utils/sessionUtils.js.map +1 -1
  424. package/dist/src/utils/sessionUtils.test.d.ts +6 -0
  425. package/dist/src/utils/sessionUtils.test.js +260 -0
  426. package/dist/src/utils/sessionUtils.test.js.map +1 -0
  427. package/dist/src/utils/sessions.d.ts +8 -0
  428. package/dist/src/utils/sessions.js +64 -0
  429. package/dist/src/utils/sessions.js.map +1 -0
  430. package/dist/src/utils/settingsUtils.d.ts +2 -2
  431. package/dist/src/utils/settingsUtils.js.map +1 -1
  432. package/dist/src/utils/userStartupWarnings.js +2 -2
  433. package/dist/src/utils/userStartupWarnings.js.map +1 -1
  434. package/dist/src/utils/windowTitle.d.ts +1 -1
  435. package/dist/src/utils/windowTitle.js +1 -1
  436. package/dist/tsconfig.tsbuildinfo +1 -1
  437. package/package.json +4 -4
  438. package/dist/src/config/policies/read-only.toml +0 -56
  439. package/dist/src/config/policies/write.toml +0 -63
  440. package/dist/src/config/policies/yolo.toml +0 -31
  441. package/dist/src/ui/utils/platformConstants.d.ts +0 -75
  442. package/dist/src/ui/utils/platformConstants.js +0 -78
  443. package/dist/src/ui/utils/platformConstants.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mouse.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/mouse.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mouse.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/mouse.test.ts"],"names":[],"mappings":"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"}
@@ -3,11 +3,14 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
+ export declare const VSCODE_SHIFT_ENTER_SEQUENCE = "\\\r\n";
6
7
  export interface TerminalSetupResult {
7
8
  success: boolean;
8
9
  message: string;
9
10
  requiresRestart?: boolean;
10
11
  }
12
+ type SupportedTerminal = 'vscode' | 'cursor' | 'windsurf';
13
+ export declare function getTerminalProgram(): SupportedTerminal | null;
11
14
  /**
12
15
  * Main terminal setup function that detects and configures the current terminal.
13
16
  *
@@ -28,3 +31,4 @@ export interface TerminalSetupResult {
28
31
  * }
29
32
  */
30
33
  export declare function terminalSetup(): Promise<TerminalSetupResult>;
34
+ export {};
@@ -27,8 +27,8 @@ import * as path from 'node:path';
27
27
  import { exec } from 'node:child_process';
28
28
  import { promisify } from 'node:util';
29
29
  import { isKittyProtocolEnabled } from './kittyProtocolDetector.js';
30
- import { VSCODE_SHIFT_ENTER_SEQUENCE } from './platformConstants.js';
31
30
  import { debugLogger } from '@google/gemini-cli-core';
31
+ export const VSCODE_SHIFT_ENTER_SEQUENCE = '\\\r\n';
32
32
  const execAsync = promisify(exec);
33
33
  /**
34
34
  * Removes single-line JSON comments (// ...) from a string to allow parsing
@@ -38,8 +38,7 @@ function stripJsonComments(content) {
38
38
  // Remove single-line comments (// ...)
39
39
  return content.replace(/^\s*\/\/.*$/gm, '');
40
40
  }
41
- // Terminal detection
42
- async function detectTerminal() {
41
+ export function getTerminalProgram() {
43
42
  const termProgram = process.env['TERM_PROGRAM'];
44
43
  // Check VS Code and its forks - check forks first to avoid false positives
45
44
  // Check for Cursor-specific indicators
@@ -55,6 +54,14 @@ async function detectTerminal() {
55
54
  if (termProgram === 'vscode' || process.env['VSCODE_GIT_IPC_HANDLE']) {
56
55
  return 'vscode';
57
56
  }
57
+ return null;
58
+ }
59
+ // Terminal detection
60
+ async function detectTerminal() {
61
+ const envTerminal = getTerminalProgram();
62
+ if (envTerminal) {
63
+ return envTerminal;
64
+ }
58
65
  // Check parent process name
59
66
  if (os.platform() !== 'win32') {
60
67
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"terminalSetup.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"terminalSetup.js","sourceRoot":"","sources":["../../../../src/ui/utils/terminalSetup.ts"],"names":[],"mappings":"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"}
@@ -28,6 +28,7 @@ export declare function cpSlice(str: string, start: number, end?: number): strin
28
28
  * - All printable Unicode including emojis
29
29
  * - DEL (0x7F) - handled functionally by applyOperations, not a display issue
30
30
  * - CR/LF (0x0D/0x0A) - needed for line breaks
31
+ * - TAB (0x09) - preserve tabs
31
32
  */
32
33
  export declare function stripUnsafeCharacters(str: string): string;
33
34
  /**
@@ -77,6 +77,7 @@ export function cpSlice(str, start, end) {
77
77
  * - All printable Unicode including emojis
78
78
  * - DEL (0x7F) - handled functionally by applyOperations, not a display issue
79
79
  * - CR/LF (0x0D/0x0A) - needed for line breaks
80
+ * - TAB (0x09) - preserve tabs
80
81
  */
81
82
  export function stripUnsafeCharacters(str) {
82
83
  const strippedAnsi = stripAnsi(str);
@@ -86,8 +87,8 @@ export function stripUnsafeCharacters(str) {
86
87
  const code = char.codePointAt(0);
87
88
  if (code === undefined)
88
89
  return false;
89
- // Preserve CR/LF for line handling
90
- if (code === 0x0a || code === 0x0d)
90
+ // Preserve CR/LF/TAB for line handling
91
+ if (code === 0x0a || code === 0x0d || code === 0x09)
91
92
  return true;
92
93
  // Remove C0 control chars (except CR/LF) that can break display
93
94
  // Examples: BELL(0x07) makes noise, BS(0x08) moves cursor, VT(0x0B), FF(0x0C)
@@ -1 +1 @@
1
- {"version":3,"file":"textUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"textUtils.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,14 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { describe, it, expect } from 'vitest';
7
- import { escapeAnsiCtrlCodes } from './textUtils.js';
7
+ import { escapeAnsiCtrlCodes, stripUnsafeCharacters } from './textUtils.js';
8
8
  describe('textUtils', () => {
9
+ describe('stripUnsafeCharacters', () => {
10
+ it('should not strip tab characters', () => {
11
+ const input = 'hello world';
12
+ expect(stripUnsafeCharacters(input)).toBe('hello world');
13
+ });
14
+ });
9
15
  describe('escapeAnsiCtrlCodes', () => {
10
16
  describe('escapeAnsiCtrlCodes string case study', () => {
11
17
  it('should replace ANSI escape codes with a visible representation', () => {
@@ -1 +1 @@
1
- {"version":3,"file":"textUtils.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"textUtils.test.js","sourceRoot":"","sources":["../../../../src/ui/utils/textUtils.test.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  */
6
6
  import { lerp } from '../../utils/math.js';
7
7
  import {} from '../../config/settings.js';
8
+ import { isAlternateBufferEnabled } from '../hooks/useAlternateBuffer.js';
8
9
  const getMainAreaWidthInternal = (terminalWidth) => {
9
10
  if (terminalWidth <= 80) {
10
11
  return Math.round(0.98 * terminalWidth);
@@ -17,7 +18,13 @@ const getMainAreaWidthInternal = (terminalWidth) => {
17
18
  const percentage = lerp(98, 90, t);
18
19
  return Math.round(percentage * terminalWidth * 0.01);
19
20
  };
20
- export const calculateMainAreaWidth = (terminalWidth, settings) => settings.merged.ui?.useFullWidth
21
- ? terminalWidth
22
- : getMainAreaWidthInternal(terminalWidth);
21
+ export const calculateMainAreaWidth = (terminalWidth, settings) => {
22
+ if (settings.merged.ui?.useFullWidth !== false) {
23
+ if (isAlternateBufferEnabled(settings)) {
24
+ return terminalWidth - 1;
25
+ }
26
+ return terminalWidth;
27
+ }
28
+ return getMainAreaWidthInternal(terminalWidth);
29
+ };
23
30
  //# sourceMappingURL=ui-sizing.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ui-sizing.js","sourceRoot":"","sources":["../../../../src/ui/utils/ui-sizing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAuB,MAAM,0BAA0B,CAAC;AAE/D,MAAM,wBAAwB,GAAG,CAAC,aAAqB,EAAU,EAAE;IACjE,IAAI,aAAa,IAAI,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC;IACzC,CAAC;IAED,uEAAuE;IACvE,MAAM,CAAC,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAEnC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,aAAqB,EACrB,QAAwB,EAChB,EAAE,CACV,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY;IAC9B,CAAC,CAAC,aAAa;IACf,CAAC,CAAC,wBAAwB,CAAC,aAAa,CAAC,CAAC"}
1
+ {"version":3,"file":"ui-sizing.js","sourceRoot":"","sources":["../../../../src/ui/utils/ui-sizing.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAC3C,OAAO,EAAuB,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,gCAAgC,CAAC;AAE1E,MAAM,wBAAwB,GAAG,CAAC,aAAqB,EAAU,EAAE;IACjE,IAAI,aAAa,IAAI,EAAE,EAAE,CAAC;QACxB,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,aAAa,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,aAAa,IAAI,GAAG,EAAE,CAAC;QACzB,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,aAAa,CAAC,CAAC;IACzC,CAAC;IAED,uEAAuE;IACvE,MAAM,CAAC,GAAG,CAAC,aAAa,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAEnC,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,aAAa,GAAG,IAAI,CAAC,CAAC;AACvD,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,aAAqB,EACrB,QAAwB,EAChB,EAAE;IACV,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;QAC/C,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACvC,OAAO,aAAa,GAAG,CAAC,CAAC;QAC3B,CAAC;QACD,OAAO,aAAa,CAAC;IACvB,CAAC;IACD,OAAO,wBAAwB,CAAC,aAAa,CAAC,CAAC;AACjD,CAAC,CAAC"}
@@ -12,7 +12,7 @@ describe('cleanup', () => {
12
12
  const cleanupModule = await import('./cleanup.js');
13
13
  register = cleanupModule.registerCleanup;
14
14
  runExit = cleanupModule.runExitCleanup;
15
- });
15
+ }, 30000);
16
16
  it('should run a registered synchronous function', async () => {
17
17
  const cleanupFn = vi.fn();
18
18
  register(cleanupFn);
@@ -1 +1 @@
1
- {"version":3,"file":"cleanup.test.js","sourceRoot":"","sources":["../../../src/utils/cleanup.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAG9D,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,IAAI,QAAgC,CAAC;IACrC,IAAI,OAA8B,CAAC;IAEnC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACnD,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAC;QACzC,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;IACzC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACvD,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAErD,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjB,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClB,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cleanup.test.js","sourceRoot":"","sources":["../../../src/utils/cleanup.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAG9D,QAAQ,CAAC,SAAS,EAAE,GAAG,EAAE;IACvB,IAAI,QAAgC,CAAC;IACrC,IAAI,OAA8B,CAAC;IAEnC,UAAU,CAAC,KAAK,IAAI,EAAE;QACpB,EAAE,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,aAAa,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACnD,QAAQ,GAAG,aAAa,CAAC,eAAe,CAAC;QACzC,OAAO,GAAG,aAAa,CAAC,cAAc,CAAC;IACzC,CAAC,EAAE,KAAK,CAAC,CAAC;IAEV,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC5D,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QACvD,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QACvB,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAErD,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjB,QAAQ,CAAC,OAAO,CAAC,CAAC;QAElB,MAAM,OAAO,EAAE,CAAC;QAEhB,MAAM,CAAC,MAAM,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACxC,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC3C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,OAAO,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE;YAC9C,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;QAChC,CAAC,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1B,QAAQ,CAAC,OAAO,CAAC,CAAC;QAClB,QAAQ,CAAC,SAAS,CAAC,CAAC;QAEpB,MAAM,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;QAE/C,MAAM,CAAC,OAAO,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QACzC,MAAM,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -3,8 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import type { LoadedSettings } from '../config/settings.js';
7
- import { SettingScope } from '../config/settings.js';
6
+ import type { LoadableSettingScope, LoadedSettings } from '../config/settings.js';
8
7
  /**
9
8
  * Shared scope labels for dialog components that need to display setting scopes
10
9
  */
@@ -16,17 +15,11 @@ export declare const SCOPE_LABELS: {
16
15
  /**
17
16
  * Helper function to get scope items for radio button selects
18
17
  */
19
- export declare function getScopeItems(): ({
20
- label: "User Settings";
21
- value: SettingScope;
22
- } | {
23
- label: "Workspace Settings";
24
- value: SettingScope;
25
- } | {
26
- label: "System Settings";
27
- value: SettingScope;
28
- })[];
18
+ export declare function getScopeItems(): Array<{
19
+ label: string;
20
+ value: LoadableSettingScope;
21
+ }>;
29
22
  /**
30
23
  * Generate scope message for a specific setting
31
24
  */
32
- export declare function getScopeMessageForSetting(settingKey: string, selectedScope: SettingScope, settings: LoadedSettings): string;
25
+ export declare function getScopeMessageForSetting(settingKey: string, selectedScope: LoadableSettingScope, settings: LoadedSettings): string;
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { SettingScope } from '../config/settings.js';
6
+ import { isLoadableSettingScope, SettingScope } from '../config/settings.js';
7
7
  import { settingExistsInScope } from './settingsUtils.js';
8
8
  /**
9
9
  * Shared scope labels for dialog components that need to display setting scopes
@@ -30,7 +30,9 @@ export function getScopeItems() {
30
30
  * Generate scope message for a specific setting
31
31
  */
32
32
  export function getScopeMessageForSetting(settingKey, selectedScope, settings) {
33
- const otherScopes = Object.values(SettingScope).filter((scope) => scope !== selectedScope);
33
+ const otherScopes = Object.values(SettingScope)
34
+ .filter(isLoadableSettingScope)
35
+ .filter((scope) => scope !== selectedScope);
34
36
  const modifiedInOtherScopes = otherScopes.filter((scope) => {
35
37
  const scopeSettings = settings.forScope(scope).settings;
36
38
  return settingExistsInScope(settingKey, scopeSettings);
@@ -1 +1 @@
1
- {"version":3,"file":"dialogScopeUtils.js","sourceRoot":"","sources":["../../../src/utils/dialogScopeUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,eAAe;IACpC,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,oBAAoB;IAC9C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,iBAAiB;CAChC,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO;QACL,EAAE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE;QACpE;YACE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC;YAC3C,KAAK,EAAE,YAAY,CAAC,SAAS;SAC9B;QACD,EAAE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE;KACzE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAAkB,EAClB,aAA2B,EAC3B,QAAwB;IAExB,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CACpD,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,aAAa,CACnC,CAAC;IAEF,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACzD,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC;QACxD,OAAO,oBAAoB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,oBAAoB,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC;IACvE,MAAM,oBAAoB,GAAG,oBAAoB,CAC/C,UAAU,EACV,oBAAoB,CACrB,CAAC;IAEF,OAAO,oBAAoB;QACzB,CAAC,CAAC,qBAAqB,iBAAiB,GAAG;QAC3C,CAAC,CAAC,gBAAgB,iBAAiB,GAAG,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"dialogScopeUtils.js","sourceRoot":"","sources":["../../../src/utils/dialogScopeUtils.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,eAAe;IACpC,CAAC,YAAY,CAAC,SAAS,CAAC,EAAE,oBAAoB;IAC9C,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,iBAAiB;CAChC,CAAC;AAEX;;GAEG;AACH,MAAM,UAAU,aAAa;IAI3B,OAAO;QACL,EAAE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,IAAI,EAAE;QACpE;YACE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC;YAC3C,KAAK,EAAE,YAAY,CAAC,SAAS;SAC9B;QACD,EAAE,KAAK,EAAE,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,YAAY,CAAC,MAAM,EAAE;KACzE,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAAkB,EAClB,aAAmC,EACnC,QAAwB;IAExB,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC;SAC5C,MAAM,CAAC,sBAAsB,CAAC;SAC9B,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,aAAa,CAAC,CAAC;IAE9C,MAAM,qBAAqB,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;QACzD,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC;QACxD,OAAO,oBAAoB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,IAAI,qBAAqB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvC,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,MAAM,oBAAoB,GAAG,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC;IACvE,MAAM,oBAAoB,GAAG,oBAAoB,CAC/C,UAAU,EACV,oBAAoB,CACrB,CAAC;IAEF,OAAO,oBAAoB;QACzB,CAAC,CAAC,qBAAqB,iBAAiB,GAAG;QAC3C,CAAC,CAAC,gBAAgB,iBAAiB,GAAG,CAAC;AAC3C,CAAC"}
@@ -10,7 +10,9 @@ export declare enum AppEvent {
10
10
  LogError = "log-error",
11
11
  OauthDisplayMessage = "oauth-display-message",
12
12
  Flicker = "flicker",
13
- McpClientUpdate = "mcp-client-update"
13
+ McpClientUpdate = "mcp-client-update",
14
+ SelectionWarning = "selection-warning",
15
+ PasteTimeout = "paste-timeout"
14
16
  }
15
17
  export interface AppEvents extends ExtensionEvents {
16
18
  [AppEvent.OpenDebugConsole]: never[];
@@ -18,5 +20,7 @@ export interface AppEvents extends ExtensionEvents {
18
20
  [AppEvent.OauthDisplayMessage]: string[];
19
21
  [AppEvent.Flicker]: never[];
20
22
  [AppEvent.McpClientUpdate]: Array<Map<string, McpClient> | never>;
23
+ [AppEvent.SelectionWarning]: never[];
24
+ [AppEvent.PasteTimeout]: never[];
21
25
  }
22
26
  export declare const appEvents: EventEmitter<AppEvents>;
@@ -11,6 +11,8 @@ export var AppEvent;
11
11
  AppEvent["OauthDisplayMessage"] = "oauth-display-message";
12
12
  AppEvent["Flicker"] = "flicker";
13
13
  AppEvent["McpClientUpdate"] = "mcp-client-update";
14
+ AppEvent["SelectionWarning"] = "selection-warning";
15
+ AppEvent["PasteTimeout"] = "paste-timeout";
14
16
  })(AppEvent || (AppEvent = {}));
15
17
  export const appEvents = new EventEmitter();
16
18
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/utils/events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAN,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,mDAAuC,CAAA;IACvC,kCAAsB,CAAA;IACtB,yDAA6C,CAAA;IAC7C,+BAAmB,CAAA;IACnB,iDAAqC,CAAA;AACvC,CAAC,EANW,QAAQ,KAAR,QAAQ,QAMnB;AAUD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAa,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/utils/events.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,CAAN,IAAY,QAQX;AARD,WAAY,QAAQ;IAClB,mDAAuC,CAAA;IACvC,kCAAsB,CAAA;IACtB,yDAA6C,CAAA;IAC7C,+BAAmB,CAAA;IACnB,iDAAqC,CAAA;IACrC,kDAAsC,CAAA;IACtC,0CAA8B,CAAA;AAChC,CAAC,EARW,QAAQ,KAAR,QAAQ,QAQnB;AAYD,MAAM,CAAC,MAAM,SAAS,GAAG,IAAI,YAAY,EAAa,CAAC"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ interface PersistentStateData {
7
+ defaultBannerShownCount?: number;
8
+ }
9
+ export declare class PersistentState {
10
+ private cache;
11
+ private filePath;
12
+ private getPath;
13
+ private load;
14
+ private save;
15
+ get<K extends keyof PersistentStateData>(key: K): PersistentStateData[K] | undefined;
16
+ set<K extends keyof PersistentStateData>(key: K, value: PersistentStateData[K]): void;
17
+ }
18
+ export declare const persistentState: PersistentState;
19
+ export {};
@@ -0,0 +1,65 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Storage, debugLogger } from '@google/gemini-cli-core';
7
+ import * as fs from 'node:fs';
8
+ import * as path from 'node:path';
9
+ const STATE_FILENAME = 'state.json';
10
+ export class PersistentState {
11
+ cache = null;
12
+ filePath = null;
13
+ getPath() {
14
+ if (!this.filePath) {
15
+ this.filePath = path.join(Storage.getGlobalGeminiDir(), STATE_FILENAME);
16
+ }
17
+ return this.filePath;
18
+ }
19
+ load() {
20
+ if (this.cache) {
21
+ return this.cache;
22
+ }
23
+ try {
24
+ const filePath = this.getPath();
25
+ if (fs.existsSync(filePath)) {
26
+ const content = fs.readFileSync(filePath, 'utf-8');
27
+ this.cache = JSON.parse(content);
28
+ }
29
+ else {
30
+ this.cache = {};
31
+ }
32
+ }
33
+ catch (error) {
34
+ debugLogger.warn('Failed to load persistent state:', error);
35
+ // If error reading (e.g. corrupt JSON), start fresh
36
+ this.cache = {};
37
+ }
38
+ return this.cache;
39
+ }
40
+ save() {
41
+ if (!this.cache)
42
+ return;
43
+ try {
44
+ const filePath = this.getPath();
45
+ const dir = path.dirname(filePath);
46
+ if (!fs.existsSync(dir)) {
47
+ fs.mkdirSync(dir, { recursive: true });
48
+ }
49
+ fs.writeFileSync(filePath, JSON.stringify(this.cache, null, 2));
50
+ }
51
+ catch (error) {
52
+ debugLogger.warn('Failed to save persistent state:', error);
53
+ }
54
+ }
55
+ get(key) {
56
+ return this.load()[key];
57
+ }
58
+ set(key, value) {
59
+ this.load(); // ensure loaded
60
+ this.cache[key] = value;
61
+ this.save();
62
+ }
63
+ }
64
+ export const persistentState = new PersistentState();
65
+ //# sourceMappingURL=persistentState.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"persistentState.js","sourceRoot":"","sources":["../../../src/utils/persistentState.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,MAAM,cAAc,GAAG,YAAY,CAAC;AAOpC,MAAM,OAAO,eAAe;IAClB,KAAK,GAA+B,IAAI,CAAC;IACzC,QAAQ,GAAkB,IAAI,CAAC;IAE/B,OAAO;QACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE,cAAc,CAAC,CAAC;QAC1E,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,IAAI;QACV,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,KAAK,CAAC;QACpB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACnC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;YAClB,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;YAC5D,oDAAoD;YACpD,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,KAAM,CAAC;IACrB,CAAC;IAEO,IAAI;QACV,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,OAAO;QACxB,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBACxB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACzC,CAAC;YACD,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,WAAW,CAAC,IAAI,CAAC,kCAAkC,EAAE,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IAED,GAAG,CACD,GAAM;QAEN,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,GAAG,CACD,GAAM,EACN,KAA6B;QAE7B,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,gBAAgB;QAC7B,IAAI,CAAC,KAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;QACzB,IAAI,CAAC,IAAI,EAAE,CAAC;IACd,CAAC;CACF;AAED,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC"}