@datalayer/jupyter-react 0.8.3 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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
@@ -5,82 +5,108 @@
5
5
  */
6
6
  import { Signal } from '@lumino/signaling';
7
7
  import { OutputAreaModel } from '@jupyterlab/outputarea';
8
+ import { outputsAsString } from '../../utils/Utils';
8
9
  export class KernelExecutor {
9
10
  _kernelConnection;
10
11
  _outputs;
11
12
  _outputsChanged = new Signal(this);
12
- _outputAreaModel;
13
- _outputAreaModelChanged = new Signal(this);
13
+ _model;
14
+ _modelChanged = new Signal(this);
14
15
  _executeReplyReceived = new Signal(this);
15
16
  _future;
17
+ _shellMessageHooks;
16
18
  _executed;
17
19
  _executedResolve;
18
20
  constructor(kernelConnection) {
19
21
  this._kernelConnection = kernelConnection;
20
22
  this._outputs = [];
21
- this._outputAreaModel = new OutputAreaModel();
23
+ this._model = new OutputAreaModel();
22
24
  this._executed = new Promise((resolve, _) => {
23
25
  this._executedResolve = resolve;
24
26
  });
25
27
  }
26
- execute(code) {
28
+ execute(code, iopubMessageHooks = [], shellMessageHooks = []) {
27
29
  const future = this._kernelConnection.requestExecute({
28
30
  code,
29
31
  });
32
+ iopubMessageHooks.forEach(hook => future.registerMessageHook(hook));
33
+ this._shellMessageHooks = shellMessageHooks;
30
34
  this.future = future;
31
- return future;
35
+ return {
36
+ future,
37
+ executor: this,
38
+ };
32
39
  }
33
40
  _onIOPub = (message) => {
41
+ if (this._future?.msg.header.msg_id !== message.parent_header.msg_id) {
42
+ return;
43
+ }
34
44
  const messageType = message.header.msg_type;
35
45
  const output = { ...message.content, output_type: messageType };
36
46
  switch (messageType) {
37
47
  case 'execute_result':
38
48
  this._outputs.push(message.content);
39
49
  this._outputsChanged.emit(this._outputs);
40
- this._outputAreaModel.add(output);
41
- this._outputAreaModelChanged.emit(this._outputAreaModel);
50
+ this._model.add(output);
51
+ this._modelChanged.emit(this._model);
42
52
  break;
43
53
  case 'stream':
44
54
  this._outputs.push(message.content);
45
55
  this._outputsChanged.emit(this._outputs);
46
- this._outputAreaModel.add(output);
47
- this._outputAreaModelChanged.emit(this._outputAreaModel);
56
+ this._model.add(output);
57
+ this._modelChanged.emit(this._model);
48
58
  break;
49
59
  case 'display_data':
50
60
  this._outputs.push(message.content);
51
61
  this._outputsChanged.emit(this._outputs);
52
- this._outputAreaModel.add(output);
53
- this._outputAreaModelChanged.emit(this._outputAreaModel);
62
+ this._model.add(output);
63
+ this._modelChanged.emit(this._model);
54
64
  break;
55
65
  case 'update_display_data':
56
66
  this._outputs.push(message.content);
57
67
  this._outputsChanged.emit(this._outputs);
58
- this._outputAreaModel.add(output);
59
- this._outputAreaModelChanged.emit(this._outputAreaModel);
68
+ this._model.add(output);
69
+ this._modelChanged.emit(this._model);
70
+ break;
71
+ case 'status':
72
+ {
73
+ // execution_state: 'busy' 'starting' 'terminating' 'restarting' 'initializing' 'connecting' 'disconnected' 'dead' 'unknown' 'idle'
74
+ const executionState = message.content.execution_state;
75
+ executionState;
76
+ }
60
77
  break;
61
78
  default:
62
79
  break;
63
80
  }
64
81
  };
65
82
  _onReply = (message) => {
83
+ if (this._future?.msg.header.msg_id !== message.parent_header.msg_id) {
84
+ return;
85
+ }
66
86
  const messageType = message.header.msg_type;
87
+ this._shellMessageHooks.forEach(hook => hook(message));
67
88
  switch (messageType) {
68
89
  case 'execute_reply':
69
- const output = {
70
- output_type: 'display_data',
71
- data: message.content.data,
72
- metadata: {}
73
- };
74
- this._outputs.push(message.content);
75
- this._outputsChanged.emit(this._outputs);
76
- this._outputAreaModel.add(output);
77
- this.executeReplyReceived.emit(this._outputAreaModel);
78
- this._executedResolve();
90
+ {
91
+ const output = {
92
+ output_type: 'display_data',
93
+ data: message.content.data,
94
+ metadata: {},
95
+ };
96
+ this._outputs.push(message.content);
97
+ this._outputsChanged.emit(this._outputs);
98
+ this._model.add(output);
99
+ this.executeReplyReceived.emit(this._model);
100
+ this._executedResolve(this._model);
101
+ }
79
102
  break;
80
103
  default:
81
104
  break;
82
105
  }
83
106
  };
107
+ registerIOPubMessageHook = (msg) => {
108
+ this._future?.registerMessageHook(msg);
109
+ };
84
110
  get executed() {
85
111
  return this._executed;
86
112
  }
@@ -95,21 +121,29 @@ export class KernelExecutor {
95
121
  value.onIOPub = this._onIOPub;
96
122
  value.onReply = this._onReply;
97
123
  }
124
+ get result() {
125
+ return this.executed.then(model => {
126
+ return outputsAsString(model.toJSON());
127
+ });
128
+ }
98
129
  get outputs() {
99
130
  return this._outputs;
100
131
  }
101
132
  get outputsChanged() {
102
133
  return this._outputsChanged;
103
134
  }
104
- get outputAreaModel() {
105
- return this._outputAreaModel;
135
+ get model() {
136
+ return this._model;
106
137
  }
107
- get outputAreaModelChanged() {
108
- return this._outputAreaModelChanged;
138
+ get modelChanged() {
139
+ return this._modelChanged;
109
140
  }
110
141
  get executeReplyReceived() {
111
142
  return this._executeReplyReceived;
112
143
  }
144
+ get done() {
145
+ return this._future?.done;
146
+ }
113
147
  }
114
148
  export default KernelExecutor;
115
149
  //# sourceMappingURL=KernelExecutor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"KernelExecutor.js","sourceRoot":"","sources":["../../../src/jupyter/kernel/KernelExecutor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"KernelExecutor.js","sourceRoot":"","sources":["../../../src/jupyter/kernel/KernelExecutor.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAS3C,OAAO,EAAoB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE3E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAiBpD,MAAM,OAAO,cAAc;IACjB,iBAAiB,CAA2B;IAC5C,QAAQ,CAAY;IACpB,eAAe,GAAG,IAAI,MAAM,CAA4B,IAAI,CAAC,CAAC;IAC9D,MAAM,CAAmB;IACzB,aAAa,GAAG,IAAI,MAAM,CAAmC,IAAI,CAAC,CAAC;IACnE,qBAAqB,GAAG,IAAI,MAAM,CACxC,IAAI,CACL,CAAC;IACM,OAAO,CAGb;IACM,kBAAkB,CAA0B;IAC5C,SAAS,CAA4B;IACrC,gBAAgB,CAAoC;IAE5D,YAAY,gBAA0C;QACpD,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,IAAI,OAAO,CAAmB,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE;YAC5D,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAClC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,CACL,IAAY,EACZ,oBAAwC,EAAE,EAC1C,oBAAwC,EAAE;QAE1C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC;YACnD,IAAI;SACL,CAAC,CAAC;QACH,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC;QACpE,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;QAC5C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,OAAO;YACL,MAAM;YACN,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAEO,QAAQ,GAAG,CAAC,OAAoC,EAAQ,EAAE;QAChE,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;YACpE,OAAO;SACR;QACD,MAAM,WAAW,GAAmC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC5E,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;QAChE,QAAQ,WAAW,EAAE;YACnB,KAAK,gBAAgB;gBACnB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAyB,CAAC,CAAC;gBACtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,QAAQ;gBACX,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAkB,CAAC,CAAC;gBAC/C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,cAAc;gBACjB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAuB,CAAC,CAAC;gBACpD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,qBAAqB;gBACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAyB,CAAC,CAAC;gBACtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACxB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACrC,MAAM;YACR,KAAK,QAAQ;gBACX;oBACE,mIAAmI;oBACnI,MAAM,cAAc,GAAI,OAAO,CAAC,OAAe,CAAC,eAAe,CAAC;oBAChE,cAAc,CAAC;iBAChB;gBACD,MAAM;YACR;gBACE,MAAM;SACT;IACH,CAAC,CAAC;IAEM,QAAQ,GAAG,CAAC,OAAoC,EAAQ,EAAE;QAChE,IAAI,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC,MAAM,EAAE;YACpE,OAAO;SACR;QACD,MAAM,WAAW,GAAmC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;QAC5E,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;QACvD,QAAQ,WAAW,EAAE;YACnB,KAAK,eAAe;gBAClB;oBACE,MAAM,MAAM,GAAY;wBACtB,WAAW,EAAE,cAAc;wBAC3B,IAAI,EAAG,OAAO,CAAC,OAA0B,CAAC,IAAmB;wBAC7D,QAAQ,EAAE,EAAE;qBACb,CAAC;oBACF,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,OAAyB,CAAC,CAAC;oBACtD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACzC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACxB,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBAC5C,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;iBACpC;gBACD,MAAM;YACR;gBACE,MAAM;SACT;IACH,CAAC,CAAC;IAEF,wBAAwB,GAAG,CAAC,GAAqB,EAAE,EAAE;QACnD,IAAI,CAAC,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IACzC,CAAC,CAAC;IAEF,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAC;IACxB,CAAC;IAED,IAAI,MAAM;QAMR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED,IAAI,MAAM,CACR,KAKa;QAEb,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,KAAK,EAAE;YACV,OAAO;SACR;QACD,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC9B,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC;IAChC,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAChC,OAAO,eAAe,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,IAAI,oBAAoB;QACtB,OAAO,IAAI,CAAC,qBAAqB,CAAC;IACpC,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,OAAO,EAAE,IAA+C,CAAC;IACvE,CAAC;CACF;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Kernel';
2
+ export * from './KernelExecutor';
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Copyright (c) 2021-2023 Datalayer, Inc.
3
+ *
4
+ * MIT License
5
+ */
6
+ export * from './Kernel';
7
+ export * from './KernelExecutor';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jupyter/kernel/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,7 @@
1
+ /*
2
+ * Copyright (c) 2021-2023 Datalayer, Inc.
3
+ *
4
+ * MIT License
5
+ */
6
+ export {};
7
+ //# sourceMappingURL=JupyterLabColorMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JupyterLabColorMode.js","sourceRoot":"","sources":["../../../src/jupyter/lab/JupyterLabColorMode.tsx"],"names":[],"mappings":"AAAA;;;;GAIG"}
@@ -1,11 +1,14 @@
1
- import { ColorMode } from './JupyterLabTheme';
1
+ import { ColorMode } from './JupyterLabColorMode';
2
2
  type Props = {
3
3
  colorMode: ColorMode;
4
4
  };
5
+ /**
6
+ * Components loading the JupyterLab CSS stylesheets.
7
+ */
5
8
  export declare const JupyterLabCss: {
6
9
  (props: Props): import("react/jsx-runtime").JSX.Element;
7
10
  defaultProps: {
8
- theme: string;
11
+ colorMode: string;
9
12
  };
10
13
  };
11
14
  export default JupyterLabCss;
@@ -5,9 +5,22 @@ import { jsx as _jsx } from "react/jsx-runtime";
5
5
  * MIT License
6
6
  */
7
7
  import { useEffect } from 'react';
8
+ const DATASET_LAB_THEME = 'data-lab-theme';
9
+ /**
10
+ * Global flag avoiding loading styles more than once.
11
+ */
12
+ let isLoaded = false;
13
+ /**
14
+ * Components loading the JupyterLab CSS stylesheets.
15
+ */
8
16
  export const JupyterLabCss = (props) => {
9
17
  const { colorMode } = props;
10
18
  useEffect(() => {
19
+ if (isLoaded) {
20
+ // no-op
21
+ return;
22
+ }
23
+ isLoaded = true;
11
24
  import('@jupyterlab/apputils/style/index.js');
12
25
  import('@jupyterlab/rendermime/style/index.js');
13
26
  import('@jupyterlab/codeeditor/style/index.js');
@@ -22,25 +35,40 @@ export const JupyterLabCss = (props) => {
22
35
  import('@jupyterlab/notebook/style/index.js');
23
36
  import('@jupyterlab/filebrowser/style/index.js');
24
37
  import('@jupyterlab/terminal/style/index.js');
38
+ import('@jupyterlab/ui-components/style/index.js');
39
+ // ipywidgets.
40
+ import('@jupyter-widgets/base/css/index.css');
41
+ import('@jupyter-widgets/controls/css/widgets-base.css');
42
+ }, []);
43
+ useEffect(() => {
44
+ document.body.querySelector(`style[${DATASET_LAB_THEME}]`)?.remove();
45
+ let theme;
25
46
  switch (colorMode) {
26
47
  case 'light': {
27
- import('@jupyterlab/theme-light-extension/style/theme.css');
48
+ theme = import('@jupyterlab/theme-light-extension/style/theme.css');
28
49
  break;
29
50
  }
30
51
  case 'dark': {
31
- import('@jupyterlab/theme-dark-extension/style/theme.css');
52
+ theme = import('@jupyterlab/theme-dark-extension/style/theme.css');
32
53
  break;
33
54
  }
34
55
  }
35
- import('@jupyterlab/ui-components/style/index.js');
36
- // ipywidgets.
37
- import('@jupyter-widgets/base/css/index.css');
38
- import('@jupyter-widgets/controls/css/widgets-base.css');
56
+ // Inject the JupyterLab theme stylesheet in a retrievable node
57
+ // ! webpack should be configured to load the theme style sheets
58
+ // with css-loader as string - this is available in css-loader v6.3.0 or later:
59
+ // { test: /style\/theme\.css$/i, loader: 'css-loader', options: {exportType: 'string'} }
60
+ theme?.then(module => {
61
+ if (module.default) {
62
+ document.body.insertAdjacentHTML('afterbegin', `<style ${DATASET_LAB_THEME}="${colorMode}">
63
+ ${module.default}
64
+ </style>`);
65
+ }
66
+ });
39
67
  }, [colorMode]);
40
68
  return _jsx("div", { id: "dla-JupyterLabCss-id" });
41
69
  };
42
70
  JupyterLabCss.defaultProps = {
43
- theme: 'light',
71
+ colorMode: 'light',
44
72
  };
45
73
  export default JupyterLabCss;
46
74
  //# sourceMappingURL=JupyterLabCss.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"JupyterLabCss.js","sourceRoot":"","sources":["../../../src/jupyter/lab/JupyterLabCss.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAOlC,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAE,EAAE;IAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAC3C,MAAM,CAAC,2CAA2C,CAAC,CAAC;QACpD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAC7C,MAAM,CAAC,sCAAsC,CAAC,CAAC;QAC/C,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAC3C,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,wCAAwC,CAAC,CAAC;QACjD,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,QAAQ,SAAS,EAAE;YACjB,KAAK,OAAO,CAAC,CAAC;gBACZ,MAAM,CAAC,mDAAmD,CAAC,CAAC;gBAC5D,MAAM;aACP;YACD,KAAK,MAAM,CAAC,CAAC;gBACX,MAAM,CAAC,kDAAkD,CAAC,CAAC;gBAC3D,MAAM;aACP;SACF;QACD,MAAM,CAAC,0CAA0C,CAAC,CAAC;QACnD,cAAc;QACd,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,gDAAgD,CAAC,CAAC;IAC3D,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,OAAO,cAAK,EAAE,EAAC,sBAAsB,GAAO,CAAC;AAC/C,CAAC,CAAC;AAEF,aAAa,CAAC,YAAY,GAAG;IAC3B,KAAK,EAAE,OAAO;CACf,CAAC;AAEF,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"JupyterLabCss.js","sourceRoot":"","sources":["../../../src/jupyter/lab/JupyterLabCss.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAGlC,MAAM,iBAAiB,GAAG,gBAAgB,CAAC;AAM3C;;GAEG;AACH,IAAI,QAAQ,GAAG,KAAK,CAAC;AAErB;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,KAAY,EAAE,EAAE;IAC5C,MAAM,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,QAAQ,EAAE;YACZ,QAAQ;YACR,OAAO;SACR;QACD,QAAQ,GAAG,IAAI,CAAC;QAChB,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAC3C,MAAM,CAAC,2CAA2C,CAAC,CAAC;QACpD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,oCAAoC,CAAC,CAAC;QAC7C,MAAM,CAAC,sCAAsC,CAAC,CAAC;QAC/C,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,uCAAuC,CAAC,CAAC;QAChD,MAAM,CAAC,kCAAkC,CAAC,CAAC;QAC3C,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,wCAAwC,CAAC,CAAC;QACjD,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,0CAA0C,CAAC,CAAC;QACnD,cAAc;QACd,MAAM,CAAC,qCAAqC,CAAC,CAAC;QAC9C,MAAM,CAAC,gDAAgD,CAAC,CAAC;IAC3D,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,iBAAiB,GAAG,CAAC,EAAE,MAAM,EAAE,CAAC;QAErE,IAAI,KAAK,CAAC;QACV,QAAQ,SAAS,EAAE;YACjB,KAAK,OAAO,CAAC,CAAC;gBACZ,KAAK,GAAG,MAAM,CAAC,mDAAmD,CAAC,CAAC;gBACpE,MAAM;aACP;YACD,KAAK,MAAM,CAAC,CAAC;gBACX,KAAK,GAAG,MAAM,CAAC,kDAAkD,CAAC,CAAC;gBACnE,MAAM;aACP;SACF;QAED,+DAA+D;QAC/D,gEAAgE;QAChE,iFAAiF;QACjF,2FAA2F;QAC3F,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE;YACnB,IAAI,MAAM,CAAC,OAAO,EAAE;gBAClB,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAC9B,YAAY,EACZ,UAAU,iBAAiB,KAAK,SAAS;EACjD,MAAM,CAAC,OAAO;SACP,CACA,CAAC;aACH;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAChB,OAAO,cAAK,EAAE,EAAC,sBAAsB,GAAO,CAAC;AAC/C,CAAC,CAAC;AAEF,aAAa,CAAC,YAAY,GAAG;IAC3B,SAAS,EAAE,OAAO;CACnB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
1
  import { JupyterFrontEndPlugin } from '@jupyterlab/application';
2
2
  import '../../../style/index.css';
3
- declare const plugins: (JupyterFrontEndPlugin<void> | JupyterFrontEndPlugin<import("@jupyterlab/notebook").NotebookPanel.IContentFactory>)[];
4
- export default plugins;
3
+ declare const _default: (JupyterFrontEndPlugin<void> | JupyterFrontEndPlugin<import("@jupyterlab/notebook").NotebookPanel.IContentFactory>)[];
4
+ export default _default;
@@ -88,6 +88,5 @@ const jupyterReactPlugin = {
88
88
  console.log('JupyterLab plugin @datalayer/jupyter-react is activated.');
89
89
  },
90
90
  };
91
- const plugins = [jupyterReactPlugin, notebookContentFactoryPlugin];
92
- export default plugins;
91
+ export default [jupyterReactPlugin, notebookContentFactoryPlugin];
93
92
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jupyter/lab/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/jupyter/lab/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,6 @@
1
1
  import { NotebookPanel } from '@jupyterlab/notebook';
2
- import { Cell, IInputPrompt } from '@jupyterlab/cells';
3
- import { IOutputPrompt } from '@jupyterlab/outputarea';
4
- export declare class CountdownContentFactory extends NotebookPanel.ContentFactory {
2
+ import { Cell } from '@jupyterlab/cells';
3
+ export declare class CountdownPromptContentFactory extends NotebookPanel.ContentFactory {
5
4
  constructor(options: Cell.ContentFactory.IOptions);
6
- /** @override */
7
- createInputPrompt(): IInputPrompt;
8
- /** @override */
9
- createOutputPrompt(): IOutputPrompt;
10
5
  }
11
- export default CountdownContentFactory;
6
+ export default CountdownPromptContentFactory;
@@ -4,20 +4,14 @@
4
4
  * MIT License
5
5
  */
6
6
  import { NotebookPanel } from '@jupyterlab/notebook';
7
- import CountdownInputPrompt from '../../../../components/notebook/cell/prompt/CountdownInputPrompt';
8
- import CountdownOutputPrompt from '../../../../components/notebook/cell/prompt/CountdownOutputPrompt';
9
- export class CountdownContentFactory extends NotebookPanel.ContentFactory {
7
+ // import { IInputPrompt } from '@jupyterlab/cells';
8
+ // import { IOutputPrompt } from '@jupyterlab/outputarea';
9
+ // import CountdownInputPrompt from '../../../../components/notebook/cell/prompt/CountdownInputPrompt';
10
+ // import CountdownOutputPrompt from '../../../../components/notebook/cell/prompt/CountdownOutputPrompt';
11
+ export class CountdownPromptContentFactory extends NotebookPanel.ContentFactory {
10
12
  constructor(options) {
11
13
  super(options);
12
14
  }
13
- /** @override */
14
- createInputPrompt() {
15
- return new CountdownInputPrompt();
16
- }
17
- /** @override */
18
- createOutputPrompt() {
19
- return new CountdownOutputPrompt();
20
- }
21
15
  }
22
- export default CountdownContentFactory;
16
+ export default CountdownPromptContentFactory;
23
17
  //# sourceMappingURL=CountdownContentFactory.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"CountdownContentFactory.js","sourceRoot":"","sources":["../../../../../src/jupyter/lab/notebook/content/CountdownContentFactory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGrD,OAAO,oBAAoB,MAAM,kEAAkE,CAAC;AACpG,OAAO,qBAAqB,MAAM,mEAAmE,CAAC;AAEtG,MAAM,OAAO,uBAAwB,SAAQ,aAAa,CAAC,cAAc;IACvE,YAAY,OAAqC;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED,gBAAgB;IAChB,iBAAiB;QACf,OAAO,IAAI,oBAAoB,EAAE,CAAC;IACpC,CAAC;IAED,gBAAgB;IAChB,kBAAkB;QAChB,OAAO,IAAI,qBAAqB,EAAE,CAAC;IACrC,CAAC;CACF;AAED,eAAe,uBAAuB,CAAC"}
1
+ {"version":3,"file":"CountdownContentFactory.js","sourceRoot":"","sources":["../../../../../src/jupyter/lab/notebook/content/CountdownContentFactory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,oDAAoD;AACpD,0DAA0D;AAC1D,uGAAuG;AACvG,yGAAyG;AAEzG,MAAM,OAAO,6BAA8B,SAAQ,aAAa,CAAC,cAAc;IAC7E,YAAY,OAAqC;QAC/C,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CAaF;AAED,eAAe,6BAA6B,CAAC"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { NotebookPanel } from '@jupyterlab/notebook';
7
7
  import { IEditorServices } from '@jupyterlab/codeeditor';
8
- import CountdownContentFactory from './CountdownContentFactory';
8
+ import CountdownPromptContentFactory from './CountdownContentFactory';
9
9
  /**
10
10
  * The notebook cell factory provider.
11
11
  */
@@ -17,7 +17,7 @@ const contentFactoryPlugin = {
17
17
  autoStart: true,
18
18
  activate: (app, editorServices) => {
19
19
  const editorFactory = editorServices.factoryService.newInlineEditor;
20
- return new CountdownContentFactory({ editorFactory });
20
+ return new CountdownPromptContentFactory({ editorFactory });
21
21
  },
22
22
  };
23
23
  export default contentFactoryPlugin;
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../../src/jupyter/lab/notebook/content/plugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,uBAAuB,MAAM,2BAA2B,CAAC;AAEhE;;GAEG;AACH,MAAM,oBAAoB,GAAyD;IACjF,EAAE,EAAE,mDAAmD;IACvD,WAAW,EAAE,qCAAqC;IAClD,QAAQ,EAAE,aAAa,CAAC,eAAe;IACvC,QAAQ,EAAE,CAAC,eAAe,CAAC;IAC3B,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,CAAC,GAAoB,EAAE,cAA+B,EAAE,EAAE;QAClE,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,eAAe,CAAC;QACpE,OAAO,IAAI,uBAAuB,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IACxD,CAAC;CACF,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
1
+ {"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../../../../src/jupyter/lab/notebook/content/plugin.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,6BAA6B,MAAM,2BAA2B,CAAC;AAEtE;;GAEG;AACH,MAAM,oBAAoB,GACxB;IACE,EAAE,EAAE,mDAAmD;IACvD,WAAW,EAAE,qCAAqC;IAClD,QAAQ,EAAE,aAAa,CAAC,eAAe;IACvC,QAAQ,EAAE,CAAC,eAAe,CAAC;IAC3B,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,CAAC,GAAoB,EAAE,cAA+B,EAAE,EAAE;QAClE,MAAM,aAAa,GAAG,cAAc,CAAC,cAAc,CAAC,eAAe,CAAC;QACpE,OAAO,IAAI,6BAA6B,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF,CAAC;AAEJ,eAAe,oBAAoB,CAAC"}
@@ -1,2 +1,11 @@
1
- import { ServiceManager } from '@jupyterlab/services';
2
- export declare function startLiteServer(): Promise<ServiceManager>;
1
+ import { JupyterLiteServer } from '@jupyterlite/server';
2
+ /**
3
+ * Create a JupyterLiteServer application with the default plugins.
4
+ *
5
+ * #### Notes
6
+ * The JupyterLiteServer application is a Lumino application without
7
+ * a shell. Its sole purpose is to create a custom {@link import('@jupyterlab/services').ServiceManager.IManager}.
8
+ *
9
+ * @returns A promise resolving in a jupyterlite server application
10
+ */
11
+ export declare function createLiteServer(): Promise<JupyterLiteServer>;
@@ -3,79 +3,54 @@
3
3
  *
4
4
  * MIT License
5
5
  */
6
- import { JupyterLiteServer } from '@datalayer/jupyterlite-server';
6
+ import { JupyterLiteServer, } from '@jupyterlite/server';
7
7
  import { PageConfig } from '@jupyterlab/coreutils';
8
- const serverExtensions = [
9
- // import('@jupyterlite/javascript-kernel-extension'),
10
- import('@datalayer/jupyterlite-ipykernel-extension'),
11
- import('@datalayer/jupyterlite-server-extension'),
12
- ];
13
- // custom list of disabled plugins.
14
- const disabled = [
15
- '@jupyterlab/apputils-extension:workspaces',
16
- '@jupyterlab/application-extension:logo',
17
- '@jupyterlab/application-extension:main',
18
- '@jupyterlab/application-extension:tree-resolver',
19
- '@jupyterlab/apputils-extension:resolver',
20
- '@jupyterlab/docmanager-extension:download',
21
- '@jupyterlab/filebrowser-extension:download',
22
- '@jupyterlab/filebrowser-extension:share-file',
23
- '@jupyterlab/help-extension:about',
24
- /*
25
- '@jupyterlite/server-extension:contents',
26
- '@jupyterlite/server-extension:contents-routes',
27
- '@jupyterlite/server-extension:emscripten-filesystem',
28
- '@jupyterlite/server-extension:licenses',
29
- '@jupyterlite/server-extension:licenses-routes',
30
- '@jupyterlite/server-extension:localforage-memory-storage',
31
- '@jupyterlite/server-extension:localforage',
32
- '@jupyterlite/server-extension:nbconvert-routes',
33
- '@jupyterlite/server-extension:service-worker',
34
- '@jupyterlite/server-extension:settings',
35
- '@jupyterlite/server-extension:settings-routes',
36
- '@jupyterlite/server-extension:translation',
37
- '@jupyterlite/server-extension:translation-routes',
38
- */
39
- ];
40
- export async function startLiteServer() {
41
- const litePluginsToRegister = [];
42
- /**
43
- * Iterate over active plugins in an extension.
44
- */
45
- function* activePlugins(extension) {
46
- // Handle commonjs or es2015 modules.
47
- let exports;
48
- if (extension.hasOwnProperty('__esModule')) {
49
- exports = extension.default;
50
- }
51
- else {
52
- // CommonJS exports.
53
- exports = extension;
54
- }
55
- let plugins = Array.isArray(exports) ? exports : [exports];
56
- for (let plugin of plugins) {
57
- if (PageConfig.Extension.isDisabled(plugin.id) ||
58
- disabled.includes(plugin.id) ||
59
- disabled.includes(plugin.id.split(':')[0])) {
60
- continue;
61
- }
62
- yield plugin;
63
- }
8
+ /**
9
+ * Iterate over active plugins in an extension.
10
+ */
11
+ function* activePlugins(extension) {
12
+ // Handle commonjs or es2015 modules.
13
+ let exports;
14
+ // eslint-disable-next-line no-prototype-builtins
15
+ if (extension.hasOwnProperty('__esModule')) {
16
+ exports = extension.default;
17
+ }
18
+ else {
19
+ // CommonJS exports.
20
+ exports = extension;
64
21
  }
65
- // Add the base serverlite extensions.
66
- const baseServerExtensions = await Promise.all(serverExtensions);
67
- baseServerExtensions.forEach(p => {
68
- for (let plugin of activePlugins(p)) {
69
- litePluginsToRegister.push(plugin);
22
+ const plugins = Array.isArray(exports)
23
+ ? exports
24
+ : [exports];
25
+ for (const plugin of plugins) {
26
+ if (PageConfig.Extension.isDisabled(plugin.id)) {
27
+ console.info(`JupyterLite plugin '${plugin.id}' has been disabled.`);
28
+ continue;
70
29
  }
71
- });
30
+ yield plugin;
31
+ }
32
+ }
33
+ /**
34
+ * Create a JupyterLiteServer application with the default plugins.
35
+ *
36
+ * #### Notes
37
+ * The JupyterLiteServer application is a Lumino application without
38
+ * a shell. Its sole purpose is to create a custom {@link import('@jupyterlab/services').ServiceManager.IManager}.
39
+ *
40
+ * @returns A promise resolving in a jupyterlite server application
41
+ */
42
+ export async function createLiteServer() {
43
+ const litePluginsToRegister = [];
44
+ // Load the base serverlite extensions.
45
+ const baseServerExtension = await import('@jupyterlite/server-extension');
46
+ for (const plugin of activePlugins(baseServerExtension)) {
47
+ litePluginsToRegister.push(plugin);
48
+ }
72
49
  // Create the in-browser JupyterLite Server.
73
50
  const jupyterLiteServer = new JupyterLiteServer({});
74
51
  jupyterLiteServer.registerPluginModules(litePluginsToRegister);
75
52
  // Start the server.
76
53
  await jupyterLiteServer.start();
77
- // Retrieve the custom service manager from the server app.
78
- const { serviceManager } = jupyterLiteServer;
79
- return serviceManager;
54
+ return jupyterLiteServer;
80
55
  }
81
56
  //# sourceMappingURL=LiteServer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LiteServer.js","sourceRoot":"","sources":["../../../src/jupyter/lite/LiteServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGnD,MAAM,gBAAgB,GAAG;IACvB,uDAAuD;IACvD,MAAM,CAAC,4CAA4C,CAAC;IACpD,MAAM,CAAC,yCAAyC,CAAC;CAClD,CAAC;AAEF,mCAAmC;AACnC,MAAM,QAAQ,GAAG;IACf,2CAA2C;IAC3C,wCAAwC;IACxC,wCAAwC;IACxC,iDAAiD;IACjD,yCAAyC;IACzC,2CAA2C;IAC3C,4CAA4C;IAC5C,8CAA8C;IAC9C,kCAAkC;IAClC;;;;;;;;;;;;;;IAcA;CACD,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,eAAe;IACnC,MAAM,qBAAqB,GAAU,EAAE,CAAC;IACxC;;OAEG;IACH,QAAQ,CAAC,CAAC,aAAa,CAAC,SAAc;QACpC,qCAAqC;QACrC,IAAI,OAAO,CAAC;QACZ,IAAI,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE;YAC1C,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;SAC7B;aAAM;YACL,oBAAoB;YACpB,OAAO,GAAG,SAAS,CAAC;SACrB;QACD,IAAI,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QAC3D,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE;YAC1B,IACE,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC1C,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBAC5B,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAC1C;gBACA,SAAS;aACV;YACD,MAAM,MAAM,CAAC;SACd;IACH,CAAC;IACD,sCAAsC;IACtC,MAAM,oBAAoB,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IACjE,oBAAoB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QAC/B,KAAK,IAAI,MAAM,IAAI,aAAa,CAAC,CAAC,CAAC,EAAE;YACnC,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC;IACH,CAAC,CAAC,CAAC;IACH,4CAA4C;IAC5C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,EAAS,CAAC,CAAC;IAC3D,iBAAiB,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAC/D,oBAAoB;IACpB,MAAM,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAChC,2DAA2D;IAC3D,MAAM,EAAE,cAAc,EAAE,GAAG,iBAAiB,CAAC;IAC7C,OAAO,cAAc,CAAC;AACxB,CAAC"}
1
+ {"version":3,"file":"LiteServer.js","sourceRoot":"","sources":["../../../src/jupyter/lite/LiteServer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,iBAAiB,GAElB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAEnD;;GAEG;AACH,QAAQ,CAAC,CAAC,aAAa,CACrB,SAAc;IAEd,qCAAqC;IACrC,IAAI,OAAO,CAAC;IACZ,iDAAiD;IACjD,IAAI,SAAS,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE;QAC1C,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;KAC7B;SAAM;QACL,oBAAoB;QACpB,OAAO,GAAG,SAAS,CAAC;KACrB;IACD,MAAM,OAAO,GAAmC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACpE,CAAC,CAAC,OAAO;QACT,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACd,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE;QAC5B,IAAI,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;YAC9C,OAAO,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,EAAE,sBAAsB,CAAC,CAAC;YACrE,SAAS;SACV;QACD,MAAM,MAAM,CAAC;KACd;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB;IACpC,MAAM,qBAAqB,GAAU,EAAE,CAAC;IAExC,uCAAuC;IACvC,MAAM,mBAAmB,GAAG,MAAM,MAAM,CAAC,+BAA+B,CAAC,CAAC;IAC1E,KAAK,MAAM,MAAM,IAAI,aAAa,CAAC,mBAAmB,CAAC,EAAE;QACvD,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;KACpC;IAED,4CAA4C;IAC5C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,EAAS,CAAC,CAAC;IAC3D,iBAAiB,CAAC,qBAAqB,CAAC,qBAAqB,CAAC,CAAC;IAC/D,oBAAoB;IACpB,MAAM,iBAAiB,CAAC,KAAK,EAAE,CAAC;IAEhC,OAAO,iBAAiB,CAAC;AAC3B,CAAC"}
@@ -71,28 +71,28 @@ class RenderedPlotly extends Widget {
71
71
  }
72
72
  hideGraph() {
73
73
  // Hide the graph if there is one
74
- let el = this.node.querySelector('.plot-container');
74
+ const el = this.node.querySelector('.plot-container');
75
75
  if (el !== null && el !== undefined) {
76
76
  el.style.display = 'none';
77
77
  }
78
78
  }
79
79
  showGraph() {
80
80
  // Show the graph if there is one
81
- let el = this.node.querySelector('.plot-container');
81
+ const el = this.node.querySelector('.plot-container');
82
82
  if (el !== null && el !== undefined) {
83
83
  el.style.display = 'block';
84
84
  }
85
85
  }
86
86
  hideImage() {
87
87
  // Hide the image element
88
- let el = this.node.querySelector('.plot-img');
88
+ const el = this.node.querySelector('.plot-img');
89
89
  if (el !== null && el !== undefined) {
90
90
  el.style.display = 'none';
91
91
  }
92
92
  }
93
93
  showImage() {
94
94
  // Show the image element
95
- let el = this.node.querySelector('.plot-img');
95
+ const el = this.node.querySelector('.plot-img');
96
96
  if (el !== null && el !== undefined) {
97
97
  el.style.display = 'block';
98
98
  }