@codingame/monaco-vscode-api 4.5.0 → 4.5.2

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 (755) hide show
  1. package/editor.api.d.ts +8 -0
  2. package/extensions.js +10 -2
  3. package/localExtensionHost.d.ts +41 -0
  4. package/package.json +10 -8
  5. package/service-override/accessibility.d.ts +5 -0
  6. package/service-override/ai.d.ts +5 -0
  7. package/service-override/authentication.d.ts +5 -0
  8. package/service-override/base.d.ts +5 -0
  9. package/service-override/bulkEdit.d.ts +5 -0
  10. package/service-override/chat.d.ts +5 -0
  11. package/service-override/comments.d.ts +5 -0
  12. package/service-override/configuration.d.ts +31 -0
  13. package/service-override/debug.d.ts +5 -0
  14. package/service-override/dialogs.d.ts +12 -0
  15. package/service-override/editSessions.d.ts +5 -0
  16. package/service-override/editor.d.ts +10 -0
  17. package/service-override/emmet.d.ts +5 -0
  18. package/service-override/environment.d.ts +10 -0
  19. package/service-override/explorer.d.ts +5 -0
  20. package/service-override/extensionGallery.d.ts +12 -0
  21. package/service-override/extensions.d.ts +43 -0
  22. package/service-override/files.d.ts +164 -0
  23. package/service-override/host.d.ts +5 -0
  24. package/service-override/interactive.d.ts +5 -0
  25. package/service-override/issue.d.ts +5 -0
  26. package/service-override/keybindings.d.ts +21 -0
  27. package/service-override/languageDetectionWorker.d.ts +5 -0
  28. package/service-override/languages.d.ts +6 -0
  29. package/service-override/layout.d.ts +128 -0
  30. package/service-override/lifecycle.d.ts +5 -0
  31. package/service-override/localization.d.ts +14 -0
  32. package/service-override/log.d.ts +14 -0
  33. package/service-override/markers.d.ts +5 -0
  34. package/service-override/model.d.ts +5 -0
  35. package/service-override/monarch.d.ts +5 -0
  36. package/service-override/multiDiffEditor.d.ts +5 -0
  37. package/service-override/notebook.d.ts +5 -0
  38. package/service-override/notifications.d.ts +5 -0
  39. package/service-override/outline.d.ts +5 -0
  40. package/service-override/output.d.ts +10 -0
  41. package/service-override/performance.d.ts +5 -0
  42. package/service-override/preferences.d.ts +5 -0
  43. package/service-override/quickaccess.d.ts +11 -0
  44. package/service-override/relauncher.d.ts +5 -0
  45. package/service-override/remoteAgent.d.ts +12 -0
  46. package/service-override/scm.d.ts +5 -0
  47. package/service-override/search.d.ts +12 -0
  48. package/service-override/secretStorage.d.ts +5 -0
  49. package/service-override/share.d.ts +5 -0
  50. package/service-override/snippets.d.ts +9 -0
  51. package/service-override/speech.d.ts +5 -0
  52. package/service-override/storage.d.ts +66 -0
  53. package/service-override/survey.d.ts +5 -0
  54. package/service-override/task.d.ts +5 -0
  55. package/service-override/terminal.d.ts +71 -0
  56. package/service-override/testing.d.ts +5 -0
  57. package/service-override/textmate.d.ts +6 -0
  58. package/service-override/theme.d.ts +7 -0
  59. package/service-override/timeline.d.ts +5 -0
  60. package/service-override/update.d.ts +5 -0
  61. package/service-override/userDataSync.d.ts +5 -0
  62. package/service-override/viewBanner.d.ts +6 -0
  63. package/service-override/viewCommon.d.ts +6 -0
  64. package/service-override/viewStatusBar.d.ts +6 -0
  65. package/service-override/viewTitleBar.d.ts +5 -0
  66. package/service-override/views.d.ts +47 -0
  67. package/service-override/walkthrough.d.ts +5 -0
  68. package/service-override/welcome.d.ts +5 -0
  69. package/service-override/workbench.d.ts +18 -0
  70. package/service-override/workingCopy.d.ts +5 -0
  71. package/service-override/workspaceTrust.d.ts +5 -0
  72. package/services.js +1 -0
  73. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +4 -2
  74. package/vscode/src/vs/base/browser/dom.js +3 -3
  75. package/vscode/src/vs/base/browser/iframe.js +3 -1
  76. package/vscode/src/vs/base/browser/indexedDB.d.ts +17 -0
  77. package/vscode/src/vs/base/browser/indexedDB.js +2 -2
  78. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +4 -9
  79. package/vscode/src/vs/base/browser/ui/button/button.js +16 -19
  80. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +168 -165
  81. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +5 -8
  82. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +19 -18
  83. package/vscode/src/vs/base/browser/ui/findinput/findInputToggles.js +4 -15
  84. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +13 -16
  85. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +10 -12
  86. package/vscode/src/vs/base/browser/ui/hover/updatableHoverWidget.js +13 -14
  87. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +19 -39
  88. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +3 -2
  89. package/vscode/src/vs/base/browser/ui/list/listView.js +6 -6
  90. package/vscode/src/vs/base/browser/ui/list/listWidget.js +7 -7
  91. package/vscode/src/vs/base/browser/ui/list/rowCache.js +2 -2
  92. package/vscode/src/vs/base/browser/ui/menu/menubar.js +24 -23
  93. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +1 -1
  94. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +12 -15
  95. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +25 -25
  96. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +10 -10
  97. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  98. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +62 -0
  99. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +11 -10
  100. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +177 -152
  101. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +7 -7
  102. package/vscode/src/vs/base/browser/ui/tree/compressedObjectTreeModel.js +2 -2
  103. package/vscode/src/vs/base/browser/ui/tree/dataTree.js +2 -2
  104. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +6 -6
  105. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +1 -1
  106. package/vscode/src/vs/base/browser/ui/tree/objectTreeModel.js +4 -4
  107. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +2 -1
  108. package/vscode/src/vs/base/common/actions.js +6 -5
  109. package/vscode/src/vs/base/common/arrays.js +2 -2
  110. package/vscode/src/vs/base/common/arraysFind.js +3 -1
  111. package/vscode/src/vs/base/common/assert.js +2 -2
  112. package/vscode/src/vs/base/common/async.js +3 -3
  113. package/vscode/src/vs/base/common/buffer.js +2 -2
  114. package/vscode/src/vs/base/common/codiconsUtil.js +1 -1
  115. package/vscode/src/vs/base/common/color.js +2 -2
  116. package/vscode/src/vs/base/common/date.js +70 -284
  117. package/vscode/src/vs/base/common/decorators.js +2 -2
  118. package/vscode/src/vs/base/common/diff/diff.js +1 -1
  119. package/vscode/src/vs/base/common/errorMessage.js +12 -22
  120. package/vscode/src/vs/base/common/errors.js +2 -2
  121. package/vscode/src/vs/base/common/event.js +2 -2
  122. package/vscode/src/vs/base/common/extpath.js +1 -1
  123. package/vscode/src/vs/base/common/filters.js +1 -1
  124. package/vscode/src/vs/base/common/history.js +1 -1
  125. package/vscode/src/vs/base/common/jsonEdit.js +6 -4
  126. package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -45
  127. package/vscode/src/vs/base/common/keyCodes.js +3 -1
  128. package/vscode/src/vs/base/common/keybindingLabels.js +29 -108
  129. package/vscode/src/vs/base/common/labels.js +2 -2
  130. package/vscode/src/vs/base/common/lifecycle.js +5 -5
  131. package/vscode/src/vs/base/common/map.js +11 -11
  132. package/vscode/src/vs/base/common/objects.js +1 -1
  133. package/vscode/src/vs/base/common/path.js +2 -2
  134. package/vscode/src/vs/base/common/platform.js +7 -26
  135. package/vscode/src/vs/base/common/stream.js +1 -1
  136. package/vscode/src/vs/base/common/strings.js +2 -2
  137. package/vscode/src/vs/base/common/ternarySearchTree.js +3 -3
  138. package/vscode/src/vs/base/common/types.js +7 -5
  139. package/vscode/src/vs/base/common/uri.js +11 -5
  140. package/vscode/src/vs/base/common/worker/simpleWorker.js +7 -7
  141. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +1 -1
  142. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +1 -1
  143. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +47 -42
  144. package/vscode/src/vs/editor/browser/coreCommands.js +104 -115
  145. package/vscode/src/vs/editor/browser/editorExtensions.js +24 -35
  146. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +2 -2
  147. package/vscode/src/vs/editor/browser/services/bulkEditService.js +1 -1
  148. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +1 -1
  149. package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +18 -22
  150. package/vscode/src/vs/editor/browser/services/openerService.js +1 -1
  151. package/vscode/src/vs/editor/browser/view/viewLayer.js +1 -1
  152. package/vscode/src/vs/editor/browser/view.js +6 -6
  153. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +1 -1
  154. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +2 -2
  155. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +1 -1
  156. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +1 -1
  157. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +1 -1
  158. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +129 -128
  159. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +25 -68
  160. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +66 -99
  161. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +10 -9
  162. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +15 -34
  163. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +25 -41
  164. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +1 -1
  165. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +27 -51
  166. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +40 -31
  167. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +13 -20
  168. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +8 -19
  169. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +4 -15
  170. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +1 -1
  171. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +83 -154
  172. package/vscode/src/vs/editor/common/config/editorOptions.js +863 -1427
  173. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +110 -253
  174. package/vscode/src/vs/editor/common/core/lineRange.js +4 -2
  175. package/vscode/src/vs/editor/common/core/offsetRange.js +3 -3
  176. package/vscode/src/vs/editor/common/core/textEdit.js +1 -1
  177. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +1 -1
  178. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +1 -1
  179. package/vscode/src/vs/editor/common/editorContextKeys.js +80 -239
  180. package/vscode/src/vs/editor/common/languages/modesRegistry.js +5 -8
  181. package/vscode/src/vs/editor/common/languages/supports/tokenization.js +2 -2
  182. package/vscode/src/vs/editor/common/languages.js +68 -71
  183. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +12 -12
  184. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +2 -2
  185. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/nodeReader.js +1 -1
  186. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +2 -2
  187. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +1 -1
  188. package/vscode/src/vs/editor/common/model/editStack.js +47 -36
  189. package/vscode/src/vs/editor/common/model/guidesTextModelPart.js +3 -3
  190. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +2 -2
  191. package/vscode/src/vs/editor/common/model/textModel.js +9 -9
  192. package/vscode/src/vs/editor/common/model/textModelPart.js +1 -1
  193. package/vscode/src/vs/editor/common/model/textModelTokens.js +2 -2
  194. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  195. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -2
  196. package/vscode/src/vs/editor/common/services/modelService.js +1 -1
  197. package/vscode/src/vs/editor/common/standaloneStrings.js +56 -115
  198. package/vscode/src/vs/editor/common/textModelGuides.js +1 -1
  199. package/vscode/src/vs/editor/common/tokens/contiguousMultilineTokens.js +2 -2
  200. package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +1 -1
  201. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +79 -67
  202. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +12 -12
  203. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +12 -31
  204. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +25 -40
  205. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +4 -11
  206. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +3 -6
  207. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +28 -76
  208. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +36 -25
  209. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +54 -143
  210. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +8 -7
  211. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +30 -37
  212. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +25 -54
  213. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +15 -28
  214. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +1 -1
  215. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +30 -37
  216. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +24 -31
  217. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +7 -24
  218. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +11 -34
  219. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +37 -70
  220. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +15 -14
  221. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +6 -13
  222. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +33 -50
  223. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +37 -68
  224. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +4 -3
  225. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +20 -27
  226. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +8 -7
  227. package/vscode/src/vs/editor/contrib/find/browser/findController.js +83 -120
  228. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +59 -143
  229. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +51 -117
  230. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +13 -32
  231. package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +2 -2
  232. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +4 -15
  233. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +28 -35
  234. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +21 -52
  235. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +38 -77
  236. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +109 -246
  237. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +21 -23
  238. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +40 -30
  239. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +23 -34
  240. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +31 -42
  241. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +33 -39
  242. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +24 -23
  243. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +31 -95
  244. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +41 -32
  245. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +18 -37
  246. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +11 -18
  247. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +29 -76
  248. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +1 -1
  249. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +80 -99
  250. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +30 -63
  251. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +45 -42
  252. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +11 -18
  253. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +28 -23
  254. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +39 -60
  255. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  256. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +1 -1
  257. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +3 -1
  258. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +2 -5
  259. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +135 -234
  260. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +26 -33
  261. package/vscode/src/vs/editor/contrib/links/browser/links.js +32 -64
  262. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +13 -16
  263. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +122 -195
  264. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +17 -20
  265. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +16 -32
  266. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +43 -86
  267. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +10 -24
  268. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +46 -170
  269. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +3 -10
  270. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +54 -76
  271. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +37 -45
  272. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +73 -86
  273. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +23 -38
  274. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +1 -1
  275. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +13 -80
  276. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +20 -56
  277. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +55 -72
  278. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +161 -147
  279. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +43 -95
  280. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +21 -28
  281. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +16 -23
  282. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +11 -10
  283. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +67 -66
  284. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +6 -13
  285. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +3 -6
  286. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +72 -136
  287. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +11 -26
  288. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +19 -22
  289. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +66 -59
  290. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +72 -51
  291. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
  292. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +3 -1
  293. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +7 -7
  294. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +2 -2
  295. package/vscode/src/vs/nls.js +1 -4
  296. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +88 -255
  297. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +9 -16
  298. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +21 -41
  299. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +18 -45
  300. package/vscode/src/vs/platform/actions/browser/buttonbar.js +19 -24
  301. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +40 -51
  302. package/vscode/src/vs/platform/actions/browser/toolbar.d.ts +73 -0
  303. package/vscode/src/vs/platform/actions/browser/toolbar.js +24 -23
  304. package/vscode/src/vs/platform/actions/common/actions.contribution.js +5 -0
  305. package/vscode/src/vs/platform/actions/common/actions.js +4 -2
  306. package/vscode/src/vs/platform/actions/common/menuResetAction.js +21 -0
  307. package/vscode/src/vs/platform/actions/common/menuService.js +49 -51
  308. package/vscode/src/vs/platform/commands/common/commands.js +2 -2
  309. package/vscode/src/vs/platform/configuration/common/configurationModels.js +1 -1
  310. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +38 -61
  311. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +68 -51
  312. package/vscode/src/vs/platform/contextkey/common/contextkey.js +168 -130
  313. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +14 -45
  314. package/vscode/src/vs/platform/contextkey/common/scanner.js +12 -26
  315. package/vscode/src/vs/platform/dialogs/common/dialogs.js +18 -33
  316. package/vscode/src/vs/platform/dnd/browser/dnd.js +24 -19
  317. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +8 -15
  318. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +2 -6
  319. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +335 -0
  320. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +915 -0
  321. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +36 -43
  322. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.d.ts +43 -0
  323. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +23 -16
  324. package/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.d.ts +48 -0
  325. package/vscode/src/vs/platform/files/common/files.js +41 -58
  326. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.d.ts +59 -0
  327. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +28 -21
  328. package/vscode/src/vs/platform/hover/browser/hover.js +2 -2
  329. package/vscode/src/vs/platform/instantiation/common/instantiation.js +1 -1
  330. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +7 -7
  331. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +21 -20
  332. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +75 -6
  333. package/vscode/src/vs/platform/layout/browser/zIndexRegistry.js +4 -2
  334. package/vscode/src/vs/platform/list/browser/listService.js +159 -189
  335. package/vscode/src/vs/platform/log/common/log.js +20 -19
  336. package/vscode/src/vs/platform/markers/common/markerService.js +1 -1
  337. package/vscode/src/vs/platform/markers/common/markers.js +15 -14
  338. package/vscode/src/vs/platform/product/common/product.js +1 -1
  339. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +34 -47
  340. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +183 -193
  341. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +107 -98
  342. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +9 -8
  343. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +5 -12
  344. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +13 -0
  345. package/vscode/src/vs/platform/request/common/request.js +31 -40
  346. package/vscode/src/vs/platform/terminal/common/terminal.js +3 -1
  347. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +28 -59
  348. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +9 -40
  349. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +151 -350
  350. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +51 -170
  351. package/vscode/src/vs/platform/theme/common/colors/listColors.js +63 -90
  352. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +8 -35
  353. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +14 -53
  354. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +13 -32
  355. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +14 -37
  356. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +6 -13
  357. package/vscode/src/vs/platform/theme/common/iconRegistry.js +9 -24
  358. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +64 -207
  359. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +111 -114
  360. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +51 -54
  361. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +20 -5
  362. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +25 -32
  363. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +7 -1
  364. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +173 -35
  365. package/vscode/src/vs/platform/workspace/common/workspace.js +8 -9
  366. package/vscode/src/vs/platform/workspaces/common/workspaces.js +1 -1
  367. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +3 -3
  368. package/vscode/src/vs/workbench/api/common/extHostAiRelatedInformation.js +2 -2
  369. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +2 -2
  370. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +4 -4
  371. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +55 -46
  372. package/vscode/src/vs/workbench/api/common/extHostCodeInsets.js +1 -1
  373. package/vscode/src/vs/workbench/api/common/extHostCommands.js +9 -5
  374. package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +10 -4
  375. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +17 -15
  376. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +40 -24
  377. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +37 -34
  378. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +1 -1
  379. package/vscode/src/vs/workbench/api/common/extHostDocumentData.js +6 -4
  380. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +5 -5
  381. package/vscode/src/vs/workbench/api/common/extHostDocumentsAndEditors.js +1 -1
  382. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +12 -8
  383. package/vscode/src/vs/workbench/api/common/extHostEmbeddingVector.js +3 -3
  384. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +2 -2
  385. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +22 -7
  386. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +16 -16
  387. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +4 -4
  388. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +4 -2
  389. package/vscode/src/vs/workbench/api/common/extHostIssueReporter.js +9 -9
  390. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +272 -200
  391. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +49 -42
  392. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +2 -2
  393. package/vscode/src/vs/workbench/api/common/extHostLogService.js +6 -13
  394. package/vscode/src/vs/workbench/api/common/extHostManagedSockets.js +1 -1
  395. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +20 -14
  396. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +2 -2
  397. package/vscode/src/vs/workbench/api/common/extHostNotebookDocumentSaveParticipant.js +1 -1
  398. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +20 -18
  399. package/vscode/src/vs/workbench/api/common/extHostNotebookRenderers.js +3 -1
  400. package/vscode/src/vs/workbench/api/common/extHostOutput.js +4 -4
  401. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +3 -3
  402. package/vscode/src/vs/workbench/api/common/extHostSCM.js +4 -2
  403. package/vscode/src/vs/workbench/api/common/extHostSearch.js +8 -6
  404. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +41 -38
  405. package/vscode/src/vs/workbench/api/common/extHostTask.js +15 -11
  406. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +22 -21
  407. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +109 -94
  408. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +1 -1
  409. package/vscode/src/vs/workbench/api/common/extHostTesting.js +9 -7
  410. package/vscode/src/vs/workbench/api/common/extHostTestingPrivateApi.js +1 -1
  411. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +6 -6
  412. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +4 -4
  413. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -1
  414. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +17 -10
  415. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +31 -36
  416. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +11 -11
  417. package/vscode/src/vs/workbench/api/common/extHostTypes.js +31 -27
  418. package/vscode/src/vs/workbench/api/common/extHostUriOpener.js +6 -4
  419. package/vscode/src/vs/workbench/api/common/extHostUrls.js +1 -1
  420. package/vscode/src/vs/workbench/api/common/extHostWebview.js +1 -1
  421. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +1 -1
  422. package/vscode/src/vs/workbench/api/common/extHostWebviewPanels.js +3 -3
  423. package/vscode/src/vs/workbench/api/common/extHostWebviewView.js +4 -4
  424. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +51 -48
  425. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +29 -44
  426. package/vscode/src/vs/workbench/api/worker/extHostExtensionService.js +3 -3
  427. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +2 -2
  428. package/vscode/src/vs/workbench/browser/actions/developerActions.js +93 -157
  429. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +270 -614
  430. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +31 -30
  431. package/vscode/src/vs/workbench/browser/actions/windowActions.js +49 -123
  432. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +63 -119
  433. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +11 -26
  434. package/vscode/src/vs/workbench/browser/dnd.d.ts +14 -0
  435. package/vscode/src/vs/workbench/browser/editor.js +62 -55
  436. package/vscode/src/vs/workbench/browser/labels.js +40 -51
  437. package/vscode/src/vs/workbench/browser/part.js +2 -2
  438. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.d.ts +61 -0
  439. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +23 -56
  440. package/vscode/src/vs/workbench/browser/parts/banner/bannerPart.d.ts +46 -0
  441. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.d.ts +21 -0
  442. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +72 -115
  443. package/vscode/src/vs/workbench/browser/parts/compositePart.d.ts +89 -0
  444. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +12 -17
  445. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +11 -18
  446. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +51 -198
  447. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +60 -101
  448. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +51 -48
  449. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +10 -33
  450. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +176 -684
  451. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +51 -104
  452. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +61 -91
  453. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +26 -77
  454. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +19 -27
  455. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +41 -60
  456. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +86 -94
  457. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +124 -353
  458. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +21 -30
  459. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +45 -48
  460. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +34 -31
  461. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -5
  462. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +27 -24
  463. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +21 -18
  464. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +1 -1
  465. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +117 -135
  466. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +42 -109
  467. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +11 -10
  468. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +25 -52
  469. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +24 -59
  470. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +22 -30
  471. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +21 -61
  472. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +23 -25
  473. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +32 -50
  474. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.d.ts +108 -0
  475. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +138 -0
  476. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +58 -196
  477. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.d.ts +35 -0
  478. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +48 -0
  479. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +73 -124
  480. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +19 -30
  481. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +6 -5
  482. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +152 -141
  483. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -16
  484. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +62 -72
  485. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +68 -85
  486. package/vscode/src/vs/workbench/browser/quickaccess.js +12 -12
  487. package/vscode/src/vs/workbench/browser/workbench.contribution.js +381 -589
  488. package/vscode/src/vs/workbench/browser/workbench.d.ts +10 -0
  489. package/vscode/src/vs/workbench/common/configuration.js +33 -52
  490. package/vscode/src/vs/workbench/common/contextkeys.js +117 -348
  491. package/vscode/src/vs/workbench/common/contributions.js +9 -3
  492. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +14 -15
  493. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +18 -15
  494. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +14 -11
  495. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +1 -1
  496. package/vscode/src/vs/workbench/common/editor.js +31 -36
  497. package/vscode/src/vs/workbench/common/theme.js +359 -406
  498. package/vscode/src/vs/workbench/common/views.js +36 -35
  499. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +221 -488
  500. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +4 -22
  501. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +37 -52
  502. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignal.contribution.js +56 -127
  503. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/commands.js +18 -41
  504. package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkCellEdits.js +2 -2
  505. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +55 -54
  506. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +27 -71
  507. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +13 -18
  508. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +13 -45
  509. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +2 -1
  510. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +21 -37
  511. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +17 -22
  512. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +8 -12
  513. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +40 -52
  514. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +83 -138
  515. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +2 -2
  516. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +31 -52
  517. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +20 -19
  518. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +6 -6
  519. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +7 -30
  520. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +29 -64
  521. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +14 -8
  522. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +1 -1
  523. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +33 -40
  524. package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +24 -61
  525. package/vscode/src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.js +11 -34
  526. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +22 -38
  527. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +23 -34
  528. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +23 -67
  529. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +14 -17
  530. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +25 -45
  531. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +47 -55
  532. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +4 -11
  533. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +13 -28
  534. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +4 -11
  535. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +4 -11
  536. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +29 -41
  537. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +14 -37
  538. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +11 -14
  539. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +82 -88
  540. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +19 -22
  541. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +17 -16
  542. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +9 -20
  543. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +15 -18
  544. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +33 -64
  545. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +108 -124
  546. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +16 -19
  547. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +43 -79
  548. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +46 -61
  549. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +16 -51
  550. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +30 -44
  551. package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +24 -51
  552. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +22 -17
  553. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +18 -21
  554. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +84 -242
  555. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +33 -74
  556. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +220 -412
  557. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +14 -13
  558. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +20 -67
  559. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +62 -273
  560. package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +12 -17
  561. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +227 -290
  562. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +147 -141
  563. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +13 -14
  564. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +4 -11
  565. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +25 -22
  566. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +617 -1086
  567. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +42 -69
  568. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsFileTemplate.js +10 -13
  569. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +9 -15
  570. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +32 -29
  571. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +9 -12
  572. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +26 -35
  573. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +8 -11
  574. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +38 -49
  575. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +60 -107
  576. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +71 -100
  577. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +161 -373
  578. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.save.js +10 -13
  579. package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +11 -22
  580. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +151 -244
  581. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +105 -156
  582. package/vscode/src/vs/workbench/contrib/files/browser/files.editorPane.contribution.js +10 -17
  583. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +18 -21
  584. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +14 -25
  585. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +52 -72
  586. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +122 -155
  587. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +55 -78
  588. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +22 -25
  589. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +8 -16
  590. package/vscode/src/vs/workbench/contrib/files/common/files.js +61 -84
  591. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +11 -14
  592. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +58 -106
  593. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +9 -22
  594. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +6 -9
  595. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +15 -26
  596. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +122 -171
  597. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +53 -78
  598. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatFileCreationWidget.js +19 -30
  599. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +7 -7
  600. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +46 -67
  601. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +56 -65
  602. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +7 -10
  603. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +3 -1
  604. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +78 -165
  605. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +14 -18
  606. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +74 -145
  607. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +1 -1
  608. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +1 -1
  609. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mapping.js +1 -1
  610. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +64 -53
  611. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +2 -2
  612. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +3 -3
  613. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +1 -1
  614. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +19 -50
  615. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +2 -5
  616. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +58 -55
  617. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffSourceResolverService.js +2 -2
  618. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +97 -157
  619. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +40 -60
  620. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  621. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +57 -120
  622. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +19 -35
  623. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +36 -43
  624. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +2 -5
  625. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +11 -18
  626. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +50 -63
  627. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +12 -27
  628. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +90 -152
  629. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +8 -19
  630. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +18 -45
  631. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +6 -14
  632. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +58 -49
  633. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +155 -210
  634. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +28 -135
  635. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +17 -26
  636. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +63 -82
  637. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +16 -20
  638. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +8 -23
  639. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +11 -14
  640. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/collapsedCellOutput.js +8 -16
  641. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +12 -20
  642. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +20 -24
  643. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +5 -5
  644. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +1 -1
  645. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +89 -100
  646. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +66 -73
  647. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +1 -1
  648. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +2 -2
  649. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +3 -3
  650. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +1 -1
  651. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.js +10 -13
  652. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +2 -2
  653. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +48 -101
  654. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +15 -19
  655. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookViewZones.js +1 -1
  656. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +21 -23
  657. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -6
  658. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +32 -44
  659. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +16 -51
  660. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +52 -91
  661. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +52 -231
  662. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +34 -105
  663. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +128 -156
  664. package/vscode/src/vs/workbench/contrib/remote/browser/remoteIcons.js +19 -82
  665. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +250 -445
  666. package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +9 -16
  667. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +123 -180
  668. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsBase.js +2 -5
  669. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +21 -62
  670. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +2 -2
  671. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +1 -1
  672. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +2 -5
  673. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +3 -10
  674. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +18 -17
  675. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +18 -24
  676. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +71 -70
  677. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +35 -146
  678. package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +18 -23
  679. package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +19 -23
  680. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +134 -123
  681. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +795 -0
  682. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.service.d.ts +149 -0
  683. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalConfigHelper.d.ts +48 -0
  684. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +19 -26
  685. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalStatusList.d.ts +25 -0
  686. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.d.ts +8 -0
  687. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +168 -0
  688. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm-private.d.ts +55 -0
  689. package/vscode/src/vs/workbench/contrib/terminal/common/environmentVariable.d.ts +9 -0
  690. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +238 -0
  691. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +10 -29
  692. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +42 -78
  693. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +106 -138
  694. package/vscode/src/vs/workbench/contrib/testing/common/testId.js +1 -1
  695. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +5 -5
  696. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +36 -31
  697. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +4 -11
  698. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +20 -23
  699. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +6 -9
  700. package/vscode/src/vs/workbench/services/activity/browser/activityService.d.ts +28 -0
  701. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +18 -8
  702. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +23 -62
  703. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +3 -2
  704. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +99 -18
  705. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +9 -8
  706. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionFeatures.js +1 -1
  707. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +53 -0
  708. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +3 -6
  709. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +106 -0
  710. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +40 -57
  711. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +45 -0
  712. package/vscode/src/vs/workbench/services/extensions/browser/webWorkerExtensionHost.d.ts +11 -0
  713. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +162 -0
  714. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.d.ts +18 -0
  715. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +1 -1
  716. package/vscode/src/vs/workbench/services/extensions/common/extensionHostManagers.d.ts +39 -0
  717. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProxy.d.ts +17 -0
  718. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.service.d.ts +20 -0
  719. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.d.ts +45 -0
  720. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +6 -2
  721. package/vscode/src/vs/workbench/services/extensions/common/extensionsProposedApi.d.ts +17 -0
  722. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +176 -223
  723. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.d.ts +6 -0
  724. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +5 -3
  725. package/vscode/src/vs/workbench/services/extensions/worker/polyfillNestedWorker.js +1 -1
  726. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +35 -38
  727. package/vscode/src/vs/workbench/services/language/common/languageService.js +55 -119
  728. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +1 -1
  729. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +6 -13
  730. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +33 -60
  731. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +8 -15
  732. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +79 -72
  733. package/vscode/src/vs/workbench/services/preferences/common/preferencesValidation.js +54 -141
  734. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.d.ts +50 -0
  735. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +30 -42
  736. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.service.d.ts +40 -0
  737. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.d.ts +185 -0
  738. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +92 -101
  739. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +50 -45
  740. package/vscode/src/vs/workbench/services/storage/browser/storageService.d.ts +41 -0
  741. package/vscode/src/vs/workbench/services/textMate/browser/textMateTokenizationFeature.service.d.ts +11 -0
  742. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +15 -30
  743. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +4 -1
  744. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +3 -1
  745. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +32 -35
  746. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +48 -83
  747. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +26 -45
  748. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.d.ts +11 -0
  749. package/vscode/src/vs/workbench/services/userData/browser/userDataInit.service.d.ts +9 -0
  750. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +14 -23
  751. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +2 -5
  752. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +22 -62
  753. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +49 -78
  754. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +48 -87
  755. package/tools/l10n.js +0 -177
@@ -0,0 +1,795 @@
1
+ import { IDimension } from '../../../../base/browser/dom.js';
2
+ import { Orientation } from '../../../../base/browser/ui/sash/sash.js';
3
+ import { Color } from '../../../../base/common/color.js';
4
+ import { Event } from '../../../../base/common/event.js';
5
+ import { IDisposable, DisposableStore } from '../../../../base/common/lifecycle.js';
6
+ import { OperatingSystem } from '../../../../base/common/platform.js';
7
+ import { URI } from '../../../../base/common/uri.js';
8
+ import { ITerminalCapabilityStore, IMarkProperties, ITerminalCommand } from '../../../../platform/terminal/common/capabilities/capabilities.js';
9
+ import { IMergedEnvironmentVariableCollection } from '../../../../platform/terminal/common/environmentVariable.js';
10
+ import { IShellLaunchConfig, ITerminalTabLayoutInfoById, TerminalLocation, ITerminalProfile, IExtensionTerminalProfile, TerminalIcon, IReconnectionProperties, WaitOnExitValue, ITerminalLaunchError, TerminalExitReason, TitleEventSource, TerminalShellType, ITerminalDimensions, IShellIntegration } from '../../../../platform/terminal/common/terminal.js';
11
+ import { IColorTheme } from '../../../../platform/theme/common/themeService.js';
12
+ import { IWorkspaceFolder } from '../../../../platform/workspace/common/workspace.js';
13
+ import { ITerminalStatusList } from './terminalStatusList.js';
14
+ import { XtermTerminal } from './xterm/xtermTerminal.js';
15
+ import { ITerminalConfiguration, ITerminalFont, ITerminalProcessInfo } from '../common/terminal.js';
16
+ import { IContextKeyService } from '../../../../platform/contextkey/common/contextkey.service.js';
17
+ import { IMarker, IBufferRange, ITheme, Terminal } from '@xterm/xterm';
18
+ import { ScrollPosition } from './xterm/markNavigationAddon.js';
19
+ import { GroupIdentifier } from '../../../common/editor.js';
20
+ import { SIDE_GROUP_TYPE, ACTIVE_GROUP_TYPE, AUX_WINDOW_GROUP_TYPE } from '../../../services/editor/common/editorService.js';
21
+ import { ICurrentPartialCommand } from '../../../../platform/terminal/common/capabilities/commandDetection/terminalCommand.js';
22
+
23
+ /**
24
+ * A terminal contribution that gets created whenever a terminal is created. A contribution has
25
+ * access to the process manager through the constructor and provides a method for when xterm.js has
26
+ * been initialized.
27
+ */
28
+ interface ITerminalContribution extends IDisposable {
29
+ layout?(xterm: IXtermTerminal & {
30
+ raw: Terminal;
31
+ }, dimension: IDimension): void;
32
+ xtermOpen?(xterm: IXtermTerminal & {
33
+ raw: Terminal;
34
+ }): void;
35
+ xtermReady?(xterm: IXtermTerminal & {
36
+ raw: Terminal;
37
+ }): void;
38
+ }
39
+ interface ITerminalConfigHelper {
40
+ config: ITerminalConfiguration;
41
+ panelContainer: HTMLElement | undefined;
42
+ configFontIsMonospace(): boolean;
43
+ getFont(w: Window): ITerminalFont;
44
+ showRecommendations(shellLaunchConfig: IShellLaunchConfig): void;
45
+ }
46
+ declare const enum Direction {
47
+ Left = 0,
48
+ Right = 1,
49
+ Up = 2,
50
+ Down = 3
51
+ }
52
+ interface IMarkTracker {
53
+ scrollToPreviousMark(scrollPosition?: ScrollPosition, retainSelection?: boolean, skipEmptyCommands?: boolean): void;
54
+ scrollToNextMark(): void;
55
+ selectToPreviousMark(): void;
56
+ selectToNextMark(): void;
57
+ selectToPreviousLine(): void;
58
+ selectToNextLine(): void;
59
+ clear(): void;
60
+ scrollToClosestMarker(startMarkerId: string, endMarkerId?: string, highlight?: boolean | undefined): void;
61
+ scrollToLine(line: number, position: ScrollPosition): void;
62
+ revealCommand(command: ITerminalCommand | ICurrentPartialCommand, position?: ScrollPosition): void;
63
+ revealRange(range: IBufferRange): void;
64
+ registerTemporaryDecoration(marker: IMarker, endMarker: IMarker | undefined, showOutline: boolean): void;
65
+ showCommandGuide(command: ITerminalCommand | undefined): void;
66
+ saveScrollState(): void;
67
+ restoreScrollState(): void;
68
+ }
69
+ interface ITerminalGroup {
70
+ activeInstance: ITerminalInstance | undefined;
71
+ terminalInstances: ITerminalInstance[];
72
+ title: string;
73
+ readonly onDidDisposeInstance: Event<ITerminalInstance>;
74
+ readonly onDisposed: Event<ITerminalGroup>;
75
+ readonly onInstancesChanged: Event<void>;
76
+ readonly onPanelOrientationChanged: Event<Orientation>;
77
+ focusPreviousPane(): void;
78
+ focusNextPane(): void;
79
+ resizePane(direction: Direction): void;
80
+ resizePanes(relativeSizes: number[]): void;
81
+ setActiveInstanceByIndex(index: number, force?: boolean): void;
82
+ attachToElement(element: HTMLElement): void;
83
+ addInstance(instance: ITerminalInstance): void;
84
+ removeInstance(instance: ITerminalInstance): void;
85
+ moveInstance(instance: ITerminalInstance, index: number): void;
86
+ setVisible(visible: boolean): void;
87
+ layout(width: number, height: number): void;
88
+ addDisposable(disposable: IDisposable): void;
89
+ split(shellLaunchConfig: IShellLaunchConfig): ITerminalInstance;
90
+ getLayoutInfo(isActive: boolean): ITerminalTabLayoutInfoById;
91
+ }
92
+ declare const enum TerminalConnectionState {
93
+ Connecting = 0,
94
+ Connected = 1
95
+ }
96
+ interface IDetachedXTermOptions {
97
+ cols: number;
98
+ rows: number;
99
+ colorProvider: IXtermColorProvider;
100
+ capabilities?: ITerminalCapabilityStore;
101
+ readonly?: boolean;
102
+ processInfo: ITerminalProcessInfo;
103
+ }
104
+ /**
105
+ * A generic interface implemented in both the {@link ITerminalInstance} (an
106
+ * interface used for terminals attached to the terminal panel or editor) and
107
+ * {@link IDetachedTerminalInstance} (a terminal used elsewhere in VS Code UI).
108
+ */
109
+ interface IBaseTerminalInstance {
110
+ readonly capabilities: ITerminalCapabilityStore;
111
+ /**
112
+ * DOM element the terminal is mounted in.
113
+ */
114
+ readonly domElement?: HTMLElement;
115
+ /**
116
+ * Current selection in the terminal.
117
+ */
118
+ readonly selection: string | undefined;
119
+ /**
120
+ * Check if anything is selected in terminal.
121
+ */
122
+ hasSelection(): boolean;
123
+ /**
124
+ * Clear current selection.
125
+ */
126
+ clearSelection(): void;
127
+ /**
128
+ * Focuses the terminal instance if it's able to (the xterm.js instance must exist).
129
+ *
130
+ * @param force Force focus even if there is a selection.
131
+ */
132
+ focus(force?: boolean): void;
133
+ /**
134
+ * Force the scroll bar to be visible until {@link resetScrollbarVisibility} is called.
135
+ */
136
+ forceScrollbarVisibility(): void;
137
+ /**
138
+ * Resets the scroll bar to only be visible when needed, this does nothing unless
139
+ * {@link forceScrollbarVisibility} was called.
140
+ */
141
+ resetScrollbarVisibility(): void;
142
+ /**
143
+ * Gets a terminal contribution by its ID.
144
+ */
145
+ getContribution<T extends ITerminalContribution>(id: string): T | null;
146
+ }
147
+ /**
148
+ * A {@link ITerminalInstance}-like object that emulates a subset of
149
+ * capabilities. This instance is returned from {@link ITerminalService.createDetachedTerminal}
150
+ * to represent terminals that appear in other parts of the VS Code UI outside
151
+ * of the "Terminal" view or editors.
152
+ */
153
+ interface IDetachedTerminalInstance extends IDisposable, IBaseTerminalInstance {
154
+ readonly xterm: IDetachedXtermTerminal;
155
+ /**
156
+ * Attached the terminal to the given element. This should be preferred over
157
+ * calling {@link IXtermTerminal.attachToElement} so that extra DOM elements
158
+ * for contributions are initialized.
159
+ *
160
+ * @param container Container the terminal will be rendered in
161
+ * @param options Additional options for mounting the terminal in an element
162
+ */
163
+ attachToElement(container: HTMLElement, options?: Partial<IXtermAttachToElementOptions>): void;
164
+ }
165
+ interface ITerminalServiceNativeDelegate {
166
+ getWindowCount(): Promise<number>;
167
+ }
168
+ type ITerminalLocationOptions = TerminalLocation | TerminalEditorLocation | {
169
+ parentTerminal: Promise<ITerminalInstance> | ITerminalInstance;
170
+ } | {
171
+ splitActiveTerminal: boolean;
172
+ };
173
+ interface ICreateTerminalOptions {
174
+ /**
175
+ * The shell launch config or profile to launch with, when not specified the default terminal
176
+ * profile will be used.
177
+ */
178
+ config?: IShellLaunchConfig | ITerminalProfile | IExtensionTerminalProfile;
179
+ /**
180
+ * The current working directory to start with, this will override IShellLaunchConfig.cwd if
181
+ * specified.
182
+ */
183
+ cwd?: string | URI;
184
+ /**
185
+ * The terminal's resource, passed when the terminal has moved windows.
186
+ */
187
+ resource?: URI;
188
+ /**
189
+ * The terminal's location (editor or panel), it's terminal parent (split to the right), or editor group
190
+ */
191
+ location?: ITerminalLocationOptions;
192
+ }
193
+ interface TerminalEditorLocation {
194
+ viewColumn: GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE | AUX_WINDOW_GROUP_TYPE;
195
+ preserveFocus?: boolean;
196
+ }
197
+ /**
198
+ * An interface that indicates the implementer hosts terminal instances, exposing a common set of
199
+ * properties and events.
200
+ */
201
+ interface ITerminalInstanceHost {
202
+ readonly activeInstance: ITerminalInstance | undefined;
203
+ readonly instances: readonly ITerminalInstance[];
204
+ readonly onDidDisposeInstance: Event<ITerminalInstance>;
205
+ readonly onDidFocusInstance: Event<ITerminalInstance>;
206
+ readonly onDidChangeActiveInstance: Event<ITerminalInstance | undefined>;
207
+ readonly onDidChangeInstances: Event<void>;
208
+ readonly onDidChangeInstanceCapability: Event<ITerminalInstance>;
209
+ setActiveInstance(instance: ITerminalInstance): void;
210
+ /**
211
+ * Reveal and focus the active instance, regardless of its location.
212
+ */
213
+ focusActiveInstance(): Promise<void>;
214
+ /**
215
+ * Gets an instance from a resource if it exists. This MUST be used instead of getInstanceFromId
216
+ * when you only know about a terminal's URI. (a URI's instance ID may not be this window's instance ID)
217
+ */
218
+ getInstanceFromResource(resource: URI | undefined): ITerminalInstance | undefined;
219
+ }
220
+ interface ISearchOptions {
221
+ /** Whether the find should be done as a regex. */
222
+ regex?: boolean;
223
+ /** Whether only whole words should match. */
224
+ wholeWord?: boolean;
225
+ /** Whether find should pay attention to case. */
226
+ caseSensitive?: boolean;
227
+ /** Whether the search should start at the current search position (not the next row). */
228
+ incremental?: boolean;
229
+ }
230
+ interface ITerminalInstance extends IBaseTerminalInstance {
231
+ /**
232
+ * The ID of the terminal instance, this is an arbitrary number only used to uniquely identify
233
+ * terminal instances within a window.
234
+ */
235
+ readonly instanceId: number;
236
+ /**
237
+ * A unique URI for this terminal instance with the following encoding:
238
+ * path: /<workspace ID>/<instance ID>
239
+ * fragment: Title
240
+ * Note that when dragging terminals across windows, this will retain the original workspace ID /instance ID
241
+ * from the other window.
242
+ */
243
+ readonly resource: URI;
244
+ readonly cols: number;
245
+ readonly rows: number;
246
+ readonly maxCols: number;
247
+ readonly maxRows: number;
248
+ readonly fixedCols?: number;
249
+ readonly fixedRows?: number;
250
+ readonly domElement: HTMLElement;
251
+ readonly icon?: TerminalIcon;
252
+ readonly color?: string;
253
+ readonly reconnectionProperties?: IReconnectionProperties;
254
+ readonly processName: string;
255
+ readonly sequence?: string;
256
+ readonly staticTitle?: string;
257
+ readonly workspaceFolder?: IWorkspaceFolder;
258
+ readonly cwd?: string;
259
+ readonly initialCwd?: string;
260
+ readonly os?: OperatingSystem;
261
+ readonly usedShellIntegrationInjection: boolean;
262
+ readonly injectedArgs: string[] | undefined;
263
+ readonly extEnvironmentVariableCollection: IMergedEnvironmentVariableCollection | undefined;
264
+ /**
265
+ * The underlying disposable store, allowing objects who share the same lifecycle as the
266
+ * terminal instance but are created externally to be managed by the instance.
267
+ */
268
+ readonly store: DisposableStore;
269
+ readonly statusList: ITerminalStatusList;
270
+ /**
271
+ * The process ID of the shell process, this is undefined when there is no process associated
272
+ * with this terminal.
273
+ */
274
+ processId: number | undefined;
275
+ /**
276
+ * The position of the terminal.
277
+ */
278
+ target?: TerminalLocation;
279
+ /**
280
+ * The id of a persistent process. This is defined if this is a terminal created by a pty host
281
+ * that supports reconnection.
282
+ */
283
+ readonly persistentProcessId: number | undefined;
284
+ /**
285
+ * Whether the process should be persisted across reloads.
286
+ */
287
+ readonly shouldPersist: boolean;
288
+ readonly isDisposed: boolean;
289
+ /**
290
+ * Whether the terminal's pty is hosted on a remote.
291
+ */
292
+ readonly isRemote: boolean;
293
+ /**
294
+ * The remote authority of the terminal's pty.
295
+ */
296
+ readonly remoteAuthority: string | undefined;
297
+ /**
298
+ * Whether an element within this terminal is focused.
299
+ */
300
+ readonly hasFocus: boolean;
301
+ /**
302
+ * Get or set the behavior of the terminal when it closes. This was indented only to be called
303
+ * after reconnecting to a terminal.
304
+ */
305
+ waitOnExit: WaitOnExitValue | undefined;
306
+ /**
307
+ * An event that fires when the terminal instance's title changes.
308
+ */
309
+ onTitleChanged: Event<ITerminalInstance>;
310
+ /**
311
+ * An event that fires when the terminal instance's icon changes.
312
+ */
313
+ onIconChanged: Event<{
314
+ instance: ITerminalInstance;
315
+ userInitiated: boolean;
316
+ }>;
317
+ /**
318
+ * An event that fires when the terminal instance is disposed.
319
+ */
320
+ onDisposed: Event<ITerminalInstance>;
321
+ onProcessIdReady: Event<ITerminalInstance>;
322
+ onProcessReplayComplete: Event<void>;
323
+ onRequestExtHostProcess: Event<ITerminalInstance>;
324
+ onDimensionsChanged: Event<void>;
325
+ onMaximumDimensionsChanged: Event<void>;
326
+ onDidChangeHasChildProcesses: Event<boolean>;
327
+ onDidFocus: Event<ITerminalInstance>;
328
+ onDidRequestFocus: Event<void>;
329
+ onDidBlur: Event<ITerminalInstance>;
330
+ onDidInputData: Event<ITerminalInstance>;
331
+ onDidChangeSelection: Event<ITerminalInstance>;
332
+ onDidExecuteText: Event<void>;
333
+ onDidChangeTarget: Event<TerminalLocation | undefined>;
334
+ onDidSendText: Event<string>;
335
+ /**
336
+ * An event that fires when a terminal is dropped on this instance via drag and drop.
337
+ */
338
+ onRequestAddInstanceToGroup: Event<IRequestAddInstanceToGroupEvent>;
339
+ /**
340
+ * Attach a listener to the raw data stream coming from the pty, including ANSI escape
341
+ * sequences.
342
+ */
343
+ onData: Event<string>;
344
+ /**
345
+ * Attach a listener to the binary data stream coming from xterm and going to pty
346
+ */
347
+ onBinary: Event<string>;
348
+ /**
349
+ * Attach a listener to listen for new lines added to this terminal instance.
350
+ *
351
+ * @param listener The listener function which takes new line strings added to the terminal,
352
+ * excluding ANSI escape sequences. The line event will fire when an LF character is added to
353
+ * the terminal (ie. the line is not wrapped). Note that this means that the line data will
354
+ * not fire for the last line, until either the line is ended with a LF character of the process
355
+ * is exited. The lineData string will contain the fully wrapped line, not containing any LF/CR
356
+ * characters.
357
+ */
358
+ onLineData: Event<string>;
359
+ /**
360
+ * Attach a listener that fires when the terminal's pty process exits. The number in the event
361
+ * is the processes' exit code, an exit code of undefined means the process was killed as a result of
362
+ * the ITerminalInstance being disposed.
363
+ */
364
+ onExit: Event<number | ITerminalLaunchError | undefined>;
365
+ /**
366
+ * The exit code or undefined when the terminal process hasn't yet exited or
367
+ * the process exit code could not be determined. Use {@link exitReason} to see
368
+ * why the process has exited.
369
+ */
370
+ readonly exitCode: number | undefined;
371
+ /**
372
+ * The reason the terminal process exited, this will be undefined if the process is still
373
+ * running.
374
+ */
375
+ readonly exitReason: TerminalExitReason | undefined;
376
+ /**
377
+ * The xterm.js instance for this terminal.
378
+ */
379
+ readonly xterm?: XtermTerminal;
380
+ /**
381
+ * Returns an array of data events that have fired within the first 10 seconds. If this is
382
+ * called 10 seconds after the terminal has existed the result will be undefined. This is useful
383
+ * when objects that depend on the data events have delayed initialization, like extension
384
+ * hosts.
385
+ */
386
+ readonly initialDataEvents: string[] | undefined;
387
+ /** A promise that resolves when the terminal's pty/process have been created. */
388
+ readonly processReady: Promise<void>;
389
+ /** Whether the terminal's process has child processes (ie. is dirty/busy). */
390
+ readonly hasChildProcesses: boolean;
391
+ /**
392
+ * The title of the terminal. This is either title or the process currently running or an
393
+ * explicit name given to the terminal instance through the extension API.
394
+ */
395
+ readonly title: string;
396
+ /**
397
+ * How the current title was set.
398
+ */
399
+ readonly titleSource: TitleEventSource;
400
+ /**
401
+ * The shell type of the terminal.
402
+ */
403
+ readonly shellType: TerminalShellType | undefined;
404
+ /**
405
+ * The focus state of the terminal before exiting.
406
+ */
407
+ readonly hadFocusOnExit: boolean;
408
+ /**
409
+ * False when the title is set by an API or the user. We check this to make sure we
410
+ * do not override the title when the process title changes in the terminal.
411
+ */
412
+ isTitleSetByProcess: boolean;
413
+ /**
414
+ * The shell launch config used to launch the shell.
415
+ */
416
+ readonly shellLaunchConfig: IShellLaunchConfig;
417
+ /**
418
+ * Whether to disable layout for the terminal. This is useful when the size of the terminal is
419
+ * being manipulating (e.g. adding a split pane) and we want the terminal to ignore particular
420
+ * resize events.
421
+ */
422
+ disableLayout: boolean;
423
+ /**
424
+ * The description of the terminal, this is typically displayed next to {@link title}.
425
+ */
426
+ description: string | undefined;
427
+ /**
428
+ * The remote-aware $HOME directory (or Windows equivalent) of the terminal.
429
+ */
430
+ userHome: string | undefined;
431
+ /**
432
+ * The nonce used to verify commands coming from shell integration.
433
+ */
434
+ shellIntegrationNonce: string;
435
+ /**
436
+ * Registers and returns a marker
437
+ * @param the y offset from the cursor
438
+ */
439
+ registerMarker(offset?: number): IMarker | undefined;
440
+ /**
441
+ * Adds a marker to the buffer, mapping it to an ID if provided.
442
+ */
443
+ addBufferMarker(properties: IMarkProperties): void;
444
+ /**
445
+ *
446
+ * @param startMarkId The ID for the start marker
447
+ * @param endMarkId The ID for the end marker
448
+ * @param highlight Whether the buffer from startMarker to endMarker
449
+ * should be highlighted
450
+ */
451
+ scrollToMark(startMarkId: string, endMarkId?: string, highlight?: boolean): void;
452
+ /**
453
+ * Dispose the terminal instance, removing it from the panel/service and freeing up resources.
454
+ *
455
+ * @param reason The reason why the terminal is being disposed
456
+ */
457
+ dispose(reason?: TerminalExitReason): void;
458
+ /**
459
+ * Informs the process that the terminal is now detached and
460
+ * then disposes the terminal.
461
+ *
462
+ * @param reason The reason why the terminal is being disposed
463
+ */
464
+ detachProcessAndDispose(reason: TerminalExitReason): Promise<void>;
465
+ /**
466
+ * Copies the terminal selection to the clipboard.
467
+ */
468
+ copySelection(asHtml?: boolean, command?: ITerminalCommand): Promise<void>;
469
+ /**
470
+ * When the panel is hidden or a terminal in the editor area becomes inactive, reset the focus context key
471
+ * to avoid issues like #147180.
472
+ */
473
+ resetFocusContextKey(): void;
474
+ /**
475
+ * Focuses the terminal instance when it's ready (the xterm.js instance much exist). This is the
476
+ * best focus call when the terminal is being shown for example.
477
+ * when the terminal is being shown.
478
+ *
479
+ * @param force Force focus even if there is a selection.
480
+ */
481
+ focusWhenReady(force?: boolean): Promise<void>;
482
+ /**
483
+ * Focuses and pastes the contents of the clipboard into the terminal instance.
484
+ */
485
+ paste(): Promise<void>;
486
+ /**
487
+ * Focuses and pastes the contents of the selection clipboard into the terminal instance.
488
+ */
489
+ pasteSelection(): Promise<void>;
490
+ /**
491
+ * Override the copy on selection feature with a custom value.
492
+ * @param value Whether to enable copySelection.
493
+ */
494
+ overrideCopyOnSelection(value: boolean): IDisposable;
495
+ /**
496
+ * Send text to the terminal instance. The text is written to the stdin of the underlying pty
497
+ * process (shell) of the terminal instance.
498
+ *
499
+ * @param text The text to send.
500
+ * @param shouldExecute Indicates that the text being sent should be executed rather than just inserted in the terminal.
501
+ * The character(s) added are \n or \r\n, depending on the platform. This defaults to `true`.
502
+ * @param bracketedPasteMode Whether to wrap the text in the bracketed paste mode sequence when
503
+ * it's enabled. When true, the shell will treat the text as if it were pasted into the shell,
504
+ * this may for example select the text and it will also ensure that the text will not be
505
+ * interpreted as a shell keybinding.
506
+ */
507
+ sendText(text: string, shouldExecute: boolean, bracketedPasteMode?: boolean): Promise<void>;
508
+ /**
509
+ * Sends a path to the terminal instance, preparing it as needed based on the detected shell
510
+ * running within the terminal. The text is written to the stdin of the underlying pty process
511
+ * (shell) of the terminal instance.
512
+ *
513
+ * @param originalPath The path to send.
514
+ * @param shouldExecute Indicates that the text being sent should be executed rather than just inserted in the terminal.
515
+ * The character(s) added are \n or \r\n, depending on the platform. This defaults to `true`.
516
+ */
517
+ sendPath(originalPath: string | URI, shouldExecute: boolean): Promise<void>;
518
+ runCommand(command: string, shouldExecute?: boolean): void;
519
+ /**
520
+ * Takes a path and returns the properly escaped path to send to a given shell. On Windows, this
521
+ * includes trying to prepare the path for WSL if needed.
522
+ *
523
+ * @param originalPath The path to be escaped and formatted.
524
+ */
525
+ preparePathForShell(originalPath: string): Promise<string>;
526
+ /** Scroll the terminal buffer down 1 line. */ scrollDownLine(): void;
527
+ /** Scroll the terminal buffer down 1 page. */ scrollDownPage(): void;
528
+ /** Scroll the terminal buffer to the bottom. */ scrollToBottom(): void;
529
+ /** Scroll the terminal buffer up 1 line. */ scrollUpLine(): void;
530
+ /** Scroll the terminal buffer up 1 page. */ scrollUpPage(): void;
531
+ /** Scroll the terminal buffer to the top. */ scrollToTop(): void;
532
+ /**
533
+ * Clears the terminal buffer, leaving only the prompt line and moving it to the top of the
534
+ * viewport.
535
+ */
536
+ clearBuffer(): void;
537
+ /**
538
+ * Attaches the terminal instance to an element on the DOM, before this is called the terminal
539
+ * instance process may run in the background but cannot be displayed on the UI.
540
+ *
541
+ * @param container The element to attach the terminal instance to.
542
+ */
543
+ attachToElement(container: HTMLElement): void;
544
+ /**
545
+ * Detaches the terminal instance from the terminal editor DOM element.
546
+ */
547
+ detachFromElement(): void;
548
+ /**
549
+ * Layout the terminal instance.
550
+ *
551
+ * @param dimension The dimensions of the container.
552
+ */
553
+ layout(dimension: {
554
+ width: number;
555
+ height: number;
556
+ }): void;
557
+ /**
558
+ * Sets whether the terminal instance's element is visible in the DOM.
559
+ *
560
+ * @param visible Whether the element is visible.
561
+ */
562
+ setVisible(visible: boolean): void;
563
+ /**
564
+ * Immediately kills the terminal's current pty process and launches a new one to replace it.
565
+ *
566
+ * @param shell The new launch configuration.
567
+ */
568
+ reuseTerminal(shell: IShellLaunchConfig): Promise<void>;
569
+ /**
570
+ * Relaunches the terminal, killing it and reusing the launch config used initially. Any
571
+ * environment variable changes will be recalculated when this happens.
572
+ */
573
+ relaunch(): void;
574
+ /**
575
+ * Sets the terminal instance's dimensions to the values provided via the onDidOverrideDimensions event,
576
+ * which allows overriding the the regular dimensions (fit to the size of the panel).
577
+ */
578
+ setOverrideDimensions(dimensions: ITerminalDimensions): void;
579
+ /**
580
+ * Sets the terminal instance's dimensions to the values provided via quick input.
581
+ */
582
+ setFixedDimensions(): Promise<void>;
583
+ /**
584
+ * Toggles terminal line wrapping.
585
+ */
586
+ toggleSizeToContentWidth(): Promise<void>;
587
+ /**
588
+ * Gets the initial current working directory, fetching it from the backend if required.
589
+ */
590
+ getInitialCwd(): Promise<string>;
591
+ /**
592
+ * Gets the current working directory from cwd detection capabilities if available, otherwise
593
+ * from the backend. This will return the initial cwd if cwd detection is not available (ie.
594
+ * on Windows when shell integration is disabled).
595
+ */
596
+ getCwd(): Promise<string>;
597
+ /**
598
+ * Sets the title of the terminal to the provided string. If no title is provided, it will reset
599
+ * to the terminal's title if it was not explicitly set by the user or API.
600
+ * @param title The new title.
601
+ */
602
+ rename(title?: string): Promise<void>;
603
+ /**
604
+ * Sets or triggers a quick pick to change the icon of this terminal.
605
+ */
606
+ changeIcon(icon?: TerminalIcon): Promise<TerminalIcon | undefined>;
607
+ /**
608
+ * Sets or triggers a quick pick to change the color of the associated terminal tab icon.
609
+ */
610
+ changeColor(color?: string, skipQuickPick?: boolean): Promise<string | undefined>;
611
+ /**
612
+ * Triggers a quick pick that displays recent commands or cwds. Selecting one will
613
+ * rerun it in the active terminal.
614
+ */
615
+ runRecent(type: 'command' | 'cwd'): Promise<void>;
616
+ /**
617
+ * Attempts to detect and kill the process listening on specified port.
618
+ * If successful, places commandToRun on the command line
619
+ */
620
+ freePortKillProcess(port: string, commandToRun: string): Promise<void>;
621
+ /**
622
+ * Update the parent context key service to use for this terminal instance.
623
+ */
624
+ setParentContextKeyService(parentContextKeyService: IContextKeyService): void;
625
+ }
626
+ interface IXtermAttachToElementOptions {
627
+ /**
628
+ * Whether GPU rendering should be enabled for this element, defaults to true.
629
+ */
630
+ enableGpu: boolean;
631
+ }
632
+ interface IXtermTerminal extends IDisposable {
633
+ /**
634
+ * An object that tracks when commands are run and enables navigating and selecting between
635
+ * them.
636
+ */
637
+ readonly markTracker: IMarkTracker;
638
+ /**
639
+ * Reports the status of shell integration and fires events relating to it.
640
+ */
641
+ readonly shellIntegration: IShellIntegration;
642
+ readonly onDidChangeSelection: Event<void>;
643
+ readonly onDidChangeFindResults: Event<{
644
+ resultIndex: number;
645
+ resultCount: number;
646
+ }>;
647
+ /**
648
+ * Event fired when focus enters (fires with true) or leaves (false) the terminal.
649
+ */
650
+ readonly onDidChangeFocus: Event<boolean>;
651
+ /**
652
+ * Gets a view of the current texture atlas used by the renderers.
653
+ */
654
+ readonly textureAtlas: Promise<ImageBitmap> | undefined;
655
+ /**
656
+ * Whether the `disableStdin` option in xterm.js is set.
657
+ */
658
+ readonly isStdinDisabled: boolean;
659
+ /**
660
+ * Whether the terminal is currently focused.
661
+ */
662
+ readonly isFocused: boolean;
663
+ /**
664
+ * Whether a canvas-based renderer is being used.
665
+ */
666
+ readonly isGpuAccelerated: boolean;
667
+ /**
668
+ * Attached the terminal to the given element
669
+ * @param container Container the terminal will be rendered in
670
+ * @param options Additional options for mounting the terminal in an element
671
+ */
672
+ attachToElement(container: HTMLElement, options?: Partial<IXtermAttachToElementOptions>): void;
673
+ findResult?: {
674
+ resultIndex: number;
675
+ resultCount: number;
676
+ };
677
+ /**
678
+ * Find the next instance of the term
679
+ */
680
+ findNext(term: string, searchOptions: ISearchOptions): Promise<boolean>;
681
+ /**
682
+ * Find the previous instance of the term
683
+ */
684
+ findPrevious(term: string, searchOptions: ISearchOptions): Promise<boolean>;
685
+ /**
686
+ * Forces the terminal to redraw its viewport.
687
+ */
688
+ forceRedraw(): void;
689
+ /**
690
+ * Gets the font metrics of this xterm.js instance.
691
+ */
692
+ getFont(): ITerminalFont;
693
+ /**
694
+ * Gets whether there's any terminal selection.
695
+ */
696
+ hasSelection(): boolean;
697
+ /**
698
+ * Clears any terminal selection.
699
+ */
700
+ clearSelection(): void;
701
+ /**
702
+ * Selects all terminal contents/
703
+ */
704
+ selectAll(): void;
705
+ /**
706
+ * Selects the content between the two markers by their VS Code OSC `SetMarker`
707
+ * ID. It's a no-op if either of the two markers are not found.
708
+ *
709
+ * @param fromMarkerId Start marker ID
710
+ * @param toMarkerId End marker ID
711
+ * @param scrollIntoView Whether the terminal should scroll to the start of
712
+ * the range, defaults tof alse
713
+ */
714
+ selectMarkedRange(fromMarkerId: string, toMarkerId: string, scrollIntoView?: boolean): void;
715
+ /**
716
+ * Copies the terminal selection.
717
+ * @param {boolean} copyAsHtml Whether to copy selection as HTML, defaults to false.
718
+ */
719
+ copySelection(copyAsHtml?: boolean): void;
720
+ /**
721
+ * Focuses the terminal. Warning: {@link ITerminalInstance.focus} should be
722
+ * preferred when dealing with terminal instances in order to get
723
+ * accessibility triggers.
724
+ */
725
+ focus(): void;
726
+ /** Scroll the terminal buffer down 1 line. */ scrollDownLine(): void;
727
+ /** Scroll the terminal buffer down 1 page. */ scrollDownPage(): void;
728
+ /** Scroll the terminal buffer to the bottom. */ scrollToBottom(): void;
729
+ /** Scroll the terminal buffer up 1 line. */ scrollUpLine(): void;
730
+ /** Scroll the terminal buffer up 1 page. */ scrollUpPage(): void;
731
+ /** Scroll the terminal buffer to the top. */ scrollToTop(): void;
732
+ /** Scroll the terminal buffer to a set line */ scrollToLine(line: number, position?: ScrollPosition): void;
733
+ /**
734
+ * Clears the terminal buffer, leaving only the prompt line and moving it to the top of the
735
+ * viewport.
736
+ */
737
+ clearBuffer(): void;
738
+ /**
739
+ * Clears the search result decorations
740
+ */
741
+ clearSearchDecorations(): void;
742
+ /**
743
+ * Clears the active search result decorations
744
+ */
745
+ clearActiveSearchDecoration(): void;
746
+ /**
747
+ * Returns a reverse iterator of buffer lines as strings
748
+ */
749
+ getBufferReverseIterator(): IterableIterator<string>;
750
+ /**
751
+ * Gets the buffer contents as HTML.
752
+ */
753
+ getContentsAsHtml(): Promise<string>;
754
+ /**
755
+ * Refreshes the terminal after it has been moved.
756
+ */
757
+ refresh(): void;
758
+ getXtermTheme(theme?: IColorTheme): ITheme;
759
+ }
760
+ interface IDetachedXtermTerminal extends IXtermTerminal {
761
+ /**
762
+ * Writes data to the terminal.
763
+ * @param data data to write
764
+ * @param callback Optional callback that fires when the data was processed
765
+ * by the parser.
766
+ */
767
+ write(data: string | Uint8Array, callback?: () => void): void;
768
+ /**
769
+ * Resizes the terminal.
770
+ */
771
+ resize(columns: number, rows: number): void;
772
+ }
773
+ interface IInternalXtermTerminal {
774
+ /**
775
+ * Writes text directly to the terminal, bypassing the process.
776
+ *
777
+ * **WARNING:** This should never be used outside of the terminal component and only for
778
+ * developer purposed inside the terminal component.
779
+ */
780
+ _writeText(data: string): void;
781
+ }
782
+ interface IXtermColorProvider {
783
+ getBackgroundColor(theme: IColorTheme): Color | undefined;
784
+ }
785
+ interface IRequestAddInstanceToGroupEvent {
786
+ uri: URI;
787
+ side: 'before' | 'after';
788
+ }
789
+ declare const enum LinuxDistro {
790
+ Unknown = 1,
791
+ Fedora = 2,
792
+ Ubuntu = 3
793
+ }
794
+
795
+ export { Direction, type IBaseTerminalInstance, type ICreateTerminalOptions, type IDetachedTerminalInstance, type IDetachedXTermOptions, type IDetachedXtermTerminal, type IInternalXtermTerminal, type IMarkTracker, type IRequestAddInstanceToGroupEvent, type ISearchOptions, type ITerminalConfigHelper, type ITerminalContribution, type ITerminalGroup, type ITerminalInstance, type ITerminalInstanceHost, type ITerminalLocationOptions, type ITerminalServiceNativeDelegate, type IXtermAttachToElementOptions, type IXtermColorProvider, type IXtermTerminal, LinuxDistro, TerminalConnectionState, type TerminalEditorLocation };