@codingame/monaco-vscode-api 19.1.3 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (687) hide show
  1. package/missing-services.js +141 -54
  2. package/package.json +8 -8
  3. package/services.d.ts +5 -5
  4. package/services.js +3 -3
  5. package/vscode/src/vs/base/browser/dom.d.ts +7 -5
  6. package/vscode/src/vs/base/browser/dom.js +21 -132
  7. package/vscode/src/vs/base/browser/domSanitize.d.ts +28 -0
  8. package/vscode/src/vs/base/browser/domSanitize.js +175 -0
  9. package/vscode/src/vs/base/browser/formattedTextRenderer.d.ts +2 -5
  10. package/vscode/src/vs/base/browser/formattedTextRenderer.js +13 -20
  11. package/vscode/src/vs/base/browser/markdownRenderer.d.ts +23 -13
  12. package/vscode/src/vs/base/browser/markdownRenderer.js +155 -126
  13. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.d.ts +2 -0
  14. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +9 -11
  15. package/vscode/src/vs/base/browser/ui/button/button.d.ts +2 -0
  16. package/vscode/src/vs/base/browser/ui/button/button.js +24 -15
  17. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
  18. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +5 -10
  19. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css +9 -0
  20. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +3 -21
  21. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +7 -7
  22. package/vscode/src/vs/base/browser/ui/list/listPaging.d.ts +1 -1
  23. package/vscode/src/vs/base/browser/ui/list/listWidget.d.ts +2 -0
  24. package/vscode/src/vs/base/browser/ui/list/listWidget.js +3 -0
  25. package/vscode/src/vs/base/browser/ui/scrollbar/abstractScrollbar.js +9 -5
  26. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.d.ts +3 -0
  27. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +48 -1
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElementOptions.d.ts +2 -0
  29. package/vscode/src/vs/base/browser/ui/toggle/toggle.css +0 -3
  30. package/vscode/src/vs/base/browser/ui/toggle/toggle.d.ts +22 -12
  31. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +93 -33
  32. package/vscode/src/vs/base/browser/ui/tree/abstractTree.d.ts +3 -0
  33. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +3 -0
  34. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.d.ts +3 -1
  35. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +19 -17
  36. package/vscode/src/vs/base/browser/webWorkerFactory.d.ts +1 -1
  37. package/vscode/src/vs/base/browser/webWorkerFactory.js +3 -2
  38. package/vscode/src/vs/base/common/arrays.js +4 -1
  39. package/vscode/src/vs/base/common/arraysFind.d.ts +1 -0
  40. package/vscode/src/vs/base/common/async.d.ts +26 -0
  41. package/vscode/src/vs/base/common/async.js +103 -1
  42. package/vscode/src/vs/base/common/codicons.d.ts +1 -0
  43. package/vscode/src/vs/base/common/codiconsLibrary.d.ts +1 -0
  44. package/vscode/src/vs/base/common/codiconsLibrary.js +1 -0
  45. package/vscode/src/vs/base/common/lifecycle.js +4 -0
  46. package/vscode/src/vs/base/common/marshallingIds.d.ts +3 -1
  47. package/vscode/src/vs/base/common/marshallingIds.js +2 -0
  48. package/vscode/src/vs/base/common/network.d.ts +2 -1
  49. package/vscode/src/vs/base/common/network.js +2 -1
  50. package/vscode/src/vs/base/common/oauth.d.ts +2 -8
  51. package/vscode/src/vs/base/common/oauth.js +6 -27
  52. package/vscode/src/vs/base/common/observableInternal/changeTracker.d.ts +10 -0
  53. package/vscode/src/vs/base/common/observableInternal/changeTracker.js +33 -1
  54. package/vscode/src/vs/base/common/observableInternal/index.d.ts +2 -2
  55. package/vscode/src/vs/base/common/observableInternal/logging/debugger/devToolsLogger.js +22 -1
  56. package/vscode/src/vs/base/common/observableInternal/map.d.ts +24 -0
  57. package/vscode/src/vs/base/common/observableInternal/map.js +63 -0
  58. package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.d.ts +1 -0
  59. package/vscode/src/vs/base/common/observableInternal/observables/derivedImpl.js +8 -0
  60. package/vscode/src/vs/base/common/platform.js +1 -1
  61. package/vscode/src/vs/base/common/product.d.ts +19 -7
  62. package/vscode/src/vs/base/common/strings.d.ts +1 -0
  63. package/vscode/src/vs/base/common/strings.js +16 -1
  64. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +4 -4
  65. package/vscode/src/vs/editor/browser/config/migrateOptions.js +1 -0
  66. package/vscode/src/vs/editor/browser/controller/dragScrolling.d.ts +48 -0
  67. package/vscode/src/vs/editor/browser/controller/dragScrolling.js +182 -0
  68. package/vscode/src/vs/editor/browser/controller/editContext/clipboardUtils.d.ts +1 -0
  69. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.d.ts +3 -5
  70. package/vscode/src/vs/editor/browser/controller/editContext/native/nativeEditContext.js +30 -73
  71. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentRich.d.ts +35 -0
  72. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentRich.js +329 -0
  73. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentSimple.d.ts +31 -0
  74. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderContentSimple.js +176 -0
  75. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderSupport.d.ts +12 -12
  76. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +50 -88
  77. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderUtils.d.ts +11 -0
  78. package/vscode/src/vs/editor/browser/controller/editContext/screenReaderUtils.d.ts +9 -12
  79. package/vscode/src/vs/editor/browser/controller/editContext/screenReaderUtils.js +22 -11
  80. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +5 -21
  81. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextInput.js +23 -2
  82. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContextState.d.ts +2 -2
  83. package/vscode/src/vs/editor/browser/controller/mouseHandler.d.ts +1 -0
  84. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +31 -114
  85. package/vscode/src/vs/editor/browser/controller/mouseTarget.d.ts +1 -0
  86. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +26 -7
  87. package/vscode/src/vs/editor/browser/coreCommands.d.ts +3 -3
  88. package/vscode/src/vs/editor/browser/editorBrowser.d.ts +1 -1
  89. package/vscode/src/vs/editor/browser/editorExtensions.d.ts +2 -2
  90. package/vscode/src/vs/editor/browser/gpu/atlas/textureAtlas.js +1 -1
  91. package/vscode/src/vs/editor/browser/gpu/taskQueue.d.ts +5 -2
  92. package/vscode/src/vs/editor/browser/gpu/taskQueue.js +11 -4
  93. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +1 -1
  94. package/vscode/src/vs/editor/browser/services/bulkEditService.d.ts +2 -2
  95. package/vscode/src/vs/editor/browser/services/editorWorkerService.d.ts +1 -1
  96. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.d.ts +1 -1
  97. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +33 -1
  98. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.d.ts +1 -0
  99. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +6 -0
  100. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.d.ts +4 -1
  101. package/vscode/src/vs/editor/browser/services/inlineCompletionsService.js +13 -2
  102. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.d.ts +1 -1
  103. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +1 -1
  104. package/vscode/src/vs/editor/browser/view/renderingContext.d.ts +2 -1
  105. package/vscode/src/vs/editor/browser/view/viewUserInputEvents.d.ts +1 -1
  106. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +4 -3
  107. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +2 -0
  108. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.css +8 -2
  109. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.d.ts +3 -2
  110. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +44 -13
  111. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.d.ts +1 -0
  112. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +7 -2
  113. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.d.ts +1 -0
  114. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +9 -4
  115. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.d.ts +1 -0
  116. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLine.js +43 -35
  117. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.d.ts +1 -0
  118. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLineOptions.js +2 -0
  119. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.css +1 -0
  120. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.d.ts +1 -0
  121. package/vscode/src/vs/editor/browser/viewParts/viewLines/viewLines.js +21 -4
  122. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.d.ts +3 -3
  123. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +3 -3
  124. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +4 -1
  125. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +1 -1
  126. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.d.ts +3 -2
  127. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +9 -3
  128. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.d.ts +2 -2
  129. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js +4 -4
  130. package/vscode/src/vs/editor/common/commands/surroundSelectionCommand.js +1 -1
  131. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +21 -6
  132. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +178 -162
  133. package/vscode/src/vs/editor/common/config/editorOptions.js +592 -495
  134. package/vscode/src/vs/editor/common/coordinatesConverter.d.ts +30 -0
  135. package/vscode/src/vs/editor/common/coordinatesConverter.js +56 -0
  136. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
  137. package/vscode/src/vs/editor/common/core/edits/edit.d.ts +3 -3
  138. package/vscode/src/vs/editor/common/core/edits/lineEdit.d.ts +2 -2
  139. package/vscode/src/vs/editor/common/core/edits/lineEdit.js +14 -14
  140. package/vscode/src/vs/editor/common/core/edits/stringEdit.d.ts +11 -4
  141. package/vscode/src/vs/editor/common/core/edits/stringEdit.js +36 -12
  142. package/vscode/src/vs/editor/common/core/edits/textEdit.d.ts +3 -0
  143. package/vscode/src/vs/editor/common/core/edits/textEdit.js +20 -0
  144. package/vscode/src/vs/editor/common/core/text/abstractText.d.ts +2 -0
  145. package/vscode/src/vs/editor/common/core/text/abstractText.js +3 -0
  146. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.d.ts +1 -1
  147. package/vscode/src/vs/editor/common/core/text/positionToOffsetImpl.js +2 -2
  148. package/vscode/src/vs/editor/common/cursor/cursor.d.ts +4 -4
  149. package/vscode/src/vs/editor/common/cursor/cursor.js +9 -9
  150. package/vscode/src/vs/editor/common/cursor/cursorContext.d.ts +1 -1
  151. package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.d.ts +2 -1
  152. package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +28 -13
  153. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +15 -6
  154. package/vscode/src/vs/editor/common/cursorCommon.d.ts +1 -0
  155. package/vscode/src/vs/editor/common/cursorCommon.js +2 -0
  156. package/vscode/src/vs/editor/common/editorContextKeys.js +46 -46
  157. package/vscode/src/vs/editor/common/languages/defaultDocumentColorsComputer.js +3 -3
  158. package/vscode/src/vs/editor/common/languages/linkComputer.js +1 -4
  159. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  160. package/vscode/src/vs/editor/common/languages.d.ts +19 -0
  161. package/vscode/src/vs/editor/common/languages.js +83 -57
  162. package/vscode/src/vs/editor/common/model/editStack.d.ts +2 -2
  163. package/vscode/src/vs/editor/common/model/editStack.js +3 -3
  164. package/vscode/src/vs/editor/common/model/textModel.d.ts +7 -6
  165. package/vscode/src/vs/editor/common/model/textModel.js +5 -4
  166. package/vscode/src/vs/editor/common/model.d.ts +6 -1
  167. package/vscode/src/vs/editor/common/model.js +6 -1
  168. package/vscode/src/vs/editor/common/modelLineProjectionData.d.ts +1 -1
  169. package/vscode/src/vs/editor/common/services/editorWebWorker.d.ts +1 -1
  170. package/vscode/src/vs/editor/common/services/model.service.d.ts +2 -2
  171. package/vscode/src/vs/editor/common/services/modelService.d.ts +2 -2
  172. package/vscode/src/vs/editor/common/services/modelService.js +2 -2
  173. package/vscode/src/vs/editor/common/standalone/standaloneEnums.d.ts +172 -160
  174. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +174 -161
  175. package/vscode/src/vs/editor/common/standaloneStrings.js +47 -47
  176. package/vscode/src/vs/editor/common/textModelEditSource.d.ts +151 -0
  177. package/vscode/src/vs/editor/common/{textModelEditReason.js → textModelEditSource.js} +44 -23
  178. package/vscode/src/vs/editor/common/textModelEvents.d.ts +2 -2
  179. package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +1 -1
  180. package/vscode/src/vs/editor/common/viewLayout/lineDecorations.d.ts +1 -1
  181. package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +1 -1
  182. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.d.ts +8 -5
  183. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +29 -29
  184. package/vscode/src/vs/editor/common/viewLayout/viewLinesViewportData.d.ts +2 -1
  185. package/vscode/src/vs/editor/common/viewModel/inlineDecorations.d.ts +21 -0
  186. package/vscode/src/vs/editor/common/viewModel/inlineDecorations.js +30 -0
  187. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +2 -1
  188. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.d.ts +1 -1
  189. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +11 -3
  190. package/vscode/src/vs/editor/common/viewModel/screenReaderSimpleModel.d.ts +10 -0
  191. package/vscode/src/vs/editor/common/viewModel/viewModelDecoration.d.ts +11 -0
  192. package/vscode/src/vs/editor/common/viewModel/viewModelDecoration.js +49 -0
  193. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.d.ts +7 -11
  194. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +5 -43
  195. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.d.ts +7 -4
  196. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +32 -9
  197. package/vscode/src/vs/editor/common/viewModel/viewModelLines.d.ts +4 -2
  198. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +5 -55
  199. package/vscode/src/vs/editor/common/viewModel.d.ts +8 -34
  200. package/vscode/src/vs/editor/common/viewModel.js +3 -35
  201. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  202. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  203. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  204. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  205. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +44 -17
  206. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +8 -7
  207. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +29 -29
  208. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  209. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  210. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  211. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +5 -1
  212. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  213. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  214. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerCloseButton.js +1 -1
  215. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerHeader.js +1 -1
  216. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.d.ts +0 -1
  217. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerParts/colorPickerSaturationBox.js +0 -3
  218. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.d.ts +1 -0
  219. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +4 -1
  220. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  221. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  222. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -19
  223. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  224. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +4 -4
  225. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.d.ts +3 -1
  226. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +54 -29
  227. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  228. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  229. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  230. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +1 -1
  231. package/vscode/src/vs/editor/contrib/find/browser/findController.d.ts +4 -4
  232. package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
  233. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +26 -26
  234. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +20 -20
  235. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +9 -9
  236. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  237. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  238. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  239. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  240. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  241. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  242. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  243. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  244. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  245. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  246. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  247. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  248. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.d.ts +3 -1
  249. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +31 -3
  250. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +3 -3
  251. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.d.ts +3 -1
  252. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +6 -3
  253. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidgetWrapper.js +7 -2
  254. package/vscode/src/vs/editor/contrib/hover/browser/getHover.d.ts +1 -2
  255. package/vscode/src/vs/editor/contrib/hover/browser/getHover.js +6 -2
  256. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  257. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  258. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +24 -24
  259. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.d.ts +4 -4
  260. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.d.ts +1 -2
  261. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +18 -19
  262. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +5 -5
  263. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  264. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -20
  265. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +17 -15
  266. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.d.ts +8 -8
  267. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +21 -20
  268. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.d.ts +1 -0
  269. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +12 -11
  270. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +22 -1
  271. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  272. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
  273. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/ghostText.d.ts +1 -1
  274. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.d.ts +5 -2
  275. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsModel.js +107 -83
  276. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.d.ts +1 -1
  277. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineCompletionsSource.js +31 -8
  278. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.d.ts +4 -2
  279. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/inlineSuggestionItem.js +27 -16
  280. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.d.ts +6 -1
  281. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/provideInlineCompletions.js +11 -0
  282. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.d.ts +32 -0
  283. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/model/typingSpeed.js +145 -0
  284. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +2 -21
  285. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/ghostText/ghostTextView.js +14 -9
  286. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/components/gutterIndicatorMenu.js +5 -5
  287. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsModel.js +1 -1
  288. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsView.js +3 -2
  289. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.d.ts +1 -0
  290. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsCustomView.js +42 -20
  291. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsInsertionView.js +1 -1
  292. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/inlineEditsViews/inlineEditsLineReplacementView.js +1 -1
  293. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/view/inlineEdits/theme.js +20 -20
  294. package/vscode/src/vs/editor/contrib/insertFinalNewLine/browser/insertFinalNewLine.js +1 -1
  295. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  296. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.d.ts +5 -0
  297. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +105 -33
  298. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  299. package/vscode/src/vs/editor/contrib/links/browser/links.js +10 -10
  300. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  301. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.d.ts +2 -0
  302. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +34 -28
  303. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  304. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  305. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +18 -18
  306. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  307. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  308. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +13 -13
  309. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  310. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  311. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.d.ts +2 -2
  312. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
  313. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.d.ts +2 -2
  314. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +2 -2
  315. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  316. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  317. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +5 -1
  318. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  319. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +13 -13
  320. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +17 -17
  321. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  322. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  323. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +1 -1
  324. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  325. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  326. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  327. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  328. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.d.ts +6 -6
  329. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +30 -30
  330. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  331. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  332. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +9 -6
  333. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +3 -3
  334. package/vscode/src/vs/editor/editor.worker.start.d.ts +1 -1
  335. package/vscode/src/vs/editor/editor.worker.start.js +26 -18
  336. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.d.ts +2 -1
  337. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +3 -0
  338. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +1 -0
  339. package/vscode/src/vs/platform/accessibility/browser/accessibleView.d.ts +1 -1
  340. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +62 -62
  341. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  342. package/vscode/src/vs/platform/actionWidget/browser/actionList.d.ts +3 -1
  343. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +45 -8
  344. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css +20 -1
  345. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  346. package/vscode/src/vs/platform/actions/browser/actionViewItemService.service.d.ts +5 -5
  347. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  348. package/vscode/src/vs/platform/actions/browser/toolbar.d.ts +1 -0
  349. package/vscode/src/vs/platform/actions/browser/toolbar.js +6 -3
  350. package/vscode/src/vs/platform/actions/common/actions.d.ts +4 -3
  351. package/vscode/src/vs/platform/actions/common/actions.js +4 -3
  352. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  353. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  354. package/vscode/src/vs/platform/clipboard/browser/clipboardService.d.ts +1 -1
  355. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +12 -2
  356. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +5 -1
  357. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +20 -10
  358. package/vscode/src/vs/platform/configuration/common/configurations.js +2 -2
  359. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  360. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
  361. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  362. package/vscode/src/vs/platform/contextkey/common/scanner.js +5 -5
  363. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +1 -1
  364. package/vscode/src/vs/platform/dialogs/common/dialogs.service.d.ts +1 -1
  365. package/vscode/src/vs/platform/dnd/browser/dnd.d.ts +1 -0
  366. package/vscode/src/vs/platform/dnd/browser/dnd.js +2 -1
  367. package/vscode/src/vs/platform/environment/common/argv.d.ts +2 -0
  368. package/vscode/src/vs/platform/environment/common/environment.service.d.ts +1 -0
  369. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.d.ts +62 -0
  370. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.js +55 -0
  371. package/vscode/src/vs/platform/extensionManagement/common/extensionGalleryManifest.service.d.ts +3 -2
  372. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +2 -2
  373. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +19 -19
  374. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +1 -1
  375. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  376. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +7 -7
  377. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +20 -20
  378. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.d.ts +21 -0
  379. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +21 -0
  380. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  381. package/vscode/src/vs/platform/files/common/files.js +6 -6
  382. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  383. package/vscode/src/vs/platform/imageResize/common/imageResizeService.service.d.ts +5 -0
  384. package/vscode/src/vs/platform/imageResize/common/imageResizeService.service.js +6 -0
  385. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  386. package/vscode/src/vs/platform/languagePacks/common/languagePacks.service.d.ts +1 -1
  387. package/vscode/src/vs/platform/list/browser/listService.js +27 -27
  388. package/vscode/src/vs/platform/log/common/log.js +6 -6
  389. package/vscode/src/vs/platform/markers/common/markerService.js +2 -2
  390. package/vscode/src/vs/platform/markers/common/markers.js +6 -6
  391. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.d.ts +8 -0
  392. package/vscode/src/vs/platform/mcp/common/mcpManagement.service.js +2 -1
  393. package/vscode/src/vs/platform/notification/common/notification.js +3 -3
  394. package/vscode/src/vs/platform/observable/common/platformObservableUtils.d.ts +1 -0
  395. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +20 -9
  396. package/vscode/src/vs/platform/opener/browser/link.js +1 -4
  397. package/vscode/src/vs/platform/policy/common/policy.d.ts +2 -2
  398. package/vscode/src/vs/platform/policy/common/policy.service.d.ts +1 -1
  399. package/vscode/src/vs/platform/product/common/product.js +3 -3
  400. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css +81 -14
  401. package/vscode/src/vs/platform/quickinput/browser/quickInput.d.ts +10 -7
  402. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +19 -14
  403. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +5 -5
  404. package/vscode/src/vs/platform/quickinput/browser/quickInputController.d.ts +2 -1
  405. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +38 -11
  406. package/vscode/src/vs/platform/quickinput/browser/{quickInputTree.d.ts → quickInputList.d.ts} +1 -1
  407. package/vscode/src/vs/platform/quickinput/browser/{quickInputTree.js → quickInputList.js} +9 -9
  408. package/vscode/src/vs/platform/quickinput/browser/quickInputService.d.ts +2 -1
  409. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +3 -0
  410. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  411. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputDelegate.d.ts +6 -0
  412. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputDelegate.js +13 -0
  413. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTree.d.ts +9 -0
  414. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTree.js +35 -0
  415. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.d.ts +13 -0
  416. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeAccessibilityProvider.js +33 -0
  417. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.d.ts +42 -0
  418. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeController.js +296 -0
  419. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeFilter.d.ts +10 -0
  420. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeFilter.js +39 -0
  421. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.d.ts +33 -0
  422. package/vscode/src/vs/platform/quickinput/browser/tree/quickInputTreeRenderer.js +148 -0
  423. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.d.ts +53 -0
  424. package/vscode/src/vs/platform/quickinput/browser/tree/quickTree.js +189 -0
  425. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +46 -2
  426. package/vscode/src/vs/platform/quickinput/common/quickInput.js +1 -0
  427. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +2 -1
  428. package/vscode/src/vs/platform/request/common/request.js +18 -18
  429. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -1
  430. package/vscode/src/vs/platform/terminal/common/environmentVariableShared.d.ts +1 -1
  431. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -5
  432. package/vscode/src/vs/platform/terminal/common/terminal.service.d.ts +2 -4
  433. package/vscode/src/vs/platform/terminal/common/terminalProcess.d.ts +1 -1
  434. package/vscode/src/vs/platform/theme/browser/defaultStyles.d.ts +1 -1
  435. package/vscode/src/vs/platform/theme/common/colorUtils.js +2 -2
  436. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +17 -17
  437. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +8 -8
  438. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +95 -95
  439. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +47 -47
  440. package/vscode/src/vs/platform/theme/common/colors/listColors.js +36 -36
  441. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +7 -7
  442. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +11 -11
  443. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +15 -15
  444. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +9 -9
  445. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +3 -3
  446. package/vscode/src/vs/platform/theme/common/iconRegistry.js +6 -6
  447. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  448. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +1 -1
  449. package/vscode/src/vs/platform/userDataSync/common/userDataSync.d.ts +12 -2
  450. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +14 -6
  451. package/vscode/src/vs/platform/userDataSync/common/userDataSync.service.d.ts +2 -1
  452. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  453. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +64 -9
  454. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  455. package/vscode/src/vs/workbench/api/common/extHost.protocol.d.ts +102 -41
  456. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +6 -0
  457. package/vscode/src/vs/workbench/api/common/extHostAuthentication.d.ts +4 -2
  458. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +98 -27
  459. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.d.ts +22 -4
  460. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +24 -5
  461. package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.d.ts +14 -0
  462. package/vscode/src/vs/workbench/api/common/extHostChatOutputRenderer.js +32 -0
  463. package/vscode/src/vs/workbench/api/common/extHostChatSessions.d.ts +35 -0
  464. package/vscode/src/vs/workbench/api/common/extHostChatSessions.js +222 -0
  465. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.d.ts +1 -1
  466. package/vscode/src/vs/workbench/api/common/extHostDataChannels.d.ts +15 -0
  467. package/vscode/src/vs/workbench/api/common/extHostDataChannels.js +44 -0
  468. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  469. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  470. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +3 -2
  471. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +32 -34
  472. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.d.ts +12 -15
  473. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +127 -120
  474. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  475. package/vscode/src/vs/workbench/api/common/extHostMcp.js +40 -25
  476. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  477. package/vscode/src/vs/workbench/api/common/extHostSCM.d.ts +1 -2
  478. package/vscode/src/vs/workbench/api/common/extHostSCM.js +28 -10
  479. package/vscode/src/vs/workbench/api/common/extHostSecretState.d.ts +1 -0
  480. package/vscode/src/vs/workbench/api/common/extHostSecretState.js +3 -0
  481. package/vscode/src/vs/workbench/api/common/extHostSecrets.d.ts +2 -0
  482. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +6 -0
  483. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  484. package/vscode/src/vs/workbench/api/common/extHostTask.d.ts +3 -0
  485. package/vscode/src/vs/workbench/api/common/extHostTask.js +12 -1
  486. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  487. package/vscode/src/vs/workbench/api/common/extHostTerminalService.d.ts +1 -1
  488. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  489. package/vscode/src/vs/workbench/api/common/extHostTreeViews.d.ts +8 -8
  490. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +203 -198
  491. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  492. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.d.ts +19 -8
  493. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +211 -33
  494. package/vscode/src/vs/workbench/api/common/extHostTypes.d.ts +77 -13
  495. package/vscode/src/vs/workbench/api/common/extHostTypes.js +69 -11
  496. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.d.ts +1 -1
  497. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  498. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
  499. package/vscode/src/vs/workbench/browser/actions/developerActions.js +31 -31
  500. package/vscode/src/vs/workbench/browser/actions/textInputActions.d.ts +4 -2
  501. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +24 -10
  502. package/vscode/src/vs/workbench/browser/contextkeys.js +10 -5
  503. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.service.d.ts +1 -1
  504. package/vscode/src/vs/workbench/common/configuration.js +9 -9
  505. package/vscode/src/vs/workbench/common/contextkeys.js +87 -78
  506. package/vscode/src/vs/workbench/common/editor/diffEditorInput.d.ts +32 -0
  507. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +180 -0
  508. package/vscode/src/vs/workbench/common/editor/diffEditorModel.d.ts +12 -0
  509. package/vscode/src/vs/workbench/common/editor/diffEditorModel.js +26 -0
  510. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +1 -1
  511. package/vscode/src/vs/workbench/common/editor/editorModel.d.ts +10 -0
  512. package/vscode/src/vs/workbench/common/editor/editorModel.js +27 -0
  513. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.d.ts +51 -0
  514. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +303 -0
  515. package/vscode/src/vs/workbench/common/editor/textDiffEditorModel.d.ts +18 -0
  516. package/vscode/src/vs/workbench/common/editor/textDiffEditorModel.js +45 -0
  517. package/vscode/src/vs/workbench/common/editor/textEditorModel.d.ts +47 -0
  518. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +181 -0
  519. package/vscode/src/vs/workbench/common/editor.d.ts +1 -1
  520. package/vscode/src/vs/workbench/common/editor.js +4 -4
  521. package/vscode/src/vs/workbench/common/theme.d.ts +2 -2
  522. package/vscode/src/vs/workbench/common/theme.js +161 -161
  523. package/vscode/src/vs/workbench/common/views.js +4 -4
  524. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +164 -156
  525. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +12 -12
  526. package/vscode/src/vs/workbench/contrib/chat/browser/chat.service.d.ts +4 -2
  527. package/vscode/src/vs/workbench/contrib/chat/browser/chatAttachmentResolveService.service.d.ts +3 -1
  528. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatContentParts.d.ts +8 -8
  529. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownAnchorService.service.d.ts +1 -1
  530. package/vscode/src/vs/workbench/contrib/chat/browser/chatContextPickService.service.d.ts +1 -1
  531. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditing/chatEditingEditorContextKeys.js +5 -5
  532. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.service.d.ts +9 -0
  533. package/vscode/src/vs/workbench/contrib/chat/browser/chatOutputItemRenderer.service.js +6 -0
  534. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.service.d.ts +2 -1
  535. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.d.ts +5 -2
  536. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +59 -48
  537. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.d.ts +2 -2
  538. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.js +2 -2
  539. package/vscode/src/vs/workbench/contrib/chat/common/chatEditingService.service.d.ts +1 -1
  540. package/vscode/src/vs/workbench/contrib/chat/common/chatEntitlementService.service.d.ts +1 -1
  541. package/vscode/src/vs/workbench/contrib/chat/common/chatService.d.ts +81 -11
  542. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +7 -1
  543. package/vscode/src/vs/workbench/contrib/chat/common/chatService.service.d.ts +6 -3
  544. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.d.ts +48 -0
  545. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.d.ts +22 -0
  546. package/vscode/src/vs/workbench/contrib/chat/common/chatSessionsService.service.js +6 -0
  547. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.service.d.ts +6 -0
  548. package/vscode/src/vs/workbench/contrib/chat/common/chatTodoListService.service.js +6 -0
  549. package/vscode/src/vs/workbench/contrib/chat/common/chatVariableEntries.js +2 -2
  550. package/vscode/src/vs/workbench/contrib/chat/common/chatVariables.d.ts +1 -1
  551. package/vscode/src/vs/workbench/contrib/chat/common/chatWidgetHistoryService.service.d.ts +1 -1
  552. package/vscode/src/vs/workbench/contrib/chat/common/constants.d.ts +4 -1
  553. package/vscode/src/vs/workbench/contrib/chat/common/constants.js +3 -0
  554. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.d.ts +32 -11
  555. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.js +8 -5
  556. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.d.ts +1 -0
  557. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.d.ts +47 -17
  558. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +147 -65
  559. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.service.d.ts +9 -7
  560. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.d.ts +4 -0
  561. package/vscode/src/vs/workbench/contrib/chat/common/modelPicker/modelPickerWidget.js +6 -0
  562. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/contentProviders/types.d.ts +1 -1
  563. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.d.ts +1 -1
  564. package/vscode/src/vs/workbench/contrib/chat/common/promptSyntax/service/promptsService.service.d.ts +1 -1
  565. package/vscode/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.d.ts +17 -0
  566. package/vscode/src/vs/workbench/contrib/chat/common/tools/manageTodoListTool.js +203 -0
  567. package/vscode/src/vs/workbench/contrib/chat/common/tools/tools.js +4 -0
  568. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +13 -13
  569. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  570. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  571. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  572. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  573. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  574. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  575. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  576. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  577. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  578. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  579. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.service.d.ts +1 -1
  580. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  581. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +11 -11
  582. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +1 -1
  583. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +65 -65
  584. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.d.ts +1 -0
  585. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +4 -2
  586. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.service.d.ts +1 -1
  587. package/vscode/src/vs/workbench/contrib/extensions/common/searchExtensionsTool.js +5 -5
  588. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -6
  589. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  590. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  591. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  592. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  593. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  594. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.d.ts +2 -2
  595. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.service.d.ts +1 -1
  596. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  597. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  598. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.d.ts +7 -2
  599. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistryTypes.service.d.ts +5 -4
  600. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.d.ts +33 -9
  601. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.js +28 -10
  602. package/vscode/src/vs/workbench/contrib/mcp/common/mcpTypes.service.d.ts +11 -3
  603. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.service.d.ts +1 -1
  604. package/vscode/src/vs/workbench/contrib/notebook/browser/services/notebookEditorService.service.d.ts +1 -1
  605. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.d.ts +2 -2
  606. package/vscode/src/vs/workbench/contrib/notebook/common/notebookService.service.d.ts +1 -1
  607. package/vscode/src/vs/workbench/contrib/scm/common/quickDiff.service.d.ts +1 -1
  608. package/vscode/src/vs/workbench/contrib/scm/common/quickDiffService.d.ts +1 -1
  609. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  610. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  611. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  612. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  613. package/vscode/src/vs/workbench/contrib/tasks/common/constants.js +1 -1
  614. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -5
  615. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.service.d.ts +3 -1
  616. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +4 -4
  617. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +9 -7
  618. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +1 -1
  619. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.d.ts +2 -2
  620. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.service.d.ts +1 -1
  621. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.service.d.ts +1 -1
  622. package/vscode/src/vs/workbench/contrib/terminalContrib/quickFix/browser/quickFix.service.d.ts +1 -1
  623. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/browser/terminalCompletionService.service.d.ts +3 -1
  624. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +11 -11
  625. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +3 -3
  626. package/vscode/src/vs/workbench/contrib/webview/browser/webview.service.d.ts +1 -1
  627. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.service.d.ts +2 -2
  628. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.d.ts +2 -0
  629. package/vscode/src/vs/workbench/services/accounts/common/defaultAccount.js +8 -10
  630. package/vscode/src/vs/workbench/services/activity/common/activity.service.d.ts +1 -1
  631. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.service.d.ts +1 -1
  632. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.service.js +1 -1
  633. package/vscode/src/vs/workbench/services/authentication/common/dynamicAuthenticationProviderStorage.service.d.ts +5 -2
  634. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
  635. package/vscode/src/vs/workbench/services/coreExperimentation/common/coreExperimentationService.service.d.ts +1 -1
  636. package/vscode/src/vs/workbench/services/dataChannel/common/dataChannel.d.ts +7 -0
  637. package/vscode/src/vs/workbench/services/dataChannel/common/dataChannel.service.d.ts +8 -0
  638. package/vscode/src/vs/workbench/services/dataChannel/common/dataChannel.service.js +6 -0
  639. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +1 -1
  640. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +1 -1
  641. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +1 -1
  642. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +10 -13
  643. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +1 -1
  644. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +2 -5
  645. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +100 -84
  646. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.service.d.ts +1 -1
  647. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -1
  648. package/vscode/src/vs/workbench/services/language/common/languageService.js +28 -28
  649. package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.d.ts +61 -0
  650. package/vscode/src/vs/workbench/services/languageDetection/common/languageDetectionWorkerService.js +7 -0
  651. package/vscode/src/vs/workbench/services/localization/common/locale.service.d.ts +1 -1
  652. package/vscode/src/vs/workbench/services/log/common/logConstants.js +1 -1
  653. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.d.ts +11 -8
  654. package/vscode/src/vs/workbench/services/mcp/common/mcpWorkbenchManagementService.service.js +3 -2
  655. package/vscode/src/vs/workbench/services/outline/browser/outline.service.d.ts +1 -1
  656. package/vscode/src/vs/workbench/services/preferences/common/preferences.service.d.ts +1 -1
  657. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +8 -8
  658. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +6 -6
  659. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  660. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +1 -0
  661. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +1 -1
  662. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
  663. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  664. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +13 -13
  665. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.d.ts +1 -1
  666. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackup.service.d.ts +1 -2
  667. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyEditorService.service.d.ts +1 -1
  668. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +1 -1
  669. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyService.service.d.ts +1 -1
  670. package/vscode-dts/vscode.d.ts +5 -5
  671. package/vscode-dts/vscode.proposed.chatOutputRenderer.d.ts +86 -0
  672. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +142 -5
  673. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +25 -19
  674. package/vscode-dts/vscode.proposed.chatProvider.d.ts +2 -103
  675. package/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts +129 -0
  676. package/vscode-dts/vscode.proposed.d.ts +7 -0
  677. package/vscode-dts/vscode.proposed.dataChannels.d.ts +19 -0
  678. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +2 -0
  679. package/vscode-dts/vscode.proposed.languageModelToolResultAudience.d.ts +25 -0
  680. package/vscode-dts/vscode.proposed.scmProviderOptions.d.ts +39 -0
  681. package/vscode-dts/vscode.proposed.secretStorageKeys.d.ts +16 -0
  682. package/vscode-dts/vscode.proposed.taskExecutionTerminal.d.ts +15 -0
  683. package/workbench.d.ts +1 -1
  684. package/workers/editor.worker.js +17 -16
  685. package/vscode/src/vs/base/common/policy.d.ts +0 -8
  686. package/vscode/src/vs/editor/common/textModelEditReason.d.ts +0 -98
  687. package/vscode/src/vs/platform/assignment/common/assignment.d.ts +0 -33
@@ -3,7 +3,7 @@ import { localize } from '../../../nls.js';
3
3
  import { basename } from '../../../base/common/resources.js';
4
4
  import { URI } from '../../../base/common/uri.js';
5
5
  import { Emitter, Event } from '../../../base/common/event.js';
6
- import { Disposable, DisposableStore } from '../../../base/common/lifecycle.js';
6
+ import { Disposable, DisposableStore, dispose } from '../../../base/common/lifecycle.js';
7
7
  import { NoTreeViewError } from '../../common/views.js';
8
8
  import { asPromise } from '../../../base/common/async.js';
9
9
  import { ViewBadge, DataTransfer as DataTransfer$1, TreeItemCheckboxState, MarkdownString as MarkdownString$1, TreeItem, TreeItemCollapsibleState, ThemeIcon } from './extHostTypes.js';
@@ -32,25 +32,25 @@ function toTreeItemLabel(label, extension) {
32
32
  return undefined;
33
33
  }
34
34
  class ExtHostTreeViews extends Disposable {
35
- constructor(_proxy, commands, logService) {
35
+ constructor(_proxy, _commands, _logService) {
36
36
  super();
37
37
  this._proxy = _proxy;
38
- this.commands = commands;
39
- this.logService = logService;
40
- this.treeViews = ( new Map());
41
- this.treeDragAndDropService = ( new TreeViewsDnDService());
38
+ this._commands = _commands;
39
+ this._logService = _logService;
40
+ this._treeViews = ( new Map());
41
+ this._treeDragAndDropService = ( new TreeViewsDnDService());
42
42
  function isTreeViewConvertableItem(arg) {
43
43
  return arg && arg.$treeViewId && (arg.$treeItemHandle || arg.$selectedTreeItems || arg.$focusedTreeItem);
44
44
  }
45
- commands.registerArgumentProcessor({
45
+ _commands.registerArgumentProcessor({
46
46
  processArgument: arg => {
47
47
  if (isTreeViewConvertableItem(arg)) {
48
- return this.convertArgument(arg);
48
+ return this._convertArgument(arg);
49
49
  }
50
50
  else if (Array.isArray(arg) && (arg.length > 0)) {
51
51
  return ( arg.map(item => {
52
52
  if (isTreeViewConvertableItem(item)) {
53
- return this.convertArgument(item);
53
+ return this._convertArgument(item);
54
54
  }
55
55
  return item;
56
56
  }));
@@ -71,7 +71,7 @@ class ExtHostTreeViews extends Disposable {
71
71
  const dragMimeTypes = options.dragAndDropController?.dragMimeTypes ?? [];
72
72
  const hasHandleDrag = !!options.dragAndDropController?.handleDrag;
73
73
  const hasHandleDrop = !!options.dragAndDropController?.handleDrop;
74
- const treeView = this.createExtHostTreeView(viewId, options, extension);
74
+ const treeView = this._createExtHostTreeView(viewId, options, extension);
75
75
  const proxyOptions = { showCollapseAll: !!options.showCollapseAll, canSelectMany: !!options.canSelectMany, dropMimeTypes, dragMimeTypes, hasHandleDrag, hasHandleDrop, manuallyManageCheckboxes: !!options.manageCheckboxStateManually };
76
76
  const registerPromise = this._proxy.$registerTreeViewDataProvider(viewId, proxyOptions);
77
77
  const view = {
@@ -128,7 +128,7 @@ class ExtHostTreeViews extends Disposable {
128
128
  },
129
129
  dispose: async () => {
130
130
  await registerPromise;
131
- this.treeViews.delete(viewId);
131
+ this._treeViews.delete(viewId);
132
132
  treeView.dispose();
133
133
  }
134
134
  };
@@ -136,7 +136,7 @@ class ExtHostTreeViews extends Disposable {
136
136
  return view;
137
137
  }
138
138
  async $getChildren(treeViewId, treeItemHandles) {
139
- const treeView = this.treeViews.get(treeViewId);
139
+ const treeView = this._treeViews.get(treeViewId);
140
140
  if (!treeView) {
141
141
  return Promise.reject(( new NoTreeViewError(treeViewId)));
142
142
  }
@@ -155,7 +155,7 @@ class ExtHostTreeViews extends Disposable {
155
155
  return result;
156
156
  }
157
157
  async $handleDrop(destinationViewId, requestId, treeDataTransferDTO, targetItemHandle, token, operationUuid, sourceViewId, sourceTreeItemHandles) {
158
- const treeView = this.treeViews.get(destinationViewId);
158
+ const treeView = this._treeViews.get(destinationViewId);
159
159
  if (!treeView) {
160
160
  return Promise.reject(( new NoTreeViewError(destinationViewId)));
161
161
  }
@@ -163,12 +163,12 @@ class ExtHostTreeViews extends Disposable {
163
163
  return (await this._proxy.$resolveDropFileData(destinationViewId, requestId, dataItemIndex)).buffer;
164
164
  });
165
165
  if ((sourceViewId === destinationViewId) && sourceTreeItemHandles) {
166
- await this.addAdditionalTransferItems(treeDataTransfer, treeView, sourceTreeItemHandles, token, operationUuid);
166
+ await this._addAdditionalTransferItems(treeDataTransfer, treeView, sourceTreeItemHandles, token, operationUuid);
167
167
  }
168
168
  return treeView.onDrop(treeDataTransfer, targetItemHandle, token);
169
169
  }
170
- async addAdditionalTransferItems(treeDataTransfer, treeView, sourceTreeItemHandles, token, operationUuid) {
171
- const existingTransferOperation = this.treeDragAndDropService.removeDragOperationTransfer(operationUuid);
170
+ async _addAdditionalTransferItems(treeDataTransfer, treeView, sourceTreeItemHandles, token, operationUuid) {
171
+ const existingTransferOperation = this._treeDragAndDropService.removeDragOperationTransfer(operationUuid);
172
172
  if (existingTransferOperation) {
173
173
  (await existingTransferOperation)?.forEach((value, key) => {
174
174
  if (value) {
@@ -178,52 +178,52 @@ class ExtHostTreeViews extends Disposable {
178
178
  }
179
179
  else if (operationUuid && treeView.handleDrag) {
180
180
  const willDropPromise = treeView.handleDrag(sourceTreeItemHandles, treeDataTransfer, token);
181
- this.treeDragAndDropService.addDragOperationTransfer(operationUuid, willDropPromise);
181
+ this._treeDragAndDropService.addDragOperationTransfer(operationUuid, willDropPromise);
182
182
  await willDropPromise;
183
183
  }
184
184
  return treeDataTransfer;
185
185
  }
186
186
  async $handleDrag(sourceViewId, sourceTreeItemHandles, operationUuid, token) {
187
- const treeView = this.treeViews.get(sourceViewId);
187
+ const treeView = this._treeViews.get(sourceViewId);
188
188
  if (!treeView) {
189
189
  return Promise.reject(( new NoTreeViewError(sourceViewId)));
190
190
  }
191
- const treeDataTransfer = await this.addAdditionalTransferItems(new DataTransfer$1(), treeView, sourceTreeItemHandles, token, operationUuid);
191
+ const treeDataTransfer = await this._addAdditionalTransferItems(new DataTransfer$1(), treeView, sourceTreeItemHandles, token, operationUuid);
192
192
  if (!treeDataTransfer || token.isCancellationRequested) {
193
193
  return;
194
194
  }
195
195
  return DataTransfer.from(treeDataTransfer);
196
196
  }
197
197
  async $hasResolve(treeViewId) {
198
- const treeView = this.treeViews.get(treeViewId);
198
+ const treeView = this._treeViews.get(treeViewId);
199
199
  if (!treeView) {
200
200
  throw ( new NoTreeViewError(treeViewId));
201
201
  }
202
202
  return treeView.hasResolve;
203
203
  }
204
204
  $resolve(treeViewId, treeItemHandle, token) {
205
- const treeView = this.treeViews.get(treeViewId);
205
+ const treeView = this._treeViews.get(treeViewId);
206
206
  if (!treeView) {
207
207
  throw ( new NoTreeViewError(treeViewId));
208
208
  }
209
209
  return treeView.resolveTreeItem(treeItemHandle, token);
210
210
  }
211
211
  $setExpanded(treeViewId, treeItemHandle, expanded) {
212
- const treeView = this.treeViews.get(treeViewId);
212
+ const treeView = this._treeViews.get(treeViewId);
213
213
  if (!treeView) {
214
214
  throw ( new NoTreeViewError(treeViewId));
215
215
  }
216
216
  treeView.setExpanded(treeItemHandle, expanded);
217
217
  }
218
218
  $setSelectionAndFocus(treeViewId, selectedHandles, focusedHandle) {
219
- const treeView = this.treeViews.get(treeViewId);
219
+ const treeView = this._treeViews.get(treeViewId);
220
220
  if (!treeView) {
221
221
  throw ( new NoTreeViewError(treeViewId));
222
222
  }
223
223
  treeView.setSelectionAndFocus(selectedHandles, focusedHandle);
224
224
  }
225
225
  $setVisible(treeViewId, isVisible) {
226
- const treeView = this.treeViews.get(treeViewId);
226
+ const treeView = this._treeViews.get(treeViewId);
227
227
  if (!treeView) {
228
228
  if (!isVisible) {
229
229
  return;
@@ -233,26 +233,26 @@ class ExtHostTreeViews extends Disposable {
233
233
  treeView.setVisible(isVisible);
234
234
  }
235
235
  $changeCheckboxState(treeViewId, checkboxUpdate) {
236
- const treeView = this.treeViews.get(treeViewId);
236
+ const treeView = this._treeViews.get(treeViewId);
237
237
  if (!treeView) {
238
238
  throw ( new NoTreeViewError(treeViewId));
239
239
  }
240
240
  treeView.setCheckboxState(checkboxUpdate);
241
241
  }
242
- createExtHostTreeView(id, options, extension) {
242
+ _createExtHostTreeView(id, options, extension) {
243
243
  const treeView = this._register(( new ExtHostTreeView(
244
244
  id,
245
245
  options,
246
246
  this._proxy,
247
- this.commands.converter,
248
- this.logService,
247
+ this._commands.converter,
248
+ this._logService,
249
249
  extension
250
250
  )));
251
- this.treeViews.set(id, treeView);
251
+ this._treeViews.set(id, treeView);
252
252
  return treeView;
253
253
  }
254
- convertArgument(arg) {
255
- const treeView = this.treeViews.get(arg.$treeViewId);
254
+ _convertArgument(arg) {
255
+ const treeView = this._treeViews.get(arg.$treeViewId);
256
256
  const asItemHandle = arg;
257
257
  if (treeView && asItemHandle.$treeItemHandle) {
258
258
  return treeView.getExtensionElement(asItemHandle.$treeItemHandle);
@@ -270,16 +270,16 @@ class ExtHostTreeView extends Disposable {
270
270
  get visible() { return this._visible; }
271
271
  get selectedElements() { return ( this._selectedHandles.map(handle => this.getExtensionElement(handle))).filter(element => !isUndefinedOrNull(element)); }
272
272
  get focusedElement() { return (this._focusedHandle ? this.getExtensionElement(this._focusedHandle) : undefined); }
273
- constructor(viewId, options, proxy, commands, logService, extension) {
273
+ constructor(_viewId, options, _proxy, _commands, _logService, _extension) {
274
274
  super();
275
- this.viewId = viewId;
276
- this.proxy = proxy;
277
- this.commands = commands;
278
- this.logService = logService;
279
- this.extension = extension;
280
- this.roots = undefined;
281
- this.elements = ( new Map());
282
- this.nodes = ( new Map());
275
+ this._viewId = _viewId;
276
+ this._proxy = _proxy;
277
+ this._commands = _commands;
278
+ this._logService = _logService;
279
+ this._extension = _extension;
280
+ this._roots = undefined;
281
+ this._elements = ( new Map());
282
+ this._nodes = ( new Map());
283
283
  this._visible = false;
284
284
  this._selectedHandles = [];
285
285
  this._focusedHandle = undefined;
@@ -296,24 +296,25 @@ class ExtHostTreeView extends Disposable {
296
296
  this._onDidChangeCheckboxState = this._register(( new Emitter()));
297
297
  this.onDidChangeCheckboxState = this._onDidChangeCheckboxState.event;
298
298
  this._onDidChangeData = this._register(( new Emitter()));
299
- this.refreshPromise = Promise.resolve();
300
- this.refreshQueue = Promise.resolve();
299
+ this._refreshPromise = Promise.resolve();
300
+ this._refreshQueue = Promise.resolve();
301
+ this._nodesToClear = ( new Set());
301
302
  this._message = '';
302
303
  this._title = '';
303
304
  this._refreshCancellationSource = ( new CancellationTokenSource());
304
- if (extension.contributes && extension.contributes.views) {
305
- for (const location in extension.contributes.views) {
306
- for (const view of extension.contributes.views[location]) {
307
- if (view.id === viewId) {
305
+ if (_extension.contributes && _extension.contributes.views) {
306
+ for (const location in _extension.contributes.views) {
307
+ for (const view of _extension.contributes.views[location]) {
308
+ if (view.id === _viewId) {
308
309
  this._title = view.name;
309
310
  }
310
311
  }
311
312
  }
312
313
  }
313
- this.dataProvider = options.treeDataProvider;
314
- this.dndController = options.dragAndDropController;
315
- if (this.dataProvider.onDidChangeTreeData) {
316
- this._register(this.dataProvider.onDidChangeTreeData(elementOrElements => {
314
+ this._dataProvider = options.treeDataProvider;
315
+ this._dndController = options.dragAndDropController;
316
+ if (this._dataProvider.onDidChangeTreeData) {
317
+ this._register(this._dataProvider.onDidChangeTreeData(elementOrElements => {
317
318
  if (Array.isArray(elementOrElements) && elementOrElements.length === 0) {
318
319
  return;
319
320
  }
@@ -329,7 +330,7 @@ class ExtHostTreeView extends Disposable {
329
330
  if (current.element !== false) {
330
331
  if (!refreshingPromise) {
331
332
  refreshingPromise = ( new Promise(c => promiseCallback = c));
332
- this.refreshPromise = this.refreshPromise.then(() => refreshingPromise);
333
+ this._refreshPromise = this._refreshPromise.then(() => refreshingPromise);
333
334
  }
334
335
  if (Array.isArray(current.element)) {
335
336
  result.elements.push(...current.element);
@@ -345,50 +346,54 @@ class ExtHostTreeView extends Disposable {
345
346
  }, 200, true);
346
347
  this._register(onDidChangeData(({ message, elements }) => {
347
348
  if (elements.length) {
348
- this.refreshQueue = this.refreshQueue.then(() => {
349
+ this._refreshQueue = this._refreshQueue.then(() => {
349
350
  const _promiseCallback = promiseCallback;
350
351
  refreshingPromise = null;
351
- return this.refresh(elements).then(() => _promiseCallback());
352
+ const childrenToClear = Array.from(this._nodesToClear);
353
+ return this._refresh(elements).then(() => {
354
+ this._clearNodes(childrenToClear);
355
+ return _promiseCallback();
356
+ });
352
357
  });
353
358
  }
354
359
  if (message) {
355
- this.proxy.$setMessage(this.viewId, MarkdownString.fromStrict(this._message) ?? '');
360
+ this._proxy.$setMessage(this._viewId, MarkdownString.fromStrict(this._message) ?? '');
356
361
  }
357
362
  }));
358
363
  }
359
364
  async getChildren(parentHandle) {
360
365
  const parentElement = parentHandle ? this.getExtensionElement(parentHandle) : undefined;
361
366
  if (parentHandle && !parentElement) {
362
- this.logService.error(`No tree item with id \'${parentHandle}\' found.`);
367
+ this._logService.error(`No tree item with id \'${parentHandle}\' found.`);
363
368
  return Promise.resolve([]);
364
369
  }
365
- let childrenNodes = this.getChildrenNodes(parentHandle);
370
+ let childrenNodes = this._getChildrenNodes(parentHandle);
366
371
  if (!childrenNodes) {
367
- childrenNodes = await this.fetchChildrenNodes(parentElement);
372
+ childrenNodes = await this._fetchChildrenNodes(parentElement);
368
373
  }
369
374
  return childrenNodes ? ( childrenNodes.map(n => n.item)) : undefined;
370
375
  }
371
376
  getExtensionElement(treeItemHandle) {
372
- return this.elements.get(treeItemHandle);
377
+ return this._elements.get(treeItemHandle);
373
378
  }
374
379
  reveal(element, options) {
375
380
  options = options ? options : { select: true, focus: false };
376
381
  const select = isUndefinedOrNull(options.select) ? true : options.select;
377
382
  const focus = isUndefinedOrNull(options.focus) ? false : options.focus;
378
383
  const expand = isUndefinedOrNull(options.expand) ? false : options.expand;
379
- if (typeof this.dataProvider.getParent !== 'function') {
384
+ if (typeof this._dataProvider.getParent !== 'function') {
380
385
  return Promise.reject(( new Error(
381
386
  `Required registered TreeDataProvider to implement 'getParent' method to access 'reveal' method`
382
387
  )));
383
388
  }
384
389
  if (element) {
385
- return this.refreshPromise
386
- .then(() => this.resolveUnknownParentChain(element))
387
- .then(parentChain => this.resolveTreeNode(element, parentChain[parentChain.length - 1])
388
- .then(treeNode => this.proxy.$reveal(this.viewId, { item: treeNode.item, parentChain: ( parentChain.map(p => p.item)) }, { select, focus, expand })), error => this.logService.error(error));
390
+ return this._refreshPromise
391
+ .then(() => this._resolveUnknownParentChain(element))
392
+ .then(parentChain => this._resolveTreeNode(element, parentChain[parentChain.length - 1])
393
+ .then(treeNode => this._proxy.$reveal(this._viewId, { item: treeNode.item, parentChain: ( parentChain.map(p => p.item)) }, { select, focus, expand })), error => this._logService.error(error));
389
394
  }
390
395
  else {
391
- return this.proxy.$reveal(this.viewId, undefined, { select, focus, expand });
396
+ return this._proxy.$reveal(this._viewId, undefined, { select, focus, expand });
392
397
  }
393
398
  }
394
399
  get message() {
@@ -403,14 +408,14 @@ class ExtHostTreeView extends Disposable {
403
408
  }
404
409
  set title(title) {
405
410
  this._title = title;
406
- this.proxy.$setTitle(this.viewId, title, this._description);
411
+ this._proxy.$setTitle(this._viewId, title, this._description);
407
412
  }
408
413
  get description() {
409
414
  return this._description;
410
415
  }
411
416
  set description(description) {
412
417
  this._description = description;
413
- this.proxy.$setTitle(this.viewId, this._title, description);
418
+ this._proxy.$setTitle(this._viewId, this._title, description);
414
419
  }
415
420
  get badge() {
416
421
  return this._badge;
@@ -421,7 +426,7 @@ class ExtHostTreeView extends Disposable {
421
426
  return;
422
427
  }
423
428
  this._badge = ViewBadge$1.from(badge);
424
- this.proxy.$setBadge(this.viewId, badge);
429
+ this._proxy.$setBadge(this._viewId, badge);
425
430
  }
426
431
  setExpanded(treeItemHandle, expanded) {
427
432
  const element = this.getExtensionElement(treeItemHandle);
@@ -458,7 +463,7 @@ class ExtHostTreeView extends Disposable {
458
463
  if (extensionItem) {
459
464
  return {
460
465
  extensionItem: extensionItem,
461
- treeItem: await this.dataProvider.getTreeItem(extensionItem),
466
+ treeItem: await this._dataProvider.getTreeItem(extensionItem),
462
467
  newState: checkboxUpdate.newState ? TreeItemCheckboxState.Checked : TreeItemCheckboxState.Unchecked
463
468
  };
464
469
  }
@@ -477,118 +482,118 @@ class ExtHostTreeView extends Disposable {
477
482
  extensionTreeItems.push(extensionItem);
478
483
  }
479
484
  }
480
- if (!this.dndController?.handleDrag || (extensionTreeItems.length === 0)) {
485
+ if (!this._dndController?.handleDrag || (extensionTreeItems.length === 0)) {
481
486
  return;
482
487
  }
483
- await this.dndController.handleDrag(extensionTreeItems, treeDataTransfer, token);
488
+ await this._dndController.handleDrag(extensionTreeItems, treeDataTransfer, token);
484
489
  return treeDataTransfer;
485
490
  }
486
491
  get hasHandleDrag() {
487
- return !!this.dndController?.handleDrag;
492
+ return !!this._dndController?.handleDrag;
488
493
  }
489
494
  async onDrop(treeDataTransfer, targetHandleOrNode, token) {
490
495
  const target = targetHandleOrNode ? this.getExtensionElement(targetHandleOrNode) : undefined;
491
- if ((!target && targetHandleOrNode) || !this.dndController?.handleDrop) {
496
+ if ((!target && targetHandleOrNode) || !this._dndController?.handleDrop) {
492
497
  return;
493
498
  }
494
- return asPromise(() => this.dndController?.handleDrop
495
- ? this.dndController.handleDrop(target, treeDataTransfer, token)
499
+ return asPromise(() => this._dndController?.handleDrop
500
+ ? this._dndController.handleDrop(target, treeDataTransfer, token)
496
501
  : undefined);
497
502
  }
498
503
  get hasResolve() {
499
- return !!this.dataProvider.resolveTreeItem;
504
+ return !!this._dataProvider.resolveTreeItem;
500
505
  }
501
506
  async resolveTreeItem(treeItemHandle, token) {
502
- if (!this.dataProvider.resolveTreeItem) {
507
+ if (!this._dataProvider.resolveTreeItem) {
503
508
  return;
504
509
  }
505
- const element = this.elements.get(treeItemHandle);
510
+ const element = this._elements.get(treeItemHandle);
506
511
  if (element) {
507
- const node = this.nodes.get(element);
512
+ const node = this._nodes.get(element);
508
513
  if (node) {
509
- const resolve = (await this.dataProvider.resolveTreeItem(node.extensionItem, element, token)) ?? node.extensionItem;
510
- this.validateTreeItem(resolve);
511
- node.item.tooltip = this.getTooltip(resolve.tooltip);
512
- node.item.command = this.getCommand(node.disposableStore, resolve.command);
514
+ const resolve = (await this._dataProvider.resolveTreeItem(node.extensionItem, element, token)) ?? node.extensionItem;
515
+ this._validateTreeItem(resolve);
516
+ node.item.tooltip = this._getTooltip(resolve.tooltip);
517
+ node.item.command = this._getCommand(node.disposableStore, resolve.command);
513
518
  return node.item;
514
519
  }
515
520
  }
516
521
  return;
517
522
  }
518
- resolveUnknownParentChain(element) {
519
- return this.resolveParent(element)
523
+ _resolveUnknownParentChain(element) {
524
+ return this._resolveParent(element)
520
525
  .then((parent) => {
521
526
  if (!parent) {
522
527
  return Promise.resolve([]);
523
528
  }
524
- return this.resolveUnknownParentChain(parent)
525
- .then(result => this.resolveTreeNode(parent, result[result.length - 1])
529
+ return this._resolveUnknownParentChain(parent)
530
+ .then(result => this._resolveTreeNode(parent, result[result.length - 1])
526
531
  .then(parentNode => {
527
532
  result.push(parentNode);
528
533
  return result;
529
534
  }));
530
535
  });
531
536
  }
532
- resolveParent(element) {
533
- const node = this.nodes.get(element);
537
+ _resolveParent(element) {
538
+ const node = this._nodes.get(element);
534
539
  if (node) {
535
- return Promise.resolve(node.parent ? this.elements.get(node.parent.item.handle) : undefined);
540
+ return Promise.resolve(node.parent ? this._elements.get(node.parent.item.handle) : undefined);
536
541
  }
537
- return asPromise(() => this.dataProvider.getParent(element));
542
+ return asPromise(() => this._dataProvider.getParent(element));
538
543
  }
539
- resolveTreeNode(element, parent) {
540
- const node = this.nodes.get(element);
544
+ _resolveTreeNode(element, parent) {
545
+ const node = this._nodes.get(element);
541
546
  if (node) {
542
547
  return Promise.resolve(node);
543
548
  }
544
- return asPromise(() => this.dataProvider.getTreeItem(element))
545
- .then(extTreeItem => this.createHandle(element, extTreeItem, parent, true))
549
+ return asPromise(() => this._dataProvider.getTreeItem(element))
550
+ .then(extTreeItem => this._createHandle(element, extTreeItem, parent, true))
546
551
  .then(handle => this.getChildren(parent ? parent.item.handle : undefined)
547
552
  .then(() => {
548
553
  const cachedElement = this.getExtensionElement(handle);
549
554
  if (cachedElement) {
550
- const node = this.nodes.get(cachedElement);
555
+ const node = this._nodes.get(cachedElement);
551
556
  if (node) {
552
557
  return Promise.resolve(node);
553
558
  }
554
559
  }
555
560
  throw ( new Error(
556
- `Cannot resolve tree item for element ${handle} from extension ${this.extension.identifier.value}`
561
+ `Cannot resolve tree item for element ${handle} from extension ${this._extension.identifier.value}`
557
562
  ));
558
563
  }));
559
564
  }
560
- getChildrenNodes(parentNodeOrHandle) {
565
+ _getChildrenNodes(parentNodeOrHandle) {
561
566
  if (parentNodeOrHandle) {
562
567
  let parentNode;
563
568
  if (typeof parentNodeOrHandle === 'string') {
564
569
  const parentElement = this.getExtensionElement(parentNodeOrHandle);
565
- parentNode = parentElement ? this.nodes.get(parentElement) : undefined;
570
+ parentNode = parentElement ? this._nodes.get(parentElement) : undefined;
566
571
  }
567
572
  else {
568
573
  parentNode = parentNodeOrHandle;
569
574
  }
570
575
  return parentNode ? parentNode.children || undefined : undefined;
571
576
  }
572
- return this.roots;
577
+ return this._roots;
573
578
  }
574
- async fetchChildrenNodes(parentElement) {
575
- this.clearChildren(parentElement);
579
+ async _fetchChildrenNodes(parentElement) {
580
+ this._addChildrenToClear(parentElement);
576
581
  const cts = ( new CancellationTokenSource(this._refreshCancellationSource.token));
577
582
  try {
578
- const parentNode = parentElement ? this.nodes.get(parentElement) : undefined;
579
- const elements = await this.dataProvider.getChildren(parentElement);
583
+ const parentNode = parentElement ? this._nodes.get(parentElement) : undefined;
584
+ const elements = await this._dataProvider.getChildren(parentElement);
580
585
  if (cts.token.isCancellationRequested) {
581
586
  return undefined;
582
587
  }
583
588
  const coalescedElements = coalesce(elements || []);
584
589
  const treeItems = await Promise.all(( coalesce(coalescedElements).map(element => {
585
- return this.dataProvider.getTreeItem(element);
590
+ return this._dataProvider.getTreeItem(element);
586
591
  })));
587
592
  if (cts.token.isCancellationRequested) {
588
593
  return undefined;
589
594
  }
590
595
  const items = ( treeItems.map(
591
- (item, index) => item ? this.createAndRegisterTreeNode(coalescedElements[index], item, parentNode) : null
596
+ (item, index) => item ? this._createAndRegisterTreeNode(coalescedElements[index], item, parentNode) : null
592
597
  ));
593
598
  return coalesce(items);
594
599
  }
@@ -596,31 +601,31 @@ class ExtHostTreeView extends Disposable {
596
601
  cts.dispose();
597
602
  }
598
603
  }
599
- refresh(elements) {
604
+ _refresh(elements) {
600
605
  const hasRoot = ( elements.some(element => !element));
601
606
  if (hasRoot) {
602
607
  this._refreshCancellationSource.dispose(true);
603
608
  this._refreshCancellationSource = ( new CancellationTokenSource());
604
- this.clearAll();
605
- return this.proxy.$refresh(this.viewId);
609
+ this._addChildrenToClear();
610
+ return this._proxy.$refresh(this._viewId);
606
611
  }
607
612
  else {
608
- const handlesToRefresh = this.getHandlesToRefresh(elements);
613
+ const handlesToRefresh = this._getHandlesToRefresh(elements);
609
614
  if (handlesToRefresh.length) {
610
- return this.refreshHandles(handlesToRefresh);
615
+ return this._refreshHandles(handlesToRefresh);
611
616
  }
612
617
  }
613
618
  return Promise.resolve(undefined);
614
619
  }
615
- getHandlesToRefresh(elements) {
620
+ _getHandlesToRefresh(elements) {
616
621
  const elementsToUpdate = ( new Set());
617
- const elementNodes = ( elements.map(element => this.nodes.get(element)));
622
+ const elementNodes = ( elements.map(element => this._nodes.get(element)));
618
623
  for (const elementNode of elementNodes) {
619
624
  if (elementNode && !( elementsToUpdate.has(elementNode.item.handle))) {
620
625
  let currentNode = elementNode;
621
626
  while (currentNode && currentNode.parent && elementNodes.findIndex(node => currentNode && currentNode.parent && node && node.item.handle === currentNode.parent.item.handle) === -1) {
622
- const parentElement = this.elements.get(currentNode.parent.item.handle);
623
- currentNode = parentElement ? this.nodes.get(parentElement) : undefined;
627
+ const parentElement = this._elements.get(currentNode.parent.item.handle);
628
+ currentNode = parentElement ? this._nodes.get(parentElement) : undefined;
624
629
  }
625
630
  if (currentNode && !currentNode.parent) {
626
631
  elementsToUpdate.add(elementNode.item.handle);
@@ -629,9 +634,9 @@ class ExtHostTreeView extends Disposable {
629
634
  }
630
635
  const handlesToUpdate = [];
631
636
  elementsToUpdate.forEach((handle) => {
632
- const element = this.elements.get(handle);
637
+ const element = this._elements.get(handle);
633
638
  if (element) {
634
- const node = this.nodes.get(element);
639
+ const node = this._nodes.get(element);
635
640
  if (node && (!node.parent || !( elementsToUpdate.has(node.parent.item.handle)))) {
636
641
  handlesToUpdate.push(handle);
637
642
  }
@@ -639,27 +644,27 @@ class ExtHostTreeView extends Disposable {
639
644
  });
640
645
  return handlesToUpdate;
641
646
  }
642
- refreshHandles(itemHandles) {
647
+ _refreshHandles(itemHandles) {
643
648
  const itemsToRefresh = {};
644
- return Promise.all(( itemHandles.map(treeItemHandle => this.refreshNode(treeItemHandle)
649
+ return Promise.all(( itemHandles.map(treeItemHandle => this._refreshNode(treeItemHandle)
645
650
  .then(node => {
646
651
  if (node) {
647
652
  itemsToRefresh[treeItemHandle] = node.item;
648
653
  }
649
654
  }))))
650
- .then(() => ( Object.keys(itemsToRefresh)).length ? this.proxy.$refresh(this.viewId, itemsToRefresh) : undefined);
655
+ .then(() => ( Object.keys(itemsToRefresh)).length ? this._proxy.$refresh(this._viewId, itemsToRefresh) : undefined);
651
656
  }
652
- refreshNode(treeItemHandle) {
657
+ _refreshNode(treeItemHandle) {
653
658
  const extElement = this.getExtensionElement(treeItemHandle);
654
659
  if (extElement) {
655
- const existing = this.nodes.get(extElement);
660
+ const existing = this._nodes.get(extElement);
656
661
  if (existing) {
657
- this.clearChildren(extElement);
658
- return asPromise(() => this.dataProvider.getTreeItem(extElement))
662
+ this._addChildrenToClear(extElement);
663
+ return asPromise(() => this._dataProvider.getTreeItem(extElement))
659
664
  .then(extTreeItem => {
660
665
  if (extTreeItem) {
661
- const newNode = this.createTreeNode(extElement, extTreeItem, existing.parent);
662
- this.updateNodeCache(extElement, newNode, existing, existing.parent);
666
+ const newNode = this._createTreeNode(extElement, extTreeItem, existing.parent);
667
+ this._updateNodeCache(extElement, newNode, existing, existing.parent);
663
668
  existing.dispose();
664
669
  return newNode;
665
670
  }
@@ -669,25 +674,25 @@ class ExtHostTreeView extends Disposable {
669
674
  }
670
675
  return Promise.resolve(null);
671
676
  }
672
- createAndRegisterTreeNode(element, extTreeItem, parentNode) {
673
- const node = this.createTreeNode(element, extTreeItem, parentNode);
674
- if (extTreeItem.id && ( this.elements.has(node.item.handle))) {
675
- throw ( new Error(( localize(2610, 'Element with id {0} is already registered', extTreeItem.id))));
677
+ _createAndRegisterTreeNode(element, extTreeItem, parentNode) {
678
+ const node = this._createTreeNode(element, extTreeItem, parentNode);
679
+ if (extTreeItem.id && ( this._elements.has(node.item.handle))) {
680
+ throw ( new Error(( localize(2637, 'Element with id {0} is already registered', extTreeItem.id))));
676
681
  }
677
- this.addNodeToCache(element, node);
678
- this.addNodeToParentCache(node, parentNode);
682
+ this._addNodeToCache(element, node);
683
+ this._addNodeToParentCache(node, parentNode);
679
684
  return node;
680
685
  }
681
- getTooltip(tooltip) {
686
+ _getTooltip(tooltip) {
682
687
  if (MarkdownString$1.isMarkdownString(tooltip)) {
683
688
  return MarkdownString.from(tooltip);
684
689
  }
685
690
  return tooltip;
686
691
  }
687
- getCommand(disposable, command) {
688
- return command ? { ...this.commands.toInternal(command, disposable), originalId: command.command } : undefined;
692
+ _getCommand(disposable, command) {
693
+ return command ? { ...this._commands.toInternal(command, disposable), originalId: command.command } : undefined;
689
694
  }
690
- getCheckbox(extensionTreeItem) {
695
+ _getCheckbox(extensionTreeItem) {
691
696
  if (extensionTreeItem.checkboxState === undefined) {
692
697
  return undefined;
693
698
  }
@@ -704,33 +709,33 @@ class ExtHostTreeView extends Disposable {
704
709
  }
705
710
  return { isChecked: checkboxState === TreeItemCheckboxState.Checked, tooltip, accessibilityInformation };
706
711
  }
707
- validateTreeItem(extensionTreeItem) {
708
- if (!TreeItem.isTreeItem(extensionTreeItem, this.extension)) {
712
+ _validateTreeItem(extensionTreeItem) {
713
+ if (!TreeItem.isTreeItem(extensionTreeItem, this._extension)) {
709
714
  throw ( new Error(
710
- `Extension ${this.extension.identifier.value} has provided an invalid tree item.`
715
+ `Extension ${this._extension.identifier.value} has provided an invalid tree item.`
711
716
  ));
712
717
  }
713
718
  }
714
- createTreeNode(element, extensionTreeItem, parent) {
715
- this.validateTreeItem(extensionTreeItem);
719
+ _createTreeNode(element, extensionTreeItem, parent) {
720
+ this._validateTreeItem(extensionTreeItem);
716
721
  const disposableStore = this._register(( new DisposableStore()));
717
- const handle = this.createHandle(element, extensionTreeItem, parent);
718
- const icon = this.getLightIconPath(extensionTreeItem);
722
+ const handle = this._createHandle(element, extensionTreeItem, parent);
723
+ const icon = this._getLightIconPath(extensionTreeItem);
719
724
  const item = {
720
725
  handle,
721
726
  parentHandle: parent ? parent.item.handle : undefined,
722
727
  label: toTreeItemLabel(extensionTreeItem.label),
723
728
  description: extensionTreeItem.description,
724
729
  resourceUri: extensionTreeItem.resourceUri,
725
- tooltip: this.getTooltip(extensionTreeItem.tooltip),
726
- command: this.getCommand(disposableStore, extensionTreeItem.command),
730
+ tooltip: this._getTooltip(extensionTreeItem.tooltip),
731
+ command: this._getCommand(disposableStore, extensionTreeItem.command),
727
732
  contextValue: extensionTreeItem.contextValue,
728
733
  icon,
729
- iconDark: this.getDarkIconPath(extensionTreeItem) || icon,
730
- themeIcon: this.getThemeIcon(extensionTreeItem),
734
+ iconDark: this._getDarkIconPath(extensionTreeItem) || icon,
735
+ themeIcon: this._getThemeIcon(extensionTreeItem),
731
736
  collapsibleState: isUndefinedOrNull(extensionTreeItem.collapsibleState) ? TreeItemCollapsibleState.None : extensionTreeItem.collapsibleState,
732
737
  accessibilityInformation: extensionTreeItem.accessibilityInformation,
733
- checkbox: this.getCheckbox(extensionTreeItem),
738
+ checkbox: this._getCheckbox(extensionTreeItem),
734
739
  };
735
740
  return {
736
741
  item,
@@ -741,10 +746,10 @@ class ExtHostTreeView extends Disposable {
741
746
  dispose() { disposableStore.dispose(); }
742
747
  };
743
748
  }
744
- getThemeIcon(extensionTreeItem) {
749
+ _getThemeIcon(extensionTreeItem) {
745
750
  return extensionTreeItem.iconPath instanceof ThemeIcon ? extensionTreeItem.iconPath : undefined;
746
751
  }
747
- createHandle(element, { id, label, resourceUri }, parent, returnFirst) {
752
+ _createHandle(element, { id, label, resourceUri }, parent, returnFirst) {
748
753
  if (id) {
749
754
  return `${ExtHostTreeView.ID_HANDLE_PREFIX}/${id}`;
750
755
  }
@@ -752,59 +757,59 @@ class ExtHostTreeView extends Disposable {
752
757
  const prefix = parent ? parent.item.handle : ExtHostTreeView.LABEL_HANDLE_PREFIX;
753
758
  let elementId = treeItemLabel ? treeItemLabel.label : resourceUri ? basename(resourceUri) : '';
754
759
  elementId = elementId.indexOf('/') !== -1 ? elementId.replace('/', '//') : elementId;
755
- const existingHandle = ( this.nodes.has(element)) ? this.nodes.get(element).item.handle : undefined;
756
- const childrenNodes = (this.getChildrenNodes(parent) || []);
760
+ const existingHandle = ( this._nodes.has(element)) ? this._nodes.get(element).item.handle : undefined;
761
+ const childrenNodes = (this._getChildrenNodes(parent) || []);
757
762
  let handle;
758
763
  let counter = 0;
759
764
  do {
760
765
  handle = `${prefix}/${counter}:${elementId}`;
761
- if (returnFirst || !( this.elements.has(handle)) || existingHandle === handle) {
766
+ if (returnFirst || !( this._elements.has(handle)) || existingHandle === handle) {
762
767
  break;
763
768
  }
764
769
  counter++;
765
770
  } while (counter <= childrenNodes.length);
766
771
  return handle;
767
772
  }
768
- getLightIconPath(extensionTreeItem) {
773
+ _getLightIconPath(extensionTreeItem) {
769
774
  if (extensionTreeItem.iconPath && !(extensionTreeItem.iconPath instanceof ThemeIcon)) {
770
775
  if (typeof extensionTreeItem.iconPath === 'string'
771
776
  || URI.isUri(extensionTreeItem.iconPath)) {
772
- return this.getIconPath(extensionTreeItem.iconPath);
777
+ return this._getIconPath(extensionTreeItem.iconPath);
773
778
  }
774
- return this.getIconPath(extensionTreeItem.iconPath.light);
779
+ return this._getIconPath(extensionTreeItem.iconPath.light);
775
780
  }
776
781
  return undefined;
777
782
  }
778
- getDarkIconPath(extensionTreeItem) {
783
+ _getDarkIconPath(extensionTreeItem) {
779
784
  if (extensionTreeItem.iconPath && !(extensionTreeItem.iconPath instanceof ThemeIcon) && extensionTreeItem.iconPath.dark) {
780
- return this.getIconPath(extensionTreeItem.iconPath.dark);
785
+ return this._getIconPath(extensionTreeItem.iconPath.dark);
781
786
  }
782
787
  return undefined;
783
788
  }
784
- getIconPath(iconPath) {
789
+ _getIconPath(iconPath) {
785
790
  if (URI.isUri(iconPath)) {
786
791
  return iconPath;
787
792
  }
788
793
  return URI.file(iconPath);
789
794
  }
790
- addNodeToCache(element, node) {
791
- this.elements.set(node.item.handle, element);
792
- this.nodes.set(element, node);
795
+ _addNodeToCache(element, node) {
796
+ this._elements.set(node.item.handle, element);
797
+ this._nodes.set(element, node);
793
798
  }
794
- updateNodeCache(element, newNode, existing, parentNode) {
795
- this.elements.delete(newNode.item.handle);
796
- this.nodes.delete(element);
799
+ _updateNodeCache(element, newNode, existing, parentNode) {
800
+ this._elements.delete(newNode.item.handle);
801
+ this._nodes.delete(element);
797
802
  if (newNode.item.handle !== existing.item.handle) {
798
- this.elements.delete(existing.item.handle);
803
+ this._elements.delete(existing.item.handle);
799
804
  }
800
- this.addNodeToCache(element, newNode);
801
- const childrenNodes = (this.getChildrenNodes(parentNode) || []);
805
+ this._addNodeToCache(element, newNode);
806
+ const childrenNodes = (this._getChildrenNodes(parentNode) || []);
802
807
  const childNode = childrenNodes.filter(c => c.item.handle === existing.item.handle)[0];
803
808
  if (childNode) {
804
809
  childrenNodes.splice(childrenNodes.indexOf(childNode), 1, newNode);
805
810
  }
806
811
  }
807
- addNodeToParentCache(node, parentNode) {
812
+ _addNodeToParentCache(node, parentNode) {
808
813
  if (parentNode) {
809
814
  if (!parentNode.children) {
810
815
  parentNode.children = [];
@@ -812,21 +817,24 @@ class ExtHostTreeView extends Disposable {
812
817
  parentNode.children.push(node);
813
818
  }
814
819
  else {
815
- if (!this.roots) {
816
- this.roots = [];
820
+ if (!this._roots) {
821
+ this._roots = [];
817
822
  }
818
- this.roots.push(node);
823
+ this._roots.push(node);
819
824
  }
820
825
  }
821
- clearChildren(parentElement) {
826
+ _addChildrenToClear(parentElement) {
822
827
  if (parentElement) {
823
- const node = this.nodes.get(parentElement);
828
+ const node = this._nodes.get(parentElement);
824
829
  if (node) {
825
830
  if (node.children) {
826
831
  for (const child of node.children) {
827
- const childElement = this.elements.get(child.item.handle);
832
+ this._nodesToClear.add(child);
833
+ const childElement = this._elements.get(child.item.handle);
828
834
  if (childElement) {
829
- this.clear(childElement);
835
+ this._addChildrenToClear(childElement);
836
+ this._nodes.delete(childElement);
837
+ this._elements.delete(child.item.handle);
830
838
  }
831
839
  }
832
840
  }
@@ -834,36 +842,33 @@ class ExtHostTreeView extends Disposable {
834
842
  }
835
843
  }
836
844
  else {
837
- this.clearAll();
845
+ this._addAllToClear();
838
846
  }
839
847
  }
840
- clear(element) {
841
- const node = this.nodes.get(element);
842
- if (node) {
843
- if (node.children) {
844
- for (const child of node.children) {
845
- const childElement = this.elements.get(child.item.handle);
846
- if (childElement) {
847
- this.clear(childElement);
848
- }
849
- }
850
- }
851
- this.nodes.delete(element);
852
- this.elements.delete(node.item.handle);
853
- node.dispose();
854
- }
848
+ _addAllToClear() {
849
+ this._roots = undefined;
850
+ this._nodes.forEach(node => {
851
+ this._nodesToClear.add(node);
852
+ });
853
+ this._nodes.clear();
854
+ this._elements.clear();
855
+ }
856
+ _clearNodes(nodes) {
857
+ dispose(nodes);
855
858
  }
856
- clearAll() {
857
- this.roots = undefined;
858
- this.elements.clear();
859
- this.nodes.forEach(node => node.dispose());
860
- this.nodes.clear();
859
+ _clearAll() {
860
+ this._roots = undefined;
861
+ this._elements.clear();
862
+ dispose(( this._nodes.values()));
863
+ this._nodes.clear();
864
+ dispose(this._nodesToClear);
865
+ this._nodesToClear.clear();
861
866
  }
862
867
  dispose() {
863
868
  super.dispose();
864
869
  this._refreshCancellationSource.dispose();
865
- this.clearAll();
866
- this.proxy.$disposeTree(this.viewId);
870
+ this._clearAll();
871
+ this._proxy.$disposeTree(this._viewId);
867
872
  }
868
873
  }
869
874