@opensumi/ide-debug 2.21.6 → 2.21.7-rc-1669780664.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 (166) hide show
  1. package/lib/browser/index.d.ts.map +1 -1
  2. package/lib/browser/index.js +2 -9
  3. package/lib/browser/index.js.map +1 -1
  4. package/lib/browser/preferences/launch-folder-preference-provider.d.ts +2 -2
  5. package/lib/browser/preferences/launch-folder-preference-provider.d.ts.map +1 -1
  6. package/lib/browser/preferences/launch-folder-preference-provider.js +2 -2
  7. package/lib/browser/preferences/launch-folder-preference-provider.js.map +1 -1
  8. package/lib/browser/view/configuration/debug-configuration.module.less +5 -5
  9. package/lib/browser/view/configuration/debug-configuration.view.d.ts.map +1 -1
  10. package/lib/browser/view/configuration/debug-configuration.view.js +1 -1
  11. package/lib/browser/view/configuration/debug-configuration.view.js.map +1 -1
  12. package/lib/browser/view/configuration/debug-toolbar.view.js +2 -2
  13. package/lib/browser/view/configuration/debug-toolbar.view.js.map +1 -1
  14. package/lib/browser/view/console/debug-console.module.less +2 -1
  15. package/lib/browser/view/console/debug-console.view.js +2 -2
  16. package/lib/browser/view/console/debug-console.view.js.map +1 -1
  17. package/lib/browser/view/variables/debug-variables.module.less +2 -1
  18. package/lib/browser/view/variables/debug-variables.view.js +1 -1
  19. package/lib/browser/view/variables/debug-variables.view.js.map +1 -1
  20. package/lib/browser/view/watch/debug-watch.module.less +2 -1
  21. package/lib/browser/view/watch/debug-watch.view.js +1 -1
  22. package/lib/browser/view/watch/debug-watch.view.js.map +1 -1
  23. package/package.json +25 -24
  24. package/src/browser/assets/breakpoint-conditional-disabled.svg +4 -0
  25. package/src/browser/assets/breakpoint-conditional-unverified.svg +4 -0
  26. package/src/browser/assets/breakpoint-conditional.svg +4 -0
  27. package/src/browser/assets/breakpoint-disabled.svg +4 -0
  28. package/src/browser/assets/breakpoint-hint.svg +4 -0
  29. package/src/browser/assets/breakpoint-log-disabled.svg +4 -0
  30. package/src/browser/assets/breakpoint-log-unverified.svg +4 -0
  31. package/src/browser/assets/breakpoint-log.svg +4 -0
  32. package/src/browser/assets/breakpoint-unsupported.svg +4 -0
  33. package/src/browser/assets/breakpoint-unverified.svg +4 -0
  34. package/src/browser/assets/breakpoint.svg +4 -0
  35. package/src/browser/assets/breakpoints-activate-inverse.svg +4 -0
  36. package/src/browser/assets/breakpoints-activate.svg +4 -0
  37. package/src/browser/assets/configure-inverse.svg +4 -0
  38. package/src/browser/assets/configure.svg +4 -0
  39. package/src/browser/assets/continue-inverse.svg +4 -0
  40. package/src/browser/assets/current-and-breakpoint.svg +4 -0
  41. package/src/browser/assets/current-arrow.svg +4 -0
  42. package/src/browser/assets/remove-all-inverse.svg +4 -0
  43. package/src/browser/assets/remove-all.svg +4 -0
  44. package/src/browser/assets/repl-inverse.svg +4 -0
  45. package/src/browser/assets/repl.svg +4 -0
  46. package/src/browser/assets/restart-inverse.svg +4 -0
  47. package/src/browser/assets/stackframe-and-breakpoint.svg +4 -0
  48. package/src/browser/assets/stackframe-arrow.svg +4 -0
  49. package/src/browser/assets/start-inverse.svg +4 -0
  50. package/src/browser/breakpoint/breakpoint-decoration.ts +57 -0
  51. package/src/browser/breakpoint/breakpoint-manager.ts +348 -0
  52. package/src/browser/breakpoint/breakpoint-marker.ts +70 -0
  53. package/src/browser/breakpoint/index.ts +3 -0
  54. package/src/browser/components/debug-action/index.module.less +73 -0
  55. package/src/browser/components/debug-action/index.tsx +40 -0
  56. package/src/browser/components/debug-exception-widget.less +42 -0
  57. package/src/browser/components/floating-click-widget/index.module.less +5 -0
  58. package/src/browser/components/floating-click-widget/index.tsx +21 -0
  59. package/src/browser/components/index.ts +1 -0
  60. package/src/browser/contextkeys/debug-call-stack-item-type-key.ts +4 -0
  61. package/src/browser/contextkeys/debug-contextkey.service.ts +54 -0
  62. package/src/browser/contextkeys/index.ts +1 -0
  63. package/src/browser/debug-ansi-handle.ts +521 -0
  64. package/src/browser/debug-configuration-manager.ts +513 -0
  65. package/src/browser/debug-configuration-model.ts +66 -0
  66. package/src/browser/debug-contribution.ts +904 -0
  67. package/src/browser/debug-exception-widget.tsx +89 -0
  68. package/src/browser/debug-link-detector.ts +234 -0
  69. package/src/browser/debug-memory.ts +220 -0
  70. package/src/browser/debug-preferences.ts +70 -0
  71. package/src/browser/debug-progress.service.ts +122 -0
  72. package/src/browser/debug-schema-updater.ts +67 -0
  73. package/src/browser/debug-service.ts +42 -0
  74. package/src/browser/debug-session-connection.ts +333 -0
  75. package/src/browser/debug-session-contribution.ts +57 -0
  76. package/src/browser/debug-session-manager.ts +622 -0
  77. package/src/browser/debug-session.ts +1179 -0
  78. package/src/browser/debug-style.less +128 -0
  79. package/src/browser/debugUtils.ts +110 -0
  80. package/src/browser/editor/debug-breakpoint-widget.ts +99 -0
  81. package/src/browser/editor/debug-breakpoint-zone-widget.tsx +262 -0
  82. package/src/browser/editor/debug-breakpoint.module.less +31 -0
  83. package/src/browser/editor/debug-editor-contribution.ts +590 -0
  84. package/src/browser/editor/debug-expression-provider.ts +101 -0
  85. package/src/browser/editor/debug-hover-model.ts +38 -0
  86. package/src/browser/editor/debug-hover-source.ts +107 -0
  87. package/src/browser/editor/debug-hover-tree.model.service.ts +332 -0
  88. package/src/browser/editor/debug-hover-widget.tsx +200 -0
  89. package/src/browser/editor/debug-hover.module.less +29 -0
  90. package/src/browser/editor/debug-hover.view.tsx +147 -0
  91. package/src/browser/editor/debug-model-manager.ts +220 -0
  92. package/src/browser/editor/debug-model.ts +853 -0
  93. package/src/browser/editor/debug-run-to-cursor.service.ts +180 -0
  94. package/src/browser/editor/debug-styles.ts +66 -0
  95. package/src/browser/editor/evaluatable-expression.ts +47 -0
  96. package/src/browser/editor/index.ts +6 -0
  97. package/src/browser/index.ts +121 -0
  98. package/src/browser/markers/index.ts +2 -0
  99. package/src/browser/markers/marker-manager.ts +201 -0
  100. package/src/browser/markers/marker.ts +20 -0
  101. package/src/browser/model/debug-source.ts +144 -0
  102. package/src/browser/model/debug-stack-frame.ts +111 -0
  103. package/src/browser/model/debug-thread.ts +186 -0
  104. package/src/browser/model/debug-watch.ts +130 -0
  105. package/src/browser/model/index.ts +4 -0
  106. package/src/browser/preferences/launch-folder-preference-provider.ts +23 -0
  107. package/src/browser/preferences/launch-preferences-contribution.ts +9 -0
  108. package/src/browser/preferences/launch-preferences.ts +16 -0
  109. package/src/browser/tree/debug-console-tree-node.define.tsx +76 -0
  110. package/src/browser/tree/debug-tree-node.define.ts +768 -0
  111. package/src/browser/tree/index.ts +2 -0
  112. package/src/browser/view/breakpoints/debug-breakpoints.module.less +72 -0
  113. package/src/browser/view/breakpoints/debug-breakpoints.service.ts +217 -0
  114. package/src/browser/view/breakpoints/debug-breakpoints.view.tsx +174 -0
  115. package/src/browser/view/configuration/debug-configuration.module.less +110 -0
  116. package/src/browser/view/configuration/debug-configuration.service.ts +170 -0
  117. package/src/browser/view/configuration/debug-configuration.view.tsx +252 -0
  118. package/src/browser/view/configuration/debug-toolbar.service.ts +167 -0
  119. package/src/browser/view/configuration/debug-toolbar.view.tsx +335 -0
  120. package/src/browser/view/console/debug-console-filter.model.ts +49 -0
  121. package/src/browser/view/console/debug-console-filter.service.ts +81 -0
  122. package/src/browser/view/console/debug-console-filter.view.tsx +78 -0
  123. package/src/browser/view/console/debug-console-model.ts +48 -0
  124. package/src/browser/view/console/debug-console-session.ts +164 -0
  125. package/src/browser/view/console/debug-console-toolbar.view.tsx +28 -0
  126. package/src/browser/view/console/debug-console-tree.model.service.ts +550 -0
  127. package/src/browser/view/console/debug-console.contribution.ts +181 -0
  128. package/src/browser/view/console/debug-console.module.less +373 -0
  129. package/src/browser/view/console/debug-console.service.ts +433 -0
  130. package/src/browser/view/console/debug-console.view.tsx +500 -0
  131. package/src/browser/view/debug-view-model.ts +182 -0
  132. package/src/browser/view/frames/debug-call-stack-frame.view.tsx +224 -0
  133. package/src/browser/view/frames/debug-call-stack-session.view.tsx +237 -0
  134. package/src/browser/view/frames/debug-call-stack-thread.view.tsx +93 -0
  135. package/src/browser/view/frames/debug-call-stack.contribution.ts +88 -0
  136. package/src/browser/view/frames/debug-call-stack.module.less +193 -0
  137. package/src/browser/view/frames/debug-call-stack.operation.tsx +97 -0
  138. package/src/browser/view/frames/debug-call-stack.service.ts +105 -0
  139. package/src/browser/view/frames/debug-call-stack.view.tsx +43 -0
  140. package/src/browser/view/variables/debug-variables-model.ts +38 -0
  141. package/src/browser/view/variables/debug-variables-tree.model.service.ts +467 -0
  142. package/src/browser/view/variables/debug-variables.contribution.ts +244 -0
  143. package/src/browser/view/variables/debug-variables.module.less +149 -0
  144. package/src/browser/view/variables/debug-variables.view.tsx +303 -0
  145. package/src/browser/view/watch/debug-watch-model.ts +38 -0
  146. package/src/browser/view/watch/debug-watch-tree.model.service.ts +567 -0
  147. package/src/browser/view/watch/debug-watch.contribution.ts +167 -0
  148. package/src/browser/view/watch/debug-watch.module.less +189 -0
  149. package/src/browser/view/watch/debug-watch.view.tsx +337 -0
  150. package/src/common/constants.ts +81 -0
  151. package/src/common/debug-breakpoint.ts +43 -0
  152. package/src/common/debug-configuration.ts +68 -0
  153. package/src/common/debug-editor.ts +4 -0
  154. package/src/common/debug-hover.ts +31 -0
  155. package/src/common/debug-model.ts +247 -0
  156. package/src/common/debug-progress.ts +8 -0
  157. package/src/common/debug-schema-updater.ts +1 -0
  158. package/src/common/debug-service.ts +176 -0
  159. package/src/common/debug-session-options.ts +19 -0
  160. package/src/common/debug-session.ts +200 -0
  161. package/src/common/evaluatable-expression.ts +43 -0
  162. package/src/common/index.ts +14 -0
  163. package/src/common/inline-values.ts +77 -0
  164. package/src/common/terminal.ts +163 -0
  165. package/src/common/types.ts +86 -0
  166. package/src/index.ts +1 -0
@@ -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';