@codingame/monaco-vscode-chat-service-override 25.1.2 → 26.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 (334) hide show
  1. package/index.js +24 -3
  2. package/package.json +5 -5
  3. package/vscode/src/vs/platform/browserElements/common/browserElements.d.ts +23 -3
  4. package/vscode/src/vs/platform/browserElements/common/browserElements.js +13 -6
  5. package/vscode/src/vs/platform/domWidget/browser/domWidget.js +4 -4
  6. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.d.ts +1 -1
  7. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatAccessibilityService.js +42 -27
  8. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.d.ts +14 -0
  9. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatResponseAccessibleView.js +218 -74
  10. package/vscode/src/vs/workbench/contrib/chat/browser/accessibility/chatTerminalOutputAccessibleView.js +6 -8
  11. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityActions.js +14 -9
  12. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +165 -168
  13. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAgentRecommendationActions.js +27 -25
  14. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCodeblockActions.js +141 -140
  15. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatContextActions.js +189 -121
  16. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCopyActions.js +14 -15
  17. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.d.ts +60 -0
  18. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatCustomizationDiagnosticsAction.js +435 -0
  19. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatDeveloperActions.js +28 -12
  20. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatFileTreeActions.js +10 -12
  21. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.d.ts +3 -1
  22. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatGettingStarted.js +37 -16
  23. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.d.ts +11 -0
  24. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatImportExport.js +54 -24
  25. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatLanguageModelActions.js +73 -34
  26. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatMoveActions.js +71 -30
  27. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatNewActions.js +151 -89
  28. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatPromptNavigationActions.js +12 -15
  29. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +39 -40
  30. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolActions.js +90 -125
  31. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.d.ts +5 -2
  32. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatToolPicker.js +263 -143
  33. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTransfer.js +4 -4
  34. package/vscode/src/vs/workbench/contrib/chat/browser/actions/codeBlockOperations.js +188 -126
  35. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.d.ts +1 -1
  36. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessions.contribution.js +37 -28
  37. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.d.ts +21 -9
  38. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsActions.js +392 -226
  39. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsPicker.js +31 -27
  40. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsQuickAccess.js +25 -23
  41. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsService.js +1 -3
  42. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.d.ts +2 -0
  43. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjection.js +13 -0
  44. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.d.ts +20 -0
  45. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionActions.js +83 -0
  46. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.d.ts +68 -0
  47. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionProjectionService.js +319 -0
  48. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.d.ts +1 -0
  49. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentSessionsExperiments.contribution.js +215 -0
  50. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.d.ts +179 -0
  51. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/agentTitleBarStatusWidget.js +951 -0
  52. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agentsessionprojection.css +20 -0
  53. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/agenttitlebarstatuswidget.css +388 -0
  54. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/media/unifiedQuickAccess.css +195 -0
  55. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.d.ts +120 -0
  56. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccess.js +394 -0
  57. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.d.ts +38 -0
  58. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/experiments/unifiedQuickAccessActions.js +95 -0
  59. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.d.ts +3 -1
  60. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/localAgentSessionsProvider.js +31 -29
  61. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatAttachmentResolveService.js +49 -47
  62. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/chatVariables.js +4 -6
  63. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/media/simpleBrowserOverlay.css +0 -1
  64. package/vscode/src/vs/workbench/contrib/chat/browser/attachments/simpleBrowserEditorOverlay.js +188 -151
  65. package/vscode/src/vs/workbench/contrib/chat/browser/chat.contribution.js +1012 -639
  66. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCheckpointTimelineImpl.js +256 -151
  67. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.d.ts +8 -1
  68. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingCodeEditorIntegration.js +182 -101
  69. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.d.ts +79 -0
  70. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingDeletedFileEntry.js +193 -0
  71. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorAccessibility.js +9 -7
  72. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.d.ts +68 -0
  73. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingExplanationModelManager.js +253 -0
  74. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.d.ts +4 -5
  75. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedDocumentEntry.js +69 -50
  76. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.d.ts +3 -4
  77. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedFileEntry.js +52 -33
  78. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.d.ts +5 -6
  79. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingModifiedNotebookEntry.js +274 -155
  80. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingOperations.js +1 -1
  81. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.d.ts +2 -10
  82. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingServiceImpl.js +130 -104
  83. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.d.ts +12 -2
  84. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSession.js +385 -160
  85. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingSessionStorage.js +53 -36
  86. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelChangeService.js +112 -75
  87. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingTextModelContentProviders.js +19 -10
  88. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditorController.css +31 -11
  89. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingModifiedNotebookSnapshot.js +39 -17
  90. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNewNotebookContentEdits.js +10 -14
  91. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.d.ts +0 -2
  92. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookCellEntry.js +25 -16
  93. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.d.ts +1 -1
  94. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookEditorIntegration.js +265 -203
  95. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/chatEditingNotebookFileSystemProvider.js +29 -26
  96. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/helpers.js +114 -60
  97. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/notebookCellChanges.js +16 -19
  98. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/notebook/overlayToolbarDecorator.js +44 -30
  99. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagement.contribution.js +119 -45
  100. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.d.ts +1 -0
  101. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditor.js +152 -136
  102. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatManagementEditorInput.js +12 -8
  103. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.d.ts +51 -31
  104. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsViewModel.js +323 -217
  105. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.d.ts +4 -3
  106. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatModelsWidget.js +653 -401
  107. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/chatUsageWidget.js +52 -40
  108. package/vscode/src/vs/workbench/contrib/chat/browser/chatManagement/media/chatModelsWidget.css +22 -3
  109. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.d.ts +5 -2
  110. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.js +43 -28
  111. package/vscode/src/vs/workbench/contrib/chat/browser/chatParticipant.contribution.js +182 -136
  112. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.d.ts +33 -0
  113. package/vscode/src/vs/workbench/contrib/chat/browser/chatRepoInfo.js +548 -0
  114. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.d.ts +0 -1
  115. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupContributions.js +222 -138
  116. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.d.ts +3 -3
  117. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupController.js +151 -113
  118. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.d.ts +6 -4
  119. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupProviders.js +453 -217
  120. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.d.ts +1 -1
  121. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/chatSetupRunner.js +162 -88
  122. package/vscode/src/vs/workbench/contrib/chat/browser/chatSetup/media/chatSetup.css +2 -1
  123. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.d.ts +0 -2
  124. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatus.js +1 -13
  125. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.d.ts +1 -0
  126. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusDashboard.js +309 -233
  127. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusEntry.js +55 -53
  128. package/vscode/src/vs/workbench/contrib/chat/browser/chatStatus/chatStatusItemService.js +3 -1
  129. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.d.ts +37 -0
  130. package/vscode/src/vs/workbench/contrib/chat/browser/chatTipService.js +109 -0
  131. package/vscode/src/vs/workbench/contrib/chat/browser/chatWindowNotifier.js +35 -23
  132. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.d.ts +9 -4
  133. package/vscode/src/vs/workbench/contrib/chat/browser/contextContrib/chatContextService.js +73 -33
  134. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.d.ts +47 -0
  135. package/vscode/src/vs/workbench/contrib/chat/browser/languageModelsConfigurationService.js +333 -0
  136. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/chatModeActions.js +39 -25
  137. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionContribution.js +9 -5
  138. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptCodingAgentActionOverlay.js +23 -20
  139. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptFileActions.js +2 -0
  140. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptToolsCodeLensProvider.js +20 -16
  141. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/promptUrlHandler.js +65 -57
  142. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/runPromptAction.js +48 -36
  143. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/saveAsPromptFileActions.js +20 -12
  144. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.d.ts +4 -0
  145. package/vscode/src/vs/workbench/contrib/chat/browser/promptSyntax/skillActions.js +52 -0
  146. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsConfirmationService.js +155 -159
  147. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.d.ts +24 -14
  148. package/vscode/src/vs/workbench/contrib/chat/browser/tools/languageModelToolsService.js +521 -246
  149. package/vscode/src/vs/workbench/contrib/chat/browser/tools/toolSetsContribution.js +107 -76
  150. package/vscode/src/vs/workbench/contrib/chat/browser/viewsWelcome/chatViewsWelcomeHandler.js +28 -24
  151. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/chatMarkdownAnchorService.js +10 -6
  152. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.d.ts +16 -0
  153. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatContentParts/toolInvocationParts/chatToolOutputStateCache.js +57 -0
  154. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatLayoutService.js +4 -6
  155. package/vscode/src/vs/workbench/contrib/chat/browser/widget/chatWidgetService.js +56 -44
  156. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.d.ts +0 -3
  157. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/chatStatusWidget.js +37 -47
  158. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatEditorInputContentProvider.js +5 -7
  159. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.d.ts +10 -0
  160. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputCompletions.js +1284 -0
  161. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorContrib.js +179 -125
  162. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/chatInputEditorHover.js +9 -11
  163. package/vscode/src/vs/workbench/contrib/chat/browser/widget/input/editor/editorHoverWrapper.js +7 -6
  164. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/chatQuick.js +96 -78
  165. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/editor/chatEditor.js +58 -53
  166. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.d.ts +25 -11
  167. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewPane.js +484 -292
  168. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.d.ts +1 -6
  169. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/chatViewTitleControl.js +65 -92
  170. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewPane.css +16 -19
  171. package/vscode/src/vs/workbench/contrib/chat/browser/widgetHosts/viewPane/media/chatViewTitleControl.css +1 -0
  172. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.d.ts +9 -1
  173. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceImpl.js +331 -189
  174. package/vscode/src/vs/workbench/contrib/chat/common/chatService/chatServiceTelemetry.js +81 -93
  175. package/vscode/src/vs/workbench/contrib/chat/common/ignoredFiles.js +1 -3
  176. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.d.ts +5 -3
  177. package/vscode/src/vs/workbench/contrib/chat/common/model/chatModelStore.js +6 -7
  178. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.d.ts +36 -8
  179. package/vscode/src/vs/workbench/contrib/chat/common/model/chatProgressTypes/chatToolInvocation.js +169 -31
  180. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.d.ts +6 -0
  181. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionOperationLog.js +141 -0
  182. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.d.ts +6 -4
  183. package/vscode/src/vs/workbench/contrib/chat/common/model/chatSessionStore.js +218 -144
  184. package/vscode/src/vs/workbench/contrib/chat/common/model/chatTransferService.js +20 -10
  185. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.d.ts +109 -0
  186. package/vscode/src/vs/workbench/contrib/chat/common/model/objectMutationLog.js +349 -0
  187. package/vscode/src/vs/workbench/contrib/chat/common/participants/chatSlashCommands.js +9 -8
  188. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.d.ts +9 -0
  189. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/chatPromptFilesContribution.js +139 -36
  190. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/PromptHeaderDefinitionProvider.js +3 -6
  191. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptBodyAutocompletion.js +64 -51
  192. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptCodeActions.js +49 -34
  193. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptDocumentSemanticTokensProvider.js +21 -13
  194. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.d.ts +1 -1
  195. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHeaderAutocompletion.js +125 -97
  196. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptHovers.js +91 -131
  197. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptLinkProvider.js +8 -5
  198. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.d.ts +5 -0
  199. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/languageProviders/promptValidator.js +488 -222
  200. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/promptFileContributions.js +32 -12
  201. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.d.ts +58 -13
  202. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsServiceImpl.js +717 -200
  203. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.d.ts +79 -18
  204. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/utils/promptFilesLocator.js +371 -130
  205. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.d.ts +0 -1
  206. package/vscode/src/vs/workbench/contrib/chat/common/tools/chatTodoListService.js +3 -7
  207. package/vscode/src/vs/workbench/contrib/chat/common/voiceChatService.js +79 -61
  208. package/vscode/src/vs/workbench/contrib/chat/common/widget/chatResponseResourceFileSystemProvider.js +27 -21
  209. package/vscode/src/vs/workbench/contrib/editTelemetry/browser/telemetry/aiEditTelemetry/aiEditTelemetryServiceImpl.js +7 -10
  210. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.d.ts +1 -1
  211. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.contribution.js +26 -32
  212. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibilityHelp.js +2 -2
  213. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.d.ts +8 -60
  214. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +115 -426
  215. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.d.ts +15 -0
  216. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatDefaultModel.js +127 -0
  217. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatNotebook.js +1 -37
  218. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +16 -0
  219. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +21 -0
  220. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.d.ts +51 -0
  221. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +334 -0
  222. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.d.ts +41 -0
  223. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpPromptArgumentPick.js +424 -0
  224. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.d.ts +4 -0
  225. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/chat/notebookChatUtils.js +58 -0
  226. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.d.ts +7 -0
  227. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/cellChatActions.js +195 -0
  228. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.d.ts +8 -0
  229. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebook.chat.contribution.js +368 -0
  230. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.d.ts +2 -0
  231. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +7 -0
  232. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.d.ts +1 -1
  233. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/inlineDiff/notebookModifiedCellDecorator.js +1 -1
  234. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/browser/remoteCodingAgents.contribution.js +23 -25
  235. package/vscode/src/vs/workbench/contrib/remoteCodingAgents/common/remoteCodingAgentsService.js +7 -8
  236. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibilityHelp.js +34 -38
  237. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatAccessibleView.js +8 -12
  238. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatActions.js +103 -95
  239. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatController.js +28 -16
  240. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatEnabler.js +4 -5
  241. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.d.ts +12 -8
  242. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatService.js +65 -54
  243. package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChatWidget.js +86 -60
  244. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/alternativeRecommendation.js +13 -26
  245. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/commandFileWriteParser.d.ts +24 -0
  246. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.d.ts +26 -0
  247. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/commandParsers/sedFileWriteParser.js +142 -0
  248. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.d.ts +2 -1
  249. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/basicExecuteStrategy.js +56 -46
  250. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.d.ts +2 -2
  251. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/executeStrategy.js +63 -31
  252. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.d.ts +2 -1
  253. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/noneExecuteStrategy.js +35 -30
  254. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.d.ts +2 -1
  255. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/richExecuteStrategy.js +44 -37
  256. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/executeStrategy/strategyHelpers.js +3 -4
  257. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/outputHelpers.js +3 -3
  258. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.d.ts +11 -0
  259. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalHelpers.js +70 -50
  260. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/runInTerminalToolTelemetry.js +26 -394
  261. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/taskHelpers.js +85 -49
  262. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/terminal.chatAgentTools.contribution.js +68 -27
  263. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.d.ts +1 -0
  264. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/toolTerminalCreator.js +67 -45
  265. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.d.ts +12 -0
  266. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/awaitTerminalTool.js +106 -0
  267. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.d.ts +2 -2
  268. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/commandLineAutoApprover.js +177 -97
  269. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/autoApprove/npmScriptAutoApprover.js +136 -49
  270. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAnalyzer.d.ts +2 -1
  271. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineAutoApproveAnalyzer.js +128 -112
  272. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineFileWriteAnalyzer.js +51 -49
  273. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.d.ts +8 -0
  274. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineAnalyzer/commandLineSandboxAnalyzer.js +25 -0
  275. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/commandLinePresenter.d.ts +41 -0
  276. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.d.ts +19 -0
  277. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/nodeCommandLinePresenter.js +37 -0
  278. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.d.ts +19 -0
  279. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/pythonCommandLinePresenter.js +37 -0
  280. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.d.ts +19 -0
  281. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/rubyCommandLinePresenter.js +44 -0
  282. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.d.ts +12 -0
  283. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLinePresenter/sandboxedCommandLinePresenter.js +21 -0
  284. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineCdPrefixRewriter.js +5 -14
  285. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLinePreventHistoryRewriter.js +2 -4
  286. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineRewriter.d.ts +1 -0
  287. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.d.ts +8 -0
  288. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/commandLineRewriter/commandLineSandboxRewriter.js +29 -0
  289. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalLastCommandTool.js +30 -31
  290. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalOutputTool.js +16 -17
  291. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/getTerminalSelectionTool.js +19 -20
  292. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.d.ts +11 -0
  293. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/killTerminalTool.js +58 -0
  294. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.d.ts +31 -3
  295. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/outputMonitor.js +325 -199
  296. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.d.ts +1 -1
  297. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/monitoring/types.js +1 -1
  298. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalConfirmationTool.js +33 -38
  299. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.d.ts +45 -5
  300. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/runInTerminalTool.js +746 -456
  301. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/createAndRunTaskTool.js +145 -98
  302. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/getTaskOutputTool.js +88 -37
  303. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/runTaskTool.js +120 -51
  304. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/task/taskHelpers.js +25 -28
  305. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.d.ts +5 -0
  306. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/terminalCommandArtifactCollector.js +58 -12
  307. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.d.ts +12 -0
  308. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/tools/toolIds.js +17 -0
  309. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.d.ts +8 -1
  310. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/browser/treeSitterCommandParser.js +47 -28
  311. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.d.ts +37 -0
  312. package/vscode/src/vs/workbench/contrib/terminalContrib/chatAgentTools/common/terminalSandboxService.js +171 -0
  313. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.d.ts +0 -58
  314. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsControl.js +0 -213
  315. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.d.ts +0 -39
  316. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsFilter.js +0 -243
  317. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.d.ts +0 -7
  318. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsOpener.js +0 -41
  319. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.d.ts +0 -166
  320. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/agentSessionsViewer.js +0 -607
  321. package/vscode/src/vs/workbench/contrib/chat/browser/agentSessions/media/agentsessionsviewer.css +0 -255
  322. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.d.ts +0 -46
  323. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorActions.js +0 -396
  324. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.d.ts +0 -9
  325. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorOverlay.js +0 -379
  326. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/media/chatEditingEditorOverlay.css +0 -117
  327. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.d.ts +0 -141
  328. package/vscode/src/vs/workbench/contrib/chat/browser/chatSessions/chatSessions.contribution.js +0 -961
  329. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.d.ts +0 -36
  330. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsContribution.js +0 -447
  331. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.d.ts +0 -6
  332. package/vscode/src/vs/workbench/contrib/chat/common/tools/languageModelToolsParametersSchema.js +0 -251
  333. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.d.ts +0 -10
  334. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatAccessibleView.js +0 -42
@@ -34,10 +34,20 @@ import { observableSignalFromEvent } from '@codingame/monaco-vscode-api/vscode/v
34
34
  import { ObservablePromise } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/utils/promise';
35
35
  import { constObservable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/observables/constObservable';
36
36
 
37
- const START_REQUEST_EPOCH = '$$start';
38
- const STOP_ID_EPOCH_PREFIX = '__epoch_';
37
+ const START_REQUEST_EPOCH = "$$start";
38
+ const STOP_ID_EPOCH_PREFIX = "__epoch_";
39
39
  let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl {
40
- constructor(chatSessionResource, _delegate, _notebookEditorModelResolverService, _notebookService, _instantiationService, _modelService, _textModelService, _editorWorkerService, _configurationService) {
40
+ constructor(
41
+ chatSessionResource,
42
+ _delegate,
43
+ _notebookEditorModelResolverService,
44
+ _notebookService,
45
+ _instantiationService,
46
+ _modelService,
47
+ _textModelService,
48
+ _editorWorkerService,
49
+ _configurationService
50
+ ) {
41
51
  this.chatSessionResource = chatSessionResource;
42
52
  this._delegate = _delegate;
43
53
  this._notebookEditorModelResolverService = _notebookEditorModelResolverService;
@@ -50,7 +60,9 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
50
60
  this._epochCounter = 0;
51
61
  this._checkpoints = observableValue(this, []);
52
62
  this._currentEpoch = observableValue(this, 0);
53
- this._operations = observableValueOpts({ equalsFn: () => false }, []);
63
+ this._operations = observableValueOpts({
64
+ equalsFn: () => false
65
+ }, []);
54
66
  this._fileBaselines = ( new Map());
55
67
  this._refCountedDiffs = ( new Map());
56
68
  this._willUndoToCheckpoint = derived(reader => {
@@ -90,7 +102,10 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
90
102
  const nextCheckpoint = nextOperation && checkpoints.find(op => op.epoch > nextOperation.epoch);
91
103
  const currentCheckpoint = findLast(checkpoints, cp => cp.epoch < currentEpoch);
92
104
  if (currentCheckpoint && nextOperation && currentCheckpoint.requestId !== nextOperation.requestId) {
93
- const startOfNextRequestIdx = findLastIdx(checkpoints, (cp, i) => cp.undoStopId === undefined && (checkpoints[i - 1]?.requestId === currentCheckpoint.requestId));
105
+ const startOfNextRequestIdx = findLastIdx(
106
+ checkpoints,
107
+ (cp, i) => cp.undoStopId === undefined && (checkpoints[i - 1]?.requestId === currentCheckpoint.requestId)
108
+ );
94
109
  const startOfNextRequest = startOfNextRequestIdx === -1 ? undefined : checkpoints[startOfNextRequestIdx];
95
110
  if (startOfNextRequest && nextOperation.requestId !== startOfNextRequest.requestId) {
96
111
  const requestAfterTheNext = findFirst(checkpoints, op => op.undoStopId === undefined, startOfNextRequestIdx + 1);
@@ -102,7 +117,9 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
102
117
  return Math.min(nextCheckpoint?.epoch || Infinity, (maxEncounteredEpoch + 1));
103
118
  });
104
119
  this.canRedo = ( this._willRedoToEpoch.map(e => !!e));
105
- this.requestDisablement = derivedOpts({ equalsFn: (a, b) => equals(a, b, equals$1) }, reader => {
120
+ this.requestDisablement = derivedOpts({
121
+ equalsFn: (a, b) => equals(a, b, equals$1)
122
+ }, reader => {
106
123
  const currentEpoch = this._currentEpoch.read(reader);
107
124
  const operations = this._operations.read(reader);
108
125
  const checkpoints = this._checkpoints.read(reader);
@@ -115,7 +132,11 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
115
132
  const stopDisablingAtEpoch = Math.max(lastAppliedOperation, lastAppliedRequest);
116
133
  const disablement = ( new Map());
117
134
  for (let i = checkpoints.length - 1; i >= 0; i--) {
118
- const { undoStopId, requestId, epoch } = checkpoints[i];
135
+ const {
136
+ undoStopId,
137
+ requestId,
138
+ epoch
139
+ } = checkpoints[i];
119
140
  if (epoch <= stopDisablingAtEpoch) {
120
141
  break;
121
142
  }
@@ -123,9 +144,12 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
123
144
  disablement.set(requestId, undoStopId);
124
145
  }
125
146
  }
126
- return ( [...disablement].map(([requestId, afterUndoStop]) => ({ requestId, afterUndoStop })));
147
+ return ( [...disablement].map(([requestId, afterUndoStop]) => ({
148
+ requestId,
149
+ afterUndoStop
150
+ })));
127
151
  });
128
- this.createCheckpoint(undefined, undefined, 'Initial State', 'Starting point before any edits');
152
+ this.createCheckpoint(undefined, undefined, "Initial State", "Starting point before any edits");
129
153
  }
130
154
  createCheckpoint(requestId, undoStopId, label, description) {
131
155
  const existingCheckpoints = this._checkpoints.get();
@@ -133,7 +157,10 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
133
157
  if (existing) {
134
158
  return existing.checkpointId;
135
159
  }
136
- const { checkpoints, operations } = this._getVisibleOperationsAndCheckpoints();
160
+ const {
161
+ checkpoints,
162
+ operations
163
+ } = this._getVisibleOperationsAndCheckpoints();
137
164
  const checkpointId = generateUuid();
138
165
  const epoch = this.incrementEpoch();
139
166
  checkpoints.push({
@@ -170,8 +197,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
170
197
  }
171
198
  if (targetCheckpoint.undoStopId === undefined) {
172
199
  return this._navigateToEpoch(targetCheckpoint.epoch + 1, targetCheckpoint.epoch);
173
- }
174
- else {
200
+ } else {
175
201
  return this._navigateToEpoch(targetCheckpoint.epoch + 1);
176
202
  }
177
203
  }
@@ -193,7 +219,11 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
193
219
  return this._epochCounter++;
194
220
  }
195
221
  recordFileOperation(operation) {
196
- const { currentEpoch, checkpoints, operations } = this._getVisibleOperationsAndCheckpoints();
222
+ const {
223
+ currentEpoch,
224
+ checkpoints,
225
+ operations
226
+ } = this._getVisibleOperationsAndCheckpoints();
197
227
  if (operation.epoch < currentEpoch) {
198
228
  throw ( new Error(
199
229
  `Cannot record operation at epoch ${operation.epoch} when current epoch is ${currentEpoch}`
@@ -234,17 +264,16 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
234
264
  let toEpoch;
235
265
  if (stopId?.startsWith(STOP_ID_EPOCH_PREFIX)) {
236
266
  toEpoch = Number(stopId.slice(STOP_ID_EPOCH_PREFIX.length));
237
- }
238
- else {
267
+ } else {
239
268
  toEpoch = this._checkpoints.get().find(c => c.requestId === requestId && c.undoStopId === stopId)?.epoch;
240
269
  }
241
270
  const fileURI = this._getTimelineCanonicalUriForPath(contentURI);
242
271
  if (!toEpoch || !fileURI) {
243
- return '';
272
+ return "";
244
273
  }
245
274
  const baseline = await this._findBestBaselineForFile(fileURI, toEpoch, requestId);
246
275
  if (!baseline) {
247
- return '';
276
+ return "";
248
277
  }
249
278
  const operations = this._getFileOperationsInRange(fileURI, baseline.epoch, toEpoch);
250
279
  const replayed = await this._replayOperations(baseline, operations);
@@ -291,11 +320,11 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
291
320
  if (!targetCheckpoint) {
292
321
  throw ( new Error(`Checkpoint for epoch ${targetEpoch} not found`));
293
322
  }
294
- const baseline = await this._findBestBaselineForFile(uri, targetEpoch, targetCheckpoint.requestId || '');
323
+ const baseline = await this._findBestBaselineForFile(uri, targetEpoch, targetCheckpoint.requestId || "");
295
324
  if (!baseline) {
296
325
  return {
297
326
  exists: false,
298
- uri,
327
+ uri
299
328
  };
300
329
  }
301
330
  const operations = this._getFileOperationsInRange(uri, baseline.epoch, targetEpoch);
@@ -307,7 +336,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
307
336
  currentEpoch: this._currentEpoch.get(),
308
337
  fileBaselines: [...this._fileBaselines],
309
338
  operations: this._operations.get(),
310
- epochCounter: this._epochCounter,
339
+ epochCounter: this._epochCounter
311
340
  };
312
341
  }
313
342
  restoreFromState(state, tx) {
@@ -325,10 +354,14 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
325
354
  return checkpoints.find(c => c.requestId === requestId && c.undoStopId === undoStopId)?.checkpointId;
326
355
  }
327
356
  async _reconstructAllFileContents(targetEpoch, filesToReconstruct) {
328
- await Promise.all(( Array.from(filesToReconstruct).map(async (uri) => {
357
+ await Promise.all(( Array.from(filesToReconstruct).map(async uri => {
329
358
  const reconstructedState = await this._reconstructFileState(uri, targetEpoch);
330
359
  if (reconstructedState.exists) {
331
- await this._delegate.setContents(reconstructedState.uri, reconstructedState.content, reconstructedState.telemetryInfo);
360
+ await this._delegate.setContents(
361
+ reconstructedState.uri,
362
+ reconstructedState.content,
363
+ reconstructedState.telemetryInfo
364
+ );
332
365
  }
333
366
  })));
334
367
  }
@@ -349,7 +382,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
349
382
  requestId: operation.requestId,
350
383
  content: operation.initialContent,
351
384
  epoch: operation.epoch,
352
- telemetryInfo: operation.telemetryInfo,
385
+ telemetryInfo: operation.telemetryInfo
353
386
  };
354
387
  }
355
388
  if (operation.type === FileOperationType.Rename && isEqual(operation.newUri, uri)) {
@@ -362,10 +395,10 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
362
395
  return {
363
396
  uri: uri,
364
397
  epoch: operation.epoch,
365
- content: replayed.exists ? replayed.content : '',
398
+ content: replayed.exists ? replayed.content : "",
366
399
  requestId: operation.requestId,
367
400
  telemetryInfo: prev.telemetryInfo,
368
- notebookViewType: replayed.exists ? replayed.notebookViewType : undefined,
401
+ notebookViewType: replayed.exists ? replayed.notebookViewType : undefined
369
402
  };
370
403
  }
371
404
  if (currentRequestId && operation.requestId !== currentRequestId) {
@@ -381,9 +414,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
381
414
  _getFileOperationsInRange(uri, fromEpoch, toEpoch) {
382
415
  return this._operations.get().filter(op => {
383
416
  const cellUri = CellUri.parse(op.uri);
384
- return op.epoch >= fromEpoch &&
385
- op.epoch < toEpoch &&
386
- (isEqual(op.uri, uri) || (cellUri && isEqual(cellUri.notebook, uri)));
417
+ return op.epoch >= fromEpoch && op.epoch < toEpoch && (isEqual(op.uri, uri) || (cellUri && isEqual(cellUri.notebook, uri)));
387
418
  }).sort((a, b) => a.epoch - b.epoch);
388
419
  }
389
420
  async _replayOperations(baseline, operations) {
@@ -391,7 +422,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
391
422
  exists: true,
392
423
  content: baseline.content,
393
424
  uri: baseline.uri,
394
- telemetryInfo: baseline.telemetryInfo,
425
+ telemetryInfo: baseline.telemetryInfo
395
426
  };
396
427
  if (baseline.notebookViewType) {
397
428
  currentState.notebook = await this._notebookEditorModelResolverService.createUntitledNotebookTextModel(baseline.notebookViewType);
@@ -411,7 +442,8 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
411
442
  }
412
443
  async _applyOperationToState(state, operation, telemetryInfo) {
413
444
  switch (operation.type) {
414
- case FileOperationType.Create: {
445
+ case FileOperationType.Create:
446
+ {
415
447
  if (state.exists && state.notebook) {
416
448
  state.notebook.dispose();
417
449
  }
@@ -428,35 +460,42 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
428
460
  uri: operation.uri,
429
461
  telemetryInfo,
430
462
  notebookViewType: operation.notebookViewType,
431
- notebook,
463
+ notebook
432
464
  };
433
465
  }
434
- case FileOperationType.Delete:
435
- if (state.exists && state.notebook) {
436
- state.notebook.dispose();
437
- }
438
- return {
439
- exists: false,
440
- uri: operation.uri
441
- };
442
- case FileOperationType.Rename:
443
- return {
444
- ...state,
445
- uri: operation.newUri
446
- };
447
- case FileOperationType.TextEdit: {
466
+ case FileOperationType.Delete:
467
+ if (state.exists && state.notebook) {
468
+ state.notebook.dispose();
469
+ }
470
+ return {
471
+ exists: false,
472
+ uri: operation.uri
473
+ };
474
+ case FileOperationType.Rename:
475
+ return {
476
+ ...state,
477
+ uri: operation.newUri
478
+ };
479
+ case FileOperationType.TextEdit:
480
+ {
448
481
  if (!state.exists) {
449
- throw ( new Error('Cannot apply text edits to non-existent file'));
482
+ throw ( new Error("Cannot apply text edits to non-existent file"));
450
483
  }
451
484
  const nbCell = operation.cellIndex !== undefined && state.notebook?.cells.at(operation.cellIndex);
452
485
  if (nbCell) {
453
486
  const newContent = this._applyTextEditsToContent(nbCell.getValue(), operation.edits);
454
487
  state.notebook.applyEdits([{
455
- editType: CellEditType.Replace,
456
- index: operation.cellIndex,
457
- count: 1,
458
- cells: [{ cellKind: nbCell.cellKind, language: nbCell.language, mime: nbCell.language, source: newContent, outputs: nbCell.outputs }]
459
- }], true, undefined, () => undefined, undefined);
488
+ editType: CellEditType.Replace,
489
+ index: operation.cellIndex,
490
+ count: 1,
491
+ cells: [{
492
+ cellKind: nbCell.cellKind,
493
+ language: nbCell.language,
494
+ mime: nbCell.language,
495
+ source: newContent,
496
+ outputs: nbCell.outputs
497
+ }]
498
+ }], true, undefined, () => undefined, undefined);
460
499
  return state;
461
500
  }
462
501
  return {
@@ -464,17 +503,17 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
464
503
  content: this._applyTextEditsToContent(state.content, operation.edits)
465
504
  };
466
505
  }
467
- case FileOperationType.NotebookEdit:
468
- if (!state.exists) {
469
- throw ( new Error('Cannot apply notebook edits to non-existent file'));
470
- }
471
- if (!state.notebook) {
472
- throw ( new Error('Cannot apply notebook edits to non-notebook file'));
473
- }
474
- state.notebook.applyEdits(operation.cellEdits.slice(), true, undefined, () => undefined, undefined);
475
- return state;
476
- default:
477
- assertNever();
506
+ case FileOperationType.NotebookEdit:
507
+ if (!state.exists) {
508
+ throw ( new Error("Cannot apply notebook edits to non-existent file"));
509
+ }
510
+ if (!state.notebook) {
511
+ throw ( new Error("Cannot apply notebook edits to non-notebook file"));
512
+ }
513
+ state.notebook.applyEdits(operation.cellEdits.slice(), true, undefined, () => undefined, undefined);
514
+ return state;
515
+ default:
516
+ assertNever();
478
517
  }
479
518
  }
480
519
  async _applyFileSystemOperations(fromEpoch, toEpoch) {
@@ -482,8 +521,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
482
521
  const operations = this._operations.get().filter(op => {
483
522
  if (isMovingForward) {
484
523
  return op.epoch >= fromEpoch && op.epoch < toEpoch;
485
- }
486
- else {
524
+ } else {
487
525
  return op.epoch < fromEpoch && op.epoch >= toEpoch;
488
526
  }
489
527
  }).sort((a, b) => isMovingForward ? a.epoch - b.epoch : b.epoch - a.epoch);
@@ -495,49 +533,55 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
495
533
  }
496
534
  async _applyFileSystemOperation(operation, isMovingForward, urisToRestore) {
497
535
  switch (operation.type) {
498
- case FileOperationType.Create:
499
- if (isMovingForward) {
500
- await this._delegate.createFile(operation.uri, operation.initialContent);
501
- urisToRestore.add(operation.uri);
502
- }
503
- else {
504
- await this._delegate.deleteFile(operation.uri);
505
- urisToRestore.delete(operation.uri);
506
- }
507
- break;
508
- case FileOperationType.Delete:
509
- if (isMovingForward) {
510
- await this._delegate.deleteFile(operation.uri);
511
- urisToRestore.delete(operation.uri);
512
- }
513
- else {
514
- await this._delegate.createFile(operation.uri, operation.finalContent);
515
- urisToRestore.add(operation.uri);
516
- }
517
- break;
518
- case FileOperationType.Rename:
519
- if (isMovingForward) {
520
- await this._delegate.renameFile(operation.oldUri, operation.newUri);
521
- urisToRestore.delete(operation.oldUri);
522
- urisToRestore.add(operation.newUri);
523
- }
524
- else {
525
- await this._delegate.renameFile(operation.newUri, operation.oldUri);
526
- urisToRestore.delete(operation.newUri);
527
- urisToRestore.add(operation.oldUri);
528
- }
529
- break;
530
- case FileOperationType.TextEdit:
531
- case FileOperationType.NotebookEdit:
532
- urisToRestore.add(CellUri.parse(operation.uri)?.notebook ?? operation.uri);
533
- break;
534
- default:
535
- assertNever();
536
+ case FileOperationType.Create:
537
+ if (isMovingForward) {
538
+ await this._delegate.createFile(operation.uri, operation.initialContent);
539
+ urisToRestore.add(operation.uri);
540
+ } else {
541
+ await this._delegate.deleteFile(operation.uri);
542
+ urisToRestore.delete(operation.uri);
543
+ }
544
+ break;
545
+ case FileOperationType.Delete:
546
+ if (isMovingForward) {
547
+ await this._delegate.deleteFile(operation.uri);
548
+ urisToRestore.delete(operation.uri);
549
+ } else {
550
+ await this._delegate.createFile(operation.uri, operation.finalContent);
551
+ urisToRestore.add(operation.uri);
552
+ }
553
+ break;
554
+ case FileOperationType.Rename:
555
+ if (isMovingForward) {
556
+ await this._delegate.renameFile(operation.oldUri, operation.newUri);
557
+ urisToRestore.delete(operation.oldUri);
558
+ urisToRestore.add(operation.newUri);
559
+ } else {
560
+ await this._delegate.renameFile(operation.newUri, operation.oldUri);
561
+ urisToRestore.delete(operation.newUri);
562
+ urisToRestore.add(operation.oldUri);
563
+ }
564
+ break;
565
+ case FileOperationType.TextEdit:
566
+ case FileOperationType.NotebookEdit:
567
+ urisToRestore.add(CellUri.parse(operation.uri)?.notebook ?? operation.uri);
568
+ break;
569
+ default:
570
+ assertNever();
536
571
  }
537
572
  }
538
573
  _applyTextEditsToContent(content, edits) {
539
- const makeModel = (uri, contents) => this._instantiationService.createInstance(TextModel, contents, '', this._modelService.getCreationOptions('', uri, true), uri);
540
- const tempUri = ( URI.from({ scheme: 'temp', path: `/temp-${Date.now()}.txt` }));
574
+ const makeModel = (uri, contents) => this._instantiationService.createInstance(
575
+ TextModel,
576
+ contents,
577
+ "",
578
+ this._modelService.getCreationOptions("", uri, true),
579
+ uri
580
+ );
581
+ const tempUri = ( URI.from({
582
+ scheme: "temp",
583
+ path: `/temp-${Date.now()}.txt`
584
+ }));
541
585
  const model = makeModel(tempUri, content);
542
586
  try {
543
587
  model.applyEdits(( edits.map(edit => ({
@@ -550,38 +594,48 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
550
594
  text: edit.text
551
595
  }))));
552
596
  return model.getValue();
553
- }
554
- finally {
597
+ } finally {
555
598
  model.dispose();
556
599
  }
557
600
  }
558
601
  getEntryDiffBetweenStops(uri, requestId, stopId) {
559
- const epochs = derivedOpts({ equalsFn: (a, b) => a.start === b.start && a.end === b.end }, reader => {
602
+ const epochs = derivedOpts({
603
+ equalsFn: (a, b) => a.start === b.start && a.end === b.end
604
+ }, reader => {
560
605
  const checkpoints = this._checkpoints.read(reader);
561
606
  const startIndex = checkpoints.findIndex(c => c.requestId === requestId && c.undoStopId === stopId);
562
- return { start: checkpoints[startIndex], end: checkpoints[startIndex + 1] };
607
+ return {
608
+ start: checkpoints[startIndex],
609
+ end: checkpoints[startIndex + 1]
610
+ };
563
611
  });
564
612
  return this._getEntryDiffBetweenEpochs(uri, `s\0${requestId}\0${stopId}`, epochs);
565
613
  }
566
614
  _getRequestEpochBounds(startRequestId, stopRequestId) {
567
- return derivedOpts({ equalsFn: (a, b) => a.start === b.start && a.end === b.end }, reader => {
615
+ return derivedOpts({
616
+ equalsFn: (a, b) => a.start === b.start && a.end === b.end
617
+ }, reader => {
568
618
  const checkpoints = this._checkpoints.read(reader);
569
619
  const startIndex = checkpoints.findIndex(c => c.requestId === startRequestId);
570
620
  const start = startIndex === -1 ? checkpoints[0] : checkpoints[startIndex];
571
621
  let end;
572
622
  if (stopRequestId === undefined) {
573
623
  end = findFirst(checkpoints, c => c.requestId !== startRequestId, startIndex + 1);
624
+ } else {
625
+ end = checkpoints.find(c => c.requestId === stopRequestId) || findFirst(checkpoints, c => c.requestId !== startRequestId, startIndex + 1) || checkpoints[checkpoints.length - 1];
574
626
  }
575
- else {
576
- end = checkpoints.find(c => c.requestId === stopRequestId)
577
- || findFirst(checkpoints, c => c.requestId !== startRequestId, startIndex + 1)
578
- || checkpoints[checkpoints.length - 1];
579
- }
580
- return { start, end };
627
+ return {
628
+ start,
629
+ end
630
+ };
581
631
  });
582
632
  }
583
633
  getEntryDiffBetweenRequests(uri, startRequestId, stopRequestId) {
584
- return this._getEntryDiffBetweenEpochs(uri, `r\0${startRequestId}\0${stopRequestId}`, this._getRequestEpochBounds(startRequestId, stopRequestId));
634
+ return this._getEntryDiffBetweenEpochs(
635
+ uri,
636
+ `r\0${startRequestId}\0${stopRequestId}`,
637
+ this._getRequestEpochBounds(startRequestId, stopRequestId)
638
+ );
585
639
  }
586
640
  _getEntryDiffBetweenEpochs(uri, cacheKey, epochs) {
587
641
  const key = `${( uri.toString())}\0${cacheKey}`;
@@ -593,38 +647,55 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
593
647
  return obs;
594
648
  }
595
649
  _getEntryDiffBetweenEpochsInner(uri, epochs, onLastObserverRemoved) {
596
- const modelRefsPromise = derived(this, (reader) => {
597
- const { start, end } = epochs.read(reader);
650
+ const modelRefsPromise = derived(this, reader => {
651
+ const {
652
+ start,
653
+ end
654
+ } = epochs.read(reader);
598
655
  if (!start) {
599
656
  return undefined;
600
657
  }
601
658
  const store = reader.store.add(( new DisposableStore()));
602
- const originalURI = this.getContentURIAtStop(start.requestId || START_REQUEST_EPOCH, uri, STOP_ID_EPOCH_PREFIX + start.epoch);
603
- const modifiedURI = this.getContentURIAtStop(end?.requestId || start.requestId || START_REQUEST_EPOCH, uri, STOP_ID_EPOCH_PREFIX + (end?.epoch || Number.MAX_SAFE_INTEGER));
659
+ const originalURI = this.getContentURIAtStop(
660
+ start.requestId || START_REQUEST_EPOCH,
661
+ uri,
662
+ STOP_ID_EPOCH_PREFIX + start.epoch
663
+ );
664
+ const modifiedURI = this.getContentURIAtStop(
665
+ end?.requestId || start.requestId || START_REQUEST_EPOCH,
666
+ uri,
667
+ STOP_ID_EPOCH_PREFIX + (end?.epoch || Number.MAX_SAFE_INTEGER)
668
+ );
604
669
  const promise = Promise.all([
605
670
  this._textModelService.createModelReference(originalURI),
606
- this._textModelService.createModelReference(modifiedURI),
671
+ this._textModelService.createModelReference(modifiedURI)
607
672
  ]).then(refs => {
608
673
  if (store.isDisposed) {
609
674
  refs.forEach(r => r.dispose());
610
- }
611
- else {
675
+ } else {
612
676
  refs.forEach(r => store.add(r));
613
677
  }
614
678
  return {
615
679
  refs: ( refs.map(r => ({
616
680
  model: r.object.textEditorModel,
617
- onChange: observableSignalFromEvent(this, r.object.textEditorModel.onDidChangeContent.bind(r.object.textEditorModel)),
681
+ onChange: observableSignalFromEvent(
682
+ this,
683
+ r.object.textEditorModel.onDidChangeContent.bind(r.object.textEditorModel)
684
+ )
618
685
  }))),
619
- isFinal: !!end,
686
+ isFinal: !!end
687
+ };
688
+ }).catch(error => {
689
+ return {
690
+ refs: [],
691
+ isFinal: true,
692
+ error
620
693
  };
621
- }).catch((error) => {
622
- return { refs: [], isFinal: true, error };
623
694
  });
624
695
  return {
625
696
  originalURI,
626
697
  modifiedURI,
627
- promise: ( new ObservablePromise(promise)),
698
+ promise: ( new ObservablePromise(promise))
628
699
  };
629
700
  });
630
701
  const diff = derived(reader => {
@@ -632,19 +703,41 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
632
703
  if (!modelsData) {
633
704
  return;
634
705
  }
635
- const { originalURI, modifiedURI, promise } = modelsData;
706
+ const {
707
+ originalURI,
708
+ modifiedURI,
709
+ promise
710
+ } = modelsData;
636
711
  const promiseData = promise?.promiseResult.read(reader);
637
712
  if (!promiseData?.data) {
638
- return { originalURI, modifiedURI, promise: undefined };
713
+ return {
714
+ originalURI,
715
+ modifiedURI,
716
+ promise: undefined
717
+ };
639
718
  }
640
- const { refs, isFinal, error } = promiseData.data;
719
+ const {
720
+ refs,
721
+ isFinal,
722
+ error
723
+ } = promiseData.data;
641
724
  if (error) {
642
- return { originalURI, modifiedURI, promise: ( new ObservablePromise(Promise.resolve(emptySessionEntryDiff(originalURI, modifiedURI)))) };
725
+ return {
726
+ originalURI,
727
+ modifiedURI,
728
+ promise: ( new ObservablePromise(Promise.resolve(emptySessionEntryDiff(originalURI, modifiedURI))))
729
+ };
643
730
  }
644
731
  refs.forEach(m => m.onChange.read(reader));
645
- return { originalURI, modifiedURI, promise: ( new ObservablePromise(this._computeDiff(originalURI, modifiedURI, !!isFinal))) };
732
+ return {
733
+ originalURI,
734
+ modifiedURI,
735
+ promise: ( new ObservablePromise(this._computeDiff(originalURI, modifiedURI, !!isFinal)))
736
+ };
646
737
  });
647
- return derivedOpts({ onLastObserverRemoved }, reader => {
738
+ return derivedOpts({
739
+ onLastObserverRemoved
740
+ }, reader => {
648
741
  const result = diff.read(reader);
649
742
  if (!result) {
650
743
  return undefined;
@@ -656,11 +749,18 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
656
749
  if (promised?.error) {
657
750
  return emptySessionEntryDiff(result.originalURI, result.modifiedURI);
658
751
  }
659
- return { ...emptySessionEntryDiff(result.originalURI, result.modifiedURI), isBusy: true };
752
+ return {
753
+ ...emptySessionEntryDiff(result.originalURI, result.modifiedURI),
754
+ isBusy: true
755
+ };
660
756
  });
661
757
  }
662
758
  _computeDiff(originalUri, modifiedUri, isFinal) {
663
- return this._editorWorkerService.computeDiff(originalUri, modifiedUri, { ignoreTrimWhitespace: false, computeMoves: false, maxComputationTimeMs: 3000 }, 'advanced').then((diff) => {
759
+ return this._editorWorkerService.computeDiff(originalUri, modifiedUri, {
760
+ ignoreTrimWhitespace: false,
761
+ computeMoves: false,
762
+ maxComputationTimeMs: 3000
763
+ }, "advanced").then(diff => {
664
764
  const entryDiff = {
665
765
  originalURI: originalUri,
666
766
  modifiedURI: modifiedUri,
@@ -669,7 +769,7 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
669
769
  quitEarly: !diff || diff.quitEarly,
670
770
  added: 0,
671
771
  removed: 0,
672
- isBusy: false,
772
+ isBusy: false
673
773
  };
674
774
  if (diff) {
675
775
  for (const change of diff.changes) {
@@ -695,7 +795,9 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
695
795
  }
696
796
  getDiffsForFilesInRequest(requestId) {
697
797
  const boundsObservable = this._getRequestEpochBounds(requestId);
698
- const startEpochs = derivedOpts({ equalsFn: mapsStrictEqualIgnoreOrder }, reader => {
798
+ const startEpochs = derivedOpts({
799
+ equalsFn: mapsStrictEqualIgnoreOrder
800
+ }, reader => {
699
801
  const uris = ( new ResourceMap());
700
802
  for (const value of ( this._fileBaselines.values())) {
701
803
  if (value.requestId === requestId) {
@@ -735,7 +837,10 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
735
837
  const uris = startEpochs.read(reader);
736
838
  const diffs = [];
737
839
  for (const [uri, epoch] of uris) {
738
- const obs = prevDiffs.get(uri) ?? this._getEntryDiffBetweenEpochs(uri, `e\0${epoch}\0${endCheckpoint?.epoch}`, constObservable({ start: checkpoints.findLast(cp => cp.epoch <= epoch) || firstCheckpoint, end: endCheckpoint }));
840
+ const obs = prevDiffs.get(uri) ?? this._getEntryDiffBetweenEpochs(uri, `e\0${epoch}\0${endCheckpoint?.epoch}`, constObservable({
841
+ start: checkpoints.findLast(cp => cp.epoch <= epoch) || firstCheckpoint,
842
+ end: endCheckpoint
843
+ }));
739
844
  prevDiffs.set(uri, obs);
740
845
  diffs.push(obs);
741
846
  }
@@ -746,10 +851,15 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
746
851
  }));
747
852
  }
748
853
  getDiffsForFilesInSession() {
749
- const startEpochs = derivedOpts({ equalsFn: mapsStrictEqualIgnoreOrder }, reader => {
854
+ const startEpochs = derivedOpts({
855
+ equalsFn: mapsStrictEqualIgnoreOrder
856
+ }, reader => {
750
857
  const uris = ( new ResourceMap());
751
858
  for (const baseline of ( this._fileBaselines.values())) {
752
- uris.set(baseline.uri, Math.min(baseline.epoch, uris.get(baseline.uri) ?? Number.MAX_SAFE_INTEGER));
859
+ uris.set(
860
+ baseline.uri,
861
+ Math.min(baseline.epoch, uris.get(baseline.uri) ?? Number.MAX_SAFE_INTEGER)
862
+ );
753
863
  }
754
864
  for (const operation of this._operations.read(reader)) {
755
865
  if (operation.type === FileOperationType.Create) {
@@ -770,18 +880,13 @@ let ChatEditingCheckpointTimelineImpl = class ChatEditingCheckpointTimelineImpl
770
880
  added += diff.added;
771
881
  removed += diff.removed;
772
882
  }
773
- return { added, removed };
883
+ return {
884
+ added,
885
+ removed
886
+ };
774
887
  });
775
888
  }
776
889
  };
777
- ChatEditingCheckpointTimelineImpl = ( __decorate([
778
- ( __param(2, INotebookEditorModelResolverService)),
779
- ( __param(3, INotebookService)),
780
- ( __param(4, IInstantiationService)),
781
- ( __param(5, IModelService)),
782
- ( __param(6, ITextModelService)),
783
- ( __param(7, IEditorWorkerService)),
784
- ( __param(8, IConfigurationService))
785
- ], ChatEditingCheckpointTimelineImpl));
890
+ ChatEditingCheckpointTimelineImpl = ( __decorate([( __param(2, INotebookEditorModelResolverService)), ( __param(3, INotebookService)), ( __param(4, IInstantiationService)), ( __param(5, IModelService)), ( __param(6, ITextModelService)), ( __param(7, IEditorWorkerService)), ( __param(8, IConfigurationService))], ChatEditingCheckpointTimelineImpl));
786
891
 
787
892
  export { ChatEditingCheckpointTimelineImpl };