@codingame/monaco-vscode-chat-service-override 19.1.4 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (211) hide show
  1. package/index.js +20 -8
  2. package/package.json +36 -31
  3. package/vscode/src/vs/base/common/policy.d.ts +14 -0
  4. package/vscode/src/vs/base/common/policy.js +11 -0
  5. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +53 -43
  6. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatClearActions.js +54 -24
  7. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.d.ts +2 -2
  8. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +14 -14
  9. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContext.js +15 -15
  10. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +37 -25
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +4 -4
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +2 -2
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +4 -4
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +1 -1
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +6 -6
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +23 -11
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +9 -9
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.d.ts +1 -1
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +11 -11
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +83 -14
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +421 -21
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.d.ts +1 -1
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +20 -20
  24. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +215 -104
  25. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.d.ts +3 -1
  26. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityService.js +9 -3
  27. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.d.ts +3 -1
  28. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.js +18 -6
  29. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.d.ts +1 -1
  30. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +4 -4
  31. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +20 -20
  32. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +14 -14
  33. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +1 -1
  34. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +6 -3
  35. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +4 -2
  36. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +9 -6
  37. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +1 -1
  38. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +11 -8
  39. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +5 -3
  40. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +16 -11
  41. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +7 -23
  42. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +58 -326
  43. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.d.ts +0 -1
  44. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +33 -30
  45. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.d.ts +12 -1
  46. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +39 -17
  47. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.d.ts +55 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTimeline.js +380 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +3 -2
  50. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +1 -1
  51. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +1 -1
  52. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +5 -5
  53. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +4 -2
  54. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.d.ts +1 -1
  55. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +1 -1
  56. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/simpleBrowserEditorOverlay.js +22 -22
  57. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.d.ts +9 -4
  58. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditor.js +44 -10
  59. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +38 -0
  60. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +145 -0
  61. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +34 -34
  62. package/vscode/src/vs/workbench/contrib/chat/browser/chatPasteProviders.js +7 -7
  63. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.d.ts +1 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/chatQuick.js +3 -3
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.d.ts +1 -1
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatResponseAccessibleView.js +36 -11
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.d.ts +49 -0
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.contribution.js +407 -0
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.d.ts +12 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions.js +738 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.d.ts +1 -1
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup.js +142 -151
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.d.ts +1 -1
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus.js +54 -54
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatVariables.js +20 -0
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.d.ts +4 -3
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatViewPane.js +5 -4
  78. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockContextProviderService.d.ts +1 -1
  79. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorContrib.js +23 -7
  80. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.d.ts +1 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputEditorHover.js +3 -3
  82. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.d.ts +1 -0
  83. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelToolsService.js +13 -8
  84. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-dark.svg +3 -0
  85. package/vscode/src/vs/workbench/contrib/chat/browser/media/apple-light.svg +3 -0
  86. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSessions.css +28 -0
  87. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatSetup.css +7 -7
  88. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.d.ts +2 -2
  89. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/attachInstructionsAction.js +14 -14
  90. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +8 -8
  91. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/newPromptFileActions.js +10 -10
  92. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.d.ts +1 -1
  93. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptName.js +11 -11
  94. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.d.ts +1 -1
  95. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/askForPromptSourceFolder.js +19 -19
  96. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.d.ts +1 -1
  97. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/pickers/promptFilePickers.js +14 -14
  98. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +1 -1
  99. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +3 -3
  100. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +4 -4
  101. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +10 -10
  102. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +11 -11
  103. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.d.ts +1 -7
  104. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveToPromptAction.js +52 -90
  105. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +15 -15
  106. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +6 -6
  107. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.d.ts +2 -2
  108. package/vscode/src/vs/workbench/contrib/chat/common/chatProgressTypes/chatToolInvocation.js +6 -2
  109. package/vscode/src/vs/workbench/contrib/chat/common/chatResponseResourceFileSystemProvider.js +9 -6
  110. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.d.ts +11 -6
  111. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceImpl.js +137 -30
  112. package/vscode/src/vs/workbench/contrib/chat/common/chatServiceTelemetry.js +8 -0
  113. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.d.ts +1 -1
  114. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionStore.js +3 -3
  115. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.d.ts +27 -0
  116. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.js +44 -0
  117. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/config/configMigration.js +1 -1
  118. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/filePromptContentsProvider.js +2 -2
  119. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.d.ts +1 -1
  120. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/promptContentsProviderBase.js +1 -1
  121. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +1 -1
  122. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderDiagnosticsProvider.js +3 -5
  123. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderHovers.js +14 -14
  124. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkDiagnosticsProvider.js +1 -1
  125. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptPathAutocompletion.js +1 -1
  126. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/providerInstanceManagerBase.js +2 -2
  127. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/basePromptParser.js +1 -1
  128. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/headerBase.js +4 -4
  129. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/instructionsHeader.d.ts +1 -1
  130. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/applyTo.js +3 -3
  131. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/enum.js +1 -1
  132. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/base/string.js +1 -1
  133. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/metadata/tools.js +4 -4
  134. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/modeHeader.d.ts +1 -1
  135. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.d.ts +1 -1
  136. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/promptHeader/promptHeader.js +1 -1
  137. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/parsers/topError.js +9 -9
  138. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +1 -1
  139. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +8 -8
  140. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +1 -1
  141. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +2 -2
  142. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +27 -27
  143. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.d.ts +1 -1
  144. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +2 -2
  145. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +9 -9
  146. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +1 -1
  147. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +4 -4
  148. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +104 -0
  149. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +667 -0
  150. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatCurrentLine.js +14 -14
  151. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -1
  152. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
  153. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +2 -2
  154. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +7 -7
  155. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/media/terminalChatWidget.css +56 -0
  156. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.d.ts +1 -0
  157. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminal.chat.contribution.js +14 -0
  158. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.d.ts +11 -0
  159. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +111 -0
  160. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.d.ts +10 -0
  161. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +52 -0
  162. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.d.ts +1 -0
  163. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +262 -0
  164. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.d.ts +35 -0
  165. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +129 -0
  166. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.d.ts +3 -0
  167. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatControllerHolder.js +8 -0
  168. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.d.ts +9 -0
  169. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +30 -0
  170. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.d.ts +72 -0
  171. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +411 -0
  172. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.d.ts +3 -0
  173. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +59 -0
  174. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.d.ts +51 -0
  175. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/bufferOutputPolling.js +163 -0
  176. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.d.ts +24 -0
  177. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandLineAutoApprover.js +164 -0
  178. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +14 -0
  179. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +101 -0
  180. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +16 -0
  181. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +52 -0
  182. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +12 -0
  183. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +71 -0
  184. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +14 -0
  185. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +94 -0
  186. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.d.ts +11 -0
  187. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/getTerminalOutputTool.js +44 -0
  188. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.d.ts +3 -0
  189. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +18 -0
  190. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +3 -0
  191. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +13 -0
  192. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.d.ts +55 -0
  193. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalTool.js +603 -0
  194. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.d.ts +3 -0
  195. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/subCommands.js +113 -0
  196. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.d.ts +21 -0
  197. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/createAndRunTaskTool.js +227 -0
  198. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.d.ts +19 -0
  199. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/getTaskOutputTool.js +88 -0
  200. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.d.ts +21 -0
  201. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/runTaskTool.js +140 -0
  202. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.d.ts +22 -0
  203. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task/taskHelpers.js +80 -0
  204. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.d.ts +1 -0
  205. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/task.chatAgentTools.contribution.js +40 -0
  206. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.d.ts +1 -0
  207. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +36 -0
  208. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +20 -0
  209. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +114 -0
  210. package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-dark.svg +0 -3
  211. package/vscode/src/vs/workbench/contrib/chat/browser/media/google-mono-light.svg +0 -3
@@ -2,8 +2,9 @@ import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/l
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
4
  import { IChatAccessibilityService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service";
5
- import { IChatResponseViewModel } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatViewModel";
5
+ import { IChatResponseViewModel } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatViewModel";
6
6
  import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
7
+ import { IChatElicitationRequest } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService";
7
8
  export declare class ChatAccessibilityService extends Disposable implements IChatAccessibilityService {
8
9
  private readonly _accessibilitySignalService;
9
10
  private readonly _instantiationService;
@@ -14,4 +15,5 @@ export declare class ChatAccessibilityService extends Disposable implements ICha
14
15
  constructor(_accessibilitySignalService: IAccessibilitySignalService, _instantiationService: IInstantiationService, _configurationService: IConfigurationService);
15
16
  acceptRequest(): number;
16
17
  acceptResponse(response: IChatResponseViewModel | string | undefined, requestId: number, isVoiceInput?: boolean): void;
18
+ acceptElicitation(elicitation: IChatElicitationRequest): void;
17
19
  }
@@ -1,12 +1,12 @@
1
1
 
2
2
  import { __decorate, __param } from '@codingame/monaco-vscode-api/external/tslib/tslib.es6';
3
- import { status } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/aria/aria';
3
+ import { status, alert } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/aria/aria';
4
4
  import { Disposable, DisposableMap } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
5
5
  import { AccessibilitySignal } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService';
6
6
  import { IAccessibilitySignalService } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service';
7
7
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
8
8
  import { AccessibilityProgressSignalScheduler } from '@codingame/monaco-vscode-1021b67c-93e5-5c78-a270-cbdb2574d980-common/vscode/vs/platform/accessibilitySignal/browser/progressAccessibilitySignalScheduler';
9
- import { renderStringAsPlaintext } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/markdownRenderer';
9
+ import { renderAsPlaintext } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/markdownRenderer';
10
10
  import { MarkdownString } from '@codingame/monaco-vscode-api/vscode/vs/base/common/htmlContent';
11
11
  import { IConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service';
12
12
  import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration';
@@ -37,11 +37,17 @@ let ChatAccessibilityService = class ChatAccessibilityService extends Disposable
37
37
  return;
38
38
  }
39
39
  const errorDetails = isPanelChat && response.errorDetails ? ` ${response.errorDetails.message}` : '';
40
- const plainTextResponse = renderStringAsPlaintext(( new MarkdownString(responseContent)));
40
+ const plainTextResponse = renderAsPlaintext(( new MarkdownString(responseContent)));
41
41
  if (!isVoiceInput || this._configurationService.getValue(AccessibilityVoiceSettingId.AutoSynthesize) !== 'on') {
42
42
  status(plainTextResponse + errorDetails);
43
43
  }
44
44
  }
45
+ acceptElicitation(elicitation) {
46
+ const title = typeof elicitation.title === 'string' ? elicitation.title : elicitation.title.value;
47
+ const message = typeof elicitation.message === 'string' ? elicitation.message : elicitation.message.value;
48
+ alert(title + ' ' + message);
49
+ this._accessibilitySignalService.playSignal(AccessibilitySignal.chatUserActionRequired, { allowManyInParallel: true });
50
+ }
45
51
  };
46
52
  ChatAccessibilityService = ( __decorate([
47
53
  ( __param(0, IAccessibilitySignalService)),
@@ -8,7 +8,8 @@ import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/fi
8
8
  import { EditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorInput";
9
9
  import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
10
10
  import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service";
11
- import { IChatRequestVariableEntry, OmittedState, IDiagnosticVariableEntry, ISymbolVariableEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries";
11
+ import { SCMHistoryItemTransferData } from "@codingame/monaco-vscode-d0569cfb-4706-5ad6-b0b0-5115ad8685db-common/vscode/vs/workbench/contrib/scm/browser/scmHistoryChatContext";
12
+ import { IChatRequestVariableEntry, OmittedState, IDiagnosticVariableEntry, ISymbolVariableEntry, ISCMHistoryItemVariableEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries";
12
13
  import { IChatAttachmentResolveService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service";
13
14
  export declare class ChatAttachmentResolveService implements IChatAttachmentResolveService {
14
15
  private fileService;
@@ -26,6 +27,7 @@ export declare class ChatAttachmentResolveService implements IChatAttachmentReso
26
27
  resolveMarkerAttachContext(markers: MarkerTransferData[]): IDiagnosticVariableEntry[];
27
28
  resolveSymbolsAttachContext(symbols: DocumentSymbolTransferData[]): ISymbolVariableEntry[];
28
29
  resolveNotebookOutputAttachContext(data: NotebookCellOutputTransferData): IChatRequestVariableEntry[];
30
+ resolveSourceControlHistoryItemAttachContext(data: SCMHistoryItemTransferData[]): ISCMHistoryItemVariableEntry[];
29
31
  }
30
32
  export type ImageTransferData = {
31
33
  data: Uint8Array;
@@ -13,14 +13,14 @@ import { isUntitledResourceEditorInput } from '@codingame/monaco-vscode-api/vsco
13
13
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
14
14
  import { isProposedApiEnabled } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions';
15
15
  import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
16
- import { UntitledTextEditorInput } from '@codingame/monaco-vscode-ddbd4d51-94af-51e5-96b5-f2166ed67ad0-common/vscode/vs/workbench/services/untitled/common/untitledTextEditorInput';
16
+ import { UntitledTextEditorInput } from '@codingame/monaco-vscode-ac93482b-2178-52df-a200-ba0d1a4963fb-common/vscode/vs/workbench/services/untitled/common/untitledTextEditorInput';
17
17
  import { NOTEBOOK_CELL_OUTPUT_MIME_TYPE_LIST_FOR_CHAT_CONST, createNotebookOutputVariableEntry } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils';
18
18
  import { getOutputViewModelFromId } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/notebook/browser/controller/cellOutputActions';
19
- import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-271a23cd-c7d7-5761-ae35-a923a42987b8-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
20
- import { getAttachableImageExtension, CHAT_ATTACHABLE_IMAGE_MIME_TYPES } from '@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatModel';
19
+ import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-670aae94-7f88-54d7-90ea-6fcbef423557-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
20
+ import { getAttachableImageExtension, CHAT_ATTACHABLE_IMAGE_MIME_TYPES } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatModel';
21
21
  import { OmittedState, toPromptFileVariableEntry, PromptFileVariableKind, IDiagnosticVariableEntryFilterData } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatVariableEntries';
22
- import { getPromptsTypeForLanguageId, PromptsType } from '@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
23
- import { resizeImage, imageToHash } from '@codingame/monaco-vscode-9ebd6daf-8734-5a28-ad24-b238f5e5819d-common/vscode/vs/workbench/contrib/chat/browser/imageUtils';
22
+ import { getPromptsTypeForLanguageId, PromptsType } from '@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/common/promptSyntax/promptTypes';
23
+ import { resizeImage, imageToHash } from '@codingame/monaco-vscode-0af61f78-dfc5-57ba-8d32-66268c8de38d-common/vscode/vs/workbench/contrib/chat/browser/imageUtils';
24
24
 
25
25
  let ChatAttachmentResolveService = class ChatAttachmentResolveService {
26
26
  constructor(fileService, editorService, textModelService, extensionService, dialogService) {
@@ -131,7 +131,7 @@ let ChatAttachmentResolveService = class ChatAttachmentResolveService {
131
131
  }
132
132
  const readFile = await this.fileService.readFile(resource);
133
133
  if (stat.size > 30 * 1024 * 1024) {
134
- this.dialogService.error(( localize(4720, 'Image is too large')), ( localize(4721, 'The image {0} is too large to be attached.', fileName)));
134
+ this.dialogService.error(( localize(4788, 'Image is too large')), ( localize(4789, 'The image {0} is too large to be attached.', fileName)));
135
135
  throw ( new Error('Image is too large'));
136
136
  }
137
137
  dataBuffer = readFile.value;
@@ -207,6 +207,18 @@ let ChatAttachmentResolveService = class ChatAttachmentResolveService {
207
207
  }
208
208
  return [];
209
209
  }
210
+ resolveSourceControlHistoryItemAttachContext(data) {
211
+ return ( data.map(d => ({
212
+ id: d.historyItem.id,
213
+ name: d.name,
214
+ value: URI.revive(d.resource),
215
+ historyItem: {
216
+ ...d.historyItem,
217
+ references: []
218
+ },
219
+ kind: 'scmHistoryItem'
220
+ })));
221
+ }
210
222
  };
211
223
  ChatAttachmentResolveService = ( __decorate([
212
224
  ( __param(0, IFileService)),
@@ -1,5 +1,5 @@
1
1
  import { Disposable, IDisposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
2
- import { InlineAnchorWidget } from "@codingame/monaco-vscode-c465110a-57c0-59d7-a6b2-be0a4db7e517-common/vscode/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget";
2
+ import { InlineAnchorWidget } from "@codingame/monaco-vscode-e28ac690-06d5-5ee9-92d1-02df70296354-common/vscode/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget";
3
3
  import { IChatMarkdownAnchorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.service";
4
4
  export declare class ChatMarkdownAnchorService extends Disposable implements IChatMarkdownAnchorService {
5
5
  readonly _serviceBrand: undefined;
@@ -20,7 +20,6 @@ import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core
20
20
  import { Selection } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/selection';
21
21
  import { TrackedRangeStickiness, MinimapPosition, OverviewRulerLane } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model';
22
22
  import { ModelDecorationOptions } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/model/textModel';
23
- import { InlineDecoration, InlineDecorationType } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/viewModel';
24
23
  import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
25
24
  import { AccessibilitySignal } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService';
26
25
  import { IAccessibilitySignalService } from '@codingame/monaco-vscode-api/vscode/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service';
@@ -30,11 +29,12 @@ import { TextEditorSelectionRevealType } from '@codingame/monaco-vscode-api/vsco
30
29
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
31
30
  import '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
32
31
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
33
- import { overviewRulerModifiedForeground, minimapGutterModifiedBackground, overviewRulerAddedForeground, minimapGutterAddedBackground, overviewRulerDeletedForeground, minimapGutterDeletedBackground } from '@codingame/monaco-vscode-f338ac19-278c-5fe1-bec8-b588de04a788-common/vscode/vs/workbench/contrib/scm/common/quickDiff';
32
+ import { overviewRulerModifiedForeground, minimapGutterModifiedBackground, overviewRulerAddedForeground, minimapGutterAddedBackground, overviewRulerDeletedForeground, minimapGutterDeletedBackground } from '@codingame/monaco-vscode-bb83fe45-f4c7-5673-b9f1-5c409a63f19c-common/vscode/vs/workbench/contrib/scm/common/quickDiff';
34
33
  import { IChatAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatAgents.service';
35
34
  import '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
36
35
  import { isTextDiffEditorForEntry } from './chatEditing.js';
37
36
  import { ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
37
+ import { InlineDecoration, InlineDecorationType } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/viewModel/inlineDecorations';
38
38
  import { observableValue } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableValue';
39
39
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
40
40
  import { derived } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/derived';
@@ -507,12 +507,12 @@ let ChatEditingCodeEditorIntegration = class ChatEditingCodeEditorIntegration {
507
507
  options: { selection },
508
508
  label: defaultAgentName
509
509
  ? ( localize(
510
- 4838,
510
+ 4917,
511
511
  '{0} (changes from {1})',
512
512
  basename(this._entry.modifiedURI),
513
513
  defaultAgentName
514
514
  ))
515
- : ( localize(4839, '{0} (changes from chat)', basename(this._entry.modifiedURI)))
515
+ : ( localize(4918, '{0} (changes from chat)', basename(this._entry.modifiedURI)))
516
516
  });
517
517
  if (diffEditor && diffEditor.input) {
518
518
  diffEditor.getControl()?.setSelection(selection);
@@ -4,7 +4,7 @@ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codi
4
4
  import { Action2, MenuId, registerAction2, MenuRegistry } from '@codingame/monaco-vscode-api/vscode/vs/platform/actions/common/actions';
5
5
  import { KeybindingWeight } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybindingsRegistry';
6
6
  import { KeyMod, KeyCode } from '@codingame/monaco-vscode-api/vscode/vs/base/common/keyCodes';
7
- import { CHAT_CATEGORY } from '@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
7
+ import { CHAT_CATEGORY } from '@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
8
8
  import { ctxReviewModeEnabled, ctxHasEditorModification, ctxIsGlobalEditingSession, ctxHasRequestInProgress } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys';
9
9
  import { ContextKeyExpr } from '@codingame/monaco-vscode-api/vscode/vs/platform/contextkey/common/contextkey';
10
10
  import { EditorContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/editorContextKeys';
@@ -12,15 +12,15 @@ import { ACTIVE_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/s
12
12
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
13
13
  import { ModifiedFileEntryState, CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService';
14
14
  import { IChatEditingService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService.service';
15
- import { resolveCommandsContext } from '@codingame/monaco-vscode-9c72783f-914c-50be-b9ef-da16356d81a8-common/vscode/vs/workbench/browser/parts/editor/editorCommandsContext';
15
+ import { resolveCommandsContext } from '@codingame/monaco-vscode-a17e9d37-b6c1-5556-8402-5db73960fae3-common/vscode/vs/workbench/browser/parts/editor/editorCommandsContext';
16
16
  import { IListService } from '@codingame/monaco-vscode-api/vscode/vs/platform/list/browser/listService.service';
17
17
  import { IEditorGroupsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service';
18
- import { MultiDiffEditorInput } from '@codingame/monaco-vscode-1cc4ea0a-c5b6-54ed-bb60-078a99119b55-common/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput';
18
+ import { MultiDiffEditorInput } from '@codingame/monaco-vscode-0af61f78-dfc5-57ba-8d32-66268c8de38d-common/vscode/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput';
19
19
  import { IInstantiationService } from '@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation';
20
20
  import { ActiveEditorContext } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/contextkeys';
21
21
  import { EditorResourceAccessor, SideBySideEditor, TEXT_DIFF_EDITOR_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor';
22
22
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatContextKeys';
23
- import { NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_EDITOR_FOCUSED } from '@codingame/monaco-vscode-3927dd53-f845-534c-9baa-1528ff3956c8-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
23
+ import { NOTEBOOK_CELL_LIST_FOCUSED, NOTEBOOK_EDITOR_FOCUSED } from '@codingame/monaco-vscode-eda30bac-0984-5b42-9362-c68996b85232-common/vscode/vs/workbench/contrib/notebook/common/notebookContextKeys';
24
24
 
25
25
  class ChatEditingEditorAction extends Action2 {
26
26
  constructor(desc) {
@@ -54,8 +54,8 @@ class NavigateAction extends ChatEditingEditorAction {
54
54
  ? 'chatEditor.action.navigateNext'
55
55
  : 'chatEditor.action.navigatePrevious',
56
56
  title: next
57
- ? ( localize2(4840, 'Go to Next Chat Edit'))
58
- : ( localize2(4841, 'Go to Previous Chat Edit')),
57
+ ? ( localize2(4919, 'Go to Next Chat Edit'))
58
+ : ( localize2(4920, 'Go to Previous Chat Edit')),
59
59
  icon: next ? Codicon.arrowDown : Codicon.arrowUp,
60
60
  precondition: ( ContextKeyExpr.and(ChatContextKeys.enabled, ctxHasEditorModification)),
61
61
  keybinding: {
@@ -127,14 +127,14 @@ class KeepOrUndoAction extends ChatEditingEditorAction {
127
127
  super({
128
128
  id,
129
129
  title: _keep
130
- ? ( localize2(4842, 'Keep Chat Edits'))
131
- : ( localize2(4843, 'Undo Chat Edits')),
130
+ ? ( localize2(4921, 'Keep Chat Edits'))
131
+ : ( localize2(4922, 'Undo Chat Edits')),
132
132
  shortTitle: _keep
133
- ? ( localize2(4844, 'Keep'))
134
- : ( localize2(4845, 'Undo')),
133
+ ? ( localize2(4923, 'Keep'))
134
+ : ( localize2(4924, 'Undo')),
135
135
  tooltip: _keep
136
- ? ( localize2(4846, 'Keep Chat Edits in this File'))
137
- : ( localize2(4847, 'Undo Chat Edits in this File')),
136
+ ? ( localize2(4925, 'Keep Chat Edits in this File'))
137
+ : ( localize2(4926, 'Undo Chat Edits in this File')),
138
138
  precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxHasRequestInProgress.negate()))),
139
139
  icon: _keep
140
140
  ? Codicon.check
@@ -184,7 +184,7 @@ class AcceptRejectHunkAction extends ChatEditingEditorAction {
184
184
  constructor(_accept) {
185
185
  super({
186
186
  id: _accept ? 'chatEditor.action.acceptHunk' : 'chatEditor.action.undoHunk',
187
- title: _accept ? ( localize2(4848, 'Keep this Change')) : ( localize2(4849, 'Undo this Change')),
187
+ title: _accept ? ( localize2(4927, 'Keep this Change')) : ( localize2(4928, 'Undo this Change')),
188
188
  precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxHasRequestInProgress.negate()))),
189
189
  icon: _accept ? Codicon.check : Codicon.discard,
190
190
  f1: true,
@@ -219,7 +219,7 @@ class ToggleDiffAction extends ChatEditingEditorAction {
219
219
  constructor() {
220
220
  super({
221
221
  id: 'chatEditor.action.toggleDiff',
222
- title: ( localize2(4850, 'Toggle Diff Editor for Chat Edits')),
222
+ title: ( localize2(4929, 'Toggle Diff Editor for Chat Edits')),
223
223
  category: CHAT_CATEGORY,
224
224
  toggled: {
225
225
  condition: ( ContextKeyExpr.or(EditorContextKeys.inDiffEditor, ( ActiveEditorContext.isEqualTo(TEXT_DIFF_EDITOR_ID)))),
@@ -251,7 +251,7 @@ class ToggleAccessibleDiffViewAction extends ChatEditingEditorAction {
251
251
  constructor() {
252
252
  super({
253
253
  id: 'chatEditor.action.showAccessibleDiffView',
254
- title: ( localize2(4851, 'Show Accessible Diff View for Chat Edits')),
254
+ title: ( localize2(4930, 'Show Accessible Diff View for Chat Edits')),
255
255
  f1: true,
256
256
  precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxHasRequestInProgress.negate()))),
257
257
  keybinding: {
@@ -269,7 +269,7 @@ class ReviewChangesAction extends ChatEditingEditorAction {
269
269
  constructor() {
270
270
  super({
271
271
  id: 'chatEditor.action.reviewChanges',
272
- title: ( localize2(4852, "Review")),
272
+ title: ( localize2(4931, "Review")),
273
273
  precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxHasRequestInProgress.negate()))),
274
274
  menu: [{
275
275
  id: MenuId.ChatEditingEditorContent,
@@ -288,8 +288,8 @@ class AcceptAllEditsAction extends ChatEditingEditorAction {
288
288
  constructor() {
289
289
  super({
290
290
  id: AcceptAllEditsAction.ID,
291
- title: ( localize2(4853, 'Keep All Chat Edits')),
292
- tooltip: ( localize2(4854, 'Keep All Chat Edits in this Session')),
291
+ title: ( localize2(4932, 'Keep All Chat Edits')),
292
+ tooltip: ( localize2(4933, 'Keep All Chat Edits in this Session')),
293
293
  precondition: ( ContextKeyExpr.and(ctxHasEditorModification, ( ctxHasRequestInProgress.negate()))),
294
294
  icon: Codicon.checkAll,
295
295
  f1: true,
@@ -308,7 +308,7 @@ class MultiDiffAcceptDiscardAction extends Action2 {
308
308
  constructor(accept) {
309
309
  super({
310
310
  id: accept ? 'chatEditing.multidiff.acceptAllFiles' : 'chatEditing.multidiff.discardAllFiles',
311
- title: accept ? ( localize(4855, 'Keep All Edits')) : ( localize(4856, 'Undo All Edits')),
311
+ title: accept ? ( localize(4934, 'Keep All Edits')) : ( localize(4935, 'Undo All Edits')),
312
312
  icon: accept ? Codicon.check : Codicon.discard,
313
313
  menu: {
314
314
  when: ( ContextKeyExpr.equals('resourceScheme', CHAT_EDITING_MULTI_DIFF_SOURCE_RESOLVER_SCHEME)),
@@ -370,7 +370,7 @@ function registerChatEditorActions() {
370
370
  MenuRegistry.appendMenuItem(MenuId.ChatEditingEditorContent, {
371
371
  command: {
372
372
  id: navigationBearingFakeActionId,
373
- title: ( localize(4857, "Navigation Status")),
373
+ title: ( localize(4936, "Navigation Status")),
374
374
  precondition: ( ContextKeyExpr.false()),
375
375
  },
376
376
  group: 'navigate',
@@ -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-33de3d75-8b1a-53f0-9e27-0c71c327e1a1-common/vscode/vs/workbench/browser/parts/editor/editorGroupView';
19
+ import { EditorGroupView } from '@codingame/monaco-vscode-615ce609-8555-545a-a549-47bd9f80e9f8-common/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';
@@ -28,7 +28,7 @@ import { Codicon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/codi
28
28
  import { renderIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/iconLabel/iconLabels';
29
29
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
30
30
  import { equals } from '@codingame/monaco-vscode-api/vscode/vs/base/common/arrays';
31
- import { renderStringAsPlaintext } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/markdownRenderer';
31
+ import { renderAsPlaintext } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/markdownRenderer';
32
32
  import { IKeybindingService } from '@codingame/monaco-vscode-api/vscode/vs/platform/keybinding/common/keybinding.service';
33
33
  import { observableFromEventOpts, observableFromEvent } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/observableFromEvent';
34
34
  import { autorun } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/reactions/autorun';
@@ -64,10 +64,10 @@ 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(4863, "Working...")) };
67
+ return { message: ( localize(4942, "Working...")) };
68
68
  }
69
69
  if (response.isPaused.read(r)) {
70
- return { message: ( localize(4864, "Paused")), paused: true };
70
+ return { message: ( localize(4943, "Paused")), paused: true };
71
71
  }
72
72
  const lastPart = observableFromEventOpts({ equalsFn: equals }, response.onDidChange, () => response.response.value)
73
73
  .read(r)
@@ -80,7 +80,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
80
80
  return { message: lastPart.content };
81
81
  }
82
82
  else {
83
- return { message: ( localize(4863, "Working...")) };
83
+ return { message: ( localize(4942, "Working...")) };
84
84
  }
85
85
  });
86
86
  const progressNode = createElement('div');
@@ -96,7 +96,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
96
96
  textProgress.innerText = '';
97
97
  }
98
98
  else if (value) {
99
- textProgress.innerText = renderStringAsPlaintext(value.message);
99
+ textProgress.innerText = renderAsPlaintext(value.message);
100
100
  }
101
101
  }));
102
102
  this._toolbarNode = createElement('div');
@@ -157,10 +157,10 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
157
157
  const { changeCount, activeIdx } = that._navigationBearings.read(r);
158
158
  if (changeCount > 0) {
159
159
  const n = activeIdx === -1 ? '1' : `${activeIdx + 1}`;
160
- this.label.innerText = ( localize(4865, "{0} of {1}", n, changeCount));
160
+ this.label.innerText = ( localize(4944, "{0} of {1}", n, changeCount));
161
161
  }
162
162
  else {
163
- this.label.innerText = ( localize(4866, "—"));
163
+ this.label.innerText = ( localize(4945, "—"));
164
164
  }
165
165
  this.updateTooltip();
166
166
  }));
@@ -172,21 +172,21 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
172
172
  }
173
173
  let result;
174
174
  if (changeCount === 1 && entriesCount === 1) {
175
- result = ( localize(4867, "1 change in 1 file"));
175
+ result = ( localize(4946, "1 change in 1 file"));
176
176
  }
177
177
  else if (changeCount === 1) {
178
- result = ( localize(4868, "1 change in {0} files", entriesCount));
178
+ result = ( localize(4947, "1 change in {0} files", entriesCount));
179
179
  }
180
180
  else if (entriesCount === 1) {
181
- result = ( localize(4869, "{0} changes in 1 file", changeCount));
181
+ result = ( localize(4948, "{0} changes in 1 file", changeCount));
182
182
  }
183
183
  else {
184
- result = ( localize(4870, "{0} changes in {1} files", changeCount, entriesCount));
184
+ result = ( localize(4949, "{0} changes in {1} files", changeCount, entriesCount));
185
185
  }
186
186
  if (!that._isBusy.get()) {
187
187
  return result;
188
188
  }
189
- return localize(4871, "{0} - Working...", result);
189
+ return localize(4950, "{0} - Working...", result);
190
190
  }
191
191
  });
192
192
  }
@@ -235,7 +235,7 @@ let ChatEditorOverlayWidget = class ChatEditorOverlayWidget extends Disposable {
235
235
  if (!kb) {
236
236
  return value;
237
237
  }
238
- return localize(4872, "{0} ({1})", value, kb.getLabel());
238
+ return localize(4951, "{0} ({1})", value, kb.getLabel());
239
239
  }
240
240
  });
241
241
  }
@@ -17,7 +17,7 @@ import { IFilesConfigurationService } from "@codingame/monaco-vscode-api/vscode/
17
17
  import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service";
18
18
  import { ICellEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
19
19
  import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
20
- import { IChatResponseModel } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatModel";
20
+ import { IChatResponseModel } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatModel";
21
21
  import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
22
22
  import { AbstractChatEditingModifiedFileEntry } from "./chatEditingModifiedFileEntry.js";
23
23
  export declare class ChatEditingModifiedDocumentEntry extends AbstractChatEditingModifiedFileEntry implements IModifiedFileEntry {
@@ -44,7 +44,10 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
44
44
  this._textModelChangeService = this._register(instantiationService.createInstance(ChatEditingTextModelChangeService, this.originalModel, this.modifiedModel, this._stateObs));
45
45
  this._register(this._textModelChangeService.onDidAcceptOrRejectAllHunks(action => {
46
46
  this._stateObs.set(action, undefined);
47
- this._notifyAction(action === ModifiedFileEntryState.Accepted ? 'accepted' : 'rejected');
47
+ this._notifySessionAction(action === ModifiedFileEntryState.Accepted ? 'accepted' : 'rejected');
48
+ }));
49
+ this._register(this._textModelChangeService.onDidAcceptOrRejectLines(action => {
50
+ this._notifyAction({ kind: 'chatEditingHunkAction', uri: this.modifiedURI, outcome: action.state, lineCount: action.lineCount, hasRemainingEdits: action.hasRemainingEdits });
48
51
  }));
49
52
  (async () => {
50
53
  const reference = await textModelService.createModelReference(docSnapshot.uri);
@@ -67,7 +70,7 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
67
70
  if (inProgress) {
68
71
  const res = this._lastModifyingResponseObs.read(r);
69
72
  const req = res && res.session.getRequests().find(value => value.id === res.requestId);
70
- resourceFilter.value = markerService.installResourceFilter(this.modifiedURI, req?.message.text || ( localize(4873, "Chat Edits")));
73
+ resourceFilter.value = markerService.installResourceFilter(this.modifiedURI, req?.message.text || ( localize(4952, "Chat Edits")));
71
74
  }
72
75
  else {
73
76
  resourceFilter.clear();
@@ -109,7 +112,7 @@ let ChatEditingModifiedDocumentEntry = class ChatEditingModifiedDocumentEntry ex
109
112
  }
110
113
  _createUndoRedoElement(response) {
111
114
  const request = response.session.getRequests().find(req => req.id === response.requestId);
112
- const label = request?.message.text ? ( localize(4874, "Chat Edit: '{0}'", request.message.text)) : ( localize(4875, "Chat Edit"));
115
+ const label = request?.message.text ? ( localize(4953, "Chat Edit: '{0}'", request.message.text)) : ( localize(4954, "Chat Edit"));
113
116
  return ( new SingleModelEditStackElement(label, 'chat.edit', this.modifiedModel, null));
114
117
  }
115
118
  async acceptAgentEdits(resource, textEdits, isLastEdits, responseModel) {
@@ -13,7 +13,8 @@ import { IEditorPane } from "@codingame/monaco-vscode-api/vscode/vs/workbench/co
13
13
  import { IFilesConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service";
14
14
  import { ICellEditOperation } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/notebook/common/notebookCommon";
15
15
  import { ChatEditKind, IModifiedEntryTelemetryInfo, IModifiedFileEntry, IModifiedFileEntryEditorIntegration, ISnapshotEntry, ModifiedFileEntryState } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatEditingService";
16
- import { IChatResponseModel } from "@codingame/monaco-vscode-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatModel";
16
+ import { IChatResponseModel } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/vscode/vs/workbench/contrib/chat/common/chatModel";
17
+ import { ChatUserAction } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService";
17
18
  import { IChatService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/chatService.service";
18
19
  declare class AutoAcceptControl {
19
20
  readonly total: number;
@@ -66,7 +67,8 @@ export declare abstract class AbstractChatEditingModifiedFileEntry extends Dispo
66
67
  protected abstract _doAccept(): Promise<void>;
67
68
  reject(): Promise<void>;
68
69
  protected abstract _doReject(): Promise<void>;
69
- protected _notifyAction(outcome: "accepted" | "rejected" | "userModified"): void;
70
+ protected _notifySessionAction(outcome: "accepted" | "rejected" | "userModified"): void;
71
+ protected _notifyAction(action: ChatUserAction): void;
70
72
  private readonly _editorIntegrations;
71
73
  getEditorIntegration(pane: IEditorPane): IModifiedFileEntryEditorIntegration;
72
74
  protected abstract _createEditorIntegration(editor: IEditorPane): IModifiedFileEntryEditorIntegration;
@@ -40,7 +40,7 @@ class AutoAcceptControl {
40
40
  this.cancel = cancel;
41
41
  }
42
42
  }
43
- const pendingRewriteMinimap = registerColor('minimap.chatEditHighlight', ( transparent(editorBackground, 0.6)), ( localize(4876, "Color of pending edit regions in the minimap")));
43
+ const pendingRewriteMinimap = registerColor('minimap.chatEditHighlight', ( transparent(editorBackground, 0.6)), ( localize(4955, "Color of pending edit regions in the minimap")));
44
44
  let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFileEntry extends Disposable {
45
45
  static { AbstractChatEditingModifiedFileEntry_1 = this; }
46
46
  static { this.scheme = 'modified-file-entry'; }
@@ -80,7 +80,7 @@ let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFile
80
80
  this._autoAcceptCtrl = observableValue(this, undefined);
81
81
  this.autoAcceptController = this._autoAcceptCtrl;
82
82
  this._refCounter = 1;
83
- this._userEditScheduler = this._register(( new RunOnceScheduler(() => this._notifyAction('userModified'), 1000)));
83
+ this._userEditScheduler = this._register(( new RunOnceScheduler(() => this._notifySessionAction('userModified'), 1000)));
84
84
  this._editorIntegrations = this._register(( new DisposableMap()));
85
85
  if (kind === ChatEditKind.Created) {
86
86
  this.createdInRequestId = this._telemetryInfo.requestId;
@@ -172,22 +172,25 @@ let AbstractChatEditingModifiedFileEntry = class AbstractChatEditingModifiedFile
172
172
  this._stateObs.set(ModifiedFileEntryState.Accepted, tx);
173
173
  this._autoAcceptCtrl.set(undefined, tx);
174
174
  });
175
- this._notifyAction('accepted');
175
+ this._notifySessionAction('accepted');
176
176
  }
177
177
  async reject() {
178
178
  if (this._stateObs.get() !== ModifiedFileEntryState.Modified) {
179
179
  return;
180
180
  }
181
- this._notifyAction('rejected');
181
+ this._notifySessionAction('rejected');
182
182
  await this._doReject();
183
183
  transaction(tx => {
184
184
  this._stateObs.set(ModifiedFileEntryState.Rejected, tx);
185
185
  this._autoAcceptCtrl.set(undefined, tx);
186
186
  });
187
187
  }
188
- _notifyAction(outcome) {
188
+ _notifySessionAction(outcome) {
189
+ this._notifyAction({ kind: 'chatEditingSessionAction', uri: this.modifiedURI, hasRemainingEdits: false, outcome });
190
+ }
191
+ _notifyAction(action) {
189
192
  this._chatService.notifyUserAction({
190
- action: { kind: 'chatEditingSessionAction', uri: this.modifiedURI, hasRemainingEdits: false, outcome },
193
+ action,
191
194
  agentId: this._telemetryInfo.agentId,
192
195
  command: this._telemetryInfo.command,
193
196
  sessionId: this._telemetryInfo.sessionId,
@@ -19,7 +19,7 @@ import { INotebookEditorModelResolverService } from "@codingame/monaco-vscode-ap
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-9911aec2-e4dd-5483-8369-9d695cc70d8a-common/vscode/vs/workbench/contrib/chat/common/chatModel";
22
+ import { IChatResponseModel } from "@codingame/monaco-vscode-c2deffc4-ad68-5e63-8f95-9b89e0fc6898-common/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";
@@ -27,7 +27,7 @@ import { SaveReason } from '@codingame/monaco-vscode-api/vscode/vs/workbench/com
27
27
  import { IFilesConfigurationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service';
28
28
  import { SnapshotContext } from '@codingame/monaco-vscode-6f931a91-88ea-5232-897f-a17ec3929ba5-common/vscode/vs/workbench/services/workingCopy/common/fileWorkingCopy';
29
29
  import { NotebookTextDiffEditor } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-common/vscode/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor';
30
- import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-271a23cd-c7d7-5761-ae35-a923a42987b8-common/vscode/vs/workbench/contrib/notebook/browser/notebookBrowser';
30
+ import { getNotebookEditorFromEditorPane } from '@codingame/monaco-vscode-670aae94-7f88-54d7-90ea-6fcbef423557-common/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
32
  import { computeDiff } from '@codingame/monaco-vscode-e4d0fd26-1b26-5583-b3f7-582e08d7b389-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';
@@ -177,7 +177,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
177
177
  try {
178
178
  this._isProcessingResponse.set(true, undefined);
179
179
  const notebookDiff = await this.notebookEditorWorkerService.computeDiff(this.originalURI, this.modifiedURI);
180
- if (id !== this.computeRequestId) {
180
+ if (id !== this.computeRequestId || this._store.isDisposed) {
181
181
  return;
182
182
  }
183
183
  const result = computeDiff(this.originalModel, this.modifiedModel, notebookDiff);
@@ -207,7 +207,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
207
207
  this._stateObs.set(ModifiedFileEntryState.Rejected, undefined);
208
208
  this.updateCellDiffInfo([], undefined);
209
209
  this.initializeModelsFromDiff();
210
- this._notifyAction('rejected');
210
+ this._notifySessionAction('rejected');
211
211
  return;
212
212
  }
213
213
  if (!e.rawEvents.length) {
@@ -396,7 +396,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
396
396
  }
397
397
  _createUndoRedoElement(response) {
398
398
  const request = response.session.getRequests().find(req => req.id === response.requestId);
399
- const label = request?.message.text ? ( localize(4877, "Chat Edit: '{0}'", request.message.text)) : ( localize(4878, "Chat Edit"));
399
+ const label = request?.message.text ? ( localize(4956, "Chat Edit: '{0}'", request.message.text)) : ( localize(4957, "Chat Edit"));
400
400
  const transientOptions = this.transientOptions;
401
401
  const outputSizeLimit = this.configurationService.getValue(NotebookSetting.outputBackupSizeLimit) * 1024;
402
402
  let initial = createSnapshot(this.modifiedModel, transientOptions, outputSizeLimit);
@@ -422,7 +422,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
422
422
  this._stateObs.set(ModifiedFileEntryState.Rejected, undefined);
423
423
  this.updateCellDiffInfo([], undefined);
424
424
  this.initializeModelsFromDiff();
425
- this._notifyAction('userModified');
425
+ this._notifySessionAction('userModified');
426
426
  },
427
427
  redo: async () => {
428
428
  initial = createSnapshot(this.modifiedModel, transientOptions, outputSizeLimit);
@@ -437,7 +437,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
437
437
  this._stateObs.set(redoState, undefined);
438
438
  this.updateCellDiffInfo([], undefined);
439
439
  this.initializeModelsFromDiff();
440
- this._notifyAction('userModified');
440
+ this._notifySessionAction('userModified');
441
441
  }
442
442
  };
443
443
  }
@@ -469,7 +469,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
469
469
  })));
470
470
  this.editedCells.clear();
471
471
  };
472
- this._applyEdits(async () => {
472
+ await this._applyEdits(async () => {
473
473
  await Promise.all(( edits.map(async (edit, idx) => {
474
474
  const last = isLastEdits && idx === edits.length - 1;
475
475
  if (TextEdit.isTextEdit(edit)) {
@@ -571,7 +571,7 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
571
571
  if (( new SnapshotComparer(currentSnapshot)).isEqual(this.originalModel)) {
572
572
  const state = accepted ? ModifiedFileEntryState.Accepted : ModifiedFileEntryState.Rejected;
573
573
  this._stateObs.set(state, undefined);
574
- this._notifyAction(accepted ? 'accepted' : 'rejected');
574
+ this._notifySessionAction(accepted ? 'accepted' : 'rejected');
575
575
  }
576
576
  }
577
577
  createModifiedCellDiffInfo(modifiedCellIndex, originalCellIndex) {
@@ -625,6 +625,9 @@ let ChatEditingModifiedNotebookEntry = class ChatEditingModifiedNotebookEntry ex
625
625
  return true;
626
626
  };
627
627
  this.resolveCellModel(cell.uri).then(modifiedModel => {
628
+ if (this._store.isDisposed) {
629
+ return;
630
+ }
628
631
  this.getOrCreateModifiedTextFileEntryForCell(cell, modifiedModel, originalModel);
629
632
  });
630
633
  return {