roku-debug 0.12.2 → 0.14.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 (44) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/dist/FileUtils.d.ts +8 -0
  3. package/dist/FileUtils.js +29 -3
  4. package/dist/FileUtils.js.map +1 -1
  5. package/dist/adapters/DebugProtocolAdapter.d.ts +7 -1
  6. package/dist/adapters/DebugProtocolAdapter.js +55 -3
  7. package/dist/adapters/DebugProtocolAdapter.js.map +1 -1
  8. package/dist/adapters/TelnetAdapter.d.ts +16 -0
  9. package/dist/adapters/TelnetAdapter.js +4 -0
  10. package/dist/adapters/TelnetAdapter.js.map +1 -1
  11. package/dist/debugProtocol/Constants.d.ts +29 -1
  12. package/dist/debugProtocol/Constants.js +30 -1
  13. package/dist/debugProtocol/Constants.js.map +1 -1
  14. package/dist/debugProtocol/Debugger.d.ts +11 -5
  15. package/dist/debugProtocol/Debugger.js +39 -14
  16. package/dist/debugProtocol/Debugger.js.map +1 -1
  17. package/dist/debugProtocol/responses/ListBreakpointsResponse.d.ts +2 -1
  18. package/dist/debugProtocol/responses/ListBreakpointsResponse.js +1 -1
  19. package/dist/debugProtocol/responses/ListBreakpointsResponse.js.map +1 -1
  20. package/dist/debugSession/BrightScriptDebugSession.d.ts +8 -2
  21. package/dist/debugSession/BrightScriptDebugSession.js +74 -31
  22. package/dist/debugSession/BrightScriptDebugSession.js.map +1 -1
  23. package/dist/debugSession/Events.d.ts +7 -0
  24. package/dist/debugSession/Events.js +8 -1
  25. package/dist/debugSession/Events.js.map +1 -1
  26. package/dist/interfaces.d.ts +4 -0
  27. package/dist/managers/ActionQueue.d.ts +9 -0
  28. package/dist/managers/ActionQueue.js +38 -0
  29. package/dist/managers/ActionQueue.js.map +1 -0
  30. package/dist/managers/BreakpointManager.d.ts +128 -27
  31. package/dist/managers/BreakpointManager.js +294 -89
  32. package/dist/managers/BreakpointManager.js.map +1 -1
  33. package/dist/managers/FileManager.js +3 -3
  34. package/dist/managers/FileManager.js.map +1 -1
  35. package/dist/managers/LocationManager.js +1 -1
  36. package/dist/managers/LocationManager.js.map +1 -1
  37. package/dist/managers/ProjectManager.d.ts +4 -6
  38. package/dist/managers/ProjectManager.js +22 -30
  39. package/dist/managers/ProjectManager.js.map +1 -1
  40. package/dist/util.js +1 -4
  41. package/dist/util.js.map +1 -1
  42. package/package.json +3 -3
  43. package/roku-debug-0.14.0.tgz +0 -0
  44. package/roku-debug-0.12.2.tgz +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BrightScriptDebugSession.js","sourceRoot":"","sources":["../../src/debugSession/BrightScriptDebugSession.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,13 @@ export declare class LaunchStartEvent implements DebugProtocol.Event {
41
41
  seq: number;
42
42
  type: string;
43
43
  }
44
+ export declare class PopupMessageEvent implements DebugProtocol.Event {
45
+ constructor(message: string, severity: 'error' | 'info' | 'warn');
46
+ body: any;
47
+ event: string;
48
+ seq: number;
49
+ type: string;
50
+ }
44
51
  export declare class ChannelPublishedEvent implements DebugProtocol.Event {
45
52
  constructor(body: {
46
53
  launchConfiguration: LaunchConfiguration;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StoppedEventReason = exports.ChannelPublishedEvent = exports.LaunchStartEvent = exports.ChanperfEvent = exports.RendezvousEvent = exports.DebugServerLogOutputEvent = exports.LogOutputEvent = exports.CompileFailureEvent = void 0;
3
+ exports.StoppedEventReason = exports.ChannelPublishedEvent = exports.PopupMessageEvent = exports.LaunchStartEvent = exports.ChanperfEvent = exports.RendezvousEvent = exports.DebugServerLogOutputEvent = exports.LogOutputEvent = exports.CompileFailureEvent = void 0;
4
4
  class CompileFailureEvent {
5
5
  constructor(compileError) {
6
6
  this.body = compileError;
@@ -42,6 +42,13 @@ class LaunchStartEvent {
42
42
  }
43
43
  }
44
44
  exports.LaunchStartEvent = LaunchStartEvent;
45
+ class PopupMessageEvent {
46
+ constructor(message, severity) {
47
+ this.body = { message, severity };
48
+ this.event = 'BSPopupMessageEvent';
49
+ }
50
+ }
51
+ exports.PopupMessageEvent = PopupMessageEvent;
45
52
  class ChannelPublishedEvent {
46
53
  constructor(body) {
47
54
  this.body = body !== null && body !== void 0 ? body : {};
@@ -1 +1 @@
1
- {"version":3,"file":"Events.js","sourceRoot":"","sources":["../../src/debugSession/Events.ts"],"names":[],"mappings":";;;AAMA,MAAa,mBAAmB;IAC5B,YAAY,YAA6C;QACrD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;CAMJ;AATD,kDASC;AAED,MAAa,cAAc;IACvB,YAAY,KAAa;QACrB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAAC;IACpC,CAAC;CAMJ;AAVD,wCAUC;AAED,MAAa,yBAA0B,SAAQ,cAAc;IACzD,YAAY,KAAa;QACrB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,6BAA6B,CAAC;IAC/C,CAAC;CACJ;AALD,8DAKC;AAED,MAAa,eAAe;IACxB,YAAY,MAAyB;QACjC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,mBAAmB,CAAC;IACrC,CAAC;CAMJ;AAVD,0CAUC;AAED,MAAa,aAAa;IACtB,YAAY,MAAoB;QAC5B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC;IACnC,CAAC;CAMJ;AAVD,sCAUC;AAED,MAAa,gBAAgB;IACzB,YAAY,IAAyB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC;IACtC,CAAC;CAMJ;AAVD,4CAUC;AAED,MAAa,qBAAqB;IAC9B,YACI,IAEC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,yBAAyB,CAAC;IAC3C,CAAC;CAMJ;AAdD,sDAcC;AAGD,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC1B,mCAAa,CAAA;IACb,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IACvB,qCAAe,CAAA;IACf,qCAAe,CAAA;AACnB,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B"}
1
+ {"version":3,"file":"Events.js","sourceRoot":"","sources":["../../src/debugSession/Events.ts"],"names":[],"mappings":";;;AAMA,MAAa,mBAAmB;IAC5B,YAAY,YAA6C;QACrD,IAAI,CAAC,IAAI,GAAG,YAAY,CAAC;IAC7B,CAAC;CAMJ;AATD,kDASC;AAED,MAAa,cAAc;IACvB,YAAY,KAAa;QACrB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,kBAAkB,CAAC;IACpC,CAAC;CAMJ;AAVD,wCAUC;AAED,MAAa,yBAA0B,SAAQ,cAAc;IACzD,YAAY,KAAa;QACrB,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,KAAK,GAAG,6BAA6B,CAAC;IAC/C,CAAC;CACJ;AALD,8DAKC;AAED,MAAa,eAAe;IACxB,YAAY,MAAyB;QACjC,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,mBAAmB,CAAC;IACrC,CAAC;CAMJ;AAVD,0CAUC;AAED,MAAa,aAAa;IACtB,YAAY,MAAoB;QAC5B,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,iBAAiB,CAAC;IACnC,CAAC;CAMJ;AAVD,sCAUC;AAED,MAAa,gBAAgB;IACzB,YAAY,IAAyB;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,oBAAoB,CAAC;IACtC,CAAC;CAMJ;AAVD,4CAUC;AAED,MAAa,iBAAiB;IAC1B,YAAY,OAAe,EAAE,QAAmC;QAC5D,IAAI,CAAC,IAAI,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,GAAG,qBAAqB,CAAC;IACvC,CAAC;CAMJ;AAVD,8CAUC;AAED,MAAa,qBAAqB;IAC9B,YACI,IAEC;QAED,IAAI,CAAC,IAAI,GAAG,IAAI,aAAJ,IAAI,cAAJ,IAAI,GAAI,EAAE,CAAC;QACvB,IAAI,CAAC,KAAK,GAAG,yBAAyB,CAAC;IAC3C,CAAC;CAMJ;AAdD,sDAcC;AAGD,IAAY,kBAMX;AAND,WAAY,kBAAkB;IAC1B,mCAAa,CAAA;IACb,+CAAyB,CAAA;IACzB,6CAAuB,CAAA;IACvB,qCAAe,CAAA;IACf,qCAAe,CAAA;AACnB,CAAC,EANW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAM7B"}
@@ -17,4 +17,8 @@ export interface AdapterOptions {
17
17
  host: string;
18
18
  brightScriptConsolePort?: number;
19
19
  remotePort?: number;
20
+ /**
21
+ * If true, the application being debugged will stop on the first line of the program.
22
+ */
23
+ stopOnEntry?: boolean;
20
24
  }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * A runner that will keep retrying an action until it succeeds, while also queueing up future actions.
3
+ * Will run until all pending actions are complete.
4
+ */
5
+ export declare class ActionQueue {
6
+ private queueItems;
7
+ run(action: () => Promise<boolean>): Promise<void>;
8
+ private _runActions;
9
+ }
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ActionQueue = void 0;
4
+ const util_1 = require("../util");
5
+ /**
6
+ * A runner that will keep retrying an action until it succeeds, while also queueing up future actions.
7
+ * Will run until all pending actions are complete.
8
+ */
9
+ class ActionQueue {
10
+ constructor() {
11
+ this.queueItems = [];
12
+ }
13
+ async run(action) {
14
+ this.queueItems.push({
15
+ action: action,
16
+ deferred: (0, util_1.defer)()
17
+ });
18
+ await this._runActions();
19
+ }
20
+ async _runActions() {
21
+ while (this.queueItems.length > 0) {
22
+ const queueItem = this.queueItems[0];
23
+ try {
24
+ const isFinished = await queueItem.action();
25
+ if (isFinished) {
26
+ this.queueItems.shift();
27
+ queueItem.deferred.resolve();
28
+ }
29
+ }
30
+ catch (error) {
31
+ this.queueItems.shift();
32
+ queueItem.deferred.reject(error);
33
+ }
34
+ }
35
+ }
36
+ }
37
+ exports.ActionQueue = ActionQueue;
38
+ //# sourceMappingURL=ActionQueue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionQueue.js","sourceRoot":"","sources":["../../src/managers/ActionQueue.ts"],"names":[],"mappings":";;;AACA,kCAAgC;AAEhC;;;GAGG;AACH,MAAa,WAAW;IAAxB;QAEY,eAAU,GAGb,EAAE,CAAC;IAyBZ,CAAC;IAvBU,KAAK,CAAC,GAAG,CAAC,MAA8B;QAC3C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACjB,MAAM,EAAE,MAAM;YACd,QAAQ,EAAE,IAAA,YAAK,GAAE;SACpB,CAAC,CAAC;QACH,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;IAC7B,CAAC;IAEO,KAAK,CAAC,WAAW;QACrB,OAAO,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YACrC,IAAI;gBACA,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,MAAM,EAAE,CAAC;gBAC5C,IAAI,UAAU,EAAE;oBACZ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;oBACxB,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBAChC;aACJ;YAAC,OAAO,KAAK,EAAE;gBACZ,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;gBACxB,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;aACpC;SACJ;IACL,CAAC;CACJ;AA9BD,kCA8BC"}
@@ -12,16 +12,14 @@ export declare class BreakpointManager {
12
12
  rootDir: string;
13
13
  enableSourceMaps?: boolean;
14
14
  };
15
+ private emitter;
16
+ private emit;
15
17
  /**
16
- * Tell the breakpoint manager that no new breakpoints can be verified
17
- * (most likely due to the app being launched and roku not supporting dynamic breakpoints)
18
+ * Subscribe to an event
18
19
  */
19
- lockBreakpoints(): void;
20
- /**
21
- * Indicates whether the app has been launched or not.
22
- * This will determine whether the breakpoints should be written to the files, or marked as not verified (greyed out in vscode)
23
- */
24
- private areBreakpointsLocked;
20
+ on(eventName: 'breakpoints-verified', handler: (data: {
21
+ breakpoints: AugmentedSourceBreakpoint[];
22
+ }) => any): any;
25
23
  /**
26
24
  * A map of breakpoints by what file they were set in.
27
25
  * This does not handle any source-to-dest mapping...these breakpoints are stored in the file they were set in.
@@ -29,17 +27,47 @@ export declare class BreakpointManager {
29
27
  * (this concept may need to be modified once we get live breakpoint support)
30
28
  */
31
29
  private breakpointsByFilePath;
32
- static breakpointIdSequence: number;
30
+ /**
31
+ * A sequence used to generate unique client breakpoint IDs
32
+ */
33
+ private breakpointIdSequence;
33
34
  /**
34
35
  * breakpoint lines are 1-based, and columns are zero-based
35
36
  */
36
- registerBreakpoint(sourceFilePath: string, breakpoint: AugmentedSourceBreakpoint | DebugProtocol.SourceBreakpoint): void;
37
+ setBreakpoint(srcPath: string, breakpoint: AugmentedSourceBreakpoint | DebugProtocol.SourceBreakpoint): AugmentedSourceBreakpoint;
38
+ /**
39
+ * Find a breakpoint by its hash
40
+ * @returns the breakpoint, or undefined if not found
41
+ */
42
+ private getBreakpointByHash;
43
+ /**
44
+ * Find a list of breakpoints by their hashes
45
+ * @returns the breakpoint, or undefined if not found
46
+ */
47
+ private getBreakpointsByHashes;
48
+ /**
49
+ * Mark this breakpoint as verified
50
+ */
51
+ verifyBreakpoint(hash: string, deviceId: number): void;
52
+ /**
53
+ * Whenever breakpoints get verified, they need to be synced back to vscode.
54
+ * This queues up a future function that will emit a batch of all verified breakpoints.
55
+ * @param hash the breakpoint hash that identifies this specific breakpoint based on its features
56
+ */
57
+ private queueVerifyEvent;
58
+ private verifiedBreakpointKeys;
59
+ private isVerifyEventQueued;
60
+ /**
61
+ * Generate a key based on the features of the breakpoint. Every breakpoint that exists at the same location
62
+ * and has the same features should have the same key.
63
+ */
64
+ getBreakpointKey(filePath: string, breakpoint: DebugProtocol.SourceBreakpoint | AugmentedSourceBreakpoint): string;
37
65
  /**
38
66
  * Set/replace/delete the list of breakpoints for this file.
39
- * @param sourceFilePath
67
+ * @param srcPath
40
68
  * @param allBreakpointsForFile
41
69
  */
42
- replaceBreakpoints(sourceFilePath: string, allBreakpointsForFile: DebugProtocol.SourceBreakpoint[]): AugmentedSourceBreakpoint[];
70
+ replaceBreakpoints(srcPath: string, allBreakpointsForFile: DebugProtocol.SourceBreakpoint[]): AugmentedSourceBreakpoint[];
43
71
  /**
44
72
  * Get a list of all breakpoint tasks that should be performed.
45
73
  * This will also exclude files with breakpoints that are not in scope.
@@ -53,6 +81,11 @@ export declare class BreakpointManager {
53
81
  * Write "stop" lines into source code for each breakpoint of each file in the given project
54
82
  */
55
83
  writeBreakpointsForProject(project: Project): Promise<void>;
84
+ private registerPermanentBreakpoint;
85
+ /**
86
+ * The list of breakpoints that were permanently written to a file at the start of a debug session. Used for line offset calculations.
87
+ */
88
+ private permanentBreakpointsBySrcPath;
56
89
  /**
57
90
  * Write breakpoints to the specified file, and update the sourcemaps to match
58
91
  */
@@ -63,48 +96,117 @@ export declare class BreakpointManager {
63
96
  /**
64
97
  * Get the list of breakpoints for the specified file path, or an empty array
65
98
  */
66
- getBreakpointsForFile(filePath: string): AugmentedSourceBreakpoint[];
99
+ private getBreakpointsForFile;
100
+ /**
101
+ * Get the permanent breakpoint with the specified hash
102
+ * @returns the breakpoint with the matching hash, or undefined
103
+ */
104
+ getPermanentBreakpoint(hash: string): BreakpointWorkItem;
105
+ /**
106
+ * Get the list of breakpoints that were written to the source file
107
+ */
108
+ getPermanentBreakpointsForFile(srcPath: string): BreakpointWorkItem[];
67
109
  /**
68
110
  * File paths can be different casing sometimes,
69
111
  * so find the existing key if it exists, or return the file path if it doesn't exist
70
112
  */
71
113
  sanitizeSourceFilePath(filePath: string): string;
114
+ /**
115
+ * Determine if there's a breakpoint set at the given staging folder and line.
116
+ * This is not trivial, so only run when absolutely necessary
117
+ * @param projects the list of projects to scan
118
+ * @param pkgPath the path to the file in the staging directory
119
+ * @param line the 0-based line for the breakpoint
120
+ */
121
+ lineHasBreakpoint(projects: Project[], pkgPath: string, line: number): Promise<boolean>;
122
+ /**
123
+ * Get a diff of all breakpoints that have changed since the last time the diff was retrieved.
124
+ * Sets the new baseline to the current state, so the next diff will be based on this new baseline.
125
+ *
126
+ * All projects should be passed in every time.
127
+ */
128
+ getDiff(projects: Project[]): Promise<Diff>;
129
+ /**
130
+ * Flag indicating whether a `getDiff` function is currently running
131
+ */
132
+ private isGetDiffRunning;
133
+ private lastState;
134
+ }
135
+ export interface Diff {
136
+ added: BreakpointWorkItem[];
137
+ removed: BreakpointWorkItem[];
138
+ unchanged: BreakpointWorkItem[];
72
139
  }
73
- interface AugmentedSourceBreakpoint extends DebugProtocol.SourceBreakpoint {
140
+ export interface AugmentedSourceBreakpoint extends DebugProtocol.SourceBreakpoint {
74
141
  /**
75
- * An ID for this breakpoint, which is used to set/unset breakpoints in the client
142
+ * The path to the source file where this breakpoint was originally set
76
143
  */
77
- id: number;
144
+ srcPath: string;
145
+ /**
146
+ * A unique hash generated for the breakpoint at this exact file/line/column/feature. Every breakpoint with these same features should get the same hash
147
+ */
148
+ hash: string;
78
149
  /**
79
- * Was this breakpoint added before launch? That means this breakpoint was written into the source code as a `stop` statement,
80
- * so if users toggle this breakpoint line on and off, it should get verified every time.
150
+ * The device-provided breakpoint id. A missing ID means this breakpoint has not yet been verified by the device.
81
151
  */
82
- wasAddedBeforeLaunch: boolean;
152
+ deviceId?: number;
153
+ /**
154
+ * A unique ID the debug adapter generates to help send updates to the client about this breakpoint
155
+ */
156
+ id: number;
83
157
  /**
84
158
  * This breakpoint has been verified (i.e. we were able to set it at the given location)
85
159
  */
86
160
  verified: boolean;
161
+ }
162
+ export interface BreakpointWorkItem {
87
163
  /**
88
- * Since breakpoints are written into the source code, we can't delete the `wasAddedBeforeLaunch` breakpoints,
89
- * otherwise the non-sourcemap debugging process's line offsets could get messed up. So, for the `wasAddedBeforeLaunch`
90
- * breakpoints, we need to mark them as hidden when the user unsets them.
164
+ * The path to the source file where this breakpoint was originally set
165
+ */
166
+ srcPath: string;
167
+ /**
168
+ * The absolute path to the file in the staging folder
91
169
  */
92
- isHidden: boolean;
93
- }
94
- interface BreakpointWorkItem {
95
- sourceFilePath: string;
96
170
  stagingFilePath: string;
171
+ /**
172
+ * The device path (i.e. `pkg:/source/main.brs`)
173
+ */
174
+ pkgPath: string;
175
+ /**
176
+ * The path to the rootDir for this breakpoint
177
+ */
97
178
  rootDirFilePath: string;
98
179
  /**
99
180
  * The 1-based line number
100
181
  */
101
182
  line: number;
183
+ /**
184
+ * The device-provided breakpoint id. A missing ID means this breakpoint has not yet been verified by the device.
185
+ */
186
+ deviceId?: number;
187
+ /**
188
+ * An id generated by the debug adapter used to identify this breakpoint in the client
189
+ */
190
+ id: number;
191
+ /**
192
+ * A unique hash generated for the breakpoint at this exact file/line/column/feature. Every breakpoint with these same features should get the same hash
193
+ */
194
+ hash: string;
102
195
  /**
103
196
  * The 0-based column index
104
197
  */
105
198
  column: number;
199
+ /**
200
+ * If set, this breakpoint will only activate when this condition evaluates to true
201
+ */
106
202
  condition?: string;
203
+ /**
204
+ * If set, this breakpoint will only activate once the breakpoint has been hit this many times.
205
+ */
107
206
  hitCondition?: string;
207
+ /**
208
+ * If set, this breakpoint will emit a log message at runtime and will not actually stop at the breakpoint
209
+ */
108
210
  logMessage?: string;
109
211
  /**
110
212
  * `sourceMap` means derived from a source map.
@@ -113,4 +215,3 @@ interface BreakpointWorkItem {
113
215
  */
114
216
  type: 'fileMap' | 'sourceDirs' | 'sourceMap';
115
217
  }
116
- export {};