@theia/debug 1.67.0-next.13 → 1.67.0-next.56

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 (344) hide show
  1. package/README.md +1 -1
  2. package/package.json +15 -15
  3. package/src/browser/breakpoint/breakpoint-manager.ts +69 -16
  4. package/src/browser/breakpoint/breakpoint-marker.ts +38 -0
  5. package/src/browser/breakpoint/debug-data-breakpoint-actions.ts +170 -0
  6. package/src/browser/console/debug-console-items.tsx +5 -1
  7. package/src/browser/debug-frontend-application-contribution.ts +19 -0
  8. package/src/browser/debug-frontend-module.ts +2 -0
  9. package/src/browser/debug-session-manager.ts +18 -0
  10. package/src/browser/debug-session.tsx +31 -0
  11. package/src/browser/model/debug-data-breakpoint.tsx +79 -0
  12. package/src/browser/style/index.css +4 -0
  13. package/src/browser/view/debug-breakpoints-source.tsx +4 -10
  14. package/src/browser/view/debug-stack-frames-widget.ts +6 -2
  15. package/src/browser/view/debug-variables-widget.ts +99 -2
  16. package/src/browser/view/debug-view-model.ts +5 -0
  17. package/lib/browser/breakpoint/breakpoint-manager.d.ts +0 -71
  18. package/lib/browser/breakpoint/breakpoint-manager.d.ts.map +0 -1
  19. package/lib/browser/breakpoint/breakpoint-manager.js +0 -321
  20. package/lib/browser/breakpoint/breakpoint-manager.js.map +0 -1
  21. package/lib/browser/breakpoint/breakpoint-marker.d.ts +0 -42
  22. package/lib/browser/breakpoint/breakpoint-marker.d.ts.map +0 -1
  23. package/lib/browser/breakpoint/breakpoint-marker.js +0 -88
  24. package/lib/browser/breakpoint/breakpoint-marker.js.map +0 -1
  25. package/lib/browser/console/debug-console-contribution.d.ts +0 -45
  26. package/lib/browser/console/debug-console-contribution.d.ts.map +0 -1
  27. package/lib/browser/console/debug-console-contribution.js +0 -233
  28. package/lib/browser/console/debug-console-contribution.js.map +0 -1
  29. package/lib/browser/console/debug-console-items.d.ts +0 -97
  30. package/lib/browser/console/debug-console-items.d.ts.map +0 -1
  31. package/lib/browser/console/debug-console-items.js +0 -343
  32. package/lib/browser/console/debug-console-items.js.map +0 -1
  33. package/lib/browser/console/debug-console-session.d.ts +0 -32
  34. package/lib/browser/console/debug-console-session.d.ts.map +0 -1
  35. package/lib/browser/console/debug-console-session.js +0 -192
  36. package/lib/browser/console/debug-console-session.js.map +0 -1
  37. package/lib/browser/debug-call-stack-item-type-key.d.ts +0 -4
  38. package/lib/browser/debug-call-stack-item-type-key.d.ts.map +0 -1
  39. package/lib/browser/debug-call-stack-item-type-key.js +0 -20
  40. package/lib/browser/debug-call-stack-item-type-key.js.map +0 -1
  41. package/lib/browser/debug-configuration-manager.d.ts +0 -103
  42. package/lib/browser/debug-configuration-manager.d.ts.map +0 -1
  43. package/lib/browser/debug-configuration-manager.js +0 -545
  44. package/lib/browser/debug-configuration-manager.js.map +0 -1
  45. package/lib/browser/debug-configuration-model.d.ts +0 -30
  46. package/lib/browser/debug-configuration-model.d.ts.map +0 -1
  47. package/lib/browser/debug-configuration-model.js +0 -80
  48. package/lib/browser/debug-configuration-model.js.map +0 -1
  49. package/lib/browser/debug-contribution.d.ts +0 -23
  50. package/lib/browser/debug-contribution.d.ts.map +0 -1
  51. package/lib/browser/debug-contribution.js +0 -20
  52. package/lib/browser/debug-contribution.js.map +0 -1
  53. package/lib/browser/debug-frontend-application-contribution.d.ts +0 -249
  54. package/lib/browser/debug-frontend-application-contribution.d.ts.map +0 -1
  55. package/lib/browser/debug-frontend-application-contribution.js +0 -1678
  56. package/lib/browser/debug-frontend-application-contribution.js.map +0 -1
  57. package/lib/browser/debug-frontend-module.d.ts +0 -5
  58. package/lib/browser/debug-frontend-module.d.ts.map +0 -1
  59. package/lib/browser/debug-frontend-module.js +0 -110
  60. package/lib/browser/debug-frontend-module.js.map +0 -1
  61. package/lib/browser/debug-package.spec.d.ts +0 -1
  62. package/lib/browser/debug-package.spec.d.ts.map +0 -1
  63. package/lib/browser/debug-package.spec.js +0 -19
  64. package/lib/browser/debug-package.spec.js.map +0 -1
  65. package/lib/browser/debug-prefix-configuration.d.ts +0 -52
  66. package/lib/browser/debug-prefix-configuration.d.ts.map +0 -1
  67. package/lib/browser/debug-prefix-configuration.js +0 -202
  68. package/lib/browser/debug-prefix-configuration.js.map +0 -1
  69. package/lib/browser/debug-resource.d.ts +0 -15
  70. package/lib/browser/debug-resource.d.ts.map +0 -1
  71. package/lib/browser/debug-resource.js +0 -58
  72. package/lib/browser/debug-resource.js.map +0 -1
  73. package/lib/browser/debug-schema-updater.d.ts +0 -14
  74. package/lib/browser/debug-schema-updater.d.ts.map +0 -1
  75. package/lib/browser/debug-schema-updater.js +0 -161
  76. package/lib/browser/debug-schema-updater.js.map +0 -1
  77. package/lib/browser/debug-session-configuration-label-provider.d.ts +0 -11
  78. package/lib/browser/debug-session-configuration-label-provider.d.ts.map +0 -1
  79. package/lib/browser/debug-session-configuration-label-provider.js +0 -48
  80. package/lib/browser/debug-session-configuration-label-provider.js.map +0 -1
  81. package/lib/browser/debug-session-configuration-label-provider.spec.d.ts +0 -2
  82. package/lib/browser/debug-session-configuration-label-provider.spec.d.ts.map +0 -1
  83. package/lib/browser/debug-session-configuration-label-provider.spec.js +0 -84
  84. package/lib/browser/debug-session-configuration-label-provider.spec.js.map +0 -1
  85. package/lib/browser/debug-session-connection.d.ts +0 -111
  86. package/lib/browser/debug-session-connection.d.ts.map +0 -1
  87. package/lib/browser/debug-session-connection.js +0 -259
  88. package/lib/browser/debug-session-connection.js.map +0 -1
  89. package/lib/browser/debug-session-contribution.d.ts +0 -77
  90. package/lib/browser/debug-session-contribution.d.ts.map +0 -1
  91. package/lib/browser/debug-session-contribution.js +0 -143
  92. package/lib/browser/debug-session-contribution.js.map +0 -1
  93. package/lib/browser/debug-session-manager.d.ts +0 -138
  94. package/lib/browser/debug-session-manager.d.ts.map +0 -1
  95. package/lib/browser/debug-session-manager.js +0 -620
  96. package/lib/browser/debug-session-manager.js.map +0 -1
  97. package/lib/browser/debug-session-options.d.ts +0 -56
  98. package/lib/browser/debug-session-options.d.ts.map +0 -1
  99. package/lib/browser/debug-session-options.js +0 -92
  100. package/lib/browser/debug-session-options.js.map +0 -1
  101. package/lib/browser/debug-session.d.ts +0 -192
  102. package/lib/browser/debug-session.d.ts.map +0 -1
  103. package/lib/browser/debug-session.js +0 -913
  104. package/lib/browser/debug-session.js.map +0 -1
  105. package/lib/browser/debug-tab-bar-decorator.d.ts +0 -17
  106. package/lib/browser/debug-tab-bar-decorator.d.ts.map +0 -1
  107. package/lib/browser/debug-tab-bar-decorator.js +0 -63
  108. package/lib/browser/debug-tab-bar-decorator.js.map +0 -1
  109. package/lib/browser/debug-watch-manager.d.ts +0 -22
  110. package/lib/browser/debug-watch-manager.d.ts.map +0 -1
  111. package/lib/browser/debug-watch-manager.js +0 -86
  112. package/lib/browser/debug-watch-manager.js.map +0 -1
  113. package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.d.ts +0 -7
  114. package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.d.ts.map +0 -1
  115. package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.js +0 -39
  116. package/lib/browser/disassembly-view/disassembly-view-accessibility-provider.js.map +0 -1
  117. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.d.ts +0 -20
  118. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.d.ts.map +0 -1
  119. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.js +0 -111
  120. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.js.map +0 -1
  121. package/lib/browser/disassembly-view/disassembly-view-contribution.d.ts +0 -25
  122. package/lib/browser/disassembly-view/disassembly-view-contribution.d.ts.map +0 -1
  123. package/lib/browser/disassembly-view/disassembly-view-contribution.js +0 -124
  124. package/lib/browser/disassembly-view/disassembly-view-contribution.js.map +0 -1
  125. package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.d.ts +0 -39
  126. package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.d.ts.map +0 -1
  127. package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.js +0 -213
  128. package/lib/browser/disassembly-view/disassembly-view-instruction-renderer.js.map +0 -1
  129. package/lib/browser/disassembly-view/disassembly-view-table-delegate.d.ts +0 -16
  130. package/lib/browser/disassembly-view/disassembly-view-table-delegate.d.ts.map +0 -1
  131. package/lib/browser/disassembly-view/disassembly-view-table-delegate.js +0 -39
  132. package/lib/browser/disassembly-view/disassembly-view-table-delegate.js.map +0 -1
  133. package/lib/browser/disassembly-view/disassembly-view-utilities.d.ts +0 -38
  134. package/lib/browser/disassembly-view/disassembly-view-utilities.d.ts.map +0 -1
  135. package/lib/browser/disassembly-view/disassembly-view-utilities.js +0 -18
  136. package/lib/browser/disassembly-view/disassembly-view-utilities.js.map +0 -1
  137. package/lib/browser/disassembly-view/disassembly-view-widget.d.ts +0 -61
  138. package/lib/browser/disassembly-view/disassembly-view-widget.d.ts.map +0 -1
  139. package/lib/browser/disassembly-view/disassembly-view-widget.js +0 -446
  140. package/lib/browser/disassembly-view/disassembly-view-widget.js.map +0 -1
  141. package/lib/browser/editor/debug-breakpoint-widget.d.ts +0 -58
  142. package/lib/browser/editor/debug-breakpoint-widget.d.ts.map +0 -1
  143. package/lib/browser/editor/debug-breakpoint-widget.js +0 -270
  144. package/lib/browser/editor/debug-breakpoint-widget.js.map +0 -1
  145. package/lib/browser/editor/debug-editor-model.d.ts +0 -87
  146. package/lib/browser/editor/debug-editor-model.d.ts.map +0 -1
  147. package/lib/browser/editor/debug-editor-model.js +0 -499
  148. package/lib/browser/editor/debug-editor-model.js.map +0 -1
  149. package/lib/browser/editor/debug-editor-service.d.ts +0 -38
  150. package/lib/browser/editor/debug-editor-service.d.ts.map +0 -1
  151. package/lib/browser/editor/debug-editor-service.js +0 -183
  152. package/lib/browser/editor/debug-editor-service.js.map +0 -1
  153. package/lib/browser/editor/debug-editor.d.ts +0 -4
  154. package/lib/browser/editor/debug-editor.d.ts.map +0 -1
  155. package/lib/browser/editor/debug-editor.js +0 -20
  156. package/lib/browser/editor/debug-editor.js.map +0 -1
  157. package/lib/browser/editor/debug-exception-widget.d.ts +0 -30
  158. package/lib/browser/editor/debug-exception-widget.d.ts.map +0 -1
  159. package/lib/browser/editor/debug-exception-widget.js +0 -107
  160. package/lib/browser/editor/debug-exception-widget.js.map +0 -1
  161. package/lib/browser/editor/debug-expression-provider.d.ts +0 -17
  162. package/lib/browser/editor/debug-expression-provider.d.ts.map +0 -1
  163. package/lib/browser/editor/debug-expression-provider.js +0 -107
  164. package/lib/browser/editor/debug-expression-provider.js.map +0 -1
  165. package/lib/browser/editor/debug-hover-source.d.ts +0 -19
  166. package/lib/browser/editor/debug-hover-source.d.ts.map +0 -1
  167. package/lib/browser/editor/debug-hover-source.js +0 -110
  168. package/lib/browser/editor/debug-hover-source.js.map +0 -1
  169. package/lib/browser/editor/debug-hover-widget.d.ts +0 -61
  170. package/lib/browser/editor/debug-hover-widget.d.ts.map +0 -1
  171. package/lib/browser/editor/debug-hover-widget.js +0 -271
  172. package/lib/browser/editor/debug-hover-widget.js.map +0 -1
  173. package/lib/browser/editor/debug-inline-value-decorator.d.ts +0 -20
  174. package/lib/browser/editor/debug-inline-value-decorator.d.ts.map +0 -1
  175. package/lib/browser/editor/debug-inline-value-decorator.js +0 -326
  176. package/lib/browser/editor/debug-inline-value-decorator.js.map +0 -1
  177. package/lib/browser/model/debug-breakpoint.d.ts +0 -48
  178. package/lib/browser/model/debug-breakpoint.d.ts.map +0 -1
  179. package/lib/browser/model/debug-breakpoint.js +0 -111
  180. package/lib/browser/model/debug-breakpoint.js.map +0 -1
  181. package/lib/browser/model/debug-function-breakpoint.d.ts +0 -19
  182. package/lib/browser/model/debug-function-breakpoint.d.ts.map +0 -1
  183. package/lib/browser/model/debug-function-breakpoint.js +0 -93
  184. package/lib/browser/model/debug-function-breakpoint.js.map +0 -1
  185. package/lib/browser/model/debug-instruction-breakpoint.d.ts +0 -15
  186. package/lib/browser/model/debug-instruction-breakpoint.d.ts.map +0 -1
  187. package/lib/browser/model/debug-instruction-breakpoint.js +0 -66
  188. package/lib/browser/model/debug-instruction-breakpoint.js.map +0 -1
  189. package/lib/browser/model/debug-source-breakpoint.d.ts +0 -39
  190. package/lib/browser/model/debug-source-breakpoint.d.ts.map +0 -1
  191. package/lib/browser/model/debug-source-breakpoint.js +0 -219
  192. package/lib/browser/model/debug-source-breakpoint.js.map +0 -1
  193. package/lib/browser/model/debug-source.d.ts +0 -25
  194. package/lib/browser/model/debug-source.d.ts.map +0 -1
  195. package/lib/browser/model/debug-source.js +0 -81
  196. package/lib/browser/model/debug-source.js.map +0 -1
  197. package/lib/browser/model/debug-stack-frame.d.ts +0 -45
  198. package/lib/browser/model/debug-stack-frame.d.ts.map +0 -1
  199. package/lib/browser/model/debug-stack-frame.js +0 -157
  200. package/lib/browser/model/debug-stack-frame.js.map +0 -1
  201. package/lib/browser/model/debug-thread.d.ts +0 -68
  202. package/lib/browser/model/debug-thread.d.ts.map +0 -1
  203. package/lib/browser/model/debug-thread.js +0 -262
  204. package/lib/browser/model/debug-thread.js.map +0 -1
  205. package/lib/browser/view/debug-action.d.ts +0 -18
  206. package/lib/browser/view/debug-action.d.ts.map +0 -1
  207. package/lib/browser/view/debug-action.js +0 -44
  208. package/lib/browser/view/debug-action.js.map +0 -1
  209. package/lib/browser/view/debug-breakpoints-source.d.ts +0 -10
  210. package/lib/browser/view/debug-breakpoints-source.d.ts.map +0 -1
  211. package/lib/browser/view/debug-breakpoints-source.js +0 -63
  212. package/lib/browser/view/debug-breakpoints-source.js.map +0 -1
  213. package/lib/browser/view/debug-breakpoints-widget.d.ts +0 -23
  214. package/lib/browser/view/debug-breakpoints-widget.d.ts.map +0 -1
  215. package/lib/browser/view/debug-breakpoints-widget.js +0 -81
  216. package/lib/browser/view/debug-breakpoints-widget.js.map +0 -1
  217. package/lib/browser/view/debug-configuration-select.d.ts +0 -67
  218. package/lib/browser/view/debug-configuration-select.d.ts.map +0 -1
  219. package/lib/browser/view/debug-configuration-select.js +0 -212
  220. package/lib/browser/view/debug-configuration-select.js.map +0 -1
  221. package/lib/browser/view/debug-configuration-widget.d.ts +0 -33
  222. package/lib/browser/view/debug-configuration-widget.d.ts.map +0 -1
  223. package/lib/browser/view/debug-configuration-widget.js +0 -137
  224. package/lib/browser/view/debug-configuration-widget.js.map +0 -1
  225. package/lib/browser/view/debug-exception-breakpoint.d.ts +0 -15
  226. package/lib/browser/view/debug-exception-breakpoint.d.ts.map +0 -1
  227. package/lib/browser/view/debug-exception-breakpoint.js +0 -62
  228. package/lib/browser/view/debug-exception-breakpoint.js.map +0 -1
  229. package/lib/browser/view/debug-session-widget.d.ts +0 -29
  230. package/lib/browser/view/debug-session-widget.d.ts.map +0 -1
  231. package/lib/browser/view/debug-session-widget.js +0 -127
  232. package/lib/browser/view/debug-session-widget.js.map +0 -1
  233. package/lib/browser/view/debug-stack-frames-source.d.ts +0 -18
  234. package/lib/browser/view/debug-stack-frames-source.d.ts.map +0 -1
  235. package/lib/browser/view/debug-stack-frames-source.js +0 -83
  236. package/lib/browser/view/debug-stack-frames-source.js.map +0 -1
  237. package/lib/browser/view/debug-stack-frames-widget.d.ts +0 -25
  238. package/lib/browser/view/debug-stack-frames-widget.d.ts.map +0 -1
  239. package/lib/browser/view/debug-stack-frames-widget.js +0 -147
  240. package/lib/browser/view/debug-stack-frames-widget.js.map +0 -1
  241. package/lib/browser/view/debug-threads-source.d.ts +0 -9
  242. package/lib/browser/view/debug-threads-source.d.ts.map +0 -1
  243. package/lib/browser/view/debug-threads-source.js +0 -56
  244. package/lib/browser/view/debug-threads-source.js.map +0 -1
  245. package/lib/browser/view/debug-threads-widget.d.ts +0 -27
  246. package/lib/browser/view/debug-threads-widget.d.ts.map +0 -1
  247. package/lib/browser/view/debug-threads-widget.js +0 -139
  248. package/lib/browser/view/debug-threads-widget.js.map +0 -1
  249. package/lib/browser/view/debug-toolbar-widget.d.ts +0 -34
  250. package/lib/browser/view/debug-toolbar-widget.d.ts.map +0 -1
  251. package/lib/browser/view/debug-toolbar-widget.js +0 -139
  252. package/lib/browser/view/debug-toolbar-widget.js.map +0 -1
  253. package/lib/browser/view/debug-variables-source.d.ts +0 -10
  254. package/lib/browser/view/debug-variables-source.d.ts.map +0 -1
  255. package/lib/browser/view/debug-variables-source.js +0 -53
  256. package/lib/browser/view/debug-variables-source.js.map +0 -1
  257. package/lib/browser/view/debug-variables-widget.d.ts +0 -17
  258. package/lib/browser/view/debug-variables-widget.d.ts.map +0 -1
  259. package/lib/browser/view/debug-variables-widget.js +0 -71
  260. package/lib/browser/view/debug-variables-widget.js.map +0 -1
  261. package/lib/browser/view/debug-view-model.d.ts +0 -53
  262. package/lib/browser/view/debug-view-model.d.ts.map +0 -1
  263. package/lib/browser/view/debug-view-model.js +0 -212
  264. package/lib/browser/view/debug-view-model.js.map +0 -1
  265. package/lib/browser/view/debug-watch-expression.d.ts +0 -33
  266. package/lib/browser/view/debug-watch-expression.d.ts.map +0 -1
  267. package/lib/browser/view/debug-watch-expression.js +0 -93
  268. package/lib/browser/view/debug-watch-expression.js.map +0 -1
  269. package/lib/browser/view/debug-watch-source.d.ts +0 -10
  270. package/lib/browser/view/debug-watch-source.d.ts.map +0 -1
  271. package/lib/browser/view/debug-watch-source.js +0 -51
  272. package/lib/browser/view/debug-watch-source.js.map +0 -1
  273. package/lib/browser/view/debug-watch-widget.d.ts +0 -17
  274. package/lib/browser/view/debug-watch-widget.d.ts.map +0 -1
  275. package/lib/browser/view/debug-watch-widget.js +0 -71
  276. package/lib/browser/view/debug-watch-widget.js.map +0 -1
  277. package/lib/browser/view/debug-widget.d.ts +0 -24
  278. package/lib/browser/view/debug-widget.d.ts.map +0 -1
  279. package/lib/browser/view/debug-widget.js +0 -101
  280. package/lib/browser/view/debug-widget.js.map +0 -1
  281. package/lib/common/debug-adapter-contribution-registry.d.ts +0 -60
  282. package/lib/common/debug-adapter-contribution-registry.d.ts.map +0 -1
  283. package/lib/common/debug-adapter-contribution-registry.js +0 -205
  284. package/lib/common/debug-adapter-contribution-registry.js.map +0 -1
  285. package/lib/common/debug-adapter-session.d.ts +0 -19
  286. package/lib/common/debug-adapter-session.d.ts.map +0 -1
  287. package/lib/common/debug-adapter-session.js +0 -79
  288. package/lib/common/debug-adapter-session.js.map +0 -1
  289. package/lib/common/debug-common.d.ts +0 -2
  290. package/lib/common/debug-common.d.ts.map +0 -1
  291. package/lib/common/debug-common.js +0 -21
  292. package/lib/common/debug-common.js.map +0 -1
  293. package/lib/common/debug-compound.d.ts +0 -15
  294. package/lib/common/debug-compound.d.ts.map +0 -1
  295. package/lib/common/debug-compound.js +0 -28
  296. package/lib/common/debug-compound.js.map +0 -1
  297. package/lib/common/debug-configuration.d.ts +0 -77
  298. package/lib/common/debug-configuration.d.ts.map +0 -1
  299. package/lib/common/debug-configuration.js +0 -32
  300. package/lib/common/debug-configuration.js.map +0 -1
  301. package/lib/common/debug-model.d.ts +0 -153
  302. package/lib/common/debug-model.d.ts.map +0 -1
  303. package/lib/common/debug-model.js +0 -36
  304. package/lib/common/debug-model.js.map +0 -1
  305. package/lib/common/debug-preferences.d.ts +0 -18
  306. package/lib/common/debug-preferences.d.ts.map +0 -1
  307. package/lib/common/debug-preferences.js +0 -89
  308. package/lib/common/debug-preferences.js.map +0 -1
  309. package/lib/common/debug-service.d.ts +0 -124
  310. package/lib/common/debug-service.d.ts.map +0 -1
  311. package/lib/common/debug-service.js +0 -67
  312. package/lib/common/debug-service.js.map +0 -1
  313. package/lib/common/debug-uri-utils.d.ts +0 -24
  314. package/lib/common/debug-uri-utils.d.ts.map +0 -1
  315. package/lib/common/debug-uri-utils.js +0 -27
  316. package/lib/common/debug-uri-utils.js.map +0 -1
  317. package/lib/common/inline-debug-adapter.d.ts +0 -19
  318. package/lib/common/inline-debug-adapter.d.ts.map +0 -1
  319. package/lib/common/inline-debug-adapter.js +0 -45
  320. package/lib/common/inline-debug-adapter.js.map +0 -1
  321. package/lib/common/launch-preferences.d.ts +0 -6
  322. package/lib/common/launch-preferences.d.ts.map +0 -1
  323. package/lib/common/launch-preferences.js +0 -37
  324. package/lib/common/launch-preferences.js.map +0 -1
  325. package/lib/node/debug-adapter-factory.d.ts +0 -20
  326. package/lib/node/debug-adapter-factory.d.ts.map +0 -1
  327. package/lib/node/debug-adapter-factory.js +0 -89
  328. package/lib/node/debug-adapter-factory.js.map +0 -1
  329. package/lib/node/debug-adapter-session-manager.d.ts +0 -38
  330. package/lib/node/debug-adapter-session-manager.d.ts.map +0 -1
  331. package/lib/node/debug-adapter-session-manager.js +0 -104
  332. package/lib/node/debug-adapter-session-manager.js.map +0 -1
  333. package/lib/node/debug-backend-module.d.ts +0 -4
  334. package/lib/node/debug-backend-module.d.ts.map +0 -1
  335. package/lib/node/debug-backend-module.js +0 -45
  336. package/lib/node/debug-backend-module.js.map +0 -1
  337. package/lib/node/debug-service-impl.d.ts +0 -31
  338. package/lib/node/debug-service-impl.d.ts.map +0 -1
  339. package/lib/node/debug-service-impl.js +0 -117
  340. package/lib/node/debug-service-impl.js.map +0 -1
  341. package/lib/node/stream-debug-adapter.d.ts +0 -41
  342. package/lib/node/stream-debug-adapter.d.ts.map +0 -1
  343. package/lib/node/stream-debug-adapter.js +0 -113
  344. package/lib/node/stream-debug-adapter.js.map +0 -1
@@ -0,0 +1,79 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2025 EclipseSource GmbH and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { nls } from '@theia/core';
18
+ import * as React from '@theia/core/shared/react';
19
+ import { BreakpointManager } from '../breakpoint/breakpoint-manager';
20
+ import { DataBreakpoint } from '../breakpoint/breakpoint-marker';
21
+ import { DebugBreakpoint, DebugBreakpointDecoration, DebugBreakpointOptions } from './debug-breakpoint';
22
+
23
+ export class DebugDataBreakpoint extends DebugBreakpoint<DataBreakpoint> {
24
+ constructor(readonly origin: DataBreakpoint, options: DebugBreakpointOptions) {
25
+ super(BreakpointManager.DATA_URI, options);
26
+ }
27
+
28
+ setEnabled(enabled: boolean): void {
29
+ if (enabled !== this.origin.enabled) {
30
+ this.breakpoints.updateDataBreakpoint(this.origin.id, { enabled });
31
+ }
32
+ }
33
+
34
+ protected override isEnabled(): boolean {
35
+ return super.isEnabled() && this.isSupported();
36
+ }
37
+
38
+ protected isSupported(): boolean {
39
+ return Boolean(this.session?.capabilities.supportsDataBreakpoints);
40
+ }
41
+
42
+ remove(): void {
43
+ this.breakpoints.removeDataBreakpoint(this.origin.id);
44
+ }
45
+
46
+ protected doRender(): React.ReactNode {
47
+ return <span className="line-info theia-data-breakpoint" title={this.origin.info.description}>
48
+ <span className="name">{this.origin.info.description}</span>
49
+ <span className="theia-TreeNodeInfo theia-access-type" >{this.getAccessType()}</span>
50
+ </span>;
51
+ }
52
+
53
+ protected getAccessType(): string {
54
+ switch (this.origin.raw.accessType) {
55
+ case 'read': return 'Read';
56
+ case 'write': return 'Write';
57
+ default: return 'Access';
58
+ }
59
+ }
60
+
61
+ protected getBreakpointDecoration(message?: string[]): DebugBreakpointDecoration {
62
+ if (!this.isSupported()) {
63
+ return {
64
+ className: 'codicon-debug-breakpoint-unsupported',
65
+ message: message ?? [nls.localize('theia/debug/data-breakpoint', 'Data Breakpoint')],
66
+ };
67
+ }
68
+ if (this.origin.raw.condition || this.origin.raw.hitCondition) {
69
+ return {
70
+ className: 'codicon-debug-breakpoint-conditional',
71
+ message: message || [nls.localize('theia/debug/conditionalBreakpoint', 'Conditional Breakpoint')]
72
+ };
73
+ }
74
+ return {
75
+ className: 'codicon-debug-breakpoint-data',
76
+ message: message || [nls.localize('theia/debug/data-breakpoint', 'Data Breakpoint')]
77
+ };
78
+ }
79
+ }
@@ -71,6 +71,10 @@
71
71
  border-radius: 2px;
72
72
  }
73
73
 
74
+ .theia-data-breakpoint .theia-access-type {
75
+ margin-left: var(--theia-ui-padding);
76
+ }
77
+
74
78
  .theia-source-breakpoint > .theia-input {
75
79
  min-height: auto;
76
80
  }
@@ -39,15 +39,9 @@ export class DebugBreakpointsSource extends TreeSource {
39
39
  for (const exceptionBreakpoint of this.breakpoints.getExceptionBreakpoints()) {
40
40
  yield new DebugExceptionBreakpoint(exceptionBreakpoint, this.breakpoints);
41
41
  }
42
- for (const functionBreakpoint of this.model.functionBreakpoints) {
43
- yield functionBreakpoint;
44
- }
45
- for (const instructionBreakpoint of this.model.instructionBreakpoints) {
46
- yield instructionBreakpoint;
47
- }
48
- for (const breakpoint of this.model.breakpoints) {
49
- yield breakpoint;
50
- }
42
+ yield* this.model.dataBreakpoints;
43
+ yield* this.model.functionBreakpoints;
44
+ yield* this.model.instructionBreakpoints;
45
+ yield* this.model.breakpoints;
51
46
  }
52
-
53
47
  }
@@ -122,8 +122,12 @@ export class DebugStackFramesWidget extends SourceTreeWidget {
122
122
  }
123
123
 
124
124
  protected override tapNode(node?: TreeNode): void {
125
- if (TreeElementNode.is(node) && node.element instanceof LoadMoreStackFrames) {
126
- node.element.open();
125
+ if (TreeElementNode.is(node)) {
126
+ if (node.element instanceof LoadMoreStackFrames) {
127
+ node.element.open();
128
+ } else if (node.element instanceof DebugStackFrame) {
129
+ node.element.open({ preview: true });
130
+ }
127
131
  }
128
132
  super.tapNode(node);
129
133
  }
@@ -15,11 +15,16 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { injectable, inject, postConstruct, interfaces, Container } from '@theia/core/shared/inversify';
18
- import { MenuPath } from '@theia/core/lib/common';
19
- import { SourceTreeWidget } from '@theia/core/lib/browser/source-tree';
18
+ import { MenuPath, Disposable, CommandRegistry, MenuModelRegistry, DisposableCollection, Command } from '@theia/core/lib/common';
19
+ import { SourceTreeWidget, TreeElementNode } from '@theia/core/lib/browser/source-tree';
20
20
  import { DebugVariablesSource } from './debug-variables-source';
21
21
  import { DebugViewModel } from './debug-view-model';
22
22
  import { nls } from '@theia/core/lib/common/nls';
23
+ import { MouseEvent } from '@theia/core/shared/react';
24
+ import { SelectableTreeNode, TreeNode, TreeSelection } from '@theia/core/lib/browser';
25
+ import { DebugVariable } from '../console/debug-console-items';
26
+ import { BreakpointManager } from '../breakpoint/breakpoint-manager';
27
+ import { DataBreakpoint, DataBreakpointSource, DataBreakpointSourceType } from '../breakpoint/breakpoint-marker';
23
28
 
24
29
  @injectable()
25
30
  export class DebugVariablesWidget extends SourceTreeWidget {
@@ -27,6 +32,7 @@ export class DebugVariablesWidget extends SourceTreeWidget {
27
32
  static CONTEXT_MENU: MenuPath = ['debug-variables-context-menu'];
28
33
  static EDIT_MENU: MenuPath = [...DebugVariablesWidget.CONTEXT_MENU, 'a_edit'];
29
34
  static WATCH_MENU: MenuPath = [...DebugVariablesWidget.CONTEXT_MENU, 'b_watch'];
35
+ static DATA_BREAKPOINT_MENU: MenuPath = [...DebugVariablesWidget.CONTEXT_MENU, 'c_data_breakpoints'];
30
36
  static FACTORY_ID = 'debug:variables';
31
37
  static override createContainer(parent: interfaces.Container): Container {
32
38
  const child = SourceTreeWidget.createContainer(parent, {
@@ -49,6 +55,15 @@ export class DebugVariablesWidget extends SourceTreeWidget {
49
55
  @inject(DebugVariablesSource)
50
56
  protected readonly variables: DebugVariablesSource;
51
57
 
58
+ @inject(CommandRegistry)
59
+ protected readonly commandRegistry: CommandRegistry;
60
+
61
+ @inject(MenuModelRegistry)
62
+ protected readonly menuRegistry: MenuModelRegistry;
63
+
64
+ @inject(BreakpointManager)
65
+ protected readonly breakpointManager: BreakpointManager;
66
+
52
67
  @postConstruct()
53
68
  protected override init(): void {
54
69
  super.init();
@@ -58,4 +73,86 @@ export class DebugVariablesWidget extends SourceTreeWidget {
58
73
  this.source = this.variables;
59
74
  }
60
75
 
76
+ protected override handleContextMenuEvent(node: TreeNode | undefined, event: MouseEvent<HTMLElement>): void {
77
+ this.doHandleContextMenuEvent(node, event);
78
+ }
79
+
80
+ protected async doHandleContextMenuEvent(node: TreeNode | undefined, event: MouseEvent<HTMLElement>): Promise<void> {
81
+ event.stopPropagation();
82
+ event.preventDefault();
83
+ if (!SelectableTreeNode.is(node) || !TreeElementNode.is(node)) { return; }
84
+ // Keep the selection for the context menu, if the widget support multi-selection and the right click happens on an already selected node.
85
+ if (!this.props.multiSelect || !node.selected) {
86
+ const type = !!this.props.multiSelect && this.hasCtrlCmdMask(event) ? TreeSelection.SelectionType.TOGGLE : TreeSelection.SelectionType.DEFAULT;
87
+ this.model.addSelection({ node, type });
88
+ }
89
+ this.focusService.setFocus(node);
90
+ const contextMenuPath = this.props.contextMenuPath;
91
+ if (contextMenuPath) {
92
+ const { x, y } = event.nativeEvent;
93
+ const args = this.toContextMenuArgs(node);
94
+ const target = event.currentTarget;
95
+ const toDisposeOnHide = await this.getVariableCommands(node);
96
+ setTimeout(() => this.contextMenuRenderer.render({
97
+ menuPath: contextMenuPath,
98
+ context: target,
99
+ anchor: { x, y },
100
+ args,
101
+ onHide: () => toDisposeOnHide.dispose()
102
+ }), 10);
103
+ }
104
+ }
105
+
106
+ protected async getVariableCommands(node: TreeElementNode): Promise<Disposable> {
107
+ const selectedElement = node.element;
108
+ const { viewModel: { currentSession } } = this;
109
+ if (!currentSession?.capabilities.supportsDataBreakpoints || !(selectedElement instanceof DebugVariable)) {
110
+ return Disposable.NULL;
111
+ }
112
+ const { name, parent: { reference } } = selectedElement;
113
+ const dataBreakpointInfo = (await currentSession.sendRequest('dataBreakpointInfo', { name, variablesReference: reference })).body;
114
+ // eslint-disable-next-line no-null/no-null
115
+ if (dataBreakpointInfo.dataId === null) {
116
+ return Disposable.NULL;
117
+ }
118
+ const source: DataBreakpointSource = { type: DataBreakpointSourceType.Variable, variable: name };
119
+ return new DisposableCollection(
120
+ this.commandRegistry.registerCommand(Command.toDefaultLocalizedCommand({
121
+ id: `break-on-access:${currentSession.id}:${name}`,
122
+ label: 'Break on Value Access'
123
+ }), {
124
+ execute: () => this.breakpointManager.addDataBreakpoint(DataBreakpoint.create(
125
+ { accessType: 'readWrite', dataId: dataBreakpointInfo.dataId! },
126
+ dataBreakpointInfo,
127
+ source
128
+ )),
129
+ isEnabled: () => !!dataBreakpointInfo.accessTypes?.includes('readWrite'),
130
+ }),
131
+ this.menuRegistry.registerMenuAction(DebugVariablesWidget.DATA_BREAKPOINT_MENU, { commandId: `break-on-access:${currentSession.id}:${name}`, order: 'c' }),
132
+ this.commandRegistry.registerCommand(Command.toDefaultLocalizedCommand({
133
+ id: `break-on-read:${currentSession.id}:${name}`,
134
+ label: 'Break on Value Read'
135
+ }), {
136
+ execute: () => this.breakpointManager.addDataBreakpoint(DataBreakpoint.create(
137
+ { accessType: 'read', dataId: dataBreakpointInfo.dataId! },
138
+ dataBreakpointInfo,
139
+ source
140
+ )),
141
+ isEnabled: () => !!dataBreakpointInfo.accessTypes?.includes('read'),
142
+ }),
143
+ this.menuRegistry.registerMenuAction(DebugVariablesWidget.DATA_BREAKPOINT_MENU, { commandId: `break-on-read:${currentSession.id}:${name}`, order: 'a' }),
144
+ this.commandRegistry.registerCommand(Command.toDefaultLocalizedCommand({
145
+ id: `break-on-write:${currentSession.id}:${name}`,
146
+ label: 'Break on Value Change'
147
+ }), {
148
+ execute: () => this.breakpointManager.addDataBreakpoint(DataBreakpoint.create(
149
+ { accessType: 'write', dataId: dataBreakpointInfo.dataId! },
150
+ dataBreakpointInfo,
151
+ source
152
+ )),
153
+ isEnabled: () => !!dataBreakpointInfo.accessTypes?.includes('write'),
154
+ }),
155
+ this.menuRegistry.registerMenuAction(DebugVariablesWidget.DATA_BREAKPOINT_MENU, { commandId: `break-on-write:${currentSession.id}:${name}`, order: 'b' }),
156
+ );
157
+ }
61
158
  }
@@ -28,6 +28,7 @@ import { DebugWatchManager } from '../debug-watch-manager';
28
28
  import { DebugFunctionBreakpoint } from '../model/debug-function-breakpoint';
29
29
  import { DebugInstructionBreakpoint } from '../model/debug-instruction-breakpoint';
30
30
  import { DebugSessionOptionsBase } from '../debug-session-options';
31
+ import { DebugDataBreakpoint } from '../model/debug-data-breakpoint';
31
32
 
32
33
  @injectable()
33
34
  export class DebugViewModel implements Disposable {
@@ -137,6 +138,10 @@ export class DebugViewModel implements Disposable {
137
138
  return this.manager.getInstructionBreakpoints(this.currentSession);
138
139
  }
139
140
 
141
+ get dataBreakpoints(): DebugDataBreakpoint[] {
142
+ return this.manager.getDataBreakpoints(this.currentSession);
143
+ }
144
+
140
145
  async start(options: Partial<Pick<DebugSessionOptionsBase, 'startedByUser'>> = {}): Promise<void> {
141
146
  const { session } = this;
142
147
  if (!session) {
@@ -1,71 +0,0 @@
1
- import { Emitter } from '@theia/core/lib/common';
2
- import { StorageService } from '@theia/core/lib/browser';
3
- import { Marker } from '@theia/markers/lib/common/marker';
4
- import { MarkerManager } from '@theia/markers/lib/browser/marker-manager';
5
- import URI from '@theia/core/lib/common/uri';
6
- import { SourceBreakpoint, ExceptionBreakpoint, FunctionBreakpoint, BaseBreakpoint, InstructionBreakpoint } from './breakpoint-marker';
7
- export interface BreakpointsChangeEvent<T extends BaseBreakpoint> {
8
- uri: URI;
9
- added: T[];
10
- removed: T[];
11
- changed: T[];
12
- }
13
- export type SourceBreakpointsChangeEvent = BreakpointsChangeEvent<SourceBreakpoint>;
14
- export type FunctionBreakpointsChangeEvent = BreakpointsChangeEvent<FunctionBreakpoint>;
15
- export type InstructionBreakpointsChangeEvent = BreakpointsChangeEvent<InstructionBreakpoint>;
16
- export declare class BreakpointManager extends MarkerManager<SourceBreakpoint> {
17
- static EXCEPTION_URI: URI;
18
- static FUNCTION_URI: URI;
19
- static INSTRUCTION_URI: URI;
20
- protected readonly owner = "breakpoint";
21
- protected readonly storage: StorageService;
22
- getKind(): string;
23
- protected readonly onDidChangeBreakpointsEmitter: Emitter<SourceBreakpointsChangeEvent>;
24
- readonly onDidChangeBreakpoints: import("@theia/core/lib/common").Event<SourceBreakpointsChangeEvent>;
25
- protected readonly onDidChangeFunctionBreakpointsEmitter: Emitter<FunctionBreakpointsChangeEvent>;
26
- readonly onDidChangeFunctionBreakpoints: import("@theia/core/lib/common").Event<FunctionBreakpointsChangeEvent>;
27
- protected readonly onDidChangeInstructionBreakpointsEmitter: Emitter<InstructionBreakpointsChangeEvent>;
28
- readonly onDidChangeInstructionBreakpoints: import("@theia/core/lib/common").Event<InstructionBreakpointsChangeEvent>;
29
- setMarkers(uri: URI, owner: string, newMarkers: SourceBreakpoint[]): Marker<SourceBreakpoint>[];
30
- getLineBreakpoints(uri: URI, line: number): SourceBreakpoint[];
31
- getInlineBreakpoint(uri: URI, line: number, column: number): SourceBreakpoint | undefined;
32
- getBreakpoints(uri?: URI): SourceBreakpoint[];
33
- setBreakpoints(uri: URI, breakpoints: SourceBreakpoint[]): void;
34
- addBreakpoint(breakpoint: SourceBreakpoint): boolean;
35
- enableAllBreakpoints(enabled: boolean): void;
36
- protected _breakpointsEnabled: boolean;
37
- get breakpointsEnabled(): boolean;
38
- set breakpointsEnabled(breakpointsEnabled: boolean);
39
- protected readonly exceptionBreakpoints: Map<string, ExceptionBreakpoint>;
40
- getExceptionBreakpoint(filter: string): ExceptionBreakpoint | undefined;
41
- getExceptionBreakpoints(): IterableIterator<ExceptionBreakpoint>;
42
- setExceptionBreakpoints(exceptionBreakpoints: ExceptionBreakpoint[]): void;
43
- toggleExceptionBreakpoint(filter: string): void;
44
- updateExceptionBreakpoint(filter: string, options: Partial<Pick<ExceptionBreakpoint, 'condition' | 'enabled'>>): void;
45
- protected functionBreakpoints: FunctionBreakpoint[];
46
- getFunctionBreakpoints(): FunctionBreakpoint[];
47
- setFunctionBreakpoints(functionBreakpoints: FunctionBreakpoint[]): void;
48
- protected instructionBreakpoints: InstructionBreakpoint[];
49
- getInstructionBreakpoints(): ReadonlyArray<InstructionBreakpoint>;
50
- hasBreakpoints(): boolean;
51
- protected setInstructionBreakpoints(newBreakpoints: InstructionBreakpoint[]): void;
52
- addInstructionBreakpoint(address: string, offset: number, condition?: string, hitCondition?: string): void;
53
- updateInstructionBreakpoint(id: string, options: Partial<Pick<InstructionBreakpoint, 'condition' | 'hitCondition' | 'enabled'>>): void;
54
- removeInstructionBreakpoint(address?: string): void;
55
- clearInstructionBreakpoints(): void;
56
- removeBreakpoints(): void;
57
- load(): Promise<void>;
58
- save(): void;
59
- }
60
- export declare namespace BreakpointManager {
61
- interface Data {
62
- breakpointsEnabled: boolean;
63
- breakpoints: {
64
- [uri: string]: SourceBreakpoint[];
65
- };
66
- exceptionBreakpoints?: ExceptionBreakpoint[];
67
- functionBreakpoints?: FunctionBreakpoint[];
68
- instructionBreakpoints?: InstructionBreakpoint[];
69
- }
70
- }
71
- //# sourceMappingURL=breakpoint-manager.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"breakpoint-manager.d.ts","sourceRoot":"","sources":["../../../src/browser/breakpoint/breakpoint-manager.ts"],"names":[],"mappings":"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"}