@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
@@ -4,7 +4,7 @@ import { localizeWithPath, localize2WithPath } from '../../../../nls.js';
4
4
  import { Action, SubmenuAction, Separator } from '../../../../base/common/actions.js';
5
5
  import { Throttler, Delayer, Promises } from '../../../../base/common/async.js';
6
6
  import { getDomNodePagePosition } from '../../../../base/browser/dom.js';
7
- import { Event, Emitter } from '../../../../base/common/event.js';
7
+ import { Emitter, Event } from '../../../../base/common/event.js';
8
8
  import { parse, parseTree, findNodeAtLocation } from '../../../../base/common/json.js';
9
9
  import { IContextMenuService } from '../../../../platform/contextview/browser/contextView.service.js';
10
10
  import { disposeIfDisposable } from '../../../../base/common/lifecycle.js';
@@ -14,7 +14,7 @@ import { ExtensionsConfigurationInitialContent } from '../common/extensionsFileT
14
14
  import { InstallOperation, ExtensionManagementErrorCode, TargetPlatformToString } from '../../../../platform/extensionManagement/common/extensionManagement.js';
15
15
  import { IExtensionGalleryService } from '../../../../platform/extensionManagement/common/extensionManagement.service.js';
16
16
  import { EnablementState } from '../../../services/extensionManagement/common/extensionManagement.js';
17
- import { IExtensionManagementServerService, IWorkbenchExtensionEnablementService } from '../../../services/extensionManagement/common/extensionManagement.service.js';
17
+ import { IExtensionManagementServerService, IWorkbenchExtensionManagementService, IWorkbenchExtensionEnablementService } from '../../../services/extensionManagement/common/extensionManagement.service.js';
18
18
  import { ExtensionRecommendationReason } from '../../../services/extensionRecommendations/common/extensionRecommendations.js';
19
19
  import { IExtensionRecommendationsService, IExtensionIgnoredRecommendationsService } from '../../../services/extensionRecommendations/common/extensionRecommendations.service.js';
20
20
  import { areSameExtensions, getExtensionId } from '../../../../platform/extensionManagement/common/extensionManagementUtil.js';
@@ -67,7 +67,6 @@ import { ActionViewItem } from '../../../../base/browser/ui/actionbar/actionView
67
67
  import { EXTENSIONS_CONFIG } from '../../../services/extensionRecommendations/common/workspaceExtensionsConfig.js';
68
68
  import { getErrorMessage, isCancellationError } from '../../../../base/common/errors.js';
69
69
  import { IUserDataSyncEnablementService } from '../../../../platform/userDataSync/common/userDataSync.service.js';
70
- import { ActionWithDropdownActionViewItem } from '../../../../base/browser/ui/dropdown/dropdownActionViewItem.js';
71
70
  import { ILogService } from '../../../../platform/log/common/log.service.js';
72
71
  import { manageExtensionIcon, syncIgnoredIcon, syncEnabledIcon, warningIcon, infoIcon, trustIcon, errorIcon } from './extensionsIcons.js';
73
72
  import { language, isWeb, isIOS } from '../../../../base/common/platform.js';
@@ -88,6 +87,7 @@ import { Extensions } from '../../../services/extensionManagement/common/extensi
88
87
  import { IExtensionFeaturesManagementService } from '../../../services/extensionManagement/common/extensionFeatures.service.js';
89
88
  import { Registry } from '../../../../platform/registry/common/platform.js';
90
89
  import { IUpdateService } from '../../../../platform/update/common/update.service.js';
90
+ import { ActionWithDropdownActionViewItem } from '../../../../base/browser/ui/dropdown/dropdownActionViewItem.js';
91
91
  import Severity$1 from '../../../../base/common/severity.js';
92
92
  var InstallAction_1, InstallInOtherServerAction_1, UninstallAction_1, ToggleAutoUpdateForExtensionAction_1, ToggleAutoUpdatesForPublisherAction_1, MigrateDeprecatedExtensionAction_1, ManageExtensionAction_1, TogglePreReleaseExtensionAction_1, InstallAnotherVersionAction_1, EnableForWorkspaceAction_1, EnableGloballyAction_1, DisableForWorkspaceAction_1, DisableGloballyAction_1, ExtensionRuntimeStateAction_1, SetColorThemeAction_1, SetFileIconThemeAction_1, SetProductIconThemeAction_1, SetLanguageAction_1, ClearLanguageAction_1, ShowRecommendedExtensionAction_1, InstallRecommendedExtensionAction_1, IgnoreExtensionRecommendationAction_1, UndoIgnoreExtensionRecommendationAction_1, ExtensionStatusLabelAction_1, ToggleSyncExtensionAction_1, ExtensionStatusAction_1, ReinstallAction_1, InstallSpecificVersionOfExtensionAction_1;
93
93
  const _moduleId = "vs/workbench/contrib/extensions/browser/extensionsActions";
@@ -150,7 +150,7 @@ let PromptExtensionInstallFailureAction = class PromptExtensionInstallFailureAct
150
150
  });
151
151
  return;
152
152
  }
153
- if ([ExtensionManagementErrorCode.Incompatible, ExtensionManagementErrorCode.IncompatibleTargetPlatform, ExtensionManagementErrorCode.Malicious, ExtensionManagementErrorCode.Deprecated].includes(this.error.name)) {
153
+ if ([ExtensionManagementErrorCode.Incompatible, ExtensionManagementErrorCode.IncompatibleApi, ExtensionManagementErrorCode.IncompatibleTargetPlatform, ExtensionManagementErrorCode.Malicious, ExtensionManagementErrorCode.Deprecated].includes(this.error.name)) {
154
154
  await this.dialogService.info(getErrorMessage(this.error));
155
155
  return;
156
156
  }
@@ -267,16 +267,34 @@ PromptExtensionInstallFailureAction = ( (__decorate([
267
267
  class ExtensionAction extends Action {
268
268
  constructor() {
269
269
  super(...arguments);
270
+ this._onDidChange = this._register(( (new Emitter())));
271
+ this.onDidChange = this._onDidChange.event;
270
272
  this._extension = null;
273
+ this._hidden = false;
274
+ this.hideOnDisabled = true;
271
275
  }
272
276
  static { this.EXTENSION_ACTION_CLASS = 'extension-action'; }
273
277
  static { this.TEXT_ACTION_CLASS = `${ExtensionAction.EXTENSION_ACTION_CLASS} text`; }
274
278
  static { this.LABEL_ACTION_CLASS = `${ExtensionAction.EXTENSION_ACTION_CLASS} label`; }
279
+ static { this.PROMINENT_LABEL_ACTION_CLASS = `${ExtensionAction.LABEL_ACTION_CLASS} prominent`; }
275
280
  static { this.ICON_ACTION_CLASS = `${ExtensionAction.EXTENSION_ACTION_CLASS} icon`; }
276
281
  get extension() { return this._extension; }
277
282
  set extension(extension) { this._extension = extension; this.update(); }
283
+ get hidden() { return this._hidden; }
284
+ set hidden(hidden) {
285
+ if (this._hidden !== hidden) {
286
+ this._hidden = hidden;
287
+ this._onDidChange.fire({ hidden });
288
+ }
289
+ }
290
+ _setEnabled(value) {
291
+ super._setEnabled(value);
292
+ if (this.hideOnDisabled) {
293
+ this.hidden = !value;
294
+ }
295
+ }
278
296
  }
279
- class ActionWithDropDownAction extends ExtensionAction {
297
+ class ButtonWithDropDownExtensionAction extends ExtensionAction {
280
298
  get menuActions() { return [...this._menuActions]; }
281
299
  get extension() {
282
300
  return super.extension;
@@ -285,10 +303,14 @@ class ActionWithDropDownAction extends ExtensionAction {
285
303
  this.extensionActions.forEach(a => a.extension = extension);
286
304
  super.extension = extension;
287
305
  }
288
- constructor(id, label, actionsGroups) {
289
- super(id, label);
306
+ constructor(id, clazz, actionsGroups) {
307
+ clazz = `${clazz} action-dropdown`;
308
+ super(id, undefined, clazz);
290
309
  this.actionsGroups = actionsGroups;
310
+ this.menuActionClassNames = [];
291
311
  this._menuActions = [];
312
+ this.menuActionClassNames = clazz.split(' ');
313
+ this.hideOnDisabled = false;
292
314
  this.extensionActions = actionsGroups.flat();
293
315
  this.update();
294
316
  this._register(Event.any(...( (this.extensionActions.map(a => a.onDidChange))))(() => this.update(true)));
@@ -298,45 +320,70 @@ class ActionWithDropDownAction extends ExtensionAction {
298
320
  if (!donotUpdateActions) {
299
321
  this.extensionActions.forEach(a => a.update());
300
322
  }
301
- const enabledActionsGroups = ( (this.actionsGroups.map(actionsGroup => actionsGroup.filter(a => a.enabled))));
323
+ const actionsGroups = ( (this.actionsGroups.map(actionsGroup => actionsGroup.filter(a => !a.hidden))));
302
324
  let actions = [];
303
- for (const enabledActions of enabledActionsGroups) {
304
- if (enabledActions.length) {
305
- actions = [...actions, ...enabledActions, ( (new Separator()))];
325
+ for (const visibleActions of actionsGroups) {
326
+ if (visibleActions.length) {
327
+ actions = [...actions, ...visibleActions, ( (new Separator()))];
306
328
  }
307
329
  }
308
330
  actions = actions.length ? actions.slice(0, actions.length - 1) : actions;
309
- this.action = actions[0];
331
+ this.primaryAction = actions[0];
310
332
  this._menuActions = actions.length > 1 ? actions : [];
311
- this.enabled = !!this.action;
312
- if (this.action) {
313
- this.label = this.getLabel(this.action);
314
- this.tooltip = this.action.tooltip;
333
+ this._onDidChange.fire({ menuActions: this._menuActions });
334
+ if (this.primaryAction) {
335
+ this.hidden = false;
336
+ this.enabled = this.primaryAction.enabled;
337
+ this.label = this.getLabel(this.primaryAction);
338
+ this.tooltip = this.primaryAction.tooltip;
315
339
  }
316
- let clazz = (this.action || this.extensionActions[0])?.class || '';
317
- clazz = clazz ? `${clazz} action-dropdown` : 'action-dropdown';
318
- if (this._menuActions.length === 0) {
319
- clazz += ' action-dropdown';
340
+ else {
341
+ this.hidden = true;
342
+ this.enabled = false;
320
343
  }
321
- this.class = clazz;
322
344
  }
323
- run() {
324
- const enabledActions = this.extensionActions.filter(a => a.enabled);
325
- return enabledActions[0].run();
345
+ async run() {
346
+ if (this.enabled) {
347
+ await this.primaryAction?.run();
348
+ }
326
349
  }
327
350
  getLabel(action) {
328
351
  return action.label;
329
352
  }
330
353
  }
354
+ class ButtonWithDropdownExtensionActionViewItem extends ActionWithDropdownActionViewItem {
355
+ constructor(action, options, contextMenuProvider) {
356
+ super(null, action, options, contextMenuProvider);
357
+ this._register(action.onDidChange(e => {
358
+ if (e.hidden !== undefined || e.menuActions !== undefined) {
359
+ this.updateClass();
360
+ }
361
+ }));
362
+ }
363
+ render(container) {
364
+ super.render(container);
365
+ this.updateClass();
366
+ }
367
+ updateClass() {
368
+ super.updateClass();
369
+ if (this.element && this.dropdownMenuActionViewItem?.element) {
370
+ this.element.classList.toggle('hide', this._action.hidden);
371
+ const isMenuEmpty = this._action.menuActions.length === 0;
372
+ this.element.classList.toggle('empty', isMenuEmpty);
373
+ this.dropdownMenuActionViewItem.element.classList.toggle('hide', isMenuEmpty);
374
+ }
375
+ }
376
+ }
331
377
  let InstallAction = class InstallAction extends ExtensionAction {
332
378
  static { InstallAction_1 = this; }
333
- static { this.Class = `${ExtensionAction.LABEL_ACTION_CLASS} prominent install`; }
379
+ static { this.CLASS = `${ExtensionAction.LABEL_ACTION_CLASS} prominent install`; }
380
+ static { this.HIDE = `${InstallAction_1.CLASS} hide`; }
334
381
  set manifest(manifest) {
335
382
  this._manifest = manifest;
336
383
  this.updateLabel();
337
384
  }
338
385
  constructor(options, extensionsWorkbenchService, instantiationService, runtimeExtensionService, workbenchThemeService, labelService, dialogService, preferencesService, telemetryService, contextService) {
339
- super('extensions.install', ( localizeWithPath(_moduleId, 14, "Install")), InstallAction_1.Class, false);
386
+ super('extensions.install', ( localizeWithPath(_moduleId, 14, "Install")), InstallAction_1.CLASS, false);
340
387
  this.extensionsWorkbenchService = extensionsWorkbenchService;
341
388
  this.instantiationService = instantiationService;
342
389
  this.runtimeExtensionService = runtimeExtensionService;
@@ -348,7 +395,8 @@ let InstallAction = class InstallAction extends ExtensionAction {
348
395
  this.contextService = contextService;
349
396
  this._manifest = null;
350
397
  this.updateThrottler = ( (new Throttler()));
351
- this.options = { ...options, isMachineScoped: false };
398
+ this.hideOnDisabled = false;
399
+ this.options = { isMachineScoped: false, ...options };
352
400
  this.update();
353
401
  this._register(this.labelService.onDidChangeFormatters(() => this.updateLabel(), this));
354
402
  }
@@ -357,6 +405,8 @@ let InstallAction = class InstallAction extends ExtensionAction {
357
405
  }
358
406
  async computeAndUpdateEnablement() {
359
407
  this.enabled = false;
408
+ this.class = InstallAction_1.HIDE;
409
+ this.hidden = true;
360
410
  if (!this.extension) {
361
411
  return;
362
412
  }
@@ -366,8 +416,19 @@ let InstallAction = class InstallAction extends ExtensionAction {
366
416
  if (this.extensionsWorkbenchService.canSetLanguage(this.extension)) {
367
417
  return;
368
418
  }
369
- if (this.extension.state === ExtensionState.Uninstalled && (await this.extensionsWorkbenchService.canInstall(this.extension))) {
370
- this.enabled = this.options.installPreReleaseVersion ? this.extension.hasPreReleaseVersion : this.extension.hasReleaseVersion;
419
+ if (this.extension.state !== ExtensionState.Uninstalled) {
420
+ return;
421
+ }
422
+ if (this.options.installPreReleaseVersion && !this.extension.hasPreReleaseVersion) {
423
+ return;
424
+ }
425
+ if (!this.options.installPreReleaseVersion && !this.extension.hasReleaseVersion) {
426
+ return;
427
+ }
428
+ this.hidden = false;
429
+ this.class = InstallAction_1.CLASS;
430
+ if (await this.extensionsWorkbenchService.canInstall(this.extension)) {
431
+ this.enabled = true;
371
432
  this.updateLabel();
372
433
  }
373
434
  }
@@ -559,13 +620,13 @@ InstallAction = InstallAction_1 = ( (__decorate([
559
620
  ( (__param(8, ITelemetryService))),
560
621
  ( (__param(9, IWorkspaceContextService)))
561
622
  ], InstallAction)));
562
- let InstallDropdownAction = class InstallDropdownAction extends ActionWithDropDownAction {
623
+ let InstallDropdownAction = class InstallDropdownAction extends ButtonWithDropDownExtensionAction {
563
624
  set manifest(manifest) {
564
625
  this.extensionActions.forEach(a => a.manifest = manifest);
565
626
  this.update();
566
627
  }
567
628
  constructor(instantiationService, extensionsWorkbenchService) {
568
- super(`extensions.installActions`, '', [
629
+ super(`extensions.installActions`, InstallAction.CLASS, [
569
630
  [
570
631
  instantiationService.createInstance(InstallAction, { installPreReleaseVersion: extensionsWorkbenchService.preferPreReleases }),
571
632
  instantiationService.createInstance(InstallAction, { installPreReleaseVersion: !extensionsWorkbenchService.preferPreReleases }),
@@ -594,8 +655,8 @@ let InstallInOtherServerAction = class InstallInOtherServerAction extends Extens
594
655
  static { InstallInOtherServerAction_1 = this; }
595
656
  static { this.INSTALL_LABEL = ( localizeWithPath(_moduleId, 14, "Install")); }
596
657
  static { this.INSTALLING_LABEL = ( localizeWithPath(_moduleId, 27, "Installing")); }
597
- static { this.Class = `${ExtensionAction.LABEL_ACTION_CLASS} prominent install`; }
598
- static { this.InstallingClass = `${ExtensionAction.LABEL_ACTION_CLASS} install installing`; }
658
+ static { this.Class = `${ExtensionAction.LABEL_ACTION_CLASS} prominent install-other-server`; }
659
+ static { this.InstallingClass = `${ExtensionAction.LABEL_ACTION_CLASS} install-other-server installing`; }
599
660
  constructor(id, server, canInstallAnyWhere, extensionsWorkbenchService, extensionManagementServerService, extensionManifestPropertiesService) {
600
661
  super(id, InstallInOtherServerAction_1.INSTALL_LABEL, InstallInOtherServerAction_1.Class, false);
601
662
  this.server = server;
@@ -999,30 +1060,14 @@ let MigrateDeprecatedExtensionAction = class MigrateDeprecatedExtensionAction ex
999
1060
  MigrateDeprecatedExtensionAction = MigrateDeprecatedExtensionAction_1 = ( (__decorate([
1000
1061
  ( (__param(1, IExtensionsWorkbenchService)))
1001
1062
  ], MigrateDeprecatedExtensionAction)));
1002
- class ExtensionActionWithDropdownActionViewItem extends ActionWithDropdownActionViewItem {
1003
- constructor(action, options, contextMenuProvider) {
1004
- super(null, action, options, contextMenuProvider);
1005
- }
1006
- render(container) {
1007
- super.render(container);
1008
- this.updateClass();
1009
- }
1010
- updateClass() {
1011
- super.updateClass();
1012
- if (this.element && this.dropdownMenuActionViewItem && this.dropdownMenuActionViewItem.element) {
1013
- this.element.classList.toggle('empty', this._action.menuActions.length === 0);
1014
- this.dropdownMenuActionViewItem.element.classList.toggle('hide', this._action.menuActions.length === 0);
1015
- }
1016
- }
1017
- }
1018
- let ExtensionDropDownAction = class ExtensionDropDownAction extends ExtensionAction {
1063
+ let DropDownExtensionAction = class DropDownExtensionAction extends ExtensionAction {
1019
1064
  constructor(id, label, cssClass, enabled, instantiationService) {
1020
1065
  super(id, label, cssClass, enabled);
1021
1066
  this.instantiationService = instantiationService;
1022
1067
  this._actionViewItem = null;
1023
1068
  }
1024
1069
  createActionViewItem(options) {
1025
- this._actionViewItem = this.instantiationService.createInstance(DropDownMenuActionViewItem, this, options);
1070
+ this._actionViewItem = this.instantiationService.createInstance(DropDownExtensionActionViewItem, this, options);
1026
1071
  return this._actionViewItem;
1027
1072
  }
1028
1073
  run({ actionGroups, disposeActionsOnHide }) {
@@ -1030,10 +1075,10 @@ let ExtensionDropDownAction = class ExtensionDropDownAction extends ExtensionAct
1030
1075
  return Promise.resolve();
1031
1076
  }
1032
1077
  };
1033
- ExtensionDropDownAction = ( (__decorate([
1078
+ DropDownExtensionAction = ( (__decorate([
1034
1079
  ( (__param(4, IInstantiationService)))
1035
- ], ExtensionDropDownAction)));
1036
- let DropDownMenuActionViewItem = class DropDownMenuActionViewItem extends ActionViewItem {
1080
+ ], DropDownExtensionAction)));
1081
+ let DropDownExtensionActionViewItem = class DropDownExtensionActionViewItem extends ActionViewItem {
1037
1082
  constructor(action, options, contextMenuService) {
1038
1083
  super(null, action, { ...options, icon: true, label: true });
1039
1084
  this.contextMenuService = contextMenuService;
@@ -1061,9 +1106,9 @@ let DropDownMenuActionViewItem = class DropDownMenuActionViewItem extends Action
1061
1106
  return actions.length ? actions.slice(0, actions.length - 1) : actions;
1062
1107
  }
1063
1108
  };
1064
- DropDownMenuActionViewItem = ( (__decorate([
1109
+ DropDownExtensionActionViewItem = ( (__decorate([
1065
1110
  ( (__param(2, IContextMenuService)))
1066
- ], DropDownMenuActionViewItem)));
1111
+ ], DropDownExtensionActionViewItem)));
1067
1112
  async function getContextMenuActionsGroups(extension, contextKeyService, instantiationService) {
1068
1113
  return instantiationService.invokeFunction(async (accessor) => {
1069
1114
  const extensionsWorkbenchService = accessor.get(IExtensionsWorkbenchService);
@@ -1078,6 +1123,7 @@ async function getContextMenuActionsGroups(extension, contextKeyService, instant
1078
1123
  cksOverlay.push(['isDefaultApplicationScopedExtension', extension.local && isApplicationScopedExtension(extension.local.manifest)]);
1079
1124
  cksOverlay.push(['isApplicationScopedExtension', extension.local && extension.local.isApplicationScoped]);
1080
1125
  cksOverlay.push(['isWorkspaceScopedExtension', extension.isWorkspaceScoped]);
1126
+ cksOverlay.push(['isGalleryExtension', !!extension.identifier.uuid]);
1081
1127
  if (extension.local) {
1082
1128
  cksOverlay.push(['extensionSource', extension.local.source]);
1083
1129
  }
@@ -1087,14 +1133,27 @@ async function getContextMenuActionsGroups(extension, contextKeyService, instant
1087
1133
  cksOverlay.push(['isExtensionRecommended', !!extensionRecommendationsService.getAllRecommendationsWithReason()[extension.identifier.id.toLowerCase()]]);
1088
1134
  cksOverlay.push(['isExtensionWorkspaceRecommended', extensionRecommendationsService.getAllRecommendationsWithReason()[extension.identifier.id.toLowerCase()]?.reasonId === ExtensionRecommendationReason.Workspace]);
1089
1135
  cksOverlay.push(['isUserIgnoredRecommendation', ( (extensionIgnoredRecommendationsService.globalIgnoredRecommendations.some(e => e === extension.identifier.id.toLowerCase())))]);
1090
- if (extension.state === ExtensionState.Installed) {
1091
- cksOverlay.push(['extensionStatus', 'installed']);
1136
+ switch (extension.state) {
1137
+ case ExtensionState.Installing:
1138
+ cksOverlay.push(['extensionStatus', 'installing']);
1139
+ break;
1140
+ case ExtensionState.Installed:
1141
+ cksOverlay.push(['extensionStatus', 'installed']);
1142
+ break;
1143
+ case ExtensionState.Uninstalling:
1144
+ cksOverlay.push(['extensionStatus', 'uninstalling']);
1145
+ break;
1146
+ case ExtensionState.Uninstalled:
1147
+ cksOverlay.push(['extensionStatus', 'uninstalled']);
1148
+ break;
1092
1149
  }
1093
1150
  cksOverlay.push(['installedExtensionIsPreReleaseVersion', !!extension.local?.isPreReleaseVersion]);
1094
1151
  cksOverlay.push(['installedExtensionIsOptedToPreRelease', !!extension.local?.preRelease]);
1095
1152
  cksOverlay.push(['galleryExtensionIsPreReleaseVersion', !!extension.gallery?.properties.isPreReleaseVersion]);
1096
1153
  cksOverlay.push(['galleryExtensionHasPreReleaseVersion', extension.gallery?.hasPreReleaseVersion]);
1154
+ cksOverlay.push(['extensionHasPreReleaseVersion', extension.hasPreReleaseVersion]);
1097
1155
  cksOverlay.push(['extensionHasReleaseVersion', extension.hasReleaseVersion]);
1156
+ cksOverlay.push(['extensionDisallowInstall', !!extension.deprecationInfo?.disallowInstall]);
1098
1157
  const [colorThemes, fileIconThemes, productIconThemes] = await Promise.all([workbenchThemeService.getColorThemes(), workbenchThemeService.getFileIconThemes(), workbenchThemeService.getProductIconThemes()]);
1099
1158
  cksOverlay.push(['extensionHasColorThemes', ( (colorThemes.some(theme => isThemeFromExtension(theme, extension))))]);
1100
1159
  cksOverlay.push(['extensionHasFileIconThemes', ( (fileIconThemes.some(theme => isThemeFromExtension(theme, extension))))]);
@@ -1124,7 +1183,7 @@ async function getContextMenuActions(extension, contextKeyService, instantiation
1124
1183
  const actionsGroups = await getContextMenuActionsGroups(extension, contextKeyService, instantiationService);
1125
1184
  return toActions(actionsGroups, instantiationService);
1126
1185
  }
1127
- let ManageExtensionAction = class ManageExtensionAction extends ExtensionDropDownAction {
1186
+ let ManageExtensionAction = class ManageExtensionAction extends DropDownExtensionAction {
1128
1187
  static { ManageExtensionAction_1 = this; }
1129
1188
  static { this.ID = 'extensions.manage'; }
1130
1189
  static { this.Class = `${ExtensionAction.ICON_ACTION_CLASS} manage ` + ThemeIcon.asClassName(manageExtensionIcon); }
@@ -1170,7 +1229,7 @@ let ManageExtensionAction = class ManageExtensionAction extends ExtensionDropDow
1170
1229
  }
1171
1230
  groups.push([
1172
1231
  ...(installActions.length ? installActions : []),
1173
- this.instantiationService.createInstance(InstallAnotherVersionAction),
1232
+ this.instantiationService.createInstance(InstallAnotherVersionAction, this.extension, false),
1174
1233
  this.instantiationService.createInstance(UninstallAction),
1175
1234
  ]);
1176
1235
  otherActionGroups.forEach(actions => groups.push(actions));
@@ -1200,7 +1259,7 @@ ManageExtensionAction = ManageExtensionAction_1 = ( (__decorate([
1200
1259
  ( (__param(1, IExtensionService))),
1201
1260
  ( (__param(2, IContextKeyService)))
1202
1261
  ], ManageExtensionAction)));
1203
- class ExtensionEditorManageExtensionAction extends ExtensionDropDownAction {
1262
+ class ExtensionEditorManageExtensionAction extends DropDownExtensionAction {
1204
1263
  constructor(contextKeyService, instantiationService) {
1205
1264
  super('extensionEditor.manageExtension', '', `${ExtensionAction.ICON_ACTION_CLASS} manage ${ThemeIcon.asClassName(manageExtensionIcon)}`, true, instantiationService);
1206
1265
  this.contextKeyService = contextKeyService;
@@ -1323,24 +1382,33 @@ let InstallAnotherVersionAction = class InstallAnotherVersionAction extends Exte
1323
1382
  static { InstallAnotherVersionAction_1 = this; }
1324
1383
  static { this.ID = 'workbench.extensions.action.install.anotherVersion'; }
1325
1384
  static { this.LABEL = ( localizeWithPath(_moduleId, 53, "Install Another Version...")); }
1326
- constructor(extensionsWorkbenchService, extensionGalleryService, quickInputService, instantiationService, dialogService) {
1385
+ constructor(extension, whenInstalled, extensionsWorkbenchService, extensionManagementService, extensionGalleryService, quickInputService, instantiationService, dialogService) {
1327
1386
  super(InstallAnotherVersionAction_1.ID, InstallAnotherVersionAction_1.LABEL, ExtensionAction.LABEL_ACTION_CLASS);
1387
+ this.whenInstalled = whenInstalled;
1328
1388
  this.extensionsWorkbenchService = extensionsWorkbenchService;
1389
+ this.extensionManagementService = extensionManagementService;
1329
1390
  this.extensionGalleryService = extensionGalleryService;
1330
1391
  this.quickInputService = quickInputService;
1331
1392
  this.instantiationService = instantiationService;
1332
1393
  this.dialogService = dialogService;
1394
+ this.extension = extension;
1333
1395
  this.update();
1334
1396
  }
1335
1397
  update() {
1336
- this.enabled = !!this.extension && !this.extension.isBuiltin && !!this.extension.gallery && !!this.extension.local && !!this.extension.server && this.extension.state === ExtensionState.Installed && !this.extension.deprecationInfo;
1398
+ this.enabled = !!this.extension && !this.extension.isBuiltin && !!this.extension.identifier.uuid && !this.extension.deprecationInfo;
1399
+ if (this.enabled && this.whenInstalled) {
1400
+ this.enabled = !!this.extension?.local && !!this.extension.server && this.extension.state === ExtensionState.Installed;
1401
+ }
1337
1402
  }
1338
1403
  async run() {
1339
1404
  if (!this.enabled) {
1340
1405
  return;
1341
1406
  }
1342
- const targetPlatform = await this.extension.server.extensionManagementService.getTargetPlatform();
1343
- const allVersions = await this.extensionGalleryService.getAllCompatibleVersions(this.extension.gallery, this.extension.local.preRelease, targetPlatform);
1407
+ if (!this.extension) {
1408
+ return;
1409
+ }
1410
+ const targetPlatform = this.extension.server ? await this.extension.server.extensionManagementService.getTargetPlatform() : await this.extensionManagementService.getTargetPlatform();
1411
+ const allVersions = await this.extensionGalleryService.getAllCompatibleVersions(this.extension.identifier, this.extension.local?.preRelease ?? this.extension.gallery?.properties.isPreReleaseVersion ?? false, targetPlatform);
1344
1412
  if (!allVersions.length) {
1345
1413
  await this.dialogService.info(( localizeWithPath(_moduleId, 54, "This extension has no other versions.")));
1346
1414
  return;
@@ -1349,7 +1417,7 @@ let InstallAnotherVersionAction = class InstallAnotherVersionAction extends Exte
1349
1417
  return {
1350
1418
  id: v.version,
1351
1419
  label: v.version,
1352
- description: `${fromNow(( (new Date(Date.parse(v.date)))), true)}${v.isPreReleaseVersion ? ` (${( localizeWithPath(_moduleId, 55, "pre-release"))})` : ''}${v.version === this.extension.version ? ` (${( localizeWithPath(_moduleId, 56, "current"))})` : ''}`,
1420
+ description: `${fromNow(( (new Date(Date.parse(v.date)))), true)}${v.isPreReleaseVersion ? ` (${( localizeWithPath(_moduleId, 55, "pre-release"))})` : ''}${v.version === this.extension?.local?.manifest.version ? ` (${( localizeWithPath(_moduleId, 56, "current"))})` : ''}`,
1353
1421
  latest: i === 0,
1354
1422
  ariaLabel: `${v.isPreReleaseVersion ? 'Pre-Release version' : 'Release version'} ${v.version}`,
1355
1423
  isPreReleaseVersion: v.isPreReleaseVersion
@@ -1360,12 +1428,12 @@ let InstallAnotherVersionAction = class InstallAnotherVersionAction extends Exte
1360
1428
  matchOnDetail: true
1361
1429
  });
1362
1430
  if (pick) {
1363
- if (this.extension.version === pick.id) {
1431
+ if (this.extension.local?.manifest.version === pick.id) {
1364
1432
  return;
1365
1433
  }
1366
1434
  try {
1367
1435
  if (pick.latest) {
1368
- const [extension] = pick.id !== this.extension?.version ? await this.extensionsWorkbenchService.getExtensions([{ id: this.extension.identifier.id, preRelease: pick.isPreReleaseVersion }], CancellationToken.None) : [this.extension];
1436
+ const [extension] = pick.id !== this.extension.version ? await this.extensionsWorkbenchService.getExtensions([{ id: this.extension.identifier.id, preRelease: pick.isPreReleaseVersion }], CancellationToken.None) : [this.extension];
1369
1437
  await this.extensionsWorkbenchService.install(extension ?? this.extension, { installPreReleaseVersion: pick.isPreReleaseVersion });
1370
1438
  }
1371
1439
  else {
@@ -1380,11 +1448,12 @@ let InstallAnotherVersionAction = class InstallAnotherVersionAction extends Exte
1380
1448
  }
1381
1449
  };
1382
1450
  InstallAnotherVersionAction = InstallAnotherVersionAction_1 = ( (__decorate([
1383
- ( (__param(0, IExtensionsWorkbenchService))),
1384
- ( (__param(1, IExtensionGalleryService))),
1385
- ( (__param(2, IQuickInputService))),
1386
- ( (__param(3, IInstantiationService))),
1387
- ( (__param(4, IDialogService)))
1451
+ ( (__param(2, IExtensionsWorkbenchService))),
1452
+ ( (__param(3, IWorkbenchExtensionManagementService))),
1453
+ ( (__param(4, IExtensionGalleryService))),
1454
+ ( (__param(5, IQuickInputService))),
1455
+ ( (__param(6, IInstantiationService))),
1456
+ ( (__param(7, IDialogService)))
1388
1457
  ], InstallAnotherVersionAction)));
1389
1458
  let EnableForWorkspaceAction = class EnableForWorkspaceAction extends ExtensionAction {
1390
1459
  static { EnableForWorkspaceAction_1 = this; }
@@ -1518,9 +1587,9 @@ DisableGloballyAction = DisableGloballyAction_1 = ( (__decorate([
1518
1587
  ( (__param(1, IWorkbenchExtensionEnablementService))),
1519
1588
  ( (__param(2, IExtensionService)))
1520
1589
  ], DisableGloballyAction)));
1521
- let EnableDropDownAction = class EnableDropDownAction extends ActionWithDropDownAction {
1590
+ let EnableDropDownAction = class EnableDropDownAction extends ButtonWithDropDownExtensionAction {
1522
1591
  constructor(instantiationService) {
1523
- super('extensions.enable', ( localizeWithPath(_moduleId, 66, "Enable")), [
1592
+ super('extensions.enable', ExtensionAction.LABEL_ACTION_CLASS, [
1524
1593
  [
1525
1594
  instantiationService.createInstance(EnableGloballyAction),
1526
1595
  instantiationService.createInstance(EnableForWorkspaceAction)
@@ -1531,9 +1600,9 @@ let EnableDropDownAction = class EnableDropDownAction extends ActionWithDropDown
1531
1600
  EnableDropDownAction = ( (__decorate([
1532
1601
  ( (__param(0, IInstantiationService)))
1533
1602
  ], EnableDropDownAction)));
1534
- let DisableDropDownAction = class DisableDropDownAction extends ActionWithDropDownAction {
1603
+ let DisableDropDownAction = class DisableDropDownAction extends ButtonWithDropDownExtensionAction {
1535
1604
  constructor(instantiationService) {
1536
- super('extensions.disable', ( localizeWithPath(_moduleId, 67, "Disable")), [[
1605
+ super('extensions.disable', ExtensionAction.LABEL_ACTION_CLASS, [[
1537
1606
  instantiationService.createInstance(DisableGloballyAction),
1538
1607
  instantiationService.createInstance(DisableForWorkspaceAction)
1539
1608
  ]]);
@@ -1579,10 +1648,10 @@ let ExtensionRuntimeStateAction = class ExtensionRuntimeStateAction extends Exte
1579
1648
  this.enabled = true;
1580
1649
  this.class = ExtensionRuntimeStateAction_1.EnabledClass;
1581
1650
  this.tooltip = runtimeState.reason;
1582
- this.label = runtimeState.action === ExtensionRuntimeActionType.ReloadWindow ? ( localizeWithPath(_moduleId, 68, 'Reload Window'))
1583
- : runtimeState.action === ExtensionRuntimeActionType.RestartExtensions ? ( localizeWithPath(_moduleId, 69, 'Restart Extensions'))
1584
- : runtimeState.action === ExtensionRuntimeActionType.QuitAndInstall ? ( localizeWithPath(_moduleId, 70, 'Restart to Update'))
1585
- : runtimeState.action === ExtensionRuntimeActionType.ApplyUpdate || runtimeState.action === ExtensionRuntimeActionType.DownloadUpdate ? ( localizeWithPath(_moduleId, 71, 'Update {0}', this.productService.nameShort)) : '';
1651
+ this.label = runtimeState.action === ExtensionRuntimeActionType.ReloadWindow ? ( localizeWithPath(_moduleId, 66, 'Reload Window'))
1652
+ : runtimeState.action === ExtensionRuntimeActionType.RestartExtensions ? ( localizeWithPath(_moduleId, 67, 'Restart Extensions'))
1653
+ : runtimeState.action === ExtensionRuntimeActionType.QuitAndInstall ? ( localizeWithPath(_moduleId, 68, 'Restart to Update'))
1654
+ : runtimeState.action === ExtensionRuntimeActionType.ApplyUpdate || runtimeState.action === ExtensionRuntimeActionType.DownloadUpdate ? ( localizeWithPath(_moduleId, 69, 'Update {0}', this.productService.nameShort)) : '';
1586
1655
  }
1587
1656
  async run() {
1588
1657
  const runtimeState = this.extension?.runtimeState;
@@ -1636,7 +1705,7 @@ function getQuickPickEntries(themes, currentTheme, extension, showCurrentTheme)
1636
1705
  let SetColorThemeAction = class SetColorThemeAction extends ExtensionAction {
1637
1706
  static { SetColorThemeAction_1 = this; }
1638
1707
  static { this.ID = 'workbench.extensions.action.setColorTheme'; }
1639
- static { this.TITLE = ( localize2WithPath(_moduleId, 72, 'Set Color Theme')); }
1708
+ static { this.TITLE = ( localize2WithPath(_moduleId, 70, 'Set Color Theme')); }
1640
1709
  static { this.EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; }
1641
1710
  static { this.DisabledClass = `${SetColorThemeAction_1.EnabledClass} disabled`; }
1642
1711
  constructor(extensionService, workbenchThemeService, quickInputService, extensionEnablementService) {
@@ -1665,7 +1734,7 @@ let SetColorThemeAction = class SetColorThemeAction extends ExtensionAction {
1665
1734
  const delayer = ( (new Delayer(100)));
1666
1735
  const picks = getQuickPickEntries(colorThemes, currentTheme, this.extension, showCurrentTheme);
1667
1736
  const pickedTheme = await this.quickInputService.pick(picks, {
1668
- placeHolder: ( localizeWithPath(_moduleId, 73, "Select Color Theme")),
1737
+ placeHolder: ( localizeWithPath(_moduleId, 71, "Select Color Theme")),
1669
1738
  onDidFocus: item => delayer.trigger(() => this.workbenchThemeService.setColorTheme(item.id, undefined)),
1670
1739
  ignoreFocusLost
1671
1740
  });
@@ -1681,7 +1750,7 @@ SetColorThemeAction = SetColorThemeAction_1 = ( (__decorate([
1681
1750
  let SetFileIconThemeAction = class SetFileIconThemeAction extends ExtensionAction {
1682
1751
  static { SetFileIconThemeAction_1 = this; }
1683
1752
  static { this.ID = 'workbench.extensions.action.setFileIconTheme'; }
1684
- static { this.TITLE = ( localize2WithPath(_moduleId, 74, 'Set File Icon Theme')); }
1753
+ static { this.TITLE = ( localize2WithPath(_moduleId, 72, 'Set File Icon Theme')); }
1685
1754
  static { this.EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; }
1686
1755
  static { this.DisabledClass = `${SetFileIconThemeAction_1.EnabledClass} disabled`; }
1687
1756
  constructor(extensionService, workbenchThemeService, quickInputService, extensionEnablementService) {
@@ -1710,7 +1779,7 @@ let SetFileIconThemeAction = class SetFileIconThemeAction extends ExtensionActio
1710
1779
  const delayer = ( (new Delayer(100)));
1711
1780
  const picks = getQuickPickEntries(fileIconThemes, currentTheme, this.extension, showCurrentTheme);
1712
1781
  const pickedTheme = await this.quickInputService.pick(picks, {
1713
- placeHolder: ( localizeWithPath(_moduleId, 75, "Select File Icon Theme")),
1782
+ placeHolder: ( localizeWithPath(_moduleId, 73, "Select File Icon Theme")),
1714
1783
  onDidFocus: item => delayer.trigger(() => this.workbenchThemeService.setFileIconTheme(item.id, undefined)),
1715
1784
  ignoreFocusLost
1716
1785
  });
@@ -1726,7 +1795,7 @@ SetFileIconThemeAction = SetFileIconThemeAction_1 = ( (__decorate([
1726
1795
  let SetProductIconThemeAction = class SetProductIconThemeAction extends ExtensionAction {
1727
1796
  static { SetProductIconThemeAction_1 = this; }
1728
1797
  static { this.ID = 'workbench.extensions.action.setProductIconTheme'; }
1729
- static { this.TITLE = ( localize2WithPath(_moduleId, 76, 'Set Product Icon Theme')); }
1798
+ static { this.TITLE = ( localize2WithPath(_moduleId, 74, 'Set Product Icon Theme')); }
1730
1799
  static { this.EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} theme`; }
1731
1800
  static { this.DisabledClass = `${SetProductIconThemeAction_1.EnabledClass} disabled`; }
1732
1801
  constructor(extensionService, workbenchThemeService, quickInputService, extensionEnablementService) {
@@ -1755,7 +1824,7 @@ let SetProductIconThemeAction = class SetProductIconThemeAction extends Extensio
1755
1824
  const delayer = ( (new Delayer(100)));
1756
1825
  const picks = getQuickPickEntries(productIconThemes, currentTheme, this.extension, showCurrentTheme);
1757
1826
  const pickedTheme = await this.quickInputService.pick(picks, {
1758
- placeHolder: ( localizeWithPath(_moduleId, 77, "Select Product Icon Theme")),
1827
+ placeHolder: ( localizeWithPath(_moduleId, 75, "Select Product Icon Theme")),
1759
1828
  onDidFocus: item => delayer.trigger(() => this.workbenchThemeService.setProductIconTheme(item.id, undefined)),
1760
1829
  ignoreFocusLost
1761
1830
  });
@@ -1771,7 +1840,7 @@ SetProductIconThemeAction = SetProductIconThemeAction_1 = ( (__decorate([
1771
1840
  let SetLanguageAction = class SetLanguageAction extends ExtensionAction {
1772
1841
  static { SetLanguageAction_1 = this; }
1773
1842
  static { this.ID = 'workbench.extensions.action.setDisplayLanguage'; }
1774
- static { this.TITLE = ( localize2WithPath(_moduleId, 78, 'Set Display Language')); }
1843
+ static { this.TITLE = ( localize2WithPath(_moduleId, 76, 'Set Display Language')); }
1775
1844
  static { this.EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} language`; }
1776
1845
  static { this.DisabledClass = `${SetLanguageAction_1.EnabledClass} disabled`; }
1777
1846
  constructor(extensionsWorkbenchService) {
@@ -1804,7 +1873,7 @@ SetLanguageAction = SetLanguageAction_1 = ( (__decorate([
1804
1873
  let ClearLanguageAction = class ClearLanguageAction extends ExtensionAction {
1805
1874
  static { ClearLanguageAction_1 = this; }
1806
1875
  static { this.ID = 'workbench.extensions.action.clearLanguage'; }
1807
- static { this.TITLE = ( localize2WithPath(_moduleId, 79, 'Clear Display Language')); }
1876
+ static { this.TITLE = ( localize2WithPath(_moduleId, 77, 'Clear Display Language')); }
1808
1877
  static { this.EnabledClass = `${ExtensionAction.LABEL_ACTION_CLASS} language`; }
1809
1878
  static { this.DisabledClass = `${ClearLanguageAction_1.EnabledClass} disabled`; }
1810
1879
  constructor(extensionsWorkbenchService, localeService) {
@@ -1839,7 +1908,7 @@ ClearLanguageAction = ClearLanguageAction_1 = ( (__decorate([
1839
1908
  let ShowRecommendedExtensionAction = class ShowRecommendedExtensionAction extends Action {
1840
1909
  static { ShowRecommendedExtensionAction_1 = this; }
1841
1910
  static { this.ID = 'workbench.extensions.action.showRecommendedExtension'; }
1842
- static { this.LABEL = ( localizeWithPath(_moduleId, 80, "Show Recommended Extension")); }
1911
+ static { this.LABEL = ( localizeWithPath(_moduleId, 78, "Show Recommended Extension")); }
1843
1912
  constructor(extensionId, paneCompositeService, extensionWorkbenchService) {
1844
1913
  super(ShowRecommendedExtensionAction_1.ID, ShowRecommendedExtensionAction_1.LABEL, undefined, false);
1845
1914
  this.paneCompositeService = paneCompositeService;
@@ -1865,7 +1934,7 @@ ShowRecommendedExtensionAction = ShowRecommendedExtensionAction_1 = ( (__decorat
1865
1934
  let InstallRecommendedExtensionAction = class InstallRecommendedExtensionAction extends Action {
1866
1935
  static { InstallRecommendedExtensionAction_1 = this; }
1867
1936
  static { this.ID = 'workbench.extensions.action.installRecommendedExtension'; }
1868
- static { this.LABEL = ( localizeWithPath(_moduleId, 81, "Install Recommended Extension")); }
1937
+ static { this.LABEL = ( localizeWithPath(_moduleId, 79, "Install Recommended Extension")); }
1869
1938
  constructor(extensionId, paneCompositeService, instantiationService, extensionWorkbenchService) {
1870
1939
  super(InstallRecommendedExtensionAction_1.ID, InstallRecommendedExtensionAction_1.LABEL, undefined, false);
1871
1940
  this.paneCompositeService = paneCompositeService;
@@ -1904,7 +1973,7 @@ let IgnoreExtensionRecommendationAction = class IgnoreExtensionRecommendationAct
1904
1973
  this.extension = extension;
1905
1974
  this.extensionRecommendationsManagementService = extensionRecommendationsManagementService;
1906
1975
  this.class = IgnoreExtensionRecommendationAction_1.Class;
1907
- this.tooltip = ( localizeWithPath(_moduleId, 82, "Do not recommend this extension again"));
1976
+ this.tooltip = ( localizeWithPath(_moduleId, 80, "Do not recommend this extension again"));
1908
1977
  this.enabled = true;
1909
1978
  }
1910
1979
  run() {
@@ -1924,7 +1993,7 @@ let UndoIgnoreExtensionRecommendationAction = class UndoIgnoreExtensionRecommend
1924
1993
  this.extension = extension;
1925
1994
  this.extensionRecommendationsManagementService = extensionRecommendationsManagementService;
1926
1995
  this.class = UndoIgnoreExtensionRecommendationAction_1.Class;
1927
- this.tooltip = ( localizeWithPath(_moduleId, 83, "Undo"));
1996
+ this.tooltip = ( localizeWithPath(_moduleId, 81, "Undo"));
1928
1997
  this.enabled = true;
1929
1998
  }
1930
1999
  run() {
@@ -1937,7 +2006,7 @@ UndoIgnoreExtensionRecommendationAction = UndoIgnoreExtensionRecommendationActio
1937
2006
  ], UndoIgnoreExtensionRecommendationAction)));
1938
2007
  let SearchExtensionsAction = class SearchExtensionsAction extends Action {
1939
2008
  constructor(searchValue, paneCompositeService) {
1940
- super('extensions.searchExtensions', ( localizeWithPath(_moduleId, 84, "Search Extensions")), undefined, true);
2009
+ super('extensions.searchExtensions', ( localizeWithPath(_moduleId, 82, "Search Extensions")), undefined, true);
1941
2010
  this.searchValue = searchValue;
1942
2011
  this.paneCompositeService = paneCompositeService;
1943
2012
  }
@@ -1971,7 +2040,7 @@ let AbstractConfigureRecommendedExtensionsAction = class AbstractConfigureRecomm
1971
2040
  }
1972
2041
  })), error => Promise.reject(( (new Error(( localizeWithPath(
1973
2042
  _moduleId,
1974
- 85,
2043
+ 83,
1975
2044
  "Unable to create 'extensions.json' file inside the '.vscode' folder ({0}).",
1976
2045
  error
1977
2046
  )))))));
@@ -2039,7 +2108,7 @@ AbstractConfigureRecommendedExtensionsAction = ( (__decorate([
2039
2108
  ], AbstractConfigureRecommendedExtensionsAction)));
2040
2109
  let ConfigureWorkspaceRecommendedExtensionsAction = class ConfigureWorkspaceRecommendedExtensionsAction extends AbstractConfigureRecommendedExtensionsAction {
2041
2110
  static { this.ID = 'workbench.extensions.action.configureWorkspaceRecommendedExtensions'; }
2042
- static { this.LABEL = ( localizeWithPath(_moduleId, 86, "Configure Recommended Extensions (Workspace)")); }
2111
+ static { this.LABEL = ( localizeWithPath(_moduleId, 84, "Configure Recommended Extensions (Workspace)")); }
2043
2112
  constructor(id, label, fileService, textFileService, contextService, editorService, jsonEditingService, textModelResolverService) {
2044
2113
  super(id, label, contextService, fileService, textFileService, editorService, jsonEditingService, textModelResolverService);
2045
2114
  this._register(this.contextService.onDidChangeWorkbenchState(() => this.update(), this));
@@ -2068,7 +2137,7 @@ ConfigureWorkspaceRecommendedExtensionsAction = ( (__decorate([
2068
2137
  ], ConfigureWorkspaceRecommendedExtensionsAction)));
2069
2138
  let ConfigureWorkspaceFolderRecommendedExtensionsAction = class ConfigureWorkspaceFolderRecommendedExtensionsAction extends AbstractConfigureRecommendedExtensionsAction {
2070
2139
  static { this.ID = 'workbench.extensions.action.configureWorkspaceFolderRecommendedExtensions'; }
2071
- static { this.LABEL = ( localizeWithPath(_moduleId, 87, "Configure Recommended Extensions (Workspace Folder)")); }
2140
+ static { this.LABEL = ( localizeWithPath(_moduleId, 85, "Configure Recommended Extensions (Workspace Folder)")); }
2072
2141
  constructor(id, label, fileService, textFileService, contextService, editorService, jsonEditingService, textModelResolverService, commandService) {
2073
2142
  super(id, label, contextService, fileService, textFileService, editorService, jsonEditingService, textModelResolverService);
2074
2143
  this.commandService = commandService;
@@ -2158,21 +2227,21 @@ let ExtensionStatusLabelAction = class ExtensionStatusLabelAction extends Action
2158
2227
  };
2159
2228
  if (currentStatus !== null) {
2160
2229
  if (currentStatus === ExtensionState.Installing && this.status === ExtensionState.Installed) {
2161
- return canAddExtension() ? this.initialStatus === ExtensionState.Installed && this.version !== currentVersion ? ( localizeWithPath(_moduleId, 88, "Updated")) : ( localizeWithPath(_moduleId, 89, "Installed")) : null;
2230
+ return canAddExtension() ? this.initialStatus === ExtensionState.Installed && this.version !== currentVersion ? ( localizeWithPath(_moduleId, 86, "Updated")) : ( localizeWithPath(_moduleId, 87, "Installed")) : null;
2162
2231
  }
2163
2232
  if (currentStatus === ExtensionState.Uninstalling && this.status === ExtensionState.Uninstalled) {
2164
2233
  this.initialStatus = this.status;
2165
- return canRemoveExtension() ? ( localizeWithPath(_moduleId, 90, "Uninstalled")) : null;
2234
+ return canRemoveExtension() ? ( localizeWithPath(_moduleId, 88, "Uninstalled")) : null;
2166
2235
  }
2167
2236
  }
2168
2237
  if (currentEnablementState !== null) {
2169
2238
  const currentlyEnabled = this.extensionEnablementService.isEnabledEnablementState(currentEnablementState);
2170
2239
  const enabled = this.extensionEnablementService.isEnabledEnablementState(this.enablementState);
2171
2240
  if (!currentlyEnabled && enabled) {
2172
- return canAddExtension() ? ( localizeWithPath(_moduleId, 91, "Enabled")) : null;
2241
+ return canAddExtension() ? ( localizeWithPath(_moduleId, 89, "Enabled")) : null;
2173
2242
  }
2174
2243
  if (currentlyEnabled && !enabled) {
2175
- return canRemoveExtension() ? ( localizeWithPath(_moduleId, 92, "Disabled")) : null;
2244
+ return canRemoveExtension() ? ( localizeWithPath(_moduleId, 90, "Disabled")) : null;
2176
2245
  }
2177
2246
  }
2178
2247
  return null;
@@ -2186,7 +2255,7 @@ ExtensionStatusLabelAction = ExtensionStatusLabelAction_1 = ( (__decorate([
2186
2255
  ( (__param(1, IExtensionManagementServerService))),
2187
2256
  ( (__param(2, IWorkbenchExtensionEnablementService)))
2188
2257
  ], ExtensionStatusLabelAction)));
2189
- let ToggleSyncExtensionAction = class ToggleSyncExtensionAction extends ExtensionDropDownAction {
2258
+ let ToggleSyncExtensionAction = class ToggleSyncExtensionAction extends DropDownExtensionAction {
2190
2259
  static { ToggleSyncExtensionAction_1 = this; }
2191
2260
  static { this.IGNORED_SYNC_CLASS = `${ExtensionAction.ICON_ACTION_CLASS} extension-sync ${ThemeIcon.asClassName(syncIgnoredIcon)}`; }
2192
2261
  static { this.SYNC_CLASS = `${ToggleSyncExtensionAction_1.ICON_ACTION_CLASS} extension-sync ${ThemeIcon.asClassName(syncEnabledIcon)}`; }
@@ -2204,7 +2273,7 @@ let ToggleSyncExtensionAction = class ToggleSyncExtensionAction extends Extensio
2204
2273
  if (this.extension) {
2205
2274
  const isIgnored = this.extensionsWorkbenchService.isExtensionIgnoredToSync(this.extension);
2206
2275
  this.class = isIgnored ? ToggleSyncExtensionAction_1.IGNORED_SYNC_CLASS : ToggleSyncExtensionAction_1.SYNC_CLASS;
2207
- this.tooltip = isIgnored ? ( localizeWithPath(_moduleId, 93, "This extension is ignored during sync")) : ( localizeWithPath(_moduleId, 94, "This extension is synced"));
2276
+ this.tooltip = isIgnored ? ( localizeWithPath(_moduleId, 91, "This extension is ignored during sync")) : ( localizeWithPath(_moduleId, 92, "This extension is synced"));
2208
2277
  }
2209
2278
  }
2210
2279
  async run() {
@@ -2213,7 +2282,7 @@ let ToggleSyncExtensionAction = class ToggleSyncExtensionAction extends Extensio
2213
2282
  [
2214
2283
  ( (new Action(
2215
2284
  'extensions.syncignore',
2216
- this.extensionsWorkbenchService.isExtensionIgnoredToSync(this.extension) ? ( localizeWithPath(_moduleId, 95, "Sync this extension")) : ( localizeWithPath(_moduleId, 96, "Do not sync this extension")),
2285
+ this.extensionsWorkbenchService.isExtensionIgnoredToSync(this.extension) ? ( localizeWithPath(_moduleId, 93, "Sync this extension")) : ( localizeWithPath(_moduleId, 94, "Do not sync this extension")),
2217
2286
  undefined,
2218
2287
  true,
2219
2288
  () => this.extensionsWorkbenchService.toggleExtensionIgnoredToSync(this.extension)
@@ -2266,7 +2335,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2266
2335
  return;
2267
2336
  }
2268
2337
  if (this.extension.isMalicious) {
2269
- this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(( localizeWithPath(_moduleId, 97, "This extension was reported to be problematic."))))) }, true);
2338
+ this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(( localizeWithPath(_moduleId, 95, "This extension was reported to be problematic."))))) }, true);
2270
2339
  return;
2271
2340
  }
2272
2341
  if (this.extension.deprecationInfo) {
@@ -2276,18 +2345,18 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2276
2345
  )))})`;
2277
2346
  this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(( localizeWithPath(
2278
2347
  _moduleId,
2279
- 98,
2348
+ 96,
2280
2349
  "This extension is deprecated. Use the {0} extension instead.",
2281
2350
  link
2282
2351
  ))))) }, true);
2283
2352
  }
2284
2353
  else if (this.extension.deprecationInfo.settings) {
2285
- const link = `[${( localizeWithPath(_moduleId, 99, "settings"))}](${( (URI.parse(
2354
+ const link = `[${( localizeWithPath(_moduleId, 97, "settings"))}](${( (URI.parse(
2286
2355
  `command:workbench.action.openSettings?${encodeURIComponent(JSON.stringify([( (this.extension.deprecationInfo.settings.map(setting => `@id:${setting}`))).join(' ')]))}`
2287
2356
  )))})`;
2288
2357
  this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(( localizeWithPath(
2289
2358
  _moduleId,
2290
- 100,
2359
+ 98,
2291
2360
  "This extension is deprecated as this functionality is now built-in to VS Code. Configure these {0} to use this functionality.",
2292
2361
  link
2293
2362
  ))))) }, true);
@@ -2295,7 +2364,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2295
2364
  else {
2296
2365
  const message = ( (new MarkdownString(( localizeWithPath(
2297
2366
  _moduleId,
2298
- 101,
2367
+ 99,
2299
2368
  "This extension is deprecated as it is no longer being maintained."
2300
2369
  )))));
2301
2370
  if (this.extension.deprecationInfo.additionalInfo) {
@@ -2313,12 +2382,12 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2313
2382
  const targetPlatform = await (this.extensionManagementServerService.localExtensionManagementServer ? this.extensionManagementServerService.localExtensionManagementServer.extensionManagementService.getTargetPlatform() : this.extensionManagementServerService.remoteExtensionManagementServer.extensionManagementService.getTargetPlatform());
2314
2383
  const message = ( (new MarkdownString(`${( localizeWithPath(
2315
2384
  _moduleId,
2316
- 102,
2385
+ 100,
2317
2386
  "The '{0}' extension is not available in {1} for {2}.",
2318
2387
  this.extension.displayName || this.extension.identifier.id,
2319
2388
  this.productService.nameLong,
2320
2389
  TargetPlatformToString(targetPlatform)
2321
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://aka.ms/vscode-platform-specific-extensions)`)));
2390
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://aka.ms/vscode-platform-specific-extensions)`)));
2322
2391
  this.updateStatus({ icon: warningIcon, message }, true);
2323
2392
  return;
2324
2393
  }
@@ -2326,11 +2395,11 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2326
2395
  const productName = ( localizeWithPath(_moduleId, 0, "{0} for the Web", this.productService.nameLong));
2327
2396
  const message = ( (new MarkdownString(`${( localizeWithPath(
2328
2397
  _moduleId,
2329
- 104,
2398
+ 102,
2330
2399
  "The '{0}' extension is not available in {1}.",
2331
2400
  this.extension.displayName || this.extension.identifier.id,
2332
2401
  productName
2333
- ))} [${( localizeWithPath(_moduleId, 105, "Learn Why"))}](https://aka.ms/vscode-web-extensions-guide)`)));
2402
+ ))} [${( localizeWithPath(_moduleId, 103, "Learn Why"))}](https://aka.ms/vscode-web-extensions-guide)`)));
2334
2403
  this.updateStatus({ icon: warningIcon, message }, true);
2335
2404
  return;
2336
2405
  }
@@ -2341,13 +2410,13 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2341
2410
  return;
2342
2411
  }
2343
2412
  if (this.extension.enablementState === EnablementState.DisabledByEnvironment) {
2344
- this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(_moduleId, 106, "This extension is disabled by the environment."))))) }, true);
2413
+ this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(_moduleId, 104, "This extension is disabled by the environment."))))) }, true);
2345
2414
  return;
2346
2415
  }
2347
2416
  if (this.extension.enablementState === EnablementState.EnabledByEnvironment) {
2348
2417
  this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(
2349
2418
  _moduleId,
2350
- 107,
2419
+ 105,
2351
2420
  "This extension is enabled because it is required in the current environment."
2352
2421
  ))))) }, true);
2353
2422
  return;
@@ -2356,7 +2425,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2356
2425
  const details = getWorkspaceSupportTypeMessage(this.extension.local.manifest.capabilities?.virtualWorkspaces);
2357
2426
  this.updateStatus({ icon: infoIcon, message: ( (new MarkdownString(details ? escapeMarkdownSyntaxTokens(details) : ( localizeWithPath(
2358
2427
  _moduleId,
2359
- 108,
2428
+ 106,
2360
2429
  "This extension has been disabled because it does not support virtual workspaces."
2361
2430
  ))))) }, true);
2362
2431
  return;
@@ -2367,7 +2436,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2367
2436
  if (virtualSupportType === 'limited' || details) {
2368
2437
  this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(details ? escapeMarkdownSyntaxTokens(details) : ( localizeWithPath(
2369
2438
  _moduleId,
2370
- 109,
2439
+ 107,
2371
2440
  "This extension has limited features because the current workspace is virtual."
2372
2441
  ))))) }, true);
2373
2442
  return;
@@ -2380,7 +2449,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2380
2449
  this.updateStatus({ icon: trustIcon, message: ( (new MarkdownString(
2381
2450
  untrustedDetails ? escapeMarkdownSyntaxTokens(untrustedDetails) : ( localizeWithPath(
2382
2451
  _moduleId,
2383
- 110,
2452
+ 108,
2384
2453
  "This extension has been disabled because the current workspace is not trusted."
2385
2454
  ))
2386
2455
  ))) }, true);
@@ -2394,7 +2463,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2394
2463
  this.updateStatus({ icon: trustIcon, message: ( (new MarkdownString(
2395
2464
  untrustedDetails ? escapeMarkdownSyntaxTokens(untrustedDetails) : ( localizeWithPath(
2396
2465
  _moduleId,
2397
- 111,
2466
+ 109,
2398
2467
  "This extension has limited features because the current workspace is not trusted."
2399
2468
  ))
2400
2469
  ))) }, true);
@@ -2411,10 +2480,10 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2411
2480
  if (this.extensionManagementServerService.remoteExtensionManagementServer) {
2412
2481
  message = ( (new MarkdownString(`${( localizeWithPath(
2413
2482
  _moduleId,
2414
- 112,
2483
+ 110,
2415
2484
  "This extension is disabled in this workspace because it is defined to run in the Remote Extension Host. Please install the extension in '{0}' to enable.",
2416
2485
  this.extensionManagementServerService.remoteExtensionManagementServer.label
2417
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2486
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2418
2487
  }
2419
2488
  }
2420
2489
  }
@@ -2423,28 +2492,28 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2423
2492
  if (this.extensionManagementServerService.localExtensionManagementServer) {
2424
2493
  message = ( (new MarkdownString(`${( localizeWithPath(
2425
2494
  _moduleId,
2426
- 113,
2495
+ 111,
2427
2496
  "This extension is disabled in this workspace because it is defined to run in the Local Extension Host. Please install the extension locally to enable.",
2428
2497
  this.extensionManagementServerService.remoteExtensionManagementServer.label
2429
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2498
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2430
2499
  }
2431
2500
  else if (isWeb) {
2432
2501
  message = ( (new MarkdownString(`${( localizeWithPath(
2433
2502
  _moduleId,
2434
- 114,
2503
+ 112,
2435
2504
  "This extension is disabled because it is defined to run only in {0} for the Desktop.",
2436
2505
  this.productService.nameLong
2437
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2506
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2438
2507
  }
2439
2508
  }
2440
2509
  }
2441
2510
  else if (this.extensionManagementServerService.webExtensionManagementServer === this.extension.server) {
2442
2511
  message = ( (new MarkdownString(`${( localizeWithPath(
2443
2512
  _moduleId,
2444
- 115,
2513
+ 113,
2445
2514
  "This extension is disabled because it is not supported in {0} for the Web.",
2446
2515
  this.productService.nameLong
2447
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2516
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`)));
2448
2517
  }
2449
2518
  if (message) {
2450
2519
  this.updateStatus({ icon: warningIcon, message }, true);
@@ -2456,7 +2525,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2456
2525
  const features = ( (Registry.as(Extensions.ExtensionFeaturesRegistry))).getExtensionFeatures();
2457
2526
  for (const feature of features) {
2458
2527
  const status = this.extensionFeaturesManagementService.getAccessData(extensionId, feature.id)?.current?.status;
2459
- const manageAccessLink = `[${( localizeWithPath(_moduleId, 116, 'Manage Access'))}](${( (URI.parse(
2528
+ const manageAccessLink = `[${( localizeWithPath(_moduleId, 114, 'Manage Access'))}](${( (URI.parse(
2460
2529
  `command:extension.open?${encodeURIComponent(JSON.stringify([this.extension.identifier.id, ExtensionEditorTab.Features, false, feature.id]))}`
2461
2530
  )))})`;
2462
2531
  if (status?.severity === Severity$1.Error) {
@@ -2476,13 +2545,13 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2476
2545
  const message = this.extension.server === this.extensionManagementServerService.localExtensionManagementServer
2477
2546
  ? ( (new MarkdownString(( localizeWithPath(
2478
2547
  _moduleId,
2479
- 117,
2548
+ 115,
2480
2549
  "Install the language pack extension on '{0}' to enable it there also.",
2481
2550
  this.extensionManagementServerService.remoteExtensionManagementServer.label
2482
2551
  )))))
2483
2552
  : ( (new MarkdownString(( localizeWithPath(
2484
2553
  _moduleId,
2485
- 118,
2554
+ 116,
2486
2555
  "Install the language pack extension locally to enable it there also."
2487
2556
  )))));
2488
2557
  this.updateStatus({ icon: infoIcon, message }, true);
@@ -2495,9 +2564,9 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2495
2564
  if (this.extensionManifestPropertiesService.prefersExecuteOnWorkspace(this.extension.local.manifest)) {
2496
2565
  this.updateStatus({ icon: infoIcon, message: ( (new MarkdownString(`${( localizeWithPath(
2497
2566
  _moduleId,
2498
- 119,
2567
+ 117,
2499
2568
  "This extension is enabled in the Remote Extension Host because it prefers to run there."
2500
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2569
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2501
2570
  }
2502
2571
  return;
2503
2572
  }
@@ -2505,9 +2574,9 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2505
2574
  if (this.extensionManifestPropertiesService.prefersExecuteOnUI(this.extension.local.manifest)) {
2506
2575
  this.updateStatus({ icon: infoIcon, message: ( (new MarkdownString(`${( localizeWithPath(
2507
2576
  _moduleId,
2508
- 120,
2577
+ 118,
2509
2578
  "This extension is enabled in the Local Extension Host because it prefers to run there."
2510
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2579
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2511
2580
  }
2512
2581
  return;
2513
2582
  }
@@ -2515,9 +2584,9 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2515
2584
  if (this.extensionManifestPropertiesService.canExecuteOnWeb(this.extension.local.manifest)) {
2516
2585
  this.updateStatus({ icon: infoIcon, message: ( (new MarkdownString(`${( localizeWithPath(
2517
2586
  _moduleId,
2518
- 121,
2587
+ 119,
2519
2588
  "This extension is enabled in the Web Worker Extension Host because it prefers to run there."
2520
- ))} [${( localizeWithPath(_moduleId, 103, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2589
+ ))} [${( localizeWithPath(_moduleId, 101, "Learn More"))}](https://code.visualstudio.com/api/advanced-topics/remote-extensions#architecture-and-extension-kinds)`))) }, true);
2521
2590
  }
2522
2591
  return;
2523
2592
  }
@@ -2525,7 +2594,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2525
2594
  if (this.extension.enablementState === EnablementState.DisabledByExtensionDependency) {
2526
2595
  this.updateStatus({ icon: warningIcon, message: ( (new MarkdownString(( localizeWithPath(
2527
2596
  _moduleId,
2528
- 122,
2597
+ 120,
2529
2598
  "This extension has been disabled because it depends on an extension that is disabled."
2530
2599
  ))))) }, true);
2531
2600
  return;
@@ -2538,7 +2607,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2538
2607
  if (this.extension.enablementState === EnablementState.EnabledWorkspace) {
2539
2608
  this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(
2540
2609
  _moduleId,
2541
- 123,
2610
+ 121,
2542
2611
  "This extension is enabled for this workspace by the user."
2543
2612
  ))))) }, true);
2544
2613
  return;
@@ -2547,7 +2616,7 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2547
2616
  if (this.extension.server === this.extensionManagementServerService.remoteExtensionManagementServer) {
2548
2617
  this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(
2549
2618
  _moduleId,
2550
- 124,
2619
+ 122,
2551
2620
  "Extension is enabled on '{0}'",
2552
2621
  this.extension.server.label
2553
2622
  ))))) }, true);
@@ -2560,13 +2629,13 @@ let ExtensionStatusAction = class ExtensionStatusAction extends ExtensionAction
2560
2629
  }
2561
2630
  if (!isEnabled && !isRunning) {
2562
2631
  if (this.extension.enablementState === EnablementState.DisabledGlobally) {
2563
- this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(_moduleId, 125, "This extension is disabled globally by the user."))))) }, true);
2632
+ this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(_moduleId, 123, "This extension is disabled globally by the user."))))) }, true);
2564
2633
  return;
2565
2634
  }
2566
2635
  if (this.extension.enablementState === EnablementState.DisabledWorkspace) {
2567
2636
  this.updateStatus({ message: ( (new MarkdownString(( localizeWithPath(
2568
2637
  _moduleId,
2569
- 126,
2638
+ 124,
2570
2639
  "This extension is disabled for this workspace by the user."
2571
2640
  ))))) }, true);
2572
2641
  return;
@@ -2627,7 +2696,7 @@ ExtensionStatusAction = ExtensionStatusAction_1 = ( (__decorate([
2627
2696
  let ReinstallAction = class ReinstallAction extends Action {
2628
2697
  static { ReinstallAction_1 = this; }
2629
2698
  static { this.ID = 'workbench.extensions.action.reinstall'; }
2630
- static { this.LABEL = ( localizeWithPath(_moduleId, 127, "Reinstall Extension...")); }
2699
+ static { this.LABEL = ( localizeWithPath(_moduleId, 125, "Reinstall Extension...")); }
2631
2700
  constructor(id = ReinstallAction_1.ID, label = ReinstallAction_1.LABEL, extensionsWorkbenchService, extensionManagementServerService, quickInputService, notificationService, hostService, instantiationService, extensionService) {
2632
2701
  super(id, label);
2633
2702
  this.extensionsWorkbenchService = extensionsWorkbenchService;
@@ -2642,7 +2711,7 @@ let ReinstallAction = class ReinstallAction extends Action {
2642
2711
  return this.extensionsWorkbenchService.local.filter(l => !l.isBuiltin && l.local).length > 0;
2643
2712
  }
2644
2713
  run() {
2645
- return this.quickInputService.pick(this.getEntries(), { placeHolder: ( localizeWithPath(_moduleId, 128, "Select Extension to Reinstall")) })
2714
+ return this.quickInputService.pick(this.getEntries(), { placeHolder: ( localizeWithPath(_moduleId, 126, "Select Extension to Reinstall")) })
2646
2715
  .then(pick => pick && this.reinstallExtension(pick.extension));
2647
2716
  }
2648
2717
  getEntries() {
@@ -2669,18 +2738,18 @@ let ReinstallAction = class ReinstallAction extends Action {
2669
2738
  const requireReload = !(extension.local && this.extensionService.canAddExtension(toExtensionDescription(extension.local)));
2670
2739
  const message = requireReload ? ( localizeWithPath(
2671
2740
  _moduleId,
2672
- 129,
2741
+ 127,
2673
2742
  "Please reload Visual Studio Code to complete reinstalling the extension {0}.",
2674
2743
  extension.identifier.id
2675
2744
  ))
2676
2745
  : ( localizeWithPath(
2677
2746
  _moduleId,
2678
- 130,
2747
+ 128,
2679
2748
  "Reinstalling the extension {0} is completed.",
2680
2749
  extension.identifier.id
2681
2750
  ));
2682
2751
  const actions = requireReload ? [{
2683
- label: ( localizeWithPath(_moduleId, 131, "Reload Now")),
2752
+ label: ( localizeWithPath(_moduleId, 129, "Reload Now")),
2684
2753
  run: () => this.hostService.reload()
2685
2754
  }] : [];
2686
2755
  this.notificationService.prompt(Severity$1.Info, message, actions, { sticky: true });
@@ -2700,7 +2769,7 @@ ReinstallAction = ReinstallAction_1 = ( (__decorate([
2700
2769
  let InstallSpecificVersionOfExtensionAction = class InstallSpecificVersionOfExtensionAction extends Action {
2701
2770
  static { InstallSpecificVersionOfExtensionAction_1 = this; }
2702
2771
  static { this.ID = 'workbench.extensions.action.install.specificVersion'; }
2703
- static { this.LABEL = ( localizeWithPath(_moduleId, 132, "Install Specific Version of Extension...")); }
2772
+ static { this.LABEL = ( localizeWithPath(_moduleId, 130, "Install Specific Version of Extension...")); }
2704
2773
  constructor(id = InstallSpecificVersionOfExtensionAction_1.ID, label = InstallSpecificVersionOfExtensionAction_1.LABEL, extensionsWorkbenchService, quickInputService, instantiationService, extensionEnablementService) {
2705
2774
  super(id, label);
2706
2775
  this.extensionsWorkbenchService = extensionsWorkbenchService;
@@ -2714,17 +2783,15 @@ let InstallSpecificVersionOfExtensionAction = class InstallSpecificVersionOfExte
2714
2783
  );
2715
2784
  }
2716
2785
  async run() {
2717
- const extensionPick = await this.quickInputService.pick(this.getExtensionEntries(), { placeHolder: ( localizeWithPath(_moduleId, 133, "Select Extension")), matchOnDetail: true });
2786
+ const extensionPick = await this.quickInputService.pick(this.getExtensionEntries(), { placeHolder: ( localizeWithPath(_moduleId, 131, "Select Extension")), matchOnDetail: true });
2718
2787
  if (extensionPick && extensionPick.extension) {
2719
- const action = this.instantiationService.createInstance(InstallAnotherVersionAction);
2720
- action.extension = extensionPick.extension;
2788
+ const action = this.instantiationService.createInstance(InstallAnotherVersionAction, extensionPick.extension, true);
2721
2789
  await action.run();
2722
2790
  await this.instantiationService.createInstance(SearchExtensionsAction, extensionPick.extension.identifier.id).run();
2723
2791
  }
2724
2792
  }
2725
2793
  isEnabled(extension) {
2726
- const action = this.instantiationService.createInstance(InstallAnotherVersionAction);
2727
- action.extension = extension;
2794
+ const action = this.instantiationService.createInstance(InstallAnotherVersionAction, extension, true);
2728
2795
  return action.enabled && !!extension.local && this.extensionEnablementService.isEnabled(extension.local);
2729
2796
  }
2730
2797
  async getExtensionEntries() {
@@ -2794,7 +2861,7 @@ let AbstractInstallExtensionsInServerAction = class AbstractInstallExtensionsInS
2794
2861
  quickPick.busy = false;
2795
2862
  if (localExtensionsToInstall.length) {
2796
2863
  quickPick.title = this.getQuickPickTitle();
2797
- quickPick.placeholder = ( localizeWithPath(_moduleId, 134, "Select extensions to install"));
2864
+ quickPick.placeholder = ( localizeWithPath(_moduleId, 132, "Select extensions to install"));
2798
2865
  quickPick.canSelectMany = true;
2799
2866
  localExtensionsToInstall.sort((e1, e2) => e1.displayName.localeCompare(e2.displayName));
2800
2867
  quickPick.items = ( (localExtensionsToInstall.map(
@@ -2806,7 +2873,7 @@ let AbstractInstallExtensionsInServerAction = class AbstractInstallExtensionsInS
2806
2873
  quickPick.dispose();
2807
2874
  this.notificationService.notify({
2808
2875
  severity: Severity$1.Info,
2809
- message: ( localizeWithPath(_moduleId, 135, "There are no extensions to install."))
2876
+ message: ( localizeWithPath(_moduleId, 133, "There are no extensions to install."))
2810
2877
  });
2811
2878
  }
2812
2879
  }
@@ -2816,9 +2883,9 @@ let AbstractInstallExtensionsInServerAction = class AbstractInstallExtensionsInS
2816
2883
  if (localExtensionsToInstall.length) {
2817
2884
  await this.progressService.withProgress({
2818
2885
  location: ProgressLocation.Notification,
2819
- title: ( localizeWithPath(_moduleId, 136, "Installing Extensions..."))
2886
+ title: ( localizeWithPath(_moduleId, 134, "Installing Extensions..."))
2820
2887
  }, () => this.installExtensions(localExtensionsToInstall));
2821
- this.notificationService.info(( localizeWithPath(_moduleId, 137, "Successfully installed extensions.")));
2888
+ this.notificationService.info(( localizeWithPath(_moduleId, 135, "Successfully installed extensions.")));
2822
2889
  }
2823
2890
  }
2824
2891
  }
@@ -2842,7 +2909,7 @@ let InstallLocalExtensionsInRemoteAction = class InstallLocalExtensionsInRemoteA
2842
2909
  if (this.extensionManagementServerService && this.extensionManagementServerService.remoteExtensionManagementServer) {
2843
2910
  return ( localizeWithPath(
2844
2911
  _moduleId,
2845
- 138,
2912
+ 136,
2846
2913
  "Install Local Extensions in '{0}'...",
2847
2914
  this.extensionManagementServerService.remoteExtensionManagementServer.label
2848
2915
  ));
@@ -2852,7 +2919,7 @@ let InstallLocalExtensionsInRemoteAction = class InstallLocalExtensionsInRemoteA
2852
2919
  getQuickPickTitle() {
2853
2920
  return ( localizeWithPath(
2854
2921
  _moduleId,
2855
- 139,
2922
+ 137,
2856
2923
  "Install Local Extensions in '{0}'",
2857
2924
  this.extensionManagementServerService.remoteExtensionManagementServer.label
2858
2925
  ));
@@ -2917,10 +2984,10 @@ let InstallRemoteExtensionsInLocalAction = class InstallRemoteExtensionsInLocalA
2917
2984
  this.logService = logService;
2918
2985
  }
2919
2986
  get label() {
2920
- return ( localizeWithPath(_moduleId, 140, "Install Remote Extensions Locally..."));
2987
+ return ( localizeWithPath(_moduleId, 138, "Install Remote Extensions Locally..."));
2921
2988
  }
2922
2989
  getQuickPickTitle() {
2923
- return ( localizeWithPath(_moduleId, 141, "Install Remote Extensions Locally"));
2990
+ return ( localizeWithPath(_moduleId, 139, "Install Remote Extensions Locally"));
2924
2991
  }
2925
2992
  getExtensionsToInstall(local) {
2926
2993
  return local.filter(extension => extension.type === ExtensionType.User && extension.server !== this.extensionManagementServerService.localExtensionManagementServer
@@ -2998,25 +3065,20 @@ registerColor('extensionButton.background', {
2998
3065
  light: buttonBackground,
2999
3066
  hcDark: null,
3000
3067
  hcLight: null
3001
- }, ( localizeWithPath(_moduleId, 142, "Button background color for extension actions.")));
3068
+ }, ( localizeWithPath(_moduleId, 140, "Button background color for extension actions.")));
3002
3069
  registerColor('extensionButton.foreground', {
3003
3070
  dark: buttonForeground,
3004
3071
  light: buttonForeground,
3005
3072
  hcDark: null,
3006
3073
  hcLight: null
3007
- }, ( localizeWithPath(_moduleId, 143, "Button foreground color for extension actions.")));
3074
+ }, ( localizeWithPath(_moduleId, 141, "Button foreground color for extension actions.")));
3008
3075
  registerColor('extensionButton.hoverBackground', {
3009
3076
  dark: buttonHoverBackground,
3010
3077
  light: buttonHoverBackground,
3011
3078
  hcDark: null,
3012
3079
  hcLight: null
3013
- }, ( localizeWithPath(_moduleId, 144, "Button background hover color for extension actions.")));
3014
- registerColor('extensionButton.separator', {
3015
- dark: buttonSeparator,
3016
- light: buttonSeparator,
3017
- hcDark: buttonSeparator,
3018
- hcLight: buttonSeparator
3019
- }, ( localizeWithPath(_moduleId, 145, "Button separator color for extension actions")));
3080
+ }, ( localizeWithPath(_moduleId, 142, "Button background hover color for extension actions.")));
3081
+ registerColor('extensionButton.separator', buttonSeparator, ( localizeWithPath(_moduleId, 143, "Button separator color for extension actions")));
3020
3082
  const extensionButtonProminentBackground = registerColor('extensionButton.prominentBackground', {
3021
3083
  dark: buttonBackground,
3022
3084
  light: buttonBackground,
@@ -3024,7 +3086,7 @@ const extensionButtonProminentBackground = registerColor('extensionButton.promin
3024
3086
  hcLight: null
3025
3087
  }, ( localizeWithPath(
3026
3088
  _moduleId,
3027
- 146,
3089
+ 144,
3028
3090
  "Button background color for extension actions that stand out (e.g. install button)."
3029
3091
  )));
3030
3092
  registerColor('extensionButton.prominentForeground', {
@@ -3034,7 +3096,7 @@ registerColor('extensionButton.prominentForeground', {
3034
3096
  hcLight: null
3035
3097
  }, ( localizeWithPath(
3036
3098
  _moduleId,
3037
- 147,
3099
+ 145,
3038
3100
  "Button foreground color for extension actions that stand out (e.g. install button)."
3039
3101
  )));
3040
3102
  registerColor('extensionButton.prominentHoverBackground', {
@@ -3044,7 +3106,7 @@ registerColor('extensionButton.prominentHoverBackground', {
3044
3106
  hcLight: null
3045
3107
  }, ( localizeWithPath(
3046
3108
  _moduleId,
3047
- 148,
3109
+ 146,
3048
3110
  "Button background hover color for extension actions that stand out (e.g. install button)."
3049
3111
  )));
3050
3112
  registerThemingParticipant((theme, collector) => {
@@ -3067,4 +3129,4 @@ registerThemingParticipant((theme, collector) => {
3067
3129
  collector.addRule(`.monaco-hover.extension-hover .markdown-hover .hover-contents ${ThemeIcon.asCSSSelector(infoIcon)} { color: ${infoColor}; }`);
3068
3130
  }
3069
3131
  });
3070
- export { AbstractConfigureRecommendedExtensionsAction, AbstractInstallExtensionsInServerAction, ActionWithDropDownAction, ClearLanguageAction, ConfigureWorkspaceFolderRecommendedExtensionsAction, ConfigureWorkspaceRecommendedExtensionsAction, DisableDropDownAction, DisableForWorkspaceAction, DisableGloballyAction, DropDownMenuActionViewItem, EnableDropDownAction, EnableForWorkspaceAction, EnableGloballyAction, ExtensionAction, ExtensionActionWithDropdownActionViewItem, ExtensionDropDownAction, ExtensionEditorManageExtensionAction, ExtensionRuntimeStateAction, ExtensionStatusAction, ExtensionStatusLabelAction, IgnoreExtensionRecommendationAction, InstallAction, InstallAnotherVersionAction, InstallDropdownAction, InstallInOtherServerAction, InstallLocalExtensionsInRemoteAction, InstallRecommendedExtensionAction, InstallRemoteExtensionsInLocalAction, InstallSpecificVersionOfExtensionAction, InstallingLabelAction, LocalInstallAction, ManageExtensionAction, MenuItemExtensionAction, MigrateDeprecatedExtensionAction, PromptExtensionInstallFailureAction, ReinstallAction, RemoteInstallAction, SearchExtensionsAction, SetColorThemeAction, SetFileIconThemeAction, SetLanguageAction, SetProductIconThemeAction, ShowRecommendedExtensionAction, ToggleAutoUpdateForExtensionAction, ToggleAutoUpdatesForPublisherAction, TogglePreReleaseExtensionAction, ToggleSyncExtensionAction, UndoIgnoreExtensionRecommendationAction, UninstallAction, UpdateAction, WebInstallAction, extensionButtonProminentBackground, getContextMenuActions, showExtensionsWithIdsCommandId };
3132
+ export { AbstractConfigureRecommendedExtensionsAction, AbstractInstallExtensionsInServerAction, ButtonWithDropDownExtensionAction, ButtonWithDropdownExtensionActionViewItem, ClearLanguageAction, ConfigureWorkspaceFolderRecommendedExtensionsAction, ConfigureWorkspaceRecommendedExtensionsAction, DisableDropDownAction, DisableForWorkspaceAction, DisableGloballyAction, DropDownExtensionAction, DropDownExtensionActionViewItem, EnableDropDownAction, EnableForWorkspaceAction, EnableGloballyAction, ExtensionAction, ExtensionEditorManageExtensionAction, ExtensionRuntimeStateAction, ExtensionStatusAction, ExtensionStatusLabelAction, IgnoreExtensionRecommendationAction, InstallAction, InstallAnotherVersionAction, InstallDropdownAction, InstallInOtherServerAction, InstallLocalExtensionsInRemoteAction, InstallRecommendedExtensionAction, InstallRemoteExtensionsInLocalAction, InstallSpecificVersionOfExtensionAction, InstallingLabelAction, LocalInstallAction, ManageExtensionAction, MenuItemExtensionAction, MigrateDeprecatedExtensionAction, PromptExtensionInstallFailureAction, ReinstallAction, RemoteInstallAction, SearchExtensionsAction, SetColorThemeAction, SetFileIconThemeAction, SetLanguageAction, SetProductIconThemeAction, ShowRecommendedExtensionAction, ToggleAutoUpdateForExtensionAction, ToggleAutoUpdatesForPublisherAction, TogglePreReleaseExtensionAction, ToggleSyncExtensionAction, UndoIgnoreExtensionRecommendationAction, UninstallAction, UpdateAction, WebInstallAction, extensionButtonProminentBackground, getContextMenuActions, showExtensionsWithIdsCommandId };