@theia/debug 1.70.0-next.81 → 1.71.0-next.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 (100) hide show
  1. package/lib/browser/breakpoint/breakpoint-manager.d.ts +80 -45
  2. package/lib/browser/breakpoint/breakpoint-manager.d.ts.map +1 -1
  3. package/lib/browser/breakpoint/breakpoint-manager.js +553 -170
  4. package/lib/browser/breakpoint/breakpoint-manager.js.map +1 -1
  5. package/lib/browser/breakpoint/breakpoint-manager.spec.d.ts +2 -0
  6. package/lib/browser/breakpoint/breakpoint-manager.spec.d.ts.map +1 -0
  7. package/lib/browser/breakpoint/breakpoint-manager.spec.js +861 -0
  8. package/lib/browser/breakpoint/breakpoint-manager.spec.js.map +1 -0
  9. package/lib/browser/breakpoint/breakpoint-marker.d.ts +7 -10
  10. package/lib/browser/breakpoint/breakpoint-marker.d.ts.map +1 -1
  11. package/lib/browser/breakpoint/breakpoint-marker.js +14 -11
  12. package/lib/browser/breakpoint/breakpoint-marker.js.map +1 -1
  13. package/lib/browser/breakpoint/debug-data-breakpoint-actions.js +1 -1
  14. package/lib/browser/breakpoint/debug-data-breakpoint-actions.js.map +1 -1
  15. package/lib/browser/debug-frontend-application-contribution.d.ts +1 -2
  16. package/lib/browser/debug-frontend-application-contribution.d.ts.map +1 -1
  17. package/lib/browser/debug-frontend-application-contribution.js +13 -21
  18. package/lib/browser/debug-frontend-application-contribution.js.map +1 -1
  19. package/lib/browser/debug-frontend-module.d.ts.map +1 -1
  20. package/lib/browser/debug-frontend-module.js +3 -0
  21. package/lib/browser/debug-frontend-module.js.map +1 -1
  22. package/lib/browser/debug-session-manager.d.ts +8 -27
  23. package/lib/browser/debug-session-manager.d.ts.map +1 -1
  24. package/lib/browser/debug-session-manager.js +14 -132
  25. package/lib/browser/debug-session-manager.js.map +1 -1
  26. package/lib/browser/debug-session.d.ts +1 -21
  27. package/lib/browser/debug-session.d.ts.map +1 -1
  28. package/lib/browser/debug-session.js +72 -203
  29. package/lib/browser/debug-session.js.map +1 -1
  30. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.js +1 -1
  31. package/lib/browser/disassembly-view/disassembly-view-breakpoint-renderer.js.map +1 -1
  32. package/lib/browser/disassembly-view/disassembly-view-widget.d.ts.map +1 -1
  33. package/lib/browser/disassembly-view/disassembly-view-widget.js +17 -24
  34. package/lib/browser/disassembly-view/disassembly-view-widget.js.map +1 -1
  35. package/lib/browser/editor/debug-editor-model.d.ts +15 -5
  36. package/lib/browser/editor/debug-editor-model.d.ts.map +1 -1
  37. package/lib/browser/editor/debug-editor-model.js +56 -32
  38. package/lib/browser/editor/debug-editor-model.js.map +1 -1
  39. package/lib/browser/model/debug-breakpoint-opener.d.ts +14 -0
  40. package/lib/browser/model/debug-breakpoint-opener.d.ts.map +1 -0
  41. package/lib/browser/model/debug-breakpoint-opener.js +67 -0
  42. package/lib/browser/model/debug-breakpoint-opener.js.map +1 -0
  43. package/lib/browser/model/debug-breakpoint.d.ts +32 -13
  44. package/lib/browser/model/debug-breakpoint.d.ts.map +1 -1
  45. package/lib/browser/model/debug-breakpoint.js +76 -16
  46. package/lib/browser/model/debug-breakpoint.js.map +1 -1
  47. package/lib/browser/model/debug-data-breakpoint.d.ts +1 -0
  48. package/lib/browser/model/debug-data-breakpoint.d.ts.map +1 -1
  49. package/lib/browser/model/debug-data-breakpoint.js +6 -5
  50. package/lib/browser/model/debug-data-breakpoint.js.map +1 -1
  51. package/lib/browser/model/debug-function-breakpoint.d.ts +4 -1
  52. package/lib/browser/model/debug-function-breakpoint.d.ts.map +1 -1
  53. package/lib/browser/model/debug-function-breakpoint.js +20 -29
  54. package/lib/browser/model/debug-function-breakpoint.js.map +1 -1
  55. package/lib/browser/model/debug-instruction-breakpoint.d.ts +2 -1
  56. package/lib/browser/model/debug-instruction-breakpoint.d.ts.map +1 -1
  57. package/lib/browser/model/debug-instruction-breakpoint.js +8 -8
  58. package/lib/browser/model/debug-instruction-breakpoint.js.map +1 -1
  59. package/lib/browser/model/debug-source-breakpoint.d.ts +6 -15
  60. package/lib/browser/model/debug-source-breakpoint.d.ts.map +1 -1
  61. package/lib/browser/model/debug-source-breakpoint.js +16 -90
  62. package/lib/browser/model/debug-source-breakpoint.js.map +1 -1
  63. package/lib/browser/view/debug-breakpoints-source.d.ts +0 -2
  64. package/lib/browser/view/debug-breakpoints-source.d.ts.map +1 -1
  65. package/lib/browser/view/debug-breakpoints-source.js +2 -10
  66. package/lib/browser/view/debug-breakpoints-source.js.map +1 -1
  67. package/lib/browser/view/debug-breakpoints-widget.d.ts +2 -0
  68. package/lib/browser/view/debug-breakpoints-widget.d.ts.map +1 -1
  69. package/lib/browser/view/debug-breakpoints-widget.js +3 -0
  70. package/lib/browser/view/debug-breakpoints-widget.js.map +1 -1
  71. package/lib/browser/view/debug-exception-breakpoint.d.ts +18 -11
  72. package/lib/browser/view/debug-exception-breakpoint.d.ts.map +1 -1
  73. package/lib/browser/view/debug-exception-breakpoint.js +58 -24
  74. package/lib/browser/view/debug-exception-breakpoint.js.map +1 -1
  75. package/lib/browser/view/debug-view-model.d.ts +8 -4
  76. package/lib/browser/view/debug-view-model.d.ts.map +1 -1
  77. package/lib/browser/view/debug-view-model.js +16 -9
  78. package/lib/browser/view/debug-view-model.js.map +1 -1
  79. package/package.json +16 -16
  80. package/src/browser/breakpoint/breakpoint-manager.spec.ts +1106 -0
  81. package/src/browser/breakpoint/breakpoint-manager.ts +583 -194
  82. package/src/browser/breakpoint/breakpoint-marker.ts +21 -15
  83. package/src/browser/breakpoint/debug-data-breakpoint-actions.ts +1 -1
  84. package/src/browser/debug-frontend-application-contribution.ts +18 -23
  85. package/src/browser/debug-frontend-module.ts +5 -1
  86. package/src/browser/debug-session-manager.ts +15 -147
  87. package/src/browser/debug-session.tsx +71 -221
  88. package/src/browser/disassembly-view/disassembly-view-breakpoint-renderer.ts +1 -1
  89. package/src/browser/disassembly-view/disassembly-view-widget.ts +17 -23
  90. package/src/browser/editor/debug-editor-model.ts +58 -35
  91. package/src/browser/model/debug-breakpoint-opener.ts +51 -0
  92. package/src/browser/model/debug-breakpoint.tsx +101 -20
  93. package/src/browser/model/debug-data-breakpoint.tsx +8 -5
  94. package/src/browser/model/debug-function-breakpoint.tsx +18 -29
  95. package/src/browser/model/debug-instruction-breakpoint.tsx +10 -8
  96. package/src/browser/model/debug-source-breakpoint.tsx +23 -101
  97. package/src/browser/view/debug-breakpoints-source.tsx +2 -9
  98. package/src/browser/view/debug-breakpoints-widget.ts +6 -0
  99. package/src/browser/view/debug-exception-breakpoint.tsx +66 -27
  100. package/src/browser/view/debug-view-model.ts +21 -13
@@ -1,36 +1,55 @@
1
1
  import * as React from '@theia/core/shared/react';
2
2
  import { DebugProtocol } from '@vscode/debugprotocol/lib/debugProtocol';
3
3
  import URI from '@theia/core/lib/common/uri';
4
- import { EditorManager } from '@theia/editor/lib/browser';
5
- import { LabelProvider, TreeWidget } from '@theia/core/lib/browser';
4
+ import { CommandService } from '@theia/core/lib/common';
5
+ import { LabelProvider, OpenerService, TreeWidget } from '@theia/core/lib/browser';
6
6
  import { TreeElement } from '@theia/core/lib/browser/source-tree';
7
- import { DebugSession } from '../debug-session';
8
7
  import { BaseBreakpoint } from '../breakpoint/breakpoint-marker';
9
8
  import { BreakpointManager } from '../breakpoint/breakpoint-manager';
10
- export declare class DebugBreakpointData {
11
- readonly raw?: DebugProtocol.Breakpoint;
12
- }
13
- export declare class DebugBreakpointOptions {
9
+ export interface DebugBreakpointOptions {
14
10
  readonly labelProvider: LabelProvider;
15
11
  readonly breakpoints: BreakpointManager;
16
- readonly editorManager: EditorManager;
17
- readonly session?: DebugSession;
12
+ readonly openerService: OpenerService;
13
+ readonly commandService: CommandService;
18
14
  }
19
15
  export declare class DebugBreakpointDecoration {
20
16
  readonly className: string;
21
17
  readonly message: string[];
22
18
  }
23
- export declare abstract class DebugBreakpoint<T extends BaseBreakpoint = BaseBreakpoint> extends DebugBreakpointOptions implements TreeElement {
19
+ export type BPCapabilities = Required<Pick<DebugProtocol.Capabilities, 'supportsConditionalBreakpoints' | 'supportsHitConditionalBreakpoints' | 'supportsLogPoints' | 'supportsFunctionBreakpoints' | 'supportsDataBreakpoints' | 'supportsInstructionBreakpoints'>>;
20
+ export interface BPSessionData extends BPCapabilities, DebugProtocol.Breakpoint {
21
+ sessionId: string;
22
+ }
23
+ export declare abstract class DebugBreakpoint<T extends BaseBreakpoint = BaseBreakpoint> implements TreeElement {
24
24
  readonly uri: URI;
25
- readonly raw?: DebugProtocol.Breakpoint;
25
+ readonly labelProvider: LabelProvider;
26
+ readonly breakpoints: BreakpointManager;
27
+ readonly openerService: OpenerService;
28
+ readonly commandService: CommandService;
29
+ protected _raw?: BPSessionData;
30
+ protected readonly sessionData: Map<string, BPSessionData>;
26
31
  protected treeWidget?: TreeWidget;
27
32
  constructor(uri: URI, options: DebugBreakpointOptions);
28
33
  abstract get origin(): T;
29
- update(data: DebugBreakpointData): void;
30
- get idFromAdapter(): number | undefined;
34
+ get raw(): BPSessionData | undefined;
35
+ update(sessionId: string, data?: Omit<BPSessionData, 'sessionId'>): boolean;
36
+ getIdForSession(sessionId: string): number | undefined;
37
+ /** Copied from https://github.com/microsoft/vscode/blob/8934b59d4aa696b6f51ac9bf2eeae8bbac5dac03/src/vs/workbench/contrib/debug/common/debugModel.ts#L953-L971 */
38
+ getDebugProtocolBreakpoint(sessionId: string): DebugProtocol.Breakpoint | undefined;
31
39
  get id(): string;
32
40
  get enabled(): boolean;
41
+ /**
42
+ * True when at least one session has sent data for this breakpoint
43
+ * (regardless of whether it was verified).
44
+ */
33
45
  get installed(): boolean;
46
+ /**
47
+ * When resolved session data exists, reflects the adapter's answer.
48
+ * Otherwise returns `true`: either no session has weighed in yet (we
49
+ * haven't been told otherwise) or multiple sessions verified at
50
+ * different locations (`_raw` was cleared to fall back to the user-set
51
+ * position). Matches VSCode's default-true semantics.
52
+ */
34
53
  get verified(): boolean;
35
54
  get message(): string;
36
55
  abstract setEnabled(enabled: boolean): void;
@@ -1 +1 @@
1
- {"version":3,"file":"debug-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-breakpoint.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,GAAG,MAAM,4BAA4B,CAAC;AAC7C,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAkB,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAElE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAGrE,qBAAa,mBAAmB;IAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC;CAC3C;AAED,qBAAa,sBAAsB;IAC/B,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC;IACxC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC;CACnC;AAED,qBAAa,yBAAyB;IAClC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,CAAC;CAC9B;AAED,8BAAsB,eAAe,CAAC,CAAC,SAAS,cAAc,GAAG,cAAc,CAAE,SAAQ,sBAAuB,YAAW,WAAW;IAM9H,QAAQ,CAAC,GAAG,EAAE,GAAG;IAJrB,QAAQ,CAAC,GAAG,CAAC,EAAE,aAAa,CAAC,UAAU,CAAC;IACxC,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;gBAGrB,GAAG,EAAE,GAAG,EACjB,OAAO,EAAE,sBAAsB;IAMnC,QAAQ,KAAK,MAAM,IAAI,CAAC,CAAC;IAEzB,MAAM,CAAC,IAAI,EAAE,mBAAmB,GAAG,IAAI;IAIvC,IAAI,aAAa,IAAI,MAAM,GAAG,SAAS,CAEtC;IAED,IAAI,EAAE,IAAI,MAAM,CAEf;IAED,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAE3C,QAAQ,CAAC,MAAM,IAAI,IAAI;IAEvB,SAAS,CAAC,QAAQ,CAAC,oBAAoB,GAAI,OAAO,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAEnF;IAEF,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,KAAK,CAAC,SAAS;IAczC,SAAS,CAAC,SAAS,IAAI,OAAO;IAI9B,SAAS,CAAC,QAAQ,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAE9C,aAAa,IAAI,yBAAyB;IAU1C,SAAS,CAAC,iCAAiC,IAAI,yBAAyB;IAQxE,SAAS,CAAC,+BAA+B,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,yBAAyB;IAQtF,SAAS,CAAC,eAAe,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,yBAAyB;IAW7E,SAAS,CAAC,QAAQ,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;cAEzE,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;CAMhD"}
1
+ {"version":3,"file":"debug-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-breakpoint.tsx"],"names":[],"mappings":"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"}
@@ -15,34 +15,83 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.DebugBreakpoint = exports.DebugBreakpointDecoration = exports.DebugBreakpointOptions = exports.DebugBreakpointData = void 0;
18
+ exports.DebugBreakpoint = exports.DebugBreakpointDecoration = void 0;
19
19
  const React = require("@theia/core/shared/react");
20
20
  const browser_1 = require("@theia/core/lib/browser");
21
21
  const tree_selection_1 = require("@theia/core/lib/browser/tree/tree-selection");
22
22
  const core_1 = require("@theia/core");
23
- class DebugBreakpointData {
24
- }
25
- exports.DebugBreakpointData = DebugBreakpointData;
26
- class DebugBreakpointOptions {
27
- }
28
- exports.DebugBreakpointOptions = DebugBreakpointOptions;
29
23
  class DebugBreakpointDecoration {
30
24
  }
31
25
  exports.DebugBreakpointDecoration = DebugBreakpointDecoration;
32
- class DebugBreakpoint extends DebugBreakpointOptions {
26
+ class DebugBreakpoint {
33
27
  constructor(uri, options) {
34
- super();
35
28
  this.uri = uri;
29
+ this.sessionData = new Map();
36
30
  this.setBreakpointEnabled = (event) => {
37
31
  this.setEnabled(event.target.checked);
38
32
  };
39
- Object.assign(this, options);
33
+ this.labelProvider = options.labelProvider;
34
+ this.breakpoints = options.breakpoints;
35
+ this.openerService = options.openerService;
36
+ this.commandService = options.commandService;
40
37
  }
41
- update(data) {
42
- Object.assign(this, data);
38
+ get raw() {
39
+ return this._raw;
43
40
  }
44
- get idFromAdapter() {
45
- return this.raw && this.raw.id;
41
+ update(sessionId, data) {
42
+ if (!data) {
43
+ if (!this.sessionData.has(sessionId)) {
44
+ return false;
45
+ }
46
+ this.sessionData.delete(sessionId);
47
+ }
48
+ else {
49
+ const toSet = { ...data, sessionId };
50
+ this.sessionData.set(sessionId, toSet);
51
+ }
52
+ const verifiedLocations = new Map();
53
+ this.sessionData.forEach(bp => bp.verified && verifiedLocations.set(`${bp.line}:${bp.column}:${bp.instructionReference}`, bp));
54
+ if (verifiedLocations.size === 1) {
55
+ // Exactly one verified location across all sessions — use it.
56
+ this._raw = verifiedLocations.values().next().value;
57
+ }
58
+ else if (verifiedLocations.size === 0) {
59
+ // No session has verified; pick the first session's data (if any) so
60
+ // that capability flags and unverified messages are still available.
61
+ this._raw = this.sessionData.values().next().value;
62
+ }
63
+ else {
64
+ // Multiple sessions verified at different locations. Following
65
+ // VSCode, we set _raw to undefined so that the breakpoint falls
66
+ // back to its user-set position and shows as verified (the
67
+ // default when no resolved data exists). Callers that need a
68
+ // specific session's view can use getDebugProtocolBreakpoint().
69
+ this._raw = undefined;
70
+ }
71
+ return true;
72
+ }
73
+ getIdForSession(sessionId) {
74
+ return this.sessionData.get(sessionId)?.id;
75
+ }
76
+ /** Copied from https://github.com/microsoft/vscode/blob/8934b59d4aa696b6f51ac9bf2eeae8bbac5dac03/src/vs/workbench/contrib/debug/common/debugModel.ts#L953-L971 */
77
+ getDebugProtocolBreakpoint(sessionId) {
78
+ const data = this.sessionData.get(sessionId);
79
+ if (data) {
80
+ const bp = {
81
+ id: data.id,
82
+ verified: data.verified,
83
+ message: data.message,
84
+ source: data.source,
85
+ line: data.line,
86
+ column: data.column,
87
+ endLine: data.endLine,
88
+ endColumn: data.endColumn,
89
+ instructionReference: data.instructionReference,
90
+ offset: data.offset,
91
+ };
92
+ return bp;
93
+ }
94
+ return undefined;
46
95
  }
47
96
  get id() {
48
97
  return this.origin.id;
@@ -50,11 +99,22 @@ class DebugBreakpoint extends DebugBreakpointOptions {
50
99
  get enabled() {
51
100
  return this.breakpoints.breakpointsEnabled && this.origin.enabled;
52
101
  }
102
+ /**
103
+ * True when at least one session has sent data for this breakpoint
104
+ * (regardless of whether it was verified).
105
+ */
53
106
  get installed() {
54
- return !!this.raw;
107
+ return this.sessionData.size > 0;
55
108
  }
109
+ /**
110
+ * When resolved session data exists, reflects the adapter's answer.
111
+ * Otherwise returns `true`: either no session has weighed in yet (we
112
+ * haven't been told otherwise) or multiple sessions verified at
113
+ * different locations (`_raw` was cleared to fall back to the user-set
114
+ * position). Matches VSCode's default-true semantics.
115
+ */
56
116
  get verified() {
57
- return !!this.raw ? this.raw.verified : false;
117
+ return this._raw ? this._raw.verified : true;
58
118
  }
59
119
  get message() {
60
120
  return this.raw && this.raw.message || '';
@@ -1 +1 @@
1
- {"version":3,"file":"debug-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-breakpoint.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-breakpoint.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,kDAAkD;AAIlD,qDAAmG;AAEnG,gFAAiF;AAGjF,sCAAkC;AASlC,MAAa,yBAAyB;CAGrC;AAHD,8DAGC;AAgBD,MAAsB,eAAe;IAWjC,YACa,GAAQ,EACjB,OAA+B;QADtB,QAAG,GAAH,GAAG,CAAK;QAJF,gBAAW,GAAG,IAAI,GAAG,EAAyB,CAAC;QA+G/C,yBAAoB,GAAG,CAAC,KAA0C,EAAE,EAAE;YACrF,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC1C,CAAC,CAAC;QA1GE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC3C,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,cAAc,CAAC;IACjD,CAAC;IAID,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED,MAAM,CAAC,SAAiB,EAAE,IAAuC;QAC7D,IAAI,CAAC,IAAI,EAAE,CAAC;YACR,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnC,OAAO,KAAK,CAAC;YACjB,CAAC;YACD,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QACvC,CAAC;aAAM,CAAC;YACJ,MAAM,KAAK,GAAG,EAAE,GAAG,IAAI,EAAE,SAAS,EAAE,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC3C,CAAC;QACD,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAyB,CAAC;QAC3D,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,QAAQ,IAAI,iBAAiB,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE,CAAC,oBAAoB,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/H,IAAI,iBAAiB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC/B,8DAA8D;YAC9D,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QACxD,CAAC;aAAM,IAAI,iBAAiB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACtC,qEAAqE;YACrE,qEAAqE;YACrE,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC;QACvD,CAAC;aAAM,CAAC;YACJ,+DAA+D;YAC/D,gEAAgE;YAChE,2DAA2D;YAC3D,6DAA6D;YAC7D,gEAAgE;YAChE,IAAI,CAAC,IAAI,GAAG,SAAS,CAAC;QAC1B,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,eAAe,CAAC,SAAiB;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,EAAE,CAAC;IAC/C,CAAC;IAED,kKAAkK;IAClK,0BAA0B,CACtB,SAAiB;QAEjB,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,GAA6B;gBACjC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,IAAI,CAAC,MAAM;gBACnB,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,SAAS,EAAE,IAAI,CAAC,SAAS;gBACzB,oBAAoB,EAAE,IAAI,CAAC,oBAAoB;gBAC/C,MAAM,EAAE,IAAI,CAAC,MAAM;aACtB,CAAC;YACF,OAAO,EAAE,CAAC;QACd,CAAC;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,IAAI,EAAE;QACF,OAAO,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;IAC1B,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;IACtE,CAAC;IAED;;;OAGG;IACH,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,GAAG,CAAC,CAAC;IACrC,CAAC;IAED;;;;;;OAMG;IACH,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC;IACjD,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC;IAC9C,CAAC;IAUD,MAAM,CAAC,IAAgB;QACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;QACvB,MAAM,UAAU,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAC/C,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACpB,UAAU,CAAC,IAAI,CAAC,wBAAc,CAAC,CAAC;QACpC,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;QACxC,OAAO,6BAAK,KAAK,EAAE,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC;YAC7E,8BAAM,SAAS,EAAE,sCAAsC,GAAG,UAAU,CAAC,SAAS,GAAI;YAClF,+BAAO,SAAS,EAAC,aAAa,EAAC,IAAI,EAAC,UAAU,EAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,oBAAoB,GAAI;YACnH,IAAI,CAAC,QAAQ,EAAE,CACd,CAAC;IACX,CAAC;IAES,SAAS;QACf,OAAO,IAAI,CAAC,WAAW,CAAC,kBAAkB,IAAI,IAAI,CAAC,QAAQ,CAAC;IAChE,CAAC;IAID,aAAa;QACT,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,+BAA+B,EAAE,CAAC;QAClD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnC,OAAO,IAAI,CAAC,iCAAiC,EAAE,CAAC;QACpD,CAAC;QACD,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAClC,CAAC;IAES,iCAAiC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClD,OAAO;YACH,SAAS,EAAE,UAAU,CAAC,SAAS,GAAG,aAAa;YAC/C,OAAO,EAAE,CAAC,IAAI,CAAC,OAAO,IAAI,UAAG,CAAC,QAAQ,CAAC,kCAAkC,EAAE,gBAAgB,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;SACvH,CAAC;IACN,CAAC;IAES,+BAA+B,CAAC,OAAgB;QACtD,MAAM,UAAU,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;QAClD,OAAO;YACH,SAAS,EAAE,UAAU,CAAC,SAAS,GAAG,WAAW;YAC7C,OAAO,EAAE,CAAC,OAAO,IAAI,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,cAAc,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;SAC9G,CAAC;IACN,CAAC;IAES,eAAe,CAAC,WAAqB,EAAE;QAC7C,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAClB,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC;YAC9D,CAAC;iBAAM,CAAC;gBACJ,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAChC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAClD,CAAC;IAIS,KAAK,CAAC,YAAY;QACxB,IAAI,IAAI,CAAC,UAAU,EAAE,KAAK,IAAI,mCAAkB,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;YACxD,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QAC3C,CAAC;IACL,CAAC;CAEJ;AA5LD,0CA4LC"}
@@ -3,6 +3,7 @@ import { DataBreakpoint } from '../breakpoint/breakpoint-marker';
3
3
  import { DebugBreakpoint, DebugBreakpointDecoration, DebugBreakpointOptions } from './debug-breakpoint';
4
4
  export declare class DebugDataBreakpoint extends DebugBreakpoint<DataBreakpoint> {
5
5
  readonly origin: DataBreakpoint;
6
+ static create(origin: DataBreakpoint, options: DebugBreakpointOptions): DebugDataBreakpoint;
6
7
  constructor(origin: DataBreakpoint, options: DebugBreakpointOptions);
7
8
  setEnabled(enabled: boolean): void;
8
9
  protected isEnabled(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"debug-data-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-data-breakpoint.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAExG,qBAAa,mBAAoB,SAAQ,eAAe,CAAC,cAAc,CAAC;IACxD,QAAQ,CAAC,MAAM,EAAE,cAAc;gBAAtB,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB;IAI5E,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAMf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC,MAAM,IAAI,IAAI;IAId,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAUrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAM1C,SAAS,CAAC,QAAQ,sBAGhB;IAEF,SAAS,CAAC,aAAa,IAAI,MAAM;IAQjC,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;CAkBnF"}
1
+ {"version":3,"file":"debug-data-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-data-breakpoint.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAExG,qBAAa,mBAAoB,SAAQ,eAAe,CAAC,cAAc,CAAC;IAMxD,QAAQ,CAAC,MAAM,EAAE,cAAc;IAJ3C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB,GAAG,mBAAmB;gBAItE,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,sBAAsB;IAI5E,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAIf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC,MAAM,IAAI,IAAI;IAId,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAUrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAM1C,SAAS,CAAC,QAAQ,sBAGhB;IAEF,SAAS,CAAC,aAAa,IAAI,MAAM;IAQjC,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;CAkBnF"}
@@ -22,6 +22,9 @@ const browser_1 = require("@theia/core/lib/browser");
22
22
  const breakpoint_manager_1 = require("../breakpoint/breakpoint-manager");
23
23
  const debug_breakpoint_1 = require("./debug-breakpoint");
24
24
  class DebugDataBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
25
+ static create(origin, options) {
26
+ return new this(origin, options);
27
+ }
25
28
  constructor(origin, options) {
26
29
  super(breakpoint_manager_1.BreakpointManager.DATA_URI, options);
27
30
  this.origin = origin;
@@ -31,18 +34,16 @@ class DebugDataBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
31
34
  };
32
35
  }
33
36
  setEnabled(enabled) {
34
- if (enabled !== this.origin.enabled) {
35
- this.breakpoints.updateDataBreakpoint(this.origin.id, { enabled });
36
- }
37
+ this.breakpoints.enableBreakpoint(this, enabled);
37
38
  }
38
39
  isEnabled() {
39
40
  return super.isEnabled() && this.isSupported();
40
41
  }
41
42
  isSupported() {
42
- return Boolean(this.session?.capabilities.supportsDataBreakpoints);
43
+ return this.raw ? !!this.raw.supportsDataBreakpoints : true;
43
44
  }
44
45
  remove() {
45
- this.breakpoints.removeDataBreakpoint(this.origin.id);
46
+ this.breakpoints.removeDataBreakpoint(this);
46
47
  }
47
48
  doRender() {
48
49
  return React.createElement(React.Fragment, null,
@@ -1 +1 @@
1
- {"version":3,"file":"debug-data-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-data-breakpoint.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-data-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-data-breakpoint.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  import * as React from '@theia/core/shared/react';
2
2
  import { TreeElement } from '@theia/core/lib/browser/source-tree';
3
3
  import { FunctionBreakpoint } from '../breakpoint/breakpoint-marker';
4
+ import { BreakpointManager } from '../breakpoint/breakpoint-manager';
4
5
  import { DebugBreakpoint, DebugBreakpointOptions, DebugBreakpointDecoration } from './debug-breakpoint';
5
6
  export declare class DebugFunctionBreakpoint extends DebugBreakpoint<FunctionBreakpoint> implements TreeElement {
6
7
  readonly origin: FunctionBreakpoint;
7
- constructor(origin: FunctionBreakpoint, options: DebugBreakpointOptions);
8
+ static create(origin: FunctionBreakpoint, options: DebugBreakpointOptions): DebugFunctionBreakpoint;
9
+ private constructor();
8
10
  setEnabled(enabled: boolean): void;
9
11
  protected isEnabled(): boolean;
10
12
  protected isSupported(): boolean;
@@ -16,6 +18,7 @@ export declare class DebugFunctionBreakpoint extends DebugBreakpoint<FunctionBre
16
18
  protected onRemove: () => Promise<void>;
17
19
  protected doGetDecoration(): DebugBreakpointDecoration;
18
20
  protected getBreakpointDecoration(message?: string[]): DebugBreakpointDecoration;
21
+ static editOrCreate(breakpoints: BreakpointManager, existing?: DebugFunctionBreakpoint): Promise<void>;
19
22
  open(): Promise<void>;
20
23
  }
21
24
  //# sourceMappingURL=debug-function-breakpoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-function-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-function-breakpoint.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAErE,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAKxG,qBAAa,uBAAwB,SAAQ,eAAe,CAAC,kBAAkB,CAAE,YAAW,WAAW;IAEvF,QAAQ,CAAC,MAAM,EAAE,kBAAkB;gBAA1B,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,sBAAsB;IAIhF,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cASf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAKhC,MAAM,IAAI,IAAI;IAQd,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAOrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAO1C,SAAS,CAAC,MAAM,sBAGd;IAEF,SAAS,CAAC,QAAQ,sBAGhB;cAEiB,eAAe,IAAI,yBAAyB;IAO/D,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;IAO1E,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAsB9B"}
1
+ {"version":3,"file":"debug-function-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-function-breakpoint.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAKxG,qBAAa,uBAAwB,SAAQ,eAAe,CAAC,kBAAkB,CAAE,YAAW,WAAW;IAM/E,QAAQ,CAAC,MAAM,EAAE,kBAAkB;IAJvD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,OAAO,EAAE,sBAAsB,GAAG,uBAAuB;IAInG,OAAO;IAIP,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAIf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC,MAAM,IAAI,IAAI;IAId,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAOrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAO1C,SAAS,CAAC,MAAM,sBAGd;IAEF,SAAS,CAAC,QAAQ,sBAGhB;cAEiB,eAAe,IAAI,yBAAyB;IAO/D,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;WAOnE,YAAY,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC;IActG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;CAG9B"}
@@ -17,12 +17,16 @@
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
18
  exports.DebugFunctionBreakpoint = void 0;
19
19
  const React = require("@theia/core/shared/react");
20
+ const breakpoint_marker_1 = require("../breakpoint/breakpoint-marker");
20
21
  const breakpoint_manager_1 = require("../breakpoint/breakpoint-manager");
21
22
  const debug_breakpoint_1 = require("./debug-breakpoint");
22
23
  const dialogs_1 = require("@theia/core/lib/browser/dialogs");
23
24
  const core_1 = require("@theia/core");
24
25
  const browser_1 = require("@theia/core/lib/browser");
25
26
  class DebugFunctionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
27
+ static create(origin, options) {
28
+ return new this(origin, options);
29
+ }
26
30
  constructor(origin, options) {
27
31
  super(breakpoint_manager_1.BreakpointManager.FUNCTION_URI, options);
28
32
  this.origin = origin;
@@ -36,26 +40,16 @@ class DebugFunctionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
36
40
  };
37
41
  }
38
42
  setEnabled(enabled) {
39
- const breakpoints = this.breakpoints.getFunctionBreakpoints();
40
- const breakpoint = breakpoints.find(b => b.id === this.id);
41
- if (breakpoint && breakpoint.enabled !== enabled) {
42
- breakpoint.enabled = enabled;
43
- this.breakpoints.setFunctionBreakpoints(breakpoints);
44
- }
43
+ this.breakpoints.enableBreakpoint(this, enabled);
45
44
  }
46
45
  isEnabled() {
47
46
  return super.isEnabled() && this.isSupported();
48
47
  }
49
48
  isSupported() {
50
- const { session } = this;
51
- return !session || !!session.capabilities.supportsFunctionBreakpoints;
49
+ return this.raw ? !!this.raw.supportsFunctionBreakpoints : true;
52
50
  }
53
51
  remove() {
54
- const breakpoints = this.breakpoints.getFunctionBreakpoints();
55
- const newBreakpoints = breakpoints.filter(b => b.id !== this.id);
56
- if (breakpoints.length !== newBreakpoints.length) {
57
- this.breakpoints.setFunctionBreakpoints(newBreakpoints);
58
- }
52
+ this.breakpoints.removeFunctionBreakpoint(this);
59
53
  }
60
54
  get name() {
61
55
  return this.origin.raw.name;
@@ -82,27 +76,24 @@ class DebugFunctionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
82
76
  message: message || [core_1.nls.localizeByDefault('Function Breakpoint')]
83
77
  };
84
78
  }
85
- async open() {
79
+ static async editOrCreate(breakpoints, existing) {
86
80
  const input = new dialogs_1.SingleTextInputDialog({
87
81
  title: core_1.nls.localizeByDefault('Add Function Breakpoint'),
88
- initialValue: this.name
82
+ initialValue: existing?.name ?? ''
89
83
  });
90
84
  const newValue = await input.open();
91
- if (newValue !== undefined && newValue !== this.name) {
92
- const breakpoints = this.breakpoints.getFunctionBreakpoints();
93
- const breakpoint = breakpoints.find(b => b.id === this.id);
94
- if (breakpoint) {
95
- if (breakpoint.raw.name !== newValue) {
96
- breakpoint.raw.name = newValue;
97
- this.breakpoints.setFunctionBreakpoints(breakpoints);
98
- }
99
- }
100
- else {
101
- this.origin.raw.name = newValue;
102
- breakpoints.push(this.origin);
103
- this.breakpoints.setFunctionBreakpoints(breakpoints);
104
- }
85
+ if (!newValue) {
86
+ return;
105
87
  }
88
+ if (existing) {
89
+ breakpoints.updateFunctionBreakpoint(existing, { name: newValue });
90
+ }
91
+ else {
92
+ breakpoints.addFunctionBreakpoint(breakpoint_marker_1.FunctionBreakpoint.create({ name: newValue }));
93
+ }
94
+ }
95
+ async open() {
96
+ DebugFunctionBreakpoint.editOrCreate(this.breakpoints, this);
106
97
  }
107
98
  }
108
99
  exports.DebugFunctionBreakpoint = DebugFunctionBreakpoint;
@@ -1 +1 @@
1
- {"version":3,"file":"debug-function-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-function-breakpoint.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"debug-function-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-function-breakpoint.tsx"],"names":[],"mappings":"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"}
@@ -3,7 +3,8 @@ import { InstructionBreakpoint } from '../breakpoint/breakpoint-marker';
3
3
  import { DebugBreakpoint, DebugBreakpointDecoration, DebugBreakpointOptions } from './debug-breakpoint';
4
4
  export declare class DebugInstructionBreakpoint extends DebugBreakpoint<InstructionBreakpoint> {
5
5
  readonly origin: InstructionBreakpoint;
6
- constructor(origin: InstructionBreakpoint, options: DebugBreakpointOptions);
6
+ static create(origin: InstructionBreakpoint, options: DebugBreakpointOptions): DebugInstructionBreakpoint;
7
+ private constructor();
7
8
  setEnabled(enabled: boolean): void;
8
9
  protected isEnabled(): boolean;
9
10
  protected isSupported(): boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"debug-instruction-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-instruction-breakpoint.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAExG,qBAAa,0BAA2B,SAAQ,eAAe,CAAC,qBAAqB,CAAC;IACtE,QAAQ,CAAC,MAAM,EAAE,qBAAqB;gBAA7B,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,sBAAsB;IAInF,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAMf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC,MAAM,IAAI,IAAI;IAId,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAOrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAM1C,SAAS,CAAC,QAAQ,sBAGhB;IAEF,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;CAkBnF"}
1
+ {"version":3,"file":"debug-instruction-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-instruction-breakpoint.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAExG,qBAAa,0BAA2B,SAAQ,eAAe,CAAC,qBAAqB,CAAC;IAK9D,QAAQ,CAAC,MAAM,EAAE,qBAAqB;IAJ1D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,qBAAqB,EAAE,OAAO,EAAE,sBAAsB,GAAG,0BAA0B;IAIzG,OAAO;IAIP,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;cAIf,SAAS,IAAI,OAAO;IAIvC,SAAS,CAAC,WAAW,IAAI,OAAO;IAIhC,MAAM,IAAI,IAAI;IAId,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAOrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAM1C,SAAS,CAAC,QAAQ,sBAGhB;IAEF,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;CAkBnF"}
@@ -22,6 +22,9 @@ const browser_1 = require("@theia/core/lib/browser");
22
22
  const breakpoint_manager_1 = require("../breakpoint/breakpoint-manager");
23
23
  const debug_breakpoint_1 = require("./debug-breakpoint");
24
24
  class DebugInstructionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
25
+ static create(origin, options) {
26
+ return new this(origin, options);
27
+ }
25
28
  constructor(origin, options) {
26
29
  super(breakpoint_manager_1.BreakpointManager.INSTRUCTION_URI, options);
27
30
  this.origin = origin;
@@ -31,23 +34,20 @@ class DebugInstructionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
31
34
  };
32
35
  }
33
36
  setEnabled(enabled) {
34
- if (enabled !== this.origin.enabled) {
35
- this.breakpoints.updateInstructionBreakpoint(this.origin.id, { enabled });
36
- }
37
+ this.breakpoints.enableBreakpoint(this, enabled);
37
38
  }
38
39
  isEnabled() {
39
40
  return super.isEnabled() && this.isSupported();
40
41
  }
41
42
  isSupported() {
42
- return Boolean(this.session?.capabilities.supportsInstructionBreakpoints);
43
+ return this.raw ? !!this.raw.supportsInstructionBreakpoints : true;
43
44
  }
44
45
  remove() {
45
- this.breakpoints.removeInstructionBreakpoint(this.origin.instructionReference);
46
+ this.breakpoints.removeInstructionBreakpoint(this);
46
47
  }
47
48
  doRender() {
48
49
  return React.createElement(React.Fragment, null,
49
- React.createElement("span", { className: "line-info" }, this.origin.instructionReference),
50
- ";",
50
+ React.createElement("span", { className: "line-info" }, this.origin.raw.instructionReference),
51
51
  this.renderActions());
52
52
  }
53
53
  renderActions() {
@@ -61,7 +61,7 @@ class DebugInstructionBreakpoint extends debug_breakpoint_1.DebugBreakpoint {
61
61
  message: message ?? [core_1.nls.localize('theia/debug/instruction-breakpoint', 'Instruction Breakpoint')],
62
62
  };
63
63
  }
64
- if (this.origin.condition || this.origin.hitCondition) {
64
+ if (this.origin.raw.condition || this.origin.raw.hitCondition) {
65
65
  return {
66
66
  className: 'codicon-debug-breakpoint-conditional',
67
67
  message: message || [core_1.nls.localize('theia/debug/conditionalBreakpoint', 'Conditional Breakpoint')]
@@ -1 +1 @@
1
- {"version":3,"file":"debug-instruction-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-instruction-breakpoint.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,sCAAkC;AAClC,kDAAkD;AAClD,qDAAkD;AAClD,yEAAqE;AAErE,yDAAwG;AAExG,MAAa,0BAA2B,SAAQ,kCAAsC;IAClF,YAAqB,MAA6B,EAAE,OAA+B;QAC/E,KAAK,CAAC,sCAAiB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QADjC,WAAM,GAAN,MAAM,CAAuB;QAmCxC,aAAQ,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC;IApCF,CAAC;IAED,UAAU,CAAC,OAAgB;QACvB,IAAI,OAAO,KAAK,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YAClC,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QAC9E,CAAC;IACL,CAAC;IAEkB,SAAS;QACxB,OAAO,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;IACnD,CAAC;IAES,WAAW;QACjB,OAAO,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,YAAY,CAAC,8BAA8B,CAAC,CAAC;IAC9E,CAAC;IAED,MAAM;QACF,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,CAAC;IACnF,CAAC;IAES,QAAQ;QACd,OAAO,oBAAC,KAAK,CAAC,QAAQ;YAClB,8BAAM,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAQ;;YACpE,IAAI,CAAC,aAAa,EAAE,CACR,CAAC;IACtB,CAAC;IAES,aAAa;QACnB,OAAO,6BAAK,SAAS,EAAC,gCAAgC;YAClD,6BAAK,SAAS,EAAE,IAAA,iBAAO,EAAC,OAAO,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAI,CACnH,CAAC;IACX,CAAC;IAOS,uBAAuB,CAAC,OAAkB;QAChD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACtB,OAAO;gBACH,SAAS,EAAE,sCAAsC;gBACjD,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,wBAAwB,CAAC,CAAC;aACrG,CAAC;QACN,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;YACpD,OAAO;gBACH,SAAS,EAAE,sCAAsC;gBACjD,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,mCAAmC,EAAE,wBAAwB,CAAC,CAAC;aACpG,CAAC;QACN,CAAC;QACD,OAAO;YACH,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,wBAAwB,CAAC,CAAC;SACrG,CAAC;IACN,CAAC;CACJ;AA3DD,gEA2DC"}
1
+ {"version":3,"file":"debug-instruction-breakpoint.js","sourceRoot":"","sources":["../../../src/browser/model/debug-instruction-breakpoint.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,sCAAkC;AAClC,kDAAkD;AAClD,qDAAkD;AAClD,yEAAqE;AAErE,yDAAwG;AAExG,MAAa,0BAA2B,SAAQ,kCAAsC;IAClF,MAAM,CAAC,MAAM,CAAC,MAA6B,EAAE,OAA+B;QACxE,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,CAAC;IAED,YAA6B,MAA6B,EAAE,OAA+B;QACvF,KAAK,CAAC,sCAAiB,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QADzB,WAAM,GAAN,MAAM,CAAuB;QAiChD,aAAQ,GAAG,KAAK,IAAI,EAAE;YAC5B,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,CAAC;IAlCF,CAAC;IAED,UAAU,CAAC,OAAgB;QACvB,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACrD,CAAC;IAEkB,SAAS;QACxB,OAAO,KAAK,CAAC,SAAS,EAAE,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;IACnD,CAAC;IAES,WAAW;QACjB,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC,IAAI,CAAC;IACvE,CAAC;IAED,MAAM;QACF,IAAI,CAAC,WAAW,CAAC,2BAA2B,CAAC,IAAI,CAAC,CAAC;IACvD,CAAC;IAES,QAAQ;QACd,OAAO,oBAAC,KAAK,CAAC,QAAQ;YAClB,8BAAM,SAAS,EAAC,WAAW,IAAE,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,oBAAoB,CAAQ;YACxE,IAAI,CAAC,aAAa,EAAE,CACR,CAAC;IACtB,CAAC;IAES,aAAa;QACnB,OAAO,6BAAK,SAAS,EAAC,gCAAgC;YAClD,6BAAK,SAAS,EAAE,IAAA,iBAAO,EAAC,OAAO,EAAE,IAAI,CAAC,EAAE,KAAK,EAAE,UAAG,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,GAAI,CACnH,CAAC;IACX,CAAC;IAOS,uBAAuB,CAAC,OAAkB;QAChD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;YACtB,OAAO;gBACH,SAAS,EAAE,sCAAsC;gBACjD,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,wBAAwB,CAAC,CAAC;aACrG,CAAC;QACN,CAAC;QACD,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC;YAC5D,OAAO;gBACH,SAAS,EAAE,sCAAsC;gBACjD,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,mCAAmC,EAAE,wBAAwB,CAAC,CAAC;aACpG,CAAC;QACN,CAAC;QACD,OAAO;YACH,SAAS,EAAE,0BAA0B;YACrC,OAAO,EAAE,OAAO,IAAI,CAAC,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,wBAAwB,CAAC,CAAC;SACrG,CAAC;IACN,CAAC;CACJ;AA7DD,gEA6DC"}
@@ -1,23 +1,15 @@
1
1
  import * as React from '@theia/core/shared/react';
2
- import { DebugProtocol } from '@vscode/debugprotocol/lib/debugProtocol';
3
- import { CommandService } from '@theia/core';
2
+ import { DebugProtocol } from '@vscode/debugprotocol';
4
3
  import { EditorWidget } from '@theia/editor/lib/browser';
5
4
  import { WidgetOpenerOptions } from '@theia/core/lib/browser';
6
5
  import { TreeElement } from '@theia/core/lib/browser/source-tree';
7
6
  import { SourceBreakpoint } from '../breakpoint/breakpoint-marker';
8
- import { DebugSource } from './debug-source';
9
- import { DebugBreakpoint, DebugBreakpointOptions, DebugBreakpointData, DebugBreakpointDecoration } from './debug-breakpoint';
10
- export declare class DebugSourceBreakpointData extends DebugBreakpointData {
11
- readonly origins: SourceBreakpoint[];
12
- }
7
+ import { DebugBreakpoint, DebugBreakpointOptions, DebugBreakpointDecoration } from './debug-breakpoint';
13
8
  export declare class DebugSourceBreakpoint extends DebugBreakpoint<SourceBreakpoint> implements TreeElement {
14
- protected readonly commandService: CommandService;
15
- readonly origins: SourceBreakpoint[];
16
- constructor(origin: SourceBreakpoint, options: DebugBreakpointOptions, commandService: CommandService);
17
- update(data: Partial<DebugSourceBreakpointData>): void;
18
- get origin(): SourceBreakpoint;
9
+ readonly origin: SourceBreakpoint;
10
+ static create(origin: SourceBreakpoint, options: DebugBreakpointOptions): DebugSourceBreakpoint;
11
+ constructor(origin: SourceBreakpoint, options: DebugBreakpointOptions);
19
12
  setEnabled(enabled: boolean): void;
20
- updateOrigins(data: Partial<DebugProtocol.SourceBreakpoint>): void;
21
13
  /** 1-based */
22
14
  get line(): number;
23
15
  get column(): number | undefined;
@@ -26,7 +18,7 @@ export declare class DebugSourceBreakpoint extends DebugBreakpoint<SourceBreakpo
26
18
  get condition(): string | undefined;
27
19
  get hitCondition(): string | undefined;
28
20
  get logMessage(): string | undefined;
29
- get source(): DebugSource | undefined;
21
+ get source(): DebugProtocol.Source | undefined;
30
22
  open(options?: WidgetOpenerOptions): Promise<EditorWidget>;
31
23
  protected setBreakpointEnabled: (event: React.ChangeEvent<HTMLInputElement>) => void;
32
24
  protected doRender(): React.ReactNode;
@@ -38,6 +30,5 @@ export declare class DebugSourceBreakpoint extends DebugBreakpoint<SourceBreakpo
38
30
  protected getUnsupportedBreakpointDecoration(message: string): DebugBreakpointDecoration;
39
31
  protected getBreakpointDecoration(message?: string[]): DebugBreakpointDecoration;
40
32
  remove(): void;
41
- protected doRemove(origins: SourceBreakpoint[]): SourceBreakpoint[] | undefined;
42
33
  }
43
34
  //# sourceMappingURL=debug-source-breakpoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"debug-source-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-source-breakpoint.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,yCAAyC,CAAC;AACxE,OAAO,EAAE,cAAc,EAAyB,MAAM,aAAa,CAAC;AAEpE,OAAO,EAAE,YAAY,EAAS,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAwB,mBAAmB,EAAW,MAAM,yBAAyB,CAAC;AAC7F,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAG7H,qBAAa,yBAA0B,SAAQ,mBAAmB;IAC9D,QAAQ,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;CACxC;AAED,qBAAa,qBAAsB,SAAQ,eAAe,CAAC,gBAAgB,CAAE,YAAW,WAAW;IAE/F,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;IAClD,QAAQ,CAAC,OAAO,EAAE,gBAAgB,EAAE,CAAC;gBAEzB,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,sBAAsB,EAAE,cAAc,EAAE,cAAc;IAM5F,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,yBAAyB,CAAC,GAAG,IAAI;IAI/D,IAAI,MAAM,IAAI,gBAAgB,CAE7B;IAED,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAuBlC,aAAa,CAAC,IAAI,EAAE,OAAO,CAAC,aAAa,CAAC,gBAAgB,CAAC,GAAG,IAAI;IAgBlE,cAAc;IACd,IAAI,IAAI,IAAI,MAAM,CAEjB;IACD,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IACD,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IACD,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IACD,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IACD,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,IAAI,MAAM,IAAI,WAAW,GAAG,SAAS,CAEpC;IAEK,IAAI,CAAC,OAAO,GAAE,mBAEnB,GAAG,OAAO,CAAC,YAAY,CAAC;IA2BzB,UAAmB,oBAAoB,GAAI,OAAO,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAEnF;IAEF,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAWrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAO1C,SAAS,CAAC,MAAM,sBAGd;IAEF,SAAS,CAAC,QAAQ,sBAGhB;IAEF,cAAc,IAAI,MAAM;IAIf,eAAe,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,yBAAyB;IA4B5E,SAAS,CAAC,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,yBAAyB;IAOxF,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;IAmBhF,MAAM,IAAI,IAAI;IAMd,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,gBAAgB,EAAE,GAAG,gBAAgB,EAAE,GAAG,SAAS;CAmBlF"}
1
+ {"version":3,"file":"debug-source-breakpoint.d.ts","sourceRoot":"","sources":["../../../src/browser/model/debug-source-breakpoint.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAS,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAwB,mBAAmB,EAAiB,MAAM,yBAAyB,CAAC;AACnG,OAAO,EAAE,WAAW,EAAE,MAAM,qCAAqC,CAAC;AAClE,OAAO,EAA2B,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAC5F,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAGxG,qBAAa,qBAAsB,SAAQ,eAAe,CAAC,gBAAgB,CAAE,YAAW,WAAW;IAMnF,QAAQ,CAAC,MAAM,EAAE,gBAAgB;IAJ7C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,sBAAsB,GAAG,qBAAqB;gBAI1E,MAAM,EAAE,gBAAgB,EAAE,OAAO,EAAE,sBAAsB;IAI9E,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIlC,cAAc;IACd,IAAI,IAAI,IAAI,MAAM,CAEjB;IACD,IAAI,MAAM,IAAI,MAAM,GAAG,SAAS,CAE/B;IACD,IAAI,OAAO,IAAI,MAAM,GAAG,SAAS,CAEhC;IACD,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IAED,IAAI,SAAS,IAAI,MAAM,GAAG,SAAS,CAElC;IACD,IAAI,YAAY,IAAI,MAAM,GAAG,SAAS,CAErC;IACD,IAAI,UAAU,IAAI,MAAM,GAAG,SAAS,CAEnC;IAED,IAAI,MAAM,IAAI,aAAa,CAAC,MAAM,GAAG,SAAS,CAE7C;IAEK,IAAI,CAAC,OAAO,GAAE,mBAEnB,GAAG,OAAO,CAAC,YAAY,CAAC;IAqBzB,UAAmB,oBAAoB,GAAI,OAAO,KAAK,CAAC,WAAW,CAAC,gBAAgB,CAAC,UAEnF;IAEF,SAAS,CAAC,QAAQ,IAAI,KAAK,CAAC,SAAS;IAWrC,SAAS,CAAC,aAAa,IAAI,KAAK,CAAC,SAAS;IAO1C,SAAS,CAAC,MAAM,sBAGd;IAEF,SAAS,CAAC,QAAQ,sBAGhB;IAEF,cAAc,IAAI,MAAM;IAIf,eAAe,CAAC,QAAQ,GAAE,MAAM,EAAO,GAAG,yBAAyB;IA2B5E,SAAS,CAAC,kCAAkC,CAAC,OAAO,EAAE,MAAM,GAAG,yBAAyB;IAOxF,SAAS,CAAC,uBAAuB,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,GAAG,yBAAyB;IAmBhF,MAAM,IAAI,IAAI;CAGjB"}