@codingame/monaco-vscode-api 2.0.3-improve-modularity.1 → 2.1.0-update-vscode-1.86.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (512) hide show
  1. package/api.js +15 -12
  2. package/extensions.d.ts +4 -7
  3. package/external/@xterm/xterm/typings/xterm.d.ts +22 -0
  4. package/missing-services.js +62 -6
  5. package/package.json +8 -8
  6. package/service-override/tools/editor.js +14 -0
  7. package/services.d.ts +3 -2
  8. package/services.js +6 -4
  9. package/vscode/src/vs/base/browser/browser.js +45 -30
  10. package/vscode/src/vs/base/browser/canIUse.js +1 -1
  11. package/vscode/src/vs/base/browser/defaultWorkerFactory.js +12 -5
  12. package/vscode/src/vs/base/browser/dom.js +104 -14
  13. package/vscode/src/vs/base/browser/indexedDB.js +3 -3
  14. package/vscode/src/vs/base/browser/markdownRenderer.js +29 -1
  15. package/vscode/src/vs/base/browser/mouseEvent.js +17 -3
  16. package/vscode/src/vs/base/browser/ui/actionbar/actionbar.js +3 -3
  17. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.css.js +4 -0
  18. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.d.ts +1 -1
  19. package/vscode/src/vs/base/browser/ui/breadcrumbs/breadcrumbsWidget.js +287 -0
  20. package/vscode/src/vs/base/browser/ui/button/button.js +9 -0
  21. package/vscode/src/vs/base/browser/ui/codicons/codicon/codicon.css.js +1 -1
  22. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +1 -1
  23. package/vscode/src/vs/base/browser/ui/iconLabel/iconLabelHover.js +16 -5
  24. package/vscode/src/vs/base/browser/ui/list/listView.js +31 -11
  25. package/vscode/src/vs/base/browser/ui/list/listWidget.js +35 -21
  26. package/vscode/src/vs/base/browser/ui/menu/menu.js +10 -1
  27. package/vscode/src/vs/base/browser/ui/menu/menubar.js +8 -4
  28. package/vscode/src/vs/base/browser/ui/scrollbar/scrollableElement.js +6 -5
  29. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +469 -95
  30. package/vscode/src/vs/base/browser/ui/tree/asyncDataTree.js +22 -7
  31. package/vscode/src/vs/base/browser/ui/tree/indexTreeModel.js +0 -5
  32. package/vscode/src/vs/base/browser/ui/tree/media/tree.css.js +1 -1
  33. package/vscode/src/vs/base/browser/ui/tree/objectTree.js +70 -4
  34. package/vscode/src/vs/base/common/assert.js +6 -1
  35. package/vscode/src/vs/base/common/async.js +31 -6
  36. package/vscode/src/vs/base/common/codicons.js +5 -0
  37. package/vscode/src/vs/base/common/event.d.ts +0 -5
  38. package/vscode/src/vs/base/common/event.js +0 -15
  39. package/vscode/src/vs/base/common/filters.d.ts +1 -18
  40. package/vscode/src/vs/base/common/htmlContent.js +12 -6
  41. package/vscode/src/vs/base/common/iterator.js +8 -0
  42. package/vscode/src/vs/base/common/labels.js +2 -1
  43. package/vscode/src/vs/base/common/map.js +20 -1
  44. package/vscode/src/vs/base/common/observableInternal/base.d.ts +4 -0
  45. package/vscode/src/vs/base/common/observableInternal/base.js +16 -8
  46. package/vscode/src/vs/base/common/observableInternal/derived.js +4 -6
  47. package/vscode/src/vs/base/common/observableInternal/utils.js +60 -5
  48. package/vscode/src/vs/base/common/platform.js +20 -20
  49. package/vscode/src/vs/base/common/prefixTree.js +4 -3
  50. package/vscode/src/vs/base/common/product.d.ts +5 -2
  51. package/vscode/src/vs/base/common/strings.js +23 -7
  52. package/vscode/src/vs/base/common/themables.js +4 -1
  53. package/vscode/src/vs/base/common/uri.js +11 -1
  54. package/vscode/src/vs/base/common/worker/simpleWorker.js +1 -1
  55. package/vscode/src/vs/editor/browser/config/migrateOptions.js +5 -0
  56. package/vscode/src/vs/editor/browser/controller/mouseHandler.js +1 -0
  57. package/vscode/src/vs/editor/browser/controller/mouseTarget.js +14 -8
  58. package/vscode/src/vs/editor/browser/controller/pointerHandler.js +18 -11
  59. package/vscode/src/vs/editor/browser/controller/textAreaHandler.js +1 -1
  60. package/vscode/src/vs/editor/browser/controller/textAreaInput.js +3 -3
  61. package/vscode/src/vs/{workbench/services/hover/browser → editor/browser/services}/hoverService.d.ts +7 -6
  62. package/vscode/src/vs/editor/browser/services/hoverService.js +195 -0
  63. package/vscode/src/vs/editor/browser/view.js +29 -39
  64. package/vscode/src/vs/editor/browser/viewParts/currentLineHighlight/currentLineHighlight.js +41 -19
  65. package/vscode/src/vs/editor/browser/viewParts/editorScrollbar/editorScrollbar.js +1 -1
  66. package/vscode/src/vs/editor/browser/viewParts/glyphMargin/glyphMargin.js +30 -23
  67. package/vscode/src/vs/editor/browser/viewParts/lineNumbers/lineNumbers.js +23 -8
  68. package/vscode/src/vs/editor/browser/viewParts/lines/viewLines.js +1 -1
  69. package/vscode/src/vs/editor/browser/viewParts/linesDecorations/linesDecorations.js +8 -1
  70. package/vscode/src/vs/editor/browser/viewParts/marginDecorations/marginDecorations.js +7 -1
  71. package/vscode/src/vs/editor/browser/viewParts/minimap/minimap.js +1 -1
  72. package/vscode/src/vs/editor/browser/viewParts/overlayWidgets/overlayWidgets.js +30 -3
  73. package/vscode/src/vs/editor/browser/widget/codeEditorWidget.js +39 -15
  74. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.css.js → components/accessibleDiffViewer.css.js} +1 -1
  75. package/vscode/src/vs/editor/browser/widget/diffEditor/{accessibleDiffViewer.js → components/accessibleDiffViewer.js} +43 -43
  76. package/vscode/src/vs/editor/browser/widget/diffEditor/components/diffEditorDecorations.js +89 -0
  77. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorEditors.js → components/diffEditorEditors.js} +14 -14
  78. package/vscode/src/vs/editor/browser/widget/diffEditor/{diffEditorSash.js → components/diffEditorSash.js} +5 -5
  79. package/vscode/src/vs/editor/browser/widget/diffEditor/{lineAlignment.js → components/diffEditorViewZones/diffEditorViewZones.js} +38 -28
  80. package/vscode/src/vs/editor/browser/widget/diffEditor/{inlineDiffDeletedCodeMargin.js → components/diffEditorViewZones/inlineDiffDeletedCodeMargin.js} +14 -14
  81. package/vscode/src/vs/editor/browser/widget/diffEditor/{renderLines.js → components/diffEditorViewZones/renderLines.js} +7 -7
  82. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +29 -38
  83. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorViewModel.js +150 -38
  84. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorWidget.js +17 -16
  85. package/vscode/src/vs/editor/browser/widget/diffEditor/diffProviderFactoryService.js +104 -6
  86. package/vscode/src/vs/editor/browser/widget/diffEditor/{hideUnchangedRegionsFeature.js → features/hideUnchangedRegionsFeature.js} +51 -78
  87. package/vscode/src/vs/editor/browser/widget/diffEditor/{movedBlocksLines.js → features/movedBlocksLinesFeature.js} +23 -23
  88. package/vscode/src/vs/editor/browser/widget/diffEditor/{overviewRulerPart.js → features/overviewRulerFeature.js} +28 -28
  89. package/vscode/src/vs/editor/browser/widget/diffEditor/features/revertButtonsFeature.js +145 -0
  90. package/vscode/src/vs/editor/browser/widget/diffEditor/{decorations.js → registrations.contribution.js} +18 -2
  91. package/vscode/src/vs/editor/browser/widget/diffEditor/utils.js +10 -2
  92. package/vscode/src/vs/editor/browser/widget/hoverWidget/hover.css.js +4 -0
  93. package/vscode/src/vs/editor/browser/widget/hoverWidget/hoverWidget.js +527 -0
  94. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/markdownRenderer.js +11 -11
  95. package/vscode/src/vs/editor/{contrib → browser/widget}/markdownRenderer/browser/renderedMarkdown.css.js +1 -1
  96. package/vscode/src/vs/editor/common/config/editorOptions.d.ts +11 -10
  97. package/vscode/src/vs/editor/common/config/editorOptions.js +46 -42
  98. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +3 -3
  99. package/vscode/src/vs/editor/common/core/offsetRange.d.ts +2 -0
  100. package/vscode/src/vs/editor/common/core/offsetRange.js +8 -0
  101. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/algorithms/diffAlgorithm.js +9 -0
  102. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/heuristicSequenceOptimizations.js +50 -47
  103. package/vscode/src/vs/editor/common/diff/defaultLinesDiffComputer/linesSliceCharSequence.js +4 -1
  104. package/vscode/src/vs/editor/common/diff/rangeMapping.d.ts +2 -1
  105. package/vscode/src/vs/editor/common/diff/rangeMapping.js +13 -2
  106. package/vscode/src/vs/editor/common/languages.d.ts +10 -2
  107. package/vscode/src/vs/editor/common/model/textModel.js +19 -13
  108. package/vscode/src/vs/editor/common/model/tokenizationTextModelPart.js +1 -1
  109. package/vscode/src/vs/editor/common/model.d.ts +19 -1
  110. package/vscode/src/vs/editor/common/model.js +2 -1
  111. package/vscode/src/vs/editor/common/services/editorSimpleWorker.js +2 -1
  112. package/vscode/src/vs/editor/common/services/getIconClasses.js +4 -1
  113. package/vscode/src/vs/editor/common/services/semanticTokensProviderStyling.js +3 -3
  114. package/vscode/src/vs/editor/common/standalone/standaloneEnums.js +9 -8
  115. package/vscode/src/vs/editor/common/standaloneStrings.js +18 -18
  116. package/vscode/src/vs/editor/common/viewEvents.js +2 -0
  117. package/vscode/src/vs/editor/common/viewModel/glyphLanesModel.js +55 -0
  118. package/vscode/src/vs/editor/common/viewModel/viewModelImpl.js +4 -1
  119. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +5 -1
  120. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -0
  121. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +46 -20
  122. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +1 -1
  123. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionModel.js +38 -11
  124. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +56 -101
  125. package/vscode/src/vs/editor/contrib/codelens/browser/codelensWidget.js +3 -2
  126. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorContributions.js +2 -2
  127. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorHoverParticipant.js +10 -29
  128. package/vscode/src/vs/editor/contrib/colorPicker/browser/colorPickerWidget.js +4 -4
  129. package/vscode/src/vs/editor/contrib/diffEditorBreadcrumbs/browser/contribution.js +51 -0
  130. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +19 -1
  131. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +38 -10
  132. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +29 -1
  133. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/edit.js +10 -3
  134. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +3 -17
  135. package/vscode/src/vs/editor/contrib/find/browser/findController.js +3 -35
  136. package/vscode/src/vs/editor/contrib/folding/browser/foldingDecorations.js +26 -6
  137. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +6 -6
  138. package/vscode/src/vs/editor/contrib/format/browser/format.js +9 -9
  139. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +5 -5
  140. package/vscode/src/vs/editor/contrib/gotoError/browser/media/gotoErrorWidget.css.js +1 -1
  141. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +2 -2
  142. package/vscode/src/vs/editor/contrib/hover/browser/contentHover.js +85 -76
  143. package/vscode/src/vs/editor/contrib/hover/browser/hover.js +120 -90
  144. package/vscode/src/vs/editor/contrib/hover/browser/marginHover.js +18 -6
  145. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +1 -1
  146. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +2 -2
  147. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHints.js +4 -2
  148. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsController.js +56 -38
  149. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hoverParticipant.js +1 -1
  150. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsController.js +12 -0
  151. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsHintsWidget.js +4 -0
  152. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/inlineCompletionsModel.js +2 -2
  153. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +50 -53
  154. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +5 -2
  155. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +1 -1
  156. package/vscode/src/vs/editor/contrib/semanticTokens/browser/documentSemanticTokens.js +5 -1
  157. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScroll.css.js +1 -1
  158. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +4 -4
  159. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollController.js +8 -5
  160. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollWidget.js +58 -46
  161. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +34 -7
  162. package/vscode/src/vs/editor/contrib/suggest/browser/suggestInlineCompletions.js +30 -38
  163. package/vscode/src/vs/editor/contrib/suggest/browser/suggestModel.js +2 -2
  164. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +11 -3
  165. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +18 -7
  166. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +8 -10
  167. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/bannerController.js +1 -1
  168. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +7 -6
  169. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -0
  170. package/vscode/src/vs/editor/editor.api.d.ts +82 -11
  171. package/vscode/src/vs/editor/standalone/browser/quickInput/standaloneQuickInputService.js +8 -3
  172. package/vscode/src/vs/editor/standalone/browser/standaloneLayoutService.js +4 -3
  173. package/vscode/src/vs/editor/standalone/browser/standaloneServices.js +22 -11
  174. package/vscode/src/vs/editor/standalone/browser/standaloneThemeService.js +1 -1
  175. package/vscode/src/vs/nls.d.ts +6 -0
  176. package/vscode/src/vs/platform/accessibility/browser/accessibilityService.js +4 -1
  177. package/vscode/src/vs/platform/accessibility/common/accessibility.d.ts +2 -16
  178. package/vscode/src/vs/platform/accessibility/common/accessibility.js +1 -2
  179. package/vscode/src/vs/platform/action/common/actionCommonCategories.d.ts +7 -20
  180. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +8 -8
  181. package/vscode/src/vs/platform/actionWidget/browser/actionList.js +0 -1
  182. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.css.js +1 -1
  183. package/vscode/src/vs/platform/actions/browser/buttonbar.js +2 -0
  184. package/vscode/src/vs/platform/actions/browser/dropdownWithPrimaryActionViewItem.js +5 -0
  185. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.css.js +1 -1
  186. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +2 -2
  187. package/vscode/src/vs/platform/actions/common/actions.d.ts +9 -1
  188. package/vscode/src/vs/platform/actions/common/actions.js +12 -1
  189. package/vscode/src/vs/platform/audioCues/browser/audioCueService.d.ts +11 -1
  190. package/vscode/src/vs/platform/audioCues/browser/audioCueService.js +174 -28
  191. package/vscode/src/vs/platform/clipboard/browser/clipboardService.js +38 -5
  192. package/vscode/src/vs/platform/configuration/common/configuration.d.ts +0 -1
  193. package/vscode/src/vs/platform/environment/common/environmentService.js +1 -1
  194. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.d.ts +5 -1
  195. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +24 -5
  196. package/vscode/src/vs/platform/extensions/common/extensions.d.ts +6 -1
  197. package/vscode/src/vs/{workbench/services → platform}/hover/browser/hover.d.ts +6 -8
  198. package/vscode/src/vs/platform/hover/browser/hover.js +3 -0
  199. package/vscode/src/vs/platform/instantiation/common/instantiationService.js +14 -4
  200. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +11 -4
  201. package/vscode/src/vs/platform/keybinding/common/keybinding.d.ts +7 -0
  202. package/vscode/src/vs/platform/layout/browser/layoutService.d.ts +6 -0
  203. package/vscode/src/vs/platform/list/browser/listService.js +7 -5
  204. package/vscode/src/vs/platform/log/common/bufferLog.js +1 -0
  205. package/vscode/src/vs/platform/log/common/log.d.ts +0 -1
  206. package/vscode/src/vs/platform/log/common/log.js +1 -2
  207. package/vscode/src/vs/platform/notification/common/notification.d.ts +36 -19
  208. package/vscode/src/vs/platform/notification/common/notification.js +9 -3
  209. package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +4 -1
  210. package/vscode/src/vs/platform/quickinput/browser/quickInput.js +50 -48
  211. package/vscode/src/vs/platform/quickinput/browser/quickInputController.js +3 -5
  212. package/vscode/src/vs/platform/quickinput/browser/quickInputList.js +49 -66
  213. package/vscode/src/vs/platform/quickinput/browser/quickInputService.js +11 -3
  214. package/vscode/src/vs/platform/quickinput/browser/quickInputUtils.js +16 -2
  215. package/vscode/src/vs/platform/quickinput/common/quickInput.d.ts +230 -26
  216. package/vscode/src/vs/platform/remote/common/remoteAuthorityResolver.d.ts +1 -0
  217. package/vscode/src/vs/platform/telemetry/common/telemetryUtils.js +1 -0
  218. package/vscode/src/vs/platform/theme/browser/defaultStyles.js +5 -3
  219. package/vscode/src/vs/platform/theme/common/colorRegistry.js +28 -9
  220. package/vscode/src/vs/platform/tunnel/common/tunnel.d.ts +2 -0
  221. package/vscode/src/vs/platform/window/common/window.js +14 -8
  222. package/vscode/src/vs/workbench/api/common/extHost.api.impl.js +97 -78
  223. package/vscode/src/vs/workbench/api/common/extHost.protocol.js +1 -1
  224. package/vscode/src/vs/workbench/api/common/extHostAuthentication.js +1 -22
  225. package/vscode/src/vs/workbench/api/common/extHostChat.js +0 -6
  226. package/vscode/src/vs/workbench/api/common/extHostChatAgents2.js +31 -36
  227. package/vscode/src/vs/workbench/api/common/extHostChatVariables.js +1 -1
  228. package/vscode/src/vs/workbench/api/common/extHostComments.js +6 -1
  229. package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +1 -0
  230. package/vscode/src/vs/workbench/api/common/extHostDebugService.js +130 -6
  231. package/vscode/src/vs/workbench/api/common/extHostDocumentContentProviders.js +28 -15
  232. package/vscode/src/vs/workbench/api/common/extHostDocuments.js +4 -5
  233. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +5 -1
  234. package/vscode/src/vs/workbench/api/common/extHostFileSystem.js +1 -2
  235. package/vscode/src/vs/workbench/api/common/extHostFileSystemConsumer.js +2 -2
  236. package/vscode/src/vs/workbench/api/common/extHostInlineChat.js +35 -33
  237. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +40 -13
  238. package/vscode/src/vs/workbench/api/common/extHostMessageService.js +10 -1
  239. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +11 -7
  240. package/vscode/src/vs/workbench/api/common/extHostNotebookEditors.js +2 -3
  241. package/vscode/src/vs/workbench/api/common/extHostNotebookKernels.js +29 -4
  242. package/vscode/src/vs/workbench/api/common/extHostProfileContentHandler.js +1 -1
  243. package/vscode/src/vs/workbench/api/common/extHostProgress.js +1 -7
  244. package/vscode/src/vs/workbench/api/common/extHostSCM.js +49 -93
  245. package/vscode/src/vs/workbench/api/common/extHostSpeech.js +21 -0
  246. package/vscode/src/vs/workbench/api/common/extHostTask.js +18 -22
  247. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -0
  248. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +3 -3
  249. package/vscode/src/vs/workbench/api/common/extHostTesting.js +55 -36
  250. package/vscode/src/vs/workbench/api/common/extHostTextEditor.js +5 -2
  251. package/vscode/src/vs/workbench/api/common/extHostTextEditors.js +6 -7
  252. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +6 -3
  253. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +4 -2
  254. package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +74 -12
  255. package/vscode/src/vs/workbench/api/common/extHostTypes.js +27 -8
  256. package/vscode/src/vs/workbench/api/worker/extHostConsoleForwarder.js +1 -1
  257. package/vscode/src/vs/workbench/browser/actions/layoutActions.js +172 -103
  258. package/vscode/src/vs/workbench/browser/actions/windowActions.js +13 -17
  259. package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +34 -34
  260. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  261. package/vscode/src/vs/workbench/browser/dnd.js +2 -2
  262. package/vscode/src/vs/workbench/browser/labels.js +34 -4
  263. package/vscode/src/vs/workbench/browser/part.js +2 -2
  264. package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +4 -4
  265. package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +1 -1
  266. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsControl.js +801 -0
  267. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsModel.js +140 -0
  268. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbsPicker.js +410 -0
  269. package/vscode/src/vs/workbench/browser/parts/editor/editor.js +1 -2
  270. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +304 -303
  271. package/vscode/src/vs/workbench/browser/parts/editor/editorAutoSave.js +101 -47
  272. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +114 -47
  273. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupView.js +1313 -0
  274. package/vscode/src/vs/workbench/browser/parts/editor/editorGroupWatermark.js +190 -0
  275. package/vscode/src/vs/workbench/browser/parts/editor/editorPanes.js +344 -0
  276. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +1 -1
  277. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +10 -10
  278. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +27 -42
  279. package/vscode/src/vs/workbench/browser/parts/editor/editorTitleControl.js +152 -0
  280. package/vscode/src/vs/workbench/browser/parts/editor/editorsObserver.js +8 -8
  281. package/vscode/src/vs/workbench/browser/parts/editor/media/breadcrumbscontrol.css.js +4 -0
  282. package/vscode/src/vs/workbench/browser/parts/editor/media/editorgroupview.css.js +4 -0
  283. package/vscode/src/vs/workbench/browser/parts/editor/media/editortitlecontrol.css.js +4 -0
  284. package/vscode/src/vs/workbench/browser/parts/editor/media/multieditortabscontrol.css.js +4 -0
  285. package/vscode/src/vs/workbench/browser/parts/editor/media/singleeditortabscontrol.css.js +4 -0
  286. package/vscode/src/vs/workbench/browser/parts/editor/multiEditorTabsControl.js +1626 -0
  287. package/vscode/src/vs/workbench/browser/parts/editor/multiRowEditorTabsControl.js +150 -0
  288. package/vscode/src/vs/workbench/browser/parts/editor/noEditorTabsControl.js +52 -0
  289. package/vscode/src/vs/workbench/browser/parts/editor/singleEditorTabsControl.js +260 -0
  290. package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
  291. package/vscode/src/vs/workbench/browser/parts/editor/textResourceEditor.js +2 -2
  292. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +39 -36
  293. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +68 -28
  294. package/vscode/src/vs/workbench/browser/parts/panel/media/panelpart.css.js +1 -1
  295. package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +15 -14
  296. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -17
  297. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +1 -1
  298. package/vscode/src/vs/workbench/browser/parts/views/media/views.css.js +1 -1
  299. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -10
  300. package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +2 -1
  301. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.d.ts +2 -1
  302. package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +18 -17
  303. package/vscode/src/vs/workbench/browser/quickaccess.js +33 -1
  304. package/vscode/src/vs/workbench/browser/web.api.d.ts +6 -0
  305. package/vscode/src/vs/workbench/browser/window.js +92 -9
  306. package/vscode/src/vs/workbench/browser/workbench.contribution.js +114 -65
  307. package/vscode/src/vs/workbench/common/component.d.ts +5 -1
  308. package/vscode/src/vs/workbench/common/component.js +6 -0
  309. package/vscode/src/vs/workbench/common/configuration.js +11 -1
  310. package/vscode/src/vs/workbench/common/contextkeys.js +8 -4
  311. package/vscode/src/vs/workbench/common/editor/editorInput.d.ts +6 -0
  312. package/vscode/src/vs/workbench/common/editor/editorInput.js +3 -0
  313. package/vscode/src/vs/workbench/common/editor/filteredEditorGroupModel.js +107 -0
  314. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +6 -3
  315. package/vscode/src/vs/workbench/common/editor/resourceEditorInput.js +21 -3
  316. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +2 -1
  317. package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.js +9 -6
  318. package/vscode/src/vs/workbench/common/editor.d.ts +16 -4
  319. package/vscode/src/vs/workbench/common/editor.js +7 -1
  320. package/vscode/src/vs/workbench/common/memento.js +33 -12
  321. package/vscode/src/vs/workbench/common/notifications.js +30 -7
  322. package/vscode/src/vs/workbench/common/theme.js +61 -1
  323. package/vscode/src/vs/workbench/common/views.d.ts +1 -28
  324. package/vscode/src/vs/workbench/common/views.js +1 -2
  325. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +232 -19
  326. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +9 -9
  327. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +1 -0
  328. package/vscode/src/vs/workbench/contrib/accessibility/browser/editorAccessibilityHelp.js +19 -31
  329. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatAccessibilityHelp.js +8 -3
  330. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +57 -38
  331. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatQuickInputActions.js +4 -4
  332. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +9 -2
  333. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +7 -0
  334. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +31 -20
  335. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +93 -49
  336. package/vscode/src/vs/workbench/contrib/chat/browser/chatMarkdownDecorationsRenderer.js +30 -6
  337. package/vscode/src/vs/workbench/contrib/chat/browser/chatSlashCommandContentWidget.js +24 -12
  338. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +9 -5
  339. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +12 -1
  340. package/vscode/src/vs/workbench/contrib/chat/browser/media/chat.css.js +1 -1
  341. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +2 -1
  342. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +21 -43
  343. package/vscode/src/vs/workbench/contrib/chat/common/chatService.js +6 -6
  344. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +4 -4
  345. package/vscode/src/vs/workbench/contrib/codeEditor/browser/suggestEnabledInput/suggestEnabledInput.css.js +1 -1
  346. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  347. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +0 -3
  348. package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +1 -1
  349. package/vscode/src/vs/workbench/contrib/comments/browser/{comments.contribution.js → commentsAccessibility.js} +36 -128
  350. package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +41 -18
  351. package/vscode/src/vs/workbench/contrib/debug/browser/baseDebugView.js +202 -0
  352. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +27 -4
  353. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +165 -52
  354. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +48 -31
  355. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +6 -1
  356. package/vscode/src/vs/workbench/contrib/debug/browser/media/breakpointWidget.css.js +1 -1
  357. package/vscode/src/vs/workbench/contrib/debug/common/debug.d.ts +40 -10
  358. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +28 -1
  359. package/vscode/src/vs/workbench/contrib/debug/common/debugContext.js +14 -0
  360. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +52 -23
  361. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  362. package/vscode/src/vs/workbench/contrib/debug/common/debugVisualizers.js +164 -0
  363. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +10 -0
  364. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +285 -0
  365. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +123 -78
  366. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +10 -0
  367. package/vscode/src/vs/workbench/contrib/files/browser/editors/fileEditorInput.js +326 -0
  368. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +1 -2
  369. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +8 -9
  370. package/vscode/src/vs/workbench/contrib/files/browser/files.configuration.contribution.js +70 -2
  371. package/vscode/src/vs/workbench/contrib/files/browser/files.d.ts +5 -2
  372. package/vscode/src/vs/workbench/contrib/files/browser/files.fileEditorFactory.contribution.js +13 -0
  373. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +2 -2
  374. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +34 -17
  375. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +5 -4
  376. package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +48 -14
  377. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +16 -8
  378. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChat.css.js +1 -1
  379. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatController.js +317 -321
  380. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatLivePreviewWidget.js +17 -24
  381. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSavingService.js +3 -0
  382. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSession.js +306 -130
  383. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatSessionService.js +3 -0
  384. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatStrategies.js +385 -613
  385. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatWidget.js +69 -64
  386. package/vscode/src/vs/workbench/contrib/inlineChat/browser/utils.js +71 -3
  387. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +39 -44
  388. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +5 -3
  389. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +1 -1
  390. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/find/findModel.js +1 -1
  391. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/coreActions.js +4 -4
  392. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  393. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookCellChat.css.js +1 -1
  394. package/vscode/src/vs/workbench/contrib/notebook/browser/media/notebookEditorStickyScroll.css.js +1 -1
  395. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +38 -7
  396. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +36 -8
  397. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookOptions.js +32 -12
  398. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellPart.js +24 -14
  399. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  400. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellStatusPart.js +1 -1
  401. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellToolbarStickyScroll.js +1 -2
  402. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatActions.js +264 -12
  403. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/chat/cellChatController.js +60 -27
  404. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCell.js +12 -5
  405. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/codeCellExecutionIcon.js +2 -2
  406. package/vscode/src/vs/workbench/contrib/notebook/browser/view/notebookCellList.js +2 -2
  407. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +12 -9
  408. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/webviewPreloads.js +6 -3
  409. package/vscode/src/vs/workbench/contrib/notebook/browser/viewModel/notebookViewModelImpl.js +1 -0
  410. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookEditorStickyScroll.js +188 -155
  411. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +4 -4
  412. package/vscode/src/vs/workbench/contrib/notebook/common/model/notebookCellTextModel.js +10 -3
  413. package/vscode/src/vs/workbench/contrib/notebook/common/notebookCommon.js +16 -33
  414. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +9 -7
  415. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorModel.js +6 -2
  416. package/vscode/src/vs/workbench/contrib/notebook/common/notebookKernelService.js +2 -1
  417. package/vscode/src/vs/workbench/contrib/remote/browser/remoteExplorer.js +29 -14
  418. package/vscode/src/vs/workbench/contrib/remote/browser/tunnelView.js +15 -3
  419. package/vscode/src/vs/workbench/contrib/remote/browser/urlFinder.js +2 -2
  420. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +22 -6
  421. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +1 -1
  422. package/vscode/src/vs/workbench/contrib/search/browser/searchModel.js +16 -17
  423. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +78 -50
  424. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +15 -1
  425. package/vscode/src/vs/workbench/contrib/terminal/browser/terminal.d.ts +25 -45
  426. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +12 -4
  427. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalIcon.js +2 -1
  428. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationAddon.js +33 -36
  429. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/decorationStyles.js +1 -1
  430. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/markNavigationAddon.js +3 -0
  431. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.d.ts +5 -8
  432. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/xtermTerminal.js +15 -27
  433. package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +3 -3
  434. package/vscode/src/vs/workbench/contrib/testing/common/testCoverage.js +38 -22
  435. package/vscode/src/vs/workbench/contrib/testing/common/testCoverageService.js +5 -2
  436. package/vscode/src/vs/workbench/contrib/testing/common/testProfileService.js +60 -40
  437. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  438. package/vscode/src/vs/workbench/contrib/testing/common/testResultStorage.js +15 -11
  439. package/vscode/src/vs/workbench/contrib/testing/common/testService.js +26 -1
  440. package/vscode/src/vs/workbench/contrib/testing/common/testTypes.js +24 -23
  441. package/vscode/src/vs/workbench/contrib/welcomeGettingStarted/browser/gettingStartedService.js +1 -1
  442. package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +124 -26
  443. package/vscode/src/vs/workbench/services/authentication/common/authentication.d.ts +68 -0
  444. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +76 -36
  445. package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolver.js +1 -0
  446. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +1 -0
  447. package/vscode/src/vs/workbench/services/editor/browser/editorService.js +15 -3
  448. package/vscode/src/vs/workbench/services/editor/common/editorGroupFinder.js +10 -1
  449. package/vscode/src/vs/workbench/services/editor/common/editorGroupsService.d.ts +51 -43
  450. package/vscode/src/vs/workbench/services/editor/common/editorService.d.ts +13 -8
  451. package/vscode/src/vs/workbench/services/editor/common/editorService.js +2 -1
  452. package/vscode/src/vs/workbench/services/extensionManagement/browser/extensionBisect.js +10 -10
  453. package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +8 -8
  454. package/vscode/src/vs/workbench/services/extensions/common/extensionsApiProposals.js +7 -7
  455. package/vscode/src/vs/workbench/services/extensions/common/rpcProtocol.js +1 -0
  456. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.d.ts +29 -9
  457. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +160 -63
  458. package/vscode/src/vs/workbench/services/host/browser/host.d.ts +8 -0
  459. package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +60 -72
  460. package/vscode/src/vs/workbench/services/layout/browser/layoutService.d.ts +0 -4
  461. package/vscode/src/vs/workbench/services/notebook/common/notebookDocumentService.js +56 -0
  462. package/vscode/src/vs/workbench/services/output/common/output.js +2 -2
  463. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorInput.js +10 -0
  464. package/vscode/src/vs/workbench/services/preferences/common/preferencesEditorInput.js +10 -0
  465. package/vscode/src/vs/workbench/services/remote/common/remoteExplorerService.js +2 -1
  466. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -4
  467. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorInput.js +21 -8
  468. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.d.ts +4 -0
  469. package/vscode/src/vs/workbench/services/untitled/common/untitledTextEditorService.js +3 -0
  470. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +4 -4
  471. package/vscode/src/vs/workbench/{browser/parts/views → services/views/browser}/viewsService.js +20 -15
  472. package/vscode/src/vs/workbench/services/views/common/viewsService.d.ts +34 -0
  473. package/vscode/src/vs/workbench/services/{hover/browser/hover.js → views/common/viewsService.js} +2 -2
  474. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.d.ts +6 -1
  475. package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopy.js +5 -2
  476. package/vscode/src/vs/workbench/services/workspaces/common/workspaceTrust.js +1 -0
  477. package/vscode-dts/vscode.proposed.chatAgents2.d.ts +112 -47
  478. package/vscode-dts/vscode.proposed.chatAgents2Additions.d.ts +68 -9
  479. package/vscode-dts/{vscode.proposed.scmInputBoxActionButton.d.ts → vscode.proposed.codeActionRanges.d.ts} +8 -10
  480. package/vscode-dts/{vscode.proposed.readonlyMessage.d.ts → vscode.proposed.commentReactor.d.ts} +3 -4
  481. package/vscode-dts/vscode.proposed.contribMultiDiffEditorMenus.d.ts +6 -0
  482. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemGroupMenu.d.ts +8 -0
  483. package/vscode-dts/vscode.proposed.contribSourceControlHistoryItemMenu.d.ts +8 -0
  484. package/vscode-dts/vscode.proposed.debugVisualization.d.ts +100 -0
  485. package/vscode-dts/vscode.proposed.defaultChatAgent.d.ts +1 -1
  486. package/vscode-dts/vscode.proposed.interactive.d.ts +13 -16
  487. package/vscode-dts/vscode.proposed.notebookVariableProvider.d.ts +4 -1
  488. package/vscode-dts/vscode.proposed.resolvers.d.ts +4 -0
  489. package/vscode-dts/vscode.proposed.scmHistoryProvider.d.ts +4 -10
  490. package/vscode-dts/vscode.proposed.scmMultiDiffEditor.d.ts +34 -0
  491. package/vscode-dts/vscode.proposed.speech.d.ts +17 -3
  492. package/vscode-dts/vscode.proposed.testCoverage.d.ts +7 -1
  493. package/vscode-dts/vscode.proposed.tunnelFactory.d.ts +4 -0
  494. package/vscode/src/vs/editor/browser/widget/diffEditor/colors.js +0 -17
  495. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditorDecorations.js +0 -231
  496. package/vscode/src/vs/editor/browser/widget/diffEditor/outlineModel.js +0 -299
  497. package/vscode/src/vs/editor/browser/widget/diffEditor/workerBasedDocumentDiffProvider.js +0 -101
  498. package/vscode/src/vs/workbench/contrib/terminal/browser/xterm/suggestAddon.js +0 -390
  499. package/vscode/src/vs/workbench/services/editor/common/editorGroupColumn.d.ts +0 -10
  500. package/vscode/src/vs/workbench/services/suggest/browser/media/suggest.css.js +0 -4
  501. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.d.ts +0 -28
  502. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionItem.js +0 -10
  503. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.d.ts +0 -30
  504. package/vscode/src/vs/workbench/services/suggest/browser/simpleCompletionModel.js +0 -98
  505. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.d.ts +0 -10
  506. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidget.js +0 -428
  507. package/vscode/src/vs/workbench/services/suggest/browser/simpleSuggestWidgetRenderer.js +0 -83
  508. package/vscode-dts/vscode.proposed.chatVariables.d.ts +0 -39
  509. package/vscode-dts/vscode.proposed.interactiveUserActions.d.ts +0 -77
  510. package/vscode-dts/vscode.proposed.saveEditor.d.ts +0 -35
  511. package/vscode-dts/vscode.proposed.scmInputBoxValueProvider.d.ts +0 -25
  512. package/vscode-dts/vscode.proposed.testingActiveProfile.d.ts +0 -21
@@ -11,14 +11,16 @@ import { Codicon } from '../../../../base/common/codicons.js';
11
11
  import { MarkdownString } from '../../../../base/common/htmlContent.js';
12
12
  import { dispose } from '../../../../base/common/lifecycle.js';
13
13
  import { basenameOrAuthority, dirname } from '../../../../base/common/resources.js';
14
+ import { ThemeIcon } from '../../../../base/common/themables.js';
14
15
  import { isCodeEditor } from '../../../../editor/browser/editorBrowser.js';
15
16
  import { ILanguageService } from '../../../../editor/common/languages/language.js';
16
- import { localizeWithPath } from '../../../../nls.js';
17
+ import { localizeWithPath, localize2WithPath } from '../../../../nls.js';
17
18
  import { createAndFillInActionBarActions, createAndFillInContextMenuActions } from '../../../../platform/actions/browser/menuEntryActionViewItem.js';
18
19
  import { registerAction2, MenuId, IMenuService, Action2 } from '../../../../platform/actions/common/actions.js';
19
20
  import { IConfigurationService } from '../../../../platform/configuration/common/configuration.js';
20
21
  import { IContextKeyService, ContextKeyExpr } from '../../../../platform/contextkey/common/contextkey.js';
21
22
  import { IContextMenuService, IContextViewService } from '../../../../platform/contextview/browser/contextView.js';
23
+ import { IHoverService } from '../../../../platform/hover/browser/hover.js';
22
24
  import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
23
25
  import { IKeybindingService } from '../../../../platform/keybinding/common/keybinding.js';
24
26
  import { ILabelService } from '../../../../platform/label/common/label.js';
@@ -27,15 +29,13 @@ import { IOpenerService } from '../../../../platform/opener/common/opener.js';
27
29
  import { ITelemetryService } from '../../../../platform/telemetry/common/telemetry.js';
28
30
  import { defaultInputBoxStyles } from '../../../../platform/theme/browser/defaultStyles.js';
29
31
  import { IThemeService } from '../../../../platform/theme/common/themeService.js';
30
- import { ThemeIcon } from '../../../../base/common/themables.js';
31
32
  import { ViewPane, ViewAction } from '../../../browser/parts/views/viewPane.js';
32
33
  import { IViewDescriptorService } from '../../../common/views.js';
33
- import { debugBreakpointUnsupported, logBreakpoint, conditionalBreakpoint, dataBreakpoint, functionBreakpoint, breakpoint, watchExpressionsAddFuncBreakpoint, breakpointsActivate, breakpointsRemoveAll } from './debugIcons.js';
34
+ import { breakpoint, dataBreakpoint, functionBreakpoint, logBreakpoint, conditionalBreakpoint, debugBreakpointUnsupported, watchExpressionsAddFuncBreakpoint, breakpointsActivate, breakpointsRemoveAll } from './debugIcons.js';
34
35
  import { CONTEXT_BREAKPOINT_ITEM_TYPE, 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';
35
- import { DataBreakpoint, FunctionBreakpoint, InstructionBreakpoint, Breakpoint, ExceptionBreakpoint } from '../common/debugModel.js';
36
+ import { Breakpoint, DataBreakpoint, FunctionBreakpoint, InstructionBreakpoint, ExceptionBreakpoint } from '../common/debugModel.js';
36
37
  import { DisassemblyViewInput } from '../common/disassemblyViewInput.js';
37
38
  import { SIDE_GROUP, ACTIVE_GROUP, IEditorService } from '../../../services/editor/common/editorService.js';
38
- import { IHoverService } from '../../../services/hover/browser/hover.js';
39
39
  var BreakpointsRenderer_1, FunctionBreakpointsRenderer_1, DataBreakpointsRenderer_1, InstructionBreakpointsRenderer_1;
40
40
  const $ = $$1;
41
41
  function createCheckbox(disposables) {
@@ -397,7 +397,7 @@ let BreakpointsRenderer = class BreakpointsRenderer {
397
397
  }
398
398
  data.filePath.textContent = this.labelService.getUriLabel(dirname(breakpoint.uri), { relative: true });
399
399
  data.checkbox.checked = breakpoint.enabled;
400
- const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService);
400
+ const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService, this.debugService.getModel());
401
401
  data.icon.className = ThemeIcon.asClassName(icon);
402
402
  data.breakpoint.title = breakpoint.message || message || '';
403
403
  const debugActive = this.debugService.state === 3 || this.debugService.state === 2 ;
@@ -510,7 +510,7 @@ let FunctionBreakpointsRenderer = class FunctionBreakpointsRenderer {
510
510
  renderElement(functionBreakpoint, _index, data) {
511
511
  data.context = functionBreakpoint;
512
512
  data.name.textContent = functionBreakpoint.name;
513
- const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService);
513
+ const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService, this.debugService.getModel());
514
514
  data.icon.className = ThemeIcon.asClassName(icon);
515
515
  data.icon.title = message ? message : '';
516
516
  data.checkbox.checked = functionBreakpoint.enabled;
@@ -586,7 +586,7 @@ let DataBreakpointsRenderer = class DataBreakpointsRenderer {
586
586
  renderElement(dataBreakpoint, _index, data) {
587
587
  data.context = dataBreakpoint;
588
588
  data.name.textContent = dataBreakpoint.description;
589
- const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService);
589
+ const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService, this.debugService.getModel());
590
590
  data.icon.className = ThemeIcon.asClassName(icon);
591
591
  data.icon.title = message ? message : '';
592
592
  data.checkbox.checked = dataBreakpoint.enabled;
@@ -668,7 +668,7 @@ let InstructionBreakpointsRenderer = class InstructionBreakpointsRenderer {
668
668
  data.name.textContent = '0x' + ( breakpoint.address.toString(16));
669
669
  data.name.title = `Decimal address: breakpoint.address.toString()`;
670
670
  data.checkbox.checked = breakpoint.enabled;
671
- const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService);
671
+ const { message, icon } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), breakpoint, this.labelService, this.debugService.getModel());
672
672
  data.icon.className = ThemeIcon.asClassName(icon);
673
673
  data.breakpoint.title = breakpoint.message || message || '';
674
674
  const debugActive = this.debugService.state === 3 || this.debugService.state === 2 ;
@@ -760,7 +760,7 @@ class FunctionBreakpointInputRenderer {
760
760
  renderElement(functionBreakpoint, _index, data) {
761
761
  data.breakpoint = functionBreakpoint;
762
762
  data.type = this.view.inputBoxData?.type || 'name';
763
- const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService);
763
+ const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), functionBreakpoint, this.labelService, this.debugService.getModel());
764
764
  data.icon.className = ThemeIcon.asClassName(icon);
765
765
  data.icon.title = message ? message : '';
766
766
  data.checkbox.checked = functionBreakpoint.enabled;
@@ -881,7 +881,7 @@ class DataBreakpointInputRenderer {
881
881
  renderElement(dataBreakpoint, _index, data) {
882
882
  data.breakpoint = dataBreakpoint;
883
883
  data.type = this.view.inputBoxData?.type || 'condition';
884
- const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService);
884
+ const { icon, message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), dataBreakpoint, this.labelService, this.debugService.getModel());
885
885
  data.icon.className = ThemeIcon.asClassName(icon);
886
886
  data.icon.title = message ? message : '';
887
887
  data.checkbox.checked = dataBreakpoint.enabled;
@@ -1021,7 +1021,7 @@ class BreakpointsAccessibilityProvider {
1021
1021
  if (element instanceof ExceptionBreakpoint) {
1022
1022
  return ( element.toString());
1023
1023
  }
1024
- const { message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), element, this.labelService);
1024
+ const { message } = getBreakpointMessageAndIcon(this.debugService.state, this.debugService.getModel().areBreakpointsActivated(), element, this.labelService, this.debugService.getModel());
1025
1025
  const toString = ( element.toString());
1026
1026
  return message ? `${toString}, ${message}` : toString;
1027
1027
  }
@@ -1052,7 +1052,7 @@ function openBreakpointSource(breakpoint, sideBySide, preserveFocus, pinned, deb
1052
1052
  }
1053
1053
  }, sideBySide ? SIDE_GROUP : ACTIVE_GROUP);
1054
1054
  }
1055
- function getBreakpointMessageAndIcon(state, breakpointsActivated, breakpoint$1, labelService) {
1055
+ function getBreakpointMessageAndIcon(state, breakpointsActivated, breakpoint$1, labelService, debugModel) {
1056
1056
  const debugActive = state === 3 || state === 2 ;
1057
1057
  const breakpointIcon = breakpoint$1 instanceof DataBreakpoint ? dataBreakpoint : breakpoint$1 instanceof FunctionBreakpoint ? functionBreakpoint : breakpoint$1.logMessage ? logBreakpoint : breakpoint;
1058
1058
  if (!breakpoint$1.enabled || !breakpointsActivated) {
@@ -1072,6 +1072,11 @@ function getBreakpointMessageAndIcon(state, breakpointsActivated, breakpoint$1,
1072
1072
  const appendMessage = (text) => {
1073
1073
  return ('message' in breakpoint$1 && breakpoint$1.message) ? text.concat(', ' + breakpoint$1.message) : text;
1074
1074
  };
1075
+ if (debugActive && breakpoint$1 instanceof Breakpoint && breakpoint$1.pending) {
1076
+ return {
1077
+ icon: breakpoint.pending
1078
+ };
1079
+ }
1075
1080
  if (debugActive && !breakpoint$1.verified) {
1076
1081
  return {
1077
1082
  icon: breakpointIcon.unverified,
@@ -1188,17 +1193,20 @@ function getBreakpointMessageAndIcon(state, breakpointsActivated, breakpoint$1,
1188
1193
  message: appendMessage(messages.join('\n'))
1189
1194
  };
1190
1195
  }
1191
- if (breakpoint$1.logMessage || breakpoint$1.condition || breakpoint$1.hitCondition) {
1196
+ let triggeringBreakpoint;
1197
+ if (breakpoint$1 instanceof Breakpoint && breakpoint$1.triggeredBy) {
1198
+ triggeringBreakpoint = debugModel.getBreakpoints().find(bp => bp.getId() === breakpoint$1.triggeredBy);
1199
+ }
1200
+ if (breakpoint$1.logMessage || breakpoint$1.condition || breakpoint$1.hitCondition || triggeringBreakpoint) {
1192
1201
  const messages = [];
1202
+ let icon = breakpoint$1.logMessage ? logBreakpoint.regular : conditionalBreakpoint.regular;
1193
1203
  if (!breakpoint$1.supported) {
1194
- return {
1195
- icon: debugBreakpointUnsupported,
1196
- message: ( localizeWithPath(
1197
- 'vs/workbench/contrib/debug/browser/breakpointsView',
1198
- 'breakpointUnsupported',
1199
- "Breakpoints of this type are not supported by the debugger"
1200
- )),
1201
- };
1204
+ icon = debugBreakpointUnsupported;
1205
+ messages.push(( localizeWithPath(
1206
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1207
+ 'breakpointUnsupported',
1208
+ "Breakpoints of this type are not supported by the debugger"
1209
+ )));
1202
1210
  }
1203
1211
  if (breakpoint$1.logMessage) {
1204
1212
  messages.push(( localizeWithPath(
@@ -1224,8 +1232,16 @@ function getBreakpointMessageAndIcon(state, breakpointsActivated, breakpoint$1,
1224
1232
  breakpoint$1.hitCondition
1225
1233
  )));
1226
1234
  }
1235
+ if (triggeringBreakpoint) {
1236
+ messages.push(( localizeWithPath(
1237
+ 'vs/workbench/contrib/debug/browser/breakpointsView',
1238
+ 'triggeredBy',
1239
+ "Hit after breakpoint: {0}",
1240
+ `${labelService.getUriLabel(triggeringBreakpoint.uri, { relative: true })}: ${triggeringBreakpoint.lineNumber}`
1241
+ )));
1242
+ }
1227
1243
  return {
1228
- icon: breakpoint$1.logMessage ? logBreakpoint.regular : conditionalBreakpoint.regular,
1244
+ icon,
1229
1245
  message: appendMessage(messages.join('\n'))
1230
1246
  };
1231
1247
  }
@@ -1280,11 +1296,11 @@ registerAction2(class extends Action2 {
1280
1296
  constructor() {
1281
1297
  super({
1282
1298
  id: 'workbench.debug.viewlet.action.toggleBreakpointsActivatedAction',
1283
- title: { value: ( localizeWithPath(
1299
+ title: ( localize2WithPath(
1284
1300
  'vs/workbench/contrib/debug/browser/breakpointsView',
1285
1301
  'activateBreakpoints',
1286
- "Toggle Activate Breakpoints"
1287
- )), original: 'Toggle Activate Breakpoints' },
1302
+ 'Toggle Activate Breakpoints'
1303
+ )),
1288
1304
  f1: true,
1289
1305
  icon: breakpointsActivate,
1290
1306
  menu: {
@@ -1462,11 +1478,11 @@ registerAction2(class extends Action2 {
1462
1478
  constructor() {
1463
1479
  super({
1464
1480
  id: 'workbench.debug.viewlet.action.reapplyBreakpointsAction',
1465
- title: { value: ( localizeWithPath(
1481
+ title: ( localize2WithPath(
1466
1482
  'vs/workbench/contrib/debug/browser/breakpointsView',
1467
1483
  'reapplyAllBreakpoints',
1468
- "Reapply All Breakpoints"
1469
- )), original: 'Reapply All Breakpoints' },
1484
+ 'Reapply All Breakpoints'
1485
+ )),
1470
1486
  f1: true,
1471
1487
  precondition: CONTEXT_IN_DEBUG_MODE,
1472
1488
  menu: [{
@@ -1496,6 +1512,7 @@ registerAction2(class extends ViewAction {
1496
1512
  precondition: CONTEXT_BREAKPOINT_SUPPORTS_CONDITION,
1497
1513
  menu: [{
1498
1514
  id: MenuId.DebugBreakpointsContext,
1515
+ when: ( CONTEXT_BREAKPOINT_ITEM_TYPE.notEqualsTo('functionBreakpoint')),
1499
1516
  group: 'navigation',
1500
1517
  order: 10
1501
1518
  }, {
@@ -1551,11 +1568,11 @@ registerAction2(class extends ViewAction {
1551
1568
  title: ( localizeWithPath(
1552
1569
  'vs/workbench/contrib/debug/browser/breakpointsView',
1553
1570
  'editBreakpoint',
1554
- "Edit Function Breakpoint..."
1571
+ "Edit Function Condition..."
1555
1572
  )),
1556
1573
  menu: [{
1557
1574
  id: MenuId.DebugBreakpointsContext,
1558
- group: '1_breakpoints',
1575
+ group: 'navigation',
1559
1576
  order: 10,
1560
1577
  when: ( CONTEXT_BREAKPOINT_ITEM_TYPE.isEqualTo('functionBreakpoint'))
1561
1578
  }]
@@ -51,7 +51,12 @@ const breakpoint = {
51
51
  'vs/workbench/contrib/debug/browser/debugIcons',
52
52
  'debugBreakpointUnverified',
53
53
  'Icon for unverified breakpoints.'
54
- )))
54
+ ))),
55
+ pending: registerIcon('debug-breakpoint-pending', Codicon.debugBreakpointPending, ( localizeWithPath(
56
+ 'vs/workbench/contrib/debug/browser/debugIcons',
57
+ 'debugBreakpointPendingOnTrigger',
58
+ 'Icon for breakpoints waiting on another breakpoint.'
59
+ ))),
55
60
  };
56
61
  const functionBreakpoint = {
57
62
  regular: registerIcon('debug-breakpoint-function', Codicon.debugBreakpointFunction, ( localizeWithPath(
@@ -1,4 +1,4 @@
1
1
  import n from '../../../../../../../../external/rollup-plugin-styles/dist/runtime/inject-css.js';
2
- var css = ".monaco-editor .zone-widget .zone-widget-container.breakpoint-widget{border-color:#007acc;display:flex}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .breakpoint-select-container{display:flex;flex-direction:column;flex-shrink:0;justify-content:center;padding:0 10px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .breakpoint-select-container .monaco-select-box{min-height:18px;min-width:100px;padding:2px 20px 2px 8px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .breakpoint-select-container:after{right:14px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .inputContainer{flex:1}";
2
+ var css = ".monaco-editor .zone-widget .zone-widget-container.breakpoint-widget{border-color:#007acc;display:flex}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .breakpoint-select-container{display:flex;flex-direction:column;flex-shrink:0;justify-content:center;padding:0 10px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .monaco-select-box{min-height:18px;min-width:100px;padding:2px 20px 2px 8px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .breakpoint-select-container:after{right:14px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .inputContainer{flex:1}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .select-breakpoint-container{align-items:center;display:flex;flex-grow:1;gap:10px;width:0}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .select-breakpoint-container .monaco-button{flex-grow:0;line-height:14px;padding-left:8px;padding-right:8px;width:auto}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .select-breakpoint-container .select-box-container{display:flex;flex-direction:column;justify-content:center;width:300px}.monaco-editor .zone-widget .zone-widget-container.breakpoint-widget .select-breakpoint-container:after{right:14px}";
3
3
  n(css,{});
4
4
  export { css, css as default };
@@ -32,6 +32,7 @@ interface IRawStoppedDetails {
32
32
  text?: string;
33
33
  totalFrames?: number;
34
34
  allThreadsStopped?: boolean;
35
+ preserveFocusHint?: boolean;
35
36
  framesErrorMessage?: string;
36
37
  hitBreakpointIds?: number[];
37
38
  }
@@ -47,15 +48,17 @@ interface IReplElementSource {
47
48
  readonly lineNumber: number;
48
49
  readonly column: number;
49
50
  }
50
- interface IExpressionContainer extends ITreeElement {
51
+ interface IExpressionValue {
52
+ readonly value: string;
53
+ readonly type?: string;
54
+ valueChanged?: boolean;
55
+ }
56
+ interface IExpressionContainer extends ITreeElement, IExpressionValue {
51
57
  readonly hasChildren: boolean;
52
58
  evaluateLazy(): Promise<void>;
53
59
  getChildren(): Promise<IExpression[]>;
54
60
  readonly reference?: number;
55
61
  readonly memoryReference?: string;
56
- readonly value: string;
57
- readonly type?: string;
58
- valueChanged?: boolean;
59
62
  readonly presentationHint?: DebugProtocol.VariablePresentationHint | undefined;
60
63
  }
61
64
  interface IExpression extends IExpressionContainer {
@@ -361,6 +364,7 @@ interface IBreakpointData {
361
364
  readonly condition?: string;
362
365
  readonly logMessage?: string;
363
366
  readonly hitCondition?: string;
367
+ readonly triggeredBy?: string;
364
368
  }
365
369
  interface IBreakpointUpdateData {
366
370
  readonly condition?: string;
@@ -368,6 +372,7 @@ interface IBreakpointUpdateData {
368
372
  readonly logMessage?: string;
369
373
  readonly lineNumber?: number;
370
374
  readonly column?: number;
375
+ readonly triggeredBy?: string;
371
376
  }
372
377
  interface IBaseBreakpoint extends IEnablement {
373
378
  readonly condition?: string;
@@ -393,6 +398,14 @@ interface IBreakpoint extends IBaseBreakpoint {
393
398
  lineNumber: number;
394
399
  column: number | undefined;
395
400
  };
401
+ /** An ID of the breakpoint that triggers this breakpoint. */
402
+ readonly triggeredBy?: string;
403
+ /** Pending on the trigger breakpoint, which means this breakpoint is not yet sent to DA */
404
+ readonly pending: boolean;
405
+ /** Marks that a session did trigger the breakpoint. */
406
+ setSessionDidTrigger(sessionId: string): void;
407
+ /** Gets whether the `triggeredBy` condition has been met in the given sesison ID. */
408
+ getSessionDidTrigger(sessionId: string): boolean;
396
409
  }
397
410
  interface IFunctionBreakpoint extends IBaseBreakpoint {
398
411
  readonly name: string;
@@ -472,6 +485,7 @@ interface IDebugModel extends ITreeElement {
472
485
  lineNumber?: number;
473
486
  column?: number;
474
487
  enabledOnly?: boolean;
488
+ triggeredOnly?: boolean;
475
489
  }): ReadonlyArray<IBreakpoint>;
476
490
  areBreakpointsActivated(): boolean;
477
491
  getFunctionBreakpoints(): ReadonlyArray<IFunctionBreakpoint>;
@@ -638,6 +652,10 @@ interface IConfigurationManager {
638
652
  * Allows to register on change of selected debug configuration.
639
653
  */
640
654
  onDidSelectConfiguration: Event<void>;
655
+ /**
656
+ * Allows to register on change of selected debug configuration.
657
+ */
658
+ onDidChangeConfigurationProviders: Event<void>;
641
659
  hasDebugConfigurationProvider(debugType: string, triggerKind?: DebugConfigurationProviderTriggerKind): boolean;
642
660
  getDynamicProviders(): Promise<{
643
661
  label: string;
@@ -729,17 +747,25 @@ interface IDebugService {
729
747
  */
730
748
  onDidChangeState: Event<State>;
731
749
  /**
732
- * Allows to register on new session events.
750
+ * Allows to register on sessions about to be created (not yet fully initialised).
751
+ * This is fired exactly one time for any given session.
733
752
  */
734
- onDidNewSession: Event<IDebugSession>;
753
+ onWillNewSession: Event<IDebugSession>;
735
754
  /**
736
- * Allows to register on sessions about to be created (not yet fully initialised)
755
+ * Fired when a new debug session is started. This may fire multiple times
756
+ * for a single session due to restarts.
737
757
  */
738
- onWillNewSession: Event<IDebugSession>;
758
+ onDidNewSession: Event<IDebugSession>;
739
759
  /**
740
760
  * Allows to register on end session events.
761
+ *
762
+ * Contains a boolean indicating whether the session will restart. If restart
763
+ * is true, the session should not considered to be dead yet.
741
764
  */
742
- onDidEndSession: Event<IDebugSession>;
765
+ onDidEndSession: Event<{
766
+ session: IDebugSession;
767
+ restart: boolean;
768
+ }>;
743
769
  /**
744
770
  * Gets the configuration manager.
745
771
  */
@@ -836,6 +862,10 @@ interface IDebugService {
836
862
  * If session is not passed, sends all breakpoints to each session.
837
863
  */
838
864
  sendAllBreakpoints(session?: IDebugSession): Promise<any>;
865
+ /**
866
+ * Sends breakpoints of the given source to the passed session.
867
+ */
868
+ sendBreakpoints(modelUri: URI, sourceModified?: boolean, session?: IDebugSession): Promise<any>;
839
869
  /**
840
870
  * Adds a new watch expression and evaluates it against the debug adapter.
841
871
  */
@@ -887,4 +917,4 @@ interface IDebugService {
887
917
  runTo(uri: URI, lineNumber: number, column?: number): Promise<void>;
888
918
  }
889
919
 
890
- 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 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 };
920
+ 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 };
@@ -1,3 +1,4 @@
1
+ import { URI } from '../../../../base/common/uri.js';
1
2
  import { localizeWithPath } from '../../../../nls.js';
2
3
  import { RawContextKey } from '../../../../platform/contextkey/common/contextkey.js';
3
4
  import { createDecorator } from '../../../../platform/instantiation/common/instantiation.js';
@@ -372,6 +373,21 @@ const CONTEXT_VARIABLE_IS_READONLY = ( new RawContextKey(
372
373
  "True when the focused variable is read-only."
373
374
  )) }
374
375
  ));
376
+ const CONTEXT_VARIABLE_VALUE = ( new RawContextKey('variableValue', false, { type: 'string', description: ( localizeWithPath(
377
+ 'vs/workbench/contrib/debug/common/debug',
378
+ 'variableValue',
379
+ "Value of the variable, present for debug visualization clauses."
380
+ )) }));
381
+ const CONTEXT_VARIABLE_TYPE = ( new RawContextKey('variableType', false, { type: 'string', description: ( localizeWithPath(
382
+ 'vs/workbench/contrib/debug/common/debug',
383
+ 'variableType',
384
+ "Type of the variable, present for debug visualization clauses."
385
+ )) }));
386
+ const CONTEXT_VARIABLE_NAME = ( new RawContextKey('variableName', false, { type: 'string', description: ( localizeWithPath(
387
+ 'vs/workbench/contrib/debug/common/debug',
388
+ 'variableName',
389
+ "Name of the variable, present for debug visualization clauses."
390
+ )) }));
375
391
  const CONTEXT_EXCEPTION_WIDGET_VISIBLE = ( new RawContextKey(
376
392
  'exceptionWidgetVisible',
377
393
  false,
@@ -466,4 +482,15 @@ var DebuggerString;
466
482
  DebuggerString["UnverifiedBreakpoints"] = "unverifiedBreakpoints";
467
483
  })(DebuggerString || (DebuggerString = {})));
468
484
  const IDebugService = ( createDecorator('debugService'));
469
- export { BREAKPOINTS_VIEW_ID, BREAKPOINT_EDITOR_CONTRIBUTION_ID, CALLSTACK_VIEW_ID, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_BREAKPOINTS_FOCUSED, 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_IS_READONLY, 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, INTERNAL_CONSOLE_OPTIONS_SCHEMA, LOADED_SCRIPTS_VIEW_ID, REPL_VIEW_ID, VARIABLES_VIEW_ID, VIEWLET_ID, WATCH_VIEW_ID, debuggerDisabledMessage, getStateLabel };
485
+ var IDebugVisualization;
486
+ ( (function(IDebugVisualization) {
487
+ IDebugVisualization.deserialize = (v) => ({
488
+ id: v.id,
489
+ name: v.name,
490
+ iconPath: v.iconPath && { light: URI.revive(v.iconPath.light), dark: URI.revive(v.iconPath.dark) },
491
+ iconClass: v.iconClass,
492
+ visualization: v.visualization,
493
+ });
494
+ IDebugVisualization.serialize = (visualizer) => visualizer;
495
+ })(IDebugVisualization || (IDebugVisualization = {})));
496
+ export { BREAKPOINTS_VIEW_ID, BREAKPOINT_EDITOR_CONTRIBUTION_ID, CALLSTACK_VIEW_ID, CONTEXT_BREAKPOINTS_EXIST, CONTEXT_BREAKPOINTS_FOCUSED, 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_IS_READONLY, 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 };
@@ -0,0 +1,14 @@
1
+ import { CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT, CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT, CONTEXT_CAN_VIEW_MEMORY, CONTEXT_VARIABLE_IS_READONLY, CONTEXT_DEBUG_TYPE } from './debug.js';
2
+ function getContextForVariable(parentContext, variable, additionalContext = []) {
3
+ const session = variable.getSession();
4
+ const contextKeys = [
5
+ [CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT.key, variable.variableMenuContext || ''],
6
+ [CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT.key, !!variable.evaluateName],
7
+ [CONTEXT_CAN_VIEW_MEMORY.key, !!session?.capabilities.supportsReadMemoryRequest && variable.memoryReference !== undefined],
8
+ [CONTEXT_VARIABLE_IS_READONLY.key, !!variable.presentationHint?.attributes?.includes('readOnly') || variable.presentationHint?.lazy],
9
+ [CONTEXT_DEBUG_TYPE.key, session?.configuration.type],
10
+ ...additionalContext,
11
+ ];
12
+ return parentContext.createOverlay(contextKeys);
13
+ }
14
+ export { getContextForVariable };
@@ -1,10 +1,11 @@
1
1
  import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
2
2
  import { distinct } from '../../../../base/common/arrays.js';
3
+ import { findLastIdx } from '../../../../base/common/arraysFind.js';
3
4
  import { RunOnceScheduler, DeferredPromise } from '../../../../base/common/async.js';
4
5
  import { decodeBase64, VSBuffer, encodeBase64 } from '../../../../base/common/buffer.js';
5
6
  import { CancellationTokenSource } from '../../../../base/common/cancellation.js';
6
- import { stringHash } from '../../../../base/common/hash.js';
7
7
  import { Emitter } from '../../../../base/common/event.js';
8
+ import { stringHash } from '../../../../base/common/hash.js';
8
9
  import { Disposable } from '../../../../base/common/lifecycle.js';
9
10
  import { mixin } from '../../../../base/common/objects.js';
10
11
  import { basenameOrAuthority } from '../../../../base/common/resources.js';
@@ -13,13 +14,12 @@ import { URI } from '../../../../base/common/uri.js';
13
14
  import { generateUuid } from '../../../../base/common/uuid.js';
14
15
  import { Range } from '../../../../editor/common/core/range.js';
15
16
  import { localizeWithPath } from '../../../../nls.js';
17
+ import { ILogService } from '../../../../platform/log/common/log.js';
16
18
  import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js';
17
19
  import { DEBUG_MEMORY_SCHEME } from './debug.js';
18
20
  import { getUriFromSource, UNKNOWN_SOURCE_LABEL } from './debugSource.js';
19
21
  import { DisassemblyViewInput } from './disassemblyViewInput.js';
20
22
  import { ITextFileService } from '../../../services/textfile/common/textfiles.js';
21
- import { ILogService } from '../../../../platform/log/common/log.js';
22
- import { findLastIdx } from '../../../../base/common/arraysFind.js';
23
23
  import { autorun } from '../../../../base/common/observableInternal/autorun.js';
24
24
  class ExpressionContainer {
25
25
  static { this.allValues = ( new Map()); }
@@ -277,6 +277,9 @@ class Variable extends ExpressionContainer {
277
277
  this.value = value || '';
278
278
  this.type = type;
279
279
  }
280
+ getThreadId() {
281
+ return this.threadId;
282
+ }
280
283
  async setVariable(value, stackFrame) {
281
284
  if (!this.session) {
282
285
  return;
@@ -318,6 +321,7 @@ class Variable extends ExpressionContainer {
318
321
  class Scope extends ExpressionContainer {
319
322
  constructor(stackFrame, id, name, reference, expensive, namedVariables, indexedVariables, range) {
320
323
  super(stackFrame.thread.session, stackFrame.thread.threadId, reference, `scope:${name}:${id}`, namedVariables, indexedVariables);
324
+ this.stackFrame = stackFrame;
321
325
  this.name = name;
322
326
  this.expensive = expensive;
323
327
  this.range = range;
@@ -714,7 +718,7 @@ class BaseBreakpoint extends Enablement {
714
718
  }
715
719
  }
716
720
  class Breakpoint extends BaseBreakpoint {
717
- constructor(_uri, _lineNumber, _column, enabled, condition, hitCondition, logMessage, _adapterData, textFileService, uriIdentityService, logService, id = generateUuid()) {
721
+ constructor(_uri, _lineNumber, _column, enabled, condition, hitCondition, logMessage, _adapterData, textFileService, uriIdentityService, logService, id = generateUuid(), triggeredBy = undefined) {
718
722
  super(enabled, hitCondition, condition, logMessage, id);
719
723
  this._uri = _uri;
720
724
  this._lineNumber = _lineNumber;
@@ -723,6 +727,7 @@ class Breakpoint extends BaseBreakpoint {
723
727
  this.textFileService = textFileService;
724
728
  this.uriIdentityService = uriIdentityService;
725
729
  this.logService = logService;
730
+ this.triggeredBy = triggeredBy;
726
731
  }
727
732
  get originalUri() {
728
733
  return this._uri;
@@ -736,6 +741,12 @@ class Breakpoint extends BaseBreakpoint {
736
741
  }
737
742
  return true;
738
743
  }
744
+ get pending() {
745
+ if (this.data) {
746
+ return false;
747
+ }
748
+ return this.triggeredBy !== undefined;
749
+ }
739
750
  get uri() {
740
751
  return this.verified && this.data && this.data.source ? getUriFromSource(this.data.source, this.data.source.path, this.data.sessionId, this.uriIdentityService, this.logService) : this._uri;
741
752
  }
@@ -794,27 +805,39 @@ class Breakpoint extends BaseBreakpoint {
794
805
  result.lineNumber = this._lineNumber;
795
806
  result.column = this._column;
796
807
  result.adapterData = this.adapterData;
808
+ result.triggeredBy = this.triggeredBy;
797
809
  return result;
798
810
  }
799
811
  toString() {
800
812
  return `${basenameOrAuthority(this.uri)} ${this.lineNumber}`;
801
813
  }
814
+ setSessionDidTrigger(sessionId) {
815
+ this.sessionsDidTrigger ??= ( new Set());
816
+ this.sessionsDidTrigger.add(sessionId);
817
+ }
818
+ getSessionDidTrigger(sessionId) {
819
+ return !!this.sessionsDidTrigger?.has(sessionId);
820
+ }
802
821
  update(data) {
803
- if (!isUndefinedOrNull(data.lineNumber)) {
822
+ if (data.hasOwnProperty('lineNumber') && !isUndefinedOrNull(data.lineNumber)) {
804
823
  this._lineNumber = data.lineNumber;
805
824
  }
806
- if (!isUndefinedOrNull(data.column)) {
825
+ if (data.hasOwnProperty('column')) {
807
826
  this._column = data.column;
808
827
  }
809
- if (!isUndefinedOrNull(data.condition)) {
828
+ if (data.hasOwnProperty('condition')) {
810
829
  this.condition = data.condition;
811
830
  }
812
- if (!isUndefinedOrNull(data.hitCondition)) {
831
+ if (data.hasOwnProperty('hitCondition')) {
813
832
  this.hitCondition = data.hitCondition;
814
833
  }
815
- if (!isUndefinedOrNull(data.logMessage)) {
834
+ if (data.hasOwnProperty('logMessage')) {
816
835
  this.logMessage = data.logMessage;
817
836
  }
837
+ if (data.hasOwnProperty('triggeredBy')) {
838
+ this.triggeredBy = data.triggeredBy;
839
+ this.sessionsDidTrigger = undefined;
840
+ }
818
841
  }
819
842
  }
820
843
  class FunctionBreakpoint extends BaseBreakpoint {
@@ -1108,6 +1131,9 @@ let DebugModel = class DebugModel extends Disposable {
1108
1131
  if (filter.enabledOnly && (!this.breakpointsActivated || !bp.enabled)) {
1109
1132
  return false;
1110
1133
  }
1134
+ if (filter.triggeredOnly && bp.triggeredBy === undefined) {
1135
+ return false;
1136
+ }
1111
1137
  return true;
1112
1138
  });
1113
1139
  }
@@ -1171,20 +1197,23 @@ let DebugModel = class DebugModel extends Disposable {
1171
1197
  this._onDidChangeBreakpoints.fire(undefined);
1172
1198
  }
1173
1199
  addBreakpoints(uri, rawData, fireEvent = true) {
1174
- const newBreakpoints = ( rawData.map(rawBp => ( new Breakpoint(
1175
- uri,
1176
- rawBp.lineNumber,
1177
- rawBp.column,
1178
- rawBp.enabled === false ? false : true,
1179
- rawBp.condition,
1180
- rawBp.hitCondition,
1181
- rawBp.logMessage,
1182
- undefined,
1183
- this.textFileService,
1184
- this.uriIdentityService,
1185
- this.logService,
1186
- rawBp.id
1187
- ))));
1200
+ const newBreakpoints = ( rawData.map(rawBp => {
1201
+ return ( new Breakpoint(
1202
+ uri,
1203
+ rawBp.lineNumber,
1204
+ rawBp.column,
1205
+ rawBp.enabled === false ? false : true,
1206
+ rawBp.condition,
1207
+ rawBp.hitCondition,
1208
+ rawBp.logMessage,
1209
+ undefined,
1210
+ this.textFileService,
1211
+ this.uriIdentityService,
1212
+ this.logService,
1213
+ rawBp.id,
1214
+ rawBp.triggeredBy
1215
+ ));
1216
+ }));
1188
1217
  this.breakpoints = this.breakpoints.concat(newBreakpoints);
1189
1218
  this.breakpointsActivated = true;
1190
1219
  this.sortAndDeDup();
@@ -98,7 +98,7 @@ function getUriFromSource(raw, path, sessionId, uriIdentityService, logService)
98
98
  if (typeof raw.sourceReference === 'number' && raw.sourceReference > 0) {
99
99
  return ( URI.from({
100
100
  scheme: DEBUG_SCHEME,
101
- path,
101
+ path: path?.replace(/^\/+/g, '/'),
102
102
  query: `session=${sessionId}&ref=${raw.sourceReference}`
103
103
  }));
104
104
  }