@codingame/monaco-vscode-api 2.0.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +3 -19
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  376. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  377. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  386. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  387. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  411. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  412. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  416. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  417. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  418. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  419. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  420. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  422. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  423. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  424. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  432. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  433. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  435. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  436. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  438. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  439. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  440. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  441. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  442. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  443. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  444. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  447. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  449. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  451. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  452. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  453. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  454. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  455. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  457. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  458. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  459. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  460. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  461. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  462. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  463. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  465. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  466. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  469. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  470. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  471. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  472. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  473. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  475. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  476. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  477. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  478. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  479. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  480. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  481. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  484. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  485. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  486. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  487. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  488. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  489. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  490. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  491. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  492. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  493. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  498. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  499. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  500. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  507. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  508. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  509. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  510. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  511. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -16,7 +16,7 @@ import { OS, isMacintosh } from '../../../base/common/platform.js';
16
16
  import { ltrim } from '../../../base/common/strings.js';
17
17
  import './media/quickInput.css.js';
18
18
  import { localizeWithPath } from '../../../nls.js';
19
- import { getIconClass } from './quickInputUtils.js';
19
+ import { quickInputButtonToAction } from './quickInputUtils.js';
20
20
  import { Lazy } from '../../../base/common/lazy.js';
21
21
  import { URI } from '../../../base/common/uri.js';
22
22
  import { isDark } from '../../theme/common/theme.js';
@@ -122,8 +122,9 @@ class ListElement {
122
122
  }
123
123
  class ListElementRenderer {
124
124
  static { this.ID = 'listelement'; }
125
- constructor(themeService) {
125
+ constructor(themeService, hoverDelegate) {
126
126
  this.themeService = themeService;
127
+ this.hoverDelegate = hoverDelegate;
127
128
  }
128
129
  get templateId() {
129
130
  return ListElementRenderer.ID;
@@ -149,17 +150,23 @@ class ListElementRenderer {
149
150
  const row2 = append(rows, $('.quick-input-list-row'));
150
151
  data.label = ( new IconLabel(
151
152
  row1,
152
- { supportHighlights: true, supportDescriptionHighlights: true, supportIcons: true }
153
+ { supportHighlights: true, supportDescriptionHighlights: true, supportIcons: true, hoverDelegate: this.hoverDelegate }
153
154
  ));
154
155
  data.toDisposeTemplate.push(data.label);
155
156
  data.icon = prepend(data.label.element, $('.quick-input-list-icon'));
156
157
  const keybindingContainer = append(row1, $('.quick-input-list-entry-keybinding'));
157
158
  data.keybinding = ( new KeybindingLabel(keybindingContainer, OS));
158
159
  const detailContainer = append(row2, $('.quick-input-list-label-meta'));
159
- data.detail = ( new IconLabel(detailContainer, { supportHighlights: true, supportIcons: true }));
160
+ data.detail = ( new IconLabel(
161
+ detailContainer,
162
+ { supportHighlights: true, supportIcons: true, hoverDelegate: this.hoverDelegate }
163
+ ));
160
164
  data.toDisposeTemplate.push(data.detail);
161
165
  data.separator = append(data.entry, $('.quick-input-list-separator'));
162
- data.actionBar = ( new ActionBar(data.entry));
166
+ data.actionBar = ( new ActionBar(
167
+ data.entry,
168
+ this.hoverDelegate ? { hoverDelegate: this.hoverDelegate } : undefined
169
+ ));
163
170
  data.actionBar.domNode.classList.add('quick-input-list-entry-action-bar');
164
171
  data.toDisposeTemplate.push(data.actionBar);
165
172
  return data;
@@ -183,7 +190,7 @@ class ListElementRenderer {
183
190
  }
184
191
  const options = {
185
192
  matches: labelHighlights || [],
186
- descriptionTitle: element.saneDescription,
193
+ descriptionTitle: element.saneTooltip ? undefined : element.saneDescription,
187
194
  descriptionMatches: descriptionHighlights || [],
188
195
  labelEscapeNewLines: true
189
196
  };
@@ -202,7 +209,7 @@ class ListElementRenderer {
202
209
  data.detail.element.style.display = '';
203
210
  data.detail.setLabel(element.saneDetail, undefined, {
204
211
  matches: detailHighlights,
205
- title: element.saneDetail,
212
+ title: element.saneTooltip ? undefined : element.saneDetail,
206
213
  labelEscapeNewLines: true
207
214
  });
208
215
  }
@@ -219,30 +226,11 @@ class ListElementRenderer {
219
226
  data.entry.classList.toggle('quick-input-list-separator-border', !!element.separator);
220
227
  const buttons = mainItem.buttons;
221
228
  if (buttons && buttons.length) {
222
- data.actionBar.push(( buttons.map((button, index) => {
223
- let cssClasses = button.iconClass || (button.iconPath ? getIconClass(button.iconPath) : undefined);
224
- if (button.alwaysVisible) {
225
- cssClasses = cssClasses ? `${cssClasses} always-visible` : 'always-visible';
226
- }
227
- return {
228
- id: `id-${index}`,
229
- class: cssClasses,
230
- enabled: true,
231
- label: '',
232
- tooltip: button.tooltip || '',
233
- run: () => {
234
- mainItem.type !== 'separator'
235
- ? element.fireButtonTriggered({
236
- button,
237
- item: mainItem
238
- })
239
- : element.fireSeparatorButtonTriggered({
240
- button,
241
- separator: mainItem
242
- });
243
- }
244
- };
245
- })), { icon: true, label: false });
229
+ data.actionBar.push(( buttons.map(
230
+ (button, index) => quickInputButtonToAction(button, `id-${index}`, () => mainItem.type !== 'separator'
231
+ ? element.fireButtonTriggered({ button, item: mainItem })
232
+ : element.fireSeparatorButtonTriggered({ button, separator: mainItem }))
233
+ )), { icon: true, label: false });
246
234
  data.entry.classList.add('has-actions');
247
235
  }
248
236
  else {
@@ -316,7 +304,7 @@ class QuickInputList {
316
304
  this.container = append(this.parent, $('.quick-input-list'));
317
305
  const delegate = ( new ListElementDelegate());
318
306
  const accessibilityProvider = ( new QuickInputAccessibilityProvider());
319
- this.list = options.createList('QuickInput', this.container, delegate, [( new ListElementRenderer(themeService))], {
307
+ this.list = options.createList('QuickInput', this.container, delegate, [( new ListElementRenderer(themeService, options.hoverDelegate))], {
320
308
  identityProvider: {
321
309
  getId: element => {
322
310
  return element.item?.id
@@ -380,39 +368,37 @@ class QuickInputList {
380
368
  this.list.setSelection([e.index]);
381
369
  }
382
370
  }));
383
- if (options.hoverDelegate) {
384
- const delayer = ( new ThrottledDelayer(options.hoverDelegate.delay));
385
- this.disposables.push(this.list.onMouseOver(async (e) => {
386
- if (e.browserEvent.target instanceof HTMLAnchorElement) {
387
- delayer.cancel();
388
- return;
389
- }
390
- if (
391
- !(e.browserEvent.relatedTarget instanceof HTMLAnchorElement) &&
392
- isAncestor(e.browserEvent.relatedTarget, e.element?.element)) {
393
- return;
394
- }
395
- try {
396
- await delayer.trigger(async () => {
397
- if (e.element) {
398
- this.showHover(e.element);
399
- }
400
- });
401
- }
402
- catch (e) {
403
- if (!isCancellationError(e)) {
404
- throw e;
371
+ const delayer = ( new ThrottledDelayer(options.hoverDelegate.delay));
372
+ this.disposables.push(this.list.onMouseOver(async (e) => {
373
+ if (e.browserEvent.target instanceof HTMLAnchorElement) {
374
+ delayer.cancel();
375
+ return;
376
+ }
377
+ if (
378
+ !(e.browserEvent.relatedTarget instanceof HTMLAnchorElement) &&
379
+ isAncestor(e.browserEvent.relatedTarget, e.element?.element)) {
380
+ return;
381
+ }
382
+ try {
383
+ await delayer.trigger(async () => {
384
+ if (e.element) {
385
+ this.showHover(e.element);
405
386
  }
387
+ });
388
+ }
389
+ catch (e) {
390
+ if (!isCancellationError(e)) {
391
+ throw e;
406
392
  }
407
- }));
408
- this.disposables.push(this.list.onMouseOut(e => {
409
- if (isAncestor(e.browserEvent.relatedTarget, e.element?.element)) {
410
- return;
411
- }
412
- delayer.cancel();
413
- }));
414
- this.disposables.push(delayer);
415
- }
393
+ }
394
+ }));
395
+ this.disposables.push(this.list.onMouseOut(e => {
396
+ if (isAncestor(e.browserEvent.relatedTarget, e.element?.element)) {
397
+ return;
398
+ }
399
+ delayer.cancel();
400
+ }));
401
+ this.disposables.push(delayer);
416
402
  this.disposables.push(this._listElementChecked.event(_ => this.fireCheckedEvents()));
417
403
  this.disposables.push(this._onChangedAllVisibleChecked, this._onChangedCheckedCount, this._onChangedVisibleCount, this._onChangedCheckedElements, this._onButtonTriggered, this._onSeparatorButtonTriggered, this._onLeave, this._onKeyDown);
418
404
  }
@@ -627,9 +613,6 @@ class QuickInputList {
627
613
  this.list.domFocus();
628
614
  }
629
615
  showHover(element) {
630
- if (this.options.hoverDelegate === undefined) {
631
- return;
632
- }
633
616
  if (this._lastHover && !this._lastHover.isDisposed) {
634
617
  this.options.hoverDelegate.onDidHideHover?.();
635
618
  this._lastHover?.dispose();
@@ -10,7 +10,10 @@ import { QuickAccessController } from './quickAccess.js';
10
10
  import { defaultInputBoxStyles, defaultToggleStyles, defaultCountBadgeStyles, defaultButtonStyles, defaultProgressBarStyles, defaultKeybindingLabelStyles, getListStyles } from '../../theme/browser/defaultStyles.js';
11
11
  import { asCssVariable, quickInputBackground, quickInputForeground, quickInputTitleBackground, widgetBorder, widgetShadow, quickInputListFocusBackground, quickInputListFocusForeground, quickInputListFocusIconForeground, activeContrastBorder, pickerGroupBorder, pickerGroupForeground } from '../../theme/common/colorRegistry.js';
12
12
  import { Themable, IThemeService } from '../../theme/common/themeService.js';
13
+ import { QuickInputHoverDelegate } from './quickInput.js';
13
14
  import { QuickInputController } from './quickInputController.js';
15
+ import { IConfigurationService } from '../../configuration/common/configuration.js';
16
+ import { IHoverService } from '../../hover/browser/hover.js';
14
17
  let QuickInputService = class QuickInputService extends Themable {
15
18
  get backButton() { return this.controller.backButton; }
16
19
  get controller() {
@@ -26,11 +29,13 @@ let QuickInputService = class QuickInputService extends Themable {
26
29
  }
27
30
  return this._quickAccess;
28
31
  }
29
- constructor(instantiationService, contextKeyService, themeService, layoutService) {
32
+ constructor(instantiationService, contextKeyService, themeService, layoutService, configurationService, hoverService) {
30
33
  super(themeService);
31
34
  this.instantiationService = instantiationService;
32
35
  this.contextKeyService = contextKeyService;
33
36
  this.layoutService = layoutService;
37
+ this.configurationService = configurationService;
38
+ this.hoverService = hoverService;
34
39
  this._onShow = this._register(( new Emitter()));
35
40
  this.onShow = this._onShow.event;
36
41
  this._onHide = this._register(( new Emitter()));
@@ -52,7 +57,8 @@ let QuickInputService = class QuickInputService extends Themable {
52
57
  },
53
58
  returnFocus: () => host.focus(),
54
59
  createList: (user, container, delegate, renderers, options) => this.instantiationService.createInstance(WorkbenchList, user, container, delegate, renderers, options),
55
- styles: this.computeStyles()
60
+ styles: this.computeStyles(),
61
+ hoverDelegate: ( new QuickInputHoverDelegate(this.configurationService, this.hoverService))
56
62
  };
57
63
  const controller = this._register(( new QuickInputController({
58
64
  ...defaultOptions,
@@ -173,6 +179,8 @@ QuickInputService = ( __decorate([
173
179
  ( __param(0, IInstantiationService)),
174
180
  ( __param(1, IContextKeyService)),
175
181
  ( __param(2, IThemeService)),
176
- ( __param(3, ILayoutService))
182
+ ( __param(3, ILayoutService)),
183
+ ( __param(4, IConfigurationService)),
184
+ ( __param(5, IHoverService))
177
185
  ], QuickInputService));
178
186
  export { QuickInputService };
@@ -1,4 +1,4 @@
1
- import { createCSSRule, asCSSUrl, reset, $, EventType, isEventLike, EventHelper } from '../../../base/browser/dom.js';
1
+ import { reset, $, EventType, createCSSRule, asCSSUrl, isEventLike, EventHelper } from '../../../base/browser/dom.js';
2
2
  import { DomEmitter } from '../../../base/browser/event.js';
3
3
  import { Event } from '../../../base/common/event.js';
4
4
  import { StandardKeyboardEvent } from '../../../base/browser/keyboardEvent.js';
@@ -27,6 +27,20 @@ function getIconClass(iconPath) {
27
27
  }
28
28
  return iconClass;
29
29
  }
30
+ function quickInputButtonToAction(button, id, run) {
31
+ let cssClasses = button.iconClass || getIconClass(button.iconPath);
32
+ if (button.alwaysVisible) {
33
+ cssClasses = cssClasses ? `${cssClasses} always-visible` : 'always-visible';
34
+ }
35
+ return {
36
+ id,
37
+ label: '',
38
+ tooltip: button.tooltip || '',
39
+ class: cssClasses,
40
+ enabled: true,
41
+ run
42
+ };
43
+ }
30
44
  function renderQuickInputDescription(description, container, actionHandler) {
31
45
  reset(container);
32
46
  const parsed = parseLinkedText(description);
@@ -69,4 +83,4 @@ function renderQuickInputDescription(description, container, actionHandler) {
69
83
  }
70
84
  }
71
85
  }
72
- export { getIconClass, renderQuickInputDescription };
86
+ export { quickInputButtonToAction, renderQuickInputDescription };
@@ -77,10 +77,6 @@ interface IPickOptions<T extends IQuickPickItem> {
77
77
  * an optional flag to filter the picks based on label. Defaults to true.
78
78
  */
79
79
  matchOnLabel?: boolean;
80
- /**
81
- * an option flag to control whether focus is always automatically brought to a list item. Defaults to true.
82
- */
83
- autoFocusOnList?: boolean;
84
80
  /**
85
81
  * an optional flag to not close the picker on focus lost
86
82
  */
@@ -166,31 +162,81 @@ declare enum QuickInputHideReason {
166
162
  interface IQuickInputHideEvent {
167
163
  reason: QuickInputHideReason;
168
164
  }
165
+ /**
166
+ * Represents a quick input control that allows users to make selections or provide input quickly.
167
+ */
169
168
  interface IQuickInput extends IDisposable {
169
+ /**
170
+ * An event that is fired when the quick input is hidden.
171
+ */
170
172
  readonly onDidHide: Event<IQuickInputHideEvent>;
173
+ /**
174
+ * An event that is fired when the quick input is disposed.
175
+ */
171
176
  readonly onDispose: Event<void>;
177
+ /**
178
+ * The title of the quick input.
179
+ */
172
180
  title: string | undefined;
181
+ /**
182
+ * The description of the quick input. This is rendered right below the input box.
183
+ */
173
184
  description: string | undefined;
174
185
  /**
175
- * Should be an HTMLElement.
176
- * @deprecated Use an IQuickWidget instead
186
+ * An HTML widget rendered below the input.
187
+ * @deprecated Use an IQuickWidget instead.
177
188
  */
178
189
  widget: any | undefined;
190
+ /**
191
+ * The current step of the quick input rendered in the titlebar.
192
+ */
179
193
  step: number | undefined;
194
+ /**
195
+ * The total number of steps in the quick input rendered in the titlebar.
196
+ */
180
197
  totalSteps: number | undefined;
198
+ /**
199
+ * The buttons displayed in the quick input titlebar.
200
+ */
181
201
  buttons: ReadonlyArray<IQuickInputButton>;
202
+ /**
203
+ * An event that is fired when a button in the quick input is triggered.
204
+ */
182
205
  readonly onDidTriggerButton: Event<IQuickInputButton>;
206
+ /**
207
+ * Indicates whether the input is enabled.
208
+ */
183
209
  enabled: boolean;
210
+ /**
211
+ * The context key associated with the quick input.
212
+ */
184
213
  contextKey: string | undefined;
214
+ /**
215
+ * Indicates whether the quick input is busy. Renders a progress bar if true.
216
+ */
185
217
  busy: boolean;
218
+ /**
219
+ * Indicates whether the quick input should be hidden when it loses focus.
220
+ */
186
221
  ignoreFocusOut: boolean;
222
+ /**
223
+ * Shows the quick input.
224
+ */
187
225
  show(): void;
226
+ /**
227
+ * Hides the quick input.
228
+ */
188
229
  hide(): void;
230
+ /**
231
+ * Notifies that the quick input has been hidden.
232
+ * @param reason The reason why the quick input was hidden.
233
+ */
189
234
  didHide(reason?: QuickInputHideReason): void;
190
235
  }
191
236
  interface IQuickWidget extends IQuickInput {
192
237
  /**
193
238
  * Should be an HTMLElement (TODO: move this entire file into browser)
239
+ * @override
194
240
  */
195
241
  widget: any | undefined;
196
242
  }
@@ -209,86 +255,206 @@ interface IQuickPickDidAcceptEvent {
209
255
  */
210
256
  inBackground: boolean;
211
257
  }
258
+ /**
259
+ * Represents the activation behavior for items in a quick input. This means which item will be
260
+ * "active" (aka focused).
261
+ */
212
262
  declare enum ItemActivation {
263
+ /**
264
+ * No item will be active.
265
+ */
213
266
  NONE = 0,
267
+ /**
268
+ * First item will be active.
269
+ */
214
270
  FIRST = 1,
271
+ /**
272
+ * Second item will be active.
273
+ */
215
274
  SECOND = 2,
275
+ /**
276
+ * Last item will be active.
277
+ */
216
278
  LAST = 3
217
279
  }
280
+ /**
281
+ * Represents a quick pick control that allows the user to select an item from a list of options.
282
+ */
218
283
  interface IQuickPick<T extends IQuickPickItem> extends IQuickInput {
284
+ /**
285
+ * The current value of the quick pick input.
286
+ */
219
287
  value: string;
220
288
  /**
221
- * A method that allows to massage the value used
222
- * for filtering, e.g, to remove certain parts.
289
+ * A method that allows to massage the value used for filtering, e.g, to remove certain parts.
290
+ * @param value The value to be filtered.
291
+ * @returns The filtered value.
223
292
  */
224
293
  filterValue: (value: string) => string;
294
+ /**
295
+ * The ARIA label for the quick pick input.
296
+ */
225
297
  ariaLabel: string | undefined;
298
+ /**
299
+ * The placeholder text for the quick pick input.
300
+ */
226
301
  placeholder: string | undefined;
302
+ /**
303
+ * An event that is fired when the value of the quick pick input changes.
304
+ */
227
305
  readonly onDidChangeValue: Event<string>;
306
+ /**
307
+ * An event that is fired when the quick pick is about to accept the selected item.
308
+ */
228
309
  readonly onWillAccept: Event<IQuickPickWillAcceptEvent>;
310
+ /**
311
+ * An event that is fired when the quick pick has accepted the selected item.
312
+ */
229
313
  readonly onDidAccept: Event<IQuickPickDidAcceptEvent>;
230
314
  /**
231
- * If enabled, will fire the `onDidAccept` event when
232
- * pressing the arrow-right key with the idea of accepting
233
- * the selected item without closing the picker.
315
+ * If enabled, the `onDidAccept` event will be fired when pressing the arrow-right key to accept the selected item without closing the picker.
234
316
  */
235
317
  canAcceptInBackground: boolean;
318
+ /**
319
+ * The OK button state. It can be a boolean value or the string 'default'.
320
+ */
236
321
  ok: boolean | 'default';
322
+ /**
323
+ * An event that is fired when the custom button is triggered. The custom button is a button with text rendered to the right of the input.
324
+ */
237
325
  readonly onDidCustom: Event<void>;
326
+ /**
327
+ * Whether to show the custom button. The custom button is a button with text rendered to the right of the input.
328
+ */
238
329
  customButton: boolean;
330
+ /**
331
+ * The label for the custom button. The custom button is a button with text rendered to the right of the input.
332
+ */
239
333
  customLabel: string | undefined;
334
+ /**
335
+ * The hover text for the custom button. The custom button is a button with text rendered to the right of the input.
336
+ */
240
337
  customHover: string | undefined;
338
+ /**
339
+ * An event that is fired when an item button is triggered.
340
+ */
241
341
  readonly onDidTriggerItemButton: Event<IQuickPickItemButtonEvent<T>>;
342
+ /**
343
+ * An event that is fired when a separator button is triggered.
344
+ */
242
345
  readonly onDidTriggerSeparatorButton: Event<IQuickPickSeparatorButtonEvent>;
346
+ /**
347
+ * The items to be displayed in the quick pick.
348
+ */
243
349
  items: ReadonlyArray<T | IQuickPickSeparator>;
244
- scrollTop: number;
350
+ /**
351
+ * Whether multiple items can be selected. If so, checkboxes will be rendered.
352
+ */
245
353
  canSelectMany: boolean;
354
+ /**
355
+ * Whether to match on the description of the items.
356
+ */
246
357
  matchOnDescription: boolean;
358
+ /**
359
+ * Whether to match on the detail of the items.
360
+ */
247
361
  matchOnDetail: boolean;
362
+ /**
363
+ * Whether to match on the label of the items.
364
+ */
248
365
  matchOnLabel: boolean;
249
366
  /**
250
- * The mode to filter label with. Fuzzy will use fuzzy searching and
251
- * contiguous will make filter entries that do not contain the exact string
252
- * (including whitespace). This defaults to `'fuzzy'`.
367
+ * The mode to filter the label with. It can be 'fuzzy' or 'contiguous'. Defaults to 'fuzzy'.
253
368
  */
254
369
  matchOnLabelMode: 'fuzzy' | 'contiguous';
370
+ /**
371
+ * Whether to sort the items by label.
372
+ */
255
373
  sortByLabel: boolean;
256
- autoFocusOnList: boolean;
374
+ /**
375
+ * Whether to keep the scroll position when the quick pick input is updated.
376
+ */
257
377
  keepScrollPosition: boolean;
378
+ /**
379
+ * The configuration for quick navigation.
380
+ */
258
381
  quickNavigate: IQuickNavigateConfiguration | undefined;
382
+ /**
383
+ * The currently active items.
384
+ */
259
385
  activeItems: ReadonlyArray<T>;
386
+ /**
387
+ * An event that is fired when the active items change.
388
+ */
260
389
  readonly onDidChangeActive: Event<T[]>;
261
390
  /**
262
- * Allows to control which entry should be activated by default.
391
+ * The item activation behavior for the next time `items` is set. Item activation means which
392
+ * item is "active" (aka focused) when the quick pick is opened or when `items` is set.
263
393
  */
264
394
  itemActivation: ItemActivation;
395
+ /**
396
+ * The currently selected items.
397
+ */
265
398
  selectedItems: ReadonlyArray<T>;
399
+ /**
400
+ * An event that is fired when the selected items change.
401
+ */
266
402
  readonly onDidChangeSelection: Event<T[]>;
403
+ /**
404
+ * The key modifiers.
405
+ */
267
406
  readonly keyMods: IKeyMods;
407
+ /**
408
+ * The selection range for the value in the input.
409
+ */
268
410
  valueSelection: Readonly<[number, number]> | undefined;
411
+ /**
412
+ * The validation message for the quick pick. This is rendered below the input.
413
+ */
269
414
  validationMessage: string | undefined;
415
+ /**
416
+ * The severity of the validation message.
417
+ */
270
418
  severity: Severity;
419
+ /**
420
+ * Checks if the quick pick input has focus.
421
+ * @returns `true` if the quick pick input has focus, `false` otherwise.
422
+ */
271
423
  inputHasFocus(): boolean;
424
+ /**
425
+ * Focuses on the quick pick input.
426
+ */
272
427
  focusOnInput(): void;
273
428
  /**
274
- * Hides the input box from the picker UI. This is typically used
275
- * in combination with quick-navigation where no search UI should
276
- * be presented.
429
+ * Hides the input box from the picker UI. This is typically used in combination with quick-navigation where no search UI should be presented.
277
430
  */
278
431
  hideInput: boolean;
279
432
  /**
280
- * Allows to control if the count for the items should be shown
433
+ * Controls whether the count for the items should be shown.
281
434
  */
282
435
  hideCountBadge: boolean;
436
+ /**
437
+ * Whether to hide the "Check All" checkbox.
438
+ */
283
439
  hideCheckAll: boolean;
284
440
  /**
285
- * A set of `Toggle` objects to add to the input box.
441
+ * The toggle buttons to be added to the input box.
286
442
  */
287
443
  toggles: IQuickInputToggle[] | undefined;
288
444
  }
445
+ /**
446
+ * Represents a toggle for quick input.
447
+ */
289
448
  interface IQuickInputToggle {
449
+ /**
450
+ * Event that is fired when the toggle value changes.
451
+ * The boolean value indicates whether the change was triggered via keyboard.
452
+ */
290
453
  onChange: Event<boolean>;
291
454
  }
455
+ /**
456
+ * Represents an input box in a quick input dialog.
457
+ */
292
458
  interface IInputBox extends IQuickInput {
293
459
  /**
294
460
  * Value shown in the input box.
@@ -328,30 +494,68 @@ interface IInputBox extends IQuickInput {
328
494
  */
329
495
  severity: Severity;
330
496
  }
497
+ /**
498
+ * Represents a button in the quick input UI.
499
+ */
331
500
  interface IQuickInputButton {
332
- /** iconPath or iconClass required */
501
+ /**
502
+ * The path to the icon for the button.
503
+ * Either `iconPath` or `iconClass` is required.
504
+ */
333
505
  iconPath?: {
334
506
  dark: URI;
335
507
  light?: URI;
336
508
  };
337
- /** iconPath or iconClass required */
509
+ /**
510
+ * The CSS class for the icon of the button.
511
+ * Either `iconPath` or `iconClass` is required.
512
+ */
338
513
  iconClass?: string;
514
+ /**
515
+ * The tooltip text for the button.
516
+ */
339
517
  tooltip?: string;
340
518
  /**
341
- * Whether to always show the button. By default buttons
342
- * are only visible when hovering over them with the mouse
519
+ * Whether to always show the button.
520
+ * By default, buttons are only visible when hovering over them with the mouse.
343
521
  */
344
522
  alwaysVisible?: boolean;
345
523
  }
524
+ /**
525
+ * Represents an event that occurs when a button associated with a quick pick item is clicked.
526
+ * @template T - The type of the quick pick item.
527
+ */
346
528
  interface IQuickPickItemButtonEvent<T extends IQuickPickItem> {
529
+ /**
530
+ * The button that was clicked.
531
+ */
347
532
  button: IQuickInputButton;
533
+ /**
534
+ * The quick pick item associated with the button.
535
+ */
348
536
  item: T;
349
537
  }
538
+ /**
539
+ * Represents an event that occurs when a separator button is clicked in a quick pick.
540
+ */
350
541
  interface IQuickPickSeparatorButtonEvent {
542
+ /**
543
+ * The button that was clicked.
544
+ */
351
545
  button: IQuickInputButton;
546
+ /**
547
+ * The separator associated with the button.
548
+ */
352
549
  separator: IQuickPickSeparator;
353
550
  }
551
+ /**
552
+ * Represents a context for a button associated with a quick pick item.
553
+ * @template T - The type of the quick pick item.
554
+ */
354
555
  interface IQuickPickItemButtonContext<T extends IQuickPickItem> extends IQuickPickItemButtonEvent<T> {
556
+ /**
557
+ * Removes the associated item from the quick pick.
558
+ */
355
559
  removeItem(): void;
356
560
  }
357
561
  type QuickPickInput<T = IQuickPickItem> = T | IQuickPickSeparator;
@@ -61,6 +61,7 @@ interface TunnelInformation {
61
61
  elevation: boolean;
62
62
  public?: boolean;
63
63
  privacyOptions: TunnelPrivacy[];
64
+ protocol: boolean;
64
65
  };
65
66
  }
66
67
  interface ResolverResult {
@@ -106,6 +106,7 @@ function removePropertiesWithPossibleUserInfo(property) {
106
106
  const userDataRegexes = [
107
107
  { label: 'Google API Key', regex: /AIza[A-Za-z0-9_\\\-]{35}/ },
108
108
  { label: 'Slack Token', regex: /xox[pbar]\-[A-Za-z0-9]/ },
109
+ { label: 'GitHub Token', regex: /(gh[psuro]_[a-zA-Z0-9]{36}|github_pat_[a-zA-Z0-9]{22}_[a-zA-Z0-9]{59})/ },
109
110
  { label: 'Generic Secret', regex: /(key|token|sig|secret|signature|password|passwd|pwd|android:value)[^a-zA-Z0-9]/i },
110
111
  { label: 'Email', regex: /@[a-zA-Z0-9-]+\.[a-zA-Z0-9-]+/ }
111
112
  ];