@codingame/monaco-vscode-api 2.0.3 → 2.1.0-update-vscode-1.86.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +3 -19
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  376. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  377. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  386. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  387. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  411. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  412. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  416. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  417. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  418. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  419. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  420. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  422. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  423. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  424. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  432. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  433. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  435. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  436. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  438. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  439. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  440. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  441. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  442. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  443. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  444. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  447. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  449. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  451. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  452. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  453. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  454. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  455. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  457. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  458. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  459. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  460. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  461. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  462. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  463. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  465. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  466. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  469. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  470. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  471. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  472. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  473. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  475. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  476. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  477. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  478. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  479. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  480. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  481. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  484. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  485. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  486. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  487. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  488. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  489. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  490. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  491. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  492. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  493. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  498. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  499. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  500. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  507. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  508. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  509. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  510. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  511. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -27,6 +27,16 @@ const securityConfigurationNodeBase = ( Object.freeze({
27
27
  'type': 'object',
28
28
  'order': 7
29
29
  }));
30
+ const problemsConfigurationNodeBase = ( Object.freeze({
31
+ 'id': 'problems',
32
+ 'title': ( localizeWithPath(
33
+ 'vs/workbench/common/configuration',
34
+ 'problemsConfigurationTitle',
35
+ "Problems"
36
+ )),
37
+ 'type': 'object',
38
+ 'order': 101
39
+ }));
30
40
  const Extensions = {
31
41
  ConfigurationMigration: 'base.contributions.configuration.migration'
32
42
  };
@@ -93,4 +103,4 @@ let DynamicWorkbenchConfigurationWorkbenchContribution = class DynamicWorkbenchC
93
103
  DynamicWorkbenchConfigurationWorkbenchContribution = ( __decorate([
94
104
  ( __param(0, IRemoteAgentService))
95
105
  ], DynamicWorkbenchConfigurationWorkbenchContribution));
96
- export { DynamicWorkbenchConfigurationWorkbenchContribution, Extensions, securityConfigurationNodeBase, workbenchConfigurationNodeBase };
106
+ export { DynamicWorkbenchConfigurationWorkbenchContribution, Extensions, problemsConfigurationNodeBase, securityConfigurationNodeBase, workbenchConfigurationNodeBase };
@@ -43,10 +43,10 @@ const TemporaryWorkspaceContext = ( new RawContextKey('temporaryWorkspace', fals
43
43
  'temporaryWorkspace',
44
44
  "The scheme of the current workspace is from a temporary file system."
45
45
  ))));
46
- const IsFullscreenContext = ( new RawContextKey('isFullscreen', false, ( localizeWithPath(
46
+ const IsMainWindowFullscreenContext = ( new RawContextKey('isFullscreen', false, ( localizeWithPath(
47
47
  'vs/workbench/common/contextkeys',
48
48
  'isFullscreen',
49
- "Whether the window is in fullscreen mode"
49
+ "Whether the main window is in fullscreen mode"
50
50
  ))));
51
51
  const IsAuxiliaryWindowFocusedContext = ( new RawContextKey('isAuxiliaryWindowFocusedContext', false, ( localizeWithPath(
52
52
  'vs/workbench/common/contextkeys',
@@ -89,6 +89,11 @@ const ActiveEditorReadonlyContext = ( new RawContextKey('activeEditorIsReadonly'
89
89
  'activeEditorIsReadonly',
90
90
  "Whether the active editor is read-only"
91
91
  ))));
92
+ const ActiveCompareEditorOriginalWriteableContext = ( new RawContextKey('activeCompareEditorOriginalWritable', false, ( localizeWithPath(
93
+ 'vs/workbench/common/contextkeys',
94
+ 'activeCompareEditorOriginalWritable',
95
+ "Whether the active compare editor has a writable original side"
96
+ ))));
92
97
  const ActiveEditorCanToggleReadonlyContext = ( new RawContextKey('activeEditorCanToggleReadonly', true, ( localizeWithPath(
93
98
  'vs/workbench/common/contextkeys',
94
99
  'activeEditorCanToggleReadonly',
@@ -200,7 +205,6 @@ const EditorTabsVisibleContext = ( new RawContextKey('editorTabsVisible', true,
200
205
  'editorTabsVisible',
201
206
  "Whether editor tabs are visible"
202
207
  ))));
203
- const EditorPinnedAndUnpinnedTabsContext = ( new RawContextKey('editorPinnedAndUnpinnedTabsVisible', false, true));
204
208
  const SideBarVisibleContext = ( new RawContextKey('sideBarVisible', false, ( localizeWithPath(
205
209
  'vs/workbench/common/contextkeys',
206
210
  'sideBarVisible',
@@ -469,4 +473,4 @@ function applyAvailableEditorIds(contextKey, editor, editorResolverService) {
469
473
  contextKey.set(editors.join(','));
470
474
  }
471
475
  }
472
- export { ActiveAuxiliaryContext, ActiveEditorAvailableEditorIdsContext, ActiveEditorCanRevertContext, ActiveEditorCanSplitInGroupContext, ActiveEditorCanToggleReadonlyContext, ActiveEditorContext, ActiveEditorDirtyContext, ActiveEditorFirstInGroupContext, ActiveEditorGroupEmptyContext, ActiveEditorGroupIndexContext, ActiveEditorGroupLastContext, ActiveEditorGroupLockedContext, ActiveEditorLastInGroupContext, ActiveEditorPinnedContext, ActiveEditorReadonlyContext, ActiveEditorStickyContext, ActivePanelContext, ActiveViewletContext, AuxiliaryBarFocusContext, AuxiliaryBarVisibleContext, BannerFocused, DirtyWorkingCopiesContext, EditorGroupEditorsCountContext, EditorPartMaximizedEditorGroupContext, EditorPartMultipleEditorGroupsContext, EditorPinnedAndUnpinnedTabsContext, EditorTabsVisibleContext, EditorsVisibleContext, EmbedderIdentifierContext, EmptyWorkspaceSupportContext, EnterMultiRootWorkspaceSupportContext, FocusedViewContext, HasWebFileSystemAccess, InEditorZenModeContext, IsAuxiliaryEditorPartContext, IsAuxiliaryWindowFocusedContext, IsCenteredLayoutContext, IsFullscreenContext, MainEditorAreaVisibleContext, MultipleEditorGroupsContext, NotificationFocusedContext, NotificationsCenterVisibleContext, NotificationsToastsVisibleContext, OpenFolderWorkspaceSupportContext, PanelAlignmentContext, PanelFocusContext, PanelMaximizedContext, PanelPositionContext, PanelVisibleContext, RemoteNameContext, ResourceContextKey, SideBarVisibleContext, SideBySideEditorActiveContext, SidebarFocusContext, SplitEditorsVertically, StatusBarFocused, TemporaryWorkspaceContext, TextCompareEditorActiveContext, TextCompareEditorVisibleContext, TitleBarStyleContext, TitleBarVisibleContext, VirtualWorkspaceContext, WorkbenchStateContext, WorkspaceFolderCountContext, applyAvailableEditorIds, getVisbileViewContextKey };
476
+ export { ActiveAuxiliaryContext, ActiveCompareEditorOriginalWriteableContext, ActiveEditorAvailableEditorIdsContext, ActiveEditorCanRevertContext, ActiveEditorCanSplitInGroupContext, ActiveEditorCanToggleReadonlyContext, ActiveEditorContext, ActiveEditorDirtyContext, ActiveEditorFirstInGroupContext, ActiveEditorGroupEmptyContext, ActiveEditorGroupIndexContext, ActiveEditorGroupLastContext, ActiveEditorGroupLockedContext, ActiveEditorLastInGroupContext, ActiveEditorPinnedContext, ActiveEditorReadonlyContext, ActiveEditorStickyContext, ActivePanelContext, ActiveViewletContext, AuxiliaryBarFocusContext, AuxiliaryBarVisibleContext, BannerFocused, DirtyWorkingCopiesContext, EditorGroupEditorsCountContext, EditorPartMaximizedEditorGroupContext, EditorPartMultipleEditorGroupsContext, EditorTabsVisibleContext, EditorsVisibleContext, EmbedderIdentifierContext, EmptyWorkspaceSupportContext, EnterMultiRootWorkspaceSupportContext, FocusedViewContext, HasWebFileSystemAccess, InEditorZenModeContext, IsAuxiliaryEditorPartContext, IsAuxiliaryWindowFocusedContext, IsCenteredLayoutContext, IsMainWindowFullscreenContext, MainEditorAreaVisibleContext, MultipleEditorGroupsContext, NotificationFocusedContext, NotificationsCenterVisibleContext, NotificationsToastsVisibleContext, OpenFolderWorkspaceSupportContext, PanelAlignmentContext, PanelFocusContext, PanelMaximizedContext, PanelPositionContext, PanelVisibleContext, RemoteNameContext, ResourceContextKey, SideBarVisibleContext, SideBySideEditorActiveContext, SidebarFocusContext, SplitEditorsVertically, StatusBarFocused, TemporaryWorkspaceContext, TextCompareEditorActiveContext, TextCompareEditorVisibleContext, TitleBarStyleContext, TitleBarVisibleContext, VirtualWorkspaceContext, WorkbenchStateContext, WorkspaceFolderCountContext, applyAvailableEditorIds, getVisbileViewContextKey };
@@ -5,6 +5,7 @@ import { IEditorIdentifier, AbstractEditorInput, EditorInputCapabilities, Verbos
5
5
  import { ConfirmResult } from '../../../platform/dialogs/common/dialogs.js';
6
6
  import { IMarkdownString } from '../../../base/common/htmlContent.js';
7
7
  import { IDisposable } from '../../../base/common/lifecycle.js';
8
+ import { ThemeIcon } from '../../../base/common/themables.js';
8
9
 
9
10
  interface IEditorCloseHandler {
10
11
  /**
@@ -112,6 +113,11 @@ declare abstract class EditorInput extends AbstractEditorInput {
112
113
  * Returns the aria label to be read out by a screen reader.
113
114
  */
114
115
  getAriaLabel(): string;
116
+ /**
117
+ * Returns the icon which represents this editor input.
118
+ * If undefined, the default icon will be used.
119
+ */
120
+ getIcon(): ThemeIcon | undefined;
115
121
  /**
116
122
  * Returns a descriptor suitable for telemetry events.
117
123
  *
@@ -44,6 +44,9 @@ class EditorInput extends AbstractEditorInput {
44
44
  getAriaLabel() {
45
45
  return this.getTitle(0 );
46
46
  }
47
+ getIcon() {
48
+ return undefined;
49
+ }
47
50
  getTelemetryDescriptor() {
48
51
  return { typeId: this.typeId };
49
52
  }
@@ -0,0 +1,107 @@
1
+ import { Emitter } from '../../../base/common/event.js';
2
+ import { Disposable } from '../../../base/common/lifecycle.js';
3
+ class FilteredEditorGroupModel extends Disposable {
4
+ constructor(model) {
5
+ super();
6
+ this.model = model;
7
+ this._onDidModelChange = this._register(( new Emitter()));
8
+ this.onDidModelChange = this._onDidModelChange.event;
9
+ this._register(this.model.onDidModelChange(e => {
10
+ const candidateOrIndex = e.editorIndex ?? e.editor;
11
+ if (candidateOrIndex !== undefined) {
12
+ if (!this.filter(candidateOrIndex)) {
13
+ return;
14
+ }
15
+ }
16
+ this._onDidModelChange.fire(e);
17
+ }));
18
+ }
19
+ get id() { return this.model.id; }
20
+ get isLocked() { return this.model.isLocked; }
21
+ get stickyCount() { return this.model.stickyCount; }
22
+ get activeEditor() { return this.model.activeEditor && this.filter(this.model.activeEditor) ? this.model.activeEditor : null; }
23
+ get previewEditor() { return this.model.previewEditor && this.filter(this.model.previewEditor) ? this.model.previewEditor : null; }
24
+ isPinned(editorOrIndex) { return this.model.isPinned(editorOrIndex); }
25
+ isSticky(editorOrIndex) { return this.model.isSticky(editorOrIndex); }
26
+ isActive(editor) { return this.model.isActive(editor); }
27
+ isFirst(editor) {
28
+ return this.model.isFirst(editor, this.getEditors(1 ));
29
+ }
30
+ isLast(editor) {
31
+ return this.model.isLast(editor, this.getEditors(1 ));
32
+ }
33
+ getEditors(order, options) {
34
+ const editors = this.model.getEditors(order, options);
35
+ return editors.filter(e => this.filter(e));
36
+ }
37
+ findEditor(candidate, options) {
38
+ const result = this.model.findEditor(candidate, options);
39
+ if (!result) {
40
+ return undefined;
41
+ }
42
+ return this.filter(result[1]) ? result : undefined;
43
+ }
44
+ }
45
+ class StickyEditorGroupModel extends FilteredEditorGroupModel {
46
+ get count() { return this.model.stickyCount; }
47
+ getEditors(order, options) {
48
+ if (options?.excludeSticky) {
49
+ return [];
50
+ }
51
+ if (order === 1 ) {
52
+ return this.model.getEditors(1 ).slice(0, this.model.stickyCount);
53
+ }
54
+ return super.getEditors(order, options);
55
+ }
56
+ isSticky(editorOrIndex) {
57
+ return true;
58
+ }
59
+ getEditorByIndex(index) {
60
+ return index < this.count ? this.model.getEditorByIndex(index) : undefined;
61
+ }
62
+ indexOf(editor, editors, options) {
63
+ const editorIndex = this.model.indexOf(editor, editors, options);
64
+ if (editorIndex < 0 || editorIndex >= this.model.stickyCount) {
65
+ return -1;
66
+ }
67
+ return editorIndex;
68
+ }
69
+ contains(candidate, options) {
70
+ const editorIndex = this.model.indexOf(candidate, undefined, options);
71
+ return editorIndex >= 0 && editorIndex < this.model.stickyCount;
72
+ }
73
+ filter(candidateOrIndex) {
74
+ return this.model.isSticky(candidateOrIndex);
75
+ }
76
+ }
77
+ class UnstickyEditorGroupModel extends FilteredEditorGroupModel {
78
+ get count() { return this.model.count - this.model.stickyCount; }
79
+ get stickyCount() { return 0; }
80
+ isSticky(editorOrIndex) {
81
+ return false;
82
+ }
83
+ getEditors(order, options) {
84
+ if (order === 1 ) {
85
+ return this.model.getEditors(1 ).slice(this.model.stickyCount);
86
+ }
87
+ return super.getEditors(order, options);
88
+ }
89
+ getEditorByIndex(index) {
90
+ return index >= 0 ? this.model.getEditorByIndex(index + this.model.stickyCount) : undefined;
91
+ }
92
+ indexOf(editor, editors, options) {
93
+ const editorIndex = this.model.indexOf(editor, editors, options);
94
+ if (editorIndex < this.model.stickyCount || editorIndex >= this.model.count) {
95
+ return -1;
96
+ }
97
+ return editorIndex - this.model.stickyCount;
98
+ }
99
+ contains(candidate, options) {
100
+ const editorIndex = this.model.indexOf(candidate, undefined, options);
101
+ return editorIndex >= this.model.stickyCount && editorIndex < this.model.count;
102
+ }
103
+ filter(candidateOrIndex) {
104
+ return !this.model.isSticky(candidateOrIndex);
105
+ }
106
+ }
107
+ export { StickyEditorGroupModel, UnstickyEditorGroupModel };
@@ -1,10 +1,11 @@
1
- import { EditorInputWithPreferredResource, EditorInputCapabilities, Verbosity } from '../editor.js';
1
+ import { EditorInputWithPreferredResource, EditorInputCapabilities, Verbosity, IFileLimitedEditorInputOptions } from '../editor.js';
2
2
  import { EditorInput } from './editorInput.js';
3
3
  import { URI } from '../../../base/common/uri.js';
4
- import { IFileService } from '../../../platform/files/common/files.js';
4
+ import { IFileService, IFileReadLimits } from '../../../platform/files/common/files.js';
5
5
  import { ILabelService } from '../../../platform/label/common/label.js';
6
6
  import { IFilesConfigurationService } from '../../services/filesConfiguration/common/filesConfigurationService.js';
7
7
  import { IMarkdownString } from '../../../base/common/htmlContent.js';
8
+ import { ITextResourceConfigurationService } from '../../../editor/common/services/textResourceConfiguration.js';
8
9
 
9
10
  /**
10
11
  * The base class for all editor inputs that open resources.
@@ -14,10 +15,11 @@ declare abstract class AbstractResourceEditorInput extends EditorInput implement
14
15
  protected readonly labelService: ILabelService;
15
16
  protected readonly fileService: IFileService;
16
17
  protected readonly filesConfigurationService: IFilesConfigurationService;
18
+ protected readonly textResourceConfigurationService: ITextResourceConfigurationService;
17
19
  get capabilities(): EditorInputCapabilities;
18
20
  private _preferredResource;
19
21
  get preferredResource(): URI;
20
- constructor(resource: URI, preferredResource: URI | undefined, labelService: ILabelService, fileService: IFileService, filesConfigurationService: IFilesConfigurationService);
22
+ constructor(resource: URI, preferredResource: URI | undefined, labelService: ILabelService, fileService: IFileService, filesConfigurationService: IFilesConfigurationService, textResourceConfigurationService: ITextResourceConfigurationService);
21
23
  private registerListeners;
22
24
  private onLabelEvent;
23
25
  private updateLabel;
@@ -39,6 +41,7 @@ declare abstract class AbstractResourceEditorInput extends EditorInput implement
39
41
  private get longTitle();
40
42
  getTitle(verbosity?: Verbosity): string;
41
43
  isReadonly(): boolean | IMarkdownString;
44
+ protected ensureLimits(options?: IFileLimitedEditorInputOptions): IFileReadLimits | undefined;
42
45
  }
43
46
 
44
47
  export { AbstractResourceEditorInput };
@@ -1,9 +1,11 @@
1
1
  import { __decorate, __param } from '../../../../../../external/tslib/tslib.es6.js';
2
2
  import { EditorInput } from './editorInput.js';
3
- import { IFileService } from '../../../platform/files/common/files.js';
3
+ import { getLargeFileConfirmationLimit, ByteSize, IFileService } from '../../../platform/files/common/files.js';
4
4
  import { ILabelService } from '../../../platform/label/common/label.js';
5
5
  import { isEqual, dirname } from '../../../base/common/resources.js';
6
6
  import { IFilesConfigurationService } from '../../services/filesConfiguration/common/filesConfigurationService.js';
7
+ import { isConfigured } from '../../../platform/configuration/common/configuration.js';
8
+ import { ITextResourceConfigurationService } from '../../../editor/common/services/textResourceConfiguration.js';
7
9
  let AbstractResourceEditorInput = class AbstractResourceEditorInput extends EditorInput {
8
10
  get capabilities() {
9
11
  let capabilities = 32 ;
@@ -21,12 +23,13 @@ let AbstractResourceEditorInput = class AbstractResourceEditorInput extends Edit
21
23
  return capabilities;
22
24
  }
23
25
  get preferredResource() { return this._preferredResource; }
24
- constructor(resource, preferredResource, labelService, fileService, filesConfigurationService) {
26
+ constructor(resource, preferredResource, labelService, fileService, filesConfigurationService, textResourceConfigurationService) {
25
27
  super();
26
28
  this.resource = resource;
27
29
  this.labelService = labelService;
28
30
  this.fileService = fileService;
29
31
  this.filesConfigurationService = filesConfigurationService;
32
+ this.textResourceConfigurationService = textResourceConfigurationService;
30
33
  this._name = undefined;
31
34
  this._shortDescription = undefined;
32
35
  this._mediumDescription = undefined;
@@ -130,10 +133,25 @@ let AbstractResourceEditorInput = class AbstractResourceEditorInput extends Edit
130
133
  isReadonly() {
131
134
  return this.filesConfigurationService.isReadonly(this.resource);
132
135
  }
136
+ ensureLimits(options) {
137
+ if (options?.limits) {
138
+ return options.limits;
139
+ }
140
+ const defaultSizeLimit = getLargeFileConfirmationLimit(this.resource);
141
+ let configuredSizeLimit = undefined;
142
+ const configuredSizeLimitMb = this.textResourceConfigurationService.inspect(this.resource, null, 'workbench.editorLargeFileConfirmation');
143
+ if (isConfigured(configuredSizeLimitMb)) {
144
+ configuredSizeLimit = configuredSizeLimitMb.value * ByteSize.MB;
145
+ }
146
+ return {
147
+ size: configuredSizeLimit ?? defaultSizeLimit
148
+ };
149
+ }
133
150
  };
134
151
  AbstractResourceEditorInput = ( __decorate([
135
152
  ( __param(2, ILabelService)),
136
153
  ( __param(3, IFileService)),
137
- ( __param(4, IFilesConfigurationService))
154
+ ( __param(4, IFilesConfigurationService)),
155
+ ( __param(5, ITextResourceConfigurationService))
138
156
  ], AbstractResourceEditorInput));
139
157
  export { AbstractResourceEditorInput };
@@ -7,6 +7,7 @@ import { IFileService } from '../../../platform/files/common/files.js';
7
7
  import { ILabelService } from '../../../platform/label/common/label.js';
8
8
  import '../../../editor/editor.api.js';
9
9
  import { IFilesConfigurationService } from '../../services/filesConfiguration/common/filesConfigurationService.js';
10
+ import { ITextResourceConfigurationService } from '../../../editor/common/services/textResourceConfiguration.js';
10
11
 
11
12
  /**
12
13
  * The base class for all editor inputs that open in text editors.
@@ -14,7 +15,7 @@ import { IFilesConfigurationService } from '../../services/filesConfiguration/co
14
15
  declare abstract class AbstractTextResourceEditorInput extends AbstractResourceEditorInput {
15
16
  protected readonly editorService: IEditorService;
16
17
  protected readonly textFileService: ITextFileService;
17
- constructor(resource: URI, preferredResource: URI | undefined, editorService: IEditorService, textFileService: ITextFileService, labelService: ILabelService, fileService: IFileService, filesConfigurationService: IFilesConfigurationService);
18
+ constructor(resource: URI, preferredResource: URI | undefined, editorService: IEditorService, textFileService: ITextFileService, labelService: ILabelService, fileService: IFileService, filesConfigurationService: IFilesConfigurationService, textResourceConfigurationService: ITextResourceConfigurationService);
18
19
  save(group: GroupIdentifier, options?: ITextFileSaveOptions): Promise<IUntypedEditorInput | undefined>;
19
20
  saveAs(group: GroupIdentifier, options?: ITextFileSaveOptions): Promise<IUntypedEditorInput | undefined>;
20
21
  private doSave;
@@ -11,10 +11,11 @@ import { ITextModelService } from '../../../editor/common/services/resolverServi
11
11
  import { TextResourceEditorModel } from './textResourceEditorModel.js';
12
12
  import { createTextBufferFactory } from '../../../editor/common/model/textModel.js';
13
13
  import { IFilesConfigurationService } from '../../services/filesConfiguration/common/filesConfigurationService.js';
14
+ import { ITextResourceConfigurationService } from '../../../editor/common/services/textResourceConfiguration.js';
14
15
  var TextResourceEditorInput_1;
15
16
  let AbstractTextResourceEditorInput = class AbstractTextResourceEditorInput extends AbstractResourceEditorInput {
16
- constructor(resource, preferredResource, editorService, textFileService, labelService, fileService, filesConfigurationService) {
17
- super(resource, preferredResource, labelService, fileService, filesConfigurationService);
17
+ constructor(resource, preferredResource, editorService, textFileService, labelService, fileService, filesConfigurationService, textResourceConfigurationService) {
18
+ super(resource, preferredResource, labelService, fileService, filesConfigurationService, textResourceConfigurationService);
18
19
  this.editorService = editorService;
19
20
  this.textFileService = textFileService;
20
21
  }
@@ -49,7 +50,8 @@ AbstractTextResourceEditorInput = ( __decorate([
49
50
  ( __param(3, ITextFileService)),
50
51
  ( __param(4, ILabelService)),
51
52
  ( __param(5, IFileService)),
52
- ( __param(6, IFilesConfigurationService))
53
+ ( __param(6, IFilesConfigurationService)),
54
+ ( __param(7, ITextResourceConfigurationService))
53
55
  ], AbstractTextResourceEditorInput));
54
56
  let TextResourceEditorInput = class TextResourceEditorInput extends AbstractTextResourceEditorInput {
55
57
  static { TextResourceEditorInput_1 = this; }
@@ -60,8 +62,8 @@ let TextResourceEditorInput = class TextResourceEditorInput extends AbstractText
60
62
  get editorId() {
61
63
  return DEFAULT_EDITOR_ASSOCIATION.id;
62
64
  }
63
- constructor(resource, name, description, preferredLanguageId, preferredContents, textModelService, textFileService, editorService, fileService, labelService, filesConfigurationService) {
64
- super(resource, undefined, editorService, textFileService, labelService, fileService, filesConfigurationService);
65
+ constructor(resource, name, description, preferredLanguageId, preferredContents, textModelService, textFileService, editorService, fileService, labelService, filesConfigurationService, textResourceConfigurationService) {
66
+ super(resource, undefined, editorService, textFileService, labelService, fileService, filesConfigurationService, textResourceConfigurationService);
65
67
  this.name = name;
66
68
  this.description = description;
67
69
  this.preferredLanguageId = preferredLanguageId;
@@ -146,6 +148,7 @@ TextResourceEditorInput = TextResourceEditorInput_1 = ( __decorate([
146
148
  ( __param(7, IEditorService)),
147
149
  ( __param(8, IFileService)),
148
150
  ( __param(9, ILabelService)),
149
- ( __param(10, IFilesConfigurationService))
151
+ ( __param(10, IFilesConfigurationService)),
152
+ ( __param(11, ITextResourceConfigurationService))
150
153
  ], TextResourceEditorInput));
151
154
  export { AbstractTextResourceEditorInput, TextResourceEditorInput };
@@ -10,6 +10,7 @@ import { IContextKeyService } from '../../platform/contextkey/common/contextkey.
10
10
  import { IEncodingSupport, ILanguageSupport } from '../services/textfile/common/textfiles.js';
11
11
  import { IEditorGroup } from '../services/editor/common/editorGroupsService.js';
12
12
  import { IComposite, ICompositeControl } from './composite.js';
13
+ import { IFileReadLimits } from '../../platform/files/common/files.js';
13
14
  import { IExtUri } from '../../base/common/resources.js';
14
15
  import { IAction } from '../../base/common/actions.js';
15
16
  import '../../editor/editor.api.js';
@@ -309,12 +310,16 @@ interface IResourceDiffEditorInput extends IBaseUntypedEditorInput {
309
310
  * highlighting the differences.
310
311
  */
311
312
  interface IResourceMultiDiffEditorInput extends IBaseUntypedEditorInput {
313
+ /**
314
+ * A unique identifier of this multi diff editor input.
315
+ * If a second multi diff editor with the same uri is opened, the existing one is revealed instead (even if the resources list is different!).
316
+ */
317
+ readonly multiDiffSource?: URI;
312
318
  /**
313
319
  * The list of resources to compare.
320
+ * If not set, the resources are dynamically derived from the {@link multiDiffSource}.
314
321
  */
315
- readonly resources: (IResourceDiffEditorInput & {
316
- readonly resource: URI;
317
- })[];
322
+ readonly resources?: IResourceDiffEditorInput[];
318
323
  }
319
324
  type IResourceMergeEditorInputSide = (IResourceEditorInput | ITextResourceEditorInput) & {
320
325
  detail?: string;
@@ -549,6 +554,13 @@ interface IFileEditorInput extends EditorInput, IEncodingSupport, ILanguageSuppo
549
554
  */
550
555
  isResolved(): boolean;
551
556
  }
557
+ interface IFileLimitedEditorInputOptions extends IEditorOptions {
558
+ /**
559
+ * If provided, the size of the file will be checked against the limits
560
+ * and an error will be thrown if any limit is exceeded.
561
+ */
562
+ readonly limits?: IFileReadLimits;
563
+ }
552
564
  interface EditorInputWithOptions {
553
565
  editor: EditorInput;
554
566
  options?: IEditorOptions;
@@ -758,4 +770,4 @@ interface IToolbarActions {
758
770
  readonly secondary: IAction[];
759
771
  }
760
772
 
761
- export { AbstractEditorInput, CloseDirection, EditorCloseContext, EditorInputCapabilities, type EditorInputWithOptions, type EditorInputWithOptionsAndGroup, type EditorInputWithPreferredResource, EditorPaneSelectionChangeReason, EditorPaneSelectionCompareResult, EditorsOrder, type GroupIdentifier, GroupModelChangeKind, type IActiveEditorChangeEvent, type IEditorCloseEvent, type IEditorControl, type IEditorDescriptor, type IEditorIdentifier, type IEditorMemento, type IEditorOpenContext, type IEditorPane, type IEditorPaneSelection, type IEditorPaneSelectionChangeEvent, type IEditorPartOptions, type IEditorPartOptionsChangeEvent, type IEditorSerializer, type IEditorWillMoveEvent, type IEditorWillOpenEvent, type IFileEditorInput, type IFindEditorOptions, type IMatchEditorOptions, type IMoveResult, type IResourceDiffEditorInput, type IResourceMergeEditorInput, type IResourceMergeEditorInputSide, type IResourceMultiDiffEditorInput, type IResourceSideBySideEditorInput, type IRevertOptions, type ISaveOptions, type ITextDiffEditorPane, type IToolbarActions, type IUntitledTextResourceEditorInput, type IUntypedEditorInput, type IUntypedFileEditorInput, type IVisibleEditorPane, type PreventPinnedEditorClose, SaveReason, type SaveSource, SideBySideEditor, Verbosity };
773
+ export { AbstractEditorInput, CloseDirection, EditorCloseContext, EditorInputCapabilities, type EditorInputWithOptions, type EditorInputWithOptionsAndGroup, type EditorInputWithPreferredResource, EditorPaneSelectionChangeReason, EditorPaneSelectionCompareResult, EditorsOrder, type GroupIdentifier, GroupModelChangeKind, type IActiveEditorChangeEvent, type IEditorCloseEvent, type IEditorControl, type IEditorDescriptor, type IEditorIdentifier, type IEditorMemento, type IEditorOpenContext, type IEditorPane, type IEditorPaneSelection, type IEditorPaneSelectionChangeEvent, type IEditorPartOptions, type IEditorPartOptionsChangeEvent, type IEditorSerializer, type IEditorWillMoveEvent, type IEditorWillOpenEvent, type IFileEditorInput, type IFileLimitedEditorInputOptions, type IFindEditorOptions, type IMatchEditorOptions, type IMoveResult, type IResourceDiffEditorInput, type IResourceMergeEditorInput, type IResourceMergeEditorInputSide, type IResourceMultiDiffEditorInput, type IResourceSideBySideEditorInput, type IRevertOptions, type ISaveOptions, type ITextDiffEditorPane, type IToolbarActions, type IUntitledTextResourceEditorInput, type IUntypedEditorInput, type IUntypedFileEditorInput, type IVisibleEditorPane, type PreventPinnedEditorClose, SaveReason, type SaveSource, SideBySideEditor, Verbosity };
@@ -56,7 +56,13 @@ function isResourceDiffListEditorInput(editor) {
56
56
  return false;
57
57
  }
58
58
  const candidate = editor;
59
- return Array.isArray(candidate?.resources);
59
+ if (!candidate) {
60
+ return false;
61
+ }
62
+ if (candidate.resources && !Array.isArray(candidate.resources)) {
63
+ return false;
64
+ }
65
+ return !!candidate.resources || !!candidate.multiDiffSource;
60
66
  }
61
67
  function isResourceSideBySideEditorInput(editor) {
62
68
  if (isEditorInput(editor)) {
@@ -37,11 +37,29 @@ class Memento {
37
37
  }
38
38
  }
39
39
  }
40
+ onDidChangeValue(scope, disposables) {
41
+ return this.storageService.onDidChangeValue(scope, this.id, disposables);
42
+ }
40
43
  saveMemento() {
41
44
  Memento.workspaceMementos.get(this.id)?.save();
42
45
  Memento.profileMementos.get(this.id)?.save();
43
46
  Memento.applicationMementos.get(this.id)?.save();
44
47
  }
48
+ reloadMemento(scope) {
49
+ let memento;
50
+ switch (scope) {
51
+ case -1 :
52
+ memento = Memento.applicationMementos.get(this.id);
53
+ break;
54
+ case 0 :
55
+ memento = Memento.profileMementos.get(this.id);
56
+ break;
57
+ case 1 :
58
+ memento = Memento.workspaceMementos.get(this.id);
59
+ break;
60
+ }
61
+ memento?.reload();
62
+ }
45
63
  static clear(scope) {
46
64
  switch (scope) {
47
65
  case 1 :
@@ -62,26 +80,29 @@ class ScopedMemento {
62
80
  this.scope = scope;
63
81
  this.target = target;
64
82
  this.storageService = storageService;
65
- this.mementoObj = this.load();
83
+ this.mementoObj = this.doLoad();
84
+ }
85
+ doLoad() {
86
+ try {
87
+ return this.storageService.getObject(this.id, this.scope, {});
88
+ }
89
+ catch (error) {
90
+ onUnexpectedError(`[memento]: failed to parse contents: ${error} (id: ${this.id}, scope: ${this.scope}, contents: ${this.storageService.get(this.id, this.scope)})`);
91
+ }
92
+ return {};
66
93
  }
67
94
  getMemento() {
68
95
  return this.mementoObj;
69
96
  }
70
- load() {
71
- const memento = this.storageService.get(this.id, this.scope);
72
- if (memento) {
73
- try {
74
- return JSON.parse(memento);
75
- }
76
- catch (error) {
77
- onUnexpectedError(`[memento]: failed to parse contents: ${error} (id: ${this.id}, scope: ${this.scope}, contents: ${memento})`);
78
- }
97
+ reload() {
98
+ for (const name of Object.getOwnPropertyNames(this.mementoObj)) {
99
+ delete this.mementoObj[name];
79
100
  }
80
- return {};
101
+ Object.assign(this.mementoObj, this.doLoad());
81
102
  }
82
103
  save() {
83
104
  if (!isEmptyObject(this.mementoObj)) {
84
- this.storageService.store(this.id, JSON.stringify(this.mementoObj), this.scope, this.target);
105
+ this.storageService.store(this.id, this.mementoObj, this.scope, this.target);
85
106
  }
86
107
  else {
87
108
  this.storageService.remove(this.id, this.scope);
@@ -1,4 +1,4 @@
1
- import { NotificationsFilter, NoOpNotification, Severity, NotificationPriority } from '../../platform/notification/common/notification.js';
1
+ import { NotificationsFilter, NoOpNotification, NotificationPriority, Severity, isNotificationSource } from '../../platform/notification/common/notification.js';
2
2
  import { toErrorMessage, isErrorWithActions } from '../../base/common/errorMessage.js';
3
3
  import { Emitter, Event } from '../../base/common/event.js';
4
4
  import { Disposable, toDisposable } from '../../base/common/lifecycle.js';
@@ -6,6 +6,7 @@ import { isCancellationError } from '../../base/common/errors.js';
6
6
  import { Action } from '../../base/common/actions.js';
7
7
  import { equals } from '../../base/common/arrays.js';
8
8
  import { parseLinkedText } from '../../base/common/linkedText.js';
9
+ import { mapsStrictEqualIgnoreOrder } from '../../base/common/map.js';
9
10
  class NotificationHandle extends Disposable {
10
11
  constructor(item, onClose) {
11
12
  super();
@@ -51,14 +52,31 @@ class NotificationsModel extends Disposable {
51
52
  this._onDidChangeFilter = this._register(( new Emitter()));
52
53
  this.onDidChangeFilter = this._onDidChangeFilter.event;
53
54
  this._notifications = [];
54
- this.filter = NotificationsFilter.OFF;
55
+ this.filter = {
56
+ global: NotificationsFilter.OFF,
57
+ sources: ( new Map())
58
+ };
55
59
  }
56
60
  static { this.NO_OP_NOTIFICATION = ( new NoOpNotification()); }
57
61
  get notifications() { return this._notifications; }
58
62
  get statusMessage() { return this._statusMessage; }
59
63
  setFilter(filter) {
60
- this.filter = filter;
61
- this._onDidChangeFilter.fire(filter);
64
+ let globalChanged = false;
65
+ if (typeof filter.global === 'number') {
66
+ globalChanged = this.filter.global !== filter.global;
67
+ this.filter.global = filter.global;
68
+ }
69
+ let sourcesChanged = false;
70
+ if (filter.sources) {
71
+ sourcesChanged = !mapsStrictEqualIgnoreOrder(this.filter.sources, filter.sources);
72
+ this.filter.sources = filter.sources;
73
+ }
74
+ if (globalChanged || sourcesChanged) {
75
+ this._onDidChangeFilter.fire({
76
+ global: globalChanged ? filter.global : undefined,
77
+ sources: sourcesChanged ? filter.sources : undefined
78
+ });
79
+ }
62
80
  }
63
81
  addNotification(notification) {
64
82
  const item = this.createViewItem(notification);
@@ -178,7 +196,7 @@ class NotificationViewItemProgress extends Disposable {
178
196
  }
179
197
  class NotificationViewItem extends Disposable {
180
198
  static { this.MAX_MESSAGE_LENGTH = 1000; }
181
- static create(notification, filter = NotificationsFilter.OFF) {
199
+ static create(notification, filter) {
182
200
  if (!notification || !notification.message || isCancellationError(notification.message)) {
183
201
  return undefined;
184
202
  }
@@ -201,8 +219,13 @@ class NotificationViewItem extends Disposable {
201
219
  actions = { primary: notification.message.actions };
202
220
  }
203
221
  let priority = notification.priority ?? NotificationPriority.DEFAULT;
204
- if (priority === NotificationPriority.DEFAULT && (filter === NotificationsFilter.SILENT || (filter === NotificationsFilter.ERROR && notification.severity !== Severity.Error))) {
205
- priority = NotificationPriority.SILENT;
222
+ if (priority === NotificationPriority.DEFAULT && severity !== Severity.Error) {
223
+ if (filter.global === NotificationsFilter.ERROR) {
224
+ priority = NotificationPriority.SILENT;
225
+ }
226
+ else if (isNotificationSource(notification.source) && filter.sources.get(notification.source.id) === NotificationsFilter.ERROR) {
227
+ priority = NotificationPriority.SILENT;
228
+ }
206
229
  }
207
230
  return ( new NotificationViewItem(
208
231
  notification.id,