@google/gemini-cli 0.26.0-preview.4 → 0.27.0-nightly.20260126.cb772a5b7
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.
- package/README.md +18 -1
- package/dist/google-gemini-cli-0.27.0-nightly.20260121.97aac696f.tgz +0 -0
- package/dist/package.json +3 -4
- package/dist/src/commands/extensions.js +4 -1
- package/dist/src/commands/extensions.js.map +1 -1
- package/dist/src/commands/hooks.js +4 -1
- package/dist/src/commands/hooks.js.map +1 -1
- package/dist/src/commands/mcp/enableDisable.d.ts +13 -0
- package/dist/src/commands/mcp/enableDisable.js +122 -0
- package/dist/src/commands/mcp/enableDisable.js.map +1 -0
- package/dist/src/commands/mcp/list.d.ts +2 -0
- package/dist/src/commands/mcp/list.js +1 -1
- package/dist/src/commands/mcp/list.js.map +1 -1
- package/dist/src/commands/mcp.js +7 -1
- package/dist/src/commands/mcp.js.map +1 -1
- package/dist/src/commands/mcp.test.js +3 -1
- package/dist/src/commands/mcp.test.js.map +1 -1
- package/dist/src/commands/skills.js +4 -1
- package/dist/src/commands/skills.js.map +1 -1
- package/dist/src/config/config.d.ts +4 -0
- package/dist/src/config/config.js +41 -20
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +181 -15
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/keyBindings.d.ts +8 -5
- package/dist/src/config/keyBindings.js +38 -32
- package/dist/src/config/keyBindings.js.map +1 -1
- package/dist/src/config/keyBindings.test.js +8 -5
- package/dist/src/config/keyBindings.test.js.map +1 -1
- package/dist/src/config/mcp/index.d.ts +6 -0
- package/dist/src/config/mcp/index.js +7 -0
- package/dist/src/config/mcp/index.js.map +1 -0
- package/dist/src/config/mcp/mcpServerEnablement.d.ts +145 -0
- package/dist/src/config/mcp/mcpServerEnablement.js +254 -0
- package/dist/src/config/mcp/mcpServerEnablement.js.map +1 -0
- package/dist/src/config/mcp/mcpServerEnablement.test.js +147 -0
- package/dist/src/config/mcp/mcpServerEnablement.test.js.map +1 -0
- package/dist/src/config/sandboxConfig.test.js +11 -5
- package/dist/src/config/sandboxConfig.test.js.map +1 -1
- package/dist/src/config/settings.js +76 -0
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settings.test.js +44 -0
- package/dist/src/config/settings.test.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +21 -78
- package/dist/src/config/settingsSchema.js +21 -79
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/settingsSchema.test.js +1 -1
- package/dist/src/config/settingsSchema.test.js.map +1 -1
- package/dist/src/config/settings_repro.test.js +6 -2
- package/dist/src/config/settings_repro.test.js.map +1 -1
- package/dist/src/gemini.js +12 -7
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +140 -10
- package/dist/src/gemini.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/nonInteractiveCli.js +11 -3
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCli.test.js +193 -3
- package/dist/src/nonInteractiveCli.test.js.map +1 -1
- package/dist/src/nonInteractiveCliCommands.js +6 -1
- package/dist/src/nonInteractiveCliCommands.js.map +1 -1
- package/dist/src/services/BuiltinCommandLoader.js +2 -0
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/services/FileCommandLoader.js +12 -4
- package/dist/src/services/FileCommandLoader.js.map +1 -1
- package/dist/src/services/FileCommandLoader.test.js +56 -0
- package/dist/src/services/FileCommandLoader.test.js.map +1 -1
- package/dist/src/test-utils/mockCommandContext.js +2 -0
- package/dist/src/test-utils/mockCommandContext.js.map +1 -1
- package/dist/src/test-utils/persistentStateFake.d.ts +26 -0
- package/dist/src/test-utils/persistentStateFake.js +39 -0
- package/dist/src/test-utils/persistentStateFake.js.map +1 -0
- package/dist/src/test-utils/render.d.ts +10 -1
- package/dist/src/test-utils/render.js +45 -16
- package/dist/src/test-utils/render.js.map +1 -1
- package/dist/src/ui/App.test.js +96 -38
- package/dist/src/ui/App.test.js.map +1 -1
- package/dist/src/ui/AppContainer.js +78 -18
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/AppContainer.test.js +185 -19
- package/dist/src/ui/AppContainer.test.js.map +1 -1
- package/dist/src/ui/auth/ApiAuthDialog.test.js +5 -5
- package/dist/src/ui/auth/ApiAuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js +13 -9
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js +6 -6
- package/dist/src/ui/auth/LoginWithGoogleRestartDialog.test.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.js +2 -0
- package/dist/src/ui/commands/aboutCommand.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.test.js +12 -0
- package/dist/src/ui/commands/aboutCommand.test.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.js +75 -4
- package/dist/src/ui/commands/agentsCommand.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.test.js +114 -0
- package/dist/src/ui/commands/agentsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.js +53 -49
- package/dist/src/ui/commands/directoryCommand.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.test.js +79 -23
- package/dist/src/ui/commands/directoryCommand.test.js.map +1 -1
- package/dist/src/ui/commands/initCommand.test.js +8 -4
- package/dist/src/ui/commands/initCommand.test.js.map +1 -1
- package/dist/src/ui/commands/mcpCommand.js +136 -5
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.js +33 -20
- package/dist/src/ui/commands/policiesCommand.js.map +1 -1
- package/dist/src/ui/commands/policiesCommand.test.js +7 -4
- package/dist/src/ui/commands/policiesCommand.test.js.map +1 -1
- package/dist/src/ui/commands/rewindCommand.d.ts +7 -0
- package/dist/src/ui/commands/rewindCommand.js +132 -0
- package/dist/src/ui/commands/rewindCommand.js.map +1 -0
- package/dist/src/ui/commands/rewindCommand.test.js +242 -0
- package/dist/src/ui/commands/rewindCommand.test.js.map +1 -0
- package/dist/src/ui/commands/skillsCommand.js +6 -4
- package/dist/src/ui/commands/skillsCommand.js.map +1 -1
- package/dist/src/ui/commands/skillsCommand.test.js +17 -3
- package/dist/src/ui/commands/skillsCommand.test.js.map +1 -1
- package/dist/src/ui/commands/types.d.ts +5 -3
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/components/AboutBox.d.ts +1 -0
- package/dist/src/ui/components/AboutBox.js +5 -1
- package/dist/src/ui/components/AboutBox.js.map +1 -1
- package/dist/src/ui/components/AboutBox.test.js +8 -2
- package/dist/src/ui/components/AboutBox.test.js.map +1 -1
- package/dist/src/ui/components/AgentConfigDialog.d.ts +18 -0
- package/dist/src/ui/components/AgentConfigDialog.js +296 -0
- package/dist/src/ui/components/AgentConfigDialog.js.map +1 -0
- package/dist/src/ui/components/AgentConfigDialog.test.js +241 -0
- package/dist/src/ui/components/AgentConfigDialog.test.js.map +1 -0
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.js +9 -2
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.js.map +1 -1
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js +54 -25
- package/dist/src/ui/components/AlternateBufferQuittingDisplay.test.js.map +1 -1
- package/dist/src/ui/components/AppHeader.js +4 -1
- package/dist/src/ui/components/AppHeader.js.map +1 -1
- package/dist/src/ui/components/AppHeader.test.js +95 -22
- package/dist/src/ui/components/AppHeader.test.js.map +1 -1
- package/dist/src/ui/components/{AutoAcceptIndicator.d.ts → ApprovalModeIndicator.d.ts} +2 -2
- package/dist/src/ui/components/{AutoAcceptIndicator.js → ApprovalModeIndicator.js} +8 -3
- package/dist/src/ui/components/ApprovalModeIndicator.js.map +1 -0
- package/dist/src/ui/components/ApprovalModeIndicator.test.d.ts +6 -0
- package/dist/src/ui/components/{AutoAcceptIndicator.test.js → ApprovalModeIndicator.test.js} +13 -7
- package/dist/src/ui/components/ApprovalModeIndicator.test.js.map +1 -0
- package/dist/src/ui/components/AskUserDialog.d.ts +39 -0
- package/dist/src/ui/components/AskUserDialog.js +618 -0
- package/dist/src/ui/components/AskUserDialog.js.map +1 -0
- package/dist/src/ui/components/AskUserDialog.test.d.ts +6 -0
- package/dist/src/ui/components/AskUserDialog.test.js +598 -0
- package/dist/src/ui/components/AskUserDialog.test.js.map +1 -0
- package/dist/src/ui/components/Composer.d.ts +3 -1
- package/dist/src/ui/components/Composer.js +5 -5
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/Composer.test.js +6 -6
- package/dist/src/ui/components/Composer.test.js.map +1 -1
- package/dist/src/ui/components/ConfigInitDisplay.js +3 -4
- package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
- package/dist/src/ui/components/ConfigInitDisplay.test.js +13 -29
- package/dist/src/ui/components/ConfigInitDisplay.test.js.map +1 -1
- package/dist/src/ui/components/ContextUsageDisplay.test.js +7 -3
- package/dist/src/ui/components/ContextUsageDisplay.test.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +13 -0
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/DialogManager.test.js +24 -0
- package/dist/src/ui/components/DialogManager.test.js.map +1 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js +3 -1
- package/dist/src/ui/components/FolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Footer.test.js +7 -0
- package/dist/src/ui/components/Footer.test.js.map +1 -1
- package/dist/src/ui/components/Help.js +5 -2
- package/dist/src/ui/components/Help.js.map +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js +1 -1
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +32 -20
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.test.js +75 -1
- package/dist/src/ui/components/InputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.js +2 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.js.map +1 -1
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js +12 -10
- package/dist/src/ui/components/MultiFolderTrustDialog.test.js.map +1 -1
- package/dist/src/ui/components/Notifications.js +14 -20
- package/dist/src/ui/components/Notifications.js.map +1 -1
- package/dist/src/ui/components/Notifications.test.js +45 -35
- package/dist/src/ui/components/Notifications.test.js.map +1 -1
- package/dist/src/ui/components/RewindViewer.d.ts +1 -1
- package/dist/src/ui/components/RewindViewer.js +65 -17
- package/dist/src/ui/components/RewindViewer.js.map +1 -1
- package/dist/src/ui/components/RewindViewer.test.js +5 -3
- package/dist/src/ui/components/RewindViewer.test.js.map +1 -1
- package/dist/src/ui/components/SessionBrowser.js +3 -2
- package/dist/src/ui/components/SessionBrowser.js.map +1 -1
- package/dist/src/ui/components/SessionBrowser.test.js +10 -3
- package/dist/src/ui/components/SessionBrowser.test.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +1 -1
- package/dist/src/ui/components/SettingsDialog.js +266 -516
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +2 -2
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
- package/dist/src/ui/components/ShellInputPrompt.test.js +17 -8
- package/dist/src/ui/components/ShellInputPrompt.test.js.map +1 -1
- package/dist/src/ui/components/SuggestionsDisplay.d.ts +1 -1
- package/dist/src/ui/components/SuggestionsDisplay.js +4 -3
- package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
- package/dist/src/ui/components/ToolConfirmationQueue.d.ts +12 -0
- package/dist/src/ui/components/ToolConfirmationQueue.js +30 -0
- package/dist/src/ui/components/ToolConfirmationQueue.js.map +1 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.d.ts +6 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.js +71 -0
- package/dist/src/ui/components/ToolConfirmationQueue.test.js.map +1 -0
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js +2 -4
- package/dist/src/ui/components/messages/RedirectionConfirmation.test.js.map +1 -1
- package/dist/src/ui/components/messages/ShellToolMessage.js +6 -41
- package/dist/src/ui/components/messages/ShellToolMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +3 -2
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +61 -76
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js +20 -7
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.js +34 -18
- package/dist/src/ui/components/messages/ToolGroupMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js +209 -24
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessage.d.ts +1 -1
- package/dist/src/ui/components/messages/ToolMessage.js +7 -29
- package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.d.ts +6 -0
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js +89 -0
- package/dist/src/ui/components/messages/ToolMessageFocusHint.test.js.map +1 -0
- package/dist/src/ui/components/messages/ToolShared.d.ts +26 -0
- package/dist/src/ui/components/messages/ToolShared.js +59 -6
- package/dist/src/ui/components/messages/ToolShared.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.d.ts +3 -1
- package/dist/src/ui/components/shared/BaseSelectionList.js +4 -2
- package/dist/src/ui/components/shared/BaseSelectionList.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.test.js +1 -0
- package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSettingsDialog.d.ts +72 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.js +293 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.js.map +1 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.d.ts +6 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.js +434 -0
- package/dist/src/ui/components/shared/BaseSettingsDialog.test.js.map +1 -0
- package/dist/src/ui/components/shared/ExpandableText.d.ts +17 -0
- package/dist/src/ui/components/{PrepareLabel.js → shared/ExpandableText.js} +30 -15
- package/dist/src/ui/components/shared/ExpandableText.js.map +1 -0
- package/dist/src/ui/components/shared/ExpandableText.test.d.ts +6 -0
- package/dist/src/ui/components/{PrepareLabel.test.js → shared/ExpandableText.test.js} +22 -11
- package/dist/src/ui/components/shared/ExpandableText.test.js.map +1 -0
- package/dist/src/ui/components/shared/TabHeader.d.ts +51 -0
- package/dist/src/ui/components/shared/TabHeader.js +42 -0
- package/dist/src/ui/components/shared/TabHeader.js.map +1 -0
- package/dist/src/ui/components/shared/TabHeader.test.d.ts +6 -0
- package/dist/src/ui/components/shared/TabHeader.test.js +106 -0
- package/dist/src/ui/components/shared/TabHeader.test.js.map +1 -0
- package/dist/src/ui/components/shared/TextInput.test.js +32 -24
- package/dist/src/ui/components/shared/TextInput.test.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.d.ts +13 -0
- package/dist/src/ui/components/shared/text-buffer.js +173 -14
- package/dist/src/ui/components/shared/text-buffer.js.map +1 -1
- package/dist/src/ui/components/shared/text-buffer.test.js +256 -44
- package/dist/src/ui/components/shared/text-buffer.test.js.map +1 -1
- package/dist/src/ui/components/shared/vim-buffer-actions.test.js +4 -1
- package/dist/src/ui/components/shared/vim-buffer-actions.test.js.map +1 -1
- package/dist/src/ui/components/views/McpStatus.d.ts +1 -0
- package/dist/src/ui/components/views/McpStatus.js +30 -18
- package/dist/src/ui/components/views/McpStatus.js.map +1 -1
- package/dist/src/ui/components/views/McpStatus.test.js +7 -0
- package/dist/src/ui/components/views/McpStatus.test.js.map +1 -1
- package/dist/src/ui/constants/tips.js +2 -2
- package/dist/src/ui/constants/tips.js.map +1 -1
- package/dist/src/ui/constants.d.ts +1 -0
- package/dist/src/ui/constants.js +1 -0
- package/dist/src/ui/constants.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.d.ts +3 -2
- package/dist/src/ui/contexts/KeypressContext.js +33 -25
- package/dist/src/ui/contexts/KeypressContext.js.map +1 -1
- package/dist/src/ui/contexts/KeypressContext.test.js +151 -41
- package/dist/src/ui/contexts/KeypressContext.test.js.map +1 -1
- package/dist/src/ui/contexts/MouseContext.test.js +8 -8
- package/dist/src/ui/contexts/MouseContext.test.js.map +1 -1
- package/dist/src/ui/contexts/ToolActionsContext.d.ts +20 -0
- package/dist/src/ui/contexts/ToolActionsContext.js +74 -0
- package/dist/src/ui/contexts/ToolActionsContext.js.map +1 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.d.ts +6 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.js +135 -0
- package/dist/src/ui/contexts/ToolActionsContext.test.js.map +1 -0
- package/dist/src/ui/contexts/UIActionsContext.d.ts +3 -1
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +6 -2
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.js +19 -4
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/keyToAnsi.js +1 -1
- package/dist/src/ui/hooks/keyToAnsi.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +3 -1
- package/dist/src/ui/hooks/slashCommandProcessor.js +24 -7
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.test.js +126 -30
- package/dist/src/ui/hooks/slashCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/toolMapping.js +8 -11
- package/dist/src/ui/hooks/toolMapping.js.map +1 -1
- package/dist/src/ui/hooks/toolMapping.test.js +27 -6
- package/dist/src/ui/hooks/toolMapping.test.js.map +1 -1
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.d.ts → useApprovalModeIndicator.d.ts} +2 -2
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.js → useApprovalModeIndicator.js} +25 -11
- package/dist/src/ui/hooks/useApprovalModeIndicator.js.map +1 -0
- package/dist/src/ui/hooks/useApprovalModeIndicator.test.d.ts +6 -0
- package/dist/src/ui/hooks/{useAutoAcceptIndicator.test.js → useApprovalModeIndicator.test.js} +56 -31
- package/dist/src/ui/hooks/useApprovalModeIndicator.test.js.map +1 -0
- package/dist/src/ui/hooks/useConfirmingTool.d.ts +16 -0
- package/dist/src/ui/hooks/useConfirmingTool.js +39 -0
- package/dist/src/ui/hooks/useConfirmingTool.js.map +1 -0
- package/dist/src/ui/hooks/useGeminiStream.d.ts +1 -1
- package/dist/src/ui/hooks/useGeminiStream.js +20 -8
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGeminiStream.test.js +79 -19
- package/dist/src/ui/hooks/useGeminiStream.test.js.map +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.d.ts +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.js +9 -20
- package/dist/src/ui/hooks/useIncludeDirsTrust.js.map +1 -1
- package/dist/src/ui/hooks/useIncludeDirsTrust.test.js +33 -12
- package/dist/src/ui/hooks/useIncludeDirsTrust.test.js.map +1 -1
- package/dist/src/ui/hooks/useKeypress.test.js +10 -3
- package/dist/src/ui/hooks/useKeypress.test.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.d.ts +7 -1
- package/dist/src/ui/hooks/useLoadingIndicator.js +3 -3
- package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +17 -9
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.d.ts +2 -2
- package/dist/src/ui/hooks/usePhraseCycler.js +4 -14
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.test.js +13 -42
- package/dist/src/ui/hooks/usePhraseCycler.test.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.d.ts +4 -1
- package/dist/src/ui/hooks/useSelectionList.js +51 -13
- package/dist/src/ui/hooks/useSelectionList.js.map +1 -1
- package/dist/src/ui/hooks/useSelectionList.test.js +35 -3
- package/dist/src/ui/hooks/useSelectionList.test.js.map +1 -1
- package/dist/src/ui/hooks/useSessionResume.test.js +3 -2
- package/dist/src/ui/hooks/useSessionResume.test.js.map +1 -1
- package/dist/src/ui/hooks/useShellInactivityStatus.d.ts +26 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.js +46 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.js.map +1 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.d.ts +6 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.js +84 -0
- package/dist/src/ui/hooks/useShellInactivityStatus.test.js.map +1 -0
- package/dist/src/ui/hooks/useTabbedNavigation.d.ts +53 -0
- package/dist/src/ui/hooks/useTabbedNavigation.js +150 -0
- package/dist/src/ui/hooks/useTabbedNavigation.js.map +1 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.js +187 -0
- package/dist/src/ui/hooks/useTabbedNavigation.test.js.map +1 -0
- package/dist/src/ui/hooks/useTips.d.ts +10 -0
- package/dist/src/ui/hooks/useTips.js +18 -0
- package/dist/src/ui/hooks/useTips.js.map +1 -0
- package/dist/src/ui/hooks/useTips.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTips.test.js +33 -0
- package/dist/src/ui/hooks/useTips.test.js.map +1 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.d.ts +30 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.js +113 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.js.map +1 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.d.ts +6 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.js +296 -0
- package/dist/src/ui/hooks/useToolExecutionScheduler.test.js.map +1 -0
- package/dist/src/ui/hooks/useToolScheduler.d.ts +29 -0
- package/dist/src/ui/hooks/useToolScheduler.js +30 -0
- package/dist/src/ui/hooks/useToolScheduler.js.map +1 -0
- package/dist/src/ui/hooks/useToolScheduler.test.js +1 -1
- package/dist/src/ui/hooks/useToolScheduler.test.js.map +1 -1
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.d.ts +6 -0
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.js +45 -0
- package/dist/src/ui/hooks/useToolSchedulerFacade.test.js.map +1 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.d.ts +16 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.js +49 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.js.map +1 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.d.ts +6 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.js +97 -0
- package/dist/src/ui/hooks/useTurnActivityMonitor.test.js.map +1 -0
- package/dist/src/ui/hooks/vim.js +5 -3
- package/dist/src/ui/hooks/vim.js.map +1 -1
- package/dist/src/ui/hooks/vim.test.js +4 -2
- package/dist/src/ui/hooks/vim.test.js.map +1 -1
- package/dist/src/ui/keyMatchers.js +5 -13
- package/dist/src/ui/keyMatchers.js.map +1 -1
- package/dist/src/ui/keyMatchers.test.js +23 -20
- package/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/layouts/DefaultAppLayout.js +10 -2
- package/dist/src/ui/layouts/DefaultAppLayout.js.map +1 -1
- package/dist/src/ui/noninteractive/nonInteractiveUi.js +1 -0
- package/dist/src/ui/noninteractive/nonInteractiveUi.js.map +1 -1
- package/dist/src/ui/types.d.ts +11 -3
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.d.ts +4 -4
- package/dist/src/ui/utils/clipboardUtils.js +198 -12
- package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.test.js +219 -47
- package/dist/src/ui/utils/clipboardUtils.test.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.windows.test.js +3 -0
- package/dist/src/ui/utils/clipboardUtils.windows.test.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.test.js +11 -3
- package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
- package/dist/src/ui/utils/directoryUtils.d.ts +10 -0
- package/dist/src/ui/utils/directoryUtils.js +12 -0
- package/dist/src/ui/utils/directoryUtils.js.map +1 -1
- package/dist/src/ui/utils/directoryUtils.test.js +8 -4
- package/dist/src/ui/utils/directoryUtils.test.js.map +1 -1
- package/dist/src/ui/utils/formatters.d.ts +1 -1
- package/dist/src/ui/utils/formatters.js +2 -3
- package/dist/src/ui/utils/formatters.js.map +1 -1
- package/dist/src/ui/utils/highlight.d.ts +2 -2
- package/dist/src/ui/utils/highlight.js +9 -3
- package/dist/src/ui/utils/highlight.js.map +1 -1
- package/dist/src/ui/utils/highlight.test.js +3 -0
- package/dist/src/ui/utils/highlight.test.js.map +1 -1
- package/dist/src/ui/utils/terminalCapabilityManager.d.ts +1 -2
- package/dist/src/ui/utils/terminalCapabilityManager.js +2 -8
- package/dist/src/ui/utils/terminalCapabilityManager.js.map +1 -1
- package/dist/src/ui/utils/terminalCapabilityManager.test.js +2 -3
- package/dist/src/ui/utils/terminalCapabilityManager.test.js.map +1 -1
- package/dist/src/ui/utils/terminalSetup.test.js +5 -3
- package/dist/src/ui/utils/terminalSetup.test.js.map +1 -1
- package/dist/src/ui/utils/textUtils.d.ts +5 -0
- package/dist/src/ui/utils/textUtils.js +14 -0
- package/dist/src/ui/utils/textUtils.js.map +1 -1
- package/dist/src/ui/utils/textUtils.test.js +19 -1
- package/dist/src/ui/utils/textUtils.test.js.map +1 -1
- package/dist/src/utils/cleanup.js +15 -0
- package/dist/src/utils/cleanup.js.map +1 -1
- package/dist/src/utils/events.d.ts +1 -6
- package/dist/src/utils/events.js +0 -2
- package/dist/src/utils/events.js.map +1 -1
- package/dist/src/utils/events.test.js +4 -4
- package/dist/src/utils/events.test.js.map +1 -1
- package/dist/src/utils/handleAutoUpdate.test.js +3 -0
- package/dist/src/utils/handleAutoUpdate.test.js.map +1 -1
- package/dist/src/utils/installationInfo.js +4 -2
- package/dist/src/utils/installationInfo.js.map +1 -1
- package/dist/src/utils/persistentState.d.ts +2 -0
- package/dist/src/utils/persistentState.js.map +1 -1
- package/dist/src/utils/windowTitle.d.ts +2 -1
- package/dist/src/utils/windowTitle.js +8 -1
- package/dist/src/utils/windowTitle.js.map +1 -1
- package/dist/src/utils/windowTitle.test.js +25 -1
- package/dist/src/utils/windowTitle.test.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.js +26 -5
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -5
- package/dist/google-gemini-cli-0.26.0-preview.3.tgz +0 -0
- package/dist/src/ui/components/AutoAcceptIndicator.js.map +0 -1
- package/dist/src/ui/components/AutoAcceptIndicator.test.js.map +0 -1
- package/dist/src/ui/components/PrepareLabel.d.ts +0 -15
- package/dist/src/ui/components/PrepareLabel.js.map +0 -1
- package/dist/src/ui/components/PrepareLabel.test.js.map +0 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.js.map +0 -1
- package/dist/src/ui/hooks/useAutoAcceptIndicator.test.js.map +0 -1
- /package/dist/src/{ui/components/AutoAcceptIndicator.test.d.ts → config/mcp/mcpServerEnablement.test.d.ts} +0 -0
- /package/dist/src/ui/{components/PrepareLabel.test.d.ts → commands/rewindCommand.test.d.ts} +0 -0
- /package/dist/src/ui/{hooks/useAutoAcceptIndicator.test.d.ts → components/AgentConfigDialog.test.d.ts} +0 -0
|
@@ -4,26 +4,15 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
4
4
|
* Copyright 2025 Google LLC
|
|
5
5
|
* SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
*/
|
|
7
|
-
import { renderWithProviders } from '../../test-utils/render.js';
|
|
7
|
+
import { renderWithProviders, persistentStateMock, } from '../../test-utils/render.js';
|
|
8
8
|
import { AppHeader } from './AppHeader.js';
|
|
9
|
-
import { describe, it, expect, vi
|
|
9
|
+
import { describe, it, expect, vi } from 'vitest';
|
|
10
10
|
import { makeFakeConfig } from '@google/gemini-cli-core';
|
|
11
11
|
import crypto from 'node:crypto';
|
|
12
|
-
const persistentStateMock = vi.hoisted(() => ({
|
|
13
|
-
get: vi.fn(),
|
|
14
|
-
set: vi.fn(),
|
|
15
|
-
}));
|
|
16
|
-
vi.mock('../../utils/persistentState.js', () => ({
|
|
17
|
-
persistentState: persistentStateMock,
|
|
18
|
-
}));
|
|
19
12
|
vi.mock('../utils/terminalSetup.js', () => ({
|
|
20
13
|
getTerminalProgram: () => null,
|
|
21
14
|
}));
|
|
22
15
|
describe('<AppHeader />', () => {
|
|
23
|
-
beforeEach(() => {
|
|
24
|
-
vi.clearAllMocks();
|
|
25
|
-
persistentStateMock.get.mockReturnValue({});
|
|
26
|
-
});
|
|
27
16
|
it('should render the banner with default text', () => {
|
|
28
17
|
const mockConfig = makeFakeConfig();
|
|
29
18
|
const uiState = {
|
|
@@ -34,7 +23,10 @@ describe('<AppHeader />', () => {
|
|
|
34
23
|
},
|
|
35
24
|
bannerVisible: true,
|
|
36
25
|
};
|
|
37
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
26
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
27
|
+
config: mockConfig,
|
|
28
|
+
uiState,
|
|
29
|
+
});
|
|
38
30
|
expect(lastFrame()).toContain('This is the default banner');
|
|
39
31
|
expect(lastFrame()).toMatchSnapshot();
|
|
40
32
|
unmount();
|
|
@@ -49,7 +41,10 @@ describe('<AppHeader />', () => {
|
|
|
49
41
|
},
|
|
50
42
|
bannerVisible: true,
|
|
51
43
|
};
|
|
52
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
44
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
45
|
+
config: mockConfig,
|
|
46
|
+
uiState,
|
|
47
|
+
});
|
|
53
48
|
expect(lastFrame()).toContain('There are capacity issues');
|
|
54
49
|
expect(lastFrame()).toMatchSnapshot();
|
|
55
50
|
unmount();
|
|
@@ -63,7 +58,10 @@ describe('<AppHeader />', () => {
|
|
|
63
58
|
warningText: '',
|
|
64
59
|
},
|
|
65
60
|
};
|
|
66
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
61
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
62
|
+
config: mockConfig,
|
|
63
|
+
uiState,
|
|
64
|
+
});
|
|
67
65
|
expect(lastFrame()).not.toContain('Banner');
|
|
68
66
|
expect(lastFrame()).toMatchSnapshot();
|
|
69
67
|
unmount();
|
|
@@ -78,7 +76,10 @@ describe('<AppHeader />', () => {
|
|
|
78
76
|
},
|
|
79
77
|
bannerVisible: true,
|
|
80
78
|
};
|
|
81
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
79
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
80
|
+
config: mockConfig,
|
|
81
|
+
uiState,
|
|
82
|
+
});
|
|
82
83
|
expect(lastFrame()).toContain('This is the default banner');
|
|
83
84
|
expect(lastFrame()).toMatchSnapshot();
|
|
84
85
|
unmount();
|
|
@@ -92,13 +93,15 @@ describe('<AppHeader />', () => {
|
|
|
92
93
|
warningText: '',
|
|
93
94
|
},
|
|
94
95
|
};
|
|
95
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
96
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
97
|
+
config: mockConfig,
|
|
98
|
+
uiState,
|
|
99
|
+
});
|
|
96
100
|
expect(lastFrame()).not.toContain('This is the default banner');
|
|
97
101
|
expect(lastFrame()).toMatchSnapshot();
|
|
98
102
|
unmount();
|
|
99
103
|
});
|
|
100
104
|
it('should not render the default banner if shown count is 5 or more', () => {
|
|
101
|
-
persistentStateMock.get.mockReturnValue(5);
|
|
102
105
|
const mockConfig = makeFakeConfig();
|
|
103
106
|
const uiState = {
|
|
104
107
|
history: [],
|
|
@@ -107,13 +110,23 @@ describe('<AppHeader />', () => {
|
|
|
107
110
|
warningText: '',
|
|
108
111
|
},
|
|
109
112
|
};
|
|
110
|
-
|
|
113
|
+
persistentStateMock.setData({
|
|
114
|
+
defaultBannerShownCount: {
|
|
115
|
+
[crypto
|
|
116
|
+
.createHash('sha256')
|
|
117
|
+
.update(uiState.bannerData.defaultText)
|
|
118
|
+
.digest('hex')]: 5,
|
|
119
|
+
},
|
|
120
|
+
});
|
|
121
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
122
|
+
config: mockConfig,
|
|
123
|
+
uiState,
|
|
124
|
+
});
|
|
111
125
|
expect(lastFrame()).not.toContain('This is the default banner');
|
|
112
126
|
expect(lastFrame()).toMatchSnapshot();
|
|
113
127
|
unmount();
|
|
114
128
|
});
|
|
115
129
|
it('should increment the version count when default banner is displayed', () => {
|
|
116
|
-
persistentStateMock.get.mockReturnValue({});
|
|
117
130
|
const mockConfig = makeFakeConfig();
|
|
118
131
|
const uiState = {
|
|
119
132
|
history: [],
|
|
@@ -122,6 +135,9 @@ describe('<AppHeader />', () => {
|
|
|
122
135
|
warningText: '',
|
|
123
136
|
},
|
|
124
137
|
};
|
|
138
|
+
// Set tipsShown to 10 or more to prevent Tips from incrementing its count
|
|
139
|
+
// and interfering with the expected persistentState.set call.
|
|
140
|
+
persistentStateMock.setData({ tipsShown: 10 });
|
|
125
141
|
const { unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
126
142
|
config: mockConfig,
|
|
127
143
|
uiState,
|
|
@@ -144,9 +160,66 @@ describe('<AppHeader />', () => {
|
|
|
144
160
|
},
|
|
145
161
|
bannerVisible: true,
|
|
146
162
|
};
|
|
147
|
-
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
163
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
164
|
+
config: mockConfig,
|
|
165
|
+
uiState,
|
|
166
|
+
});
|
|
148
167
|
expect(lastFrame()).not.toContain('First line\\nSecond line');
|
|
149
168
|
unmount();
|
|
150
169
|
});
|
|
170
|
+
it('should render Tips when tipsShown is less than 10', () => {
|
|
171
|
+
const mockConfig = makeFakeConfig();
|
|
172
|
+
const uiState = {
|
|
173
|
+
history: [],
|
|
174
|
+
bannerData: {
|
|
175
|
+
defaultText: 'First line\\nSecond line',
|
|
176
|
+
warningText: '',
|
|
177
|
+
},
|
|
178
|
+
bannerVisible: true,
|
|
179
|
+
};
|
|
180
|
+
persistentStateMock.setData({ tipsShown: 5 });
|
|
181
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
182
|
+
config: mockConfig,
|
|
183
|
+
uiState,
|
|
184
|
+
});
|
|
185
|
+
expect(lastFrame()).toContain('Tips');
|
|
186
|
+
expect(persistentStateMock.set).toHaveBeenCalledWith('tipsShown', 6);
|
|
187
|
+
unmount();
|
|
188
|
+
});
|
|
189
|
+
it('should NOT render Tips when tipsShown is 10 or more', () => {
|
|
190
|
+
const mockConfig = makeFakeConfig();
|
|
191
|
+
persistentStateMock.setData({ tipsShown: 10 });
|
|
192
|
+
const { lastFrame, unmount } = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
193
|
+
config: mockConfig,
|
|
194
|
+
});
|
|
195
|
+
expect(lastFrame()).not.toContain('Tips');
|
|
196
|
+
unmount();
|
|
197
|
+
});
|
|
198
|
+
it('should show tips until they have been shown 10 times (persistence flow)', () => {
|
|
199
|
+
persistentStateMock.setData({ tipsShown: 9 });
|
|
200
|
+
const mockConfig = makeFakeConfig();
|
|
201
|
+
const uiState = {
|
|
202
|
+
history: [],
|
|
203
|
+
bannerData: {
|
|
204
|
+
defaultText: 'First line\\nSecond line',
|
|
205
|
+
warningText: '',
|
|
206
|
+
},
|
|
207
|
+
bannerVisible: true,
|
|
208
|
+
};
|
|
209
|
+
// First session
|
|
210
|
+
const session1 = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
211
|
+
config: mockConfig,
|
|
212
|
+
uiState,
|
|
213
|
+
});
|
|
214
|
+
expect(session1.lastFrame()).toContain('Tips');
|
|
215
|
+
expect(persistentStateMock.get('tipsShown')).toBe(10);
|
|
216
|
+
session1.unmount();
|
|
217
|
+
// Second session - state is persisted in the fake
|
|
218
|
+
const session2 = renderWithProviders(_jsx(AppHeader, { version: "1.0.0" }), {
|
|
219
|
+
config: mockConfig,
|
|
220
|
+
});
|
|
221
|
+
expect(session2.lastFrame()).not.toContain('Tips');
|
|
222
|
+
session2.unmount();
|
|
223
|
+
});
|
|
151
224
|
});
|
|
152
225
|
//# sourceMappingURL=AppHeader.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AppHeader.test.js","sourceRoot":"","sources":["../../../../src/ui/components/AppHeader.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"AppHeader.test.js","sourceRoot":"","sources":["../../../../src/ui/components/AppHeader.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,8 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type React from 'react';
|
|
7
7
|
import { ApprovalMode } from '@google/gemini-cli-core';
|
|
8
|
-
interface
|
|
8
|
+
interface ApprovalModeIndicatorProps {
|
|
9
9
|
approvalMode: ApprovalMode;
|
|
10
10
|
}
|
|
11
|
-
export declare const
|
|
11
|
+
export declare const ApprovalModeIndicator: React.FC<ApprovalModeIndicatorProps>;
|
|
12
12
|
export {};
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
3
|
import { theme } from '../semantic-colors.js';
|
|
4
4
|
import { ApprovalMode } from '@google/gemini-cli-core';
|
|
5
|
-
export const
|
|
5
|
+
export const ApprovalModeIndicator = ({ approvalMode, }) => {
|
|
6
6
|
let textColor = '';
|
|
7
7
|
let textContent = '';
|
|
8
8
|
let subText = '';
|
|
@@ -10,7 +10,12 @@ export const AutoAcceptIndicator = ({ approvalMode, }) => {
|
|
|
10
10
|
case ApprovalMode.AUTO_EDIT:
|
|
11
11
|
textColor = theme.status.warning;
|
|
12
12
|
textContent = 'accepting edits';
|
|
13
|
-
subText = ' (shift + tab to
|
|
13
|
+
subText = ' (shift + tab to cycle)';
|
|
14
|
+
break;
|
|
15
|
+
case ApprovalMode.PLAN:
|
|
16
|
+
textColor = theme.status.success;
|
|
17
|
+
textContent = 'plan mode';
|
|
18
|
+
subText = ' (shift + tab to cycle)';
|
|
14
19
|
break;
|
|
15
20
|
case ApprovalMode.YOLO:
|
|
16
21
|
textColor = theme.status.error;
|
|
@@ -23,4 +28,4 @@ export const AutoAcceptIndicator = ({ approvalMode, }) => {
|
|
|
23
28
|
}
|
|
24
29
|
return (_jsx(Box, { children: _jsxs(Text, { color: textColor, children: [textContent, subText && _jsx(Text, { color: theme.text.secondary, children: subText })] }) }));
|
|
25
30
|
};
|
|
26
|
-
//# sourceMappingURL=
|
|
31
|
+
//# sourceMappingURL=ApprovalModeIndicator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApprovalModeIndicator.js","sourceRoot":"","sources":["../../../../src/ui/components/ApprovalModeIndicator.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAMvD,MAAM,CAAC,MAAM,qBAAqB,GAAyC,CAAC,EAC1E,YAAY,GACb,EAAE,EAAE;IACH,IAAI,SAAS,GAAG,EAAE,CAAC;IACnB,IAAI,WAAW,GAAG,EAAE,CAAC;IACrB,IAAI,OAAO,GAAG,EAAE,CAAC;IAEjB,QAAQ,YAAY,EAAE,CAAC;QACrB,KAAK,YAAY,CAAC,SAAS;YACzB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YACjC,WAAW,GAAG,iBAAiB,CAAC;YAChC,OAAO,GAAG,yBAAyB,CAAC;YACpC,MAAM;QACR,KAAK,YAAY,CAAC,IAAI;YACpB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YACjC,WAAW,GAAG,WAAW,CAAC;YAC1B,OAAO,GAAG,yBAAyB,CAAC;YACpC,MAAM;QACR,KAAK,YAAY,CAAC,IAAI;YACpB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/B,WAAW,GAAG,WAAW,CAAC;YAC1B,OAAO,GAAG,uBAAuB,CAAC;YAClC,MAAM;QACR,KAAK,YAAY,CAAC,OAAO,CAAC;QAC1B;YACE,MAAM;IACV,CAAC;IAED,OAAO,CACL,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,SAAS,aACnB,WAAW,EACX,OAAO,IAAI,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,SAAS,YAAG,OAAO,GAAQ,IAC1D,GACH,CACP,CAAC;AACJ,CAAC,CAAC"}
|
package/dist/src/ui/components/{AutoAcceptIndicator.test.js → ApprovalModeIndicator.test.js}
RENAMED
|
@@ -5,27 +5,33 @@ import { jsx as _jsx } from "react/jsx-runtime";
|
|
|
5
5
|
* SPDX-License-Identifier: Apache-2.0
|
|
6
6
|
*/
|
|
7
7
|
import { render } from '../../test-utils/render.js';
|
|
8
|
-
import {
|
|
8
|
+
import { ApprovalModeIndicator } from './ApprovalModeIndicator.js';
|
|
9
9
|
import { describe, it, expect } from 'vitest';
|
|
10
10
|
import { ApprovalMode } from '@google/gemini-cli-core';
|
|
11
|
-
describe('
|
|
11
|
+
describe('ApprovalModeIndicator', () => {
|
|
12
12
|
it('renders correctly for AUTO_EDIT mode', () => {
|
|
13
|
-
const { lastFrame } = render(_jsx(
|
|
13
|
+
const { lastFrame } = render(_jsx(ApprovalModeIndicator, { approvalMode: ApprovalMode.AUTO_EDIT }));
|
|
14
14
|
const output = lastFrame();
|
|
15
15
|
expect(output).toContain('accepting edits');
|
|
16
|
-
expect(output).toContain('(shift + tab to
|
|
16
|
+
expect(output).toContain('(shift + tab to cycle)');
|
|
17
|
+
});
|
|
18
|
+
it('renders correctly for PLAN mode', () => {
|
|
19
|
+
const { lastFrame } = render(_jsx(ApprovalModeIndicator, { approvalMode: ApprovalMode.PLAN }));
|
|
20
|
+
const output = lastFrame();
|
|
21
|
+
expect(output).toContain('plan mode');
|
|
22
|
+
expect(output).toContain('(shift + tab to cycle)');
|
|
17
23
|
});
|
|
18
24
|
it('renders correctly for YOLO mode', () => {
|
|
19
|
-
const { lastFrame } = render(_jsx(
|
|
25
|
+
const { lastFrame } = render(_jsx(ApprovalModeIndicator, { approvalMode: ApprovalMode.YOLO }));
|
|
20
26
|
const output = lastFrame();
|
|
21
27
|
expect(output).toContain('YOLO mode');
|
|
22
28
|
expect(output).toContain('(ctrl + y to toggle)');
|
|
23
29
|
});
|
|
24
30
|
it('renders nothing for DEFAULT mode', () => {
|
|
25
|
-
const { lastFrame } = render(_jsx(
|
|
31
|
+
const { lastFrame } = render(_jsx(ApprovalModeIndicator, { approvalMode: ApprovalMode.DEFAULT }));
|
|
26
32
|
const output = lastFrame();
|
|
27
33
|
expect(output).not.toContain('accepting edits');
|
|
28
34
|
expect(output).not.toContain('YOLO mode');
|
|
29
35
|
});
|
|
30
36
|
});
|
|
31
|
-
//# sourceMappingURL=
|
|
37
|
+
//# sourceMappingURL=ApprovalModeIndicator.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApprovalModeIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/components/ApprovalModeIndicator.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;IACrC,EAAE,CAAC,sCAAsC,EAAE,GAAG,EAAE;QAC9C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,qBAAqB,IAAC,YAAY,EAAE,YAAY,CAAC,SAAS,GAAI,CAChE,CAAC;QACF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,qBAAqB,IAAC,YAAY,EAAE,YAAY,CAAC,IAAI,GAAI,CAC3D,CAAC;QACF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,wBAAwB,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,qBAAqB,IAAC,YAAY,EAAE,YAAY,CAAC,IAAI,GAAI,CAC3D,CAAC;QACF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACtC,MAAM,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kCAAkC,EAAE,GAAG,EAAE;QAC1C,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,qBAAqB,IAAC,YAAY,EAAE,YAAY,CAAC,OAAO,GAAI,CAC9D,CAAC;QACF,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IAC5C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2026 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type React from 'react';
|
|
7
|
+
import type { Question } from '@google/gemini-cli-core';
|
|
8
|
+
/**
|
|
9
|
+
* Props for the AskUserDialog component.
|
|
10
|
+
*/
|
|
11
|
+
interface AskUserDialogProps {
|
|
12
|
+
/**
|
|
13
|
+
* The list of questions to ask the user.
|
|
14
|
+
*/
|
|
15
|
+
questions: Question[];
|
|
16
|
+
/**
|
|
17
|
+
* Callback fired when the user submits their answers.
|
|
18
|
+
* Returns a map of question index to answer string.
|
|
19
|
+
*/
|
|
20
|
+
onSubmit: (answers: {
|
|
21
|
+
[questionIndex: string]: string;
|
|
22
|
+
}) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Callback fired when the user cancels the dialog (e.g. via Escape).
|
|
25
|
+
*/
|
|
26
|
+
onCancel: () => void;
|
|
27
|
+
/**
|
|
28
|
+
* Optional callback to notify parent when text input is active.
|
|
29
|
+
* Useful for managing global keypress handlers.
|
|
30
|
+
*/
|
|
31
|
+
onActiveTextInputChange?: (active: boolean) => void;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A dialog component for asking the user a series of questions.
|
|
35
|
+
* Supports multiple question types (text, choice, yes/no, multi-select),
|
|
36
|
+
* navigation between questions, and a final review step.
|
|
37
|
+
*/
|
|
38
|
+
export declare const AskUserDialog: React.FC<AskUserDialogProps>;
|
|
39
|
+
export {};
|