@codingame/monaco-vscode-api 6.0.2 → 7.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 (450) hide show
  1. package/README.md +93 -73
  2. package/api.js +1 -1
  3. package/debugProtocol.d.ts +10 -1
  4. package/extensions.d.ts +2 -0
  5. package/missing-services.js +21 -2
  6. package/monaco.d.ts +1 -1
  7. package/monaco.js +1 -1
  8. package/package.json +9 -9
  9. package/service-override/extensions.d.ts +1 -2
  10. package/services.js +4 -2
  11. package/vscode/src/vs/base/browser/dnd.js +1 -1
  12. package/vscode/src/vs/base/browser/dom.js +116 -5
  13. package/vscode/src/vs/base/browser/domObservable.js +16 -0
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +5 -3
  15. package/vscode/src/vs/base/browser/trustedTypes.js +1 -2
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  17. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  18. package/vscode/src/vs/base/browser/ui/button/button.js +2 -2
  19. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -4
  20. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +32 -16
  24. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.d.ts +2 -2
  25. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +2 -2
  26. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -0
  28. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  32. package/vscode/src/vs/base/browser/ui/list/listView.js +3 -5
  33. package/vscode/src/vs/base/browser/ui/list/rowCache.js +1 -8
  34. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -11
  36. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +1 -1
  37. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  39. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  40. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +8 -1
  41. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -3
  42. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +1 -1
  43. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +0 -3
  44. package/vscode/src/vs/base/common/assert.js +1 -1
  45. package/vscode/src/vs/base/common/collections.js +49 -1
  46. package/vscode/src/vs/base/common/equals.js +55 -5
  47. package/vscode/src/vs/base/common/errors.js +14 -1
  48. package/vscode/src/vs/base/common/event.js +2 -1
  49. package/vscode/src/vs/base/common/history.js +7 -4
  50. package/vscode/src/vs/base/common/iterator.js +9 -1
  51. package/vscode/src/vs/base/common/map.d.ts +41 -0
  52. package/vscode/src/vs/base/common/numbers.js +18 -1
  53. package/vscode/src/vs/base/common/observableInternal/api.js +11 -0
  54. package/vscode/src/vs/base/common/observableInternal/autorun.js +18 -1
  55. package/vscode/src/vs/base/common/observableInternal/base.d.ts +8 -1
  56. package/vscode/src/vs/base/common/observableInternal/base.js +2 -5
  57. package/vscode/src/vs/base/common/observableInternal/derived.js +13 -3
  58. package/vscode/src/vs/base/common/observableInternal/lazyObservableValue.js +109 -0
  59. package/vscode/src/vs/base/common/observableInternal/promise.js +3 -0
  60. package/vscode/src/vs/base/common/observableInternal/utils.d.ts +7 -0
  61. package/vscode/src/vs/base/common/observableInternal/utils.js +64 -12
  62. package/vscode/src/vs/base/common/prefixTree.d.ts +52 -0
  63. package/vscode/src/vs/base/common/product.d.ts +1 -0
  64. package/vscode/src/vs/base/parts/ipc/common/ipc.js +1 -1
  65. package/vscode/src/vs/editor/browser/config/charWidthReader.js +1 -1
  66. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  67. package/vscode/src/vs/editor/browser/coreCommands.js +2 -1
  68. package/vscode/src/vs/editor/browser/observableCodeEditor.js +230 -0
  69. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +1 -1
  70. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -26
  71. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +2 -2
  72. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +1 -1
  73. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -12
  74. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +1 -1
  75. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  76. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  77. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +15 -4
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +8 -8
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +1 -1
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +14 -2
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +2 -2
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +3 -3
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +2 -2
  88. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +1 -1
  89. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +2 -2
  90. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +5 -0
  91. package/vscode/src/vs/editor/common/config/editorOptions.js +83 -65
  92. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +43 -43
  93. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -2
  94. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +911 -0
  95. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +36 -799
  96. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +6 -5
  97. package/vscode/src/vs/editor/common/languageFeatureRegistry.d.ts +1 -0
  98. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +3 -0
  99. package/vscode/src/vs/editor/common/languages/autoIndent.js +23 -1
  100. package/vscode/src/vs/editor/common/languages.d.ts +20 -3
  101. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +6 -6
  102. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +19 -0
  103. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +3 -0
  104. package/vscode/src/vs/editor/common/model/textModel.js +6 -2
  105. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +5 -5
  106. package/vscode/src/vs/editor/common/model.d.ts +4 -0
  107. package/vscode/src/vs/editor/common/services/getIconClasses.js +1 -1
  108. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +2 -15
  109. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +63 -62
  110. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +11 -8
  111. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +1 -1
  112. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +2 -17
  113. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.css.js +1 -1
  114. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +18 -5
  115. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +55 -27
  116. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -4
  117. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +9 -9
  118. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +1 -1
  119. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +103 -47
  120. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -2
  121. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +18 -10
  122. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +2 -4
  123. package/vscode/src/vs/editor/contrib/folding/browser/folding.css.js +1 -1
  124. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +33 -13
  125. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -7
  126. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  127. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +2 -2
  128. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +161 -185
  129. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +321 -0
  130. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +4 -1
  131. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +6 -21
  132. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +39 -40
  133. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +55 -46
  134. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +12 -2
  135. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +15 -9
  136. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +11 -1
  137. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +141 -93
  138. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +24 -7
  139. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +36 -1
  140. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -3
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +1 -1
  142. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +25 -12
  143. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +88 -118
  144. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
  145. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +34 -33
  146. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +11 -4
  148. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +10 -19
  149. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +45 -27
  151. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +4 -4
  152. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +1 -1
  153. package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +126 -0
  154. package/vscode/src/vs/editor/contrib/inlineEdits/browser/consts.js +9 -0
  155. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.js +9 -0
  156. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsController.js +82 -0
  157. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.js +240 -0
  158. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.css.js +4 -0
  159. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.js +322 -0
  160. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +8 -4
  161. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +3 -2
  162. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  163. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  164. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +60 -0
  165. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css.js +4 -0
  166. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +1 -1
  167. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  168. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +38 -20
  169. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +3 -0
  170. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +9 -9
  171. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +10 -32
  172. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +23 -138
  173. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -0
  174. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +5 -5
  175. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +13 -12
  176. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +3 -3
  177. package/vscode/src/vs/editor/editor.api.d.ts +31 -5
  178. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +21 -0
  179. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +5 -6
  180. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +1 -1
  181. package/vscode/src/vs/platform/actions/browser/buttonbar.js +27 -6
  182. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  184. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +33 -3
  185. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -1
  186. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  187. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  188. package/vscode/src/vs/platform/actions/common/menuService.js +3 -2
  189. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +1 -1
  190. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +7 -5
  191. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +109 -13
  192. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +2 -0
  193. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +12 -6
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +2 -0
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +3 -3
  196. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +20 -10
  197. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +46 -8
  198. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -1
  199. package/vscode/src/vs/platform/extensions/common/extensions.js +12 -3
  200. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +368 -0
  201. package/vscode/src/vs/platform/files/common/watcher.js +21 -24
  202. package/vscode/src/vs/platform/list/browser/listService.js +2 -1
  203. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -2
  204. package/vscode/src/vs/platform/opener/browser/link.js +1 -1
  205. package/vscode/src/vs/platform/product/common/product.js +1 -1
  206. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1 -1
  207. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +0 -2
  208. package/vscode/src/vs/platform/request/common/request.js +18 -8
  209. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +2 -6
  210. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +8 -1
  211. package/vscode/src/vs/platform/theme/common/colorUtils.d.ts +1 -1
  212. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -5
  213. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  214. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +6 -6
  215. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +35 -35
  216. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +9 -9
  217. package/vscode/src/vs/platform/theme/common/colors/listColors.js +11 -11
  218. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +4 -4
  219. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +5 -5
  220. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +1 -1
  221. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +5 -5
  222. package/vscode/src/vs/platform/tunnel/common/tunnel.js +4 -1
  223. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +75 -19
  224. package/vscode/src/vs/platform/window/common/window.d.ts +2 -2
  225. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +32 -25
  226. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  227. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +2 -0
  228. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -11
  229. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +5 -15
  230. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +2 -5
  231. package/vscode/src/vs/workbench/api/common/extHostComments.js +9 -3
  232. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +32 -22
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -3
  234. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +109 -40
  235. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +46 -0
  236. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +84 -35
  237. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  238. package/vscode/src/vs/workbench/api/common/extHostSCM.js +50 -41
  239. package/vscode/src/vs/workbench/api/common/extHostSearch.js +2 -2
  240. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +11 -8
  241. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -6
  242. package/vscode/src/vs/workbench/api/common/extHostTesting.js +63 -70
  243. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +5 -3
  244. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +75 -16
  245. package/vscode/src/vs/workbench/api/common/extHostTypes.js +29 -4
  246. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  247. package/vscode/src/vs/workbench/browser/actions/developerActions.js +1 -1
  248. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +127 -107
  249. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +2 -2
  250. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +1 -1
  251. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +33 -21
  252. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  253. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +5 -5
  254. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
  255. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +2 -2
  256. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -2
  257. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +23 -6
  258. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +3 -1
  259. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +3 -3
  260. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +1 -1
  261. package/vscode/src/vs/workbench/browser/web.api.js +8 -0
  262. package/vscode/src/vs/workbench/browser/workbench.contribution.js +199 -194
  263. package/vscode/src/vs/workbench/common/configuration.js +1 -1
  264. package/vscode/src/vs/workbench/common/contributions.js +8 -1
  265. package/vscode/src/vs/workbench/common/editor.js +5 -1
  266. package/vscode/src/vs/workbench/common/theme.js +79 -454
  267. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +221 -239
  268. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +17 -15
  269. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +1 -0
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +4 -0
  271. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.js +27 -0
  272. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +35 -0
  273. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +51 -0
  274. package/vscode/src/vs/workbench/contrib/chat/browser/{chatConfirmationWidget.js → chatContentParts/chatConfirmationWidget.js} +9 -9
  275. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.js +131 -0
  276. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.js +37 -0
  277. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +263 -0
  278. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +37 -0
  279. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +160 -0
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +171 -0
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatWarningContentPart.js +34 -0
  282. package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatContentParts/media}/chatConfirmationWidget.css.js +1 -1
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +91 -44
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +292 -1019
  285. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +2 -2
  286. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +1 -1
  287. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +22 -7
  288. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  289. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +61 -54
  290. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +23 -16
  291. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  292. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  293. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +8 -0
  294. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +1 -1
  295. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +3 -3
  296. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +5 -4
  297. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +16 -0
  298. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.js +3 -0
  299. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +2 -2
  300. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +43 -16
  301. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +1 -1
  302. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +1 -3
  303. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +1 -1
  304. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +7 -5
  305. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +7 -7
  306. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +3 -3
  307. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +3 -3
  308. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +2 -2
  309. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  310. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +2 -1
  311. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +2 -1
  312. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +1 -1
  313. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +8 -5
  314. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +1 -1
  315. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  316. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css.js +1 -1
  317. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +1 -1
  318. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +5 -5
  319. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +14 -7
  320. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +4 -4
  321. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +8 -7
  322. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +19 -16
  323. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -12
  324. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +19 -2
  325. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +9 -4
  326. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +10 -5
  327. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +4 -4
  328. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +235 -173
  329. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  330. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +2 -1
  331. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +17 -5
  332. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +62 -44
  333. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  334. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +2 -2
  335. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +114 -107
  336. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +33 -25
  337. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +71 -101
  338. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +38 -43
  339. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -33
  340. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +3 -4
  341. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +49 -86
  342. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +60 -71
  343. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  344. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +1 -1
  345. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +116 -113
  346. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +6 -10
  347. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +2 -2
  348. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +1 -0
  349. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +2 -2
  350. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +12 -23
  351. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +0 -2
  352. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -9
  353. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +88 -61
  354. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +1 -3
  355. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +39 -3
  356. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -1
  357. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +12 -11
  358. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  359. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +1 -1
  360. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +3 -2
  361. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +40 -105
  362. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +27 -26
  363. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +14 -5
  364. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +1 -1
  365. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +43 -46
  366. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +1 -1
  367. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +4 -4
  368. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +12 -9
  369. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +19 -14
  370. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  371. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +9 -6
  372. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +5 -3
  374. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +3 -3
  375. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +1 -1
  376. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +16 -6
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +8 -8
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +3 -0
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +11 -12
  380. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +12 -13
  381. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +1 -1
  382. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +5 -3
  383. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +9 -2
  384. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +37 -36
  385. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +18 -8
  386. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +1 -1
  387. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +14 -5
  388. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +17 -22
  389. package/vscode/src/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +7 -10
  391. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +7 -27
  392. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +3 -4
  393. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  394. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +4 -0
  395. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +3 -3
  396. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -0
  397. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +0 -1
  398. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +13 -37
  399. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.d.ts +88 -0
  400. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +48 -31
  401. package/vscode/src/vs/workbench/contrib/testing/common/testId.d.ts +115 -0
  402. package/vscode/src/vs/workbench/contrib/testing/common/testResult.d.ts +226 -0
  403. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.d.ts +319 -0
  404. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +2 -3
  405. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.d.ts +10 -0
  406. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +21 -2
  407. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +7 -8
  408. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +3 -3
  409. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +10 -5
  410. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +54 -21
  411. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  412. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +1 -2
  413. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -4
  414. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +5 -3
  415. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +3 -1
  416. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +59 -41
  417. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -1
  418. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -2
  419. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -0
  420. package/vscode/src/vs/workbench/services/language/common/languageService.js +7 -0
  421. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +1 -1
  422. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +2 -2
  423. package/vscode/src/vs/workbench/services/search/common/search.js +2 -1
  424. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +2 -2
  425. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +2 -2
  426. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +69 -26
  427. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +23 -4
  428. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +5 -1
  429. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  430. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -5
  431. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +38 -19
  432. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -1
  433. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +0 -196
  434. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -10
  435. package/vscode-dts/vscode.proposed.authGetSessions.d.ts +30 -22
  436. package/vscode-dts/vscode.proposed.chatProvider.d.ts +17 -8
  437. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +0 -9
  438. package/vscode-dts/vscode.proposed.commentReveal.d.ts +32 -0
  439. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +10 -0
  440. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +1 -1
  441. package/vscode-dts/vscode.proposed.fileComments.d.ts +12 -53
  442. package/vscode-dts/vscode.proposed.fileSearchProvider.d.ts +6 -0
  443. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +6 -0
  444. package/vscode-dts/vscode.proposed.lmTools.d.ts +91 -0
  445. package/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts +1 -1
  446. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +10 -6
  447. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +38 -13
  448. package/vscode/src/vs/editor/browser/observableUtilities.js +0 -58
  449. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProviderFactory.service.js +0 -3
  450. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +0 -122
@@ -24,6 +24,8 @@ import { IEditorService } from '../../editor/common/editorService.service.js';
24
24
  import { IElevatedFileService } from '../../files/common/elevatedFileService.service.js';
25
25
  import { ResourceWorkingCopy } from './resourceWorkingCopy.js';
26
26
  import { SnapshotContext } from './fileWorkingCopy.js';
27
+ import { ProgressLocation } from '../../../../platform/progress/common/progress.js';
28
+ import { IProgressService } from '../../../../platform/progress/common/progress.service.js';
27
29
  import Severity$1 from '../../../../base/common/severity.js';
28
30
  var StoredFileWorkingCopy_1;
29
31
  const _moduleId = "vs/workbench/services/workingCopy/common/storedFileWorkingCopy";
@@ -43,7 +45,7 @@ function isStoredFileWorkingCopySaveEvent(e) {
43
45
  let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingCopy {
44
46
  static { StoredFileWorkingCopy_1 = this; }
45
47
  get model() { return this._model; }
46
- constructor(typeId, resource, name, modelFactory, externalResolver, fileService, logService, workingCopyFileService, filesConfigurationService, workingCopyBackupService, workingCopyService, notificationService, workingCopyEditorService, editorService, elevatedFileService) {
48
+ constructor(typeId, resource, name, modelFactory, externalResolver, fileService, logService, workingCopyFileService, filesConfigurationService, workingCopyBackupService, workingCopyService, notificationService, workingCopyEditorService, editorService, elevatedFileService, progressService) {
47
49
  super(resource, fileService);
48
50
  this.typeId = typeId;
49
51
  this.name = name;
@@ -57,6 +59,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
57
59
  this.workingCopyEditorService = workingCopyEditorService;
58
60
  this.editorService = editorService;
59
61
  this.elevatedFileService = elevatedFileService;
62
+ this.progressService = progressService;
60
63
  this.capabilities = WorkingCopyCapabilities.None;
61
64
  this._model = undefined;
62
65
  this._onDidChangeContent = this._register(( (new Emitter())));
@@ -377,7 +380,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
377
380
  if (typeof options.reason !== 'number') {
378
381
  options.reason = SaveReason.EXPLICIT;
379
382
  }
380
- let versionId = this.versionId;
383
+ const versionId = this.versionId;
381
384
  this.trace(`doSave(${versionId}) - enter with versionId ${versionId}`);
382
385
  if (this.ignoreSaveFromSaveParticipants) {
383
386
  this.trace(`doSave(${versionId}) - exit - refusing to save() recursively from save participant`);
@@ -400,6 +403,20 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
400
403
  this.model.pushStackElement();
401
404
  }
402
405
  const saveCancellation = ( (new CancellationTokenSource()));
406
+ return this.progressService.withProgress({
407
+ title: ( localizeWithPath(_moduleId, 0, "Saving '{0}'", this.name)),
408
+ location: ProgressLocation.Window,
409
+ cancellable: true,
410
+ delay: this.isDirty() ? 3000 : 5000
411
+ }, progress => {
412
+ return this.doSaveSequential(versionId, options, progress, saveCancellation);
413
+ }, () => {
414
+ saveCancellation.cancel();
415
+ }).finally(() => {
416
+ saveCancellation.dispose();
417
+ });
418
+ }
419
+ doSaveSequential(versionId, options, progress, saveCancellation) {
403
420
  return this.saveSequentializer.run(versionId, (async () => {
404
421
  if (this.isResolved() && !options.skipSaveParticipants && this.workingCopyFileService.hasSaveParticipants) {
405
422
  try {
@@ -412,7 +429,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
412
429
  if (!saveCancellation.token.isCancellationRequested) {
413
430
  this.ignoreSaveFromSaveParticipants = true;
414
431
  try {
415
- await this.workingCopyFileService.runSaveParticipants(this, { reason: options.reason ?? SaveReason.EXPLICIT, savedFrom: options.from }, saveCancellation.token);
432
+ await this.workingCopyFileService.runSaveParticipants(this, { reason: options.reason ?? SaveReason.EXPLICIT, savedFrom: options.from }, progress, saveCancellation.token);
416
433
  }
417
434
  finally {
418
435
  this.ignoreSaveFromSaveParticipants = false;
@@ -434,6 +451,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
434
451
  }
435
452
  versionId = this.versionId;
436
453
  this.inErrorMode = false;
454
+ progress.report({ message: ( localizeWithPath(_moduleId, 1, "Writing into file...")) });
437
455
  this.trace(`doSave(${versionId}) - before write()`);
438
456
  const lastResolvedFileStat = assertIsDefined(this.lastResolvedFileStat);
439
457
  const resolvedFileWorkingCopy = this;
@@ -511,12 +529,12 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
511
529
  if (fileOperationError.fileOperationResult === FileOperationResult.FILE_MODIFIED_SINCE) {
512
530
  message = ( localizeWithPath(
513
531
  _moduleId,
514
- 0,
532
+ 2,
515
533
  "Failed to save '{0}': The content of the file is newer. Do you want to overwrite the file with your changes?",
516
534
  this.name
517
535
  ));
518
- primaryActions.push(toAction({ id: 'fileWorkingCopy.overwrite', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, ignoreModifiedSince: true, reason: SaveReason.EXPLICIT }) }));
519
- primaryActions.push(toAction({ id: 'fileWorkingCopy.revert', label: ( localizeWithPath(_moduleId, 2, "Discard")), run: () => this.revert() }));
536
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.overwrite', label: ( localizeWithPath(_moduleId, 3, "Overwrite")), run: () => this.save({ ...options, ignoreModifiedSince: true, reason: SaveReason.EXPLICIT }) }));
537
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.revert', label: ( localizeWithPath(_moduleId, 4, "Discard")), run: () => this.revert() }));
520
538
  }
521
539
  else {
522
540
  const isWriteLocked = fileOperationError.fileOperationResult === FileOperationResult.FILE_WRITE_LOCKED;
@@ -530,22 +548,22 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
530
548
  primaryActions.push(toAction({
531
549
  id: 'fileWorkingCopy.saveElevated',
532
550
  label: triedToUnlock ?
533
- isWindows ? ( localizeWithPath(_moduleId, 3, "Overwrite as Admin...")) : ( localizeWithPath(_moduleId, 4, "Overwrite as Sudo...")) :
534
- isWindows ? ( localizeWithPath(_moduleId, 5, "Retry as Admin...")) : ( localizeWithPath(_moduleId, 6, "Retry as Sudo...")),
551
+ isWindows ? ( localizeWithPath(_moduleId, 5, "Overwrite as Admin...")) : ( localizeWithPath(_moduleId, 6, "Overwrite as Sudo...")) :
552
+ isWindows ? ( localizeWithPath(_moduleId, 7, "Retry as Admin...")) : ( localizeWithPath(_moduleId, 8, "Retry as Sudo...")),
535
553
  run: () => {
536
554
  this.save({ ...options, writeElevated: true, writeUnlock: triedToUnlock, reason: SaveReason.EXPLICIT });
537
555
  }
538
556
  }));
539
557
  }
540
558
  else if (isWriteLocked) {
541
- primaryActions.push(toAction({ id: 'fileWorkingCopy.unlock', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, writeUnlock: true, reason: SaveReason.EXPLICIT }) }));
559
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.unlock', label: ( localizeWithPath(_moduleId, 3, "Overwrite")), run: () => this.save({ ...options, writeUnlock: true, reason: SaveReason.EXPLICIT }) }));
542
560
  }
543
561
  else {
544
- primaryActions.push(toAction({ id: 'fileWorkingCopy.retry', label: ( localizeWithPath(_moduleId, 7, "Retry")), run: () => this.save({ ...options, reason: SaveReason.EXPLICIT }) }));
562
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.retry', label: ( localizeWithPath(_moduleId, 9, "Retry")), run: () => this.save({ ...options, reason: SaveReason.EXPLICIT }) }));
545
563
  }
546
564
  primaryActions.push(toAction({
547
565
  id: 'fileWorkingCopy.saveAs',
548
- label: ( localizeWithPath(_moduleId, 8, "Save As...")),
566
+ label: ( localizeWithPath(_moduleId, 10, "Save As...")),
549
567
  run: async () => {
550
568
  const editor = this.workingCopyEditorService.findEditor(this);
551
569
  if (editor) {
@@ -556,19 +574,19 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
556
574
  }
557
575
  }
558
576
  }));
559
- primaryActions.push(toAction({ id: 'fileWorkingCopy.revert', label: ( localizeWithPath(_moduleId, 2, "Discard")), run: () => this.revert() }));
577
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.revert', label: ( localizeWithPath(_moduleId, 4, "Discard")), run: () => this.revert() }));
560
578
  if (isWriteLocked) {
561
579
  if (triedToUnlock && canSaveElevated) {
562
580
  message = isWindows ?
563
581
  ( localizeWithPath(
564
582
  _moduleId,
565
- 9,
583
+ 11,
566
584
  "Failed to save '{0}': File is read-only. Select 'Overwrite as Admin' to retry as administrator.",
567
585
  this.name
568
586
  )) :
569
587
  ( localizeWithPath(
570
588
  _moduleId,
571
- 10,
589
+ 12,
572
590
  "Failed to save '{0}': File is read-only. Select 'Overwrite as Sudo' to retry as superuser.",
573
591
  this.name
574
592
  ));
@@ -576,7 +594,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
576
594
  else {
577
595
  message = ( localizeWithPath(
578
596
  _moduleId,
579
- 11,
597
+ 13,
580
598
  "Failed to save '{0}': File is read-only. Select 'Overwrite' to attempt to make it writeable.",
581
599
  this.name
582
600
  ));
@@ -586,13 +604,13 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
586
604
  message = isWindows ?
587
605
  ( localizeWithPath(
588
606
  _moduleId,
589
- 12,
607
+ 14,
590
608
  "Failed to save '{0}': Insufficient permissions. Select 'Retry as Admin' to retry as administrator.",
591
609
  this.name
592
610
  )) :
593
611
  ( localizeWithPath(
594
612
  _moduleId,
595
- 13,
613
+ 15,
596
614
  "Failed to save '{0}': Insufficient permissions. Select 'Retry as Sudo' to retry as superuser.",
597
615
  this.name
598
616
  ));
@@ -600,7 +618,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
600
618
  else {
601
619
  message = ( localizeWithPath(
602
620
  _moduleId,
603
- 14,
621
+ 16,
604
622
  "Failed to save '{0}': {1}",
605
623
  this.name,
606
624
  toErrorMessage(error, false)
@@ -690,6 +708,7 @@ StoredFileWorkingCopy = StoredFileWorkingCopy_1 = ( (__decorate([
690
708
  ( (__param(11, INotificationService))),
691
709
  ( (__param(12, IWorkingCopyEditorService))),
692
710
  ( (__param(13, IEditorService))),
693
- ( (__param(14, IElevatedFileService)))
711
+ ( (__param(14, IElevatedFileService))),
712
+ ( (__param(15, IProgressService)))
694
713
  ], StoredFileWorkingCopy)));
695
714
  export { StoredFileWorkingCopy, StoredFileWorkingCopyState, isStoredFileWorkingCopySaveEvent };
@@ -5,6 +5,7 @@ import { IDisposable } from '../../../../base/common/lifecycle.js';
5
5
  import { IFileStatWithMetadata } from '../../../../platform/files/common/files.js';
6
6
  import { CancellationToken } from '../../../../base/common/cancellation.js';
7
7
  import { IWorkingCopy } from './workingCopy.js';
8
+ import { IProgress, IProgressStep } from '../../../../platform/progress/common/progress.js';
8
9
  import { IStoredFileWorkingCopy, IStoredFileWorkingCopyModel } from './storedFileWorkingCopy.js';
9
10
  import { WorkingCopyFileEvent, IWorkingCopyFileOperationParticipant, IStoredFileWorkingCopySaveParticipant, IStoredFileWorkingCopySaveParticipantContext, ICreateFileOperation, IFileOperationUndoRedoInfo, ICreateOperation, IMoveOperation, ICopyOperation, IDeleteOperation, WorkingCopyProvider } from './workingCopyFileService.js';
10
11
 
@@ -55,7 +56,7 @@ interface IWorkingCopyFileService {
55
56
  /**
56
57
  * Runs all available save participants for stored file working copies.
57
58
  */
58
- runSaveParticipants(workingCopy: IStoredFileWorkingCopy<IStoredFileWorkingCopyModel>, context: IStoredFileWorkingCopySaveParticipantContext, token: CancellationToken): Promise<void>;
59
+ runSaveParticipants(workingCopy: IStoredFileWorkingCopy<IStoredFileWorkingCopyModel>, context: IStoredFileWorkingCopySaveParticipantContext, progress: IProgress<IProgressStep>, token: CancellationToken): Promise<void>;
59
60
  /**
60
61
  * Will create a resource with the provided optional contents, optionally overwriting any target.
61
62
  *
@@ -5,99 +5,6 @@
5
5
 
6
6
  declare module 'vscode' {
7
7
 
8
- // https://github.com/microsoft/vscode/issues/205317
9
-
10
- /**
11
- * The parameters of a query for text search.
12
- */
13
- export interface TextSearchQuery {
14
- /**
15
- * The text pattern to search for.
16
- */
17
- pattern: string;
18
-
19
- /**
20
- * Whether or not `pattern` should match multiple lines of text.
21
- */
22
- isMultiline?: boolean;
23
-
24
- /**
25
- * Whether or not `pattern` should be interpreted as a regular expression.
26
- */
27
- isRegExp?: boolean;
28
-
29
- /**
30
- * Whether or not the search should be case-sensitive.
31
- */
32
- isCaseSensitive?: boolean;
33
-
34
- /**
35
- * Whether or not to search for whole word matches only.
36
- */
37
- isWordMatch?: boolean;
38
- }
39
-
40
- /**
41
- * Options common to file and text search
42
- */
43
- export interface SearchOptions {
44
- /**
45
- * The root folder to search within.
46
- */
47
- folder: Uri;
48
-
49
- /**
50
- * Files that match an `includes` glob pattern should be included in the search.
51
- */
52
- includes: GlobString[];
53
-
54
- /**
55
- * Files that match an `excludes` glob pattern should be excluded from the search.
56
- */
57
- excludes: GlobString[];
58
-
59
- /**
60
- * Whether external files that exclude files, like .gitignore, should be respected.
61
- * See the vscode setting `"search.useIgnoreFiles"`.
62
- */
63
- useIgnoreFiles: boolean;
64
-
65
- /**
66
- * Whether symlinks should be followed while searching.
67
- * See the vscode setting `"search.followSymlinks"`.
68
- */
69
- followSymlinks: boolean;
70
-
71
- /**
72
- * Whether global files that exclude files, like .gitignore, should be respected.
73
- * See the vscode setting `"search.useGlobalIgnoreFiles"`.
74
- */
75
- useGlobalIgnoreFiles: boolean;
76
-
77
- /**
78
- * Whether files in parent directories that exclude files, like .gitignore, should be respected.
79
- * See the vscode setting `"search.useParentIgnoreFiles"`.
80
- */
81
- useParentIgnoreFiles: boolean;
82
- }
83
-
84
- /**
85
- * Options to specify the size of the result text preview.
86
- * These options don't affect the size of the match itself, just the amount of preview text.
87
- */
88
- export interface TextSearchPreviewOptions {
89
- /**
90
- * The maximum number of lines in the preview.
91
- * Only search providers that support multiline search will ever return more than one line in the match.
92
- */
93
- matchLines: number;
94
-
95
- /**
96
- * The maximum number of characters included per line.
97
- */
98
- charsPerLine: number;
99
- }
100
-
101
8
  /**
102
9
  * Options that apply to AI text search.
103
10
  */
@@ -129,109 +36,6 @@ declare module 'vscode' {
129
36
  }
130
37
 
131
38
 
132
-
133
- /**
134
- * A message regarding a completed search.
135
- */
136
- export interface TextSearchCompleteMessage {
137
- /**
138
- * Markdown text of the message.
139
- */
140
- text: string;
141
- /**
142
- * Whether the source of the message is trusted, command links are disabled for untrusted message sources.
143
- * Messaged are untrusted by default.
144
- */
145
- trusted?: boolean;
146
- /**
147
- * The message type, this affects how the message will be rendered.
148
- */
149
- type: TextSearchCompleteMessageType;
150
- }
151
-
152
- /**
153
- * Information collected when text search is complete.
154
- */
155
- export interface TextSearchComplete {
156
- /**
157
- * Whether the search hit the limit on the maximum number of search results.
158
- * `maxResults` on {@linkcode AITextSearchOptions} specifies the max number of results.
159
- * - If exactly that number of matches exist, this should be false.
160
- * - If `maxResults` matches are returned and more exist, this should be true.
161
- * - If search hits an internal limit which is less than `maxResults`, this should be true.
162
- */
163
- limitHit?: boolean;
164
-
165
- /**
166
- * Additional information regarding the state of the completed search.
167
- *
168
- * Messages with "Information" style support links in markdown syntax:
169
- * - Click to [run a command](command:workbench.action.OpenQuickPick)
170
- * - Click to [open a website](https://aka.ms)
171
- *
172
- * Commands may optionally return { triggerSearch: true } to signal to the editor that the original search should run be again.
173
- */
174
- message?: TextSearchCompleteMessage | TextSearchCompleteMessage[];
175
- }
176
-
177
- /**
178
- * A preview of the text result.
179
- */
180
- export interface TextSearchMatchPreview {
181
- /**
182
- * The matching lines of text, or a portion of the matching line that contains the match.
183
- */
184
- text: string;
185
-
186
- /**
187
- * The Range within `text` corresponding to the text of the match.
188
- * The number of matches must match the TextSearchMatch's range property.
189
- */
190
- matches: Range | Range[];
191
- }
192
-
193
- /**
194
- * A match from a text search
195
- */
196
- export interface TextSearchMatch {
197
- /**
198
- * The uri for the matching document.
199
- */
200
- uri: Uri;
201
-
202
- /**
203
- * The range of the match within the document, or multiple ranges for multiple matches.
204
- */
205
- ranges: Range | Range[];
206
-
207
- /**
208
- * A preview of the text match.
209
- */
210
- preview: TextSearchMatchPreview;
211
- }
212
-
213
- /**
214
- * A line of context surrounding a TextSearchMatch.
215
- */
216
- export interface TextSearchContext {
217
- /**
218
- * The uri for the matching document.
219
- */
220
- uri: Uri;
221
-
222
- /**
223
- * One line of text.
224
- * previewOptions.charsPerLine applies to this
225
- */
226
- text: string;
227
-
228
- /**
229
- * The line number of this line of context.
230
- */
231
- lineNumber: number;
232
- }
233
-
234
-
235
39
  /**
236
40
  * An AITextSearchProvider provides additional AI text search results in the workspace.
237
41
  */
@@ -6,23 +6,41 @@
6
6
  declare module 'vscode' {
7
7
  export class FileCoverage2 extends FileCoverage {
8
8
  /**
9
- * Test {@link TestItem} this file coverage is generated from. If undefined,
10
- * the editor will assume the coverage is the overall summary coverage for
11
- * the entire file.
12
- *
13
- * If per-test coverage is available, an extension should append multiple
14
- * `FileCoverage` instances with this property set for each test item. It
15
- * must also append a `FileCoverage` instance without this property set to
16
- * represent the overall coverage of the file.
9
+ * A list of {@link TestItem test cases} that generated coverage in this
10
+ * file. If set, then {@link TestRunProfile.loadDetailedCoverageForTest}
11
+ * should also be defined in order to retrieve detailed coverage information.
17
12
  */
18
- testItem?: TestItem;
13
+ fromTests: TestItem[];
19
14
 
20
15
  constructor(
21
16
  uri: Uri,
22
17
  statementCoverage: TestCoverageCount,
23
18
  branchCoverage?: TestCoverageCount,
24
19
  declarationCoverage?: TestCoverageCount,
25
- testItem?: TestItem,
20
+ fromTests?: TestItem[],
26
21
  );
27
22
  }
23
+
24
+ export interface TestRunProfile {
25
+ /**
26
+ * An extension-provided function that provides detailed statement and
27
+ * function-level coverage for a single test in a file. This is the per-test
28
+ * sibling of {@link TestRunProfile.loadDetailedCoverage}, called only if
29
+ * a test item is provided in {@link FileCoverage.fromTests} and only for
30
+ * files where such data is reported.
31
+ *
32
+ * The editor will call this when user asks to view coverage for a test in
33
+ * a file, and the returned coverage information is used to display exactly
34
+ * what code was run by that test.
35
+ *
36
+ * The {@link FileCoverage} object passed to this function is the same
37
+ * instance emitted on {@link TestRun.addCoverage} calls associated with this profile.
38
+ *
39
+ * @param testRun The test run that generated the coverage data.
40
+ * @param fileCoverage The file coverage object to load detailed coverage for.
41
+ * @param fromTestItem The test item to request coverage information for.
42
+ * @param token A cancellation token that indicates the operation should be cancelled.
43
+ */
44
+ loadDetailedCoverageForTest?: (testRun: TestRun, fileCoverage: FileCoverage, fromTestItem: TestItem, token: CancellationToken) => Thenable<FileCoverageDetail[]>;
45
+ }
28
46
  }
@@ -7,42 +7,50 @@ declare module 'vscode' {
7
7
 
8
8
  // https://github.com/microsoft/vscode/issues/152399
9
9
 
10
- export interface AuthenticationForceNewSessionOptions {
11
- /**
12
- * The session that you are asking to be recreated. The Auth Provider can use this to
13
- * help guide the user to log in to the correct account.
14
- */
15
- sessionToRecreate?: AuthenticationSession;
16
- }
10
+ // FOR THE CONSUMER
17
11
 
18
12
  export namespace authentication {
19
13
  /**
20
- * Get all authentication sessions matching the desired scopes that this extension has access to. In order to request access,
21
- * use {@link getSession}. To request an additional account, specify {@link AuthenticationGetSessionOptions.clearSessionPreference}
22
- * and {@link AuthenticationGetSessionOptions.createIfNone} together.
14
+ * Get all accounts that the user is logged in to for the specified provider.
15
+ * Use this paired with {@link getSession} in order to get an authentication session for a specific account.
23
16
  *
24
17
  * Currently, there are only two authentication providers that are contributed from built in extensions
25
18
  * to the editor that implement GitHub and Microsoft authentication: their providerId's are 'github' and 'microsoft'.
26
19
  *
27
- * @param providerId The id of the provider to use
28
- * @param scopes A list of scopes representing the permissions requested. These are dependent on the authentication provider
29
- * @returns A thenable that resolves to a readonly array of authentication sessions.
20
+ * Note: Getting accounts does not imply that your extension has access to that account or its authentication sessions. You can verify access to the account by calling {@link getSession}.
21
+ *
22
+ * @param providerId The id of the provider to use
23
+ * @returns A thenable that resolves to a readonly array of authentication accounts.
24
+ */
25
+ export function getAccounts(providerId: string): Thenable<readonly AuthenticationSessionAccountInformation[]>;
26
+ }
27
+
28
+ export interface AuthenticationGetSessionOptions {
29
+ /**
30
+ * The account that you would like to get a session for. This is passed down to the Authentication Provider to be used for creating the correct session.
30
31
  */
31
- export function getSessions(providerId: string, scopes: readonly string[]): Thenable<readonly AuthenticationSession[]>;
32
+ account?: AuthenticationSessionAccountInformation;
32
33
  }
33
34
 
34
- /**
35
- * The options passed in to the provider when creating a session.
36
- */
37
- export interface AuthenticationProviderCreateSessionOptions {
35
+ // FOR THE AUTH PROVIDER
36
+
37
+ export interface AuthenticationProviderSessionOptions {
38
38
  /**
39
- * The session that is being asked to be recreated. If this is passed in, the provider should
40
- * attempt to recreate the session based on the information in this session.
39
+ * The account that is being asked about. If this is passed in, the provider should
40
+ * attempt to return the sessions that are only related to this account.
41
41
  */
42
- sessionToRecreate?: AuthenticationSession;
42
+ account?: AuthenticationSessionAccountInformation;
43
43
  }
44
44
 
45
45
  export interface AuthenticationProvider {
46
+ /**
47
+ * Get a list of sessions.
48
+ * @param scopes An optional list of scopes. If provided, the sessions returned should match
49
+ * these permissions, otherwise all sessions should be returned.
50
+ * @param options Additional options for getting sessions.
51
+ * @returns A promise that resolves to an array of authentication sessions.
52
+ */
53
+ getSessions(scopes: readonly string[] | undefined, options: AuthenticationProviderSessionOptions): Thenable<AuthenticationSession[]>;
46
54
  /**
47
55
  * Prompts a user to login.
48
56
  *
@@ -57,6 +65,6 @@ declare module 'vscode' {
57
65
  * @param options Additional options for creating a session.
58
66
  * @returns A promise that resolves to an authentication session.
59
67
  */
60
- createSession(scopes: readonly string[], options: AuthenticationProviderCreateSessionOptions): Thenable<AuthenticationSession>;
68
+ createSession(scopes: readonly string[], options: AuthenticationProviderSessionOptions): Thenable<AuthenticationSession>;
61
69
  }
62
70
  }
@@ -10,20 +10,29 @@ declare module 'vscode' {
10
10
  part: string;
11
11
  }
12
12
 
13
+ export interface ChatResponseFragment2 {
14
+ index: number;
15
+ part: LanguageModelChatResponseTextPart | LanguageModelChatResponseFunctionUsePart;
16
+ }
17
+
13
18
  // @API extension ship a d.ts files for their options
14
19
 
15
20
  /**
16
21
  * Represents a large language model that accepts ChatML messages and produces a streaming response
17
22
  */
18
- export interface ChatResponseProvider {
23
+ export interface LanguageModelChatProvider {
19
24
 
20
25
  onDidReceiveLanguageModelResponse2?: Event<{ readonly extensionId: string; readonly participant?: string; readonly tokenCount?: number }>;
21
26
 
22
27
  provideLanguageModelResponse(messages: LanguageModelChatMessage[], options: { [name: string]: any }, extensionId: string, progress: Progress<ChatResponseFragment>, token: CancellationToken): Thenable<any>;
23
28
 
29
+ provideLanguageModelResponse2?(messages: LanguageModelChatMessage[], options: LanguageModelChatRequestOptions, extensionId: string, progress: Progress<ChatResponseFragment2>, token: CancellationToken): Thenable<any>;
30
+
24
31
  provideTokenCount(text: string | LanguageModelChatMessage, token: CancellationToken): Thenable<number>;
25
32
  }
26
33
 
34
+ export type ChatResponseProvider = LanguageModelChatProvider;
35
+
27
36
  export interface ChatResponseProviderMetadata {
28
37
 
29
38
  readonly vendor: string;
@@ -64,14 +73,14 @@ declare module 'vscode' {
64
73
  export namespace chat {
65
74
 
66
75
  /**
67
- * Register a LLM as chat response provider to the editor.
68
- *
69
- *
70
- * @param id
71
- * @param provider
72
- * @param metadata
73
- */
76
+ * @deprecated use `lm.registerChatResponseProvider` instead
77
+ */
74
78
  export function registerChatResponseProvider(id: string, provider: ChatResponseProvider, metadata: ChatResponseProviderMetadata): Disposable;
75
79
  }
76
80
 
81
+ export namespace lm {
82
+
83
+ export function registerChatModelProvider(id: string, provider: LanguageModelChatProvider, metadata: ChatResponseProviderMetadata): Disposable;
84
+ }
85
+
77
86
  }
@@ -19,15 +19,6 @@ declare module 'vscode' {
19
19
  * @param icon An icon to display when selecting context in the picker UI.
20
20
  */
21
21
  export function registerChatVariableResolver(id: string, name: string, userDescription: string, modelDescription: string | undefined, isSlow: boolean | undefined, resolver: ChatVariableResolver, fullName?: string, icon?: ThemeIcon): Disposable;
22
-
23
- /**
24
- * Attaches a chat context with the specified name, value, and location.
25
- *
26
- * @param name - The name of the chat context.
27
- * @param value - The value of the chat context.
28
- * @param location - The location of the chat context.
29
- */
30
- export function attachContext(name: string, value: string | Uri | Location | unknown, location: ChatLocation.Panel): void;
31
22
  }
32
23
 
33
24
  export interface ChatVariableValue {
@@ -0,0 +1,32 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+
6
+ declare module 'vscode' {
7
+
8
+ // @alexr00 https://github.com/microsoft/vscode/issues/167253
9
+
10
+ /**
11
+ * Options to reveal a comment thread in an editor.
12
+ */
13
+ export interface CommentThreadRevealOptions {
14
+ /**
15
+ * By default, the comment thread will be focused. Set `preserveFocus` to `true` to maintain the original focus.
16
+ */
17
+ preserveFocus?: boolean;
18
+
19
+ /**
20
+ * Focus the comment thread reply editor, if the thread supports replying.
21
+ */
22
+ focusReply?: boolean;
23
+ }
24
+
25
+ export interface CommentThread {
26
+ /**
27
+ * Reveal the comment thread in an editor.
28
+ */
29
+ reveal(options?: CommentThreadRevealOptions): Thenable<void>;
30
+ }
31
+
32
+ }
@@ -28,5 +28,15 @@ declare module 'vscode' {
28
28
  * Worth noting that we already have this problem for the `comments` property.
29
29
  */
30
30
  state?: CommentThreadState | { resolved?: CommentThreadState; applicability?: CommentThreadApplicability };
31
+ readonly uri: Uri;
32
+ range: Range | undefined;
33
+ comments: readonly Comment[];
34
+ collapsibleState: CommentThreadCollapsibleState;
35
+ canReply: boolean;
36
+ contextValue?: string;
37
+ label?: string;
38
+ dispose(): void;
39
+ // Part of the comment reveal proposal
40
+ reveal(options?: CommentThreadRevealOptions): Thenable<void>;
31
41
  }
32
42
  }
@@ -28,7 +28,7 @@ declare module 'vscode' {
28
28
  * An optional set of glob patterns to exclude from watching.
29
29
  * Glob patterns are always matched relative to the watched folder.
30
30
  */
31
- readonly excludes?: string[];
31
+ readonly excludes: string[];
32
32
  }
33
33
 
34
34
  export namespace workspace {