@codingame/monaco-vscode-chat-service-override 23.2.2 → 24.1.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 +13 -10
- package/package.json +5 -41
- package/vscode/src/vs/platform/domWidget/browser/domWidget.d.ts +52 -0
- package/vscode/src/vs/platform/domWidget/browser/domWidget.js +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +61 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +152 -0
- 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/chatContextActions.js +37 -28
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +9 -9
- 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.d.ts +3 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +7 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +12 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +21 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +27 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +4 -4
- 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/chatSessionActions.d.ts +6 -27
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +44 -208
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +17 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +17 -17
- 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 +23 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +358 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +222 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +241 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.d.ts +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.d.ts +11 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.js +67 -230
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +65 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +186 -62
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.js +140 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsview.css +2 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +115 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +389 -166
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +9 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +22 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.js +63 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +14 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +173 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +66 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +32 -29
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +6 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +8 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +12 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +5 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +15 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +13 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +66 -50
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +6 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +6 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +2 -2
- 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.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +15 -4
- 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 +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +30 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +13 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +23 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +8 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +20 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +47 -15
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +270 -143
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +310 -170
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +12 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +42 -42
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +35 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +1 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +22 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +18 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +80 -72
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +2 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +48 -77
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +16 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +257 -77
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetup.js +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{chatSetup.d.ts → chatSetup/chatSetupContributions.d.ts} +4 -11
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +622 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +359 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +89 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +667 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +37 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +260 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatSetup/media}/chatSetup.css +4 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +4 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +55 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{chatStatus.js → chatStatus/chatStatusDashboard.js} +193 -325
- package/vscode/src/vs/workbench/contrib/chat/browser/{chatStatus.d.ts → chatStatus/chatStatusEntry.d.ts} +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +190 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/{chatStatusItemService.d.ts → chatStatus/chatStatusItemService.d.ts} +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatStatus/media}/chatStatus.css +22 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatusWidget.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatusWidget.js +108 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalOutputAccessibleView.d.ts +10 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatTerminalOutputAccessibleView.js +34 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +57 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +478 -146
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewTitleControl.d.ts +43 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewTitleControl.js +204 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWidgetService.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatWidgetService.js +187 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +108 -62
- 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/languageModelToolsConfirmationService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.js +37 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +37 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +232 -97
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatStatusWidget.css +57 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatViewPane.css +142 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatViewTitleControl.css +39 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +51 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +5 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +12 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +19 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +8 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatCodeMapperService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatModelStore.d.ts +49 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatModelStore.js +100 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +3 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +41 -15
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +208 -162
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +15 -7
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +61 -7
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +10 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +60 -43
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +27 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +37 -47
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +120 -87
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +49 -42
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +293 -187
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +17 -5
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +43 -9
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +48 -29
- 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 +8 -13
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +2 -2
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +36 -41
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +3 -3
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +2 -2
- 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/terminal.chat.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +18 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +142 -38
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +3 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +19 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +78 -6
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +7 -11
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +26 -44
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +9 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +0 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +23 -17
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +4 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +2 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +26 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +32 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +15 -29
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +10 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +38 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +32 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +5 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +4 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +4 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +128 -62
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +12 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +68 -22
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +20 -22
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +13 -12
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +20 -19
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +72 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +5 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.d.ts +0 -53
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.js +0 -154
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +0 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +0 -25
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +0 -135
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +0 -35
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +0 -216
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +0 -1617
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +0 -44
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +0 -313
- /package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatSetup/media}/apple-dark.svg +0 -0
- /package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatSetup/media}/apple-light.svg +0 -0
- /package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatSetup/media}/github.svg +0 -0
- /package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatSetup/media}/google.svg +0 -0
- /package/vscode/src/vs/workbench/contrib/chat/browser/{chatStatusItemService.js → chatStatus/chatStatusItemService.js} +0 -0
|
@@ -17,8 +17,8 @@ export declare class ChatStatusBarEntry extends Disposable implements IWorkbench
|
|
|
17
17
|
private readonly chatSessionsService;
|
|
18
18
|
static readonly ID = "workbench.contrib.chatStatusBarEntry";
|
|
19
19
|
private entry;
|
|
20
|
-
private dashboard;
|
|
21
20
|
private readonly activeCodeEditorListener;
|
|
21
|
+
private runningSessionsCount;
|
|
22
22
|
constructor(chatEntitlementService: ChatEntitlementService, instantiationService: IInstantiationService, statusbarService: IStatusbarService, editorService: IEditorService, configurationService: IConfigurationService, completionsService: IInlineCompletionsService, chatSessionsService: IChatSessionsService);
|
|
23
23
|
private update;
|
|
24
24
|
private registerListeners;
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
|
|
2
|
+
import { registerCss } from '@codingame/monaco-vscode-api/css';
|
|
3
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
4
|
+
import * as chatStatus from './media/chatStatus.css';
|
|
5
|
+
import { Disposable, MutableDisposable, DisposableStore } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
6
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
7
|
+
import { StatusbarAlignment, ShowTooltipCommand } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar';
|
|
8
|
+
import { IStatusbarService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/statusbar/browser/statusbar.service';
|
|
9
|
+
import { ChatEntitlement, isProUser } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
|
|
10
|
+
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
11
|
+
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
12
|
+
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
13
|
+
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
14
|
+
import { getCodeEditor } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorBrowser';
|
|
15
|
+
import { IInlineCompletionsService } from '@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/inlineCompletionsService.service';
|
|
16
|
+
import { IChatSessionsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service';
|
|
17
|
+
import { ChatStatusDashboard } from './chatStatusDashboard.js';
|
|
18
|
+
import { mainWindow } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/window';
|
|
19
|
+
import { disposableWindowInterval } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
20
|
+
import { isNewUser, isCompletionsEnabled } from './chatStatus.js';
|
|
21
|
+
import product from '@codingame/monaco-vscode-api/vscode/vs/platform/product/common/product';
|
|
22
|
+
|
|
23
|
+
registerCss(chatStatus);
|
|
24
|
+
let ChatStatusBarEntry = class ChatStatusBarEntry extends Disposable {
|
|
25
|
+
static { this.ID = 'workbench.contrib.chatStatusBarEntry'; }
|
|
26
|
+
constructor(chatEntitlementService, instantiationService, statusbarService, editorService, configurationService, completionsService, chatSessionsService) {
|
|
27
|
+
super();
|
|
28
|
+
this.chatEntitlementService = chatEntitlementService;
|
|
29
|
+
this.instantiationService = instantiationService;
|
|
30
|
+
this.statusbarService = statusbarService;
|
|
31
|
+
this.editorService = editorService;
|
|
32
|
+
this.configurationService = configurationService;
|
|
33
|
+
this.completionsService = completionsService;
|
|
34
|
+
this.chatSessionsService = chatSessionsService;
|
|
35
|
+
this.entry = undefined;
|
|
36
|
+
this.activeCodeEditorListener = this._register(( new MutableDisposable()));
|
|
37
|
+
this.runningSessionsCount = this.chatSessionsService.getInProgress().reduce((total, item) => total + item.count, 0);
|
|
38
|
+
this.update();
|
|
39
|
+
this.registerListeners();
|
|
40
|
+
}
|
|
41
|
+
update() {
|
|
42
|
+
const sentiment = this.chatEntitlementService.sentiment;
|
|
43
|
+
if (!sentiment.hidden) {
|
|
44
|
+
const props = this.getEntryProps();
|
|
45
|
+
if (this.entry) {
|
|
46
|
+
this.entry.update(props);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
this.entry = this.statusbarService.addEntry(props, 'chat.statusBarEntry', StatusbarAlignment.RIGHT, { location: { id: 'status.editor.mode', priority: 100.1 }, alignment: StatusbarAlignment.RIGHT });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
this.entry?.dispose();
|
|
54
|
+
this.entry = undefined;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
registerListeners() {
|
|
58
|
+
this._register(this.chatEntitlementService.onDidChangeQuotaExceeded(() => this.update()));
|
|
59
|
+
this._register(this.chatEntitlementService.onDidChangeSentiment(() => this.update()));
|
|
60
|
+
this._register(this.chatEntitlementService.onDidChangeEntitlement(() => this.update()));
|
|
61
|
+
this._register(this.completionsService.onDidChangeIsSnoozing(() => this.update()));
|
|
62
|
+
this._register(this.chatSessionsService.onDidChangeInProgress(() => {
|
|
63
|
+
const oldSessionsCount = this.runningSessionsCount;
|
|
64
|
+
this.runningSessionsCount = this.chatSessionsService.getInProgress().reduce((total, item) => total + item.count, 0);
|
|
65
|
+
if (this.runningSessionsCount !== oldSessionsCount) {
|
|
66
|
+
this.update();
|
|
67
|
+
}
|
|
68
|
+
}));
|
|
69
|
+
this._register(this.editorService.onDidActiveEditorChange(() => this.onDidActiveEditorChange()));
|
|
70
|
+
this._register(this.configurationService.onDidChangeConfiguration(e => {
|
|
71
|
+
if (e.affectsConfiguration(product.defaultChatAgent.completionsEnablementSetting)) {
|
|
72
|
+
this.update();
|
|
73
|
+
}
|
|
74
|
+
}));
|
|
75
|
+
}
|
|
76
|
+
onDidActiveEditorChange() {
|
|
77
|
+
this.update();
|
|
78
|
+
this.activeCodeEditorListener.clear();
|
|
79
|
+
const activeCodeEditor = getCodeEditor(this.editorService.activeTextEditorControl);
|
|
80
|
+
if (activeCodeEditor) {
|
|
81
|
+
this.activeCodeEditorListener.value = activeCodeEditor.onDidChangeModelLanguage(() => {
|
|
82
|
+
this.update();
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
getEntryProps() {
|
|
87
|
+
let text = '$(copilot)';
|
|
88
|
+
let ariaLabel = ( localize(5628, "Copilot status"));
|
|
89
|
+
let kind;
|
|
90
|
+
if (isNewUser(this.chatEntitlementService)) {
|
|
91
|
+
const entitlement = this.chatEntitlementService.entitlement;
|
|
92
|
+
if (this.chatEntitlementService.sentiment.later ||
|
|
93
|
+
entitlement === ChatEntitlement.Available ||
|
|
94
|
+
isProUser(entitlement) ||
|
|
95
|
+
entitlement === ChatEntitlement.Free
|
|
96
|
+
) {
|
|
97
|
+
const finishSetup = ( localize(5629, "Finish Setup"));
|
|
98
|
+
text = `$(copilot) ${finishSetup}`;
|
|
99
|
+
ariaLabel = finishSetup;
|
|
100
|
+
kind = 'prominent';
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
const chatQuotaExceeded = this.chatEntitlementService.quotas.chat?.percentRemaining === 0;
|
|
105
|
+
const completionsQuotaExceeded = this.chatEntitlementService.quotas.completions?.percentRemaining === 0;
|
|
106
|
+
if (this.chatEntitlementService.sentiment.disabled || this.chatEntitlementService.sentiment.untrusted) {
|
|
107
|
+
text = '$(copilot-unavailable)';
|
|
108
|
+
ariaLabel = ( localize(5630, "Copilot disabled"));
|
|
109
|
+
}
|
|
110
|
+
else if (this.runningSessionsCount > 0) {
|
|
111
|
+
text = '$(copilot-in-progress)';
|
|
112
|
+
if (this.runningSessionsCount > 1) {
|
|
113
|
+
ariaLabel = ( localize(5631, "{0} agent sessions in progress", this.runningSessionsCount));
|
|
114
|
+
}
|
|
115
|
+
else {
|
|
116
|
+
ariaLabel = ( localize(5632, "1 agent session in progress"));
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Unknown) {
|
|
120
|
+
const signedOutWarning = ( localize(5633, "Signed out"));
|
|
121
|
+
text = `${this.chatEntitlementService.anonymous ? '$(copilot)' : '$(copilot-not-connected)'} ${signedOutWarning}`;
|
|
122
|
+
ariaLabel = signedOutWarning;
|
|
123
|
+
kind = 'prominent';
|
|
124
|
+
}
|
|
125
|
+
else if (this.chatEntitlementService.entitlement === ChatEntitlement.Free && (chatQuotaExceeded || completionsQuotaExceeded)) {
|
|
126
|
+
let quotaWarning;
|
|
127
|
+
if (chatQuotaExceeded && !completionsQuotaExceeded) {
|
|
128
|
+
quotaWarning = ( localize(5634, "Chat quota reached"));
|
|
129
|
+
}
|
|
130
|
+
else if (completionsQuotaExceeded && !chatQuotaExceeded) {
|
|
131
|
+
quotaWarning = ( localize(5635, "Inline suggestions quota reached"));
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
quotaWarning = ( localize(5636, "Quota reached"));
|
|
135
|
+
}
|
|
136
|
+
text = `$(copilot-warning) ${quotaWarning}`;
|
|
137
|
+
ariaLabel = quotaWarning;
|
|
138
|
+
kind = 'prominent';
|
|
139
|
+
}
|
|
140
|
+
else if (this.editorService.activeTextEditorLanguageId && !isCompletionsEnabled(this.configurationService, this.editorService.activeTextEditorLanguageId)) {
|
|
141
|
+
text = '$(copilot-unavailable)';
|
|
142
|
+
ariaLabel = ( localize(5637, "Inline suggestions disabled"));
|
|
143
|
+
}
|
|
144
|
+
else if (this.completionsService.isSnoozing()) {
|
|
145
|
+
text = '$(copilot-snooze)';
|
|
146
|
+
ariaLabel = ( localize(5638, "Inline suggestions snoozed"));
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const baseResult = {
|
|
150
|
+
name: ( localize(5639, "Copilot Status")),
|
|
151
|
+
text,
|
|
152
|
+
ariaLabel,
|
|
153
|
+
command: ShowTooltipCommand,
|
|
154
|
+
showInAllWindows: true,
|
|
155
|
+
kind,
|
|
156
|
+
tooltip: {
|
|
157
|
+
element: (token) => {
|
|
158
|
+
const store = ( new DisposableStore());
|
|
159
|
+
store.add(token.onCancellationRequested(() => {
|
|
160
|
+
store.dispose();
|
|
161
|
+
}));
|
|
162
|
+
const elem = ChatStatusDashboard.instantiateInContents(this.instantiationService, store);
|
|
163
|
+
store.add(disposableWindowInterval(mainWindow, () => {
|
|
164
|
+
if (!elem.isConnected) {
|
|
165
|
+
store.dispose();
|
|
166
|
+
}
|
|
167
|
+
}, 2000));
|
|
168
|
+
return elem;
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
return baseResult;
|
|
173
|
+
}
|
|
174
|
+
dispose() {
|
|
175
|
+
super.dispose();
|
|
176
|
+
this.entry?.dispose();
|
|
177
|
+
this.entry = undefined;
|
|
178
|
+
}
|
|
179
|
+
};
|
|
180
|
+
ChatStatusBarEntry = ( __decorate([
|
|
181
|
+
( __param(0, IChatEntitlementService)),
|
|
182
|
+
( __param(1, IInstantiationService)),
|
|
183
|
+
( __param(2, IStatusbarService)),
|
|
184
|
+
( __param(3, IEditorService)),
|
|
185
|
+
( __param(4, IConfigurationService)),
|
|
186
|
+
( __param(5, IInlineCompletionsService)),
|
|
187
|
+
( __param(6, IChatSessionsService))
|
|
188
|
+
], ChatStatusBarEntry));
|
|
189
|
+
|
|
190
|
+
export { ChatStatusBarEntry };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IChatStatusItemService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatStatusItemService.service";
|
|
1
|
+
import { IChatStatusItemService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.service";
|
|
2
2
|
export interface IChatStatusItemChangeEvent {
|
|
3
3
|
readonly entry: ChatStatusEntry;
|
|
4
4
|
}
|
package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatStatus/media}/chatStatus.css
RENAMED
|
@@ -128,10 +128,31 @@
|
|
|
128
128
|
color: var(--vscode-disabledForeground);
|
|
129
129
|
}
|
|
130
130
|
|
|
131
|
+
/* Model Selection */
|
|
132
|
+
|
|
133
|
+
.chat-status-bar-entry-tooltip .model-selection {
|
|
134
|
+
display: flex;
|
|
135
|
+
align-items: center;
|
|
136
|
+
gap: 6px;
|
|
137
|
+
padding: 6px 0 0 0;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
.chat-status-bar-entry-tooltip .model-selection .model-text {
|
|
141
|
+
flex: 1;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
.chat-status-bar-entry-tooltip .model-selection .model-action-bar {
|
|
145
|
+
margin-left: auto;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
.chat-status-bar-entry-tooltip .model-selection .model-action-bar .codicon {
|
|
149
|
+
color: var(--vscode-descriptionForeground);
|
|
150
|
+
}
|
|
151
|
+
|
|
131
152
|
/* Snoozing */
|
|
132
153
|
|
|
133
154
|
.chat-status-bar-entry-tooltip .snooze-completions {
|
|
134
|
-
margin-top:
|
|
155
|
+
margin-top: 1px;
|
|
135
156
|
display: flex;
|
|
136
157
|
flex-direction: row;
|
|
137
158
|
flex-wrap: nowrap;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
|
|
2
|
+
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
3
|
+
import { ICommandService } from "@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service";
|
|
4
|
+
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
5
|
+
import { IChatEntitlementService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service";
|
|
6
|
+
import { IChatInputPartWidget } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/chatInputPartWidgets";
|
|
7
|
+
/**
|
|
8
|
+
* Widget that displays a status message with an optional action button.
|
|
9
|
+
* Only shown for free tier users when the setting is enabled (experiment controlled via onExP tag).
|
|
10
|
+
*/
|
|
11
|
+
export declare class ChatStatusWidget extends Disposable implements IChatInputPartWidget {
|
|
12
|
+
private readonly chatEntitlementService;
|
|
13
|
+
private readonly commandService;
|
|
14
|
+
private readonly configurationService;
|
|
15
|
+
static readonly ID = "chatStatusWidget";
|
|
16
|
+
readonly domNode: HTMLElement;
|
|
17
|
+
private readonly _onDidChangeHeight;
|
|
18
|
+
readonly onDidChangeHeight: Event<void>;
|
|
19
|
+
private messageElement;
|
|
20
|
+
private actionButton;
|
|
21
|
+
constructor(chatEntitlementService: IChatEntitlementService, commandService: ICommandService, configurationService: IConfigurationService);
|
|
22
|
+
private initializeIfEnabled;
|
|
23
|
+
get height(): number;
|
|
24
|
+
private createWidgetContent;
|
|
25
|
+
}
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
|
|
2
|
+
import { registerCss } from '@codingame/monaco-vscode-api/css';
|
|
3
|
+
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
4
|
+
import * as chatStatusWidget from './media/chatStatusWidget.css';
|
|
5
|
+
import { $ as $$1 } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/dom';
|
|
6
|
+
import { Button } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/button/button';
|
|
7
|
+
import { Emitter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
8
|
+
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
9
|
+
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
10
|
+
import { ICommandService } from '@codingame/monaco-vscode-api/vscode/vs/platform/commands/common/commands.service';
|
|
11
|
+
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
12
|
+
import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
|
|
13
|
+
import { defaultButtonStyles } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/browser/defaultStyles';
|
|
14
|
+
import { ChatEntitlement, ChatEntitlementContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService';
|
|
15
|
+
import { IChatEntitlementService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/chat/common/chatEntitlementService.service';
|
|
16
|
+
import { ChatInputPartWidgetsRegistry } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/chatInputPartWidgets';
|
|
17
|
+
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
18
|
+
import { CHAT_SETUP_ACTION_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
19
|
+
|
|
20
|
+
registerCss(chatStatusWidget);
|
|
21
|
+
const $ = $$1;
|
|
22
|
+
let ChatStatusWidget = class ChatStatusWidget extends Disposable {
|
|
23
|
+
static { this.ID = 'chatStatusWidget'; }
|
|
24
|
+
constructor(chatEntitlementService, commandService, configurationService) {
|
|
25
|
+
super();
|
|
26
|
+
this.chatEntitlementService = chatEntitlementService;
|
|
27
|
+
this.commandService = commandService;
|
|
28
|
+
this.configurationService = configurationService;
|
|
29
|
+
this._onDidChangeHeight = this._register(( new Emitter()));
|
|
30
|
+
this.onDidChangeHeight = this._onDidChangeHeight.event;
|
|
31
|
+
this.domNode = $('.chat-status-widget');
|
|
32
|
+
this.domNode.style.display = 'none';
|
|
33
|
+
this.initializeIfEnabled();
|
|
34
|
+
}
|
|
35
|
+
initializeIfEnabled() {
|
|
36
|
+
const enabledSku = this.configurationService.getValue('chat.statusWidget.sku');
|
|
37
|
+
if (enabledSku !== 'free' && enabledSku !== 'anonymous') {
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
const entitlement = this.chatEntitlementService.entitlement;
|
|
41
|
+
const isAnonymous = this.chatEntitlementService.anonymous;
|
|
42
|
+
if (enabledSku === 'anonymous' && isAnonymous) {
|
|
43
|
+
this.createWidgetContent(enabledSku);
|
|
44
|
+
}
|
|
45
|
+
else if (enabledSku === 'free' && entitlement === ChatEntitlement.Free) {
|
|
46
|
+
this.createWidgetContent(enabledSku);
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
this.domNode.style.display = '';
|
|
52
|
+
this._onDidChangeHeight.fire();
|
|
53
|
+
}
|
|
54
|
+
get height() {
|
|
55
|
+
return this.domNode.style.display === 'none' ? 0 : this.domNode.offsetHeight;
|
|
56
|
+
}
|
|
57
|
+
createWidgetContent(enabledSku) {
|
|
58
|
+
const contentContainer = $('.chat-status-content');
|
|
59
|
+
this.messageElement = $('.chat-status-message');
|
|
60
|
+
contentContainer.appendChild(this.messageElement);
|
|
61
|
+
const actionContainer = $('.chat-status-action');
|
|
62
|
+
this.actionButton = this._register(( new Button(actionContainer, {
|
|
63
|
+
...defaultButtonStyles,
|
|
64
|
+
supportIcons: true
|
|
65
|
+
})));
|
|
66
|
+
this.actionButton.element.classList.add('chat-status-button');
|
|
67
|
+
if (enabledSku === 'anonymous') {
|
|
68
|
+
const message = ( localize(
|
|
69
|
+
5640,
|
|
70
|
+
"You've reached the limit for chat messages. Try Copilot Pro for free."
|
|
71
|
+
));
|
|
72
|
+
const buttonLabel = ( localize(5641, "Sign In"));
|
|
73
|
+
this.messageElement.textContent = message;
|
|
74
|
+
this.actionButton.label = buttonLabel;
|
|
75
|
+
this.actionButton.element.ariaLabel = ( localize(5642, "{0} {1}", message, buttonLabel));
|
|
76
|
+
}
|
|
77
|
+
else {
|
|
78
|
+
const message = ( localize(5643, "You've reached the limit for chat messages."));
|
|
79
|
+
const buttonLabel = ( localize(5644, "Upgrade"));
|
|
80
|
+
this.messageElement.textContent = message;
|
|
81
|
+
this.actionButton.label = buttonLabel;
|
|
82
|
+
this.actionButton.element.ariaLabel = ( localize(5645, "{0} {1}", message, buttonLabel));
|
|
83
|
+
}
|
|
84
|
+
this._register(this.actionButton.onDidClick(async () => {
|
|
85
|
+
const commandId = this.chatEntitlementService.anonymous
|
|
86
|
+
? CHAT_SETUP_ACTION_ID
|
|
87
|
+
: 'workbench.action.chat.upgradePlan';
|
|
88
|
+
await this.commandService.executeCommand(commandId);
|
|
89
|
+
}));
|
|
90
|
+
this.domNode.appendChild(contentContainer);
|
|
91
|
+
this.domNode.appendChild(actionContainer);
|
|
92
|
+
}
|
|
93
|
+
};
|
|
94
|
+
ChatStatusWidget = ( __decorate([
|
|
95
|
+
( __param(0, IChatEntitlementService)),
|
|
96
|
+
( __param(1, ICommandService)),
|
|
97
|
+
( __param(2, IConfigurationService))
|
|
98
|
+
], ChatStatusWidget));
|
|
99
|
+
ChatInputPartWidgetsRegistry.register(ChatStatusWidget.ID, ChatStatusWidget, ( ContextKeyExpr.and(
|
|
100
|
+
ChatContextKeys.chatQuotaExceeded,
|
|
101
|
+
ChatContextKeys.chatSessionIsEmpty,
|
|
102
|
+
( ContextKeyExpr.or(
|
|
103
|
+
ChatContextKeys.Entitlement.planFree,
|
|
104
|
+
ChatEntitlementContextKeys.chatAnonymous
|
|
105
|
+
))
|
|
106
|
+
)));
|
|
107
|
+
|
|
108
|
+
export { ChatStatusWidget };
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { AccessibleContentProvider, AccessibleViewType } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleView";
|
|
2
|
+
import { IAccessibleViewImplementation } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleViewRegistry";
|
|
3
|
+
import { ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
4
|
+
export declare class ChatTerminalOutputAccessibleView implements IAccessibleViewImplementation {
|
|
5
|
+
readonly priority = 115;
|
|
6
|
+
readonly name = "chatTerminalOutput";
|
|
7
|
+
readonly type = AccessibleViewType.View;
|
|
8
|
+
readonly when: import("@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey").RawContextKey<boolean>;
|
|
9
|
+
getProvider(accessor: ServicesAccessor): AccessibleContentProvider | undefined;
|
|
10
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
|
|
2
|
+
import { AccessibleViewType, AccessibleContentProvider, AccessibleViewProviderId } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibility/browser/accessibleView';
|
|
3
|
+
import { AccessibilityVerbositySettingId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
|
|
4
|
+
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
5
|
+
import { ITerminalChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/terminal/browser/terminal.service';
|
|
6
|
+
|
|
7
|
+
class ChatTerminalOutputAccessibleView {
|
|
8
|
+
constructor() {
|
|
9
|
+
this.priority = 115;
|
|
10
|
+
this.name = 'chatTerminalOutput';
|
|
11
|
+
this.type = AccessibleViewType.View;
|
|
12
|
+
this.when = ChatContextKeys.inChatTerminalToolOutput;
|
|
13
|
+
}
|
|
14
|
+
getProvider(accessor) {
|
|
15
|
+
const terminalChatService = accessor.get(ITerminalChatService);
|
|
16
|
+
const part = terminalChatService.getFocusedProgressPart();
|
|
17
|
+
if (!part) {
|
|
18
|
+
return;
|
|
19
|
+
}
|
|
20
|
+
const content = part.getCommandAndOutputAsText();
|
|
21
|
+
if (!content) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
return ( new AccessibleContentProvider(
|
|
25
|
+
AccessibleViewProviderId.ChatTerminalOutput,
|
|
26
|
+
{ type: AccessibleViewType.View, id: AccessibleViewProviderId.ChatTerminalOutput, language: 'text' },
|
|
27
|
+
() => content,
|
|
28
|
+
() => part.focusOutput(),
|
|
29
|
+
AccessibilityVerbositySettingId.TerminalChatOutput
|
|
30
|
+
));
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
export { ChatTerminalOutputAccessibleView };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
|
|
2
2
|
import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
|
|
3
3
|
import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
|
|
4
|
-
import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-
|
|
4
|
+
import { ChatDynamicVariableModel } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables';
|
|
5
5
|
import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
|
|
6
6
|
|
|
7
7
|
let ChatVariablesService = class ChatVariablesService {
|
|
@@ -5,24 +5,25 @@ import { IContextMenuService } from "@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
5
5
|
import { IHoverService } from "@codingame/monaco-vscode-api/vscode/vs/platform/hover/browser/hover.service";
|
|
6
6
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
7
7
|
import { IKeybindingService } from "@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service";
|
|
8
|
-
import { ILayoutService } from "@codingame/monaco-vscode-api/vscode/vs/platform/layout/browser/layoutService.service";
|
|
9
8
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
10
9
|
import { IOpenerService } from "@codingame/monaco-vscode-api/vscode/vs/platform/opener/common/opener.service";
|
|
11
10
|
import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service";
|
|
12
11
|
import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service";
|
|
13
12
|
import { IThemeService } from "@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/themeService.service";
|
|
14
|
-
import { IViewPaneOptions, ViewPane } from "@codingame/monaco-vscode-
|
|
13
|
+
import { IViewPaneOptions, ViewPane } from "@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/views/viewPane";
|
|
15
14
|
import { IViewDescriptorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/views.service";
|
|
15
|
+
import { ILifecycleService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle.service";
|
|
16
16
|
import { IChatViewTitleActionContext } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatActions";
|
|
17
17
|
import { IChatAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service";
|
|
18
|
+
import { IChatModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
18
19
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
19
20
|
import { IChatSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatSessionsService.service";
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
|
|
21
|
+
import { ChatWidget } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/chatWidget";
|
|
22
|
+
import { IViewWelcomeDelegate } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewWelcomeController";
|
|
23
|
+
import { IWorkbenchLayoutService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/layout/browser/layoutService.service";
|
|
24
|
+
import { IProgressService } from "@codingame/monaco-vscode-api/vscode/vs/platform/progress/common/progress.service";
|
|
25
|
+
import { IAgentSessionsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.service";
|
|
24
26
|
export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelegate {
|
|
25
|
-
private readonly chatOptions;
|
|
26
27
|
private readonly storageService;
|
|
27
28
|
private readonly chatService;
|
|
28
29
|
private readonly chatAgentService;
|
|
@@ -30,26 +31,64 @@ export declare class ChatViewPane extends ViewPane implements IViewWelcomeDelega
|
|
|
30
31
|
private readonly layoutService;
|
|
31
32
|
private readonly chatSessionsService;
|
|
32
33
|
private readonly telemetryService;
|
|
34
|
+
private readonly progressService;
|
|
35
|
+
private readonly agentSessionsService;
|
|
36
|
+
private static readonly SESSIONS_LIMIT;
|
|
37
|
+
private static readonly SESSIONS_SIDEBAR_WIDTH;
|
|
38
|
+
private static readonly SESSIONS_SIDEBAR_VIEW_MIN_WIDTH;
|
|
33
39
|
private _widget;
|
|
34
40
|
get widget(): ChatWidget;
|
|
35
|
-
private readonly
|
|
36
|
-
private memento;
|
|
41
|
+
private readonly memento;
|
|
37
42
|
private readonly viewState;
|
|
38
|
-
private
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
43
|
+
private viewPaneContainer;
|
|
44
|
+
private chatViewLocationContext;
|
|
45
|
+
private sessionsContainer;
|
|
46
|
+
private sessionsTitleContainer;
|
|
47
|
+
private sessionsTitle;
|
|
48
|
+
private sessionsControlContainer;
|
|
49
|
+
private sessionsControl;
|
|
50
|
+
private sessionsLinkContainer;
|
|
51
|
+
private sessionsLink;
|
|
52
|
+
private sessionsCount;
|
|
53
|
+
private sessionsViewerLimited;
|
|
54
|
+
private sessionsViewerOrientation;
|
|
55
|
+
private sessionsViewerOrientationContext;
|
|
56
|
+
private sessionsViewerLimitedContext;
|
|
57
|
+
private sessionsViewerPosition;
|
|
58
|
+
private sessionsViewerPositionContext;
|
|
59
|
+
private titleControl;
|
|
60
|
+
private welcomeController;
|
|
61
|
+
private lastDimensions;
|
|
62
|
+
private restoringSession;
|
|
63
|
+
private readonly modelRef;
|
|
64
|
+
constructor(options: IViewPaneOptions, keybindingService: IKeybindingService, contextMenuService: IContextMenuService, configurationService: IConfigurationService, contextKeyService: IContextKeyService, viewDescriptorService: IViewDescriptorService, instantiationService: IInstantiationService, openerService: IOpenerService, themeService: IThemeService, hoverService: IHoverService, storageService: IStorageService, chatService: IChatService, chatAgentService: IChatAgentService, logService: ILogService, layoutService: IWorkbenchLayoutService, chatSessionsService: IChatSessionsService, telemetryService: ITelemetryService, lifecycleService: ILifecycleService, progressService: IProgressService, agentSessionsService: IAgentSessionsService);
|
|
65
|
+
private updateContextKeys;
|
|
66
|
+
private updateViewPaneClasses;
|
|
67
|
+
private registerListeners;
|
|
68
|
+
private onDidChangeAgents;
|
|
69
|
+
private getTransferredOrPersistedSessionInfo;
|
|
42
70
|
getActionsContext(): IChatViewTitleActionContext | undefined;
|
|
43
|
-
private
|
|
71
|
+
private showModel;
|
|
44
72
|
shouldShowWelcome(): boolean;
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
73
|
+
protected renderBody(parent: HTMLElement): void;
|
|
74
|
+
private createControls;
|
|
75
|
+
private createSessionsControl;
|
|
76
|
+
private notifySessionsControlLimitedChanged;
|
|
77
|
+
private notifySessionsControlCountChanged;
|
|
78
|
+
private updateSessionsControlVisibility;
|
|
79
|
+
private createChatControl;
|
|
80
|
+
private createChatTitleControl;
|
|
81
|
+
private registerControlsListeners;
|
|
82
|
+
private setupContextMenu;
|
|
83
|
+
private applyModel;
|
|
48
84
|
private clear;
|
|
49
|
-
loadSession(
|
|
85
|
+
loadSession(sessionResource: URI): Promise<IChatModel | undefined>;
|
|
50
86
|
focusInput(): void;
|
|
51
87
|
focus(): void;
|
|
52
88
|
protected layoutBody(height: number, width: number): void;
|
|
89
|
+
private layoutSessionsControl;
|
|
53
90
|
saveState(): void;
|
|
54
91
|
private updateViewState;
|
|
92
|
+
private updateWidgetLockState;
|
|
93
|
+
get singleViewPaneContainerTitle(): string | undefined;
|
|
55
94
|
}
|