@umsai/ums-code 0.1.4-v2 → 0.3.0-v1
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/dist/package.json +11 -3
- package/dist/src/config/config.d.ts +6 -0
- package/dist/src/config/config.js +102 -11
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/settings.d.ts +5 -0
- package/dist/src/config/settings.js +15 -1
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +75 -17
- package/dist/src/config/settingsSchema.js +57 -17
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/webSearch.d.ts +35 -0
- package/dist/src/config/webSearch.js +87 -0
- package/dist/src/config/webSearch.js.map +1 -0
- package/dist/src/core/auth.d.ts +1 -1
- package/dist/src/core/auth.js +19 -3
- package/dist/src/core/auth.js.map +1 -1
- package/dist/src/core/initializer.js +13 -2
- package/dist/src/core/initializer.js.map +1 -1
- package/dist/src/core/theme.js +4 -1
- package/dist/src/core/theme.js.map +1 -1
- package/dist/src/gemini.d.ts +1 -1
- package/dist/src/gemini.js +53 -44
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/gemini.test.js +117 -0
- 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/i18n/index.d.ts +18 -0
- package/dist/src/i18n/index.js +184 -0
- package/dist/src/i18n/index.js.map +1 -0
- package/dist/src/i18n/locales/en.js +1129 -0
- package/dist/src/i18n/locales/zh.js +1052 -0
- package/dist/src/nonInteractive/control/ControlContext.d.ts +63 -0
- package/dist/src/nonInteractive/control/ControlContext.js +31 -0
- package/dist/src/nonInteractive/control/ControlContext.js.map +1 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.d.ts +86 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.js +238 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.js.map +1 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.test.d.ts +6 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.test.js +549 -0
- package/dist/src/nonInteractive/control/ControlDispatcher.test.js.map +1 -0
- package/dist/src/nonInteractive/control/ControlService.d.ts +78 -0
- package/dist/src/nonInteractive/control/ControlService.js +154 -0
- package/dist/src/nonInteractive/control/ControlService.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/baseController.d.ts +50 -0
- package/dist/src/nonInteractive/control/controllers/baseController.js +102 -0
- package/dist/src/nonInteractive/control/controllers/baseController.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/hookController.d.ts +25 -0
- package/dist/src/nonInteractive/control/controllers/hookController.js +42 -0
- package/dist/src/nonInteractive/control/controllers/hookController.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/mcpController.d.ts +42 -0
- package/dist/src/nonInteractive/control/controllers/mcpController.js +205 -0
- package/dist/src/nonInteractive/control/controllers/mcpController.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/permissionController.d.ts +78 -0
- package/dist/src/nonInteractive/control/controllers/permissionController.js +358 -0
- package/dist/src/nonInteractive/control/controllers/permissionController.js.map +1 -0
- package/dist/src/nonInteractive/control/controllers/systemController.d.ts +56 -0
- package/dist/src/nonInteractive/control/controllers/systemController.js +166 -0
- package/dist/src/nonInteractive/control/controllers/systemController.js.map +1 -0
- package/dist/src/nonInteractive/control/types/serviceAPIs.d.ts +120 -0
- package/dist/src/nonInteractive/control/types/serviceAPIs.js +7 -0
- package/dist/src/nonInteractive/control/types/serviceAPIs.js.map +1 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.d.ts +446 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js +891 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.js.map +1 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.d.ts +6 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js +1197 -0
- package/dist/src/nonInteractive/io/BaseJsonOutputAdapter.test.js.map +1 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.d.ts +29 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.js +56 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.js.map +1 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.test.d.ts +6 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.test.js +624 -0
- package/dist/src/nonInteractive/io/JsonOutputAdapter.test.js.map +1 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.d.ts +16 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.js +54 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.js.map +1 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.test.d.ts +6 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.test.js +178 -0
- package/dist/src/nonInteractive/io/StreamJsonInputReader.test.js.map +1 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.d.ts +69 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.js +185 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.js.map +1 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.d.ts +6 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js +808 -0
- package/dist/src/nonInteractive/io/StreamJsonOutputAdapter.test.js.map +1 -0
- package/dist/src/nonInteractive/session.d.ts +23 -0
- package/dist/src/nonInteractive/session.js +549 -0
- package/dist/src/nonInteractive/session.js.map +1 -0
- package/dist/src/nonInteractive/session.test.d.ts +6 -0
- package/dist/src/nonInteractive/session.test.js +407 -0
- package/dist/src/nonInteractive/session.test.js.map +1 -0
- package/dist/src/nonInteractive/types.d.ts +344 -0
- package/dist/src/nonInteractive/types.js +78 -0
- package/dist/src/nonInteractive/types.js.map +1 -0
- package/dist/src/nonInteractiveCli.d.ts +21 -1
- package/dist/src/nonInteractiveCli.js +204 -57
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/nonInteractiveCliCommands.d.ts +19 -1
- package/dist/src/nonInteractiveCliCommands.js +69 -4
- 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 +4 -1
- package/dist/src/services/FileCommandLoader.js.map +1 -1
- package/dist/src/ui/AppContainer.js +41 -38
- package/dist/src/ui/AppContainer.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.d.ts +1 -13
- package/dist/src/ui/auth/AuthDialog.js +41 -111
- package/dist/src/ui/auth/AuthDialog.js.map +1 -1
- package/dist/src/ui/auth/AuthDialog.test.js +49 -19
- package/dist/src/ui/auth/AuthDialog.test.js.map +1 -1
- package/dist/src/ui/auth/AuthInProgress.js +2 -1
- package/dist/src/ui/auth/AuthInProgress.js.map +1 -1
- package/dist/src/ui/auth/useAuth.d.ts +9 -8
- package/dist/src/ui/auth/useAuth.js +135 -63
- package/dist/src/ui/auth/useAuth.js.map +1 -1
- package/dist/src/ui/commands/aboutCommand.js +7 -31
- package/dist/src/ui/commands/aboutCommand.js.map +1 -1
- package/dist/src/ui/commands/agentsCommand.js +10 -3
- package/dist/src/ui/commands/agentsCommand.js.map +1 -1
- package/dist/src/ui/commands/approvalModeCommand.js +8 -329
- package/dist/src/ui/commands/approvalModeCommand.js.map +1 -1
- package/dist/src/ui/commands/approvalModeCommand.test.js +19 -263
- package/dist/src/ui/commands/approvalModeCommand.test.js.map +1 -1
- package/dist/src/ui/commands/authCommand.js +4 -1
- package/dist/src/ui/commands/authCommand.js.map +1 -1
- package/dist/src/ui/commands/bugCommand.js +13 -47
- package/dist/src/ui/commands/bugCommand.js.map +1 -1
- package/dist/src/ui/commands/chatCommand.js +51 -25
- package/dist/src/ui/commands/chatCommand.js.map +1 -1
- package/dist/src/ui/commands/clearCommand.js +6 -3
- package/dist/src/ui/commands/clearCommand.js.map +1 -1
- package/dist/src/ui/commands/compressCommand.js +9 -4
- package/dist/src/ui/commands/compressCommand.js.map +1 -1
- package/dist/src/ui/commands/copyCommand.js +4 -1
- package/dist/src/ui/commands/copyCommand.js.map +1 -1
- package/dist/src/ui/commands/directoryCommand.js +30 -12
- package/dist/src/ui/commands/directoryCommand.js.map +1 -1
- package/dist/src/ui/commands/docsCommand.js +9 -3
- package/dist/src/ui/commands/docsCommand.js.map +1 -1
- package/dist/src/ui/commands/editorCommand.js +4 -1
- package/dist/src/ui/commands/editorCommand.js.map +1 -1
- package/dist/src/ui/commands/extensionsCommand.js +10 -3
- package/dist/src/ui/commands/extensionsCommand.js.map +1 -1
- package/dist/src/ui/commands/helpCommand.js +4 -1
- package/dist/src/ui/commands/helpCommand.js.map +1 -1
- package/dist/src/ui/commands/ideCommand.js +23 -7
- package/dist/src/ui/commands/ideCommand.js.map +1 -1
- package/dist/src/ui/commands/initCommand.js +5 -3
- package/dist/src/ui/commands/initCommand.js.map +1 -1
- package/dist/src/ui/commands/languageCommand.d.ts +7 -0
- package/dist/src/ui/commands/languageCommand.js +386 -0
- package/dist/src/ui/commands/languageCommand.js.map +1 -0
- package/dist/src/ui/commands/mcpCommand.js +38 -18
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/commands/memoryCommand.js +54 -25
- package/dist/src/ui/commands/memoryCommand.js.map +1 -1
- package/dist/src/ui/commands/modelCommand.js +9 -4
- package/dist/src/ui/commands/modelCommand.js.map +1 -1
- package/dist/src/ui/commands/permissionsCommand.js +4 -1
- package/dist/src/ui/commands/permissionsCommand.js.map +1 -1
- package/dist/src/ui/commands/quitCommand.js +7 -2
- package/dist/src/ui/commands/quitCommand.js.map +1 -1
- package/dist/src/ui/commands/settingsCommand.js +4 -1
- package/dist/src/ui/commands/settingsCommand.js.map +1 -1
- package/dist/src/ui/commands/setupGithubCommand.js +4 -1
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/statsCommand.js +11 -4
- package/dist/src/ui/commands/statsCommand.js.map +1 -1
- package/dist/src/ui/commands/summaryCommand.js +15 -8
- package/dist/src/ui/commands/summaryCommand.js.map +1 -1
- package/dist/src/ui/commands/terminalSetupCommand.js +9 -3
- package/dist/src/ui/commands/terminalSetupCommand.js.map +1 -1
- package/dist/src/ui/commands/themeCommand.js +4 -1
- package/dist/src/ui/commands/themeCommand.js.map +1 -1
- package/dist/src/ui/commands/toolsCommand.js +5 -2
- package/dist/src/ui/commands/toolsCommand.js.map +1 -1
- package/dist/src/ui/commands/types.d.ts +1 -1
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/commands/vimCommand.js +4 -1
- package/dist/src/ui/commands/vimCommand.js.map +1 -1
- package/dist/src/ui/components/AboutBox.d.ts +2 -9
- package/dist/src/ui/components/AboutBox.js +6 -2
- package/dist/src/ui/components/AboutBox.js.map +1 -1
- package/dist/src/ui/components/ApprovalModeDialog.d.ts +21 -0
- package/dist/src/ui/components/ApprovalModeDialog.js +68 -0
- package/dist/src/ui/components/ApprovalModeDialog.js.map +1 -0
- package/dist/src/ui/components/AutoAcceptIndicator.js +7 -6
- package/dist/src/ui/components/AutoAcceptIndicator.js.map +1 -1
- package/dist/src/ui/components/Composer.js +4 -3
- package/dist/src/ui/components/Composer.js.map +1 -1
- package/dist/src/ui/components/ConfigInitDisplay.js +7 -3
- package/dist/src/ui/components/ConfigInitDisplay.js.map +1 -1
- package/dist/src/ui/components/ContextSummaryDisplay.js +33 -9
- package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/DialogManager.js +60 -13
- package/dist/src/ui/components/DialogManager.js.map +1 -1
- package/dist/src/ui/components/EditorSettingsDialog.js +8 -3
- package/dist/src/ui/components/EditorSettingsDialog.js.map +1 -1
- package/dist/src/ui/components/Help.js +14 -4
- 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/HistoryItemDisplay.test.js +17 -8
- package/dist/src/ui/components/HistoryItemDisplay.test.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +10 -136
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.js +6 -1
- package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
- package/dist/src/ui/components/ModelDialog.js +2 -1
- package/dist/src/ui/components/ModelDialog.js.map +1 -1
- package/dist/src/ui/components/ModelStatsDisplay.js +6 -5
- package/dist/src/ui/components/ModelStatsDisplay.js.map +1 -1
- package/dist/src/ui/components/OpenAIKeyPrompt.d.ts +19 -1
- package/dist/src/ui/components/OpenAIKeyPrompt.js +38 -6
- package/dist/src/ui/components/OpenAIKeyPrompt.js.map +1 -1
- package/dist/src/ui/components/ProQuotaDialog.js +5 -4
- package/dist/src/ui/components/ProQuotaDialog.js.map +1 -1
- package/dist/src/ui/components/QuitConfirmationDialog.js +6 -5
- package/dist/src/ui/components/QuitConfirmationDialog.js.map +1 -1
- package/dist/src/ui/components/QwenOAuthProgress.d.ts +2 -2
- package/dist/src/ui/components/QwenOAuthProgress.js +14 -7
- package/dist/src/ui/components/QwenOAuthProgress.js.map +1 -1
- package/dist/src/ui/components/QwenOAuthProgress.test.js +1 -0
- package/dist/src/ui/components/QwenOAuthProgress.test.js.map +1 -1
- package/dist/src/ui/components/SessionSummaryDisplay.js +2 -1
- package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +3 -1
- package/dist/src/ui/components/SettingsDialog.js +35 -12
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.test.js +5 -4
- package/dist/src/ui/components/SettingsDialog.test.js.map +1 -1
- package/dist/src/ui/components/ShellConfirmationDialog.js +5 -4
- package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
- package/dist/src/ui/components/StatsDisplay.js +5 -4
- package/dist/src/ui/components/StatsDisplay.js.map +1 -1
- package/dist/src/ui/components/ThemeDialog.js +5 -2
- package/dist/src/ui/components/ThemeDialog.js.map +1 -1
- package/dist/src/ui/components/ToolStatsDisplay.js +3 -2
- package/dist/src/ui/components/ToolStatsDisplay.js.map +1 -1
- package/dist/src/ui/components/WelcomeBackDialog.js +13 -4
- package/dist/src/ui/components/WelcomeBackDialog.js.map +1 -1
- package/dist/src/ui/components/messages/CompressionMessage.js +10 -6
- package/dist/src/ui/components/messages/CompressionMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +40 -29
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.test.js +1 -1
- package/dist/src/ui/components/shared/BaseSelectionList.test.js.map +1 -1
- package/dist/src/ui/components/shared/ScopeSelector.js +3 -1
- package/dist/src/ui/components/shared/ScopeSelector.js.map +1 -1
- package/dist/src/ui/components/subagents/create/AgentCreationWizard.js +39 -26
- package/dist/src/ui/components/subagents/create/AgentCreationWizard.js.map +1 -1
- package/dist/src/ui/components/subagents/create/CreationSummary.js +20 -10
- package/dist/src/ui/components/subagents/create/CreationSummary.js.map +1 -1
- package/dist/src/ui/components/subagents/create/DescriptionInput.js +6 -3
- package/dist/src/ui/components/subagents/create/DescriptionInput.js.map +1 -1
- package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js +7 -2
- package/dist/src/ui/components/subagents/create/GenerationMethodSelector.js.map +1 -1
- package/dist/src/ui/components/subagents/create/LocationSelector.js +7 -2
- package/dist/src/ui/components/subagents/create/LocationSelector.js.map +1 -1
- package/dist/src/ui/components/subagents/create/ToolSelector.js +8 -7
- package/dist/src/ui/components/subagents/create/ToolSelector.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js +29 -4
- package/dist/src/ui/components/subagents/manage/ActionSelectionStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js +6 -3
- package/dist/src/ui/components/subagents/manage/AgentDeleteStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentEditStep.js +14 -5
- package/dist/src/ui/components/subagents/manage/AgentEditStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js +13 -6
- package/dist/src/ui/components/subagents/manage/AgentSelectionStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentViewerStep.js +3 -2
- package/dist/src/ui/components/subagents/manage/AgentViewerStep.js.map +1 -1
- package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js +14 -13
- package/dist/src/ui/components/subagents/manage/AgentsManagerDialog.js.map +1 -1
- package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js +8 -8
- package/dist/src/ui/components/views/McpStatus.js +28 -15
- package/dist/src/ui/components/views/McpStatus.js.map +1 -1
- package/dist/src/ui/components/views/ToolsList.js +2 -1
- package/dist/src/ui/components/views/ToolsList.js.map +1 -1
- package/dist/src/ui/contexts/UIActionsContext.d.ts +5 -4
- package/dist/src/ui/contexts/UIActionsContext.js +1 -0
- package/dist/src/ui/contexts/UIActionsContext.js.map +1 -1
- package/dist/src/ui/contexts/UIStateContext.d.ts +5 -7
- package/dist/src/ui/contexts/UIStateContext.js.map +1 -1
- package/dist/src/ui/editors/editorSettingsManager.js +1 -0
- package/dist/src/ui/editors/editorSettingsManager.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.test.js +2 -0
- package/dist/src/ui/hooks/atCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +1 -0
- package/dist/src/ui/hooks/slashCommandProcessor.js +4 -7
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useApprovalModeCommand.d.ts +14 -0
- package/dist/src/ui/hooks/useApprovalModeCommand.js +33 -0
- package/dist/src/ui/hooks/useApprovalModeCommand.js.map +1 -0
- package/dist/src/ui/hooks/useAttentionNotifications.d.ts +14 -0
- package/dist/src/ui/hooks/useAttentionNotifications.js +41 -0
- package/dist/src/ui/hooks/useAttentionNotifications.js.map +1 -0
- package/dist/src/ui/hooks/useAttentionNotifications.test.d.ts +6 -0
- package/dist/src/ui/hooks/useAttentionNotifications.test.js +113 -0
- package/dist/src/ui/hooks/useAttentionNotifications.test.js.map +1 -0
- package/dist/src/ui/hooks/useCommandCompletion.d.ts +1 -4
- package/dist/src/ui/hooks/useCommandCompletion.js +1 -23
- package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useDialogClose.d.ts +6 -3
- package/dist/src/ui/hooks/useDialogClose.js +5 -0
- package/dist/src/ui/hooks/useDialogClose.js.map +1 -1
- package/dist/src/ui/hooks/useGitBranchName.js +6 -3
- package/dist/src/ui/hooks/useGitBranchName.js.map +1 -1
- package/dist/src/ui/hooks/useGitBranchName.test.js +39 -21
- package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
- package/dist/src/ui/hooks/useInitializationAuthError.d.ts +22 -0
- package/dist/src/ui/hooks/useInitializationAuthError.js +40 -0
- package/dist/src/ui/hooks/useInitializationAuthError.js.map +1 -0
- package/dist/src/ui/hooks/usePhraseCycler.js +6 -4
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/ui/hooks/useQwenAuth.d.ts +7 -12
- package/dist/src/ui/hooks/useQwenAuth.js +4 -8
- package/dist/src/ui/hooks/useQwenAuth.js.map +1 -1
- package/dist/src/ui/hooks/useQwenAuth.test.js +72 -98
- package/dist/src/ui/hooks/useQwenAuth.test.js.map +1 -1
- package/dist/src/ui/hooks/useThemeCommand.js +8 -3
- package/dist/src/ui/hooks/useThemeCommand.js.map +1 -1
- package/dist/src/ui/models/availableModels.js +7 -2
- package/dist/src/ui/models/availableModels.js.map +1 -1
- package/dist/src/ui/types.d.ts +32 -14
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/clipboardUtils.js +3 -3
- package/dist/src/ui/utils/clipboardUtils.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.d.ts +16 -0
- package/dist/src/ui/utils/commandUtils.js +16 -1
- package/dist/src/ui/utils/commandUtils.js.map +1 -1
- package/dist/src/ui/utils/commandUtils.test.js +5 -2
- package/dist/src/ui/utils/commandUtils.test.js.map +1 -1
- package/dist/src/ui/utils/terminalSetup.js +45 -18
- package/dist/src/ui/utils/terminalSetup.js.map +1 -1
- package/dist/src/utils/attentionNotification.d.ts +20 -0
- package/dist/src/utils/attentionNotification.js +34 -0
- package/dist/src/utils/attentionNotification.js.map +1 -0
- package/dist/src/utils/attentionNotification.test.d.ts +6 -0
- package/dist/src/utils/attentionNotification.test.js +46 -0
- package/dist/src/utils/attentionNotification.test.js.map +1 -0
- package/dist/src/utils/dialogScopeUtils.d.ts +0 -4
- package/dist/src/utils/dialogScopeUtils.js +5 -2
- package/dist/src/utils/dialogScopeUtils.js.map +1 -1
- package/dist/src/utils/errors.d.ts +10 -2
- package/dist/src/utils/errors.js +14 -13
- package/dist/src/utils/errors.js.map +1 -1
- package/dist/src/utils/errors.test.js +91 -54
- package/dist/src/utils/errors.test.js.map +1 -1
- package/dist/src/utils/nonInteractiveHelpers.d.ts +88 -0
- package/dist/src/utils/nonInteractiveHelpers.js +470 -0
- package/dist/src/utils/nonInteractiveHelpers.js.map +1 -0
- package/dist/src/utils/nonInteractiveHelpers.test.d.ts +6 -0
- package/dist/src/utils/nonInteractiveHelpers.test.js +945 -0
- package/dist/src/utils/nonInteractiveHelpers.test.js.map +1 -0
- package/dist/src/utils/sandbox.js +1 -1
- package/dist/src/utils/sandbox.js.map +1 -1
- package/dist/src/utils/settingsUtils.js +7 -1
- package/dist/src/utils/settingsUtils.js.map +1 -1
- package/dist/src/utils/systemInfo.d.ts +66 -0
- package/dist/src/utils/systemInfo.js +125 -0
- package/dist/src/utils/systemInfo.js.map +1 -0
- package/dist/src/utils/systemInfo.test.d.ts +6 -0
- package/dist/src/utils/systemInfo.test.js +259 -0
- package/dist/src/utils/systemInfo.test.js.map +1 -0
- package/dist/src/utils/systemInfoFields.d.ts +22 -0
- package/dist/src/utils/systemInfoFields.js +96 -0
- package/dist/src/utils/systemInfoFields.js.map +1 -0
- package/dist/src/utils/userStartupWarnings.js +9 -4
- package/dist/src/utils/userStartupWarnings.js.map +1 -1
- package/dist/src/validateNonInterActiveAuth.js +27 -6
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/src/zed-integration/acp.js +1 -2
- package/dist/src/zed-integration/acp.js.map +1 -1
- package/dist/src/zed-integration/schema.d.ts +506 -264
- package/dist/src/zed-integration/schema.js +13 -0
- package/dist/src/zed-integration/schema.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.js +376 -32
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +12 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGpC,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"setupGithubCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/setupGithubCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAGpC,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,qBAAqB,GAAG;IACnC,qCAAqC;IACrC,oCAAoC;IACpC,gCAAgC;IAChC,0CAA0C;IAC1C,6BAA6B;CAC9B,CAAC;AAEF,2EAA2E;AAC3E,SAAS,mBAAmB,CAAC,SAAiB;IAC5C,8EAA8E;IAC9E,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IAEpC,+BAA+B;IAC/B,MAAM,UAAU,GAAG,CAAC,SAAS,CAAC,CAAC;IAE/B,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IACrC,IAAI,QAAQ,EAAE,CAAC;QACb,UAAU,CAAC,IAAI,CACb,sBAAsB,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,IAAI,2BAA2B,CACjF,CAAC;IACJ,CAAC;IAED,0CAA0C;IAC1C,MAAM,QAAQ,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC;IAChE,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,qDAAqD;AACrD,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,WAAmB;IACvD,MAAM,gBAAgB,GAAG,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;IAE1D,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;IAC3D,IAAI,CAAC;QACH,kDAAkD;QAClD,IAAI,eAAe,GAAG,EAAE,CAAC;QACzB,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC;YACH,eAAe,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,qBAAqB;YACrB,UAAU,GAAG,KAAK,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,8CAA8C;YAC9C,MAAM,cAAc,GAAG,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC1D,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QAC7D,CAAC;aAAM,CAAC;YACN,kCAAkC;YAClC,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,CAC5C,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,eAAe;iBACb,KAAK,CAAC,OAAO,CAAC;iBACd,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,KAAK,CAAC,CACzD,CAAC;YAEF,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,YAAY,GAAG,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;gBAC7D,MAAM,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,aAAa,EAAE,YAAY,CAAC,CAAC;YAC5D,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,6CAA6C;IAC/C,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAiB;IAC9C,IAAI,EAAE,cAAc;IACpB,IAAI,WAAW;QACb,OAAO,CAAC,CAAC,uBAAuB,CAAC,CAAC;IACpC,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EACX,OAAuB,EACY,EAAE;QACrC,MAAM,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;QAE9C,IAAI,CAAC,kBAAkB,EAAE,EAAE,CAAC;YAC1B,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,sCAAsC;QACtC,IAAI,WAAmB,CAAC;QACxB,IAAI,CAAC;YACH,WAAW,GAAG,cAAc,EAAE,CAAC;QACjC,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC;YACtD,MAAM,IAAI,KAAK,CACb,6FAA6F,CAC9F,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,MAAM,KAAK,GAAG,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;QACpD,MAAM,UAAU,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,SAAS,GAAG,gEAAgE,UAAU,wBAAwB,CAAC;QAErH,oEAAoE;QACpE,MAAM,kBAAkB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAC1E,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnE,CAAC;QAAC,OAAO,MAAM,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CACX,oBAAoB,kBAAkB,aAAa,EACnD,MAAM,CACP,CAAC;YACF,MAAM,IAAI,KAAK,CACb,oBAAoB,kBAAkB,oEAAoE,CAC3G,CAAC;QACJ,CAAC;QAED,4EAA4E;QAC5E,gCAAgC;QAChC,MAAM,SAAS,GAAG,EAAE,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,qBAAqB,EAAE,CAAC;YAC7C,SAAS,CAAC,IAAI,CACZ,CAAC,KAAK,IAAI,EAAE;gBACV,MAAM,QAAQ,GAAG,oFAAoF,UAAU,uBAAuB,QAAQ,EAAE,CAAC;gBACjJ,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,QAAQ,EAAE;oBACrC,MAAM,EAAE,KAAK;oBACb,UAAU,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS;oBACrD,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC;wBACtB,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;wBAC3B,eAAe,CAAC,MAAM;qBACvB,CAAC;iBACY,CAAC,CAAC;gBAElB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;oBACjB,MAAM,IAAI,KAAK,CACb,qCAAqC,QAAQ,KAAK,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,CAC7F,CAAC;gBACJ,CAAC;gBACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC3B,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,MAAM,IAAI,KAAK,CACb,gCAAgC,QAAQ,KAAK,QAAQ,CAAC,MAAM,MAAM,QAAQ,CAAC,UAAU,EAAE,CACxF,CAAC;gBACJ,CAAC;gBAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,kBAAkB,EAClB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CACxB,CAAC;gBAEF,MAAM,UAAU,GAAG,EAAE,CAAC,iBAAiB,CAAC,WAAW,EAAE;oBACnD,IAAI,EAAE,KAAK,EAAE,2CAA2C;oBACxD,KAAK,EAAE,GAAG,EAAE,sBAAsB;oBAClC,KAAK,EAAE,IAAI;iBACZ,CAAC,CAAC;gBAEH,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC;YAChD,CAAC,CAAC,EAAE,CACL,CAAC;QACJ,CAAC;QAED,qCAAqC;QACrC,MAAM,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;YACxC,0BAA0B;YAC1B,eAAe,CAAC,KAAK,EAAE,CAAC;QAC1B,CAAC,CAAC,CAAC;QAEH,iCAAiC;QACjC,MAAM,eAAe,CAAC,WAAW,CAAC,CAAC;QAEnC,sBAAsB;QACtB,MAAM,QAAQ,GAAG,EAAE,CAAC;QACpB,QAAQ,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;QACpC,QAAQ,CAAC,IAAI,CACX,iCAAiC,qBAAqB,CAAC,MAAM,0DAA0D,SAAS,wDAAwD,CACzL,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,SAAS,CAAC,CAAC,CAAC;QAEjD,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;QAC7C,OAAO;YACL,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,mBAAmB;YAC7B,QAAQ,EAAE;gBACR,WAAW,EACT,wEAAwE;gBAC1E,OAAO;aACR;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -6,9 +6,12 @@
|
|
|
6
6
|
import { MessageType } from '../types.js';
|
|
7
7
|
import { formatDuration } from '../utils/formatters.js';
|
|
8
8
|
import { CommandKind, } from './types.js';
|
|
9
|
+
import { t } from '../../i18n/index.js';
|
|
9
10
|
export const statsCommand = {
|
|
10
11
|
name: 'stats',
|
|
11
|
-
description
|
|
12
|
+
get description() {
|
|
13
|
+
return t('check session stats. Guide: /stats [model|tools]');
|
|
14
|
+
},
|
|
12
15
|
kind: CommandKind.BUILT_IN,
|
|
13
16
|
action: (context) => {
|
|
14
17
|
const now = new Date();
|
|
@@ -16,7 +19,7 @@ export const statsCommand = {
|
|
|
16
19
|
if (!sessionStartTime) {
|
|
17
20
|
context.ui.addItem({
|
|
18
21
|
type: MessageType.ERROR,
|
|
19
|
-
text: 'Session start time is unavailable, cannot calculate stats.',
|
|
22
|
+
text: t('Session start time is unavailable, cannot calculate stats.'),
|
|
20
23
|
}, Date.now());
|
|
21
24
|
return;
|
|
22
25
|
}
|
|
@@ -30,7 +33,9 @@ export const statsCommand = {
|
|
|
30
33
|
subCommands: [
|
|
31
34
|
{
|
|
32
35
|
name: 'model',
|
|
33
|
-
description
|
|
36
|
+
get description() {
|
|
37
|
+
return t('Show model-specific usage statistics.');
|
|
38
|
+
},
|
|
34
39
|
kind: CommandKind.BUILT_IN,
|
|
35
40
|
action: (context) => {
|
|
36
41
|
context.ui.addItem({
|
|
@@ -40,7 +45,9 @@ export const statsCommand = {
|
|
|
40
45
|
},
|
|
41
46
|
{
|
|
42
47
|
name: 'tools',
|
|
43
|
-
description
|
|
48
|
+
get description() {
|
|
49
|
+
return t('Show tool-specific usage statistics.');
|
|
50
|
+
},
|
|
44
51
|
kind: CommandKind.BUILT_IN,
|
|
45
52
|
action: (context) => {
|
|
46
53
|
context.ui.addItem({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"statsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/statsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"statsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/statsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,IAAI,WAAW;QACb,OAAO,CAAC,CAAC,kDAAkD,CAAC,CAAC;IAC/D,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,CAAC,OAAuB,EAAE,EAAE;QAClC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;QACnD,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,CAAC,CAAC,4DAA4D,CAAC;aACtE,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QACD,MAAM,YAAY,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,gBAAgB,CAAC,OAAO,EAAE,CAAC;QAEhE,MAAM,SAAS,GAAqB;YAClC,IAAI,EAAE,WAAW,CAAC,KAAK;YACvB,QAAQ,EAAE,cAAc,CAAC,YAAY,CAAC;SACvC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC5C,CAAC;IACD,WAAW,EAAE;QACX;YACE,IAAI,EAAE,OAAO;YACb,IAAI,WAAW;gBACb,OAAO,CAAC,CAAC,uCAAuC,CAAC,CAAC;YACpD,CAAC;YACD,IAAI,EAAE,WAAW,CAAC,QAAQ;YAC1B,MAAM,EAAE,CAAC,OAAuB,EAAE,EAAE;gBAClC,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;oBACE,IAAI,EAAE,WAAW,CAAC,WAAW;iBAC9B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;SACF;QACD;YACE,IAAI,EAAE,OAAO;YACb,IAAI,WAAW;gBACb,OAAO,CAAC,CAAC,sCAAsC,CAAC,CAAC;YACnD,CAAC;YACD,IAAI,EAAE,WAAW,CAAC,QAAQ;YAC1B,MAAM,EAAE,CAAC,OAAuB,EAAE,EAAE;gBAClC,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;oBACE,IAAI,EAAE,WAAW,CAAC,UAAU;iBAC7B,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACJ,CAAC;SACF;KACF;CACF,CAAC"}
|
|
@@ -7,9 +7,12 @@ import * as fsPromises from 'fs/promises';
|
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { CommandKind, } from './types.js';
|
|
9
9
|
import { getProjectSummaryPrompt } from '@umsai/ums-code-core';
|
|
10
|
+
import { t } from '../../i18n/index.js';
|
|
10
11
|
export const summaryCommand = {
|
|
11
12
|
name: 'summary',
|
|
12
|
-
description
|
|
13
|
+
get description() {
|
|
14
|
+
return t('Generate a project summary and save it to .ums/PROJECT_SUMMARY.md');
|
|
15
|
+
},
|
|
13
16
|
kind: CommandKind.BUILT_IN,
|
|
14
17
|
action: async (context) => {
|
|
15
18
|
const { config } = context.services;
|
|
@@ -18,7 +21,7 @@ export const summaryCommand = {
|
|
|
18
21
|
return {
|
|
19
22
|
type: 'message',
|
|
20
23
|
messageType: 'error',
|
|
21
|
-
content: 'Config not loaded.',
|
|
24
|
+
content: t('Config not loaded.'),
|
|
22
25
|
};
|
|
23
26
|
}
|
|
24
27
|
const geminiClient = config.getGeminiClient();
|
|
@@ -26,19 +29,19 @@ export const summaryCommand = {
|
|
|
26
29
|
return {
|
|
27
30
|
type: 'message',
|
|
28
31
|
messageType: 'error',
|
|
29
|
-
content: 'No chat client available to generate summary.',
|
|
32
|
+
content: t('No chat client available to generate summary.'),
|
|
30
33
|
};
|
|
31
34
|
}
|
|
32
35
|
// Check if already generating summary
|
|
33
36
|
if (ui.pendingItem) {
|
|
34
37
|
ui.addItem({
|
|
35
38
|
type: 'error',
|
|
36
|
-
text: 'Already generating summary, wait for previous request to complete',
|
|
39
|
+
text: t('Already generating summary, wait for previous request to complete'),
|
|
37
40
|
}, Date.now());
|
|
38
41
|
return {
|
|
39
42
|
type: 'message',
|
|
40
43
|
messageType: 'error',
|
|
41
|
-
content: 'Already generating summary, wait for previous request to complete',
|
|
44
|
+
content: t('Already generating summary, wait for previous request to complete'),
|
|
42
45
|
};
|
|
43
46
|
}
|
|
44
47
|
try {
|
|
@@ -49,7 +52,7 @@ export const summaryCommand = {
|
|
|
49
52
|
return {
|
|
50
53
|
type: 'message',
|
|
51
54
|
messageType: 'info',
|
|
52
|
-
content: 'No conversation found to summarize.',
|
|
55
|
+
content: t('No conversation found to summarize.'),
|
|
53
56
|
};
|
|
54
57
|
}
|
|
55
58
|
// Show loading state
|
|
@@ -136,12 +139,16 @@ export const summaryCommand = {
|
|
|
136
139
|
ui.setPendingItem(null);
|
|
137
140
|
ui.addItem({
|
|
138
141
|
type: 'error',
|
|
139
|
-
text: `❌ Failed to generate project context summary:
|
|
142
|
+
text: `❌ ${t('Failed to generate project context summary: {{error}}', {
|
|
143
|
+
error: error instanceof Error ? error.message : String(error),
|
|
144
|
+
})}`,
|
|
140
145
|
}, Date.now());
|
|
141
146
|
return {
|
|
142
147
|
type: 'message',
|
|
143
148
|
messageType: 'error',
|
|
144
|
-
content:
|
|
149
|
+
content: t('Failed to generate project context summary: {{error}}', {
|
|
150
|
+
error: error instanceof Error ? error.message : String(error),
|
|
151
|
+
}),
|
|
145
152
|
};
|
|
146
153
|
}
|
|
147
154
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"summaryCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/summaryCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAC1C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAEL,WAAW,GAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"summaryCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/summaryCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,UAAU,MAAM,aAAa,CAAC;AAC1C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAEL,WAAW,GAEZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,cAAc,GAAiB;IAC1C,IAAI,EAAE,SAAS;IACf,IAAI,WAAW;QACb,OAAO,CAAC,CACN,mEAAmE,CACpE,CAAC;IACJ,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAqC,EAAE;QAC3D,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,CAAC;QACpC,MAAM,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,OAAO;gBACpB,OAAO,EAAE,CAAC,CAAC,oBAAoB,CAAC;aACjC,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,eAAe,EAAE,CAAC;QAC9C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,OAAO;gBACpB,OAAO,EAAE,CAAC,CAAC,+CAA+C,CAAC;aAC5D,CAAC;QACJ,CAAC;QAED,sCAAsC;QACtC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YACnB,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,OAAgB;gBACtB,IAAI,EAAE,CAAC,CACL,mEAAmE,CACpE;aACF,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,OAAO;gBACpB,OAAO,EAAE,CAAC,CACR,mEAAmE,CACpE;aACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,+BAA+B;YAC/B,MAAM,IAAI,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAElC,IAAI,OAAO,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACxB,OAAO;oBACL,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,MAAM;oBACnB,OAAO,EAAE,CAAC,CAAC,qCAAqC,CAAC;iBAClD,CAAC;YACJ,CAAC;YAED,qBAAqB;YACrB,MAAM,cAAc,GAAuB;gBACzC,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE;oBACP,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,YAAY;iBACpB;aACF,CAAC;YACF,EAAE,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YAElC,wDAAwD;YACxD,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACpD,IAAI,EAAE,OAAO,CAAC,IAAI;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC,CAAC,CAAC;YAEJ,mDAAmD;YACnD,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,eAAe,CACjD;gBACE,GAAG,mBAAmB;gBACtB;oBACE,IAAI,EAAE,MAAM;oBACZ,KAAK,EAAE;wBACL;4BACE,IAAI,EAAE,uBAAuB,EAAE;yBAChC;qBACF;iBACF;aACF,EACD,EAAE,EACF,IAAI,eAAe,EAAE,CAAC,MAAM,EAC5B,MAAM,CAAC,QAAQ,EAAE,CAClB,CAAC;YAEF,6BAA6B;YAC7B,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC;YAEvD,MAAM,eAAe,GACnB,KAAK;gBACH,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC;iBACzB,MAAM,CAAC,CAAC,IAAI,EAAkB,EAAE,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC;iBAC1D,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAEpB,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E,CAAC;YACJ,CAAC;YAED,iDAAiD;YACjD,EAAE,CAAC,cAAc,CAAC;gBAChB,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE;oBACP,SAAS,EAAE,IAAI;oBACf,KAAK,EAAE,QAAQ;iBAChB;aACF,CAAC,CAAC;YAEH,+BAA+B;YAC/B,MAAM,WAAW,GAAG,MAAM,CAAC,cAAc,EAAE,CAAC;YAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC/C,IAAI,CAAC;gBACH,MAAM,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;YAAC,OAAO,IAAI,EAAE,CAAC;gBACd,8CAA8C;YAChD,CAAC;YAED,yCAAyC;YACzC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;YAC7D,MAAM,cAAc,GAAG,GAAG,eAAe;;;;;mBAK5B,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;CAC1C,CAAC;YAEI,MAAM,UAAU,CAAC,SAAS,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,CAAC;YAEhE,8CAA8C;YAC9C,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACxB,MAAM,oBAAoB,GAAuB;gBAC/C,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE;oBACP,SAAS,EAAE,KAAK;oBAChB,KAAK,EAAE,WAAW;oBAClB,QAAQ,EAAE,yBAAyB;iBACpC;aACF,CAAC;YACF,EAAE,CAAC,OAAO,CAAC,oBAAoB,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAE7C,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,MAAM;gBACnB,OAAO,EAAE,EAAE,EAAE,0DAA0D;aACxE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,8BAA8B;YAC9B,EAAE,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACxB,EAAE,CAAC,OAAO,CACR;gBACE,IAAI,EAAE,OAAgB;gBACtB,IAAI,EAAE,KAAK,CAAC,CACV,uDAAuD,EACvD;oBACE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CACF,EAAE;aACJ,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YAEF,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,WAAW,EAAE,OAAO;gBACpB,OAAO,EAAE,CAAC,CAAC,uDAAuD,EAAE;oBAClE,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;iBAC9D,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { CommandKind } from './types.js';
|
|
7
7
|
import { terminalSetup } from '../utils/terminalSetup.js';
|
|
8
|
+
import { t } from '../../i18n/index.js';
|
|
8
9
|
/**
|
|
9
10
|
* Command to configure terminal keybindings for multiline input support.
|
|
10
11
|
*
|
|
@@ -13,7 +14,9 @@ import { terminalSetup } from '../utils/terminalSetup.js';
|
|
|
13
14
|
*/
|
|
14
15
|
export const terminalSetupCommand = {
|
|
15
16
|
name: 'terminal-setup',
|
|
16
|
-
description
|
|
17
|
+
get description() {
|
|
18
|
+
return t('Configure terminal keybindings for multiline input (VS Code, Cursor, Windsurf, Trae)');
|
|
19
|
+
},
|
|
17
20
|
kind: CommandKind.BUILT_IN,
|
|
18
21
|
action: async () => {
|
|
19
22
|
try {
|
|
@@ -21,7 +24,8 @@ export const terminalSetupCommand = {
|
|
|
21
24
|
let content = result.message;
|
|
22
25
|
if (result.requiresRestart) {
|
|
23
26
|
content +=
|
|
24
|
-
'\n\
|
|
27
|
+
'\n\n' +
|
|
28
|
+
t('Please restart your terminal for the changes to take effect.');
|
|
25
29
|
}
|
|
26
30
|
return {
|
|
27
31
|
type: 'message',
|
|
@@ -32,7 +36,9 @@ export const terminalSetupCommand = {
|
|
|
32
36
|
catch (error) {
|
|
33
37
|
return {
|
|
34
38
|
type: 'message',
|
|
35
|
-
content:
|
|
39
|
+
content: t('Failed to configure terminal: {{error}}', {
|
|
40
|
+
error: String(error),
|
|
41
|
+
}),
|
|
36
42
|
messageType: 'error',
|
|
37
43
|
};
|
|
38
44
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminalSetupCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/terminalSetupCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"terminalSetupCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/terminalSetupCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC;;;;;GAKG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAiB;IAChD,IAAI,EAAE,gBAAgB;IACtB,IAAI,WAAW;QACb,OAAO,CAAC,CACN,sFAAsF,CACvF,CAAC;IACJ,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAE1B,MAAM,EAAE,KAAK,IAAkC,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;YAErC,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC7B,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;gBAC3B,OAAO;oBACL,MAAM;wBACN,CAAC,CAAC,8DAA8D,CAAC,CAAC;YACtE,CAAC;YAED,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO;gBACP,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO;aAC/C,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,CAAC,CAAC,yCAAyC,EAAE;oBACpD,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;iBACrB,CAAC;gBACF,WAAW,EAAE,OAAO;aACrB,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC"}
|
|
@@ -4,9 +4,12 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { CommandKind } from './types.js';
|
|
7
|
+
import { t } from '../../i18n/index.js';
|
|
7
8
|
export const themeCommand = {
|
|
8
9
|
name: 'theme',
|
|
9
|
-
description
|
|
10
|
+
get description() {
|
|
11
|
+
return t('change the theme');
|
|
12
|
+
},
|
|
10
13
|
kind: CommandKind.BUILT_IN,
|
|
11
14
|
action: (_context, _args) => ({
|
|
12
15
|
type: 'dialog',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"themeCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/themeCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"themeCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/themeCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,IAAI,WAAW;QACb,OAAO,CAAC,CAAC,kBAAkB,CAAC,CAAC;IAC/B,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,CAAC,QAAQ,EAAE,KAAK,EAA0B,EAAE,CAAC,CAAC;QACpD,IAAI,EAAE,QAAQ;QACd,MAAM,EAAE,OAAO;KAChB,CAAC;CACH,CAAC"}
|
|
@@ -5,9 +5,12 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { CommandKind, } from './types.js';
|
|
7
7
|
import { MessageType } from '../types.js';
|
|
8
|
+
import { t } from '../../i18n/index.js';
|
|
8
9
|
export const toolsCommand = {
|
|
9
10
|
name: 'tools',
|
|
10
|
-
description
|
|
11
|
+
get description() {
|
|
12
|
+
return t('list available UMS Code tools. Usage: /tools [desc]');
|
|
13
|
+
},
|
|
11
14
|
kind: CommandKind.BUILT_IN,
|
|
12
15
|
action: async (context, args) => {
|
|
13
16
|
const subCommand = args?.trim();
|
|
@@ -20,7 +23,7 @@ export const toolsCommand = {
|
|
|
20
23
|
if (!toolRegistry) {
|
|
21
24
|
context.ui.addItem({
|
|
22
25
|
type: MessageType.ERROR,
|
|
23
|
-
text: 'Could not retrieve tool registry.',
|
|
26
|
+
text: t('Could not retrieve tool registry.'),
|
|
24
27
|
}, Date.now());
|
|
25
28
|
return;
|
|
26
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/toolsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAA6B,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"toolsCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/toolsCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAGL,WAAW,GACZ,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,WAAW,EAA6B,MAAM,aAAa,CAAC;AACrE,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC,IAAI,EAAE,OAAO;IACb,IAAI,WAAW;QACb,OAAO,CAAC,CAAC,qDAAqD,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAuB,EAAE,IAAa,EAAiB,EAAE;QACtE,MAAM,UAAU,GAAG,IAAI,EAAE,IAAI,EAAE,CAAC;QAEhC,8EAA8E;QAC9E,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAChC,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;YAC3D,mBAAmB,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,MAAM,YAAY,GAAG,OAAO,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC;QAChE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,OAAO,CAAC,EAAE,CAAC,OAAO,CAChB;gBACE,IAAI,EAAE,WAAW,CAAC,KAAK;gBACvB,IAAI,EAAE,CAAC,CAAC,mCAAmC,CAAC;aAC7C,EACD,IAAI,CAAC,GAAG,EAAE,CACX,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,KAAK,GAAG,YAAY,CAAC,WAAW,EAAE,CAAC;QACzC,4EAA4E;QAC5E,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,IAAI,IAAI,CAAC,CAAC,CAAC;QAEpE,MAAM,aAAa,GAAyB;YAC1C,IAAI,EAAE,WAAW,CAAC,UAAU;YAC5B,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;gBAChC,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;aAC9B,CAAC,CAAC;YACH,gBAAgB,EAAE,mBAAmB;SACtC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAChD,CAAC;CACF,CAAC"}
|
|
@@ -98,7 +98,7 @@ export interface MessageActionReturn {
|
|
|
98
98
|
*/
|
|
99
99
|
export interface OpenDialogActionReturn {
|
|
100
100
|
type: 'dialog';
|
|
101
|
-
dialog: 'help' | 'auth' | 'theme' | 'editor' | 'settings' | 'model' | 'subagent_create' | 'subagent_list' | 'permissions';
|
|
101
|
+
dialog: 'help' | 'auth' | 'theme' | 'editor' | 'settings' | 'model' | 'subagent_create' | 'subagent_list' | 'permissions' | 'approval-mode';
|
|
102
102
|
}
|
|
103
103
|
/**
|
|
104
104
|
* The return type for a command action that results in replacing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui/commands/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/ui/commands/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAyLH,MAAM,CAAN,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,oCAAqB,CAAA;IACrB,4BAAa,CAAA;IACb,wCAAyB,CAAA;AAC3B,CAAC,EAJW,WAAW,KAAX,WAAW,QAItB"}
|
|
@@ -4,9 +4,12 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import { CommandKind } from './types.js';
|
|
7
|
+
import { t } from '../../i18n/index.js';
|
|
7
8
|
export const vimCommand = {
|
|
8
9
|
name: 'vim',
|
|
9
|
-
description
|
|
10
|
+
get description() {
|
|
11
|
+
return t('toggle vim mode on/off');
|
|
12
|
+
},
|
|
10
13
|
kind: CommandKind.BUILT_IN,
|
|
11
14
|
action: async (context, _args) => {
|
|
12
15
|
const newVimState = await context.ui.toggleVimEnabled();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vimCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/vimCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"vimCommand.js","sourceRoot":"","sources":["../../../../src/ui/commands/vimCommand.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAExC,MAAM,CAAC,MAAM,UAAU,GAAiB;IACtC,IAAI,EAAE,KAAK;IACX,IAAI,WAAW;QACb,OAAO,CAAC,CAAC,wBAAwB,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,EAAE,WAAW,CAAC,QAAQ;IAC1B,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QAC/B,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC;QAExD,MAAM,OAAO,GAAG,WAAW;YACzB,CAAC,CAAC,2CAA2C;YAC7C,CAAC,CAAC,kBAAkB,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,MAAM;YACnB,OAAO,EAAE,OAAO;SACjB,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -4,14 +4,7 @@
|
|
|
4
4
|
* SPDX-License-Identifier: Apache-2.0
|
|
5
5
|
*/
|
|
6
6
|
import type React from 'react';
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
osVersion: string;
|
|
10
|
-
sandboxEnv: string;
|
|
11
|
-
modelVersion: string;
|
|
12
|
-
selectedAuthType: string;
|
|
13
|
-
gcpProject: string;
|
|
14
|
-
ideClient: string;
|
|
15
|
-
}
|
|
7
|
+
import type { ExtendedSystemInfo } from '../../utils/systemInfo.js';
|
|
8
|
+
type AboutBoxProps = ExtendedSystemInfo;
|
|
16
9
|
export declare const AboutBox: React.FC<AboutBoxProps>;
|
|
17
10
|
export {};
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
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
|
-
import {
|
|
5
|
-
|
|
4
|
+
import { getSystemInfoFields, getFieldValue, } from '../../utils/systemInfoFields.js';
|
|
5
|
+
import { t } from '../../i18n/index.js';
|
|
6
|
+
export const AboutBox = (props) => {
|
|
7
|
+
const fields = getSystemInfoFields(props);
|
|
8
|
+
return (_jsxs(Box, { borderStyle: "round", borderColor: theme.border.default, flexDirection: "column", padding: 1, marginY: 1, width: "100%", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { bold: true, color: theme.text.accent, children: t('About UMS Code CLI') }) }), fields.map((field) => (_jsxs(Box, { flexDirection: "row", children: [_jsx(Box, { width: "35%", children: _jsx(Text, { bold: true, color: theme.text.link, children: field.label }) }), _jsx(Box, { children: _jsx(Text, { color: theme.text.primary, children: getFieldValue(field, props) }) })] }, field.key)))] }));
|
|
9
|
+
};
|
|
6
10
|
//# sourceMappingURL=AboutBox.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AboutBox.js","sourceRoot":"","sources":["../../../../src/ui/components/AboutBox.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"AboutBox.js","sourceRoot":"","sources":["../../../../src/ui/components/AboutBox.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAE9C,OAAO,EACL,mBAAmB,EACnB,aAAa,GAEd,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAIxC,MAAM,CAAC,MAAM,QAAQ,GAA4B,CAAC,KAAK,EAAE,EAAE;IACzD,MAAM,MAAM,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;IAE1C,OAAO,CACL,MAAC,GAAG,IACF,WAAW,EAAC,OAAO,EACnB,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EACjC,aAAa,EAAC,QAAQ,EACtB,OAAO,EAAE,CAAC,EACV,OAAO,EAAE,CAAC,EACV,KAAK,EAAC,MAAM,aAEZ,KAAC,GAAG,IAAC,YAAY,EAAE,CAAC,YAClB,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,YAChC,CAAC,CAAC,oBAAoB,CAAC,GACnB,GACH,EACL,MAAM,CAAC,GAAG,CAAC,CAAC,KAAsB,EAAE,EAAE,CAAC,CACtC,MAAC,GAAG,IAAiB,aAAa,EAAC,KAAK,aACtC,KAAC,GAAG,IAAC,KAAK,EAAC,KAAK,YACd,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,YAC9B,KAAK,CAAC,KAAK,GACP,GACH,EACN,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,OAAO,YAC5B,aAAa,CAAC,KAAK,EAAE,KAAK,CAAC,GACvB,GACH,KAVE,KAAK,CAAC,GAAG,CAWb,CACP,CAAC,IACE,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Qwen
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type React from 'react';
|
|
7
|
+
import { ApprovalMode } from '@umsai/ums-code-core';
|
|
8
|
+
import type { LoadedSettings } from '../../config/settings.js';
|
|
9
|
+
import { SettingScope } from '../../config/settings.js';
|
|
10
|
+
interface ApprovalModeDialogProps {
|
|
11
|
+
/** Callback function when an approval mode is selected */
|
|
12
|
+
onSelect: (mode: ApprovalMode | undefined, scope: SettingScope) => void;
|
|
13
|
+
/** The settings object */
|
|
14
|
+
settings: LoadedSettings;
|
|
15
|
+
/** Current approval mode */
|
|
16
|
+
currentMode: ApprovalMode;
|
|
17
|
+
/** Available terminal height for layout calculations */
|
|
18
|
+
availableTerminalHeight?: number;
|
|
19
|
+
}
|
|
20
|
+
export declare function ApprovalModeDialog({ onSelect, settings, currentMode, availableTerminalHeight: _availableTerminalHeight, }: ApprovalModeDialogProps): React.JSX.Element;
|
|
21
|
+
export {};
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useCallback, useState } from 'react';
|
|
3
|
+
import { Box, Text } from 'ink';
|
|
4
|
+
import { theme } from '../semantic-colors.js';
|
|
5
|
+
import { ApprovalMode, APPROVAL_MODES } from '@umsai/ums-code-core';
|
|
6
|
+
import { RadioButtonSelect } from './shared/RadioButtonSelect.js';
|
|
7
|
+
import { SettingScope } from '../../config/settings.js';
|
|
8
|
+
import { getScopeMessageForSetting } from '../../utils/dialogScopeUtils.js';
|
|
9
|
+
import { useKeypress } from '../hooks/useKeypress.js';
|
|
10
|
+
import { ScopeSelector } from './shared/ScopeSelector.js';
|
|
11
|
+
import { t } from '../../i18n/index.js';
|
|
12
|
+
const formatModeDescription = (mode) => {
|
|
13
|
+
switch (mode) {
|
|
14
|
+
case ApprovalMode.PLAN:
|
|
15
|
+
return t('Analyze only, do not modify files or execute commands');
|
|
16
|
+
case ApprovalMode.DEFAULT:
|
|
17
|
+
return t('Require approval for file edits or shell commands');
|
|
18
|
+
case ApprovalMode.AUTO_EDIT:
|
|
19
|
+
return t('Automatically approve file edits');
|
|
20
|
+
case ApprovalMode.YOLO:
|
|
21
|
+
return t('Automatically approve all tools');
|
|
22
|
+
default:
|
|
23
|
+
return t('{{mode}} mode', { mode });
|
|
24
|
+
}
|
|
25
|
+
};
|
|
26
|
+
export function ApprovalModeDialog({ onSelect, settings, currentMode, availableTerminalHeight: _availableTerminalHeight, }) {
|
|
27
|
+
// Start with User scope by default
|
|
28
|
+
const [selectedScope, setSelectedScope] = useState(SettingScope.User);
|
|
29
|
+
// Track the currently highlighted approval mode
|
|
30
|
+
const [highlightedMode, setHighlightedMode] = useState(currentMode || ApprovalMode.DEFAULT);
|
|
31
|
+
// Generate approval mode items with inline descriptions
|
|
32
|
+
const modeItems = APPROVAL_MODES.map((mode) => ({
|
|
33
|
+
label: `${mode} - ${formatModeDescription(mode)}`,
|
|
34
|
+
value: mode,
|
|
35
|
+
key: mode,
|
|
36
|
+
}));
|
|
37
|
+
// Find the index of the current mode
|
|
38
|
+
const initialModeIndex = modeItems.findIndex((item) => item.value === highlightedMode);
|
|
39
|
+
const safeInitialModeIndex = initialModeIndex >= 0 ? initialModeIndex : 0;
|
|
40
|
+
const handleModeSelect = useCallback((mode) => {
|
|
41
|
+
onSelect(mode, selectedScope);
|
|
42
|
+
}, [onSelect, selectedScope]);
|
|
43
|
+
const handleModeHighlight = (mode) => {
|
|
44
|
+
setHighlightedMode(mode);
|
|
45
|
+
};
|
|
46
|
+
const handleScopeHighlight = useCallback((scope) => {
|
|
47
|
+
setSelectedScope(scope);
|
|
48
|
+
}, []);
|
|
49
|
+
const handleScopeSelect = useCallback((scope) => {
|
|
50
|
+
onSelect(highlightedMode, scope);
|
|
51
|
+
}, [onSelect, highlightedMode]);
|
|
52
|
+
const [focusSection, setFocusSection] = useState('mode');
|
|
53
|
+
useKeypress((key) => {
|
|
54
|
+
if (key.name === 'tab') {
|
|
55
|
+
setFocusSection((prev) => (prev === 'mode' ? 'scope' : 'mode'));
|
|
56
|
+
}
|
|
57
|
+
if (key.name === 'escape') {
|
|
58
|
+
onSelect(undefined, selectedScope);
|
|
59
|
+
}
|
|
60
|
+
}, { isActive: true });
|
|
61
|
+
// Generate scope message for approval mode setting
|
|
62
|
+
const otherScopeModifiedMessage = getScopeMessageForSetting('tools.approvalMode', selectedScope, settings);
|
|
63
|
+
// Check if user scope is selected but workspace has the setting
|
|
64
|
+
const showWorkspacePriorityWarning = selectedScope === SettingScope.User &&
|
|
65
|
+
otherScopeModifiedMessage.toLowerCase().includes('workspace');
|
|
66
|
+
return (_jsx(Box, { borderStyle: "round", borderColor: theme.border.default, flexDirection: "row", padding: 1, width: "100%", height: "100%", children: _jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [_jsxs(Text, { bold: focusSection === 'mode', wrap: "truncate", children: [focusSection === 'mode' ? '> ' : ' ', t('Approval Mode'), ' ', _jsx(Text, { color: theme.text.secondary, children: otherScopeModifiedMessage })] }), _jsx(Box, { height: 1 }), _jsx(RadioButtonSelect, { items: modeItems, initialIndex: safeInitialModeIndex, onSelect: handleModeSelect, onHighlight: handleModeHighlight, isFocused: focusSection === 'mode', maxItemsToShow: 10, showScrollArrows: false, showNumbers: focusSection === 'mode' }), _jsx(Box, { height: 1 }), _jsx(Box, { marginTop: 1, children: _jsx(ScopeSelector, { onSelect: handleScopeSelect, onHighlight: handleScopeHighlight, isFocused: focusSection === 'scope', initialScope: selectedScope }) }), _jsx(Box, { height: 1 }), showWorkspacePriorityWarning && (_jsxs(_Fragment, { children: [_jsxs(Text, { color: theme.status.warning, wrap: "wrap", children: ["\u26A0", ' ', t('Workspace approval mode exists and takes priority. User-level change will have no effect.')] }), _jsx(Box, { height: 1 })] })), _jsx(Text, { color: theme.text.secondary, children: t('(Use Enter to select, Tab to change focus)') })] }) }));
|
|
67
|
+
}
|
|
68
|
+
//# sourceMappingURL=ApprovalModeDialog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ApprovalModeDialog.js","sourceRoot":"","sources":["../../../../src/ui/components/ApprovalModeDialog.tsx"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +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 '@umsai/ums-code-core';
|
|
5
|
+
import { t } from '../../i18n/index.js';
|
|
5
6
|
export const AutoAcceptIndicator = ({ approvalMode, }) => {
|
|
6
7
|
let textColor = '';
|
|
7
8
|
let textContent = '';
|
|
@@ -9,18 +10,18 @@ export const AutoAcceptIndicator = ({ approvalMode, }) => {
|
|
|
9
10
|
switch (approvalMode) {
|
|
10
11
|
case ApprovalMode.PLAN:
|
|
11
12
|
textColor = theme.status.success;
|
|
12
|
-
textContent = 'plan mode';
|
|
13
|
-
subText =
|
|
13
|
+
textContent = t('plan mode');
|
|
14
|
+
subText = ` ${t('(shift + tab to cycle)')}`;
|
|
14
15
|
break;
|
|
15
16
|
case ApprovalMode.AUTO_EDIT:
|
|
16
17
|
textColor = theme.status.warning;
|
|
17
|
-
textContent = 'auto-accept edits';
|
|
18
|
-
subText =
|
|
18
|
+
textContent = t('auto-accept edits');
|
|
19
|
+
subText = ` ${t('(shift + tab to cycle)')}`;
|
|
19
20
|
break;
|
|
20
21
|
case ApprovalMode.YOLO:
|
|
21
22
|
textColor = theme.status.error;
|
|
22
|
-
textContent = 'YOLO mode';
|
|
23
|
-
subText =
|
|
23
|
+
textContent = t('YOLO mode');
|
|
24
|
+
subText = ` ${t('(shift + tab to cycle)')}`;
|
|
24
25
|
break;
|
|
25
26
|
case ApprovalMode.DEFAULT:
|
|
26
27
|
default:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/components/AutoAcceptIndicator.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,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"AutoAcceptIndicator.js","sourceRoot":"","sources":["../../../../src/ui/components/AutoAcceptIndicator.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,sBAAsB,CAAC;AACpD,OAAO,EAAE,CAAC,EAAE,MAAM,qBAAqB,CAAC;AAMxC,MAAM,CAAC,MAAM,mBAAmB,GAAuC,CAAC,EACtE,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,IAAI;YACpB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YACjC,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;YAC7B,OAAO,GAAG,IAAI,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC5C,MAAM;QACR,KAAK,YAAY,CAAC,SAAS;YACzB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC;YACjC,WAAW,GAAG,CAAC,CAAC,mBAAmB,CAAC,CAAC;YACrC,OAAO,GAAG,IAAI,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC5C,MAAM;QACR,KAAK,YAAY,CAAC,IAAI;YACpB,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/B,WAAW,GAAG,CAAC,CAAC,WAAW,CAAC,CAAC;YAC7B,OAAO,GAAG,IAAI,CAAC,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC5C,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"}
|
|
@@ -26,6 +26,7 @@ import { useSettings } from '../contexts/SettingsContext.js';
|
|
|
26
26
|
import { ApprovalMode } from '@umsai/ums-code-core';
|
|
27
27
|
import { StreamingState } from '../types.js';
|
|
28
28
|
import { ConfigInitDisplay } from '../components/ConfigInitDisplay.js';
|
|
29
|
+
import { t } from '../../i18n/index.js';
|
|
29
30
|
export const Composer = () => {
|
|
30
31
|
const config = useConfig();
|
|
31
32
|
const settings = useSettings();
|
|
@@ -46,9 +47,9 @@ export const Composer = () => {
|
|
|
46
47
|
? undefined
|
|
47
48
|
: uiState.currentLoadingPhrase, elapsedTime: uiState.elapsedTime })), !uiState.isConfigInitialized && _jsx(ConfigInitDisplay, {}), _jsx(QueuedMessageDisplay, { messageQueue: uiState.messageQueue }), _jsxs(Box, { marginTop: 1, justifyContent: settings.merged.ui?.hideContextSummary
|
|
48
49
|
? 'flex-start'
|
|
49
|
-
: 'space-between', width: "100%", flexDirection: isNarrow ? 'column' : 'row', alignItems: isNarrow ? 'flex-start' : 'center', children: [_jsxs(Box, { marginRight: 1, children: [process.env['GEMINI_SYSTEM_MD'] && (_jsx(Text, { color: theme.status.error, children: "|\u2310\u25A0_\u25A0| " })), uiState.ctrlCPressedOnce ? (_jsx(Text, { color: theme.status.warning, children:
|
|
50
|
+
: 'space-between', width: "100%", flexDirection: isNarrow ? 'column' : 'row', alignItems: isNarrow ? 'flex-start' : 'center', children: [_jsxs(Box, { marginRight: 1, children: [process.env['GEMINI_SYSTEM_MD'] && (_jsx(Text, { color: theme.status.error, children: "|\u2310\u25A0_\u25A0| " })), uiState.ctrlCPressedOnce ? (_jsx(Text, { color: theme.status.warning, children: t('Press Ctrl+C again to exit.') })) : uiState.ctrlDPressedOnce ? (_jsx(Text, { color: theme.status.warning, children: t('Press Ctrl+D again to exit.') })) : uiState.showEscapePrompt ? (_jsx(Text, { color: theme.text.secondary, children: t('Press Esc again to clear.') })) : (!settings.merged.ui?.hideContextSummary && (_jsx(ContextSummaryDisplay, { ideContext: uiState.ideContextState, geminiMdFileCount: uiState.geminiMdFileCount, contextFileNames: contextFileNames, mcpServers: config.getMcpServers(), blockedMcpServers: config.getBlockedMcpServers(), showToolDescriptions: uiState.showToolDescriptions })))] }), _jsxs(Box, { paddingTop: isNarrow ? 1 : 0, children: [showAutoAcceptIndicator !== ApprovalMode.DEFAULT &&
|
|
50
51
|
!uiState.shellModeActive && (_jsx(AutoAcceptIndicator, { approvalMode: showAutoAcceptIndicator })), uiState.shellModeActive && _jsx(ShellModeIndicator, {})] })] }), uiState.showErrorDetails && (_jsx(OverflowProvider, { children: _jsxs(Box, { flexDirection: "column", children: [_jsx(DetailedMessagesDisplay, { messages: uiState.filteredConsoleMessages, maxHeight: uiState.constrainHeight ? debugConsoleMaxHeight : undefined, width: containerWidth }), _jsx(ShowMoreLines, { constrainHeight: uiState.constrainHeight })] }) })), uiState.isInputActive && (_jsx(InputPrompt, { buffer: uiState.buffer, inputWidth: uiState.inputWidth, suggestionsWidth: uiState.suggestionsWidth, onSubmit: uiActions.handleFinalSubmit, userMessages: uiState.userMessages, onClearScreen: uiActions.handleClearScreen, config: config, slashCommands: uiState.slashCommands, commandContext: uiState.commandContext, shellModeActive: uiState.shellModeActive, setShellModeActive: uiActions.setShellModeActive, approvalMode: showAutoAcceptIndicator, onEscapePromptChange: uiActions.onEscapePromptChange, focus: true, vimHandleInput: uiActions.vimHandleInput, isEmbeddedShellFocused: uiState.embeddedShellFocused, placeholder: vimEnabled
|
|
51
|
-
? "
|
|
52
|
-
: ' Type your message or @path/to/file' })), !settings.merged.ui?.hideFooter && !isScreenReaderEnabled && _jsx(Footer, {})] }));
|
|
52
|
+
? ' ' + t("Press 'i' for INSERT mode and 'Esc' for NORMAL mode.")
|
|
53
|
+
: ' ' + t('Type your message or @path/to/file') })), !settings.merged.ui?.hideFooter && !isScreenReaderEnabled && _jsx(Footer, {})] }));
|
|
53
54
|
};
|
|
54
55
|
//# sourceMappingURL=Composer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../../../src/ui/components/Composer.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,wBAAwB,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACtE,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,8BAA8B,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"Composer.js","sourceRoot":"","sources":["../../../../src/ui/components/Composer.tsx"],"names":[],"mappings":"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"}
|
|
@@ -11,13 +11,14 @@ import { useConfig } from '../contexts/ConfigContext.js';
|
|
|
11
11
|
import { MCPServerStatus } from '@umsai/ums-code-core';
|
|
12
12
|
import { GeminiSpinner } from './GeminiRespondingSpinner.js';
|
|
13
13
|
import { theme } from '../semantic-colors.js';
|
|
14
|
+
import { t } from '../../i18n/index.js';
|
|
14
15
|
export const ConfigInitDisplay = () => {
|
|
15
16
|
const config = useConfig();
|
|
16
|
-
const [message, setMessage] = useState('Initializing...');
|
|
17
|
+
const [message, setMessage] = useState(t('Initializing...'));
|
|
17
18
|
useEffect(() => {
|
|
18
19
|
const onChange = (clients) => {
|
|
19
20
|
if (!clients || clients.size === 0) {
|
|
20
|
-
setMessage(
|
|
21
|
+
setMessage(t('Initializing...'));
|
|
21
22
|
return;
|
|
22
23
|
}
|
|
23
24
|
let connected = 0;
|
|
@@ -26,7 +27,10 @@ export const ConfigInitDisplay = () => {
|
|
|
26
27
|
connected++;
|
|
27
28
|
}
|
|
28
29
|
}
|
|
29
|
-
setMessage(
|
|
30
|
+
setMessage(t('Connecting to MCP servers... ({{connected}}/{{total}})', {
|
|
31
|
+
connected: String(connected),
|
|
32
|
+
total: String(clients.size),
|
|
33
|
+
}));
|
|
30
34
|
};
|
|
31
35
|
appEvents.on('mcp-client-update', onChange);
|
|
32
36
|
return () => {
|