@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
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js
CHANGED
|
@@ -8,19 +8,18 @@ import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/
|
|
|
8
8
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
9
9
|
import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
|
|
10
10
|
import { IListService } from '@codingame/monaco-vscode-api/vscode/vs/platform/list/browser/listService.service';
|
|
11
|
-
import { resolveCommandsContext } from '@codingame/monaco-vscode-
|
|
11
|
+
import { resolveCommandsContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/editor/editorCommandsContext';
|
|
12
12
|
import { ActiveEditorContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
|
|
13
13
|
import { EditorResourceAccessor, SideBySideEditor, TEXT_DIFF_EDITOR_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
14
14
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
15
15
|
import { ACTIVE_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService';
|
|
16
16
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
17
|
-
import { MultiDiffEditorInput } from '@codingame/monaco-vscode-
|
|
18
|
-
import { NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_EDITOR_FOCUSED } from '@codingame/monaco-vscode-
|
|
17
|
+
import { MultiDiffEditorInput } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput';
|
|
18
|
+
import { NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_EDITOR_FOCUSED } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
|
|
19
19
|
import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
|
|
20
|
-
import { ModifiedFileEntryState, CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
20
|
+
import { ModifiedFileEntryState, CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME, parseChatMultiDiffUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
21
21
|
import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service';
|
|
22
|
-
import {
|
|
23
|
-
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
22
|
+
import { CHAT_CATEGORY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
|
|
24
23
|
import { ctxReviewModeEnabled, ctxHasEditorModification, ctxIsGlobalEditingSession, ctxIsCurrentlyBeingModified, ctxCursorInChangeRange } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys';
|
|
25
24
|
|
|
26
25
|
class ChatEditingEditorAction extends Action2 {
|
|
@@ -55,8 +54,8 @@ class NavigateAction extends ChatEditingEditorAction {
|
|
|
55
54
|
? 'chatEditor.action.navigateNext'
|
|
56
55
|
: 'chatEditor.action.navigatePrevious',
|
|
57
56
|
title: next
|
|
58
|
-
? ( localize2(
|
|
59
|
-
: ( localize2(
|
|
57
|
+
? ( localize2(5219, 'Go to Next Chat Edit'))
|
|
58
|
+
: ( localize2(5220, 'Go to Previous Chat Edit')),
|
|
60
59
|
icon: next ? Codicon.arrowDown : Codicon.arrowUp,
|
|
61
60
|
precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ctxHasEditorModification)),
|
|
62
61
|
keybinding: {
|
|
@@ -128,14 +127,14 @@ class KeepOrUndoAction extends ChatEditingEditorAction {
|
|
|
128
127
|
super({
|
|
129
128
|
id,
|
|
130
129
|
title: _keep
|
|
131
|
-
? ( localize2(
|
|
132
|
-
: ( localize2(
|
|
130
|
+
? ( localize2(5221, 'Keep Chat Edits'))
|
|
131
|
+
: ( localize2(5222, 'Undo Chat Edits')),
|
|
133
132
|
shortTitle: _keep
|
|
134
|
-
? ( localize2(
|
|
135
|
-
: ( localize2(
|
|
133
|
+
? ( localize2(5223, 'Keep'))
|
|
134
|
+
: ( localize2(5224, 'Undo')),
|
|
136
135
|
tooltip: _keep
|
|
137
|
-
? ( localize2(
|
|
138
|
-
: ( localize2(
|
|
136
|
+
? ( localize2(5225, 'Keep Chat Edits in this File'))
|
|
137
|
+
: ( localize2(5226, 'Undo Chat Edits in this File')),
|
|
139
138
|
precondition: ( ContextKeyExpr.and(ctxIsGlobalEditingSession, ctxHasEditorModification, ( ctxIsCurrentlyBeingModified.negate()))),
|
|
140
139
|
icon: _keep
|
|
141
140
|
? Codicon.check
|
|
@@ -186,8 +185,8 @@ class AcceptRejectHunkAction extends ChatEditingEditorAction {
|
|
|
186
185
|
constructor(_accept) {
|
|
187
186
|
super({
|
|
188
187
|
id: _accept ? acceptHunkId : undoHunkId,
|
|
189
|
-
title: _accept ? ( localize2(
|
|
190
|
-
shortTitle: _accept ? ( localize2(
|
|
188
|
+
title: _accept ? ( localize2(5227, 'Keep this Change')) : ( localize2(5228, 'Undo this Change')),
|
|
189
|
+
shortTitle: _accept ? ( localize2(5229, 'Keep')) : ( localize2(5230, 'Undo')),
|
|
191
190
|
precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxIsCurrentlyBeingModified.negate()))),
|
|
192
191
|
f1: true,
|
|
193
192
|
keybinding: {
|
|
@@ -233,7 +232,7 @@ class ToggleDiffAction extends ChatEditingEditorAction {
|
|
|
233
232
|
constructor() {
|
|
234
233
|
super({
|
|
235
234
|
id: 'chatEditor.action.toggleDiff',
|
|
236
|
-
title: ( localize2(
|
|
235
|
+
title: ( localize2(5231, 'Toggle Diff Editor for Chat Edits')),
|
|
237
236
|
category: CHAT_CATEGORY,
|
|
238
237
|
toggled: {
|
|
239
238
|
condition: ( ContextKeyExpr.or(EditorContextKeys.inDiffEditor, ( ActiveEditorContext.isEqualTo(TEXT_DIFF_EDITOR_ID)))),
|
|
@@ -265,7 +264,7 @@ class ToggleAccessibleDiffViewAction extends ChatEditingEditorAction {
|
|
|
265
264
|
constructor() {
|
|
266
265
|
super({
|
|
267
266
|
id: 'chatEditor.action.showAccessibleDiffView',
|
|
268
|
-
title: ( localize2(
|
|
267
|
+
title: ( localize2(5232, 'Show Accessible Diff View for Chat Edits')),
|
|
269
268
|
f1: true,
|
|
270
269
|
precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxIsCurrentlyBeingModified.negate()))),
|
|
271
270
|
keybinding: {
|
|
@@ -283,7 +282,7 @@ class ReviewChangesAction extends ChatEditingEditorAction {
|
|
|
283
282
|
constructor() {
|
|
284
283
|
super({
|
|
285
284
|
id: 'chatEditor.action.reviewChanges',
|
|
286
|
-
title: ( localize2(
|
|
285
|
+
title: ( localize2(5233, "Review")),
|
|
287
286
|
precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxIsCurrentlyBeingModified.negate()))),
|
|
288
287
|
menu: [{
|
|
289
288
|
id: MenuId.ChatEditingEditorContent,
|
|
@@ -302,8 +301,8 @@ class AcceptAllEditsAction extends ChatEditingEditorAction {
|
|
|
302
301
|
constructor() {
|
|
303
302
|
super({
|
|
304
303
|
id: AcceptAllEditsAction.ID,
|
|
305
|
-
title: ( localize2(
|
|
306
|
-
tooltip: ( localize2(
|
|
304
|
+
title: ( localize2(5234, 'Keep All Chat Edits')),
|
|
305
|
+
tooltip: ( localize2(5235, 'Keep All Chat Edits in this Session')),
|
|
307
306
|
precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxIsCurrentlyBeingModified.negate()))),
|
|
308
307
|
icon: Codicon.checkAll,
|
|
309
308
|
f1: true,
|
|
@@ -322,7 +321,7 @@ class MultiDiffAcceptDiscardAction extends Action2 {
|
|
|
322
321
|
constructor(accept) {
|
|
323
322
|
super({
|
|
324
323
|
id: accept ? 'chatEditing.multidiff.acceptAllFiles' : 'chatEditing.multidiff.discardAllFiles',
|
|
325
|
-
title: accept ? ( localize(
|
|
324
|
+
title: accept ? ( localize(5236, 'Keep All Edits')) : ( localize(5237, 'Undo All Edits')),
|
|
326
325
|
icon: accept ? Codicon.check : Codicon.discard,
|
|
327
326
|
menu: {
|
|
328
327
|
when: ( ContextKeyExpr.equals('resourceScheme', CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME)),
|
|
@@ -347,12 +346,16 @@ class MultiDiffAcceptDiscardAction extends Action2 {
|
|
|
347
346
|
if (!(editor instanceof MultiDiffEditorInput) || !editor.resource) {
|
|
348
347
|
return;
|
|
349
348
|
}
|
|
350
|
-
const
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
349
|
+
const { chatSessionResource } = parseChatMultiDiffUri(editor.resource);
|
|
350
|
+
const session = chatEditingService.getEditingSession(chatSessionResource);
|
|
351
|
+
if (session) {
|
|
352
|
+
if (this.accept) {
|
|
353
|
+
await session.accept();
|
|
354
|
+
}
|
|
355
|
+
else {
|
|
356
|
+
await session.reject();
|
|
357
|
+
}
|
|
358
|
+
editorService.closeEditor({ editor, groupId: groupContext.group.id });
|
|
356
359
|
}
|
|
357
360
|
}
|
|
358
361
|
}
|
|
@@ -380,7 +383,7 @@ function registerChatEditorActions() {
|
|
|
380
383
|
MenuRegistry.appendMenuItem(MenuId.ChatEditingEditorContent, {
|
|
381
384
|
command: {
|
|
382
385
|
id: navigationBearingFakeActionId,
|
|
383
|
-
title: ( localize(
|
|
386
|
+
title: ( localize(5238, "Navigation Status")),
|
|
384
387
|
precondition: ( ContextKeyExpr.false()),
|
|
385
388
|
},
|
|
386
389
|
group: 'navigate',
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js
CHANGED
|
@@ -16,7 +16,7 @@ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
|
16
16
|
import { navigationBearingFakeActionId, AcceptAction, RejectAction } from './chatEditingEditorActions.js';
|
|
17
17
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
18
18
|
import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
|
|
19
|
-
import { EditorGroupView } from '@codingame/monaco-vscode-
|
|
19
|
+
import { EditorGroupView } from '@codingame/monaco-vscode-api/vscode/vs/workbench/browser/parts/editor/editorGroupView';
|
|
20
20
|
import { Event } from '@codingame/monaco-vscode-api/vscode/vs/base/common/event';
|
|
21
21
|
import { ServiceCollection } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/serviceCollection';
|
|
22
22
|
import { IContextKeyService } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey.service';
|
|
@@ -64,7 +64,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
|
|
|
64
64
|
}
|
|
65
65
|
const response = this._entry.read(r)?.lastModifyingResponse.read(r);
|
|
66
66
|
if (!response) {
|
|
67
|
-
return { message: ( localize(
|
|
67
|
+
return { message: ( localize(5246, "Working...")) };
|
|
68
68
|
}
|
|
69
69
|
const lastPart = observableFromEventOpts({ equalsFn: equals }, response.onDidChange, () => response.response.value)
|
|
70
70
|
.read(r)
|
|
@@ -77,7 +77,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
|
|
|
77
77
|
return { message: lastPart.content };
|
|
78
78
|
}
|
|
79
79
|
else {
|
|
80
|
-
return { message: ( localize(
|
|
80
|
+
return { message: ( localize(5246, "Working...")) };
|
|
81
81
|
}
|
|
82
82
|
});
|
|
83
83
|
const progressNode = createElement('div');
|
|
@@ -154,10 +154,10 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
|
|
|
154
154
|
const { changeCount, activeIdx } = that._navigationBearings.read(r);
|
|
155
155
|
if (changeCount > 0) {
|
|
156
156
|
const n = activeIdx === -1 ? '1' : `${activeIdx + 1}`;
|
|
157
|
-
this.label.innerText = ( localize(
|
|
157
|
+
this.label.innerText = ( localize(5247, "{0} of {1}", n, changeCount));
|
|
158
158
|
}
|
|
159
159
|
else {
|
|
160
|
-
this.label.innerText = ( localize(
|
|
160
|
+
this.label.innerText = ( localize(5248, "—"));
|
|
161
161
|
}
|
|
162
162
|
this.updateTooltip();
|
|
163
163
|
}));
|
|
@@ -169,21 +169,21 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
|
|
|
169
169
|
}
|
|
170
170
|
let result;
|
|
171
171
|
if (changeCount === 1 && entriesCount === 1) {
|
|
172
|
-
result = ( localize(
|
|
172
|
+
result = ( localize(5249, "1 change in 1 file"));
|
|
173
173
|
}
|
|
174
174
|
else if (changeCount === 1) {
|
|
175
|
-
result = ( localize(
|
|
175
|
+
result = ( localize(5250, "1 change in {0} files", entriesCount));
|
|
176
176
|
}
|
|
177
177
|
else if (entriesCount === 1) {
|
|
178
|
-
result = ( localize(
|
|
178
|
+
result = ( localize(5251, "{0} changes in 1 file", changeCount));
|
|
179
179
|
}
|
|
180
180
|
else {
|
|
181
|
-
result = ( localize(
|
|
181
|
+
result = ( localize(5252, "{0} changes in {1} files", changeCount, entriesCount));
|
|
182
182
|
}
|
|
183
183
|
if (!that._isBusy.get()) {
|
|
184
184
|
return result;
|
|
185
185
|
}
|
|
186
|
-
return localize(
|
|
186
|
+
return localize(5253, "{0} - Working...", result);
|
|
187
187
|
}
|
|
188
188
|
});
|
|
189
189
|
}
|
|
@@ -232,7 +232,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
|
|
|
232
232
|
if (!kb) {
|
|
233
233
|
return value;
|
|
234
234
|
}
|
|
235
|
-
return localize(
|
|
235
|
+
return localize(5254, "{0} ({1})", value, kb.getLabel());
|
|
236
236
|
}
|
|
237
237
|
});
|
|
238
238
|
}
|
|
@@ -299,7 +299,7 @@ let ChatEditingOverlayController = class ChatEditingOverlayController {
|
|
|
299
299
|
return false;
|
|
300
300
|
}
|
|
301
301
|
const chatModel = chatService.getSession(session.chatSessionResource);
|
|
302
|
-
return chatModel.
|
|
302
|
+
return chatModel.requestInProgress.read(r);
|
|
303
303
|
});
|
|
304
304
|
this._store.add(autorun(r => {
|
|
305
305
|
const data = sessionAndEntry.read(r);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { IReference } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
2
|
import { ITransaction } from "@codingame/monaco-vscode-api/vscode/vs/base/common/observable";
|
|
3
3
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
4
|
+
import { IDocumentDiff } from "../../../../../editor/common/diff/documentDiffProvider.js";
|
|
4
5
|
import { Location, TextEdit } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages";
|
|
5
6
|
import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
|
|
6
7
|
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
|
|
@@ -20,7 +21,7 @@ import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workben
|
|
|
20
21
|
import { IAiEditTelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service";
|
|
21
22
|
import { ICellEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
22
23
|
import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
23
|
-
import { IChatResponseModel } from "@codingame/monaco-vscode-
|
|
24
|
+
import { IChatResponseModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
24
25
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
25
26
|
import { AbstractChatEditingModifiedFileEntry } from "./chatEditingModifiedFileEntry.js";
|
|
26
27
|
interface IMultiDiffEntryDelegate {
|
|
@@ -50,8 +51,9 @@ export declare class ChatEditingModifiedDocumentEntry extends AbstractChatEditin
|
|
|
50
51
|
readonly originalURI: URI;
|
|
51
52
|
private readonly _textModelChangeService;
|
|
52
53
|
constructor(resourceRef: IReference<IResolvedTextEditorModel>, _multiDiffEntryDelegate: IMultiDiffEntryDelegate, telemetryInfo: IModifiedEntryTelemetryInfo, kind: ChatEditKind, initialContent: string | undefined, markerService: IMarkerService, modelService: IModelService, textModelService: ITextModelService, languageService: ILanguageService, configService: IConfigurationService, fileConfigService: IFilesConfigurationService, chatService: IChatService, _textFileService: ITextFileService, fileService: IFileService, undoRedoService: IUndoRedoService, instantiationService: IInstantiationService, aiEditTelemetryService: IAiEditTelemetryService, _editorWorkerService: IEditorWorkerService);
|
|
54
|
+
getDiffInfo(): Promise<IDocumentDiff>;
|
|
53
55
|
equalsSnapshot(snapshot: ISnapshotEntry | undefined): boolean;
|
|
54
|
-
createSnapshot(
|
|
56
|
+
createSnapshot(chatSessionResource: URI, requestId: string | undefined, undoStop: string | undefined): ISnapshotEntry;
|
|
55
57
|
getCurrentContents(): string;
|
|
56
58
|
hasModificationAt(location: Location): boolean;
|
|
57
59
|
restoreFromSnapshot(snapshot: ISnapshotEntry, restoreToDisk?: boolean): Promise<void>;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js
CHANGED
|
@@ -65,7 +65,7 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
|
|
|
65
65
|
this._editorWorkerService = _editorWorkerService;
|
|
66
66
|
this._docFileEditorModel = this._register(resourceRef).object;
|
|
67
67
|
this.modifiedModel = resourceRef.object.textEditorModel;
|
|
68
|
-
this.originalURI = ChatEditingTextModelContentProvider.getFileURI(telemetryInfo.
|
|
68
|
+
this.originalURI = ChatEditingTextModelContentProvider.getFileURI(telemetryInfo.sessionResource, this.entryId, this.modifiedURI.path);
|
|
69
69
|
this.initialContent = initialContent ?? this.modifiedModel.getValue();
|
|
70
70
|
const docSnapshot = this.originalModel = this._register(modelService.createModel(createTextBufferFactoryFromSnapshot(initialContent !== undefined ? stringToSnapshot(initialContent) : this.modifiedModel.createSnapshot()), languageService.createById(this.modifiedModel.getLanguageId()), this.originalURI, false));
|
|
71
71
|
this._textModelChangeService = this._register(instantiationService.createInstance(ChatEditingTextModelChangeService, this.originalModel, this.modifiedModel, this._stateObs, () => this._isExternalEditInProgress));
|
|
@@ -103,13 +103,16 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
|
|
|
103
103
|
if (inProgress) {
|
|
104
104
|
const res = this._lastModifyingResponseObs.read(r);
|
|
105
105
|
const req = res && res.session.getRequests().find(value => value.id === res.requestId);
|
|
106
|
-
resourceFilter.value = markerService.installResourceFilter(this.modifiedURI, req?.message.text || ( localize(
|
|
106
|
+
resourceFilter.value = markerService.installResourceFilter(this.modifiedURI, req?.message.text || ( localize(5255, "Chat Edits")));
|
|
107
107
|
}
|
|
108
108
|
else {
|
|
109
109
|
resourceFilter.clear();
|
|
110
110
|
}
|
|
111
111
|
}));
|
|
112
112
|
}
|
|
113
|
+
getDiffInfo() {
|
|
114
|
+
return this._textModelChangeService.getDiffInfo();
|
|
115
|
+
}
|
|
113
116
|
equalsSnapshot(snapshot) {
|
|
114
117
|
return !!snapshot &&
|
|
115
118
|
( this.modifiedURI.toString()) === ( snapshot.resource.toString()) &&
|
|
@@ -118,11 +121,11 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
|
|
|
118
121
|
this.modifiedModel.getValue() === snapshot.current &&
|
|
119
122
|
this.state.get() === snapshot.state;
|
|
120
123
|
}
|
|
121
|
-
createSnapshot(
|
|
124
|
+
createSnapshot(chatSessionResource, requestId, undoStop) {
|
|
122
125
|
return {
|
|
123
126
|
resource: this.modifiedURI,
|
|
124
127
|
languageId: this.modifiedModel.getLanguageId(),
|
|
125
|
-
snapshotUri: ChatEditingSnapshotTextModelContentProvider.getSnapshotFileURI(
|
|
128
|
+
snapshotUri: ChatEditingSnapshotTextModelContentProvider.getSnapshotFileURI(chatSessionResource, requestId, undoStop, this.modifiedURI.path),
|
|
126
129
|
original: this.originalModel.getValue(),
|
|
127
130
|
current: this.modifiedModel.getValue(),
|
|
128
131
|
state: this.state.get(),
|
|
@@ -151,7 +154,7 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
|
|
|
151
154
|
}
|
|
152
155
|
_createUndoRedoElement(response) {
|
|
153
156
|
const request = response.session.getRequests().find(req => req.id === response.requestId);
|
|
154
|
-
const label = request?.message.text ? ( localize(
|
|
157
|
+
const label = request?.message.text ? ( localize(5256, "Chat Edit: '{0}'", request.message.text)) : ( localize(5257, "Chat Edit"));
|
|
155
158
|
return ( new SingleModelEditStackElement(label, 'chat.edit', this.modifiedModel, null));
|
|
156
159
|
}
|
|
157
160
|
async acceptAgentEdits(resource, textEdits, isLastEdits, responseModel) {
|
|
@@ -201,7 +204,7 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
|
|
|
201
204
|
}
|
|
202
205
|
else {
|
|
203
206
|
this._textModelChangeService.undo();
|
|
204
|
-
if (this._textModelChangeService.allEditsAreFromUs && isTextFileEditorModel(this._docFileEditorModel)) {
|
|
207
|
+
if (this._textModelChangeService.allEditsAreFromUs && isTextFileEditorModel(this._docFileEditorModel) && this._shouldAutoSave()) {
|
|
205
208
|
await this._docFileEditorModel.save({ reason: SaveReason.EXPLICIT, skipSaveParticipants: true });
|
|
206
209
|
}
|
|
207
210
|
this._multiDiffEntryDelegate.collapse(undefined);
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts
CHANGED
|
@@ -14,7 +14,7 @@ import { IFilesConfigurationService } from "@codingame/monaco-vscode-api/vscode/
|
|
|
14
14
|
import { IAiEditTelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service";
|
|
15
15
|
import { ICellEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
16
16
|
import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
17
|
-
import { IChatResponseModel } from "@codingame/monaco-vscode-
|
|
17
|
+
import { IChatResponseModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
18
18
|
import { ChatUserAction } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService";
|
|
19
19
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
20
20
|
declare class AutoAcceptControl {
|
|
@@ -103,7 +103,7 @@ export declare abstract class AbstractChatEditingModifiedFileEntry extends Dispo
|
|
|
103
103
|
acceptStreamingEditsEnd(): Promise<void>;
|
|
104
104
|
protected abstract _areOriginalAndModifiedIdentical(): Promise<boolean>;
|
|
105
105
|
protected _resetEditsState(tx: ITransaction | undefined): void;
|
|
106
|
-
abstract createSnapshot(
|
|
106
|
+
abstract createSnapshot(chatSessionResource: URI, requestId: string | undefined, undoStop: string | undefined): ISnapshotEntry;
|
|
107
107
|
abstract equalsSnapshot(snapshot: ISnapshotEntry | undefined): boolean;
|
|
108
108
|
abstract restoreFromSnapshot(snapshot: ISnapshotEntry, restoreToDisk?: boolean): Promise<void>;
|
|
109
109
|
abstract resetToInitialContent(): Promise<void>;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js
CHANGED
|
@@ -6,6 +6,7 @@ import { Disposable, DisposableMap, toDisposable, MutableDisposable } from '@cod
|
|
|
6
6
|
import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
|
|
7
7
|
import { clamp } from '@codingame/monaco-vscode-api/vscode/vs/base/common/numbers';
|
|
8
8
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
9
|
+
import { EditDeltaInfo } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/textModelEditSource';
|
|
9
10
|
import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
10
11
|
import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
|
|
11
12
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
@@ -25,10 +26,8 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/sear
|
|
|
25
26
|
import { IUndoRedoService } from '@codingame/monaco-vscode-api/vscode/vs/platform/undoRedo/common/undoRedo.service';
|
|
26
27
|
import { IFilesConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service';
|
|
27
28
|
import { IAiEditTelemetryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryService.service';
|
|
28
|
-
import { EditDeltaInfo } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/textModelEditSource';
|
|
29
29
|
import { ModifiedFileEntryState, ChatEditKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
30
30
|
import { IChatService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service';
|
|
31
|
-
import { LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
|
|
32
31
|
import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
|
|
33
32
|
import { observableValueOpts } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValueOpts';
|
|
34
33
|
import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
|
|
@@ -43,7 +42,7 @@ class AutoAcceptControl {
|
|
|
43
42
|
this.cancel = cancel;
|
|
44
43
|
}
|
|
45
44
|
}
|
|
46
|
-
const pendingRewriteMinimap = registerColor('minimap.chatEditHighlight', ( transparent(editorBackground, 0.6)), ( localize(
|
|
45
|
+
const pendingRewriteMinimap = registerColor('minimap.chatEditHighlight', ( transparent(editorBackground, 0.6)), ( localize(5258, "Color of pending edit regions in the minimap")));
|
|
47
46
|
let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFileEntry extends Disposable {
|
|
48
47
|
static { AbstractChatEditingModifiedFileEntry_1 = this; }
|
|
49
48
|
static { this.scheme = 'modified-file-entry'; }
|
|
@@ -155,6 +154,9 @@ let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFile
|
|
|
155
154
|
return this;
|
|
156
155
|
}
|
|
157
156
|
enableReviewModeUntilSettled() {
|
|
157
|
+
if (this.state.get() !== ModifiedFileEntryState.Modified) {
|
|
158
|
+
return;
|
|
159
|
+
}
|
|
158
160
|
this._reviewModeTempObs.set(true, undefined);
|
|
159
161
|
const cleanup = autorun(r => {
|
|
160
162
|
const resetConfig = this.state.read(r) !== ModifiedFileEntryState.Modified;
|
|
@@ -226,7 +228,7 @@ let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFile
|
|
|
226
228
|
modelId: this._telemetryInfo.modelId,
|
|
227
229
|
modeId: this._telemetryInfo.modeId,
|
|
228
230
|
command: this._telemetryInfo.command,
|
|
229
|
-
sessionResource:
|
|
231
|
+
sessionResource: this._telemetryInfo.sessionResource,
|
|
230
232
|
requestId: this._telemetryInfo.requestId,
|
|
231
233
|
result: this._telemetryInfo.result
|
|
232
234
|
});
|
|
@@ -12,14 +12,14 @@ import { IUndoRedoElement } from "@codingame/monaco-vscode-api/vscode/vs/platfor
|
|
|
12
12
|
import { IUndoRedoService } from "@codingame/monaco-vscode-api/vscode/vs/platform/undoRedo/common/undoRedo.service";
|
|
13
13
|
import { IEditorPane } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor";
|
|
14
14
|
import { IFilesConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service";
|
|
15
|
-
import { CellDiffInfo } from "@codingame/monaco-vscode-
|
|
16
|
-
import { NotebookCellTextModel } from "@codingame/monaco-vscode-
|
|
15
|
+
import { CellDiffInfo } from "@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/notebook/browser/diff/notebookDiffViewModel";
|
|
16
|
+
import { NotebookCellTextModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/model/notebookCellTextModel";
|
|
17
17
|
import { ICellEditOperation, IResolvedNotebookEditorModel, NotebookTextModelChangedEvent, TransientOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
18
18
|
import { INotebookEditorModelResolverService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service";
|
|
19
19
|
import { INotebookLoggingService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookLoggingService.service";
|
|
20
20
|
import { INotebookEditorWorkerService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/services/notebookWorkerService.service";
|
|
21
21
|
import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntryEditorIntegration, ISnapshotEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
22
|
-
import { IChatResponseModel } from "@codingame/monaco-vscode-
|
|
22
|
+
import { IChatResponseModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
23
23
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
24
24
|
import { AbstractChatEditingModifiedFileEntry } from "./chatEditingModifiedFileEntry.js";
|
|
25
25
|
import { ChatEditingNotebookCellEntry } from "./notebook/chatEditingNotebookCellEntry.js";
|
|
@@ -106,7 +106,7 @@ export declare class ChatEditingModifiedNotebookEntry extends AbstractChatEditin
|
|
|
106
106
|
private _applyEdits;
|
|
107
107
|
private _applyEditsSync;
|
|
108
108
|
getCurrentSnapshot(): string;
|
|
109
|
-
createSnapshot(
|
|
109
|
+
createSnapshot(chatSessionResource: URI, requestId: string | undefined, undoStop: string | undefined): ISnapshotEntry;
|
|
110
110
|
equalsSnapshot(snapshot: ISnapshotEntry | undefined): boolean;
|
|
111
111
|
restoreFromSnapshot(snapshot: ISnapshotEntry, restoreToDisk?: boolean): Promise<void>;
|
|
112
112
|
resetToInitialContent(): Promise<void>;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js
CHANGED
|
@@ -25,11 +25,11 @@ import { UndoRedoElementType } from '@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
25
25
|
import { IUndoRedoService } from '@codingame/monaco-vscode-api/vscode/vs/platform/undoRedo/common/undoRedo.service';
|
|
26
26
|
import { SaveReason } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
|
|
27
27
|
import { IFilesConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service';
|
|
28
|
-
import { SnapshotContext } from '@codingame/monaco-vscode-
|
|
29
|
-
import { NotebookTextDiffEditor } from '@codingame/monaco-vscode-
|
|
30
|
-
import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-
|
|
28
|
+
import { SnapshotContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/fileWorkingCopy';
|
|
29
|
+
import { NotebookTextDiffEditor } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor';
|
|
30
|
+
import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
|
|
31
31
|
import { CellEditType, NotebookCellsChangeType, NotebookSetting } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
32
|
-
import { computeDiff } from '@codingame/monaco-vscode-
|
|
32
|
+
import { computeDiff } from '@codingame/monaco-vscode-katex-common/vscode/vs/workbench/contrib/notebook/common/notebookDiff';
|
|
33
33
|
import { INotebookEditorModelResolverService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookEditorModelResolverService.service';
|
|
34
34
|
import { INotebookLoggingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookLoggingService.service';
|
|
35
35
|
import { INotebookService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service';
|
|
@@ -71,7 +71,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
|
|
|
71
71
|
const configurationServie = accessor.get(IConfigurationService);
|
|
72
72
|
const resourceRef = await resolver.resolve(uri);
|
|
73
73
|
const notebook = resourceRef.object.notebook;
|
|
74
|
-
const originalUri = getNotebookSnapshotFileURI(telemetryInfo.
|
|
74
|
+
const originalUri = getNotebookSnapshotFileURI(telemetryInfo.sessionResource, telemetryInfo.requestId, generateUuid(), notebook.uri.scheme === Schemas.untitled ? `/${notebook.uri.path}` : notebook.uri.path, notebook.viewType);
|
|
75
75
|
const [options, buffer] = await Promise.all([
|
|
76
76
|
notebookService.withNotebookDataProvider(resourceRef.object.notebook.notebookType),
|
|
77
77
|
notebookService.createNotebookTextDocumentSnapshot(notebook.uri, SnapshotContext.Backup, CancellationToken.None).then(s => streamToBuffer(s))
|
|
@@ -317,16 +317,6 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
|
|
|
317
317
|
break;
|
|
318
318
|
}
|
|
319
319
|
case NotebookCellsChangeType.OutputItem: {
|
|
320
|
-
const index = getCorrespondingOriginalCellIndex(event.index, this._cellsDiffInfo.get());
|
|
321
|
-
if (typeof index === 'number') {
|
|
322
|
-
const edit = {
|
|
323
|
-
editType: CellEditType.OutputItems,
|
|
324
|
-
outputId: event.outputId,
|
|
325
|
-
append: event.append,
|
|
326
|
-
items: event.outputItems
|
|
327
|
-
};
|
|
328
|
-
this.originalModel.applyEdits([edit], true, undefined, () => undefined, undefined, false);
|
|
329
|
-
}
|
|
330
320
|
break;
|
|
331
321
|
}
|
|
332
322
|
case NotebookCellsChangeType.Move: {
|
|
@@ -406,7 +396,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
|
|
|
406
396
|
}
|
|
407
397
|
_createUndoRedoElement(response) {
|
|
408
398
|
const request = response.session.getRequests().find(req => req.id === response.requestId);
|
|
409
|
-
const label = request?.message.text ? ( localize(
|
|
399
|
+
const label = request?.message.text ? ( localize(5259, "Chat Edit: '{0}'", request.message.text)) : ( localize(5260, "Chat Edit"));
|
|
410
400
|
const transientOptions = this.transientOptions;
|
|
411
401
|
const outputSizeLimit = this.configurationService.getValue(NotebookSetting.outputBackupSizeLimit) * 1024;
|
|
412
402
|
let initial = createSnapshot(this.modifiedModel, transientOptions, outputSizeLimit);
|
|
@@ -775,11 +765,11 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
|
|
|
775
765
|
getCurrentSnapshot() {
|
|
776
766
|
return createSnapshot(this.modifiedModel, this.transientOptions, this.configurationService);
|
|
777
767
|
}
|
|
778
|
-
createSnapshot(
|
|
768
|
+
createSnapshot(chatSessionResource, requestId, undoStop) {
|
|
779
769
|
return {
|
|
780
770
|
resource: this.modifiedURI,
|
|
781
771
|
languageId: SnapshotLanguageId,
|
|
782
|
-
snapshotUri: getNotebookSnapshotFileURI(
|
|
772
|
+
snapshotUri: getNotebookSnapshotFileURI(chatSessionResource, requestId, undoStop, this.modifiedURI.path, this.modifiedModel.viewType),
|
|
783
773
|
original: createSnapshot(this.originalModel, this.transientOptions, this.configurationService),
|
|
784
774
|
current: createSnapshot(this.modifiedModel, this.transientOptions, this.configurationService),
|
|
785
775
|
state: this.state.get(),
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
|
|
2
|
+
import { StringSHA1 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/hash';
|
|
3
|
+
import { LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
|
|
2
4
|
|
|
3
5
|
var FileOperationType;
|
|
4
6
|
(function (FileOperationType) {
|
|
@@ -8,5 +10,14 @@ var FileOperationType;
|
|
|
8
10
|
FileOperationType["TextEdit"] = "textEdit";
|
|
9
11
|
FileOperationType["NotebookEdit"] = "notebookEdit";
|
|
10
12
|
})(FileOperationType || (FileOperationType = {}));
|
|
13
|
+
function getKeyForChatSessionResource(chatSessionResource) {
|
|
14
|
+
const sessionId = LocalChatSessionUri.parseLocalSessionId(chatSessionResource);
|
|
15
|
+
if (sessionId) {
|
|
16
|
+
return sessionId;
|
|
17
|
+
}
|
|
18
|
+
const sha = ( new StringSHA1());
|
|
19
|
+
sha.update(( chatSessionResource.toString()));
|
|
20
|
+
return sha.digest();
|
|
21
|
+
}
|
|
11
22
|
|
|
12
|
-
export { FileOperationType };
|
|
23
|
+
export { FileOperationType, getKeyForChatSessionResource };
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts
CHANGED
|
@@ -14,12 +14,12 @@ import { IDecorationsService } from "@codingame/monaco-vscode-api/vscode/vs/work
|
|
|
14
14
|
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
|
|
15
15
|
import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service";
|
|
16
16
|
import { ILifecycleService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/lifecycle/common/lifecycle.service";
|
|
17
|
-
import { IMultiDiffSourceResolver, IResolvedMultiDiffSource } from "@codingame/monaco-vscode-
|
|
17
|
+
import { IMultiDiffSourceResolver, IResolvedMultiDiffSource } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService";
|
|
18
18
|
import { IMultiDiffSourceResolverService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service";
|
|
19
19
|
import { INotebookService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service";
|
|
20
20
|
import { IChatEditingSession, IChatRelatedFile, IChatRelatedFilesProvider } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
21
21
|
import { IChatEditingService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service";
|
|
22
|
-
import { ChatModel } from "@codingame/monaco-vscode-
|
|
22
|
+
import { ChatModel } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
23
23
|
import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
|
|
24
24
|
export declare class ChatEditingService extends Disposable implements IChatEditingService {
|
|
25
25
|
private readonly _instantiationService;
|
|
@@ -32,15 +32,14 @@ export declare class ChatEditingService extends Disposable implements IChatEditi
|
|
|
32
32
|
_serviceBrand: undefined;
|
|
33
33
|
private readonly _sessionsObs;
|
|
34
34
|
readonly editingSessionsObs: IObservable<readonly IChatEditingSession[]>;
|
|
35
|
-
private _restoringEditingSession;
|
|
36
35
|
private _chatRelatedFilesProviders;
|
|
37
36
|
constructor(_instantiationService: IInstantiationService, multiDiffSourceResolverService: IMultiDiffSourceResolverService, textModelService: ITextModelService, contextKeyService: IContextKeyService, _chatService: IChatService, _editorService: IEditorService, decorationsService: IDecorationsService, _fileService: IFileService, lifecycleService: ILifecycleService, storageService: IStorageService, logService: ILogService, extensionService: IExtensionService, productService: IProductService, notebookService: INotebookService, _configurationService: IConfigurationService);
|
|
38
37
|
dispose(): void;
|
|
39
|
-
startOrContinueGlobalEditingSession(chatModel: ChatModel
|
|
38
|
+
startOrContinueGlobalEditingSession(chatModel: ChatModel): IChatEditingSession;
|
|
40
39
|
private _lookupEntry;
|
|
41
40
|
getEditingSession(chatSessionResource: URI): IChatEditingSession | undefined;
|
|
42
|
-
createEditingSession(chatModel: ChatModel, global?: boolean):
|
|
43
|
-
transferEditingSession(chatModel: ChatModel, session: IChatEditingSession):
|
|
41
|
+
createEditingSession(chatModel: ChatModel, global?: boolean): IChatEditingSession;
|
|
42
|
+
transferEditingSession(chatModel: ChatModel, session: IChatEditingSession): IChatEditingSession;
|
|
44
43
|
private _createEditingSession;
|
|
45
44
|
private installAutoApplyObserver;
|
|
46
45
|
private observerEditsInResponse;
|