@codingame/monaco-vscode-api 5.3.0 → 6.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 (998) hide show
  1. package/api.js +1 -1
  2. package/extensions.d.ts +4 -4
  3. package/localExtensionHost.js +2 -1
  4. package/missing-services.js +70 -28
  5. package/package.json +8 -8
  6. package/service-override/dialogs.d.ts +1 -8
  7. package/service-override/files.d.ts +0 -1
  8. package/service-override/search.d.ts +1 -8
  9. package/service-override/tools/editor.js +11 -2
  10. package/services.js +2 -2
  11. package/vscode/src/vs/base/browser/canIUse.js +10 -4
  12. package/vscode/src/vs/base/browser/deviceAccess.js +60 -0
  13. package/vscode/src/vs/base/browser/dom.js +25 -9
  14. package/vscode/src/vs/base/browser/formattedTextRenderer.js +36 -24
  15. package/vscode/src/vs/base/browser/keyboardEvent.js +24 -24
  16. package/vscode/src/vs/base/browser/markdownRenderer.js +130 -30
  17. package/vscode/src/vs/base/browser/performance.js +24 -18
  18. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +22 -16
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +3 -2
  20. package/vscode/src/vs/base/browser/ui/button/button.js +19 -7
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +43 -17
  23. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +7 -6
  24. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +4 -2
  25. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +3 -2
  26. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +5 -4
  27. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +5 -4
  28. package/vscode/src/vs/base/browser/ui/hover/hover.d.ts +5 -0
  29. package/vscode/src/vs/base/browser/ui/hover/hoverDelegate2.js +1 -0
  30. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.css.js +1 -1
  31. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +10 -6
  32. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +16 -1
  33. package/vscode/src/vs/base/browser/ui/iconLabel/iconlabel.css.js +1 -1
  34. package/vscode/src/vs/base/browser/ui/icons/iconSelectBox.js +2 -1
  35. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +17 -9
  36. package/vscode/src/vs/base/browser/ui/list/list.js +12 -1
  37. package/vscode/src/vs/base/browser/ui/list/listView.js +19 -11
  38. package/vscode/src/vs/base/browser/ui/list/listWidget.js +17 -16
  39. package/vscode/src/vs/base/browser/ui/menu/menu.js +17 -15
  40. package/vscode/src/vs/base/browser/ui/menu/menubar.js +14 -14
  41. package/vscode/src/vs/base/browser/ui/resizable/resizable.js +9 -9
  42. package/vscode/src/vs/base/browser/ui/sash/sash.js +30 -18
  43. package/vscode/src/vs/base/browser/ui/scrollbar/horizontalScrollbar.js +5 -4
  44. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +3 -3
  45. package/vscode/src/vs/base/browser/ui/scrollbar/scrollbarVisibilityController.js +3 -2
  46. package/vscode/src/vs/base/browser/ui/scrollbar/verticalScrollbar.js +3 -2
  47. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +3 -0
  48. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +25 -20
  49. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxNative.js +6 -2
  50. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +26 -24
  51. package/vscode/src/vs/base/browser/ui/splitview/splitview.js +33 -27
  52. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +5 -3
  53. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +4 -2
  54. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -2
  55. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +30 -24
  56. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +7 -7
  57. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +15 -15
  58. package/vscode/src/vs/base/browser/ui/tree/tree.js +13 -1
  59. package/vscode/src/vs/base/common/actions.js +1 -1
  60. package/vscode/src/vs/base/common/arrays.js +2 -5
  61. package/vscode/src/vs/base/common/assert.js +7 -2
  62. package/vscode/src/vs/base/common/async.js +38 -14
  63. package/vscode/src/vs/base/common/charCode.js +296 -0
  64. package/vscode/src/vs/base/common/codicons.d.ts +1 -0
  65. package/vscode/src/vs/base/common/codiconsLibrary.js +1 -0
  66. package/vscode/src/vs/base/common/color.js +24 -23
  67. package/vscode/src/vs/base/common/diff/diff.js +15 -10
  68. package/vscode/src/vs/base/common/event.js +83 -26
  69. package/vscode/src/vs/base/common/extpath.js +10 -9
  70. package/vscode/src/vs/base/common/filters.js +40 -32
  71. package/vscode/src/vs/base/common/fuzzyScorer.js +10 -9
  72. package/vscode/src/vs/base/common/glob.js +2 -1
  73. package/vscode/src/vs/base/common/hash.js +15 -10
  74. package/vscode/src/vs/base/common/htmlContent.js +8 -3
  75. package/vscode/src/vs/base/common/json.js +323 -149
  76. package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -9
  77. package/vscode/src/vs/base/common/jsonFormatter.js +30 -30
  78. package/vscode/src/vs/base/common/keyCodes.js +591 -249
  79. package/vscode/src/vs/base/common/keybindingLabels.js +4 -3
  80. package/vscode/src/vs/base/common/keybindings.js +30 -17
  81. package/vscode/src/vs/base/common/labels.js +10 -10
  82. package/vscode/src/vs/base/common/lifecycle.js +5 -0
  83. package/vscode/src/vs/base/common/map.js +20 -14
  84. package/vscode/src/vs/base/common/marshalling.js +5 -4
  85. package/vscode/src/vs/base/common/marshallingIds.js +22 -0
  86. package/vscode/src/vs/base/common/naturalLanguage/korean.js +213 -129
  87. package/vscode/src/vs/base/common/network.js +3 -2
  88. package/vscode/src/vs/base/common/objects.js +8 -1
  89. package/vscode/src/vs/base/common/observableInternal/autorun.js +19 -13
  90. package/vscode/src/vs/base/common/observableInternal/base.js +1 -1
  91. package/vscode/src/vs/base/common/observableInternal/derived.js +35 -19
  92. package/vscode/src/vs/base/common/observableInternal/utils.js +9 -1
  93. package/vscode/src/vs/base/common/platform.js +26 -10
  94. package/vscode/src/vs/base/common/prefixTree.js +3 -0
  95. package/vscode/src/vs/base/common/processes.js +32 -0
  96. package/vscode/src/vs/base/common/resources.js +4 -3
  97. package/vscode/src/vs/base/common/scrollable.js +7 -1
  98. package/vscode/src/vs/base/common/strings.d.ts +9 -0
  99. package/vscode/src/vs/base/common/strings.js +94 -47
  100. package/vscode/src/vs/base/common/ternarySearchTree.js +54 -39
  101. package/vscode/src/vs/base/common/uint.js +14 -5
  102. package/vscode/src/vs/base/common/uri.js +41 -39
  103. package/vscode/src/vs/base/common/uriIpc.js +2 -1
  104. package/vscode/src/vs/base/common/worker/simpleWorker.js +20 -12
  105. package/vscode/src/vs/base/parts/ipc/common/ipc.js +77 -55
  106. package/vscode/src/vs/base/parts/ipc/common/ipc.net.js +108 -51
  107. package/vscode/src/vs/base/parts/storage/common/storage.js +3 -1
  108. package/vscode/src/vs/editor/browser/config/charWidthReader.js +10 -4
  109. package/vscode/src/vs/editor/browser/config/editorConfiguration.js +4 -3
  110. package/vscode/src/vs/editor/browser/config/fontMeasurements.js +21 -21
  111. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +28 -25
  112. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +68 -50
  113. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +5 -3
  114. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +49 -44
  115. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +8 -6
  116. package/vscode/src/vs/editor/browser/controller/textAreaState.js +8 -7
  117. package/vscode/src/vs/editor/browser/coreCommands.js +215 -198
  118. package/vscode/src/vs/editor/browser/editorBrowser.js +30 -1
  119. package/vscode/src/vs/editor/browser/editorExtensions.js +19 -10
  120. package/vscode/src/vs/editor/browser/services/abstractCodeEditorService.js +28 -18
  121. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +2 -1
  122. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.js +26 -10
  123. package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +70 -62
  124. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +5 -3
  125. package/vscode/src/vs/editor/browser/services/markerDecorations.js +2 -2
  126. package/vscode/src/vs/editor/browser/stableEditorScroll.js +4 -3
  127. package/vscode/src/vs/editor/browser/view/domLineBreaksComputer.js +27 -21
  128. package/vscode/src/vs/editor/browser/view/viewController.js +5 -4
  129. package/vscode/src/vs/editor/browser/view/viewLayer.js +2 -1
  130. package/vscode/src/vs/editor/browser/view/viewOverlays.js +9 -8
  131. package/vscode/src/vs/editor/browser/view/viewPart.js +15 -2
  132. package/vscode/src/vs/editor/browser/view/viewUserInputEvents.js +2 -1
  133. package/vscode/src/vs/editor/browser/view.js +9 -8
  134. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +2 -1
  135. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +47 -20
  136. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +7 -6
  137. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +3 -2
  138. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +19 -17
  139. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +16 -10
  140. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +7 -6
  141. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +9 -8
  142. package/vscode/src/vs/editor/browser/viewParts/lines/rangeUtil.js +4 -3
  143. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +29 -24
  144. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +35 -31
  145. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +3 -2
  146. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +5 -4
  147. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +39 -29
  148. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRenderer.js +9 -9
  149. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharRendererFactory.js +22 -22
  150. package/vscode/src/vs/editor/browser/viewParts/minimap/minimapCharSheet.js +20 -7
  151. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +41 -20
  152. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +37 -19
  153. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +7 -6
  154. package/vscode/src/vs/editor/browser/viewParts/rulers/rulers.js +5 -4
  155. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +4 -3
  156. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +33 -26
  157. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +9 -9
  158. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +22 -21
  159. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +6 -5
  160. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +18 -16
  161. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorContributions.js +12 -11
  162. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +195 -149
  163. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +7 -5
  164. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +24 -23
  165. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +47 -35
  166. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +15 -12
  167. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js +9 -6
  168. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +10 -10
  169. package/vscode/src/vs/editor/browser/widget/diffEditor/delegatingEditorImpl.js +19 -18
  170. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +7 -6
  171. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +9 -3
  172. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +26 -9
  173. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +2 -2
  174. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +29 -12
  175. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +13 -10
  176. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +2 -1
  177. package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
  178. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +4 -7
  179. package/vscode/src/vs/editor/browser/widget/markdownRenderer/browser/markdownRenderer.js +2 -1
  180. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/multiDiffEditorWidgetImpl.js +49 -39
  181. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/style.css.js +1 -1
  182. package/vscode/src/vs/editor/common/commands/replaceCommand.js +2 -2
  183. package/vscode/src/vs/editor/common/commands/shiftCommand.js +6 -5
  184. package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +2 -1
  185. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +2 -2
  186. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +4 -0
  187. package/vscode/src/vs/editor/common/config/editorOptions.js +719 -559
  188. package/vscode/src/vs/editor/common/config/fontInfo.js +8 -8
  189. package/vscode/src/vs/editor/common/core/characterClassifier.js +8 -3
  190. package/vscode/src/vs/editor/common/core/cursorColumns.js +3 -2
  191. package/vscode/src/vs/editor/common/core/eolCounter.js +16 -8
  192. package/vscode/src/vs/editor/common/core/lineRange.d.ts +0 -9
  193. package/vscode/src/vs/editor/common/core/lineRange.js +0 -28
  194. package/vscode/src/vs/editor/common/core/selection.js +12 -7
  195. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +12 -5
  196. package/vscode/src/vs/editor/common/cursor/cursor.js +34 -31
  197. package/vscode/src/vs/editor/common/cursor/cursorAtomicMoveOperations.js +17 -10
  198. package/vscode/src/vs/editor/common/cursor/cursorColumnSelection.js +3 -3
  199. package/vscode/src/vs/editor/common/cursor/cursorDeleteOperations.js +4 -4
  200. package/vscode/src/vs/editor/common/cursor/cursorMoveCommands.js +52 -50
  201. package/vscode/src/vs/editor/common/cursor/cursorMoveOperations.js +14 -12
  202. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +35 -33
  203. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +79 -65
  204. package/vscode/src/vs/editor/common/cursor/oneCursor.js +7 -6
  205. package/vscode/src/vs/editor/common/cursorCommon.js +54 -38
  206. package/vscode/src/vs/editor/common/cursorEvents.js +11 -0
  207. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +1 -1
  208. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/lineSequence.js +2 -1
  209. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +43 -30
  210. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/utils.js +2 -1
  211. package/vscode/src/vs/editor/common/diff/legacyLinesDiffComputer.js +5 -4
  212. package/vscode/src/vs/editor/common/editorCommon.js +16 -1
  213. package/vscode/src/vs/editor/common/encodedTokenAttributes.js +71 -19
  214. package/vscode/src/vs/editor/common/languages/autoIndent.js +83 -89
  215. package/vscode/src/vs/editor/common/languages/enterAction.js +10 -20
  216. package/vscode/src/vs/editor/common/languages/languageConfiguration.js +9 -7
  217. package/vscode/src/vs/editor/common/languages/languageConfigurationRegistry.js +3 -10
  218. package/vscode/src/vs/editor/common/languages/linkComputer.js +94 -69
  219. package/vscode/src/vs/editor/common/languages/nullTokenize.js +6 -5
  220. package/vscode/src/vs/editor/common/languages/supports/indentRules.js +12 -5
  221. package/vscode/src/vs/editor/common/languages/supports/indentationLineProcessor.js +150 -0
  222. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.d.ts +2 -0
  223. package/vscode/src/vs/editor/common/languages/supports/languageBracketsConfiguration.js +5 -0
  224. package/vscode/src/vs/editor/common/languages/supports/onEnter.js +4 -3
  225. package/vscode/src/vs/editor/common/languages/supports/richEditBrackets.js +3 -3
  226. package/vscode/src/vs/editor/common/languages/supports/tokenization.js +25 -24
  227. package/vscode/src/vs/editor/common/languages/supports.d.ts +5 -1
  228. package/vscode/src/vs/editor/common/languages/supports.js +13 -1
  229. package/vscode/src/vs/editor/common/languages/textToHtmlTokenizer.js +14 -12
  230. package/vscode/src/vs/editor/common/languages.d.ts +6 -15
  231. package/vscode/src/vs/editor/common/languages.js +204 -113
  232. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/ast.js +18 -10
  233. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/bracketPairsTree.js +18 -16
  234. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/brackets.js +4 -4
  235. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/concat23Trees.js +3 -3
  236. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/parser.js +8 -7
  237. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/tokenizer.js +15 -33
  238. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/fixBrackets.js +5 -4
  239. package/vscode/src/vs/editor/common/model/editStack.js +6 -4
  240. package/vscode/src/vs/editor/common/model/indentationGuesser.js +7 -6
  241. package/vscode/src/vs/editor/common/model/intervalTree.js +119 -71
  242. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeBase.js +17 -16
  243. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBuffer.js +11 -11
  244. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/pieceTreeTextBufferBuilder.js +5 -3
  245. package/vscode/src/vs/editor/common/model/pieceTreeTextBuffer/rbTreeBase.js +46 -41
  246. package/vscode/src/vs/editor/common/model/textModel.js +35 -26
  247. package/vscode/src/vs/editor/common/model/textModelSearch.js +15 -14
  248. package/vscode/src/vs/editor/common/model/textModelTokens.js +8 -3
  249. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +8 -5
  250. package/vscode/src/vs/editor/common/model/utils.js +3 -2
  251. package/vscode/src/vs/editor/common/model.js +46 -1
  252. package/vscode/src/vs/editor/common/modelLineProjectionData.js +10 -10
  253. package/vscode/src/vs/editor/common/services/editorBaseApi.js +5 -5
  254. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +1 -1
  255. package/vscode/src/vs/editor/common/services/getIconClasses.js +6 -1
  256. package/vscode/src/vs/editor/common/services/languageFeatureDebounce.js +2 -2
  257. package/vscode/src/vs/editor/common/services/languageFeaturesService.js +2 -2
  258. package/vscode/src/vs/editor/common/services/languagesRegistry.js +4 -3
  259. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +19 -18
  260. package/vscode/src/vs/editor/common/services/modelService.js +9 -8
  261. package/vscode/src/vs/editor/common/services/semanticTokensDto.js +8 -3
  262. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +27 -16
  263. package/vscode/src/vs/editor/common/services/semanticTokensStylingService.js +2 -2
  264. package/vscode/src/vs/editor/common/services/treeViewsDndService.js +2 -2
  265. package/vscode/src/vs/editor/common/services/unicodeTextModelHighlighter.js +31 -18
  266. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -39
  267. package/vscode/src/vs/editor/common/textModelEvents.js +14 -6
  268. package/vscode/src/vs/editor/common/tokenizationRegistry.js +3 -2
  269. package/vscode/src/vs/editor/common/tokenizationTextModelPart.js +6 -0
  270. package/vscode/src/vs/editor/common/tokens/contiguousTokensStore.js +7 -7
  271. package/vscode/src/vs/editor/common/tokens/lineTokens.d.ts +12 -1
  272. package/vscode/src/vs/editor/common/tokens/lineTokens.js +64 -8
  273. package/vscode/src/vs/editor/common/tokens/sparseMultilineTokens.js +5 -4
  274. package/vscode/src/vs/editor/common/tokens/sparseTokensStore.js +7 -6
  275. package/vscode/src/vs/editor/common/viewEventHandler.js +19 -18
  276. package/vscode/src/vs/editor/common/viewEvents.js +50 -19
  277. package/vscode/src/vs/editor/common/viewLayout/lineDecorations.js +9 -6
  278. package/vscode/src/vs/editor/common/viewLayout/linePart.js +12 -3
  279. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +25 -23
  280. package/vscode/src/vs/editor/common/viewLayout/viewLineRenderer.js +97 -72
  281. package/vscode/src/vs/editor/common/viewModel/minimapTokensColorTracker.js +3 -2
  282. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +2 -1
  283. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +30 -19
  284. package/vscode/src/vs/editor/common/viewModel/overviewZoneManager.js +5 -1
  285. package/vscode/src/vs/editor/common/viewModel/viewModelDecorations.js +11 -9
  286. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +42 -38
  287. package/vscode/src/vs/editor/common/viewModel/viewModelLines.js +15 -8
  288. package/vscode/src/vs/editor/common/viewModel.js +9 -2
  289. package/vscode/src/vs/editor/common/viewModelEventDispatcher.js +30 -14
  290. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +12 -10
  291. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +15 -12
  292. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +4 -2
  293. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +19 -16
  294. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +3 -2
  295. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +21 -19
  296. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +6 -6
  297. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +14 -11
  298. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +2 -2
  299. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +4 -3
  300. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +19 -17
  301. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +21 -12
  302. package/vscode/src/vs/editor/contrib/codeAction/common/types.js +10 -4
  303. package/vscode/src/vs/editor/contrib/codelens/browser/codeLensCache.js +6 -6
  304. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +14 -13
  305. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +4 -2
  306. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +8 -5
  307. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +9 -8
  308. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +7 -4
  309. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerActions.js +6 -4
  310. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPickerWidget.js +8 -5
  311. package/vscode/src/vs/editor/contrib/comment/browser/blockCommentCommand.js +5 -4
  312. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +18 -16
  313. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +20 -12
  314. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +23 -18
  315. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +6 -4
  316. package/vscode/src/vs/editor/contrib/dnd/browser/dnd.js +17 -12
  317. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +2 -2
  318. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +8 -6
  319. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +12 -9
  320. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +10 -8
  321. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +4 -3
  322. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +76 -34
  323. package/vscode/src/vs/editor/contrib/editorState/browser/editorState.js +16 -9
  324. package/vscode/src/vs/editor/contrib/editorState/browser/keybindingCancellation.js +6 -4
  325. package/vscode/src/vs/editor/contrib/find/browser/findController.js +95 -85
  326. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +10 -8
  327. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +31 -25
  328. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +2 -1
  329. package/vscode/src/vs/editor/contrib/find/browser/findState.js +17 -11
  330. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +58 -49
  331. package/vscode/src/vs/editor/contrib/find/browser/replacePattern.js +25 -19
  332. package/vscode/src/vs/editor/contrib/folding/browser/folding.js +68 -64
  333. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +14 -13
  334. package/vscode/src/vs/editor/contrib/folding/browser/foldingModel.js +6 -6
  335. package/vscode/src/vs/editor/contrib/folding/browser/foldingRanges.js +20 -14
  336. package/vscode/src/vs/editor/contrib/format/browser/format.js +31 -10
  337. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +18 -16
  338. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +17 -14
  339. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +8 -5
  340. package/vscode/src/vs/editor/contrib/gotoError/browser/markerNavigationService.js +2 -2
  341. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -38
  342. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToSymbol.js +13 -3
  343. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/clickLinkGesture.js +9 -7
  344. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +9 -7
  345. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +31 -28
  346. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +8 -4
  347. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +2 -6
  348. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +10 -8
  349. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverComputer.js +4 -2
  350. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverController.js +31 -12
  351. package/vscode/src/vs/editor/contrib/hover/browser/contentHoverWidget.js +14 -10
  352. package/vscode/src/vs/editor/contrib/hover/browser/hover.css.js +1 -1
  353. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +247 -0
  354. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +7 -1
  355. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +38 -34
  356. package/vscode/src/vs/editor/contrib/hover/browser/hoverContribution.js +7 -2
  357. package/vscode/src/vs/editor/contrib/hover/browser/hoverController.js +46 -17
  358. package/vscode/src/vs/editor/contrib/hover/browser/hoverOperation.js +37 -18
  359. package/vscode/src/vs/editor/contrib/hover/browser/hoverTypes.js +12 -7
  360. package/vscode/src/vs/editor/contrib/hover/browser/marginHoverWidget.js +9 -7
  361. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +100 -60
  362. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +7 -4
  363. package/vscode/src/vs/editor/contrib/hover/browser/resizableContentWidget.js +6 -4
  364. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +10 -11
  365. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -6
  366. package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +25 -20
  367. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsContribution.js +2 -2
  368. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +26 -20
  369. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +4 -2
  370. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsLocations.js +3 -2
  371. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +9 -7
  372. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +0 -1
  373. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +19 -18
  374. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +9 -7
  375. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletions.contribution.js +5 -2
  376. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsAccessibleView.js +55 -0
  377. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +10 -8
  378. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +26 -14
  379. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +8 -5
  380. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +2 -1
  381. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +2 -1
  382. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +2 -2
  383. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +12 -10
  384. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +3 -2
  385. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +8 -6
  386. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEdit.contribution.js +2 -2
  387. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +5 -4
  388. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +6 -3
  389. package/vscode/src/vs/editor/contrib/inlineProgress/browser/inlineProgress.js +7 -4
  390. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +6 -3
  391. package/vscode/src/vs/editor/contrib/linesOperations/browser/copyLinesCommand.js +2 -2
  392. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +35 -33
  393. package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +4 -2
  394. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +14 -10
  395. package/vscode/src/vs/editor/contrib/links/browser/links.js +13 -10
  396. package/vscode/src/vs/editor/contrib/longLinesHelper/browser/longLinesHelper.js +6 -4
  397. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +14 -9
  398. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +53 -51
  399. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +15 -13
  400. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsModel.js +18 -16
  401. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +19 -6
  402. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +8 -7
  403. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +8 -6
  404. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +5 -3
  405. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +38 -34
  406. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +4 -3
  407. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +22 -20
  408. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +15 -11
  409. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +15 -12
  410. package/vscode/src/vs/editor/contrib/semanticTokens/browser/viewportSemanticTokens.js +2 -2
  411. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +14 -11
  412. package/vscode/src/vs/editor/contrib/smartSelect/browser/wordSelections.js +3 -2
  413. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +13 -10
  414. package/vscode/src/vs/editor/contrib/snippet/browser/snippetParser.js +100 -81
  415. package/vscode/src/vs/editor/contrib/snippet/browser/snippetSession.js +10 -7
  416. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  417. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +7 -5
  418. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollContribution.js +2 -2
  419. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +19 -16
  420. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +2 -1
  421. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +3 -2
  422. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +14 -11
  423. package/vscode/src/vs/editor/contrib/suggest/browser/completionModel.js +18 -10
  424. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +24 -16
  425. package/vscode/src/vs/editor/contrib/suggest/browser/suggestCommitCharacters.js +4 -2
  426. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +83 -69
  427. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +6 -4
  428. package/vscode/src/vs/editor/contrib/suggest/browser/suggestMemory.js +6 -6
  429. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +66 -57
  430. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +71 -59
  431. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +6 -5
  432. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +10 -9
  433. package/vscode/src/vs/editor/contrib/suggest/browser/wordContextKey.js +3 -2
  434. package/vscode/src/vs/editor/contrib/suggest/browser/wordDistance.js +4 -2
  435. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +6 -4
  436. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +28 -25
  437. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +7 -6
  438. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +10 -10
  439. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +16 -12
  440. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +54 -50
  441. package/vscode/src/vs/editor/contrib/wordPartOperations/browser/wordPartOperations.js +21 -19
  442. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +12 -9
  443. package/vscode/src/vs/editor/standalone/browser/iPadShowKeyboard/iPadShowKeyboard.js +6 -4
  444. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +5 -3
  445. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditorService.js +5 -4
  446. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +2 -2
  447. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +50 -43
  448. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +5 -5
  449. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +3 -3
  450. package/vscode/src/vs/platform/accessibility/browser/accessibleView.js +58 -0
  451. package/vscode/src/vs/{workbench/contrib → platform}/accessibility/browser/accessibleView.service.js +1 -1
  452. package/vscode/src/vs/platform/accessibility/browser/accessibleViewRegistry.js +35 -0
  453. package/vscode/src/vs/platform/accessibility/common/accessibility.js +7 -1
  454. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +3 -0
  455. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +61 -51
  456. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.service.d.ts +1 -0
  457. package/vscode/src/vs/platform/action/common/action.d.ts +4 -0
  458. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +13 -8
  459. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +16 -14
  460. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +3 -2
  461. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +6 -4
  462. package/vscode/src/vs/platform/actions/browser/toolbar.js +10 -4
  463. package/vscode/src/vs/platform/actions/common/actions.contribution.js +1 -0
  464. package/vscode/src/vs/platform/actions/common/actions.d.ts +3 -0
  465. package/vscode/src/vs/platform/actions/common/actions.js +14 -10
  466. package/vscode/src/vs/platform/actions/common/menuService.js +9 -8
  467. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +5 -5
  468. package/vscode/src/vs/platform/configuration/common/configuration.js +20 -9
  469. package/vscode/src/vs/platform/configuration/common/configurationModels.js +4 -3
  470. package/vscode/src/vs/platform/configuration/common/configurationRegistry.js +15 -15
  471. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +4 -2
  472. package/vscode/src/vs/platform/contextkey/common/contextkey.js +98 -78
  473. package/vscode/src/vs/platform/contextkey/common/scanner.js +94 -69
  474. package/vscode/src/vs/platform/contextview/browser/contextMenuHandler.js +2 -2
  475. package/vscode/src/vs/platform/contextview/browser/contextViewService.js +6 -6
  476. package/vscode/src/vs/platform/diagnostics/common/diagnostics.js +4 -1
  477. package/vscode/src/vs/platform/editor/common/editor.js +14 -1
  478. package/vscode/src/vs/platform/extensionManagement/common/extensionEnablementService.js +9 -8
  479. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +1 -0
  480. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +106 -61
  481. package/vscode/src/vs/platform/extensionManagement/common/extensionManagementUtil.js +5 -3
  482. package/vscode/src/vs/platform/extensionManagement/common/extensionStorage.js +13 -12
  483. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +16 -9
  484. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +26 -26
  485. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +6 -4
  486. package/vscode/src/vs/platform/extensions/common/extensions.js +22 -1
  487. package/vscode/src/vs/platform/externalServices/common/serviceMachineId.js +3 -2
  488. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +4 -4
  489. package/vscode/src/vs/platform/files/common/files.js +53 -25
  490. package/vscode/src/vs/platform/files/common/inMemoryFilesystemProvider.js +10 -10
  491. package/vscode/src/vs/platform/files/common/watcher.js +26 -10
  492. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +8 -7
  493. package/vscode/src/vs/platform/hover/browser/hover.js +5 -4
  494. package/vscode/src/vs/platform/instantiation/common/extensions.js +6 -1
  495. package/vscode/src/vs/platform/instantiation/common/instantiation.d.ts +5 -1
  496. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +16 -7
  497. package/vscode/src/vs/platform/issue/common/issue.service.js +3 -0
  498. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +7 -6
  499. package/vscode/src/vs/platform/keybinding/common/keybindingResolver.js +15 -9
  500. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.d.ts +3 -0
  501. package/vscode/src/vs/platform/keybinding/common/keybindingsRegistry.js +12 -4
  502. package/vscode/src/vs/platform/keybinding/common/resolvedKeybindingItem.js +2 -1
  503. package/vscode/src/vs/platform/keybinding/common/usLayoutResolvedKeybinding.js +64 -63
  504. package/vscode/src/vs/platform/label/common/label.js +7 -0
  505. package/vscode/src/vs/platform/languagePacks/common/localizedStrings.js +11 -0
  506. package/vscode/src/vs/platform/list/browser/listService.js +3 -2
  507. package/vscode/src/vs/platform/markers/common/markerService.js +1 -0
  508. package/vscode/src/vs/platform/markers/common/markers.js +6 -1
  509. package/vscode/src/vs/platform/observable/common/platformObservableUtils.js +19 -0
  510. package/vscode/src/vs/platform/opener/browser/link.js +2 -1
  511. package/vscode/src/vs/platform/product/common/product.js +1 -1
  512. package/vscode/src/vs/platform/progress/common/progress.js +10 -47
  513. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +7 -0
  514. package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +9 -8
  515. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +81 -113
  516. package/vscode/src/vs/platform/quickinput/browser/quickInputActions.js +145 -0
  517. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +3 -2
  518. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +39 -13
  519. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +1 -0
  520. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +63 -85
  521. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +2 -1
  522. package/vscode/src/vs/platform/quickinput/browser/quickPickPin.js +3 -2
  523. package/vscode/src/vs/platform/quickinput/common/quickAccess.d.ts +16 -0
  524. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +76 -1
  525. package/vscode/src/vs/platform/quickinput/common/quickInput.js +19 -1
  526. package/vscode/src/vs/platform/quickinput/common/quickInput.service.d.ts +5 -1
  527. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +29 -15
  528. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.js +8 -3
  529. package/vscode/src/vs/platform/request/common/request.js +2 -2
  530. package/vscode/src/vs/platform/storage/common/storage.js +22 -22
  531. package/vscode/src/vs/platform/telemetry/common/telemetry.js +15 -1
  532. package/vscode/src/vs/platform/telemetry/common/telemetry.service.d.ts +1 -0
  533. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +12 -12
  534. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -0
  535. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.js +14 -0
  536. package/vscode/src/vs/platform/terminal/common/terminal.js +168 -6
  537. package/vscode/src/vs/platform/theme/common/colorUtils.js +25 -15
  538. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +1 -1
  539. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +66 -64
  540. package/vscode/src/vs/platform/tunnel/common/tunnel.js +3 -1
  541. package/vscode/src/vs/platform/undoRedo/common/undoRedo.js +6 -1
  542. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +29 -24
  543. package/vscode/src/vs/platform/update/common/update.js +37 -10
  544. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +3 -1
  545. package/vscode/src/vs/platform/userDataProfile/common/userDataProfile.js +12 -3
  546. package/vscode/src/vs/platform/userDataSync/common/abstractSynchronizer.js +56 -58
  547. package/vscode/src/vs/platform/userDataSync/common/userDataSync.js +75 -8
  548. package/vscode/src/vs/platform/userDataSync/common/userDataSyncMachines.js +6 -5
  549. package/vscode/src/vs/platform/userDataSync/common/userDataSyncStoreService.js +49 -48
  550. package/vscode/src/vs/platform/window/common/window.js +24 -7
  551. package/vscode/src/vs/platform/workspace/common/workspace.js +7 -1
  552. package/vscode/src/vs/platform/workspace/common/workspaceTrust.js +7 -0
  553. package/vscode/src/vs/workbench/api/browser/statusBarService.js +12 -6
  554. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +59 -40
  555. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +27 -27
  556. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +68 -3
  557. package/vscode/src/vs/workbench/api/common/extHostApiCommands.js +19 -0
  558. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +6 -6
  559. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +115 -45
  560. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +14 -9
  561. package/vscode/src/vs/workbench/api/common/extHostComments.js +14 -12
  562. package/vscode/src/vs/workbench/api/common/extHostConfiguration.js +10 -9
  563. package/vscode/src/vs/workbench/api/common/extHostCustomEditors.js +13 -8
  564. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +5 -3
  565. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +19 -19
  566. package/vscode/src/vs/workbench/api/common/extHostEmbedding.js +64 -0
  567. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  568. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +17 -15
  569. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  570. package/vscode/src/vs/workbench/api/common/extHostFileSystemEventService.js +13 -12
  571. package/vscode/src/vs/workbench/api/common/extHostFileSystemInfo.js +2 -1
  572. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +79 -76
  573. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +121 -87
  574. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +24 -8
  575. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +1 -0
  576. package/vscode/src/vs/workbench/api/common/extHostSCM.js +34 -28
  577. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +38 -2
  578. package/vscode/src/vs/workbench/api/common/extHostTask.js +2 -2
  579. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +7 -5
  580. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +8 -6
  581. package/vscode/src/vs/workbench/api/common/extHostTestItem.js +7 -7
  582. package/vscode/src/vs/workbench/api/common/extHostTesting.js +140 -45
  583. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +2 -1
  584. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +259 -278
  585. package/vscode/src/vs/workbench/api/common/extHostTypes.js +83 -22
  586. package/vscode/src/vs/workbench/api/common/extHostWebviewMessaging.js +23 -22
  587. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +2 -1
  588. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +2 -2
  589. package/vscode/src/vs/workbench/api/worker/extHost.worker.services.js +3 -3
  590. package/vscode/src/vs/workbench/api/worker/extensionHostWorker.js +4 -4
  591. package/vscode/src/vs/workbench/browser/actions/developerActions.js +13 -10
  592. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +95 -100
  593. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +7 -6
  594. package/vscode/src/vs/workbench/browser/actions/widgetNavigationCommands.js +8 -7
  595. package/vscode/src/vs/workbench/browser/actions/windowActions.js +24 -23
  596. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +17 -16
  597. package/vscode/src/vs/workbench/browser/codeeditor.js +12 -9
  598. package/vscode/src/vs/workbench/browser/labels.js +3 -0
  599. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +11 -8
  600. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +29 -28
  601. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +34 -33
  602. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +4 -2
  603. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +37 -33
  604. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution._autosave.js +2 -2
  605. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +2 -0
  606. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +224 -219
  607. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +30 -27
  608. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +204 -161
  609. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +151 -80
  610. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +9 -5
  611. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +4 -3
  612. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +3 -3
  613. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +5 -3
  614. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +7 -6
  615. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +28 -22
  616. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -10
  617. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +3 -0
  618. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +19 -17
  619. package/vscode/src/vs/workbench/browser/parts/editor/media/editortabscontrol.css.js +1 -1
  620. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +1 -1
  621. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +218 -76
  622. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +4 -0
  623. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +1 -0
  624. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +16 -15
  625. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +10 -11
  626. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -1
  627. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +7 -5
  628. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +12 -10
  629. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +7 -4
  630. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +13 -9
  631. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -2
  632. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +10 -8
  633. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +33 -33
  634. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +8 -6
  635. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +12 -8
  636. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +12 -6
  637. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.d.ts +1 -1
  638. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +32 -36
  639. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.d.ts +1 -1
  640. package/vscode/src/vs/workbench/browser/parts/titlebar/media/menubarControl.css.js +1 -1
  641. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +22 -16
  642. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +21 -14
  643. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +8 -12
  644. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.d.ts +2 -0
  645. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -6
  646. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +13 -9
  647. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +57 -46
  648. package/vscode/src/vs/workbench/browser/window.js +329 -0
  649. package/vscode/src/vs/workbench/browser/workbench.contribution.js +207 -199
  650. package/vscode/src/vs/workbench/common/configuration.js +94 -20
  651. package/vscode/src/vs/workbench/common/contextkeys.js +50 -40
  652. package/vscode/src/vs/workbench/common/contributions.js +23 -22
  653. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +16 -16
  654. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +125 -63
  655. package/vscode/src/vs/workbench/common/editor/editorInput.js +6 -6
  656. package/vscode/src/vs/workbench/common/editor/editorOptions.js +5 -4
  657. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +9 -6
  658. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +13 -12
  659. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +7 -7
  660. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +3 -2
  661. package/vscode/src/vs/workbench/common/editor.d.ts +13 -11
  662. package/vscode/src/vs/workbench/common/editor.js +49 -1
  663. package/vscode/src/vs/workbench/common/memento.js +10 -9
  664. package/vscode/src/vs/workbench/common/notifications.js +32 -11
  665. package/vscode/src/vs/workbench/common/theme.js +167 -137
  666. package/vscode/src/vs/workbench/common/views.js +5 -6
  667. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +477 -378
  668. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +87 -49
  669. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -29
  670. package/vscode/src/vs/workbench/contrib/accessibility/common/accessibilityCommands.js +15 -0
  671. package/vscode/src/vs/workbench/contrib/callHierarchy/common/callHierarchy.js +6 -1
  672. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +74 -48
  673. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +10 -8
  674. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +5 -3
  675. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +3 -2
  676. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +50 -43
  677. package/vscode/src/vs/workbench/contrib/chat/browser/chatConfirmationWidget.js +47 -0
  678. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -1
  679. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +8 -21
  680. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +101 -47
  681. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +276 -140
  682. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +120 -29
  683. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownRenderer.js +65 -0
  684. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +51 -34
  685. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.css.js +1 -1
  686. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +55 -34
  687. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +20 -18
  688. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  689. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatAgentHover.css.js +1 -1
  690. package/vscode/src/vs/workbench/contrib/chat/browser/media/chatConfirmationWidget.css.js +4 -0
  691. package/vscode/src/vs/workbench/contrib/chat/common/annotations.js +7 -7
  692. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +79 -23
  693. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  694. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +189 -103
  695. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +9 -10
  696. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +21 -5
  697. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  698. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +19 -12
  699. package/vscode/src/vs/workbench/contrib/chat/common/chatWordCounter.js +8 -15
  700. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +11 -2
  701. package/vscode/src/vs/workbench/contrib/chat/common/languageModels.js +170 -0
  702. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActions.contribution.js +2 -1
  703. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +2 -2
  704. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +20 -12
  705. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +77 -0
  706. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +9 -89
  707. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +2 -2
  708. package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorLineNumberMenu.js +7 -5
  709. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +4 -7
  710. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +2 -2
  711. package/vscode/src/vs/workbench/contrib/codeEditor/browser/menuPreventer.js +5 -4
  712. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +10 -6
  713. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +15 -12
  714. package/vscode/src/vs/workbench/contrib/codeEditor/browser/simpleEditorOptions.js +2 -1
  715. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +5 -3
  716. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +2 -1
  717. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +17 -14
  718. package/vscode/src/vs/workbench/contrib/codeEditor/browser/workbenchReferenceSearch.js +2 -2
  719. package/vscode/src/vs/workbench/contrib/comments/browser/commentFormActions.js +2 -1
  720. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +2 -1
  721. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +14 -12
  722. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +23 -15
  723. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadAdditionalActions.js +2 -1
  724. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -2
  725. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +3 -1
  726. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +12 -10
  727. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +11 -14
  728. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +49 -76
  729. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +50 -40
  730. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +15 -8
  731. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +4 -2
  732. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +8 -6
  733. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +9 -8
  734. package/vscode/src/vs/workbench/contrib/comments/common/commentCommandIds.js +15 -0
  735. package/vscode/src/vs/workbench/contrib/contextmenu/browser/contextmenu.contribution.js +2 -1
  736. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +14 -14
  737. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +3 -2
  738. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +19 -17
  739. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +33 -32
  740. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +25 -20
  741. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +4 -3
  742. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +62 -60
  743. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +40 -4
  744. package/vscode/src/vs/workbench/contrib/debug/common/debug.service.d.ts +2 -2
  745. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +4 -1
  746. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +15 -16
  747. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +2 -1
  748. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +118 -109
  749. package/vscode/src/vs/workbench/contrib/extensions/browser/media/extensionActions.css.js +1 -1
  750. package/vscode/src/vs/workbench/contrib/extensions/common/extensions.js +24 -1
  751. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -1
  752. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +4 -2
  753. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +3 -2
  754. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +23 -16
  755. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +12 -9
  756. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditorTracker.js +3 -2
  757. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +14 -12
  758. package/vscode/src/vs/workbench/contrib/files/browser/explorerFileContrib.js +10 -2
  759. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +9 -7
  760. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +12 -9
  761. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands._save.js +23 -22
  762. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +13 -11
  763. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +25 -25
  764. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +7 -7
  765. package/vscode/src/vs/workbench/contrib/files/browser/files.js +8 -1
  766. package/vscode/src/vs/workbench/contrib/files/browser/media/explorerviewlet.css.js +1 -1
  767. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  768. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +16 -10
  769. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +55 -111
  770. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +42 -35
  771. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +2 -1
  772. package/vscode/src/vs/workbench/contrib/files/common/explorerFileNestingTrie.js +15 -8
  773. package/vscode/src/vs/workbench/contrib/files/common/explorerModel.js +5 -3
  774. package/vscode/src/vs/workbench/contrib/files/common/files.js +25 -2
  775. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +2 -1
  776. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +8 -6
  777. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +7 -4
  778. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +2 -2
  779. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +6 -4
  780. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +82 -137
  781. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +11 -8
  782. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +292 -328
  783. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +69 -67
  784. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +79 -417
  785. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +50 -61
  786. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +32 -124
  787. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +41 -20
  788. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +1 -1
  789. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +5 -1
  790. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +59 -53
  791. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +5 -4
  792. package/vscode/src/vs/workbench/contrib/list/browser/list.contribution.js +2 -2
  793. package/vscode/src/vs/workbench/contrib/markers/common/markers.js +7 -2
  794. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +3 -3
  795. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +15 -13
  796. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/diffComputer.js +1 -1
  797. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/lineRange.js +3 -2
  798. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +26 -20
  799. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/modifiedBaseRange.js +13 -8
  800. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +22 -10
  801. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +5 -11
  802. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +4 -3
  803. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +7 -57
  804. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findFilters.js +25 -1
  805. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +7 -6
  806. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +103 -23
  807. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindWidget.js +6 -5
  808. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +16 -15
  809. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +2 -2
  810. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +137 -261
  811. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +26 -8
  812. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/editActions.js +25 -23
  813. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +23 -21
  814. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css.js +1 -1
  815. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +4 -2
  816. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookBrowser.js +21 -1
  817. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +16 -11
  818. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -18
  819. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +24 -13
  820. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +1 -1
  821. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +8 -7
  822. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDnd.js +3 -3
  823. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellDragRenderer.js +5 -3
  824. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellFocusIndicator.js +1 -1
  825. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellOutput.js +17 -10
  826. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +14 -9
  827. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +3 -2
  828. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellWidgets.js +7 -0
  829. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +11 -1
  830. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -1
  831. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +15 -5
  832. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +7 -4
  833. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +36 -25
  834. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +14 -3
  835. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +20 -10
  836. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +2 -1
  837. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +2 -1
  838. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +7 -10
  839. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +3 -2
  840. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +2 -2
  841. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +19 -9
  842. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +5 -3
  843. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +5 -4
  844. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +15 -11
  845. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +2 -2
  846. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +4 -3
  847. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +35 -2
  848. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +14 -12
  849. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +41 -15
  850. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +8 -2
  851. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +5 -3
  852. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +29 -23
  853. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsLayout.js +1 -1
  854. package/vscode/src/vs/workbench/contrib/preferences/browser/settingsTreeModels.js +31 -24
  855. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +11 -8
  856. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +29 -27
  857. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  858. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +27 -45
  859. package/vscode/src/vs/workbench/contrib/scm/common/scm.js +13 -1
  860. package/vscode/src/vs/workbench/contrib/search/browser/anythingQuickAccess.js +785 -0
  861. package/vscode/src/vs/workbench/contrib/search/browser/media/anythingQuickAccess.css.js +4 -0
  862. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +2 -2
  863. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +23 -22
  864. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +36 -32
  865. package/vscode/src/vs/workbench/contrib/search/browser/symbolsQuickAccess.js +222 -0
  866. package/vscode/src/vs/workbench/contrib/search/common/cacheState.js +85 -0
  867. package/vscode/src/vs/workbench/contrib/search/common/cellSearchModel.js +3 -2
  868. package/vscode/src/vs/workbench/contrib/search/common/constants.js +49 -1
  869. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +6 -5
  870. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +8 -2
  871. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +16 -13
  872. package/vscode/src/vs/workbench/contrib/snippets/browser/tabCompletion.js +11 -11
  873. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +47 -30
  874. package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +1 -0
  875. package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +80 -11
  876. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +5 -3
  877. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.js +27 -1
  878. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +8 -5
  879. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalMenus.js +721 -0
  880. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessExtHostProxy.js +9 -8
  881. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +0 -9
  882. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +2 -5
  883. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +166 -71
  884. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +92 -144
  885. package/vscode/src/vs/workbench/contrib/terminal/common/terminalStrings.js +41 -0
  886. package/vscode/src/vs/workbench/contrib/terminalContrib/accessibility/common/terminal.accessibility.js +12 -0
  887. package/vscode/src/vs/workbench/contrib/terminalContrib/find/common/terminal.find.js +22 -0
  888. package/vscode/src/vs/workbench/contrib/terminalContrib/suggest/common/terminal.suggest.js +18 -0
  889. package/vscode/src/vs/workbench/contrib/testing/common/constants.js +103 -0
  890. package/vscode/src/vs/workbench/contrib/testing/common/getComputedState.js +4 -3
  891. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +79 -22
  892. package/vscode/src/vs/workbench/contrib/testing/common/testId.js +46 -18
  893. package/vscode/src/vs/workbench/contrib/testing/common/testItemCollection.js +51 -41
  894. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +33 -19
  895. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +108 -38
  896. package/vscode/src/vs/workbench/contrib/testing/common/testingStates.js +19 -18
  897. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +1 -2
  898. package/vscode/src/vs/workbench/contrib/typeHierarchy/common/typeHierarchy.js +6 -1
  899. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.js +77 -0
  900. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomainService.service.js +3 -0
  901. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +119 -0
  902. package/vscode/src/vs/workbench/contrib/webview/browser/webview.js +9 -2
  903. package/vscode/src/vs/workbench/contrib/webview/common/webview.js +4 -3
  904. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +3 -2
  905. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +2 -1
  906. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewIconManager.js +2 -1
  907. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewWorkbenchService.js +22 -10
  908. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +25 -9
  909. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +370 -0
  910. package/vscode/src/vs/workbench/services/configuration/common/configuration.js +8 -7
  911. package/vscode/src/vs/workbench/services/driver/browser/driver.js +187 -0
  912. package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +3 -1
  913. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +42 -29
  914. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +1 -0
  915. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.js +5 -5
  916. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +5 -5
  917. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +36 -1
  918. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.js +2 -2
  919. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.service.d.ts +11 -2
  920. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +6 -1
  921. package/vscode/src/vs/workbench/services/editor/common/editorService.service.d.ts +3 -0
  922. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +1 -0
  923. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +20 -1
  924. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.service.d.ts +1 -0
  925. package/vscode/src/vs/workbench/services/extensionRecommendations/common/extensionRecommendations.js +11 -0
  926. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +4 -7
  927. package/vscode/src/vs/workbench/services/extensions/common/extensionDescriptionRegistry.js +8 -2
  928. package/vscode/src/vs/workbench/services/extensions/common/extensionHostKind.js +16 -10
  929. package/vscode/src/vs/workbench/services/extensions/common/extensionHostProtocol.js +18 -7
  930. package/vscode/src/vs/workbench/services/extensions/common/extensionManifestPropertiesService.js +1 -0
  931. package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocation.js +4 -3
  932. package/vscode/src/vs/workbench/services/extensions/common/extensions.js +17 -6
  933. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +4 -4
  934. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.d.ts +2 -1
  935. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +5 -0
  936. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +103 -64
  937. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +31 -15
  938. package/vscode/src/vs/workbench/services/{views/browser/treeViewsService.service.js → integrity/common/integrity.service.js} +2 -2
  939. package/vscode/src/vs/workbench/services/language/common/languageService.js +2 -1
  940. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +71 -24
  941. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycle.js +28 -8
  942. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +11 -11
  943. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +1 -0
  944. package/vscode/src/vs/workbench/services/outline/browser/outline.js +22 -0
  945. package/vscode/src/vs/workbench/services/preferences/common/preferencesModels.js +10 -9
  946. package/vscode/src/vs/workbench/services/progress/browser/progressIndicator.js +19 -17
  947. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +4 -2
  948. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +16 -16
  949. package/vscode/src/vs/workbench/services/search/common/fileSearchManager.js +3 -2
  950. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +9 -9
  951. package/vscode/src/vs/workbench/services/search/common/replace.js +12 -11
  952. package/vscode/src/vs/workbench/services/search/common/search.js +32 -1
  953. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +6 -6
  954. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.js +6 -1
  955. package/vscode/src/vs/workbench/services/storage/browser/storageService.js +13 -13
  956. package/vscode/src/vs/workbench/services/textfile/common/encoding.js +6 -2
  957. package/vscode/src/vs/workbench/services/textfile/common/textEditorService.js +1 -0
  958. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +28 -27
  959. package/vscode/src/vs/workbench/services/textfile/common/textfiles.js +27 -3
  960. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +2 -2
  961. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +2 -2
  962. package/vscode/src/vs/workbench/services/themes/common/workbenchThemeService.js +43 -1
  963. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +2 -2
  964. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorModel.js +2 -2
  965. package/vscode/src/vs/workbench/services/userDataProfile/browser/iconSelectBox.js +12 -11
  966. package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +19 -13
  967. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +29 -25
  968. package/vscode/src/vs/workbench/services/workingCopy/common/fileWorkingCopy.js +6 -0
  969. package/vscode/src/vs/workbench/services/workingCopy/common/resourceWorkingCopy.js +3 -2
  970. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +52 -32
  971. package/vscode/src/vs/workbench/services/workingCopy/common/workingCopy.js +7 -1
  972. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +17 -14
  973. package/vscode-dts/vscode.proposed.attributableCoverage.d.ts +28 -0
  974. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +90 -97
  975. package/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts +76 -0
  976. package/vscode-dts/vscode.proposed.chatProvider.d.ts +24 -7
  977. package/vscode-dts/vscode.proposed.chatVariableResolver.d.ts +82 -2
  978. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +0 -5
  979. package/vscode-dts/vscode.proposed.editorHoverVerbosityLevel.d.ts +2 -2
  980. package/vscode-dts/vscode.proposed.embeddings.d.ts +33 -0
  981. package/vscode-dts/vscode.proposed.interactive.d.ts +2 -110
  982. package/vscode-dts/vscode.proposed.languageModelSystem.d.ts +17 -0
  983. package/vscode-dts/vscode.proposed.resolvers.d.ts +2 -1
  984. package/vscode-dts/vscode.proposed.speech.d.ts +26 -6
  985. package/vscode-dts/vscode.proposed.testObserver.d.ts +9 -0
  986. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +0 -194
  987. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +0 -876
  988. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewContributions.js +0 -407
  989. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +0 -196
  990. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.service.js +0 -3
  991. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +0 -595
  992. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnostics.js +0 -102
  993. package/vscode-dts/vscode.proposed.chatParticipant.d.ts +0 -458
  994. package/vscode-dts/vscode.proposed.debugFocus.d.ts +0 -66
  995. package/vscode-dts/vscode.proposed.languageModels.d.ts +0 -291
  996. package/vscode-dts/vscode.proposed.testPreserveFocus.d.ts +0 -28
  997. /package/vscode/src/vs/workbench/{services → contrib}/issue/browser/issueTroubleshoot.service.js +0 -0
  998. /package/vscode/src/vs/workbench/{services → contrib}/issue/common/issue.service.js +0 -0
@@ -2,9 +2,11 @@ import { __decorate, __param } from '../../../../../../../external/tslib/tslib.e
2
2
  import { localizeWithPath } from '../../../../nls.js';
3
3
  import { Emitter, Event } from '../../../../base/common/event.js';
4
4
  import { CancellationToken, CancellationTokenSource } from '../../../../base/common/cancellation.js';
5
- import { ETAG_DISABLED, NotModifiedSinceFileOperationError } from '../../../../platform/files/common/files.js';
5
+ import { FileOperationResult, ETAG_DISABLED, NotModifiedSinceFileOperationError } from '../../../../platform/files/common/files.js';
6
6
  import { IFileService } from '../../../../platform/files/common/files.service.js';
7
+ import { SaveReason } from '../../../common/editor.js';
7
8
  import { IWorkingCopyService } from './workingCopyService.service.js';
9
+ import { WorkingCopyCapabilities } from './workingCopy.js';
8
10
  import { TaskSequentializer, raceCancellation, timeout } from '../../../../base/common/async.js';
9
11
  import { ILogService } from '../../../../platform/log/common/log.service.js';
10
12
  import { assertIsDefined } from '../../../../base/common/types.js';
@@ -21,9 +23,19 @@ import { IWorkingCopyEditorService } from './workingCopyEditorService.service.js
21
23
  import { IEditorService } from '../../editor/common/editorService.service.js';
22
24
  import { IElevatedFileService } from '../../files/common/elevatedFileService.service.js';
23
25
  import { ResourceWorkingCopy } from './resourceWorkingCopy.js';
26
+ import { SnapshotContext } from './fileWorkingCopy.js';
24
27
  import Severity$1 from '../../../../base/common/severity.js';
25
28
  var StoredFileWorkingCopy_1;
26
29
  const _moduleId = "vs/workbench/services/workingCopy/common/storedFileWorkingCopy";
30
+ var StoredFileWorkingCopyState;
31
+ ( ((function(StoredFileWorkingCopyState) {
32
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["SAVED"] = 0] = "SAVED";
33
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["DIRTY"] = 1] = "DIRTY";
34
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["PENDING_SAVE"] = 2] = "PENDING_SAVE";
35
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["CONFLICT"] = 3] = "CONFLICT";
36
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["ORPHAN"] = 4] = "ORPHAN";
37
+ StoredFileWorkingCopyState[StoredFileWorkingCopyState["ERROR"] = 5] = "ERROR";
38
+ })(StoredFileWorkingCopyState || (StoredFileWorkingCopyState = {}))));
27
39
  function isStoredFileWorkingCopySaveEvent(e) {
28
40
  const candidate = e;
29
41
  return !!candidate.stat;
@@ -45,7 +57,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
45
57
  this.workingCopyEditorService = workingCopyEditorService;
46
58
  this.editorService = editorService;
47
59
  this.elevatedFileService = elevatedFileService;
48
- this.capabilities = 0 ;
60
+ this.capabilities = WorkingCopyCapabilities.None;
49
61
  this._model = undefined;
50
62
  this._onDidChangeContent = this._register(( (new Emitter())));
51
63
  this.onDidChangeContent = this._onDidChangeContent.event;
@@ -161,7 +173,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
161
173
  ctime = Date.now();
162
174
  size = 0;
163
175
  etag = ETAG_DISABLED;
164
- this.setOrphaned(error.fileOperationResult === 1 );
176
+ this.setOrphaned(error.fileOperationResult === FileOperationResult.FILE_NOT_FOUND);
165
177
  }
166
178
  return this.resolveFromContent({
167
179
  resource: this.resource,
@@ -230,14 +242,14 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
230
242
  }
231
243
  catch (error) {
232
244
  const result = error.fileOperationResult;
233
- this.setOrphaned(result === 1 );
234
- if (this.isResolved() && result === 2 ) {
245
+ this.setOrphaned(result === FileOperationResult.FILE_NOT_FOUND);
246
+ if (this.isResolved() && result === FileOperationResult.FILE_NOT_MODIFIED_SINCE) {
235
247
  if (error instanceof NotModifiedSinceFileOperationError) {
236
248
  this.updateLastResolvedFileStat(error.stat);
237
249
  }
238
250
  return;
239
251
  }
240
- if (this.isResolved() && result === 1 && !forceReadFromFile) {
252
+ if (this.isResolved() && result === FileOperationResult.FILE_NOT_FOUND && !forceReadFromFile) {
241
253
  return;
242
254
  }
243
255
  throw error;
@@ -338,7 +350,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
338
350
  }
339
351
  let content = undefined;
340
352
  if (this.isResolved()) {
341
- content = await raceCancellation(this.model.snapshot(2 , token), token);
353
+ content = await raceCancellation(this.model.snapshot(SnapshotContext.Backup, token), token);
342
354
  }
343
355
  return { meta, content };
344
356
  }
@@ -351,19 +363,19 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
351
363
  this.trace('save() - ignoring request for readonly resource');
352
364
  return false;
353
365
  }
354
- if ((this.hasState(3 ) || this.hasState(5 )) &&
355
- ((options.reason === 2 || options.reason === 3 || options.reason === 4) )) {
366
+ if ((this.hasState(StoredFileWorkingCopyState.CONFLICT) || this.hasState(StoredFileWorkingCopyState.ERROR)) &&
367
+ (options.reason === SaveReason.AUTO || options.reason === SaveReason.FOCUS_CHANGE || options.reason === SaveReason.WINDOW_CHANGE)) {
356
368
  this.trace('save() - ignoring auto save request for file working copy that is in conflict or error');
357
369
  return false;
358
370
  }
359
371
  this.trace('save() - enter');
360
372
  await this.doSave(options);
361
373
  this.trace('save() - exit');
362
- return this.hasState(0 );
374
+ return this.hasState(StoredFileWorkingCopyState.SAVED);
363
375
  }
364
376
  async doSave(options) {
365
377
  if (typeof options.reason !== 'number') {
366
- options.reason = 1 ;
378
+ options.reason = SaveReason.EXPLICIT;
367
379
  }
368
380
  let versionId = this.versionId;
369
381
  this.trace(`doSave(${versionId}) - enter with versionId ${versionId}`);
@@ -391,7 +403,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
391
403
  return this.saveSequentializer.run(versionId, (async () => {
392
404
  if (this.isResolved() && !options.skipSaveParticipants && this.workingCopyFileService.hasSaveParticipants) {
393
405
  try {
394
- if (options.reason === 2 && typeof this.lastContentChangeFromUndoRedo === 'number') {
406
+ if (options.reason === SaveReason.AUTO && typeof this.lastContentChangeFromUndoRedo === 'number') {
395
407
  const timeFromUndoRedoToSave = Date.now() - this.lastContentChangeFromUndoRedo;
396
408
  if (timeFromUndoRedoToSave < StoredFileWorkingCopy_1.UNDO_REDO_SAVE_PARTICIPANTS_AUTO_SAVE_THROTTLE_THRESHOLD) {
397
409
  await timeout(StoredFileWorkingCopy_1.UNDO_REDO_SAVE_PARTICIPANTS_AUTO_SAVE_THROTTLE_THRESHOLD - timeFromUndoRedoToSave);
@@ -400,7 +412,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
400
412
  if (!saveCancellation.token.isCancellationRequested) {
401
413
  this.ignoreSaveFromSaveParticipants = true;
402
414
  try {
403
- await this.workingCopyFileService.runSaveParticipants(this, { reason: options.reason ?? 1 , savedFrom: options.from }, saveCancellation.token);
415
+ await this.workingCopyFileService.runSaveParticipants(this, { reason: options.reason ?? SaveReason.EXPLICIT, savedFrom: options.from }, saveCancellation.token);
404
416
  }
405
417
  finally {
406
418
  this.ignoreSaveFromSaveParticipants = false;
@@ -434,10 +446,18 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
434
446
  };
435
447
  let stat;
436
448
  if (typeof resolvedFileWorkingCopy.model.save === 'function') {
437
- stat = await resolvedFileWorkingCopy.model.save(writeFileOptions, saveCancellation.token);
449
+ try {
450
+ stat = await resolvedFileWorkingCopy.model.save(writeFileOptions, saveCancellation.token);
451
+ }
452
+ catch (error) {
453
+ if (saveCancellation.token.isCancellationRequested) {
454
+ return undefined;
455
+ }
456
+ throw error;
457
+ }
438
458
  }
439
459
  else {
440
- const snapshot = await raceCancellation(resolvedFileWorkingCopy.model.snapshot(1 , saveCancellation.token), saveCancellation.token);
460
+ const snapshot = await raceCancellation(resolvedFileWorkingCopy.model.snapshot(SnapshotContext.Save, saveCancellation.token), saveCancellation.token);
441
461
  if (saveCancellation.token.isCancellationRequested) {
442
462
  return;
443
463
  }
@@ -478,7 +498,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
478
498
  }
479
499
  this.setDirty(true);
480
500
  this.inErrorMode = true;
481
- if (error.fileOperationResult === 3 ) {
501
+ if (error.fileOperationResult === FileOperationResult.FILE_MODIFIED_SINCE) {
482
502
  this.inConflictMode = true;
483
503
  }
484
504
  this.doHandleSaveError(error, options);
@@ -488,20 +508,20 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
488
508
  const fileOperationError = error;
489
509
  const primaryActions = [];
490
510
  let message;
491
- if (fileOperationError.fileOperationResult === 3 ) {
511
+ if (fileOperationError.fileOperationResult === FileOperationResult.FILE_MODIFIED_SINCE) {
492
512
  message = ( localizeWithPath(
493
513
  _moduleId,
494
514
  0,
495
515
  "Failed to save '{0}': The content of the file is newer. Do you want to overwrite the file with your changes?",
496
516
  this.name
497
517
  ));
498
- primaryActions.push(toAction({ id: 'fileWorkingCopy.overwrite', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, ignoreModifiedSince: true, reason: 1 }) }));
518
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.overwrite', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, ignoreModifiedSince: true, reason: SaveReason.EXPLICIT }) }));
499
519
  primaryActions.push(toAction({ id: 'fileWorkingCopy.revert', label: ( localizeWithPath(_moduleId, 2, "Discard")), run: () => this.revert() }));
500
520
  }
501
521
  else {
502
- const isWriteLocked = fileOperationError.fileOperationResult === 5 ;
522
+ const isWriteLocked = fileOperationError.fileOperationResult === FileOperationResult.FILE_WRITE_LOCKED;
503
523
  const triedToUnlock = isWriteLocked && fileOperationError.options?.unlock;
504
- const isPermissionDenied = fileOperationError.fileOperationResult === 6 ;
524
+ const isPermissionDenied = fileOperationError.fileOperationResult === FileOperationResult.FILE_PERMISSION_DENIED;
505
525
  const canSaveElevated = this.elevatedFileService.isSupported(this.resource);
506
526
  if (isErrorWithActions(error)) {
507
527
  primaryActions.push(...error.actions);
@@ -513,15 +533,15 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
513
533
  isWindows ? ( localizeWithPath(_moduleId, 3, "Overwrite as Admin...")) : ( localizeWithPath(_moduleId, 4, "Overwrite as Sudo...")) :
514
534
  isWindows ? ( localizeWithPath(_moduleId, 5, "Retry as Admin...")) : ( localizeWithPath(_moduleId, 6, "Retry as Sudo...")),
515
535
  run: () => {
516
- this.save({ ...options, writeElevated: true, writeUnlock: triedToUnlock, reason: 1 });
536
+ this.save({ ...options, writeElevated: true, writeUnlock: triedToUnlock, reason: SaveReason.EXPLICIT });
517
537
  }
518
538
  }));
519
539
  }
520
540
  else if (isWriteLocked) {
521
- primaryActions.push(toAction({ id: 'fileWorkingCopy.unlock', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, writeUnlock: true, reason: 1 }) }));
541
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.unlock', label: ( localizeWithPath(_moduleId, 1, "Overwrite")), run: () => this.save({ ...options, writeUnlock: true, reason: SaveReason.EXPLICIT }) }));
522
542
  }
523
543
  else {
524
- primaryActions.push(toAction({ id: 'fileWorkingCopy.retry', label: ( localizeWithPath(_moduleId, 7, "Retry")), run: () => this.save({ ...options, reason: 1 }) }));
544
+ primaryActions.push(toAction({ id: 'fileWorkingCopy.retry', label: ( localizeWithPath(_moduleId, 7, "Retry")), run: () => this.save({ ...options, reason: SaveReason.EXPLICIT }) }));
525
545
  }
526
546
  primaryActions.push(toAction({
527
547
  id: 'fileWorkingCopy.saveAs',
@@ -529,7 +549,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
529
549
  run: async () => {
530
550
  const editor = this.workingCopyEditorService.findEditor(this);
531
551
  if (editor) {
532
- const result = await this.editorService.save(editor, { saveAs: true, reason: 1 });
552
+ const result = await this.editorService.save(editor, { saveAs: true, reason: SaveReason.EXPLICIT });
533
553
  if (!result.success) {
534
554
  this.doHandleSaveError(error, options);
535
555
  }
@@ -616,7 +636,7 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
616
636
  await this.forceResolveFromFile();
617
637
  }
618
638
  catch (error) {
619
- if (error.fileOperationResult !== 1 ) {
639
+ if (error.fileOperationResult !== FileOperationResult.FILE_NOT_FOUND) {
620
640
  undoSetDirty();
621
641
  throw error;
622
642
  }
@@ -629,17 +649,17 @@ let StoredFileWorkingCopy = class StoredFileWorkingCopy extends ResourceWorkingC
629
649
  }
630
650
  hasState(state) {
631
651
  switch (state) {
632
- case 3 :
652
+ case StoredFileWorkingCopyState.CONFLICT:
633
653
  return this.inConflictMode;
634
- case 1 :
654
+ case StoredFileWorkingCopyState.DIRTY:
635
655
  return this.dirty;
636
- case 5 :
656
+ case StoredFileWorkingCopyState.ERROR:
637
657
  return this.inErrorMode;
638
- case 4 :
658
+ case StoredFileWorkingCopyState.ORPHAN:
639
659
  return this.isOrphaned();
640
- case 2 :
660
+ case StoredFileWorkingCopyState.PENDING_SAVE:
641
661
  return this.saveSequentializer.isRunning();
642
- case 0 :
662
+ case StoredFileWorkingCopyState.SAVED:
643
663
  return !this.dirty;
644
664
  }
645
665
  }
@@ -672,4 +692,4 @@ StoredFileWorkingCopy = StoredFileWorkingCopy_1 = ( (__decorate([
672
692
  ( (__param(13, IEditorService))),
673
693
  ( (__param(14, IElevatedFileService)))
674
694
  ], StoredFileWorkingCopy)));
675
- export { StoredFileWorkingCopy, isStoredFileWorkingCopySaveEvent };
695
+ export { StoredFileWorkingCopy, StoredFileWorkingCopyState, isStoredFileWorkingCopySaveEvent };
@@ -1,2 +1,8 @@
1
+ var WorkingCopyCapabilities;
2
+ ( (function(WorkingCopyCapabilities) {
3
+ WorkingCopyCapabilities[WorkingCopyCapabilities["None"] = 0] = "None";
4
+ WorkingCopyCapabilities[WorkingCopyCapabilities["Untitled"] = 2] = "Untitled";
5
+ WorkingCopyCapabilities[WorkingCopyCapabilities["Scratchpad"] = 4] = "Scratchpad";
6
+ })(WorkingCopyCapabilities || (WorkingCopyCapabilities = {})));
1
7
  const NO_TYPE_ID = '';
2
- export { NO_TYPE_ID };
8
+ export { NO_TYPE_ID, WorkingCopyCapabilities };
@@ -5,12 +5,15 @@ import { LinkedList } from '../../../../base/common/linkedList.js';
5
5
  import { Schemas } from '../../../../base/common/network.js';
6
6
  import { URI } from '../../../../base/common/uri.js';
7
7
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.service.js';
8
+ import '../../../../platform/instantiation/common/extensions.js';
8
9
  import { IRemoteAuthorityResolverService } from '../../../../platform/remote/common/remoteAuthorityResolver.service.js';
9
10
  import { getRemoteAuthority } from '../../../../platform/remote/common/remoteHosts.js';
10
11
  import { isVirtualResource } from '../../../../platform/workspace/common/virtualWorkspace.js';
12
+ import { StorageScope, StorageTarget } from '../../../../platform/storage/common/storage.js';
11
13
  import { IStorageService } from '../../../../platform/storage/common/storage.service.js';
12
- import { isSavedWorkspace, isTemporaryWorkspace, toWorkspaceIdentifier, isSingleFolderWorkspaceIdentifier } from '../../../../platform/workspace/common/workspace.js';
14
+ import { isSavedWorkspace, WorkbenchState, isTemporaryWorkspace, toWorkspaceIdentifier, isSingleFolderWorkspaceIdentifier } from '../../../../platform/workspace/common/workspace.js';
13
15
  import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.service.js';
16
+ import { WorkspaceTrustUriResponse } from '../../../../platform/workspace/common/workspaceTrust.js';
14
17
  import { IWorkspaceTrustEnablementService, IWorkspaceTrustManagementService } from '../../../../platform/workspace/common/workspaceTrust.service.js';
15
18
  import { Memento } from '../../../common/memento.js';
16
19
  import { IWorkbenchEnvironmentService } from '../../environment/common/environmentService.service.js';
@@ -130,7 +133,7 @@ let WorkspaceTrustManagementService = class WorkspaceTrustManagementService exte
130
133
  }
131
134
  registerListeners() {
132
135
  this._register(this.workspaceService.onDidChangeWorkspaceFolders(async () => await this.updateWorkspaceTrust()));
133
- this._register(this.storageService.onDidChangeValue(-1 , this.storageKey, this._register(( new DisposableStore())))(async () => {
136
+ this._register(this.storageService.onDidChangeValue(StorageScope.APPLICATION, this.storageKey, this._register(( new DisposableStore())))(async () => {
134
137
  if (JSON.stringify(this._trustStateInfo) !== JSON.stringify(this.loadTrustInfo())) {
135
138
  this._trustStateInfo = this.loadTrustInfo();
136
139
  this._onDidChangeTrustedFolders.fire();
@@ -180,7 +183,7 @@ let WorkspaceTrustManagementService = class WorkspaceTrustManagementService exte
180
183
  ));
181
184
  }
182
185
  loadTrustInfo() {
183
- const infoAsString = this.storageService.get(this.storageKey, -1 );
186
+ const infoAsString = this.storageService.get(this.storageKey, StorageScope.APPLICATION);
184
187
  let result;
185
188
  try {
186
189
  if (infoAsString) {
@@ -201,7 +204,7 @@ let WorkspaceTrustManagementService = class WorkspaceTrustManagementService exte
201
204
  return result;
202
205
  }
203
206
  async saveTrustInfo() {
204
- this.storageService.store(this.storageKey, JSON.stringify(this._trustStateInfo), -1 , 1 );
207
+ this.storageService.store(this.storageKey, JSON.stringify(this._trustStateInfo), StorageScope.APPLICATION, StorageTarget.MACHINE);
205
208
  this._onDidChangeTrustedFolders.fire();
206
209
  await this.updateWorkspaceTrust();
207
210
  }
@@ -314,7 +317,7 @@ let WorkspaceTrustManagementService = class WorkspaceTrustManagementService exte
314
317
  }
315
318
  }
316
319
  isEmptyWorkspace() {
317
- if (this.workspaceService.getWorkbenchState() === 1 ) {
320
+ if (this.workspaceService.getWorkbenchState() === WorkbenchState.EMPTY) {
318
321
  return true;
319
322
  }
320
323
  const workspace = this.workspaceService.getWorkspace();
@@ -505,14 +508,14 @@ let WorkspaceTrustRequestService = class WorkspaceTrustRequestService extends Di
505
508
  if (!this._openFilesTrustRequestResolver) {
506
509
  return;
507
510
  }
508
- if (result === 1 ) {
511
+ if (result === WorkspaceTrustUriResponse.Open) {
509
512
  this.workspaceTrustManagementService.acceptsOutOfWorkspaceFiles = true;
510
513
  }
511
514
  if (saveResponse) {
512
- if (result === 1 ) {
515
+ if (result === WorkspaceTrustUriResponse.Open) {
513
516
  this.untrustedFilesSetting = 'open';
514
517
  }
515
- if (result === 2 ) {
518
+ if (result === WorkspaceTrustUriResponse.OpenInNewWindow) {
516
519
  this.untrustedFilesSetting = 'newWindow';
517
520
  }
518
521
  }
@@ -522,22 +525,22 @@ let WorkspaceTrustRequestService = class WorkspaceTrustRequestService extends Di
522
525
  }
523
526
  async requestOpenFilesTrust(uris) {
524
527
  if (!this.workspaceTrustManagementService.isWorkspaceTrusted()) {
525
- return 1 ;
528
+ return WorkspaceTrustUriResponse.Open;
526
529
  }
527
530
  const openFilesTrustInfo = await Promise.all(( uris.map(uri => this.workspaceTrustManagementService.getUriTrustInfo(uri))));
528
531
  if (( openFilesTrustInfo.map(info => info.trusted)).every(trusted => trusted)) {
529
- return 1 ;
532
+ return WorkspaceTrustUriResponse.Open;
530
533
  }
531
534
  if (this.untrustedFilesSetting !== 'prompt') {
532
535
  if (this.untrustedFilesSetting === 'newWindow') {
533
- return 2 ;
536
+ return WorkspaceTrustUriResponse.OpenInNewWindow;
534
537
  }
535
538
  if (this.untrustedFilesSetting === 'open') {
536
- return 1 ;
539
+ return WorkspaceTrustUriResponse.Open;
537
540
  }
538
541
  }
539
542
  if (this.workspaceTrustManagementService.acceptsOutOfWorkspaceFiles) {
540
- return 1 ;
543
+ return WorkspaceTrustUriResponse.Open;
541
544
  }
542
545
  if (!this._openFilesTrustRequestPromise) {
543
546
  this._openFilesTrustRequestPromise = ( new Promise(resolve => {
@@ -625,7 +628,7 @@ class WorkspaceTrustMemento {
625
628
  this._isEmptyWorkspaceTrustedKey = 'isEmptyWorkspaceTrusted';
626
629
  if (storageService) {
627
630
  this._memento = ( new Memento('workspaceTrust', storageService));
628
- this._mementoObject = this._memento.getMemento(1 , 1 );
631
+ this._mementoObject = this._memento.getMemento(StorageScope.WORKSPACE, StorageTarget.MACHINE);
629
632
  }
630
633
  else {
631
634
  this._mementoObject = {};
@@ -0,0 +1,28 @@
1
+ /*---------------------------------------------------------------------------------------------
2
+ * Copyright (c) Microsoft Corporation. All rights reserved.
3
+ * Licensed under the MIT License. See License.txt in the project root for license information.
4
+ *--------------------------------------------------------------------------------------------*/
5
+
6
+ declare module 'vscode' {
7
+ export class FileCoverage2 extends FileCoverage {
8
+ /**
9
+ * Test {@link TestItem} this file coverage is generated from. If undefined,
10
+ * the editor will assume the coverage is the overall summary coverage for
11
+ * the entire file.
12
+ *
13
+ * If per-test coverage is available, an extension should append multiple
14
+ * `FileCoverage` instances with this property set for each test item. It
15
+ * must also append a `FileCoverage` instance without this property set to
16
+ * represent the overall coverage of the file.
17
+ */
18
+ testItem?: TestItem;
19
+
20
+ constructor(
21
+ uri: Uri,
22
+ statementCoverage: TestCoverageCount,
23
+ branchCoverage?: TestCoverageCount,
24
+ declarationCoverage?: TestCoverageCount,
25
+ testItem?: TestItem,
26
+ );
27
+ }
28
+ }
@@ -5,55 +5,8 @@
5
5
 
6
6
  declare module 'vscode' {
7
7
 
8
- /**
9
- * The location at which the chat is happening.
10
- */
11
- export enum ChatLocation {
12
- /**
13
- * The chat panel
14
- */
15
- Panel = 1,
16
- /**
17
- * Terminal inline chat
18
- */
19
- Terminal = 2,
20
- /**
21
- * Notebook inline chat
22
- */
23
- Notebook = 3,
24
- /**
25
- * Code editor inline chat
26
- */
27
- Editor = 4
28
- }
29
-
30
- export interface ChatRequest {
31
- /**
32
- * The attempt number of the request. The first request has attempt number 0.
33
- */
34
- readonly attempt: number;
35
-
36
- /**
37
- * If automatic command detection is enabled.
38
- */
39
- readonly enableCommandDetection: boolean;
40
-
41
- /**
42
- * The location at which the chat is happening. This will always be one of the supported values
43
- */
44
- readonly location: ChatLocation;
45
- }
46
-
47
8
  export interface ChatParticipant {
48
9
  onDidPerformAction: Event<ChatUserActionEvent>;
49
- supportIssueReporting?: boolean;
50
- }
51
-
52
- export interface ChatErrorDetails {
53
- /**
54
- * If set to true, the message content is completely hidden. Only ChatErrorDetails#message will be shown.
55
- */
56
- responseIsRedacted?: boolean;
57
10
  }
58
11
 
59
12
  /**
@@ -102,11 +55,83 @@ declare module 'vscode' {
102
55
  constructor(uri: Uri, edits: TextEdit | TextEdit[]);
103
56
  }
104
57
 
58
+ export class ChatResponseConfirmationPart {
59
+ title: string;
60
+ message: string;
61
+ data: any;
62
+ constructor(title: string, message: string, data: any);
63
+ }
64
+
65
+ export type ExtendedChatResponsePart = ChatResponsePart | ChatResponseTextEditPart | ChatResponseDetectedParticipantPart | ChatResponseConfirmationPart;
66
+
67
+ export class ChatResponseWarningPart {
68
+ value: MarkdownString;
69
+ constructor(value: string | MarkdownString);
70
+ }
71
+
72
+ export class ChatResponseProgressPart2 extends ChatResponseProgressPart {
73
+ value: string;
74
+ task?: (progress: Progress<ChatResponseWarningPart | ChatResponseReferencePart>) => Thenable<string | void>;
75
+ constructor(value: string, task?: (progress: Progress<ChatResponseWarningPart | ChatResponseReferencePart>) => Thenable<string | void>);
76
+ }
77
+
105
78
  export interface ChatResponseStream {
106
- textEdit(target: Uri, edits: TextEdit | TextEdit[]): ChatResponseStream;
107
- markdownWithVulnerabilities(value: string | MarkdownString, vulnerabilities: ChatVulnerability[]): ChatResponseStream;
108
- detectedParticipant(participant: string, command?: ChatCommand): ChatResponseStream;
109
- push(part: ChatResponsePart | ChatResponseTextEditPart | ChatResponseDetectedParticipantPart): ChatResponseStream;
79
+
80
+ /**
81
+ * Push a progress part to this stream. Short-hand for
82
+ * `push(new ChatResponseProgressPart(value))`.
83
+ *
84
+ * @param value A progress message
85
+ * @param task If provided, a task to run while the progress is displayed. When the Thenable resolves, the progress will be marked complete in the UI, and the progress message will be updated to the resolved string if one is specified.
86
+ * @returns This stream.
87
+ */
88
+ progress(value: string, task?: (progress: Progress<ChatResponseWarningPart | ChatResponseReferencePart>) => Thenable<string | void>): void;
89
+
90
+ textEdit(target: Uri, edits: TextEdit | TextEdit[]): void;
91
+ markdownWithVulnerabilities(value: string | MarkdownString, vulnerabilities: ChatVulnerability[]): void;
92
+ detectedParticipant(participant: string, command?: ChatCommand): void;
93
+ push(part: ChatResponsePart | ChatResponseTextEditPart | ChatResponseDetectedParticipantPart | ChatResponseWarningPart | ChatResponseProgressPart2): void;
94
+
95
+ /**
96
+ * Show an inline message in the chat view asking the user to confirm an action.
97
+ * Multiple confirmations may be shown per response. The UI might show "Accept All" / "Reject All" actions.
98
+ * @param title The title of the confirmation entry
99
+ * @param message An extra message to display to the user
100
+ * @param data An arbitrary JSON-stringifiable object that will be included in the ChatRequest when
101
+ * the confirmation is accepted or rejected
102
+ * TODO@API should this be MarkdownString?
103
+ * TODO@API should actually be a more generic function that takes an array of buttons
104
+ */
105
+ confirmation(title: string, message: string, data: any): void;
106
+
107
+ /**
108
+ * Push a warning to this stream. Short-hand for
109
+ * `push(new ChatResponseWarningPart(message))`.
110
+ *
111
+ * @param message A warning message
112
+ * @returns This stream.
113
+ */
114
+ warning(message: string | MarkdownString): void;
115
+
116
+ reference(value: Uri | Location | { variableName: string; value?: Uri | Location }, iconPath?: Uri | ThemeIcon | { light: Uri; dark: Uri }): void;
117
+
118
+ push(part: ExtendedChatResponsePart): void;
119
+ }
120
+
121
+ /**
122
+ * Does this piggy-back on the existing ChatRequest, or is it a different type of request entirely?
123
+ * Does it show up in history?
124
+ */
125
+ export interface ChatRequest {
126
+ /**
127
+ * The `data` for any confirmations that were accepted
128
+ */
129
+ acceptedConfirmationData?: any[];
130
+
131
+ /**
132
+ * The `data` for any confirmations that were rejected
133
+ */
134
+ rejectedConfirmationData?: any[];
110
135
  }
111
136
 
112
137
  // TODO@API fit this into the stream
@@ -126,14 +151,17 @@ declare module 'vscode' {
126
151
  }
127
152
 
128
153
  export class ChatCompletionItem {
154
+ id: string;
129
155
  label: string | CompletionItemLabel;
130
156
  values: ChatVariableValue[];
157
+ fullName?: string;
158
+ icon?: ThemeIcon;
131
159
  insertText?: string;
132
160
  detail?: string;
133
161
  documentation?: string | MarkdownString;
134
162
  command?: Command;
135
163
 
136
- constructor(label: string | CompletionItemLabel, values: ChatVariableValue[]);
164
+ constructor(id: string, label: string | CompletionItemLabel, values: ChatVariableValue[]);
137
165
  }
138
166
 
139
167
  export type ChatExtendedRequestHandler = (request: ChatRequest, context: ChatContext, response: ChatResponseStream, token: CancellationToken) => ProviderResult<ChatResult | void>;
@@ -144,7 +172,13 @@ declare module 'vscode' {
144
172
  */
145
173
  export function createChatParticipant(id: string, handler: ChatExtendedRequestHandler): ChatParticipant;
146
174
 
147
- export function createDynamicChatParticipant(id: string, name: string, description: string, handler: ChatExtendedRequestHandler): ChatParticipant;
175
+ /**
176
+ * Current version of the proposal. Changes whenever backwards-incompatible changes are made.
177
+ * If a new feature is added that doesn't break existing code, the version is not incremented. When the extension uses this new feature, it should set its engines.vscode version appropriately.
178
+ * But if a change is made to an existing feature that would break existing code, the version should be incremented.
179
+ * The chat extension should not activate if it doesn't support the current version.
180
+ */
181
+ export const _version: 1 | number;
148
182
  }
149
183
 
150
184
  /*
@@ -209,51 +243,10 @@ declare module 'vscode' {
209
243
  readonly action: ChatCopyAction | ChatInsertAction | ChatTerminalAction | ChatCommandAction | ChatFollowupAction | ChatBugReportAction | ChatEditorAction;
210
244
  }
211
245
 
212
- export interface ChatVariableValue {
246
+ export interface ChatPromptReference {
213
247
  /**
214
- * An optional type tag for extensions to communicate the kind of the variable. An extension might use it to interpret the shape of `value`.
248
+ * TODO Needed for now to drive the variableName-type reference, but probably both of these should go away in the future.
215
249
  */
216
- kind?: string;
217
- }
218
-
219
- export interface ChatVariableResolverResponseStream {
220
- /**
221
- * Push a progress part to this stream. Short-hand for
222
- * `push(new ChatResponseProgressPart(value))`.
223
- *
224
- * @param value
225
- * @returns This stream.
226
- */
227
- progress(value: string): ChatVariableResolverResponseStream;
228
-
229
- /**
230
- * Push a reference to this stream. Short-hand for
231
- * `push(new ChatResponseReferencePart(value))`.
232
- *
233
- * *Note* that the reference is not rendered inline with the response.
234
- *
235
- * @param value A uri or location
236
- * @returns This stream.
237
- */
238
- reference(value: Uri | Location): ChatVariableResolverResponseStream;
239
-
240
- /**
241
- * Pushes a part to this stream.
242
- *
243
- * @param part A response part, rendered or metadata
244
- */
245
- push(part: ChatVariableResolverResponsePart): ChatVariableResolverResponseStream;
246
- }
247
-
248
- export type ChatVariableResolverResponsePart = ChatResponseProgressPart | ChatResponseReferencePart;
249
-
250
- export interface ChatVariableResolver {
251
- /**
252
- * A callback to resolve the value of a chat variable.
253
- * @param name The name of the variable.
254
- * @param context Contextual information about this chat request.
255
- * @param token A cancellation token.
256
- */
257
- resolve2?(name: string, context: ChatVariableContext, stream: ChatVariableResolverResponseStream, token: CancellationToken): ProviderResult<ChatVariableValue[]>;
250
+ readonly name: string;
258
251
  }
259
252
  }