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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (511) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +3 -19
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  376. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  377. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  386. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  387. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  389. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  411. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  412. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  416. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  417. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  418. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  419. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  420. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  422. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  423. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  424. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  432. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  433. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  435. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  436. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  438. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  439. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  440. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  441. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  442. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  443. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  444. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  447. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  449. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  451. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  452. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  453. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  454. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  455. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  457. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  458. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  459. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  460. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  461. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  462. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  463. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  465. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  466. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  469. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  470. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  471. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  472. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  473. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  475. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  476. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  477. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  478. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  479. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  480. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  481. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  484. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  485. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  486. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  487. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  488. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  489. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  490. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  491. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  492. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  493. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  497. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  498. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  499. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  500. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  507. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  508. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  509. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  510. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  511. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -24,9 +24,10 @@ class ChatRequestModel {
24
24
  get avatarIconUri() {
25
25
  return this.session.requesterAvatarIconUri;
26
26
  }
27
- constructor(session, message) {
27
+ constructor(session, message, variableData) {
28
28
  this.session = session;
29
29
  this.message = message;
30
+ this.variableData = variableData;
30
31
  this._id = 'request_' + ChatRequestModel.nextId++;
31
32
  }
32
33
  }
@@ -84,23 +85,7 @@ class Response {
84
85
  }
85
86
  this._updateRepr(quiet);
86
87
  }
87
- else if (progress.kind === 'asyncContent') {
88
- const responsePosition = this._responseParts.push(progress) - 1;
89
- this._updateRepr(quiet);
90
- progress.resolvedContent?.then((content) => {
91
- if (typeof content === 'string') {
92
- this._responseParts[responsePosition] = { content: ( new MarkdownString(content)), kind: 'markdownContent' };
93
- }
94
- else if (isMarkdownString(content)) {
95
- this._responseParts[responsePosition] = { content, kind: 'markdownContent' };
96
- }
97
- else {
98
- this._responseParts[responsePosition] = content;
99
- }
100
- this._updateRepr(quiet);
101
- });
102
- }
103
- else if (progress.kind === 'treeData' || progress.kind === 'inlineReference' || progress.kind === 'markdownVuln') {
88
+ else if (progress.kind === 'treeData' || progress.kind === 'inlineReference' || progress.kind === 'markdownVuln' || progress.kind === 'progressMessage') {
104
89
  this._responseParts.push(progress);
105
90
  this._updateRepr(quiet);
106
91
  }
@@ -113,9 +98,6 @@ class Response {
113
98
  else if (part.kind === 'inlineReference') {
114
99
  return basename('uri' in part.inlineReference ? part.inlineReference.uri : part.inlineReference);
115
100
  }
116
- else if (part.kind === 'asyncContent') {
117
- return part.content;
118
- }
119
101
  else {
120
102
  return part.content.value;
121
103
  }
@@ -172,9 +154,11 @@ class ChatResponseModel extends Disposable {
172
154
  get progressMessages() {
173
155
  return this._progressMessages;
174
156
  }
175
- constructor(_response, session, agent, requestId, _isComplete = false, _isCanceled = false, _vote, _errorDetails, followups) {
157
+ constructor(_response, session, _agent, _slashCommand, requestId, _isComplete = false, _isCanceled = false, _vote, _errorDetails, followups) {
176
158
  super();
177
159
  this.session = session;
160
+ this._agent = _agent;
161
+ this._slashCommand = _slashCommand;
178
162
  this.requestId = requestId;
179
163
  this._isComplete = _isComplete;
180
164
  this._isCanceled = _isCanceled;
@@ -184,7 +168,6 @@ class ChatResponseModel extends Disposable {
184
168
  this.onDidChange = this._onDidChange.event;
185
169
  this._contentReferences = [];
186
170
  this._progressMessages = [];
187
- this._agent = agent;
188
171
  this._followups = followups ? [...followups] : undefined;
189
172
  this._response = ( new Response(_response));
190
173
  this._register(this._response.onDidChangeValue(() => this._onDidChange.fire()));
@@ -193,7 +176,7 @@ class ChatResponseModel extends Disposable {
193
176
  updateContent(responsePart, quiet) {
194
177
  this._response.updateContent(responsePart, quiet);
195
178
  }
196
- applyProgress(progress) {
179
+ applyReference(progress) {
197
180
  if (progress.kind === 'usedContext') {
198
181
  this._usedContext = progress;
199
182
  }
@@ -201,10 +184,6 @@ class ChatResponseModel extends Disposable {
201
184
  this._contentReferences.push(progress);
202
185
  this._onDidChange.fire();
203
186
  }
204
- else if (progress.kind === 'progressMessage') {
205
- this._progressMessages.push(progress);
206
- this._onDidChange.fire();
207
- }
208
187
  }
209
188
  setAgent(agent, slashCommand) {
210
189
  this._agent = agent;
@@ -334,16 +313,17 @@ let ChatModel = class ChatModel extends Disposable {
334
313
  const parsedRequest = typeof raw.message === 'string'
335
314
  ? this.getParsedRequestFromString(raw.message)
336
315
  : reviveParsedChatRequest(raw.message);
337
- const request = ( new ChatRequestModel(this, parsedRequest));
316
+ const variableData = raw.variableData ?? { message: parsedRequest.text, variables: {} };
317
+ const request = ( new ChatRequestModel(this, parsedRequest, variableData));
338
318
  if (raw.response || raw.responseErrorDetails) {
339
319
  const agent = (raw.agent && 'metadata' in raw.agent) ?
340
320
  revive(raw.agent) : undefined;
341
- request.response = ( new ChatResponseModel(raw.response ?? [( new MarkdownString(raw.response))], this, agent, request.id, true, raw.isCanceled, raw.vote, raw.responseErrorDetails, raw.followups));
321
+ request.response = ( new ChatResponseModel(raw.response ?? [( new MarkdownString(raw.response))], this, agent, raw.slashCommand, request.id, true, raw.isCanceled, raw.vote, raw.responseErrorDetails, raw.followups));
342
322
  if (raw.usedContext) {
343
- request.response.applyProgress(raw.usedContext);
323
+ request.response.applyReference(revive(raw.usedContext));
344
324
  }
345
325
  if (raw.contentReferences) {
346
- raw.contentReferences.forEach(r => request.response.applyProgress(r));
326
+ raw.contentReferences.forEach(r => request.response.applyReference(revive(r)));
347
327
  }
348
328
  }
349
329
  return request;
@@ -398,12 +378,12 @@ let ChatModel = class ChatModel extends Disposable {
398
378
  getRequests() {
399
379
  return this._requests;
400
380
  }
401
- addRequest(message, chatAgent) {
381
+ addRequest(message, variableData, chatAgent, slashCommand) {
402
382
  if (!this._session) {
403
383
  throw new Error('addRequest: No session');
404
384
  }
405
- const request = ( new ChatRequestModel(this, message));
406
- request.response = ( new ChatResponseModel([], this, chatAgent, request.id));
385
+ const request = ( new ChatRequestModel(this, message, variableData));
386
+ request.response = ( new ChatResponseModel([], this, chatAgent, slashCommand, request.id));
407
387
  this._requests.push(request);
408
388
  this._onDidChange.fire({ kind: 'addRequest', request });
409
389
  return request;
@@ -413,7 +393,7 @@ let ChatModel = class ChatModel extends Disposable {
413
393
  throw new Error('acceptResponseProgress: No session');
414
394
  }
415
395
  if (!request.response) {
416
- request.response = ( new ChatResponseModel([], this, undefined, request.id));
396
+ request.response = ( new ChatResponseModel([], this, undefined, undefined, request.id));
417
397
  }
418
398
  if (request.response.isComplete) {
419
399
  throw new Error('acceptResponseProgress: Adding progress to a completed response');
@@ -421,11 +401,11 @@ let ChatModel = class ChatModel extends Disposable {
421
401
  if (progress.kind === 'vulnerability') {
422
402
  request.response.updateContent({ kind: 'markdownVuln', content: { value: progress.content }, vulnerabilities: progress.vulnerabilities }, quiet);
423
403
  }
424
- else if (progress.kind === 'content' || progress.kind === 'markdownContent' || progress.kind === 'asyncContent' || progress.kind === 'treeData' || progress.kind === 'inlineReference' || progress.kind === 'markdownVuln') {
404
+ else if (progress.kind === 'content' || progress.kind === 'markdownContent' || progress.kind === 'treeData' || progress.kind === 'inlineReference' || progress.kind === 'markdownVuln' || progress.kind === 'progressMessage') {
425
405
  request.response.updateContent(progress, quiet);
426
406
  }
427
- else if (progress.kind === 'usedContext' || progress.kind === 'reference' || progress.kind === 'progressMessage') {
428
- request.response.applyProgress(progress);
407
+ else if (progress.kind === 'usedContext' || progress.kind === 'reference') {
408
+ request.response.applyReference(progress);
429
409
  }
430
410
  else if (progress.kind === 'agentDetection') {
431
411
  const agent = this.chatAgentService.getAgent(progress.agentName);
@@ -456,7 +436,7 @@ let ChatModel = class ChatModel extends Disposable {
456
436
  throw new Error('completeResponse: No session');
457
437
  }
458
438
  if (!request.response) {
459
- request.response = ( new ChatResponseModel([], this, undefined, request.id));
439
+ request.response = ( new ChatResponseModel([], this, undefined, undefined, request.id));
460
440
  }
461
441
  request.response.setErrorDetails(rawResponse.errorDetails);
462
442
  }
@@ -493,6 +473,7 @@ let ChatModel = class ChatModel extends Disposable {
493
473
  requests: ( this._requests.map((r) => {
494
474
  return {
495
475
  message: r.message,
476
+ variableData: r.variableData,
496
477
  response: r.response ?
497
478
  ( r.response.response.value.map(item => {
498
479
  if (item.kind === 'treeData') {
@@ -501,9 +482,6 @@ let ChatModel = class ChatModel extends Disposable {
501
482
  else if (item.kind === 'markdownContent') {
502
483
  return item.content;
503
484
  }
504
- else if (item.kind === 'asyncContent') {
505
- return ( new MarkdownString(item.content));
506
- }
507
485
  else {
508
486
  return item;
509
487
  }
@@ -20,10 +20,10 @@ var InteractiveSessionVoteDirection;
20
20
  InteractiveSessionVoteDirection[InteractiveSessionVoteDirection["Down"] = 0] = "Down";
21
21
  InteractiveSessionVoteDirection[InteractiveSessionVoteDirection["Up"] = 1] = "Up";
22
22
  })(InteractiveSessionVoteDirection || (InteractiveSessionVoteDirection = {})));
23
- var InteractiveSessionCopyKind;
24
- ( (function(InteractiveSessionCopyKind) {
25
- InteractiveSessionCopyKind[InteractiveSessionCopyKind["Action"] = 1] = "Action";
26
- InteractiveSessionCopyKind[InteractiveSessionCopyKind["Toolbar"] = 2] = "Toolbar";
27
- })(InteractiveSessionCopyKind || (InteractiveSessionCopyKind = {})));
23
+ var ChatAgentCopyKind;
24
+ ( (function(ChatAgentCopyKind) {
25
+ ChatAgentCopyKind[ChatAgentCopyKind["Action"] = 1] = "Action";
26
+ ChatAgentCopyKind[ChatAgentCopyKind["Toolbar"] = 2] = "Toolbar";
27
+ })(ChatAgentCopyKind || (ChatAgentCopyKind = {})));
28
28
  const IChatService = ( createDecorator('IChatService'));
29
- export { IChatService, InteractiveSessionCopyKind, InteractiveSessionVoteDirection, isIDocumentContext, isIUsedContext };
29
+ export { ChatAgentCopyKind, IChatService, InteractiveSessionVoteDirection, isIDocumentContext, isIUsedContext };
@@ -10,7 +10,7 @@ import { IKeybindingService } from '../../../../platform/keybinding/common/keybi
10
10
  import { Registry } from '../../../../platform/registry/common/platform.js';
11
11
  const createCodeActionsAutoSave = (description) => {
12
12
  return {
13
- type: ['string', 'boolean'],
13
+ type: 'string',
14
14
  enum: ['always', 'explicit', 'never', true, false],
15
15
  enumDescriptions: [
16
16
  ( localizeWithPath(
@@ -39,7 +39,7 @@ const createCodeActionsAutoSave = (description) => {
39
39
  'Never triggers Code Actions on save. This value will be deprecated in favor of "never".'
40
40
  ))
41
41
  ],
42
- default: true,
42
+ default: 'explicit',
43
43
  description: description
44
44
  };
45
45
  };
@@ -56,7 +56,7 @@ const codeActionsOnSaveSchema = {
56
56
  type: 'object',
57
57
  properties: codeActionsOnSaveDefaultProperties,
58
58
  additionalProperties: {
59
- type: ['string', 'boolean']
59
+ type: 'string'
60
60
  },
61
61
  },
62
62
  {
@@ -71,7 +71,7 @@ const codeActionsOnSaveSchema = {
71
71
  )),
72
72
  type: ['object', 'array'],
73
73
  additionalProperties: {
74
- type: ['string', 'boolean'],
74
+ type: 'string',
75
75
  enum: ['always', 'explicit', 'never', true, false],
76
76
  },
77
77
  default: {},
@@ -1,4 +1,4 @@
1
1
  import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
- var css = ".suggest-input-container{border-radius:2px;padding:2px 6px}.suggest-input-container .monaco-editor,.suggest-input-container .monaco-editor-background,.suggest-input-container .mtk1{color:inherit}.suggest-input-container .suggest-input-placeholder{margin-top:1px;overflow:hidden;pointer-events:none;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.suggest-input-container .monaco-editor,.suggest-input-container .monaco-editor .lines-content{background:none}";
2
+ var css = ".suggest-input-container{border-radius:2px;padding:2px 6px}.suggest-input-container .monaco-editor,.suggest-input-container .monaco-editor-background,.suggest-input-container .mtk1{color:inherit}.suggest-input-container .suggest-input-placeholder{margin-top:1px;overflow:hidden;pointer-events:none;position:absolute;text-overflow:ellipsis;white-space:nowrap;z-index:1}.suggest-input-container .monaco-editor,.suggest-input-container .monaco-editor .lines-content{background:none!important}";
3
3
  n(css,{});
4
4
  export { css, css as default };
@@ -1,5 +1,5 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { localizeWithPath } from '../../../../nls.js';
2
+ import { localize2WithPath, localizeWithPath } from '../../../../nls.js';
3
3
  import { isMacintosh } from '../../../../base/common/platform.js';
4
4
  import { Action2, registerAction2, MenuRegistry, MenuId } from '../../../../platform/actions/common/actions.js';
5
5
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
@@ -12,11 +12,11 @@ class ToggleMultiCursorModifierAction extends Action2 {
12
12
  constructor() {
13
13
  super({
14
14
  id: ToggleMultiCursorModifierAction.ID,
15
- title: { value: ( localizeWithPath(
15
+ title: ( localize2WithPath(
16
16
  'vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier',
17
17
  'toggleLocation',
18
- "Toggle Multi-Cursor Modifier"
19
- )), original: 'Toggle Multi-Cursor Modifier' },
18
+ 'Toggle Multi-Cursor Modifier'
19
+ )),
20
20
  f1: true
21
21
  });
22
22
  }
@@ -186,9 +186,6 @@ function canToggleWordWrap(codeEditorService, editor) {
186
186
  if (!model) {
187
187
  return false;
188
188
  }
189
- if (model.uri.scheme === 'output') {
190
- return false;
191
- }
192
189
  if (editor.getOption(61 )) {
193
190
  for (const diffEditor of codeEditorService.listDiffEditors()) {
194
191
  if (diffEditor.getOriginalEditor() === editor && !diffEditor.renderSideBySide) {
@@ -7,7 +7,7 @@ import { Emitter } from '../../../../base/common/event.js';
7
7
  import { ICommentService } from './commentService.js';
8
8
  import { StandardKeyboardEvent } from '../../../../base/browser/keyboardEvent.js';
9
9
  import { CommentNode } from './commentNode.js';
10
- import { MarkdownRenderer } from '../../../../editor/contrib/markdownRenderer/browser/markdownRenderer.js';
10
+ import { MarkdownRenderer } from '../../../../editor/browser/widget/markdownRenderer/browser/markdownRenderer.js';
11
11
  import { IOpenerService } from '../../../../platform/opener/common/opener.js';
12
12
  import { ILanguageService } from '../../../../editor/common/languages/language.js';
13
13
  let CommentThreadBody = class CommentThreadBody extends Disposable {
@@ -1,207 +1,104 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { localizeWithPath } from '../../../../nls.js';
3
- import { Registry } from '../../../../platform/registry/common/platform.js';
4
- import { Extensions } from '../../../../platform/configuration/common/configurationRegistry.js';
5
- import { ctxCommentEditorFocused } from './simpleCommentEditor.js';
6
- import { format } from '../../../../base/common/strings.js';
7
- import { IAccessibleViewService } from '../../accessibility/browser/accessibleView.js';
8
- import { AccessibilityHelpAction } from '../../accessibility/browser/accessibleViewActions.js';
9
- import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
10
- import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js';
11
2
  import { Disposable } from '../../../../base/common/lifecycle.js';
12
3
  import { ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js';
4
+ import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
5
+ import { IAccessibleViewService } from '../../accessibility/browser/accessibleView.js';
6
+ import { AccessibilityHelpAction } from '../../accessibility/browser/accessibleViewActions.js';
7
+ import { ctxCommentEditorFocused } from './simpleCommentEditor.js';
13
8
  import { CommentContextKeys } from '../common/commentContextKeys.js';
14
- import { ToggleTabFocusModeAction } from '../../../../editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js';
9
+ import { localizeWithPath } from '../../../../nls.js';
10
+ import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js';
11
+ import { format } from '../../../../base/common/strings.js';
15
12
  import { getActiveElement } from '../../../../base/browser/dom.js';
16
- ( Registry.as(Extensions.Configuration)).registerConfiguration({
17
- id: 'comments',
18
- order: 20,
19
- title: ( localizeWithPath(
20
- 'vs/workbench/contrib/comments/browser/comments.contribution',
21
- 'commentsConfigurationTitle',
22
- "Comments"
23
- )),
24
- type: 'object',
25
- properties: {
26
- 'comments.openPanel': {
27
- enum: ['neverOpen', 'openOnSessionStart', 'openOnSessionStartWithComments'],
28
- default: 'openOnSessionStartWithComments',
29
- description: ( localizeWithPath(
30
- 'vs/workbench/contrib/comments/browser/comments.contribution',
31
- 'openComments',
32
- "Controls when the comments panel should open."
33
- )),
34
- restricted: false,
35
- markdownDeprecationMessage: ( localizeWithPath(
36
- 'vs/workbench/contrib/comments/browser/comments.contribution',
37
- 'comments.openPanel.deprecated',
38
- "This setting is deprecated in favor of `comments.openView`."
39
- ))
40
- },
41
- 'comments.openView': {
42
- enum: ['never', 'file', 'firstFile', 'firstFileUnresolved'],
43
- enumDescriptions: [( localizeWithPath(
44
- 'vs/workbench/contrib/comments/browser/comments.contribution',
45
- 'comments.openView.never',
46
- "The comments view will never be opened."
47
- )), ( localizeWithPath(
48
- 'vs/workbench/contrib/comments/browser/comments.contribution',
49
- 'comments.openView.file',
50
- "The comments view will open when a file with comments is active."
51
- )), ( localizeWithPath(
52
- 'vs/workbench/contrib/comments/browser/comments.contribution',
53
- 'comments.openView.firstFile',
54
- "If the comments view has not been opened yet during this session it will open the first time during a session that a file with comments is active."
55
- )), ( localizeWithPath(
56
- 'vs/workbench/contrib/comments/browser/comments.contribution',
57
- 'comments.openView.firstFileUnresolved',
58
- "If the comments view has not been opened yet during this session and the comment is not resolved, it will open the first time during a session that a file with comments is active."
59
- ))],
60
- default: 'firstFile',
61
- description: ( localizeWithPath(
62
- 'vs/workbench/contrib/comments/browser/comments.contribution',
63
- 'comments.openView',
64
- "Controls when the comments view should open."
65
- )),
66
- restricted: false
67
- },
68
- 'comments.useRelativeTime': {
69
- type: 'boolean',
70
- default: true,
71
- description: ( localizeWithPath(
72
- 'vs/workbench/contrib/comments/browser/comments.contribution',
73
- 'useRelativeTime',
74
- "Determines if relative time will be used in comment timestamps (ex. '1 day ago')."
75
- ))
76
- },
77
- 'comments.visible': {
78
- type: 'boolean',
79
- default: true,
80
- description: ( localizeWithPath(
81
- 'vs/workbench/contrib/comments/browser/comments.contribution',
82
- 'comments.visible',
83
- "Controls the visibility of the comments bar and comment threads in editors that have commenting ranges and comments. Comments are still accessible via the Comments view and will cause commenting to be toggled on in the same way running the command \"Comments: Toggle Editor Commenting\" toggles comments."
84
- ))
85
- },
86
- 'comments.maxHeight': {
87
- type: 'boolean',
88
- default: true,
89
- description: ( localizeWithPath(
90
- 'vs/workbench/contrib/comments/browser/comments.contribution',
91
- 'comments.maxHeight',
92
- "Controls whether the comments widget scrolls or expands."
93
- ))
94
- },
95
- 'comments.collapseOnResolve': {
96
- type: 'boolean',
97
- default: true,
98
- description: ( localizeWithPath(
99
- 'vs/workbench/contrib/comments/browser/comments.contribution',
100
- 'collapseOnResolve',
101
- "Controls whether the comment thread should collapse when the thread is resolved."
102
- ))
103
- }
104
- }
105
- });
13
+ import { ToggleTabFocusModeAction } from '../../../../editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js';
106
14
  var CommentAccessibilityHelpNLS;
107
15
  ( (function(CommentAccessibilityHelpNLS) {
108
16
  CommentAccessibilityHelpNLS.intro = ( localizeWithPath(
109
- 'vs/workbench/contrib/comments/browser/comments.contribution',
17
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
110
18
  'intro',
111
19
  "The editor contains commentable range(s). Some useful commands include:"
112
20
  ));
113
21
  CommentAccessibilityHelpNLS.introWidget = ( localizeWithPath(
114
- 'vs/workbench/contrib/comments/browser/comments.contribution',
22
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
115
23
  'introWidget',
116
24
  "This widget contains a text area, for composition of new comments, and actions, that can be tabbed to once tab moves focus mode has been enabled ({0})."
117
25
  ));
118
26
  CommentAccessibilityHelpNLS.introWidgetNoKb = ( localizeWithPath(
119
- 'vs/workbench/contrib/comments/browser/comments.contribution',
27
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
120
28
  'introWidgetNoKb',
121
29
  "This widget contains a text area, for composition of new comments, and actions, that can be tabbed to once tab moves focus mode has been enabled with the command Toggle Tab Key Moves Focus, which is currently not triggerable via keybinding."
122
30
  ));
123
31
  CommentAccessibilityHelpNLS.commentCommands = ( localizeWithPath(
124
- 'vs/workbench/contrib/comments/browser/comments.contribution',
32
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
125
33
  'commentCommands',
126
34
  "Some useful comment commands include:"
127
35
  ));
128
36
  CommentAccessibilityHelpNLS.escape = ( localizeWithPath(
129
- 'vs/workbench/contrib/comments/browser/comments.contribution',
37
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
130
38
  'escape',
131
39
  "- Dismiss Comment (Escape)"
132
40
  ));
133
41
  CommentAccessibilityHelpNLS.nextRange = ( localizeWithPath(
134
- 'vs/workbench/contrib/comments/browser/comments.contribution',
42
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
135
43
  'next',
136
44
  "- Go to Next Commenting Range ({0})"
137
45
  ));
138
46
  CommentAccessibilityHelpNLS.nextRangeNoKb = ( localizeWithPath(
139
- 'vs/workbench/contrib/comments/browser/comments.contribution',
47
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
140
48
  'nextNoKb',
141
49
  "- Go to Next Commenting Range, which is currently not triggerable via keybinding."
142
50
  ));
143
51
  CommentAccessibilityHelpNLS.previousRange = ( localizeWithPath(
144
- 'vs/workbench/contrib/comments/browser/comments.contribution',
52
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
145
53
  'previous',
146
54
  "- Go to Previous Commenting Range ({0})"
147
55
  ));
148
56
  CommentAccessibilityHelpNLS.previousRangeNoKb = ( localizeWithPath(
149
- 'vs/workbench/contrib/comments/browser/comments.contribution',
57
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
150
58
  'previousNoKb',
151
59
  "- Go to Previous Commenting Range, which is currently not triggerable via keybinding."
152
60
  ));
153
61
  CommentAccessibilityHelpNLS.nextCommentThreadKb = ( localizeWithPath(
154
- 'vs/workbench/contrib/comments/browser/comments.contribution',
62
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
155
63
  'nextCommentThreadKb',
156
64
  "- Go to Next Comment Thread ({0})"
157
65
  ));
158
66
  CommentAccessibilityHelpNLS.nextCommentThreadNoKb = ( localizeWithPath(
159
- 'vs/workbench/contrib/comments/browser/comments.contribution',
67
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
160
68
  'nextCommentThreadNoKb',
161
69
  "- Go to Next Comment Thread, which is currently not triggerable via keybinding."
162
70
  ));
163
71
  CommentAccessibilityHelpNLS.previousCommentThreadKb = ( localizeWithPath(
164
- 'vs/workbench/contrib/comments/browser/comments.contribution',
72
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
165
73
  'previousCommentThreadKb',
166
74
  "- Go to Previous Comment Thread ({0})"
167
75
  ));
168
76
  CommentAccessibilityHelpNLS.previousCommentThreadNoKb = ( localizeWithPath(
169
- 'vs/workbench/contrib/comments/browser/comments.contribution',
77
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
170
78
  'previousCommentThreadNoKb',
171
79
  "- Go to Previous Comment Thread, which is currently not triggerable via keybinding."
172
80
  ));
173
81
  CommentAccessibilityHelpNLS.addComment = ( localizeWithPath(
174
- 'vs/workbench/contrib/comments/browser/comments.contribution',
82
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
175
83
  'addComment',
176
84
  "- Add Comment ({0})"
177
85
  ));
178
86
  CommentAccessibilityHelpNLS.addCommentNoKb = ( localizeWithPath(
179
- 'vs/workbench/contrib/comments/browser/comments.contribution',
87
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
180
88
  'addCommentNoKb',
181
89
  "- Add Comment on Current Selection, which is currently not triggerable via keybinding."
182
90
  ));
183
91
  CommentAccessibilityHelpNLS.submitComment = ( localizeWithPath(
184
- 'vs/workbench/contrib/comments/browser/comments.contribution',
92
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
185
93
  'submitComment',
186
94
  "- Submit Comment ({0})"
187
95
  ));
188
96
  CommentAccessibilityHelpNLS.submitCommentNoKb = ( localizeWithPath(
189
- 'vs/workbench/contrib/comments/browser/comments.contribution',
97
+ 'vs/workbench/contrib/comments/browser/commentsAccessibility',
190
98
  'submitCommentNoKb',
191
99
  "- Submit Comment, accessible via tabbing, as it's currently not triggerable with a keybinding."
192
100
  ));
193
101
  })(CommentAccessibilityHelpNLS || (CommentAccessibilityHelpNLS = {})));
194
- class CommentsAccessibilityHelpContribution extends Disposable {
195
- constructor() {
196
- super();
197
- this._register(AccessibilityHelpAction.addImplementation(110, 'comments', accessor => {
198
- const instantiationService = accessor.get(IInstantiationService);
199
- const accessibleViewService = accessor.get(IAccessibleViewService);
200
- accessibleViewService.show(instantiationService.createInstance(CommentsAccessibilityHelpProvider));
201
- return true;
202
- }, ( ContextKeyExpr.or(ctxCommentEditorFocused, CommentContextKeys.commentFocused))));
203
- }
204
- }
205
102
  let CommentsAccessibilityHelpProvider = class CommentsAccessibilityHelpProvider {
206
103
  constructor(_keybindingService) {
207
104
  this._keybindingService = _keybindingService;
@@ -235,4 +132,15 @@ let CommentsAccessibilityHelpProvider = class CommentsAccessibilityHelpProvider
235
132
  CommentsAccessibilityHelpProvider = ( __decorate([
236
133
  ( __param(0, IKeybindingService))
237
134
  ], CommentsAccessibilityHelpProvider));
135
+ class CommentsAccessibilityHelpContribution extends Disposable {
136
+ constructor() {
137
+ super();
138
+ this._register(AccessibilityHelpAction.addImplementation(110, 'comments', accessor => {
139
+ const instantiationService = accessor.get(IInstantiationService);
140
+ const accessibleViewService = accessor.get(IAccessibleViewService);
141
+ accessibleViewService.show(instantiationService.createInstance(CommentsAccessibilityHelpProvider));
142
+ return true;
143
+ }, ( ContextKeyExpr.or(ctxCommentEditorFocused, CommentContextKeys.commentFocused))));
144
+ }
145
+ }
238
146
  export { CommentAccessibilityHelpNLS, CommentsAccessibilityHelpContribution, CommentsAccessibilityHelpProvider };
@@ -45,7 +45,6 @@ class ReactionActionViewItem extends ActionViewItem {
45
45
  const reactionIcon = append(this.label, $('.reaction-icon'));
46
46
  const uri = URI.revive(action.icon);
47
47
  reactionIcon.style.backgroundImage = asCSSUrl(uri);
48
- reactionIcon.title = action.label;
49
48
  }
50
49
  if (action.count) {
51
50
  const reactionCount = append(this.label, $('span.reaction-count'));
@@ -67,31 +66,55 @@ class ReactionActionViewItem extends ActionViewItem {
67
66
  ]
68
67
  }, "{0}{1} reaction", toggleMessage, action.label));
69
68
  }
70
- else if (action.count === 1) {
71
- return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
72
- key: 'comment.reactionLabelOne', comment: [
73
- 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is 1.',
74
- 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
75
- 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second is the name of the reaction.'
76
- ]
77
- }, "{0}1 reaction with {1}", toggleMessage, action.label));
69
+ else if (action.reactors === undefined || action.reactors.length === 0) {
70
+ if (action.count === 1) {
71
+ return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
72
+ key: 'comment.reactionLabelOne', comment: [
73
+ 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is 1.',
74
+ 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
75
+ 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second is the name of the reaction.'
76
+ ]
77
+ }, "{0}1 reaction with {1}", toggleMessage, action.label));
78
+ }
79
+ else if (action.count > 1) {
80
+ return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
81
+ key: 'comment.reactionLabelMany', comment: [
82
+ 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is greater than 1.',
83
+ 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
84
+ 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second is number of users who have reacted with that reaction, and the third is the name of the reaction.'
85
+ ]
86
+ }, "{0}{1} reactions with {2}", toggleMessage, action.count, action.label));
87
+ }
78
88
  }
79
- else if (action.count > 1) {
80
- return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
81
- key: 'comment.reactionLabelMany', comment: [
82
- 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is greater than 1.',
83
- 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
84
- 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second is number of users who have reacted with that reaction, and the third is the name of the reaction.'
85
- ]
86
- }, "{0}{1} reactions with {2}", toggleMessage, action.count, action.label));
89
+ else {
90
+ if (action.reactors.length <= 10 && action.reactors.length === action.count) {
91
+ return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
92
+ key: 'comment.reactionLessThanTen', comment: [
93
+ 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is less than or equal to 10.',
94
+ 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
95
+ 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second iis a list of the reactors, and the third is the name of the reaction.'
96
+ ]
97
+ }, "{0}{1} reacted with {2}", toggleMessage, action.reactors.join(', '), action.label));
98
+ }
99
+ else if (action.count > 1) {
100
+ const displayedReactors = action.reactors.slice(0, 10);
101
+ return ( localizeWithPath('vs/workbench/contrib/comments/browser/reactionsAction', {
102
+ key: 'comment.reactionMoreThanTen', comment: [
103
+ 'This is a tooltip for an emoji that is a "reaction" to a comment where the count of the reactions is less than or equal to 10.',
104
+ 'The emoji is also a button so that the current user can also toggle their own emoji reaction.',
105
+ 'The first arg is localized message "Toggle reaction" or empty if the user doesn\'t have permission to toggle the reaction, the second iis a list of the reactors, and the third is the name of the reaction.'
106
+ ]
107
+ }, "{0}{1} and {2} more reacted with {3}", toggleMessage, displayedReactors.join(', '), action.count - displayedReactors.length, action.label));
108
+ }
87
109
  }
88
110
  return undefined;
89
111
  }
90
112
  }
91
113
  class ReactionAction extends Action {
92
114
  static { this.ID = 'toolbar.toggle.reaction'; }
93
- constructor(id, label = '', cssClass = '', enabled = true, actionCallback, icon, count) {
115
+ constructor(id, label = '', cssClass = '', enabled = true, actionCallback, reactors, icon, count) {
94
116
  super(ReactionAction.ID, label, cssClass, enabled, actionCallback);
117
+ this.reactors = reactors;
95
118
  this.icon = icon;
96
119
  this.count = count;
97
120
  }