@opensumi/ide-debug 2.21.13 → 2.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (338) 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 +3 -2
  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 +2 -2
  12. package/lib/browser/debug-configuration-manager.js.map +1 -1
  13. package/lib/browser/debug-contribution.d.ts +2 -147
  14. package/lib/browser/debug-contribution.d.ts.map +1 -1
  15. package/lib/browser/debug-contribution.js +50 -200
  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 +2 -3
  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 +3 -4
  31. package/lib/browser/debug-session-manager.d.ts.map +1 -1
  32. package/lib/browser/debug-session-manager.js +7 -8
  33. package/lib/browser/debug-session-manager.js.map +1 -1
  34. package/lib/browser/debug-session.d.ts +3 -4
  35. package/lib/browser/debug-session.d.ts.map +1 -1
  36. package/lib/browser/debug-session.js +15 -11
  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 +3 -4
  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 +3 -4
  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 +2 -9
  56. package/lib/browser/editor/debug-model-manager.d.ts.map +1 -1
  57. package/lib/browser/editor/debug-model-manager.js +8 -15
  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 +0 -14
  67. package/lib/browser/index.d.ts.map +1 -1
  68. package/lib/browser/index.js +8 -24
  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 +1 -2
  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 +1 -2
  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 +3 -2
  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 +5 -3
  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 +21 -23
  112. package/lib/browser/view/console/debug-console.contribution.js.map +1 -1
  113. package/lib/browser/view/console/debug-console.module.less +2 -3
  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 +15 -3
  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 +25 -24
  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 +8 -5
  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 +12 -7
  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 +5 -3
  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 -14
  140. package/lib/browser/view/variables/debug-variables.contribution.js.map +1 -1
  141. package/lib/browser/view/variables/debug-variables.module.less +2 -11
  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 +5 -3
  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 +21 -19
  153. package/lib/browser/view/watch/debug-watch.contribution.js.map +1 -1
  154. package/lib/browser/view/watch/debug-watch.module.less +2 -12
  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/commands.d.ts +46 -0
  160. package/lib/common/commands.d.ts.map +1 -0
  161. package/lib/common/commands.js +149 -0
  162. package/lib/common/commands.js.map +1 -0
  163. package/lib/common/debug-breakpoint.d.ts +3 -3
  164. package/lib/common/debug-breakpoint.d.ts.map +1 -1
  165. package/lib/common/debug-configuration.d.ts +1 -1
  166. package/lib/common/debug-configuration.d.ts.map +1 -1
  167. package/lib/common/debug-console.d.ts +18 -0
  168. package/lib/common/debug-console.d.ts.map +1 -0
  169. package/lib/common/debug-console.js +5 -0
  170. package/lib/common/debug-console.js.map +1 -0
  171. package/lib/common/debug-editor.d.ts +1 -1
  172. package/lib/common/debug-editor.d.ts.map +1 -1
  173. package/lib/common/debug-model.d.ts +19 -4
  174. package/lib/common/debug-model.d.ts.map +1 -1
  175. package/lib/common/debug-model.js +14 -6
  176. package/lib/common/debug-model.js.map +1 -1
  177. package/lib/common/debug-schema-updater.d.ts +2 -1
  178. package/lib/common/debug-schema-updater.d.ts.map +1 -1
  179. package/lib/common/debug-schema-updater.js +1 -1
  180. package/lib/common/debug-schema-updater.js.map +1 -1
  181. package/lib/common/debug-service.d.ts +1 -1
  182. package/lib/common/debug-service.d.ts.map +1 -1
  183. package/lib/common/debug-session.d.ts +1 -1
  184. package/lib/common/debug-session.d.ts.map +1 -1
  185. package/lib/common/index.d.ts +2 -0
  186. package/lib/common/index.d.ts.map +1 -1
  187. package/lib/common/index.js +2 -0
  188. package/lib/common/index.js.map +1 -1
  189. package/lib/common/inline-values.d.ts +1 -1
  190. package/lib/common/inline-values.d.ts.map +1 -1
  191. package/lib/common/terminal.js +10 -10
  192. package/lib/common/terminal.js.map +1 -1
  193. package/package.json +27 -26
  194. package/src/browser/assets/breakpoint-conditional-disabled.svg +4 -0
  195. package/src/browser/assets/breakpoint-conditional-unverified.svg +4 -0
  196. package/src/browser/assets/breakpoint-conditional.svg +4 -0
  197. package/src/browser/assets/breakpoint-disabled.svg +4 -0
  198. package/src/browser/assets/breakpoint-hint.svg +4 -0
  199. package/src/browser/assets/breakpoint-log-disabled.svg +4 -0
  200. package/src/browser/assets/breakpoint-log-unverified.svg +4 -0
  201. package/src/browser/assets/breakpoint-log.svg +4 -0
  202. package/src/browser/assets/breakpoint-unsupported.svg +4 -0
  203. package/src/browser/assets/breakpoint-unverified.svg +4 -0
  204. package/src/browser/assets/breakpoint.svg +4 -0
  205. package/src/browser/assets/breakpoints-activate-inverse.svg +4 -0
  206. package/src/browser/assets/breakpoints-activate.svg +4 -0
  207. package/src/browser/assets/configure-inverse.svg +4 -0
  208. package/src/browser/assets/configure.svg +4 -0
  209. package/src/browser/assets/continue-inverse.svg +4 -0
  210. package/src/browser/assets/current-and-breakpoint.svg +4 -0
  211. package/src/browser/assets/current-arrow.svg +4 -0
  212. package/src/browser/assets/remove-all-inverse.svg +4 -0
  213. package/src/browser/assets/remove-all.svg +4 -0
  214. package/src/browser/assets/repl-inverse.svg +4 -0
  215. package/src/browser/assets/repl.svg +4 -0
  216. package/src/browser/assets/restart-inverse.svg +4 -0
  217. package/src/browser/assets/stackframe-and-breakpoint.svg +4 -0
  218. package/src/browser/assets/stackframe-arrow.svg +4 -0
  219. package/src/browser/assets/start-inverse.svg +4 -0
  220. package/src/browser/breakpoint/breakpoint-decoration.ts +57 -0
  221. package/src/browser/breakpoint/breakpoint-manager.ts +348 -0
  222. package/src/browser/breakpoint/breakpoint-marker.ts +70 -0
  223. package/src/browser/breakpoint/index.ts +3 -0
  224. package/src/browser/components/debug-action/index.module.less +73 -0
  225. package/src/browser/components/debug-action/index.tsx +40 -0
  226. package/src/browser/components/debug-exception-widget.less +42 -0
  227. package/src/browser/components/floating-click-widget/index.module.less +5 -0
  228. package/src/browser/components/floating-click-widget/index.tsx +21 -0
  229. package/src/browser/components/index.ts +1 -0
  230. package/src/browser/contextkeys/debug-call-stack-item-type-key.ts +4 -0
  231. package/src/browser/contextkeys/debug-contextkey.service.ts +54 -0
  232. package/src/browser/contextkeys/index.ts +1 -0
  233. package/src/browser/debug-ansi-handle.ts +521 -0
  234. package/src/browser/debug-configuration-manager.ts +514 -0
  235. package/src/browser/debug-configuration-model.ts +66 -0
  236. package/src/browser/debug-contribution.ts +756 -0
  237. package/src/browser/debug-exception-widget.tsx +89 -0
  238. package/src/browser/debug-link-detector.ts +234 -0
  239. package/src/browser/debug-memory.ts +220 -0
  240. package/src/browser/debug-preferences.ts +70 -0
  241. package/src/browser/debug-progress.service.ts +122 -0
  242. package/src/browser/debug-schema-updater.ts +67 -0
  243. package/src/browser/debug-service.ts +42 -0
  244. package/src/browser/debug-session-connection.ts +331 -0
  245. package/src/browser/debug-session-contribution.ts +57 -0
  246. package/src/browser/debug-session-manager.ts +622 -0
  247. package/src/browser/debug-session.ts +1181 -0
  248. package/src/browser/debug-style.less +128 -0
  249. package/src/browser/debugUtils.ts +110 -0
  250. package/src/browser/editor/debug-breakpoint-widget.ts +99 -0
  251. package/src/browser/editor/debug-breakpoint-zone-widget.tsx +262 -0
  252. package/src/browser/editor/debug-breakpoint.module.less +30 -0
  253. package/src/browser/editor/debug-editor-contribution.ts +589 -0
  254. package/src/browser/editor/debug-expression-provider.ts +101 -0
  255. package/src/browser/editor/debug-hover-model.ts +38 -0
  256. package/src/browser/editor/debug-hover-source.ts +107 -0
  257. package/src/browser/editor/debug-hover-tree.model.service.ts +332 -0
  258. package/src/browser/editor/debug-hover-widget.tsx +200 -0
  259. package/src/browser/editor/debug-hover.module.less +29 -0
  260. package/src/browser/editor/debug-hover.view.tsx +147 -0
  261. package/src/browser/editor/debug-model-manager.ts +219 -0
  262. package/src/browser/editor/debug-model.ts +853 -0
  263. package/src/browser/editor/debug-run-to-cursor.service.ts +180 -0
  264. package/src/browser/editor/debug-styles.ts +66 -0
  265. package/src/browser/editor/evaluatable-expression.ts +47 -0
  266. package/src/browser/editor/index.ts +6 -0
  267. package/src/browser/index.ts +119 -0
  268. package/src/browser/markers/index.ts +2 -0
  269. package/src/browser/markers/marker-manager.ts +201 -0
  270. package/src/browser/markers/marker.ts +20 -0
  271. package/src/browser/model/debug-source.ts +144 -0
  272. package/src/browser/model/debug-stack-frame.ts +111 -0
  273. package/src/browser/model/debug-thread.ts +186 -0
  274. package/src/browser/model/debug-watch.ts +129 -0
  275. package/src/browser/model/index.ts +4 -0
  276. package/src/browser/preferences/launch-folder-preference-provider.ts +23 -0
  277. package/src/browser/preferences/launch-preferences-contribution.ts +9 -0
  278. package/src/browser/preferences/launch-preferences.ts +16 -0
  279. package/src/browser/tree/debug-console-tree-node.define.tsx +76 -0
  280. package/src/browser/tree/debug-tree-node.define.ts +768 -0
  281. package/src/browser/tree/index.ts +2 -0
  282. package/src/browser/view/breakpoints/debug-breakpoints.module.less +72 -0
  283. package/src/browser/view/breakpoints/debug-breakpoints.service.ts +217 -0
  284. package/src/browser/view/breakpoints/debug-breakpoints.view.tsx +174 -0
  285. package/src/browser/view/configuration/debug-configuration.module.less +110 -0
  286. package/src/browser/view/configuration/debug-configuration.service.ts +170 -0
  287. package/src/browser/view/configuration/debug-configuration.view.tsx +252 -0
  288. package/src/browser/view/configuration/debug-toolbar.service.ts +167 -0
  289. package/src/browser/view/configuration/debug-toolbar.view.tsx +335 -0
  290. package/src/browser/view/console/debug-console-filter.model.ts +49 -0
  291. package/src/browser/view/console/debug-console-filter.service.ts +81 -0
  292. package/src/browser/view/console/debug-console-filter.view.tsx +78 -0
  293. package/src/browser/view/console/debug-console-model.ts +48 -0
  294. package/src/browser/view/console/debug-console-session.ts +165 -0
  295. package/src/browser/view/console/debug-console-toolbar.view.tsx +28 -0
  296. package/src/browser/view/console/debug-console-tree.model.service.ts +553 -0
  297. package/src/browser/view/console/debug-console.contribution.ts +179 -0
  298. package/src/browser/view/console/debug-console.module.less +371 -0
  299. package/src/browser/view/console/debug-console.service.ts +433 -0
  300. package/src/browser/view/console/debug-console.view.tsx +511 -0
  301. package/src/browser/view/debug-view-model.ts +182 -0
  302. package/src/browser/view/frames/debug-call-stack-frame.view.tsx +230 -0
  303. package/src/browser/view/frames/debug-call-stack-session.view.tsx +253 -0
  304. package/src/browser/view/frames/debug-call-stack-thread.view.tsx +103 -0
  305. package/src/browser/view/frames/debug-call-stack.contribution.ts +88 -0
  306. package/src/browser/view/frames/debug-call-stack.module.less +193 -0
  307. package/src/browser/view/frames/debug-call-stack.operation.tsx +97 -0
  308. package/src/browser/view/frames/debug-call-stack.service.ts +105 -0
  309. package/src/browser/view/frames/debug-call-stack.view.tsx +43 -0
  310. package/src/browser/view/variables/debug-variables-model.ts +38 -0
  311. package/src/browser/view/variables/debug-variables-tree.model.service.ts +470 -0
  312. package/src/browser/view/variables/debug-variables.contribution.ts +244 -0
  313. package/src/browser/view/variables/debug-variables.module.less +139 -0
  314. package/src/browser/view/variables/debug-variables.view.tsx +303 -0
  315. package/src/browser/view/watch/debug-watch-model.ts +38 -0
  316. package/src/browser/view/watch/debug-watch-tree.model.service.ts +570 -0
  317. package/src/browser/view/watch/debug-watch.contribution.ts +170 -0
  318. package/src/browser/view/watch/debug-watch.module.less +178 -0
  319. package/src/browser/view/watch/debug-watch.view.tsx +337 -0
  320. package/src/common/commands.ts +146 -0
  321. package/src/common/constants.ts +81 -0
  322. package/src/common/debug-breakpoint.ts +43 -0
  323. package/src/common/debug-configuration.ts +68 -0
  324. package/src/common/debug-console.ts +20 -0
  325. package/src/common/debug-editor.ts +4 -0
  326. package/src/common/debug-hover.ts +31 -0
  327. package/src/common/debug-model.ts +272 -0
  328. package/src/common/debug-progress.ts +8 -0
  329. package/src/common/debug-schema-updater.ts +3 -0
  330. package/src/common/debug-service.ts +176 -0
  331. package/src/common/debug-session-options.ts +19 -0
  332. package/src/common/debug-session.ts +200 -0
  333. package/src/common/evaluatable-expression.ts +43 -0
  334. package/src/common/index.ts +16 -0
  335. package/src/common/inline-values.ts +77 -0
  336. package/src/common/terminal.ts +163 -0
  337. package/src/common/types.ts +86 -0
  338. package/src/index.ts +1 -0
@@ -0,0 +1,348 @@
1
+ import { Injectable, Autowired } from '@opensumi/di';
2
+ import {
3
+ Emitter,
4
+ Event,
5
+ URI,
6
+ isUndefined,
7
+ StorageProvider,
8
+ IStorage,
9
+ STORAGE_NAMESPACE,
10
+ IReporterService,
11
+ } from '@opensumi/ide-core-browser';
12
+ import { Deferred } from '@opensumi/ide-core-common';
13
+ import * as monaco from '@opensumi/monaco-editor-core/esm/vs/editor/editor.api';
14
+ import { DebugProtocol } from '@opensumi/vscode-debugprotocol';
15
+
16
+ import { BreakpointsChangeEvent, DEBUG_REPORT_NAME, IDebugBreakpoint } from '../../common';
17
+ import { DebugModel } from '../editor';
18
+ import { MarkerManager, Marker } from '../markers';
19
+
20
+ import { DebugExceptionBreakpoint, BREAKPOINT_KIND } from './breakpoint-marker';
21
+
22
+ export interface ExceptionBreakpointsChangeEvent {
23
+ filters: string[];
24
+ }
25
+
26
+ export interface SelectedBreakpoint {
27
+ breakpoint?: IDebugBreakpoint;
28
+ model: DebugModel;
29
+ }
30
+
31
+ @Injectable()
32
+ export class BreakpointManager extends MarkerManager<IDebugBreakpoint> {
33
+ protected readonly owner = 'breakpoint';
34
+ private _selectedBreakpoint: SelectedBreakpoint;
35
+
36
+ private defaultExceptionFilter: DebugProtocol.ExceptionBreakpointsFilter[] = [];
37
+ private exceptionFilterValue: { [key: string]: boolean } | undefined;
38
+ private _affected = new Set<string>();
39
+
40
+ @Autowired(StorageProvider)
41
+ private readonly storageProvider: StorageProvider;
42
+
43
+ @Autowired(IReporterService)
44
+ private readonly reporterService: IReporterService;
45
+
46
+ getKind(): string {
47
+ return BREAKPOINT_KIND;
48
+ }
49
+
50
+ get selectedBreakpoint() {
51
+ return this._selectedBreakpoint;
52
+ }
53
+
54
+ set selectedBreakpoint(value: SelectedBreakpoint) {
55
+ this._selectedBreakpoint = value;
56
+ }
57
+
58
+ get affected() {
59
+ return Array.from(this._affected.values());
60
+ }
61
+
62
+ protected breakpointsDeffered: Deferred<void> | null = null;
63
+
64
+ protected readonly onDidChangeBreakpointsEmitter = new Emitter<BreakpointsChangeEvent>();
65
+ readonly onDidChangeBreakpoints: Event<BreakpointsChangeEvent> = this.onDidChangeBreakpointsEmitter.event;
66
+ protected readonly onDidChangeExceptionsBreakpointsEmitter = new Emitter<ExceptionBreakpointsChangeEvent>();
67
+ readonly onDidChangeExceptionsBreakpoints: Event<ExceptionBreakpointsChangeEvent> =
68
+ this.onDidChangeExceptionsBreakpointsEmitter.event;
69
+
70
+ public setBpDeffered(): this {
71
+ this.breakpointsDeffered = new Deferred();
72
+ return this;
73
+ }
74
+
75
+ public resolveBpDeffered(): void {
76
+ if (this.breakpointsDeffered) {
77
+ this.breakpointsDeffered.resolve();
78
+ }
79
+ }
80
+
81
+ public promiseBpDeffered(): Promise<void> {
82
+ if (this.breakpointsDeffered) {
83
+ return this.breakpointsDeffered.promise;
84
+ } else {
85
+ return Promise.resolve();
86
+ }
87
+ }
88
+
89
+ setMarkers(uri: URI, owner: string, newMarkers: IDebugBreakpoint[]): Marker<IDebugBreakpoint>[] {
90
+ const result = super.setMarkers(uri, owner, newMarkers);
91
+ const added: IDebugBreakpoint[] = [];
92
+ const removed: IDebugBreakpoint[] = [];
93
+ const changed: IDebugBreakpoint[] = [];
94
+ const oldMarkers = new Map(result.map(({ data }) => [data.id, data] as [string, IDebugBreakpoint]));
95
+ const ids = new Set<string>();
96
+
97
+ for (const newMarker of newMarkers) {
98
+ ids.add(newMarker.id);
99
+ if (oldMarkers.has(newMarker.id)) {
100
+ changed.push(newMarker);
101
+ } else {
102
+ added.push(newMarker);
103
+ }
104
+ }
105
+ for (const [id, data] of oldMarkers.entries()) {
106
+ if (!ids.has(id)) {
107
+ removed.push(data);
108
+ }
109
+ }
110
+ this.onDidChangeBreakpointsEmitter.fire({ affected: [uri], added, removed, changed });
111
+ return result;
112
+ }
113
+
114
+ getBreakpoint(uri: URI, filter: number | Partial<monaco.IPosition> | undefined): IDebugBreakpoint | undefined {
115
+ if (typeof filter === 'number') {
116
+ filter = { lineNumber: filter };
117
+ }
118
+ return this.getBreakpoints(uri, filter)[0];
119
+ }
120
+
121
+ getBreakpoints(uri?: URI, filter?: Partial<monaco.IPosition>): IDebugBreakpoint[] {
122
+ let dataFilter: ((breakpoint: IDebugBreakpoint) => boolean) | undefined;
123
+ if (filter) {
124
+ dataFilter = (breakpoint: IDebugBreakpoint) => {
125
+ if (
126
+ (filter.lineNumber && breakpoint.raw.line !== filter.lineNumber) ||
127
+ (filter.column && breakpoint.raw.column !== filter.column)
128
+ ) {
129
+ return false;
130
+ }
131
+ return true;
132
+ };
133
+ }
134
+ return this.findMarkers({
135
+ uri,
136
+ dataFilter,
137
+ }).map((marker) => marker.data);
138
+ }
139
+
140
+ setBreakpoints(uri: URI, breakpoints: IDebugBreakpoint[]): void {
141
+ if (breakpoints.length > 0) {
142
+ this._affected.add(uri.toString());
143
+ } else {
144
+ this._affected.delete(uri.toString());
145
+ }
146
+ this.setMarkers(
147
+ uri,
148
+ this.owner,
149
+ breakpoints.sort((a, b) => a.raw.line - b.raw.line),
150
+ );
151
+ }
152
+
153
+ addBreakpoint(breakpoint: IDebugBreakpoint): boolean {
154
+ const uri = new URI(breakpoint.uri);
155
+ const breakpoints = this.getBreakpoints(uri);
156
+ const existed = breakpoints.find(
157
+ ({ raw }) => raw.line === breakpoint.raw.line && raw.column === breakpoint.raw.column,
158
+ );
159
+ this.reporterService.point(DEBUG_REPORT_NAME?.DEBUG_BREAKPOINT, 'add');
160
+ if (!existed) {
161
+ this.setBreakpoints(uri, [...breakpoints, breakpoint]);
162
+ return true;
163
+ }
164
+ return false;
165
+ }
166
+
167
+ delBreakpoint(breakpoint: IDebugBreakpoint): boolean {
168
+ const uri = URI.parse(breakpoint.uri);
169
+ const breakpoints = this.getBreakpoints(uri);
170
+ const index = breakpoints.findIndex((bp) => bp.id === breakpoint.id);
171
+ if (index > -1) {
172
+ breakpoints.splice(index, 1);
173
+ this.setBreakpoints(uri, ([] as IDebugBreakpoint[]).concat(breakpoints));
174
+ return true;
175
+ }
176
+ return false;
177
+ }
178
+
179
+ clearBreakpoints() {
180
+ const affected = new Set<string>();
181
+ const breakpoints = this.getBreakpoints();
182
+ breakpoints.map((b) => affected.add(b.uri));
183
+ this.cleanAllMarkers();
184
+ this._affected.clear();
185
+ this.onDidChangeBreakpointsEmitter.fire({
186
+ affected: Array.from(affected.values()).map((str) => URI.parse(str)),
187
+ added: [],
188
+ removed: breakpoints,
189
+ changed: [],
190
+ });
191
+ }
192
+
193
+ updateBreakpoint(breakpoint: IDebugBreakpoint, statusUpdated = false) {
194
+ const uri = URI.parse(breakpoint.uri);
195
+ this.onDidChangeBreakpointsEmitter.fire({
196
+ affected: [uri],
197
+ added: [],
198
+ removed: [],
199
+ changed: [breakpoint],
200
+ statusUpdated,
201
+ });
202
+ }
203
+
204
+ updateBreakpoints(breakpoints: IDebugBreakpoint[], statusUpdated = false) {
205
+ const uriStrings = new Set<string>();
206
+ breakpoints.forEach((breakpoint) => {
207
+ uriStrings.add(breakpoint.uri);
208
+ });
209
+ this.onDidChangeBreakpointsEmitter.fire({
210
+ affected: Array.from(uriStrings.values()).map((v) => URI.parse(v)),
211
+ added: [],
212
+ removed: [],
213
+ changed: breakpoints,
214
+ statusUpdated,
215
+ });
216
+ }
217
+
218
+ enableAllBreakpoints(enabled: boolean): void {
219
+ for (const uriString of this.getUris()) {
220
+ let didChange = false;
221
+ const uri = new URI(uriString);
222
+ const markers = this.findMarkers({ uri });
223
+ for (const marker of markers) {
224
+ if (marker.data.enabled !== enabled) {
225
+ marker.data.enabled = enabled;
226
+ didChange = true;
227
+ }
228
+ }
229
+ if (didChange) {
230
+ this.fireOnDidChangeMarkers(uri);
231
+ }
232
+ }
233
+ }
234
+
235
+ protected _breakpointsEnabled = true;
236
+ get breakpointsEnabled(): boolean {
237
+ return this._breakpointsEnabled;
238
+ }
239
+ set breakpointsEnabled(breakpointsEnabled: boolean) {
240
+ if (this._breakpointsEnabled !== breakpointsEnabled) {
241
+ this._breakpointsEnabled = breakpointsEnabled;
242
+ for (const uri of this.getUris()) {
243
+ this.fireOnDidChangeMarkers(new URI(uri));
244
+ }
245
+ this.updateBreakpoints(this.getBreakpoints());
246
+ }
247
+ }
248
+
249
+ async load(): Promise<void> {
250
+ const storage: IStorage = await this.storageProvider(STORAGE_NAMESPACE.DEBUG);
251
+ const data = storage.get<BreakpointManager.Data>('breakpoints', {
252
+ breakpointsEnabled: true,
253
+ breakpoints: {},
254
+ defaultExceptionFilter: [],
255
+ });
256
+ this._breakpointsEnabled = data!.breakpointsEnabled;
257
+ // eslint-disable-next-line guard-for-in
258
+ for (const uri in data!.breakpoints) {
259
+ this.setBreakpoints(
260
+ new URI(uri),
261
+ data!.breakpoints[uri].map((v) => Object.assign(v, { status: new Map() })),
262
+ );
263
+ }
264
+ this.defaultExceptionFilter = data.defaultExceptionFilter || [];
265
+ this.exceptionFilterValue = {};
266
+ this.defaultExceptionFilter.forEach((item) => {
267
+ this.exceptionFilterValue![item.filter] = !!item.default;
268
+ });
269
+ }
270
+
271
+ async save(): Promise<void> {
272
+ const data: BreakpointManager.Data = {
273
+ breakpointsEnabled: this.breakpointsEnabled,
274
+ breakpoints: {},
275
+ defaultExceptionFilter: this.defaultExceptionFilter,
276
+ };
277
+ const uris = this.getUris();
278
+ for (const uri of uris) {
279
+ data.breakpoints[uri] = this.findMarkers({ uri: new URI(uri) }).map((marker) => marker.data);
280
+ }
281
+ const storage: IStorage = await this.storageProvider(STORAGE_NAMESPACE.DEBUG);
282
+ await storage.set('breakpoints', data);
283
+ }
284
+
285
+ clearAllStatus(sessionId: string) {
286
+ const breakpoints = this.getBreakpoints();
287
+ breakpoints.forEach((breakpoint) => {
288
+ breakpoint.status.delete(sessionId);
289
+ });
290
+ this.updateBreakpoints(breakpoints);
291
+ }
292
+
293
+ /**
294
+ * 设置异常断点元信息
295
+ * @param session
296
+ * @param filter
297
+ */
298
+ setExceptionBreakpoints(filters: DebugProtocol.ExceptionBreakpointsFilter[]) {
299
+ this.defaultExceptionFilter = filters;
300
+ for (const item of filters) {
301
+ if (!isUndefined(this.exceptionFilterValue)) {
302
+ this.updateExceptionBreakpoints(
303
+ item.filter,
304
+ isUndefined(this.exceptionFilterValue[item.filter]) ? !!item.default : this.exceptionFilterValue[item.filter],
305
+ );
306
+ } else {
307
+ this.updateExceptionBreakpoints(item.filter, !!item.default);
308
+ }
309
+ }
310
+ }
311
+
312
+ /**
313
+ * 获取异常断点元信息
314
+ * @param session
315
+ */
316
+ getExceptionBreakpoints(): DebugExceptionBreakpoint[] {
317
+ return this.defaultExceptionFilter.map((breakpoint) => ({
318
+ ...breakpoint,
319
+ default: (this.exceptionFilterValue || {})[breakpoint.filter] || false,
320
+ }));
321
+ }
322
+
323
+ /**
324
+ * 通知DebugSession更新Exception配置
325
+ * @param exceptionBreakpoints
326
+ */
327
+ updateExceptionBreakpoints(filter: string, value: boolean) {
328
+ if (isUndefined(this.exceptionFilterValue)) {
329
+ this.exceptionFilterValue = {};
330
+ }
331
+ this.exceptionFilterValue[filter] = value;
332
+
333
+ const filters = this.defaultExceptionFilter
334
+ .filter((exp) => (this.exceptionFilterValue || {})[exp.filter])
335
+ .map((exp) => exp.filter);
336
+ this.onDidChangeExceptionsBreakpointsEmitter.fire({ filters });
337
+ }
338
+ }
339
+
340
+ export namespace BreakpointManager {
341
+ export interface Data {
342
+ breakpointsEnabled: boolean;
343
+ breakpoints: {
344
+ [uri: string]: IDebugBreakpoint[];
345
+ };
346
+ defaultExceptionFilter: DebugExceptionBreakpoint[];
347
+ }
348
+ }
@@ -0,0 +1,70 @@
1
+ import btoa from 'btoa';
2
+
3
+ import { URI } from '@opensumi/ide-core-common';
4
+ import { DebugProtocol } from '@opensumi/vscode-debugprotocol/lib/debugProtocol';
5
+
6
+ import { IRuntimeBreakpoint, IDebugBreakpoint } from '../../common';
7
+ import { Marker } from '../markers';
8
+
9
+ export const BREAKPOINT_KIND = 'breakpoint';
10
+
11
+ function generateId(uri: string, line: number, column = 1) {
12
+ return btoa(`${uri}:${line}:${column}`);
13
+ }
14
+
15
+ export namespace DebugBreakpoint {
16
+ export function create(uri: URI, data: DebugProtocol.SourceBreakpoint, enabled = true): IDebugBreakpoint {
17
+ return {
18
+ id: generateId(uri.toString(), data.line, data.column),
19
+ uri: uri.toString(),
20
+ enabled,
21
+ status: new Map<string, DebugProtocol.Breakpoint>(),
22
+ raw: {
23
+ column: undefined,
24
+ condition: undefined,
25
+ hitCondition: undefined,
26
+ logMessage: undefined,
27
+ ...data,
28
+ },
29
+ };
30
+ }
31
+ }
32
+
33
+ export interface IExceptionBreakpoint {
34
+ label: string;
35
+ filter: string;
36
+ default?: boolean;
37
+ }
38
+
39
+ export type DebugExceptionBreakpoint = IExceptionBreakpoint;
40
+
41
+ export function isDebugBreakpoint(
42
+ breakpoint: IDebugBreakpoint | DebugExceptionBreakpoint,
43
+ ): breakpoint is IDebugBreakpoint {
44
+ return !!breakpoint && !!(breakpoint as IDebugBreakpoint).raw;
45
+ }
46
+
47
+ export function getStatus(breakpoint: IRuntimeBreakpoint) {
48
+ return Array.from(breakpoint.status.values()).filter((b) => b.verified)[0];
49
+ }
50
+
51
+ export function isRuntimeBreakpoint(breakpoint: IDebugBreakpoint): breakpoint is IRuntimeBreakpoint {
52
+ const status = getStatus(breakpoint);
53
+ return !!(status && status.verified);
54
+ }
55
+
56
+ export function isDebugExceptionBreakpoint(
57
+ breakpoint: IDebugBreakpoint | DebugExceptionBreakpoint,
58
+ ): breakpoint is DebugExceptionBreakpoint {
59
+ return breakpoint && !!(breakpoint as DebugExceptionBreakpoint).filter;
60
+ }
61
+
62
+ export interface BreakpointMarker extends Marker<IDebugBreakpoint> {
63
+ kind: 'breakpoint';
64
+ }
65
+
66
+ export namespace BreakpointMarker {
67
+ export function is(node: Marker<object>): node is BreakpointMarker {
68
+ return 'kind' in node && node.kind === BREAKPOINT_KIND;
69
+ }
70
+ }
@@ -0,0 +1,3 @@
1
+ export * from './breakpoint-manager';
2
+ export * from './breakpoint-marker';
3
+ export * from './breakpoint-decoration';
@@ -0,0 +1,73 @@
1
+ .debug_action {
2
+ opacity: 0.9;
3
+ cursor: pointer;
4
+ pointer-events: all;
5
+ text-align: center;
6
+ width: 16px;
7
+ height: 16px;
8
+ min-width: 16px;
9
+ line-height: 16px;
10
+ &::before {
11
+ font-size: 16px;
12
+ }
13
+ &:active {
14
+ transform: scale(1.1);
15
+ }
16
+ &::not(:focus) {
17
+ border: 1px solid transparent;
18
+ }
19
+ &.mod_disabled {
20
+ opacity: 0.5;
21
+ user-select: none;
22
+ pointer-events: none;
23
+ }
24
+ }
25
+
26
+ .icon-size {
27
+ font-size: 16px;
28
+ }
29
+
30
+ .start {
31
+ color: var(--debugIcon-startForeground);
32
+ .icon-size;
33
+ }
34
+
35
+ .continue {
36
+ color: var(--debugIcon-continueForeground);
37
+ .icon-size;
38
+ }
39
+
40
+ .step-in {
41
+ color: var(--debugIcon-stepIntoForeground);
42
+ .icon-size;
43
+ }
44
+
45
+ .step-out {
46
+ color: var(--debugIcon-stepOutForeground);
47
+ .icon-size;
48
+ }
49
+
50
+ .stop {
51
+ color: var(--debugIcon-stopForeground);
52
+ .icon-size;
53
+ }
54
+
55
+ .pause {
56
+ color: var(--debugIcon-pauseForeground);
57
+ .icon-size;
58
+ }
59
+
60
+ .disconnect {
61
+ color: var(--debugIcon-disconnectForeground);
62
+ .icon-size;
63
+ }
64
+
65
+ .reload {
66
+ color: var(--debugIcon-restartForeground);
67
+ .icon-size;
68
+ }
69
+
70
+ .step {
71
+ color: var(--debugIcon-stepOverForeground);
72
+ .icon-size;
73
+ }
@@ -0,0 +1,40 @@
1
+ import cls from 'classnames';
2
+ import React from 'react';
3
+
4
+ import { getIcon } from '@opensumi/ide-core-browser';
5
+
6
+ import styles from './index.module.less';
7
+
8
+ export interface DebugActionProps {
9
+ icon: string;
10
+ label: string;
11
+ run?: () => any;
12
+ enabled?: boolean;
13
+ color?: string;
14
+ className?: string;
15
+ }
16
+
17
+ export const DebugAction = ({
18
+ icon,
19
+ label,
20
+ run,
21
+ enabled,
22
+ className,
23
+ ...restProps
24
+ }: DebugActionProps & React.HtmlHTMLAttributes<HTMLDivElement>) => {
25
+ const noop = () => {};
26
+ return (
27
+ <div
28
+ {...restProps}
29
+ className={cls(
30
+ styles.debug_action,
31
+ styles[icon],
32
+ getIcon(icon) || icon,
33
+ typeof enabled === 'boolean' && !enabled && styles.mod_disabled,
34
+ className,
35
+ )}
36
+ title={label}
37
+ onClick={run || noop}
38
+ ></div>
39
+ );
40
+ };
@@ -0,0 +1,42 @@
1
+ .exception_widget_container {
2
+ overflow: hidden;
3
+ width: 100%;
4
+ background-color: var(--debugExceptionWidget-background);
5
+ border-top: 1px solid var(--debugExceptionWidget-border);
6
+ border-bottom: 1px solid var(--debugExceptionWidget-border);
7
+ &:focus {
8
+ outline: 1px solid var(--focusBorder);
9
+ outline-offset: -1px;
10
+ }
11
+
12
+ .exception_widget {
13
+ padding: 6px 10px;
14
+ white-space: pre-wrap;
15
+ user-select: text;
16
+ -webkit-user-select: text;
17
+ }
18
+
19
+ .exception_widget .title {
20
+ display: flex;
21
+ }
22
+
23
+ .exception_widget .title .label {
24
+ font-weight: bold;
25
+ display: flex;
26
+ align-items: center;
27
+ }
28
+
29
+ .exception_widget .title .actions {
30
+ flex: 1;
31
+ }
32
+
33
+ .exception_widget .stack_trace {
34
+ margin-top: 0.5em;
35
+ }
36
+
37
+ .exception_widget .stack_trace a {
38
+ text-decoration: underline;
39
+ cursor: pointer;
40
+ color: currentColor;
41
+ }
42
+ }
@@ -0,0 +1,5 @@
1
+ .floating_click_widget {
2
+ position: absolute;
3
+ right: 50px;
4
+ bottom: 30px;
5
+ }
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+
3
+ import { Button } from '@opensumi/ide-components';
4
+ import { localize } from '@opensumi/ide-core-browser';
5
+ import { useInjectable } from '@opensumi/ide-core-browser';
6
+
7
+ import { DebugConfigurationService } from '../../view/configuration/debug-configuration.service';
8
+
9
+ import styles from './index.module.less';
10
+
11
+ export const FloatingClickWidget = (_: React.HtmlHTMLAttributes<HTMLDivElement>) => {
12
+ const { addConfiguration } = useInjectable<DebugConfigurationService>(DebugConfigurationService);
13
+
14
+ return (
15
+ <div className={styles.floating_click_widget}>
16
+ <Button onClick={addConfiguration} size='large'>
17
+ {localize('debug.action.add.configuration')}
18
+ </Button>
19
+ </div>
20
+ );
21
+ };
@@ -0,0 +1 @@
1
+ export * from './debug-action';
@@ -0,0 +1,4 @@
1
+ import { IContextKey } from '@opensumi/ide-core-browser';
2
+
3
+ export const DebugCallStackItemTypeKey = Symbol('DebugCallStackItemTypeKey');
4
+ export type DebugCallStackItemTypeKey = IContextKey<'session' | 'thread' | 'stackFrame'>;
@@ -0,0 +1,54 @@
1
+ import { Optional, Injectable, Autowired } from '@opensumi/di';
2
+ import { IContextKeyService, IContextKey, IScopedContextKeyService } from '@opensumi/ide-core-browser';
3
+
4
+ import { DebugState } from '../../common';
5
+
6
+ import {
7
+ CONTEXT_IN_DEBUG_REPL,
8
+ CONTEXT_IN_DEBUG_CONSOLE,
9
+ CONTEXT_IN_DEBUG_MODE,
10
+ CONTEXT_DEBUG_STATE,
11
+ CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT,
12
+ CONTEXT_SET_VARIABLE_SUPPORTED,
13
+ CONTEXT_RESTART_FRAME_SUPPORTED,
14
+ CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT,
15
+ CONTEXT_CAN_VIEW_MEMORY,
16
+ CONTEXT_EXCEPTION_WIDGET_VISIBLE,
17
+ } from './../../common/constants';
18
+
19
+ @Injectable()
20
+ export class DebugContextKey {
21
+ @Autowired(IContextKeyService)
22
+ private readonly globalContextKeyService: IContextKeyService;
23
+
24
+ private _contextKeyService: IScopedContextKeyService | undefined;
25
+
26
+ public readonly contextInDebugRepl: IContextKey<boolean>;
27
+ public readonly contextInDebugConsole: IContextKey<boolean>;
28
+ public readonly contextInDdebugMode: IContextKey<boolean>;
29
+ public readonly contextDebugState: IContextKey<keyof typeof DebugState>;
30
+ public readonly contextVariableEvaluateNamePresent: IContextKey<boolean>;
31
+ public readonly contextSetVariableSupported: IContextKey<boolean>;
32
+ public readonly contextRestartFrameSupported: IContextKey<boolean>;
33
+ public readonly contextDebugProtocolVariableMenu: IContextKey<string>;
34
+ public readonly contextCanViewMemory: IContextKey<boolean>;
35
+ public readonly contextExceptionWidgetVisible: IContextKey<boolean>;
36
+
37
+ constructor(@Optional() dom?: HTMLElement) {
38
+ this._contextKeyService = this.globalContextKeyService.createScoped(dom);
39
+ this.contextInDebugRepl = CONTEXT_IN_DEBUG_REPL.bind(this.contextKeyScoped);
40
+ this.contextInDebugConsole = CONTEXT_IN_DEBUG_CONSOLE.bind(this.contextKeyScoped);
41
+ this.contextInDdebugMode = CONTEXT_IN_DEBUG_MODE.bind(this.contextKeyScoped);
42
+ this.contextDebugState = CONTEXT_DEBUG_STATE.bind(this.contextKeyScoped);
43
+ this.contextVariableEvaluateNamePresent = CONTEXT_VARIABLE_EVALUATE_NAME_PRESENT.bind(this.contextKeyScoped);
44
+ this.contextSetVariableSupported = CONTEXT_SET_VARIABLE_SUPPORTED.bind(this.contextKeyScoped);
45
+ this.contextRestartFrameSupported = CONTEXT_RESTART_FRAME_SUPPORTED.bind(this.contextKeyScoped);
46
+ this.contextDebugProtocolVariableMenu = CONTEXT_DEBUG_PROTOCOL_VARIABLE_MENU_CONTEXT.bind(this.contextKeyScoped);
47
+ this.contextCanViewMemory = CONTEXT_CAN_VIEW_MEMORY.bind(this.contextKeyScoped);
48
+ this.contextExceptionWidgetVisible = CONTEXT_EXCEPTION_WIDGET_VISIBLE.bind(this._contextKeyService);
49
+ }
50
+
51
+ public get contextKeyScoped(): IScopedContextKeyService {
52
+ return this._contextKeyService!;
53
+ }
54
+ }
@@ -0,0 +1 @@
1
+ export * from './debug-call-stack-item-type-key';