@codingame/monaco-vscode-api 3.2.3 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (772) hide show
  1. package/api.js +4 -7
  2. package/debugProtocol.d.ts +14 -39
  3. package/extensions.d.ts +7 -1
  4. package/missing-services.js +116 -32
  5. package/monaco.d.ts +1 -1
  6. package/monaco.js +11 -1
  7. package/override/vs/platform/dialogs/common/dialogs.js +1 -0
  8. package/package.json +8 -8
  9. package/service-override/tools/editor.js +82 -3
  10. package/service-override/tools/views.d.ts +2 -1
  11. package/service-override/tools/views.js +5 -1
  12. package/services.js +4 -3
  13. package/vscode/src/vs/base/browser/dom.js +1 -7
  14. package/vscode/src/vs/base/browser/fonts.js +3 -0
  15. package/vscode/src/vs/base/browser/keyboardEvent.js +1 -1
  16. package/vscode/src/vs/base/browser/markdownRenderer.js +4 -4
  17. package/vscode/src/vs/base/browser/touch.js +13 -2
  18. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +5 -6
  20. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.d.ts +1 -1
  21. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +2 -2
  22. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -0
  23. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +4 -2
  24. package/vscode/src/vs/base/browser/ui/button/button.js +16 -9
  25. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  26. package/vscode/src/vs/base/browser/ui/contextview/contextview.d.ts +1 -0
  27. package/vscode/src/vs/base/browser/ui/contextview/contextview.js +1 -1
  28. package/vscode/src/vs/base/browser/ui/dropdown/dropdown.js +4 -4
  29. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +3 -3
  30. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +5 -0
  31. package/vscode/src/vs/base/browser/ui/findinput/findInputToggles.js +4 -0
  32. package/vscode/src/vs/base/browser/ui/findinput/replaceInput.js +3 -1
  33. package/vscode/src/vs/base/browser/ui/grid/gridview.js +1 -0
  34. package/vscode/src/vs/base/browser/ui/highlightedlabel/highlightedLabel.js +14 -3
  35. package/vscode/src/vs/base/browser/ui/{iconLabel/iconHoverDelegate.d.ts → hover/hoverDelegate.d.ts} +3 -6
  36. package/vscode/src/vs/base/browser/ui/hover/{hoverDelegate.js → hoverDelegateFactory.js} +5 -5
  37. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +1 -1
  38. package/vscode/src/vs/base/browser/ui/{iconLabel/iconLabelHover.d.ts → hover/updatableHoverWidget.d.ts} +6 -1
  39. package/vscode/src/vs/base/browser/ui/{iconLabel/iconLabelHover.js → hover/updatableHoverWidget.js} +27 -7
  40. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabel.js +10 -9
  41. package/vscode/src/vs/base/browser/ui/iconLabel/simpleIconLabel.js +11 -1
  42. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +19 -1
  43. package/vscode/src/vs/base/browser/ui/keybindingLabel/keybindingLabel.js +8 -7
  44. package/vscode/src/vs/base/browser/ui/list/listView.js +4 -1
  45. package/vscode/src/vs/base/browser/ui/list/listWidget.js +27 -10
  46. package/vscode/src/vs/base/browser/ui/menu/menu.js +15 -9
  47. package/vscode/src/vs/base/browser/ui/menu/menubar.js +15 -8
  48. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +18 -2
  49. package/vscode/src/vs/base/browser/ui/selectBox/selectBox.js +1 -0
  50. package/vscode/src/vs/base/browser/ui/selectBox/selectBoxCustom.js +14 -7
  51. package/vscode/src/vs/base/browser/ui/table/tableWidget.js +6 -4
  52. package/vscode/src/vs/base/browser/ui/toggle/toggle.js +7 -6
  53. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +2 -2
  54. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +55 -10
  55. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +4 -1
  56. package/vscode/src/vs/base/browser/window.d.ts +5 -0
  57. package/vscode/src/vs/base/browser/window.js +1 -2
  58. package/vscode/src/vs/base/common/arrays.js +20 -1
  59. package/vscode/src/vs/base/common/cache.js +3 -2
  60. package/vscode/src/vs/base/common/codicons.d.ts +62 -38
  61. package/vscode/src/vs/base/common/codicons.js +19 -571
  62. package/vscode/src/vs/base/common/codiconsLibrary.js +570 -0
  63. package/vscode/src/vs/base/common/codiconsUtil.js +17 -0
  64. package/vscode/src/vs/base/common/event.js +4 -1
  65. package/vscode/src/vs/base/common/glob.js +1 -0
  66. package/vscode/src/vs/base/common/hierarchicalKind.d.ts +13 -0
  67. package/vscode/src/vs/base/common/hierarchicalKind.js +21 -0
  68. package/vscode/src/vs/base/common/labels.js +2 -2
  69. package/vscode/src/vs/base/common/network.js +14 -5
  70. package/vscode/src/vs/base/common/observableInternal/promise.js +1 -0
  71. package/vscode/src/vs/base/common/observableInternal/utils.js +35 -14
  72. package/vscode/src/vs/base/common/platform.js +1 -1
  73. package/vscode/src/vs/base/common/product.d.ts +7 -1
  74. package/vscode/src/vs/base/common/severity.js +2 -1
  75. package/vscode/src/vs/base/common/strings.js +16 -4
  76. package/vscode/src/vs/base/parts/ipc/common/ipc.js +4 -0
  77. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +5 -5
  78. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +55 -43
  79. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +5 -5
  80. package/vscode/src/vs/editor/browser/coreCommands.js +13 -13
  81. package/vscode/src/vs/editor/browser/editorDom.js +11 -1
  82. package/vscode/src/vs/editor/browser/editorExtensions.js +1 -1
  83. package/vscode/src/vs/editor/browser/services/editorWorkerService.js +10 -2
  84. package/vscode/src/vs/editor/browser/services/hoverService/hoverService.d.ts +31 -0
  85. package/vscode/src/vs/editor/browser/services/{hoverService.js → hoverService/hoverService.js} +38 -27
  86. package/vscode/src/vs/editor/browser/{widget/hoverWidget → services/hoverService}/hoverWidget.js +13 -14
  87. package/vscode/src/vs/editor/browser/view/viewLayer.js +4 -4
  88. package/vscode/src/vs/editor/browser/view/viewOverlays.js +12 -23
  89. package/vscode/src/vs/editor/browser/view.js +5 -5
  90. package/vscode/src/vs/editor/browser/viewParts/blockDecorations/blockDecorations.js +1 -1
  91. package/vscode/src/vs/editor/browser/viewParts/contentWidgets/contentWidgets.js +3 -3
  92. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.css.js +1 -1
  93. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +4 -6
  94. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.css.js +1 -1
  95. package/vscode/src/vs/editor/browser/viewParts/decorations/decorations.js +8 -14
  96. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +2 -2
  97. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +2 -2
  98. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.css.js +1 -1
  99. package/vscode/src/vs/editor/browser/viewParts/indentGuides/indentGuides.js +3 -6
  100. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.css.js +1 -1
  101. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +5 -1
  102. package/vscode/src/vs/editor/browser/viewParts/lines/viewLine.js +4 -4
  103. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.css.js +1 -1
  104. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +5 -5
  105. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +2 -2
  106. package/vscode/src/vs/editor/browser/viewParts/margin/margin.js +2 -2
  107. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +142 -27
  108. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +2 -2
  109. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/decorationsOverviewRuler.js +34 -16
  110. package/vscode/src/vs/editor/browser/viewParts/overviewRuler/overviewRuler.js +3 -3
  111. package/vscode/src/vs/editor/browser/viewParts/scrollDecoration/scrollDecoration.js +1 -1
  112. package/vscode/src/vs/editor/browser/viewParts/selections/selections.js +23 -20
  113. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursor.js +25 -3
  114. package/vscode/src/vs/editor/browser/viewParts/viewCursors/viewCursors.js +21 -13
  115. package/vscode/src/vs/editor/browser/viewParts/viewZones/viewZones.js +2 -2
  116. package/vscode/src/vs/editor/browser/viewParts/whitespace/whitespace.js +2 -2
  117. package/vscode/src/vs/editor/browser/widget/{codeEditorContributions.js → codeEditor/codeEditorContributions.js} +3 -3
  118. package/vscode/src/vs/editor/browser/widget/{codeEditorWidget.js → codeEditor/codeEditorWidget.js} +81 -70
  119. package/vscode/src/vs/editor/browser/widget/codeEditor/editor.css.js +4 -0
  120. package/vscode/src/vs/editor/browser/widget/codeEditor/embeddedCodeEditorWidget.js +44 -0
  121. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +281 -0
  122. package/vscode/src/vs/editor/browser/widget/diffEditor/components/accessibleDiffViewer.js +7 -5
  123. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +4 -1
  124. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorEditors.js +15 -9
  125. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorSash.js +2 -0
  126. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/diffEditorViewZones.js +9 -8
  127. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorViewZones/renderLines.js +1 -1
  128. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +33 -246
  129. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorOptions.js +22 -7
  130. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +5 -5
  131. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +71 -41
  132. package/vscode/src/vs/editor/browser/widget/diffEditor/embeddedDiffEditorWidget.js +36 -0
  133. package/vscode/src/vs/editor/browser/widget/diffEditor/features/gutterFeature.js +227 -0
  134. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +22 -19
  135. package/vscode/src/vs/editor/browser/widget/diffEditor/features/movedBlocksLinesFeature.js +5 -4
  136. package/vscode/src/vs/editor/browser/widget/diffEditor/features/overviewRulerFeature.js +15 -4
  137. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +13 -5
  138. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +11 -1
  139. package/vscode/src/vs/editor/browser/widget/diffEditor/style.css.js +1 -1
  140. package/vscode/src/vs/editor/browser/widget/diffEditor/utils/editorGutter.js +104 -0
  141. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +8 -15
  142. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/colors.js +14 -4
  143. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/diffEditorItemTemplate.js +6 -5
  144. package/vscode/src/vs/editor/browser/widget/multiDiffEditor/model.js +14 -0
  145. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorViewModel.js +5 -2
  146. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorWidget.js +5 -3
  147. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/multiDiffEditorWidgetImpl.js +9 -10
  148. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/style.css.js +1 -1
  149. package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/utils.js +2 -1
  150. package/vscode/src/vs/editor/common/commands/trimTrailingWhitespaceCommand.js +14 -3
  151. package/vscode/src/vs/editor/common/config/diffEditor.js +1 -0
  152. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +10 -1
  153. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +23 -0
  154. package/vscode/src/vs/editor/common/config/editorOptions.js +115 -33
  155. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +32 -2
  156. package/vscode/src/vs/editor/common/core/lineRange.d.ts +1 -0
  157. package/vscode/src/vs/editor/common/core/lineRange.js +12 -0
  158. package/vscode/src/vs/editor/common/core/positionToOffset.js +43 -0
  159. package/vscode/src/vs/editor/common/core/textEdit.js +169 -0
  160. package/vscode/src/vs/editor/common/core/textLength.js +110 -0
  161. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.d.ts +14 -2
  162. package/vscode/src/vs/editor/common/core/wordCharacterClassifier.js +66 -10
  163. package/vscode/src/vs/editor/common/core/wordHelper.js +1 -0
  164. package/vscode/src/vs/editor/common/cursor/cursor.js +17 -4
  165. package/vscode/src/vs/editor/common/cursor/cursorTypeOperations.js +1 -1
  166. package/vscode/src/vs/editor/common/cursor/cursorWordOperations.js +22 -3
  167. package/vscode/src/vs/editor/common/cursorCommon.js +7 -5
  168. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/defaultLinesDiffComputer.js +7 -4
  169. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +1 -1
  170. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -0
  171. package/vscode/src/vs/editor/common/diff/rangeMapping.js +10 -0
  172. package/vscode/src/vs/editor/common/editorContextKeys.js +25 -0
  173. package/vscode/src/vs/editor/common/languages.d.ts +43 -11
  174. package/vscode/src/vs/editor/common/languages.js +15 -1
  175. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsImpl.js +1 -1
  176. package/vscode/src/vs/editor/common/model/bracketPairsTextModelPart/bracketPairsTree/length.js +3 -58
  177. package/vscode/src/vs/editor/common/model/textModel.js +2 -0
  178. package/vscode/src/vs/editor/common/model/textModelSearch.js +1 -1
  179. package/vscode/src/vs/editor/common/model/textModelText.js +17 -0
  180. package/vscode/src/vs/editor/common/model/textModelTokens.js +4 -0
  181. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +10 -0
  182. package/vscode/src/vs/editor/common/model.d.ts +17 -2
  183. package/vscode/src/vs/editor/common/model.js +1 -6
  184. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +8 -0
  185. package/vscode/src/vs/editor/common/services/editorWorker.d.ts +2 -0
  186. package/vscode/src/vs/editor/common/services/findSectionHeaders.d.ts +28 -0
  187. package/vscode/src/vs/editor/common/services/findSectionHeaders.js +71 -0
  188. package/vscode/src/vs/editor/common/services/markerDecorationsService.js +15 -5
  189. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +32 -20
  190. package/vscode/src/vs/editor/common/viewLayout/linesLayout.js +2 -1
  191. package/vscode/src/vs/editor/common/viewLayout/viewLayout.js +5 -5
  192. package/vscode/src/vs/editor/common/viewLayout/viewLinesViewportData.js +1 -0
  193. package/vscode/src/vs/editor/common/viewModel/modelLineProjection.js +1 -1
  194. package/vscode/src/vs/editor/common/viewModel/monospaceLineBreaksComputer.js +2 -2
  195. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +10 -7
  196. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +11 -1
  197. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +6 -5
  198. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +5 -4
  199. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +25 -3
  200. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionKeybindingResolver.js +3 -2
  201. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +3 -2
  202. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +13 -2
  203. package/vscode/src/vs/editor/contrib/codeAction/common/types.js +18 -33
  204. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +1 -1
  205. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorDetector.js +3 -3
  206. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +1 -1
  207. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +11 -1
  208. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +1 -1
  209. package/vscode/src/vs/editor/contrib/comment/browser/lineCommentCommand.js +9 -9
  210. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +5 -3
  211. package/vscode/src/vs/editor/contrib/documentSymbols/browser/outlineModel.js +1 -1
  212. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +40 -20
  213. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +83 -47
  214. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +40 -31
  215. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +16 -1
  216. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +8 -8
  217. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +5 -3
  218. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +7 -6
  219. package/vscode/src/vs/editor/contrib/find/browser/findDecorations.js +14 -4
  220. package/vscode/src/vs/editor/contrib/find/browser/findModel.js +6 -6
  221. package/vscode/src/vs/editor/contrib/find/browser/findOptionsWidget.js +16 -1
  222. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +23 -3
  223. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +12 -3
  224. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +11 -1
  225. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +3 -3
  226. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +5 -3
  227. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +1 -1
  228. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +12 -2
  229. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +3 -91
  230. package/vscode/src/vs/editor/contrib/indentation/common/indentation.js +92 -0
  231. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +14 -4
  232. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/commands.js +4 -0
  233. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostText.js +18 -19
  234. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/ghostTextWidget.js +5 -4
  235. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +4 -2
  236. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionContextKeys.js +4 -1
  237. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +6 -5
  238. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +5 -4
  239. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +28 -19
  240. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsSource.js +7 -4
  241. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/provideInlineCompletions.js +1 -1
  242. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/singleTextEdit.js +64 -72
  243. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/suggestWidgetInlineCompletionProvider.js +11 -5
  244. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/utils.js +5 -85
  245. package/vscode/src/vs/editor/contrib/inlineEdit/browser/commands.js +2 -2
  246. package/vscode/src/vs/editor/contrib/inlineEdit/browser/ghostTextWidget.js +6 -4
  247. package/vscode/src/vs/editor/contrib/inlineEdit/browser/hoverParticipant.js +4 -1
  248. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditController.js +28 -17
  249. package/vscode/src/vs/editor/contrib/inlineEdit/browser/inlineEditHintsWidget.js +5 -4
  250. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  251. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +53 -6
  252. package/vscode/src/vs/editor/contrib/linesOperations/browser/moveLinesCommand.js +1 -1
  253. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +11 -1
  254. package/vscode/src/vs/editor/contrib/links/browser/links.js +2 -2
  255. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +7 -7
  256. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +11 -1
  257. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +12 -2
  258. package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +1 -1
  259. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +27 -33
  260. package/vscode/src/vs/editor/contrib/rename/browser/{renameInputField.js → renameWidget.js} +282 -194
  261. package/vscode/src/vs/editor/contrib/sectionHeaders/browser/sectionHeaders.js +154 -0
  262. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollModelProvider.js +60 -61
  263. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollProvider.js +23 -14
  264. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +1 -1
  265. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +12 -2
  266. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +11 -1
  267. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +1 -1
  268. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +16 -6
  269. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +2 -2
  270. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +12 -12
  271. package/vscode/src/vs/editor/contrib/zoneWidget/browser/zoneWidget.js +2 -2
  272. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +1 -1
  273. package/vscode/src/vs/editor/standalone/browser/standaloneCodeEditor.js +2 -2
  274. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +1 -1
  275. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +12 -12
  276. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +11 -1
  277. package/vscode/src/vs/editor/standalone/common/themes.js +11 -1
  278. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.d.ts +16 -9
  279. package/vscode/src/vs/platform/accessibilitySignal/browser/accessibilitySignalService.js +42 -18
  280. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +16 -5
  281. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +11 -1
  282. package/vscode/src/vs/platform/actions/browser/buttonbar.js +13 -5
  283. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +3 -1
  284. package/vscode/src/vs/platform/actions/browser/floatingMenu.js +11 -1
  285. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +11 -1
  286. package/vscode/src/vs/platform/actions/common/actions.d.ts +7 -0
  287. package/vscode/src/vs/platform/actions/common/actions.js +7 -0
  288. package/vscode/src/vs/platform/contextview/browser/contextView.d.ts +1 -0
  289. package/vscode/src/vs/platform/contextview/browser/contextViewService.js +12 -15
  290. package/vscode/src/vs/platform/dialogs/common/dialogs.js +4 -2
  291. package/vscode/src/vs/platform/editor/common/editor.d.ts +12 -0
  292. package/vscode/src/vs/platform/environment/common/environmentService.js +6 -0
  293. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +19 -7
  294. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +7 -1
  295. package/vscode/src/vs/platform/extensionManagement/common/extensionsProfileScannerService.js +333 -0
  296. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +901 -0
  297. package/vscode/src/vs/platform/extensionResourceLoader/common/extensionResourceLoader.js +3 -4
  298. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +16 -16
  299. package/vscode/src/vs/platform/extensions/common/extensions.js +5 -1
  300. package/vscode/src/vs/platform/files/common/files.d.ts +1 -11
  301. package/vscode/src/vs/platform/files/common/files.js +2 -0
  302. package/vscode/src/vs/platform/files/common/watcher.js +2 -0
  303. package/vscode/src/vs/platform/hover/browser/hover.d.ts +1 -1
  304. package/vscode/src/vs/platform/hover/browser/hover.js +21 -6
  305. package/vscode/src/vs/platform/keyboardLayout/common/keyboardLayout.js +1 -0
  306. package/vscode/src/vs/platform/languagePacks/common/languagePacks.js +5 -0
  307. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +8 -6
  308. package/vscode/src/vs/platform/log/browser/log.js +1 -0
  309. package/vscode/src/vs/platform/log/common/log.js +13 -1
  310. package/vscode/src/vs/platform/markers/common/markerService.js +1 -1
  311. package/vscode/src/vs/platform/markers/common/markers.js +9 -9
  312. package/vscode/src/vs/platform/opener/browser/link.js +16 -4
  313. package/vscode/src/vs/platform/policy/common/policy.js +2 -0
  314. package/vscode/src/vs/platform/product/common/product.js +2 -1
  315. package/vscode/src/vs/platform/quickinput/browser/media/quickInput.css.js +1 -1
  316. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +36 -33
  317. package/vscode/src/vs/platform/quickinput/browser/quickAccess.js +5 -0
  318. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +38 -9
  319. package/vscode/src/vs/platform/quickinput/browser/quickInputBox.js +7 -4
  320. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +22 -12
  321. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +13 -5
  322. package/vscode/src/vs/platform/quickinput/browser/quickInputTree.js +1348 -0
  323. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +1 -1
  324. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +14 -0
  325. package/vscode/src/vs/platform/remote/common/remoteAgentConnection.js +2 -2
  326. package/vscode/src/vs/platform/remote/common/remoteHosts.js +1 -4
  327. package/vscode/src/vs/platform/secrets/common/secrets.js +5 -0
  328. package/vscode/src/vs/platform/severityIcon/browser/severityIcon.js +5 -5
  329. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +2 -0
  330. package/vscode/src/vs/platform/terminal/common/capabilities/capabilities.d.ts +1 -1
  331. package/vscode/src/vs/platform/terminal/common/capabilities/commandDetectionCapability.js +3 -9
  332. package/vscode/src/vs/platform/terminal/common/terminal.d.ts +6 -1
  333. package/vscode/src/vs/platform/terminal/common/terminal.js +1 -0
  334. package/vscode/src/vs/platform/terminal/common/terminalEnvironment.js +4 -1
  335. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +11 -1
  336. package/vscode/src/vs/platform/theme/common/colorUtils.js +187 -0
  337. package/vscode/src/vs/platform/theme/common/colors/baseColors.js +89 -0
  338. package/vscode/src/vs/platform/theme/common/colors/chartsColors.js +46 -0
  339. package/vscode/src/vs/platform/theme/common/colors/editorColors.js +469 -0
  340. package/vscode/src/vs/platform/theme/common/colors/inputColors.js +196 -0
  341. package/vscode/src/vs/platform/theme/common/colors/listColors.js +166 -0
  342. package/vscode/src/vs/platform/theme/common/colors/menuColors.js +41 -0
  343. package/vscode/src/vs/platform/theme/common/colors/minimapColors.js +61 -0
  344. package/vscode/src/vs/platform/theme/common/colors/miscColors.js +45 -0
  345. package/vscode/src/vs/platform/theme/common/colors/quickpickColors.js +51 -0
  346. package/vscode/src/vs/platform/theme/common/colors/searchColors.js +19 -0
  347. package/vscode/src/vs/platform/theme/common/iconRegistry.js +2 -1
  348. package/vscode/src/vs/platform/theme/common/themeService.d.ts +1 -1
  349. package/vscode/src/vs/platform/tunnel/common/tunnel.js +2 -0
  350. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +2 -2
  351. package/vscode/src/vs/platform/update/common/update.js +1 -1
  352. package/vscode/src/vs/platform/uriIdentity/common/uriIdentityService.js +1 -0
  353. package/vscode/src/vs/platform/userDataProfile/common/userDataProfileIpc.js +2 -0
  354. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +69 -32
  355. package/vscode/src/vs/workbench/api/common/extHost.common.services.js +6 -0
  356. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +3 -1
  357. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +12 -5
  358. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -8
  359. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +58 -88
  360. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +8 -4
  361. package/vscode/src/vs/workbench/api/common/extHostComments.js +49 -13
  362. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +16 -17
  363. package/vscode/src/vs/workbench/api/common/extHostEditorTabs.js +3 -1
  364. package/vscode/src/vs/workbench/api/common/extHostExtensionActivator.js +1 -1
  365. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +17 -4
  366. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +1 -1
  367. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +57 -40
  368. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +305 -0
  369. package/vscode/src/vs/workbench/api/common/extHostLanguages.js +2 -2
  370. package/vscode/src/vs/workbench/api/common/extHostNotebookDocument.js +1 -1
  371. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +26 -6
  372. package/vscode/src/vs/workbench/api/common/extHostQuickOpen.js +9 -9
  373. package/vscode/src/vs/workbench/api/common/extHostSCM.js +1 -1
  374. package/vscode/src/vs/workbench/api/common/extHostSearch.js +34 -3
  375. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +1 -1
  376. package/vscode/src/vs/workbench/api/common/extHostTask.js +1 -0
  377. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +32 -18
  378. package/vscode/src/vs/workbench/api/common/extHostTerminalShellIntegration.js +214 -0
  379. package/vscode/src/vs/workbench/api/common/extHostTesting.js +85 -98
  380. package/vscode/src/vs/workbench/api/common/extHostTimeline.js +1 -0
  381. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +5 -2
  382. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +119 -70
  383. package/vscode/src/vs/workbench/api/common/extHostTypes.js +90 -28
  384. package/vscode/src/vs/workbench/browser/actions/developerActions.js +4 -4
  385. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +2 -2
  386. package/vscode/src/vs/workbench/browser/actions/windowActions.js +3 -3
  387. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +3 -3
  388. package/vscode/src/vs/workbench/browser/codeeditor.js +1 -1
  389. package/vscode/src/vs/workbench/browser/composite.d.ts +3 -5
  390. package/vscode/src/vs/workbench/browser/composite.js +2 -10
  391. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  392. package/vscode/src/vs/workbench/browser/labels.js +2 -1
  393. package/vscode/src/vs/workbench/browser/media/part.css.js +1 -1
  394. package/vscode/src/vs/workbench/browser/media/style.css.js +1 -1
  395. package/vscode/src/vs/workbench/browser/part.d.ts +25 -3
  396. package/vscode/src/vs/workbench/browser/part.js +84 -9
  397. package/vscode/src/vs/workbench/browser/parts/activitybar/activitybarPart.js +67 -10
  398. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +2 -2
  399. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarPart.js +92 -14
  400. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/media/auxiliaryBarPart.css.js +1 -1
  401. package/vscode/src/vs/workbench/browser/parts/compositeBar.js +5 -4
  402. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +13 -3
  403. package/vscode/src/vs/workbench/browser/parts/compositePart.js +13 -5
  404. package/vscode/src/vs/workbench/browser/parts/editor/auxiliaryEditorPart.js +12 -0
  405. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +10 -10
  406. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  407. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +8 -7
  408. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +16 -8
  409. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +217 -0
  410. package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +14 -16
  411. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +2 -2
  412. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +8 -7
  413. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +4 -202
  414. package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +1 -1
  415. package/vscode/src/vs/workbench/browser/parts/editor/editorDropTarget.js +11 -1
  416. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +92 -23
  417. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +15 -3
  418. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.d.ts +7 -8
  419. package/vscode/src/vs/workbench/browser/parts/editor/editorPane.js +7 -6
  420. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +12 -32
  421. package/vscode/src/vs/workbench/browser/parts/editor/editorPart.js +11 -1
  422. package/vscode/src/vs/workbench/browser/parts/editor/editorParts.js +1 -0
  423. package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +27 -28
  424. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +19 -20
  425. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +12 -2
  426. package/vscode/src/vs/workbench/browser/parts/editor/editorWithViewState.js +14 -17
  427. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +11 -1
  428. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +12 -12
  429. package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +16 -16
  430. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +3 -3
  431. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +17 -17
  432. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +36 -13
  433. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +22 -22
  434. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +29 -21
  435. package/vscode/src/vs/workbench/browser/parts/media/compositepart.css.js +1 -1
  436. package/vscode/src/vs/workbench/browser/parts/media/paneCompositePart.css.js +1 -1
  437. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +13 -2
  438. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +11 -1
  439. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +16 -16
  440. package/vscode/src/vs/workbench/browser/parts/paneCompositeBar.js +1 -0
  441. package/vscode/src/vs/workbench/browser/parts/paneCompositePart.js +122 -33
  442. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +14 -3
  443. package/vscode/src/vs/workbench/browser/parts/panel/panelPart.js +15 -2
  444. package/vscode/src/vs/workbench/browser/parts/sidebar/media/sidebarpart.css.js +1 -1
  445. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarActions.js +37 -0
  446. package/vscode/src/vs/workbench/browser/parts/sidebar/sidebarPart.js +36 -18
  447. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +7 -4
  448. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +6 -4
  449. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +2 -3
  450. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  451. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +3 -3
  452. package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +13 -3
  453. package/vscode/src/vs/workbench/browser/parts/views/viewPane.d.ts +6 -0
  454. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +28 -11
  455. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +19 -15
  456. package/vscode/src/vs/workbench/browser/quickaccess.js +42 -15
  457. package/vscode/src/vs/workbench/browser/style.js +52 -3
  458. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  459. package/vscode/src/vs/workbench/browser/window.js +28 -20
  460. package/vscode/src/vs/workbench/browser/workbench.contribution.js +83 -9
  461. package/vscode/src/vs/workbench/common/component.js +0 -1
  462. package/vscode/src/vs/workbench/common/contextkeys.js +4 -4
  463. package/vscode/src/vs/workbench/common/editor/editorGroupModel.js +59 -5
  464. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +10 -0
  465. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  466. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +1 -0
  467. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +3 -1
  468. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +7 -3
  469. package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +3 -3
  470. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  471. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  472. package/vscode/src/vs/workbench/common/editor.d.ts +33 -13
  473. package/vscode/src/vs/workbench/common/editor.js +6 -7
  474. package/vscode/src/vs/workbench/common/theme.js +45 -5
  475. package/vscode/src/vs/workbench/common/views.d.ts +1 -0
  476. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +59 -184
  477. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +1 -0
  478. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +140 -13
  479. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +1 -1
  480. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignal.contribution.js +1 -0
  481. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalDebuggerContribution.js +4 -2
  482. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/accessibilitySignalLineFeatureContribution.js +35 -36
  483. package/vscode/src/vs/workbench/contrib/accessibilitySignals/browser/commands.js +1 -1
  484. package/vscode/src/vs/workbench/contrib/callHierarchy/browser/callHierarchyPeek.js +1 -1
  485. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +4 -5
  486. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +21 -12
  487. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +70 -32
  488. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -1
  489. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +4 -1
  490. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +118 -0
  491. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +11 -6
  492. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +154 -61
  493. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +186 -224
  494. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +6 -75
  495. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +158 -49
  496. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +84 -175
  497. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +38 -5
  498. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  499. package/vscode/src/vs/workbench/contrib/chat/common/annotations.js +105 -0
  500. package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +137 -43
  501. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +44 -0
  502. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +17 -1
  503. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +82 -34
  504. package/vscode/src/vs/workbench/contrib/chat/common/chatParserTypes.js +17 -3
  505. package/vscode/src/vs/workbench/contrib/chat/common/chatRequestParser.js +20 -22
  506. package/vscode/src/vs/workbench/contrib/chat/common/chatViewModel.js +68 -9
  507. package/vscode/src/vs/workbench/contrib/chat/common/codeBlockModelCollection.js +115 -0
  508. package/vscode/src/vs/workbench/contrib/chat/common/{chatProvider.js → languageModels.js} +9 -9
  509. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +5 -4
  510. package/vscode/src/vs/workbench/contrib/codeActions/browser/documentationContribution.js +2 -1
  511. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +5 -5
  512. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +33 -7
  513. package/vscode/src/vs/workbench/contrib/codeEditor/browser/find/simpleFindWidget.js +11 -1
  514. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +3 -3
  515. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +9 -6
  516. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.js +13 -3
  517. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +1 -1
  518. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +2 -2
  519. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +1 -1
  520. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +1 -1
  521. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +6 -6
  522. package/vscode/src/vs/workbench/contrib/codeEditor/{browser → common}/languageConfigurationExtensionPoint.js +79 -74
  523. package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +11 -1
  524. package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +11 -1
  525. package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +25 -18
  526. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +14 -2
  527. package/vscode/src/vs/workbench/contrib/comments/browser/commentService.js +80 -52
  528. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +12 -2
  529. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadZoneWidget.js +33 -13
  530. package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +129 -57
  531. package/vscode/src/vs/workbench/contrib/comments/browser/commentsModel.js +15 -15
  532. package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +145 -20
  533. package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +61 -95
  534. package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +2 -2
  535. package/vscode/src/vs/workbench/contrib/comments/browser/media/panel.css.js +1 -1
  536. package/vscode/src/vs/workbench/contrib/comments/browser/simpleCommentEditor.js +2 -2
  537. package/vscode/src/vs/workbench/contrib/comments/browser/timestamp.js +4 -3
  538. package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +18 -11
  539. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditor.contribution.js +6 -0
  540. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +62 -4
  541. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +6 -4
  542. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +34 -5
  543. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +48 -29
  544. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +216 -23
  545. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +11 -1
  546. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -2
  547. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  548. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +23 -5
  549. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +24 -1
  550. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.d.ts +15 -1
  551. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +30 -6
  552. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +2 -2
  553. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +106 -37
  554. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +1 -1
  555. package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpener.contribution.js +1 -0
  556. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +8 -11
  557. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +5 -3
  558. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +23 -24
  559. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +17 -12
  560. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +3 -3
  561. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +9 -9
  562. package/vscode/src/vs/workbench/contrib/files/browser/fileCommands.save.js +1 -1
  563. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +10 -0
  564. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +11 -1
  565. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +11 -1
  566. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +1 -3
  567. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +1 -1
  568. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +15 -6
  569. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +4 -8
  570. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +674 -0
  571. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatContentWidget.js +154 -0
  572. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +316 -344
  573. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatFileCreationWidget.js +223 -0
  574. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +8 -25
  575. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionServiceImpl.js +427 -0
  576. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +45 -160
  577. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +358 -702
  578. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatZoneWidget.js +165 -0
  579. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChat.css.js +4 -0
  580. package/vscode/src/vs/workbench/contrib/inlineChat/browser/media/inlineChatContentWidget.css.js +4 -0
  581. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +1 -1
  582. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +16 -27
  583. package/vscode/src/vs/workbench/contrib/interactive/browser/interactiveEditorInput.js +19 -4
  584. package/vscode/src/vs/workbench/contrib/languageStatus/browser/languageStatus.contribution.js +9 -9
  585. package/vscode/src/vs/workbench/contrib/languageStatus/browser/media/languageStatus.css.js +1 -1
  586. package/vscode/src/vs/workbench/contrib/limitIndicator/browser/limitIndicator.contribution.js +2 -2
  587. package/vscode/src/vs/workbench/contrib/logs/common/defaultLogLevels.js +17 -2
  588. package/vscode/src/vs/workbench/contrib/logs/common/logsActions.js +236 -0
  589. package/vscode/src/vs/workbench/contrib/markdown/browser/markdownDocumentRenderer.js +2 -2
  590. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +9 -4
  591. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +8 -6
  592. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeMarkers/mergeMarkersController.js +8 -0
  593. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +5 -5
  594. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/rangeUtils.js +5 -5
  595. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/textModelDiffs.js +2 -0
  596. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/utils.js +4 -2
  597. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/colors.js +11 -1
  598. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/conflictActions.js +5 -3
  599. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editorGutter.js +5 -3
  600. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/baseCodeEditorView.js +6 -4
  601. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/codeEditorView.js +5 -4
  602. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/inputCodeEditorView.js +7 -5
  603. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/editors/resultCodeEditorView.js +6 -4
  604. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/lineAlignment.js +2 -2
  605. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/mergeEditor.js +23 -19
  606. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/scrollSynchronizer.js +4 -1
  607. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/view/viewModel.js +5 -3
  608. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +9 -0
  609. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +303 -0
  610. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellCommands/cellCommands.js +655 -0
  611. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellDiagnostics/cellDiagnostics.js +101 -0
  612. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +56 -1
  613. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findMatchDecorationModel.js +11 -1
  614. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/notebookFindReplaceWidget.js +11 -4
  615. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +29 -0
  616. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +888 -0
  617. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +2 -1
  618. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/notebookIndentationActions.js +1 -1
  619. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebook.css.js +1 -1
  620. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookFolding.css.js +1 -1
  621. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookOutline.css.js +1 -1
  622. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookToolbar.css.js +1 -1
  623. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +88 -0
  624. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +60 -46
  625. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +42 -52
  626. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellActionView.js +18 -7
  627. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellComments.js +1 -1
  628. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellContextKeys.js +28 -1
  629. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +2 -2
  630. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbars.js +11 -7
  631. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellRunToolbar.js +2 -1
  632. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +48 -4
  633. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +1 -1
  634. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +3 -1
  635. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellListView.js +13 -2
  636. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +57 -10
  637. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +11 -4
  638. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +161 -15
  639. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/baseCellViewModel.js +4 -2
  640. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/codeCellViewModel.js +21 -2
  641. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/foldingModel.js +1 -1
  642. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/markupCellViewModel.js +5 -0
  643. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineEntryFactory.js +14 -4
  644. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookOutlineProvider.js +14 -8
  645. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +3 -0
  646. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +25 -64
  647. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorToolbar.js +27 -22
  648. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +1 -1
  649. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  650. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookTopCellToolbar.js +2 -2
  651. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +8 -1
  652. package/vscode/src/vs/workbench/contrib/notebook/common/notebookContextKeys.js +3 -1
  653. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +7 -14
  654. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +4 -4
  655. package/vscode/src/vs/workbench/contrib/outline/browser/outline.js +10 -0
  656. package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingWidgets.js +16 -4
  657. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesWidgets.js +17 -4
  658. package/vscode/src/vs/workbench/contrib/preferences/common/settingsEditorColorRegistry.js +11 -1
  659. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +26 -8
  660. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +16 -6
  661. package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +11 -1
  662. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +18 -8
  663. package/vscode/src/vs/workbench/contrib/search/browser/notebookSearch/notebookSearchService.js +235 -0
  664. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +182 -69
  665. package/vscode/src/vs/workbench/contrib/search/common/constants.js +2 -0
  666. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +203 -1
  667. package/vscode/src/vs/workbench/contrib/tags/browser/workspaceTagsService.js +3 -0
  668. package/vscode/src/vs/workbench/contrib/tags/common/workspaceTags.js +2 -0
  669. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +11 -3
  670. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +2 -2
  671. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +58 -8
  672. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +3 -1
  673. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.d.ts +1 -0
  674. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +12 -1
  675. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +11 -1
  676. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +53 -57
  677. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +11 -26
  678. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +6 -3
  679. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +12 -12
  680. package/vscode/src/vs/workbench/contrib/testing/common/testingContextKeys.js +8 -0
  681. package/vscode/src/vs/workbench/contrib/timeline/common/timeline.js +2 -0
  682. package/vscode/src/vs/workbench/contrib/typeHierarchy/browser/typeHierarchyPeek.js +1 -1
  683. package/vscode/src/vs/workbench/contrib/webview/browser/overlayWebview.js +30 -7
  684. package/vscode/src/vs/workbench/contrib/webview/browser/themeing.js +12 -2
  685. package/vscode/src/vs/workbench/contrib/webview/browser/webviewElement.js +50 -41
  686. package/vscode/src/vs/workbench/contrib/webview/browser/webviewWindowDragMonitor.js +4 -5
  687. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +20 -22
  688. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditorInput.js +4 -1
  689. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewPanel.contribution.js +1 -0
  690. package/vscode/src/vs/workbench/contrib/webviewView/browser/webviewViewPane.js +3 -3
  691. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  692. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/common/gettingStartedContent.js +2 -0
  693. package/vscode/src/vs/workbench/services/assignment/common/assignmentService.js +6 -0
  694. package/vscode/src/vs/workbench/services/authentication/browser/authenticationAccessService.js +69 -0
  695. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +69 -811
  696. package/vscode/src/vs/workbench/services/authentication/browser/authenticationUsageService.js +50 -0
  697. package/vscode/src/vs/workbench/services/authentication/common/authentication.js +2 -1
  698. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +50 -25
  699. package/vscode/src/vs/workbench/services/banner/browser/bannerService.d.ts +1 -1
  700. package/vscode/src/vs/workbench/services/editor/browser/codeEditorService.js +1 -0
  701. package/vscode/src/vs/workbench/services/editor/browser/editorPaneService.js +1 -0
  702. package/vscode/src/vs/workbench/services/editor/browser/editorResolverService.js +21 -17
  703. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.d.ts +12 -0
  704. package/vscode/src/vs/workbench/services/editor/common/customEditorLabelService.js +144 -0
  705. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +10 -6
  706. package/vscode/src/vs/workbench/services/editor/common/editorResolverService.d.ts +3 -3
  707. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.d.ts +16 -4
  708. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +12 -1
  709. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +46 -121
  710. package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.d.ts +5 -2
  711. package/vscode/src/vs/workbench/services/extensions/common/extensions.d.ts +6 -3
  712. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +9 -1
  713. package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +4 -4
  714. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +2 -1
  715. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +8 -1
  716. package/vscode/src/vs/workbench/services/history/browser/historyService.js +44 -36
  717. package/vscode/src/vs/workbench/services/history/common/history.d.ts +0 -5
  718. package/vscode/src/vs/workbench/services/language/common/languageService.js +4 -3
  719. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +2 -1
  720. package/vscode/src/vs/workbench/services/layout/browser/layoutService.js +2 -1
  721. package/vscode/src/vs/workbench/services/lifecycle/common/lifecycleService.js +8 -6
  722. package/vscode/src/vs/workbench/services/output/common/output.js +4 -1
  723. package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +2 -2
  724. package/vscode/src/vs/workbench/services/search/common/search.js +1 -0
  725. package/vscode/src/vs/workbench/services/search/common/textSearchManager.js +15 -5
  726. package/vscode/src/vs/workbench/services/statusbar/browser/statusbar.d.ts +6 -1
  727. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +1 -1
  728. package/vscode/src/vs/workbench/services/textfile/common/textfiles.d.ts +1 -1
  729. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +11 -1
  730. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +5 -3
  731. package/vscode/src/vs/workbench/services/userActivity/common/userActivityService.js +1 -1
  732. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +1 -0
  733. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +7 -7
  734. package/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts +261 -0
  735. package/vscode-dts/vscode.proposed.authLearnMore.d.ts +16 -0
  736. package/vscode-dts/vscode.proposed.chatParticipant.d.ts +49 -78
  737. package/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts +13 -16
  738. package/vscode-dts/vscode.proposed.chatProvider.d.ts +1 -1
  739. package/vscode-dts/vscode.proposed.commentThreadApplicability.d.ts +32 -0
  740. package/vscode-dts/vscode.proposed.commentingRangeHint.d.ts +16 -0
  741. package/vscode-dts/vscode.proposed.contribCommentsViewThreadMenus.d.ts +6 -0
  742. package/vscode-dts/vscode.proposed.contribDiffEditorGutterToolBarMenus.d.ts +6 -0
  743. package/vscode-dts/vscode.proposed.debugFocus.d.ts +15 -23
  744. package/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts +10 -0
  745. package/vscode-dts/vscode.proposed.documentPaste.d.ts +115 -30
  746. package/vscode-dts/vscode.proposed.dropMetadata.d.ts +19 -14
  747. package/vscode-dts/vscode.proposed.fileComments.d.ts +2 -4
  748. package/vscode-dts/vscode.proposed.inlineCompletionsAdditions.d.ts +18 -0
  749. package/vscode-dts/vscode.proposed.interactive.d.ts +0 -16
  750. package/vscode-dts/vscode.proposed.languageModels.d.ts +115 -53
  751. package/vscode-dts/vscode.proposed.notebookCellExecution.d.ts +44 -0
  752. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +3 -0
  753. package/vscode-dts/vscode.proposed.tabInputMultiDiff.d.ts +22 -0
  754. package/vscode-dts/vscode.proposed.terminalExecuteCommandEvent.d.ts +2 -0
  755. package/vscode-dts/vscode.proposed.terminalShellIntegration.d.ts +207 -0
  756. package/vscode/src/vs/editor/browser/services/hoverService.d.ts +0 -30
  757. package/vscode/src/vs/editor/browser/widget/embeddedCodeEditorWidget.js +0 -74
  758. package/vscode/src/vs/editor/browser/widget/media/editor.css.js +0 -4
  759. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +0 -881
  760. package/vscode/src/vs/platform/theme/common/colorRegistry.js +0 -1316
  761. package/vscode/src/vs/workbench/api/common/extHostChatProvider.js +0 -253
  762. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.css.js +0 -4
  763. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +0 -74
  764. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +0 -4
  765. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +0 -424
  766. package/vscode-dts/vscode.proposed.testCoverage.d.ts +0 -222
  767. /package/vscode/src/vs/base/browser/ui/hover/{hover.css.js → hoverWidget.css.js} +0 -0
  768. /package/vscode/src/vs/editor/browser/{widget/hoverWidget → services/hoverService}/hover.css.js +0 -0
  769. /package/vscode/src/vs/editor/browser/widget/{multiDiffEditorWidget → multiDiffEditor}/objectPool.js +0 -0
  770. /package/vscode/src/vs/editor/contrib/indentation/{browser → common}/indentUtils.js +0 -0
  771. /package/vscode/src/vs/editor/contrib/rename/browser/{renameInputField.css.js → renameWidget.css.js} +0 -0
  772. /package/vscode/src/vs/platform/theme/common/{colorRegistry.d.ts → colorUtils.d.ts} +0 -0
@@ -1,8 +1,10 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
- import { append, addStandardDisposableListener, $ as $$1, isMouseEvent, hide, show, addDisposableListener } from '../../../../base/browser/dom.js';
2
+ import { append, addStandardDisposableListener, addDisposableListener, $ as $$1, isMouseEvent, hide, show } from '../../../../base/browser/dom.js';
3
3
  import { Gesture } from '../../../../base/browser/touch.js';
4
4
  import { ActionBar } from '../../../../base/browser/ui/actionbar/actionbar.js';
5
+ import { getDefaultHoverDelegate } from '../../../../base/browser/ui/hover/hoverDelegateFactory.js';
5
6
  import { IconLabel } from '../../../../base/browser/ui/iconLabel/iconLabel.js';
7
+ import { setupCustomHover } from '../../../../base/browser/ui/hover/updatableHoverWidget.js';
6
8
  import { InputBox } from '../../../../base/browser/ui/inputbox/inputBox.js';
7
9
  import { Action } from '../../../../base/common/actions.js';
8
10
  import { equals } from '../../../../base/common/arrays.js';
@@ -32,11 +34,12 @@ import { defaultInputBoxStyles } from '../../../../platform/theme/browser/defaul
32
34
  import { IThemeService } from '../../../../platform/theme/common/themeService.js';
33
35
  import { ViewPane, ViewAction } from '../../../browser/parts/views/viewPane.js';
34
36
  import { IViewDescriptorService } from '../../../common/views.js';
35
- import { breakpoint, dataBreakpoint, functionBreakpoint, logBreakpoint, conditionalBreakpoint, debugBreakpointUnsupported, watchExpressionsAddFuncBreakpoint, breakpointsActivate, breakpointsRemoveAll } from './debugIcons.js';
36
- import { CONTEXT_BREAKPOINT_ITEM_TYPE, CONTEXT_BREAKPOINT_HAS_MODES, CONTEXT_BREAKPOINT_SUPPORTS_CONDITION, CONTEXT_BREAKPOINT_INPUT_FOCUSED, CONTEXT_BREAKPOINTS_FOCUSED, DEBUG_SCHEME, DebuggerString, IDebugService, BREAKPOINTS_VIEW_ID, CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_IN_DEBUG_MODE, BREAKPOINT_EDITOR_CONTRIBUTION_ID } from '../common/debug.js';
37
+ import { breakpoint, dataBreakpoint, functionBreakpoint, logBreakpoint, conditionalBreakpoint, debugBreakpointUnsupported, watchExpressionsAddFuncBreakpoint, watchExpressionsAddDataBreakpoint, breakpointsActivate, breakpointsRemoveAll } from './debugIcons.js';
38
+ import { CONTEXT_BREAKPOINT_ITEM_TYPE, CONTEXT_BREAKPOINT_ITEM_IS_DATA_BYTES, CONTEXT_BREAKPOINT_HAS_MODES, CONTEXT_BREAKPOINT_SUPPORTS_CONDITION, CONTEXT_BREAKPOINT_INPUT_FOCUSED, CONTEXT_BREAKPOINTS_FOCUSED, DEBUG_SCHEME, DebuggerString, IDebugService, BREAKPOINTS_VIEW_ID, CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_IN_DEBUG_MODE, BREAKPOINT_EDITOR_CONTRIBUTION_ID } from '../common/debug.js';
37
39
  import { Breakpoint, DataBreakpoint, FunctionBreakpoint, InstructionBreakpoint, ExceptionBreakpoint } from '../common/debugModel.js';
38
40
  import { DisassemblyViewInput } from '../common/disassemblyViewInput.js';
39
41
  import { SIDE_GROUP, ACTIVE_GROUP, IEditorService } from '../../../services/editor/common/editorService.js';
42
+ import { INotificationService } from '../../../../platform/notification/common/notification.js';
40
43
  var BreakpointsRenderer_1, FunctionBreakpointsRenderer_1, DataBreakpointsRenderer_1, InstructionBreakpointsRenderer_1;
41
44
  const $ = $$1;
42
45
  function createCheckbox(disposables) {
@@ -67,6 +70,7 @@ let BreakpointsView = class BreakpointsView extends ViewPane {
67
70
  this.menu = menuService.createMenu(MenuId.DebugBreakpointsContext, contextKeyService);
68
71
  this._register(this.menu);
69
72
  this.breakpointItemType = CONTEXT_BREAKPOINT_ITEM_TYPE.bindTo(contextKeyService);
73
+ this.breakpointIsDataBytes = CONTEXT_BREAKPOINT_ITEM_IS_DATA_BYTES.bindTo(contextKeyService);
70
74
  this.breakpointHasMultipleModes = CONTEXT_BREAKPOINT_HAS_MODES.bindTo(contextKeyService);
71
75
  this.breakpointSupportsCondition = CONTEXT_BREAKPOINT_SUPPORTS_CONDITION.bindTo(contextKeyService);
72
76
  this.breakpointInputFocused = CONTEXT_BREAKPOINT_INPUT_FOCUSED.bindTo(contextKeyService);
@@ -92,7 +96,7 @@ let BreakpointsView = class BreakpointsView extends ViewPane {
92
96
  ( new ExceptionBreakpointInputRenderer(this, this.debugService, this.contextViewService)),
93
97
  this.instantiationService.createInstance(FunctionBreakpointsRenderer, this.menu, this.breakpointSupportsCondition, this.breakpointItemType),
94
98
  ( new FunctionBreakpointInputRenderer(this, this.debugService, this.contextViewService, this.labelService)),
95
- this.instantiationService.createInstance(DataBreakpointsRenderer, this.menu, this.breakpointHasMultipleModes, this.breakpointSupportsCondition, this.breakpointItemType),
99
+ this.instantiationService.createInstance(DataBreakpointsRenderer, this.menu, this.breakpointHasMultipleModes, this.breakpointSupportsCondition, this.breakpointItemType, this.breakpointIsDataBytes),
96
100
  ( new DataBreakpointInputRenderer(this, this.debugService, this.contextViewService, this.labelService)),
97
101
  this.instantiationService.createInstance(InstructionBreakpointsRenderer),
98
102
  ], {
@@ -200,6 +204,7 @@ let BreakpointsView = class BreakpointsView extends ViewPane {
200
204
  const session = this.debugService.getViewModel().focusedSession;
201
205
  const conditionSupported = element instanceof ExceptionBreakpoint ? element.supportsCondition : (!session || !!session.capabilities.supportsConditionalBreakpoints);
202
206
  this.breakpointSupportsCondition.set(conditionSupported);
207
+ this.breakpointIsDataBytes.set(element instanceof DataBreakpoint && element.src.type === 1 );
203
208
  const secondary = [];
204
209
  createAndFillInContextMenuActions(this.menu, { arg: e.element, shouldForwardArgs: false }, { primary: [], secondary }, 'inline');
205
210
  this.contextMenuService.showContextMenu({
@@ -407,7 +412,7 @@ let BreakpointsRenderer = class BreakpointsRenderer {
407
412
  data.checkbox.checked = breakpoint.enabled;
408
413
  const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService, this.debugService.getModel());
409
414
  data.icon.className = ThemeIcon.asClassName(icon);
410
- data.breakpoint.title = breakpoint.message || message || '';
415
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, breakpoint.message || message || ''));
411
416
  const debugActive = this.debugService.state === 3 || this.debugService.state === 2 ;
412
417
  if (debugActive && !breakpoint.verified) {
413
418
  data.breakpoint.classList.add('disabled');
@@ -463,20 +468,21 @@ class ExceptionBreakpointsRenderer {
463
468
  renderElement(exceptionBreakpoint, index, data) {
464
469
  data.context = exceptionBreakpoint;
465
470
  data.name.textContent = exceptionBreakpoint.label || `${exceptionBreakpoint.filter} exceptions`;
466
- data.breakpoint.title = exceptionBreakpoint.verified ? (exceptionBreakpoint.description || data.name.textContent) : exceptionBreakpoint.message || ( localizeWithPath(
471
+ const exceptionBreakpointtitle = exceptionBreakpoint.verified ? (exceptionBreakpoint.description || data.name.textContent) : exceptionBreakpoint.message || ( localizeWithPath(
467
472
  'vs/workbench/contrib/debug/browser/breakpointsView',
468
473
  'unverifiedExceptionBreakpoint',
469
474
  "Unverified Exception Breakpoint"
470
475
  ));
476
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, exceptionBreakpointtitle));
471
477
  data.breakpoint.classList.toggle('disabled', !exceptionBreakpoint.verified);
472
478
  data.checkbox.checked = exceptionBreakpoint.enabled;
473
479
  data.condition.textContent = exceptionBreakpoint.condition || '';
474
- data.condition.title = ( localizeWithPath(
480
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.condition, ( localizeWithPath(
475
481
  'vs/workbench/contrib/debug/browser/breakpointsView',
476
482
  'expressionCondition',
477
483
  "Expression condition: {0}",
478
484
  exceptionBreakpoint.condition
479
- ));
485
+ ))));
480
486
  if (exceptionBreakpoint.modeLabel) {
481
487
  data.badge.textContent = exceptionBreakpoint.modeLabel;
482
488
  data.badge.style.display = 'block';
@@ -534,9 +540,9 @@ let FunctionBreakpointsRenderer = class FunctionBreakpointsRenderer {
534
540
  data.name.textContent = functionBreakpoint.name;
535
541
  const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService, this.debugService.getModel());
536
542
  data.icon.className = ThemeIcon.asClassName(icon);
537
- data.icon.title = message ? message : '';
543
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.icon, message ? message : ''));
538
544
  data.checkbox.checked = functionBreakpoint.enabled;
539
- data.breakpoint.title = message ? message : '';
545
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, message ? message : ''));
540
546
  if (functionBreakpoint.condition && functionBreakpoint.hitCondition) {
541
547
  data.condition.textContent = ( localizeWithPath(
542
548
  'vs/workbench/contrib/debug/browser/breakpointsView',
@@ -559,11 +565,11 @@ let FunctionBreakpointsRenderer = class FunctionBreakpointsRenderer {
559
565
  const session = this.debugService.getViewModel().focusedSession;
560
566
  data.breakpoint.classList.toggle('disabled', (session && !session.capabilities.supportsFunctionBreakpoints) || !this.debugService.getModel().areBreakpointsActivated());
561
567
  if (session && !session.capabilities.supportsFunctionBreakpoints) {
562
- data.breakpoint.title = ( localizeWithPath(
568
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, ( localizeWithPath(
563
569
  'vs/workbench/contrib/debug/browser/breakpointsView',
564
570
  'functionBreakpointsNotSupported',
565
571
  "Function breakpoints are not supported by this debug type"
566
- ));
572
+ ))));
567
573
  }
568
574
  const primary = [];
569
575
  this.breakpointSupportsCondition.set(!session || !!session.capabilities.supportsConditionalBreakpoints);
@@ -583,11 +589,12 @@ FunctionBreakpointsRenderer = FunctionBreakpointsRenderer_1 = ( __decorate([
583
589
  ], FunctionBreakpointsRenderer));
584
590
  let DataBreakpointsRenderer = class DataBreakpointsRenderer {
585
591
  static { DataBreakpointsRenderer_1 = this; }
586
- constructor(menu, breakpointHasMultipleModes, breakpointSupportsCondition, breakpointItemType, debugService, labelService) {
592
+ constructor(menu, breakpointHasMultipleModes, breakpointSupportsCondition, breakpointItemType, breakpointIsDataBytes, debugService, labelService) {
587
593
  this.menu = menu;
588
594
  this.breakpointHasMultipleModes = breakpointHasMultipleModes;
589
595
  this.breakpointSupportsCondition = breakpointSupportsCondition;
590
596
  this.breakpointItemType = breakpointItemType;
597
+ this.breakpointIsDataBytes = breakpointIsDataBytes;
591
598
  this.debugService = debugService;
592
599
  this.labelService = labelService;
593
600
  }
@@ -620,9 +627,9 @@ let DataBreakpointsRenderer = class DataBreakpointsRenderer {
620
627
  data.name.textContent = dataBreakpoint.description;
621
628
  const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService, this.debugService.getModel());
622
629
  data.icon.className = ThemeIcon.asClassName(icon);
623
- data.icon.title = message ? message : '';
630
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.icon, message ? message : ''));
624
631
  data.checkbox.checked = dataBreakpoint.enabled;
625
- data.breakpoint.title = message ? message : '';
632
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, message ? message : ''));
626
633
  if (dataBreakpoint.modeLabel) {
627
634
  data.badge.textContent = dataBreakpoint.modeLabel;
628
635
  data.badge.style.display = 'block';
@@ -633,11 +640,11 @@ let DataBreakpointsRenderer = class DataBreakpointsRenderer {
633
640
  const session = this.debugService.getViewModel().focusedSession;
634
641
  data.breakpoint.classList.toggle('disabled', (session && !session.capabilities.supportsDataBreakpoints) || !this.debugService.getModel().areBreakpointsActivated());
635
642
  if (session && !session.capabilities.supportsDataBreakpoints) {
636
- data.breakpoint.title = ( localizeWithPath(
643
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, ( localizeWithPath(
637
644
  'vs/workbench/contrib/debug/browser/breakpointsView',
638
645
  'dataBreakpointsNotSupported',
639
646
  "Data breakpoints are not supported by this debug type"
640
- ));
647
+ ))));
641
648
  }
642
649
  if (dataBreakpoint.accessType) {
643
650
  const accessType = dataBreakpoint.accessType === 'read' ? ( localizeWithPath('vs/workbench/contrib/debug/browser/breakpointsView', 'read', "Read")) : dataBreakpoint.accessType === 'write' ? ( localizeWithPath('vs/workbench/contrib/debug/browser/breakpointsView', 'write', "Write")) : ( localizeWithPath('vs/workbench/contrib/debug/browser/breakpointsView', 'access', "Access"));
@@ -662,18 +669,20 @@ let DataBreakpointsRenderer = class DataBreakpointsRenderer {
662
669
  this.breakpointSupportsCondition.set(!session || !!session.capabilities.supportsConditionalBreakpoints);
663
670
  this.breakpointHasMultipleModes.set(this.debugService.getModel().getBreakpointModes('data').length > 1);
664
671
  this.breakpointItemType.set('dataBreakpoint');
672
+ this.breakpointIsDataBytes.set(dataBreakpoint.src.type === 1 );
665
673
  createAndFillInActionBarActions(this.menu, { arg: dataBreakpoint, shouldForwardArgs: true }, { primary, secondary: [] }, 'inline');
666
674
  data.actionBar.clear();
667
675
  data.actionBar.push(primary, { icon: true, label: false });
668
676
  breakpointIdToActionBarDomeNode.set(dataBreakpoint.getId(), data.actionBar.domNode);
677
+ this.breakpointIsDataBytes.reset();
669
678
  }
670
679
  disposeTemplate(templateData) {
671
680
  dispose(templateData.toDispose);
672
681
  }
673
682
  };
674
683
  DataBreakpointsRenderer = DataBreakpointsRenderer_1 = ( __decorate([
675
- ( __param(4, IDebugService)),
676
- ( __param(5, ILabelService))
684
+ ( __param(5, IDebugService)),
685
+ ( __param(6, ILabelService))
677
686
  ], DataBreakpointsRenderer));
678
687
  let InstructionBreakpointsRenderer = class InstructionBreakpointsRenderer {
679
688
  static { InstructionBreakpointsRenderer_1 = this; }
@@ -708,11 +717,11 @@ let InstructionBreakpointsRenderer = class InstructionBreakpointsRenderer {
708
717
  data.context = breakpoint;
709
718
  data.breakpoint.classList.toggle('disabled', !this.debugService.getModel().areBreakpointsActivated());
710
719
  data.name.textContent = '0x' + ( breakpoint.address.toString(16));
711
- data.name.title = `Decimal address: breakpoint.address.toString()`;
720
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.name, `Decimal address: breakpoint.address.toString()`));
712
721
  data.checkbox.checked = breakpoint.enabled;
713
722
  const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService, this.debugService.getModel());
714
723
  data.icon.className = ThemeIcon.asClassName(icon);
715
- data.breakpoint.title = breakpoint.message || message || '';
724
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.breakpoint, breakpoint.message || message || ''));
716
725
  const debugActive = this.debugService.state === 3 || this.debugService.state === 2 ;
717
726
  if (debugActive && !breakpoint.verified) {
718
727
  data.breakpoint.classList.add('disabled');
@@ -811,7 +820,7 @@ class FunctionBreakpointInputRenderer {
811
820
  data.type = this.view.inputBoxData?.type || 'name';
812
821
  const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService, this.debugService.getModel());
813
822
  data.icon.className = ThemeIcon.asClassName(icon);
814
- data.icon.title = message ? message : '';
823
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.icon, message ? message : ''));
815
824
  data.checkbox.checked = functionBreakpoint.enabled;
816
825
  data.checkbox.disabled = true;
817
826
  data.inputBox.value = functionBreakpoint.name || '';
@@ -932,7 +941,7 @@ class DataBreakpointInputRenderer {
932
941
  data.type = this.view.inputBoxData?.type || 'condition';
933
942
  const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService, this.debugService.getModel());
934
943
  data.icon.className = ThemeIcon.asClassName(icon);
935
- data.icon.title = message ? message : '';
944
+ data.toDispose.push(setupCustomHover(getDefaultHoverDelegate('mouse'), data.icon, message ?? ''));
936
945
  data.checkbox.checked = dataBreakpoint.enabled;
937
946
  data.checkbox.disabled = true;
938
947
  data.inputBox.value = '';
@@ -1340,6 +1349,190 @@ registerAction2(class extends Action2 {
1340
1349
  debugService.addFunctionBreakpoint();
1341
1350
  }
1342
1351
  });
1352
+ class MemoryBreakpointAction extends Action2 {
1353
+ async run(accessor, existingBreakpoint) {
1354
+ const debugService = accessor.get(IDebugService);
1355
+ const session = debugService.getViewModel().focusedSession;
1356
+ if (!session) {
1357
+ return;
1358
+ }
1359
+ let defaultValue = undefined;
1360
+ if (existingBreakpoint && existingBreakpoint.src.type === 1 ) {
1361
+ defaultValue = `${existingBreakpoint.src.address} + ${existingBreakpoint.src.bytes}`;
1362
+ }
1363
+ const quickInput = accessor.get(IQuickInputService);
1364
+ const notifications = accessor.get(INotificationService);
1365
+ const range = await this.getRange(quickInput, defaultValue);
1366
+ if (!range) {
1367
+ return;
1368
+ }
1369
+ let info;
1370
+ try {
1371
+ info = await session.dataBytesBreakpointInfo(range.address, range.bytes);
1372
+ }
1373
+ catch (e) {
1374
+ notifications.error(( localizeWithPath(
1375
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1376
+ 'dataBreakpointError',
1377
+ "Failed to set data breakpoint at {0}: {1}",
1378
+ range.address,
1379
+ e.message
1380
+ )));
1381
+ }
1382
+ if (!info?.dataId) {
1383
+ return;
1384
+ }
1385
+ let accessType = 'write';
1386
+ if (info.accessTypes && info.accessTypes?.length > 1) {
1387
+ const accessTypes = ( info.accessTypes.map(type => ({ label: type })));
1388
+ const selectedAccessType = await quickInput.pick(accessTypes, { placeHolder: ( localizeWithPath(
1389
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1390
+ 'dataBreakpointAccessType',
1391
+ "Select the access type to monitor"
1392
+ )) });
1393
+ if (!selectedAccessType) {
1394
+ return;
1395
+ }
1396
+ accessType = selectedAccessType.label;
1397
+ }
1398
+ const src = { type: 1 , ...range };
1399
+ if (existingBreakpoint) {
1400
+ await debugService.removeDataBreakpoints(existingBreakpoint.getId());
1401
+ }
1402
+ await debugService.addDataBreakpoint({
1403
+ description: info.description,
1404
+ src,
1405
+ canPersist: true,
1406
+ accessTypes: info.accessTypes,
1407
+ accessType: accessType,
1408
+ initialSessionData: { session, dataId: info.dataId }
1409
+ });
1410
+ }
1411
+ getRange(quickInput, defaultValue) {
1412
+ return ( new Promise(resolve => {
1413
+ const input = quickInput.createInputBox();
1414
+ input.prompt = ( localizeWithPath(
1415
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1416
+ 'dataBreakpointMemoryRangePrompt',
1417
+ "Enter a memory range in which to break"
1418
+ ));
1419
+ input.placeholder = ( localizeWithPath(
1420
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1421
+ 'dataBreakpointMemoryRangePlaceholder',
1422
+ 'Absolute range (0x1234 - 0x1300) or range of bytes after an address (0x1234 + 0xff)'
1423
+ ));
1424
+ if (defaultValue) {
1425
+ input.value = defaultValue;
1426
+ input.valueSelection = [0, defaultValue.length];
1427
+ }
1428
+ input.onDidChangeValue(e => {
1429
+ const err = this.parseAddress(e, false);
1430
+ input.validationMessage = err?.error;
1431
+ });
1432
+ input.onDidAccept(() => {
1433
+ const r = this.parseAddress(input.value, true);
1434
+ if ('error' in r) {
1435
+ input.validationMessage = r.error;
1436
+ }
1437
+ else {
1438
+ resolve(r);
1439
+ }
1440
+ input.dispose();
1441
+ });
1442
+ input.onDidHide(() => {
1443
+ resolve(undefined);
1444
+ input.dispose();
1445
+ });
1446
+ input.ignoreFocusOut = true;
1447
+ input.show();
1448
+ }));
1449
+ }
1450
+ parseAddress(range, isFinal) {
1451
+ const parts = /^(\S+)\s*(?:([+-])\s*(\S+))?/.exec(range);
1452
+ if (!parts) {
1453
+ return { error: ( localizeWithPath(
1454
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1455
+ 'dataBreakpointAddrFormat',
1456
+ 'Address should be a range of numbers the form "[Start] - [End]" or "[Start] + [Bytes]"'
1457
+ )) };
1458
+ }
1459
+ const isNum = (e) => isFinal ? /^0x[0-9a-f]*|[0-9]*$/i.test(e) : /^0x[0-9a-f]+|[0-9]+$/i.test(e);
1460
+ const [, startStr, sign = '+', endStr = '1'] = parts;
1461
+ for (const n of [startStr, endStr]) {
1462
+ if (!isNum(n)) {
1463
+ return { error: ( localizeWithPath(
1464
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1465
+ 'dataBreakpointAddrStartEnd',
1466
+ 'Number must be a decimal integer or hex value starting with \"0x\", got {0}',
1467
+ n
1468
+ )) };
1469
+ }
1470
+ }
1471
+ if (!isFinal) {
1472
+ return;
1473
+ }
1474
+ const start = BigInt(startStr);
1475
+ const end = BigInt(endStr);
1476
+ const address = `0x${( start.toString(16))}`;
1477
+ if (sign === '-') {
1478
+ return { address, bytes: Number(start - end) };
1479
+ }
1480
+ return { address, bytes: Number(end) };
1481
+ }
1482
+ }
1483
+ registerAction2(class extends MemoryBreakpointAction {
1484
+ constructor() {
1485
+ super({
1486
+ id: 'workbench.debug.viewlet.action.addDataBreakpointOnAddress',
1487
+ title: {
1488
+ ...( localize2WithPath(
1489
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1490
+ 'addDataBreakpointOnAddress',
1491
+ "Add Data Breakpoint at Address"
1492
+ )),
1493
+ mnemonicTitle: ( localizeWithPath(
1494
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1495
+ { key: 'miDataBreakpoint', comment: ['&& denotes a mnemonic'] },
1496
+ "&&Data Breakpoint..."
1497
+ )),
1498
+ },
1499
+ f1: true,
1500
+ icon: watchExpressionsAddDataBreakpoint,
1501
+ menu: [{
1502
+ id: MenuId.ViewTitle,
1503
+ group: 'navigation',
1504
+ order: 11,
1505
+ when: ( ContextKeyExpr.and(CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED, ( ContextKeyExpr.equals('view', BREAKPOINTS_VIEW_ID))))
1506
+ }, {
1507
+ id: MenuId.MenubarNewBreakpointMenu,
1508
+ group: '1_breakpoints',
1509
+ order: 4,
1510
+ when: CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED
1511
+ }]
1512
+ });
1513
+ }
1514
+ });
1515
+ registerAction2(class extends MemoryBreakpointAction {
1516
+ constructor() {
1517
+ super({
1518
+ id: 'workbench.debug.viewlet.action.editDataBreakpointOnAddress',
1519
+ title: ( localize2WithPath(
1520
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1521
+ 'editDataBreakpointOnAddress',
1522
+ "Edit Address..."
1523
+ )),
1524
+ menu: [{
1525
+ id: MenuId.DebugBreakpointsContext,
1526
+ when: ( ContextKeyExpr.and(
1527
+ CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED,
1528
+ CONTEXT_BREAKPOINT_ITEM_IS_DATA_BYTES
1529
+ )),
1530
+ group: 'navigation',
1531
+ order: 15,
1532
+ }]
1533
+ });
1534
+ }
1535
+ });
1343
1536
  registerAction2(class extends Action2 {
1344
1537
  constructor() {
1345
1538
  super({
@@ -6,7 +6,17 @@ import { Range } from '../../../../editor/common/core/range.js';
6
6
  import { GlyphMarginLane, OverviewRulerLane } from '../../../../editor/common/model.js';
7
7
  import { localizeWithPath } from '../../../../nls.js';
8
8
  import { ILogService } from '../../../../platform/log/common/log.js';
9
- import { registerColor } from '../../../../platform/theme/common/colorRegistry.js';
9
+ import { registerColor } from '../../../../platform/theme/common/colorUtils.js';
10
+ import '../../../../platform/theme/common/colors/baseColors.js';
11
+ import '../../../../platform/theme/common/colors/chartsColors.js';
12
+ import '../../../../platform/theme/common/colors/editorColors.js';
13
+ import '../../../../platform/theme/common/colors/inputColors.js';
14
+ import '../../../../platform/theme/common/colors/listColors.js';
15
+ import '../../../../platform/theme/common/colors/menuColors.js';
16
+ import '../../../../platform/theme/common/colors/minimapColors.js';
17
+ import '../../../../platform/theme/common/colors/miscColors.js';
18
+ import '../../../../platform/theme/common/colors/quickpickColors.js';
19
+ import '../../../../platform/theme/common/colors/searchColors.js';
10
20
  import { themeColorFromId } from '../../../../platform/theme/common/themeService.js';
11
21
  import { ThemeIcon } from '../../../../base/common/themables.js';
12
22
  import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js';
@@ -1,4 +1,14 @@
1
- import { registerColor, foreground, editorInfoForeground, editorWarningForeground, errorForeground, badgeBackground, badgeForeground, listDeemphasizedForeground, toolbarHoverBackground, contrastBorder, inputBorder } from '../../../../platform/theme/common/colorRegistry.js';
1
+ import { registerColor } from '../../../../platform/theme/common/colorUtils.js';
2
+ import { foreground, errorForeground, contrastBorder } from '../../../../platform/theme/common/colors/baseColors.js';
3
+ import '../../../../platform/theme/common/colors/chartsColors.js';
4
+ import { editorInfoForeground, editorWarningForeground, toolbarHoverBackground } from '../../../../platform/theme/common/colors/editorColors.js';
5
+ import { inputBorder } from '../../../../platform/theme/common/colors/inputColors.js';
6
+ import { listDeemphasizedForeground } from '../../../../platform/theme/common/colors/listColors.js';
7
+ import '../../../../platform/theme/common/colors/menuColors.js';
8
+ import '../../../../platform/theme/common/colors/minimapColors.js';
9
+ import { badgeBackground, badgeForeground } from '../../../../platform/theme/common/colors/miscColors.js';
10
+ import '../../../../platform/theme/common/colors/quickpickColors.js';
11
+ import '../../../../platform/theme/common/colors/searchColors.js';
2
12
  import { registerThemingParticipant } from '../../../../platform/theme/common/themeService.js';
3
13
  import { ThemeIcon } from '../../../../base/common/themables.js';
4
14
  import { Color } from '../../../../base/common/color.js';
@@ -326,7 +336,7 @@ function registerColors() {
326
336
  }
327
337
  const debugIconDisconnectColor = theme.getColor(debugIconDisconnectForeground);
328
338
  if (debugIconDisconnectColor) {
329
- collector.addRule(`.monaco-workbench .part > .title > .title-actions .action-label${ThemeIcon.asCSSSelector(debugDisconnect)},.monaco-workbench .debug-view-content ${ThemeIcon.asCSSSelector(debugDisconnect)}, .monaco-workbench .debug-toolbar ${ThemeIcon.asCSSSelector(debugDisconnect)} { color: ${debugIconDisconnectColor}; }`);
339
+ collector.addRule(`.monaco-workbench .part > .title > .title-actions .action-label${ThemeIcon.asCSSSelector(debugDisconnect)},.monaco-workbench .debug-view-content ${ThemeIcon.asCSSSelector(debugDisconnect)}, .monaco-workbench .debug-toolbar ${ThemeIcon.asCSSSelector(debugDisconnect)}, .monaco-workbench .command-center-center ${ThemeIcon.asCSSSelector(debugDisconnect)} { color: ${debugIconDisconnectColor}; }`);
330
340
  }
331
341
  const debugIconRestartColor = theme.getColor(debugIconRestartForeground);
332
342
  if (debugIconRestartColor) {
@@ -267,6 +267,11 @@ const watchExpressionsAddFuncBreakpoint = registerIcon('watch-expressions-add-fu
267
267
  'watchExpressionsAddFuncBreakpoint',
268
268
  'Icon for the add function breakpoint action in the watch view.'
269
269
  )));
270
+ const watchExpressionsAddDataBreakpoint = registerIcon('watch-expressions-add-data-breakpoint', Codicon.variableGroup, ( localizeWithPath(
271
+ 'vs/workbench/contrib/debug/browser/debugIcons',
272
+ 'watchExpressionsAddDataBreakpoint',
273
+ 'Icon for the add data breakpoint action in the breakpoints view.'
274
+ )));
270
275
  const breakpointsRemoveAll = registerIcon('breakpoints-remove-all', Codicon.closeAll, ( localizeWithPath(
271
276
  'vs/workbench/contrib/debug/browser/debugIcons',
272
277
  'breakpointsRemoveAll',
@@ -292,4 +297,4 @@ const debugInspectMemory = registerIcon('debug-inspect-memory', Codicon.fileBina
292
297
  'debugInspectMemory',
293
298
  'Icon for the inspect memory action.'
294
299
  )));
295
- export { allBreakpoints, breakpoint, breakpointsActivate, breakpointsRemoveAll, breakpointsViewIcon, callStackViewIcon, callstackViewSession, conditionalBreakpoint, dataBreakpoint, debugBreakpointHint, debugBreakpointUnsupported, debugConfigure, debugConsoleClearAll, debugConsoleEvaluationInput, debugConsoleEvaluationPrompt, debugConsoleViewIcon, debugContinue, debugDisconnect, debugGripper, debugInspectMemory, debugPause, debugRemoveConfig, debugRestart, debugRestartFrame, debugReverseContinue, debugRun, debugStackframe, debugStackframeFocused, debugStart, debugStepBack, debugStepInto, debugStepOut, debugStepOver, debugStop, functionBreakpoint, loadedScriptsViewIcon, logBreakpoint, runViewIcon, variablesViewIcon, watchExpressionRemove, watchExpressionsAdd, watchExpressionsAddFuncBreakpoint, watchExpressionsRemoveAll, watchViewIcon };
300
+ export { allBreakpoints, breakpoint, breakpointsActivate, breakpointsRemoveAll, breakpointsViewIcon, callStackViewIcon, callstackViewSession, conditionalBreakpoint, dataBreakpoint, debugBreakpointHint, debugBreakpointUnsupported, debugConfigure, debugConsoleClearAll, debugConsoleEvaluationInput, debugConsoleEvaluationPrompt, debugConsoleViewIcon, debugContinue, debugDisconnect, debugGripper, debugInspectMemory, debugPause, debugRemoveConfig, debugRestart, debugRestartFrame, debugReverseContinue, debugRun, debugStackframe, debugStackframeFocused, debugStart, debugStepBack, debugStepInto, debugStepOut, debugStepOver, debugStop, functionBreakpoint, loadedScriptsViewIcon, logBreakpoint, runViewIcon, variablesViewIcon, watchExpressionRemove, watchExpressionsAdd, watchExpressionsAddDataBreakpoint, watchExpressionsAddFuncBreakpoint, watchExpressionsRemoveAll, watchViewIcon };
@@ -16,7 +16,7 @@ import { ITelemetryEndpoint } from '../../../../platform/telemetry/common/teleme
16
16
  import { IWorkspaceFolder } from '../../../../platform/workspace/common/workspace.js';
17
17
  import { IEditorPane } from '../../../common/editor.js';
18
18
  import { DebugCompoundRoot } from './debugCompoundRoot.js';
19
- import { IInstructionBreakpointOptions } from './debugModel.js';
19
+ import { IDataBreakpointOptions, IInstructionBreakpointOptions } from './debugModel.js';
20
20
  import { Source } from './debugSource.js';
21
21
  import { ITaskIdentifier } from '../../tasks/common/tasks.js';
22
22
  import { IEditorService } from '../../../services/editor/common/editorService.js';
@@ -249,6 +249,7 @@ interface IDebugSession extends ITreeElement {
249
249
  sendBreakpoints(modelUri: URI, bpts: IBreakpoint[], sourceModified: boolean): Promise<void>;
250
250
  sendFunctionBreakpoints(fbps: IFunctionBreakpoint[]): Promise<void>;
251
251
  dataBreakpointInfo(name: string, variablesReference?: number): Promise<IDataBreakpointInfoResponse | undefined>;
252
+ dataBytesBreakpointInfo(address: string, bytes: number): Promise<IDataBreakpointInfoResponse | undefined>;
252
253
  sendDataBreakpoints(dbps: IDataBreakpoint[]): Promise<void>;
253
254
  sendInstructionBreakpoints(dbps: IInstructionBreakpoint[]): Promise<void>;
254
255
  sendExceptionBreakpoints(exbpts: IExceptionBreakpoint[]): Promise<void>;
@@ -426,12 +427,29 @@ interface IExceptionBreakpoint extends IBaseBreakpoint {
426
427
  readonly label: string;
427
428
  readonly description: string | undefined;
428
429
  }
430
+ declare const enum DataBreakpointSetType {
431
+ Variable = 0,
432
+ Address = 1
433
+ }
434
+ /**
435
+ * Source for a data breakpoint. A data breakpoint on a variable always has a
436
+ * `dataId` because it cannot reference that variable globally, but addresses
437
+ * can request info repeated and use session-specific data.
438
+ */
439
+ type DataBreakpointSource = {
440
+ type: DataBreakpointSetType.Variable;
441
+ dataId: string;
442
+ } | {
443
+ type: DataBreakpointSetType.Address;
444
+ address: string;
445
+ bytes: number;
446
+ };
429
447
  interface IDataBreakpoint extends IBaseBreakpoint {
430
448
  readonly description: string;
431
- readonly dataId: string;
432
449
  readonly canPersist: boolean;
450
+ readonly src: DataBreakpointSource;
433
451
  readonly accessType: DebugProtocol.DataBreakpointAccessType;
434
- toDAP(): DebugProtocol.DataBreakpoint;
452
+ toDAP(session: IDebugSession): Promise<DebugProtocol.DataBreakpoint | undefined>;
435
453
  }
436
454
  interface IInstructionBreakpoint extends IBaseBreakpoint {
437
455
  readonly instructionReference: string;
@@ -858,7 +876,7 @@ interface IDebugService {
858
876
  /**
859
877
  * Adds a new data breakpoint.
860
878
  */
861
- addDataBreakpoint(label: string, dataId: string, canPersist: boolean, accessTypes: DebugProtocol.DataBreakpointAccessType[] | undefined, accessType: DebugProtocol.DataBreakpointAccessType, mode: string | undefined): Promise<void>;
879
+ addDataBreakpoint(opts: IDataBreakpointOptions): Promise<void>;
862
880
  /**
863
881
  * Updates an already existing data breakpoint.
864
882
  * Notifies debug adapter of breakpoint changes.
@@ -949,4 +967,4 @@ interface IDebugService {
949
967
  runTo(uri: URI, lineNumber: number, column?: number): Promise<void>;
950
968
  }
951
969
 
952
- export { type AdapterEndEvent, DebugConfigurationProviderTriggerKind, DebuggerString, type IAdapterDescriptor, type IAdapterManager, type IBaseBreakpoint, type IBreakpoint, type IBreakpointData, type IBreakpointUpdateData, type IBreakpointsChangeEvent, type ICompound, type IConfig, type IConfigPresentation, type IConfigurationManager, type IDataBreakpoint, type IDataBreakpointInfoResponse, type IDebugAdapter, type IDebugAdapterDescriptorFactory, type IDebugAdapterExecutable, type IDebugAdapterExecutableOptions, type IDebugAdapterFactory, type IDebugAdapterImpl, type IDebugAdapterInlineImpl, type IDebugAdapterNamedPipeServer, type IDebugAdapterServer, type IDebugConfigurationProvider, type IDebugModel, IDebugService, type IDebugSession, type IDebugSessionOptions, type IDebugSessionReplMode, type IDebugger, type IDebuggerMetadata, type IEnablement, type IErrorMemoryRange, type IEvaluate, type IExceptionBreakpoint, type IExceptionInfo, type IExpression, type IExpressionContainer, type IExpressionValue, type IFunctionBreakpoint, type IInstructionBreakpoint, type ILaunch, type IMemoryInvalidationEvent, type IMemoryRange, type IMemoryRegion, type INewReplElementData, type IRawModelUpdate, type IRawStoppedDetails, type IReplElement, type IReplElementSource, type IScope, type IStackFrame, type IThread, type ITreeElement, type IUnreadableMemoryRange, type IValidMemoryRange, type IViewModel, type LoadedSourceEvent, type MemoryRange, MemoryRangeType, State };
970
+ export { type AdapterEndEvent, DataBreakpointSetType, type DataBreakpointSource, DebugConfigurationProviderTriggerKind, DebuggerString, type IAdapterDescriptor, type IAdapterManager, type IBaseBreakpoint, type IBreakpoint, type IBreakpointData, type IBreakpointUpdateData, type IBreakpointsChangeEvent, type ICompound, type IConfig, type IConfigPresentation, type IConfigurationManager, type IDataBreakpoint, type IDataBreakpointInfoResponse, type IDebugAdapter, type IDebugAdapterDescriptorFactory, type IDebugAdapterExecutable, type IDebugAdapterExecutableOptions, type IDebugAdapterFactory, type IDebugAdapterImpl, type IDebugAdapterInlineImpl, type IDebugAdapterNamedPipeServer, type IDebugAdapterServer, type IDebugConfigurationProvider, type IDebugModel, IDebugService, type IDebugSession, type IDebugSessionOptions, type IDebugSessionReplMode, type IDebugger, type IDebuggerMetadata, type IEnablement, type IErrorMemoryRange, type IEvaluate, type IExceptionBreakpoint, type IExceptionInfo, type IExpression, type IExpressionContainer, type IExpressionValue, type IFunctionBreakpoint, type IInstructionBreakpoint, type ILaunch, type IMemoryInvalidationEvent, type IMemoryRange, type IMemoryRegion, type INewReplElementData, type IRawModelUpdate, type IRawStoppedDetails, type IReplElement, type IReplElementSource, type IScope, type IStackFrame, type IThread, type ITreeElement, type IUnreadableMemoryRange, type IValidMemoryRange, type IViewModel, type LoadedSourceEvent, type MemoryRange, MemoryRangeType, State };
@@ -174,6 +174,15 @@ const CONTEXT_BREAKPOINT_ITEM_TYPE = ( new RawContextKey(
174
174
  "Represents the item type of the focused element in the BREAKPOINTS view. For example: 'breakpoint', 'exceptionBreakppint', 'functionBreakpoint', 'dataBreakpoint'"
175
175
  )) }
176
176
  ));
177
+ const CONTEXT_BREAKPOINT_ITEM_IS_DATA_BYTES = ( new RawContextKey(
178
+ 'breakpointItemBytes',
179
+ undefined,
180
+ { type: 'boolean', description: ( localizeWithPath(
181
+ 'vs/workbench/contrib/debug/common/debug',
182
+ 'breakpointItemIsDataBytes',
183
+ "Whether the breakpoint item is a data breakpoint on a byte range."
184
+ )) }
185
+ ));
177
186
  const CONTEXT_BREAKPOINT_HAS_MODES = ( new RawContextKey(
178
187
  'breakpointHasModes',
179
188
  false,
@@ -310,6 +319,15 @@ const CONTEXT_SET_VARIABLE_SUPPORTED = ( new RawContextKey(
310
319
  "True when the focused session supports 'setVariable' request."
311
320
  )) }
312
321
  ));
322
+ const CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED = ( new RawContextKey(
323
+ 'debugSetDataBreakpointAddressSupported',
324
+ false,
325
+ { type: 'boolean', description: ( localizeWithPath(
326
+ 'vs/workbench/contrib/debug/common/debug',
327
+ 'debugSetDataBreakpointAddressSupported',
328
+ "True when the focused session supports 'getBreakpointInfo' request on an address."
329
+ )) }
330
+ ));
313
331
  const CONTEXT_SET_EXPRESSION_SUPPORTED = ( new RawContextKey(
314
332
  'debugSetExpressionSupported',
315
333
  false,
@@ -392,6 +410,11 @@ const CONTEXT_VARIABLE_TYPE = ( new RawContextKey('variableType', false, { type:
392
410
  'variableType',
393
411
  "Type of the variable, present for debug visualization clauses."
394
412
  )) }));
413
+ const CONTEXT_VARIABLE_INTERFACES = ( new RawContextKey('variableInterfaces', false, { type: 'array', description: ( localizeWithPath(
414
+ 'vs/workbench/contrib/debug/common/debug',
415
+ 'variableInterfaces',
416
+ "Any interfaces or contracts that the variable satisfies, present for debug visualization clauses."
417
+ )) }));
395
418
  const CONTEXT_VARIABLE_NAME = ( new RawContextKey('variableName', false, { type: 'string', description: ( localizeWithPath(
396
419
  'vs/workbench/contrib/debug/common/debug',
397
420
  'variableName',
@@ -516,4 +539,4 @@ var IDebugVisualization;
516
539
  });
517
540
  IDebugVisualization.serialize = (visualizer) => visualizer;
518
541
  })(IDebugVisualization || (IDebugVisualization = {})));
519
- export { BREAKPOINTS_VIEW_ID, BREAKPOINT_EDITOR_CONTRIBUTION_ID, CALLSTACK_VIEW_ID, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_BREAKPOINTS_FOCUSED, CONTEXT_BREAKPOINT_HAS_MODES, CONTEXT_BREAKPOINT_INPUT_FOCUSED, CONTEXT_BREAKPOINT_ITEM_TYPE, CONTEXT_BREAKPOINT_SUPPORTS_CONDITION, CONTEXT_BREAKPOINT_WIDGET_VISIBLE, CONTEXT_BREAK_WHEN_VALUE_CHANGES_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_ACCESSED_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_READ_SUPPORTED, CONTEXT_CALLSTACK_ITEM_STOPPED, CONTEXT_CALLSTACK_ITEM_TYPE, CONTEXT_CALLSTACK_SESSION_HAS_ONE_THREAD, CONTEXT_CALLSTACK_SESSION_IS_ATTACH, CONTEXT_CAN_VIEW_MEMORY, CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_DEBUG_CONFIGURATION_TYPE, CONTEXT_DEBUG_EXTENSION_AVAILABLE, CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT, CONTEXT_DEBUG_STATE, CONTEXT_DEBUG_TYPE, CONTEXT_DEBUG_UX, CONTEXT_DEBUG_UX_KEY, CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED, CONTEXT_DISASSEMBLY_VIEW_FOCUS, CONTEXT_EXCEPTION_WIDGET_VISIBLE, CONTEXT_EXPRESSION_SELECTED, CONTEXT_FOCUSED_SESSION_IS_ATTACH, CONTEXT_FOCUSED_SESSION_IS_NO_DEBUG, CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE, CONTEXT_HAS_DEBUGGED, CONTEXT_IN_BREAKPOINT_WIDGET, CONTEXT_IN_DEBUG_MODE, CONTEXT_IN_DEBUG_REPL, CONTEXT_JUMP_TO_CURSOR_SUPPORTED, CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST, CONTEXT_LOADED_SCRIPTS_ITEM_TYPE, CONTEXT_LOADED_SCRIPTS_SUPPORTED, CONTEXT_MULTI_SESSION_DEBUG, CONTEXT_MULTI_SESSION_REPL, CONTEXT_RESTART_FRAME_SUPPORTED, CONTEXT_SET_EXPRESSION_SUPPORTED, CONTEXT_SET_VARIABLE_SUPPORTED, CONTEXT_STACK_FRAME_SUPPORTS_RESTART, CONTEXT_STEP_BACK_SUPPORTED, CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_SUSPEND_DEBUGGEE_SUPPORTED, CONTEXT_TERMINATE_DEBUGGEE_SUPPORTED, CONTEXT_VARIABLES_FOCUSED, CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT, CONTEXT_VARIABLE_EXTENSIONID, CONTEXT_VARIABLE_IS_READONLY, CONTEXT_VARIABLE_LANGUAGE, CONTEXT_VARIABLE_NAME, CONTEXT_VARIABLE_TYPE, CONTEXT_VARIABLE_VALUE, CONTEXT_WATCH_EXPRESSIONS_EXIST, CONTEXT_WATCH_EXPRESSIONS_FOCUSED, CONTEXT_WATCH_ITEM_TYPE, DEBUG_MEMORY_SCHEME, DEBUG_PANEL_ID, DEBUG_SCHEME, DISASSEMBLY_VIEW_ID, DebugConfigurationProviderTriggerKind, DebuggerString, EDITOR_CONTRIBUTION_ID, IDebugService, IDebugVisualization, INTERNAL_CONSOLE_OPTIONS_SCHEMA, LOADED_SCRIPTS_VIEW_ID, REPL_VIEW_ID, VARIABLES_VIEW_ID, VIEWLET_ID, WATCH_VIEW_ID, debuggerDisabledMessage, getStateLabel };
542
+ export { BREAKPOINTS_VIEW_ID, BREAKPOINT_EDITOR_CONTRIBUTION_ID, CALLSTACK_VIEW_ID, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_BREAKPOINTS_FOCUSED, CONTEXT_BREAKPOINT_HAS_MODES, CONTEXT_BREAKPOINT_INPUT_FOCUSED, CONTEXT_BREAKPOINT_ITEM_IS_DATA_BYTES, CONTEXT_BREAKPOINT_ITEM_TYPE, CONTEXT_BREAKPOINT_SUPPORTS_CONDITION, CONTEXT_BREAKPOINT_WIDGET_VISIBLE, CONTEXT_BREAK_WHEN_VALUE_CHANGES_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_ACCESSED_SUPPORTED, CONTEXT_BREAK_WHEN_VALUE_IS_READ_SUPPORTED, CONTEXT_CALLSTACK_ITEM_STOPPED, CONTEXT_CALLSTACK_ITEM_TYPE, CONTEXT_CALLSTACK_SESSION_HAS_ONE_THREAD, CONTEXT_CALLSTACK_SESSION_IS_ATTACH, CONTEXT_CAN_VIEW_MEMORY, CONTEXT_DEBUGGERS_AVAILABLE, CONTEXT_DEBUG_CONFIGURATION_TYPE, CONTEXT_DEBUG_EXTENSION_AVAILABLE, CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT, CONTEXT_DEBUG_STATE, CONTEXT_DEBUG_TYPE, CONTEXT_DEBUG_UX, CONTEXT_DEBUG_UX_KEY, CONTEXT_DISASSEMBLE_REQUEST_SUPPORTED, CONTEXT_DISASSEMBLY_VIEW_FOCUS, CONTEXT_EXCEPTION_WIDGET_VISIBLE, CONTEXT_EXPRESSION_SELECTED, CONTEXT_FOCUSED_SESSION_IS_ATTACH, CONTEXT_FOCUSED_SESSION_IS_NO_DEBUG, CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE, CONTEXT_HAS_DEBUGGED, CONTEXT_IN_BREAKPOINT_WIDGET, CONTEXT_IN_DEBUG_MODE, CONTEXT_IN_DEBUG_REPL, CONTEXT_JUMP_TO_CURSOR_SUPPORTED, CONTEXT_LANGUAGE_SUPPORTS_DISASSEMBLE_REQUEST, CONTEXT_LOADED_SCRIPTS_ITEM_TYPE, CONTEXT_LOADED_SCRIPTS_SUPPORTED, CONTEXT_MULTI_SESSION_DEBUG, CONTEXT_MULTI_SESSION_REPL, CONTEXT_RESTART_FRAME_SUPPORTED, CONTEXT_SET_DATA_BREAKPOINT_BYTES_SUPPORTED, CONTEXT_SET_EXPRESSION_SUPPORTED, CONTEXT_SET_VARIABLE_SUPPORTED, CONTEXT_STACK_FRAME_SUPPORTS_RESTART, CONTEXT_STEP_BACK_SUPPORTED, CONTEXT_STEP_INTO_TARGETS_SUPPORTED, CONTEXT_SUSPEND_DEBUGGEE_SUPPORTED, CONTEXT_TERMINATE_DEBUGGEE_SUPPORTED, CONTEXT_VARIABLES_FOCUSED, CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT, CONTEXT_VARIABLE_EXTENSIONID, CONTEXT_VARIABLE_INTERFACES, CONTEXT_VARIABLE_IS_READONLY, CONTEXT_VARIABLE_LANGUAGE, CONTEXT_VARIABLE_NAME, CONTEXT_VARIABLE_TYPE, CONTEXT_VARIABLE_VALUE, CONTEXT_WATCH_EXPRESSIONS_EXIST, CONTEXT_WATCH_EXPRESSIONS_FOCUSED, CONTEXT_WATCH_ITEM_TYPE, DEBUG_MEMORY_SCHEME, DEBUG_PANEL_ID, DEBUG_SCHEME, DISASSEMBLY_VIEW_ID, DebugConfigurationProviderTriggerKind, DebuggerString, EDITOR_CONTRIBUTION_ID, IDebugService, IDebugVisualization, INTERNAL_CONSOLE_OPTIONS_SCHEMA, LOADED_SCRIPTS_VIEW_ID, REPL_VIEW_ID, VARIABLES_VIEW_ID, VIEWLET_ID, WATCH_VIEW_ID, debuggerDisabledMessage, getStateLabel };
@@ -1,4 +1,7 @@
1
+ /// <reference path="./../../../../../../../debugProtocol.d.ts" />
2
+
1
3
  import '../../../../editor/editor.api.js';
4
+ import { DataBreakpointSource, IDebugSession } from './debug.js';
2
5
 
3
6
  interface IBaseBreakpointOptions {
4
7
  enabled?: boolean;
@@ -8,6 +11,17 @@ interface IBaseBreakpointOptions {
8
11
  mode?: string;
9
12
  modeLabel?: string;
10
13
  }
14
+ interface IDataBreakpointOptions extends IBaseBreakpointOptions {
15
+ description: string;
16
+ src: DataBreakpointSource;
17
+ canPersist: boolean;
18
+ initialSessionData?: {
19
+ session: IDebugSession;
20
+ dataId: string;
21
+ };
22
+ accessTypes: DebugProtocol.DataBreakpointAccessType[] | undefined;
23
+ accessType: DebugProtocol.DataBreakpointAccessType;
24
+ }
11
25
  interface IInstructionBreakpointOptions extends IBaseBreakpointOptions {
12
26
  instructionReference: string;
13
27
  offset: number;
@@ -15,4 +29,4 @@ interface IInstructionBreakpointOptions extends IBaseBreakpointOptions {
15
29
  address: bigint;
16
30
  }
17
31
 
18
- export type { IBaseBreakpointOptions, IInstructionBreakpointOptions };
32
+ export type { IBaseBreakpointOptions, IDataBreakpointOptions, IInstructionBreakpointOptions };