@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
|
@@ -9,10 +9,22 @@ import { renderHook } from '../../test-utils/render.js';
|
|
|
9
9
|
import { waitFor } from '../../test-utils/async.js';
|
|
10
10
|
import { useIncludeDirsTrust } from './useIncludeDirsTrust.js';
|
|
11
11
|
import * as trustedFolders from '../../config/trustedFolders.js';
|
|
12
|
-
vi.mock('../utils/directoryUtils.js', () =>
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
12
|
+
vi.mock('../utils/directoryUtils.js', async (importOriginal) => {
|
|
13
|
+
const actual = await importOriginal();
|
|
14
|
+
return {
|
|
15
|
+
...actual,
|
|
16
|
+
expandHomeDir: (p) => p, // Simple pass-through for testing
|
|
17
|
+
batchAddDirectories: (workspaceContext, paths) => {
|
|
18
|
+
const result = workspaceContext.addDirectories(paths);
|
|
19
|
+
const errors = [];
|
|
20
|
+
for (const failure of result.failed) {
|
|
21
|
+
errors.push(`Error adding '${failure.path}': ${failure.error.message}`);
|
|
22
|
+
}
|
|
23
|
+
return { added: result.added, errors };
|
|
24
|
+
},
|
|
25
|
+
loadMemoryFromDirectories: vi.fn().mockResolvedValue({ fileCount: 1 }),
|
|
26
|
+
};
|
|
27
|
+
});
|
|
16
28
|
vi.mock('../components/MultiFolderTrustDialog.js', () => ({
|
|
17
29
|
MultiFolderTrustDialog: (props) => (_jsx("div", { "data-testid": "mock-dialog", children: JSON.stringify(props.folders) })),
|
|
18
30
|
}));
|
|
@@ -25,6 +37,7 @@ describe('useIncludeDirsTrust', () => {
|
|
|
25
37
|
vi.clearAllMocks();
|
|
26
38
|
mockWorkspaceContext = {
|
|
27
39
|
addDirectory: vi.fn(),
|
|
40
|
+
addDirectories: vi.fn().mockReturnValue({ added: [], failed: [] }),
|
|
28
41
|
getDirectories: vi.fn().mockReturnValue([]),
|
|
29
42
|
onDirectoriesChangedListeners: new Set(),
|
|
30
43
|
onDirectoriesChanged: vi.fn(),
|
|
@@ -83,15 +96,16 @@ describe('useIncludeDirsTrust', () => {
|
|
|
83
96
|
'/dir1',
|
|
84
97
|
'/dir2',
|
|
85
98
|
]);
|
|
86
|
-
vi.mocked(mockWorkspaceContext.
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
}
|
|
99
|
+
vi.mocked(mockWorkspaceContext.addDirectories).mockReturnValue({
|
|
100
|
+
added: ['/dir1'],
|
|
101
|
+
failed: [{ path: '/dir2', error: new Error('Test error') }],
|
|
90
102
|
});
|
|
91
103
|
renderTestHook(isTrusted);
|
|
92
104
|
await waitFor(() => {
|
|
93
|
-
expect(mockWorkspaceContext.
|
|
94
|
-
|
|
105
|
+
expect(mockWorkspaceContext.addDirectories).toHaveBeenCalledWith([
|
|
106
|
+
'/dir1',
|
|
107
|
+
'/dir2',
|
|
108
|
+
]);
|
|
95
109
|
expect(mockHistoryManager.addItem).toHaveBeenCalledWith(expect.objectContaining({
|
|
96
110
|
text: expect.stringContaining("Error adding '/dir2': Test error"),
|
|
97
111
|
}));
|
|
@@ -122,6 +136,10 @@ describe('useIncludeDirsTrust', () => {
|
|
|
122
136
|
return false;
|
|
123
137
|
return undefined;
|
|
124
138
|
});
|
|
139
|
+
vi.mocked(mockWorkspaceContext.addDirectories).mockReturnValue({
|
|
140
|
+
added: ['/trusted'],
|
|
141
|
+
failed: [],
|
|
142
|
+
});
|
|
125
143
|
renderTestHook(true);
|
|
126
144
|
// Opens dialog for undefined trust dir
|
|
127
145
|
expect(mockSetCustomDialog).toHaveBeenCalledTimes(1);
|
|
@@ -138,10 +156,13 @@ describe('useIncludeDirsTrust', () => {
|
|
|
138
156
|
const pendingDirs = ['/trusted1', '/trusted2'];
|
|
139
157
|
vi.mocked(mockConfig.getPendingIncludeDirectories).mockReturnValue(pendingDirs);
|
|
140
158
|
mockIsPathTrusted.mockReturnValue(true);
|
|
159
|
+
vi.mocked(mockWorkspaceContext.addDirectories).mockReturnValue({
|
|
160
|
+
added: pendingDirs,
|
|
161
|
+
failed: [],
|
|
162
|
+
});
|
|
141
163
|
renderTestHook(true);
|
|
142
164
|
await waitFor(() => {
|
|
143
|
-
expect(mockWorkspaceContext.
|
|
144
|
-
expect(mockWorkspaceContext.addDirectory).toHaveBeenCalledWith('/trusted2');
|
|
165
|
+
expect(mockWorkspaceContext.addDirectories).toHaveBeenCalledWith(pendingDirs);
|
|
145
166
|
expect(mockSetCustomDialog).not.toHaveBeenCalled();
|
|
146
167
|
expect(mockConfig.clearPendingIncludeDirectories).toHaveBeenCalledTimes(1);
|
|
147
168
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useIncludeDirsTrust.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useIncludeDirsTrust.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,cAAc,MAAM,gCAAgC,CAAC;AAOjE,EAAE,CAAC,IAAI,CAAC,4BAA4B,EAAE,
|
|
1
|
+
{"version":3,"file":"useIncludeDirsTrust.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useIncludeDirsTrust.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -94,7 +94,13 @@ describe(`useKeypress`, () => {
|
|
|
94
94
|
renderKeypressHook(true);
|
|
95
95
|
const key = { name: 'return', sequence: '\x1B\r' };
|
|
96
96
|
act(() => stdin.write(key.sequence));
|
|
97
|
-
expect(onKeypress).toHaveBeenCalledWith(expect.objectContaining({
|
|
97
|
+
expect(onKeypress).toHaveBeenCalledWith(expect.objectContaining({
|
|
98
|
+
...key,
|
|
99
|
+
shift: false,
|
|
100
|
+
alt: true,
|
|
101
|
+
ctrl: false,
|
|
102
|
+
cmd: false,
|
|
103
|
+
}));
|
|
98
104
|
});
|
|
99
105
|
describe.each([
|
|
100
106
|
{
|
|
@@ -116,9 +122,10 @@ describe(`useKeypress`, () => {
|
|
|
116
122
|
expect(onKeypress).toHaveBeenCalledTimes(1);
|
|
117
123
|
expect(onKeypress).toHaveBeenCalledWith({
|
|
118
124
|
name: 'paste',
|
|
119
|
-
ctrl: false,
|
|
120
|
-
meta: false,
|
|
121
125
|
shift: false,
|
|
126
|
+
alt: false,
|
|
127
|
+
ctrl: false,
|
|
128
|
+
cmd: false,
|
|
122
129
|
insertable: true,
|
|
123
130
|
sequence: pasteText,
|
|
124
131
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useKeypress.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useKeypress.test.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"useKeypress.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useKeypress.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,yCAAyC;AACzC,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,EAAE;IACtC,MAAM,QAAQ,GAAG,MAAM,cAAc,EAAwB,CAAC;IAC9D,OAAO;QACL,GAAG,QAAQ;QACX,QAAQ,EAAE,EAAE,CAAC,EAAE,EAAE;KAClB,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,MAAM,WAAW,GAAG,WAAW,CAAC;AAChC,MAAM,SAAS,GAAG,WAAW,CAAC;AAE9B,MAAM,SAAU,SAAQ,YAAY;IAClC,KAAK,GAAG,IAAI,CAAC;IACb,KAAK,GAAG,KAAK,CAAC;IACd,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACZ,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC;IACtB,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC;IAC/C,MAAM,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IACjB,KAAK,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAEhB,KAAK,CAAC,IAAY;QAChB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF;AAED,QAAQ,CAAC,aAAa,EAAE,GAAG,EAAE;IAC3B,IAAI,KAAgB,CAAC;IACrB,MAAM,cAAc,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;IAC3B,IAAI,mBAA2B,CAAC;IAEhC,MAAM,kBAAkB,GAAG,CAAC,QAAQ,GAAG,IAAI,EAAE,EAAE;QAC7C,SAAS,aAAa;YACpB,WAAW,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,MAAM,CACX,KAAC,gBAAgB,cACf,KAAC,aAAa,KAAG,GACA,CACpB,CAAC;IACJ,CAAC,CAAC;IAEF,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,EAAE,CAAC,aAAa,EAAE,CAAC;QACnB,KAAK,GAAG,IAAI,SAAS,EAAE,CAAC;QACvB,QAAiB,CAAC,eAAe,CAAC;YACjC,KAAK;YACL,UAAU,EAAE,cAAc;SAC3B,CAAC,CAAC;QAEH,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC5C,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE;YAC9C,KAAK,EAAE,mBAAmB;YAC1B,YAAY,EAAE,IAAI;SACnB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wCAAwC,EAAE,GAAG,EAAE;QAChD,kBAAkB,CAAC,KAAK,CAAC,CAAC;QAC1B,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,IAAI,CAAC;QACN,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE;QACrC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAC7C,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAC9C,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAC3C,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;QAC7C,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;KAC1D,CAAC,CAAC,0DAA0D,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE;QACzE,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC,MAAM,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,iCAAiC,EAAE,GAAG,EAAE;QACzC,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC7C,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAClD,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,cAAc,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACrD,MAAM,EAAE,OAAO,EAAE,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC7C,OAAO,EAAE,CAAC;QACV,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC;IAC5C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gDAAgD,EAAE,GAAG,EAAE;QACxD,kBAAkB,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,GAAG,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;QACnD,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC;YACtB,GAAG,GAAG;YACN,KAAK,EAAE,KAAK;YACZ,GAAG,EAAE,IAAI;YACT,IAAI,EAAE,KAAK;YACX,GAAG,EAAE,KAAK;SACX,CAAC,CACH,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,IAAI,CAAC;QACZ;YACE,WAAW,EAAE,uBAAuB;YACpC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,MAAM,CAAC;SACpD;QACD;YACE,WAAW,EAAE,wBAAwB;YACrC,KAAK,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,kBAAkB,EAAE,OAAO,CAAC;SACrD;KACF,CAAC,CAAC,iBAAiB,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;QAClC,UAAU,CAAC,GAAG,EAAE;YACd,KAAK,EAAE,CAAC;QACV,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,GAAG,EAAE;YAClD,kBAAkB,CAAC,IAAI,CAAC,CAAC;YACzB,MAAM,SAAS,GAAG,aAAa,CAAC;YAChC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC;YAE5D,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;YAC5C,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CAAC;gBACtC,IAAI,EAAE,OAAO;gBACb,KAAK,EAAE,KAAK;gBACZ,GAAG,EAAE,KAAK;gBACV,IAAI,EAAE,KAAK;gBACX,GAAG,EAAE,KAAK;gBACV,UAAU,EAAE,IAAI;gBAChB,QAAQ,EAAE,SAAS;aACpB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;YACzD,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEzB,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YAC1C,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACrC,CAAC;YAEF,MAAM,SAAS,GAAG,QAAQ,CAAC;YAC3B,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,WAAW,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC;YAC5D,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAChE,CAAC;YAEF,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YAC1C,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACrC,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACnC,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEzB,MAAM,SAAS,GAAG,QAAQ,CAAC;YAC3B,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;gBACzB,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;gBACvB,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAChE,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,iCAAiC,EAAE,KAAK,IAAI,EAAE;YAC/C,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEzB,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACrC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CACnD,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,CAC3C,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC3C,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEzB,MAAM,UAAU,GAAG,MAAM,CAAC;YAC1B,MAAM,UAAU,GAAG,MAAM,CAAC;YAC1B,GAAG,CAAC,GAAG,EAAE;gBACP,KAAK,CAAC,KAAK,CACT,WAAW;oBACT,UAAU;oBACV,SAAS;oBACT,WAAW;oBACX,UAAU;oBACV,SAAS,CACZ,CAAC;YACJ,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CACjE,CAAC;YACF,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CACjE,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,0CAA0C,EAAE,KAAK,IAAI,EAAE;YACxD,kBAAkB,CAAC,IAAI,CAAC,CAAC;YAEzB,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YAC1C,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACrC,CAAC;YAEF,MAAM,SAAS,GAAG,QAAQ,CAAC;YAC3B,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;gBACnB,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACrC,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBAC3B,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC1D,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBAC3B,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBACxD,EAAE,CAAC,mBAAmB,CAAC,EAAE,CAAC,CAAC;gBAC3B,KAAK,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;YACH,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,CAChE,CAAC;YAEF,MAAM,IAAI,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC;YAC1C,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;YAC5B,MAAM,CAAC,UAAU,CAAC,CAAC,oBAAoB,CACrC,MAAM,CAAC,gBAAgB,CAAC,EAAE,GAAG,IAAI,EAAE,CAAC,CACrC,CAAC;YAEF,MAAM,CAAC,UAAU,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -5,7 +5,13 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { StreamingState } from '../types.js';
|
|
7
7
|
import { type RetryAttemptPayload } from '@google/gemini-cli-core';
|
|
8
|
-
export
|
|
8
|
+
export interface UseLoadingIndicatorProps {
|
|
9
|
+
streamingState: StreamingState;
|
|
10
|
+
shouldShowFocusHint: boolean;
|
|
11
|
+
retryStatus: RetryAttemptPayload | null;
|
|
12
|
+
customWittyPhrases?: string[];
|
|
13
|
+
}
|
|
14
|
+
export declare const useLoadingIndicator: ({ streamingState, shouldShowFocusHint, retryStatus, customWittyPhrases, }: UseLoadingIndicatorProps) => {
|
|
9
15
|
elapsedTime: number;
|
|
10
16
|
currentLoadingPhrase: string;
|
|
11
17
|
};
|
|
@@ -8,13 +8,13 @@ import { useTimer } from './useTimer.js';
|
|
|
8
8
|
import { usePhraseCycler } from './usePhraseCycler.js';
|
|
9
9
|
import { useState, useEffect, useRef } from 'react';
|
|
10
10
|
import { getDisplayString, } from '@google/gemini-cli-core';
|
|
11
|
-
export const useLoadingIndicator = (streamingState,
|
|
11
|
+
export const useLoadingIndicator = ({ streamingState, shouldShowFocusHint, retryStatus, customWittyPhrases, }) => {
|
|
12
12
|
const [timerResetKey, setTimerResetKey] = useState(0);
|
|
13
13
|
const isTimerActive = streamingState === StreamingState.Responding;
|
|
14
14
|
const elapsedTimeFromTimer = useTimer(isTimerActive, timerResetKey);
|
|
15
15
|
const isPhraseCyclingActive = streamingState === StreamingState.Responding;
|
|
16
16
|
const isWaiting = streamingState === StreamingState.WaitingForConfirmation;
|
|
17
|
-
const currentLoadingPhrase = usePhraseCycler(isPhraseCyclingActive, isWaiting,
|
|
17
|
+
const currentLoadingPhrase = usePhraseCycler(isPhraseCyclingActive, isWaiting, shouldShowFocusHint, customWittyPhrases);
|
|
18
18
|
const [retainedElapsedTime, setRetainedElapsedTime] = useState(0);
|
|
19
19
|
const prevStreamingStateRef = useRef(null);
|
|
20
20
|
useEffect(() => {
|
|
@@ -36,7 +36,7 @@ export const useLoadingIndicator = (streamingState, customWittyPhrases, isIntera
|
|
|
36
36
|
prevStreamingStateRef.current = streamingState;
|
|
37
37
|
}, [streamingState, elapsedTimeFromTimer]);
|
|
38
38
|
const retryPhrase = retryStatus
|
|
39
|
-
? `Trying to reach ${getDisplayString(retryStatus.model)} (Attempt ${retryStatus.attempt}/${retryStatus.maxAttempts})`
|
|
39
|
+
? `Trying to reach ${getDisplayString(retryStatus.model)} (Attempt ${retryStatus.attempt + 1}/${retryStatus.maxAttempts})`
|
|
40
40
|
: null;
|
|
41
41
|
return {
|
|
42
42
|
elapsedTime: streamingState === StreamingState.WaitingForConfirmation
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLoadingIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EACL,gBAAgB,GAEjB,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"useLoadingIndicator.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EACL,gBAAgB,GAEjB,MAAM,yBAAyB,CAAC;AASjC,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,kBAAkB,GACO,EAAE,EAAE;IAC7B,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,aAAa,GAAG,cAAc,KAAK,cAAc,CAAC,UAAU,CAAC;IAEnE,MAAM,oBAAoB,GAAG,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IAEpE,MAAM,qBAAqB,GAAG,cAAc,KAAK,cAAc,CAAC,UAAU,CAAC;IAC3E,MAAM,SAAS,GAAG,cAAc,KAAK,cAAc,CAAC,sBAAsB,CAAC;IAC3E,MAAM,oBAAoB,GAAG,eAAe,CAC1C,qBAAqB,EACrB,SAAS,EACT,mBAAmB,EACnB,kBAAkB,CACnB,CAAC;IAEF,MAAM,CAAC,mBAAmB,EAAE,sBAAsB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IAClE,MAAM,qBAAqB,GAAG,MAAM,CAAwB,IAAI,CAAC,CAAC;IAElE,SAAS,CAAC,GAAG,EAAE;QACb,IACE,qBAAqB,CAAC,OAAO,KAAK,cAAc,CAAC,sBAAsB;YACvE,cAAc,KAAK,cAAc,CAAC,UAAU,EAC5C,CAAC;YACD,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;YAC3C,sBAAsB,CAAC,CAAC,CAAC,CAAC,CAAC,oDAAoD;QACjF,CAAC;aAAM,IACL,cAAc,KAAK,cAAc,CAAC,IAAI;YACtC,qBAAqB,CAAC,OAAO,KAAK,cAAc,CAAC,UAAU,EAC3D,CAAC;YACD,gBAAgB,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,iDAAiD;YAC7F,sBAAsB,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;aAAM,IAAI,cAAc,KAAK,cAAc,CAAC,sBAAsB,EAAE,CAAC;YACpE,wDAAwD;YACxD,kFAAkF;YAClF,sBAAsB,CAAC,oBAAoB,CAAC,CAAC;QAC/C,CAAC;QAED,qBAAqB,CAAC,OAAO,GAAG,cAAc,CAAC;IACjD,CAAC,EAAE,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC,CAAC;IAE3C,MAAM,WAAW,GAAG,WAAW;QAC7B,CAAC,CAAC,mBAAmB,gBAAgB,CAAC,WAAW,CAAC,KAAK,CAAC,aAAa,WAAW,CAAC,OAAO,GAAG,CAAC,IAAI,WAAW,CAAC,WAAW,GAAG;QAC1H,CAAC,CAAC,IAAI,CAAC;IAET,OAAO;QACL,WAAW,EACT,cAAc,KAAK,cAAc,CAAC,sBAAsB;YACtD,CAAC,CAAC,mBAAmB;YACrB,CAAC,CAAC,oBAAoB;QAC1B,oBAAoB,EAAE,WAAW,IAAI,oBAAoB;KAC1D,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -22,13 +22,17 @@ describe('useLoadingIndicator', () => {
|
|
|
22
22
|
act(() => vi.runOnlyPendingTimers);
|
|
23
23
|
vi.restoreAllMocks();
|
|
24
24
|
});
|
|
25
|
-
const renderLoadingIndicatorHook = (initialStreamingState,
|
|
25
|
+
const renderLoadingIndicatorHook = (initialStreamingState, initialShouldShowFocusHint = false, initialRetryStatus = null) => {
|
|
26
26
|
let hookResult;
|
|
27
|
-
function TestComponent({ streamingState,
|
|
28
|
-
hookResult = useLoadingIndicator(
|
|
27
|
+
function TestComponent({ streamingState, shouldShowFocusHint, retryStatus, }) {
|
|
28
|
+
hookResult = useLoadingIndicator({
|
|
29
|
+
streamingState,
|
|
30
|
+
shouldShowFocusHint: !!shouldShowFocusHint,
|
|
31
|
+
retryStatus: retryStatus || null,
|
|
32
|
+
});
|
|
29
33
|
return null;
|
|
30
34
|
}
|
|
31
|
-
const { rerender } = render(_jsx(TestComponent, { streamingState: initialStreamingState,
|
|
35
|
+
const { rerender } = render(_jsx(TestComponent, { streamingState: initialStreamingState, shouldShowFocusHint: initialShouldShowFocusHint, retryStatus: initialRetryStatus }));
|
|
32
36
|
return {
|
|
33
37
|
result: {
|
|
34
38
|
get current() {
|
|
@@ -44,13 +48,16 @@ describe('useLoadingIndicator', () => {
|
|
|
44
48
|
expect(result.current.elapsedTime).toBe(0);
|
|
45
49
|
expect(WITTY_LOADING_PHRASES).toContain(result.current.currentLoadingPhrase);
|
|
46
50
|
});
|
|
47
|
-
it('should show interactive shell waiting phrase when
|
|
51
|
+
it('should show interactive shell waiting phrase when shouldShowFocusHint is true', async () => {
|
|
48
52
|
vi.spyOn(Math, 'random').mockImplementation(() => 0.5); // Always witty
|
|
49
|
-
const { result } = renderLoadingIndicatorHook(StreamingState.Responding,
|
|
53
|
+
const { result, rerender } = renderLoadingIndicatorHook(StreamingState.Responding, false);
|
|
50
54
|
// Initially should be witty phrase or tip
|
|
51
55
|
expect([...WITTY_LOADING_PHRASES, ...INFORMATIVE_TIPS]).toContain(result.current.currentLoadingPhrase);
|
|
52
56
|
await act(async () => {
|
|
53
|
-
|
|
57
|
+
rerender({
|
|
58
|
+
streamingState: StreamingState.Responding,
|
|
59
|
+
shouldShowFocusHint: true,
|
|
60
|
+
});
|
|
54
61
|
});
|
|
55
62
|
expect(result.current.currentLoadingPhrase).toBe(INTERACTIVE_SHELL_WAITING_PHRASE);
|
|
56
63
|
});
|
|
@@ -130,8 +137,9 @@ describe('useLoadingIndicator', () => {
|
|
|
130
137
|
maxAttempts: 3,
|
|
131
138
|
delayMs: 1000,
|
|
132
139
|
};
|
|
133
|
-
const { result } = renderLoadingIndicatorHook(StreamingState.Responding, false,
|
|
134
|
-
expect(result.current.currentLoadingPhrase).
|
|
140
|
+
const { result } = renderLoadingIndicatorHook(StreamingState.Responding, false, retryStatus);
|
|
141
|
+
expect(result.current.currentLoadingPhrase).toContain('Trying to reach');
|
|
142
|
+
expect(result.current.currentLoadingPhrase).toContain('Attempt 3/3');
|
|
135
143
|
});
|
|
136
144
|
});
|
|
137
145
|
//# sourceMappingURL=useLoadingIndicator.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useLoadingIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EACL,yBAAyB,EACzB,gCAAgC,GACjC,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAGxD,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;IACnC,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,sCAAsC;QAC1D,mEAAmE;QACnE,GAAG,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,oBAAoB,CAAC,CAAC;QACnC,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,MAAM,0BAA0B,GAAG,CACjC,qBAAqC,EACrC,
|
|
1
|
+
{"version":3,"file":"useLoadingIndicator.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/useLoadingIndicator.test.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,8 +9,8 @@ export declare const INTERACTIVE_SHELL_WAITING_PHRASE = "Interactive shell await
|
|
|
9
9
|
* Custom hook to manage cycling through loading phrases.
|
|
10
10
|
* @param isActive Whether the phrase cycling should be active.
|
|
11
11
|
* @param isWaiting Whether to show a specific waiting phrase.
|
|
12
|
-
* @param
|
|
12
|
+
* @param shouldShowFocusHint Whether to show the shell focus hint.
|
|
13
13
|
* @param customPhrases Optional list of custom phrases to use.
|
|
14
14
|
* @returns The current loading phrase.
|
|
15
15
|
*/
|
|
16
|
-
export declare const usePhraseCycler: (isActive: boolean, isWaiting: boolean,
|
|
16
|
+
export declare const usePhraseCycler: (isActive: boolean, isWaiting: boolean, shouldShowFocusHint: boolean, customPhrases?: string[]) => string;
|
|
@@ -4,26 +4,23 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { useState, useEffect, useRef } from 'react';
|
|
7
|
-
import { SHELL_FOCUS_HINT_DELAY_MS } from '../constants.js';
|
|
8
7
|
import { INFORMATIVE_TIPS } from '../constants/tips.js';
|
|
9
8
|
import { WITTY_LOADING_PHRASES } from '../constants/wittyPhrases.js';
|
|
10
|
-
import { useInactivityTimer } from './useInactivityTimer.js';
|
|
11
9
|
export const PHRASE_CHANGE_INTERVAL_MS = 15000;
|
|
12
10
|
export const INTERACTIVE_SHELL_WAITING_PHRASE = 'Interactive shell awaiting input... press tab to focus shell';
|
|
13
11
|
/**
|
|
14
12
|
* Custom hook to manage cycling through loading phrases.
|
|
15
13
|
* @param isActive Whether the phrase cycling should be active.
|
|
16
14
|
* @param isWaiting Whether to show a specific waiting phrase.
|
|
17
|
-
* @param
|
|
15
|
+
* @param shouldShowFocusHint Whether to show the shell focus hint.
|
|
18
16
|
* @param customPhrases Optional list of custom phrases to use.
|
|
19
17
|
* @returns The current loading phrase.
|
|
20
18
|
*/
|
|
21
|
-
export const usePhraseCycler = (isActive, isWaiting,
|
|
19
|
+
export const usePhraseCycler = (isActive, isWaiting, shouldShowFocusHint, customPhrases) => {
|
|
22
20
|
const loadingPhrases = customPhrases && customPhrases.length > 0
|
|
23
21
|
? customPhrases
|
|
24
22
|
: WITTY_LOADING_PHRASES;
|
|
25
23
|
const [currentLoadingPhrase, setCurrentLoadingPhrase] = useState(loadingPhrases[0]);
|
|
26
|
-
const showShellFocusHint = useInactivityTimer(isInteractiveShellWaiting, lastOutputTime, SHELL_FOCUS_HINT_DELAY_MS);
|
|
27
24
|
const phraseIntervalRef = useRef(null);
|
|
28
25
|
const hasShownFirstRequestTipRef = useRef(false);
|
|
29
26
|
useEffect(() => {
|
|
@@ -32,7 +29,7 @@ export const usePhraseCycler = (isActive, isWaiting, isInteractiveShellWaiting,
|
|
|
32
29
|
clearInterval(phraseIntervalRef.current);
|
|
33
30
|
phraseIntervalRef.current = null;
|
|
34
31
|
}
|
|
35
|
-
if (
|
|
32
|
+
if (shouldShowFocusHint) {
|
|
36
33
|
setCurrentLoadingPhrase(INTERACTIVE_SHELL_WAITING_PHRASE);
|
|
37
34
|
return;
|
|
38
35
|
}
|
|
@@ -78,14 +75,7 @@ export const usePhraseCycler = (isActive, isWaiting, isInteractiveShellWaiting,
|
|
|
78
75
|
phraseIntervalRef.current = null;
|
|
79
76
|
}
|
|
80
77
|
};
|
|
81
|
-
}, [
|
|
82
|
-
isActive,
|
|
83
|
-
isWaiting,
|
|
84
|
-
isInteractiveShellWaiting,
|
|
85
|
-
customPhrases,
|
|
86
|
-
loadingPhrases,
|
|
87
|
-
showShellFocusHint,
|
|
88
|
-
]);
|
|
78
|
+
}, [isActive, isWaiting, shouldShowFocusHint, customPhrases, loadingPhrases]);
|
|
89
79
|
return currentLoadingPhrase;
|
|
90
80
|
};
|
|
91
81
|
//# sourceMappingURL=usePhraseCycler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePhraseCycler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"usePhraseCycler.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,12 +8,12 @@ import { describe, it, expect, vi, beforeEach, afterEach } from 'vitest';
|
|
|
8
8
|
import { act } from 'react';
|
|
9
9
|
import { render } from '../../test-utils/render.js';
|
|
10
10
|
import { Text } from 'ink';
|
|
11
|
-
import { usePhraseCycler, PHRASE_CHANGE_INTERVAL_MS,
|
|
11
|
+
import { usePhraseCycler, PHRASE_CHANGE_INTERVAL_MS, } from './usePhraseCycler.js';
|
|
12
12
|
import { INFORMATIVE_TIPS } from '../constants/tips.js';
|
|
13
13
|
import { WITTY_LOADING_PHRASES } from '../constants/wittyPhrases.js';
|
|
14
14
|
// Test component to consume the hook
|
|
15
|
-
const TestComponent = ({ isActive, isWaiting, isInteractiveShellWaiting = false,
|
|
16
|
-
const phrase = usePhraseCycler(isActive, isWaiting, isInteractiveShellWaiting,
|
|
15
|
+
const TestComponent = ({ isActive, isWaiting, isInteractiveShellWaiting = false, customPhrases, }) => {
|
|
16
|
+
const phrase = usePhraseCycler(isActive, isWaiting, isInteractiveShellWaiting, customPhrases);
|
|
17
17
|
return _jsx(Text, { children: phrase });
|
|
18
18
|
};
|
|
19
19
|
describe('usePhraseCycler', () => {
|
|
@@ -34,56 +34,27 @@ describe('usePhraseCycler', () => {
|
|
|
34
34
|
await act(async () => {
|
|
35
35
|
await vi.advanceTimersByTimeAsync(0);
|
|
36
36
|
});
|
|
37
|
-
expect(lastFrame()).
|
|
37
|
+
expect(lastFrame()).toMatchSnapshot();
|
|
38
38
|
});
|
|
39
|
-
it('should show interactive shell waiting message when isInteractiveShellWaiting is true
|
|
40
|
-
vi.spyOn(Math, 'random').mockImplementation(() => 0.5); // Always witty
|
|
39
|
+
it('should show interactive shell waiting message immediately when isInteractiveShellWaiting is true', async () => {
|
|
41
40
|
const { lastFrame, rerender } = render(_jsx(TestComponent, { isActive: true, isWaiting: false }));
|
|
42
|
-
rerender(_jsx(TestComponent, { isActive: true, isWaiting: false, isInteractiveShellWaiting: true
|
|
41
|
+
rerender(_jsx(TestComponent, { isActive: true, isWaiting: false, isInteractiveShellWaiting: true }));
|
|
43
42
|
await act(async () => {
|
|
44
43
|
await vi.advanceTimersByTimeAsync(0);
|
|
45
44
|
});
|
|
46
|
-
|
|
47
|
-
expect([...WITTY_LOADING_PHRASES, ...INFORMATIVE_TIPS]).toContain(lastFrame());
|
|
48
|
-
await act(async () => {
|
|
49
|
-
await vi.advanceTimersByTimeAsync(5000);
|
|
50
|
-
});
|
|
51
|
-
expect(lastFrame()).toBe(INTERACTIVE_SHELL_WAITING_PHRASE);
|
|
52
|
-
});
|
|
53
|
-
it('should reset interactive shell waiting timer when lastOutputTime changes', async () => {
|
|
54
|
-
vi.spyOn(Math, 'random').mockImplementation(() => 0.5); // Always witty
|
|
55
|
-
const { lastFrame, rerender } = render(_jsx(TestComponent, { isActive: true, isWaiting: false, isInteractiveShellWaiting: true, lastOutputTime: 1000 }));
|
|
56
|
-
// Advance 3 seconds
|
|
57
|
-
await act(async () => {
|
|
58
|
-
await vi.advanceTimersByTimeAsync(3000);
|
|
59
|
-
});
|
|
60
|
-
// Should still be witty phrase or tip
|
|
61
|
-
expect([...WITTY_LOADING_PHRASES, ...INFORMATIVE_TIPS]).toContain(lastFrame());
|
|
62
|
-
// Update lastOutputTime
|
|
63
|
-
rerender(_jsx(TestComponent, { isActive: true, isWaiting: false, isInteractiveShellWaiting: true, lastOutputTime: 4000 }));
|
|
64
|
-
// Advance another 3 seconds (total 6s from start, but only 3s from last output)
|
|
65
|
-
await act(async () => {
|
|
66
|
-
await vi.advanceTimersByTimeAsync(3000);
|
|
67
|
-
});
|
|
68
|
-
// Should STILL be witty phrase or tip because timer reset
|
|
69
|
-
expect([...WITTY_LOADING_PHRASES, ...INFORMATIVE_TIPS]).toContain(lastFrame());
|
|
70
|
-
// Advance another 2 seconds (total 5s from last output)
|
|
71
|
-
await act(async () => {
|
|
72
|
-
await vi.advanceTimersByTimeAsync(2000);
|
|
73
|
-
});
|
|
74
|
-
expect(lastFrame()).toBe(INTERACTIVE_SHELL_WAITING_PHRASE);
|
|
45
|
+
expect(lastFrame()).toMatchSnapshot();
|
|
75
46
|
});
|
|
76
|
-
it('should prioritize interactive shell waiting over normal waiting
|
|
47
|
+
it('should prioritize interactive shell waiting over normal waiting immediately', async () => {
|
|
77
48
|
const { lastFrame, rerender } = render(_jsx(TestComponent, { isActive: true, isWaiting: true }));
|
|
78
49
|
await act(async () => {
|
|
79
50
|
await vi.advanceTimersByTimeAsync(0);
|
|
80
51
|
});
|
|
81
|
-
expect(lastFrame()).
|
|
82
|
-
rerender(_jsx(TestComponent, { isActive: true, isWaiting: true, isInteractiveShellWaiting: true
|
|
52
|
+
expect(lastFrame()).toMatchSnapshot();
|
|
53
|
+
rerender(_jsx(TestComponent, { isActive: true, isWaiting: true, isInteractiveShellWaiting: true }));
|
|
83
54
|
await act(async () => {
|
|
84
|
-
await vi.advanceTimersByTimeAsync(
|
|
55
|
+
await vi.advanceTimersByTimeAsync(0);
|
|
85
56
|
});
|
|
86
|
-
expect(lastFrame()).
|
|
57
|
+
expect(lastFrame()).toMatchSnapshot();
|
|
87
58
|
});
|
|
88
59
|
it('should not cycle phrases if isActive is false and not waiting', async () => {
|
|
89
60
|
const { lastFrame } = render(_jsx(TestComponent, { isActive: false, isWaiting: false }));
|
|
@@ -225,7 +196,7 @@ describe('usePhraseCycler', () => {
|
|
|
225
196
|
await act(async () => {
|
|
226
197
|
await vi.advanceTimersByTimeAsync(0);
|
|
227
198
|
});
|
|
228
|
-
expect(lastFrame()).
|
|
199
|
+
expect(lastFrame()).toMatchSnapshot();
|
|
229
200
|
// Go back to active cycling - should pick a phrase based on the logic (witty due to mock)
|
|
230
201
|
rerender(_jsx(TestComponent, { isActive: true, isWaiting: false }));
|
|
231
202
|
await act(async () => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"usePhraseCycler.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.test.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"usePhraseCycler.test.js","sourceRoot":"","sources":["../../../../src/ui/hooks/usePhraseCycler.test.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACzE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,yBAAyB,GAC1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAErE,qCAAqC;AACrC,MAAM,aAAa,GAAG,CAAC,EACrB,QAAQ,EACR,SAAS,EACT,yBAAyB,GAAG,KAAK,EACjC,aAAa,GAMd,EAAE,EAAE;IACH,MAAM,MAAM,GAAG,eAAe,CAC5B,QAAQ,EACR,SAAS,EACT,yBAAyB,EACzB,aAAa,CACd,CAAC;IACF,OAAO,KAAC,IAAI,cAAE,MAAM,GAAQ,CAAC;AAC/B,CAAC,CAAC;AAEF,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC/B,UAAU,CAAC,GAAG,EAAE;QACd,EAAE,CAAC,aAAa,EAAE,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,SAAS,CAAC,GAAG,EAAE;QACb,EAAE,CAAC,eAAe,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,GAAG,EAAE;QAC/E,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe;QACvE,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,aAAa,IAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,GAAI,CACrD,CAAC;QACF,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QACF,QAAQ,CAAC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAI,CAAC,CAAC;QAC7D,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,KAAK,IAAI,EAAE;QAChH,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QACF,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,KAAK,EAChB,yBAAyB,EAAE,IAAI,GAC/B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6EAA6E,EAAE,KAAK,IAAI,EAAE;QAC3F,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,GAAI,CACnD,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;QAEtC,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,IAAI,EACf,yBAAyB,EAAE,IAAI,GAC/B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,aAAa,IAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,GAAI,CACrD,CAAC;QACF,MAAM,aAAa,GAAG,SAAS,EAAE,CAAC;QAClC,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC1C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QAC1E,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,+BAA+B;QACxF,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QAEF,qDAAqD;QACrD,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,gBAAgB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAEhD,wDAAwD;QACxD,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,KAAK,IAAI,EAAE;QAClF,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,sCAAsC;QAC9F,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QACF,uFAAuF;QACvF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,oFAAoF;QAEpF,4FAA4F;QAC5F,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAErD,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACrF,MAAM,aAAa,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE;YAC/C,kEAAkE;YAClE,4BAA4B;YAC5B,+BAA+B;YAC/B,MAAM,GAAG,GAAG,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAC3C,SAAS,EAAE,CAAC;YACZ,OAAO,GAAG,CAAC;QACb,CAAC,CAAC,CAAC;QAEH,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IACZ,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QAEF,8HAA8H;QAC9H,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,CAAC,kEAAkE;QAClI,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sCAAsC;QAEpF,+DAA+D;QAC/D,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sCAAsC;QAEpF,mDAAmD;QACnD,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,KAAK,EACf,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,oDAAoD;QACpD,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAE7C,4FAA4F;QAC5F,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,CAAC,8DAA8D;QAC9H,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sCAAsC;IACtF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,qDAAqD,EAAE,GAAG,EAAE;QAC7D,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CACxB,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QACF,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QAC3D,OAAO,EAAE,CAAC;QACV,MAAM,CAAC,gBAAgB,CAAC,CAAC,oBAAoB,EAAE,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,yCAAyC,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,aAAa,GAAG,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;QAC7D,MAAM,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE5C,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QAEF,qDAAqD;QACrD,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC9B,QAAQ,CACN,KAAC,aAAa,IACZ,QAAQ,EAAE,IAAI,EACd,SAAS,EAAE,KAAK,EAChB,aAAa,EAAE,aAAa,GAC5B,CACH,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,GAAG,GAAG,CAAC,CAAC;QACrE,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAE7C,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,aAAa,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAE7C,oCAAoC;QACpC,UAAU,CAAC,WAAW,EAAE,CAAC;QACzB,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe;QAE9D,QAAQ,CACN,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,GAAI,CACvE,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,CAAC,uBAAuB;QACvF,CAAC,CAAC,CAAC;QAEH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,wEAAwE,EAAE,KAAK,IAAI,EAAE;QACtF,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,sCAAsC;QAC9F,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAC1B,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,GAAI,CACvE,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;QACzE,CAAC,CAAC,CAAC;QACH,oFAAoF;QAEpF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,CAAC,wBAAwB;QACxF,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,+DAA+D,EAAE,KAAK,IAAI,EAAE;QAC7E,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,sCAAsC;QAC9F,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,CACpC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CACpD,CAAC;QACF,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC,CAAC,iCAAiC;QACzE,CAAC,CAAC,CAAC;QACH,oFAAoF;QAEpF,4DAA4D;QAC5D,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;QAErD,sBAAsB;QACtB,QAAQ,CAAC,KAAC,aAAa,IAAC,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,GAAI,CAAC,CAAC;QAC9D,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,CAAC,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC;QAEtC,0FAA0F;QAC1F,QAAQ,CAAC,KAAC,aAAa,IAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,GAAI,CAAC,CAAC;QAC9D,MAAM,GAAG,CAAC,KAAK,IAAI,EAAE;YACnB,MAAM,EAAE,CAAC,wBAAwB,CAAC,yBAAyB,CAAC,CAAC,CAAC,mCAAmC;QACnG,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,qBAAqB,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -7,6 +7,7 @@ export interface SelectionListItem<T> {
|
|
|
7
7
|
key: string;
|
|
8
8
|
value: T;
|
|
9
9
|
disabled?: boolean;
|
|
10
|
+
hideNumber?: boolean;
|
|
10
11
|
}
|
|
11
12
|
export interface UseSelectionListOptions<T> {
|
|
12
13
|
items: Array<SelectionListItem<T>>;
|
|
@@ -15,6 +16,8 @@ export interface UseSelectionListOptions<T> {
|
|
|
15
16
|
onHighlight?: (value: T) => void;
|
|
16
17
|
isFocused?: boolean;
|
|
17
18
|
showNumbers?: boolean;
|
|
19
|
+
wrapAround?: boolean;
|
|
20
|
+
focusKey?: string;
|
|
18
21
|
}
|
|
19
22
|
export interface UseSelectionListResult {
|
|
20
23
|
activeIndex: number;
|
|
@@ -31,4 +34,4 @@ export interface UseSelectionListResult {
|
|
|
31
34
|
* - Handles disabled items (skips them during navigation)
|
|
32
35
|
* - Wrapping navigation (last to first, first to last)
|
|
33
36
|
*/
|
|
34
|
-
export declare function useSelectionList<T>({ items, initialIndex, onSelect, onHighlight, isFocused, showNumbers, }: UseSelectionListOptions<T>): UseSelectionListResult;
|
|
37
|
+
export declare function useSelectionList<T>({ items, initialIndex, onSelect, onHighlight, isFocused, showNumbers, wrapAround, focusKey, }: UseSelectionListOptions<T>): UseSelectionListResult;
|