@codingame/monaco-vscode-chat-service-override 22.1.8 → 23.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +16 -7
- package/package.json +43 -41
- package/vscode/src/vs/editor/common/diff/documentDiffProvider.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +6 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +57 -48
- 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 +18 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +26 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +51 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +7 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +13 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +19 -19
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.d.ts → chatNewActions.d.ts} +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/{chatClearActions.js → chatNewActions.js} +32 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.d.ts +9 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatSessionActions.js +101 -98
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +35 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +43 -25
- 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 +33 -32
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.d.ts +53 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionViewModel.js +154 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.d.ts +7 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.js +13 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.d.ts +44 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsView.js +347 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +85 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +250 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsview.css +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +97 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +290 -231
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +7 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +6 -6
- 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 +24 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatContextService.js +113 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimeline.d.ts +31 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.d.ts +102 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +646 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +46 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +17 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +44 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +25 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +46 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +45 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +30 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +10 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +60 -9
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.d.ts +117 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +12 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +6 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +60 -55
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +29 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +365 -143
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +2 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +3 -30
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +58 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +5 -4
- 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 +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +6 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.d.ts +1 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +7 -11
- 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 +13 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +38 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +11 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +83 -24
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +91 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +64 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +370 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.d.ts +25 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +56 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +61 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +349 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +43 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +787 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +109 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatManagementEditor.css +122 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +211 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatUsageWidget.css +69 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +21 -20
- package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +54 -54
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +31 -22
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +16 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.d.ts +6 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessionTracker.js +29 -21
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/localChatSessionsProvider.js +37 -33
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.d.ts +15 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/chatSessionsView.js +96 -131
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.d.ts +12 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsTreeRenderer.js +66 -34
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.d.ts +5 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/view/sessionsViewPane.js +77 -71
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +91 -18
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +458 -138
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +212 -150
- package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +96 -89
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.d.ts +3 -2
- package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +5 -5
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +3 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +15 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +33 -17
- 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 +27 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsConfirmationService.js +688 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +15 -10
- package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +126 -135
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditingEditorOverlay.css +6 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatEditorController.css +2 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +38 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/media/simpleBrowserOverlay.css +14 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +28 -26
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +9 -6
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +24 -13
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +15 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +25 -23
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.d.ts +21 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +89 -0
- package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +16 -16
- package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +30 -29
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +10 -19
- package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +61 -43
- package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +7 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +28 -28
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +254 -165
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.d.ts +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +2 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +4 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +10 -6
- package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +20 -12
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +13 -17
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +9 -8
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +51 -21
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.d.ts +7 -3
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +74 -20
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +11 -6
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +83 -53
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.d.ts +2 -1
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +136 -78
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +18 -10
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +357 -157
- 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 +55 -28
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +235 -108
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +12 -2
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +50 -4
- package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.d.ts +3 -1
- package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +11 -7
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +12 -14
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +18 -30
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +62 -139
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +16 -15
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
- package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +119 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +6 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +47 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +192 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +7 -5
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +21 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +8 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +18 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +5 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +3 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +4 -25
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +18 -27
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.d.ts +12 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +31 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +24 -8
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.d.ts +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +33 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +42 -13
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +14 -21
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +23 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.d.ts +18 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +227 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +133 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.d.ts +5 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +36 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePwshChainOperatorRewriter.js +33 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +17 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +4 -4
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +5 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +75 -37
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.d.ts +8 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +71 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +28 -15
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +366 -363
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +18 -18
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +9 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +16 -16
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +1 -1
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +19 -0
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +123 -0
- package/vscode/src/vs/base/common/yaml.d.ts +0 -74
- package/vscode/src/vs/base/common/yaml.js +0 -597
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +0 -239
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +0 -102
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +0 -435
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.d.ts +0 -14
- package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookDiff.js +0 -67
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.d.ts +0 -49
- package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +0 -380
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.d.ts +0 -37
- package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/common.js +0 -137
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +0 -44
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +0 -176
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.d.ts +0 -4
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +0 -206
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +0 -7
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +0 -79
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +0 -8
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +0 -145
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +0 -65
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +0 -306
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +0 -12
- package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +0 -102
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.d.ts +0 -97
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/newPromptsParser.js +0 -247
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +0 -118
- package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.js +0 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.d.ts +0 -10
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandSimplifier.js +0 -55
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +0 -2
- package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +0 -66
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts
CHANGED
|
@@ -5,12 +5,11 @@ import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/fi
|
|
|
5
5
|
import { ILogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/log/common/log.service";
|
|
6
6
|
import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
|
|
7
7
|
import { ISnapshotEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
8
|
+
import { IChatEditingTimelineState } from "./chatEditingOperations.js";
|
|
8
9
|
export interface StoredSessionState {
|
|
9
10
|
readonly initialFileContents: ResourceMap<string>;
|
|
10
|
-
readonly pendingSnapshot?: IChatEditingSessionStop;
|
|
11
11
|
readonly recentSnapshot: IChatEditingSessionStop;
|
|
12
|
-
readonly
|
|
13
|
-
readonly linearHistory: readonly IChatEditingSessionSnapshot[];
|
|
12
|
+
readonly timeline: IChatEditingTimelineState | undefined;
|
|
14
13
|
}
|
|
15
14
|
export declare class ChatEditingSessionStorage {
|
|
16
15
|
private readonly chatSessionId;
|
package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js
CHANGED
|
@@ -3,6 +3,7 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { VSBuffer } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
|
|
4
4
|
import { hashAsync } from '@codingame/monaco-vscode-api/vscode/vs/base/common/hash';
|
|
5
5
|
import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/map';
|
|
6
|
+
import { revive } from '@codingame/monaco-vscode-api/vscode/vs/base/common/marshalling';
|
|
6
7
|
import { joinPath } from '@codingame/monaco-vscode-api/vscode/vs/base/common/resources';
|
|
7
8
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
8
9
|
import { IEnvironmentService } from '@codingame/monaco-vscode-api/vscode/vs/platform/environment/common/environment.service';
|
|
@@ -47,16 +48,6 @@ let ChatEditingSessionStorage = class ChatEditingSessionStorage {
|
|
|
47
48
|
const entries = await deserializeSnapshotEntriesDTO(stopDTO.entries);
|
|
48
49
|
return { stopId: 'stopId' in stopDTO ? stopDTO.stopId : undefined, entries };
|
|
49
50
|
};
|
|
50
|
-
const normalizeSnapshotDtos = (snapshot) => {
|
|
51
|
-
if ('stops' in snapshot) {
|
|
52
|
-
return snapshot;
|
|
53
|
-
}
|
|
54
|
-
return { requestId: snapshot.requestId, stops: [{ stopId: undefined, entries: snapshot.entries }] };
|
|
55
|
-
};
|
|
56
|
-
const deserializeChatEditingSessionSnapshot = async (startIndex, snapshot) => {
|
|
57
|
-
const stops = await Promise.all(( snapshot.stops.map(deserializeChatEditingStopDTO)));
|
|
58
|
-
return { startIndex, requestId: snapshot.requestId, stops };
|
|
59
|
-
};
|
|
60
51
|
const deserializeSnapshotEntry = async (entry) => {
|
|
61
52
|
return {
|
|
62
53
|
resource: ( URI.parse(entry.resource)),
|
|
@@ -90,25 +81,15 @@ let ChatEditingSessionStorage = class ChatEditingSessionStorage {
|
|
|
90
81
|
if (!COMPATIBLE_STORAGE_VERSIONS.includes(data.version)) {
|
|
91
82
|
return undefined;
|
|
92
83
|
}
|
|
93
|
-
let linearHistoryIndex = 0;
|
|
94
|
-
const linearHistory = await Promise.all(( data.linearHistory.map(snapshot => {
|
|
95
|
-
const norm = normalizeSnapshotDtos(snapshot);
|
|
96
|
-
const result = deserializeChatEditingSessionSnapshot(linearHistoryIndex, norm);
|
|
97
|
-
linearHistoryIndex += norm.stops.length;
|
|
98
|
-
return result;
|
|
99
|
-
})));
|
|
100
84
|
const initialFileContents = ( new ResourceMap());
|
|
101
85
|
for (const fileContentDTO of data.initialFileContents) {
|
|
102
86
|
initialFileContents.set(( URI.parse(fileContentDTO[0])), await getFileContent(fileContentDTO[1]));
|
|
103
87
|
}
|
|
104
|
-
const pendingSnapshot = data.pendingSnapshot ? await deserializeChatEditingStopDTO(data.pendingSnapshot) : undefined;
|
|
105
88
|
const recentSnapshot = await deserializeChatEditingStopDTO(data.recentSnapshot);
|
|
106
89
|
return {
|
|
107
90
|
initialFileContents,
|
|
108
|
-
pendingSnapshot,
|
|
109
91
|
recentSnapshot,
|
|
110
|
-
|
|
111
|
-
linearHistory
|
|
92
|
+
timeline: revive(data.timeline),
|
|
112
93
|
};
|
|
113
94
|
}
|
|
114
95
|
catch (e) {
|
|
@@ -163,12 +144,6 @@ let ChatEditingSessionStorage = class ChatEditingSessionStorage {
|
|
|
163
144
|
entries: await Promise.all(( Array.from(( stop.entries.values())).map(serializeSnapshotEntry)))
|
|
164
145
|
};
|
|
165
146
|
};
|
|
166
|
-
const serializeChatEditingSessionSnapshot = async (snapshot) => {
|
|
167
|
-
return {
|
|
168
|
-
requestId: snapshot.requestId,
|
|
169
|
-
stops: await Promise.all(( snapshot.stops.map(serializeChatEditingSessionStop))),
|
|
170
|
-
};
|
|
171
|
-
};
|
|
172
147
|
const serializeSnapshotEntry = async (entry) => {
|
|
173
148
|
return {
|
|
174
149
|
resource: ( entry.resource.toString()),
|
|
@@ -184,10 +159,8 @@ let ChatEditingSessionStorage = class ChatEditingSessionStorage {
|
|
|
184
159
|
const data = {
|
|
185
160
|
version: STORAGE_VERSION,
|
|
186
161
|
sessionId: this.chatSessionId,
|
|
187
|
-
linearHistory: await Promise.all(( state.linearHistory.map(serializeChatEditingSessionSnapshot))),
|
|
188
|
-
linearHistoryIndex: state.linearHistoryIndex,
|
|
189
162
|
initialFileContents: await serializeResourceMap(state.initialFileContents, value => addFileContent(value)),
|
|
190
|
-
|
|
163
|
+
timeline: state.timeline,
|
|
191
164
|
recentSnapshot: await serializeChatEditingSessionStop(state.recentSnapshot),
|
|
192
165
|
};
|
|
193
166
|
this._logService.debug(`chatEditingSession: Storing editing session at ${( storageFolder.toString())}: ${contentWritePromises.size} files`);
|
|
@@ -9,7 +9,7 @@ import { IEditorWorkerService } from "@codingame/monaco-vscode-api/vscode/vs/edi
|
|
|
9
9
|
import { IAccessibilitySignalService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service";
|
|
10
10
|
import { ICellEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
11
11
|
import { ModifiedFileEntryState } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
12
|
-
import { IChatResponseModel } from "@codingame/monaco-vscode-
|
|
12
|
+
import { IChatResponseModel } from "@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
13
13
|
type affectedLines = {
|
|
14
14
|
linesAdded: number;
|
|
15
15
|
linesRemoved: number;
|
|
@@ -32,6 +32,7 @@ export declare class ChatEditingTextModelChangeService extends Disposable {
|
|
|
32
32
|
get isEditFromUs(): boolean;
|
|
33
33
|
private _allEditsAreFromUs;
|
|
34
34
|
get allEditsAreFromUs(): boolean;
|
|
35
|
+
private _isExternalEditInProgress;
|
|
35
36
|
private _diffOperation;
|
|
36
37
|
private _diffOperationIds;
|
|
37
38
|
private readonly _diffInfo;
|
|
@@ -52,20 +53,22 @@ export declare class ChatEditingTextModelChangeService extends Disposable {
|
|
|
52
53
|
private readonly _didAcceptOrRejectLines;
|
|
53
54
|
readonly onDidAcceptOrRejectLines: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<acceptedOrRejectedLines>;
|
|
54
55
|
private notifyHunkAction;
|
|
56
|
+
private _didUserEditModelFired;
|
|
55
57
|
private readonly _didUserEditModel;
|
|
56
58
|
readonly onDidUserEditModel: import("@codingame/monaco-vscode-api/vscode/vs/base/common/event").Event<void>;
|
|
57
59
|
private _originalToModifiedEdit;
|
|
58
60
|
private lineChangeCount;
|
|
59
61
|
private linesAdded;
|
|
60
62
|
private linesRemoved;
|
|
61
|
-
constructor(originalModel: ITextModel, modifiedModel: ITextModel, state: IObservable<ModifiedFileEntryState>, _editorWorkerService: IEditorWorkerService, _accessibilitySignalService: IAccessibilitySignalService);
|
|
63
|
+
constructor(originalModel: ITextModel, modifiedModel: ITextModel, state: IObservable<ModifiedFileEntryState>, isExternalEditInProgress: (() => boolean) | undefined, _editorWorkerService: IEditorWorkerService, _accessibilitySignalService: IAccessibilitySignalService);
|
|
62
64
|
private updateLineChangeCount;
|
|
63
65
|
clearCurrentEditLineDecoration(): void;
|
|
64
66
|
areOriginalAndModifiedIdentical(): Promise<boolean>;
|
|
65
|
-
acceptAgentEdits(resource: URI, textEdits: (TextEdit | ICellEditOperation)[], isLastEdits: boolean, responseModel: IChatResponseModel): Promise<{
|
|
67
|
+
acceptAgentEdits(resource: URI, textEdits: (TextEdit | ICellEditOperation)[], isLastEdits: boolean, responseModel: IChatResponseModel | undefined): Promise<{
|
|
66
68
|
rewriteRatio: number;
|
|
67
69
|
maxLineNumber: number;
|
|
68
70
|
}>;
|
|
71
|
+
private _createEditSource;
|
|
69
72
|
private _applyEdits;
|
|
70
73
|
/**
|
|
71
74
|
* Keeps the current modified document as the final contents.
|
|
@@ -75,6 +78,7 @@ export declare class ChatEditingTextModelChangeService extends Disposable {
|
|
|
75
78
|
* Undoes the current modified document as the final contents.
|
|
76
79
|
*/
|
|
77
80
|
undo(): void;
|
|
81
|
+
private _reset;
|
|
78
82
|
resetDocumentValues(newOriginal: string | ITextSnapshot | undefined, newModified: string | undefined): Promise<void>;
|
|
79
83
|
private _mirrorEdits;
|
|
80
84
|
private _keepHunk;
|
|
@@ -34,6 +34,7 @@ import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/misc
|
|
|
34
34
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/quickpickColors';
|
|
35
35
|
import '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colors/searchColors';
|
|
36
36
|
import { ModifiedFileEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
37
|
+
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
37
38
|
import { pendingRewriteMinimap } from './chatEditingModifiedFileEntry.js';
|
|
38
39
|
import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
|
|
39
40
|
import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
|
|
@@ -91,7 +92,7 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
91
92
|
this._didAcceptOrRejectLines.fire({ state, ...affectedLines });
|
|
92
93
|
}
|
|
93
94
|
}
|
|
94
|
-
constructor(originalModel, modifiedModel, state, _editorWorkerService, _accessibilitySignalService) {
|
|
95
|
+
constructor(originalModel, modifiedModel, state, isExternalEditInProgress, _editorWorkerService, _accessibilitySignalService) {
|
|
95
96
|
super();
|
|
96
97
|
this.originalModel = originalModel;
|
|
97
98
|
this.modifiedModel = modifiedModel;
|
|
@@ -111,12 +112,14 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
111
112
|
this.onDidAcceptOrRejectAllHunks = this._didAcceptOrRejectAllHunks.event;
|
|
112
113
|
this._didAcceptOrRejectLines = this._register(( new Emitter()));
|
|
113
114
|
this.onDidAcceptOrRejectLines = this._didAcceptOrRejectLines.event;
|
|
115
|
+
this._didUserEditModelFired = false;
|
|
114
116
|
this._didUserEditModel = this._register(( new Emitter()));
|
|
115
117
|
this.onDidUserEditModel = this._didUserEditModel.event;
|
|
116
118
|
this._originalToModifiedEdit = StringEdit.empty;
|
|
117
119
|
this.lineChangeCount = 0;
|
|
118
120
|
this.linesAdded = 0;
|
|
119
121
|
this.linesRemoved = 0;
|
|
122
|
+
this._isExternalEditInProgress = isExternalEditInProgress;
|
|
120
123
|
this._register(this.modifiedModel.onDidChangeContent(e => {
|
|
121
124
|
this._mirrorEdits(e);
|
|
122
125
|
}));
|
|
@@ -124,6 +127,9 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
124
127
|
this.clearCurrentEditLineDecoration();
|
|
125
128
|
}));
|
|
126
129
|
this._register(autorun(r => this.updateLineChangeCount(this._diffInfo.read(r))));
|
|
130
|
+
if (!originalModel.equalsTextBuffer(modifiedModel.getTextBuffer())) {
|
|
131
|
+
this._updateDiffInfoSeq();
|
|
132
|
+
}
|
|
127
133
|
}
|
|
128
134
|
updateLineChangeCount(diff) {
|
|
129
135
|
this.lineChangeCount = 0;
|
|
@@ -138,7 +144,9 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
138
144
|
}
|
|
139
145
|
}
|
|
140
146
|
clearCurrentEditLineDecoration() {
|
|
141
|
-
|
|
147
|
+
if (!this.modifiedModel.isDisposed()) {
|
|
148
|
+
this._editDecorations = this.modifiedModel.deltaDecorations(this._editDecorations, []);
|
|
149
|
+
}
|
|
142
150
|
}
|
|
143
151
|
async areOriginalAndModifiedIdentical() {
|
|
144
152
|
const diff = await this._diffOperation;
|
|
@@ -150,20 +158,7 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
150
158
|
const isAtomicEdits = textEdits.length > 0 && isLastEdits;
|
|
151
159
|
let maxLineNumber = 0;
|
|
152
160
|
let rewriteRatio = 0;
|
|
153
|
-
const
|
|
154
|
-
const request = responseModel.session.getRequests().at(-1);
|
|
155
|
-
const languageId = this.modifiedModel.getLanguageId();
|
|
156
|
-
const agent = responseModel.agent;
|
|
157
|
-
const extensionId = VersionedExtensionId.tryCreate(agent?.extensionId.value, agent?.extensionVersion);
|
|
158
|
-
const source = EditSources.chatApplyEdits({
|
|
159
|
-
modelId: request?.modelId,
|
|
160
|
-
requestId: request?.id,
|
|
161
|
-
sessionId: sessionId,
|
|
162
|
-
languageId,
|
|
163
|
-
mode: request?.modeInfo?.modeId,
|
|
164
|
-
extensionId,
|
|
165
|
-
codeBlockSuggestionId: request?.modeInfo?.applyCodeBlockSuggestionId,
|
|
166
|
-
});
|
|
161
|
+
const source = this._createEditSource(responseModel);
|
|
167
162
|
if (isAtomicEdits) {
|
|
168
163
|
const minimalEdits = (await this._editorWorkerService.computeMoreMinimalEdits(this.modifiedModel.uri, textEdits)) ?? textEdits;
|
|
169
164
|
const ops = ( minimalEdits.map(TextEdit.asEditOperation));
|
|
@@ -221,7 +216,38 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
221
216
|
}
|
|
222
217
|
return { rewriteRatio, maxLineNumber };
|
|
223
218
|
}
|
|
219
|
+
_createEditSource(responseModel) {
|
|
220
|
+
if (!responseModel) {
|
|
221
|
+
return EditSources.unknown({ name: 'editSessionUndoRedo' });
|
|
222
|
+
}
|
|
223
|
+
const sessionId = responseModel.session.sessionId;
|
|
224
|
+
const request = responseModel.session.getRequests().at(-1);
|
|
225
|
+
const languageId = this.modifiedModel.getLanguageId();
|
|
226
|
+
const agent = responseModel.agent;
|
|
227
|
+
const extensionId = VersionedExtensionId.tryCreate(agent?.extensionId.value, agent?.extensionVersion);
|
|
228
|
+
if (responseModel.request?.locationData?.type === ChatAgentLocation.EditorInline) {
|
|
229
|
+
return EditSources.inlineChatApplyEdit({
|
|
230
|
+
modelId: request?.modelId,
|
|
231
|
+
requestId: request?.id,
|
|
232
|
+
sessionId,
|
|
233
|
+
languageId,
|
|
234
|
+
extensionId,
|
|
235
|
+
});
|
|
236
|
+
}
|
|
237
|
+
return EditSources.chatApplyEdits({
|
|
238
|
+
modelId: request?.modelId,
|
|
239
|
+
requestId: request?.id,
|
|
240
|
+
sessionId,
|
|
241
|
+
languageId,
|
|
242
|
+
mode: request?.modeInfo?.modeId,
|
|
243
|
+
extensionId,
|
|
244
|
+
codeBlockSuggestionId: request?.modeInfo?.applyCodeBlockSuggestionId,
|
|
245
|
+
});
|
|
246
|
+
}
|
|
224
247
|
_applyEdits(edits, source) {
|
|
248
|
+
if (edits.length === 0) {
|
|
249
|
+
return [];
|
|
250
|
+
}
|
|
225
251
|
try {
|
|
226
252
|
this._isEditFromUs = true;
|
|
227
253
|
let result = [];
|
|
@@ -238,16 +264,19 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
238
264
|
keep() {
|
|
239
265
|
this.notifyHunkAction('accepted', { linesAdded: this.linesAdded, linesRemoved: this.linesRemoved, lineCount: this.lineChangeCount, hasRemainingEdits: false });
|
|
240
266
|
this.originalModel.setValue(this.modifiedModel.createSnapshot());
|
|
241
|
-
this.
|
|
242
|
-
this._originalToModifiedEdit = StringEdit.empty;
|
|
267
|
+
this._reset();
|
|
243
268
|
}
|
|
244
269
|
undo() {
|
|
245
270
|
this.notifyHunkAction('rejected', { linesAdded: this.linesAdded, linesRemoved: this.linesRemoved, lineCount: this.lineChangeCount, hasRemainingEdits: false });
|
|
246
271
|
this.modifiedModel.pushStackElement();
|
|
247
272
|
this._applyEdits([(EditOperation.replace(this.modifiedModel.getFullModelRange(), this.originalModel.getValue()))], EditSources.chatUndoEdits());
|
|
248
273
|
this.modifiedModel.pushStackElement();
|
|
274
|
+
this._reset();
|
|
275
|
+
}
|
|
276
|
+
_reset() {
|
|
249
277
|
this._originalToModifiedEdit = StringEdit.empty;
|
|
250
278
|
this._diffInfo.set(nullDocumentDiff, undefined);
|
|
279
|
+
this._didUserEditModelFired = false;
|
|
251
280
|
}
|
|
252
281
|
async resetDocumentValues(newOriginal, newModified) {
|
|
253
282
|
let didChange = false;
|
|
@@ -267,10 +296,14 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
267
296
|
}
|
|
268
297
|
_mirrorEdits(event) {
|
|
269
298
|
const edit = offsetEditFromContentChanges(event.changes);
|
|
270
|
-
|
|
299
|
+
const isExternalEdit = this._isExternalEditInProgress?.();
|
|
300
|
+
if (this._isEditFromUs || isExternalEdit) {
|
|
271
301
|
const e_sum = this._originalToModifiedEdit;
|
|
272
302
|
const e_ai = edit;
|
|
273
303
|
this._originalToModifiedEdit = e_sum.compose(e_ai);
|
|
304
|
+
if (isExternalEdit) {
|
|
305
|
+
this._updateDiffInfoSeq();
|
|
306
|
+
}
|
|
274
307
|
}
|
|
275
308
|
else {
|
|
276
309
|
const e_ai = this._originalToModifiedEdit;
|
|
@@ -286,7 +319,10 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
286
319
|
}
|
|
287
320
|
this._allEditsAreFromUs = false;
|
|
288
321
|
this._updateDiffInfoSeq();
|
|
289
|
-
this.
|
|
322
|
+
if (!this._didUserEditModelFired) {
|
|
323
|
+
this._didUserEditModelFired = true;
|
|
324
|
+
this._didUserEditModel.fire();
|
|
325
|
+
}
|
|
290
326
|
}
|
|
291
327
|
}
|
|
292
328
|
async _keepHunk(change) {
|
|
@@ -376,8 +412,8 @@ let ChatEditingTextModelChangeService = class ChatEditingTextModelChangeService
|
|
|
376
412
|
}
|
|
377
413
|
};
|
|
378
414
|
ChatEditingTextModelChangeService = ChatEditingTextModelChangeService_1 = ( __decorate([
|
|
379
|
-
( __param(
|
|
380
|
-
( __param(
|
|
415
|
+
( __param(4, IEditorWorkerService)),
|
|
416
|
+
( __param(5, IAccessibilitySignalService))
|
|
381
417
|
], ChatEditingTextModelChangeService));
|
|
382
418
|
|
|
383
419
|
export { ChatEditingTextModelChangeService };
|
|
@@ -14,7 +14,7 @@ export declare class ChatEditingTextModelContentProvider implements ITextModelCo
|
|
|
14
14
|
export declare class ChatEditingSnapshotTextModelContentProvider implements ITextModelContentProvider {
|
|
15
15
|
private readonly _chatEditingService;
|
|
16
16
|
private readonly _modelService;
|
|
17
|
-
static getSnapshotFileURI(chatSessionId: string, requestId: string | undefined, undoStop: string | undefined, path: string): URI;
|
|
17
|
+
static getSnapshotFileURI(chatSessionId: string, requestId: string | undefined, undoStop: string | undefined, path: string, scheme?: string): URI;
|
|
18
18
|
constructor(_chatEditingService: IChatEditingService, _modelService: IModelService);
|
|
19
19
|
provideTextContent(resource: URI): Promise<ITextModel | null>;
|
|
20
20
|
}
|
|
@@ -3,6 +3,7 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { Schemas } from '@codingame/monaco-vscode-api/vscode/vs/base/common/network';
|
|
4
4
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
5
5
|
import { IModelService } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service';
|
|
6
|
+
import { LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
|
|
6
7
|
|
|
7
8
|
var ChatEditingTextModelContentProvider_1;
|
|
8
9
|
let ChatEditingTextModelContentProvider = class ChatEditingTextModelContentProvider {
|
|
@@ -25,7 +26,7 @@ let ChatEditingTextModelContentProvider = class ChatEditingTextModelContentProvi
|
|
|
25
26
|
return existing;
|
|
26
27
|
}
|
|
27
28
|
const data = JSON.parse(resource.query);
|
|
28
|
-
const session = this._chatEditingService.getEditingSession(data.chatSessionId);
|
|
29
|
+
const session = this._chatEditingService.getEditingSession(LocalChatSessionUri.forSession(data.chatSessionId));
|
|
29
30
|
const entry = session?.entries.get().find(candidate => candidate.entryId === data.documentId);
|
|
30
31
|
if (!entry) {
|
|
31
32
|
return null;
|
|
@@ -37,11 +38,11 @@ ChatEditingTextModelContentProvider = ChatEditingTextModelContentProvider_1 = (
|
|
|
37
38
|
( __param(1, IModelService))
|
|
38
39
|
], ChatEditingTextModelContentProvider));
|
|
39
40
|
let ChatEditingSnapshotTextModelContentProvider = class ChatEditingSnapshotTextModelContentProvider {
|
|
40
|
-
static getSnapshotFileURI(chatSessionId, requestId, undoStop, path) {
|
|
41
|
+
static getSnapshotFileURI(chatSessionId, requestId, undoStop, path, scheme) {
|
|
41
42
|
return ( URI.from({
|
|
42
43
|
scheme: Schemas.chatEditingSnapshotScheme,
|
|
43
44
|
path,
|
|
44
|
-
query: JSON.stringify({ sessionId: chatSessionId, requestId: requestId ?? '', undoStop: undoStop ?? '' }),
|
|
45
|
+
query: JSON.stringify({ sessionId: chatSessionId, requestId: requestId ?? '', undoStop: undoStop ?? '', scheme }),
|
|
45
46
|
}));
|
|
46
47
|
}
|
|
47
48
|
constructor(_chatEditingService, _modelService) {
|
|
@@ -54,7 +55,7 @@ let ChatEditingSnapshotTextModelContentProvider = class ChatEditingSnapshotTextM
|
|
|
54
55
|
return existing;
|
|
55
56
|
}
|
|
56
57
|
const data = JSON.parse(resource.query);
|
|
57
|
-
const session = this._chatEditingService.getEditingSession(data.sessionId);
|
|
58
|
+
const session = this._chatEditingService.getEditingSession(LocalChatSessionUri.forSession(data.sessionId));
|
|
58
59
|
if (!session || !data.requestId) {
|
|
59
60
|
return null;
|
|
60
61
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri";
|
|
2
2
|
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
|
|
3
3
|
import { NotebookTextModel } from "@codingame/monaco-vscode-notebook-service-override/vscode/vs/workbench/contrib/notebook/common/model/notebookTextModel";
|
|
4
|
-
import { NotebookData, TransientOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
4
|
+
import { INotebookTextModel, NotebookData, TransientOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
|
|
5
5
|
type ChatEditingSnapshotNotebookContentQueryData = {
|
|
6
6
|
sessionId: string;
|
|
7
7
|
requestId: string | undefined;
|
|
@@ -11,8 +11,8 @@ type ChatEditingSnapshotNotebookContentQueryData = {
|
|
|
11
11
|
export declare const ChatEditingNotebookSnapshotScheme = "chat-editing-notebook-snapshot-model";
|
|
12
12
|
export declare function getNotebookSnapshotFileURI(chatSessionId: string, requestId: string | undefined, undoStop: string | undefined, path: string, viewType: string): URI;
|
|
13
13
|
export declare function parseNotebookSnapshotFileURI(resource: URI): ChatEditingSnapshotNotebookContentQueryData;
|
|
14
|
-
export declare function createSnapshot(notebook:
|
|
15
|
-
export declare function restoreSnapshot(notebook:
|
|
14
|
+
export declare function createSnapshot(notebook: INotebookTextModel, transientOptions: TransientOptions | undefined, outputSizeConfig: IConfigurationService | number): string;
|
|
15
|
+
export declare function restoreSnapshot(notebook: INotebookTextModel, snapshot: string): void;
|
|
16
16
|
export declare class SnapshotComparer {
|
|
17
17
|
private readonly data;
|
|
18
18
|
private readonly transientOptions;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { VSBuffer, encodeBase64, decodeBase64 } from '@codingame/monaco-vscode-api/vscode/vs/base/common/buffer';
|
|
3
3
|
import { filter } from '@codingame/monaco-vscode-api/vscode/vs/base/common/objects';
|
|
4
4
|
import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
|
|
5
|
-
import { SnapshotContext } from '@codingame/monaco-vscode-
|
|
5
|
+
import { SnapshotContext } from '@codingame/monaco-vscode-6f931a91-88ea-5232-897f-a17ec3929ba5-common/vscode/vs/workbench/services/workingCopy/common/fileWorkingCopy';
|
|
6
6
|
import { NotebookCellTextModel } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/common/model/notebookCellTextModel';
|
|
7
7
|
import { NotebookSetting, CellEditType } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
8
8
|
|
|
@@ -10,7 +10,7 @@ import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/pl
|
|
|
10
10
|
import { INotebookEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service";
|
|
11
11
|
import { NotebookCellTextModel } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/common/model/notebookCellTextModel";
|
|
12
12
|
import { ModifiedFileEntryState } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
|
|
13
|
-
import { IChatResponseModel } from "@codingame/monaco-vscode-
|
|
13
|
+
import { IChatResponseModel } from "@codingame/monaco-vscode-2339d6ac-d6bb-53cd-95ee-81911735d1c7-common/vscode/vs/workbench/contrib/chat/common/chatModel";
|
|
14
14
|
/**
|
|
15
15
|
* This is very closely similar to the ChatEditingModifiedDocumentEntry class.
|
|
16
16
|
* Most of the code has been borrowed from there, as a cell is effectively a document.
|
|
@@ -33,10 +33,10 @@ export declare class ChatEditingNotebookCellEntry extends Disposable {
|
|
|
33
33
|
readonly state: IObservable<ModifiedFileEntryState>;
|
|
34
34
|
private readonly initialContent;
|
|
35
35
|
private readonly _textModelChangeService;
|
|
36
|
-
constructor(notebookUri: URI, cell: NotebookCellTextModel, modifiedModel: ITextModel, originalModel: ITextModel, disposables: DisposableStore, notebookEditorService: INotebookEditorService, instantiationService: IInstantiationService);
|
|
36
|
+
constructor(notebookUri: URI, cell: NotebookCellTextModel, modifiedModel: ITextModel, originalModel: ITextModel, isExternalEditInProgress: (() => boolean) | undefined, disposables: DisposableStore, notebookEditorService: INotebookEditorService, instantiationService: IInstantiationService);
|
|
37
37
|
hasModificationAt(range: IRange): boolean;
|
|
38
38
|
clearCurrentEditLineDecoration(): void;
|
|
39
|
-
acceptAgentEdits(textEdits: TextEdit[], isLastEdits: boolean, responseModel: IChatResponseModel): Promise<void>;
|
|
39
|
+
acceptAgentEdits(textEdits: TextEdit[], isLastEdits: boolean, responseModel: IChatResponseModel | undefined): Promise<void>;
|
|
40
40
|
revertMarkdownPreviewState(): void;
|
|
41
41
|
keep(change: DetailedLineRangeMapping): Promise<boolean>;
|
|
42
42
|
undo(change: DetailedLineRangeMapping): Promise<boolean>;
|
|
@@ -3,7 +3,7 @@ import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib
|
|
|
3
3
|
import { Disposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
|
|
4
4
|
import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
|
|
5
5
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
6
|
-
import { CellEditState } from '@codingame/monaco-vscode-
|
|
6
|
+
import { CellEditState } from '@codingame/monaco-vscode-9d2c06d1-1f89-51a5-9964-aa01fe50c198-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
|
|
7
7
|
import { INotebookEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service';
|
|
8
8
|
import { CellKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
9
9
|
import { ModifiedFileEntryState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
|
|
@@ -24,7 +24,7 @@ let ChatEditingNotebookCellEntry = class ChatEditingNotebookCellEntry extends Di
|
|
|
24
24
|
get diffInfo() {
|
|
25
25
|
return this._textModelChangeService.diffInfo;
|
|
26
26
|
}
|
|
27
|
-
constructor(notebookUri, cell, modifiedModel, originalModel, disposables, notebookEditorService, instantiationService) {
|
|
27
|
+
constructor(notebookUri, cell, modifiedModel, originalModel, isExternalEditInProgress, disposables, notebookEditorService, instantiationService) {
|
|
28
28
|
super();
|
|
29
29
|
this.notebookUri = notebookUri;
|
|
30
30
|
this.cell = cell;
|
|
@@ -38,7 +38,7 @@ let ChatEditingNotebookCellEntry = class ChatEditingNotebookCellEntry extends Di
|
|
|
38
38
|
this.state = this._stateObs;
|
|
39
39
|
this.initialContent = this.originalModel.getValue();
|
|
40
40
|
this._register(disposables);
|
|
41
|
-
this._textModelChangeService = this._register(this.instantiationService.createInstance(ChatEditingTextModelChangeService, this.originalModel, this.modifiedModel, this.state));
|
|
41
|
+
this._textModelChangeService = this._register(this.instantiationService.createInstance(ChatEditingTextModelChangeService, this.originalModel, this.modifiedModel, this.state, isExternalEditInProgress));
|
|
42
42
|
this._register(this._textModelChangeService.onDidAcceptOrRejectAllHunks(action => {
|
|
43
43
|
this.revertMarkdownPreviewState();
|
|
44
44
|
this._stateObs.set(action, undefined);
|
|
@@ -92,8 +92,8 @@ let ChatEditingNotebookCellEntry = class ChatEditingNotebookCellEntry extends Di
|
|
|
92
92
|
}
|
|
93
93
|
};
|
|
94
94
|
ChatEditingNotebookCellEntry = ( __decorate([
|
|
95
|
-
( __param(
|
|
96
|
-
( __param(
|
|
95
|
+
( __param(6, INotebookEditorService)),
|
|
96
|
+
( __param(7, IInstantiationService))
|
|
97
97
|
], ChatEditingNotebookCellEntry));
|
|
98
98
|
|
|
99
99
|
export { ChatEditingNotebookCellEntry };
|
|
@@ -18,11 +18,9 @@ import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench
|
|
|
18
18
|
import { NotebookDeletedCellDecorator } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookDeletedCellDecorator';
|
|
19
19
|
import { NotebookInsertedCellDecorator } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookInsertedCellDecorator';
|
|
20
20
|
import { NotebookModifiedCellDecorator } from '../../../../notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js';
|
|
21
|
-
import { getNotebookEditorFromEditorPane, CellEditState } from '@codingame/monaco-vscode-
|
|
21
|
+
import { getNotebookEditorFromEditorPane, CellEditState } from '@codingame/monaco-vscode-9d2c06d1-1f89-51a5-9964-aa01fe50c198-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
|
|
22
22
|
import { INotebookEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service';
|
|
23
23
|
import { CellKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon';
|
|
24
|
-
import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
|
|
25
|
-
import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
|
|
26
24
|
import { ChatEditingCodeEditorIntegration } from '../chatEditingCodeEditorIntegration.js';
|
|
27
25
|
import { sortCellChanges, countChanges } from './notebookCellChanges.js';
|
|
28
26
|
import { OverlayToolbarDecorator } from './overlayToolbarDecorator.js';
|
|
@@ -81,7 +79,7 @@ ChatEditingNotebookEditorIntegration = ( __decorate([
|
|
|
81
79
|
( __param(5, IInstantiationService))
|
|
82
80
|
], ChatEditingNotebookEditorIntegration));
|
|
83
81
|
let ChatEditingNotebookEditorWidgetIntegration = class ChatEditingNotebookEditorWidgetIntegration extends Disposable {
|
|
84
|
-
constructor(_entry, notebookEditor, notebookModel, originalModel, cellChanges, instantiationService, _editorService,
|
|
82
|
+
constructor(_entry, notebookEditor, notebookModel, originalModel, cellChanges, instantiationService, _editorService, notebookEditorService, accessibilitySignalService, logService) {
|
|
85
83
|
super();
|
|
86
84
|
this._entry = _entry;
|
|
87
85
|
this.notebookEditor = notebookEditor;
|
|
@@ -89,7 +87,6 @@ let ChatEditingNotebookEditorWidgetIntegration = class ChatEditingNotebookEditor
|
|
|
89
87
|
this.cellChanges = cellChanges;
|
|
90
88
|
this.instantiationService = instantiationService;
|
|
91
89
|
this._editorService = _editorService;
|
|
92
|
-
this._chatAgentService = _chatAgentService;
|
|
93
90
|
this.accessibilitySignalService = accessibilitySignalService;
|
|
94
91
|
this.logService = logService;
|
|
95
92
|
this._currentIndex = observableValue(this, -1);
|
|
@@ -547,18 +544,10 @@ let ChatEditingNotebookEditorWidgetIntegration = class ChatEditingNotebookEditor
|
|
|
547
544
|
}
|
|
548
545
|
}
|
|
549
546
|
async toggleDiff(_change, _show) {
|
|
550
|
-
const defaultAgentName = this._chatAgentService.getDefaultAgent(ChatAgentLocation.Chat)?.fullName;
|
|
551
547
|
const diffInput = {
|
|
552
548
|
original: { resource: this._entry.originalURI },
|
|
553
549
|
modified: { resource: this._entry.modifiedURI },
|
|
554
|
-
label:
|
|
555
|
-
? ( localize(
|
|
556
|
-
5109,
|
|
557
|
-
'{0} (changes from {1})',
|
|
558
|
-
basename(this._entry.modifiedURI),
|
|
559
|
-
defaultAgentName
|
|
560
|
-
))
|
|
561
|
-
: ( localize(5110, '{0} (changes from chat)', basename(this._entry.modifiedURI)))
|
|
550
|
+
label: ( localize(5185, '{0} (changes from chat)', basename(this._entry.modifiedURI)))
|
|
562
551
|
};
|
|
563
552
|
await this._editorService.openEditor(diffInput);
|
|
564
553
|
}
|
|
@@ -566,10 +555,9 @@ let ChatEditingNotebookEditorWidgetIntegration = class ChatEditingNotebookEditor
|
|
|
566
555
|
ChatEditingNotebookEditorWidgetIntegration = ( __decorate([
|
|
567
556
|
( __param(5, IInstantiationService)),
|
|
568
557
|
( __param(6, IEditorService)),
|
|
569
|
-
( __param(7,
|
|
570
|
-
( __param(8,
|
|
571
|
-
( __param(9,
|
|
572
|
-
( __param(10, ILogService))
|
|
558
|
+
( __param(7, INotebookEditorService)),
|
|
559
|
+
( __param(8, IAccessibilitySignalService)),
|
|
560
|
+
( __param(9, ILogService))
|
|
573
561
|
], ChatEditingNotebookEditorWidgetIntegration));
|
|
574
562
|
class ChatEditingNotebookDiffEditorIntegration extends Disposable {
|
|
575
563
|
constructor(notebookDiffEditor, cellChanges) {
|
|
@@ -8,7 +8,6 @@ import { FileSystemProviderCapabilities, FileType, IFileChange, IFileDeleteOptio
|
|
|
8
8
|
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
|
|
9
9
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
10
10
|
import { IWorkbenchContribution } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/contributions";
|
|
11
|
-
import { INotebookService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service";
|
|
12
11
|
import { IChatEditingService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service";
|
|
13
12
|
export declare class ChatEditingNotebookFileSystemProviderContrib extends Disposable implements IWorkbenchContribution {
|
|
14
13
|
private readonly fileService;
|
|
@@ -17,11 +16,10 @@ export declare class ChatEditingNotebookFileSystemProviderContrib extends Dispos
|
|
|
17
16
|
}
|
|
18
17
|
export declare class ChatEditingNotebookFileSystemProvider implements IFileSystemProvider {
|
|
19
18
|
private readonly _chatEditingService;
|
|
20
|
-
private readonly notebookService;
|
|
21
19
|
private static registeredFiles;
|
|
22
20
|
readonly capabilities: FileSystemProviderCapabilities;
|
|
23
21
|
static registerFile(resource: URI, buffer: VSBuffer): IDisposable;
|
|
24
|
-
constructor(_chatEditingService: IChatEditingService
|
|
22
|
+
constructor(_chatEditingService: IChatEditingService);
|
|
25
23
|
readonly onDidChangeCapabilities: Event<any>;
|
|
26
24
|
readonly onDidChangeFile: Event<readonly IFileChange[]>;
|
|
27
25
|
watch(_resource: URI, _opts: IWatchOptions): IDisposable;
|
|
@@ -6,9 +6,9 @@ import { ResourceMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/
|
|
|
6
6
|
import { FileSystemProviderCapabilities, FileType } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files';
|
|
7
7
|
import { IFileService } from '@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service';
|
|
8
8
|
import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
|
|
9
|
-
import { INotebookService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookService.service';
|
|
10
9
|
import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service';
|
|
11
|
-
import {
|
|
10
|
+
import { LocalChatSessionUri } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatUri';
|
|
11
|
+
import { ChatEditingNotebookSnapshotScheme } from './chatEditingModifiedNotebookSnapshot.js';
|
|
12
12
|
|
|
13
13
|
var ChatEditingNotebookFileSystemProvider_1;
|
|
14
14
|
let ChatEditingNotebookFileSystemProviderContrib = class ChatEditingNotebookFileSystemProviderContrib extends Disposable {
|
|
@@ -37,9 +37,8 @@ let ChatEditingNotebookFileSystemProvider = class ChatEditingNotebookFileSystemP
|
|
|
37
37
|
}
|
|
38
38
|
};
|
|
39
39
|
}
|
|
40
|
-
constructor(_chatEditingService
|
|
40
|
+
constructor(_chatEditingService) {
|
|
41
41
|
this._chatEditingService = _chatEditingService;
|
|
42
|
-
this.notebookService = notebookService;
|
|
43
42
|
this.capabilities = FileSystemProviderCapabilities.Readonly | FileSystemProviderCapabilities.FileAtomicRead | FileSystemProviderCapabilities.FileReadWrite;
|
|
44
43
|
this.onDidChangeCapabilities = Event.None;
|
|
45
44
|
this.onDidChangeFile = Event.None;
|
|
@@ -79,17 +78,15 @@ let ChatEditingNotebookFileSystemProvider = class ChatEditingNotebookFileSystemP
|
|
|
79
78
|
if (!queryData.viewType) {
|
|
80
79
|
throw ( new Error('File not found, viewType not found'));
|
|
81
80
|
}
|
|
82
|
-
const session = this._chatEditingService.getEditingSession(queryData.sessionId);
|
|
81
|
+
const session = this._chatEditingService.getEditingSession(LocalChatSessionUri.forSession(queryData.sessionId));
|
|
83
82
|
if (!session || !queryData.requestId) {
|
|
84
83
|
throw ( new Error('File not found, session not found'));
|
|
85
84
|
}
|
|
86
|
-
const snapshotEntry = session.
|
|
85
|
+
const snapshotEntry = await session.getSnapshotContents(queryData.requestId, resource, queryData.undoStop || undefined);
|
|
87
86
|
if (!snapshotEntry) {
|
|
88
87
|
throw ( new Error('File not found, snapshot not found'));
|
|
89
88
|
}
|
|
90
|
-
|
|
91
|
-
const { serializer } = await this.notebookService.withNotebookDataProvider(queryData.viewType);
|
|
92
|
-
return serializer.notebookToData(data).then(s => s.buffer);
|
|
89
|
+
return snapshotEntry.buffer;
|
|
93
90
|
}
|
|
94
91
|
writeFile(__resource, _content, _opts) {
|
|
95
92
|
throw ( new Error('Method not implemented7.'));
|
|
@@ -114,8 +111,7 @@ let ChatEditingNotebookFileSystemProvider = class ChatEditingNotebookFileSystemP
|
|
|
114
111
|
}
|
|
115
112
|
};
|
|
116
113
|
ChatEditingNotebookFileSystemProvider = ChatEditingNotebookFileSystemProvider_1 = ( __decorate([
|
|
117
|
-
( __param(0, IChatEditingService))
|
|
118
|
-
( __param(1, INotebookService))
|
|
114
|
+
( __param(0, IChatEditingService))
|
|
119
115
|
], ChatEditingNotebookFileSystemProvider));
|
|
120
116
|
|
|
121
117
|
export { ChatEditingNotebookFileSystemProvider, ChatEditingNotebookFileSystemProviderContrib };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
|
|
2
2
|
import { IAccessibilitySignalService } from "@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service";
|
|
3
3
|
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
|
|
4
|
-
import { INotebookEditor } from "@codingame/monaco-vscode-
|
|
4
|
+
import { INotebookEditor } from "@codingame/monaco-vscode-9d2c06d1-1f89-51a5-9964-aa01fe50c198-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser";
|
|
5
5
|
import { NotebookTextModel } from "@codingame/monaco-vscode-notebook-service-override/vscode/vs/workbench/contrib/notebook/common/model/notebookTextModel";
|
|
6
6
|
import { ICellDiffInfo } from "./notebookCellChanges.js";
|
|
7
7
|
export declare class OverlayToolbarDecorator extends Disposable {
|