@opensumi/ide-debug 2.12.1-next-079c1930
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.
- package/lib/browser/assets/breakpoint-conditional-disabled.svg +4 -0
- package/lib/browser/assets/breakpoint-conditional-unverified.svg +4 -0
- package/lib/browser/assets/breakpoint-conditional.svg +4 -0
- package/lib/browser/assets/breakpoint-disabled.svg +4 -0
- package/lib/browser/assets/breakpoint-hint.svg +4 -0
- package/lib/browser/assets/breakpoint-log-disabled.svg +4 -0
- package/lib/browser/assets/breakpoint-log-unverified.svg +4 -0
- package/lib/browser/assets/breakpoint-log.svg +4 -0
- package/lib/browser/assets/breakpoint-unsupported.svg +4 -0
- package/lib/browser/assets/breakpoint-unverified.svg +4 -0
- package/lib/browser/assets/breakpoint.svg +4 -0
- package/lib/browser/assets/breakpoints-activate-inverse.svg +4 -0
- package/lib/browser/assets/breakpoints-activate.svg +4 -0
- package/lib/browser/assets/configure-inverse.svg +4 -0
- package/lib/browser/assets/configure.svg +4 -0
- package/lib/browser/assets/continue-inverse.svg +4 -0
- package/lib/browser/assets/current-and-breakpoint.svg +4 -0
- package/lib/browser/assets/current-arrow.svg +4 -0
- package/lib/browser/assets/remove-all-inverse.svg +4 -0
- package/lib/browser/assets/remove-all.svg +4 -0
- package/lib/browser/assets/repl-inverse.svg +4 -0
- package/lib/browser/assets/repl.svg +4 -0
- package/lib/browser/assets/restart-inverse.svg +4 -0
- package/lib/browser/assets/stackframe-and-breakpoint.svg +4 -0
- package/lib/browser/assets/stackframe-arrow.svg +4 -0
- package/lib/browser/assets/start-inverse.svg +4 -0
- package/lib/browser/breakpoint/breakpoint-decoration.d.ts +12 -0
- package/lib/browser/breakpoint/breakpoint-decoration.d.ts.map +1 -0
- package/lib/browser/breakpoint/breakpoint-decoration.js +53 -0
- package/lib/browser/breakpoint/breakpoint-decoration.js.map +1 -0
- package/lib/browser/breakpoint/breakpoint-manager.d.ts +87 -0
- package/lib/browser/breakpoint/breakpoint-manager.d.ts.map +1 -0
- package/lib/browser/breakpoint/breakpoint-manager.js +287 -0
- package/lib/browser/breakpoint/breakpoint-manager.js.map +1 -0
- package/lib/browser/breakpoint/breakpoint-marker.d.ts +37 -0
- package/lib/browser/breakpoint/breakpoint-marker.d.ts.map +1 -0
- package/lib/browser/breakpoint/breakpoint-marker.js +46 -0
- package/lib/browser/breakpoint/breakpoint-marker.js.map +1 -0
- package/lib/browser/breakpoint/index.d.ts +4 -0
- package/lib/browser/breakpoint/index.d.ts.map +1 -0
- package/lib/browser/breakpoint/index.js +7 -0
- package/lib/browser/breakpoint/index.js.map +1 -0
- package/lib/browser/components/debug-action/index.d.ts +11 -0
- package/lib/browser/components/debug-action/index.d.ts.map +1 -0
- package/lib/browser/components/debug-action/index.js +15 -0
- package/lib/browser/components/debug-action/index.js.map +1 -0
- package/lib/browser/components/debug-action/index.module.less +73 -0
- package/lib/browser/components/floating-click-widget/index.d.ts +3 -0
- package/lib/browser/components/floating-click-widget/index.d.ts.map +1 -0
- package/lib/browser/components/floating-click-widget/index.js +17 -0
- package/lib/browser/components/floating-click-widget/index.js.map +1 -0
- package/lib/browser/components/floating-click-widget/index.module.less +5 -0
- package/lib/browser/components/index.d.ts +2 -0
- package/lib/browser/components/index.d.ts.map +1 -0
- package/lib/browser/components/index.js +5 -0
- package/lib/browser/components/index.js.map +1 -0
- package/lib/browser/contextkeys/debug-call-stack-item-type-key.d.ts +4 -0
- package/lib/browser/contextkeys/debug-call-stack-item-type-key.d.ts.map +1 -0
- package/lib/browser/contextkeys/debug-call-stack-item-type-key.js +5 -0
- package/lib/browser/contextkeys/debug-call-stack-item-type-key.js.map +1 -0
- package/lib/browser/contextkeys/debug-contextkey.service.d.ts +16 -0
- package/lib/browser/contextkeys/debug-contextkey.service.d.ts.map +1 -0
- package/lib/browser/contextkeys/debug-contextkey.service.js +33 -0
- package/lib/browser/contextkeys/debug-contextkey.service.js.map +1 -0
- package/lib/browser/contextkeys/index.d.ts +2 -0
- package/lib/browser/contextkeys/index.d.ts.map +1 -0
- package/lib/browser/contextkeys/index.js +5 -0
- package/lib/browser/contextkeys/index.js.map +1 -0
- package/lib/browser/debug-configuration-manager.d.ts +86 -0
- package/lib/browser/debug-configuration-manager.d.ts.map +1 -0
- package/lib/browser/debug-configuration-manager.js +456 -0
- package/lib/browser/debug-configuration-manager.js.map +1 -0
- package/lib/browser/debug-configuration-model.d.ts +24 -0
- package/lib/browser/debug-configuration-model.d.ts.map +1 -0
- package/lib/browser/debug-configuration-model.js +55 -0
- package/lib/browser/debug-configuration-model.js.map +1 -0
- package/lib/browser/debug-contribution.d.ts +207 -0
- package/lib/browser/debug-contribution.d.ts.map +1 -0
- package/lib/browser/debug-contribution.js +764 -0
- package/lib/browser/debug-contribution.js.map +1 -0
- package/lib/browser/debug-link-detector.d.ts +13 -0
- package/lib/browser/debug-link-detector.d.ts.map +1 -0
- package/lib/browser/debug-link-detector.js +196 -0
- package/lib/browser/debug-link-detector.js.map +1 -0
- package/lib/browser/debug-preferences.d.ts +15 -0
- package/lib/browser/debug-preferences.d.ts.map +1 -0
- package/lib/browser/debug-preferences.js +57 -0
- package/lib/browser/debug-preferences.js.map +1 -0
- package/lib/browser/debug-progress.service.d.ts +13 -0
- package/lib/browser/debug-progress.service.d.ts.map +1 -0
- package/lib/browser/debug-progress.service.js +97 -0
- package/lib/browser/debug-progress.service.js.map +1 -0
- package/lib/browser/debug-schema-updater.d.ts +10 -0
- package/lib/browser/debug-schema-updater.d.ts.map +1 -0
- package/lib/browser/debug-schema-updater.js +74 -0
- package/lib/browser/debug-schema-updater.js.map +1 -0
- package/lib/browser/debug-service.d.ts +11 -0
- package/lib/browser/debug-service.d.ts.map +1 -0
- package/lib/browser/debug-service.js +43 -0
- package/lib/browser/debug-service.js.map +1 -0
- package/lib/browser/debug-session-connection.d.ts +107 -0
- package/lib/browser/debug-session-connection.d.ts.map +1 -0
- package/lib/browser/debug-session-connection.js +267 -0
- package/lib/browser/debug-session-connection.js.map +1 -0
- package/lib/browser/debug-session-contribution.d.ts +61 -0
- package/lib/browser/debug-session-contribution.d.ts.map +1 -0
- package/lib/browser/debug-session-contribution.js +116 -0
- package/lib/browser/debug-session-contribution.js.map +1 -0
- package/lib/browser/debug-session-manager.d.ts +130 -0
- package/lib/browser/debug-session-manager.d.ts.map +1 -0
- package/lib/browser/debug-session-manager.js +488 -0
- package/lib/browser/debug-session-manager.js.map +1 -0
- package/lib/browser/debug-session.d.ts +181 -0
- package/lib/browser/debug-session.d.ts.map +1 -0
- package/lib/browser/debug-session.js +898 -0
- package/lib/browser/debug-session.js.map +1 -0
- package/lib/browser/debug-style.less +125 -0
- package/lib/browser/debugUtils.d.ts +18 -0
- package/lib/browser/debugUtils.d.ts.map +1 -0
- package/lib/browser/debugUtils.js +91 -0
- package/lib/browser/debugUtils.js.map +1 -0
- package/lib/browser/editor/debug-breakpoint-widget.d.ts +29 -0
- package/lib/browser/editor/debug-breakpoint-widget.d.ts.map +1 -0
- package/lib/browser/editor/debug-breakpoint-widget.js +82 -0
- package/lib/browser/editor/debug-breakpoint-widget.js.map +1 -0
- package/lib/browser/editor/debug-breakpoint-zone-widget.d.ts +60 -0
- package/lib/browser/editor/debug-breakpoint-zone-widget.d.ts.map +1 -0
- package/lib/browser/editor/debug-breakpoint-zone-widget.js +198 -0
- package/lib/browser/editor/debug-breakpoint-zone-widget.js.map +1 -0
- package/lib/browser/editor/debug-breakpoint.module.less +29 -0
- package/lib/browser/editor/debug-editor-contribution.d.ts +27 -0
- package/lib/browser/editor/debug-editor-contribution.d.ts.map +1 -0
- package/lib/browser/editor/debug-editor-contribution.js +354 -0
- package/lib/browser/editor/debug-editor-contribution.js.map +1 -0
- package/lib/browser/editor/debug-expression-provider.d.ts +12 -0
- package/lib/browser/editor/debug-expression-provider.d.ts.map +1 -0
- package/lib/browser/editor/debug-expression-provider.js +88 -0
- package/lib/browser/editor/debug-expression-provider.js.map +1 -0
- package/lib/browser/editor/debug-hover-model.d.ts +12 -0
- package/lib/browser/editor/debug-hover-model.d.ts.map +1 -0
- package/lib/browser/editor/debug-hover-model.js +43 -0
- package/lib/browser/editor/debug-hover-model.js.map +1 -0
- package/lib/browser/editor/debug-hover-source.d.ts +18 -0
- package/lib/browser/editor/debug-hover-source.d.ts.map +1 -0
- package/lib/browser/editor/debug-hover-source.js +94 -0
- package/lib/browser/editor/debug-hover-source.js.map +1 -0
- package/lib/browser/editor/debug-hover-tree.model.service.d.ts +62 -0
- package/lib/browser/editor/debug-hover-tree.model.service.d.ts.map +1 -0
- package/lib/browser/editor/debug-hover-tree.model.service.js +284 -0
- package/lib/browser/editor/debug-hover-tree.model.service.js.map +1 -0
- package/lib/browser/editor/debug-hover-widget.d.ts +58 -0
- package/lib/browser/editor/debug-hover-widget.d.ts.map +1 -0
- package/lib/browser/editor/debug-hover-widget.js +152 -0
- package/lib/browser/editor/debug-hover-widget.js.map +1 -0
- package/lib/browser/editor/debug-hover.module.less +30 -0
- package/lib/browser/editor/debug-hover.view.d.ts +3 -0
- package/lib/browser/editor/debug-hover.view.d.ts.map +1 -0
- package/lib/browser/editor/debug-hover.view.js +86 -0
- package/lib/browser/editor/debug-hover.view.js.map +1 -0
- package/lib/browser/editor/debug-model-manager.d.ts +41 -0
- package/lib/browser/editor/debug-model-manager.d.ts.map +1 -0
- package/lib/browser/editor/debug-model-manager.js +191 -0
- package/lib/browser/editor/debug-model-manager.js.map +1 -0
- package/lib/browser/editor/debug-model.d.ts +181 -0
- package/lib/browser/editor/debug-model.d.ts.map +1 -0
- package/lib/browser/editor/debug-model.js +673 -0
- package/lib/browser/editor/debug-model.js.map +1 -0
- package/lib/browser/editor/debug-run-to-cursor.service.d.ts +19 -0
- package/lib/browser/editor/debug-run-to-cursor.service.d.ts.map +1 -0
- package/lib/browser/editor/debug-run-to-cursor.service.js +145 -0
- package/lib/browser/editor/debug-run-to-cursor.service.js.map +1 -0
- package/lib/browser/editor/debug-styles.d.ts +13 -0
- package/lib/browser/editor/debug-styles.d.ts.map +1 -0
- package/lib/browser/editor/debug-styles.js +60 -0
- package/lib/browser/editor/debug-styles.js.map +1 -0
- package/lib/browser/editor/evaluatable-expression.d.ts +22 -0
- package/lib/browser/editor/evaluatable-expression.d.ts.map +1 -0
- package/lib/browser/editor/evaluatable-expression.js +24 -0
- package/lib/browser/editor/evaluatable-expression.js.map +1 -0
- package/lib/browser/editor/index.d.ts +7 -0
- package/lib/browser/editor/index.d.ts.map +1 -0
- package/lib/browser/editor/index.js +10 -0
- package/lib/browser/editor/index.js.map +1 -0
- package/lib/browser/editor/inline-values.d.ts +4 -0
- package/lib/browser/editor/inline-values.d.ts.map +1 -0
- package/lib/browser/editor/inline-values.js +6 -0
- package/lib/browser/editor/inline-values.js.map +1 -0
- package/lib/browser/index.d.ts +27 -0
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/browser/index.js +135 -0
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/markers/index.d.ts +3 -0
- package/lib/browser/markers/index.d.ts.map +1 -0
- package/lib/browser/markers/index.js +6 -0
- package/lib/browser/markers/index.js.map +1 -0
- package/lib/browser/markers/marker-manager.d.ts +62 -0
- package/lib/browser/markers/marker-manager.d.ts.map +1 -0
- package/lib/browser/markers/marker-manager.js +175 -0
- package/lib/browser/markers/marker-manager.js.map +1 -0
- package/lib/browser/markers/marker.d.ts +13 -0
- package/lib/browser/markers/marker.d.ts.map +1 -0
- package/lib/browser/markers/marker.js +3 -0
- package/lib/browser/markers/marker.js.map +1 -0
- package/lib/browser/model/debug-source.d.ts +46 -0
- package/lib/browser/model/debug-source.d.ts.map +1 -0
- package/lib/browser/model/debug-source.js +113 -0
- package/lib/browser/model/debug-source.js.map +1 -0
- package/lib/browser/model/debug-stack-frame.d.ts +30 -0
- package/lib/browser/model/debug-stack-frame.d.ts.map +1 -0
- package/lib/browser/model/debug-stack-frame.js +85 -0
- package/lib/browser/model/debug-stack-frame.js.map +1 -0
- package/lib/browser/model/debug-thread.d.ts +46 -0
- package/lib/browser/model/debug-thread.d.ts.map +1 -0
- package/lib/browser/model/debug-thread.js +140 -0
- package/lib/browser/model/debug-thread.js.map +1 -0
- package/lib/browser/model/debug-watch.d.ts +39 -0
- package/lib/browser/model/debug-watch.d.ts.map +1 -0
- package/lib/browser/model/debug-watch.js +97 -0
- package/lib/browser/model/debug-watch.js.map +1 -0
- package/lib/browser/model/index.d.ts +5 -0
- package/lib/browser/model/index.d.ts.map +1 -0
- package/lib/browser/model/index.js +8 -0
- package/lib/browser/model/index.js.map +1 -0
- package/lib/browser/preferences/launch-folder-preference-provider.d.ts +6 -0
- package/lib/browser/preferences/launch-folder-preference-provider.d.ts.map +1 -0
- package/lib/browser/preferences/launch-folder-preference-provider.js +29 -0
- package/lib/browser/preferences/launch-folder-preference-provider.js.map +1 -0
- package/lib/browser/preferences/launch-preferences-contribution.d.ts +6 -0
- package/lib/browser/preferences/launch-preferences-contribution.d.ts.map +1 -0
- package/lib/browser/preferences/launch-preferences-contribution.js +17 -0
- package/lib/browser/preferences/launch-preferences-contribution.js.map +1 -0
- package/lib/browser/preferences/launch-preferences.d.ts +3 -0
- package/lib/browser/preferences/launch-preferences.d.ts.map +1 -0
- package/lib/browser/preferences/launch-preferences.js +16 -0
- package/lib/browser/preferences/launch-preferences.js.map +1 -0
- package/lib/browser/tree/debug-console-tree-node.define.d.ts +29 -0
- package/lib/browser/tree/debug-console-tree-node.define.d.ts.map +1 -0
- package/lib/browser/tree/debug-console-tree-node.define.js +68 -0
- package/lib/browser/tree/debug-console-tree-node.define.js.map +1 -0
- package/lib/browser/tree/debug-tree-node.define.d.ts +199 -0
- package/lib/browser/tree/debug-tree-node.define.d.ts.map +1 -0
- package/lib/browser/tree/debug-tree-node.define.js +583 -0
- package/lib/browser/tree/debug-tree-node.define.js.map +1 -0
- package/lib/browser/tree/index.d.ts +3 -0
- package/lib/browser/tree/index.d.ts.map +1 -0
- package/lib/browser/tree/index.js +6 -0
- package/lib/browser/tree/index.js.map +1 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.module.less +71 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.service.d.ts +42 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.service.d.ts.map +1 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.service.js +228 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.service.js.map +1 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.view.d.ts +19 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.view.d.ts.map +1 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.view.js +108 -0
- package/lib/browser/view/breakpoints/debug-breakpoints.view.js.map +1 -0
- package/lib/browser/view/configuration/debug-configuration.module.less +101 -0
- package/lib/browser/view/configuration/debug-configuration.service.d.ts +36 -0
- package/lib/browser/view/configuration/debug-configuration.service.d.ts.map +1 -0
- package/lib/browser/view/configuration/debug-configuration.service.js +186 -0
- package/lib/browser/view/configuration/debug-configuration.service.js.map +1 -0
- package/lib/browser/view/configuration/debug-configuration.view.d.ts +3 -0
- package/lib/browser/view/configuration/debug-configuration.view.d.ts.map +1 -0
- package/lib/browser/view/configuration/debug-configuration.view.js +106 -0
- package/lib/browser/view/configuration/debug-configuration.view.js.map +1 -0
- package/lib/browser/view/configuration/debug-toolbar.service.d.ts +30 -0
- package/lib/browser/view/configuration/debug-toolbar.service.d.ts.map +1 -0
- package/lib/browser/view/configuration/debug-toolbar.service.js +173 -0
- package/lib/browser/view/configuration/debug-toolbar.service.js.map +1 -0
- package/lib/browser/view/configuration/debug-toolbar.view.d.ts +7 -0
- package/lib/browser/view/configuration/debug-toolbar.view.d.ts.map +1 -0
- package/lib/browser/view/configuration/debug-toolbar.view.js +171 -0
- package/lib/browser/view/configuration/debug-toolbar.view.js.map +1 -0
- package/lib/browser/view/console/debug-console-filter.model.d.ts +8 -0
- package/lib/browser/view/console/debug-console-filter.model.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-filter.model.js +53 -0
- package/lib/browser/view/console/debug-console-filter.model.js.map +1 -0
- package/lib/browser/view/console/debug-console-filter.service.d.ts +23 -0
- package/lib/browser/view/console/debug-console-filter.service.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-filter.service.js +66 -0
- package/lib/browser/view/console/debug-console-filter.service.js.map +1 -0
- package/lib/browser/view/console/debug-console-filter.view.d.ts +6 -0
- package/lib/browser/view/console/debug-console-filter.view.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-filter.view.js +63 -0
- package/lib/browser/view/console/debug-console-filter.view.js.map +1 -0
- package/lib/browser/view/console/debug-console-model.d.ts +18 -0
- package/lib/browser/view/console/debug-console-model.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-model.js +52 -0
- package/lib/browser/view/console/debug-console-model.js.map +1 -0
- package/lib/browser/view/console/debug-console-session.d.ts +32 -0
- package/lib/browser/view/console/debug-console-session.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-session.js +113 -0
- package/lib/browser/view/console/debug-console-session.js.map +1 -0
- package/lib/browser/view/console/debug-console-toolbar.view.d.ts +3 -0
- package/lib/browser/view/console/debug-console-toolbar.view.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-toolbar.view.js +20 -0
- package/lib/browser/view/console/debug-console-toolbar.view.js.map +1 -0
- package/lib/browser/view/console/debug-console-tree.model.service.d.ts +90 -0
- package/lib/browser/view/console/debug-console-tree.model.service.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console-tree.model.service.js +460 -0
- package/lib/browser/view/console/debug-console-tree.model.service.js.map +1 -0
- package/lib/browser/view/console/debug-console.contribution.d.ts +20 -0
- package/lib/browser/view/console/debug-console.contribution.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console.contribution.js +164 -0
- package/lib/browser/view/console/debug-console.contribution.js.map +1 -0
- package/lib/browser/view/console/debug-console.module.less +321 -0
- package/lib/browser/view/console/debug-console.service.d.ts +67 -0
- package/lib/browser/view/console/debug-console.service.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console.service.js +397 -0
- package/lib/browser/view/console/debug-console.service.js.map +1 -0
- package/lib/browser/view/console/debug-console.view.d.ts +25 -0
- package/lib/browser/view/console/debug-console.view.d.ts.map +1 -0
- package/lib/browser/view/console/debug-console.view.js +299 -0
- package/lib/browser/view/console/debug-console.view.js.map +1 -0
- package/lib/browser/view/debug-view-model.d.ts +54 -0
- package/lib/browser/view/debug-view-model.d.ts.map +1 -0
- package/lib/browser/view/debug-view-model.js +161 -0
- package/lib/browser/view/debug-view-model.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-frame.view.d.ts +14 -0
- package/lib/browser/view/frames/debug-call-stack-frame.view.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-frame.view.js +143 -0
- package/lib/browser/view/frames/debug-call-stack-frame.view.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-session.view.d.ts +10 -0
- package/lib/browser/view/frames/debug-call-stack-session.view.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-session.view.js +148 -0
- package/lib/browser/view/frames/debug-call-stack-session.view.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-thread.view.d.ts +12 -0
- package/lib/browser/view/frames/debug-call-stack-thread.view.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack-thread.view.js +52 -0
- package/lib/browser/view/frames/debug-call-stack-thread.view.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.contribution.d.ts +10 -0
- package/lib/browser/view/frames/debug-call-stack.contribution.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.contribution.js +81 -0
- package/lib/browser/view/frames/debug-call-stack.contribution.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.module.less +195 -0
- package/lib/browser/view/frames/debug-call-stack.operation.d.ts +9 -0
- package/lib/browser/view/frames/debug-call-stack.operation.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.operation.js +43 -0
- package/lib/browser/view/frames/debug-call-stack.operation.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.service.d.ts +12 -0
- package/lib/browser/view/frames/debug-call-stack.service.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.service.js +94 -0
- package/lib/browser/view/frames/debug-call-stack.service.js.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.view.d.ts +6 -0
- package/lib/browser/view/frames/debug-call-stack.view.d.ts.map +1 -0
- package/lib/browser/view/frames/debug-call-stack.view.js +32 -0
- package/lib/browser/view/frames/debug-call-stack.view.js.map +1 -0
- package/lib/browser/view/variables/debug-variables-model.d.ts +12 -0
- package/lib/browser/view/variables/debug-variables-model.d.ts.map +1 -0
- package/lib/browser/view/variables/debug-variables-model.js +43 -0
- package/lib/browser/view/variables/debug-variables-model.js.map +1 -0
- package/lib/browser/view/variables/debug-variables-tree.model.service.d.ts +65 -0
- package/lib/browser/view/variables/debug-variables-tree.model.service.d.ts.map +1 -0
- package/lib/browser/view/variables/debug-variables-tree.model.service.js +376 -0
- package/lib/browser/view/variables/debug-variables-tree.model.service.js.map +1 -0
- package/lib/browser/view/variables/debug-variables.contribution.d.ts +14 -0
- package/lib/browser/view/variables/debug-variables.contribution.d.ts.map +1 -0
- package/lib/browser/view/variables/debug-variables.contribution.js +155 -0
- package/lib/browser/view/variables/debug-variables.contribution.js.map +1 -0
- package/lib/browser/view/variables/debug-variables.module.less +176 -0
- package/lib/browser/view/variables/debug-variables.view.d.ts +21 -0
- package/lib/browser/view/variables/debug-variables.view.d.ts.map +1 -0
- package/lib/browser/view/variables/debug-variables.view.js +151 -0
- package/lib/browser/view/variables/debug-variables.view.js.map +1 -0
- package/lib/browser/view/watch/debug-watch-model.d.ts +12 -0
- package/lib/browser/view/watch/debug-watch-model.d.ts.map +1 -0
- package/lib/browser/view/watch/debug-watch-model.js +43 -0
- package/lib/browser/view/watch/debug-watch-model.js.map +1 -0
- package/lib/browser/view/watch/debug-watch-tree.model.service.d.ts +91 -0
- package/lib/browser/view/watch/debug-watch-tree.model.service.d.ts.map +1 -0
- package/lib/browser/view/watch/debug-watch-tree.model.service.js +480 -0
- package/lib/browser/view/watch/debug-watch-tree.model.service.js.map +1 -0
- package/lib/browser/view/watch/debug-watch.contribution.d.ts +12 -0
- package/lib/browser/view/watch/debug-watch.contribution.d.ts.map +1 -0
- package/lib/browser/view/watch/debug-watch.contribution.js +143 -0
- package/lib/browser/view/watch/debug-watch.contribution.js.map +1 -0
- package/lib/browser/view/watch/debug-watch.module.less +214 -0
- package/lib/browser/view/watch/debug-watch.view.d.ts +21 -0
- package/lib/browser/view/watch/debug-watch.view.d.ts.map +1 -0
- package/lib/browser/view/watch/debug-watch.view.js +194 -0
- package/lib/browser/view/watch/debug-watch.view.js.map +1 -0
- package/lib/common/constants.d.ts +57 -0
- package/lib/common/constants.d.ts.map +1 -0
- package/lib/common/constants.js +61 -0
- package/lib/common/constants.js.map +1 -0
- package/lib/common/debug-configuration.d.ts +56 -0
- package/lib/common/debug-configuration.d.ts.map +1 -0
- package/lib/common/debug-configuration.js +15 -0
- package/lib/common/debug-configuration.js.map +1 -0
- package/lib/common/debug-editor.d.ts +4 -0
- package/lib/common/debug-editor.d.ts.map +1 -0
- package/lib/common/debug-editor.js +5 -0
- package/lib/common/debug-editor.js.map +1 -0
- package/lib/common/debug-model.d.ts +104 -0
- package/lib/common/debug-model.d.ts.map +1 -0
- package/lib/common/debug-model.js +10 -0
- package/lib/common/debug-model.js.map +1 -0
- package/lib/common/debug-progress.d.ts +7 -0
- package/lib/common/debug-progress.d.ts.map +1 -0
- package/lib/common/debug-progress.js +5 -0
- package/lib/common/debug-progress.js.map +1 -0
- package/lib/common/debug-schema-updater.d.ts +2 -0
- package/lib/common/debug-schema-updater.d.ts.map +1 -0
- package/lib/common/debug-schema-updater.js +5 -0
- package/lib/common/debug-schema-updater.js.map +1 -0
- package/lib/common/debug-service.d.ts +76 -0
- package/lib/common/debug-service.d.ts.map +1 -0
- package/lib/common/debug-service.js +16 -0
- package/lib/common/debug-service.js.map +1 -0
- package/lib/common/debug-session-options.d.ts +14 -0
- package/lib/common/debug-session-options.d.ts.map +1 -0
- package/lib/common/debug-session-options.js +11 -0
- package/lib/common/debug-session-options.js.map +1 -0
- package/lib/common/debug-session.d.ts +81 -0
- package/lib/common/debug-session.d.ts.map +1 -0
- package/lib/common/debug-session.js +19 -0
- package/lib/common/debug-session.js.map +1 -0
- package/lib/common/evaluatable-expression.d.ts +38 -0
- package/lib/common/evaluatable-expression.d.ts.map +1 -0
- package/lib/common/evaluatable-expression.js +3 -0
- package/lib/common/evaluatable-expression.js.map +1 -0
- package/lib/common/index.d.ts +12 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +15 -0
- package/lib/common/index.js.map +1 -0
- package/lib/common/inline-values.d.ts +65 -0
- package/lib/common/inline-values.d.ts.map +1 -0
- package/lib/common/inline-values.js +4 -0
- package/lib/common/inline-values.js.map +1 -0
- package/lib/common/types.d.ts +80 -0
- package/lib/common/types.d.ts.map +1 -0
- package/lib/common/types.js +51 -0
- package/lib/common/types.js.map +1 -0
- package/lib/index.d.ts +2 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +5 -0
- package/lib/index.js.map +1 -0
- package/package.json +48 -0
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DebugStackFramesView = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = (0, tslib_1.__importDefault)(require("react"));
|
|
6
|
+
const classnames_1 = (0, tslib_1.__importDefault)(require("classnames"));
|
|
7
|
+
const mobx_react_lite_1 = require("mobx-react-lite");
|
|
8
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
9
|
+
const ide_components_1 = require("@opensumi/ide-components");
|
|
10
|
+
const common_1 = require("../../../common");
|
|
11
|
+
const debug_call_stack_module_less_1 = (0, tslib_1.__importDefault)(require("./debug-call-stack.module.less"));
|
|
12
|
+
const debug_call_stack_service_1 = require("./debug-call-stack.service");
|
|
13
|
+
exports.DebugStackFramesView = (0, mobx_react_lite_1.observer)((props) => {
|
|
14
|
+
const { viewState, frames: rawFrames, thread, indent = 0, session } = props;
|
|
15
|
+
const [selected, setSelected] = react_1.default.useState();
|
|
16
|
+
const [isLoading, setIsLoading] = react_1.default.useState(false);
|
|
17
|
+
const [frames, setFrames] = react_1.default.useState([]);
|
|
18
|
+
const [framesErrorMessage, setFramesErrorMessage] = react_1.default.useState('');
|
|
19
|
+
const [canLoadMore, setCanLoadMore] = react_1.default.useState(false);
|
|
20
|
+
const manager = (0, ide_core_browser_1.useInjectable)(common_1.IDebugSessionManager);
|
|
21
|
+
const debugCallStackService = (0, ide_core_browser_1.useInjectable)(debug_call_stack_service_1.DebugCallStackService);
|
|
22
|
+
const loadMore = async () => {
|
|
23
|
+
var _a, _b;
|
|
24
|
+
if (!thread) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
const remainingFramesCount = typeof ((_a = thread.stoppedDetails) === null || _a === void 0 ? void 0 : _a.totalFrames) === 'number' ? (((_b = thread.stoppedDetails) === null || _b === void 0 ? void 0 : _b.totalFrames) - thread.frameCount) : undefined;
|
|
28
|
+
const frames = await thread.fetchFrames(remainingFramesCount);
|
|
29
|
+
setFrames(frames);
|
|
30
|
+
};
|
|
31
|
+
const frameOpenSource = (frame) => {
|
|
32
|
+
if (frame && frame.source) {
|
|
33
|
+
frame.source.open({}, frame);
|
|
34
|
+
}
|
|
35
|
+
};
|
|
36
|
+
react_1.default.useEffect(() => {
|
|
37
|
+
setFrames([...rawFrames]);
|
|
38
|
+
const disposable = new ide_core_browser_1.DisposableCollection();
|
|
39
|
+
disposable.push(manager.onDidChangeActiveDebugSession(({ previous }) => {
|
|
40
|
+
if (previous && previous !== thread.session) {
|
|
41
|
+
setSelected(undefined);
|
|
42
|
+
}
|
|
43
|
+
}));
|
|
44
|
+
if (session) {
|
|
45
|
+
disposable.push(session.onDidChangeCallStack(() => {
|
|
46
|
+
setFrames([...thread.frames]);
|
|
47
|
+
}));
|
|
48
|
+
}
|
|
49
|
+
return () => {
|
|
50
|
+
disposable.dispose();
|
|
51
|
+
};
|
|
52
|
+
}, []);
|
|
53
|
+
react_1.default.useEffect(() => {
|
|
54
|
+
if (thread) {
|
|
55
|
+
const hasSourceFrame = thread.frames.find((e) => !!e.source);
|
|
56
|
+
if (hasSourceFrame) {
|
|
57
|
+
setSelected(hasSourceFrame.raw.id);
|
|
58
|
+
frameOpenSource(hasSourceFrame);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}, [thread.frameCount]);
|
|
62
|
+
react_1.default.useEffect(() => {
|
|
63
|
+
if (thread) {
|
|
64
|
+
if (thread.stoppedDetails) {
|
|
65
|
+
const { framesErrorMessage, totalFrames } = thread.stoppedDetails;
|
|
66
|
+
setFramesErrorMessage(framesErrorMessage || '');
|
|
67
|
+
if (totalFrames && totalFrames > thread.frameCount) {
|
|
68
|
+
setCanLoadMore(true);
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
setCanLoadMore(false);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
else {
|
|
75
|
+
setCanLoadMore(false);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
else {
|
|
79
|
+
setCanLoadMore(false);
|
|
80
|
+
}
|
|
81
|
+
}, [frames]);
|
|
82
|
+
const template = ({ data, }) => {
|
|
83
|
+
const frame = data;
|
|
84
|
+
const isLabel = frame.raw.presentationHint === 'label';
|
|
85
|
+
const isSubtle = frame.raw.presentationHint === 'subtle';
|
|
86
|
+
const clickHandler = () => {
|
|
87
|
+
if (isLabel || isSubtle) {
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
90
|
+
manager.updateCurrentSession(frame.session);
|
|
91
|
+
frame.session.currentThread = frame.thread;
|
|
92
|
+
setSelected(frame.raw.id);
|
|
93
|
+
frameOpenSource(frame);
|
|
94
|
+
};
|
|
95
|
+
const restartFrame = (event) => {
|
|
96
|
+
event.preventDefault();
|
|
97
|
+
event.stopPropagation();
|
|
98
|
+
if (frame.canRestart) {
|
|
99
|
+
frame.restart();
|
|
100
|
+
}
|
|
101
|
+
};
|
|
102
|
+
return react_1.default.createElement("div", { style: { paddingLeft: `${indent}px` }, className: (0, classnames_1.default)(debug_call_stack_module_less_1.default.debug_stack_frames_item, selected === frame.raw.id && debug_call_stack_module_less_1.default.selected, !(frame.raw && frame.raw.source && frame.raw.source.name) && debug_call_stack_module_less_1.default.debug_stack_frames_item_hidden), onClick: clickHandler, onContextMenu: (event) => debugCallStackService.handleContextMenu(event, data) },
|
|
103
|
+
react_1.default.createElement("span", { className: (0, classnames_1.default)(debug_call_stack_module_less_1.default.debug_stack_frames_item_label, isLabel && debug_call_stack_module_less_1.default.label, isSubtle && debug_call_stack_module_less_1.default.subtle) }, frame.raw && frame.raw.name),
|
|
104
|
+
react_1.default.createElement("span", { className: debug_call_stack_module_less_1.default.debug_stack_frames_item_description }, (frame.raw && frame.raw.source && frame.raw.source.name) || (0, ide_core_browser_1.localize)('debug.stack.frame.noSource')),
|
|
105
|
+
react_1.default.createElement(react_1.default.Fragment, null,
|
|
106
|
+
react_1.default.createElement("a", { title: '', onClick: (event) => restartFrame(event), className: (0, classnames_1.default)(debug_call_stack_module_less_1.default.debug_restart_frame_icon, (0, ide_core_browser_1.getIcon)('debug-restart-frame')) }),
|
|
107
|
+
react_1.default.createElement("div", { className: (0, classnames_1.default)(!(0, ide_core_browser_1.isUndefined)(frame.raw.line) && debug_call_stack_module_less_1.default.debug_stack_frames_item_badge) },
|
|
108
|
+
frame.raw && frame.raw.line,
|
|
109
|
+
!(0, ide_core_browser_1.isUndefined)(frame.raw.line) && ':',
|
|
110
|
+
frame.raw && frame.raw.column)));
|
|
111
|
+
};
|
|
112
|
+
const renderLoadMoreStackFrames = () => {
|
|
113
|
+
const clickHandler = async () => {
|
|
114
|
+
setIsLoading(true);
|
|
115
|
+
await loadMore();
|
|
116
|
+
setIsLoading(false);
|
|
117
|
+
};
|
|
118
|
+
return react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_frames_item, onClick: clickHandler },
|
|
119
|
+
react_1.default.createElement("span", { className: debug_call_stack_module_less_1.default.debug_stack_frames_load_more }, (0, ide_core_browser_1.localize)('debug.stack.loadMore')));
|
|
120
|
+
};
|
|
121
|
+
const renderLoading = () => {
|
|
122
|
+
return react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_frames_item },
|
|
123
|
+
react_1.default.createElement("span", { className: debug_call_stack_module_less_1.default.debug_stack_frames_load_more }, (0, ide_core_browser_1.localize)('debug.stack.loading')));
|
|
124
|
+
};
|
|
125
|
+
const renderFramesErrorMessage = (message) => {
|
|
126
|
+
return react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_frames_item },
|
|
127
|
+
react_1.default.createElement("span", { className: debug_call_stack_module_less_1.default.debug_stack_frames_error_message, title: message }, message));
|
|
128
|
+
};
|
|
129
|
+
if (framesErrorMessage) {
|
|
130
|
+
return react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_frames }, renderFramesErrorMessage(framesErrorMessage));
|
|
131
|
+
}
|
|
132
|
+
const footer = () => {
|
|
133
|
+
if (isLoading) {
|
|
134
|
+
return renderLoading();
|
|
135
|
+
}
|
|
136
|
+
else if (canLoadMore) {
|
|
137
|
+
return renderLoadMoreStackFrames();
|
|
138
|
+
}
|
|
139
|
+
return null;
|
|
140
|
+
};
|
|
141
|
+
return (react_1.default.createElement(ide_components_1.RecycleList, { data: frames, template: template, itemHeight: 22, width: viewState.width, height: (isLoading || canLoadMore) ? (frames.length + 1) * 22 : frames.length * 22, footer: (isLoading || canLoadMore) ? footer : undefined }));
|
|
142
|
+
});
|
|
143
|
+
//# sourceMappingURL=debug-call-stack-frame.view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack-frame.view.js","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack-frame.view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ViewState } from '@opensumi/ide-core-browser';
|
|
3
|
+
import { DebugSession } from '../../debug-session';
|
|
4
|
+
export interface DebugStackSessionViewProps {
|
|
5
|
+
session: DebugSession;
|
|
6
|
+
viewState: ViewState;
|
|
7
|
+
indent: number;
|
|
8
|
+
}
|
|
9
|
+
export declare const DebugStackSessionView: (props: DebugStackSessionViewProps) => JSX.Element;
|
|
10
|
+
//# sourceMappingURL=debug-call-stack-session.view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack-session.view.d.ts","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack-session.view.tsx"],"names":[],"mappings":";AAEA,OAAO,EAAE,SAAS,EAAgD,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AASnD,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,qBAAqB,UAAW,0BAA0B,gBAqMtE,CAAC"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DebugStackSessionView = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = (0, tslib_1.__importDefault)(require("react"));
|
|
6
|
+
const classnames_1 = (0, tslib_1.__importDefault)(require("classnames"));
|
|
7
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
8
|
+
const debug_call_stack_thread_view_1 = require("./debug-call-stack-thread.view");
|
|
9
|
+
const debug_call_stack_operation_1 = require("./debug-call-stack.operation");
|
|
10
|
+
const common_1 = require("../../../common");
|
|
11
|
+
const debug_call_stack_module_less_1 = (0, tslib_1.__importDefault)(require("./debug-call-stack.module.less"));
|
|
12
|
+
const debug_call_stack_service_1 = require("./debug-call-stack.service");
|
|
13
|
+
const DebugStackSessionView = (props) => {
|
|
14
|
+
const { session, viewState, indent } = props;
|
|
15
|
+
const manager = (0, ide_core_browser_1.useInjectable)(common_1.IDebugSessionManager);
|
|
16
|
+
const debugCallStackService = (0, ide_core_browser_1.useInjectable)(debug_call_stack_service_1.DebugCallStackService);
|
|
17
|
+
const [threads, setThreads] = react_1.default.useState([]);
|
|
18
|
+
const [otherThreads, setOtherThreads] = react_1.default.useState([]);
|
|
19
|
+
const [multipleThreadPaused, setMultipleThreadPaused] = react_1.default.useState([]);
|
|
20
|
+
const [subSession, setSubSession] = react_1.default.useState([]);
|
|
21
|
+
const [unfold, setUnfold] = react_1.default.useState(true);
|
|
22
|
+
const [hover, setHover] = react_1.default.useState(false);
|
|
23
|
+
const [loading, setLoading] = react_1.default.useState(true);
|
|
24
|
+
// 多 session 调试
|
|
25
|
+
const mutipleSession = manager.sessions.length > 1;
|
|
26
|
+
const supportsThreadIdCorrespond = session.supportsThreadIdCorrespond;
|
|
27
|
+
// 从 manager.sessions 中找出 parentSession id 是当前 session id 的 session
|
|
28
|
+
const findSubSessions = () => {
|
|
29
|
+
var _a, _b;
|
|
30
|
+
const hasParentSessions = manager.sessions.filter((s) => s.parentSession);
|
|
31
|
+
const subSession = [];
|
|
32
|
+
while (hasParentSessions[0]) {
|
|
33
|
+
if (((_b = manager.getSession((_a = hasParentSessions[0].parentSession) === null || _a === void 0 ? void 0 : _a.id)) === null || _b === void 0 ? void 0 : _b.id) === session.id) {
|
|
34
|
+
subSession.push(hasParentSessions[0]);
|
|
35
|
+
}
|
|
36
|
+
hasParentSessions.shift();
|
|
37
|
+
}
|
|
38
|
+
return subSession;
|
|
39
|
+
};
|
|
40
|
+
// 加载更多线程信息
|
|
41
|
+
const fetchOtherThreads = async () => {
|
|
42
|
+
setLoading(true);
|
|
43
|
+
const _threads = await session.fetchThreads();
|
|
44
|
+
setLoading(false);
|
|
45
|
+
setOtherThreads(_threads);
|
|
46
|
+
};
|
|
47
|
+
react_1.default.useEffect(() => {
|
|
48
|
+
const createDispose = manager.onDidCreateDebugSession(() => {
|
|
49
|
+
const sub = findSubSessions();
|
|
50
|
+
setSubSession(sub);
|
|
51
|
+
});
|
|
52
|
+
const destroyDispose = manager.onDidDestroyDebugSession(() => {
|
|
53
|
+
const sub = findSubSessions();
|
|
54
|
+
setSubSession(sub);
|
|
55
|
+
});
|
|
56
|
+
return () => {
|
|
57
|
+
createDispose.dispose();
|
|
58
|
+
destroyDispose.dispose();
|
|
59
|
+
setSubSession([]);
|
|
60
|
+
};
|
|
61
|
+
}, []);
|
|
62
|
+
react_1.default.useEffect(() => {
|
|
63
|
+
setThreads(Array.from(session.threads));
|
|
64
|
+
const disposable = new ide_core_browser_1.DisposableCollection();
|
|
65
|
+
disposable.push(session.onDidChange(() => {
|
|
66
|
+
setThreads([...session.threads]);
|
|
67
|
+
}));
|
|
68
|
+
disposable.push(session.onDidThread(async ({ body: { reason } }) => {
|
|
69
|
+
if (!session.supportsThreadIdCorrespond) {
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
if (session.state === common_1.DebugState.Stopped && reason === 'started') {
|
|
73
|
+
await fetchOtherThreads();
|
|
74
|
+
}
|
|
75
|
+
}));
|
|
76
|
+
disposable.push(session.onDidStop(async () => {
|
|
77
|
+
if (!session.supportsThreadIdCorrespond) {
|
|
78
|
+
return;
|
|
79
|
+
}
|
|
80
|
+
const multipleThreads = Array.from(session.multipleThreadPaused.values());
|
|
81
|
+
setMultipleThreadPaused(multipleThreads);
|
|
82
|
+
await fetchOtherThreads();
|
|
83
|
+
}));
|
|
84
|
+
disposable.push(session.onDidContinued(async () => {
|
|
85
|
+
if (!session.supportsThreadIdCorrespond) {
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
const multipleThreads = Array.from(session.multipleThreadPaused.values());
|
|
89
|
+
setMultipleThreadPaused(multipleThreads);
|
|
90
|
+
}));
|
|
91
|
+
return () => {
|
|
92
|
+
disposable.dispose();
|
|
93
|
+
};
|
|
94
|
+
}, []);
|
|
95
|
+
// 渲染 "加载更多线程"
|
|
96
|
+
const renderLoadMoreThread = () => {
|
|
97
|
+
if (session.state !== common_1.DebugState.Stopped) {
|
|
98
|
+
return null;
|
|
99
|
+
}
|
|
100
|
+
if (supportsThreadIdCorrespond && unfold) {
|
|
101
|
+
return loading
|
|
102
|
+
? react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item_loading },
|
|
103
|
+
react_1.default.createElement("span", null, "\u6B63\u5728\u52A0\u8F7D\u7EBF\u7A0B..."))
|
|
104
|
+
: otherThreads.map((thread) => !session.hasInMultipleThreadPaused(thread.raw.id) && react_1.default.createElement(debug_call_stack_thread_view_1.DebugStackThreadView, { key: thread.id, indent: mutipleSession ? 16 : 0, viewState: viewState, thread: thread, session: session }));
|
|
105
|
+
}
|
|
106
|
+
};
|
|
107
|
+
const isIncompressible = (stat) => {
|
|
108
|
+
if (stat.threads.some((t) => t.frameCount > 0)) {
|
|
109
|
+
return false;
|
|
110
|
+
}
|
|
111
|
+
const sub = findSubSessions();
|
|
112
|
+
if (sub.length !== 1) {
|
|
113
|
+
return false;
|
|
114
|
+
}
|
|
115
|
+
if (!sub[0].compact) {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
118
|
+
return true;
|
|
119
|
+
};
|
|
120
|
+
if (isIncompressible(session)) {
|
|
121
|
+
const sub = findSubSessions();
|
|
122
|
+
return (react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item }, sub.map((s) => react_1.default.createElement(exports.DebugStackSessionView, { key: s.id, viewState: viewState, session: s, indent: 1 }))));
|
|
123
|
+
}
|
|
124
|
+
return (react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item, onContextMenu: (event) => debugCallStackService.handleContextMenu(event, session) },
|
|
125
|
+
react_1.default.createElement("div", { style: { paddingLeft: indent * 10 + 'px' } },
|
|
126
|
+
mutipleSession &&
|
|
127
|
+
react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item_label, onMouseEnter: () => setHover(true), onMouseLeave: () => setHover(false) },
|
|
128
|
+
(supportsThreadIdCorrespond || threads.length > 0) &&
|
|
129
|
+
react_1.default.createElement(react_1.default.Fragment, null,
|
|
130
|
+
react_1.default.createElement("div", { className: unfold ? (0, ide_core_browser_1.getIcon)('down') : (0, ide_core_browser_1.getIcon)('right'), onClick: () => setUnfold(!unfold) }),
|
|
131
|
+
",",
|
|
132
|
+
react_1.default.createElement("div", { className: (0, classnames_1.default)([(0, ide_core_browser_1.getIcon)('debug'), debug_call_stack_module_less_1.default.debug_session_icon]) }),
|
|
133
|
+
","),
|
|
134
|
+
react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item_label_title }, session.label),
|
|
135
|
+
hover &&
|
|
136
|
+
react_1.default.createElement(debug_call_stack_operation_1.DebugStackOperationView, { session: session })),
|
|
137
|
+
supportsThreadIdCorrespond && unfold
|
|
138
|
+
? multipleThreadPaused.map((t) => react_1.default.createElement(debug_call_stack_thread_view_1.DebugStackThreadView, { key: t.id, indent: mutipleSession ? 16 : 0, viewState: viewState, thread: t, session: session }))
|
|
139
|
+
: null,
|
|
140
|
+
!supportsThreadIdCorrespond && (!mutipleSession || unfold) &&
|
|
141
|
+
threads.map((thread) => react_1.default.createElement(debug_call_stack_thread_view_1.DebugStackThreadView, { key: thread.id, indent: mutipleSession ? 16 : 0, viewState: viewState, thread: thread, session: session })),
|
|
142
|
+
subSession.length > 0 && subSession.map((s) => {
|
|
143
|
+
return unfold && react_1.default.createElement(exports.DebugStackSessionView, { key: s.id, viewState: viewState, session: s, indent: 1 });
|
|
144
|
+
}),
|
|
145
|
+
renderLoadMoreThread())));
|
|
146
|
+
};
|
|
147
|
+
exports.DebugStackSessionView = DebugStackSessionView;
|
|
148
|
+
//# sourceMappingURL=debug-call-stack-session.view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack-session.view.js","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack-session.view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { ViewState } from '@opensumi/ide-core-browser';
|
|
3
|
+
import { DebugThread } from '../../model/debug-thread';
|
|
4
|
+
import { DebugSession } from '../../debug-session';
|
|
5
|
+
export interface DebugStackThreadViewProps {
|
|
6
|
+
session: DebugSession;
|
|
7
|
+
viewState: ViewState;
|
|
8
|
+
thread: DebugThread;
|
|
9
|
+
indent?: number;
|
|
10
|
+
}
|
|
11
|
+
export declare const DebugStackThreadView: (props: DebugStackThreadViewProps) => JSX.Element;
|
|
12
|
+
//# sourceMappingURL=debug-call-stack-thread.view.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack-thread.view.d.ts","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack-thread.view.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAA0D,MAAM,4BAA4B,CAAC;AAC/G,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAMvD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,YAAY,CAAC;IACtB,SAAS,EAAE,SAAS,CAAC;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,eAAO,MAAM,oBAAoB,UAAW,yBAAyB,gBAkEpE,CAAC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DebugStackThreadView = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const react_1 = (0, tslib_1.__importDefault)(require("react"));
|
|
6
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
7
|
+
const debug_call_stack_frame_view_1 = require("./debug-call-stack-frame.view");
|
|
8
|
+
const debug_call_stack_operation_1 = require("./debug-call-stack.operation");
|
|
9
|
+
const common_1 = require("../../../common");
|
|
10
|
+
const debug_call_stack_module_less_1 = (0, tslib_1.__importDefault)(require("./debug-call-stack.module.less"));
|
|
11
|
+
const debug_call_stack_service_1 = require("./debug-call-stack.service");
|
|
12
|
+
const DebugStackThreadView = (props) => {
|
|
13
|
+
var _a;
|
|
14
|
+
const { thread, viewState, indent, session } = props;
|
|
15
|
+
const manager = (0, ide_core_browser_1.useInjectable)(common_1.IDebugSessionManager);
|
|
16
|
+
const debugCallStackService = (0, ide_core_browser_1.useInjectable)(debug_call_stack_service_1.DebugCallStackService);
|
|
17
|
+
const [unfold, setUnfold] = react_1.default.useState(true);
|
|
18
|
+
const mutipleS = manager.sessions.length > 1;
|
|
19
|
+
const mutiple = ((_a = manager.currentSession) === null || _a === void 0 ? void 0 : _a.supportsThreadIdCorrespond) ? true : (manager.sessions.length > 1 || manager.sessions[0].threadCount > 1);
|
|
20
|
+
react_1.default.useEffect(() => {
|
|
21
|
+
const disposable = new ide_core_browser_1.DisposableCollection();
|
|
22
|
+
disposable.push(session.onDidChangeCallStack(() => {
|
|
23
|
+
if (thread.stopped && (manager.currentThread && manager.currentThread.id === thread.id)) {
|
|
24
|
+
setUnfold(true);
|
|
25
|
+
}
|
|
26
|
+
else {
|
|
27
|
+
setUnfold(false);
|
|
28
|
+
}
|
|
29
|
+
}));
|
|
30
|
+
return () => {
|
|
31
|
+
disposable.dispose();
|
|
32
|
+
};
|
|
33
|
+
}, []);
|
|
34
|
+
return (react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_stack_item, onContextMenu: (event) => debugCallStackService.handleContextMenu(event, thread) },
|
|
35
|
+
mutiple &&
|
|
36
|
+
react_1.default.createElement("div", { style: { paddingLeft: `${indent}px` }, className: debug_call_stack_module_less_1.default.debug_stack_item_label },
|
|
37
|
+
thread.frames.length > 0 ?
|
|
38
|
+
react_1.default.createElement("div", { className: unfold ? (0, ide_core_browser_1.getIcon)('down') : (0, ide_core_browser_1.getIcon)('right'), onClick: () => setUnfold(!unfold) }) :
|
|
39
|
+
react_1.default.createElement("div", { style: { width: 14 } }),
|
|
40
|
+
react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_threads_item }, thread.raw.name),
|
|
41
|
+
react_1.default.createElement(react_1.default.Fragment, null,
|
|
42
|
+
react_1.default.createElement("div", { className: debug_call_stack_module_less_1.default.debug_threads_operation },
|
|
43
|
+
react_1.default.createElement(debug_call_stack_operation_1.DebugStackOperationView, { thread: thread })),
|
|
44
|
+
react_1.default.createElement("span", { className: debug_call_stack_module_less_1.default.debug_threads_description }, (thread.stopped && thread.stoppedDetails) ?
|
|
45
|
+
thread.raw.id === thread.stoppedDetails.threadId ? `${(0, ide_core_browser_1.localize)('debug.stack.frame.because')} ${thread.stoppedDetails.reason} ${(0, ide_core_browser_1.localize)('debug.stack.frame.stopped')}`
|
|
46
|
+
: (0, ide_core_browser_1.localize)('debug.stack.frame.stopped')
|
|
47
|
+
: (0, ide_core_browser_1.localize)('debug.stack.frame.running')))),
|
|
48
|
+
(!mutiple || unfold) && thread.frames.length > 0 &&
|
|
49
|
+
react_1.default.createElement(debug_call_stack_frame_view_1.DebugStackFramesView, { indent: mutiple ? mutipleS ? 32 + 14 : 16 + 14 : 8, viewState: viewState, thread: thread, frames: thread.frames, session: session })));
|
|
50
|
+
};
|
|
51
|
+
exports.DebugStackThreadView = DebugStackThreadView;
|
|
52
|
+
//# sourceMappingURL=debug-call-stack-thread.view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack-thread.view.js","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack-thread.view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { DebugSessionManager } from './../../debug-session-manager';
|
|
2
|
+
import { MenuContribution, IMenuRegistry } from '@opensumi/ide-core-browser/lib/menu/next';
|
|
3
|
+
import { CommandContribution, CommandRegistry } from '@opensumi/ide-core-browser';
|
|
4
|
+
export declare class DebugCallStackContribution implements MenuContribution, CommandContribution {
|
|
5
|
+
protected readonly debugSessionManager: DebugSessionManager;
|
|
6
|
+
private readonly clipboardService;
|
|
7
|
+
registerCommands(registry: CommandRegistry): void;
|
|
8
|
+
registerMenus(registry: IMenuRegistry): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=debug-call-stack.contribution.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack.contribution.d.ts","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack.contribution.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAGpE,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAU,MAAM,0CAA0C,CAAC;AAEnG,OAAO,EAAU,mBAAmB,EAAE,eAAe,EAA+B,MAAM,4BAA4B,CAAC;AAqBvH,qBACa,0BAA2B,YAAW,gBAAgB,EAAE,mBAAmB;IAGtF,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAG5D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAoB;IAErD,gBAAgB,CAAC,QAAQ,EAAE,eAAe;IAsB1C,aAAa,CAAC,QAAQ,EAAE,aAAa;CAmBtC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DebugCallStackContribution = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const debug_session_1 = require("./../../../common/debug-session");
|
|
6
|
+
const debug_session_manager_1 = require("./../../debug-session-manager");
|
|
7
|
+
const constants_1 = require("./../../../common/constants");
|
|
8
|
+
const next_1 = require("@opensumi/ide-core-browser/lib/menu/next");
|
|
9
|
+
const di_1 = require("@opensumi/di");
|
|
10
|
+
const ide_core_browser_1 = require("@opensumi/ide-core-browser");
|
|
11
|
+
const debug_contribution_1 = require("../../debug-contribution");
|
|
12
|
+
function isStackFrameContext(obj) {
|
|
13
|
+
return obj && typeof obj.sessionId === 'string' && typeof obj.threadId === 'string' && typeof obj.frameId === 'string';
|
|
14
|
+
}
|
|
15
|
+
function getFrame(debugService, context) {
|
|
16
|
+
if (isStackFrameContext(context)) {
|
|
17
|
+
const session = debugService.getSession(context.sessionId);
|
|
18
|
+
if (session) {
|
|
19
|
+
const thread = [session.currentThread, ...session.threads].find((t) => t.id === context.threadId);
|
|
20
|
+
if (thread) {
|
|
21
|
+
return thread.frames.find((sf) => sf.id === context.frameId);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
return undefined;
|
|
26
|
+
}
|
|
27
|
+
let DebugCallStackContribution = class DebugCallStackContribution {
|
|
28
|
+
registerCommands(registry) {
|
|
29
|
+
registry.registerCommand(debug_contribution_1.DEBUG_COMMANDS.RESTART_FRAME, {
|
|
30
|
+
execute: async (_, context) => {
|
|
31
|
+
const frame = getFrame(this.debugSessionManager, context);
|
|
32
|
+
if (frame) {
|
|
33
|
+
await frame.restart();
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
});
|
|
37
|
+
registry.registerCommand(debug_contribution_1.DEBUG_COMMANDS.COPY_STACK_TRACE, {
|
|
38
|
+
execute: async (_, context) => {
|
|
39
|
+
const frame = getFrame(this.debugSessionManager, context);
|
|
40
|
+
if (frame) {
|
|
41
|
+
const callStacks = frame.thread.frames.map((e) => {
|
|
42
|
+
return `${e.raw && e.raw.name} (${e.raw && e.raw.source && e.raw.source.path}:${e.raw && e.raw.line})`;
|
|
43
|
+
});
|
|
44
|
+
this.clipboardService.writeText(callStacks.join('\n'));
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
registerMenus(registry) {
|
|
50
|
+
registry.registerMenuItem(next_1.MenuId.DebugCallStackContext, {
|
|
51
|
+
command: {
|
|
52
|
+
id: debug_contribution_1.DEBUG_COMMANDS.RESTART_FRAME.id,
|
|
53
|
+
label: (0, ide_core_browser_1.localize)('deugger.menu.restartFrame'),
|
|
54
|
+
},
|
|
55
|
+
when: `${constants_1.CONTEXT_CALLSTACK_ITEM_TYPE.equalsTo('stackFrame')} && ${constants_1.CONTEXT_RESTART_FRAME_SUPPORTED.raw}`,
|
|
56
|
+
enabledWhen: constants_1.CONTEXT_STACK_FRAME_SUPPORTS_RESTART.raw,
|
|
57
|
+
order: 10,
|
|
58
|
+
});
|
|
59
|
+
registry.registerMenuItem(next_1.MenuId.DebugCallStackContext, {
|
|
60
|
+
command: {
|
|
61
|
+
id: debug_contribution_1.DEBUG_COMMANDS.COPY_STACK_TRACE.id,
|
|
62
|
+
label: (0, ide_core_browser_1.localize)('deugger.menu.copyCallstack'),
|
|
63
|
+
},
|
|
64
|
+
when: constants_1.CONTEXT_CALLSTACK_ITEM_TYPE.equalsTo('stackFrame'),
|
|
65
|
+
order: 20,
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
};
|
|
69
|
+
(0, tslib_1.__decorate)([
|
|
70
|
+
(0, di_1.Autowired)(debug_session_1.IDebugSessionManager),
|
|
71
|
+
(0, tslib_1.__metadata)("design:type", debug_session_manager_1.DebugSessionManager)
|
|
72
|
+
], DebugCallStackContribution.prototype, "debugSessionManager", void 0);
|
|
73
|
+
(0, tslib_1.__decorate)([
|
|
74
|
+
(0, di_1.Autowired)(ide_core_browser_1.IClipboardService),
|
|
75
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
76
|
+
], DebugCallStackContribution.prototype, "clipboardService", void 0);
|
|
77
|
+
DebugCallStackContribution = (0, tslib_1.__decorate)([
|
|
78
|
+
(0, ide_core_browser_1.Domain)(next_1.MenuContribution, ide_core_browser_1.CommandContribution)
|
|
79
|
+
], DebugCallStackContribution);
|
|
80
|
+
exports.DebugCallStackContribution = DebugCallStackContribution;
|
|
81
|
+
//# sourceMappingURL=debug-call-stack.contribution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"debug-call-stack.contribution.js","sourceRoot":"","sources":["../../../../src/browser/view/frames/debug-call-stack.contribution.ts"],"names":[],"mappings":"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"}
|