@datalayer/jupyter-react 0.8.3 → 0.9.1
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/app/tabs/ComponentsTab.js +1 -1
- package/lib/app/tabs/ComponentsTab.js.map +1 -1
- package/lib/app/tabs/components/CellComponent.js +3 -3
- package/lib/app/tabs/components/CellComponent.js.map +1 -1
- package/lib/app/tabs/components/NotebookComponent.js +2 -2
- package/lib/app/tabs/components/NotebookComponent.js.map +1 -1
- package/lib/app/tabs/components/ViewerComponent.js +2 -2
- package/lib/app/tabs/components/ViewerComponent.js.map +1 -1
- package/lib/components/cell/Cell.d.ts +6 -0
- package/lib/components/cell/Cell.js +4 -31
- package/lib/components/cell/Cell.js.map +1 -1
- package/lib/components/cell/CellAdapter.js +1 -1
- package/lib/components/cell/CellAdapter.js.map +1 -1
- package/lib/components/cell/CellCommands.js +1 -1
- package/lib/components/codemirror/CodeMirrorEditor.js +1 -2
- package/lib/components/codemirror/CodeMirrorEditor.js.map +1 -1
- package/lib/components/codemirror/CodeMirrorOutputToolbar.js +1 -1
- package/lib/components/codemirror/CodeMirrorOutputToolbar.js.map +1 -1
- package/lib/components/commands/Commands.js +1 -1
- package/lib/components/commands/Commands.js.map +1 -1
- package/lib/components/console/Console.d.ts +12 -1
- package/lib/components/console/Console.js +11 -7
- package/lib/components/console/Console.js.map +1 -1
- package/lib/components/console/ConsoleAdapter.d.ts +23 -2
- package/lib/components/console/ConsoleAdapter.js +27 -13
- package/lib/components/console/ConsoleAdapter.js.map +1 -1
- package/lib/components/dialog/Dialog.js +1 -1
- package/lib/components/dialog/Dialog.js.map +1 -1
- package/lib/components/filemanager/FileManagerJupyterLab.js +1 -1
- package/lib/components/filemanager/FileManagerJupyterLab.js.map +1 -1
- package/lib/components/jupyterlab/JupyterLabApp.d.ts +1 -1
- package/lib/components/jupyterlab/JupyterLabAppCss.d.ts +1 -1
- package/lib/components/kernel/KernelActionMenu.d.ts +8 -0
- package/lib/components/kernel/KernelActionMenu.js +21 -0
- package/lib/components/kernel/KernelActionMenu.js.map +1 -0
- package/lib/components/kernel/KernelInspector.d.ts +6 -0
- package/lib/components/kernel/KernelInspector.js +31 -0
- package/lib/components/kernel/KernelInspector.js.map +1 -0
- package/lib/components/kernel/KernelLauncher.d.ts +2 -0
- package/lib/components/kernel/KernelLauncher.js +11 -0
- package/lib/components/kernel/KernelLauncher.js.map +1 -0
- package/lib/components/kernel/KernelLogs.d.ts +2 -0
- package/lib/components/kernel/KernelLogs.js +11 -0
- package/lib/components/kernel/KernelLogs.js.map +1 -0
- package/lib/components/kernel/KernelProgressBar.d.ts +2 -0
- package/lib/components/kernel/KernelProgressBar.js +26 -0
- package/lib/components/kernel/KernelProgressBar.js.map +1 -0
- package/lib/components/kernel/KernelSelector.d.ts +8 -0
- package/lib/components/kernel/KernelSelector.js +40 -0
- package/lib/components/kernel/KernelSelector.js.map +1 -0
- package/lib/components/kernel/KernelStatus.d.ts +27 -0
- package/lib/components/kernel/KernelStatus.js +67 -0
- package/lib/components/kernel/KernelStatus.js.map +1 -0
- package/lib/components/kernel/KernelUsage.d.ts +6 -0
- package/lib/components/kernel/KernelUsage.js +100 -0
- package/lib/components/kernel/KernelUsage.js.map +1 -0
- package/lib/components/kernel/KernelVariables.d.ts +6 -0
- package/lib/components/kernel/KernelVariables.js +23 -0
- package/lib/components/kernel/KernelVariables.js.map +1 -0
- package/lib/components/kernel/Kernels.d.ts +2 -0
- package/lib/components/kernel/Kernels.js +88 -0
- package/lib/components/kernel/Kernels.js.map +1 -0
- package/lib/components/kernel/index.d.ts +10 -0
- package/lib/components/kernel/index.js +16 -0
- package/lib/components/kernel/index.js.map +1 -0
- package/lib/components/kernel/inspector/kernelinspector.css +68 -0
- package/lib/components/kernel/inspector/model.d.ts +56 -0
- package/lib/components/kernel/inspector/model.js +201 -0
- package/lib/components/kernel/inspector/model.js.map +1 -0
- package/lib/components/kernel/inspector/widget.d.ts +40 -0
- package/lib/components/kernel/inspector/widget.js +190 -0
- package/lib/components/kernel/inspector/widget.js.map +1 -0
- package/lib/components/kernel/variables/handler.d.ts +86 -0
- package/lib/components/kernel/variables/handler.js +262 -0
- package/lib/components/kernel/variables/handler.js.map +1 -0
- package/lib/components/kernel/variables/inspectorscripts.d.ts +20 -0
- package/lib/components/kernel/variables/inspectorscripts.js +349 -0
- package/lib/components/kernel/variables/inspectorscripts.js.map +1 -0
- package/lib/components/kernel/variables/kernelconnector.d.ts +37 -0
- package/lib/components/kernel/variables/kernelconnector.js +76 -0
- package/lib/components/kernel/variables/kernelconnector.js.map +1 -0
- package/lib/components/kernel/variables/manager.d.ts +26 -0
- package/lib/components/kernel/variables/manager.js +70 -0
- package/lib/components/kernel/variables/manager.js.map +1 -0
- package/lib/components/kernel/variables/tokens.d.ts +48 -0
- package/lib/{jupyter/lab/JupyterLabTheme.js → components/kernel/variables/tokens.js} +1 -1
- package/lib/components/kernel/variables/tokens.js.map +1 -0
- package/lib/components/kernel/variables/variablesinspector.css +110 -0
- package/lib/components/kernel/variables/variablesinspector.d.ts +5 -0
- package/lib/components/kernel/variables/variablesinspector.js +85 -0
- package/lib/components/kernel/variables/variablesinspector.js.map +1 -0
- package/lib/components/kernel/variables/widget.d.ts +33 -0
- package/lib/components/kernel/variables/widget.js +391 -0
- package/lib/components/kernel/variables/widget.js.map +1 -0
- package/lib/components/lumino/Lumino.js.map +1 -0
- package/lib/components/lumino/LuminoBox.js.map +1 -0
- package/lib/components/lumino/LuminoDetached.js.map +1 -0
- package/lib/components/lumino/LuminoObservable.js.map +1 -0
- package/lib/components/lumino/LuminoRedux.js.map +1 -0
- package/lib/components/lumino/ReactPortalWidget.js.map +1 -0
- package/lib/components/notebook/Notebook.js +11 -7
- package/lib/components/notebook/Notebook.js.map +1 -1
- package/lib/components/notebook/NotebookAdapter.d.ts +3 -1
- package/lib/components/notebook/NotebookAdapter.js +43 -39
- package/lib/components/notebook/NotebookAdapter.js.map +1 -1
- package/lib/components/notebook/NotebookCommands.d.ts +23 -21
- package/lib/components/notebook/NotebookCommands.js +51 -26
- package/lib/components/notebook/NotebookCommands.js.map +1 -1
- package/lib/components/notebook/cell/metadata/CellMetadataEditor.js +1 -1
- package/lib/components/notebook/cell/metadata/CellMetadataEditor.js.map +1 -1
- package/lib/components/notebook/cell/metadata/NbGraderCells.js +10 -10
- package/lib/components/notebook/cell/prompt/Countdown.js +1 -1
- package/lib/components/notebook/cell/prompt/Countdown.js.map +1 -1
- package/lib/components/notebook/cell/prompt/CountdownOutputPrompt.js.map +1 -1
- package/lib/components/notebook/cell/sidebar/CellSidebarWidget.d.ts +1 -1
- package/lib/components/notebook/cell/sidebar/CellSidebarWidget.js +1 -1
- package/lib/components/notebook/cell/sidebar/CellSidebarWidget.js.map +1 -1
- package/lib/components/notebook/marked/marked.js +1 -1
- package/lib/components/output/Output.d.ts +11 -10
- package/lib/components/output/Output.js +32 -57
- package/lib/components/output/Output.js.map +1 -1
- package/lib/components/output/OutputAdapter.d.ts +1 -1
- package/lib/components/output/OutputAdapter.js +14 -12
- package/lib/components/output/OutputAdapter.js.map +1 -1
- package/lib/components/output/OutputRenderer.js +4 -2
- package/lib/components/output/OutputRenderer.js.map +1 -1
- package/lib/components/output/OutputZustand.d.ts +5 -0
- package/lib/components/output/OutputZustand.js +5 -0
- package/lib/components/output/OutputZustand.js.map +1 -1
- package/lib/components/output/ipywidgets/IPyWidgetsAttached.js +1 -1
- package/lib/components/output/ipywidgets/IPyWidgetsAttached.js.map +1 -1
- package/lib/components/output/ipywidgets/IPyWidgetsViewManager.js +7 -6
- package/lib/components/output/ipywidgets/IPyWidgetsViewManager.js.map +1 -1
- package/lib/components/settings/Settings.js +1 -1
- package/lib/components/settings/Settings.js.map +1 -1
- package/lib/components/terminal/Terminal.d.ts +4 -0
- package/lib/components/terminal/Terminal.js +1 -1
- package/lib/components/terminal/Terminal.js.map +1 -1
- package/lib/components/terminal/TerminalAdapter.js +12 -3
- package/lib/components/terminal/TerminalAdapter.js.map +1 -1
- package/lib/components/viewer/Viewer.d.ts +2 -1
- package/lib/components/viewer/Viewer.js +16 -3
- package/lib/components/viewer/Viewer.js.map +1 -1
- package/lib/components/viewer/input/CodemirrorViewer.js +2 -2
- package/lib/components/viewer/input/CodemirrorViewer.js.map +1 -1
- package/lib/components/viewer/input/InputViewer.js +1 -4
- package/lib/components/viewer/input/InputViewer.js.map +1 -1
- package/lib/components/viewer/output/OutputAdapter.js +2 -2
- package/lib/components/viewer/output/OutputAdapter.js.map +1 -1
- package/lib/components/viewer/output/OutputViewer.js +1 -1
- package/lib/components/viewer/output/OutputViewer.js.map +1 -1
- package/lib/examples/All.js +5 -4
- package/lib/examples/All.js.map +1 -1
- package/lib/examples/Bqplot.js +7 -1
- package/lib/examples/Bqplot.js.map +1 -1
- package/lib/examples/CellLite.js +16 -0
- package/lib/examples/CellLite.js.map +1 -0
- package/lib/examples/Console.js +1 -1
- package/lib/examples/Console.js.map +1 -1
- package/lib/examples/ConsoleLite.js +3 -1
- package/lib/examples/ConsoleLite.js.map +1 -1
- package/lib/examples/Deno.js +18 -0
- package/lib/examples/Deno.js.map +1 -0
- package/lib/examples/IPyLeaflet.js +7 -3
- package/lib/examples/IPyLeaflet.js.map +1 -1
- package/lib/examples/IPyReact.js +7 -3
- package/lib/examples/IPyReact.js.map +1 -1
- package/lib/examples/JupyterLabHeadlessApp.js +1 -1
- package/lib/examples/JupyterLabHeadlessApp.js.map +1 -1
- package/lib/examples/KernelExecResult.d.ts +1 -0
- package/lib/examples/KernelExecResult.js +40 -0
- package/lib/examples/KernelExecResult.js.map +1 -0
- package/lib/examples/KernelExecutor.js +20 -10
- package/lib/examples/KernelExecutor.js.map +1 -1
- package/lib/examples/Kernels.d.ts +1 -0
- package/lib/examples/Kernels.js +78 -0
- package/lib/examples/Kernels.js.map +1 -0
- package/lib/examples/Lumino.js +1 -1
- package/lib/examples/Lumino.js.map +1 -1
- package/lib/examples/Matplotlib.js +11 -7
- package/lib/examples/Matplotlib.js.map +1 -1
- package/lib/examples/NotebookCellSidebar.js +9 -5
- package/lib/examples/NotebookCellSidebar.js.map +1 -1
- package/lib/examples/NotebookColorMode.js +18 -12
- package/lib/examples/NotebookColorMode.js.map +1 -1
- package/lib/examples/NotebookExternalContent.js +9 -5
- package/lib/examples/NotebookExternalContent.js.map +1 -1
- package/lib/examples/NotebookInit.js +8 -4
- package/lib/examples/NotebookInit.js.map +1 -1
- package/lib/examples/NotebookKernelChange.js +4 -3
- package/lib/examples/NotebookKernelChange.js.map +1 -1
- package/lib/examples/NotebookLite.d.ts +1 -0
- package/lib/examples/NotebookLite.js +20 -0
- package/lib/examples/NotebookLite.js.map +1 -0
- package/lib/examples/NotebookNbFormat.js +9 -5
- package/lib/examples/NotebookNbFormat.js.map +1 -1
- package/lib/examples/NotebookNbFormatChange.d.ts +1 -0
- package/lib/examples/{NotebookModelChange.js → NotebookNbFormatChange.js} +12 -8
- package/lib/examples/NotebookNbFormatChange.js.map +1 -0
- package/lib/examples/NotebookPath.js +9 -5
- package/lib/examples/NotebookPath.js.map +1 -1
- package/lib/examples/NotebookPathChange.js +9 -5
- package/lib/examples/NotebookPathChange.js.map +1 -1
- package/lib/examples/NotebookSkeleton.d.ts +1 -0
- package/lib/examples/NotebookSkeleton.js +28 -0
- package/lib/examples/NotebookSkeleton.js.map +1 -0
- package/lib/examples/NotebookTheme.js +20 -13
- package/lib/examples/NotebookTheme.js.map +1 -1
- package/lib/examples/NotebookUnmount.js +5 -4
- package/lib/examples/NotebookUnmount.js.map +1 -1
- package/lib/examples/ObservableHQ.d.ts +1 -0
- package/lib/examples/ObservableHQ.js +18 -0
- package/lib/examples/ObservableHQ.js.map +1 -0
- package/lib/examples/Outputs.js +2 -2
- package/lib/examples/Outputs.js.map +1 -1
- package/lib/examples/RunningSessions.js +1 -1
- package/lib/examples/RunningSessions.js.map +1 -1
- package/lib/examples/Viewer.js +6 -68
- package/lib/examples/Viewer.js.map +1 -1
- package/lib/examples/lumino/LuminoWidget.js +3 -3
- package/lib/examples/lumino/LuminoWidget.js.map +1 -1
- package/lib/examples/toolbars/NotebookToolbar.js +7 -4
- package/lib/examples/toolbars/NotebookToolbar.js.map +1 -1
- package/lib/examples/toolbars/NotebookToolbarAutoSave.js +1 -1
- package/lib/examples/toolbars/NotebookToolbarAutoSave.js.map +1 -1
- package/lib/index.d.ts +33 -24
- package/lib/index.js +53 -36
- package/lib/index.js.map +1 -1
- package/lib/jupyter/Jupyter.d.ts +6 -1090
- package/lib/jupyter/Jupyter.js +23 -18
- package/lib/jupyter/Jupyter.js.map +1 -1
- package/lib/jupyter/JupyterConfig.js +1 -1
- package/lib/jupyter/JupyterConfig.js.map +1 -1
- package/lib/jupyter/JupyterContext.d.ts +118 -23
- package/lib/jupyter/JupyterContext.js +115 -100
- package/lib/jupyter/JupyterContext.js.map +1 -1
- package/lib/jupyter/ipywidgets/cache/semvercache.d.ts +3 -1
- package/lib/jupyter/ipywidgets/cache/semvercache.js.map +1 -1
- package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.d.ts +5 -3
- package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.js +14 -14
- package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.js.map +1 -1
- package/lib/jupyter/ipywidgets/lab/manager.js +4 -5
- package/lib/jupyter/ipywidgets/lab/manager.js.map +1 -1
- package/lib/jupyter/ipywidgets/lab/plugin.js +2 -2
- package/lib/jupyter/ipywidgets/lab/plugin.js.map +1 -1
- package/lib/jupyter/ipywidgets/lab/renderer.js.map +1 -1
- package/lib/jupyter/ipywidgets/plotly/Figure.js +180 -169
- package/lib/jupyter/ipywidgets/plotly/Figure.js.map +1 -1
- package/lib/jupyter/kernel/Kernel.d.ts +69 -19
- package/lib/jupyter/kernel/Kernel.js +62 -44
- package/lib/jupyter/kernel/Kernel.js.map +1 -1
- package/lib/jupyter/kernel/KernelExecutor.d.ts +16 -6
- package/lib/jupyter/kernel/KernelExecutor.js +61 -27
- package/lib/jupyter/kernel/KernelExecutor.js.map +1 -1
- package/lib/jupyter/kernel/index.d.ts +2 -0
- package/lib/jupyter/kernel/index.js +8 -0
- package/lib/jupyter/kernel/index.js.map +1 -0
- package/lib/jupyter/lab/JupyterLabColorMode.js +7 -0
- package/lib/jupyter/lab/JupyterLabColorMode.js.map +1 -0
- package/lib/jupyter/lab/JupyterLabCss.d.ts +5 -2
- package/lib/jupyter/lab/JupyterLabCss.js +35 -7
- package/lib/jupyter/lab/JupyterLabCss.js.map +1 -1
- package/lib/jupyter/lab/index.d.ts +2 -2
- package/lib/jupyter/lab/index.js +1 -2
- package/lib/jupyter/lab/index.js.map +1 -1
- package/lib/jupyter/lab/notebook/content/CountdownContentFactory.d.ts +3 -8
- package/lib/jupyter/lab/notebook/content/CountdownContentFactory.js +6 -12
- package/lib/jupyter/lab/notebook/content/CountdownContentFactory.js.map +1 -1
- package/lib/jupyter/lab/notebook/content/plugin.js +2 -2
- package/lib/jupyter/lab/notebook/content/plugin.js.map +1 -1
- package/lib/jupyter/lite/LiteServer.d.ts +11 -2
- package/lib/jupyter/lite/LiteServer.js +41 -66
- package/lib/jupyter/lite/LiteServer.js.map +1 -1
- package/lib/jupyter/renderers/plotly/PlotlyRenderer.js +4 -4
- package/lib/jupyter/renderers/plotly/PlotlyRenderer.js.map +1 -1
- package/lib/jupyter/theme.js +3 -2
- package/lib/jupyter/theme.js.map +1 -1
- package/lib/utils/Utils.d.ts +3 -2
- package/lib/utils/Utils.js +45 -1
- package/lib/utils/Utils.js.map +1 -1
- package/lib/utils/index.d.ts +1 -0
- package/lib/utils/index.js +2 -0
- package/lib/utils/index.js.map +1 -0
- package/package.json +170 -86
- package/lib/examples/NotebookModelChange.js.map +0 -1
- package/lib/examples/ViewerFile.js +0 -19
- package/lib/examples/ViewerFile.js.map +0 -1
- package/lib/jupyter/lab/JupyterLabTheme.js.map +0 -1
- package/lib/jupyter/lumino/Lumino.js.map +0 -1
- package/lib/jupyter/lumino/LuminoBox.js.map +0 -1
- package/lib/jupyter/lumino/LuminoDetached.js.map +0 -1
- package/lib/jupyter/lumino/LuminoObservable.js.map +0 -1
- package/lib/jupyter/lumino/LuminoRedux.js.map +0 -1
- package/lib/jupyter/lumino/ReactPortalWidget.js.map +0 -1
- /package/lib/{jupyter → components}/lumino/Lumino.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/Lumino.js +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoBox.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoBox.js +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoDetached.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoDetached.js +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoObservable.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoObservable.js +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoRedux.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/LuminoRedux.js +0 -0
- /package/lib/{jupyter → components}/lumino/ReactPortalWidget.d.ts +0 -0
- /package/lib/{jupyter → components}/lumino/ReactPortalWidget.js +0 -0
- /package/lib/examples/{NotebookModelChange.d.ts → CellLite.d.ts} +0 -0
- /package/lib/examples/{ViewerFile.d.ts → Deno.d.ts} +0 -0
- /package/lib/jupyter/lab/{JupyterLabTheme.d.ts → JupyterLabColorMode.d.ts} +0 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2021-2023 Datalayer, Inc.
|
|
3
|
+
*
|
|
4
|
+
* MIT License
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
.dla-KernelInspector-view .dla-KernelInspector-toolbar {
|
|
8
|
+
border-bottom: var(--jp-border-width) solid var(--jp-toolbar-border-color);
|
|
9
|
+
padding: 2px;
|
|
10
|
+
min-height: var(--jp-private-notebook-panel-toolbar-height);
|
|
11
|
+
box-shadow: var(--jp-toolbar-box-shadow);
|
|
12
|
+
background: var(--jp-toolbar-background);
|
|
13
|
+
z-index: 1;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
.dla-KernelInspector-view .dla-KernelInspector-messagelog {
|
|
17
|
+
padding: 8px;
|
|
18
|
+
overflow: auto;
|
|
19
|
+
white-space: nowrap;
|
|
20
|
+
font-family: var(--jp-code-font-family);
|
|
21
|
+
font-size: var(--jp-code-font-size);
|
|
22
|
+
line-height: var(--jp-code-line-height);
|
|
23
|
+
color: var(--jp-content-font-color1);
|
|
24
|
+
background-color: var(--jp-layout-color0);
|
|
25
|
+
display: grid;
|
|
26
|
+
grid-template-columns: max-content auto;
|
|
27
|
+
grid-gap: 2px 12px;
|
|
28
|
+
align-content: start;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.dla-KernelInspector-view .dla-KernelInspector-logheader {
|
|
32
|
+
font-family: var(--jp-ui-font-family);
|
|
33
|
+
font-size: var(--jp-ui-font-size1);
|
|
34
|
+
line-height: 1;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.dla-KernelInspector-view .dla-KernelInspector-divider {
|
|
38
|
+
grid-column-end: span 2;
|
|
39
|
+
border-bottom: var(--jp-border-width) solid var(--jp-border-color2);
|
|
40
|
+
padding-top: 2px;
|
|
41
|
+
margin-bottom: 3px;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
.dla-KernelInspector-view
|
|
45
|
+
.dla-KernelInspector-divider.dla-KernelInspector-logheader {
|
|
46
|
+
border-bottom: var(--jp-border-width) solid var(--jp-border-color0);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
button.dla-KernelInspector-threadcollapser {
|
|
50
|
+
background-color: transparent;
|
|
51
|
+
border: none;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.dla-KernelInspector-icon {
|
|
55
|
+
background-image: var(--jp-icon-json);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
.dla-KernelInspector-nbtoolbarbutton .jp-ToolbarButtonComponent-label {
|
|
59
|
+
display: none;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
.kspy-collapser-icon {
|
|
63
|
+
padding: 0;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
.kspy-collapser-icon svg {
|
|
67
|
+
vertical-align: middle;
|
|
68
|
+
}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { VDomModel } from '@jupyterlab/apputils';
|
|
2
|
+
import { Kernel } from '@jupyterlab/services';
|
|
3
|
+
export type MessageThread = {
|
|
4
|
+
args: Kernel.IAnyMessageArgs;
|
|
5
|
+
children: MessageThread[];
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* An iterator class which itterates over the message thread being received
|
|
9
|
+
*/
|
|
10
|
+
export declare class ThreadIterator {
|
|
11
|
+
constructor(threads: MessageThread[], collapsed: {
|
|
12
|
+
[key: string]: boolean;
|
|
13
|
+
});
|
|
14
|
+
iter(): this;
|
|
15
|
+
[Symbol.iterator](): {
|
|
16
|
+
next: () => {
|
|
17
|
+
value: ThreadIterator.IElement;
|
|
18
|
+
done: boolean;
|
|
19
|
+
} | {
|
|
20
|
+
done: boolean;
|
|
21
|
+
value?: undefined;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
24
|
+
next(): ThreadIterator.IElement | undefined;
|
|
25
|
+
clone(): ThreadIterator;
|
|
26
|
+
private _index;
|
|
27
|
+
private _child;
|
|
28
|
+
private _threads;
|
|
29
|
+
private _collapsed;
|
|
30
|
+
}
|
|
31
|
+
export declare namespace ThreadIterator {
|
|
32
|
+
interface IElement {
|
|
33
|
+
args: Kernel.IAnyMessageArgs;
|
|
34
|
+
hasChildren: boolean;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Model for a kernel spy.
|
|
39
|
+
*/
|
|
40
|
+
export declare class KernelSpyModel extends VDomModel {
|
|
41
|
+
constructor(kernel?: Kernel.IKernelConnection | null);
|
|
42
|
+
clear(): void;
|
|
43
|
+
get kernel(): Kernel.IKernelConnection | null;
|
|
44
|
+
set kernel(value: Kernel.IKernelConnection | null);
|
|
45
|
+
get log(): ReadonlyArray<Kernel.IAnyMessageArgs>;
|
|
46
|
+
get tree(): MessageThread[];
|
|
47
|
+
depth(args: Kernel.IAnyMessageArgs | null): number;
|
|
48
|
+
getThread(msgId: string, ancestors?: boolean): MessageThread;
|
|
49
|
+
protected onMessage(sender: Kernel.IKernelConnection, args: Kernel.IAnyMessageArgs): void;
|
|
50
|
+
private _findParent;
|
|
51
|
+
private _log;
|
|
52
|
+
private _kernel;
|
|
53
|
+
private _messages;
|
|
54
|
+
private _childLUT;
|
|
55
|
+
private _roots;
|
|
56
|
+
}
|
|
@@ -0,0 +1,201 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2021-2023 Datalayer, Inc.
|
|
3
|
+
*
|
|
4
|
+
* MIT License
|
|
5
|
+
*/
|
|
6
|
+
import { VDomModel } from '@jupyterlab/apputils';
|
|
7
|
+
function isHeader(candidate) {
|
|
8
|
+
return candidate.msg_id !== undefined;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* An iterator class which itterates over the message thread being received
|
|
12
|
+
*/
|
|
13
|
+
export class ThreadIterator {
|
|
14
|
+
constructor(threads, collapsed) {
|
|
15
|
+
this._threads = threads;
|
|
16
|
+
this._collapsed = collapsed;
|
|
17
|
+
this._index = -1;
|
|
18
|
+
this._child = null;
|
|
19
|
+
}
|
|
20
|
+
iter() {
|
|
21
|
+
return this;
|
|
22
|
+
}
|
|
23
|
+
[Symbol.iterator]() {
|
|
24
|
+
// iterator returns a javascript object having at least 1 next function
|
|
25
|
+
return {
|
|
26
|
+
next: () => {
|
|
27
|
+
if (this._child) {
|
|
28
|
+
const next = this._child.next();
|
|
29
|
+
// Return the child until it can't be anymore
|
|
30
|
+
if (next !== undefined) {
|
|
31
|
+
return { value: next, done: false };
|
|
32
|
+
}
|
|
33
|
+
// once there are no more children,
|
|
34
|
+
// Start by saying child is null
|
|
35
|
+
this._child = null;
|
|
36
|
+
}
|
|
37
|
+
// Till this point the index hasn't been added
|
|
38
|
+
// Therefore when it first meets this line gets to zero
|
|
39
|
+
// Move to next thread
|
|
40
|
+
++this._index;
|
|
41
|
+
// Hence when reaching end of the array it exits (done)
|
|
42
|
+
if (this._index >= this._threads.length) {
|
|
43
|
+
return { done: true };
|
|
44
|
+
}
|
|
45
|
+
// A variable to understand which part of the thread we touch first
|
|
46
|
+
// Starting from index 1 then moving ahead
|
|
47
|
+
const entry = this._threads[this._index];
|
|
48
|
+
if (entry.children.length > 0 &&
|
|
49
|
+
!this._collapsed[entry.args.msg.header.msg_id]) {
|
|
50
|
+
// If there are children and collapse is false
|
|
51
|
+
// Iterate over it's children
|
|
52
|
+
this._child = new ThreadIterator(entry.children, this._collapsed);
|
|
53
|
+
}
|
|
54
|
+
// But do return the current index position arguments and
|
|
55
|
+
return {
|
|
56
|
+
value: { args: entry.args, hasChildren: entry.children.length > 0 },
|
|
57
|
+
done: false,
|
|
58
|
+
};
|
|
59
|
+
},
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
// The iteration function
|
|
63
|
+
next() {
|
|
64
|
+
// if child exists, check if the child has more children.
|
|
65
|
+
if (this._child) {
|
|
66
|
+
const next = this._child.next();
|
|
67
|
+
// Return the child until it can't be anymore
|
|
68
|
+
if (next !== undefined) {
|
|
69
|
+
return next;
|
|
70
|
+
}
|
|
71
|
+
// once there are no more children,
|
|
72
|
+
// Start by saying child is null
|
|
73
|
+
this._child = null;
|
|
74
|
+
}
|
|
75
|
+
// Till this point the index hasn't been added
|
|
76
|
+
// Therefore when it first meets this line gets to zero
|
|
77
|
+
// Move to next thread
|
|
78
|
+
++this._index;
|
|
79
|
+
// Hence when reaching end of the array it exits (done)
|
|
80
|
+
if (this._index >= this._threads.length) {
|
|
81
|
+
return undefined;
|
|
82
|
+
}
|
|
83
|
+
// A variable to understand which part of the thread we touch first
|
|
84
|
+
// Starting from index 1 then moving ahead
|
|
85
|
+
const entry = this._threads[this._index];
|
|
86
|
+
if (entry.children.length > 0 &&
|
|
87
|
+
!this._collapsed[entry.args.msg.header.msg_id]) {
|
|
88
|
+
// If there are children and collapse is false
|
|
89
|
+
// Iterate over it's children
|
|
90
|
+
this._child = new ThreadIterator(entry.children, this._collapsed);
|
|
91
|
+
}
|
|
92
|
+
// But do return the current index position arguments and
|
|
93
|
+
return { args: entry.args, hasChildren: entry.children.length > 0 };
|
|
94
|
+
}
|
|
95
|
+
clone() {
|
|
96
|
+
const r = new ThreadIterator(this._threads, this._collapsed);
|
|
97
|
+
r._index = this._index;
|
|
98
|
+
if (this._child) {
|
|
99
|
+
r._child = this._child.clone();
|
|
100
|
+
}
|
|
101
|
+
return r;
|
|
102
|
+
}
|
|
103
|
+
_index;
|
|
104
|
+
_child;
|
|
105
|
+
_threads;
|
|
106
|
+
_collapsed;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Model for a kernel spy.
|
|
110
|
+
*/
|
|
111
|
+
export class KernelSpyModel extends VDomModel {
|
|
112
|
+
constructor(kernel) {
|
|
113
|
+
super();
|
|
114
|
+
this.kernel = kernel ?? null;
|
|
115
|
+
}
|
|
116
|
+
clear() {
|
|
117
|
+
this._log.splice(0, this._log.length);
|
|
118
|
+
this._messages = {};
|
|
119
|
+
this._childLUT = {};
|
|
120
|
+
this._roots = [];
|
|
121
|
+
this.stateChanged.emit(void 0);
|
|
122
|
+
}
|
|
123
|
+
get kernel() {
|
|
124
|
+
return this._kernel;
|
|
125
|
+
}
|
|
126
|
+
set kernel(value) {
|
|
127
|
+
if (this._kernel) {
|
|
128
|
+
this._kernel.anyMessage.disconnect(this.onMessage, this);
|
|
129
|
+
}
|
|
130
|
+
this._kernel = value;
|
|
131
|
+
if (this._kernel) {
|
|
132
|
+
this._kernel.anyMessage.connect(this.onMessage, this);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
get log() {
|
|
136
|
+
return this._log;
|
|
137
|
+
}
|
|
138
|
+
get tree() {
|
|
139
|
+
return this._roots.map(rootId => {
|
|
140
|
+
return this.getThread(rootId, false);
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
depth(args) {
|
|
144
|
+
if (args === null) {
|
|
145
|
+
return -1;
|
|
146
|
+
}
|
|
147
|
+
let depth = 0;
|
|
148
|
+
while ((args = this._findParent(args))) {
|
|
149
|
+
++depth;
|
|
150
|
+
}
|
|
151
|
+
return depth;
|
|
152
|
+
}
|
|
153
|
+
getThread(msgId, ancestors = true) {
|
|
154
|
+
const args = this._messages[msgId];
|
|
155
|
+
if (ancestors) {
|
|
156
|
+
// Work up to root, then work downwards
|
|
157
|
+
let root = args;
|
|
158
|
+
let candidate;
|
|
159
|
+
while ((candidate = this._findParent(root))) {
|
|
160
|
+
root = candidate;
|
|
161
|
+
}
|
|
162
|
+
return this.getThread(root.msg.header.msg_id, false);
|
|
163
|
+
}
|
|
164
|
+
const childMessages = this._childLUT[msgId] || [];
|
|
165
|
+
const childThreads = childMessages.map(childId => {
|
|
166
|
+
return this.getThread(childId, false);
|
|
167
|
+
});
|
|
168
|
+
const thread = {
|
|
169
|
+
args: this._messages[msgId],
|
|
170
|
+
children: childThreads,
|
|
171
|
+
};
|
|
172
|
+
return thread;
|
|
173
|
+
}
|
|
174
|
+
onMessage(sender, args) {
|
|
175
|
+
const { msg } = args;
|
|
176
|
+
this._log.push(args);
|
|
177
|
+
this._messages[msg.header.msg_id] = args;
|
|
178
|
+
const parent = this._findParent(args);
|
|
179
|
+
if (parent === null) {
|
|
180
|
+
this._roots.push(msg.header.msg_id);
|
|
181
|
+
}
|
|
182
|
+
else {
|
|
183
|
+
const header = parent.msg.header;
|
|
184
|
+
this._childLUT[header.msg_id] = this._childLUT[header.msg_id] || [];
|
|
185
|
+
this._childLUT[header.msg_id].push(msg.header.msg_id);
|
|
186
|
+
}
|
|
187
|
+
this.stateChanged.emit(undefined);
|
|
188
|
+
}
|
|
189
|
+
_findParent(args) {
|
|
190
|
+
if (isHeader(args.msg.parent_header)) {
|
|
191
|
+
return this._messages[args.msg.parent_header.msg_id] || null;
|
|
192
|
+
}
|
|
193
|
+
return null;
|
|
194
|
+
}
|
|
195
|
+
_log = [];
|
|
196
|
+
_kernel = null;
|
|
197
|
+
_messages = {};
|
|
198
|
+
_childLUT = {};
|
|
199
|
+
_roots = [];
|
|
200
|
+
}
|
|
201
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../../../../src/components/kernel/inspector/model.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAQjD,SAAS,QAAQ,CACf,SAA+D;IAE/D,OAAO,SAAS,CAAC,MAAM,KAAK,SAAS,CAAC;AACxC,CAAC;AAED;;GAEG;AACH,MAAM,OAAO,cAAc;IACzB,YAAY,OAAwB,EAAE,SAAqC;QACzE,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,IAAI;QACF,OAAO,IAAI,CAAC;IACd,CAAC;IAED,CAAC,MAAM,CAAC,QAAQ,CAAC;QACf,uEAAuE;QACvE,OAAO;YACL,IAAI,EAAE,GAAG,EAAE;gBACT,IAAI,IAAI,CAAC,MAAM,EAAE;oBACf,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;oBAChC,6CAA6C;oBAC7C,IAAI,IAAI,KAAK,SAAS,EAAE;wBACtB,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;qBACrC;oBACD,mCAAmC;oBACnC,gCAAgC;oBAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;iBACpB;gBACD,8CAA8C;gBAC9C,uDAAuD;gBACvD,sBAAsB;gBACtB,EAAE,IAAI,CAAC,MAAM,CAAC;gBACd,uDAAuD;gBACvD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;oBACvC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;iBACvB;gBACD,mEAAmE;gBACnE,0CAA0C;gBAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACzC,IACE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;oBACzB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAC9C;oBACA,8CAA8C;oBAC9C,6BAA6B;oBAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;iBACnE;gBACD,yDAAyD;gBACzD,OAAO;oBACL,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE;oBACnE,IAAI,EAAE,KAAK;iBACZ,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED,yBAAyB;IACzB,IAAI;QACF,yDAAyD;QACzD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAChC,6CAA6C;YAC7C,IAAI,IAAI,KAAK,SAAS,EAAE;gBACtB,OAAO,IAAI,CAAC;aACb;YACD,mCAAmC;YACnC,gCAAgC;YAChC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;SACpB;QACD,8CAA8C;QAC9C,uDAAuD;QACvD,sBAAsB;QACtB,EAAE,IAAI,CAAC,MAAM,CAAC;QACd,uDAAuD;QACvD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE;YACvC,OAAO,SAAS,CAAC;SAClB;QACD,mEAAmE;QACnE,0CAA0C;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACzC,IACE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YACzB,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,EAC9C;YACA,8CAA8C;YAC9C,6BAA6B;YAC7B,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;SACnE;QACD,yDAAyD;QACzD,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;IACtE,CAAC;IAED,KAAK;QACH,MAAM,CAAC,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAC7D,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QACvB,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,CAAC,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;SAChC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAEO,MAAM,CAAS;IACf,MAAM,CAAwB;IAE9B,QAAQ,CAAkB;IAC1B,UAAU,CAA6B;CAChD;AASD;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,SAAS;IAC3C,YAAY,MAAwC;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI,IAAI,CAAC;IAC/B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CAAC,KAAsC;QAC/C,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SAC1D;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;SACvD;IACH,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,IAAmC;QACvC,IAAI,IAAI,KAAK,IAAI,EAAE;YACjB,OAAO,CAAC,CAAC,CAAC;SACX;QACD,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE;YACtC,EAAE,KAAK,CAAC;SACT;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,SAAS,CAAC,KAAa,EAAE,SAAS,GAAG,IAAI;QACvC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,SAAS,EAAE;YACb,uCAAuC;YACvC,IAAI,IAAI,GAAG,IAAI,CAAC;YAChB,IAAI,SAAS,CAAC;YACd,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,EAAE;gBAC3C,IAAI,GAAG,SAAS,CAAC;aAClB;YACD,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;SACtD;QAED,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,YAAY,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YAC/C,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QACxC,CAAC,CAAC,CAAC;QACH,MAAM,MAAM,GAAkB;YAC5B,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;YAC3B,QAAQ,EAAE,YAAY;SACvB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,SAAS,CACjB,MAAgC,EAChC,IAA4B;QAE5B,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;QACrB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,IAAI,EAAE;YACnB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACrC;aAAM;YACL,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC;YACjC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACpE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;SACvD;QACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAEO,WAAW,CACjB,IAA4B;QAE5B,IAAI,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;YACpC,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC;SAC9D;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,IAAI,GAA6B,EAAE,CAAC;IAEpC,OAAO,GAAoC,IAAI,CAAC;IAEhD,SAAS,GAA8C,EAAE,CAAC;IAC1D,SAAS,GAAgC,EAAE,CAAC;IAC5C,MAAM,GAAa,EAAE,CAAC;CAC/B"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { VDomRenderer, ToolbarButton } from '@jupyterlab/apputils';
|
|
3
|
+
import { KernelMessage, Kernel } from '@jupyterlab/services';
|
|
4
|
+
import { Message as luminoMessage } from '@lumino/messaging';
|
|
5
|
+
import { Widget } from '@lumino/widgets';
|
|
6
|
+
import { KernelSpyModel } from './model';
|
|
7
|
+
import './kernelinspector.css';
|
|
8
|
+
/**
|
|
9
|
+
* The main view for the kernel spy.
|
|
10
|
+
*/
|
|
11
|
+
export declare class MessageLogView extends VDomRenderer<KernelSpyModel> {
|
|
12
|
+
constructor(model: KernelSpyModel);
|
|
13
|
+
/**
|
|
14
|
+
* Render the extension discovery view using the virtual DOM.
|
|
15
|
+
*/
|
|
16
|
+
protected render(): React.ReactElement<any>[];
|
|
17
|
+
collapseAll(): void;
|
|
18
|
+
expandAll(): void;
|
|
19
|
+
onCollapse(msg: KernelMessage.IMessage): void;
|
|
20
|
+
protected collapsed: {
|
|
21
|
+
[key: string]: boolean;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The main view for the kernel spy.
|
|
26
|
+
*/
|
|
27
|
+
export declare class KernelSpyView extends Widget {
|
|
28
|
+
constructor(kernel?: Kernel.IKernelConnection | null);
|
|
29
|
+
/**
|
|
30
|
+
* Handle `'activate-request'` messages.
|
|
31
|
+
*/
|
|
32
|
+
protected onActivateRequest(msg: luminoMessage): void;
|
|
33
|
+
get model(): KernelSpyModel;
|
|
34
|
+
private _toolbar;
|
|
35
|
+
private _messagelog;
|
|
36
|
+
private _model;
|
|
37
|
+
protected clearAllButton: ToolbarButton;
|
|
38
|
+
protected expandAllButton: ToolbarButton;
|
|
39
|
+
protected collapseAllButton: ToolbarButton;
|
|
40
|
+
}
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/*
|
|
3
|
+
* Copyright (c) 2021-2023 Datalayer, Inc.
|
|
4
|
+
*
|
|
5
|
+
* MIT License
|
|
6
|
+
*/
|
|
7
|
+
import { VDomRenderer, Toolbar, ToolbarButton } from '@jupyterlab/apputils';
|
|
8
|
+
import { caretDownIcon, caretRightIcon, closeIcon, jsonIcon, } from '@jupyterlab/ui-components';
|
|
9
|
+
import { UUID } from '@lumino/coreutils';
|
|
10
|
+
import { Widget, BoxLayout } from '@lumino/widgets';
|
|
11
|
+
import { ObjectInspector, ObjectLabel, } from 'react-inspector';
|
|
12
|
+
import { KernelSpyModel, ThreadIterator } from './model';
|
|
13
|
+
import './kernelinspector.css';
|
|
14
|
+
const theme = {
|
|
15
|
+
BASE_FONT_FAMILY: 'var(--jp-code-font-family)',
|
|
16
|
+
BASE_FONT_SIZE: 'var(--jp-code-font-size)',
|
|
17
|
+
BASE_LINE_HEIGHT: 'var(--jp-code-line-height)',
|
|
18
|
+
BASE_BACKGROUND_COLOR: 'var(--jp-layout-color0)',
|
|
19
|
+
BASE_COLOR: 'var(--jp-content-font-color1)',
|
|
20
|
+
OBJECT_NAME_COLOR: 'var(--jp-mirror-editor-attribute-color)',
|
|
21
|
+
OBJECT_VALUE_NULL_COLOR: 'var(--jp-mirror-editor-builtin-color)',
|
|
22
|
+
OBJECT_VALUE_UNDEFINED_COLOR: 'var(--jp-mirror-editor-builtin-color)',
|
|
23
|
+
OBJECT_VALUE_REGEXP_COLOR: 'var(--jp-mirror-editor-string-color)',
|
|
24
|
+
OBJECT_VALUE_STRING_COLOR: 'var(--jp-mirror-editor-string-color)',
|
|
25
|
+
OBJECT_VALUE_SYMBOL_COLOR: 'var(--jp-mirror-editor-operator-color)',
|
|
26
|
+
OBJECT_VALUE_NUMBER_COLOR: 'var(--jp-mirror-editor-number-color)',
|
|
27
|
+
OBJECT_VALUE_BOOLEAN_COLOR: 'var(--jp-mirror-editor-builtin-color))',
|
|
28
|
+
OBJECT_VALUE_FUNCTION_KEYWORD_COLOR: 'var(--jp-mirror-editor-def-color))',
|
|
29
|
+
ARROW_COLOR: 'var(--jp-content-font-color2)',
|
|
30
|
+
ARROW_MARGIN_RIGHT: 3,
|
|
31
|
+
ARROW_FONT_SIZE: 12,
|
|
32
|
+
TREENODE_FONT_FAMILY: 'var(--jp-code-font-family)',
|
|
33
|
+
TREENODE_FONT_SIZE: 'var(--jp-code-font-size)',
|
|
34
|
+
TREENODE_LINE_HEIGHT: 'var(--jp-code-line-height)',
|
|
35
|
+
TREENODE_PADDING_LEFT: 12,
|
|
36
|
+
};
|
|
37
|
+
function msgNodeRenderer(args) {
|
|
38
|
+
const { name, depth, isNonenumerable, data } = args;
|
|
39
|
+
if (depth !== 0) {
|
|
40
|
+
return (_jsx(ObjectLabel, { name: name, data: data, isNonenumerable: isNonenumerable }, 'node-label'));
|
|
41
|
+
}
|
|
42
|
+
const msg = data;
|
|
43
|
+
return _jsx("span", { children: msg.header.msg_id }, 'node-label');
|
|
44
|
+
}
|
|
45
|
+
function Message(props) {
|
|
46
|
+
const msg = props.message;
|
|
47
|
+
const msgId = msg.header.msg_id;
|
|
48
|
+
const threadStateClass = props.collapsed ? 'jp-mod-collapsed' : '';
|
|
49
|
+
const collapserIcon = props.hasChildren
|
|
50
|
+
? props.collapsed
|
|
51
|
+
? caretRightIcon
|
|
52
|
+
: caretDownIcon
|
|
53
|
+
: null;
|
|
54
|
+
const hasChildrenClass = props.hasChildren ? 'jp-mod-children' : '';
|
|
55
|
+
const tabIndex = props.hasChildren ? 0 : -1;
|
|
56
|
+
return [
|
|
57
|
+
_jsx("div", { className: "dla-KernelInspector-threadnode", onClick: () => {
|
|
58
|
+
props.onCollapse(props.message);
|
|
59
|
+
}, children: _jsxs("div", { style: { paddingLeft: 16 * props.depth }, children: [_jsx("button", { className: `dla-KernelInspector-threadcollapser ${threadStateClass} ${hasChildrenClass}`, tabIndex: tabIndex, children: collapserIcon && (_jsx(collapserIcon.react, { className: 'kspy-collapser-icon' })) }), _jsxs("span", { className: "dla-KernelInspector-threadlabel", children: [msg.channel, ".", msg.header.msg_type] })] }) }, `threadnode-${msgId}`),
|
|
60
|
+
_jsx("div", { className: "dla-KernelInspector-message", children: _jsx(ObjectInspector, { data: msg, theme: theme, nodeRenderer: msgNodeRenderer }) }, `message-${msgId}`),
|
|
61
|
+
];
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The main view for the kernel spy.
|
|
65
|
+
*/
|
|
66
|
+
export class MessageLogView extends VDomRenderer {
|
|
67
|
+
constructor(model) {
|
|
68
|
+
super(model);
|
|
69
|
+
this.id = `kernelspy-messagelog-${UUID.uuid4()}`;
|
|
70
|
+
this.addClass('dla-KernelInspector-messagelog');
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Render the extension discovery view using the virtual DOM.
|
|
74
|
+
*/
|
|
75
|
+
render() {
|
|
76
|
+
const model = this.model;
|
|
77
|
+
const elements = [];
|
|
78
|
+
elements.push(_jsx("span", { className: "dla-KernelInspector-logheader", children: "Threads" }, "header-thread"), _jsx("span", { className: "dla-KernelInspector-logheader", children: "Contents" }, "header-contents"), _jsx("span", { className: "dla-KernelInspector-logheader dla-KernelInspector-divider" }, "header-divider"));
|
|
79
|
+
const threads = new ThreadIterator(model.tree, this.collapsed);
|
|
80
|
+
let first = true;
|
|
81
|
+
for (const thread of threads) {
|
|
82
|
+
if (thread) {
|
|
83
|
+
const depth = model.depth(thread.args);
|
|
84
|
+
if (depth === 0) {
|
|
85
|
+
if (first) {
|
|
86
|
+
first = false;
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
// Insert spacer between main threads
|
|
90
|
+
elements.push(_jsx("span", { className: "dla-KernelInspector-divider" }, `'divider-${thread.args.msg.header.msg_id}`));
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
const collapsed = this.collapsed[thread.args.msg.header.msg_id];
|
|
94
|
+
elements.push(...Message({
|
|
95
|
+
message: thread.args.msg,
|
|
96
|
+
depth,
|
|
97
|
+
collapsed,
|
|
98
|
+
hasChildren: thread.hasChildren,
|
|
99
|
+
onCollapse: message => {
|
|
100
|
+
this.onCollapse(message);
|
|
101
|
+
},
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
return elements;
|
|
106
|
+
}
|
|
107
|
+
collapseAll() {
|
|
108
|
+
for (const args of this.model.log) {
|
|
109
|
+
this.collapsed[args.msg.header.msg_id] = true;
|
|
110
|
+
}
|
|
111
|
+
this.update();
|
|
112
|
+
}
|
|
113
|
+
expandAll() {
|
|
114
|
+
this.collapsed = {};
|
|
115
|
+
this.update();
|
|
116
|
+
}
|
|
117
|
+
onCollapse(msg) {
|
|
118
|
+
const id = msg.header.msg_id;
|
|
119
|
+
this.collapsed[id] = !this.collapsed[id];
|
|
120
|
+
this.update();
|
|
121
|
+
}
|
|
122
|
+
collapsed = {};
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* The main view for the kernel spy.
|
|
126
|
+
*/
|
|
127
|
+
export class KernelSpyView extends Widget {
|
|
128
|
+
constructor(kernel) {
|
|
129
|
+
super();
|
|
130
|
+
this._model = new KernelSpyModel(kernel);
|
|
131
|
+
this.addClass('dla-KernelInspector-view');
|
|
132
|
+
this.id = `kernelspy-${UUID.uuid4()}`;
|
|
133
|
+
this.title.label = 'Kernel spy';
|
|
134
|
+
this.title.closable = true;
|
|
135
|
+
this.title.icon = jsonIcon;
|
|
136
|
+
const layout = (this.layout = new BoxLayout());
|
|
137
|
+
this._toolbar = new Toolbar();
|
|
138
|
+
this._toolbar.addClass('dla-KernelInspector-toolbar');
|
|
139
|
+
this._messagelog = new MessageLogView(this._model);
|
|
140
|
+
layout.addWidget(this._toolbar);
|
|
141
|
+
layout.addWidget(this._messagelog);
|
|
142
|
+
BoxLayout.setStretch(this._toolbar, 0);
|
|
143
|
+
BoxLayout.setStretch(this._messagelog, 1);
|
|
144
|
+
this.collapseAllButton = new ToolbarButton({
|
|
145
|
+
onClick: () => {
|
|
146
|
+
this._messagelog.collapseAll();
|
|
147
|
+
},
|
|
148
|
+
className: 'dla-KernelInspector-collapseAll',
|
|
149
|
+
icon: caretRightIcon,
|
|
150
|
+
tooltip: 'Collapse all threads',
|
|
151
|
+
});
|
|
152
|
+
this._toolbar.addItem('collapse-all', this.collapseAllButton);
|
|
153
|
+
this.expandAllButton = new ToolbarButton({
|
|
154
|
+
onClick: () => {
|
|
155
|
+
this._messagelog.expandAll();
|
|
156
|
+
},
|
|
157
|
+
className: 'dla-KernelInspector-expandAll',
|
|
158
|
+
icon: caretDownIcon,
|
|
159
|
+
tooltip: 'Expand all threads',
|
|
160
|
+
});
|
|
161
|
+
this._toolbar.addItem('expand-all', this.expandAllButton);
|
|
162
|
+
this.clearAllButton = new ToolbarButton({
|
|
163
|
+
onClick: () => {
|
|
164
|
+
this._model.clear();
|
|
165
|
+
},
|
|
166
|
+
className: 'dla-KernelInspector-clearAll',
|
|
167
|
+
icon: closeIcon,
|
|
168
|
+
tooltip: 'Clear all threads',
|
|
169
|
+
});
|
|
170
|
+
this._toolbar.addItem('clear-all', this.clearAllButton);
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* Handle `'activate-request'` messages.
|
|
174
|
+
*/
|
|
175
|
+
onActivateRequest(msg) {
|
|
176
|
+
if (!this.node.contains(document.activeElement)) {
|
|
177
|
+
this.collapseAllButton.node.focus();
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
get model() {
|
|
181
|
+
return this._model;
|
|
182
|
+
}
|
|
183
|
+
_toolbar;
|
|
184
|
+
_messagelog;
|
|
185
|
+
_model;
|
|
186
|
+
clearAllButton;
|
|
187
|
+
expandAllButton;
|
|
188
|
+
collapseAllButton;
|
|
189
|
+
}
|
|
190
|
+
//# sourceMappingURL=widget.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../../src/components/kernel/inspector/widget.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
import { IRenderMimeRegistry } from '@jupyterlab/rendermime';
|
|
2
|
+
import { KernelMessage, Kernel as JupyterKernel } from '@jupyterlab/services';
|
|
3
|
+
import { IExecuteReplyMsg, IExecuteRequestMsg } from '@jupyterlab/services/lib/kernel/messages';
|
|
4
|
+
import { Signal, ISignal } from '@lumino/signaling';
|
|
5
|
+
import { DataModel } from '@lumino/datagrid';
|
|
6
|
+
import { IVariableInspector } from './tokens';
|
|
7
|
+
import { KernelConnector } from './kernelconnector';
|
|
8
|
+
declare abstract class AbstractHandler implements IVariableInspector.IInspectable {
|
|
9
|
+
private _isDisposed;
|
|
10
|
+
private _disposed;
|
|
11
|
+
protected _inspected: Signal<IVariableInspector.IInspectable, IVariableInspector.IVariableInspectorUpdate>;
|
|
12
|
+
protected _connector: KernelConnector;
|
|
13
|
+
protected _rendermime: IRenderMimeRegistry | null;
|
|
14
|
+
constructor(connector: KernelConnector);
|
|
15
|
+
get disposed(): ISignal<this, void>;
|
|
16
|
+
get isDisposed(): boolean;
|
|
17
|
+
get inspected(): ISignal<IVariableInspector.IInspectable, IVariableInspector.IVariableInspectorUpdate>;
|
|
18
|
+
get rendermime(): IRenderMimeRegistry | null;
|
|
19
|
+
abstract performInspection(): void;
|
|
20
|
+
abstract performMatrixInspection(varName: string, maxRows: number): Promise<DataModel>;
|
|
21
|
+
abstract performWidgetInspection(varName: string): JupyterKernel.IShellFuture<KernelMessage.IExecuteRequestMsg, KernelMessage.IExecuteReplyMsg>;
|
|
22
|
+
dispose(): void;
|
|
23
|
+
performDelete(varName: string): void;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* An object that handles code inspection.
|
|
27
|
+
*/
|
|
28
|
+
export declare class VariableInspectionHandler extends AbstractHandler {
|
|
29
|
+
private _initScript;
|
|
30
|
+
private _queryCommand;
|
|
31
|
+
private _matrixQueryCommand;
|
|
32
|
+
private _widgetQueryCommand;
|
|
33
|
+
private _deleteCommand;
|
|
34
|
+
private _ready;
|
|
35
|
+
private _id;
|
|
36
|
+
constructor(options: VariableInspectionHandler.IOptions);
|
|
37
|
+
get id(): string;
|
|
38
|
+
get ready(): Promise<void>;
|
|
39
|
+
/**
|
|
40
|
+
* Performs an inspection by sending an execute request with the query command to the kernel.
|
|
41
|
+
*/
|
|
42
|
+
performInspection(): void;
|
|
43
|
+
/**
|
|
44
|
+
* Performs an inspection of a Jupyter Widget
|
|
45
|
+
*/
|
|
46
|
+
performWidgetInspection(varName: string): JupyterKernel.IShellFuture<IExecuteRequestMsg, IExecuteReplyMsg>;
|
|
47
|
+
/**
|
|
48
|
+
* Performs an inspection of the specified matrix.
|
|
49
|
+
*/
|
|
50
|
+
performMatrixInspection(varName: string, maxRows?: number): Promise<DataModel>;
|
|
51
|
+
/**
|
|
52
|
+
* Send a kernel request to delete a variable from the global environment
|
|
53
|
+
*/
|
|
54
|
+
performDelete(varName: string): void;
|
|
55
|
+
/**
|
|
56
|
+
* Initializes the kernel by running the set up script located at _initScriptPath.
|
|
57
|
+
*/
|
|
58
|
+
private _initOnKernel;
|
|
59
|
+
private _handleQueryResponse;
|
|
60
|
+
private _queryCall;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* A name space for inspection handler statics.
|
|
64
|
+
*/
|
|
65
|
+
export declare namespace VariableInspectionHandler {
|
|
66
|
+
/**
|
|
67
|
+
* The instantiation options for an inspection handler.
|
|
68
|
+
*/
|
|
69
|
+
interface IOptions {
|
|
70
|
+
connector: KernelConnector;
|
|
71
|
+
rendermime?: IRenderMimeRegistry;
|
|
72
|
+
queryCommand: string;
|
|
73
|
+
matrixQueryCommand: string;
|
|
74
|
+
widgetQueryCommand: string;
|
|
75
|
+
deleteCommand: string;
|
|
76
|
+
initScript: string;
|
|
77
|
+
id: string;
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
export declare class DummyHandler extends AbstractHandler {
|
|
81
|
+
constructor(connector: KernelConnector);
|
|
82
|
+
performInspection(): void;
|
|
83
|
+
performMatrixInspection(varName: string, maxRows: number): Promise<DataModel>;
|
|
84
|
+
performWidgetInspection(varName: string): JupyterKernel.IShellFuture<KernelMessage.IExecuteRequestMsg, KernelMessage.IExecuteReplyMsg>;
|
|
85
|
+
}
|
|
86
|
+
export {};
|