@jupyterlab/debugger 3.3.0-alpha.9 → 3.3.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.
- package/lib/debugger.d.ts +2 -1
- package/lib/debugger.js +3 -2
- package/lib/debugger.js.map +1 -1
- package/lib/handler.d.ts +1 -1
- package/lib/handler.js +16 -5
- package/lib/handler.js.map +1 -1
- package/lib/handlers/editor.d.ts +8 -0
- package/lib/handlers/editor.js +12 -0
- package/lib/handlers/editor.js.map +1 -1
- package/lib/handlers/file.d.ts +1 -0
- package/lib/handlers/file.js +6 -1
- package/lib/handlers/file.js.map +1 -1
- package/lib/handlers/notebook.js +12 -2
- package/lib/handlers/notebook.js.map +1 -1
- package/lib/icons.d.ts +2 -0
- package/lib/icons.js +10 -0
- package/lib/icons.js.map +1 -1
- package/lib/model.d.ts +5 -0
- package/lib/model.js +3 -0
- package/lib/model.js.map +1 -1
- package/lib/panels/breakpoints/body.d.ts +1 -1
- package/lib/panels/breakpoints/body.js +1 -1
- package/lib/panels/breakpoints/body.js.map +1 -1
- package/lib/panels/breakpoints/header.d.ts +1 -1
- package/lib/panels/breakpoints/header.js +1 -1
- package/lib/panels/breakpoints/header.js.map +1 -1
- package/lib/panels/breakpoints/index.d.ts +18 -0
- package/lib/panels/breakpoints/index.js +11 -5
- package/lib/panels/breakpoints/index.js.map +1 -1
- package/lib/panels/callstack/body.d.ts +1 -1
- package/lib/panels/callstack/body.js +2 -2
- package/lib/panels/callstack/body.js.map +1 -1
- package/lib/panels/callstack/header.d.ts +1 -1
- package/lib/panels/callstack/header.js +1 -1
- package/lib/panels/callstack/header.js.map +1 -1
- package/lib/panels/callstack/index.js +1 -1
- package/lib/panels/callstack/index.js.map +1 -1
- package/lib/panels/kernelSources/body.d.ts +47 -0
- package/lib/panels/kernelSources/body.js +86 -0
- package/lib/panels/kernelSources/body.js.map +1 -0
- package/lib/panels/kernelSources/filter.d.ts +12 -0
- package/lib/panels/kernelSources/filter.js +19 -0
- package/lib/panels/kernelSources/filter.js.map +1 -0
- package/lib/panels/kernelSources/header.d.ts +19 -0
- package/lib/panels/kernelSources/header.js +33 -0
- package/lib/panels/kernelSources/header.js.map +1 -0
- package/lib/panels/kernelSources/index.d.ts +39 -0
- package/lib/panels/kernelSources/index.js +59 -0
- package/lib/panels/kernelSources/index.js.map +1 -0
- package/lib/panels/kernelSources/model.d.ts +64 -0
- package/lib/panels/kernelSources/model.js +102 -0
- package/lib/panels/kernelSources/model.js.map +1 -0
- package/lib/panels/sources/header.d.ts +1 -1
- package/lib/panels/sources/header.js +1 -1
- package/lib/panels/sources/header.js.map +1 -1
- package/lib/panels/sources/index.js +1 -1
- package/lib/panels/sources/index.js.map +1 -1
- package/lib/panels/variables/grid.d.ts +0 -9
- package/lib/panels/variables/grid.js +11 -30
- package/lib/panels/variables/grid.js.map +1 -1
- package/lib/panels/variables/header.d.ts +1 -1
- package/lib/panels/variables/header.js +1 -1
- package/lib/panels/variables/header.js.map +1 -1
- package/lib/panels/variables/index.d.ts +1 -9
- package/lib/panels/variables/index.js +4 -22
- package/lib/panels/variables/index.js.map +1 -1
- package/lib/panels/variables/mimerenderer.d.ts +15 -2
- package/lib/panels/variables/mimerenderer.js +48 -17
- package/lib/panels/variables/mimerenderer.js.map +1 -1
- package/lib/panels/variables/model.d.ts +3 -0
- package/lib/panels/variables/model.js +7 -0
- package/lib/panels/variables/model.js.map +1 -1
- package/lib/panels/variables/scope.d.ts +1 -1
- package/lib/panels/variables/scope.js +2 -1
- package/lib/panels/variables/scope.js.map +1 -1
- package/lib/panels/variables/tree.d.ts +2 -6
- package/lib/panels/variables/tree.js +13 -11
- package/lib/panels/variables/tree.js.map +1 -1
- package/lib/service.d.ts +17 -7
- package/lib/service.js +99 -15
- package/lib/service.js.map +1 -1
- package/lib/session.d.ts +23 -1
- package/lib/session.js +39 -5
- package/lib/session.js.map +1 -1
- package/lib/sidebar.d.ts +9 -0
- package/lib/sidebar.js +9 -1
- package/lib/sidebar.js.map +1 -1
- package/lib/tokens.d.ts +93 -25
- package/lib/tokens.js.map +1 -1
- package/package.json +22 -21
- package/style/base.css +1 -0
- package/style/icons/open-kernel-source.svg +6 -0
- package/style/icons/pause.svg +6 -0
- package/style/icons.css +14 -6
- package/style/kernelSources.css +42 -0
- package/style/variables.css +14 -0
|
@@ -2,7 +2,6 @@ import { IThemeManager } from '@jupyterlab/apputils';
|
|
|
2
2
|
import { CommandRegistry } from '@lumino/commands';
|
|
3
3
|
import { Panel } from '@lumino/widgets';
|
|
4
4
|
import { IDebugger } from '../../tokens';
|
|
5
|
-
import { ITranslator } from '@jupyterlab/translation';
|
|
6
5
|
/**
|
|
7
6
|
* A data grid that displays variables in a debugger session.
|
|
8
7
|
*/
|
|
@@ -13,10 +12,6 @@ export declare class VariablesBodyGrid extends Panel {
|
|
|
13
12
|
* @param options The instantiation options for a VariablesBodyGrid.
|
|
14
13
|
*/
|
|
15
14
|
constructor(options: VariablesBodyGrid.IOptions);
|
|
16
|
-
/**
|
|
17
|
-
* Get the latest hit variable
|
|
18
|
-
*/
|
|
19
|
-
get latestSelection(): IDebugger.IVariableSelection | null;
|
|
20
15
|
/**
|
|
21
16
|
* Set the variable filter list.
|
|
22
17
|
*
|
|
@@ -60,9 +55,5 @@ export declare namespace VariablesBodyGrid {
|
|
|
60
55
|
* An optional application theme manager to detect theme changes.
|
|
61
56
|
*/
|
|
62
57
|
themeManager?: IThemeManager | null;
|
|
63
|
-
/**
|
|
64
|
-
* The application language translator.
|
|
65
|
-
*/
|
|
66
|
-
translator?: ITranslator;
|
|
67
58
|
}
|
|
68
59
|
}
|
|
@@ -4,7 +4,6 @@ import { BasicKeyHandler, BasicMouseHandler, BasicSelectionModel, DataGrid, Data
|
|
|
4
4
|
import { Signal } from '@lumino/signaling';
|
|
5
5
|
import { Panel } from '@lumino/widgets';
|
|
6
6
|
import { Debugger } from '../../';
|
|
7
|
-
import { nullTranslator } from '@jupyterlab/translation';
|
|
8
7
|
/**
|
|
9
8
|
* A data grid that displays variables in a debugger session.
|
|
10
9
|
*/
|
|
@@ -16,8 +15,8 @@ export class VariablesBodyGrid extends Panel {
|
|
|
16
15
|
*/
|
|
17
16
|
constructor(options) {
|
|
18
17
|
super();
|
|
19
|
-
const { model, commands, themeManager, scopes
|
|
20
|
-
this._grid = new Grid({ commands,
|
|
18
|
+
const { model, commands, themeManager, scopes } = options;
|
|
19
|
+
this._grid = new Grid({ commands, model, themeManager });
|
|
21
20
|
this._grid.addClass('jp-DebuggerVariables-grid');
|
|
22
21
|
this._model = model;
|
|
23
22
|
this._model.changed.connect((model) => {
|
|
@@ -27,12 +26,6 @@ export class VariablesBodyGrid extends Panel {
|
|
|
27
26
|
this.addWidget(this._grid);
|
|
28
27
|
this.addClass('jp-DebuggerVariables-body');
|
|
29
28
|
}
|
|
30
|
-
/**
|
|
31
|
-
* Get the latest hit variable
|
|
32
|
-
*/
|
|
33
|
-
get latestSelection() {
|
|
34
|
-
return this._grid.latestSelection;
|
|
35
|
-
}
|
|
36
29
|
/**
|
|
37
30
|
* Set the variable filter list.
|
|
38
31
|
*
|
|
@@ -70,9 +63,9 @@ class Grid extends Panel {
|
|
|
70
63
|
*/
|
|
71
64
|
constructor(options) {
|
|
72
65
|
super();
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
const dataModel = new GridModel(
|
|
66
|
+
const { commands, model, themeManager } = options;
|
|
67
|
+
this.model = model;
|
|
68
|
+
const dataModel = new GridModel();
|
|
76
69
|
const grid = new DataGrid();
|
|
77
70
|
const mouseHandler = new Private.MouseHandler();
|
|
78
71
|
mouseHandler.doubleClicked.connect((_, hit) => commands.execute(Debugger.CommandIDs.inspectVariable, {
|
|
@@ -81,7 +74,7 @@ class Grid extends Panel {
|
|
|
81
74
|
}));
|
|
82
75
|
mouseHandler.selected.connect((_, hit) => {
|
|
83
76
|
const { row } = hit;
|
|
84
|
-
this.
|
|
77
|
+
this.model.selectedVariable = {
|
|
85
78
|
name: dataModel.getVariableName(row),
|
|
86
79
|
value: dataModel.data('body', row, 1),
|
|
87
80
|
type: dataModel.data('body', row, 2),
|
|
@@ -127,12 +120,6 @@ class Grid extends Panel {
|
|
|
127
120
|
get dataModel() {
|
|
128
121
|
return this._grid.dataModel;
|
|
129
122
|
}
|
|
130
|
-
/**
|
|
131
|
-
* Get the latest hit variable
|
|
132
|
-
*/
|
|
133
|
-
get latestSelection() {
|
|
134
|
-
return this._latestSelection;
|
|
135
|
-
}
|
|
136
123
|
/**
|
|
137
124
|
* Handle `after-attach` messages.
|
|
138
125
|
*
|
|
@@ -155,12 +142,8 @@ class Grid extends Panel {
|
|
|
155
142
|
* A data grid model for variables.
|
|
156
143
|
*/
|
|
157
144
|
class GridModel extends DataModel {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
* @param translator optional translator
|
|
161
|
-
*/
|
|
162
|
-
constructor(translator) {
|
|
163
|
-
super();
|
|
145
|
+
constructor() {
|
|
146
|
+
super(...arguments);
|
|
164
147
|
this._filter = new Set();
|
|
165
148
|
this._scope = '';
|
|
166
149
|
this._data = {
|
|
@@ -169,8 +152,6 @@ class GridModel extends DataModel {
|
|
|
169
152
|
value: [],
|
|
170
153
|
variablesReference: []
|
|
171
154
|
};
|
|
172
|
-
translator = translator || nullTranslator;
|
|
173
|
-
this._trans = translator.load('jupyterlab');
|
|
174
155
|
}
|
|
175
156
|
/**
|
|
176
157
|
* Set the variable filter list.
|
|
@@ -218,10 +199,10 @@ class GridModel extends DataModel {
|
|
|
218
199
|
return this._data.name[row];
|
|
219
200
|
}
|
|
220
201
|
if (region === 'column-header') {
|
|
221
|
-
return column === 1 ?
|
|
202
|
+
return column === 1 ? 'Value' : 'Type';
|
|
222
203
|
}
|
|
223
204
|
if (region === 'corner-header') {
|
|
224
|
-
return
|
|
205
|
+
return 'Name';
|
|
225
206
|
}
|
|
226
207
|
return column === 1 ? this._data.value[row] : this._data.type[row];
|
|
227
208
|
}
|
|
@@ -244,7 +225,7 @@ class GridModel extends DataModel {
|
|
|
244
225
|
/**
|
|
245
226
|
* Set the datagrid model data from the list of variables.
|
|
246
227
|
*
|
|
247
|
-
* @param
|
|
228
|
+
* @param variables The list of variables.
|
|
248
229
|
*/
|
|
249
230
|
setData(scopes) {
|
|
250
231
|
var _a, _b;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../src/panels/variables/grid.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAM3D,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,mBAAmB,EACnB,QAAQ,EACR,SAAS,EACT,YAAY,EACb,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAW,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEpD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"grid.js","sourceRoot":"","sources":["../../../src/panels/variables/grid.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
import { Toolbar } from '@jupyterlab/apputils';
|
|
3
4
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
4
|
-
import { Toolbar } from '@jupyterlab/ui-components';
|
|
5
5
|
import { PanelLayout, Widget } from '@lumino/widgets';
|
|
6
6
|
/**
|
|
7
7
|
* The header for a Variables Panel.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"header.js","sourceRoot":"","sources":["../../../src/panels/variables/header.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,
|
|
1
|
+
{"version":3,"file":"header.js","sourceRoot":"","sources":["../../../src/panels/variables/header.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAe,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAEtE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEtD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,MAAM;IACzC;;OAEG;IACH,YAAY,UAAwB;QAClC,KAAK,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAejD;;WAEG;QACM,YAAO,GAAG,IAAI,OAAO,EAAE,CAAC;QAjB/B,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;QAEjD,UAAU,GAAG,UAAU,IAAI,cAAc,CAAC;QAC1C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAE5C,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,CAAC;QAE/C,MAAM,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QACjC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CAMF"}
|
|
@@ -6,21 +6,13 @@ import { IDebugger } from '../../tokens';
|
|
|
6
6
|
/**
|
|
7
7
|
* A Panel to show a variable explorer.
|
|
8
8
|
*/
|
|
9
|
-
export declare class Variables extends Panel
|
|
9
|
+
export declare class Variables extends Panel {
|
|
10
10
|
/**
|
|
11
11
|
* Instantiate a new Variables Panel.
|
|
12
12
|
*
|
|
13
13
|
* @param options The instantiation options for a Variables Panel.
|
|
14
14
|
*/
|
|
15
15
|
constructor(options: Variables.IOptions);
|
|
16
|
-
/**
|
|
17
|
-
* Latest variable selected.
|
|
18
|
-
*/
|
|
19
|
-
get latestSelection(): IDebugger.IVariableSelection | null;
|
|
20
|
-
/**
|
|
21
|
-
* Get the variable explorer view mode
|
|
22
|
-
*/
|
|
23
|
-
get viewMode(): 'tree' | 'table';
|
|
24
16
|
/**
|
|
25
17
|
* Set the variable filter for both the tree and table views.
|
|
26
18
|
*/
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
import { ToolbarButton } from '@jupyterlab/apputils';
|
|
3
4
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
4
|
-
import { tableRowsIcon,
|
|
5
|
+
import { tableRowsIcon, treeViewIcon } from '@jupyterlab/ui-components';
|
|
5
6
|
import { Panel } from '@lumino/widgets';
|
|
6
7
|
import { VariablesBodyGrid } from './grid';
|
|
7
8
|
import { VariablesHeader } from './header';
|
|
@@ -28,12 +29,7 @@ export class Variables extends Panel {
|
|
|
28
29
|
commands,
|
|
29
30
|
translator
|
|
30
31
|
});
|
|
31
|
-
this._table = new VariablesBodyGrid({
|
|
32
|
-
model,
|
|
33
|
-
commands,
|
|
34
|
-
themeManager,
|
|
35
|
-
translator
|
|
36
|
-
});
|
|
32
|
+
this._table = new VariablesBodyGrid({ model, commands, themeManager });
|
|
37
33
|
this._table.hide();
|
|
38
34
|
this._header.toolbar.addItem('scope-switcher', new ScopeSwitcher({
|
|
39
35
|
translator,
|
|
@@ -79,7 +75,7 @@ export class Variables extends Panel {
|
|
|
79
75
|
tableViewButton.addClass(viewModeClassName);
|
|
80
76
|
}
|
|
81
77
|
};
|
|
82
|
-
markViewButtonSelection(this.
|
|
78
|
+
markViewButtonSelection(this._table.isHidden ? 'tree' : 'table');
|
|
83
79
|
this._header.toolbar.addItem('view-VariableTreeView', treeViewButton);
|
|
84
80
|
this._header.toolbar.addItem('view-VariableTableView', tableViewButton);
|
|
85
81
|
this.addWidget(this._header);
|
|
@@ -87,20 +83,6 @@ export class Variables extends Panel {
|
|
|
87
83
|
this.addWidget(this._table);
|
|
88
84
|
this.addClass('jp-DebuggerVariables');
|
|
89
85
|
}
|
|
90
|
-
/**
|
|
91
|
-
* Latest variable selected.
|
|
92
|
-
*/
|
|
93
|
-
get latestSelection() {
|
|
94
|
-
return this._table.isHidden
|
|
95
|
-
? this._tree.latestSelection
|
|
96
|
-
: this._table.latestSelection;
|
|
97
|
-
}
|
|
98
|
-
/**
|
|
99
|
-
* Get the variable explorer view mode
|
|
100
|
-
*/
|
|
101
|
-
get viewMode() {
|
|
102
|
-
return this._table.isHidden ? 'tree' : 'table';
|
|
103
|
-
}
|
|
104
86
|
/**
|
|
105
87
|
* Set the variable filter for both the tree and table views.
|
|
106
88
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/panels/variables/index.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/panels/variables/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { MainAreaWidget } from '@jupyterlab/apputils';
|
|
2
2
|
import { IRenderMimeRegistry } from '@jupyterlab/rendermime';
|
|
3
|
+
import { ITranslator, TranslationBundle } from '@jupyterlab/translation';
|
|
3
4
|
import { Panel } from '@lumino/widgets';
|
|
4
5
|
import { IDebugger } from '../../tokens';
|
|
5
6
|
/**
|
|
@@ -10,6 +11,14 @@ export declare class VariableMimeRenderer extends MainAreaWidget<Panel> {
|
|
|
10
11
|
* Instantiate a new VariableMimeRenderer.
|
|
11
12
|
*/
|
|
12
13
|
constructor(options: VariableMimeRenderer.IOptions);
|
|
14
|
+
/**
|
|
15
|
+
* Refresh the variable view
|
|
16
|
+
*/
|
|
17
|
+
refresh(force?: boolean): Promise<void>;
|
|
18
|
+
protected dataLoader: () => Promise<IDebugger.IRichVariable>;
|
|
19
|
+
protected renderMime: IRenderMimeRegistry;
|
|
20
|
+
protected trans: TranslationBundle;
|
|
21
|
+
private _dataHash;
|
|
13
22
|
}
|
|
14
23
|
/**
|
|
15
24
|
* Debugger variable mime type renderer namespace
|
|
@@ -20,12 +29,16 @@ export declare namespace VariableMimeRenderer {
|
|
|
20
29
|
*/
|
|
21
30
|
interface IOptions {
|
|
22
31
|
/**
|
|
23
|
-
*
|
|
32
|
+
* Loader of the variable to be rendered
|
|
24
33
|
*/
|
|
25
|
-
dataLoader: Promise<IDebugger.IRichVariable>;
|
|
34
|
+
dataLoader: () => Promise<IDebugger.IRichVariable>;
|
|
26
35
|
/**
|
|
27
36
|
* Render mime type registry
|
|
28
37
|
*/
|
|
29
38
|
rendermime: IRenderMimeRegistry;
|
|
39
|
+
/**
|
|
40
|
+
* Translation manager
|
|
41
|
+
*/
|
|
42
|
+
translator?: ITranslator;
|
|
30
43
|
}
|
|
31
44
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import { MainAreaWidget } from '@jupyterlab/apputils';
|
|
2
2
|
import { MimeModel } from '@jupyterlab/rendermime';
|
|
3
|
+
import { nullTranslator } from '@jupyterlab/translation';
|
|
3
4
|
import { PromiseDelegate } from '@lumino/coreutils';
|
|
4
5
|
import { Panel } from '@lumino/widgets';
|
|
6
|
+
import { murmur2 } from '../../hash';
|
|
5
7
|
/**
|
|
6
8
|
* Debugger variable mime type renderer
|
|
7
9
|
*/
|
|
@@ -10,35 +12,64 @@ export class VariableMimeRenderer extends MainAreaWidget {
|
|
|
10
12
|
* Instantiate a new VariableMimeRenderer.
|
|
11
13
|
*/
|
|
12
14
|
constructor(options) {
|
|
13
|
-
const { dataLoader, rendermime } = options;
|
|
15
|
+
const { dataLoader, rendermime, translator } = options;
|
|
14
16
|
const content = new Panel();
|
|
15
17
|
const loaded = new PromiseDelegate();
|
|
16
18
|
super({
|
|
17
19
|
content,
|
|
18
20
|
reveal: Promise.all([dataLoader, loaded.promise])
|
|
19
21
|
});
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
this.trans = (translator !== null && translator !== void 0 ? translator : nullTranslator).load('jupyterlab');
|
|
23
|
+
this.dataLoader = dataLoader;
|
|
24
|
+
this.renderMime = rendermime;
|
|
25
|
+
this._dataHash = null;
|
|
26
|
+
this.refresh()
|
|
27
|
+
.then(() => {
|
|
28
|
+
loaded.resolve();
|
|
29
|
+
})
|
|
30
|
+
.catch(reason => loaded.reject(reason));
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Refresh the variable view
|
|
34
|
+
*/
|
|
35
|
+
async refresh(force = false) {
|
|
36
|
+
let data = await this.dataLoader();
|
|
37
|
+
if (Object.keys(data.data).length === 0) {
|
|
38
|
+
data = {
|
|
39
|
+
data: {
|
|
40
|
+
'text/plain': this.trans.__('The variable is undefined in the active context.')
|
|
41
|
+
},
|
|
42
|
+
metadata: {}
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
if (data.data) {
|
|
46
|
+
const hash = murmur2(JSON.stringify(data), 17);
|
|
47
|
+
if (force || this._dataHash !== hash) {
|
|
48
|
+
if (this.content.layout) {
|
|
49
|
+
this.content.widgets.forEach(w => {
|
|
50
|
+
this.content.layout.removeWidget(w);
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
// We trust unconditionally the data as the user is required to
|
|
54
|
+
// execute the code to load a particular variable in memory
|
|
55
|
+
const mimeType = this.renderMime.preferredMimeType(data.data, 'any');
|
|
24
56
|
if (mimeType) {
|
|
25
|
-
const widget =
|
|
26
|
-
const model = new MimeModel(data);
|
|
57
|
+
const widget = this.renderMime.createRenderer(mimeType);
|
|
58
|
+
const model = new MimeModel(Object.assign(Object.assign({}, data), { trusted: true }));
|
|
59
|
+
this._dataHash = hash;
|
|
27
60
|
await widget.renderModel(model);
|
|
28
|
-
content.addWidget(widget);
|
|
29
|
-
loaded.resolve();
|
|
61
|
+
this.content.addWidget(widget);
|
|
30
62
|
}
|
|
31
63
|
else {
|
|
32
|
-
|
|
64
|
+
this._dataHash = null;
|
|
65
|
+
return Promise.reject('Unable to determine the preferred mime type.');
|
|
33
66
|
}
|
|
34
67
|
}
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
loaded.reject(reason);
|
|
41
|
-
});
|
|
68
|
+
}
|
|
69
|
+
else {
|
|
70
|
+
this._dataHash = null;
|
|
71
|
+
return Promise.reject('Unable to get a view on the variable.');
|
|
72
|
+
}
|
|
42
73
|
}
|
|
43
74
|
}
|
|
44
75
|
//# sourceMappingURL=mimerenderer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mimerenderer.js","sourceRoot":"","sources":["../../../src/panels/variables/mimerenderer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAuB,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACxE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"mimerenderer.js","sourceRoot":"","sources":["../../../src/panels/variables/mimerenderer.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,12 +20,15 @@ export declare class VariablesModel implements IDebugger.Model.IVariables {
|
|
|
20
20
|
* Signal emitted when the current variable has been expanded.
|
|
21
21
|
*/
|
|
22
22
|
get variableExpanded(): ISignal<this, IDebugger.IVariable>;
|
|
23
|
+
get selectedVariable(): IDebugger.IVariableSelection | null;
|
|
24
|
+
set selectedVariable(selection: IDebugger.IVariableSelection | null);
|
|
23
25
|
/**
|
|
24
26
|
* Expand a variable.
|
|
25
27
|
*
|
|
26
28
|
* @param variable The variable to expand.
|
|
27
29
|
*/
|
|
28
30
|
expandVariable(variable: IDebugger.IVariable): void;
|
|
31
|
+
private _selectedVariable;
|
|
29
32
|
private _state;
|
|
30
33
|
private _variableExpanded;
|
|
31
34
|
private _changed;
|
|
@@ -6,6 +6,7 @@ import { Signal } from '@lumino/signaling';
|
|
|
6
6
|
*/
|
|
7
7
|
export class VariablesModel {
|
|
8
8
|
constructor() {
|
|
9
|
+
this._selectedVariable = null;
|
|
9
10
|
this._state = [];
|
|
10
11
|
this._variableExpanded = new Signal(this);
|
|
11
12
|
this._changed = new Signal(this);
|
|
@@ -35,6 +36,12 @@ export class VariablesModel {
|
|
|
35
36
|
get variableExpanded() {
|
|
36
37
|
return this._variableExpanded;
|
|
37
38
|
}
|
|
39
|
+
get selectedVariable() {
|
|
40
|
+
return this._selectedVariable;
|
|
41
|
+
}
|
|
42
|
+
set selectedVariable(selection) {
|
|
43
|
+
this._selectedVariable = selection;
|
|
44
|
+
}
|
|
38
45
|
/**
|
|
39
46
|
* Expand a variable.
|
|
40
47
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/panels/variables/model.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAW,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;GAEG;AACH,MAAM,OAAO,cAAc;IAA3B;
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../src/panels/variables/model.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAE3D,OAAO,EAAW,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAIpD;;GAEG;AACH,MAAM,OAAO,cAAc;IAA3B;QA8CU,sBAAiB,GAAwC,IAAI,CAAC;QAC9D,WAAM,GAAuB,EAAE,CAAC;QAChC,sBAAiB,GAAG,IAAI,MAAM,CAA4B,IAAI,CAAC,CAAC;QAChE,aAAQ,GAAG,IAAI,MAAM,CAAa,IAAI,CAAC,CAAC;IAClD,CAAC;IAjDC;;OAEG;IACH,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,IAAI,MAAM,CAAC,MAA0B;QACnC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IACD,IAAI,gBAAgB,CAAC,SAA8C;QACjE,IAAI,CAAC,iBAAiB,GAAG,SAAS,CAAC;IACrC,CAAC;IAED;;;;OAIG;IACH,cAAc,CAAC,QAA6B;QAC1C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACxC,CAAC;CAMF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { ReactWidget } from '@jupyterlab/apputils';
|
|
2
3
|
import { ITranslator } from '@jupyterlab/translation';
|
|
3
|
-
import { ReactWidget } from '@jupyterlab/ui-components';
|
|
4
4
|
import { IDebugger } from '../../tokens';
|
|
5
5
|
import { VariablesBodyGrid } from './grid';
|
|
6
6
|
import { VariablesBodyTree } from './tree';
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
+
import { ReactWidget, UseSignal } from '@jupyterlab/apputils';
|
|
1
2
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
2
|
-
import { HTMLSelect
|
|
3
|
+
import { HTMLSelect } from '@jupyterlab/ui-components';
|
|
3
4
|
import React, { useState } from 'react';
|
|
4
5
|
/**
|
|
5
6
|
* A React component to handle scope changes.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../src/panels/variables/scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,EAEf,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"scope.js","sourceRoot":"","sources":["../../../src/panels/variables/scope.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,EAEL,cAAc,EAEf,MAAM,yBAAyB,CAAC;AAEjC,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAQxC;;;;;;;;GAQG;AACH,MAAM,sBAAsB,GAAG,CAAC,EAC9B,KAAK,EACL,IAAI,EACJ,IAAI,EACJ,KAAK,EAMN,EAAe,EAAE;IAChB,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC;IACxC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;IAE5B,MAAM,QAAQ,GAAG,CAAC,KAA2C,EAAE,EAAE;QAC/D,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACjC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAChB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC,CAAC;IAEF,OAAO,CACL,oBAAC,UAAU,IACT,QAAQ,EAAE,QAAQ,EAClB,KAAK,EAAE,KAAK,gBACA,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,IAE5B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CACnB,gCAAQ,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,IACvC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CACd,CACV,CAAC,CACS,CACd,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,WAAW;IAC5C;;;;OAIG;IACH,YAAY,OAA+B;QACzC,KAAK,EAAE,CAAC;QACR,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;QAClD,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,MAAM,GAAG,CAAC,UAAU,IAAI,cAAc,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,MAAM;QACJ,OAAO,CACL,oBAAC,SAAS,IAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,MAAM,IAC/D,GAAgB,EAAE,CAAC,CAClB,oBAAC,sBAAsB,IACrB,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,KAAK,EAAE,IAAI,CAAC,MAAM,EAClB,IAAI,EAAE,IAAI,CAAC,KAAK,EAChB,IAAI,EAAE,IAAI,CAAC,KAAK,GAChB,CACH,CACS,CACb,CAAC;IACJ,CAAC;CAMF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
+
import { ReactWidget } from '@jupyterlab/apputils';
|
|
2
3
|
import { ITranslator } from '@jupyterlab/translation';
|
|
3
|
-
import { ReactWidget } from '@jupyterlab/ui-components';
|
|
4
4
|
import { CommandRegistry } from '@lumino/commands';
|
|
5
5
|
import { IDebugger } from '../../tokens';
|
|
6
6
|
/**
|
|
@@ -17,10 +17,6 @@ export declare class VariablesBodyTree extends ReactWidget {
|
|
|
17
17
|
* Render the VariablesBodyTree.
|
|
18
18
|
*/
|
|
19
19
|
render(): JSX.Element;
|
|
20
|
-
/**
|
|
21
|
-
* Get the latest hit variable
|
|
22
|
-
*/
|
|
23
|
-
get latestSelection(): IDebugger.IVariableSelection | null;
|
|
24
20
|
/**
|
|
25
21
|
* Set the variable filter list.
|
|
26
22
|
*/
|
|
@@ -35,11 +31,11 @@ export declare class VariablesBodyTree extends ReactWidget {
|
|
|
35
31
|
* @param model The variables model.
|
|
36
32
|
*/
|
|
37
33
|
private _updateScopes;
|
|
34
|
+
protected model: IDebugger.Model.IVariables;
|
|
38
35
|
private _commands;
|
|
39
36
|
private _scope;
|
|
40
37
|
private _scopes;
|
|
41
38
|
private _filter;
|
|
42
|
-
private _latestSelection;
|
|
43
39
|
private _service;
|
|
44
40
|
private _translator;
|
|
45
41
|
}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// Copyright (c) Jupyter Development Team.
|
|
2
2
|
// Distributed under the terms of the Modified BSD License.
|
|
3
|
+
import { ReactWidget } from '@jupyterlab/apputils';
|
|
3
4
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
4
|
-
import { caretDownEmptyIcon,
|
|
5
|
+
import { caretDownEmptyIcon, searchIcon } from '@jupyterlab/ui-components';
|
|
5
6
|
import { ArrayExt } from '@lumino/algorithm';
|
|
6
7
|
import React, { useEffect, useState } from 'react';
|
|
7
8
|
import { convertType } from '.';
|
|
@@ -20,11 +21,10 @@ export class VariablesBodyTree extends ReactWidget {
|
|
|
20
21
|
this._scope = '';
|
|
21
22
|
this._scopes = [];
|
|
22
23
|
this._filter = new Set();
|
|
23
|
-
this._latestSelection = null;
|
|
24
24
|
this._commands = options.commands;
|
|
25
25
|
this._service = options.service;
|
|
26
26
|
this._translator = options.translator;
|
|
27
|
-
const model = options.model;
|
|
27
|
+
const model = (this.model = options.model);
|
|
28
28
|
model.changed.connect(this._updateScopes, this);
|
|
29
29
|
this.addClass('jp-DebuggerVariables-body');
|
|
30
30
|
}
|
|
@@ -35,15 +35,9 @@ export class VariablesBodyTree extends ReactWidget {
|
|
|
35
35
|
var _a;
|
|
36
36
|
const scope = (_a = this._scopes.find(scope => scope.name === this._scope)) !== null && _a !== void 0 ? _a : this._scopes[0];
|
|
37
37
|
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 => {
|
|
38
|
-
this.
|
|
38
|
+
this.model.selectedVariable = variable;
|
|
39
39
|
} })) : (React.createElement("div", null));
|
|
40
40
|
}
|
|
41
|
-
/**
|
|
42
|
-
* Get the latest hit variable
|
|
43
|
-
*/
|
|
44
|
-
get latestSelection() {
|
|
45
|
-
return this._latestSelection;
|
|
46
|
-
}
|
|
47
41
|
/**
|
|
48
42
|
* Set the variable filter list.
|
|
49
43
|
*/
|
|
@@ -129,7 +123,15 @@ const VariableComponent = (props) => {
|
|
|
129
123
|
React.createElement("span", null, ": "),
|
|
130
124
|
React.createElement("span", { style: styleType }, convertType(variable)),
|
|
131
125
|
React.createElement("span", { className: "jp-DebuggerVariables-hspacer" }),
|
|
132
|
-
service.model.hasRichVariableRendering &&
|
|
126
|
+
service.model.hasRichVariableRendering &&
|
|
127
|
+
// Don't add rich display for special entries
|
|
128
|
+
// debugpy: 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) && (React.createElement("button", { className: "jp-DebuggerVariables-renderVariable", disabled: !commands.isEnabled(Debugger.CommandIDs.renderMimeVariable, {
|
|
133
135
|
name: variable.name,
|
|
134
136
|
variablesReference: variable.variablesReference
|
|
135
137
|
}), onClick: e => {
|