@codingame/monaco-vscode-chat-service-override 19.1.4 → 20.0.0
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/index.js +20 -8
- package/package.json +36 -31
- package/vscode/src/vs/base/common/policy.d.ts +14 -0
- package/vscode/src/vs/base/common/policy.js +11 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +53 -43
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +54 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +37 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +23 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +83 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +421 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +215 -104
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +9 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +18 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +20 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +11 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +16 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +7 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +58 -326
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +33 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +12 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +39 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +380 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +22 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +9 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +44 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +38 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +145 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +34 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +36 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +49 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +407 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.js +738 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +142 -151
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +54 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +20 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +4 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +23 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +13 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +3 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +28 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSetup.css +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +11 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +1 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +52 -90
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +15 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +6 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +11 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +137 -30
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +8 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +27 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +44 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +3 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +9 -9
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +4 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +104 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +667 -0
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +14 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/media/terminalChatWidget.css +56 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +111 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +262 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +35 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +129 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.js +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.d.ts +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +30 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +72 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +411 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +59 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.d.ts +51 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.js +163 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +24 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +164 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +101 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +16 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +52 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +71 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +14 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +94 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.d.ts +11 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.js +44 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +18 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +13 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.js +603 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +113 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.js +227 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.js +88 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.js +140 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.js +80 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.js +40 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +20 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +114 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-dark.svg +0 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-light.svg +0 -3
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
2
|
import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
3
3
|
import { IStatusbarService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar.service";
|
|
4
|
-
import { ChatEntitlementService } from "@codingame/monaco-vscode-
|
|
4
|
+
import { ChatEntitlementService } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatEntitlementService";
|
|
5
5
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
6
6
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
7
7
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
@@ -9,7 +9,7 @@ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
|
9
9
|
import { StatusbarAlignment, ShowTooltipCommand } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar';
|
|
10
10
|
import { IStatusbarService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar.service';
|
|
11
11
|
import { $, clearNode, append, EventType, addDisposableListener, EventHelper, disposableWindowInterval, getWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
12
|
-
import { ChatEntitlement, isProUser } from '@codingame/monaco-vscode-
|
|
12
|
+
import { ChatEntitlement, isProUser } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatEntitlementService';
|
|
13
13
|
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEntitlementService.service';
|
|
14
14
|
import { defaultButtonStyles, defaultCheckboxStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
|
|
15
15
|
import { Checkbox } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/toggle/toggle';
|
|
@@ -59,43 +59,43 @@ const gaugeBackground = registerColor('gauge.background', {
|
|
|
59
59
|
light: inputValidationInfoBorder,
|
|
60
60
|
hcDark: contrastBorder,
|
|
61
61
|
hcLight: contrastBorder
|
|
62
|
-
}, ( localize(
|
|
62
|
+
}, ( localize(5130, "Gauge background color.")));
|
|
63
63
|
registerColor('gauge.foreground', {
|
|
64
64
|
dark: ( transparent(gaugeBackground, 0.3)),
|
|
65
65
|
light: ( transparent(gaugeBackground, 0.3)),
|
|
66
66
|
hcDark: Color.white,
|
|
67
67
|
hcLight: Color.white
|
|
68
|
-
}, ( localize(
|
|
68
|
+
}, ( localize(5131, "Gauge foreground color.")));
|
|
69
69
|
registerColor('gauge.border', {
|
|
70
70
|
dark: null,
|
|
71
71
|
light: null,
|
|
72
72
|
hcDark: contrastBorder,
|
|
73
73
|
hcLight: contrastBorder
|
|
74
|
-
}, ( localize(
|
|
74
|
+
}, ( localize(5132, "Gauge border color.")));
|
|
75
75
|
const gaugeWarningBackground = registerColor('gauge.warningBackground', {
|
|
76
76
|
dark: inputValidationWarningBorder,
|
|
77
77
|
light: inputValidationWarningBorder,
|
|
78
78
|
hcDark: contrastBorder,
|
|
79
79
|
hcLight: contrastBorder
|
|
80
|
-
}, ( localize(
|
|
80
|
+
}, ( localize(5133, "Gauge warning background color.")));
|
|
81
81
|
registerColor('gauge.warningForeground', {
|
|
82
82
|
dark: ( transparent(gaugeWarningBackground, 0.3)),
|
|
83
83
|
light: ( transparent(gaugeWarningBackground, 0.3)),
|
|
84
84
|
hcDark: Color.white,
|
|
85
85
|
hcLight: Color.white
|
|
86
|
-
}, ( localize(
|
|
86
|
+
}, ( localize(5134, "Gauge warning foreground color.")));
|
|
87
87
|
const gaugeErrorBackground = registerColor('gauge.errorBackground', {
|
|
88
88
|
dark: inputValidationErrorBorder,
|
|
89
89
|
light: inputValidationErrorBorder,
|
|
90
90
|
hcDark: contrastBorder,
|
|
91
91
|
hcLight: contrastBorder
|
|
92
|
-
}, ( localize(
|
|
92
|
+
}, ( localize(5135, "Gauge error background color.")));
|
|
93
93
|
registerColor('gauge.errorForeground', {
|
|
94
94
|
dark: ( transparent(gaugeErrorBackground, 0.3)),
|
|
95
95
|
light: ( transparent(gaugeErrorBackground, 0.3)),
|
|
96
96
|
hcDark: Color.white,
|
|
97
97
|
hcLight: Color.white
|
|
98
|
-
}, ( localize(
|
|
98
|
+
}, ( localize(5136, "Gauge error foreground color.")));
|
|
99
99
|
const defaultChat = {
|
|
100
100
|
completionsEnablementSetting: product.defaultChatAgent?.completionsEnablementSetting ?? '',
|
|
101
101
|
nextEditSuggestionsSetting: product.defaultChatAgent?.nextEditSuggestionsSetting ?? '',
|
|
@@ -156,7 +156,7 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
156
156
|
}
|
|
157
157
|
getEntryProps() {
|
|
158
158
|
let text = '$(copilot)';
|
|
159
|
-
let ariaLabel = ( localize(
|
|
159
|
+
let ariaLabel = ( localize(5137, "Copilot Status"));
|
|
160
160
|
let kind;
|
|
161
161
|
if (isNewUser(this.chatEntitlementService)) {
|
|
162
162
|
const entitlement = this.chatEntitlementService.entitlement;
|
|
@@ -165,7 +165,7 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
165
165
|
isProUser(entitlement) ||
|
|
166
166
|
entitlement === ChatEntitlement.Free
|
|
167
167
|
) {
|
|
168
|
-
const finishSetup = ( localize(
|
|
168
|
+
const finishSetup = ( localize(5138, "Finish Setup"));
|
|
169
169
|
text = `$(copilot) ${finishSetup}`;
|
|
170
170
|
ariaLabel = finishSetup;
|
|
171
171
|
kind = 'prominent';
|
|
@@ -176,10 +176,10 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
176
176
|
const completionsQuotaExceeded = this.chatEntitlementService.quotas.completions?.percentRemaining === 0;
|
|
177
177
|
if (this.chatEntitlementService.sentiment.disabled || this.chatEntitlementService.sentiment.untrusted) {
|
|
178
178
|
text = `$(copilot-unavailable)`;
|
|
179
|
-
ariaLabel = ( localize(
|
|
179
|
+
ariaLabel = ( localize(5139, "Copilot Disabled"));
|
|
180
180
|
}
|
|
181
181
|
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Unknown) {
|
|
182
|
-
const signedOutWarning = ( localize(
|
|
182
|
+
const signedOutWarning = ( localize(5140, "Signed out"));
|
|
183
183
|
text = `$(copilot-not-connected) ${signedOutWarning}`;
|
|
184
184
|
ariaLabel = signedOutWarning;
|
|
185
185
|
kind = 'prominent';
|
|
@@ -187,13 +187,13 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
187
187
|
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Free && (chatQuotaExceeded || completionsQuotaExceeded)) {
|
|
188
188
|
let quotaWarning;
|
|
189
189
|
if (chatQuotaExceeded && !completionsQuotaExceeded) {
|
|
190
|
-
quotaWarning = ( localize(
|
|
190
|
+
quotaWarning = ( localize(5141, "Chat quota reached"));
|
|
191
191
|
}
|
|
192
192
|
else if (completionsQuotaExceeded && !chatQuotaExceeded) {
|
|
193
|
-
quotaWarning = ( localize(
|
|
193
|
+
quotaWarning = ( localize(5142, "Completions quota reached"));
|
|
194
194
|
}
|
|
195
195
|
else {
|
|
196
|
-
quotaWarning = ( localize(
|
|
196
|
+
quotaWarning = ( localize(5143, "Quota reached"));
|
|
197
197
|
}
|
|
198
198
|
text = `$(copilot-warning) ${quotaWarning}`;
|
|
199
199
|
ariaLabel = quotaWarning;
|
|
@@ -201,15 +201,15 @@ let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
|
201
201
|
}
|
|
202
202
|
else if (this.editorService.activeTextEditorLanguageId && !isCompletionsEnabled(this.configurationService, this.editorService.activeTextEditorLanguageId)) {
|
|
203
203
|
text = `$(copilot-unavailable)`;
|
|
204
|
-
ariaLabel = ( localize(
|
|
204
|
+
ariaLabel = ( localize(5144, "Code completions disabled"));
|
|
205
205
|
}
|
|
206
206
|
else if (this.completionsService.isSnoozing()) {
|
|
207
207
|
text = `$(copilot-snooze)`;
|
|
208
|
-
ariaLabel = ( localize(
|
|
208
|
+
ariaLabel = ( localize(5145, "Code completions snoozed"));
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
211
|
return {
|
|
212
|
-
name: ( localize(
|
|
212
|
+
name: ( localize(5137, "Copilot Status")),
|
|
213
213
|
text,
|
|
214
214
|
ariaLabel,
|
|
215
215
|
command: ShowTooltipCommand,
|
|
@@ -290,19 +290,19 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
290
290
|
};
|
|
291
291
|
const { chat: chatQuota, completions: completionsQuota, premiumChat: premiumChatQuota, resetDate } = this.chatEntitlementService.quotas;
|
|
292
292
|
if (chatQuota || completionsQuota || premiumChatQuota) {
|
|
293
|
-
addSeparator(( localize(
|
|
293
|
+
addSeparator(( localize(5146, "Copilot Usage")), toAction({
|
|
294
294
|
id: 'workbench.action.manageCopilot',
|
|
295
|
-
label: ( localize(
|
|
296
|
-
tooltip: ( localize(
|
|
295
|
+
label: ( localize(5147, "Manage Copilot")),
|
|
296
|
+
tooltip: ( localize(5148, "Manage Copilot")),
|
|
297
297
|
class: ThemeIcon.asClassName(Codicon.settings),
|
|
298
298
|
run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(defaultChat.manageSettingsUrl)))),
|
|
299
299
|
}));
|
|
300
|
-
const completionsQuotaIndicator = completionsQuota && (completionsQuota.total > 0 || completionsQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, completionsQuota, ( localize(
|
|
301
|
-
const chatQuotaIndicator = chatQuota && (chatQuota.total > 0 || chatQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, chatQuota, ( localize(
|
|
302
|
-
const premiumChatQuotaIndicator = premiumChatQuota && (premiumChatQuota.total > 0 || premiumChatQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, premiumChatQuota, ( localize(
|
|
300
|
+
const completionsQuotaIndicator = completionsQuota && (completionsQuota.total > 0 || completionsQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, completionsQuota, ( localize(5149, "Code completions")), false) : undefined;
|
|
301
|
+
const chatQuotaIndicator = chatQuota && (chatQuota.total > 0 || chatQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, chatQuota, ( localize(5150, "Chat messages")), false) : undefined;
|
|
302
|
+
const premiumChatQuotaIndicator = premiumChatQuota && (premiumChatQuota.total > 0 || premiumChatQuota.unlimited) ? this.createQuotaIndicator(this.element, disposables, premiumChatQuota, ( localize(5151, "Premium requests")), true) : undefined;
|
|
303
303
|
if (resetDate) {
|
|
304
304
|
this.element.appendChild($('div.description', undefined, ( localize(
|
|
305
|
-
|
|
305
|
+
5152,
|
|
306
306
|
"Allowance resets {0}.",
|
|
307
307
|
this.dateFormatter.value.format(( new Date(resetDate)))
|
|
308
308
|
))));
|
|
@@ -312,7 +312,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
312
312
|
this.element,
|
|
313
313
|
{ ...defaultButtonStyles, hoverDelegate: nativeHoverDelegate, secondary: canUseCopilot(this.chatEntitlementService) }
|
|
314
314
|
)));
|
|
315
|
-
upgradeProButton.label = ( localize(
|
|
315
|
+
upgradeProButton.label = ( localize(5153, "Upgrade to Copilot Pro"));
|
|
316
316
|
disposables.add(upgradeProButton.onDidClick(() => this.runCommandAndClose('workbench.action.chat.upgradePlan')));
|
|
317
317
|
}
|
|
318
318
|
(async () => {
|
|
@@ -351,10 +351,10 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
351
351
|
}
|
|
352
352
|
{
|
|
353
353
|
const chatSentiment = this.chatEntitlementService.sentiment;
|
|
354
|
-
addSeparator(( localize(
|
|
354
|
+
addSeparator(( localize(5154, "Code Completions")), chatSentiment.installed && !chatSentiment.disabled && !chatSentiment.untrusted ? toAction({
|
|
355
355
|
id: 'workbench.action.openChatSettings',
|
|
356
|
-
label: ( localize(
|
|
357
|
-
tooltip: ( localize(
|
|
356
|
+
label: ( localize(5155, "Settings")),
|
|
357
|
+
tooltip: ( localize(5156, "Open Settings")),
|
|
358
358
|
class: ThemeIcon.asClassName(Codicon.settingsGear),
|
|
359
359
|
run: () => this.runCommandAndClose(() => this.commandService.executeCommand('workbench.action.openSettings', { query: `@id:${defaultChat.completionsEnablementSetting} @id:${defaultChat.nextEditSuggestionsSetting}` })),
|
|
360
360
|
}) : undefined);
|
|
@@ -362,7 +362,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
362
362
|
}
|
|
363
363
|
if (canUseCopilot(this.chatEntitlementService)) {
|
|
364
364
|
const snooze = append(this.element, $('div.snooze-completions'));
|
|
365
|
-
this.createCompletionsSnooze(snooze, ( localize(
|
|
365
|
+
this.createCompletionsSnooze(snooze, ( localize(5157, "Snooze")), disposables);
|
|
366
366
|
}
|
|
367
367
|
{
|
|
368
368
|
const newUser = isNewUser(this.chatEntitlementService);
|
|
@@ -372,23 +372,23 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
372
372
|
addSeparator();
|
|
373
373
|
let descriptionText;
|
|
374
374
|
if (newUser) {
|
|
375
|
-
descriptionText = ( localize(
|
|
375
|
+
descriptionText = ( localize(5158, "Set up Copilot to use AI features."));
|
|
376
376
|
}
|
|
377
377
|
else if (disabled) {
|
|
378
|
-
descriptionText = ( localize(
|
|
378
|
+
descriptionText = ( localize(5159, "Enable Copilot to use AI features."));
|
|
379
379
|
}
|
|
380
380
|
else {
|
|
381
|
-
descriptionText = ( localize(
|
|
381
|
+
descriptionText = ( localize(5160, "Sign in to use Copilot AI features."));
|
|
382
382
|
}
|
|
383
383
|
let buttonLabel;
|
|
384
384
|
if (newUser) {
|
|
385
|
-
buttonLabel = ( localize(
|
|
385
|
+
buttonLabel = ( localize(5161, "Set up Copilot"));
|
|
386
386
|
}
|
|
387
387
|
else if (disabled) {
|
|
388
|
-
buttonLabel = ( localize(
|
|
388
|
+
buttonLabel = ( localize(5162, "Enable Copilot"));
|
|
389
389
|
}
|
|
390
390
|
else {
|
|
391
|
-
buttonLabel = ( localize(
|
|
391
|
+
buttonLabel = ( localize(5163, "Sign in to use Copilot"));
|
|
392
392
|
}
|
|
393
393
|
this.element.appendChild($('div.description', undefined, descriptionText));
|
|
394
394
|
const button = disposables.add(( new Button(
|
|
@@ -415,8 +415,8 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
415
415
|
const headerLink = typeof item.label === 'string' ? undefined : item.label.link;
|
|
416
416
|
this.renderHeader(itemElement, disposables, headerLabel, headerLink ? toAction({
|
|
417
417
|
id: 'workbench.action.openChatStatusItemLink',
|
|
418
|
-
label: ( localize(
|
|
419
|
-
tooltip: ( localize(
|
|
418
|
+
label: ( localize(5164, "Learn More")),
|
|
419
|
+
tooltip: ( localize(5164, "Learn More")),
|
|
420
420
|
class: ThemeIcon.asClassName(Codicon.linkExternal),
|
|
421
421
|
run: () => this.runCommandAndClose(() => this.openerService.open(( URI.parse(headerLink)))),
|
|
422
422
|
}) : undefined);
|
|
@@ -460,7 +460,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
460
460
|
quotaIndicator,
|
|
461
461
|
{ ...defaultButtonStyles, secondary: true, hoverDelegate: nativeHoverDelegate }
|
|
462
462
|
)));
|
|
463
|
-
manageOverageButton.label = ( localize(
|
|
463
|
+
manageOverageButton.label = ( localize(5165, "Manage paid premium requests"));
|
|
464
464
|
disposables.add(manageOverageButton.onDidClick(() => this.runCommandAndClose(() => this.openerService.open(( URI.parse(defaultChat.manageOverageUrl))))));
|
|
465
465
|
}
|
|
466
466
|
const update = (quota) => {
|
|
@@ -474,17 +474,17 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
474
474
|
usedPercentage = Math.max(0, 100 - quota.percentRemaining);
|
|
475
475
|
}
|
|
476
476
|
if (quota.unlimited) {
|
|
477
|
-
quotaValue.textContent = ( localize(
|
|
477
|
+
quotaValue.textContent = ( localize(5166, "Included"));
|
|
478
478
|
}
|
|
479
479
|
else if (quota.overageCount) {
|
|
480
480
|
quotaValue.textContent = ( localize(
|
|
481
|
-
|
|
481
|
+
5167,
|
|
482
482
|
"+{0} requests",
|
|
483
483
|
this.quotaOverageFormatter.value.format(quota.overageCount)
|
|
484
484
|
));
|
|
485
485
|
}
|
|
486
486
|
else {
|
|
487
|
-
quotaValue.textContent = ( localize(
|
|
487
|
+
quotaValue.textContent = ( localize(5168, "{0}%", this.quotaPercentageFormatter.value.format(usedPercentage)));
|
|
488
488
|
}
|
|
489
489
|
quotaBit.style.width = `${usedPercentage}%`;
|
|
490
490
|
if (usedPercentage >= 90) {
|
|
@@ -495,10 +495,10 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
495
495
|
}
|
|
496
496
|
if (supportsOverage) {
|
|
497
497
|
if (quota.overageEnabled) {
|
|
498
|
-
overageLabel.textContent = ( localize(
|
|
498
|
+
overageLabel.textContent = ( localize(5169, "Additional paid premium requests enabled."));
|
|
499
499
|
}
|
|
500
500
|
else {
|
|
501
|
-
overageLabel.textContent = ( localize(
|
|
501
|
+
overageLabel.textContent = ( localize(5170, "Additional paid premium requests disabled."));
|
|
502
502
|
}
|
|
503
503
|
}
|
|
504
504
|
else {
|
|
@@ -513,15 +513,15 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
513
513
|
const settings = container.appendChild($('div.settings'));
|
|
514
514
|
{
|
|
515
515
|
const globalSetting = append(settings, $('div.setting'));
|
|
516
|
-
this.createCodeCompletionsSetting(globalSetting, ( localize(
|
|
516
|
+
this.createCodeCompletionsSetting(globalSetting, ( localize(5171, "All files")), '*', disposables);
|
|
517
517
|
if (modeId) {
|
|
518
518
|
const languageSetting = append(settings, $('div.setting'));
|
|
519
|
-
this.createCodeCompletionsSetting(languageSetting, ( localize(
|
|
519
|
+
this.createCodeCompletionsSetting(languageSetting, ( localize(5172, "{0}", this.languageService.getLanguageName(modeId) ?? modeId)), modeId, disposables);
|
|
520
520
|
}
|
|
521
521
|
}
|
|
522
522
|
{
|
|
523
523
|
const setting = append(settings, $('div.setting'));
|
|
524
|
-
this.createNextEditSuggestionsSetting(setting, ( localize(
|
|
524
|
+
this.createNextEditSuggestionsSetting(setting, ( localize(5173, "Next edit suggestions")), this.getCompletionsSettingAccessor(modeId), disposables);
|
|
525
525
|
}
|
|
526
526
|
return settings;
|
|
527
527
|
}
|
|
@@ -626,7 +626,7 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
626
626
|
const toolbar = disposables.add(( new ActionBar(actionBar, { hoverDelegate: nativeHoverDelegate })));
|
|
627
627
|
const cancelAction = toAction({
|
|
628
628
|
id: 'workbench.action.cancelSnoozeStatusBarLink',
|
|
629
|
-
label: ( localize(
|
|
629
|
+
label: ( localize(5174, "Cancel Snooze")),
|
|
630
630
|
run: () => this.inlineCompletionsService.cancelSnooze(),
|
|
631
631
|
class: ThemeIcon.asClassName(Codicon.stopCircle)
|
|
632
632
|
});
|
|
@@ -635,19 +635,19 @@ let ChatStatusDashboard = class ChatStatusDashboard extends Disposable {
|
|
|
635
635
|
toolbar.clear();
|
|
636
636
|
const timeLeftMs = this.inlineCompletionsService.snoozeTimeLeft;
|
|
637
637
|
if (!isEnabled || timeLeftMs <= 0) {
|
|
638
|
-
timerDisplay.textContent = ( localize(
|
|
638
|
+
timerDisplay.textContent = ( localize(5175, "Hide completions for 5 min"));
|
|
639
639
|
timerDisplay.title = '';
|
|
640
640
|
button.label = label;
|
|
641
|
-
button.setTitle(( localize(
|
|
641
|
+
button.setTitle(( localize(5176, "Hide completions and NES for 5 min")));
|
|
642
642
|
return true;
|
|
643
643
|
}
|
|
644
644
|
const timeLeftSeconds = Math.ceil(timeLeftMs / 1000);
|
|
645
645
|
const minutes = Math.floor(timeLeftSeconds / 60);
|
|
646
646
|
const seconds = timeLeftSeconds % 60;
|
|
647
|
-
timerDisplay.textContent = `${minutes}:${seconds < 10 ? '0' : ''}${seconds} ${( localize(
|
|
648
|
-
timerDisplay.title = ( localize(
|
|
649
|
-
button.label = ( localize(
|
|
650
|
-
button.setTitle(( localize(
|
|
647
|
+
timerDisplay.textContent = `${minutes}:${seconds < 10 ? '0' : ''}${seconds} ${( localize(5177, "remaining"))}`;
|
|
648
|
+
timerDisplay.title = ( localize(5178, "Completions are hidden for the remaining duration"));
|
|
649
|
+
button.label = ( localize(5179, "+5 min"));
|
|
650
|
+
button.setTitle(( localize(5180, "Snooze additional 5 min")));
|
|
651
651
|
toolbar.push([cancelAction], { icon: true, label: false });
|
|
652
652
|
return false;
|
|
653
653
|
};
|
|
@@ -3,6 +3,7 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { ToolSet } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/languageModelToolsService';
|
|
4
4
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
5
5
|
import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables';
|
|
6
|
+
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
6
7
|
|
|
7
8
|
let ChatVariablesService = class ChatVariablesService {
|
|
8
9
|
constructor(chatWidgetService) {
|
|
@@ -17,6 +18,25 @@ let ChatVariablesService = class ChatVariablesService {
|
|
|
17
18
|
if (!model) {
|
|
18
19
|
return [];
|
|
19
20
|
}
|
|
21
|
+
if (widget.input.attachmentModel.attachments.length > 0 && widget.viewModel.editing) {
|
|
22
|
+
const references = [];
|
|
23
|
+
for (const attachment of widget.input.attachmentModel.attachments) {
|
|
24
|
+
if (attachment.range) {
|
|
25
|
+
const referenceObj = {
|
|
26
|
+
id: attachment.id,
|
|
27
|
+
fullName: attachment.name,
|
|
28
|
+
modelDescription: attachment.modelDescription,
|
|
29
|
+
range: ( new Range(1, attachment.range.start + 1, 1, attachment.range.endExclusive + 1)),
|
|
30
|
+
icon: attachment.icon,
|
|
31
|
+
isFile: attachment.kind === 'file',
|
|
32
|
+
isDirectory: attachment.kind === 'directory',
|
|
33
|
+
data: attachment.value
|
|
34
|
+
};
|
|
35
|
+
references.push(referenceObj);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
return [...model.variables, ...references];
|
|
39
|
+
}
|
|
20
40
|
return model.variables;
|
|
21
41
|
}
|
|
22
42
|
getSelectedTools(sessionId) {
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
1
2
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
2
3
|
import { IContextKeyService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service";
|
|
3
4
|
import { IContextMenuService } from "@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service";
|
|
@@ -15,8 +16,8 @@ import { IChatViewTitleActionContext } from "@codingame/monaco-vscode-api/vscode
|
|
|
15
16
|
import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service";
|
|
16
17
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
17
18
|
import { ChatAgentLocation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants";
|
|
18
|
-
import { ChatWidget, IChatViewState } from "@codingame/monaco-vscode-
|
|
19
|
-
import { IViewWelcomeDelegate } from "@codingame/monaco-vscode-
|
|
19
|
+
import { ChatWidget, IChatViewState } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatWidget";
|
|
20
|
+
import { IViewWelcomeDelegate } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController";
|
|
20
21
|
export declare const CHAT_SIDEBAR_OLD_VIEW_PANEL_ID = "workbench.panel.chatSidebar";
|
|
21
22
|
export declare const CHAT_SIDEBAR_PANEL_ID = "workbench.panel.chat";
|
|
22
23
|
export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
|
@@ -42,7 +43,7 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
42
43
|
protected renderBody(parent: HTMLElement): Promise<void>;
|
|
43
44
|
acceptInput(query?: string): void;
|
|
44
45
|
private clear;
|
|
45
|
-
loadSession(sessionId: string, viewState?: IChatViewState): Promise<void>;
|
|
46
|
+
loadSession(sessionId: string | URI, viewState?: IChatViewState): Promise<void>;
|
|
46
47
|
focusInput(): void;
|
|
47
48
|
focus(): void;
|
|
48
49
|
protected layoutBody(height: number, width: number): void;
|
|
@@ -4,6 +4,7 @@ import { getWindow, $ } from '@codingame/monaco-vscode-api/vscode/vs/base/browse
|
|
|
4
4
|
import { CancellationToken } from '@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation';
|
|
5
5
|
import { DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
6
|
import { MarshalledId } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshallingIds';
|
|
7
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
7
8
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
8
9
|
import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
|
|
9
10
|
import { IContextMenuService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextview/browser/contextView.service';
|
|
@@ -35,11 +36,11 @@ import { ViewContainerLocation } from '@codingame/monaco-vscode-api/vscode/vs/wo
|
|
|
35
36
|
import { IViewDescriptorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/views.service';
|
|
36
37
|
import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
|
|
37
38
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
38
|
-
import { CHAT_PROVIDER_ID } from '@codingame/monaco-vscode-
|
|
39
|
+
import { CHAT_PROVIDER_ID } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/common/chatParticipantContribTypes';
|
|
39
40
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
40
41
|
import { ChatAgentLocation, ChatModeKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
41
|
-
import { ChatWidget } from '@codingame/monaco-vscode-
|
|
42
|
-
import { ChatViewWelcomeController } from '@codingame/monaco-vscode-
|
|
42
|
+
import { ChatWidget } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatWidget';
|
|
43
|
+
import { ChatViewWelcomeController } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController';
|
|
43
44
|
|
|
44
45
|
const CHAT_SIDEBAR_PANEL_ID = 'workbench.panel.chat';
|
|
45
46
|
let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
@@ -203,7 +204,7 @@ let ChatViewPane = class ChatViewPane extends ViewPane {
|
|
|
203
204
|
if (this.widget.viewModel) {
|
|
204
205
|
await this.chatService.clearSession(this.widget.viewModel.sessionId);
|
|
205
206
|
}
|
|
206
|
-
const newModel = await this.chatService.getOrRestoreSession(sessionId);
|
|
207
|
+
const newModel = await (URI.isUri(sessionId) ? this.chatService.loadSessionForResource(sessionId, ChatAgentLocation.Panel, CancellationToken.None) : this.chatService.getOrRestoreSession(sessionId));
|
|
207
208
|
await this.updateModel(newModel, viewState);
|
|
208
209
|
}
|
|
209
210
|
focusInput() {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
|
-
import { ICodeBlockActionContextProvider } from "@codingame/monaco-vscode-
|
|
2
|
+
import { ICodeBlockActionContextProvider } from "@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/browser/chat";
|
|
3
3
|
import { IChatCodeBlockContextProviderService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
|
|
4
4
|
export declare class ChatCodeBlockContextProviderService implements IChatCodeBlockContextProviderService {
|
|
5
5
|
_serviceBrand: undefined;
|
|
@@ -4,10 +4,14 @@ import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/comm
|
|
|
4
4
|
import { Disposable, MutableDisposable, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
5
5
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
6
6
|
import { themeColorFromId } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
|
|
7
|
+
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
7
8
|
import { ICodeEditorService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service';
|
|
8
9
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
9
10
|
import { TrackedRangeStickiness } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
|
|
11
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
12
|
+
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
10
13
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
14
|
+
import { ILabelService } from '@codingame/monaco-vscode-api/vscode/vs/platform/label/common/label.service';
|
|
11
15
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colorUtils';
|
|
12
16
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/baseColors';
|
|
13
17
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/chartsColors';
|
|
@@ -21,10 +25,10 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quic
|
|
|
21
25
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
|
|
22
26
|
import { IThemeService } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service';
|
|
23
27
|
import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
|
|
24
|
-
import { chatSlashCommandBackground, chatSlashCommandForeground } from '@codingame/monaco-vscode-
|
|
25
|
-
import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, chatAgentLeader, chatSubcommandLeader } from '@codingame/monaco-vscode-
|
|
26
|
-
import { ChatRequestParser } from '@codingame/monaco-vscode-
|
|
27
|
-
import { ChatWidget } from '@codingame/monaco-vscode-
|
|
28
|
+
import { chatSlashCommandBackground, chatSlashCommandForeground } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/common/chatColors';
|
|
29
|
+
import { ChatRequestAgentPart, ChatRequestAgentSubcommandPart, ChatRequestSlashCommandPart, ChatRequestSlashPromptPart, ChatRequestTextPart, ChatRequestToolPart, ChatRequestToolSetPart, ChatRequestDynamicVariablePart, chatAgentLeader, chatSubcommandLeader } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
|
|
30
|
+
import { ChatRequestParser } from '@codingame/monaco-vscode-0af61f78-dfc5-57ba-8d32-66268c8de38d-common/vscode/vs/workbench/contrib/chat/common/chatRequestParser';
|
|
31
|
+
import { ChatWidget } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatWidget';
|
|
28
32
|
import { dynamicVariableDecorationType } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables';
|
|
29
33
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
30
34
|
|
|
@@ -36,12 +40,14 @@ function agentAndCommandToKey(agent, subcommand) {
|
|
|
36
40
|
return subcommand ? `${agent.id}__${subcommand}` : agent.id;
|
|
37
41
|
}
|
|
38
42
|
let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
39
|
-
constructor(widget, codeEditorService, themeService, chatAgentService) {
|
|
43
|
+
constructor(widget, codeEditorService, themeService, chatAgentService, configurationService, labelService) {
|
|
40
44
|
super();
|
|
41
45
|
this.widget = widget;
|
|
42
46
|
this.codeEditorService = codeEditorService;
|
|
43
47
|
this.themeService = themeService;
|
|
44
48
|
this.chatAgentService = chatAgentService;
|
|
49
|
+
this.configurationService = configurationService;
|
|
50
|
+
this.labelService = labelService;
|
|
45
51
|
this.id = 'inputEditorDecorations';
|
|
46
52
|
this.previouslyUsedAgents = ( new Set());
|
|
47
53
|
this.viewModelDisposables = this._register(( new MutableDisposable()));
|
|
@@ -110,7 +116,11 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
110
116
|
return;
|
|
111
117
|
}
|
|
112
118
|
if (!inputValue) {
|
|
113
|
-
const
|
|
119
|
+
const mode = this.widget.input.currentModeObs.get();
|
|
120
|
+
let description = mode.description.get();
|
|
121
|
+
if (this.configurationService.getValue('chat.emptyChatState.enabled')) {
|
|
122
|
+
description = ( localize(5228, "Add context (#), extensions (@), commands (/)"));
|
|
123
|
+
}
|
|
114
124
|
const decoration = [
|
|
115
125
|
{
|
|
116
126
|
range: {
|
|
@@ -216,13 +226,19 @@ let InputEditorDecorations = class InputEditorDecorations extends Disposable {
|
|
|
216
226
|
for (const tool of toolParts) {
|
|
217
227
|
varDecorations.push({ range: tool.editorRange });
|
|
218
228
|
}
|
|
229
|
+
const dynamicVariableParts = parsedRequest.filter((p) => p instanceof ChatRequestDynamicVariablePart);
|
|
230
|
+
for (const variable of dynamicVariableParts) {
|
|
231
|
+
varDecorations.push({ range: variable.editorRange, hoverMessage: URI.isUri(variable.data) ? ( new MarkdownString(this.labelService.getUriLabel(variable.data, { relative: true }))) : undefined });
|
|
232
|
+
}
|
|
219
233
|
this.widget.inputEditor.setDecorationsByType(decorationDescription, variableTextDecorationType, varDecorations);
|
|
220
234
|
}
|
|
221
235
|
};
|
|
222
236
|
InputEditorDecorations = ( __decorate([
|
|
223
237
|
( __param(1, ICodeEditorService)),
|
|
224
238
|
( __param(2, IThemeService)),
|
|
225
|
-
( __param(3, IChatAgentService))
|
|
239
|
+
( __param(3, IChatAgentService)),
|
|
240
|
+
( __param(4, IConfigurationService)),
|
|
241
|
+
( __param(5, ILabelService))
|
|
226
242
|
], InputEditorDecorations));
|
|
227
243
|
class InputEditorSlashCommandMode extends Disposable {
|
|
228
244
|
constructor(widget) {
|
|
@@ -5,7 +5,7 @@ import { HoverAnchor, IEditorHoverParticipant, IEditorHoverRenderContext, IHover
|
|
|
5
5
|
import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
|
|
6
6
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
7
|
import { IChatWidgetService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
|
|
8
|
-
import { IChatAgentData } from "@codingame/monaco-vscode-
|
|
8
|
+
import { IChatAgentData } from "@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/common/chatAgents";
|
|
9
9
|
export declare class ChatAgentHoverParticipant implements IEditorHoverParticipant<ChatAgentHoverPart> {
|
|
10
10
|
private readonly editor;
|
|
11
11
|
private readonly instantiationService;
|
|
@@ -6,9 +6,9 @@ import { RenderedHoverParts, HoverAnchorType, HoverParticipantRegistry } from '@
|
|
|
6
6
|
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
7
7
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
8
8
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
9
|
-
import { ChatAgentHover, getChatAgentHoverOptions } from '@codingame/monaco-vscode-
|
|
9
|
+
import { ChatAgentHover, getChatAgentHoverOptions } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatAgentHover';
|
|
10
10
|
import { ChatEditorHoverWrapper } from './editorHoverWrapper.js';
|
|
11
|
-
import { extractAgentAndCommand } from '@codingame/monaco-vscode-
|
|
11
|
+
import { extractAgentAndCommand } from '@codingame/monaco-vscode-b994942c-360d-5b68-8a33-77d4bde6b714-common/vscode/vs/workbench/contrib/chat/common/chatParserTypes';
|
|
12
12
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
13
13
|
|
|
14
14
|
let ChatAgentHoverParticipant = class ChatAgentHoverParticipant {
|
|
@@ -58,7 +58,7 @@ let ChatAgentHoverParticipant = class ChatAgentHoverParticipant {
|
|
|
58
58
|
return ( new RenderedHoverParts([renderedHoverPart]));
|
|
59
59
|
}
|
|
60
60
|
getAccessibleContent(hoverPart) {
|
|
61
|
-
return localize(
|
|
61
|
+
return localize(5229, 'There is a chat agent hover part here.');
|
|
62
62
|
}
|
|
63
63
|
};
|
|
64
64
|
ChatAgentHoverParticipant = ( __decorate([
|
|
@@ -40,6 +40,7 @@ export declare class LanguageModelToolsService extends Disposable implements ILa
|
|
|
40
40
|
dispose(): void;
|
|
41
41
|
registerToolData(toolData: IToolData): IDisposable;
|
|
42
42
|
private _refreshAllToolContextKeys;
|
|
43
|
+
flushToolChanges(): void;
|
|
43
44
|
registerToolImplementation(id: string, tool: IToolImpl): IDisposable;
|
|
44
45
|
getTools(includeDisabled?: boolean): Iterable<Readonly<IToolData>>;
|
|
45
46
|
getTool(id: string): IToolData | undefined;
|