@jupyterlab/debugger 4.0.0-alpha.16 → 4.0.0-alpha.18

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.
@@ -1,11 +1,13 @@
1
1
  // Copyright (c) Jupyter Development Team.
2
2
  // Distributed under the terms of the Modified BSD License.
3
3
  import { nullTranslator } from '@jupyterlab/translation';
4
+ import { Signal } from '@lumino/signaling';
4
5
  import { caretDownEmptyIcon, ReactWidget, searchIcon } from '@jupyterlab/ui-components';
5
6
  import { ArrayExt } from '@lumino/algorithm';
6
- import React, { useEffect, useState } from 'react';
7
+ import React, { useCallback, useEffect, useState } from 'react';
7
8
  import { convertType } from '.';
8
9
  import { Debugger } from '../../debugger';
10
+ const BUTTONS_CLASS = 'jp-DebuggerVariables-buttons';
9
11
  /**
10
12
  * The body for tree of variables.
11
13
  */
@@ -23,6 +25,7 @@ export class VariablesBodyTree extends ReactWidget {
23
25
  this._commands = options.commands;
24
26
  this._service = options.service;
25
27
  this._translator = options.translator;
28
+ this._hoverChanged = new Signal(this);
26
29
  const model = (this.model = options.model);
27
30
  model.changed.connect(this._updateScopes, this);
28
31
  this.addClass('jp-DebuggerVariables-body');
@@ -33,9 +36,15 @@ export class VariablesBodyTree extends ReactWidget {
33
36
  render() {
34
37
  var _a;
35
38
  const scope = (_a = this._scopes.find(scope => scope.name === this._scope)) !== null && _a !== void 0 ? _a : this._scopes[0];
36
- return scope ? (React.createElement(VariablesComponent, { key: scope.name, commands: this._commands, service: this._service, data: scope.variables, filter: this._filter, translator: this._translator, handleSelectVariable: variable => {
37
- this.model.selectedVariable = variable;
38
- } })) : (React.createElement("div", null));
39
+ const handleSelectVariable = (variable) => {
40
+ this.model.selectedVariable = variable;
41
+ };
42
+ const collapserIcon = (React.createElement(caretDownEmptyIcon.react, { stylesheet: "menuItem", tag: "span" }));
43
+ return scope ? (React.createElement(React.Fragment, null,
44
+ React.createElement(VariablesBranch, { key: scope.name, commands: this._commands, service: this._service, data: scope.variables, filter: this._filter, translator: this._translator, handleSelectVariable: handleSelectVariable, onHoverChanged: (data) => {
45
+ this._hoverChanged.emit(data);
46
+ }, collapserIcon: collapserIcon }),
47
+ React.createElement(TreeButtons, { commands: this._commands, service: this._service, hoverChanged: this._hoverChanged, handleSelectVariable: handleSelectVariable }))) : (React.createElement("div", null));
39
48
  }
40
49
  /**
41
50
  * Set the variable filter list.
@@ -64,6 +73,91 @@ export class VariablesBodyTree extends ReactWidget {
64
73
  this.update();
65
74
  }
66
75
  }
76
+ /**
77
+ * The singleton buttons bar shown by the variables.
78
+ */
79
+ const TreeButtons = (props) => {
80
+ var _a;
81
+ const { commands, service, translator, handleSelectVariable } = props;
82
+ const trans = (translator !== null && translator !== void 0 ? translator : nullTranslator).load('jupyterlab');
83
+ const [buttonsTop, setButtonsTop] = useState(0);
84
+ const [variable, setVariable] = useState(null);
85
+ let stateRefreshLock = 0;
86
+ // Empty dependency array is to only register once per lifetime.
87
+ const handleHover = useCallback((_, data) => {
88
+ const current = ++stateRefreshLock;
89
+ if (!data.variable) {
90
+ // Handle mouse leave.
91
+ if (current !== stateRefreshLock) {
92
+ return;
93
+ }
94
+ const target = data.target;
95
+ if (target &&
96
+ // Note: Element, not HTMLElement to permit entering <svg> icon.
97
+ target instanceof Element &&
98
+ target.closest(`.${BUTTONS_CLASS}`)) {
99
+ // Allow to enter the buttons.
100
+ return;
101
+ }
102
+ setVariable(null);
103
+ }
104
+ else {
105
+ // Handle mouse over.
106
+ setVariable(data.variable);
107
+ requestAnimationFrame(() => {
108
+ if (current !== stateRefreshLock || !data.target) {
109
+ return;
110
+ }
111
+ setButtonsTop(data.target.offsetTop);
112
+ });
113
+ }
114
+ }, []);
115
+ useEffect(() => {
116
+ props.hoverChanged.connect(handleHover);
117
+ return () => {
118
+ props.hoverChanged.disconnect(handleHover);
119
+ };
120
+ }, [handleHover]);
121
+ return (React.createElement("div", { className: BUTTONS_CLASS, style:
122
+ // Positioning and hiding is implemented using compositor-only
123
+ // properties (transform and opacity) for performance.
124
+ {
125
+ transform: `translateY(${buttonsTop}px)`,
126
+ opacity: !variable ||
127
+ // Do not show buttons display for special entries, defined in debugpy:
128
+ // https://github.com/microsoft/debugpy/blob/cf0d684566edc339545b161da7c3dfc48af7c7d5/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_utils.py#L359
129
+ [
130
+ 'special variables',
131
+ 'protected variables',
132
+ 'function variables',
133
+ 'class variables'
134
+ ].includes(variable.name)
135
+ ? 0
136
+ : 1
137
+ } },
138
+ React.createElement("button", { className: "jp-DebuggerVariables-renderVariable", disabled: !variable ||
139
+ !service.model.hasRichVariableRendering ||
140
+ !commands.isEnabled(Debugger.CommandIDs.renderMimeVariable, {
141
+ name: variable.name,
142
+ frameID: (_a = service.model.callstack.frame) === null || _a === void 0 ? void 0 : _a.id
143
+ }), onClick: e => {
144
+ var _a;
145
+ if (!variable || !handleSelectVariable) {
146
+ return;
147
+ }
148
+ e.stopPropagation();
149
+ handleSelectVariable(variable);
150
+ commands
151
+ .execute(Debugger.CommandIDs.renderMimeVariable, {
152
+ name: variable.name,
153
+ frameID: (_a = service.model.callstack.frame) === null || _a === void 0 ? void 0 : _a.id
154
+ })
155
+ .catch(reason => {
156
+ console.error(`Failed to render variable ${variable === null || variable === void 0 ? void 0 : variable.name}`, reason);
157
+ });
158
+ }, title: trans.__('Render variable: %1', variable === null || variable === void 0 ? void 0 : variable.name) },
159
+ React.createElement(searchIcon.react, { stylesheet: "menuItem", tag: "span" }))));
160
+ };
67
161
  /**
68
162
  * A React component to display a list of variables.
69
163
  *
@@ -72,17 +166,28 @@ export class VariablesBodyTree extends ReactWidget {
72
166
  * @param props.service The debugger service.
73
167
  * @param props.filter Optional variable filter list.
74
168
  */
75
- const VariablesComponent = (props) => {
76
- const { commands, data, service, filter, translator, handleSelectVariable } = props;
169
+ const VariablesBranch = (props) => {
170
+ const { commands, data, service, filter, translator, handleSelectVariable, onHoverChanged, collapserIcon } = props;
77
171
  const [variables, setVariables] = useState(data);
78
172
  useEffect(() => {
79
173
  setVariables(data);
80
174
  }, [data]);
81
- return (React.createElement("ul", null, variables === null || variables === void 0 ? void 0 : variables.filter(variable => !(filter || new Set()).has(variable.evaluateName || '')).map(variable => {
175
+ return (React.createElement("ul", { className: "jp-DebuggerVariables-branch" }, variables
176
+ .filter(variable => !(filter || new Set()).has(variable.evaluateName || ''))
177
+ .map(variable => {
82
178
  const key = `${variable.name}-${variable.evaluateName}-${variable.type}-${variable.value}-${variable.variablesReference}`;
83
- return (React.createElement(VariableComponent, { key: key, commands: commands, data: variable, service: service, filter: filter, translator: translator, onSelect: handleSelectVariable }));
179
+ return (React.createElement(VariableComponent, { key: key, commands: commands, data: variable, service: service, filter: filter, translator: translator, onSelect: handleSelectVariable, onHoverChanged: onHoverChanged, collapserIcon: collapserIcon }));
84
180
  })));
85
181
  };
182
+ function _prepareDetail(variable) {
183
+ const detail = convertType(variable);
184
+ if (variable.type === 'float' && isNaN(detail)) {
185
+ // silence React warning:
186
+ // `Received NaN for the `children` attribute. If this is expected, cast the value to a string`
187
+ return 'NaN';
188
+ }
189
+ return detail;
190
+ }
86
191
  /**
87
192
  * A React component to display one node variable in tree.
88
193
  *
@@ -92,19 +197,12 @@ const VariablesComponent = (props) => {
92
197
  * @param props.filter Optional variable filter list.
93
198
  */
94
199
  const VariableComponent = (props) => {
95
- const { commands, data, service, filter, translator, onSelect } = props;
200
+ const { commands, data, service, filter, translator, onSelect, onHoverChanged, collapserIcon } = props;
96
201
  const [variable] = useState(data);
97
202
  const [expanded, setExpanded] = useState();
98
203
  const [variables, setVariables] = useState();
99
- const styleName = {
100
- color: 'var(--jp-mirror-editor-attribute-color)'
101
- };
102
- const styleType = {
103
- color: 'var(--jp-mirror-editor-string-color)'
104
- };
105
204
  const onSelection = onSelect !== null && onSelect !== void 0 ? onSelect : (() => void 0);
106
205
  const expandable = variable.variablesReference !== 0 || variable.type === 'function';
107
- const trans = (translator !== null && translator !== void 0 ? translator : nullTranslator).load('jupyterlab');
108
206
  const onVariableClicked = async (e) => {
109
207
  if (!expandable) {
110
208
  return;
@@ -114,38 +212,29 @@ const VariableComponent = (props) => {
114
212
  setExpanded(!expanded);
115
213
  setVariables(variables);
116
214
  };
117
- return (React.createElement("li", { onClick: (e) => onVariableClicked(e), onMouseDown: () => {
215
+ return (React.createElement("li", { onClick: (e) => onVariableClicked(e), onMouseDown: e => {
216
+ e.stopPropagation();
118
217
  onSelection(variable);
119
- } },
120
- React.createElement(caretDownEmptyIcon.react, { visibility: expandable ? 'visible' : 'hidden', stylesheet: "menuItem", tag: "span", transform: expanded ? 'rotate(0deg)' : 'rotate(-90deg)' }),
121
- React.createElement("span", { style: styleName }, variable.name),
122
- React.createElement("span", null, ": "),
123
- React.createElement("span", { style: styleType }, convertType(variable)),
124
- React.createElement("span", { className: "jp-DebuggerVariables-hspacer" }),
125
- service.model.hasRichVariableRendering &&
126
- // Don't add rich display for special entries
127
- // debugpy: https://github.com/microsoft/debugpy/blob/cf0d684566edc339545b161da7c3dfc48af7c7d5/src/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_utils.py#L359
128
- ![
129
- 'special variables',
130
- 'protected variables',
131
- 'function variables',
132
- 'class variables'
133
- ].includes(variable.name) && (React.createElement("button", { className: "jp-DebuggerVariables-renderVariable", disabled: !commands.isEnabled(Debugger.CommandIDs.renderMimeVariable, {
134
- name: variable.name,
135
- variablesReference: variable.variablesReference
136
- }), onClick: e => {
137
- e.stopPropagation();
138
- onSelection(variable);
139
- commands
140
- .execute(Debugger.CommandIDs.renderMimeVariable, {
141
- name: variable.name,
142
- variablesReference: variable.variablesReference
143
- })
144
- .catch(reason => {
145
- console.error(`Failed to render variable ${variable.name}`, reason);
218
+ }, onMouseOver: (event) => {
219
+ if (onHoverChanged) {
220
+ onHoverChanged({ target: event.currentTarget, variable });
221
+ event.stopPropagation();
222
+ }
223
+ }, onMouseLeave: (event) => {
224
+ if (onHoverChanged) {
225
+ onHoverChanged({
226
+ target: event.relatedTarget,
227
+ variable: null
146
228
  });
147
- }, title: trans.__('Render variable') },
148
- React.createElement(searchIcon.react, { stylesheet: "menuItem", tag: "span" }))),
149
- expanded && variables && (React.createElement(VariablesComponent, { key: variable.name, commands: commands, data: variables, service: service, filter: filter, translator: translator }))));
229
+ event.stopPropagation();
230
+ }
231
+ } },
232
+ React.createElement("span", { className: 'jp-DebuggerVariables-collapser' +
233
+ (expanded ? ' jp-mod-expanded' : '') },
234
+ // note: using React.cloneElement due to high typestyle cost
235
+ expandable ? React.cloneElement(collapserIcon) : null),
236
+ React.createElement("span", { className: "jp-DebuggerVariables-name" }, variable.name),
237
+ React.createElement("span", { className: "jp-DebuggerVariables-detail" }, _prepareDetail(variable)),
238
+ expanded && variables && (React.createElement(VariablesBranch, { key: variable.name, commands: commands, data: variables, service: service, filter: filter, translator: translator, handleSelectVariable: onSelect, onHoverChanged: onHoverChanged, collapserIcon: collapserIcon }))));
150
239
  };
151
240
  //# sourceMappingURL=tree.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/panels/variables/tree.tsx"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EACL,kBAAkB,EAClB,WAAW,EACX,UAAU,EACX,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAM7C,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAEnD,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;AAEhC,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM1C;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,WAAW;IAChD;;;;OAIG;IACH,YAAY,OAAmC;QAC7C,KAAK,EAAE,CAAC;QAkEF,WAAM,GAAG,EAAE,CAAC;QACZ,YAAO,GAAuB,EAAE,CAAC;QACjC,YAAO,GAAG,IAAI,GAAG,EAAU,CAAC;QAnElC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC;QAEtC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;QAEhD,IAAI,CAAC,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,MAAM;;QACJ,MAAM,KAAK,GACT,MAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE5E,OAAO,KAAK,CAAC,CAAC,CAAC,CACb,oBAAC,kBAAkB,IACjB,GAAG,EAAE,KAAK,CAAC,IAAI,EACf,QAAQ,EAAE,IAAI,CAAC,SAAS,EACxB,OAAO,EAAE,IAAI,CAAC,QAAQ,EACtB,IAAI,EAAE,KAAK,CAAC,SAAS,EACrB,MAAM,EAAE,IAAI,CAAC,OAAO,EACpB,UAAU,EAAE,IAAI,CAAC,WAAW,EAC5B,oBAAoB,EAAE,QAAQ,CAAC,EAAE;gBAC/B,IAAI,CAAC,KAAK,CAAC,gBAAgB,GAAG,QAAQ,CAAC;YACzC,CAAC,GACD,CACH,CAAC,CAAC,CAAC,CACF,gCAAW,CACZ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,IAAI,MAAM,CAAC,MAAmB;QAC5B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK,CAAC,KAAa;QACrB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED;;;;OAIG;IACK,aAAa,CAAC,KAAqB;QACzC,IAAI,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,EAAE;YACrD,OAAO;SACR;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;CASF;AAoBD;;;;;;;GAOG;AACH,MAAM,kBAAkB,GAAG,CAAC,KAA+B,EAAe,EAAE;IAC1E,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,oBAAoB,EAAE,GACzE,KAAK,CAAC;IACR,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAEjD,SAAS,CAAC,GAAG,EAAE;QACb,YAAY,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IAEX,OAAO,CACL,gCACG,SAAS,aAAT,SAAS,uBAAT,SAAS,CACN,MAAM,CACN,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,YAAY,IAAI,EAAE,CAAC,EAEpE,GAAG,CAAC,QAAQ,CAAC,EAAE;QACd,MAAM,GAAG,GAAG,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,YAAY,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,kBAAkB,EAAE,CAAC;QAC1H,OAAO,CACL,oBAAC,iBAAiB,IAChB,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,QAAQ,EACd,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,EACtB,QAAQ,EAAE,oBAAoB,GAC9B,CACH,CAAC;IACJ,CAAC,CAAC,CACD,CACN,CAAC;AACJ,CAAC,CAAC;AAgCF;;;;;;;GAOG;AACH,MAAM,iBAAiB,GAAG,CAAC,KAA8B,EAAe,EAAE;IACxE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACxE,MAAM,CAAC,QAAQ,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,EAAW,CAAC;IACpD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,EAA4B,CAAC;IACvE,MAAM,SAAS,GAAG;QAChB,KAAK,EAAE,yCAAyC;KACjD,CAAC;IAEF,MAAM,SAAS,GAAG;QAChB,KAAK,EAAE,sCAAsC;KAC9C,CAAC;IACF,MAAM,WAAW,GAAG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,GAAI,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IAE/C,MAAM,UAAU,GACd,QAAQ,CAAC,kBAAkB,KAAK,CAAC,IAAI,QAAQ,CAAC,IAAI,KAAK,UAAU,CAAC;IAEpE,MAAM,KAAK,GAAG,CAAC,UAAU,aAAV,UAAU,cAAV,UAAU,GAAI,cAAc,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAEhE,MAAM,iBAAiB,GAAG,KAAK,EAAE,CAAmB,EAAiB,EAAE;QACrE,IAAI,CAAC,UAAU,EAAE;YACf,OAAO;SACR;QACD,CAAC,CAAC,eAAe,EAAE,CAAC;QACpB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,eAAe,CAC7C,QAAQ,CAAC,kBAAkB,CAC5B,CAAC;QACF,WAAW,CAAC,CAAC,QAAQ,CAAC,CAAC;QACvB,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1B,CAAC,CAAC;IAEF,OAAO,CACL,4BACE,OAAO,EAAE,CAAC,CAAC,EAAiB,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,EACnD,WAAW,EAAE,GAAG,EAAE;YAChB,WAAW,CAAC,QAAQ,CAAC,CAAC;QACxB,CAAC;QAED,oBAAC,kBAAkB,CAAC,KAAK,IACvB,UAAU,EAAE,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,EAC7C,UAAU,EAAC,UAAU,EACrB,GAAG,EAAC,MAAM,EACV,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,gBAAgB,GACvD;QACF,8BAAM,KAAK,EAAE,SAAS,IAAG,QAAQ,CAAC,IAAI,CAAQ;QAC9C,uCAAe;QACf,8BAAM,KAAK,EAAE,SAAS,IAAG,WAAW,CAAC,QAAQ,CAAC,CAAQ;QACtD,8BAAM,SAAS,EAAC,8BAA8B,GAAQ;QACrD,OAAO,CAAC,KAAK,CAAC,wBAAwB;YACrC,6CAA6C;YAC7C,+JAA+J;YAC/J,CAAC;gBACC,mBAAmB;gBACnB,qBAAqB;gBACrB,oBAAoB;gBACpB,iBAAiB;aAClB,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAC3B,gCACE,SAAS,EAAC,qCAAqC,EAC/C,QAAQ,EACN,CAAC,QAAQ,CAAC,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE;gBAC1D,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;aACzC,CAAC,EAEX,OAAO,EAAE,CAAC,CAAC,EAAE;gBACX,CAAC,CAAC,eAAe,EAAE,CAAC;gBACpB,WAAW,CAAC,QAAQ,CAAC,CAAC;gBACtB,QAAQ;qBACL,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE;oBAC/C,IAAI,EAAE,QAAQ,CAAC,IAAI;oBACnB,kBAAkB,EAAE,QAAQ,CAAC,kBAAkB;iBACzC,CAAC;qBACR,KAAK,CAAC,MAAM,CAAC,EAAE;oBACd,OAAO,CAAC,KAAK,CACX,6BAA6B,QAAQ,CAAC,IAAI,EAAE,EAC5C,MAAM,CACP,CAAC;gBACJ,CAAC,CAAC,CAAC;YACP,CAAC,EACD,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAAC;YAElC,oBAAC,UAAU,CAAC,KAAK,IAAC,UAAU,EAAC,UAAU,EAAC,GAAG,EAAC,MAAM,GAAG,CAC9C,CACV;QAEF,QAAQ,IAAI,SAAS,IAAI,CACxB,oBAAC,kBAAkB,IACjB,GAAG,EAAE,QAAQ,CAAC,IAAI,EAClB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,UAAU,GACtB,CACH,CACE,CACN,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"tree.js","sourceRoot":"","sources":["../../../src/panels/variables/tree.tsx"],"names":[],"mappings":"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"}
package/lib/service.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import { KernelSpec, Session } from '@jupyterlab/services';
2
2
  import { ITranslator } from '@jupyterlab/translation';
3
3
  import { IDisposable } from '@lumino/disposable';
4
- import { ISignal } from '@lumino/signaling';
4
+ import { ISignal, Signal } from '@lumino/signaling';
5
5
  import { DebugProtocol } from '@vscode/debugprotocol';
6
6
  import { IDebugger } from './tokens';
7
7
  /**
@@ -18,6 +18,10 @@ export declare class DebuggerService implements IDebugger, IDisposable {
18
18
  * Signal emitted for debug event messages.
19
19
  */
20
20
  get eventMessage(): ISignal<IDebugger, IDebugger.ISession.Event>;
21
+ /**
22
+ * Get debugger config.
23
+ */
24
+ get config(): IDebugger.IConfig;
21
25
  /**
22
26
  * Whether the debug service is disposed.
23
27
  */
@@ -27,9 +31,9 @@ export declare class DebuggerService implements IDebugger, IDisposable {
27
31
  */
28
32
  get isStarted(): boolean;
29
33
  /**
30
- * Whether the current debugger is pausing on exceptions.
34
+ * A signal emitted when the pause on exception filter changes.
31
35
  */
32
- get isPausingOnExceptions(): boolean;
36
+ get pauseOnExceptionChanged(): Signal<IDebugger, void>;
33
37
  /**
34
38
  * Returns the debugger service's model.
35
39
  */
@@ -127,6 +131,10 @@ export declare class DebuggerService implements IDebugger, IDisposable {
127
131
  * Precondition: !isStarted
128
132
  */
129
133
  start(): Promise<void>;
134
+ /**
135
+ * Makes the current thread pause if possible.
136
+ */
137
+ pause(): Promise<void>;
130
138
  /**
131
139
  * Makes the current thread step in a function / method if possible.
132
140
  */
@@ -150,15 +158,20 @@ export declare class DebuggerService implements IDebugger, IDisposable {
150
158
  updateBreakpoints(code: string, breakpoints: IDebugger.IBreakpoint[], path?: string): Promise<void>;
151
159
  /**
152
160
  * Determines if pausing on exceptions is supported by the kernel
153
- *
154
161
  */
155
162
  pauseOnExceptionsIsValid(): boolean;
163
+ /**
164
+ * Add or remove a filter from the current used filters.
165
+ *
166
+ * @param exceptionFilter - The filter to add or remove from current filters.
167
+ */
168
+ pauseOnExceptionsFilter(exceptionFilter: string): Promise<void>;
156
169
  /**
157
170
  * Enable or disable pausing on exceptions.
158
171
  *
159
- * @param enable - Whether to enbale or disable pausing on exceptions.
172
+ * @param exceptionFilters - The filters to use for the current debugging session.
160
173
  */
161
- pauseOnExceptions(enable: boolean): Promise<void>;
174
+ pauseOnExceptions(exceptionFilters: string[]): Promise<void>;
162
175
  /**
163
176
  * Get the debugger state
164
177
  *
@@ -269,6 +282,7 @@ export declare class DebuggerService implements IDebugger, IDisposable {
269
282
  private _sessionChanged;
270
283
  private _specsManager;
271
284
  private _trans;
285
+ private _pauseOnExceptionChanged;
272
286
  }
273
287
  /**
274
288
  * A namespace for `DebuggerService` statics.
package/lib/service.js CHANGED
@@ -17,6 +17,7 @@ export class DebuggerService {
17
17
  this._eventMessage = new Signal(this);
18
18
  this._isDisposed = false;
19
19
  this._sessionChanged = new Signal(this);
20
+ this._pauseOnExceptionChanged = new Signal(this);
20
21
  this._config = options.config;
21
22
  // Avoids setting session with invalid client
22
23
  // session should be set only when a notebook or
@@ -35,6 +36,12 @@ export class DebuggerService {
35
36
  get eventMessage() {
36
37
  return this._eventMessage;
37
38
  }
39
+ /**
40
+ * Get debugger config.
41
+ */
42
+ get config() {
43
+ return this._config;
44
+ }
38
45
  /**
39
46
  * Whether the debug service is disposed.
40
47
  */
@@ -49,18 +56,10 @@ export class DebuggerService {
49
56
  return (_b = (_a = this._session) === null || _a === void 0 ? void 0 : _a.isStarted) !== null && _b !== void 0 ? _b : false;
50
57
  }
51
58
  /**
52
- * Whether the current debugger is pausing on exceptions.
59
+ * A signal emitted when the pause on exception filter changes.
53
60
  */
54
- get isPausingOnExceptions() {
55
- var _a, _b, _c, _d, _e, _f;
56
- const kernel = (_d = (_c = (_b = (_a = this.session) === null || _a === void 0 ? void 0 : _a.connection) === null || _b === void 0 ? void 0 : _b.kernel) === null || _c === void 0 ? void 0 : _c.name) !== null && _d !== void 0 ? _d : '';
57
- if (kernel) {
58
- const tmpFileParams = this._config.getTmpFileParams(kernel);
59
- if (tmpFileParams) {
60
- return ((_f = (_e = this._session) === null || _e === void 0 ? void 0 : _e.pausingOnExceptions.includes(tmpFileParams.prefix)) !== null && _f !== void 0 ? _f : false);
61
- }
62
- }
63
- return false;
61
+ get pauseOnExceptionChanged() {
62
+ return this._pauseOnExceptionChanged;
64
63
  }
65
64
  /**
66
65
  * Returns the debugger service's model.
@@ -377,6 +376,10 @@ export class DebuggerService {
377
376
  this._clearModel();
378
377
  this._clearSignals();
379
378
  }
379
+ // Send the currentExceptionFilters to debugger.
380
+ if (this.session.currentExceptionFilters) {
381
+ await this.pauseOnExceptions(this.session.currentExceptionFilters);
382
+ }
380
383
  }
381
384
  /**
382
385
  * Starts a debugger.
@@ -388,6 +391,22 @@ export class DebuggerService {
388
391
  }
389
392
  return this.session.start();
390
393
  }
394
+ /**
395
+ * Makes the current thread pause if possible.
396
+ */
397
+ async pause() {
398
+ try {
399
+ if (!this.session) {
400
+ throw new Error('No active debugger session');
401
+ }
402
+ await this.session.sendRequest('pause', {
403
+ threadId: this._currentThread()
404
+ });
405
+ }
406
+ catch (err) {
407
+ console.error('Error:', err.message);
408
+ }
409
+ }
391
410
  /**
392
411
  * Makes the current thread step in a function / method if possible.
393
412
  */
@@ -480,66 +499,58 @@ export class DebuggerService {
480
499
  }
481
500
  /**
482
501
  * Determines if pausing on exceptions is supported by the kernel
483
- *
484
502
  */
485
503
  pauseOnExceptionsIsValid() {
486
- var _a;
504
+ var _a, _b;
487
505
  if (this.isStarted) {
488
- if ((_a = this.session) === null || _a === void 0 ? void 0 : _a.exceptionBreakpointFilters) {
506
+ if (((_b = (_a = this.session) === null || _a === void 0 ? void 0 : _a.exceptionBreakpointFilters) === null || _b === void 0 ? void 0 : _b.length) !== 0) {
489
507
  return true;
490
508
  }
491
509
  }
492
510
  return false;
493
511
  }
494
512
  /**
495
- * Enable or disable pausing on exceptions.
513
+ * Add or remove a filter from the current used filters.
496
514
  *
497
- * @param enable - Whether to enbale or disable pausing on exceptions.
515
+ * @param exceptionFilter - The filter to add or remove from current filters.
498
516
  */
499
- async pauseOnExceptions(enable) {
500
- var _a, _b, _c, _d, _e;
517
+ async pauseOnExceptionsFilter(exceptionFilter) {
518
+ var _a;
501
519
  if (!((_a = this.session) === null || _a === void 0 ? void 0 : _a.isStarted)) {
502
520
  return;
503
521
  }
504
- const kernel = (_e = (_d = (_c = (_b = this.session) === null || _b === void 0 ? void 0 : _b.connection) === null || _c === void 0 ? void 0 : _c.kernel) === null || _d === void 0 ? void 0 : _d.name) !== null && _e !== void 0 ? _e : '';
505
- if (!kernel) {
506
- return;
507
- }
508
- const tmpFileParams = this._config.getTmpFileParams(kernel);
509
- if (!tmpFileParams) {
510
- return;
511
- }
512
- let prefix = tmpFileParams.prefix;
513
- const exceptionBreakpointFilters = this.session.exceptionBreakpointFilters;
514
- let pauseOnExceptionKernels = this.session.pausingOnExceptions;
515
- if (enable) {
516
- if (!this.session.pausingOnExceptions.includes(prefix)) {
517
- pauseOnExceptionKernels.push(prefix);
518
- this.session.pausingOnExceptions = pauseOnExceptionKernels;
519
- }
522
+ let exceptionFilters = this.session.currentExceptionFilters;
523
+ if (this.session.isPausingOnException(exceptionFilter)) {
524
+ const index = exceptionFilters.indexOf(exceptionFilter);
525
+ exceptionFilters.splice(index, 1);
520
526
  }
521
527
  else {
522
- let prefixIndex = this.session.pausingOnExceptions.indexOf(prefix);
523
- if (prefixIndex > -1) {
524
- this.session.pausingOnExceptions = pauseOnExceptionKernels.splice(prefixIndex, 1);
525
- this.session.pausingOnExceptions = pauseOnExceptionKernels;
526
- }
528
+ exceptionFilters === null || exceptionFilters === void 0 ? void 0 : exceptionFilters.push(exceptionFilter);
527
529
  }
528
- const filters = [];
529
- const exceptionOptions = [];
530
- const breakMode = enable ? 'userUnhandled' : 'never';
531
- for (let filterDict of exceptionBreakpointFilters !== null && exceptionBreakpointFilters !== void 0 ? exceptionBreakpointFilters : []) {
532
- filters.push(filterDict.filter);
533
- exceptionOptions.push({
534
- path: [{ names: this.session.exceptionPaths }],
535
- breakMode: breakMode
536
- });
530
+ await this.pauseOnExceptions(exceptionFilters);
531
+ }
532
+ /**
533
+ * Enable or disable pausing on exceptions.
534
+ *
535
+ * @param exceptionFilters - The filters to use for the current debugging session.
536
+ */
537
+ async pauseOnExceptions(exceptionFilters) {
538
+ var _a, _b;
539
+ if (!((_a = this.session) === null || _a === void 0 ? void 0 : _a.isStarted)) {
540
+ return;
537
541
  }
538
- const options = {
539
- filters: filters,
540
- exceptionOptions: exceptionOptions
542
+ const exceptionBreakpointFilters = ((_b = this.session.exceptionBreakpointFilters) === null || _b === void 0 ? void 0 : _b.map(e => e.filter)) || [];
543
+ let options = {
544
+ filters: []
541
545
  };
546
+ exceptionFilters.forEach(filter => {
547
+ if (exceptionBreakpointFilters.includes(filter)) {
548
+ options.filters.push(filter);
549
+ }
550
+ });
551
+ this.session.currentExceptionFilters = options.filters;
542
552
  await this.session.sendRequest('setExceptionBreakpoints', options);
553
+ this._pauseOnExceptionChanged.emit();
543
554
  }
544
555
  /**
545
556
  * Get the debugger state
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}