@codingame/monaco-vscode-api 19.1.4 → 20.0.1

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
@@ -333,13 +333,13 @@ class InputBox extends Widget {
333
333
  }
334
334
  div = append(container, $('.monaco-inputbox-container'));
335
335
  layout();
336
- const renderOptions = {
337
- inline: true,
338
- className: 'monaco-inputbox-message'
339
- };
340
- const spanElement = (this.message.formatContent
341
- ? renderFormattedText(this.message.content, renderOptions)
342
- : renderText(this.message.content, renderOptions));
336
+ const spanElement = $('span.monaco-inputbox-message');
337
+ if (this.message.formatContent) {
338
+ renderFormattedText(this.message.content, undefined, spanElement);
339
+ }
340
+ else {
341
+ renderText(this.message.content, undefined, spanElement);
342
+ }
343
343
  spanElement.classList.add(this.classForType(this.message.type));
344
344
  const styles = this.stylesForType(this.message.type);
345
345
  spanElement.style.backgroundColor = styles.background ?? '';
@@ -1,6 +1,6 @@
1
1
  import { Event } from "../../../common/event.js";
2
2
  import { IDisposable } from "../../../common/lifecycle.js";
3
- import { IPagedModel } from "@codingame/monaco-vscode-9ed6fe06-a052-57c2-a234-5d9b94d2e7e0-common/vscode/vs/base/common/paging";
3
+ import { IPagedModel } from "@codingame/monaco-vscode-62190c26-af1c-5f7a-a364-e05a59cfb7c7-common/vscode/vs/base/common/paging";
4
4
  import { ScrollbarVisibility } from "../../../common/scrollable.js";
5
5
  import { IListContextMenuEvent, IListEvent, IListMouseEvent, IListRenderer, IListVirtualDelegate } from "./list.js";
6
6
  import { IListAccessibilityProvider, IListOptionsUpdate, IListStyles, List, TypeNavigationMode } from "./listWidget.js";
@@ -8,6 +8,7 @@ import { ScrollbarVisibility, ScrollEvent } from "../../../common/scrollable.js"
8
8
  import { ISpliceable } from "../../../common/sequence.js";
9
9
  import { IIdentityProvider, IKeyboardNavigationDelegate, IKeyboardNavigationLabelProvider, IListContextMenuEvent, IListDragAndDrop, IListEvent, IListGestureEvent, IListMouseEvent, IListRenderer, IListTouchEvent, IListVirtualDelegate } from "./list.js";
10
10
  import { IListView, IListViewAccessibilityProvider, IListViewOptions, IListViewOptionsUpdate } from "./listView.js";
11
+ import { IMouseWheelEvent } from "../../mouseEvent.js";
11
12
  import { IObservable } from "../../../common/observable.js";
12
13
  export declare function isMonacoEditor(e: HTMLElement): boolean;
13
14
  export declare function isMonacoCustomToggle(e: HTMLElement): boolean;
@@ -228,6 +229,7 @@ export declare class List<T> implements ISpliceable<T>, IDisposable {
228
229
  getElementID(index: number): string;
229
230
  getElementTop(index: number): number;
230
231
  style(styles: IListStyles): void;
232
+ delegateScrollFromMouseWheelEvent(browserEvent: IMouseWheelEvent): void;
231
233
  private toListEvent;
232
234
  private _onFocusChange;
233
235
  private onDidChangeActiveDescendant;
@@ -1469,6 +1469,9 @@ class List {
1469
1469
  style(styles) {
1470
1470
  this.styleController.style(styles);
1471
1471
  }
1472
+ delegateScrollFromMouseWheelEvent(browserEvent) {
1473
+ this.view.delegateScrollFromMouseWheelEvent(browserEvent);
1474
+ }
1472
1475
  toListEvent({ indexes, browserEvent }) {
1473
1476
  return { indexes, elements: ( indexes.map(i => this.view.element(i))), browserEvent };
1474
1477
  }
@@ -140,11 +140,15 @@ class AbstractScrollbar extends Widget {
140
140
  offsetX = e.pageX - domNodePosition.left;
141
141
  offsetY = e.pageY - domNodePosition.top;
142
142
  }
143
- const offset = this._pointerDownRelativePosition(offsetX, offsetY);
144
- this._setDesiredScrollPositionNow(this._scrollByPage
145
- ? this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(offset)
146
- : this._scrollbarState.getDesiredScrollPositionFromOffset(offset));
147
- if (e.button === 0) {
143
+ const isMouse = (e.pointerType === 'mouse');
144
+ const isLeftClick = (e.button === 0);
145
+ if (isLeftClick || !isMouse) {
146
+ const offset = this._pointerDownRelativePosition(offsetX, offsetY);
147
+ this._setDesiredScrollPositionNow(this._scrollByPage
148
+ ? this._scrollbarState.getDesiredScrollPositionFromOffsetPaged(offset)
149
+ : this._scrollbarState.getDesiredScrollPositionFromOffset(offset));
150
+ }
151
+ if (isLeftClick) {
148
152
  e.preventDefault();
149
153
  this._sliderPointerDown(e);
150
154
  }
@@ -36,6 +36,8 @@ export declare abstract class AbstractScrollableElement extends Widget {
36
36
  private readonly _hideTimeout;
37
37
  private _shouldRender;
38
38
  private _revealOnScroll;
39
+ private _inertialTimeout;
40
+ private _inertialSpeed;
39
41
  private readonly _onScroll;
40
42
  readonly onScroll: Event<ScrollEvent>;
41
43
  private readonly _onWillScroll;
@@ -52,6 +54,7 @@ export declare abstract class AbstractScrollableElement extends Widget {
52
54
  updateOptions(newOptions: ScrollableElementChangeOptions): void;
53
55
  setRevealOnScroll(value: boolean): void;
54
56
  delegateScrollFromMouseWheelEvent(browserEvent: IMouseWheelEvent): void;
57
+ private _periodicSync;
55
58
  private _setListeningToMouseWheel;
56
59
  private _onMouseWheel;
57
60
  private _onDidScroll;
@@ -106,8 +106,9 @@ class MouseWheelClassifier {
106
106
  return Math.min(Math.max(score, 0), 1);
107
107
  }
108
108
  _isAlmostInt(value) {
109
+ const epsilon = Number.EPSILON * 100;
109
110
  const delta = Math.abs(Math.round(value) - value);
110
- return (delta < 0.01);
111
+ return (delta < 0.01 + epsilon);
111
112
  }
112
113
  }
113
114
  class AbstractScrollableElement extends Widget {
@@ -116,6 +117,8 @@ class AbstractScrollableElement extends Widget {
116
117
  }
117
118
  constructor(element, options, scrollable) {
118
119
  super();
120
+ this._inertialTimeout = null;
121
+ this._inertialSpeed = { X: 0, Y: 0 };
119
122
  this._onScroll = this._register(( new Emitter()));
120
123
  this.onScroll = this._onScroll.event;
121
124
  this._onWillScroll = this._register(( new Emitter()));
@@ -172,6 +175,10 @@ class AbstractScrollableElement extends Widget {
172
175
  }
173
176
  dispose() {
174
177
  this._mouseWheelToDispose = dispose(this._mouseWheelToDispose);
178
+ if (this._inertialTimeout) {
179
+ this._inertialTimeout.dispose();
180
+ this._inertialTimeout = null;
181
+ }
175
182
  super.dispose();
176
183
  }
177
184
  getDomNode() {
@@ -240,6 +247,34 @@ class AbstractScrollableElement extends Widget {
240
247
  delegateScrollFromMouseWheelEvent(browserEvent) {
241
248
  this._onMouseWheel(( new StandardWheelEvent(browserEvent)));
242
249
  }
250
+ async _periodicSync() {
251
+ let scheduleAgain = false;
252
+ if (this._inertialSpeed.X !== 0 || this._inertialSpeed.Y !== 0) {
253
+ this._scrollable.setScrollPositionNow({
254
+ scrollTop: this._scrollable.getCurrentScrollPosition().scrollTop - this._inertialSpeed.Y * 100,
255
+ scrollLeft: this._scrollable.getCurrentScrollPosition().scrollLeft - this._inertialSpeed.X * 100
256
+ });
257
+ this._inertialSpeed.X *= 0.9;
258
+ this._inertialSpeed.Y *= 0.9;
259
+ if (Math.abs(this._inertialSpeed.X) < 0.01) {
260
+ this._inertialSpeed.X = 0;
261
+ }
262
+ if (Math.abs(this._inertialSpeed.Y) < 0.01) {
263
+ this._inertialSpeed.Y = 0;
264
+ }
265
+ scheduleAgain = (this._inertialSpeed.X !== 0 || this._inertialSpeed.Y !== 0);
266
+ }
267
+ if (scheduleAgain) {
268
+ if (!this._inertialTimeout) {
269
+ this._inertialTimeout = ( new TimeoutTimer());
270
+ }
271
+ this._inertialTimeout.cancelAndSet(() => this._periodicSync(), 1000 / 60);
272
+ }
273
+ else {
274
+ this._inertialTimeout?.dispose();
275
+ this._inertialTimeout = null;
276
+ }
277
+ }
243
278
  _setListeningToMouseWheel(shouldListen) {
244
279
  const isListening = (this._mouseWheelToDispose.length > 0);
245
280
  if (isListening === shouldListen) {
@@ -301,6 +336,17 @@ class AbstractScrollableElement extends Widget {
301
336
  this._horizontalScrollbar.writeScrollPosition(desiredScrollPosition, desiredScrollLeft);
302
337
  }
303
338
  desiredScrollPosition = this._scrollable.validateScrollPosition(desiredScrollPosition);
339
+ if (this._options.inertialScroll && (deltaX || deltaY)) {
340
+ let startPeriodic = false;
341
+ if (this._inertialSpeed.X === 0 && this._inertialSpeed.Y === 0) {
342
+ startPeriodic = true;
343
+ }
344
+ this._inertialSpeed.Y = (deltaY < 0 ? -1 : 1) * (Math.abs(deltaY) ** 1.02);
345
+ this._inertialSpeed.X = (deltaX < 0 ? -1 : 1) * (Math.abs(deltaX) ** 1.02);
346
+ if (startPeriodic) {
347
+ this._periodicSync();
348
+ }
349
+ }
304
350
  if (futureScrollPosition.scrollLeft !== desiredScrollPosition.scrollLeft || futureScrollPosition.scrollTop !== desiredScrollPosition.scrollTop) {
305
351
  const canPerformSmoothScroll = (this._options.mouseWheelSmoothScroll
306
352
  && classifier.isPhysicalMouseWheel());
@@ -486,6 +532,7 @@ function resolveOptions(opts) {
486
532
  fastScrollSensitivity: (typeof opts.fastScrollSensitivity !== 'undefined' ? opts.fastScrollSensitivity : 5),
487
533
  scrollPredominantAxis: (typeof opts.scrollPredominantAxis !== 'undefined' ? opts.scrollPredominantAxis : true),
488
534
  mouseWheelSmoothScroll: (typeof opts.mouseWheelSmoothScroll !== 'undefined' ? opts.mouseWheelSmoothScroll : true),
535
+ inertialScroll: (typeof opts.inertialScroll !== 'undefined' ? opts.inertialScroll : false),
489
536
  arrowSize: (typeof opts.arrowSize !== 'undefined' ? opts.arrowSize : 11),
490
537
  listenOnDomNode: (typeof opts.listenOnDomNode !== 'undefined' ? opts.listenOnDomNode : null),
491
538
  horizontal: (typeof opts.horizontal !== 'undefined' ? opts.horizontal : ScrollbarVisibility.Auto),
@@ -5,6 +5,7 @@ export interface ScrollableElementCreationOptions {
5
5
  useShadows?: boolean;
6
6
  handleMouseWheel?: boolean;
7
7
  mouseWheelSmoothScroll?: boolean;
8
+ inertialScroll?: boolean;
8
9
  flipAxes?: boolean;
9
10
  scrollYToX?: boolean;
10
11
  consumeMouseWheelIfScrollbarIsNeeded?: boolean;
@@ -48,6 +49,7 @@ export interface ScrollableElementResolvedOptions {
48
49
  fastScrollSensitivity: number;
49
50
  scrollPredominantAxis: boolean;
50
51
  mouseWheelSmoothScroll: boolean;
52
+ inertialScroll: boolean;
51
53
  arrowSize: number;
52
54
  listenOnDomNode: HTMLElement | null;
53
55
  horizontal: ScrollbarVisibility;
@@ -53,6 +53,3 @@
53
53
  .monaco-action-bar .checkbox-action-item > .checkbox-label {
54
54
  font-size: 12px;
55
55
  }
56
- .monaco-custom-toggle.monaco-checkbox:not(.checked)::before {
57
- visibility: hidden;
58
- }
@@ -1,5 +1,5 @@
1
1
  import { IAction } from "../../../common/actions.js";
2
- import { Event } from "../../../common/event.js";
2
+ import { Emitter, Event } from "../../../common/event.js";
3
3
  import { ThemeIcon } from "../../../common/themables.js";
4
4
  import { IKeyboardEvent } from "../../keyboardEvent.js";
5
5
  import { BaseActionViewItem, IActionViewItemOptions } from "../actionbar/actionViewItems.js";
@@ -52,7 +52,7 @@ export declare class Toggle extends Widget {
52
52
  private _icon;
53
53
  readonly domNode: HTMLElement;
54
54
  private _checked;
55
- private _hover?;
55
+ private _hover;
56
56
  constructor(opts: IToggleOpts);
57
57
  get enabled(): boolean;
58
58
  focus(): void;
@@ -67,19 +67,15 @@ export declare class Toggle extends Widget {
67
67
  set visible(visible: boolean);
68
68
  get visible(): boolean;
69
69
  }
70
- export declare class Checkbox extends Widget {
71
- private title;
72
- private isChecked;
70
+ declare abstract class BaseCheckbox extends Widget {
71
+ protected readonly checkbox: Toggle;
72
+ readonly domNode: HTMLElement;
73
+ protected readonly styles: ICheckboxStyles;
73
74
  static readonly CLASS_NAME = "monaco-checkbox";
74
- private readonly _onChange;
75
+ protected readonly _onChange: Emitter<boolean>;
75
76
  readonly onChange: Event<boolean>;
76
- private checkbox;
77
- private styles;
78
- readonly domNode: HTMLElement;
79
- constructor(title: string, isChecked: boolean, styles: ICheckboxStyles);
80
- get checked(): boolean;
77
+ constructor(checkbox: Toggle, domNode: HTMLElement, styles: ICheckboxStyles);
81
78
  get enabled(): boolean;
82
- set checked(newIsChecked: boolean);
83
79
  focus(): void;
84
80
  hasFocus(): boolean;
85
81
  enable(): void;
@@ -87,6 +83,19 @@ export declare class Checkbox extends Widget {
87
83
  setTitle(newTitle: string): void;
88
84
  protected applyStyles(enabled?: boolean): void;
89
85
  }
86
+ export declare class Checkbox extends BaseCheckbox {
87
+ constructor(title: string, isChecked: boolean, styles: ICheckboxStyles);
88
+ get checked(): boolean;
89
+ set checked(newIsChecked: boolean);
90
+ protected applyStyles(enabled?: boolean): void;
91
+ }
92
+ export declare class TriStateCheckbox extends BaseCheckbox {
93
+ private _state;
94
+ constructor(title: string, _state: boolean | "partial", styles: ICheckboxStyles);
95
+ get checked(): boolean | "partial";
96
+ set checked(newState: boolean | "partial");
97
+ protected applyStyles(enabled?: boolean): void;
98
+ }
90
99
  export interface ICheckboxActionViewItemOptions extends IActionViewItemOptions {
91
100
  checkboxStyles: ICheckboxStyles;
92
101
  }
@@ -103,3 +112,4 @@ export declare class CheckboxActionViewItem extends BaseActionViewItem {
103
112
  blur(): void;
104
113
  setFocusable(focusable: boolean): void;
105
114
  }
115
+ export {};
@@ -95,12 +95,7 @@ class Toggle extends Widget {
95
95
  classes.push('checked');
96
96
  }
97
97
  this.domNode = createElement('div');
98
- if (this._opts.hoverDelegate?.showNativeHover) {
99
- this.domNode.title = this._opts.title;
100
- }
101
- else {
102
- this._hover = this._register(getBaseLayerHoverDelegate().setupManagedHover(opts.hoverDelegate ?? getDefaultHoverDelegate('mouse'), this.domNode, this._opts.title));
103
- }
98
+ this._hover = this._register(getBaseLayerHoverDelegate().setupManagedHover(opts.hoverDelegate ?? getDefaultHoverDelegate('mouse'), this.domNode, this._opts.title));
104
99
  this.domNode.classList.add(...classes);
105
100
  if (!this._opts.notFocusable) {
106
101
  this.domNode.tabIndex = 0;
@@ -174,12 +169,7 @@ class Toggle extends Widget {
174
169
  this.domNode.classList.add('disabled');
175
170
  }
176
171
  setTitle(newTitle) {
177
- if (this._hover) {
178
- this._hover.update(newTitle);
179
- }
180
- else {
181
- this.domNode.title = newTitle;
182
- }
172
+ this._hover.update(newTitle);
183
173
  this.domNode.setAttribute('aria-label', newTitle);
184
174
  }
185
175
  set visible(visible) {
@@ -189,35 +179,20 @@ class Toggle extends Widget {
189
179
  return this.domNode.style.display !== 'none';
190
180
  }
191
181
  }
192
- class Checkbox extends Widget {
182
+ class BaseCheckbox extends Widget {
193
183
  static { this.CLASS_NAME = 'monaco-checkbox'; }
194
- constructor(title, isChecked, styles) {
184
+ constructor(checkbox, domNode, styles) {
195
185
  super();
196
- this.title = title;
197
- this.isChecked = isChecked;
186
+ this.checkbox = checkbox;
187
+ this.domNode = domNode;
188
+ this.styles = styles;
198
189
  this._onChange = this._register(( new Emitter()));
199
190
  this.onChange = this._onChange.event;
200
- this.checkbox = this._register(( new Toggle(
201
- { title: this.title, isChecked: this.isChecked, icon: Codicon.check, actionClassName: Checkbox.CLASS_NAME, hoverDelegate: styles.hoverDelegate, ...unthemedToggleStyles }
202
- )));
203
- this.domNode = this.checkbox.domNode;
204
- this.styles = styles;
205
191
  this.applyStyles();
206
- this._register(this.checkbox.onChange(keyboard => {
207
- this.applyStyles();
208
- this._onChange.fire(keyboard);
209
- }));
210
- }
211
- get checked() {
212
- return this.checkbox.checked;
213
192
  }
214
193
  get enabled() {
215
194
  return this.checkbox.enabled;
216
195
  }
217
- set checked(newIsChecked) {
218
- this.checkbox.checked = newIsChecked;
219
- this.applyStyles();
220
- }
221
196
  focus() {
222
197
  this.domNode.focus();
223
198
  }
@@ -246,6 +221,91 @@ class Checkbox extends Widget {
246
221
  this.domNode.style.fontSize = `${size - 2}px`;
247
222
  }
248
223
  }
224
+ class Checkbox extends BaseCheckbox {
225
+ constructor(title, isChecked, styles) {
226
+ const toggle = ( new Toggle(
227
+ { title, isChecked, icon: Codicon.check, actionClassName: BaseCheckbox.CLASS_NAME, hoverDelegate: styles.hoverDelegate, ...unthemedToggleStyles }
228
+ ));
229
+ super(toggle, toggle.domNode, styles);
230
+ this._register(toggle);
231
+ this._register(this.checkbox.onChange(keyboard => {
232
+ this.applyStyles();
233
+ this._onChange.fire(keyboard);
234
+ }));
235
+ }
236
+ get checked() {
237
+ return this.checkbox.checked;
238
+ }
239
+ set checked(newIsChecked) {
240
+ this.checkbox.checked = newIsChecked;
241
+ this.applyStyles();
242
+ }
243
+ applyStyles(enabled) {
244
+ if (this.checkbox.checked) {
245
+ this.checkbox.setIcon(Codicon.check);
246
+ }
247
+ else {
248
+ this.checkbox.setIcon(undefined);
249
+ }
250
+ super.applyStyles(enabled);
251
+ }
252
+ }
253
+ class TriStateCheckbox extends BaseCheckbox {
254
+ constructor(title, _state, styles) {
255
+ let icon;
256
+ switch (_state) {
257
+ case true:
258
+ icon = Codicon.check;
259
+ break;
260
+ case 'partial':
261
+ icon = Codicon.dash;
262
+ break;
263
+ case false:
264
+ icon = undefined;
265
+ break;
266
+ }
267
+ const checkbox = ( new Toggle({
268
+ title,
269
+ isChecked: _state === true,
270
+ icon,
271
+ actionClassName: Checkbox.CLASS_NAME,
272
+ hoverDelegate: styles.hoverDelegate,
273
+ ...unthemedToggleStyles
274
+ }));
275
+ super(checkbox, checkbox.domNode, styles);
276
+ this._state = _state;
277
+ this._register(checkbox);
278
+ this._register(this.checkbox.onChange(keyboard => {
279
+ this._state = this.checkbox.checked;
280
+ this.applyStyles();
281
+ this._onChange.fire(keyboard);
282
+ }));
283
+ }
284
+ get checked() {
285
+ return this._state;
286
+ }
287
+ set checked(newState) {
288
+ if (this._state !== newState) {
289
+ this._state = newState;
290
+ this.checkbox.checked = newState === true;
291
+ this.applyStyles();
292
+ }
293
+ }
294
+ applyStyles(enabled) {
295
+ switch (this._state) {
296
+ case true:
297
+ this.checkbox.setIcon(Codicon.check);
298
+ break;
299
+ case 'partial':
300
+ this.checkbox.setIcon(Codicon.dash);
301
+ break;
302
+ case false:
303
+ this.checkbox.setIcon(undefined);
304
+ break;
305
+ }
306
+ super.applyStyles(enabled);
307
+ }
308
+ }
249
309
  class CheckboxActionViewItem extends BaseActionViewItem {
250
310
  constructor(context, action, options) {
251
311
  super(context, action, options);
@@ -312,4 +372,4 @@ class CheckboxActionViewItem extends BaseActionViewItem {
312
372
  }
313
373
  }
314
374
 
315
- export { Checkbox, CheckboxActionViewItem, Toggle, ToggleActionViewItem, unthemedToggleStyles };
375
+ export { Checkbox, CheckboxActionViewItem, Toggle, ToggleActionViewItem, TriStateCheckbox, unthemedToggleStyles };
@@ -10,6 +10,7 @@ import { Event } from "../../../common/event.js";
10
10
  import { FuzzyScore } from "../../../common/filters.js";
11
11
  import { Disposable, DisposableStore, IDisposable } from "../../../common/lifecycle.js";
12
12
  import { ScrollEvent } from "../../../common/scrollable.js";
13
+ import { IMouseWheelEvent } from "../../mouseEvent.js";
13
14
  export declare class ComposedTreeDelegate<T, N extends {
14
15
  element: T;
15
16
  }> implements IListVirtualDelegate<N> {
@@ -295,6 +296,7 @@ export interface IAbstractTreeOptions<T, TFilterData = void> extends IAbstractTr
295
296
  readonly findWidgetStyles?: IFindWidgetStyles;
296
297
  readonly defaultFindVisibility?: TreeVisibility | ((e: T) => TreeVisibility);
297
298
  readonly stickyScrollDelegate?: IStickyScrollDelegate<any, TFilterData>;
299
+ readonly disableExpandOnSpacebar?: boolean;
298
300
  }
299
301
  declare class Trait<T> {
300
302
  private getFirstViewElementWithTrait;
@@ -456,6 +458,7 @@ export declare abstract class AbstractTree<T, TFilterData, TRef> implements IDis
456
458
  private readonly modelDisposables;
457
459
  private setupModel;
458
460
  navigate(start?: TRef): ITreeNavigator<T>;
461
+ delegateScrollFromMouseWheelEvent(browserEvent: IMouseWheelEvent): void;
459
462
  dispose(): void;
460
463
  }
461
464
  export {};
@@ -2394,6 +2394,9 @@ class AbstractTree {
2394
2394
  navigate(start) {
2395
2395
  return ( new TreeNavigator(this.view, this.model, start));
2396
2396
  }
2397
+ delegateScrollFromMouseWheelEvent(browserEvent) {
2398
+ this.view.delegateScrollFromMouseWheelEvent(browserEvent);
2399
+ }
2397
2400
  dispose() {
2398
2401
  dispose(this.disposables);
2399
2402
  this.stickyScrollController?.dispose();
@@ -4,6 +4,7 @@ import { TreeFindMode as TreeFindMode, IAbstractTreeOptions, IAbstractTreeOption
4
4
  import { ICompressedTreeElement, ICompressedTreeNode } from "./compressedObjectTreeModel.js";
5
5
  import { CompressibleObjectTree, ICompressibleKeyboardNavigationLabelProvider, ICompressibleTreeRenderer, IObjectTreeSetChildrenOptions, ObjectTree } from "./objectTree.js";
6
6
  import { IAsyncDataSource, ICollapseStateChangeEvent, IObjectTreeElement, ITreeContextMenuEvent, ITreeEvent, ITreeMouseEvent, ITreeNavigator, ITreeNode, ITreeRenderer, ITreeSorter, ObjectTreeElementCollapseState, WeakMapper } from "./tree.js";
7
+ import { CancelablePromise } from "../../../common/async.js";
7
8
  import { Emitter, Event } from "../../../common/event.js";
8
9
  import { DisposableStore, IDisposable } from "../../../common/lifecycle.js";
9
10
  import { ScrollEvent } from "../../../common/scrollable.js";
@@ -13,7 +14,7 @@ interface IAsyncDataTreeNode<TInput, T> {
13
14
  readonly parent: IAsyncDataTreeNode<TInput, T> | null;
14
15
  readonly children: IAsyncDataTreeNode<TInput, T>[];
15
16
  readonly id?: string | null;
16
- refreshPromise: Promise<void> | undefined;
17
+ refreshPromise: CancelablePromise<void> | undefined;
17
18
  hasChildren: boolean;
18
19
  stale: boolean;
19
20
  slow: boolean;
@@ -128,6 +129,7 @@ export declare class AsyncDataTree<TInput, T, TFilterData = void> implements IDi
128
129
  getInput(): TInput | undefined;
129
130
  setInput(input: TInput, viewState?: IAsyncDataTreeViewState): Promise<void>;
130
131
  updateChildren(element?: TInput | T, recursive?: boolean, rerender?: boolean, options?: IAsyncDataTreeUpdateChildrenOptions<T>): Promise<void>;
132
+ cancelAllRefreshPromises(): void;
131
133
  private _updateChildren;
132
134
  resort(element?: TInput | T, recursive?: boolean): void;
133
135
  hasNode(element: TInput | T): boolean;
@@ -4,7 +4,7 @@ import { FindFilter, TreeFindMode, FindController, ComposedTreeDelegate } from '
4
4
  import { isFilterResult, getVisibleState } from './indexTreeModel.js';
5
5
  import { ObjectTree, CompressibleObjectTree } from './objectTree.js';
6
6
  import { TreeVisibility, WeakMapper, ObjectTreeElementCollapseState, TreeError } from './tree.js';
7
- import { ThrottledDelayer, Promises, timeout, createCancelablePromise } from '../../../common/async.js';
7
+ import { ThrottledDelayer, createCancelablePromise, Promises, timeout } from '../../../common/async.js';
8
8
  import { Codicon } from '../../../common/codicons.js';
9
9
  import { ThemeIcon } from '../../../common/themables.js';
10
10
  import { isCancellationError, onUnexpectedError } from '../../../common/errors.js';
@@ -531,8 +531,7 @@ class AsyncDataTree {
531
531
  return this.root.element;
532
532
  }
533
533
  async setInput(input, viewState) {
534
- this.refreshPromises.forEach(promise => promise.cancel());
535
- this.refreshPromises.clear();
534
+ this.cancelAllRefreshPromises();
536
535
  this.root.element = input;
537
536
  const viewStateContext = viewState && { viewState, focus: [], selection: [] };
538
537
  await this._updateChildren(input, true, false, viewStateContext);
@@ -547,6 +546,12 @@ class AsyncDataTree {
547
546
  async updateChildren(element = this.root.element, recursive = true, rerender = false, options) {
548
547
  await this._updateChildren(element, recursive, rerender, undefined, options);
549
548
  }
549
+ cancelAllRefreshPromises() {
550
+ this.refreshPromises.forEach(promise => promise.cancel());
551
+ this.refreshPromises.clear();
552
+ this.subTreeRefreshPromises.forEach(promise => promise.cancel());
553
+ this.subTreeRefreshPromises.clear();
554
+ }
550
555
  async _updateChildren(element = this.root.element, recursive = true, rerender = false, viewStateContext, options) {
551
556
  if (typeof this.root.element === 'undefined') {
552
557
  throw ( new TreeError(this.user, 'Tree input not set'));
@@ -609,7 +614,7 @@ class AsyncDataTree {
609
614
  return false;
610
615
  }
611
616
  if (node.refreshPromise) {
612
- await this.root.refreshPromise;
617
+ await node.refreshPromise;
613
618
  await Event.toPromise(this._onDidRender.event);
614
619
  }
615
620
  if (node !== this.root && !node.refreshPromise && !this.tree.isCollapsed(node)) {
@@ -617,7 +622,7 @@ class AsyncDataTree {
617
622
  }
618
623
  const result = this.tree.expand(node === this.root ? null : node, recursive);
619
624
  if (node.refreshPromise) {
620
- await this.root.refreshPromise;
625
+ await node.refreshPromise;
621
626
  await Event.toPromise(this._onDidRender.event);
622
627
  }
623
628
  return result;
@@ -781,21 +786,18 @@ class AsyncDataTree {
781
786
  return this.doRefreshSubTree(node, recursive, viewStateContext);
782
787
  }
783
788
  async doRefreshSubTree(node, recursive, viewStateContext) {
784
- let done;
785
- node.refreshPromise = ( new Promise(c => done = c));
786
- this.subTreeRefreshPromises.set(node, node.refreshPromise);
787
- node.refreshPromise.finally(() => {
788
- node.refreshPromise = undefined;
789
- this.subTreeRefreshPromises.delete(node);
790
- });
791
- try {
789
+ const cancelablePromise = createCancelablePromise(async () => {
792
790
  const childrenToRefresh = await this.doRefreshNode(node, recursive, viewStateContext);
793
791
  node.stale = false;
794
792
  await Promises.settled(( childrenToRefresh.map(child => this.doRefreshSubTree(child, recursive, viewStateContext))));
795
- }
796
- finally {
797
- done();
798
- }
793
+ });
794
+ node.refreshPromise = cancelablePromise;
795
+ this.subTreeRefreshPromises.set(node, cancelablePromise);
796
+ cancelablePromise.finally(() => {
797
+ node.refreshPromise = undefined;
798
+ this.subTreeRefreshPromises.delete(node);
799
+ });
800
+ return cancelablePromise;
799
801
  }
800
802
  async doRefreshNode(node, recursive, viewStateContext) {
801
803
  node.hasChildren = !!this.dataSource.hasChildren(node.element);
@@ -11,4 +11,4 @@ export declare class WebWorkerDescriptor implements IWebWorkerDescriptor {
11
11
  constructor(esmModuleLocation: URI, label: string | undefined);
12
12
  }
13
13
  export declare function createWebWorker<T extends object>(esmModuleLocation: URI, label: string | undefined): IWebWorkerClient<T>;
14
- export declare function createWebWorker<T extends object>(workerDescriptor: IWebWorkerDescriptor | Worker): IWebWorkerClient<T>;
14
+ export declare function createWebWorker<T extends object>(workerDescriptor: IWebWorkerDescriptor | Worker | Promise<Worker>): IWebWorkerClient<T>;
@@ -108,8 +108,9 @@ class WebWorker extends Disposable {
108
108
  this.onError = this._onError.event;
109
109
  this.id = ++WebWorker.LAST_WORKER_ID;
110
110
  const workerOrPromise = (descriptorOrWorker instanceof Worker
111
- ? descriptorOrWorker
112
- : getWorker(descriptorOrWorker, this.id));
111
+ ? descriptorOrWorker :
112
+ 'then' in descriptorOrWorker ? descriptorOrWorker
113
+ : getWorker(descriptorOrWorker, this.id));
113
114
  if (isPromiseLike(workerOrPromise)) {
114
115
  this.worker = workerOrPromise;
115
116
  }
@@ -558,8 +558,11 @@ async function findAsync(array, predicate) {
558
558
  )));
559
559
  return results.find(r => r.ok)?.element;
560
560
  }
561
+ function sum(array) {
562
+ return array.reduce((acc, value) => acc + value, 0);
563
+ }
561
564
  function sumBy(array, selector) {
562
565
  return array.reduce((acc, value) => acc + selector(value), 0);
563
566
  }
564
567
 
565
- export { ArrayQueue, CallbackIterable, CompareResult, Permutation, arrayInsert, asArray, binarySearch, binarySearch2, booleanComparator, coalesce, coalesceInPlace, commonPrefixLength, compareBy, compareUndefinedSmallest, concatArrays, delta, distinct, equals, findAsync, forEachAdjacent, forEachWithNeighbors, groupAdjacentBy, groupBy, index, insert, insertInto, isFalsyOrEmpty, isNonEmptyArray, mapArrayOrNot, move, numberComparator, pushMany, pushToEnd, pushToStart, quickSelect, range, remove, removeFastWithoutKeepingOrder, reverseOrder, shuffle, sortedDiff, splice, sumBy, tail, tieBreakComparators, top, uniqueFilter };
568
+ export { ArrayQueue, CallbackIterable, CompareResult, Permutation, arrayInsert, asArray, binarySearch, binarySearch2, booleanComparator, coalesce, coalesceInPlace, commonPrefixLength, compareBy, compareUndefinedSmallest, concatArrays, delta, distinct, equals, findAsync, forEachAdjacent, forEachWithNeighbors, groupAdjacentBy, groupBy, index, insert, insertInto, isFalsyOrEmpty, isNonEmptyArray, mapArrayOrNot, move, numberComparator, pushMany, pushToEnd, pushToStart, quickSelect, range, remove, removeFastWithoutKeepingOrder, reverseOrder, shuffle, sortedDiff, splice, sum, sumBy, tail, tieBreakComparators, top, uniqueFilter };
@@ -1,4 +1,5 @@
1
1
  import { Comparator } from "./arrays.js";
2
+ export declare function findLast<T, R extends T>(array: readonly T[], predicate: (item: T) => item is R, fromIndex?: number): R | undefined;
2
3
  export declare function findLast<T>(array: readonly T[], predicate: (item: T) => unknown, fromIndex?: number): T | undefined;
3
4
  export declare function findLastIdx<T>(array: readonly T[], predicate: (item: T) => unknown, fromIndex?: number): number;
4
5
  export declare function findLastMonotonous<T>(array: readonly T[], predicate: (item: T) => boolean): T | undefined;