@codingame/monaco-vscode-api 2.0.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +3 -19
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  376. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  377. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  386. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  387. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  411. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  412. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  416. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  417. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  418. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  419. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  420. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  422. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  423. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  424. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  432. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  433. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  435. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  436. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  438. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  439. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  440. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  441. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  442. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  443. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  444. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  447. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  449. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  451. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  452. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  453. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  454. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  455. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  457. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  458. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  459. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  460. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  461. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  462. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  463. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  465. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  466. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  469. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  470. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  471. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  472. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  473. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  475. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  476. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  477. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  478. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  479. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  480. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  481. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  484. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  485. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  486. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  487. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  488. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  489. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  490. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  491. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  492. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  493. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  498. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  499. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  500. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  507. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  508. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  509. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  510. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  511. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -430,6 +430,9 @@ let ExtHostTaskBase = class ExtHostTaskBase {
430
430
  return this._onDidTerminateTask.event;
431
431
  }
432
432
  async $OnDidEndTask(execution) {
433
+ if (!( this._taskExecutionPromises.has(execution.id))) {
434
+ return;
435
+ }
433
436
  const _execution = await this.getTaskExecution(execution);
434
437
  this._taskExecutionPromises.delete(execution.id);
435
438
  this._taskExecutions.delete(execution.id);
@@ -527,29 +530,22 @@ let ExtHostTaskBase = class ExtHostTaskBase {
527
530
  if (result) {
528
531
  return result;
529
532
  }
530
- const createdResult = ( new Promise((resolve, reject) => {
531
- function resolvePromiseWithCreatedTask(that, execution, taskToCreate) {
532
- if (!taskToCreate) {
533
- reject('Unexpected: Task does not exist.');
534
- }
535
- else {
536
- resolve(( new TaskExecutionImpl(that, execution.id, taskToCreate)));
533
+ let executionPromise;
534
+ if (!task) {
535
+ executionPromise = TaskDTO.to(execution.task, this._workspaceProvider, this._providedCustomExecutions2).then(t => {
536
+ if (!t) {
537
+ throw new ErrorNoTelemetry('Unexpected: Task does not exist.');
537
538
  }
538
- }
539
- if (task) {
540
- resolvePromiseWithCreatedTask(this, execution, task);
541
- }
542
- else {
543
- TaskDTO.to(execution.task, this._workspaceProvider, this._providedCustomExecutions2)
544
- .then(task => resolvePromiseWithCreatedTask(this, execution, task));
545
- }
546
- }));
547
- this._taskExecutionPromises.set(execution.id, createdResult);
548
- return createdResult.then(executionCreatedResult => {
549
- this._taskExecutions.set(execution.id, executionCreatedResult);
550
- return executionCreatedResult;
551
- }, rejected => {
552
- return Promise.reject(rejected);
539
+ return ( new TaskExecutionImpl(this, execution.id, t));
540
+ });
541
+ }
542
+ else {
543
+ executionPromise = Promise.resolve(( new TaskExecutionImpl(this, execution.id, task)));
544
+ }
545
+ this._taskExecutionPromises.set(execution.id, executionPromise);
546
+ return executionPromise.then(taskExecution => {
547
+ this._taskExecutions.set(execution.id, taskExecution);
548
+ return taskExecution;
553
549
  });
554
550
  }
555
551
  checkDeprecation(task, handler) {
@@ -32,6 +32,7 @@ let ExtHostTelemetry = class ExtHostTelemetry extends Disposable {
32
32
  "Extension Telemetry{0}",
33
33
  this._inLoggingOnlyMode ? ' (Not Sent)' : ''
34
34
  )), hidden: true });
35
+ this._register(this._outputLogger);
35
36
  this._register(loggerService.onDidChangeLogLevel(arg => {
36
37
  if (isLogLevel(arg)) {
37
38
  this.updateLoggerVisibility();
@@ -99,7 +99,7 @@ class ExtHostTerminal {
99
99
  isTransient: options.isTransient ?? undefined,
100
100
  });
101
101
  }
102
- async createExtensionTerminal(location, parentTerminal, iconPath, color) {
102
+ async createExtensionTerminal(location, internalOptions, parentTerminal, iconPath, color) {
103
103
  if (typeof this._id !== 'string') {
104
104
  throw new Error('Terminal has already been created');
105
105
  }
@@ -108,7 +108,7 @@ class ExtHostTerminal {
108
108
  isExtensionCustomPtyTerminal: true,
109
109
  icon: iconPath,
110
110
  color: ThemeColor.isThemeColor(color) ? color.id : undefined,
111
- location: this._serializeParentTerminal(location, parentTerminal),
111
+ location: internalOptions?.location || this._serializeParentTerminal(location, parentTerminal),
112
112
  isTransient: true
113
113
  });
114
114
  if (typeof this._id === 'string') {
@@ -327,7 +327,7 @@ let BaseExtHostTerminalService = class BaseExtHostTerminalService extends Dispos
327
327
  createExtensionTerminal(options, internalOptions) {
328
328
  const terminal = ( new ExtHostTerminal(this._proxy, generateUuid(), options, options.name));
329
329
  const p = ( new ExtHostPseudoterminal(options.pty));
330
- terminal.createExtensionTerminal(options.location, this._serializeParentTerminal(options, internalOptions).resolvedExtHostIdentifier, asTerminalIcon(options.iconPath), asTerminalColor(options.color)).then(id => {
330
+ terminal.createExtensionTerminal(options.location, internalOptions, this._serializeParentTerminal(options, internalOptions).resolvedExtHostIdentifier, asTerminalIcon(options.iconPath), asTerminalColor(options.color)).then(id => {
331
331
  const disposable = this._setupExtHostProcessListeners(id, p);
332
332
  this._terminalProcessDisposables[id] = disposable;
333
333
  });
@@ -9,6 +9,7 @@ import { Disposable, toDisposable, DisposableStore } from '../../../base/common/
9
9
  import { deepFreeze } from '../../../base/common/objects.js';
10
10
  import { isDefined } from '../../../base/common/types.js';
11
11
  import { generateUuid } from '../../../base/common/uuid.js';
12
+ import { ILogService } from '../../../platform/log/common/log.js';
12
13
  import { MainContext } from './extHost.protocol.js';
13
14
  import { IExtHostRpcService } from './extHostRpcService.js';
14
15
  import { toItemFromContext, ExtHostTestItemCollection, TestItemImpl, TestItemRootImpl } from './extHostTestItem.js';
@@ -19,17 +20,17 @@ import { InvalidTestItemError } from '../../contrib/testing/common/testItemColle
19
20
  import { TestsDiffOp, isStartControllerTests, KEEP_N_LAST_COVERAGE_REPORTS, AbstractIncrementalTestCollection } from '../../contrib/testing/common/testTypes.js';
20
21
  import { checkProposedApiEnabled } from '../../services/extensions/common/extensions.js';
21
22
  let ExtHostTesting = class ExtHostTesting extends Disposable {
22
- constructor(rpc, commands, editors) {
23
+ constructor(rpc, logService, commands, editors) {
23
24
  super();
24
25
  this.editors = editors;
25
26
  this.resultsChangedEmitter = this._register(( new Emitter()));
26
27
  this.controllers = ( new Map());
27
- this.activeProfilesChangedEmitter = this._register(( new Emitter()));
28
+ this.defaultProfilesChangedEmitter = this._register(( new Emitter()));
28
29
  this.onResultsChanged = this.resultsChangedEmitter.event;
29
30
  this.results = [];
30
31
  this.proxy = ( rpc.getProxy(MainContext.MainThreadTesting));
31
32
  this.observer = ( new TestObservers(this.proxy));
32
- this.runTracker = ( new TestRunCoordinator(this.proxy));
33
+ this.runTracker = ( new TestRunCoordinator(this.proxy, logService));
33
34
  commands.registerArgumentProcessor({
34
35
  processArgument: arg => {
35
36
  switch (arg?.$mid) {
@@ -103,9 +104,8 @@ let ExtHostTesting = class ExtHostTesting extends Disposable {
103
104
  return ( new TestRunProfileImpl(
104
105
  this.proxy,
105
106
  profiles,
106
- extension,
107
107
  activeProfiles,
108
- this.activeProfilesChangedEmitter.event,
108
+ this.defaultProfilesChangedEmitter.event,
109
109
  controllerId,
110
110
  profileId,
111
111
  label,
@@ -191,7 +191,7 @@ let ExtHostTesting = class ExtHostTesting extends Disposable {
191
191
  $configureRunProfile(controllerId, profileId) {
192
192
  this.controllers.get(controllerId)?.profiles.get(profileId)?.configureHandler?.();
193
193
  }
194
- $setActiveRunProfiles(profiles) {
194
+ $setDefaultRunProfiles(profiles) {
195
195
  const evt = ( new Map());
196
196
  for (const [controllerId, profileIds] of Object.entries(profiles)) {
197
197
  const ctrl = this.controllers.get(controllerId);
@@ -213,7 +213,7 @@ let ExtHostTesting = class ExtHostTesting extends Disposable {
213
213
  evt.set(controllerId, changes);
214
214
  }
215
215
  }
216
- this.activeProfilesChangedEmitter.fire(evt);
216
+ this.defaultProfilesChangedEmitter.fire(evt);
217
217
  }
218
218
  async $refreshTests(controllerId, token) {
219
219
  await this.controllers.get(controllerId)?.controller.refreshHandler?.(token);
@@ -234,7 +234,7 @@ let ExtHostTesting = class ExtHostTesting extends Disposable {
234
234
  }
235
235
  }
236
236
  $acceptDiff(diff) {
237
- this.observer.applyDiff(( diff.map(TestsDiffOp.deserialize)));
237
+ this.observer.applyDiff(( diff.map(d => TestsDiffOp.deserialize({ asCanonicalUri: u => u }, d))));
238
238
  }
239
239
  async $runControllerTests(reqs, token) {
240
240
  return Promise.all(( reqs.map(req => this.runControllerTestRequest(req, false, token))));
@@ -298,7 +298,8 @@ let ExtHostTesting = class ExtHostTesting extends Disposable {
298
298
  }
299
299
  };
300
300
  ExtHostTesting = ( __decorate([
301
- ( __param(0, IExtHostRpcService))
301
+ ( __param(0, IExtHostRpcService)),
302
+ ( __param(1, ILogService))
302
303
  ], ExtHostTesting));
303
304
  const RUN_CANCEL_DEADLINE = 10000;
304
305
  class TestRunTracker extends Disposable {
@@ -308,11 +309,12 @@ class TestRunTracker extends Disposable {
308
309
  get id() {
309
310
  return this.dto.id;
310
311
  }
311
- constructor(dto, proxy, extension, parentToken) {
312
+ constructor(dto, proxy, extension, logService, parentToken) {
312
313
  super();
313
314
  this.dto = dto;
314
315
  this.proxy = proxy;
315
316
  this.extension = extension;
317
+ this.logService = logService;
316
318
  this.state = 0 ;
317
319
  this.tasks = ( new Map());
318
320
  this.sharedTestIds = ( new Set());
@@ -342,7 +344,7 @@ class TestRunTracker extends Disposable {
342
344
  let coverage;
343
345
  const guardTestMutation = (fn) => (test, ...args) => {
344
346
  if (ended) {
345
- console.warn(`Setting the state of test "${test.id}" is a no-op after the run ends.`);
347
+ this.logService.warn(`Setting the state of test "${test.id}" is a no-op after the run ends.`);
346
348
  return;
347
349
  }
348
350
  if (!this.dto.isIncluded(test)) {
@@ -469,8 +471,9 @@ class TestRunCoordinator {
469
471
  get trackers() {
470
472
  return ( this.tracked.values());
471
473
  }
472
- constructor(proxy) {
474
+ constructor(proxy, logService) {
473
475
  this.proxy = proxy;
476
+ this.logService = logService;
474
477
  this.tracked = ( new Map());
475
478
  this.coverageReports = [];
476
479
  }
@@ -519,7 +522,7 @@ class TestRunCoordinator {
519
522
  return tracker.createRun(name);
520
523
  }
521
524
  getTracker(req, dto, extension, token) {
522
- const tracker = ( new TestRunTracker(dto, this.proxy, extension, token));
525
+ const tracker = ( new TestRunTracker(dto, this.proxy, extension, this.logService, token));
523
526
  this.tracked.set(req, tracker);
524
527
  let coverageReports;
525
528
  const coverageListener = tracker.onDidCoverage(({ runId, taskId, coverage }) => {
@@ -717,16 +720,24 @@ class TestObservers {
717
720
  this.current?.tests.apply(diff);
718
721
  }
719
722
  createObserverData() {
720
- const tests = ( new MirroredTestCollection());
723
+ const tests = ( new MirroredTestCollection({ asCanonicalUri: u => u }));
721
724
  this.proxy.$subscribeToDiffs();
722
725
  return { observers: 0, tests, };
723
726
  }
724
727
  }
728
+ const updateProfile = (impl, proxy, initial, update) => {
729
+ if (initial) {
730
+ Object.assign(initial, update);
731
+ }
732
+ else {
733
+ proxy.$updateTestRunConfig(impl.controllerId, impl.profileId, update);
734
+ }
735
+ };
725
736
  class TestRunProfileImpl {
726
737
  #proxy;
727
- #extension;
728
738
  #activeProfiles;
729
- #onDidChangeActiveProfiles;
739
+ #onDidChangeDefaultProfiles;
740
+ #initialPublish;
730
741
  #profiles;
731
742
  get label() {
732
743
  return this._label;
@@ -734,7 +745,7 @@ class TestRunProfileImpl {
734
745
  set label(label) {
735
746
  if (label !== this._label) {
736
747
  this._label = label;
737
- this.#proxy.$updateTestRunConfig(this.controllerId, this.profileId, { label });
748
+ updateProfile(this, this.#proxy, this.#initialPublish, { label });
738
749
  }
739
750
  }
740
751
  get supportsContinuousRun() {
@@ -743,16 +754,21 @@ class TestRunProfileImpl {
743
754
  set supportsContinuousRun(supports) {
744
755
  if (supports !== this._supportsContinuousRun) {
745
756
  this._supportsContinuousRun = supports;
746
- this.#proxy.$updateTestRunConfig(this.controllerId, this.profileId, { supportsContinuousRun: supports });
757
+ updateProfile(this, this.#proxy, this.#initialPublish, { supportsContinuousRun: supports });
747
758
  }
748
759
  }
749
760
  get isDefault() {
750
- return this._isDefault;
761
+ return ( this.#activeProfiles.has(this.profileId));
751
762
  }
752
763
  set isDefault(isDefault) {
753
- if (isDefault !== this._isDefault) {
754
- this._isDefault = isDefault;
755
- this.#proxy.$updateTestRunConfig(this.controllerId, this.profileId, { isDefault });
764
+ if (isDefault !== this.isDefault) {
765
+ if (isDefault) {
766
+ this.#activeProfiles.add(this.profileId);
767
+ }
768
+ else {
769
+ this.#activeProfiles.delete(this.profileId);
770
+ }
771
+ updateProfile(this, this.#proxy, this.#initialPublish, { isDefault });
756
772
  }
757
773
  }
758
774
  get tag() {
@@ -761,7 +777,7 @@ class TestRunProfileImpl {
761
777
  set tag(tag) {
762
778
  if (tag?.id !== this._tag?.id) {
763
779
  this._tag = tag;
764
- this.#proxy.$updateTestRunConfig(this.controllerId, this.profileId, {
780
+ updateProfile(this, this.#proxy, this.#initialPublish, {
765
781
  tag: tag ? TestTag.namespace(this.controllerId, tag.id) : null,
766
782
  });
767
783
  }
@@ -772,39 +788,35 @@ class TestRunProfileImpl {
772
788
  set configureHandler(handler) {
773
789
  if (handler !== this._configureHandler) {
774
790
  this._configureHandler = handler;
775
- this.#proxy.$updateTestRunConfig(this.controllerId, this.profileId, { hasConfigurationHandler: !!handler });
791
+ updateProfile(this, this.#proxy, this.#initialPublish, { hasConfigurationHandler: !!handler });
776
792
  }
777
793
  }
778
- get isSelected() {
779
- checkProposedApiEnabled(this.#extension, 'testingActiveProfile');
780
- return ( this.#activeProfiles.has(this.profileId));
781
- }
782
- get onDidChangeSelected() {
783
- checkProposedApiEnabled(this.#extension, 'testingActiveProfile');
784
- return Event.chain(this.#onDidChangeActiveProfiles, $ => ( $
794
+ get onDidChangeDefault() {
795
+ return Event.chain(this.#onDidChangeDefaultProfiles, $ => ( $
785
796
  .map(ev => ev.get(this.controllerId)?.get(this.profileId)))
786
797
  .filter(isDefined));
787
798
  }
788
- constructor(proxy, profiles, extension, activeProfiles, onDidChangeActiveProfiles, controllerId, profileId, _label, kind, runHandler, _isDefault = false, _tag = undefined, _supportsContinuousRun = false) {
799
+ constructor(proxy, profiles, activeProfiles, onDidChangeActiveProfiles, controllerId, profileId, _label, kind, runHandler, _isDefault = false, _tag = undefined, _supportsContinuousRun = false) {
789
800
  this.controllerId = controllerId;
790
801
  this.profileId = profileId;
791
802
  this._label = _label;
792
803
  this.kind = kind;
793
804
  this.runHandler = runHandler;
794
- this._isDefault = _isDefault;
795
805
  this._tag = _tag;
796
806
  this._supportsContinuousRun = _supportsContinuousRun;
797
807
  this.#proxy = proxy;
798
808
  this.#profiles = profiles;
799
- this.#extension = extension;
800
809
  this.#activeProfiles = activeProfiles;
801
- this.#onDidChangeActiveProfiles = onDidChangeActiveProfiles;
810
+ this.#onDidChangeDefaultProfiles = onDidChangeActiveProfiles;
802
811
  profiles.set(profileId, this);
803
812
  const groupBitset = profileGroupToBitset[kind];
804
813
  if (typeof groupBitset !== 'number') {
805
814
  throw new Error(`Unknown TestRunProfile.group ${kind}`);
806
815
  }
807
- this.#proxy.$publishTestRunProfile({
816
+ if (_isDefault) {
817
+ activeProfiles.add(profileId);
818
+ }
819
+ this.#initialPublish = {
808
820
  profileId: profileId,
809
821
  controllerId,
810
822
  tag: _tag ? TestTag.namespace(this.controllerId, _tag.id) : null,
@@ -813,6 +825,12 @@ class TestRunProfileImpl {
813
825
  isDefault: _isDefault,
814
826
  hasConfigurationHandler: false,
815
827
  supportsContinuousRun: _supportsContinuousRun,
828
+ };
829
+ queueMicrotask(() => {
830
+ if (this.#initialPublish) {
831
+ this.#proxy.$publishTestRunProfile(this.#initialPublish);
832
+ this.#initialPublish = undefined;
833
+ }
816
834
  });
817
835
  }
818
836
  dispose() {
@@ -820,6 +838,7 @@ class TestRunProfileImpl {
820
838
  this.#profiles = undefined;
821
839
  this.#proxy.$removeTestProfile(this.controllerId, this.profileId);
822
840
  }
841
+ this.#initialPublish = undefined;
823
842
  }
824
843
  }
825
844
  const profileGroupToBitset = {
@@ -129,6 +129,7 @@ class ExtHostTextEditorOptions {
129
129
  _accept(source) {
130
130
  this._tabSize = source.tabSize;
131
131
  this._indentSize = source.indentSize;
132
+ this._originalIndentSize = source.originalIndentSize;
132
133
  this._insertSpaces = source.insertSpaces;
133
134
  this._cursorStyle = source.cursorStyle;
134
135
  this._lineNumbers = TextEditorLineNumbersStyle.to(source.lineNumbers);
@@ -188,10 +189,11 @@ class ExtHostTextEditorOptions {
188
189
  return;
189
190
  }
190
191
  if (typeof indentSize === 'number') {
191
- if (this._indentSize === indentSize) {
192
+ if (this._originalIndentSize === indentSize) {
192
193
  return;
193
194
  }
194
195
  this._indentSize = indentSize;
196
+ this._originalIndentSize = indentSize;
195
197
  }
196
198
  this._warnOnError('setIndentSize', this._proxy.$trySetOptions(this._id, {
197
199
  indentSize: indentSize
@@ -254,8 +256,9 @@ class ExtHostTextEditorOptions {
254
256
  hasUpdate = true;
255
257
  bulkConfigurationUpdate.indentSize = indentSize;
256
258
  }
257
- else if (typeof indentSize === 'number' && this._indentSize !== indentSize) {
259
+ else if (typeof indentSize === 'number' && this._originalIndentSize !== indentSize) {
258
260
  this._indentSize = indentSize;
261
+ this._originalIndentSize = indentSize;
259
262
  hasUpdate = true;
260
263
  bulkConfigurationUpdate.indentSize = indentSize;
261
264
  }
@@ -1,5 +1,4 @@
1
1
  import { coalesce } from '../../../base/common/arrays.js';
2
- import { onUnexpectedExternalError } from '../../../base/common/errors.js';
3
2
  import { Emitter } from '../../../base/common/event.js';
4
3
  import { MainContext } from './extHost.protocol.js';
5
4
  import { TextEditorDecorationType } from './extHostTextEditor.js';
@@ -8,12 +7,12 @@ import { TextEditorSelectionChangeKind } from './extHostTypes.js';
8
7
  class ExtHostEditors {
9
8
  constructor(mainContext, _extHostDocumentsAndEditors) {
10
9
  this._extHostDocumentsAndEditors = _extHostDocumentsAndEditors;
11
- this._onDidChangeTextEditorSelection = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
12
- this._onDidChangeTextEditorOptions = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
13
- this._onDidChangeTextEditorVisibleRanges = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
14
- this._onDidChangeTextEditorViewColumn = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
15
- this._onDidChangeActiveTextEditor = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
16
- this._onDidChangeVisibleTextEditors = ( new Emitter({ onListenerError: onUnexpectedExternalError }));
10
+ this._onDidChangeTextEditorSelection = ( new Emitter());
11
+ this._onDidChangeTextEditorOptions = ( new Emitter());
12
+ this._onDidChangeTextEditorVisibleRanges = ( new Emitter());
13
+ this._onDidChangeTextEditorViewColumn = ( new Emitter());
14
+ this._onDidChangeActiveTextEditor = ( new Emitter());
15
+ this._onDidChangeVisibleTextEditors = ( new Emitter());
17
16
  this.onDidChangeTextEditorSelection = this._onDidChangeTextEditorSelection.event;
18
17
  this.onDidChangeTextEditorOptions = this._onDidChangeTextEditorOptions.event;
19
18
  this.onDidChangeTextEditorVisibleRanges = this._onDidChangeTextEditorVisibleRanges.event;
@@ -557,13 +557,16 @@ class ExtHostTreeView extends Disposable {
557
557
  if (cts.token.isCancellationRequested) {
558
558
  return undefined;
559
559
  }
560
- const items = await Promise.all(( coalesce(elements || []).map(async (element) => {
561
- const item = await this.dataProvider.getTreeItem(element);
562
- return item && !cts.token.isCancellationRequested ? this.createAndRegisterTreeNode(element, item, parentNode) : null;
560
+ const coalescedElements = coalesce(elements || []);
561
+ const treeItems = await Promise.all(( coalesce(coalescedElements).map(element => {
562
+ return this.dataProvider.getTreeItem(element);
563
563
  })));
564
564
  if (cts.token.isCancellationRequested) {
565
565
  return undefined;
566
566
  }
567
+ const items = ( treeItems.map(
568
+ (item, index) => item ? this.createAndRegisterTreeNode(coalescedElements[index], item, parentNode) : null
569
+ ));
567
570
  return coalesce(items);
568
571
  }
569
572
  finally {
@@ -115,7 +115,8 @@ let ExtHostTunnelService = class ExtHostTunnelService extends Disposable {
115
115
  };
116
116
  const tunnelFeatures = information.tunnelFeatures ? {
117
117
  elevation: !!information.tunnelFeatures?.elevation,
118
- privacyOptions: information.tunnelFeatures?.privacyOptions
118
+ privacyOptions: information.tunnelFeatures?.privacyOptions,
119
+ protocol: information.tunnelFeatures.protocol === undefined ? true : information.tunnelFeatures.protocol,
119
120
  } : undefined;
120
121
  this._proxy.$setTunnelProvider(tunnelFeatures);
121
122
  return Promise.resolve(toDisposable(() => {
@@ -161,7 +162,8 @@ let ExtHostTunnelService = class ExtHostTunnelService extends Disposable {
161
162
  const tunnelFeatures = provider.tunnelFeatures ? {
162
163
  elevation: !!provider.tunnelFeatures?.elevation,
163
164
  public: !!provider.tunnelFeatures?.public,
164
- privacyOptions
165
+ privacyOptions,
166
+ protocol: true
165
167
  } : undefined;
166
168
  this._proxy.$setTunnelProvider(tunnelFeatures);
167
169
  }
@@ -9,7 +9,7 @@ import { revive, parse } from '../../../base/common/marshalling.js';
9
9
  import { Mimes } from '../../../base/common/mime.js';
10
10
  import { cloneAndChange } from '../../../base/common/objects.js';
11
11
  import { isString, isEmptyObject, isUndefinedOrNull, isNumber } from '../../../base/common/types.js';
12
- import { URI } from '../../../base/common/uri.js';
12
+ import { URI, isUriComponents } from '../../../base/common/uri.js';
13
13
  import { Range as Range$2 } from '../../../editor/common/core/range.js';
14
14
  import { Command, FoldingRangeKind as FoldingRangeKind$2 } from '../../../editor/common/languages.js';
15
15
  import { MarkerSeverity } from '../../../platform/markers/common/markers.js';
@@ -19,8 +19,8 @@ import { CellKind, NotebookCellExecutionState as NotebookCellExecutionState$1 }
19
19
  import { TestId } from '../../contrib/testing/common/testId.js';
20
20
  import { namespaceTestTag, denamespaceTestTag } from '../../contrib/testing/common/testTypes.js';
21
21
  import { SIDE_GROUP, ACTIVE_GROUP } from '../../services/editor/common/editorService.js';
22
- import { Position as Position$1, Selection as Selection$1, Range as Range$1, Diagnostic as Diagnostic$1, ViewColumn as ViewColumn$1, MarkdownString as MarkdownString$1, TextEdit as TextEdit$1, WorkspaceEdit as WorkspaceEdit$1, SnippetTextEdit, SnippetString, SymbolKind as SymbolKind$1, SymbolInformation, CallHierarchyItem as CallHierarchyItem$1, CallHierarchyIncomingCall as CallHierarchyIncomingCall$1, CallHierarchyOutgoingCall as CallHierarchyOutgoingCall$1, Location, InlineValueText, InlineValueVariableLookup, InlineValueEvaluatableExpression, InlineValueContext as InlineValueContext$1, CompletionItem as CompletionItem$1, InlayHint as InlayHint$1, DocumentLink as DocumentLink$1, ColorPresentation as ColorPresentation$1, Color as Color$1, NotebookRange as NotebookRange$1, NotebookCellData as NotebookCellData$1, NotebookCellOutputItem as NotebookCellOutputItem$1, NotebookCellOutput as NotebookCellOutput$1, TestTag as TestTag$1, CodeActionTriggerKind as CodeActionTriggerKind$1, TypeHierarchyItem as TypeHierarchyItem$1, ChatMessage as ChatMessage$1, InteractiveEditorResponseFeedbackKind as InteractiveEditorResponseFeedbackKind$1, DiagnosticRelatedInformation as DiagnosticRelatedInformation$1, DiagnosticSeverity as DiagnosticSeverity$1, SymbolTag as SymbolTag$1, DocumentSymbol as DocumentSymbol$1, Hover as Hover$1, EvaluatableExpression as EvaluatableExpression$1, DocumentHighlight as DocumentHighlight$1, MultiDocumentHighlight as MultiDocumentHighlight$1, CompletionItemTag as CompletionItemTag$1, CompletionItemKind as CompletionItemKind$1, InlayHintLabelPart as InlayHintLabelPart$1, SelectionRange as SelectionRange$1, EndOfLine as EndOfLine$1, FoldingRangeKind as FoldingRangeKind$1, RelativePattern, NotebookData as NotebookData$1, NotebookCellStatusBarAlignment, DataTransfer as DataTransfer$1, ChatMessageRole as ChatMessageRole$1, ChatVariableLevel as ChatVariableLevel$1, DiagnosticTag as DiagnosticTag$1, DecorationRangeBehavior as DecorationRangeBehavior$1, NotebookCellKind as NotebookCellKind$1, CompletionTriggerKind as CompletionTriggerKind$1, InternalFileDataTransferItem, DataTransferFile, InternalDataTransferItem, StandardTokenType, TextDocumentSaveReason as TextDocumentSaveReason$1, TextEditorLineNumbersStyle as TextEditorLineNumbersStyle$1, ProgressLocation as ProgressLocation$1, NotebookCellExecutionState as NotebookCellExecutionState$2, TestMessage as TestMessage$1, NotebookRendererScript as NotebookRendererScript$1 } from './extHostTypes.js';
23
22
  import { checkProposedApiEnabled } from '../../services/extensions/common/extensions.js';
23
+ import { Position as Position$1, Selection as Selection$1, Range as Range$1, Diagnostic as Diagnostic$1, ViewColumn as ViewColumn$1, MarkdownString as MarkdownString$1, TextEdit as TextEdit$1, WorkspaceEdit as WorkspaceEdit$1, SnippetTextEdit, SnippetString, SymbolKind as SymbolKind$1, SymbolInformation, CallHierarchyItem as CallHierarchyItem$1, CallHierarchyIncomingCall as CallHierarchyIncomingCall$1, CallHierarchyOutgoingCall as CallHierarchyOutgoingCall$1, Location as Location$1, InlineValueText, InlineValueVariableLookup, InlineValueEvaluatableExpression, InlineValueContext as InlineValueContext$1, CompletionItem as CompletionItem$1, InlayHint as InlayHint$1, DocumentLink as DocumentLink$1, ColorPresentation as ColorPresentation$1, Color as Color$1, NotebookRange as NotebookRange$1, NotebookCellData as NotebookCellData$1, NotebookCellOutputItem as NotebookCellOutputItem$1, NotebookCellOutput as NotebookCellOutput$1, TestTag as TestTag$1, CodeActionTriggerKind as CodeActionTriggerKind$1, TypeHierarchyItem as TypeHierarchyItem$1, ChatMessage as ChatMessage$1, InteractiveEditorResponseFeedbackKind as InteractiveEditorResponseFeedbackKind$1, DiagnosticRelatedInformation as DiagnosticRelatedInformation$1, DiagnosticSeverity as DiagnosticSeverity$1, SymbolTag as SymbolTag$1, DocumentSymbol as DocumentSymbol$1, Hover as Hover$1, EvaluatableExpression as EvaluatableExpression$1, DocumentHighlight as DocumentHighlight$1, MultiDocumentHighlight as MultiDocumentHighlight$1, CompletionItemTag as CompletionItemTag$1, CompletionItemKind as CompletionItemKind$1, InlayHintLabelPart as InlayHintLabelPart$1, SelectionRange as SelectionRange$1, EndOfLine as EndOfLine$1, FoldingRangeKind as FoldingRangeKind$1, RelativePattern, NotebookData as NotebookData$1, NotebookCellStatusBarAlignment, DataTransfer as DataTransfer$1, ChatMessageRole as ChatMessageRole$1, ChatVariableLevel as ChatVariableLevel$1, DiagnosticTag as DiagnosticTag$1, DecorationRangeBehavior as DecorationRangeBehavior$1, NotebookCellKind as NotebookCellKind$1, CompletionTriggerKind as CompletionTriggerKind$1, InternalFileDataTransferItem, DataTransferFile, InternalDataTransferItem, StandardTokenType, TextDocumentSaveReason as TextDocumentSaveReason$1, TextEditorLineNumbersStyle as TextEditorLineNumbersStyle$1, ProgressLocation as ProgressLocation$1, NotebookCellExecutionState as NotebookCellExecutionState$2, TestMessage as TestMessage$1, NotebookRendererScript as NotebookRendererScript$1 } from './extHostTypes.js';
24
24
  var Selection;
25
25
  ( (function(Selection) {
26
26
  function to(selection) {
@@ -65,6 +65,13 @@ var Range;
65
65
  }
66
66
  Range.to = to;
67
67
  })(Range || (Range = {})));
68
+ var Location;
69
+ ( (function(Location) {
70
+ function to(location) {
71
+ return new Location$1(URI.revive(location.uri), Range.to(location.range));
72
+ }
73
+ Location.to = to;
74
+ })(Location || (Location = {})));
68
75
  var TokenType;
69
76
  ( (function(TokenType) {
70
77
  function to(type) {
@@ -193,7 +200,7 @@ var DiagnosticRelatedInformation;
193
200
  }
194
201
  DiagnosticRelatedInformation.from = from;
195
202
  function to(value) {
196
- return new DiagnosticRelatedInformation$1(new Location(value.resource, Range.to(value)), value.message);
203
+ return new DiagnosticRelatedInformation$1(new Location$1(value.resource, Range.to(value)), value.message);
197
204
  }
198
205
  DiagnosticRelatedInformation.to = to;
199
206
  })(DiagnosticRelatedInformation || (DiagnosticRelatedInformation = {})));
@@ -784,7 +791,7 @@ var location;
784
791
  }
785
792
  location.from = from;
786
793
  function to(value) {
787
- return new Location(URI.revive(value.uri), Range.to(value.range));
794
+ return new Location$1(URI.revive(value.uri), Range.to(value.range));
788
795
  }
789
796
  location.to = to;
790
797
  })(location || (location = {})));
@@ -1861,7 +1868,7 @@ var TestCoverage;
1861
1868
  type: 1 ,
1862
1869
  branches: coverage.branches.length
1863
1870
  ? ( coverage.branches.map(
1864
- b => ({ count: b.executionCount, location: b.location && fromLocation(b.location) })
1871
+ b => ({ count: b.executionCount, location: b.location && fromLocation(b.location), label: b.label })
1865
1872
  ))
1866
1873
  : undefined,
1867
1874
  };
@@ -2102,7 +2109,7 @@ var ChatVariable;
2102
2109
  return {
2103
2110
  level: ChatVariableLevel.to(variable.level),
2104
2111
  kind: variable.kind,
2105
- value: revive(variable.value),
2112
+ value: isUriComponents(variable.value) ? URI.revive(variable.value) : variable.value,
2106
2113
  description: variable.description
2107
2114
  };
2108
2115
  }
@@ -2163,10 +2170,7 @@ var InteractiveEditorResponseFeedbackKind;
2163
2170
  var ChatResponseProgress;
2164
2171
  ( (function(ChatResponseProgress) {
2165
2172
  function from(extension, progress) {
2166
- if ('placeholder' in progress && 'resolvedContent' in progress) {
2167
- return { content: progress.placeholder, kind: 'asyncContent' };
2168
- }
2169
- else if ('markdownContent' in progress) {
2173
+ if ('markdownContent' in progress) {
2170
2174
  checkProposedApiEnabled(extension, 'chatAgents2Additions');
2171
2175
  return { content: MarkdownString.from(progress.markdownContent), kind: 'markdownContent' };
2172
2176
  }
@@ -2220,14 +2224,72 @@ var ChatResponseProgress;
2220
2224
  return { treeData: progress.treeData, kind: 'treeData' };
2221
2225
  }
2222
2226
  else if ('message' in progress) {
2223
- return { content: progress.message, kind: 'progressMessage' };
2227
+ return { content: MarkdownString.from(progress.message), kind: 'progressMessage' };
2224
2228
  }
2225
2229
  else {
2226
2230
  return undefined;
2227
2231
  }
2228
2232
  }
2229
2233
  ChatResponseProgress.from = from;
2234
+ function to(progress) {
2235
+ switch (progress.kind) {
2236
+ case 'markdownContent':
2237
+ case 'inlineReference':
2238
+ case 'treeData':
2239
+ return ChatResponseProgress.to(progress);
2240
+ case 'content':
2241
+ return { content: progress.content };
2242
+ case 'usedContext':
2243
+ return { documents: ( progress.documents.map(d => ({ uri: URI.revive(d.uri), version: d.version, ranges: ( d.ranges.map(r => Range.to(r))) }))) };
2244
+ case 'reference':
2245
+ return {
2246
+ reference: isUriComponents(progress.reference) ?
2247
+ URI.revive(progress.reference) :
2248
+ Location.to(progress.reference)
2249
+ };
2250
+ case 'agentDetection':
2251
+ return undefined;
2252
+ case 'progressMessage':
2253
+ return { message: progress.content.value };
2254
+ case 'vulnerability':
2255
+ return { content: progress.content, vulnerabilities: progress.vulnerabilities };
2256
+ default:
2257
+ return undefined;
2258
+ }
2259
+ }
2260
+ ChatResponseProgress.to = to;
2261
+ function toProgressContent(progress) {
2262
+ switch (progress.kind) {
2263
+ case 'markdownContent':
2264
+ return { content: progress.content.value };
2265
+ case 'inlineReference':
2266
+ return {
2267
+ inlineReference: isUriComponents(progress.inlineReference) ?
2268
+ URI.revive(progress.inlineReference) :
2269
+ Location.to(progress.inlineReference),
2270
+ title: progress.name
2271
+ };
2272
+ case 'treeData':
2273
+ return { treeData: revive(progress.treeData) };
2274
+ default:
2275
+ return undefined;
2276
+ }
2277
+ }
2278
+ ChatResponseProgress.toProgressContent = toProgressContent;
2230
2279
  })(ChatResponseProgress || (ChatResponseProgress = {})));
2280
+ var ChatAgentRequest;
2281
+ ( (function(ChatAgentRequest) {
2282
+ function to(request, slashCommand) {
2283
+ return {
2284
+ prompt: request.message,
2285
+ variables: ChatVariable.objectTo(request.variables),
2286
+ slashCommand,
2287
+ subCommand: request.command,
2288
+ agentId: request.agentId,
2289
+ };
2290
+ }
2291
+ ChatAgentRequest.to = to;
2292
+ })(ChatAgentRequest || (ChatAgentRequest = {})));
2231
2293
  var ChatAgentCompletionItem;
2232
2294
  ( (function(ChatAgentCompletionItem) {
2233
2295
  function from(item) {
@@ -2254,4 +2316,4 @@ var TerminalQuickFix;
2254
2316
  }
2255
2317
  TerminalQuickFix.from = from;
2256
2318
  })(TerminalQuickFix || (TerminalQuickFix = {})));
2257
- export { CallHierarchyIncomingCall, CallHierarchyItem, CallHierarchyOutgoingCall, ChatAgentCompletionItem, ChatFollowup, ChatMessage, ChatMessageRole, ChatReplyFollowup, ChatResponseProgress, ChatVariable, ChatVariableLevel, CodeActionTriggerKind, Color, ColorPresentation, CompletionContext, CompletionItem, CompletionItemKind, CompletionItemTag, CompletionTriggerKind, DataTransfer, DataTransferItem, DecorationRangeBehavior, DecorationRenderOptions, DefinitionLink, Diagnostic, DiagnosticRelatedInformation, DiagnosticSeverity, DiagnosticTag, DocumentHighlight, DocumentLink, DocumentSelector, DocumentSymbol, EndOfLine, EvaluatableExpression, FoldingRange, FoldingRangeKind, GlobPattern, Hover, InlayHint, InlayHintKind, InlayHintLabelPart, InlineValue, InlineValueContext, InteractiveEditorResponseFeedbackKind, LanguageSelector, MappedEditsContext, MarkdownString, MultiDocumentHighlight, NotebookCellData, NotebookCellExecutionState, NotebookCellExecutionSummary, NotebookCellKind, NotebookCellOutput, NotebookCellOutputItem, NotebookData, NotebookDocumentContentOptions, NotebookExclusiveDocumentPattern, NotebookKernelSourceAction, NotebookRange, NotebookRendererScript, NotebookStatusBarItem, ParameterInformation, Position, ProgressLocation, Range, Selection, SelectionRange, SignatureHelp, SignatureInformation, SymbolKind, SymbolTag, TerminalQuickFix, TestCoverage, TestItem, TestMessage, TestResults, TestTag, TextDocumentSaveReason, TextEdit, TextEditorLineNumbersStyle, TextEditorOpenOptions, ThemableDecorationAttachmentRenderOptions, ThemableDecorationRenderOptions, TokenType, TypeHierarchyItem, ViewBadge, ViewColumn, WorkspaceEdit, WorkspaceSymbol, fromRangeOrRangeWithMessage, isDecorationOptionsArr, location, pathOrURIToURI };
2319
+ export { CallHierarchyIncomingCall, CallHierarchyItem, CallHierarchyOutgoingCall, ChatAgentCompletionItem, ChatAgentRequest, ChatFollowup, ChatMessage, ChatMessageRole, ChatReplyFollowup, ChatResponseProgress, ChatVariable, ChatVariableLevel, CodeActionTriggerKind, Color, ColorPresentation, CompletionContext, CompletionItem, CompletionItemKind, CompletionItemTag, CompletionTriggerKind, DataTransfer, DataTransferItem, DecorationRangeBehavior, DecorationRenderOptions, DefinitionLink, Diagnostic, DiagnosticRelatedInformation, DiagnosticSeverity, DiagnosticTag, DocumentHighlight, DocumentLink, DocumentSelector, DocumentSymbol, EndOfLine, EvaluatableExpression, FoldingRange, FoldingRangeKind, GlobPattern, Hover, InlayHint, InlayHintKind, InlayHintLabelPart, InlineValue, InlineValueContext, InteractiveEditorResponseFeedbackKind, LanguageSelector, Location, MappedEditsContext, MarkdownString, MultiDocumentHighlight, NotebookCellData, NotebookCellExecutionState, NotebookCellExecutionSummary, NotebookCellKind, NotebookCellOutput, NotebookCellOutputItem, NotebookData, NotebookDocumentContentOptions, NotebookExclusiveDocumentPattern, NotebookKernelSourceAction, NotebookRange, NotebookRendererScript, NotebookStatusBarItem, ParameterInformation, Position, ProgressLocation, Range, Selection, SelectionRange, SignatureHelp, SignatureInformation, SymbolKind, SymbolTag, TerminalQuickFix, TestCoverage, TestItem, TestMessage, TestResults, TestTag, TextDocumentSaveReason, TextEdit, TextEditorLineNumbersStyle, TextEditorOpenOptions, ThemableDecorationAttachmentRenderOptions, ThemableDecorationRenderOptions, TokenType, TypeHierarchyItem, ViewBadge, ViewColumn, WorkspaceEdit, WorkspaceSymbol, fromRangeOrRangeWithMessage, isDecorationOptionsArr, location, pathOrURIToURI };