@codingame/monaco-vscode-api 6.0.2 → 7.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (450) hide show
  1. package/README.md +93 -73
  2. package/api.js +1 -1
  3. package/debugProtocol.d.ts +10 -1
  4. package/extensions.d.ts +2 -0
  5. package/missing-services.js +21 -2
  6. package/monaco.d.ts +1 -1
  7. package/monaco.js +1 -1
  8. package/package.json +9 -9
  9. package/service-override/extensions.d.ts +1 -2
  10. package/services.js +4 -2
  11. package/vscode/src/vs/base/browser/dnd.js +1 -1
  12. package/vscode/src/vs/base/browser/dom.js +116 -5
  13. package/vscode/src/vs/base/browser/domObservable.js +16 -0
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +5 -3
  15. package/vscode/src/vs/base/browser/trustedTypes.js +1 -2
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  17. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  18. package/vscode/src/vs/base/browser/ui/button/button.js +2 -2
  19. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -4
  20. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +32 -16
  24. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.d.ts +2 -2
  25. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +2 -2
  26. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -0
  28. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  32. package/vscode/src/vs/base/browser/ui/list/listView.js +3 -5
  33. package/vscode/src/vs/base/browser/ui/list/rowCache.js +1 -8
  34. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -11
  36. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +1 -1
  37. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  39. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  40. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +8 -1
  41. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -3
  42. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +1 -1
  43. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +0 -3
  44. package/vscode/src/vs/base/common/assert.js +1 -1
  45. package/vscode/src/vs/base/common/collections.js +49 -1
  46. package/vscode/src/vs/base/common/equals.js +55 -5
  47. package/vscode/src/vs/base/common/errors.js +14 -1
  48. package/vscode/src/vs/base/common/event.js +2 -1
  49. package/vscode/src/vs/base/common/history.js +7 -4
  50. package/vscode/src/vs/base/common/iterator.js +9 -1
  51. package/vscode/src/vs/base/common/map.d.ts +41 -0
  52. package/vscode/src/vs/base/common/numbers.js +18 -1
  53. package/vscode/src/vs/base/common/observableInternal/api.js +11 -0
  54. package/vscode/src/vs/base/common/observableInternal/autorun.js +18 -1
  55. package/vscode/src/vs/base/common/observableInternal/base.d.ts +8 -1
  56. package/vscode/src/vs/base/common/observableInternal/base.js +2 -5
  57. package/vscode/src/vs/base/common/observableInternal/derived.js +13 -3
  58. package/vscode/src/vs/base/common/observableInternal/lazyObservableValue.js +109 -0
  59. package/vscode/src/vs/base/common/observableInternal/promise.js +3 -0
  60. package/vscode/src/vs/base/common/observableInternal/utils.d.ts +7 -0
  61. package/vscode/src/vs/base/common/observableInternal/utils.js +64 -12
  62. package/vscode/src/vs/base/common/prefixTree.d.ts +52 -0
  63. package/vscode/src/vs/base/common/product.d.ts +1 -0
  64. package/vscode/src/vs/base/parts/ipc/common/ipc.js +1 -1
  65. package/vscode/src/vs/editor/browser/config/charWidthReader.js +1 -1
  66. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  67. package/vscode/src/vs/editor/browser/coreCommands.js +2 -1
  68. package/vscode/src/vs/editor/browser/observableCodeEditor.js +230 -0
  69. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +1 -1
  70. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -26
  71. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +2 -2
  72. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +1 -1
  73. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -12
  74. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +1 -1
  75. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  76. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  77. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +15 -4
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +8 -8
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +1 -1
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +14 -2
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +2 -2
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +3 -3
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +2 -2
  88. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +1 -1
  89. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +2 -2
  90. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +5 -0
  91. package/vscode/src/vs/editor/common/config/editorOptions.js +83 -65
  92. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +43 -43
  93. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -2
  94. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +911 -0
  95. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +36 -799
  96. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +6 -5
  97. package/vscode/src/vs/editor/common/languageFeatureRegistry.d.ts +1 -0
  98. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +3 -0
  99. package/vscode/src/vs/editor/common/languages/autoIndent.js +23 -1
  100. package/vscode/src/vs/editor/common/languages.d.ts +20 -3
  101. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +6 -6
  102. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +19 -0
  103. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +3 -0
  104. package/vscode/src/vs/editor/common/model/textModel.js +6 -2
  105. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +5 -5
  106. package/vscode/src/vs/editor/common/model.d.ts +4 -0
  107. package/vscode/src/vs/editor/common/services/getIconClasses.js +1 -1
  108. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +2 -15
  109. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +63 -62
  110. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +11 -8
  111. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +1 -1
  112. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +2 -17
  113. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.css.js +1 -1
  114. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +18 -5
  115. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +55 -27
  116. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -4
  117. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +9 -9
  118. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +1 -1
  119. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +103 -47
  120. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -2
  121. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +18 -10
  122. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +2 -4
  123. package/vscode/src/vs/editor/contrib/folding/browser/folding.css.js +1 -1
  124. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +33 -13
  125. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -7
  126. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  127. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +2 -2
  128. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +161 -185
  129. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +321 -0
  130. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +4 -1
  131. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +6 -21
  132. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +39 -40
  133. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +55 -46
  134. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +12 -2
  135. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +15 -9
  136. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +11 -1
  137. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +141 -93
  138. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +24 -7
  139. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +36 -1
  140. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -3
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +1 -1
  142. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +25 -12
  143. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +88 -118
  144. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
  145. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +34 -33
  146. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +11 -4
  148. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +10 -19
  149. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +45 -27
  151. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +4 -4
  152. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +1 -1
  153. package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +126 -0
  154. package/vscode/src/vs/editor/contrib/inlineEdits/browser/consts.js +9 -0
  155. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.js +9 -0
  156. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsController.js +82 -0
  157. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.js +240 -0
  158. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.css.js +4 -0
  159. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.js +322 -0
  160. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +8 -4
  161. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +3 -2
  162. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  163. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  164. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +60 -0
  165. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css.js +4 -0
  166. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +1 -1
  167. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  168. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +38 -20
  169. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +3 -0
  170. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +9 -9
  171. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +10 -32
  172. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +23 -138
  173. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -0
  174. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +5 -5
  175. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +13 -12
  176. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +3 -3
  177. package/vscode/src/vs/editor/editor.api.d.ts +31 -5
  178. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +21 -0
  179. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +5 -6
  180. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +1 -1
  181. package/vscode/src/vs/platform/actions/browser/buttonbar.js +27 -6
  182. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  184. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +33 -3
  185. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -1
  186. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  187. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  188. package/vscode/src/vs/platform/actions/common/menuService.js +3 -2
  189. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +1 -1
  190. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +7 -5
  191. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +109 -13
  192. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +2 -0
  193. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +12 -6
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +2 -0
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +3 -3
  196. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +20 -10
  197. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +46 -8
  198. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -1
  199. package/vscode/src/vs/platform/extensions/common/extensions.js +12 -3
  200. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +368 -0
  201. package/vscode/src/vs/platform/files/common/watcher.js +21 -24
  202. package/vscode/src/vs/platform/list/browser/listService.js +2 -1
  203. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -2
  204. package/vscode/src/vs/platform/opener/browser/link.js +1 -1
  205. package/vscode/src/vs/platform/product/common/product.js +1 -1
  206. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1 -1
  207. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +0 -2
  208. package/vscode/src/vs/platform/request/common/request.js +18 -8
  209. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +2 -6
  210. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +8 -1
  211. package/vscode/src/vs/platform/theme/common/colorUtils.d.ts +1 -1
  212. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -5
  213. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  214. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +6 -6
  215. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +35 -35
  216. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +9 -9
  217. package/vscode/src/vs/platform/theme/common/colors/listColors.js +11 -11
  218. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +4 -4
  219. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +5 -5
  220. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +1 -1
  221. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +5 -5
  222. package/vscode/src/vs/platform/tunnel/common/tunnel.js +4 -1
  223. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +75 -19
  224. package/vscode/src/vs/platform/window/common/window.d.ts +2 -2
  225. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +32 -25
  226. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  227. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +2 -0
  228. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -11
  229. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +5 -15
  230. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +2 -5
  231. package/vscode/src/vs/workbench/api/common/extHostComments.js +9 -3
  232. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +32 -22
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -3
  234. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +109 -40
  235. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +46 -0
  236. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +84 -35
  237. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  238. package/vscode/src/vs/workbench/api/common/extHostSCM.js +50 -41
  239. package/vscode/src/vs/workbench/api/common/extHostSearch.js +2 -2
  240. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +11 -8
  241. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -6
  242. package/vscode/src/vs/workbench/api/common/extHostTesting.js +63 -70
  243. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +5 -3
  244. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +75 -16
  245. package/vscode/src/vs/workbench/api/common/extHostTypes.js +29 -4
  246. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  247. package/vscode/src/vs/workbench/browser/actions/developerActions.js +1 -1
  248. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +127 -107
  249. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +2 -2
  250. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +1 -1
  251. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +33 -21
  252. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  253. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +5 -5
  254. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
  255. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +2 -2
  256. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -2
  257. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +23 -6
  258. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +3 -1
  259. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +3 -3
  260. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +1 -1
  261. package/vscode/src/vs/workbench/browser/web.api.js +8 -0
  262. package/vscode/src/vs/workbench/browser/workbench.contribution.js +199 -194
  263. package/vscode/src/vs/workbench/common/configuration.js +1 -1
  264. package/vscode/src/vs/workbench/common/contributions.js +8 -1
  265. package/vscode/src/vs/workbench/common/editor.js +5 -1
  266. package/vscode/src/vs/workbench/common/theme.js +79 -454
  267. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +221 -239
  268. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +17 -15
  269. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +1 -0
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +4 -0
  271. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.js +27 -0
  272. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +35 -0
  273. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +51 -0
  274. package/vscode/src/vs/workbench/contrib/chat/browser/{chatConfirmationWidget.js → chatContentParts/chatConfirmationWidget.js} +9 -9
  275. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.js +131 -0
  276. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.js +37 -0
  277. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +263 -0
  278. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +37 -0
  279. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +160 -0
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +171 -0
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatWarningContentPart.js +34 -0
  282. package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatContentParts/media}/chatConfirmationWidget.css.js +1 -1
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +91 -44
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +292 -1019
  285. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +2 -2
  286. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +1 -1
  287. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +22 -7
  288. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  289. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +61 -54
  290. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +23 -16
  291. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  292. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  293. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +8 -0
  294. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +1 -1
  295. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +3 -3
  296. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +5 -4
  297. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +16 -0
  298. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.js +3 -0
  299. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +2 -2
  300. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +43 -16
  301. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +1 -1
  302. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +1 -3
  303. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +1 -1
  304. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +7 -5
  305. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +7 -7
  306. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +3 -3
  307. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +3 -3
  308. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +2 -2
  309. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  310. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +2 -1
  311. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +2 -1
  312. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +1 -1
  313. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +8 -5
  314. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +1 -1
  315. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  316. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css.js +1 -1
  317. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +1 -1
  318. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +5 -5
  319. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +14 -7
  320. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +4 -4
  321. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +8 -7
  322. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +19 -16
  323. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -12
  324. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +19 -2
  325. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +9 -4
  326. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +10 -5
  327. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +4 -4
  328. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +235 -173
  329. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  330. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +2 -1
  331. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +17 -5
  332. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +62 -44
  333. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  334. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +2 -2
  335. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +114 -107
  336. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +33 -25
  337. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +71 -101
  338. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +38 -43
  339. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -33
  340. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +3 -4
  341. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +49 -86
  342. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +60 -71
  343. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  344. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +1 -1
  345. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +116 -113
  346. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +6 -10
  347. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +2 -2
  348. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +1 -0
  349. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +2 -2
  350. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +12 -23
  351. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +0 -2
  352. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -9
  353. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +88 -61
  354. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +1 -3
  355. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +39 -3
  356. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -1
  357. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +12 -11
  358. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  359. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +1 -1
  360. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +3 -2
  361. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +40 -105
  362. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +27 -26
  363. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +14 -5
  364. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +1 -1
  365. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +43 -46
  366. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +1 -1
  367. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +4 -4
  368. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +12 -9
  369. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +19 -14
  370. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  371. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +9 -6
  372. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +5 -3
  374. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +3 -3
  375. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +1 -1
  376. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +16 -6
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +8 -8
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +3 -0
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +11 -12
  380. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +12 -13
  381. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +1 -1
  382. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +5 -3
  383. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +9 -2
  384. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +37 -36
  385. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +18 -8
  386. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +1 -1
  387. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +14 -5
  388. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +17 -22
  389. package/vscode/src/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +7 -10
  391. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +7 -27
  392. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +3 -4
  393. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  394. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +4 -0
  395. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +3 -3
  396. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -0
  397. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +0 -1
  398. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +13 -37
  399. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.d.ts +88 -0
  400. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +48 -31
  401. package/vscode/src/vs/workbench/contrib/testing/common/testId.d.ts +115 -0
  402. package/vscode/src/vs/workbench/contrib/testing/common/testResult.d.ts +226 -0
  403. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.d.ts +319 -0
  404. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +2 -3
  405. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.d.ts +10 -0
  406. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +21 -2
  407. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +7 -8
  408. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +3 -3
  409. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +10 -5
  410. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +54 -21
  411. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  412. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +1 -2
  413. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -4
  414. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +5 -3
  415. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +3 -1
  416. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +59 -41
  417. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -1
  418. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -2
  419. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -0
  420. package/vscode/src/vs/workbench/services/language/common/languageService.js +7 -0
  421. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +1 -1
  422. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +2 -2
  423. package/vscode/src/vs/workbench/services/search/common/search.js +2 -1
  424. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +2 -2
  425. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +2 -2
  426. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +69 -26
  427. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +23 -4
  428. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +5 -1
  429. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  430. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -5
  431. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +38 -19
  432. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -1
  433. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +0 -196
  434. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -10
  435. package/vscode-dts/vscode.proposed.authGetSessions.d.ts +30 -22
  436. package/vscode-dts/vscode.proposed.chatProvider.d.ts +17 -8
  437. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +0 -9
  438. package/vscode-dts/vscode.proposed.commentReveal.d.ts +32 -0
  439. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +10 -0
  440. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +1 -1
  441. package/vscode-dts/vscode.proposed.fileComments.d.ts +12 -53
  442. package/vscode-dts/vscode.proposed.fileSearchProvider.d.ts +6 -0
  443. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +6 -0
  444. package/vscode-dts/vscode.proposed.lmTools.d.ts +91 -0
  445. package/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts +1 -1
  446. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +10 -6
  447. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +38 -13
  448. package/vscode/src/vs/editor/browser/observableUtilities.js +0 -58
  449. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProviderFactory.service.js +0 -3
  450. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +0 -122
@@ -3,9 +3,9 @@ import { URI } from '../../../base/common/uri.js';
3
3
  import { Emitter, Event } from '../../../base/common/event.js';
4
4
  import { debounce } from '../../../base/common/decorators.js';
5
5
  import { DisposableStore, MutableDisposable } from '../../../base/common/lifecycle.js';
6
- import { asPromise, Sequencer } from '../../../base/common/async.js';
6
+ import { asPromise } from '../../../base/common/async.js';
7
7
  import { MainContext } from './extHost.protocol.js';
8
- import { sortedDiff, equals } from '../../../base/common/arrays.js';
8
+ import { equals, sortedDiff } from '../../../base/common/arrays.js';
9
9
  import { comparePaths } from '../../../base/common/comparers.js';
10
10
  import { ILogService } from '../../../platform/log/common/log.service.js';
11
11
  import { ExtensionIdentifierMap } from '../../../platform/extensions/common/extensions.js';
@@ -42,21 +42,26 @@ function getIconResource(decorations) {
42
42
  return undefined;
43
43
  }
44
44
  }
45
- function getHistoryItemIconDto(historyItem) {
46
- if (!historyItem.icon) {
45
+ function getHistoryItemIconDto(icon) {
46
+ if (!icon) {
47
47
  return undefined;
48
48
  }
49
- else if (URI.isUri(historyItem.icon)) {
50
- return historyItem.icon;
49
+ else if (URI.isUri(icon)) {
50
+ return icon;
51
51
  }
52
- else if (ThemeIcon.isThemeIcon(historyItem.icon)) {
53
- return historyItem.icon;
52
+ else if (ThemeIcon.isThemeIcon(icon)) {
53
+ return icon;
54
54
  }
55
55
  else {
56
- const icon = historyItem.icon;
57
- return { light: icon.light, dark: icon.dark };
56
+ const iconDto = icon;
57
+ return { light: iconDto.light, dark: iconDto.dark };
58
58
  }
59
59
  }
60
+ function toSCMHistoryItemDto(historyItem) {
61
+ const icon = getHistoryItemIconDto(historyItem.icon);
62
+ const labels = historyItem.labels?.map(l => ({ title: l.title, icon: getHistoryItemIconDto(l.icon) }));
63
+ return { ...historyItem, icon, labels };
64
+ }
60
65
  function compareResourceThemableDecorations(a, b) {
61
66
  if (!a.iconPath && !b.iconPath) {
62
67
  return 0;
@@ -223,7 +228,7 @@ class ExtHostSCMInputBox {
223
228
  }
224
229
  set value(value) {
225
230
  value = value ?? '';
226
- this._sequencer.queue(async () => this.#proxy.$setInputBoxValue(this._sourceControlHandle, value));
231
+ this.#proxy.$setInputBoxValue(this._sourceControlHandle, value);
227
232
  this.updateValue(value);
228
233
  }
229
234
  get onDidChange() {
@@ -233,7 +238,7 @@ class ExtHostSCMInputBox {
233
238
  return this._placeholder;
234
239
  }
235
240
  set placeholder(placeholder) {
236
- this._sequencer.queue(async () => this.#proxy.$setInputBoxPlaceholder(this._sourceControlHandle, placeholder));
241
+ this.#proxy.$setInputBoxPlaceholder(this._sourceControlHandle, placeholder);
237
242
  this._placeholder = placeholder;
238
243
  }
239
244
  get validateInput() {
@@ -248,7 +253,7 @@ class ExtHostSCMInputBox {
248
253
  ));
249
254
  }
250
255
  this._validateInput = fn;
251
- this._sequencer.queue(async () => this.#proxy.$setValidationProviderIsEnabled(this._sourceControlHandle, !!fn));
256
+ this.#proxy.$setValidationProviderIsEnabled(this._sourceControlHandle, !!fn);
252
257
  }
253
258
  get enabled() {
254
259
  return this._enabled;
@@ -259,7 +264,7 @@ class ExtHostSCMInputBox {
259
264
  return;
260
265
  }
261
266
  this._enabled = enabled;
262
- this._sequencer.queue(async () => this.#proxy.$setInputBoxEnablement(this._sourceControlHandle, enabled));
267
+ this.#proxy.$setInputBoxEnablement(this._sourceControlHandle, enabled);
263
268
  }
264
269
  get visible() {
265
270
  return this._visible;
@@ -270,15 +275,14 @@ class ExtHostSCMInputBox {
270
275
  return;
271
276
  }
272
277
  this._visible = visible;
273
- this._sequencer.queue(async () => this.#proxy.$setInputBoxVisibility(this._sourceControlHandle, visible));
278
+ this.#proxy.$setInputBoxVisibility(this._sourceControlHandle, visible);
274
279
  }
275
280
  get document() {
276
281
  checkProposedApiEnabled(this._extension, 'scmTextDocument');
277
282
  return this.#extHostDocuments.getDocument(this._documentUri);
278
283
  }
279
- constructor(_extension, _extHostDocuments, proxy, _sequencer, _sourceControlHandle, _documentUri) {
284
+ constructor(_extension, _extHostDocuments, proxy, _sourceControlHandle, _documentUri) {
280
285
  this._extension = _extension;
281
- this._sequencer = _sequencer;
282
286
  this._sourceControlHandle = _sourceControlHandle;
283
287
  this._documentUri = _documentUri;
284
288
  this._value = '';
@@ -291,7 +295,7 @@ class ExtHostSCMInputBox {
291
295
  }
292
296
  showValidationMessage(message, type) {
293
297
  checkProposedApiEnabled(this._extension, 'scmValidation');
294
- this._sequencer.queue(async () => this.#proxy.$showValidationMessage(this._sourceControlHandle, message, type));
298
+ this.#proxy.$showValidationMessage(this._sourceControlHandle, message, type);
295
299
  }
296
300
  $onInputBoxValueChange(value) {
297
301
  this.updateValue(value);
@@ -308,12 +312,12 @@ class ExtHostSourceControlResourceGroup {
308
312
  get label() { return this._label; }
309
313
  set label(label) {
310
314
  this._label = label;
311
- this._sequencer.queue(async () => this._proxy.$updateGroupLabel(this._sourceControlHandle, this.handle, label));
315
+ this._proxy.$updateGroupLabel(this._sourceControlHandle, this.handle, label);
312
316
  }
313
317
  get hideWhenEmpty() { return this._hideWhenEmpty; }
314
318
  set hideWhenEmpty(hideWhenEmpty) {
315
319
  this._hideWhenEmpty = hideWhenEmpty;
316
- this._sequencer.queue(async () => this._proxy.$updateGroup(this._sourceControlHandle, this.handle, this.features));
320
+ this._proxy.$updateGroup(this._sourceControlHandle, this.handle, this.features);
317
321
  }
318
322
  get features() {
319
323
  return {
@@ -325,10 +329,9 @@ class ExtHostSourceControlResourceGroup {
325
329
  this._resourceStates = [...resources];
326
330
  this._onDidUpdateResourceStates.fire();
327
331
  }
328
- constructor(_proxy, _commands, _sequencer, _sourceControlHandle, _id, _label, multiDiffEditorEnableViewChanges, _extension) {
332
+ constructor(_proxy, _commands, _sourceControlHandle, _id, _label, multiDiffEditorEnableViewChanges, _extension) {
329
333
  this._proxy = _proxy;
330
334
  this._commands = _commands;
331
- this._sequencer = _sequencer;
332
335
  this._sourceControlHandle = _sourceControlHandle;
333
336
  this._id = _id;
334
337
  this._label = _label;
@@ -436,7 +439,7 @@ class ExtHostSourceControl {
436
439
  return;
437
440
  }
438
441
  this._count = count;
439
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { count }));
442
+ this.#proxy.$updateSourceControl(this.handle, { count });
440
443
  }
441
444
  get quickDiffProvider() {
442
445
  return this._quickDiffProvider;
@@ -447,7 +450,7 @@ class ExtHostSourceControl {
447
450
  if (isProposedApiEnabled(this._extension, 'quickDiffProvider')) {
448
451
  quickDiffLabel = quickDiffProvider?.label;
449
452
  }
450
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { hasQuickDiffProvider: !!quickDiffProvider, quickDiffLabel }));
453
+ this.#proxy.$updateSourceControl(this.handle, { hasQuickDiffProvider: !!quickDiffProvider, quickDiffLabel });
451
454
  }
452
455
  get historyProvider() {
453
456
  checkProposedApiEnabled(this._extension, 'scmHistoryProvider');
@@ -457,11 +460,11 @@ class ExtHostSourceControl {
457
460
  checkProposedApiEnabled(this._extension, 'scmHistoryProvider');
458
461
  this._historyProvider = historyProvider;
459
462
  this._historyProviderDisposable.value = ( new DisposableStore());
460
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { hasHistoryProvider: !!historyProvider }));
463
+ this.#proxy.$updateSourceControl(this.handle, { hasHistoryProvider: !!historyProvider });
461
464
  if (historyProvider) {
462
465
  this._historyProviderDisposable.value.add(historyProvider.onDidChangeCurrentHistoryItemGroup(() => {
463
466
  this._historyProviderCurrentHistoryItemGroup = historyProvider?.currentHistoryItemGroup;
464
- this._sequencer.queue(async () => this.#proxy.$onDidChangeHistoryProviderCurrentHistoryItemGroup(this.handle, this._historyProviderCurrentHistoryItemGroup));
467
+ this.#proxy.$onDidChangeHistoryProviderCurrentHistoryItemGroup(this.handle, this._historyProviderCurrentHistoryItemGroup);
465
468
  }));
466
469
  }
467
470
  }
@@ -473,7 +476,7 @@ class ExtHostSourceControl {
473
476
  return;
474
477
  }
475
478
  this._commitTemplate = commitTemplate;
476
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { commitTemplate }));
479
+ this.#proxy.$updateSourceControl(this.handle, { commitTemplate });
477
480
  }
478
481
  get acceptInputCommand() {
479
482
  return this._acceptInputCommand;
@@ -482,7 +485,7 @@ class ExtHostSourceControl {
482
485
  this._acceptInputDisposables.value = ( new DisposableStore());
483
486
  this._acceptInputCommand = acceptInputCommand;
484
487
  const internal = this._commands.converter.toInternal(acceptInputCommand, this._acceptInputDisposables.value);
485
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { acceptInputCommand: internal }));
488
+ this.#proxy.$updateSourceControl(this.handle, { acceptInputCommand: internal });
486
489
  }
487
490
  get actionButton() {
488
491
  checkProposedApiEnabled(this._extension, 'scmActionButton');
@@ -503,13 +506,15 @@ class ExtHostSourceControl {
503
506
  description: actionButton.description,
504
507
  enabled: actionButton.enabled
505
508
  } : undefined;
506
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { actionButton: internal ?? null }));
509
+ this.#proxy.$updateSourceControl(this.handle, { actionButton: internal ?? null });
507
510
  }
508
511
  get statusBarCommands() {
509
512
  return this._statusBarCommands;
510
513
  }
511
514
  set statusBarCommands(statusBarCommands) {
515
+ this.logService.trace('ExtHostSourceControl#statusBarCommands', ( (statusBarCommands ?? []).map(c => c.command)).join(', '));
512
516
  if (this._statusBarCommands && statusBarCommands && commandListEquals(this._statusBarCommands, statusBarCommands)) {
517
+ this.logService.trace('ExtHostSourceControl#statusBarCommands are equal');
513
518
  return;
514
519
  }
515
520
  this._statusBarDisposables.value = ( new DisposableStore());
@@ -517,18 +522,18 @@ class ExtHostSourceControl {
517
522
  const internal = ( (statusBarCommands || []).map(
518
523
  c => this._commands.converter.toInternal(c, this._statusBarDisposables.value)
519
524
  ));
520
- this._sequencer.queue(async () => this.#proxy.$updateSourceControl(this.handle, { statusBarCommands: internal }));
525
+ this.#proxy.$updateSourceControl(this.handle, { statusBarCommands: internal });
521
526
  }
522
527
  get selected() {
523
528
  return this._selected;
524
529
  }
525
- constructor(_extension, _extHostDocuments, proxy, _commands, _id, _label, _rootUri) {
530
+ constructor(_extension, _extHostDocuments, proxy, _commands, logService, _id, _label, _rootUri) {
526
531
  this._extension = _extension;
527
532
  this._commands = _commands;
533
+ this.logService = logService;
528
534
  this._id = _id;
529
535
  this._label = _label;
530
536
  this._rootUri = _rootUri;
531
- this._sequencer = ( new Sequencer());
532
537
  this._groups = ( new Map());
533
538
  this._count = undefined;
534
539
  this._quickDiffProvider = undefined;
@@ -551,22 +556,20 @@ class ExtHostSourceControl {
551
556
  path: `${_id}/scm${this.handle}/input`,
552
557
  query: _rootUri ? `rootUri=${encodeURIComponent(( _rootUri.toString()))}` : undefined
553
558
  }));
554
- this._sequencer.queue(() => this.#proxy.$registerSourceControl(this.handle, _id, _label, _rootUri, inputBoxDocumentUri));
555
559
  this._inputBox = ( new ExtHostSCMInputBox(
556
560
  _extension,
557
561
  _extHostDocuments,
558
562
  this.#proxy,
559
- this._sequencer,
560
563
  this.handle,
561
564
  inputBoxDocumentUri
562
565
  ));
566
+ this.#proxy.$registerSourceControl(this.handle, _id, _label, _rootUri, inputBoxDocumentUri);
563
567
  }
564
568
  createResourceGroup(id, label, options) {
565
569
  const multiDiffEditorEnableViewChanges = isProposedApiEnabled(this._extension, 'scmMultiDiffEditor') && options?.multiDiffEditorEnableViewChanges === true;
566
570
  const group = ( new ExtHostSourceControlResourceGroup(
567
571
  this.#proxy,
568
572
  this._commands,
569
- this._sequencer,
570
573
  this.handle,
571
574
  id,
572
575
  label,
@@ -591,7 +594,7 @@ class ExtHostSourceControl {
591
594
  this.updatedResourceGroups.delete(group);
592
595
  updateListener.dispose();
593
596
  this._groups.delete(group.handle);
594
- this._sequencer.queue(async () => this.#proxy.$unregisterGroup(this.handle, group.handle));
597
+ this.#proxy.$unregisterGroup(this.handle, group.handle);
595
598
  });
596
599
  groups.push([group.handle, group.id, group.label, group.features, group.multiDiffEditorEnableViewChanges]);
597
600
  const snapshot = group._takeResourceStateSnapshot();
@@ -600,7 +603,7 @@ class ExtHostSourceControl {
600
603
  }
601
604
  this._groups.set(group.handle, group);
602
605
  }
603
- this._sequencer.queue(async () => this.#proxy.$registerGroups(this.handle, groups, splices));
606
+ this.#proxy.$registerGroups(this.handle, groups, splices);
604
607
  this.createdResourceGroups.clear();
605
608
  }
606
609
  eventuallyUpdateResourceStates() {
@@ -613,7 +616,7 @@ class ExtHostSourceControl {
613
616
  splices.push([group.handle, snapshot]);
614
617
  });
615
618
  if (splices.length > 0) {
616
- this._sequencer.queue(async () => this.#proxy.$spliceResourceStates(this.handle, splices));
619
+ this.#proxy.$spliceResourceStates(this.handle, splices);
617
620
  }
618
621
  this.updatedResourceGroups.clear();
619
622
  }
@@ -629,7 +632,7 @@ class ExtHostSourceControl {
629
632
  this._actionButtonDisposables.dispose();
630
633
  this._statusBarDisposables.dispose();
631
634
  this._groups.forEach(group => group.dispose());
632
- this._sequencer.queue(async () => this.#proxy.$unregisterSourceControl(this.handle));
635
+ this.#proxy.$unregisterSourceControl(this.handle);
633
636
  }
634
637
  }
635
638
  ExtHostSourceControl.__decorator = ( __decorate([
@@ -693,6 +696,7 @@ let ExtHostSCM = class ExtHostSCM {
693
696
  this._extHostDocuments,
694
697
  this._proxy,
695
698
  this._commands,
699
+ this.logService,
696
700
  id,
697
701
  label,
698
702
  rootUri
@@ -778,7 +782,12 @@ let ExtHostSCM = class ExtHostSCM {
778
782
  async $provideHistoryItems(sourceControlHandle, historyItemGroupId, options, token) {
779
783
  const historyProvider = this._sourceControls.get(sourceControlHandle)?.historyProvider;
780
784
  const historyItems = await historyProvider?.provideHistoryItems(historyItemGroupId, options, token);
781
- return historyItems?.map(item => ({ ...item, icon: getHistoryItemIconDto(item) })) ?? undefined;
785
+ return historyItems?.map(item => toSCMHistoryItemDto(item)) ?? undefined;
786
+ }
787
+ async $provideHistoryItems2(sourceControlHandle, options, token) {
788
+ const historyProvider = this._sourceControls.get(sourceControlHandle)?.historyProvider;
789
+ const historyItems = await historyProvider?.provideHistoryItems2(options, token);
790
+ return historyItems?.map(item => toSCMHistoryItemDto(item)) ?? undefined;
782
791
  }
783
792
  async $provideHistoryItemSummary(sourceControlHandle, historyItemId, historyItemParentId, token) {
784
793
  const historyProvider = this._sourceControls.get(sourceControlHandle)?.historyProvider;
@@ -786,7 +795,7 @@ let ExtHostSCM = class ExtHostSCM {
786
795
  return undefined;
787
796
  }
788
797
  const historyItem = await historyProvider.provideHistoryItemSummary(historyItemId, historyItemParentId, token);
789
- return historyItem ? { ...historyItem, icon: getHistoryItemIconDto(historyItem) } : undefined;
798
+ return historyItem ? toSCMHistoryItemDto(historyItem) : undefined;
790
799
  }
791
800
  async $provideHistoryItemChanges(sourceControlHandle, historyItemId, historyItemParentId, token) {
792
801
  const historyProvider = this._sourceControls.get(sourceControlHandle)?.historyProvider;
@@ -93,7 +93,7 @@ let ExtHostSearch = class ExtHostSearch {
93
93
  $provideTextSearchResults(handle, session, rawQuery, token) {
94
94
  const provider = this._textSearchProvider.get(handle);
95
95
  if (!provider || !provider.provideTextSearchResults) {
96
- throw ( new Error(`2 Unknown provider ${handle}`));
96
+ throw ( new Error(`Unknown Text Search Provider ${handle}`));
97
97
  }
98
98
  const query = reviveQuery(rawQuery);
99
99
  const engine = this.createTextSearchManager(query, provider);
@@ -102,7 +102,7 @@ let ExtHostSearch = class ExtHostSearch {
102
102
  $provideAITextSearchResults(handle, session, rawQuery, token) {
103
103
  const provider = this._aiTextSearchProvider.get(handle);
104
104
  if (!provider || !provider.provideAITextSearchResults) {
105
- throw ( new Error(`1 Unknown provider ${handle}`));
105
+ throw ( new Error(`Unknown AI Text Search Provider ${handle}`));
106
106
  }
107
107
  const query = reviveQuery(rawQuery);
108
108
  const engine = this.createAITextSearchManager(query, provider);
@@ -1,17 +1,20 @@
1
1
  import { ExtensionIdentifier } from '../../../platform/extensions/common/extensions.js';
2
- import { Emitter } from '../../../base/common/event.js';
2
+ import { Event } from '../../../base/common/event.js';
3
+ import { DisposableStore } from '../../../base/common/lifecycle.js';
3
4
  class ExtensionSecrets {
4
5
  #secretState;
5
6
  constructor(extensionDescription, secretState) {
6
- this._onDidChange = ( new Emitter());
7
- this.onDidChange = this._onDidChange.event;
7
+ this.disposables = ( new DisposableStore());
8
8
  this._id = ExtensionIdentifier.toKey(extensionDescription.identifier);
9
9
  this.#secretState = secretState;
10
- this.#secretState.onDidChangePassword(e => {
11
- if (e.extensionId === this._id) {
12
- this._onDidChange.fire({ key: e.key });
13
- }
14
- });
10
+ this.onDidChange = ( Event.map(
11
+ Event.filter(this.#secretState.onDidChangePassword, e => e.extensionId === this._id),
12
+ e => ({ key: e.key }),
13
+ this.disposables
14
+ ));
15
+ }
16
+ dispose() {
17
+ this.disposables.dispose();
15
18
  }
16
19
  get(key) {
17
20
  return this.#secretState.get(this._id, key);
@@ -718,7 +718,7 @@ let BaseExtHostTerminalService = class BaseExtHostTerminalService extends Dispos
718
718
  getEnvironmentVariableCollection(extension) {
719
719
  let collection = this._environmentVariableCollections.get(extension.identifier.value);
720
720
  if (!collection) {
721
- collection = ( (new UnifiedEnvironmentVariableCollection()));
721
+ collection = this._register(( (new UnifiedEnvironmentVariableCollection())));
722
722
  this._setEnvironmentVariableCollection(extension.identifier.value, collection);
723
723
  }
724
724
  return collection.getScopedEnvironmentVariableCollection(undefined);
@@ -731,7 +731,7 @@ let BaseExtHostTerminalService = class BaseExtHostTerminalService extends Dispos
731
731
  $initEnvironmentVariableCollections(collections) {
732
732
  collections.forEach(entry => {
733
733
  const extensionIdentifier = entry[0];
734
- const collection = ( (new UnifiedEnvironmentVariableCollection(entry[1])));
734
+ const collection = this._register(( (new UnifiedEnvironmentVariableCollection(entry[1]))));
735
735
  this._setEnvironmentVariableCollection(extensionIdentifier, collection);
736
736
  });
737
737
  }
@@ -745,16 +745,16 @@ let BaseExtHostTerminalService = class BaseExtHostTerminalService extends Dispos
745
745
  }
746
746
  _setEnvironmentVariableCollection(extensionIdentifier, collection) {
747
747
  this._environmentVariableCollections.set(extensionIdentifier, collection);
748
- collection.onDidChangeCollection(() => {
748
+ this._register(collection.onDidChangeCollection(() => {
749
749
  this._syncEnvironmentVariableCollection(extensionIdentifier, collection);
750
- });
750
+ }));
751
751
  }
752
752
  };
753
753
  BaseExtHostTerminalService = ( (__decorate([
754
754
  ( (__param(1, IExtHostCommands))),
755
755
  ( (__param(2, IExtHostRpcService)))
756
756
  ], BaseExtHostTerminalService)));
757
- class UnifiedEnvironmentVariableCollection {
757
+ class UnifiedEnvironmentVariableCollection extends Disposable {
758
758
  get persistent() { return this._persistent; }
759
759
  set persistent(value) {
760
760
  this._persistent = value;
@@ -762,6 +762,7 @@ class UnifiedEnvironmentVariableCollection {
762
762
  }
763
763
  get onDidChangeCollection() { return this._onDidChangeCollection && this._onDidChangeCollection.event; }
764
764
  constructor(serialized) {
765
+ super();
765
766
  this.map = ( (new Map()));
766
767
  this.scopedCollections = ( (new Map()));
767
768
  this.descriptionMap = ( (new Map()));
@@ -775,7 +776,7 @@ class UnifiedEnvironmentVariableCollection {
775
776
  if (!scopedCollection) {
776
777
  scopedCollection = ( (new ScopedEnvironmentVariableCollection(this, scope)));
777
778
  this.scopedCollections.set(scopedCollectionKey, scopedCollection);
778
- scopedCollection.onDidChangeCollection(() => this._onDidChangeCollection.fire());
779
+ this._register(scopedCollection.onDidChangeCollection(() => this._onDidChangeCollection.fire()));
779
780
  }
780
781
  return scopedCollection;
781
782
  }