@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.
Files changed (309) hide show
  1. package/lib/app/tabs/ComponentsTab.js +1 -1
  2. package/lib/app/tabs/ComponentsTab.js.map +1 -1
  3. package/lib/app/tabs/components/CellComponent.js +3 -3
  4. package/lib/app/tabs/components/CellComponent.js.map +1 -1
  5. package/lib/app/tabs/components/NotebookComponent.js +2 -2
  6. package/lib/app/tabs/components/NotebookComponent.js.map +1 -1
  7. package/lib/app/tabs/components/ViewerComponent.js +2 -2
  8. package/lib/app/tabs/components/ViewerComponent.js.map +1 -1
  9. package/lib/components/cell/Cell.d.ts +6 -0
  10. package/lib/components/cell/Cell.js +4 -31
  11. package/lib/components/cell/Cell.js.map +1 -1
  12. package/lib/components/cell/CellAdapter.js +1 -1
  13. package/lib/components/cell/CellAdapter.js.map +1 -1
  14. package/lib/components/cell/CellCommands.js +1 -1
  15. package/lib/components/codemirror/CodeMirrorEditor.js +1 -2
  16. package/lib/components/codemirror/CodeMirrorEditor.js.map +1 -1
  17. package/lib/components/codemirror/CodeMirrorOutputToolbar.js +1 -1
  18. package/lib/components/codemirror/CodeMirrorOutputToolbar.js.map +1 -1
  19. package/lib/components/commands/Commands.js +1 -1
  20. package/lib/components/commands/Commands.js.map +1 -1
  21. package/lib/components/console/Console.d.ts +12 -1
  22. package/lib/components/console/Console.js +11 -7
  23. package/lib/components/console/Console.js.map +1 -1
  24. package/lib/components/console/ConsoleAdapter.d.ts +23 -2
  25. package/lib/components/console/ConsoleAdapter.js +27 -13
  26. package/lib/components/console/ConsoleAdapter.js.map +1 -1
  27. package/lib/components/dialog/Dialog.js +1 -1
  28. package/lib/components/dialog/Dialog.js.map +1 -1
  29. package/lib/components/filemanager/FileManagerJupyterLab.js +1 -1
  30. package/lib/components/filemanager/FileManagerJupyterLab.js.map +1 -1
  31. package/lib/components/jupyterlab/JupyterLabApp.d.ts +1 -1
  32. package/lib/components/jupyterlab/JupyterLabAppCss.d.ts +1 -1
  33. package/lib/components/kernel/KernelActionMenu.d.ts +8 -0
  34. package/lib/components/kernel/KernelActionMenu.js +21 -0
  35. package/lib/components/kernel/KernelActionMenu.js.map +1 -0
  36. package/lib/components/kernel/KernelInspector.d.ts +6 -0
  37. package/lib/components/kernel/KernelInspector.js +31 -0
  38. package/lib/components/kernel/KernelInspector.js.map +1 -0
  39. package/lib/components/kernel/KernelLauncher.d.ts +2 -0
  40. package/lib/components/kernel/KernelLauncher.js +11 -0
  41. package/lib/components/kernel/KernelLauncher.js.map +1 -0
  42. package/lib/components/kernel/KernelLogs.d.ts +2 -0
  43. package/lib/components/kernel/KernelLogs.js +11 -0
  44. package/lib/components/kernel/KernelLogs.js.map +1 -0
  45. package/lib/components/kernel/KernelProgressBar.d.ts +2 -0
  46. package/lib/components/kernel/KernelProgressBar.js +26 -0
  47. package/lib/components/kernel/KernelProgressBar.js.map +1 -0
  48. package/lib/components/kernel/KernelSelector.d.ts +8 -0
  49. package/lib/components/kernel/KernelSelector.js +40 -0
  50. package/lib/components/kernel/KernelSelector.js.map +1 -0
  51. package/lib/components/kernel/KernelStatus.d.ts +27 -0
  52. package/lib/components/kernel/KernelStatus.js +67 -0
  53. package/lib/components/kernel/KernelStatus.js.map +1 -0
  54. package/lib/components/kernel/KernelUsage.d.ts +6 -0
  55. package/lib/components/kernel/KernelUsage.js +100 -0
  56. package/lib/components/kernel/KernelUsage.js.map +1 -0
  57. package/lib/components/kernel/KernelVariables.d.ts +6 -0
  58. package/lib/components/kernel/KernelVariables.js +23 -0
  59. package/lib/components/kernel/KernelVariables.js.map +1 -0
  60. package/lib/components/kernel/Kernels.d.ts +2 -0
  61. package/lib/components/kernel/Kernels.js +88 -0
  62. package/lib/components/kernel/Kernels.js.map +1 -0
  63. package/lib/components/kernel/index.d.ts +10 -0
  64. package/lib/components/kernel/index.js +16 -0
  65. package/lib/components/kernel/index.js.map +1 -0
  66. package/lib/components/kernel/inspector/kernelinspector.css +68 -0
  67. package/lib/components/kernel/inspector/model.d.ts +56 -0
  68. package/lib/components/kernel/inspector/model.js +201 -0
  69. package/lib/components/kernel/inspector/model.js.map +1 -0
  70. package/lib/components/kernel/inspector/widget.d.ts +40 -0
  71. package/lib/components/kernel/inspector/widget.js +190 -0
  72. package/lib/components/kernel/inspector/widget.js.map +1 -0
  73. package/lib/components/kernel/variables/handler.d.ts +86 -0
  74. package/lib/components/kernel/variables/handler.js +262 -0
  75. package/lib/components/kernel/variables/handler.js.map +1 -0
  76. package/lib/components/kernel/variables/inspectorscripts.d.ts +20 -0
  77. package/lib/components/kernel/variables/inspectorscripts.js +349 -0
  78. package/lib/components/kernel/variables/inspectorscripts.js.map +1 -0
  79. package/lib/components/kernel/variables/kernelconnector.d.ts +37 -0
  80. package/lib/components/kernel/variables/kernelconnector.js +76 -0
  81. package/lib/components/kernel/variables/kernelconnector.js.map +1 -0
  82. package/lib/components/kernel/variables/manager.d.ts +26 -0
  83. package/lib/components/kernel/variables/manager.js +70 -0
  84. package/lib/components/kernel/variables/manager.js.map +1 -0
  85. package/lib/components/kernel/variables/tokens.d.ts +48 -0
  86. package/lib/{jupyter/lab/JupyterLabTheme.js → components/kernel/variables/tokens.js} +1 -1
  87. package/lib/components/kernel/variables/tokens.js.map +1 -0
  88. package/lib/components/kernel/variables/variablesinspector.css +110 -0
  89. package/lib/components/kernel/variables/variablesinspector.d.ts +5 -0
  90. package/lib/components/kernel/variables/variablesinspector.js +85 -0
  91. package/lib/components/kernel/variables/variablesinspector.js.map +1 -0
  92. package/lib/components/kernel/variables/widget.d.ts +33 -0
  93. package/lib/components/kernel/variables/widget.js +391 -0
  94. package/lib/components/kernel/variables/widget.js.map +1 -0
  95. package/lib/components/lumino/Lumino.js.map +1 -0
  96. package/lib/components/lumino/LuminoBox.js.map +1 -0
  97. package/lib/components/lumino/LuminoDetached.js.map +1 -0
  98. package/lib/components/lumino/LuminoObservable.js.map +1 -0
  99. package/lib/components/lumino/LuminoRedux.js.map +1 -0
  100. package/lib/components/lumino/ReactPortalWidget.js.map +1 -0
  101. package/lib/components/notebook/Notebook.js +11 -7
  102. package/lib/components/notebook/Notebook.js.map +1 -1
  103. package/lib/components/notebook/NotebookAdapter.d.ts +3 -1
  104. package/lib/components/notebook/NotebookAdapter.js +43 -39
  105. package/lib/components/notebook/NotebookAdapter.js.map +1 -1
  106. package/lib/components/notebook/NotebookCommands.d.ts +23 -21
  107. package/lib/components/notebook/NotebookCommands.js +51 -26
  108. package/lib/components/notebook/NotebookCommands.js.map +1 -1
  109. package/lib/components/notebook/cell/metadata/CellMetadataEditor.js +1 -1
  110. package/lib/components/notebook/cell/metadata/CellMetadataEditor.js.map +1 -1
  111. package/lib/components/notebook/cell/metadata/NbGraderCells.js +10 -10
  112. package/lib/components/notebook/cell/prompt/Countdown.js +1 -1
  113. package/lib/components/notebook/cell/prompt/Countdown.js.map +1 -1
  114. package/lib/components/notebook/cell/prompt/CountdownOutputPrompt.js.map +1 -1
  115. package/lib/components/notebook/cell/sidebar/CellSidebarWidget.d.ts +1 -1
  116. package/lib/components/notebook/cell/sidebar/CellSidebarWidget.js +1 -1
  117. package/lib/components/notebook/cell/sidebar/CellSidebarWidget.js.map +1 -1
  118. package/lib/components/notebook/marked/marked.js +1 -1
  119. package/lib/components/output/Output.d.ts +11 -10
  120. package/lib/components/output/Output.js +32 -57
  121. package/lib/components/output/Output.js.map +1 -1
  122. package/lib/components/output/OutputAdapter.d.ts +1 -1
  123. package/lib/components/output/OutputAdapter.js +14 -12
  124. package/lib/components/output/OutputAdapter.js.map +1 -1
  125. package/lib/components/output/OutputRenderer.js +4 -2
  126. package/lib/components/output/OutputRenderer.js.map +1 -1
  127. package/lib/components/output/OutputZustand.d.ts +5 -0
  128. package/lib/components/output/OutputZustand.js +5 -0
  129. package/lib/components/output/OutputZustand.js.map +1 -1
  130. package/lib/components/output/ipywidgets/IPyWidgetsAttached.js +1 -1
  131. package/lib/components/output/ipywidgets/IPyWidgetsAttached.js.map +1 -1
  132. package/lib/components/output/ipywidgets/IPyWidgetsViewManager.js +7 -6
  133. package/lib/components/output/ipywidgets/IPyWidgetsViewManager.js.map +1 -1
  134. package/lib/components/settings/Settings.js +1 -1
  135. package/lib/components/settings/Settings.js.map +1 -1
  136. package/lib/components/terminal/Terminal.d.ts +4 -0
  137. package/lib/components/terminal/Terminal.js +1 -1
  138. package/lib/components/terminal/Terminal.js.map +1 -1
  139. package/lib/components/terminal/TerminalAdapter.js +12 -3
  140. package/lib/components/terminal/TerminalAdapter.js.map +1 -1
  141. package/lib/components/viewer/Viewer.d.ts +2 -1
  142. package/lib/components/viewer/Viewer.js +16 -3
  143. package/lib/components/viewer/Viewer.js.map +1 -1
  144. package/lib/components/viewer/input/CodemirrorViewer.js +2 -2
  145. package/lib/components/viewer/input/CodemirrorViewer.js.map +1 -1
  146. package/lib/components/viewer/input/InputViewer.js +1 -4
  147. package/lib/components/viewer/input/InputViewer.js.map +1 -1
  148. package/lib/components/viewer/output/OutputAdapter.js +2 -2
  149. package/lib/components/viewer/output/OutputAdapter.js.map +1 -1
  150. package/lib/components/viewer/output/OutputViewer.js +1 -1
  151. package/lib/components/viewer/output/OutputViewer.js.map +1 -1
  152. package/lib/examples/All.js +5 -4
  153. package/lib/examples/All.js.map +1 -1
  154. package/lib/examples/Bqplot.js +7 -1
  155. package/lib/examples/Bqplot.js.map +1 -1
  156. package/lib/examples/CellLite.js +16 -0
  157. package/lib/examples/CellLite.js.map +1 -0
  158. package/lib/examples/Console.js +1 -1
  159. package/lib/examples/Console.js.map +1 -1
  160. package/lib/examples/ConsoleLite.js +3 -1
  161. package/lib/examples/ConsoleLite.js.map +1 -1
  162. package/lib/examples/Deno.js +18 -0
  163. package/lib/examples/Deno.js.map +1 -0
  164. package/lib/examples/IPyLeaflet.js +7 -3
  165. package/lib/examples/IPyLeaflet.js.map +1 -1
  166. package/lib/examples/IPyReact.js +7 -3
  167. package/lib/examples/IPyReact.js.map +1 -1
  168. package/lib/examples/JupyterLabHeadlessApp.js +1 -1
  169. package/lib/examples/JupyterLabHeadlessApp.js.map +1 -1
  170. package/lib/examples/KernelExecResult.d.ts +1 -0
  171. package/lib/examples/KernelExecResult.js +40 -0
  172. package/lib/examples/KernelExecResult.js.map +1 -0
  173. package/lib/examples/KernelExecutor.js +20 -10
  174. package/lib/examples/KernelExecutor.js.map +1 -1
  175. package/lib/examples/Kernels.d.ts +1 -0
  176. package/lib/examples/Kernels.js +78 -0
  177. package/lib/examples/Kernels.js.map +1 -0
  178. package/lib/examples/Lumino.js +1 -1
  179. package/lib/examples/Lumino.js.map +1 -1
  180. package/lib/examples/Matplotlib.js +11 -7
  181. package/lib/examples/Matplotlib.js.map +1 -1
  182. package/lib/examples/NotebookCellSidebar.js +9 -5
  183. package/lib/examples/NotebookCellSidebar.js.map +1 -1
  184. package/lib/examples/NotebookColorMode.js +18 -12
  185. package/lib/examples/NotebookColorMode.js.map +1 -1
  186. package/lib/examples/NotebookExternalContent.js +9 -5
  187. package/lib/examples/NotebookExternalContent.js.map +1 -1
  188. package/lib/examples/NotebookInit.js +8 -4
  189. package/lib/examples/NotebookInit.js.map +1 -1
  190. package/lib/examples/NotebookKernelChange.js +4 -3
  191. package/lib/examples/NotebookKernelChange.js.map +1 -1
  192. package/lib/examples/NotebookLite.d.ts +1 -0
  193. package/lib/examples/NotebookLite.js +20 -0
  194. package/lib/examples/NotebookLite.js.map +1 -0
  195. package/lib/examples/NotebookNbFormat.js +9 -5
  196. package/lib/examples/NotebookNbFormat.js.map +1 -1
  197. package/lib/examples/NotebookNbFormatChange.d.ts +1 -0
  198. package/lib/examples/{NotebookModelChange.js → NotebookNbFormatChange.js} +12 -8
  199. package/lib/examples/NotebookNbFormatChange.js.map +1 -0
  200. package/lib/examples/NotebookPath.js +9 -5
  201. package/lib/examples/NotebookPath.js.map +1 -1
  202. package/lib/examples/NotebookPathChange.js +9 -5
  203. package/lib/examples/NotebookPathChange.js.map +1 -1
  204. package/lib/examples/NotebookSkeleton.d.ts +1 -0
  205. package/lib/examples/NotebookSkeleton.js +28 -0
  206. package/lib/examples/NotebookSkeleton.js.map +1 -0
  207. package/lib/examples/NotebookTheme.js +20 -13
  208. package/lib/examples/NotebookTheme.js.map +1 -1
  209. package/lib/examples/NotebookUnmount.js +5 -4
  210. package/lib/examples/NotebookUnmount.js.map +1 -1
  211. package/lib/examples/ObservableHQ.d.ts +1 -0
  212. package/lib/examples/ObservableHQ.js +18 -0
  213. package/lib/examples/ObservableHQ.js.map +1 -0
  214. package/lib/examples/Outputs.js +2 -2
  215. package/lib/examples/Outputs.js.map +1 -1
  216. package/lib/examples/RunningSessions.js +1 -1
  217. package/lib/examples/RunningSessions.js.map +1 -1
  218. package/lib/examples/Viewer.js +6 -68
  219. package/lib/examples/Viewer.js.map +1 -1
  220. package/lib/examples/lumino/LuminoWidget.js +3 -3
  221. package/lib/examples/lumino/LuminoWidget.js.map +1 -1
  222. package/lib/examples/toolbars/NotebookToolbar.js +7 -4
  223. package/lib/examples/toolbars/NotebookToolbar.js.map +1 -1
  224. package/lib/examples/toolbars/NotebookToolbarAutoSave.js +1 -1
  225. package/lib/examples/toolbars/NotebookToolbarAutoSave.js.map +1 -1
  226. package/lib/index.d.ts +33 -24
  227. package/lib/index.js +53 -36
  228. package/lib/index.js.map +1 -1
  229. package/lib/jupyter/Jupyter.d.ts +6 -1090
  230. package/lib/jupyter/Jupyter.js +23 -18
  231. package/lib/jupyter/Jupyter.js.map +1 -1
  232. package/lib/jupyter/JupyterConfig.js +1 -1
  233. package/lib/jupyter/JupyterConfig.js.map +1 -1
  234. package/lib/jupyter/JupyterContext.d.ts +118 -23
  235. package/lib/jupyter/JupyterContext.js +115 -100
  236. package/lib/jupyter/JupyterContext.js.map +1 -1
  237. package/lib/jupyter/ipywidgets/cache/semvercache.d.ts +3 -1
  238. package/lib/jupyter/ipywidgets/cache/semvercache.js.map +1 -1
  239. package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.d.ts +5 -3
  240. package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.js +14 -14
  241. package/lib/jupyter/ipywidgets/classic/IPyWidgetsClassicManager.js.map +1 -1
  242. package/lib/jupyter/ipywidgets/lab/manager.js +4 -5
  243. package/lib/jupyter/ipywidgets/lab/manager.js.map +1 -1
  244. package/lib/jupyter/ipywidgets/lab/plugin.js +2 -2
  245. package/lib/jupyter/ipywidgets/lab/plugin.js.map +1 -1
  246. package/lib/jupyter/ipywidgets/lab/renderer.js.map +1 -1
  247. package/lib/jupyter/ipywidgets/plotly/Figure.js +180 -169
  248. package/lib/jupyter/ipywidgets/plotly/Figure.js.map +1 -1
  249. package/lib/jupyter/kernel/Kernel.d.ts +69 -19
  250. package/lib/jupyter/kernel/Kernel.js +62 -44
  251. package/lib/jupyter/kernel/Kernel.js.map +1 -1
  252. package/lib/jupyter/kernel/KernelExecutor.d.ts +16 -6
  253. package/lib/jupyter/kernel/KernelExecutor.js +61 -27
  254. package/lib/jupyter/kernel/KernelExecutor.js.map +1 -1
  255. package/lib/jupyter/kernel/index.d.ts +2 -0
  256. package/lib/jupyter/kernel/index.js +8 -0
  257. package/lib/jupyter/kernel/index.js.map +1 -0
  258. package/lib/jupyter/lab/JupyterLabColorMode.js +7 -0
  259. package/lib/jupyter/lab/JupyterLabColorMode.js.map +1 -0
  260. package/lib/jupyter/lab/JupyterLabCss.d.ts +5 -2
  261. package/lib/jupyter/lab/JupyterLabCss.js +35 -7
  262. package/lib/jupyter/lab/JupyterLabCss.js.map +1 -1
  263. package/lib/jupyter/lab/index.d.ts +2 -2
  264. package/lib/jupyter/lab/index.js +1 -2
  265. package/lib/jupyter/lab/index.js.map +1 -1
  266. package/lib/jupyter/lab/notebook/content/CountdownContentFactory.d.ts +3 -8
  267. package/lib/jupyter/lab/notebook/content/CountdownContentFactory.js +6 -12
  268. package/lib/jupyter/lab/notebook/content/CountdownContentFactory.js.map +1 -1
  269. package/lib/jupyter/lab/notebook/content/plugin.js +2 -2
  270. package/lib/jupyter/lab/notebook/content/plugin.js.map +1 -1
  271. package/lib/jupyter/lite/LiteServer.d.ts +11 -2
  272. package/lib/jupyter/lite/LiteServer.js +41 -66
  273. package/lib/jupyter/lite/LiteServer.js.map +1 -1
  274. package/lib/jupyter/renderers/plotly/PlotlyRenderer.js +4 -4
  275. package/lib/jupyter/renderers/plotly/PlotlyRenderer.js.map +1 -1
  276. package/lib/jupyter/theme.js +3 -2
  277. package/lib/jupyter/theme.js.map +1 -1
  278. package/lib/utils/Utils.d.ts +3 -2
  279. package/lib/utils/Utils.js +45 -1
  280. package/lib/utils/Utils.js.map +1 -1
  281. package/lib/utils/index.d.ts +1 -0
  282. package/lib/utils/index.js +2 -0
  283. package/lib/utils/index.js.map +1 -0
  284. package/package.json +170 -86
  285. package/lib/examples/NotebookModelChange.js.map +0 -1
  286. package/lib/examples/ViewerFile.js +0 -19
  287. package/lib/examples/ViewerFile.js.map +0 -1
  288. package/lib/jupyter/lab/JupyterLabTheme.js.map +0 -1
  289. package/lib/jupyter/lumino/Lumino.js.map +0 -1
  290. package/lib/jupyter/lumino/LuminoBox.js.map +0 -1
  291. package/lib/jupyter/lumino/LuminoDetached.js.map +0 -1
  292. package/lib/jupyter/lumino/LuminoObservable.js.map +0 -1
  293. package/lib/jupyter/lumino/LuminoRedux.js.map +0 -1
  294. package/lib/jupyter/lumino/ReactPortalWidget.js.map +0 -1
  295. /package/lib/{jupyter → components}/lumino/Lumino.d.ts +0 -0
  296. /package/lib/{jupyter → components}/lumino/Lumino.js +0 -0
  297. /package/lib/{jupyter → components}/lumino/LuminoBox.d.ts +0 -0
  298. /package/lib/{jupyter → components}/lumino/LuminoBox.js +0 -0
  299. /package/lib/{jupyter → components}/lumino/LuminoDetached.d.ts +0 -0
  300. /package/lib/{jupyter → components}/lumino/LuminoDetached.js +0 -0
  301. /package/lib/{jupyter → components}/lumino/LuminoObservable.d.ts +0 -0
  302. /package/lib/{jupyter → components}/lumino/LuminoObservable.js +0 -0
  303. /package/lib/{jupyter → components}/lumino/LuminoRedux.d.ts +0 -0
  304. /package/lib/{jupyter → components}/lumino/LuminoRedux.js +0 -0
  305. /package/lib/{jupyter → components}/lumino/ReactPortalWidget.d.ts +0 -0
  306. /package/lib/{jupyter → components}/lumino/ReactPortalWidget.js +0 -0
  307. /package/lib/examples/{NotebookModelChange.d.ts → CellLite.d.ts} +0 -0
  308. /package/lib/examples/{ViewerFile.d.ts → Deno.d.ts} +0 -0
  309. /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":"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"}
@@ -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":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE5E,OAAO,EACL,aAAa,EACb,cAAc,EACd,SAAS,EACT,QAAQ,GACT,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAC;AAEzC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EACL,eAAe,EACf,WAAW,GAEZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzD,OAAO,uBAAuB,CAAC;AAE/B,MAAM,KAAK,GAAG;IACZ,gBAAgB,EAAE,4BAA4B;IAC9C,cAAc,EAAE,0BAA0B;IAC1C,gBAAgB,EAAE,4BAA4B;IAE9C,qBAAqB,EAAE,yBAAyB;IAChD,UAAU,EAAE,+BAA+B;IAE3C,iBAAiB,EAAE,yCAAyC;IAC5D,uBAAuB,EAAE,uCAAuC;IAChE,4BAA4B,EAAE,uCAAuC;IACrE,yBAAyB,EAAE,sCAAsC;IACjE,yBAAyB,EAAE,sCAAsC;IACjE,yBAAyB,EAAE,wCAAwC;IACnE,yBAAyB,EAAE,sCAAsC;IACjE,0BAA0B,EAAE,wCAAwC;IACpE,mCAAmC,EAAE,oCAAoC;IAEzE,WAAW,EAAE,+BAA+B;IAC5C,kBAAkB,EAAE,CAAC;IACrB,eAAe,EAAE,EAAE;IAEnB,oBAAoB,EAAE,4BAA4B;IAClD,kBAAkB,EAAE,0BAA0B;IAC9C,oBAAoB,EAAE,4BAA4B;IAClD,qBAAqB,EAAE,EAAE;CAC1B,CAAC;AAEF,SAAS,eAAe,CAAC,IAAyB;IAChD,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;IACpD,IAAI,KAAK,KAAK,CAAC,EAAE;QACf,OAAO,CACL,KAAC,WAAW,IAEV,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,IAH3B,YAAY,CAIjB,CACH,CAAC;KACH;IACD,MAAM,GAAG,GAAG,IAAyC,CAAC;IACtD,OAAO,yBAA0B,GAAG,CAAC,MAAM,CAAC,MAAM,IAAhC,YAAY,CAA4B,CAAC;AAC7D,CAAC;AAED,SAAS,OAAO,CAAC,KAA0B;IACzC,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC;IAC1B,MAAM,KAAK,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;IAChC,MAAM,gBAAgB,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,CAAC;IACnE,MAAM,aAAa,GAAG,KAAK,CAAC,WAAW;QACrC,CAAC,CAAC,KAAK,CAAC,SAAS;YACf,CAAC,CAAC,cAAc;YAChB,CAAC,CAAC,aAAa;QACjB,CAAC,CAAC,IAAI,CAAC;IACT,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,OAAO;QACL,cAEE,SAAS,EAAC,gCAAgC,EAC1C,OAAO,EAAE,GAAG,EAAE;gBACZ,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAClC,CAAC,YAED,eAAK,KAAK,EAAE,EAAE,WAAW,EAAE,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,aAC3C,iBACE,SAAS,EAAE,uCAAuC,gBAAgB,IAAI,gBAAgB,EAAE,EACxF,QAAQ,EAAE,QAAQ,YAEjB,aAAa,IAAI,CAChB,KAAC,aAAa,CAAC,KAAK,IAAC,SAAS,EAAE,qBAAqB,GAAI,CAC1D,GACM,EACT,gBAAM,SAAS,EAAC,iCAAiC,aAC9C,GAAG,CAAC,OAAO,OAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,IAC7B,IACH,IAlBD,cAAc,KAAK,EAAE,CAmBtB;QACN,cAA8B,SAAS,EAAC,6BAA6B,YACnE,KAAC,eAAe,IACd,IAAI,EAAE,GAAG,EACT,KAAK,EAAE,KAAY,EACnB,YAAY,EAAE,eAAe,GAC7B,IALM,WAAW,KAAK,EAAE,CAMtB;KACP,CAAC;AACJ,CAAC;AAYD;;GAEG;AACH,MAAM,OAAO,cAAe,SAAQ,YAA4B;IAC9D,YAAY,KAAqB;QAC/B,KAAK,CAAC,KAAK,CAAC,CAAC;QACb,IAAI,CAAC,EAAE,GAAG,wBAAwB,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACjD,IAAI,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC;IAClD,CAAC;IAED;;OAEG;IACO,MAAM;QACd,MAAM,KAAK,GAAG,IAAI,CAAC,KAAM,CAAC;QAC1B,MAAM,QAAQ,GAA8B,EAAE,CAAC;QAE/C,QAAQ,CAAC,IAAI,CACX,eAA0B,SAAS,EAAC,+BAA+B,yBAAzD,eAAe,CAElB,EACP,eAA4B,SAAS,EAAC,+BAA+B,0BAA3D,iBAAiB,CAEpB,EACP,eAEE,SAAS,EAAC,2DAA2D,IADjE,gBAAgB,CAEpB,CACH,CAAC;QAEF,MAAM,OAAO,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAE/D,IAAI,KAAK,GAAG,IAAI,CAAC;QACjB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;YAC5B,IAAI,MAAM,EAAE;gBACV,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;gBACvC,IAAI,KAAK,KAAK,CAAC,EAAE;oBACf,IAAI,KAAK,EAAE;wBACT,KAAK,GAAG,KAAK,CAAC;qBACf;yBAAM;wBACL,qCAAqC;wBACrC,QAAQ,CAAC,IAAI,CACX,eAEE,SAAS,EAAC,6BAA6B,IADlC,YAAY,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAEhD,CACH,CAAC;qBACH;iBACF;gBACD,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBAChE,QAAQ,CAAC,IAAI,CACX,GAAG,OAAO,CAAC;oBACT,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG;oBACxB,KAAK;oBACL,SAAS;oBACT,WAAW,EAAE,MAAM,CAAC,WAAW;oBAC/B,UAAU,EAAE,OAAO,CAAC,EAAE;wBACpB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;oBAC3B,CAAC;iBACF,CAAC,CACH,CAAC;aACH;SACF;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,WAAW;QACT,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAM,CAAC,GAAG,EAAE;YAClC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;SAC/C;QACD,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,SAAS;QACP,IAAI,CAAC,SAAS,GAAG,EAAE,CAAC;QACpB,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAED,UAAU,CAAC,GAA2B;QACpC,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACzC,IAAI,CAAC,MAAM,EAAE,CAAC;IAChB,CAAC;IAES,SAAS,GAA+B,EAAE,CAAC;CACtD;AAED;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,MAAM;IACvC,YAAY,MAAwC;QAClD,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;QAC1C,IAAI,CAAC,EAAE,GAAG,aAAa,IAAI,CAAC,KAAK,EAAE,EAAE,CAAC;QACtC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,YAAY,CAAC;QAChC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QAC3B,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;QAE3B,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,EAAE,CAAC,CAAC;QAE/C,IAAI,CAAC,QAAQ,GAAG,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;QAEtD,IAAI,CAAC,WAAW,GAAG,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAEnD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAChC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAEnC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACvC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAE1C,IAAI,CAAC,iBAAiB,GAAG,IAAI,aAAa,CAAC;YACzC,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;YACjC,CAAC;YACD,SAAS,EAAE,iCAAiC;YAC5C,IAAI,EAAE,cAAc;YACpB,OAAO,EAAE,sBAAsB;SAChC,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,cAAc,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAE9D,IAAI,CAAC,eAAe,GAAG,IAAI,aAAa,CAAC;YACvC,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC/B,CAAC;YACD,SAAS,EAAE,+BAA+B;YAC1C,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,oBAAoB;SAC9B,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;QAE1D,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,CAAC;YACtC,OAAO,EAAE,GAAG,EAAE;gBACZ,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;YACtB,CAAC;YACD,SAAS,EAAE,8BAA8B;YACzC,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,mBAAmB;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACO,iBAAiB,CAAC,GAAkB;QAC5C,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;YAC/C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;SACrC;IACH,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAEO,QAAQ,CAAkB;IAC1B,WAAW,CAAiB;IAE5B,MAAM,CAAiB;IAErB,cAAc,CAAgB;IAC9B,eAAe,CAAgB;IAC/B,iBAAiB,CAAgB;CAC5C"}
@@ -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 {};