@codingame/monaco-vscode-api 6.0.3 → 7.0.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 (447) hide show
  1. package/README.md +150 -117
  2. package/api.js +1 -1
  3. package/debugProtocol.d.ts +10 -1
  4. package/extensions.d.ts +2 -0
  5. package/missing-services.js +21 -2
  6. package/package.json +9 -9
  7. package/service-override/extensions.d.ts +1 -2
  8. package/services.js +4 -2
  9. package/vscode/src/vs/base/browser/dnd.js +1 -1
  10. package/vscode/src/vs/base/browser/dom.js +116 -5
  11. package/vscode/src/vs/base/browser/domObservable.js +16 -0
  12. package/vscode/src/vs/base/browser/markdownRenderer.js +5 -3
  13. package/vscode/src/vs/base/browser/trustedTypes.js +1 -2
  14. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  15. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +1 -1
  16. package/vscode/src/vs/base/browser/ui/button/button.js +2 -2
  17. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -4
  18. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +1 -1
  19. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  20. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +1 -1
  21. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +32 -16
  22. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate.d.ts +2 -2
  23. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +2 -2
  24. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  25. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -0
  26. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +1 -1
  27. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +1 -1
  28. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +1 -1
  29. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +1 -1
  30. package/vscode/src/vs/base/browser/ui/list/listView.js +3 -5
  31. package/vscode/src/vs/base/browser/ui/list/rowCache.js +1 -8
  32. package/vscode/src/vs/base/browser/ui/sash/sash.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +7 -11
  34. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +1 -1
  35. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +1 -1
  36. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +1 -1
  37. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.d.ts +8 -1
  39. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -3
  40. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +1 -1
  41. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +0 -3
  42. package/vscode/src/vs/base/common/assert.js +1 -1
  43. package/vscode/src/vs/base/common/collections.js +49 -1
  44. package/vscode/src/vs/base/common/equals.js +55 -5
  45. package/vscode/src/vs/base/common/errors.js +14 -1
  46. package/vscode/src/vs/base/common/event.js +2 -1
  47. package/vscode/src/vs/base/common/history.js +7 -4
  48. package/vscode/src/vs/base/common/iterator.js +9 -1
  49. package/vscode/src/vs/base/common/map.d.ts +41 -0
  50. package/vscode/src/vs/base/common/numbers.js +18 -1
  51. package/vscode/src/vs/base/common/observableInternal/api.js +11 -0
  52. package/vscode/src/vs/base/common/observableInternal/autorun.js +18 -1
  53. package/vscode/src/vs/base/common/observableInternal/base.d.ts +8 -1
  54. package/vscode/src/vs/base/common/observableInternal/base.js +2 -5
  55. package/vscode/src/vs/base/common/observableInternal/derived.js +13 -3
  56. package/vscode/src/vs/base/common/observableInternal/lazyObservableValue.js +109 -0
  57. package/vscode/src/vs/base/common/observableInternal/promise.js +3 -0
  58. package/vscode/src/vs/base/common/observableInternal/utils.d.ts +7 -0
  59. package/vscode/src/vs/base/common/observableInternal/utils.js +64 -12
  60. package/vscode/src/vs/base/common/prefixTree.d.ts +52 -0
  61. package/vscode/src/vs/base/common/product.d.ts +1 -0
  62. package/vscode/src/vs/base/parts/ipc/common/ipc.js +1 -1
  63. package/vscode/src/vs/editor/browser/config/charWidthReader.js +1 -1
  64. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  65. package/vscode/src/vs/editor/browser/coreCommands.js +2 -1
  66. package/vscode/src/vs/editor/browser/observableCodeEditor.js +230 -0
  67. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +1 -1
  68. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -26
  69. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +2 -2
  70. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +1 -1
  71. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -12
  72. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +1 -1
  73. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +1 -1
  74. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  75. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +15 -4
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +8 -8
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +4 -4
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +1 -1
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +1 -1
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +14 -2
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +1 -1
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +2 -2
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +2 -2
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +3 -3
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +2 -2
  86. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/colors.js +1 -1
  87. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +2 -2
  88. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +5 -0
  89. package/vscode/src/vs/editor/common/config/editorOptions.js +83 -65
  90. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +43 -43
  91. package/vscode/src/vs/editor/common/cursor/cursor.js +3 -2
  92. package/vscode/src/vs/editor/common/cursor/cursorTypeEditOperations.js +911 -0
  93. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +36 -799
  94. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +6 -5
  95. package/vscode/src/vs/editor/common/languageFeatureRegistry.d.ts +1 -0
  96. package/vscode/src/vs/editor/common/languageFeatureRegistry.js +3 -0
  97. package/vscode/src/vs/editor/common/languages/autoIndent.js +23 -1
  98. package/vscode/src/vs/editor/common/languages.d.ts +20 -3
  99. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +6 -6
  100. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +19 -0
  101. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +3 -0
  102. package/vscode/src/vs/editor/common/model/textModel.js +6 -2
  103. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +5 -5
  104. package/vscode/src/vs/editor/common/model.d.ts +4 -0
  105. package/vscode/src/vs/editor/common/services/getIconClasses.js +1 -1
  106. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +2 -15
  107. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +63 -62
  108. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +11 -8
  109. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +1 -1
  110. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +2 -17
  111. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.css.js +1 -1
  112. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +18 -5
  113. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +55 -27
  114. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +7 -4
  115. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +9 -9
  116. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +1 -1
  117. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +103 -47
  118. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -2
  119. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +18 -10
  120. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +2 -4
  121. package/vscode/src/vs/editor/contrib/folding/browser/folding.css.js +1 -1
  122. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +33 -13
  123. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -7
  124. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +1 -1
  125. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +2 -2
  126. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +161 -185
  127. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverRendered.js +321 -0
  128. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverStatusBar.js +4 -1
  129. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverTypes.js +6 -21
  130. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +39 -40
  131. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +55 -46
  132. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +12 -2
  133. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +15 -9
  134. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +11 -1
  135. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +141 -93
  136. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +24 -7
  137. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +36 -1
  138. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +5 -3
  139. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +1 -1
  140. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +25 -12
  141. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +88 -118
  142. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +1 -1
  143. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +34 -33
  144. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -2
  145. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +11 -4
  146. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +10 -19
  147. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +1 -1
  148. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +45 -27
  149. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +4 -4
  150. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +1 -1
  151. package/vscode/src/vs/editor/contrib/inlineEdits/browser/commands.js +126 -0
  152. package/vscode/src/vs/editor/contrib/inlineEdits/browser/consts.js +9 -0
  153. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEdits.contribution.js +9 -0
  154. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsController.js +82 -0
  155. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsModel.js +240 -0
  156. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.css.js +4 -0
  157. package/vscode/src/vs/editor/contrib/inlineEdits/browser/inlineEditsWidget.js +322 -0
  158. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +8 -4
  159. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +3 -2
  160. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  161. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +2 -2
  162. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +60 -0
  163. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.css.js +4 -0
  164. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +1 -1
  165. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  166. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +38 -20
  167. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +3 -0
  168. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +9 -9
  169. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetStatus.js +10 -32
  170. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +23 -138
  171. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +3 -0
  172. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +5 -5
  173. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +13 -12
  174. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +3 -3
  175. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +21 -0
  176. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +5 -6
  177. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +1 -1
  178. package/vscode/src/vs/platform/actions/browser/buttonbar.js +27 -6
  179. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +1 -1
  180. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  181. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +33 -3
  182. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -1
  183. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  184. package/vscode/src/vs/platform/actions/common/actions.js +3 -0
  185. package/vscode/src/vs/platform/actions/common/menuService.js +3 -2
  186. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +1 -1
  187. package/vscode/src/vs/platform/configuration/common/configurationRegistry.d.ts +7 -5
  188. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +109 -13
  189. package/vscode/src/vs/platform/diagnostics/common/diagnostics.d.ts +2 -0
  190. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +12 -6
  191. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +2 -0
  192. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.service.d.ts +3 -3
  193. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +20 -10
  194. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +46 -8
  195. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +1 -1
  196. package/vscode/src/vs/platform/extensions/common/extensions.js +12 -3
  197. package/vscode/src/vs/platform/extensions/common/extensionsApiProposals.js +368 -0
  198. package/vscode/src/vs/platform/files/common/watcher.js +21 -24
  199. package/vscode/src/vs/platform/list/browser/listService.js +2 -1
  200. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +2 -2
  201. package/vscode/src/vs/platform/opener/browser/link.js +1 -1
  202. package/vscode/src/vs/platform/product/common/product.js +1 -1
  203. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1 -1
  204. package/vscode/src/vs/platform/remote/common/remoteExtensionsScanner.service.d.ts +0 -2
  205. package/vscode/src/vs/platform/request/common/request.js +18 -8
  206. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +2 -6
  207. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetection/promptInputModel.d.ts +8 -1
  208. package/vscode/src/vs/platform/theme/common/colorUtils.d.ts +1 -1
  209. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -5
  210. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  211. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +6 -6
  212. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +35 -35
  213. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +9 -9
  214. package/vscode/src/vs/platform/theme/common/colors/listColors.js +11 -11
  215. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +4 -4
  216. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +5 -5
  217. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +1 -1
  218. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +5 -5
  219. package/vscode/src/vs/platform/tunnel/common/tunnel.js +4 -1
  220. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +75 -19
  221. package/vscode/src/vs/platform/window/common/window.d.ts +2 -2
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +32 -25
  223. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +2 -0
  224. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +2 -0
  225. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +5 -11
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +5 -15
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +2 -5
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +9 -3
  229. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +32 -22
  230. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +3 -3
  231. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +109 -40
  232. package/vscode/src/vs/workbench/api/common/extHostLanguageModelTools.js +46 -0
  233. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +84 -35
  234. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  235. package/vscode/src/vs/workbench/api/common/extHostSCM.js +50 -41
  236. package/vscode/src/vs/workbench/api/common/extHostSearch.js +2 -2
  237. package/vscode/src/vs/workbench/api/common/extHostSecrets.js +11 -8
  238. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +7 -6
  239. package/vscode/src/vs/workbench/api/common/extHostTesting.js +63 -70
  240. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +5 -3
  241. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +75 -16
  242. package/vscode/src/vs/workbench/api/common/extHostTypes.js +29 -4
  243. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  244. package/vscode/src/vs/workbench/browser/actions/developerActions.js +1 -1
  245. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +127 -107
  246. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +2 -2
  247. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +1 -1
  248. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +33 -21
  249. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +1 -1
  250. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +5 -5
  251. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +1 -1
  252. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +2 -2
  253. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -2
  254. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +23 -6
  255. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +3 -1
  256. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +3 -3
  257. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +1 -1
  258. package/vscode/src/vs/workbench/browser/web.api.js +8 -0
  259. package/vscode/src/vs/workbench/browser/workbench.contribution.js +199 -194
  260. package/vscode/src/vs/workbench/common/configuration.js +1 -1
  261. package/vscode/src/vs/workbench/common/contributions.js +8 -1
  262. package/vscode/src/vs/workbench/common/editor.js +5 -1
  263. package/vscode/src/vs/workbench/common/theme.js +79 -454
  264. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +221 -239
  265. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +17 -15
  266. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +1 -0
  267. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +4 -0
  268. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCollections.js +27 -0
  269. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +35 -0
  270. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +51 -0
  271. package/vscode/src/vs/workbench/contrib/chat/browser/{chatConfirmationWidget.js → chatContentParts/chatConfirmationWidget.js} +9 -9
  272. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatMarkdownContentPart.js +131 -0
  273. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatProgressContentPart.js +37 -0
  274. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +263 -0
  275. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTaskContentPart.js +37 -0
  276. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +160 -0
  277. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +171 -0
  278. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatWarningContentPart.js +34 -0
  279. package/vscode/src/vs/workbench/contrib/chat/browser/{media → chatContentParts/media}/chatConfirmationWidget.css.js +1 -1
  280. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +91 -44
  281. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +292 -1019
  282. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +2 -2
  283. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +1 -1
  284. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +22 -7
  285. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  286. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +61 -54
  287. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +23 -16
  288. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  289. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  290. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +8 -0
  291. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +1 -1
  292. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +3 -3
  293. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +5 -4
  294. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +16 -0
  295. package/vscode/src/vs/workbench/contrib/chat/common/languageModelToolsService.service.js +3 -0
  296. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +2 -2
  297. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +43 -16
  298. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +1 -1
  299. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +1 -3
  300. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +1 -1
  301. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +7 -5
  302. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +7 -7
  303. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +3 -3
  304. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +3 -3
  305. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +2 -2
  306. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  307. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +2 -1
  308. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +2 -1
  309. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +1 -1
  310. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +8 -5
  311. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +1 -1
  312. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  313. package/vscode/src/vs/workbench/contrib/comments/browser/media/review.css.js +1 -1
  314. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +1 -1
  315. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +5 -5
  316. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +14 -7
  317. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +4 -4
  318. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +8 -7
  319. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +19 -16
  320. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -12
  321. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +19 -2
  322. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +9 -4
  323. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +10 -5
  324. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +4 -4
  325. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +235 -173
  326. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  327. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +2 -1
  328. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +17 -5
  329. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +62 -44
  330. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  331. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +2 -2
  332. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +114 -107
  333. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +33 -25
  334. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +71 -101
  335. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +38 -43
  336. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +11 -33
  337. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +3 -4
  338. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +49 -86
  339. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +60 -71
  340. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +1 -1
  342. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +116 -113
  343. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +6 -10
  344. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +2 -2
  345. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +1 -0
  346. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +2 -2
  347. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +12 -23
  348. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +0 -2
  349. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -9
  350. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +88 -61
  351. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +1 -3
  352. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +39 -3
  353. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -1
  354. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +12 -11
  355. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  356. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +3 -2
  358. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +40 -105
  359. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookIcons.js +27 -26
  360. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +14 -5
  361. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +43 -46
  363. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +1 -1
  364. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +4 -4
  365. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +12 -9
  366. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +19 -14
  367. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +2 -2
  368. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +9 -6
  369. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  370. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +5 -3
  371. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +3 -3
  372. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +1 -1
  373. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +16 -6
  374. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +8 -8
  375. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineDataSourceFactory.service.js +3 -0
  376. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +11 -12
  377. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +12 -13
  378. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +1 -1
  379. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +5 -3
  380. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +9 -2
  381. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +37 -36
  382. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +18 -8
  383. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +1 -1
  384. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +14 -5
  385. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +17 -22
  386. package/vscode/src/vs/workbench/contrib/remote/browser/media/tunnelView.css.js +1 -1
  387. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +7 -10
  388. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +7 -27
  389. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +3 -4
  390. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  391. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +4 -0
  392. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +3 -3
  393. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +3 -0
  394. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +0 -1
  395. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +13 -37
  396. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.d.ts +88 -0
  397. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +48 -31
  398. package/vscode/src/vs/workbench/contrib/testing/common/testId.d.ts +115 -0
  399. package/vscode/src/vs/workbench/contrib/testing/common/testResult.d.ts +226 -0
  400. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.d.ts +319 -0
  401. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +2 -3
  402. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.d.ts +10 -0
  403. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +21 -2
  404. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +7 -8
  405. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +3 -3
  406. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +10 -5
  407. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +54 -21
  408. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  409. package/vscode/src/vs/workbench/services/extensions/browser/extensionService.d.ts +1 -2
  410. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +2 -4
  411. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +5 -3
  412. package/vscode/src/vs/workbench/services/extensions/common/extensions.service.d.ts +3 -1
  413. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +59 -41
  414. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -1
  415. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +3 -2
  416. package/vscode/src/vs/workbench/services/host/browser/host.service.d.ts +1 -0
  417. package/vscode/src/vs/workbench/services/language/common/languageService.js +7 -0
  418. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +1 -1
  419. package/vscode/src/vs/workbench/services/preferences/common/preferences.d.ts +2 -2
  420. package/vscode/src/vs/workbench/services/search/common/search.js +2 -1
  421. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +2 -2
  422. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +2 -2
  423. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +69 -26
  424. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +23 -4
  425. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +5 -1
  426. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfileIcons.js +1 -1
  427. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +12 -5
  428. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +38 -19
  429. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyFileService.service.d.ts +2 -1
  430. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +0 -196
  431. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -10
  432. package/vscode-dts/vscode.proposed.authGetSessions.d.ts +30 -22
  433. package/vscode-dts/vscode.proposed.chatProvider.d.ts +17 -8
  434. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +0 -9
  435. package/vscode-dts/vscode.proposed.commentReveal.d.ts +32 -0
  436. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +10 -0
  437. package/vscode-dts/vscode.proposed.createFileSystemWatcher.d.ts +1 -1
  438. package/vscode-dts/vscode.proposed.fileComments.d.ts +12 -53
  439. package/vscode-dts/vscode.proposed.fileSearchProvider.d.ts +6 -0
  440. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +6 -0
  441. package/vscode-dts/vscode.proposed.lmTools.d.ts +91 -0
  442. package/vscode-dts/vscode.proposed.mappedEditsProvider.d.ts +1 -1
  443. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +10 -6
  444. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +38 -13
  445. package/vscode/src/vs/editor/browser/observableUtilities.js +0 -58
  446. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProviderFactory.service.js +0 -3
  447. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +0 -122
@@ -0,0 +1,226 @@
1
+ import { VSBuffer } from '../../../../base/common/buffer.js';
2
+ import { Event } from '../../../../base/common/event.js';
3
+ import { Disposable } from '../../../../base/common/lifecycle.js';
4
+ import { IObservable } from '../../../../base/common/observableInternal/base.js';
5
+ import { WellDefinedPrefixTree } from '../../../../base/common/prefixTree.js';
6
+ import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.service.js';
7
+ import { TestCoverage } from './testCoverage.js';
8
+ import { TestStateCount } from './testingStates.js';
9
+ import { ResolvedTestRunRequest, ITestItem, IRichLocation, ITestRunTask, TestResultState, ITestMessage, ISerializedTestResults, ITestTaskState, TestResultItem, ITestOutputMessage } from './testTypes.js';
10
+
11
+ interface ITestRunTaskResults extends ITestRunTask {
12
+ /**
13
+ * Contains test coverage for the result, if it's available.
14
+ */
15
+ readonly coverage: IObservable<TestCoverage | undefined>;
16
+ /**
17
+ * Messages from the task not associated with any specific test.
18
+ */
19
+ readonly otherMessages: ITestOutputMessage[];
20
+ /**
21
+ * Test results output for the task.
22
+ */
23
+ readonly output: ITaskRawOutput;
24
+ }
25
+ interface ITestResult {
26
+ /**
27
+ * Count of the number of tests in each run state.
28
+ */
29
+ readonly counts: Readonly<TestStateCount>;
30
+ /**
31
+ * Unique ID of this set of test results.
32
+ */
33
+ readonly id: string;
34
+ /**
35
+ * If the test is completed, the unix milliseconds time at which it was
36
+ * completed. If undefined, the test is still running.
37
+ */
38
+ readonly completedAt: number | undefined;
39
+ /**
40
+ * Whether this test result is triggered from an auto run.
41
+ */
42
+ readonly request: ResolvedTestRunRequest;
43
+ /**
44
+ * Human-readable name of the test result.
45
+ */
46
+ readonly name: string;
47
+ /**
48
+ * Gets all tests involved in the run.
49
+ */
50
+ tests: IterableIterator<TestResultItem>;
51
+ /**
52
+ * List of this result's subtasks.
53
+ */
54
+ tasks: ReadonlyArray<ITestRunTaskResults>;
55
+ /**
56
+ * Gets the state of the test by its extension-assigned ID.
57
+ */
58
+ getStateById(testExtId: string): TestResultItem | undefined;
59
+ /**
60
+ * Serializes the test result. Used to save and restore results
61
+ * in the workspace.
62
+ */
63
+ toJSON(): ISerializedTestResults | undefined;
64
+ /**
65
+ * Serializes the test result, includes messages. Used to send the test states to the extension host.
66
+ */
67
+ toJSONWithMessages(): ISerializedTestResults | undefined;
68
+ }
69
+ /**
70
+ * Output type exposed from live test results.
71
+ */
72
+ interface ITaskRawOutput {
73
+ readonly onDidWriteData: Event<VSBuffer>;
74
+ readonly endPromise: Promise<void>;
75
+ readonly buffers: VSBuffer[];
76
+ readonly length: number;
77
+ /** Gets a continuous buffer for the desired range */
78
+ getRange(start: number, length: number): VSBuffer;
79
+ /** Gets an iterator of buffers for the range; may avoid allocation of getRange() */
80
+ getRangeIter(start: number, length: number): Iterable<VSBuffer>;
81
+ }
82
+ declare class TaskRawOutput implements ITaskRawOutput {
83
+ private readonly writeDataEmitter;
84
+ private readonly endDeferred;
85
+ private offset;
86
+ /** @inheritdoc */
87
+ readonly onDidWriteData: Event<VSBuffer>;
88
+ /** @inheritdoc */
89
+ readonly endPromise: Promise<void>;
90
+ /** @inheritdoc */
91
+ readonly buffers: VSBuffer[];
92
+ /** @inheritdoc */
93
+ get length(): number;
94
+ /** @inheritdoc */
95
+ getRange(start: number, length: number): VSBuffer;
96
+ /** @inheritdoc */
97
+ getRangeIter(start: number, length: number): Generator<VSBuffer, void, unknown>;
98
+ /**
99
+ * Appends data to the output, returning the byte range where the data can be found.
100
+ */
101
+ append(data: VSBuffer, marker?: number): {
102
+ offset: number;
103
+ length: number;
104
+ };
105
+ private push;
106
+ /** Signals the output has ended. */
107
+ end(): void;
108
+ }
109
+ interface TestResultItemWithChildren extends TestResultItem {
110
+ /** Children in the run */
111
+ children: TestResultItemWithChildren[];
112
+ }
113
+ declare const enum TestResultItemChangeReason {
114
+ ComputedStateChange = 0,
115
+ OwnStateChange = 1,
116
+ NewMessage = 2
117
+ }
118
+ type TestResultItemChange = {
119
+ item: TestResultItem;
120
+ result: ITestResult;
121
+ } & ({
122
+ reason: TestResultItemChangeReason.ComputedStateChange;
123
+ } | {
124
+ reason: TestResultItemChangeReason.OwnStateChange;
125
+ previousState: TestResultState;
126
+ previousOwnDuration: number | undefined;
127
+ } | {
128
+ reason: TestResultItemChangeReason.NewMessage;
129
+ message: ITestMessage;
130
+ });
131
+ /**
132
+ * Results of a test. These are created when the test initially started running
133
+ * and marked as "complete" when the run finishes.
134
+ */
135
+ declare class LiveTestResult extends Disposable implements ITestResult {
136
+ readonly id: string;
137
+ readonly persist: boolean;
138
+ readonly request: ResolvedTestRunRequest;
139
+ private readonly telemetry;
140
+ private readonly completeEmitter;
141
+ private readonly newTaskEmitter;
142
+ private readonly endTaskEmitter;
143
+ private readonly changeEmitter;
144
+ /** todo@connor4312: convert to a WellDefinedPrefixTree */
145
+ private readonly testById;
146
+ private testMarkerCounter;
147
+ private _completedAt?;
148
+ readonly startedAt: number;
149
+ readonly onChange: Event<TestResultItemChange>;
150
+ readonly onComplete: Event<void>;
151
+ readonly onNewTask: Event<number>;
152
+ readonly onEndTask: Event<number>;
153
+ readonly tasks: (ITestRunTaskResults & {
154
+ output: TaskRawOutput;
155
+ })[];
156
+ readonly name: string;
157
+ /**
158
+ * @inheritdoc
159
+ */
160
+ get completedAt(): number | undefined;
161
+ /**
162
+ * @inheritdoc
163
+ */
164
+ readonly counts: TestStateCount;
165
+ /**
166
+ * @inheritdoc
167
+ */
168
+ get tests(): IterableIterator<TestResultItemWithChildren>;
169
+ /** Gets an included test item by ID. */
170
+ getTestById(id: string): ITestItem | undefined;
171
+ private readonly computedStateAccessor;
172
+ constructor(id: string, persist: boolean, request: ResolvedTestRunRequest, telemetry: ITelemetryService);
173
+ /**
174
+ * @inheritdoc
175
+ */
176
+ getStateById(extTestId: string): TestResultItemWithChildren | undefined;
177
+ /**
178
+ * Appends output that occurred during the test run.
179
+ */
180
+ appendOutput(output: VSBuffer, taskId: string, location?: IRichLocation, testId?: string): void;
181
+ /**
182
+ * Adds a new run task to the results.
183
+ */
184
+ addTask(task: ITestRunTask): void;
185
+ /**
186
+ * Add the chain of tests to the run. The first test in the chain should
187
+ * be either a test root, or a previously-known test.
188
+ */
189
+ addTestChainToRun(controllerId: string, chain: ReadonlyArray<ITestItem>): undefined;
190
+ /**
191
+ * Updates the state of the test by its internal ID.
192
+ */
193
+ updateState(testId: string, taskId: string, state: TestResultState, duration?: number): void;
194
+ /**
195
+ * Appends a message for the test in the run.
196
+ */
197
+ appendMessage(testId: string, taskId: string, message: ITestMessage): void;
198
+ /**
199
+ * Marks the task in the test run complete.
200
+ */
201
+ markTaskComplete(taskId: string): void;
202
+ /**
203
+ * Notifies the service that all tests are complete.
204
+ */
205
+ markComplete(): void;
206
+ /**
207
+ * Marks the test and all of its children in the run as retired.
208
+ */
209
+ markRetired(testIds: WellDefinedPrefixTree<undefined> | undefined): void;
210
+ /**
211
+ * @inheritdoc
212
+ */
213
+ toJSON(): ISerializedTestResults | undefined;
214
+ toJSONWithMessages(): ISerializedTestResults | undefined;
215
+ /**
216
+ * Updates all tests in the collection to the given state.
217
+ */
218
+ protected setAllToState(state: TestResultState, taskId: string, when: (task: ITestTaskState, item: TestResultItem) => boolean): void;
219
+ private fireUpdateAndRefresh;
220
+ private addTestToRun;
221
+ private mustGetTaskIndex;
222
+ private readonly doSerialize;
223
+ private readonly doSerializeWithMessages;
224
+ }
225
+
226
+ export { type ITaskRawOutput, type ITestResult, type ITestRunTaskResults, LiveTestResult, TaskRawOutput, type TestResultItemChange, TestResultItemChangeReason };
@@ -0,0 +1,319 @@
1
+ import { IMarkdownString } from '../../../../base/common/htmlContent.js';
2
+ import { URI, UriComponents } from '../../../../base/common/uri.js';
3
+ import { Position, IPosition } from '../../../../editor/common/core/position.js';
4
+ import { Range, IRange } from '../../../../editor/common/core/range.js';
5
+
6
+ declare const enum TestResultState {
7
+ Unset = 0,
8
+ Queued = 1,
9
+ Running = 2,
10
+ Passed = 3,
11
+ Failed = 4,
12
+ Skipped = 5,
13
+ Errored = 6
14
+ }
15
+ declare const enum TestRunProfileBitset {
16
+ Run = 2,
17
+ Debug = 4,
18
+ Coverage = 8,
19
+ HasNonDefaultProfile = 16,
20
+ HasConfigurable = 32,
21
+ SupportsContinuousRun = 64
22
+ }
23
+ /**
24
+ * A fully-resolved request to run tests, passsed between the main thread
25
+ * and extension host.
26
+ */
27
+ interface ResolvedTestRunRequest {
28
+ group: TestRunProfileBitset;
29
+ targets: {
30
+ testIds: string[];
31
+ controllerId: string;
32
+ profileId: number;
33
+ }[];
34
+ exclude?: string[];
35
+ /** Whether this is a continuous test run */
36
+ continuous?: boolean;
37
+ /** Whether this was trigged by a user action in UI. Default=true */
38
+ preserveFocus?: boolean;
39
+ }
40
+ /** Subset of the IUriIdentityService */
41
+ interface ITestUriCanonicalizer {
42
+ /** @link import('vs/platform/uriIdentity/common/uriIdentity').IUriIdentityService */
43
+ asCanonicalUri(uri: URI): URI;
44
+ }
45
+ /**
46
+ * Location with a fully-instantiated Range and URI.
47
+ */
48
+ interface IRichLocation {
49
+ range: Range;
50
+ uri: URI;
51
+ }
52
+ declare namespace IRichLocation {
53
+ interface Serialize {
54
+ range: IRange;
55
+ uri: UriComponents;
56
+ }
57
+ const serialize: (location: Readonly<IRichLocation>) => Serialize;
58
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, location: Serialize) => IRichLocation;
59
+ }
60
+ declare const enum TestMessageType {
61
+ Error = 0,
62
+ Output = 1
63
+ }
64
+ interface ITestErrorMessage {
65
+ message: string | IMarkdownString;
66
+ type: TestMessageType.Error;
67
+ expected: string | undefined;
68
+ actual: string | undefined;
69
+ contextValue: string | undefined;
70
+ location: IRichLocation | undefined;
71
+ }
72
+ declare namespace ITestErrorMessage {
73
+ interface Serialized {
74
+ message: string | IMarkdownString;
75
+ type: TestMessageType.Error;
76
+ expected: string | undefined;
77
+ actual: string | undefined;
78
+ contextValue: string | undefined;
79
+ location: IRichLocation.Serialize | undefined;
80
+ }
81
+ const serialize: (message: Readonly<ITestErrorMessage>) => Serialized;
82
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, message: Serialized) => ITestErrorMessage;
83
+ }
84
+ interface ITestOutputMessage {
85
+ message: string;
86
+ type: TestMessageType.Output;
87
+ offset: number;
88
+ length: number;
89
+ marker?: number;
90
+ location: IRichLocation | undefined;
91
+ }
92
+ declare namespace ITestOutputMessage {
93
+ interface Serialized {
94
+ message: string;
95
+ offset: number;
96
+ length: number;
97
+ type: TestMessageType.Output;
98
+ location: IRichLocation.Serialize | undefined;
99
+ }
100
+ const serialize: (message: Readonly<ITestOutputMessage>) => Serialized;
101
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, message: Serialized) => ITestOutputMessage;
102
+ }
103
+ type ITestMessage = ITestErrorMessage | ITestOutputMessage;
104
+ declare namespace ITestMessage {
105
+ type Serialized = ITestErrorMessage.Serialized | ITestOutputMessage.Serialized;
106
+ const serialize: (message: Readonly<ITestMessage>) => Serialized;
107
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, message: Serialized) => ITestMessage;
108
+ }
109
+ interface ITestTaskState {
110
+ state: TestResultState;
111
+ duration: number | undefined;
112
+ messages: ITestMessage[];
113
+ }
114
+ declare namespace ITestTaskState {
115
+ interface Serialized {
116
+ state: TestResultState;
117
+ duration: number | undefined;
118
+ messages: ITestMessage.Serialized[];
119
+ }
120
+ const serializeWithoutMessages: (state: ITestTaskState) => Serialized;
121
+ const serialize: (state: Readonly<ITestTaskState>) => Serialized;
122
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, state: Serialized) => ITestTaskState;
123
+ }
124
+ interface ITestRunTask {
125
+ id: string;
126
+ name: string | undefined;
127
+ running: boolean;
128
+ }
129
+ /**
130
+ * The TestItem from .d.ts, as a plain object without children.
131
+ */
132
+ interface ITestItem {
133
+ /** ID of the test given by the test controller */
134
+ extId: string;
135
+ label: string;
136
+ tags: string[];
137
+ busy: boolean;
138
+ children?: never;
139
+ uri: URI | undefined;
140
+ range: Range | null;
141
+ description: string | null;
142
+ error: string | IMarkdownString | null;
143
+ sortText: string | null;
144
+ }
145
+ declare namespace ITestItem {
146
+ interface Serialized {
147
+ extId: string;
148
+ label: string;
149
+ tags: string[];
150
+ busy: boolean;
151
+ children?: never;
152
+ uri: UriComponents | undefined;
153
+ range: IRange | null;
154
+ description: string | null;
155
+ error: string | IMarkdownString | null;
156
+ sortText: string | null;
157
+ }
158
+ const serialize: (item: Readonly<ITestItem>) => Serialized;
159
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, serialized: Serialized) => ITestItem;
160
+ }
161
+ declare const enum TestItemExpandState {
162
+ NotExpandable = 0,
163
+ Expandable = 1,
164
+ BusyExpanding = 2,
165
+ Expanded = 3
166
+ }
167
+ /**
168
+ * TestItem-like shape, but with an ID and children as strings.
169
+ */
170
+ interface InternalTestItem {
171
+ /** Controller ID from whence this test came */
172
+ controllerId: string;
173
+ /** Expandability state */
174
+ expand: TestItemExpandState;
175
+ /** Raw test item properties */
176
+ item: ITestItem;
177
+ }
178
+ declare namespace InternalTestItem {
179
+ interface Serialized {
180
+ expand: TestItemExpandState;
181
+ item: ITestItem.Serialized;
182
+ }
183
+ const serialize: (item: Readonly<InternalTestItem>) => Serialized;
184
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, serialized: Serialized) => InternalTestItem;
185
+ }
186
+ /**
187
+ * Test result item used in the main thread.
188
+ */
189
+ interface TestResultItem extends InternalTestItem {
190
+ /** State of this test in various tasks */
191
+ tasks: ITestTaskState[];
192
+ /** State of this test as a computation of its tasks */
193
+ ownComputedState: TestResultState;
194
+ /** Computed state based on children */
195
+ computedState: TestResultState;
196
+ /** Max duration of the item's tasks (if run directly) */
197
+ ownDuration?: number;
198
+ /** Whether this test item is outdated */
199
+ retired?: boolean;
200
+ }
201
+ declare namespace TestResultItem {
202
+ /**
203
+ * Serialized version of the TestResultItem. Note that 'retired' is not
204
+ * included since all hydrated items are automatically retired.
205
+ */
206
+ interface Serialized extends InternalTestItem.Serialized {
207
+ tasks: ITestTaskState.Serialized[];
208
+ ownComputedState: TestResultState;
209
+ computedState: TestResultState;
210
+ }
211
+ const serializeWithoutMessages: (original: TestResultItem) => Serialized;
212
+ const serialize: (original: Readonly<TestResultItem>) => Serialized;
213
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, serialized: Serialized) => TestResultItem;
214
+ }
215
+ interface ISerializedTestResults {
216
+ /** ID of these test results */
217
+ id: string;
218
+ /** Time the results were compelted */
219
+ completedAt: number;
220
+ /** Subset of test result items */
221
+ items: TestResultItem.Serialized[];
222
+ /** Tasks involved in the run. */
223
+ tasks: {
224
+ id: string;
225
+ name: string | undefined;
226
+ }[];
227
+ /** Human-readable name of the test run. */
228
+ name: string;
229
+ /** Test trigger informaton */
230
+ request: ResolvedTestRunRequest;
231
+ }
232
+ interface ICoverageCount {
233
+ covered: number;
234
+ total: number;
235
+ }
236
+ declare namespace ICoverageCount {
237
+ const empty: () => ICoverageCount;
238
+ const sum: (target: ICoverageCount, src: Readonly<ICoverageCount>) => void;
239
+ }
240
+ interface IFileCoverage {
241
+ id: string;
242
+ uri: URI;
243
+ testIds?: string[];
244
+ statement: ICoverageCount;
245
+ branch?: ICoverageCount;
246
+ declaration?: ICoverageCount;
247
+ }
248
+ declare namespace IFileCoverage {
249
+ interface Serialized {
250
+ id: string;
251
+ uri: UriComponents;
252
+ testIds: string[] | undefined;
253
+ statement: ICoverageCount;
254
+ branch?: ICoverageCount;
255
+ declaration?: ICoverageCount;
256
+ }
257
+ const serialize: (original: Readonly<IFileCoverage>) => Serialized;
258
+ const deserialize: (uriIdentity: ITestUriCanonicalizer, serialized: Serialized) => IFileCoverage;
259
+ const empty: (id: string, uri: URI) => IFileCoverage;
260
+ }
261
+ declare const enum DetailType {
262
+ Declaration = 0,
263
+ Statement = 1,
264
+ Branch = 2
265
+ }
266
+ type CoverageDetails = IDeclarationCoverage | IStatementCoverage;
267
+ declare namespace CoverageDetails {
268
+ type Serialized = IDeclarationCoverage.Serialized | IStatementCoverage.Serialized;
269
+ const serialize: (original: Readonly<CoverageDetails>) => Serialized;
270
+ const deserialize: (serialized: Serialized) => CoverageDetails;
271
+ }
272
+ interface IBranchCoverage {
273
+ count: number | boolean;
274
+ label?: string;
275
+ location?: Range | Position;
276
+ }
277
+ declare namespace IBranchCoverage {
278
+ interface Serialized {
279
+ count: number | boolean;
280
+ label?: string;
281
+ location?: IRange | IPosition;
282
+ }
283
+ const serialize: (original: IBranchCoverage) => Serialized;
284
+ const deserialize: (original: Serialized) => IBranchCoverage;
285
+ }
286
+ interface IDeclarationCoverage {
287
+ type: DetailType.Declaration;
288
+ name: string;
289
+ count: number | boolean;
290
+ location: Range | Position;
291
+ }
292
+ declare namespace IDeclarationCoverage {
293
+ interface Serialized {
294
+ type: DetailType.Declaration;
295
+ name: string;
296
+ count: number | boolean;
297
+ location: IRange | IPosition;
298
+ }
299
+ const serialize: (original: IDeclarationCoverage) => Serialized;
300
+ const deserialize: (original: Serialized) => IDeclarationCoverage;
301
+ }
302
+ interface IStatementCoverage {
303
+ type: DetailType.Statement;
304
+ count: number | boolean;
305
+ location: Range | Position;
306
+ branches?: IBranchCoverage[];
307
+ }
308
+ declare namespace IStatementCoverage {
309
+ interface Serialized {
310
+ type: DetailType.Statement;
311
+ count: number | boolean;
312
+ location: IRange | IPosition;
313
+ branches?: IBranchCoverage.Serialized[];
314
+ }
315
+ const serialize: (original: Readonly<IStatementCoverage>) => Serialized;
316
+ const deserialize: (serialized: Serialized) => IStatementCoverage;
317
+ }
318
+
319
+ export { CoverageDetails, DetailType, IBranchCoverage, ICoverageCount, IDeclarationCoverage, IFileCoverage, IRichLocation, type ISerializedTestResults, IStatementCoverage, ITestErrorMessage, ITestItem, ITestMessage, ITestOutputMessage, type ITestRunTask, ITestTaskState, type ITestUriCanonicalizer, InternalTestItem, type ResolvedTestRunRequest, TestItemExpandState, TestMessageType, TestResultItem, TestResultState, TestRunProfileBitset };
@@ -280,7 +280,7 @@ var IFileCoverage;
280
280
  statement: original.statement,
281
281
  branch: original.branch,
282
282
  declaration: original.declaration,
283
- testId: original.testId?.toString(),
283
+ testIds: original.testIds,
284
284
  uri: original.uri.toJSON(),
285
285
  });
286
286
  IFileCoverage.deserialize = (uriIdentity, serialized) => ({
@@ -288,13 +288,12 @@ var IFileCoverage;
288
288
  statement: serialized.statement,
289
289
  branch: serialized.branch,
290
290
  declaration: serialized.declaration,
291
- testId: serialized.testId ? TestId.fromString(serialized.testId) : undefined,
291
+ testIds: serialized.testIds,
292
292
  uri: uriIdentity.asCanonicalUri(URI.revive(serialized.uri)),
293
293
  });
294
294
  IFileCoverage.empty = (id, uri) => ({
295
295
  id,
296
296
  uri,
297
- testId: undefined,
298
297
  statement: ICoverageCount.empty(),
299
298
  });
300
299
  })(IFileCoverage || (IFileCoverage = {})));
@@ -0,0 +1,10 @@
1
+ import { TestResultState } from './testTypes.js';
2
+
3
+ /**
4
+ * Count of the number of tests in each run state.
5
+ */
6
+ type TestStateCount = {
7
+ [K in TestResultState]: number;
8
+ };
9
+
10
+ export type { TestStateCount };
@@ -3,18 +3,37 @@ import { Disposable } from '../../../../base/common/lifecycle.js';
3
3
  class WebviewWindowDragMonitor extends Disposable {
4
4
  constructor(targetWindow, getWebview) {
5
5
  super();
6
- this._register(addDisposableListener(targetWindow, EventType.DRAG_START, () => {
6
+ const onDragStart = () => {
7
7
  getWebview()?.windowDidDragStart();
8
- }));
8
+ };
9
9
  const onDragEnd = () => {
10
10
  getWebview()?.windowDidDragEnd();
11
11
  };
12
+ this._register(addDisposableListener(targetWindow, EventType.DRAG_START, () => {
13
+ onDragStart();
14
+ }));
12
15
  this._register(addDisposableListener(targetWindow, EventType.DRAG_END, onDragEnd));
13
16
  this._register(addDisposableListener(targetWindow, EventType.MOUSE_MOVE, currentEvent => {
14
17
  if (currentEvent.buttons === 0) {
15
18
  onDragEnd();
16
19
  }
17
20
  }));
21
+ this._register(addDisposableListener(targetWindow, EventType.DRAG, (event) => {
22
+ if (event.shiftKey) {
23
+ onDragEnd();
24
+ }
25
+ else {
26
+ onDragStart();
27
+ }
28
+ }));
29
+ this._register(addDisposableListener(targetWindow, EventType.DRAG_OVER, (event) => {
30
+ if (event.shiftKey) {
31
+ onDragEnd();
32
+ }
33
+ else {
34
+ onDragStart();
35
+ }
36
+ }));
18
37
  }
19
38
  }
20
39
  export { WebviewWindowDragMonitor };
@@ -1,29 +1,28 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
2
  import { createStyleSheet, asCSSUrl } from '../../../../base/browser/dom.js';
3
- import { DisposableStore } from '../../../../base/common/lifecycle.js';
3
+ import { Disposable } from '../../../../base/common/lifecycle.js';
4
4
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
5
5
  import { LifecyclePhase } from '../../../services/lifecycle/common/lifecycle.js';
6
6
  import { ILifecycleService } from '../../../services/lifecycle/common/lifecycle.service.js';
7
- let WebviewIconManager = class WebviewIconManager {
7
+ let WebviewIconManager = class WebviewIconManager extends Disposable {
8
8
  constructor(_lifecycleService, _configService) {
9
+ super();
9
10
  this._lifecycleService = _lifecycleService;
10
11
  this._configService = _configService;
11
12
  this._icons = ( new Map());
12
- this._configService.onDidChangeConfiguration(e => {
13
+ this._register(this._configService.onDidChangeConfiguration(e => {
13
14
  if (e.affectsConfiguration('workbench.iconTheme')) {
14
15
  this.updateStyleSheet();
15
16
  }
16
- });
17
+ }));
17
18
  }
18
19
  dispose() {
19
- this._styleElementDisposable?.dispose();
20
- this._styleElementDisposable = undefined;
20
+ super.dispose();
21
21
  this._styleElement = undefined;
22
22
  }
23
23
  get styleElement() {
24
24
  if (!this._styleElement) {
25
- this._styleElementDisposable = ( new DisposableStore());
26
- this._styleElement = createStyleSheet(undefined, undefined, this._styleElementDisposable);
25
+ this._styleElement = createStyleSheet(undefined, undefined, this._store);
27
26
  this._styleElement.className = 'webview-icons';
28
27
  }
29
28
  return this._styleElement;
@@ -137,10 +137,10 @@ let AuthenticationService = class AuthenticationService extends Disposable {
137
137
  }
138
138
  throw ( new Error(`No authentication provider '${id}' is currently registered.`));
139
139
  }
140
- async getSessions(id, scopes, activateImmediate = false) {
140
+ async getSessions(id, scopes, account, activateImmediate = false) {
141
141
  const authProvider = this._authenticationProviders.get(id) || (await this.tryActivateProvider(id, activateImmediate));
142
142
  if (authProvider) {
143
- return await authProvider.getSessions(scopes);
143
+ return await authProvider.getSessions(scopes, { account });
144
144
  }
145
145
  else {
146
146
  throw ( new Error(`No authentication provider '${id}' is currently registered.`));
@@ -150,7 +150,7 @@ let AuthenticationService = class AuthenticationService extends Disposable {
150
150
  const authProvider = this._authenticationProviders.get(id) || (await this.tryActivateProvider(id, !!options?.activateImmediate));
151
151
  if (authProvider) {
152
152
  return await authProvider.createSession(scopes, {
153
- sessionToRecreate: options?.sessionToRecreate
153
+ account: options?.account
154
154
  });
155
155
  }
156
156
  else {