@codingame/monaco-vscode-api 3.2.2 → 4.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 (773) hide show
  1. package/README.md +22 -17
  2. package/api.js +4 -7
  3. package/debugProtocol.d.ts +14 -39
  4. package/extensions.d.ts +7 -1
  5. package/missing-services.js +122 -38
  6. package/monaco.d.ts +1 -1
  7. package/monaco.js +11 -1
  8. package/override/vs/platform/dialogs/common/dialogs.js +1 -0
  9. package/package.json +8 -8
  10. package/service-override/tools/editor.js +82 -3
  11. package/service-override/tools/views.d.ts +2 -1
  12. package/service-override/tools/views.js +5 -1
  13. package/services.js +7 -6
  14. package/vscode/src/vs/base/browser/dom.js +1 -7
  15. package/vscode/src/vs/base/browser/fonts.js +3 -0
  16. package/vscode/src/vs/base/browser/keyboardEvent.js +1 -1
  17. package/vscode/src/vs/base/browser/markdownRenderer.js +4 -4
  18. package/vscode/src/vs/base/browser/touch.js +13 -2
  19. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.d.ts +1 -1
  20. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +5 -6
  21. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -1
  22. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +2 -2
  23. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -0
  24. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +4 -2
  25. package/vscode/src/vs/base/browser/ui/button/button.js +16 -9
  26. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/contextview/contextview.d.ts +1 -0
  28. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +4 -4
  30. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +3 -3
  31. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +5 -0
  32. package/vscode/src/vs/base/browser/ui/findinput/findInputToggles.js +4 -0
  33. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +3 -1
  34. package/vscode/src/vs/base/browser/ui/grid/gridview.js +1 -0
  35. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +14 -3
  36. package/vscode/src/vs/base/browser/ui/{iconLabel/iconHoverDelegate.d.ts → hover/hoverDelegate.d.ts} +3 -6
  37. package/vscode/src/vs/base/browser/ui/hover/{hoverDelegate.js → hoverDelegateFactory.js} +5 -5
  38. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +1 -1
  39. package/vscode/src/vs/base/browser/ui/{iconLabel/iconLabelHover.d.ts → hover/updatableHoverWidget.d.ts} +6 -1
  40. package/vscode/src/vs/base/browser/ui/{iconLabel/iconLabelHover.js → hover/updatableHoverWidget.js} +27 -7
  41. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +10 -9
  42. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +11 -1
  43. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +19 -1
  44. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +8 -7
  45. package/vscode/src/vs/base/browser/ui/list/listView.js +4 -1
  46. package/vscode/src/vs/base/browser/ui/list/listWidget.js +27 -10
  47. package/vscode/src/vs/base/browser/ui/menu/menu.js +15 -9
  48. package/vscode/src/vs/base/browser/ui/menu/menubar.js +15 -8
  49. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +18 -2
  50. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +1 -0
  51. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +14 -7
  52. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +6 -4
  53. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +7 -6
  54. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -2
  55. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +55 -10
  56. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +4 -1
  57. package/vscode/src/vs/base/browser/window.d.ts +5 -0
  58. package/vscode/src/vs/base/browser/window.js +1 -2
  59. package/vscode/src/vs/base/common/arrays.js +20 -1
  60. package/vscode/src/vs/base/common/cache.js +3 -2
  61. package/vscode/src/vs/base/common/codicons.d.ts +62 -38
  62. package/vscode/src/vs/base/common/codicons.js +19 -571
  63. package/vscode/src/vs/base/common/codiconsLibrary.js +570 -0
  64. package/vscode/src/vs/base/common/codiconsUtil.js +17 -0
  65. package/vscode/src/vs/base/common/event.js +4 -1
  66. package/vscode/src/vs/base/common/glob.js +1 -0
  67. package/vscode/src/vs/base/common/hierarchicalKind.d.ts +13 -0
  68. package/vscode/src/vs/base/common/hierarchicalKind.js +21 -0
  69. package/vscode/src/vs/base/common/labels.js +2 -2
  70. package/vscode/src/vs/base/common/network.js +14 -5
  71. package/vscode/src/vs/base/common/observableInternal/promise.js +1 -0
  72. package/vscode/src/vs/base/common/observableInternal/utils.js +35 -14
  73. package/vscode/src/vs/base/common/platform.js +1 -1
  74. package/vscode/src/vs/base/common/product.d.ts +7 -1
  75. package/vscode/src/vs/base/common/severity.js +2 -1
  76. package/vscode/src/vs/base/common/strings.js +16 -4
  77. package/vscode/src/vs/base/parts/ipc/common/ipc.js +4 -0
  78. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +5 -5
  79. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +55 -43
  80. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +5 -5
  81. package/vscode/src/vs/editor/browser/coreCommands.js +13 -13
  82. package/vscode/src/vs/editor/browser/editorDom.js +11 -1
  83. package/vscode/src/vs/editor/browser/editorExtensions.js +1 -1
  84. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +10 -2
  85. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.d.ts +31 -0
  86. package/vscode/src/vs/editor/browser/services/{hoverService.js → hoverService/hoverService.js} +38 -27
  87. package/vscode/src/vs/editor/browser/{widget/hoverWidget → services/hoverService}/hoverWidget.js +13 -14
  88. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -4
  89. package/vscode/src/vs/editor/browser/view/viewOverlays.js +12 -23
  90. package/vscode/src/vs/editor/browser/view.js +5 -5
  91. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
  92. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +3 -3
  93. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.css.js +1 -1
  94. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +4 -6
  95. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.css.js +1 -1
  96. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +8 -14
  97. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +2 -2
  98. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +2 -2
  99. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.css.js +1 -1
  100. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +3 -6
  101. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.css.js +1 -1
  102. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +5 -1
  103. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +4 -4
  104. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.css.js +1 -1
  105. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +5 -5
  106. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +2 -2
  107. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +2 -2
  108. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +142 -27
  109. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +2 -2
  110. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +34 -16
  111. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +3 -3
  112. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +1 -1
  113. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +23 -20
  114. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +25 -3
  115. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +21 -13
  116. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  117. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +2 -2
  118. package/vscode/src/vs/editor/browser/widget/{codeEditorContributions.js → codeEditor/codeEditorContributions.js} +3 -3
  119. package/vscode/src/vs/editor/browser/widget/{codeEditorWidget.js → codeEditor/codeEditorWidget.js} +81 -70
  120. package/vscode/src/vs/editor/browser/widget/codeEditor/editor.css.js +4 -0
  121. package/vscode/src/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.js +44 -0
  122. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +281 -0
  123. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +7 -5
  124. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +4 -1
  125. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +15 -9
  126. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +2 -0
  127. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +9 -8
  128. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +1 -1
  129. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +33 -246
  130. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +22 -7
  131. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +5 -5
  132. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +71 -41
  133. package/vscode/src/vs/editor/browser/widget/diffEditor/embeddedDiffEditorWidget.js +36 -0
  134. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +227 -0
  135. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +22 -19
  136. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +5 -4
  137. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +15 -4
  138. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +13 -5
  139. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +11 -1
  140. package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
  141. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +104 -0
  142. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +8 -15
  143. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/colors.js +14 -4
  144. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/diffEditorItemTemplate.js +6 -5
  145. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/model.js +14 -0
  146. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorViewModel.js +5 -2
  147. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorWidget.js +5 -3
  148. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorWidgetImpl.js +9 -10
  149. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/style.css.js +1 -1
  150. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/utils.js +2 -1
  151. package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +14 -3
  152. package/vscode/src/vs/editor/common/config/diffEditor.js +1 -0
  153. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +10 -1
  154. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +23 -0
  155. package/vscode/src/vs/editor/common/config/editorOptions.js +115 -33
  156. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +32 -2
  157. package/vscode/src/vs/editor/common/core/lineRange.d.ts +1 -0
  158. package/vscode/src/vs/editor/common/core/lineRange.js +12 -0
  159. package/vscode/src/vs/editor/common/core/positionToOffset.js +43 -0
  160. package/vscode/src/vs/editor/common/core/textEdit.js +169 -0
  161. package/vscode/src/vs/editor/common/core/textLength.js +110 -0
  162. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.d.ts +14 -2
  163. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +66 -10
  164. package/vscode/src/vs/editor/common/core/wordHelper.js +1 -0
  165. package/vscode/src/vs/editor/common/cursor/cursor.js +17 -4
  166. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +1 -1
  167. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +22 -3
  168. package/vscode/src/vs/editor/common/cursorCommon.js +7 -5
  169. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +7 -4
  170. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +1 -1
  171. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -0
  172. package/vscode/src/vs/editor/common/diff/rangeMapping.js +10 -0
  173. package/vscode/src/vs/editor/common/editorContextKeys.js +25 -0
  174. package/vscode/src/vs/editor/common/languages.d.ts +43 -11
  175. package/vscode/src/vs/editor/common/languages.js +15 -1
  176. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +1 -1
  177. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +3 -58
  178. package/vscode/src/vs/editor/common/model/textModel.js +2 -0
  179. package/vscode/src/vs/editor/common/model/textModelSearch.js +1 -1
  180. package/vscode/src/vs/editor/common/model/textModelText.js +17 -0
  181. package/vscode/src/vs/editor/common/model/textModelTokens.js +4 -0
  182. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +10 -0
  183. package/vscode/src/vs/editor/common/model.d.ts +17 -2
  184. package/vscode/src/vs/editor/common/model.js +1 -6
  185. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +8 -0
  186. package/vscode/src/vs/editor/common/services/editorWorker.d.ts +2 -0
  187. package/vscode/src/vs/editor/common/services/findSectionHeaders.d.ts +28 -0
  188. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +71 -0
  189. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +15 -5
  190. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +32 -20
  191. package/vscode/src/vs/editor/common/viewLayout/linesLayout.js +2 -1
  192. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +5 -5
  193. package/vscode/src/vs/editor/common/viewLayout/viewLinesViewportData.js +1 -0
  194. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +1 -1
  195. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
  196. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +10 -7
  197. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +11 -1
  198. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +6 -5
  199. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +5 -4
  200. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +25 -3
  201. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +3 -2
  202. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +3 -2
  203. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +13 -2
  204. package/vscode/src/vs/editor/contrib/codeAction/common/types.js +18 -33
  205. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +1 -1
  206. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +3 -3
  207. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +1 -1
  208. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +11 -1
  209. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +1 -1
  210. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +9 -9
  211. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +5 -3
  212. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +1 -1
  213. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +40 -20
  214. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +83 -47
  215. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +40 -31
  216. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +16 -1
  217. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +8 -8
  218. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +5 -3
  219. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +7 -6
  220. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +14 -4
  221. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +6 -6
  222. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +16 -1
  223. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +23 -3
  224. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -3
  225. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +11 -1
  226. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +3 -3
  227. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +5 -3
  228. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +1 -1
  229. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +12 -2
  230. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +3 -91
  231. package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +92 -0
  232. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +14 -4
  233. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +4 -0
  234. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +18 -19
  235. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +5 -4
  236. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +4 -2
  237. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +4 -1
  238. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +6 -5
  239. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +5 -4
  240. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +28 -19
  241. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +7 -4
  242. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +1 -1
  243. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +64 -72
  244. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +11 -5
  245. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +5 -85
  246. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +2 -2
  247. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +6 -4
  248. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +4 -1
  249. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +28 -17
  250. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +5 -4
  251. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  252. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +53 -6
  253. package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +1 -1
  254. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +11 -1
  255. package/vscode/src/vs/editor/contrib/links/browser/links.js +2 -2
  256. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +7 -7
  257. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +11 -1
  258. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +12 -2
  259. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +1 -1
  260. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +27 -33
  261. package/vscode/src/vs/editor/contrib/rename/browser/{renameInputField.js → renameWidget.js} +282 -194
  262. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +154 -0
  263. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +60 -61
  264. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +23 -14
  265. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +1 -1
  266. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +12 -2
  267. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +11 -1
  268. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +1 -1
  269. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +16 -6
  270. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +2 -2
  271. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +12 -12
  272. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +2 -2
  273. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
  274. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +2 -2
  275. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +1 -1
  276. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +12 -12
  277. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +11 -1
  278. package/vscode/src/vs/editor/standalone/common/themes.js +11 -1
  279. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +16 -9
  280. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +42 -18
  281. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +16 -5
  282. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +11 -1
  283. package/vscode/src/vs/platform/actions/browser/buttonbar.js +13 -5
  284. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +3 -1
  285. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +11 -1
  286. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +11 -1
  287. package/vscode/src/vs/platform/actions/common/actions.d.ts +7 -0
  288. package/vscode/src/vs/platform/actions/common/actions.js +7 -0
  289. package/vscode/src/vs/platform/contextview/browser/contextView.d.ts +1 -0
  290. package/vscode/src/vs/platform/contextview/browser/contextViewService.js +12 -15
  291. package/vscode/src/vs/platform/dialogs/common/dialogs.js +4 -2
  292. package/vscode/src/vs/platform/editor/common/editor.d.ts +12 -0
  293. package/vscode/src/vs/platform/environment/common/environmentService.js +6 -0
  294. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +19 -7
  295. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +7 -1
  296. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +333 -0
  297. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +901 -0
  298. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +3 -4
  299. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +16 -16
  300. package/vscode/src/vs/platform/extensions/common/extensions.js +5 -1
  301. package/vscode/src/vs/platform/files/common/files.d.ts +1 -11
  302. package/vscode/src/vs/platform/files/common/files.js +2 -0
  303. package/vscode/src/vs/platform/files/common/watcher.js +2 -0
  304. package/vscode/src/vs/platform/hover/browser/hover.d.ts +1 -1
  305. package/vscode/src/vs/platform/hover/browser/hover.js +21 -6
  306. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.js +1 -0
  307. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +5 -0
  308. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +8 -6
  309. package/vscode/src/vs/platform/log/browser/log.js +1 -0
  310. package/vscode/src/vs/platform/log/common/log.js +13 -1
  311. package/vscode/src/vs/platform/markers/common/markerService.js +1 -1
  312. package/vscode/src/vs/platform/markers/common/markers.js +9 -9
  313. package/vscode/src/vs/platform/opener/browser/link.js +16 -4
  314. package/vscode/src/vs/platform/policy/common/policy.js +2 -0
  315. package/vscode/src/vs/platform/product/common/product.js +2 -1
  316. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css.js +1 -1
  317. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +36 -33
  318. package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +5 -0
  319. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +38 -9
  320. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +7 -4
  321. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +22 -12
  322. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +13 -5
  323. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1348 -0
  324. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  325. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +14 -0
  326. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +2 -2
  327. package/vscode/src/vs/platform/remote/common/remoteHosts.js +1 -4
  328. package/vscode/src/vs/platform/secrets/common/secrets.js +5 -0
  329. package/vscode/src/vs/platform/severityIcon/browser/severityIcon.js +5 -5
  330. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +2 -0
  331. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -1
  332. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +3 -9
  333. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -1
  334. package/vscode/src/vs/platform/terminal/common/terminal.js +1 -0
  335. package/vscode/src/vs/platform/terminal/common/terminalEnvironment.js +4 -1
  336. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +11 -1
  337. package/vscode/src/vs/platform/theme/common/colorUtils.js +187 -0
  338. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +89 -0
  339. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +46 -0
  340. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +469 -0
  341. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +196 -0
  342. package/vscode/src/vs/platform/theme/common/colors/listColors.js +166 -0
  343. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +41 -0
  344. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +61 -0
  345. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +45 -0
  346. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +51 -0
  347. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +19 -0
  348. package/vscode/src/vs/platform/theme/common/iconRegistry.js +2 -1
  349. package/vscode/src/vs/platform/theme/common/themeService.d.ts +1 -1
  350. package/vscode/src/vs/platform/tunnel/common/tunnel.js +2 -0
  351. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +2 -2
  352. package/vscode/src/vs/platform/update/common/update.js +1 -1
  353. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +1 -0
  354. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileIpc.js +2 -0
  355. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +69 -32
  356. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +6 -0
  357. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +3 -1
  358. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +12 -5
  359. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -8
  360. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +58 -88
  361. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +8 -4
  362. package/vscode/src/vs/workbench/api/common/extHostComments.js +49 -13
  363. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +16 -17
  364. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +3 -1
  365. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +1 -1
  366. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +17 -4
  367. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +1 -1
  368. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +57 -40
  369. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +305 -0
  370. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +2 -2
  371. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +1 -1
  372. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +26 -6
  373. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +9 -9
  374. package/vscode/src/vs/workbench/api/common/extHostSCM.js +1 -1
  375. package/vscode/src/vs/workbench/api/common/extHostSearch.js +34 -3
  376. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +1 -1
  377. package/vscode/src/vs/workbench/api/common/extHostTask.js +1 -0
  378. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +32 -18
  379. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +214 -0
  380. package/vscode/src/vs/workbench/api/common/extHostTesting.js +85 -98
  381. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -0
  382. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +5 -2
  383. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +119 -70
  384. package/vscode/src/vs/workbench/api/common/extHostTypes.js +90 -28
  385. package/vscode/src/vs/workbench/browser/actions/developerActions.js +4 -4
  386. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +2 -2
  387. package/vscode/src/vs/workbench/browser/actions/windowActions.js +3 -3
  388. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +3 -3
  389. package/vscode/src/vs/workbench/browser/codeeditor.js +1 -1
  390. package/vscode/src/vs/workbench/browser/composite.d.ts +3 -5
  391. package/vscode/src/vs/workbench/browser/composite.js +2 -10
  392. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  393. package/vscode/src/vs/workbench/browser/labels.js +2 -1
  394. package/vscode/src/vs/workbench/browser/media/part.css.js +1 -1
  395. package/vscode/src/vs/workbench/browser/media/style.css.js +1 -1
  396. package/vscode/src/vs/workbench/browser/part.d.ts +25 -3
  397. package/vscode/src/vs/workbench/browser/part.js +84 -9
  398. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +67 -10
  399. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +2 -2
  400. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +92 -14
  401. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css.js +1 -1
  402. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +5 -4
  403. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +13 -3
  404. package/vscode/src/vs/workbench/browser/parts/compositePart.js +13 -5
  405. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +12 -0
  406. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +10 -10
  407. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  408. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +8 -7
  409. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +16 -8
  410. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +217 -0
  411. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +14 -16
  412. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +2 -2
  413. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +8 -7
  414. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +4 -202
  415. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +1 -1
  416. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +11 -1
  417. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +92 -23
  418. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +15 -3
  419. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.d.ts +7 -8
  420. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +7 -6
  421. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +12 -32
  422. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +11 -1
  423. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +1 -0
  424. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +27 -28
  425. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +19 -20
  426. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -2
  427. package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.js +14 -17
  428. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +11 -1
  429. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +12 -12
  430. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +16 -16
  431. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +3 -3
  432. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +17 -17
  433. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +36 -13
  434. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +22 -22
  435. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +29 -21
  436. package/vscode/src/vs/workbench/browser/parts/media/compositepart.css.js +1 -1
  437. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +1 -1
  438. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +13 -2
  439. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +11 -1
  440. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +16 -16
  441. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +1 -0
  442. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +122 -33
  443. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +14 -3
  444. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +15 -2
  445. package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +1 -1
  446. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +37 -0
  447. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +36 -18
  448. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +7 -4
  449. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +6 -4
  450. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -3
  451. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  452. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +3 -3
  453. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -3
  454. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +6 -0
  455. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +28 -11
  456. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +19 -15
  457. package/vscode/src/vs/workbench/browser/quickaccess.js +42 -15
  458. package/vscode/src/vs/workbench/browser/style.js +52 -3
  459. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  460. package/vscode/src/vs/workbench/browser/window.js +28 -20
  461. package/vscode/src/vs/workbench/browser/workbench.contribution.js +83 -9
  462. package/vscode/src/vs/workbench/common/component.js +0 -1
  463. package/vscode/src/vs/workbench/common/contextkeys.js +4 -4
  464. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +59 -5
  465. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +10 -0
  466. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  467. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +1 -0
  468. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +3 -1
  469. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +7 -3
  470. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +3 -3
  471. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  472. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  473. package/vscode/src/vs/workbench/common/editor.d.ts +33 -13
  474. package/vscode/src/vs/workbench/common/editor.js +6 -7
  475. package/vscode/src/vs/workbench/common/theme.js +45 -5
  476. package/vscode/src/vs/workbench/common/views.d.ts +1 -0
  477. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +59 -184
  478. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +1 -0
  479. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +140 -13
  480. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +1 -1
  481. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignal.contribution.js +1 -0
  482. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalDebuggerContribution.js +4 -2
  483. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalLineFeatureContribution.js +35 -36
  484. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/commands.js +1 -1
  485. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +1 -1
  486. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +4 -5
  487. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +21 -12
  488. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +70 -32
  489. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -1
  490. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +4 -1
  491. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +118 -0
  492. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +11 -6
  493. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +154 -61
  494. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +186 -224
  495. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +6 -75
  496. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +158 -49
  497. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +84 -175
  498. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +38 -5
  499. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  500. package/vscode/src/vs/workbench/contrib/chat/common/annotations.js +105 -0
  501. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +137 -43
  502. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +44 -0
  503. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +17 -1
  504. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +82 -34
  505. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +17 -3
  506. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +20 -22
  507. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +68 -9
  508. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +115 -0
  509. package/vscode/src/vs/workbench/contrib/chat/common/{chatProvider.js → languageModels.js} +9 -9
  510. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +5 -4
  511. package/vscode/src/vs/workbench/contrib/codeActions/browser/documentationContribution.js +2 -1
  512. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +5 -5
  513. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +33 -7
  514. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +11 -1
  515. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +3 -3
  516. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +9 -6
  517. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +13 -3
  518. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +1 -1
  519. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +2 -2
  520. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +1 -1
  521. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +1 -1
  522. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +6 -6
  523. package/vscode/src/vs/workbench/contrib/codeEditor/{browser → common}/languageConfigurationExtensionPoint.js +79 -74
  524. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +11 -1
  525. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +11 -1
  526. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +25 -18
  527. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +14 -2
  528. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.js +80 -52
  529. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +12 -2
  530. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +33 -13
  531. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +129 -57
  532. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +15 -15
  533. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +145 -20
  534. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +61 -95
  535. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +2 -2
  536. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  537. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +2 -2
  538. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +4 -3
  539. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +18 -11
  540. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +6 -0
  541. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +62 -4
  542. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +6 -4
  543. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +34 -5
  544. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +48 -29
  545. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +216 -23
  546. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +11 -1
  547. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -2
  548. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  549. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +23 -5
  550. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +24 -1
  551. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +15 -1
  552. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +30 -6
  553. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +2 -2
  554. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +106 -37
  555. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +1 -1
  556. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpener.contribution.js +1 -0
  557. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +8 -11
  558. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +5 -3
  559. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +23 -24
  560. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +17 -12
  561. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +3 -3
  562. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +9 -9
  563. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.save.js +1 -1
  564. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +10 -0
  565. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +11 -1
  566. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +11 -1
  567. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +1 -3
  568. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +1 -1
  569. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +15 -6
  570. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +4 -8
  571. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +674 -0
  572. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +154 -0
  573. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +316 -344
  574. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatFileCreationWidget.js +223 -0
  575. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +8 -25
  576. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +427 -0
  577. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +45 -160
  578. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +358 -702
  579. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +165 -0
  580. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +4 -0
  581. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +4 -0
  582. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +1 -1
  583. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +16 -27
  584. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +19 -4
  585. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +9 -9
  586. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css.js +1 -1
  587. package/vscode/src/vs/workbench/contrib/limitIndicator/browser/limitIndicator.contribution.js +2 -2
  588. package/vscode/src/vs/workbench/contrib/logs/common/defaultLogLevels.js +17 -2
  589. package/vscode/src/vs/workbench/contrib/logs/common/logsActions.js +236 -0
  590. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +2 -2
  591. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +9 -4
  592. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +8 -6
  593. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +8 -0
  594. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +5 -5
  595. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +5 -5
  596. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +2 -0
  597. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +4 -2
  598. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +11 -1
  599. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +5 -3
  600. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editorGutter.js +5 -3
  601. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +6 -4
  602. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/codeEditorView.js +5 -4
  603. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +7 -5
  604. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +6 -4
  605. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/lineAlignment.js +2 -2
  606. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +23 -19
  607. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/scrollSynchronizer.js +4 -1
  608. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +5 -3
  609. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +9 -0
  610. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +303 -0
  611. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +655 -0
  612. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnostics.js +101 -0
  613. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +56 -1
  614. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +11 -1
  615. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +11 -4
  616. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +29 -0
  617. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +888 -0
  618. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +2 -1
  619. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +1 -1
  620. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css.js +1 -1
  621. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFolding.css.js +1 -1
  622. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookOutline.css.js +1 -1
  623. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookToolbar.css.js +1 -1
  624. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +88 -0
  625. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +60 -46
  626. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +42 -52
  627. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +18 -7
  628. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +1 -1
  629. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +28 -1
  630. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +2 -2
  631. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +11 -7
  632. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -1
  633. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +48 -4
  634. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  635. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +3 -1
  636. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +13 -2
  637. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +57 -10
  638. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +11 -4
  639. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +161 -15
  640. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +4 -2
  641. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +21 -2
  642. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +1 -1
  643. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +5 -0
  644. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.js +14 -4
  645. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProvider.js +14 -8
  646. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +3 -0
  647. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +25 -64
  648. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +27 -22
  649. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +1 -1
  650. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  651. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +2 -2
  652. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +8 -1
  653. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +3 -1
  654. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +7 -14
  655. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +4 -4
  656. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +10 -0
  657. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +16 -4
  658. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +17 -4
  659. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +11 -1
  660. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +26 -8
  661. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +16 -6
  662. package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +11 -1
  663. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +18 -8
  664. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +235 -0
  665. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +182 -69
  666. package/vscode/src/vs/workbench/contrib/search/common/constants.js +2 -0
  667. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +203 -1
  668. package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +3 -0
  669. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.js +2 -0
  670. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +11 -3
  671. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +2 -2
  672. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +58 -8
  673. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +3 -1
  674. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -0
  675. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +12 -1
  676. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +11 -1
  677. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +53 -57
  678. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +11 -26
  679. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +6 -3
  680. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +12 -12
  681. package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +8 -0
  682. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +2 -0
  683. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +1 -1
  684. package/vscode/src/vs/workbench/contrib/webview/browser/overlayWebview.js +30 -7
  685. package/vscode/src/vs/workbench/contrib/webview/browser/themeing.js +12 -2
  686. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +50 -41
  687. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +4 -5
  688. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +20 -22
  689. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +4 -1
  690. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +1 -0
  691. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +3 -3
  692. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  693. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +2 -0
  694. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.js +6 -0
  695. package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.js +69 -0
  696. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +69 -811
  697. package/vscode/src/vs/workbench/services/authentication/browser/authenticationUsageService.js +50 -0
  698. package/vscode/src/vs/workbench/services/authentication/common/authentication.js +2 -1
  699. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +50 -25
  700. package/vscode/src/vs/workbench/services/banner/browser/bannerService.d.ts +1 -1
  701. package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +1 -0
  702. package/vscode/src/vs/workbench/services/editor/browser/editorPaneService.js +1 -0
  703. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +21 -17
  704. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.d.ts +12 -0
  705. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +144 -0
  706. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +10 -6
  707. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +3 -3
  708. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +16 -4
  709. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +12 -1
  710. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +46 -121
  711. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +5 -2
  712. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +6 -3
  713. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +9 -1
  714. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +4 -4
  715. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +2 -1
  716. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +8 -1
  717. package/vscode/src/vs/workbench/services/history/browser/historyService.js +44 -36
  718. package/vscode/src/vs/workbench/services/history/common/history.d.ts +0 -5
  719. package/vscode/src/vs/workbench/services/language/common/languageService.js +4 -3
  720. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -1
  721. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +2 -1
  722. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +8 -6
  723. package/vscode/src/vs/workbench/services/output/common/output.js +4 -1
  724. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +2 -2
  725. package/vscode/src/vs/workbench/services/search/common/search.js +1 -0
  726. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +15 -5
  727. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +6 -1
  728. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +1 -1
  729. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +1 -1
  730. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +11 -1
  731. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +5 -3
  732. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.js +1 -1
  733. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +1 -0
  734. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +7 -7
  735. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +261 -0
  736. package/vscode-dts/vscode.proposed.authLearnMore.d.ts +16 -0
  737. package/vscode-dts/vscode.proposed.chatParticipant.d.ts +49 -78
  738. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +13 -16
  739. package/vscode-dts/vscode.proposed.chatProvider.d.ts +1 -1
  740. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +32 -0
  741. package/vscode-dts/vscode.proposed.commentingRangeHint.d.ts +16 -0
  742. package/vscode-dts/vscode.proposed.contribCommentsViewThreadMenus.d.ts +6 -0
  743. package/vscode-dts/vscode.proposed.contribDiffEditorGutterToolBarMenus.d.ts +6 -0
  744. package/vscode-dts/vscode.proposed.debugFocus.d.ts +15 -23
  745. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +10 -0
  746. package/vscode-dts/vscode.proposed.documentPaste.d.ts +115 -30
  747. package/vscode-dts/vscode.proposed.dropMetadata.d.ts +19 -14
  748. package/vscode-dts/vscode.proposed.fileComments.d.ts +2 -4
  749. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +18 -0
  750. package/vscode-dts/vscode.proposed.interactive.d.ts +0 -16
  751. package/vscode-dts/vscode.proposed.languageModels.d.ts +115 -53
  752. package/vscode-dts/vscode.proposed.notebookCellExecution.d.ts +44 -0
  753. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +3 -0
  754. package/vscode-dts/vscode.proposed.tabInputMultiDiff.d.ts +22 -0
  755. package/vscode-dts/vscode.proposed.terminalExecuteCommandEvent.d.ts +2 -0
  756. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +207 -0
  757. package/vscode/src/vs/editor/browser/services/hoverService.d.ts +0 -30
  758. package/vscode/src/vs/editor/browser/widget/embeddedCodeEditorWidget.js +0 -74
  759. package/vscode/src/vs/editor/browser/widget/media/editor.css.js +0 -4
  760. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +0 -881
  761. package/vscode/src/vs/platform/theme/common/colorRegistry.js +0 -1316
  762. package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +0 -253
  763. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.css.js +0 -4
  764. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +0 -74
  765. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +0 -4
  766. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +0 -424
  767. package/vscode-dts/vscode.proposed.testCoverage.d.ts +0 -222
  768. /package/vscode/src/vs/base/browser/ui/hover/{hover.css.js → hoverWidget.css.js} +0 -0
  769. /package/vscode/src/vs/editor/browser/{widget/hoverWidget → services/hoverService}/hover.css.js +0 -0
  770. /package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/objectPool.js +0 -0
  771. /package/vscode/src/vs/editor/contrib/indentation/{browser → common}/indentUtils.js +0 -0
  772. /package/vscode/src/vs/editor/contrib/rename/browser/{renameInputField.css.js → renameWidget.css.js} +0 -0
  773. /package/vscode/src/vs/platform/theme/common/{colorRegistry.d.ts → colorUtils.d.ts} +0 -0
@@ -141,6 +141,7 @@ declare class MenuId {
141
141
  static readonly CommentThreadCommentContext: MenuId;
142
142
  static readonly CommentTitle: MenuId;
143
143
  static readonly CommentActions: MenuId;
144
+ static readonly CommentsViewThreadActions: MenuId;
144
145
  static readonly InteractiveToolbar: MenuId;
145
146
  static readonly InteractiveCellTitle: MenuId;
146
147
  static readonly InteractiveCellDelete: MenuId;
@@ -161,6 +162,8 @@ declare class MenuId {
161
162
  static readonly NotebookDiffCellMetadataTitle: MenuId;
162
163
  static readonly NotebookDiffCellOutputsTitle: MenuId;
163
164
  static readonly NotebookOutputToolbar: MenuId;
165
+ static readonly NotebookOutlineFilter: MenuId;
166
+ static readonly NotebookOutlineActionMenu: MenuId;
164
167
  static readonly NotebookEditorLayoutConfigure: MenuId;
165
168
  static readonly NotebookKernelSource: MenuId;
166
169
  static readonly BulkEditTitle: MenuId;
@@ -173,6 +176,7 @@ declare class MenuId {
173
176
  static readonly SidebarTitle: MenuId;
174
177
  static readonly PanelTitle: MenuId;
175
178
  static readonly AuxiliaryBarTitle: MenuId;
179
+ static readonly AuxiliaryBarHeader: MenuId;
176
180
  static readonly TerminalInstanceContext: MenuId;
177
181
  static readonly TerminalEditorInstanceContext: MenuId;
178
182
  static readonly TerminalNewDropdownContext: MenuId;
@@ -193,9 +197,12 @@ declare class MenuId {
193
197
  static readonly ChatCodeBlock: MenuId;
194
198
  static readonly ChatMessageTitle: MenuId;
195
199
  static readonly ChatExecute: MenuId;
200
+ static readonly ChatExecuteSecondary: MenuId;
196
201
  static readonly ChatInputSide: MenuId;
197
202
  static readonly AccessibleView: MenuId;
198
203
  static readonly MultiDiffEditorFileToolbar: MenuId;
204
+ static readonly DiffEditorHunkToolbar: MenuId;
205
+ static readonly DiffEditorSelectionToolbar: MenuId;
199
206
  /**
200
207
  * Create or reuse a `MenuId` with the given identifier
201
208
  */
@@ -132,6 +132,7 @@ class MenuId {
132
132
  static { this.CommentThreadCommentContext = ( new MenuId('CommentThreadCommentContext')); }
133
133
  static { this.CommentTitle = ( new MenuId('CommentTitle')); }
134
134
  static { this.CommentActions = ( new MenuId('CommentActions')); }
135
+ static { this.CommentsViewThreadActions = ( new MenuId('CommentsViewThreadActions')); }
135
136
  static { this.InteractiveToolbar = ( new MenuId('InteractiveToolbar')); }
136
137
  static { this.InteractiveCellTitle = ( new MenuId('InteractiveCellTitle')); }
137
138
  static { this.InteractiveCellDelete = ( new MenuId('InteractiveCellDelete')); }
@@ -152,6 +153,8 @@ class MenuId {
152
153
  static { this.NotebookDiffCellMetadataTitle = ( new MenuId('NotebookDiffCellMetadataTitle')); }
153
154
  static { this.NotebookDiffCellOutputsTitle = ( new MenuId('NotebookDiffCellOutputsTitle')); }
154
155
  static { this.NotebookOutputToolbar = ( new MenuId('NotebookOutputToolbar')); }
156
+ static { this.NotebookOutlineFilter = ( new MenuId('NotebookOutlineFilter')); }
157
+ static { this.NotebookOutlineActionMenu = ( new MenuId('NotebookOutlineActionMenu')); }
155
158
  static { this.NotebookEditorLayoutConfigure = ( new MenuId('NotebookEditorLayoutConfigure')); }
156
159
  static { this.NotebookKernelSource = ( new MenuId('NotebookKernelSource')); }
157
160
  static { this.BulkEditTitle = ( new MenuId('BulkEditTitle')); }
@@ -164,6 +167,7 @@ class MenuId {
164
167
  static { this.SidebarTitle = ( new MenuId('SidebarTitle')); }
165
168
  static { this.PanelTitle = ( new MenuId('PanelTitle')); }
166
169
  static { this.AuxiliaryBarTitle = ( new MenuId('AuxiliaryBarTitle')); }
170
+ static { this.AuxiliaryBarHeader = ( new MenuId('AuxiliaryBarHeader')); }
167
171
  static { this.TerminalInstanceContext = ( new MenuId('TerminalInstanceContext')); }
168
172
  static { this.TerminalEditorInstanceContext = ( new MenuId('TerminalEditorInstanceContext')); }
169
173
  static { this.TerminalNewDropdownContext = ( new MenuId('TerminalNewDropdownContext')); }
@@ -184,9 +188,12 @@ class MenuId {
184
188
  static { this.ChatCodeBlock = ( new MenuId('ChatCodeblock')); }
185
189
  static { this.ChatMessageTitle = ( new MenuId('ChatMessageTitle')); }
186
190
  static { this.ChatExecute = ( new MenuId('ChatExecute')); }
191
+ static { this.ChatExecuteSecondary = ( new MenuId('ChatExecuteSecondary')); }
187
192
  static { this.ChatInputSide = ( new MenuId('ChatInputSide')); }
188
193
  static { this.AccessibleView = ( new MenuId('AccessibleView')); }
189
194
  static { this.MultiDiffEditorFileToolbar = ( new MenuId('MultiDiffEditorFileToolbar')); }
195
+ static { this.DiffEditorHunkToolbar = ( new MenuId('DiffEditorHunkToolbar')); }
196
+ static { this.DiffEditorSelectionToolbar = ( new MenuId('DiffEditorSelectionToolbar')); }
190
197
  static for(identifier) {
191
198
  return MenuId._instances.get(identifier) ?? ( new MenuId(identifier));
192
199
  }
@@ -32,6 +32,7 @@ interface IContextViewDelegate {
32
32
  focus?(): void;
33
33
  anchorAlignment?: AnchorAlignment;
34
34
  anchorAxisAlignment?: AnchorAxisAlignment;
35
+ layer?: number;
35
36
  }
36
37
  declare const IContextMenuService: ServiceIdentifier<IContextMenuService>;
37
38
  interface IContextMenuService {
@@ -1,13 +1,13 @@
1
1
  import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
2
  import { ContextView } from '../../../base/browser/ui/contextview/contextview.js';
3
- import { Disposable, toDisposable } from '../../../base/common/lifecycle.js';
3
+ import { Disposable, MutableDisposable, toDisposable } from '../../../base/common/lifecycle.js';
4
4
  import { ILayoutService } from '../../layout/browser/layoutService.js';
5
5
  import { getWindow } from '../../../base/browser/dom.js';
6
- let ContextViewService = class ContextViewService extends Disposable {
6
+ let ContextViewHandler = class ContextViewHandler extends Disposable {
7
7
  constructor(layoutService) {
8
8
  super();
9
9
  this.layoutService = layoutService;
10
- this.currentViewDisposable = Disposable.None;
10
+ this.currentViewDisposable = this._register(( new MutableDisposable()));
11
11
  this.contextView = this._register(( new ContextView(this.layoutService.mainContainer, 1 )));
12
12
  this.layout();
13
13
  this._register(layoutService.onDidLayoutContainer(() => this.layout()));
@@ -35,25 +35,22 @@ let ContextViewService = class ContextViewService extends Disposable {
35
35
  this.hideContextView();
36
36
  }
37
37
  });
38
- this.currentViewDisposable = disposable;
38
+ this.currentViewDisposable.value = disposable;
39
39
  return disposable;
40
40
  }
41
- getContextViewElement() {
42
- return this.contextView.getViewElement();
43
- }
44
41
  layout() {
45
42
  this.contextView.layout();
46
43
  }
47
44
  hideContextView(data) {
48
45
  this.contextView.hide(data);
49
46
  }
50
- dispose() {
51
- super.dispose();
52
- this.currentViewDisposable.dispose();
53
- this.currentViewDisposable = Disposable.None;
54
- }
55
47
  };
56
- ContextViewService = ( __decorate([
48
+ ContextViewHandler = ( __decorate([
57
49
  ( __param(0, ILayoutService))
58
- ], ContextViewService));
59
- export { ContextViewService };
50
+ ], ContextViewHandler));
51
+ class ContextViewService extends ContextViewHandler {
52
+ getContextViewElement() {
53
+ return this.contextView.getViewElement();
54
+ }
55
+ }
56
+ export { ContextViewHandler, ContextViewService };
@@ -1,7 +1,9 @@
1
1
  import { basename } from '../../../base/common/resources.js';
2
- import Severity from '../../../base/common/severity.js';
2
+ import Severity$1 from '../../../base/common/severity.js';
3
3
  import { localizeWithPath } from '../../../nls.js';
4
4
  import { createDecorator } from '../../instantiation/common/instantiation.js';
5
+ import '../../../base/common/labels.js';
6
+ import '../../../base/common/platform.js';
5
7
  const IDialogService = ( createDecorator('dialogService'));
6
8
  var DialogKind;
7
9
  ( (function(DialogKind) {
@@ -100,7 +102,7 @@ class AbstractDialogHandler {
100
102
  return type;
101
103
  }
102
104
  if (typeof type === 'number') {
103
- return (type === Severity.Info) ? 'info' : (type === Severity.Error) ? 'error' : (type === Severity.Warning) ? 'warning' : 'none';
105
+ return (type === Severity$1.Info) ? 'info' : (type === Severity$1.Error) ? 'error' : (type === Severity$1.Warning) ? 'warning' : 'none';
104
106
  }
105
107
  return undefined;
106
108
  }
@@ -230,6 +230,18 @@ interface IEditorOptions {
230
230
  * applied when opening the editor.
231
231
  */
232
232
  viewState?: object;
233
+ /**
234
+ * A transient editor will attempt to appear as preview and certain components
235
+ * (such as history tracking) may decide to ignore the editor when it becomes
236
+ * active.
237
+ * This option is meant to be used only when the editor is used for a short
238
+ * period of time, for example when opening a preview of the editor from a
239
+ * picker control in the background while navigating through results of the picker.
240
+ *
241
+ * Note: an editor that is already opened in a group that is not transient, will
242
+ * not turn transient.
243
+ */
244
+ transient?: boolean;
233
245
  }
234
246
  interface ITextEditorSelection {
235
247
  readonly startLineNumber: number;
@@ -1,2 +1,8 @@
1
+ import '../../../nls.js';
2
+ import '../../../base/common/network.js';
3
+ import '../../../base/common/path.js';
4
+ import '../../../base/common/process.js';
5
+ import '../../../base/common/resources.js';
6
+ import '../../../base/common/platform.js';
1
7
  const EXTENSION_IDENTIFIER_WITH_LOG_REGEX = /^([^.]+\..+)[:=](.+)$/;
2
8
  export { EXTENSION_IDENTIFIER_WITH_LOG_REGEX };
@@ -5,6 +5,10 @@ import { Event } from '../../../base/common/event.js';
5
5
  import { URI } from '../../../base/common/uri.js';
6
6
  import { TargetPlatform, IExtension, IExtensionManifest, ExtensionType } from '../../extensions/common/extensions.js';
7
7
 
8
+ interface IProductVersion {
9
+ readonly version: string;
10
+ readonly date?: string;
11
+ }
8
12
  interface IGalleryExtensionProperties {
9
13
  dependencies?: string[];
10
14
  extensionPack?: string[];
@@ -67,6 +71,7 @@ interface IGalleryExtension {
67
71
  queryContext?: IStringDictionary<any>;
68
72
  supportLink?: string;
69
73
  }
74
+ type InstallSource = 'gallery' | 'vsix' | 'resource';
70
75
  interface IGalleryMetadata {
71
76
  id: string;
72
77
  publisherId: string;
@@ -84,8 +89,10 @@ type Metadata = Partial<IGalleryMetadata & {
84
89
  hasPreReleaseVersion: boolean;
85
90
  installedTimestamp: number;
86
91
  pinned: boolean;
92
+ source: InstallSource;
87
93
  }>;
88
94
  interface ILocalExtension extends IExtension {
95
+ isWorkspaceScoped: boolean;
89
96
  isMachineScoped: boolean;
90
97
  isApplicationScoped: boolean;
91
98
  publisherId: string | null;
@@ -96,6 +103,7 @@ interface ILocalExtension extends IExtension {
96
103
  preRelease: boolean;
97
104
  updated: boolean;
98
105
  pinned: boolean;
106
+ source: InstallSource;
99
107
  }
100
108
  interface IDeprecationInfo {
101
109
  readonly disallowInstall?: boolean;
@@ -130,6 +138,7 @@ interface InstallExtensionEvent {
130
138
  readonly source: URI | IGalleryExtension;
131
139
  readonly profileLocation?: URI;
132
140
  readonly applicationScoped?: boolean;
141
+ readonly workspaceScoped?: boolean;
133
142
  }
134
143
  interface InstallExtensionResult {
135
144
  readonly identifier: IExtensionIdentifier;
@@ -140,20 +149,24 @@ interface InstallExtensionResult {
140
149
  readonly context?: IStringDictionary<any>;
141
150
  readonly profileLocation?: URI;
142
151
  readonly applicationScoped?: boolean;
152
+ readonly workspaceScoped?: boolean;
143
153
  }
144
154
  interface UninstallExtensionEvent {
145
155
  readonly identifier: IExtensionIdentifier;
146
156
  readonly profileLocation?: URI;
147
157
  readonly applicationScoped?: boolean;
158
+ readonly workspaceScoped?: boolean;
148
159
  }
149
160
  interface DidUninstallExtensionEvent {
150
161
  readonly identifier: IExtensionIdentifier;
151
162
  readonly error?: string;
152
163
  readonly profileLocation?: URI;
153
164
  readonly applicationScoped?: boolean;
165
+ readonly workspaceScoped?: boolean;
154
166
  }
155
167
  type InstallOptions = {
156
168
  isBuiltin?: boolean;
169
+ isWorkspaceScoped?: boolean;
157
170
  isMachineScoped?: boolean;
158
171
  isApplicationScoped?: boolean;
159
172
  pinned?: boolean;
@@ -164,14 +177,13 @@ type InstallOptions = {
164
177
  donotVerifySignature?: boolean;
165
178
  operation?: InstallOperation;
166
179
  profileLocation?: URI;
180
+ installOnlyNewlyAddedFromExtensionPack?: boolean;
181
+ productVersion?: IProductVersion;
167
182
  /**
168
183
  * Context passed through to InstallExtensionResult
169
184
  */
170
185
  context?: IStringDictionary<any>;
171
186
  };
172
- type InstallVSIXOptions = InstallOptions & {
173
- installOnlyNewlyAddedFromExtensionPack?: boolean;
174
- };
175
187
  type UninstallOptions = {
176
188
  readonly donotIncludePack?: boolean;
177
189
  readonly donotCheckDependents?: boolean;
@@ -180,7 +192,7 @@ type UninstallOptions = {
180
192
  readonly profileLocation?: URI;
181
193
  };
182
194
  interface IExtensionManagementParticipant {
183
- postInstall(local: ILocalExtension, source: URI | IGalleryExtension, options: InstallOptions | InstallVSIXOptions, token: CancellationToken): Promise<void>;
195
+ postInstall(local: ILocalExtension, source: URI | IGalleryExtension, options: InstallOptions, token: CancellationToken): Promise<void>;
184
196
  postUninstall(local: ILocalExtension, options: UninstallOptions, token: CancellationToken): Promise<void>;
185
197
  }
186
198
  type InstallExtensionInfo = {
@@ -198,7 +210,7 @@ interface IExtensionManagementService {
198
210
  zip(extension: ILocalExtension): Promise<URI>;
199
211
  unzip(zipLocation: URI): Promise<IExtensionIdentifier>;
200
212
  getManifest(vsix: URI): Promise<IExtensionManifest>;
201
- install(vsix: URI, options?: InstallVSIXOptions): Promise<ILocalExtension>;
213
+ install(vsix: URI, options?: InstallOptions): Promise<ILocalExtension>;
202
214
  canInstall(extension: IGalleryExtension): Promise<boolean>;
203
215
  installFromGallery(extension: IGalleryExtension, options?: InstallOptions): Promise<ILocalExtension>;
204
216
  installGalleryExtensions(extensions: InstallExtensionInfo[]): Promise<InstallExtensionResult[]>;
@@ -207,7 +219,7 @@ interface IExtensionManagementService {
207
219
  uninstall(extension: ILocalExtension, options?: UninstallOptions): Promise<void>;
208
220
  toggleAppliationScope(extension: ILocalExtension, fromProfileLocation: URI): Promise<ILocalExtension>;
209
221
  reinstallFromGallery(extension: ILocalExtension): Promise<ILocalExtension>;
210
- getInstalled(type?: ExtensionType, profileLocation?: URI): Promise<ILocalExtension[]>;
222
+ getInstalled(type?: ExtensionType, profileLocation?: URI, productVersion?: IProductVersion): Promise<ILocalExtension[]>;
211
223
  getExtensionsControlManifest(): Promise<IExtensionsControlManifest>;
212
224
  copyExtensions(fromProfileLocation: URI, toProfileLocation: URI): Promise<void>;
213
225
  updateMetadata(local: ILocalExtension, metadata: Partial<Metadata>, profileLocation?: URI): Promise<ILocalExtension>;
@@ -217,4 +229,4 @@ interface IExtensionManagementService {
217
229
  cleanUp(): Promise<void>;
218
230
  }
219
231
 
220
- export { type DidUninstallExtensionEvent, type IDeprecationInfo, type IExtensionIdentifier, type IExtensionManagementParticipant, IExtensionManagementService, type IExtensionsControlManifest, type IGalleryExtension, type IGalleryExtensionAsset, type IGalleryExtensionAssets, type IGalleryExtensionIdentifier, type IGalleryExtensionProperties, type IGalleryMetadata, type ILocalExtension, type ISearchPrefferedResults, type InstallExtensionEvent, type InstallExtensionInfo, type InstallExtensionResult, InstallOperation, type InstallOptions, type InstallVSIXOptions, type Metadata, type UninstallExtensionEvent, type UninstallOptions };
232
+ export { type DidUninstallExtensionEvent, type IDeprecationInfo, type IExtensionIdentifier, type IExtensionManagementParticipant, IExtensionManagementService, type IExtensionsControlManifest, type IGalleryExtension, type IGalleryExtensionAsset, type IGalleryExtensionAssets, type IGalleryExtensionIdentifier, type IGalleryExtensionProperties, type IGalleryMetadata, type ILocalExtension, type IProductVersion, type ISearchPrefferedResults, type InstallExtensionEvent, type InstallExtensionInfo, type InstallExtensionResult, InstallOperation, type InstallOptions, type InstallSource, type Metadata, type UninstallExtensionEvent, type UninstallOptions };
@@ -100,6 +100,12 @@ function isTargetPlatformCompatible(extensionTargetPlatform, allTargetPlatforms,
100
100
  }
101
101
  return false;
102
102
  }
103
+ function isIExtensionIdentifier(thing) {
104
+ return thing
105
+ && typeof thing === 'object'
106
+ && typeof thing.id === 'string'
107
+ && (!thing.uuid || typeof thing.uuid === 'string');
108
+ }
103
109
  const IExtensionGalleryService = ( createDecorator('extensionGalleryService'));
104
110
  var ExtensionManagementErrorCode;
105
111
  ( (function(ExtensionManagementErrorCode) {
@@ -160,4 +166,4 @@ const PreferencesLocalizedLabel = ( localize2WithPath(
160
166
  'preferences',
161
167
  'Preferences'
162
168
  ));
163
- export { DISABLED_EXTENSIONS_STORAGE_PATH, ENABLED_EXTENSIONS_STORAGE_PATH, EXTENSION_IDENTIFIER_PATTERN, EXTENSION_IDENTIFIER_REGEX, EXTENSION_INSTALL_DEP_PACK_CONTEXT, EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT, EXTENSION_INSTALL_SYNC_CONTEXT, ExtensionGalleryError, ExtensionGalleryErrorCode, ExtensionManagementError, ExtensionManagementErrorCode, ExtensionsLocalizedLabel, IExtensionGalleryService, IExtensionManagementService, IExtensionTipsService, IGlobalExtensionEnablementService, PreferencesLocalizedLabel, TargetPlatformToString, WEB_EXTENSION_TAG, getTargetPlatform, isNotWebExtensionInWebTargetPlatform, isTargetPlatformCompatible, toTargetPlatform };
169
+ export { DISABLED_EXTENSIONS_STORAGE_PATH, ENABLED_EXTENSIONS_STORAGE_PATH, EXTENSION_IDENTIFIER_PATTERN, EXTENSION_IDENTIFIER_REGEX, EXTENSION_INSTALL_DEP_PACK_CONTEXT, EXTENSION_INSTALL_SKIP_WALKTHROUGH_CONTEXT, EXTENSION_INSTALL_SYNC_CONTEXT, ExtensionGalleryError, ExtensionGalleryErrorCode, ExtensionManagementError, ExtensionManagementErrorCode, ExtensionsLocalizedLabel, IExtensionGalleryService, IExtensionManagementService, IExtensionTipsService, IGlobalExtensionEnablementService, PreferencesLocalizedLabel, TargetPlatformToString, WEB_EXTENSION_TAG, getTargetPlatform, isIExtensionIdentifier, isNotWebExtensionInWebTargetPlatform, isTargetPlatformCompatible, toTargetPlatform };
@@ -0,0 +1,333 @@
1
+ import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
+ import { Queue } from '../../../base/common/async.js';
3
+ import { VSBuffer } from '../../../base/common/buffer.js';
4
+ import { Disposable } from '../../../base/common/lifecycle.js';
5
+ import { Emitter } from '../../../base/common/event.js';
6
+ import { ResourceMap } from '../../../base/common/map.js';
7
+ import { URI } from '../../../base/common/uri.js';
8
+ import { isIExtensionIdentifier } from './extensionManagement.js';
9
+ import { areSameExtensions } from './extensionManagementUtil.js';
10
+ import { toFileOperationResult, IFileService } from '../../files/common/files.js';
11
+ import { createDecorator } from '../../instantiation/common/instantiation.js';
12
+ import { ILogService } from '../../log/common/log.js';
13
+ import { IUserDataProfilesService } from '../../userDataProfile/common/userDataProfile.js';
14
+ import { IUriIdentityService } from '../../uriIdentity/common/uriIdentity.js';
15
+ import { isString, isUndefined, isObject } from '../../../base/common/types.js';
16
+ import { getErrorMessage } from '../../../base/common/errors.js';
17
+ import { ITelemetryService } from '../../telemetry/common/telemetry.js';
18
+ class ExtensionsProfileScanningError extends Error {
19
+ constructor(message, code) {
20
+ super(message);
21
+ this.code = code;
22
+ }
23
+ }
24
+ const IExtensionsProfileScannerService = ( createDecorator('IExtensionsProfileScannerService'));
25
+ let AbstractExtensionsProfileScannerService = class AbstractExtensionsProfileScannerService extends Disposable {
26
+ constructor(extensionsLocation, fileService, userDataProfilesService, uriIdentityService, telemetryService, logService) {
27
+ super();
28
+ this.extensionsLocation = extensionsLocation;
29
+ this.fileService = fileService;
30
+ this.userDataProfilesService = userDataProfilesService;
31
+ this.uriIdentityService = uriIdentityService;
32
+ this.telemetryService = telemetryService;
33
+ this.logService = logService;
34
+ this._onAddExtensions = this._register(( new Emitter()));
35
+ this.onAddExtensions = this._onAddExtensions.event;
36
+ this._onDidAddExtensions = this._register(( new Emitter()));
37
+ this.onDidAddExtensions = this._onDidAddExtensions.event;
38
+ this._onRemoveExtensions = this._register(( new Emitter()));
39
+ this.onRemoveExtensions = this._onRemoveExtensions.event;
40
+ this._onDidRemoveExtensions = this._register(( new Emitter()));
41
+ this.onDidRemoveExtensions = this._onDidRemoveExtensions.event;
42
+ this.resourcesAccessQueueMap = ( new ResourceMap());
43
+ }
44
+ scanProfileExtensions(profileLocation, options) {
45
+ return this.withProfileExtensions(profileLocation, undefined, options);
46
+ }
47
+ async addExtensionsToProfile(extensions, profileLocation, keepExistingVersions) {
48
+ const extensionsToRemove = [];
49
+ const extensionsToAdd = [];
50
+ try {
51
+ await this.withProfileExtensions(profileLocation, existingExtensions => {
52
+ const result = [];
53
+ if (keepExistingVersions) {
54
+ result.push(...existingExtensions);
55
+ }
56
+ else {
57
+ for (const existing of existingExtensions) {
58
+ if (( extensions.some(
59
+ ([e]) => areSameExtensions(e.identifier, existing.identifier) && e.manifest.version !== existing.version
60
+ ))) {
61
+ extensionsToRemove.push(existing);
62
+ }
63
+ else {
64
+ result.push(existing);
65
+ }
66
+ }
67
+ }
68
+ for (const [extension, metadata] of extensions) {
69
+ const index = result.findIndex(e => areSameExtensions(e.identifier, extension.identifier) && e.version === extension.manifest.version);
70
+ const extensionToAdd = { identifier: extension.identifier, version: extension.manifest.version, location: extension.location, metadata };
71
+ if (index === -1) {
72
+ extensionsToAdd.push(extensionToAdd);
73
+ result.push(extensionToAdd);
74
+ }
75
+ else {
76
+ result.splice(index, 1, extensionToAdd);
77
+ }
78
+ }
79
+ if (extensionsToAdd.length) {
80
+ this._onAddExtensions.fire({ extensions: extensionsToAdd, profileLocation });
81
+ }
82
+ if (extensionsToRemove.length) {
83
+ this._onRemoveExtensions.fire({ extensions: extensionsToRemove, profileLocation });
84
+ }
85
+ return result;
86
+ });
87
+ if (extensionsToAdd.length) {
88
+ this._onDidAddExtensions.fire({ extensions: extensionsToAdd, profileLocation });
89
+ }
90
+ if (extensionsToRemove.length) {
91
+ this._onDidRemoveExtensions.fire({ extensions: extensionsToRemove, profileLocation });
92
+ }
93
+ return extensionsToAdd;
94
+ }
95
+ catch (error) {
96
+ if (extensionsToAdd.length) {
97
+ this._onDidAddExtensions.fire({ extensions: extensionsToAdd, error, profileLocation });
98
+ }
99
+ if (extensionsToRemove.length) {
100
+ this._onDidRemoveExtensions.fire({ extensions: extensionsToRemove, error, profileLocation });
101
+ }
102
+ throw error;
103
+ }
104
+ }
105
+ async updateMetadata(extensions, profileLocation) {
106
+ const updatedExtensions = [];
107
+ await this.withProfileExtensions(profileLocation, profileExtensions => {
108
+ const result = [];
109
+ for (const profileExtension of profileExtensions) {
110
+ const extension = extensions.find(([e]) => areSameExtensions(e.identifier, profileExtension.identifier) && e.manifest.version === profileExtension.version);
111
+ if (extension) {
112
+ profileExtension.metadata = { ...profileExtension.metadata, ...extension[1] };
113
+ updatedExtensions.push(profileExtension);
114
+ result.push(profileExtension);
115
+ }
116
+ else {
117
+ result.push(profileExtension);
118
+ }
119
+ }
120
+ return result;
121
+ });
122
+ return updatedExtensions;
123
+ }
124
+ async removeExtensionFromProfile(extension, profileLocation) {
125
+ const extensionsToRemove = [];
126
+ try {
127
+ await this.withProfileExtensions(profileLocation, profileExtensions => {
128
+ const result = [];
129
+ for (const e of profileExtensions) {
130
+ if (areSameExtensions(e.identifier, extension.identifier)) {
131
+ extensionsToRemove.push(e);
132
+ }
133
+ else {
134
+ result.push(e);
135
+ }
136
+ }
137
+ if (extensionsToRemove.length) {
138
+ this._onRemoveExtensions.fire({ extensions: extensionsToRemove, profileLocation });
139
+ }
140
+ return result;
141
+ });
142
+ if (extensionsToRemove.length) {
143
+ this._onDidRemoveExtensions.fire({ extensions: extensionsToRemove, profileLocation });
144
+ }
145
+ }
146
+ catch (error) {
147
+ if (extensionsToRemove.length) {
148
+ this._onDidRemoveExtensions.fire({ extensions: extensionsToRemove, error, profileLocation });
149
+ }
150
+ throw error;
151
+ }
152
+ }
153
+ async withProfileExtensions(file, updateFn, options) {
154
+ return this.getResourceAccessQueue(file).queue(async () => {
155
+ let extensions = [];
156
+ let storedProfileExtensions;
157
+ try {
158
+ const content = await this.fileService.readFile(file);
159
+ storedProfileExtensions = JSON.parse(( content.value.toString()).trim() || '[]');
160
+ }
161
+ catch (error) {
162
+ if (toFileOperationResult(error) !== 1 ) {
163
+ throw error;
164
+ }
165
+ if (this.uriIdentityService.extUri.isEqual(file, this.userDataProfilesService.defaultProfile.extensionsResource)) {
166
+ storedProfileExtensions = await this.migrateFromOldDefaultProfileExtensionsLocation();
167
+ }
168
+ if (!storedProfileExtensions && options?.bailOutWhenFileNotFound) {
169
+ throw new ExtensionsProfileScanningError(getErrorMessage(error), "ERROR_PROFILE_NOT_FOUND" );
170
+ }
171
+ }
172
+ if (storedProfileExtensions) {
173
+ if (!Array.isArray(storedProfileExtensions)) {
174
+ this.reportAndThrowInvalidConentError(file);
175
+ }
176
+ let migrate = false;
177
+ for (const e of storedProfileExtensions) {
178
+ if (!isStoredProfileExtension(e)) {
179
+ this.reportAndThrowInvalidConentError(file);
180
+ }
181
+ let location;
182
+ if (isString(e.relativeLocation) && e.relativeLocation) {
183
+ location = this.resolveExtensionLocation(e.relativeLocation);
184
+ }
185
+ else if (isString(e.location)) {
186
+ this.logService.warn(`Extensions profile: Ignoring extension with invalid location: ${e.location}`);
187
+ continue;
188
+ }
189
+ else {
190
+ location = URI.revive(e.location);
191
+ const relativePath = this.toRelativePath(location);
192
+ if (relativePath) {
193
+ migrate = true;
194
+ e.relativeLocation = relativePath;
195
+ }
196
+ }
197
+ if (isUndefined(e.metadata?.hasPreReleaseVersion) && e.metadata?.preRelease) {
198
+ migrate = true;
199
+ e.metadata.hasPreReleaseVersion = true;
200
+ }
201
+ extensions.push({
202
+ identifier: e.identifier,
203
+ location,
204
+ version: e.version,
205
+ metadata: e.metadata,
206
+ });
207
+ }
208
+ if (migrate) {
209
+ await this.fileService.writeFile(file, VSBuffer.fromString(JSON.stringify(storedProfileExtensions)));
210
+ }
211
+ }
212
+ if (updateFn) {
213
+ extensions = updateFn(extensions);
214
+ const storedProfileExtensions = ( extensions.map(e => ({
215
+ identifier: e.identifier,
216
+ version: e.version,
217
+ location: e.location.toJSON(),
218
+ relativeLocation: this.toRelativePath(e.location),
219
+ metadata: e.metadata
220
+ })));
221
+ await this.fileService.writeFile(file, VSBuffer.fromString(JSON.stringify(storedProfileExtensions)));
222
+ }
223
+ return extensions;
224
+ });
225
+ }
226
+ reportAndThrowInvalidConentError(file) {
227
+ const error = ( new ExtensionsProfileScanningError(`Invalid extensions content in ${( file.toString())}`, "ERROR_INVALID_CONTENT" ));
228
+ this.telemetryService.publicLogError2('extensionsProfileScanningError', { code: error.code });
229
+ throw error;
230
+ }
231
+ toRelativePath(extensionLocation) {
232
+ return this.uriIdentityService.extUri.isEqual(this.uriIdentityService.extUri.dirname(extensionLocation), this.extensionsLocation)
233
+ ? this.uriIdentityService.extUri.basename(extensionLocation)
234
+ : undefined;
235
+ }
236
+ resolveExtensionLocation(path) {
237
+ return this.uriIdentityService.extUri.joinPath(this.extensionsLocation, path);
238
+ }
239
+ async migrateFromOldDefaultProfileExtensionsLocation() {
240
+ if (!this._migrationPromise) {
241
+ this._migrationPromise = (async () => {
242
+ const oldDefaultProfileExtensionsLocation = this.uriIdentityService.extUri.joinPath(this.userDataProfilesService.defaultProfile.location, 'extensions.json');
243
+ const oldDefaultProfileExtensionsInitLocation = this.uriIdentityService.extUri.joinPath(this.extensionsLocation, '.init-default-profile-extensions');
244
+ let content;
245
+ try {
246
+ content = ( (await this.fileService.readFile(oldDefaultProfileExtensionsLocation)).value.toString());
247
+ }
248
+ catch (error) {
249
+ if (toFileOperationResult(error) === 1 ) {
250
+ return undefined;
251
+ }
252
+ throw error;
253
+ }
254
+ this.logService.info('Migrating extensions from old default profile location', ( oldDefaultProfileExtensionsLocation.toString()));
255
+ let storedProfileExtensions;
256
+ try {
257
+ const parsedData = JSON.parse(content);
258
+ if (Array.isArray(parsedData) && parsedData.every(candidate => isStoredProfileExtension(candidate))) {
259
+ storedProfileExtensions = parsedData;
260
+ }
261
+ else {
262
+ this.logService.warn('Skipping migrating from old default profile locaiton: Found invalid data', parsedData);
263
+ }
264
+ }
265
+ catch (error) {
266
+ this.logService.error(error);
267
+ }
268
+ if (storedProfileExtensions) {
269
+ try {
270
+ await this.fileService.createFile(this.userDataProfilesService.defaultProfile.extensionsResource, VSBuffer.fromString(JSON.stringify(storedProfileExtensions)), { overwrite: false });
271
+ this.logService.info('Migrated extensions from old default profile location to new location', ( oldDefaultProfileExtensionsLocation.toString()), ( this.userDataProfilesService.defaultProfile.extensionsResource.toString()));
272
+ }
273
+ catch (error) {
274
+ if (toFileOperationResult(error) === 3 ) {
275
+ this.logService.info('Migration from old default profile location to new location is done by another window', ( oldDefaultProfileExtensionsLocation.toString()), ( this.userDataProfilesService.defaultProfile.extensionsResource.toString()));
276
+ }
277
+ else {
278
+ throw error;
279
+ }
280
+ }
281
+ }
282
+ try {
283
+ await this.fileService.del(oldDefaultProfileExtensionsLocation);
284
+ }
285
+ catch (error) {
286
+ if (toFileOperationResult(error) !== 1 ) {
287
+ this.logService.error(error);
288
+ }
289
+ }
290
+ try {
291
+ await this.fileService.del(oldDefaultProfileExtensionsInitLocation);
292
+ }
293
+ catch (error) {
294
+ if (toFileOperationResult(error) !== 1 ) {
295
+ this.logService.error(error);
296
+ }
297
+ }
298
+ return storedProfileExtensions;
299
+ })();
300
+ }
301
+ return this._migrationPromise;
302
+ }
303
+ getResourceAccessQueue(file) {
304
+ let resourceQueue = this.resourcesAccessQueueMap.get(file);
305
+ if (!resourceQueue) {
306
+ resourceQueue = ( new Queue());
307
+ this.resourcesAccessQueueMap.set(file, resourceQueue);
308
+ }
309
+ return resourceQueue;
310
+ }
311
+ };
312
+ AbstractExtensionsProfileScannerService = ( __decorate([
313
+ ( __param(1, IFileService)),
314
+ ( __param(2, IUserDataProfilesService)),
315
+ ( __param(3, IUriIdentityService)),
316
+ ( __param(4, ITelemetryService)),
317
+ ( __param(5, ILogService))
318
+ ], AbstractExtensionsProfileScannerService));
319
+ function isStoredProfileExtension(candidate) {
320
+ return isObject(candidate)
321
+ && isIExtensionIdentifier(candidate.identifier)
322
+ && (isUriComponents(candidate.location) || (isString(candidate.location) && candidate.location))
323
+ && (isUndefined(candidate.relativeLocation) || isString(candidate.relativeLocation))
324
+ && candidate.version && isString(candidate.version);
325
+ }
326
+ function isUriComponents(thing) {
327
+ if (!thing) {
328
+ return false;
329
+ }
330
+ return isString(thing.path) &&
331
+ isString(thing.scheme);
332
+ }
333
+ export { AbstractExtensionsProfileScannerService, ExtensionsProfileScanningError, IExtensionsProfileScannerService };