@opensumi/ide-debug 2.21.13-rc-1673418254.0 → 2.21.13

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 (334) hide show
  1. package/lib/browser/breakpoint/breakpoint-manager.js.map +1 -1
  2. package/lib/browser/breakpoint/breakpoint-marker.d.ts +1 -1
  3. package/lib/browser/breakpoint/breakpoint-marker.d.ts.map +1 -1
  4. package/lib/browser/breakpoint/breakpoint-marker.js +2 -3
  5. package/lib/browser/breakpoint/breakpoint-marker.js.map +1 -1
  6. package/lib/browser/contextkeys/debug-call-stack-item-type-key.d.ts +1 -1
  7. package/lib/browser/contextkeys/debug-call-stack-item-type-key.d.ts.map +1 -1
  8. package/lib/browser/contextkeys/debug-contextkey.service.js.map +1 -1
  9. package/lib/browser/debug-configuration-manager.d.ts +2 -2
  10. package/lib/browser/debug-configuration-manager.d.ts.map +1 -1
  11. package/lib/browser/debug-configuration-manager.js +1 -1
  12. package/lib/browser/debug-configuration-manager.js.map +1 -1
  13. package/lib/browser/debug-contribution.d.ts +147 -2
  14. package/lib/browser/debug-contribution.d.ts.map +1 -1
  15. package/lib/browser/debug-contribution.js +200 -50
  16. package/lib/browser/debug-contribution.js.map +1 -1
  17. package/lib/browser/debug-exception-widget.js.map +1 -1
  18. package/lib/browser/debug-link-detector.js.map +1 -1
  19. package/lib/browser/debug-memory.js +4 -4
  20. package/lib/browser/debug-memory.js.map +1 -1
  21. package/lib/browser/debug-preferences.d.ts +1 -1
  22. package/lib/browser/debug-preferences.d.ts.map +1 -1
  23. package/lib/browser/debug-progress.service.js.map +1 -1
  24. package/lib/browser/debug-schema-updater.js.map +1 -1
  25. package/lib/browser/debug-service.js.map +1 -1
  26. package/lib/browser/debug-session-connection.d.ts +3 -2
  27. package/lib/browser/debug-session-connection.d.ts.map +1 -1
  28. package/lib/browser/debug-session-connection.js.map +1 -1
  29. package/lib/browser/debug-session-contribution.js.map +1 -1
  30. package/lib/browser/debug-session-manager.d.ts +4 -3
  31. package/lib/browser/debug-session-manager.d.ts.map +1 -1
  32. package/lib/browser/debug-session-manager.js +8 -7
  33. package/lib/browser/debug-session-manager.js.map +1 -1
  34. package/lib/browser/debug-session.d.ts +4 -3
  35. package/lib/browser/debug-session.d.ts.map +1 -1
  36. package/lib/browser/debug-session.js +11 -15
  37. package/lib/browser/debug-session.js.map +1 -1
  38. package/lib/browser/debugUtils.js +4 -4
  39. package/lib/browser/debugUtils.js.map +1 -1
  40. package/lib/browser/editor/debug-breakpoint-widget.js.map +1 -1
  41. package/lib/browser/editor/debug-breakpoint-zone-widget.js +7 -7
  42. package/lib/browser/editor/debug-breakpoint-zone-widget.js.map +1 -1
  43. package/lib/browser/editor/debug-breakpoint.module.less +4 -3
  44. package/lib/browser/editor/debug-editor-contribution.d.ts +2 -2
  45. package/lib/browser/editor/debug-editor-contribution.d.ts.map +1 -1
  46. package/lib/browser/editor/debug-editor-contribution.js +4 -3
  47. package/lib/browser/editor/debug-editor-contribution.js.map +1 -1
  48. package/lib/browser/editor/debug-expression-provider.js.map +1 -1
  49. package/lib/browser/editor/debug-hover-model.js.map +1 -1
  50. package/lib/browser/editor/debug-hover-source.d.ts +1 -1
  51. package/lib/browser/editor/debug-hover-source.d.ts.map +1 -1
  52. package/lib/browser/editor/debug-hover-source.js.map +1 -1
  53. package/lib/browser/editor/debug-hover-tree.model.service.js.map +1 -1
  54. package/lib/browser/editor/debug-hover-widget.js.map +1 -1
  55. package/lib/browser/editor/debug-model-manager.d.ts +9 -2
  56. package/lib/browser/editor/debug-model-manager.d.ts.map +1 -1
  57. package/lib/browser/editor/debug-model-manager.js +15 -8
  58. package/lib/browser/editor/debug-model-manager.js.map +1 -1
  59. package/lib/browser/editor/debug-model.d.ts +2 -2
  60. package/lib/browser/editor/debug-model.d.ts.map +1 -1
  61. package/lib/browser/editor/debug-model.js +27 -27
  62. package/lib/browser/editor/debug-model.js.map +1 -1
  63. package/lib/browser/editor/debug-run-to-cursor.service.js +7 -7
  64. package/lib/browser/editor/debug-run-to-cursor.service.js.map +1 -1
  65. package/lib/browser/editor/evaluatable-expression.js.map +1 -1
  66. package/lib/browser/index.d.ts +14 -0
  67. package/lib/browser/index.d.ts.map +1 -1
  68. package/lib/browser/index.js +24 -8
  69. package/lib/browser/index.js.map +1 -1
  70. package/lib/browser/markers/marker-manager.js.map +1 -1
  71. package/lib/browser/model/debug-source.d.ts +3 -3
  72. package/lib/browser/model/debug-source.d.ts.map +1 -1
  73. package/lib/browser/model/debug-source.js.map +1 -1
  74. package/lib/browser/model/debug-thread.d.ts +1 -1
  75. package/lib/browser/model/debug-thread.d.ts.map +1 -1
  76. package/lib/browser/model/debug-watch.d.ts.map +1 -1
  77. package/lib/browser/model/debug-watch.js +2 -1
  78. package/lib/browser/model/debug-watch.js.map +1 -1
  79. package/lib/browser/preferences/launch-folder-preference-provider.d.ts +2 -2
  80. package/lib/browser/preferences/launch-folder-preference-provider.d.ts.map +1 -1
  81. package/lib/browser/preferences/launch-folder-preference-provider.js +2 -2
  82. package/lib/browser/preferences/launch-folder-preference-provider.js.map +1 -1
  83. package/lib/browser/preferences/launch-preferences-contribution.js.map +1 -1
  84. package/lib/browser/tree/debug-console-tree-node.define.js +6 -6
  85. package/lib/browser/tree/debug-console-tree-node.define.js.map +1 -1
  86. package/lib/browser/tree/debug-tree-node.define.js +18 -18
  87. package/lib/browser/tree/debug-tree-node.define.js.map +1 -1
  88. package/lib/browser/view/breakpoints/debug-breakpoints.service.js +3 -3
  89. package/lib/browser/view/breakpoints/debug-breakpoints.service.js.map +1 -1
  90. package/lib/browser/view/configuration/debug-configuration.module.less +5 -5
  91. package/lib/browser/view/configuration/debug-configuration.service.d.ts +2 -1
  92. package/lib/browser/view/configuration/debug-configuration.service.d.ts.map +1 -1
  93. package/lib/browser/view/configuration/debug-configuration.service.js.map +1 -1
  94. package/lib/browser/view/configuration/debug-configuration.view.d.ts.map +1 -1
  95. package/lib/browser/view/configuration/debug-configuration.view.js +1 -1
  96. package/lib/browser/view/configuration/debug-configuration.view.js.map +1 -1
  97. package/lib/browser/view/configuration/debug-toolbar.service.js.map +1 -1
  98. package/lib/browser/view/configuration/debug-toolbar.view.js +2 -2
  99. package/lib/browser/view/configuration/debug-toolbar.view.js.map +1 -1
  100. package/lib/browser/view/console/debug-console-filter.model.js.map +1 -1
  101. package/lib/browser/view/console/debug-console-filter.service.js.map +1 -1
  102. package/lib/browser/view/console/debug-console-model.js.map +1 -1
  103. package/lib/browser/view/console/debug-console-session.d.ts +2 -3
  104. package/lib/browser/view/console/debug-console-session.d.ts.map +1 -1
  105. package/lib/browser/view/console/debug-console-session.js.map +1 -1
  106. package/lib/browser/view/console/debug-console-tree.model.service.d.ts +1 -1
  107. package/lib/browser/view/console/debug-console-tree.model.service.d.ts.map +1 -1
  108. package/lib/browser/view/console/debug-console-tree.model.service.js +3 -5
  109. package/lib/browser/view/console/debug-console-tree.model.service.js.map +1 -1
  110. package/lib/browser/view/console/debug-console.contribution.d.ts.map +1 -1
  111. package/lib/browser/view/console/debug-console.contribution.js +23 -21
  112. package/lib/browser/view/console/debug-console.contribution.js.map +1 -1
  113. package/lib/browser/view/console/debug-console.module.less +3 -2
  114. package/lib/browser/view/console/debug-console.service.js +7 -7
  115. package/lib/browser/view/console/debug-console.service.js.map +1 -1
  116. package/lib/browser/view/console/debug-console.view.d.ts +1 -1
  117. package/lib/browser/view/console/debug-console.view.d.ts.map +1 -1
  118. package/lib/browser/view/console/debug-console.view.js +3 -15
  119. package/lib/browser/view/console/debug-console.view.js.map +1 -1
  120. package/lib/browser/view/debug-view-model.js.map +1 -1
  121. package/lib/browser/view/frames/debug-call-stack-frame.view.d.ts.map +1 -1
  122. package/lib/browser/view/frames/debug-call-stack-frame.view.js +24 -25
  123. package/lib/browser/view/frames/debug-call-stack-frame.view.js.map +1 -1
  124. package/lib/browser/view/frames/debug-call-stack-session.view.d.ts.map +1 -1
  125. package/lib/browser/view/frames/debug-call-stack-session.view.js +5 -8
  126. package/lib/browser/view/frames/debug-call-stack-session.view.js.map +1 -1
  127. package/lib/browser/view/frames/debug-call-stack-thread.view.d.ts.map +1 -1
  128. package/lib/browser/view/frames/debug-call-stack-thread.view.js +7 -12
  129. package/lib/browser/view/frames/debug-call-stack-thread.view.js.map +1 -1
  130. package/lib/browser/view/frames/debug-call-stack.contribution.js +5 -5
  131. package/lib/browser/view/frames/debug-call-stack.contribution.js.map +1 -1
  132. package/lib/browser/view/frames/debug-call-stack.service.js.map +1 -1
  133. package/lib/browser/view/variables/debug-variables-model.js.map +1 -1
  134. package/lib/browser/view/variables/debug-variables-tree.model.service.d.ts +1 -1
  135. package/lib/browser/view/variables/debug-variables-tree.model.service.d.ts.map +1 -1
  136. package/lib/browser/view/variables/debug-variables-tree.model.service.js +3 -5
  137. package/lib/browser/view/variables/debug-variables-tree.model.service.js.map +1 -1
  138. package/lib/browser/view/variables/debug-variables.contribution.d.ts.map +1 -1
  139. package/lib/browser/view/variables/debug-variables.contribution.js +13 -12
  140. package/lib/browser/view/variables/debug-variables.contribution.js.map +1 -1
  141. package/lib/browser/view/variables/debug-variables.module.less +11 -2
  142. package/lib/browser/view/variables/debug-variables.view.d.ts +1 -1
  143. package/lib/browser/view/variables/debug-variables.view.d.ts.map +1 -1
  144. package/lib/browser/view/variables/debug-variables.view.js +1 -1
  145. package/lib/browser/view/variables/debug-variables.view.js.map +1 -1
  146. package/lib/browser/view/watch/debug-watch-model.js.map +1 -1
  147. package/lib/browser/view/watch/debug-watch-tree.model.service.d.ts +2 -2
  148. package/lib/browser/view/watch/debug-watch-tree.model.service.d.ts.map +1 -1
  149. package/lib/browser/view/watch/debug-watch-tree.model.service.js +3 -5
  150. package/lib/browser/view/watch/debug-watch-tree.model.service.js.map +1 -1
  151. package/lib/browser/view/watch/debug-watch.contribution.d.ts.map +1 -1
  152. package/lib/browser/view/watch/debug-watch.contribution.js +19 -21
  153. package/lib/browser/view/watch/debug-watch.contribution.js.map +1 -1
  154. package/lib/browser/view/watch/debug-watch.module.less +12 -2
  155. package/lib/browser/view/watch/debug-watch.view.d.ts +1 -1
  156. package/lib/browser/view/watch/debug-watch.view.d.ts.map +1 -1
  157. package/lib/browser/view/watch/debug-watch.view.js +1 -1
  158. package/lib/browser/view/watch/debug-watch.view.js.map +1 -1
  159. package/lib/common/debug-breakpoint.d.ts +3 -3
  160. package/lib/common/debug-breakpoint.d.ts.map +1 -1
  161. package/lib/common/debug-configuration.d.ts +1 -1
  162. package/lib/common/debug-configuration.d.ts.map +1 -1
  163. package/lib/common/debug-editor.d.ts +1 -1
  164. package/lib/common/debug-editor.d.ts.map +1 -1
  165. package/lib/common/debug-model.d.ts +4 -19
  166. package/lib/common/debug-model.d.ts.map +1 -1
  167. package/lib/common/debug-model.js +6 -14
  168. package/lib/common/debug-model.js.map +1 -1
  169. package/lib/common/debug-service.d.ts +1 -1
  170. package/lib/common/debug-service.d.ts.map +1 -1
  171. package/lib/common/debug-session.d.ts +1 -1
  172. package/lib/common/debug-session.d.ts.map +1 -1
  173. package/lib/common/index.d.ts +0 -2
  174. package/lib/common/index.d.ts.map +1 -1
  175. package/lib/common/index.js +0 -2
  176. package/lib/common/index.js.map +1 -1
  177. package/lib/common/inline-values.d.ts +1 -1
  178. package/lib/common/inline-values.d.ts.map +1 -1
  179. package/lib/common/terminal.js +10 -10
  180. package/lib/common/terminal.js.map +1 -1
  181. package/package.json +26 -27
  182. package/lib/common/commands.d.ts +0 -46
  183. package/lib/common/commands.d.ts.map +0 -1
  184. package/lib/common/commands.js +0 -149
  185. package/lib/common/commands.js.map +0 -1
  186. package/lib/common/debug-console.d.ts +0 -18
  187. package/lib/common/debug-console.d.ts.map +0 -1
  188. package/lib/common/debug-console.js +0 -5
  189. package/lib/common/debug-console.js.map +0 -1
  190. package/src/browser/assets/breakpoint-conditional-disabled.svg +0 -4
  191. package/src/browser/assets/breakpoint-conditional-unverified.svg +0 -4
  192. package/src/browser/assets/breakpoint-conditional.svg +0 -4
  193. package/src/browser/assets/breakpoint-disabled.svg +0 -4
  194. package/src/browser/assets/breakpoint-hint.svg +0 -4
  195. package/src/browser/assets/breakpoint-log-disabled.svg +0 -4
  196. package/src/browser/assets/breakpoint-log-unverified.svg +0 -4
  197. package/src/browser/assets/breakpoint-log.svg +0 -4
  198. package/src/browser/assets/breakpoint-unsupported.svg +0 -4
  199. package/src/browser/assets/breakpoint-unverified.svg +0 -4
  200. package/src/browser/assets/breakpoint.svg +0 -4
  201. package/src/browser/assets/breakpoints-activate-inverse.svg +0 -4
  202. package/src/browser/assets/breakpoints-activate.svg +0 -4
  203. package/src/browser/assets/configure-inverse.svg +0 -4
  204. package/src/browser/assets/configure.svg +0 -4
  205. package/src/browser/assets/continue-inverse.svg +0 -4
  206. package/src/browser/assets/current-and-breakpoint.svg +0 -4
  207. package/src/browser/assets/current-arrow.svg +0 -4
  208. package/src/browser/assets/remove-all-inverse.svg +0 -4
  209. package/src/browser/assets/remove-all.svg +0 -4
  210. package/src/browser/assets/repl-inverse.svg +0 -4
  211. package/src/browser/assets/repl.svg +0 -4
  212. package/src/browser/assets/restart-inverse.svg +0 -4
  213. package/src/browser/assets/stackframe-and-breakpoint.svg +0 -4
  214. package/src/browser/assets/stackframe-arrow.svg +0 -4
  215. package/src/browser/assets/start-inverse.svg +0 -4
  216. package/src/browser/breakpoint/breakpoint-decoration.ts +0 -57
  217. package/src/browser/breakpoint/breakpoint-manager.ts +0 -348
  218. package/src/browser/breakpoint/breakpoint-marker.ts +0 -70
  219. package/src/browser/breakpoint/index.ts +0 -3
  220. package/src/browser/components/debug-action/index.module.less +0 -73
  221. package/src/browser/components/debug-action/index.tsx +0 -40
  222. package/src/browser/components/debug-exception-widget.less +0 -42
  223. package/src/browser/components/floating-click-widget/index.module.less +0 -5
  224. package/src/browser/components/floating-click-widget/index.tsx +0 -21
  225. package/src/browser/components/index.ts +0 -1
  226. package/src/browser/contextkeys/debug-call-stack-item-type-key.ts +0 -4
  227. package/src/browser/contextkeys/debug-contextkey.service.ts +0 -54
  228. package/src/browser/contextkeys/index.ts +0 -1
  229. package/src/browser/debug-ansi-handle.ts +0 -521
  230. package/src/browser/debug-configuration-manager.ts +0 -513
  231. package/src/browser/debug-configuration-model.ts +0 -66
  232. package/src/browser/debug-contribution.ts +0 -756
  233. package/src/browser/debug-exception-widget.tsx +0 -89
  234. package/src/browser/debug-link-detector.ts +0 -234
  235. package/src/browser/debug-memory.ts +0 -220
  236. package/src/browser/debug-preferences.ts +0 -70
  237. package/src/browser/debug-progress.service.ts +0 -122
  238. package/src/browser/debug-schema-updater.ts +0 -67
  239. package/src/browser/debug-service.ts +0 -42
  240. package/src/browser/debug-session-connection.ts +0 -331
  241. package/src/browser/debug-session-contribution.ts +0 -57
  242. package/src/browser/debug-session-manager.ts +0 -622
  243. package/src/browser/debug-session.ts +0 -1181
  244. package/src/browser/debug-style.less +0 -128
  245. package/src/browser/debugUtils.ts +0 -110
  246. package/src/browser/editor/debug-breakpoint-widget.ts +0 -99
  247. package/src/browser/editor/debug-breakpoint-zone-widget.tsx +0 -262
  248. package/src/browser/editor/debug-breakpoint.module.less +0 -30
  249. package/src/browser/editor/debug-editor-contribution.ts +0 -589
  250. package/src/browser/editor/debug-expression-provider.ts +0 -101
  251. package/src/browser/editor/debug-hover-model.ts +0 -38
  252. package/src/browser/editor/debug-hover-source.ts +0 -107
  253. package/src/browser/editor/debug-hover-tree.model.service.ts +0 -332
  254. package/src/browser/editor/debug-hover-widget.tsx +0 -200
  255. package/src/browser/editor/debug-hover.module.less +0 -29
  256. package/src/browser/editor/debug-hover.view.tsx +0 -147
  257. package/src/browser/editor/debug-model-manager.ts +0 -219
  258. package/src/browser/editor/debug-model.ts +0 -853
  259. package/src/browser/editor/debug-run-to-cursor.service.ts +0 -180
  260. package/src/browser/editor/debug-styles.ts +0 -66
  261. package/src/browser/editor/evaluatable-expression.ts +0 -47
  262. package/src/browser/editor/index.ts +0 -6
  263. package/src/browser/index.ts +0 -119
  264. package/src/browser/markers/index.ts +0 -2
  265. package/src/browser/markers/marker-manager.ts +0 -201
  266. package/src/browser/markers/marker.ts +0 -20
  267. package/src/browser/model/debug-source.ts +0 -144
  268. package/src/browser/model/debug-stack-frame.ts +0 -111
  269. package/src/browser/model/debug-thread.ts +0 -186
  270. package/src/browser/model/debug-watch.ts +0 -129
  271. package/src/browser/model/index.ts +0 -4
  272. package/src/browser/preferences/launch-folder-preference-provider.ts +0 -23
  273. package/src/browser/preferences/launch-preferences-contribution.ts +0 -9
  274. package/src/browser/preferences/launch-preferences.ts +0 -16
  275. package/src/browser/tree/debug-console-tree-node.define.tsx +0 -76
  276. package/src/browser/tree/debug-tree-node.define.ts +0 -768
  277. package/src/browser/tree/index.ts +0 -2
  278. package/src/browser/view/breakpoints/debug-breakpoints.module.less +0 -72
  279. package/src/browser/view/breakpoints/debug-breakpoints.service.ts +0 -217
  280. package/src/browser/view/breakpoints/debug-breakpoints.view.tsx +0 -174
  281. package/src/browser/view/configuration/debug-configuration.module.less +0 -110
  282. package/src/browser/view/configuration/debug-configuration.service.ts +0 -170
  283. package/src/browser/view/configuration/debug-configuration.view.tsx +0 -252
  284. package/src/browser/view/configuration/debug-toolbar.service.ts +0 -167
  285. package/src/browser/view/configuration/debug-toolbar.view.tsx +0 -335
  286. package/src/browser/view/console/debug-console-filter.model.ts +0 -49
  287. package/src/browser/view/console/debug-console-filter.service.ts +0 -81
  288. package/src/browser/view/console/debug-console-filter.view.tsx +0 -78
  289. package/src/browser/view/console/debug-console-model.ts +0 -48
  290. package/src/browser/view/console/debug-console-session.ts +0 -165
  291. package/src/browser/view/console/debug-console-toolbar.view.tsx +0 -28
  292. package/src/browser/view/console/debug-console-tree.model.service.ts +0 -553
  293. package/src/browser/view/console/debug-console.contribution.ts +0 -179
  294. package/src/browser/view/console/debug-console.module.less +0 -371
  295. package/src/browser/view/console/debug-console.service.ts +0 -433
  296. package/src/browser/view/console/debug-console.view.tsx +0 -511
  297. package/src/browser/view/debug-view-model.ts +0 -182
  298. package/src/browser/view/frames/debug-call-stack-frame.view.tsx +0 -230
  299. package/src/browser/view/frames/debug-call-stack-session.view.tsx +0 -253
  300. package/src/browser/view/frames/debug-call-stack-thread.view.tsx +0 -103
  301. package/src/browser/view/frames/debug-call-stack.contribution.ts +0 -88
  302. package/src/browser/view/frames/debug-call-stack.module.less +0 -193
  303. package/src/browser/view/frames/debug-call-stack.operation.tsx +0 -97
  304. package/src/browser/view/frames/debug-call-stack.service.ts +0 -105
  305. package/src/browser/view/frames/debug-call-stack.view.tsx +0 -43
  306. package/src/browser/view/variables/debug-variables-model.ts +0 -38
  307. package/src/browser/view/variables/debug-variables-tree.model.service.ts +0 -470
  308. package/src/browser/view/variables/debug-variables.contribution.ts +0 -243
  309. package/src/browser/view/variables/debug-variables.module.less +0 -139
  310. package/src/browser/view/variables/debug-variables.view.tsx +0 -303
  311. package/src/browser/view/watch/debug-watch-model.ts +0 -38
  312. package/src/browser/view/watch/debug-watch-tree.model.service.ts +0 -570
  313. package/src/browser/view/watch/debug-watch.contribution.ts +0 -170
  314. package/src/browser/view/watch/debug-watch.module.less +0 -178
  315. package/src/browser/view/watch/debug-watch.view.tsx +0 -337
  316. package/src/common/commands.ts +0 -146
  317. package/src/common/constants.ts +0 -81
  318. package/src/common/debug-breakpoint.ts +0 -43
  319. package/src/common/debug-configuration.ts +0 -68
  320. package/src/common/debug-console.ts +0 -20
  321. package/src/common/debug-editor.ts +0 -4
  322. package/src/common/debug-hover.ts +0 -31
  323. package/src/common/debug-model.ts +0 -272
  324. package/src/common/debug-progress.ts +0 -8
  325. package/src/common/debug-schema-updater.ts +0 -1
  326. package/src/common/debug-service.ts +0 -176
  327. package/src/common/debug-session-options.ts +0 -19
  328. package/src/common/debug-session.ts +0 -200
  329. package/src/common/evaluatable-expression.ts +0 -43
  330. package/src/common/index.ts +0 -16
  331. package/src/common/inline-values.ts +0 -77
  332. package/src/common/terminal.ts +0 -163
  333. package/src/common/types.ts +0 -86
  334. package/src/index.ts +0 -1
@@ -1,756 +0,0 @@
1
- import { Injector, Autowired, INJECTOR_TOKEN } from '@opensumi/di';
2
- import {
3
- Domain,
4
- ClientAppContribution,
5
- localize,
6
- CommandContribution,
7
- CommandRegistry,
8
- KeybindingContribution,
9
- JsonSchemaContribution,
10
- IJSONSchemaRegistry,
11
- PreferenceSchema,
12
- PreferenceContribution,
13
- CommandService,
14
- IReporterService,
15
- formatLocalize,
16
- CoreConfiguration,
17
- ComponentContribution,
18
- ComponentRegistry,
19
- KeybindingRegistry,
20
- getIcon,
21
- PreferenceService,
22
- IPreferenceSettingsService,
23
- COMMON_COMMANDS,
24
- } from '@opensumi/ide-core-browser';
25
- import { browserViews } from '@opensumi/ide-core-browser/lib/extensions/schema/browserViews';
26
- import { ToolbarRegistry, TabBarToolbarContribution } from '@opensumi/ide-core-browser/lib/layout';
27
- import { MenuContribution, MenuId, IMenuRegistry } from '@opensumi/ide-core-browser/lib/menu/next';
28
- import { IExtensionsSchemaService, runWhenIdle, URI } from '@opensumi/ide-core-common';
29
- import {
30
- BrowserEditorContribution,
31
- IEditorFeatureRegistry,
32
- EditorComponentRegistry,
33
- IEditor,
34
- } from '@opensumi/ide-editor/lib/browser';
35
- import { IFileServiceClient, IShadowFileProvider } from '@opensumi/ide-file-service';
36
- import { FileServiceClient } from '@opensumi/ide-file-service/lib/browser/file-service-client';
37
- import { IMainLayoutService, IViewsRegistry } from '@opensumi/ide-main-layout';
38
- import { WelcomeView } from '@opensumi/ide-main-layout/lib/browser/welcome.view';
39
- import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
40
-
41
- import {
42
- IDebugSessionManager,
43
- launchSchemaUri,
44
- DEBUG_CONTAINER_ID,
45
- DEBUG_WATCH_ID,
46
- DEBUG_VARIABLES_ID,
47
- DEBUG_STACK_ID,
48
- DEBUG_BREAKPOINTS_ID,
49
- DEBUG_FLOATING_CLICK_WIDGET,
50
- DEBUG_REPORT_NAME,
51
- DEBUG_WELCOME_ID,
52
- DEBUG_SCHEME,
53
- TSourceBrekpointProperties,
54
- DEBUG_COMMANDS,
55
- IDebugModelManager,
56
- } from '../common';
57
-
58
- import {
59
- CONTEXT_DEBUGGERS_AVAILABLE,
60
- CONTEXT_IN_DEBUG_MODE,
61
- CONTEXT_BREAKPOINT_INPUT_FOCUSED,
62
- CONTEXT_EXCEPTION_WIDGET_VISIBLE,
63
- } from './../common/constants';
64
- import { BreakpointManager, SelectedBreakpoint } from './breakpoint';
65
- import { FloatingClickWidget } from './components/floating-click-widget';
66
- import { DebugContextKey } from './contextkeys/debug-contextkey.service';
67
- import { DebugConfigurationManager } from './debug-configuration-manager';
68
- import { DebugPreferences, debugPreferencesSchema } from './debug-preferences';
69
- import { DebugProgressService } from './debug-progress.service';
70
- import { launchSchema } from './debug-schema-updater';
71
- import { DebugSession } from './debug-session';
72
- import { DebugSessionManager } from './debug-session-manager';
73
- import { DebugEditorContribution } from './editor/debug-editor-contribution';
74
- import { DebugRunToCursorService } from './editor/debug-run-to-cursor.service';
75
- import { DebugBreakpointsService } from './view/breakpoints/debug-breakpoints.service';
76
- import { DebugBreakpointView } from './view/breakpoints/debug-breakpoints.view';
77
- import { DebugConfigurationService } from './view/configuration/debug-configuration.service';
78
- import { DebugConfigurationView } from './view/configuration/debug-configuration.view';
79
- import { DebugToolbarService } from './view/configuration/debug-toolbar.service';
80
- import { DebugConsoleService } from './view/console/debug-console.service';
81
- import { DebugViewModel } from './view/debug-view-model';
82
- import { DebugCallStackView } from './view/frames/debug-call-stack.view';
83
- import { DebugVariableView } from './view/variables/debug-variables.view';
84
- import { DebugWatchView } from './view/watch/debug-watch.view';
85
-
86
- const LAUNCH_JSON_REGEX = /launch\.json$/;
87
-
88
- export namespace DebugBreakpointWidgetCommands {
89
- export const ACCEPT = {
90
- id: 'debug.breakpointWidget.accept',
91
- };
92
- export const CLOSE = {
93
- id: 'debug.breakpointWidget.close',
94
- };
95
- }
96
-
97
- @Domain(
98
- ClientAppContribution,
99
- ComponentContribution,
100
- TabBarToolbarContribution,
101
- CommandContribution,
102
- KeybindingContribution,
103
- JsonSchemaContribution,
104
- PreferenceContribution,
105
- MenuContribution,
106
- BrowserEditorContribution,
107
- )
108
- export class DebugContribution
109
- implements
110
- ComponentContribution,
111
- TabBarToolbarContribution,
112
- CommandContribution,
113
- KeybindingContribution,
114
- JsonSchemaContribution,
115
- PreferenceContribution,
116
- MenuContribution,
117
- BrowserEditorContribution
118
- {
119
- schema: PreferenceSchema = debugPreferencesSchema;
120
-
121
- @Autowired(IMainLayoutService)
122
- protected readonly mainlayoutService: IMainLayoutService;
123
-
124
- @Autowired(BreakpointManager)
125
- protected readonly breakpointManager: BreakpointManager;
126
-
127
- @Autowired(DebugConfigurationManager)
128
- protected readonly configurations: DebugConfigurationManager;
129
-
130
- @Autowired(IDebugModelManager)
131
- protected debugEditorController: IDebugModelManager;
132
-
133
- @Autowired(DebugBreakpointsService)
134
- protected debugBreakpointsService: DebugBreakpointsService;
135
-
136
- @Autowired(DebugViewModel)
137
- protected readonly debugModel: DebugViewModel;
138
-
139
- @Autowired(DebugPreferences)
140
- protected readonly debugPreferences: DebugPreferences;
141
-
142
- @Autowired(DebugConsoleService)
143
- protected readonly debugConsole: DebugConsoleService;
144
-
145
- @Autowired(DebugConfigurationService)
146
- protected readonly debugConfigurationService: DebugConfigurationService;
147
-
148
- @Autowired(IDebugSessionManager)
149
- protected readonly sessionManager: DebugSessionManager;
150
-
151
- @Autowired(CommandService)
152
- protected readonly commandService: CommandService;
153
-
154
- @Autowired(DebugToolbarService)
155
- protected readonly debugToolbarService: DebugToolbarService;
156
-
157
- @Autowired(INJECTOR_TOKEN)
158
- private readonly injector: Injector;
159
-
160
- @Autowired(PreferenceService)
161
- protected readonly preferences: PreferenceService;
162
-
163
- @Autowired(IReporterService)
164
- private readonly reporterService: IReporterService;
165
-
166
- @Autowired(IViewsRegistry)
167
- private viewsRegistry: IViewsRegistry;
168
-
169
- @Autowired(IShadowFileProvider)
170
- private shadowFileServiceProvider: IShadowFileProvider;
171
-
172
- @Autowired(IFileServiceClient)
173
- protected readonly fileSystem: FileServiceClient;
174
-
175
- @Autowired(IPreferenceSettingsService)
176
- protected readonly preferenceSettings: IPreferenceSettingsService;
177
-
178
- @Autowired(DebugProgressService)
179
- protected readonly debugProgressService: DebugProgressService;
180
-
181
- @Autowired(DebugRunToCursorService)
182
- protected readonly debugRunToCursorService: DebugRunToCursorService;
183
-
184
- @Autowired(DebugContextKey)
185
- protected readonly debugContextKey: DebugContextKey;
186
-
187
- @Autowired(IExtensionsSchemaService)
188
- protected readonly extensionsPointService: IExtensionsSchemaService;
189
-
190
- private firstSessionStart = true;
191
- private openedViewSessions = new Set();
192
-
193
- get selectedBreakpoint(): SelectedBreakpoint | undefined {
194
- const { selectedBreakpoint } = this.breakpointManager;
195
- return selectedBreakpoint;
196
- }
197
-
198
- registerEditorComponent(registry: EditorComponentRegistry) {
199
- registry.registerEditorSideWidget({
200
- id: DEBUG_FLOATING_CLICK_WIDGET,
201
- component: FloatingClickWidget as any,
202
- displaysOnResource: (r) => {
203
- const { configUri } = this.preferences.resolve('launch');
204
- if (!configUri) {
205
- return false;
206
- }
207
- return configUri.isEqual(r.uri) && LAUNCH_JSON_REGEX.test(r.uri.toString());
208
- },
209
- });
210
- }
211
-
212
- registerComponent(registry: ComponentRegistry) {
213
- registry.register(
214
- '@opensumi/ide-debug',
215
- [
216
- {
217
- component: DebugWatchView,
218
- id: DEBUG_WATCH_ID,
219
- name: localize('debug.watch.title'),
220
- when: `${CONTEXT_DEBUGGERS_AVAILABLE.equalsTo(true)} || ${CONTEXT_IN_DEBUG_MODE.equalsTo(true)}`,
221
- collapsed: false,
222
- },
223
- {
224
- component: DebugCallStackView,
225
- id: DEBUG_STACK_ID,
226
- name: localize('debug.callStack.title'),
227
- when: `${CONTEXT_DEBUGGERS_AVAILABLE.equalsTo(true)} || ${CONTEXT_IN_DEBUG_MODE.equalsTo(true)}`,
228
- collapsed: false,
229
- },
230
- {
231
- component: DebugVariableView,
232
- id: DEBUG_VARIABLES_ID,
233
- name: localize('debug.variables.title'),
234
- when: `${CONTEXT_DEBUGGERS_AVAILABLE.equalsTo(true)} || ${CONTEXT_IN_DEBUG_MODE.equalsTo(true)}`,
235
- collapsed: false,
236
- },
237
- {
238
- component: DebugBreakpointView,
239
- id: DEBUG_BREAKPOINTS_ID,
240
- name: localize('debug.breakpoints.title'),
241
- when: `${CONTEXT_DEBUGGERS_AVAILABLE.equalsTo(true)} || ${CONTEXT_IN_DEBUG_MODE.equalsTo(true)}`,
242
- collapsed: false,
243
- },
244
- {
245
- component: WelcomeView,
246
- id: DEBUG_WELCOME_ID,
247
- name: 'Debug Welcome',
248
- when: `${CONTEXT_DEBUGGERS_AVAILABLE.equalsTo(false)} && ${CONTEXT_IN_DEBUG_MODE.equalsTo(false)}`,
249
- initialProps: { viewId: DEBUG_WELCOME_ID },
250
- },
251
- ],
252
- {
253
- iconClass: getIcon('debug'),
254
- priority: 7,
255
- title: localize('debug.container.title'),
256
- containerId: DEBUG_CONTAINER_ID,
257
- titleComponent: DebugConfigurationView,
258
- activateKeyBinding: 'ctrlcmd+shift+d',
259
- },
260
- );
261
- }
262
-
263
- async initialize() {
264
- this.fileSystem.registerProvider(DEBUG_SCHEME, this.shadowFileServiceProvider);
265
- this.debugEditorController.init();
266
- this.debugProgressService.run(this.sessionManager);
267
- }
268
-
269
- onStart() {
270
- this.viewsRegistry.registerViewWelcomeContent(DEBUG_WELCOME_ID, {
271
- content: formatLocalize('welcome-view.noLaunchJson', DEBUG_COMMANDS.START.id),
272
- when: 'default',
273
- });
274
- this.sessionManager.onDidCreateDebugSession((session: DebugSession) => {
275
- this.debugModel.init(session);
276
- });
277
- this.sessionManager.onDidStartDebugSession((session: DebugSession) => {
278
- const { internalConsoleOptions } = session.configuration;
279
- const openDebug = session.configuration.openDebug || this.debugPreferences['debug.openDebug'];
280
- if (openDebug === 'openOnSessionStart' || openDebug === 'openOnFirstSessionStart') {
281
- if (this.firstSessionStart) {
282
- this.openDebugView();
283
- }
284
- } else if (openDebug !== 'neverOpen') {
285
- const parentSession = session.parentSession;
286
- const sessionId = parentSession?.id || session.id;
287
- if (!this.openedViewSessions.has(sessionId)) {
288
- this.openedViewSessions.add(sessionId);
289
- this.openDebugView();
290
- }
291
- }
292
-
293
- if (
294
- internalConsoleOptions === 'openOnSessionStart' ||
295
- (internalConsoleOptions === 'openOnFirstSessionStart' && this.firstSessionStart)
296
- ) {
297
- this.openDebugConsoleView();
298
- }
299
- this.firstSessionStart = false;
300
- this.commandService.tryExecuteCommand('statusbar.changeBackgroundColor', 'var(--statusBar-debuggingBackground)');
301
- this.commandService.tryExecuteCommand('statusbar.changeColor', 'var(--statusBar-debuggingForeground)');
302
- });
303
- this.sessionManager.onDidStopDebugSession((session) => {
304
- const { openDebug } = session.configuration;
305
- if (openDebug === 'openOnDebugBreak') {
306
- this.openDebugView();
307
- }
308
- });
309
- this.sessionManager.onDidDestroyDebugSession((session) => {
310
- if (this.sessionManager.sessions.length === 0) {
311
- this.commandService.tryExecuteCommand('statusbar.changeBackgroundColor', 'var(--statusBar-background)');
312
- this.commandService.tryExecuteCommand('statusbar.changeColor');
313
- }
314
- });
315
- this.configurations.load();
316
- this.breakpointManager.load();
317
- this.configurations.onDidChange(() => this.configurations.save());
318
- this.breakpointManager.onDidChangeBreakpoints(() => this.breakpointManager.save());
319
- this.breakpointManager.onDidChangeExceptionsBreakpoints(() => this.breakpointManager.save());
320
- this.breakpointManager.onDidChangeMarkers(() => this.breakpointManager.save());
321
-
322
- this.extensionsPointService.appendExtensionPoint(['browserViews', 'properties'], {
323
- extensionPoint: DEBUG_CONTAINER_ID,
324
- frameworkKind: ['opensumi'],
325
- jsonSchema: {
326
- ...browserViews.properties,
327
- description: formatLocalize('sumiContributes.browserViews.location.custom', localize('menu-bar.title.debug')),
328
- },
329
- });
330
- }
331
-
332
- // 左侧调试面板
333
- openDebugView() {
334
- const handler = this.mainlayoutService.getTabbarHandler(DEBUG_CONTAINER_ID);
335
- if (handler && !handler.isVisible) {
336
- handler.activate();
337
- }
338
- }
339
-
340
- // 底部调试控制台面板
341
- openDebugConsoleView() {
342
- if (!this.debugConsole.isVisible) {
343
- this.debugConsole.activate();
344
- }
345
- }
346
-
347
- onDidRender() {
348
- const handler = this.mainlayoutService.getTabbarHandler(DEBUG_CONTAINER_ID);
349
- if (handler) {
350
- handler!.setTitleComponent(DebugConfigurationView);
351
- }
352
- }
353
-
354
- registerCommands(commands: CommandRegistry) {
355
- commands.registerCommand(COMMON_COMMANDS.OPEN_LAUNCH_CONFIGURATION, {
356
- execute: () => {
357
- this.debugConfigurationService.openConfiguration();
358
- },
359
- });
360
- commands.registerCommand(DEBUG_COMMANDS.REMOVE_ALL_BREAKPOINTS, {
361
- execute: () => {
362
- this.debugBreakpointsService.removeAllBreakpoints();
363
- },
364
- });
365
- commands.registerCommand(DEBUG_COMMANDS.START, {
366
- execute: () => {
367
- this.debugConfigurationService.start();
368
- },
369
- });
370
- commands.registerCommand(DEBUG_COMMANDS.STOP, {
371
- execute: () => {
372
- this.debugToolbarService.doStop();
373
- },
374
- });
375
- commands.registerCommand(DEBUG_COMMANDS.NEXT, {
376
- execute: () => {
377
- this.debugToolbarService.doStepIn();
378
- },
379
- });
380
- commands.registerCommand(DEBUG_COMMANDS.PREV, {
381
- execute: () => {
382
- this.debugToolbarService.doStepOut();
383
- },
384
- });
385
- commands.registerCommand(DEBUG_COMMANDS.CONTINUE, {
386
- execute: () => {
387
- this.debugToolbarService.doContinue();
388
- },
389
- });
390
- commands.registerCommand(DEBUG_COMMANDS.PAUSE, {
391
- execute: () => {
392
- this.debugToolbarService.doPause();
393
- },
394
- });
395
- commands.registerCommand(DEBUG_COMMANDS.OVER, {
396
- execute: () => {
397
- this.debugToolbarService.doStepOver();
398
- },
399
- });
400
- commands.registerCommand(DEBUG_COMMANDS.RESTART, {
401
- execute: () => {
402
- this.debugToolbarService.doRestart();
403
- },
404
- });
405
- commands.registerCommand(DEBUG_COMMANDS.TOGGLE_BREAKPOINTS, {
406
- execute: () => {
407
- this.debugBreakpointsService.toggleBreakpoints();
408
- },
409
- });
410
- commands.registerCommand(DEBUG_COMMANDS.EDIT_BREAKPOINT, {
411
- execute: async (position: monaco.Position) => {
412
- this.reporterService.point(DEBUG_REPORT_NAME?.DEBUG_BREAKPOINT, 'edit');
413
- const { selectedBreakpoint } = this;
414
- if (selectedBreakpoint) {
415
- const { openBreakpointView } = selectedBreakpoint.model;
416
- let defaultContext: TSourceBrekpointProperties = 'condition';
417
- if (selectedBreakpoint.breakpoint) {
418
- const raw = selectedBreakpoint.breakpoint.raw;
419
- if (raw.condition) {
420
- defaultContext = 'condition';
421
- } else if (raw.hitCondition) {
422
- defaultContext = 'hitCondition';
423
- } else if (raw.logMessage) {
424
- defaultContext = 'logMessage';
425
- }
426
- }
427
- openBreakpointView(
428
- position,
429
- selectedBreakpoint.breakpoint && selectedBreakpoint.breakpoint.raw,
430
- defaultContext,
431
- );
432
- }
433
- },
434
- isVisible: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
435
- isEnabled: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
436
- });
437
- commands.registerCommand(DEBUG_COMMANDS.DISABLE_BREAKPOINT, {
438
- execute: async (position: monaco.Position) => {
439
- const { selectedBreakpoint } = this;
440
- if (selectedBreakpoint) {
441
- const { uri } = selectedBreakpoint.model;
442
- const breakpoint = this.breakpointManager.getBreakpoint(uri, position.lineNumber);
443
- if (breakpoint) {
444
- breakpoint.enabled = false;
445
- this.breakpointManager.updateBreakpoint(breakpoint);
446
- }
447
- }
448
- },
449
- isVisible: () =>
450
- !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint && this.selectedBreakpoint.breakpoint.enabled,
451
- isEnabled: () =>
452
- !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint && this.selectedBreakpoint.breakpoint.enabled,
453
- });
454
- commands.registerCommand(DEBUG_COMMANDS.ENABLE_BREAKPOINT, {
455
- execute: async (position: monaco.Position) => {
456
- const { selectedBreakpoint } = this;
457
- if (selectedBreakpoint) {
458
- const { uri } = selectedBreakpoint.model;
459
- const breakpoint = this.breakpointManager.getBreakpoint(uri, position.lineNumber);
460
- if (breakpoint) {
461
- breakpoint.enabled = true;
462
- this.breakpointManager.updateBreakpoint(breakpoint);
463
- }
464
- }
465
- },
466
- isVisible: () =>
467
- !!this.selectedBreakpoint &&
468
- !!this.selectedBreakpoint.breakpoint &&
469
- !this.selectedBreakpoint.breakpoint.enabled,
470
- isEnabled: () =>
471
- !!this.selectedBreakpoint &&
472
- !!this.selectedBreakpoint.breakpoint &&
473
- !this.selectedBreakpoint.breakpoint.enabled,
474
- });
475
- commands.registerCommand(DEBUG_COMMANDS.DELETE_BREAKPOINT, {
476
- execute: async (position: monaco.Position) => {
477
- const { selectedBreakpoint } = this;
478
- if (selectedBreakpoint) {
479
- const { uri } = selectedBreakpoint.model;
480
- const breakpoint = this.breakpointManager.getBreakpoint(uri, position.lineNumber);
481
- if (breakpoint) {
482
- this.breakpointManager.delBreakpoint(breakpoint);
483
- }
484
- }
485
- },
486
- isVisible: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
487
- isEnabled: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
488
- });
489
-
490
- commands.registerCommand(DEBUG_COMMANDS.ADD_CONDITIONAL_BREAKPOINT, {
491
- execute: async (position: monaco.Position) => {
492
- const { selectedBreakpoint } = this;
493
- if (selectedBreakpoint) {
494
- const { uri, openBreakpointView, toggleBreakpoint } = selectedBreakpoint.model;
495
- toggleBreakpoint(position);
496
- const breakpoint = this.breakpointManager.getBreakpoint(uri, position!.lineNumber);
497
- // 更新当前右键选中的断点
498
- if (breakpoint) {
499
- this.breakpointManager.selectedBreakpoint = {
500
- breakpoint,
501
- model: selectedBreakpoint.model,
502
- };
503
- }
504
- openBreakpointView(position, selectedBreakpoint.breakpoint && selectedBreakpoint.breakpoint.raw, 'condition');
505
- }
506
- },
507
- isVisible: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
508
- isEnabled: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
509
- });
510
- commands.registerCommand(DEBUG_COMMANDS.ADD_LOGPOINT, {
511
- execute: async (position: monaco.Position) => {
512
- const { selectedBreakpoint } = this;
513
- if (selectedBreakpoint) {
514
- const { openBreakpointView, toggleBreakpoint, uri } = selectedBreakpoint.model;
515
- toggleBreakpoint(position);
516
- const breakpoint = this.breakpointManager.getBreakpoint(uri, position!.lineNumber);
517
- // 更新当前右键选中的断点
518
- if (breakpoint) {
519
- this.breakpointManager.selectedBreakpoint = {
520
- breakpoint,
521
- model: selectedBreakpoint.model,
522
- };
523
- }
524
- openBreakpointView(
525
- position,
526
- selectedBreakpoint.breakpoint && selectedBreakpoint.breakpoint.raw,
527
- 'logMessage',
528
- );
529
- }
530
- },
531
- isVisible: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
532
- isEnabled: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
533
- });
534
- commands.registerCommand(DEBUG_COMMANDS.ADD_BREAKPOINT, {
535
- execute: async (position: monaco.Position) => {
536
- const { selectedBreakpoint } = this;
537
- if (selectedBreakpoint) {
538
- const { toggleBreakpoint } = selectedBreakpoint.model;
539
- toggleBreakpoint(position);
540
- }
541
- },
542
- isVisible: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
543
- isEnabled: () => !!this.selectedBreakpoint && !this.selectedBreakpoint.breakpoint,
544
- });
545
-
546
- commands.registerCommand(DebugBreakpointWidgetCommands.ACCEPT, {
547
- execute: () => {
548
- const { selectedBreakpoint } = this;
549
- if (selectedBreakpoint) {
550
- const { acceptBreakpoint } = selectedBreakpoint.model;
551
- acceptBreakpoint();
552
- }
553
- },
554
- isVisible: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
555
- isEnabled: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
556
- });
557
- commands.registerCommand(DebugBreakpointWidgetCommands.CLOSE, {
558
- execute: () => {
559
- const { selectedBreakpoint } = this;
560
- if (selectedBreakpoint) {
561
- const { closeBreakpointView } = selectedBreakpoint.model;
562
- closeBreakpointView();
563
- }
564
- },
565
- isVisible: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
566
- isEnabled: () => !!this.selectedBreakpoint && !!this.selectedBreakpoint.breakpoint,
567
- });
568
- commands.registerCommand(DEBUG_COMMANDS.RUN_TO_CURSOR, {
569
- execute: (uri: URI) => {
570
- this.debugRunToCursorService.run(uri);
571
- },
572
- isEnabled: () => this.debugContextKey.contextDebugState.get() === 'Stopped',
573
- });
574
- commands.registerCommand(DEBUG_COMMANDS.FORCE_RUN_TO_CURSOR, {
575
- execute: (uri: URI) => {
576
- this.debugRunToCursorService.run(uri, true);
577
- },
578
- isEnabled: () => this.debugContextKey.contextDebugState.get() === 'Stopped',
579
- });
580
- }
581
-
582
- registerToolbarItems(registry: ToolbarRegistry) {
583
- /**
584
- * end
585
- */
586
-
587
- /**
588
- * 断点面板菜单
589
- */
590
- registry.registerItem({
591
- id: DEBUG_COMMANDS.REMOVE_ALL_BREAKPOINTS.id,
592
- command: DEBUG_COMMANDS.REMOVE_ALL_BREAKPOINTS.id,
593
- iconClass: getIcon('close-all'),
594
- viewId: DEBUG_BREAKPOINTS_ID,
595
- tooltip: localize('debug.breakpoint.removeAll'),
596
- });
597
-
598
- registry.registerItem({
599
- id: DEBUG_COMMANDS.TOGGLE_BREAKPOINTS.id,
600
- command: DEBUG_COMMANDS.TOGGLE_BREAKPOINTS.id,
601
- iconClass: getIcon('deactivate-breakpoints'),
602
- viewId: DEBUG_BREAKPOINTS_ID,
603
- tooltip: localize('debug.breakpoint.toggle'),
604
- });
605
- /**
606
- * end
607
- */
608
- }
609
-
610
- registerSchema(registry: IJSONSchemaRegistry) {
611
- registry.registerSchema(`${launchSchemaUri}/default`, launchSchema, ['launch.json']);
612
- }
613
-
614
- registerKeybindings(keybindings: KeybindingRegistry) {
615
- keybindings.registerKeybinding({
616
- command: DEBUG_COMMANDS.START.id,
617
- keybinding: 'f5',
618
- when: `!${CONTEXT_IN_DEBUG_MODE.raw}`,
619
- });
620
- keybindings.registerKeybinding({
621
- command: DEBUG_COMMANDS.CONTINUE.id,
622
- keybinding: 'f5',
623
- when: CONTEXT_IN_DEBUG_MODE.raw,
624
- });
625
- keybindings.registerKeybinding({
626
- command: DEBUG_COMMANDS.STOP.id,
627
- keybinding: 'shift+f5',
628
- when: CONTEXT_IN_DEBUG_MODE.raw,
629
- });
630
- keybindings.registerKeybinding({
631
- command: DEBUG_COMMANDS.NEXT.id,
632
- keybinding: 'f11',
633
- when: CONTEXT_IN_DEBUG_MODE.raw,
634
- });
635
- keybindings.registerKeybinding({
636
- command: DEBUG_COMMANDS.PREV.id,
637
- keybinding: 'shift+f11',
638
- when: CONTEXT_IN_DEBUG_MODE.raw,
639
- });
640
- keybindings.registerKeybinding({
641
- command: DEBUG_COMMANDS.OVER.id,
642
- keybinding: 'f10',
643
- when: CONTEXT_IN_DEBUG_MODE.raw,
644
- });
645
- keybindings.registerKeybinding({
646
- command: DEBUG_COMMANDS.RESTART.id,
647
- keybinding: 'shift+ctrlcmd+f5',
648
- when: CONTEXT_IN_DEBUG_MODE.raw,
649
- });
650
-
651
- keybindings.registerKeybinding({
652
- command: DebugBreakpointWidgetCommands.ACCEPT.id,
653
- keybinding: 'enter',
654
- when: CONTEXT_BREAKPOINT_INPUT_FOCUSED.raw,
655
- });
656
- keybindings.registerKeybinding({
657
- command: DebugBreakpointWidgetCommands.CLOSE.id,
658
- keybinding: 'esc',
659
- when: CONTEXT_BREAKPOINT_INPUT_FOCUSED.raw,
660
- });
661
- keybindings.registerKeybinding({
662
- command: DEBUG_COMMANDS.EXCEPTION_WIDGET_CLOSE.id,
663
- keybinding: 'esc',
664
- when: CONTEXT_EXCEPTION_WIDGET_VISIBLE.raw,
665
- });
666
- }
667
-
668
- registerMenus(menuRegistry: IMenuRegistry) {
669
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
670
- command: DEBUG_COMMANDS.DELETE_BREAKPOINT.id,
671
- group: '1_has_breakpoint',
672
- order: 1,
673
- });
674
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
675
- command: DEBUG_COMMANDS.EDIT_BREAKPOINT.id,
676
- group: '1_has_breakpoint',
677
- order: 2,
678
- });
679
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
680
- command: DEBUG_COMMANDS.DISABLE_BREAKPOINT.id,
681
- group: '1_has_breakpoint',
682
- order: 3,
683
- });
684
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
685
- command: DEBUG_COMMANDS.ENABLE_BREAKPOINT.id,
686
- group: '1_has_breakpoint',
687
- order: 4,
688
- });
689
-
690
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
691
- command: DEBUG_COMMANDS.ADD_BREAKPOINT.id,
692
- group: '2_has_not_breakpoint',
693
- });
694
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
695
- command: DEBUG_COMMANDS.ADD_CONDITIONAL_BREAKPOINT.id,
696
- group: '2_has_not_breakpoint',
697
- });
698
- menuRegistry.registerMenuItem(MenuId.DebugBreakpointsContext, {
699
- command: DEBUG_COMMANDS.ADD_LOGPOINT.id,
700
- group: '2_has_not_breakpoint',
701
- });
702
-
703
- // editor/context
704
- menuRegistry.registerMenuItem(MenuId.EditorContext, {
705
- command: {
706
- id: DEBUG_COMMANDS.RUN_TO_CURSOR.id,
707
- label: DEBUG_COMMANDS.RUN_TO_CURSOR.label || '',
708
- },
709
- when: `${CONTEXT_IN_DEBUG_MODE.raw}`,
710
- group: 'debug',
711
- order: 2,
712
- });
713
- menuRegistry.registerMenuItem(MenuId.EditorContext, {
714
- command: {
715
- id: DEBUG_COMMANDS.FORCE_RUN_TO_CURSOR.id,
716
- label: DEBUG_COMMANDS.FORCE_RUN_TO_CURSOR.label || '',
717
- },
718
- when: `${CONTEXT_IN_DEBUG_MODE.raw}`,
719
- group: 'debug',
720
- order: 2,
721
- });
722
-
723
- menuRegistry.registerMenuItem(MenuId.EditorTitle, {
724
- submenu: MenuId.EditorTitleRun,
725
- label: localize('debug.menu.title.run'),
726
- iconClass: getIcon('start'),
727
- group: 'navigation',
728
- order: -1,
729
- });
730
- }
731
-
732
- protected isPosition(position: monaco.Position): boolean {
733
- return position instanceof monaco.Position;
734
- }
735
-
736
- registerEditorFeature(registry: IEditorFeatureRegistry) {
737
- let debugEditorContribution: DebugEditorContribution;
738
-
739
- registry.registerEditorFeatureContribution({
740
- contribute: (editor: IEditor) => {
741
- debugEditorContribution = this.injector.get(DebugEditorContribution, [editor]);
742
- return debugEditorContribution.contribute(editor);
743
- },
744
- });
745
- runWhenIdle(() => {
746
- debugEditorContribution?.registerDecorationType();
747
- });
748
- this.preferenceSettings.setEnumLabels(
749
- 'debug.console.filter.mode' as keyof CoreConfiguration,
750
- {
751
- filter: localize('preference.debug.console.filter.mode.filter'),
752
- matcher: localize('preference.debug.console.filter.mode.matcher'),
753
- } as { [key in CoreConfiguration['debug.console.filter.mode']]: string },
754
- );
755
- }
756
- }