@datalayer/jupyter-react 0.0.10 → 0.0.13

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 (182) hide show
  1. package/lib/JupyterExample.d.ts +1 -0
  2. package/lib/JupyterExample.js +56 -0
  3. package/lib/JupyterExample.js.map +1 -0
  4. package/lib/JupyterLiteExample.d.ts +1 -0
  5. package/lib/JupyterLiteExample.js +10 -0
  6. package/lib/JupyterLiteExample.js.map +1 -0
  7. package/lib/components/cell/Cell.css +9 -3
  8. package/lib/components/cell/Cell.d.ts +2 -1
  9. package/lib/components/cell/Cell.js +34 -27
  10. package/lib/components/cell/Cell.js.map +1 -1
  11. package/lib/components/cell/CellAdapter.d.ts +2 -1
  12. package/lib/components/cell/CellAdapter.js +11 -12
  13. package/lib/components/cell/CellAdapter.js.map +1 -1
  14. package/lib/components/cell/CellState.d.ts +1 -1
  15. package/lib/components/cell/CellState.js +11 -11
  16. package/lib/components/cell/CellState.js.map +1 -1
  17. package/lib/components/codemirror/CodeMirrorEditor.d.ts +14 -0
  18. package/lib/components/codemirror/CodeMirrorEditor.js +110 -0
  19. package/lib/components/codemirror/CodeMirrorEditor.js.map +1 -0
  20. package/lib/components/codemirror/CodeMirrorTheme.d.ts +3 -0
  21. package/lib/components/codemirror/CodeMirrorTheme.js +21 -0
  22. package/lib/components/codemirror/CodeMirrorTheme.js.map +1 -0
  23. package/lib/components/commands/Commands.d.ts +1 -1
  24. package/lib/components/commands/Commands.js +1 -1
  25. package/lib/components/commands/Commands.js.map +1 -1
  26. package/lib/components/commands/CommandsState.d.ts +1 -1
  27. package/lib/components/commands/CommandsState.js +7 -7
  28. package/lib/components/commands/CommandsState.js.map +1 -1
  29. package/lib/components/console/{ConsoleAdapter.css → Console.css} +4 -0
  30. package/lib/components/console/Console.d.ts +2 -1
  31. package/lib/components/console/Console.js +10 -4
  32. package/lib/components/console/Console.js.map +1 -1
  33. package/lib/components/console/ConsoleAdapter.d.ts +4 -2
  34. package/lib/components/console/ConsoleAdapter.js +63 -65
  35. package/lib/components/console/ConsoleAdapter.js.map +1 -1
  36. package/lib/components/console/ConsoleState.d.ts +1 -1
  37. package/lib/components/console/ConsoleState.js +8 -8
  38. package/lib/components/console/ConsoleState.js.map +1 -1
  39. package/lib/components/dialog/Dialog.d.ts +1 -1
  40. package/lib/components/dialog/Dialog.js +1 -1
  41. package/lib/components/dialog/Dialog.js.map +1 -1
  42. package/lib/components/filebrowser/FileBrowser.d.ts +1 -1
  43. package/lib/components/filebrowser/FileBrowser.js +1 -1
  44. package/lib/components/filebrowser/FileBrowser.js.map +1 -1
  45. package/lib/components/filebrowser/FileBrowserState.d.ts +1 -1
  46. package/lib/components/filebrowser/FileBrowserState.js +7 -7
  47. package/lib/components/filebrowser/FileBrowserState.js.map +1 -1
  48. package/lib/components/ipywidgets/IpyWidgetsComponent.d.ts +2 -2
  49. package/lib/components/ipywidgets/IpyWidgetsComponent.js +3 -3
  50. package/lib/components/ipywidgets/IpyWidgetsComponent.js.map +1 -1
  51. package/lib/components/notebook/Notebook.css +2 -26
  52. package/lib/components/notebook/Notebook.d.ts +17 -7
  53. package/lib/components/notebook/Notebook.js +111 -51
  54. package/lib/components/notebook/Notebook.js.map +1 -1
  55. package/lib/components/notebook/NotebookAdapter.d.ts +28 -16
  56. package/lib/components/notebook/NotebookAdapter.js +177 -70
  57. package/lib/components/notebook/NotebookAdapter.js.map +1 -1
  58. package/lib/components/notebook/NotebookCommands.d.ts +10 -5
  59. package/lib/components/notebook/NotebookCommands.js +228 -217
  60. package/lib/components/notebook/NotebookCommands.js.map +1 -1
  61. package/lib/components/notebook/NotebookState.d.ts +38 -18
  62. package/lib/components/notebook/NotebookState.js +104 -37
  63. package/lib/components/notebook/NotebookState.js.map +1 -1
  64. package/lib/components/notebook/cell/metadata/CellMetadataEditor.d.ts +7 -0
  65. package/lib/components/notebook/cell/metadata/CellMetadataEditor.js +43 -0
  66. package/lib/components/notebook/cell/metadata/CellMetadataEditor.js.map +1 -0
  67. package/lib/components/notebook/cell/metadata/NbGraderCells.d.ts +12 -0
  68. package/lib/components/notebook/cell/metadata/NbGraderCells.js +138 -0
  69. package/lib/components/notebook/cell/metadata/NbGraderCells.js.map +1 -0
  70. package/lib/components/notebook/{content/NotebookInputPrompt.d.ts → cell/prompt/InputPrompt.d.ts} +5 -8
  71. package/lib/components/notebook/{content/NotebookInputPrompt.js → cell/prompt/InputPrompt.js} +10 -8
  72. package/lib/components/notebook/cell/prompt/InputPrompt.js.map +1 -0
  73. package/lib/components/notebook/cell/sidebar/CellSidebarDefault.d.ts +3 -0
  74. package/lib/components/notebook/cell/sidebar/CellSidebarDefault.js +63 -0
  75. package/lib/components/notebook/cell/sidebar/CellSidebarDefault.js.map +1 -0
  76. package/lib/components/notebook/cell/sidebar/CellSidebarRun.d.ts +3 -0
  77. package/lib/components/notebook/cell/sidebar/CellSidebarRun.js +38 -0
  78. package/lib/components/notebook/cell/sidebar/CellSidebarRun.js.map +1 -0
  79. package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.d.ts +19 -0
  80. package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.js +22 -0
  81. package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.js.map +1 -0
  82. package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.d.ts +16 -0
  83. package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.js +25 -0
  84. package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.js.map +1 -0
  85. package/lib/components/notebook/{render → marked}/marked.d.ts +0 -0
  86. package/lib/components/notebook/{render → marked}/marked.js +0 -0
  87. package/lib/components/notebook/{render → marked}/marked.js.map +1 -1
  88. package/lib/components/notebook/model/CustomNotebookModelFactory.d.ts +9 -0
  89. package/lib/components/notebook/model/CustomNotebookModelFactory.js +14 -0
  90. package/lib/components/notebook/model/CustomNotebookModelFactory.js.map +1 -0
  91. package/lib/components/outputs/Output.css +8 -0
  92. package/lib/components/outputs/Output.d.ts +12 -3
  93. package/lib/components/outputs/Output.js +88 -18
  94. package/lib/components/outputs/Output.js.map +1 -1
  95. package/lib/components/outputs/OutputAdapter.d.ts +4 -5
  96. package/lib/components/outputs/OutputAdapter.js +19 -8
  97. package/lib/components/outputs/OutputAdapter.js.map +1 -1
  98. package/lib/components/outputs/OutputState.d.ts +51 -12
  99. package/lib/components/outputs/OutputState.js +109 -17
  100. package/lib/components/outputs/OutputState.js.map +1 -1
  101. package/lib/components/outputs/OutputToolbar.d.ts +12 -0
  102. package/lib/components/outputs/OutputToolbar.js +42 -0
  103. package/lib/components/outputs/OutputToolbar.js.map +1 -0
  104. package/lib/components/settings/Settings.d.ts +1 -1
  105. package/lib/components/settings/Settings.js +1 -1
  106. package/lib/components/settings/Settings.js.map +1 -1
  107. package/lib/components/settings/SettingsState.d.ts +1 -1
  108. package/lib/components/settings/SettingsState.js +7 -7
  109. package/lib/components/settings/SettingsState.js.map +1 -1
  110. package/lib/components/terminal/TerminalState.d.ts +1 -1
  111. package/lib/components/terminal/TerminalState.js +5 -5
  112. package/lib/components/terminal/TerminalState.js.map +1 -1
  113. package/lib/index.d.ts +42 -22
  114. package/lib/index.js +44 -22
  115. package/lib/index.js.map +1 -1
  116. package/lib/jupyter/Jupyter.d.ts +10 -2
  117. package/lib/jupyter/Jupyter.js +11 -16
  118. package/lib/jupyter/Jupyter.js.map +1 -1
  119. package/lib/jupyter/{AuthError.d.ts → JupyterAuthError.d.ts} +2 -2
  120. package/lib/jupyter/JupyterAuthError.js +8 -0
  121. package/lib/jupyter/JupyterAuthError.js.map +1 -0
  122. package/lib/jupyter/JupyterConfig.d.ts +2 -1
  123. package/lib/jupyter/JupyterConfig.js +35 -11
  124. package/lib/jupyter/JupyterConfig.js.map +1 -1
  125. package/lib/jupyter/JupyterContext.d.ts +6 -1
  126. package/lib/jupyter/JupyterContext.js +49 -15
  127. package/lib/jupyter/JupyterContext.js.map +1 -1
  128. package/lib/jupyter/{Handlers.d.ts → JupyterHandlers.d.ts} +1 -1
  129. package/lib/jupyter/{Handlers.js → JupyterHandlers.js} +4 -4
  130. package/lib/jupyter/JupyterHandlers.js.map +1 -0
  131. package/lib/jupyter/ipywidgets/IPyWidgetsAttached.d.ts +1 -1
  132. package/lib/jupyter/ipywidgets/IPyWidgetsAttached.js +2 -2
  133. package/lib/jupyter/ipywidgets/IpyWidgetsManager.d.ts +1 -1
  134. package/lib/jupyter/ipywidgets/IpyWidgetsManager.js +1 -1
  135. package/lib/jupyter/ipywidgets/IpyWidgetsManager.js.map +1 -1
  136. package/lib/jupyter/lite/LiteServer.d.ts +2 -0
  137. package/lib/jupyter/lite/LiteServer.js +87 -0
  138. package/lib/jupyter/lite/LiteServer.js.map +1 -0
  139. package/lib/jupyter/lumino/LuminoAttached.d.ts +2 -8
  140. package/lib/jupyter/lumino/LuminoAttached.js +17 -19
  141. package/lib/jupyter/lumino/LuminoAttached.js.map +1 -1
  142. package/lib/jupyter/lumino/LuminoDetached.d.ts +1 -1
  143. package/lib/jupyter/lumino/LuminoDetached.js +1 -1
  144. package/lib/jupyter/lumino/LuminoDetached.js.map +1 -1
  145. package/lib/jupyter/lumino/LuminoNotebook.d.ts +5 -0
  146. package/lib/jupyter/lumino/LuminoNotebook.js +28 -0
  147. package/lib/jupyter/lumino/LuminoNotebook.js.map +1 -0
  148. package/lib/jupyter/services/kernel/Kernel.js +4 -4
  149. package/lib/jupyter/services/kernel/Kernel.js.map +1 -1
  150. package/lib/state/State.d.ts +2 -2
  151. package/lib/state/State.js +4 -4
  152. package/lib/state/State.js.map +1 -1
  153. package/lib/state/Store.d.ts +3 -1
  154. package/lib/state/Store.js +19 -23
  155. package/lib/state/Store.js.map +1 -1
  156. package/lib/utils/Ids.d.ts +2 -0
  157. package/lib/utils/Ids.js +11 -0
  158. package/lib/utils/Ids.js.map +1 -0
  159. package/package.json +13 -12
  160. package/lib/components/editor/CodeMirrorEditor.d.ts +0 -7
  161. package/lib/components/editor/CodeMirrorEditor.js +0 -62
  162. package/lib/components/editor/CodeMirrorEditor.js.map +0 -1
  163. package/lib/components/filebrowser/FileBrowserTree.d.ts +0 -2
  164. package/lib/components/filebrowser/FileBrowserTree.js +0 -60
  165. package/lib/components/filebrowser/FileBrowserTree.js.map +0 -1
  166. package/lib/components/notebook/content/CellSidebar.d.ts +0 -8
  167. package/lib/components/notebook/content/CellSidebar.js +0 -23
  168. package/lib/components/notebook/content/CellSidebar.js.map +0 -1
  169. package/lib/components/notebook/content/ContentFactoryWithSidebar.d.ts +0 -14
  170. package/lib/components/notebook/content/ContentFactoryWithSidebar.js +0 -20
  171. package/lib/components/notebook/content/ContentFactoryWithSidebar.js.map +0 -1
  172. package/lib/components/notebook/content/NotebookInputPrompt.js.map +0 -1
  173. package/lib/components/outputs/OutputAdapter.css +0 -3
  174. package/lib/jupyter/AuthError.js +0 -8
  175. package/lib/jupyter/AuthError.js.map +0 -1
  176. package/lib/jupyter/Handlers.js.map +0 -1
  177. package/lib/state/init/Init.d.ts +0 -3
  178. package/lib/state/init/Init.js +0 -12
  179. package/lib/state/init/Init.js.map +0 -1
  180. package/lib/state/init/InitState.d.ts +0 -19
  181. package/lib/state/init/InitState.js +0 -48
  182. package/lib/state/init/InitState.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputPrompt.js","sourceRoot":"","sources":["../../../../../src/components/notebook/cell/prompt/InputPrompt.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAGnD;;GAEG;AACH,MAAM,kBAAkB,GAAG,gBAAgB,CAAC;AAE5C,MAAM,SAAS,GAAG,CAAC,KAAsB,EAAE,EAAE;IAC3C,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAChD,IAAI,WAAW,GAAG,MAAM,EAAU,CAAC;IACnC,MAAM,WAAW,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC;IACvD,SAAS,CAAE,GAAG,EAAE;QACZ,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC1B,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;IACjB,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,CAAC,OAAO,GAAG,WAAW,CAAC,WAAW,EAAE,IAAI,CAAQ,CAAC;QAC5D,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAClD,CAAC,EAAE,EAAE,CAAC,CAAC;IACL,OAAO,CACL,4BACG,KAAK,WACL,CACJ,CAAC;AACN,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,WAAW;IAO1C;;MAEE;IACF;QACE,KAAK,EAAE,CAAC;QAVF,oBAAe,GAAkB,IAAI,CAAC;QAEtC,UAAK,GAAG;YACd,KAAK,EAAE,GAAG;SACX,CAAA;QAOC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;IACpC,CAAC;IAED,gBAAgB;IAChB,MAAM;QACJ,OAAO,KAAC,SAAS,IAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,WAAI,CAAA;IAC/C,CAAC;IAED;;OAEG;IACH,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IAED,IAAI,cAAc,CAAC,KAAoB;QACrC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,KAAK,KAAK,IAAI,EAAE;YAClB,IAAI,CAAC,KAAK,GAAG;gBACX,KAAK,EAAE,CAAC;aACT,CAAC;SACH;aAAM;YACL,IAAI,KAAK,KAAK,GAAG,EAAE;gBACjB,IAAI,CAAC,KAAK,GAAG;oBACX,KAAK,EAAE,CAAC;iBACT,CAAC;aACH;iBACI;gBACH,IAAI,CAAC,KAAK,GAAG;oBACX,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;iBACrB,CAAC;gBACF,IAAI,CAAC,MAAM,EAAE,CAAC;aACf;SACF;IACH,CAAC;CAEF;AAED,eAAe,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { CellSidebarProps } from './base/CellSidebarWidget';
2
+ export declare const CellSidebarDefault: (props: CellSidebarProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export default CellSidebarDefault;
@@ -0,0 +1,63 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "@emotion/react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { useDispatch } from 'react-redux';
4
+ import { ActionMenu, Button, IconButton } from "@primer/react";
5
+ import { KebabHorizontalIcon, PlayIcon, RepoDeletedIcon, ArrowUpIcon, ArrowDownIcon } from "@primer/octicons-react";
6
+ import { DLA_CELL_HEADER_CLASS } from './base/CellSidebarWidget';
7
+ import { notebookActions, selectActiveCell } from '../../NotebookState';
8
+ import CellMetadataEditor from '../metadata/CellMetadataEditor';
9
+ export const CellSidebarDefault = (props) => {
10
+ const [visible, setVisible] = useState(false);
11
+ const { nbgrader } = props;
12
+ const dispatch = useDispatch();
13
+ const activeCell = selectActiveCell();
14
+ const layout = (activeCell === null || activeCell === void 0 ? void 0 : activeCell.layout);
15
+ if (layout) {
16
+ const cellWidget = layout.widgets[0];
17
+ if (!visible && ((cellWidget === null || cellWidget === void 0 ? void 0 : cellWidget.node.id) === props.id)) {
18
+ setVisible(true);
19
+ }
20
+ if (visible && ((cellWidget === null || cellWidget === void 0 ? void 0 : cellWidget.node.id) !== props.id)) {
21
+ setVisible(false);
22
+ }
23
+ }
24
+ if (!visible) {
25
+ return _jsx("div", {}, void 0);
26
+ }
27
+ return (activeCell ?
28
+ _jsxs("div", Object.assign({ className: DLA_CELL_HEADER_CLASS, css: {
29
+ '& p': {
30
+ marginBottom: '0 !important',
31
+ }
32
+ } }, { children: [_jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: PlayIcon, variant: "invisible", size: "small", onClick: (e) => {
33
+ e.preventDefault();
34
+ dispatch(notebookActions.run.started());
35
+ } }, { children: "Run" }), void 0) }), void 0),
36
+ _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: ArrowUpIcon, variant: "invisible", size: "small", onClick: (e) => {
37
+ e.preventDefault();
38
+ dispatch(notebookActions.insertAbove.started("code"));
39
+ } }, { children: "Code" }), void 0) }), void 0),
40
+ _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: ArrowUpIcon, variant: "invisible", size: "small", onClick: (e) => {
41
+ e.preventDefault();
42
+ dispatch(notebookActions.insertAbove.started("markdown"));
43
+ } }, { children: "Markdown" }), void 0) }), void 0),
44
+ _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: ArrowDownIcon, variant: "invisible", size: "small", onClick: (e) => {
45
+ e.preventDefault();
46
+ dispatch(notebookActions.insertBelow.started("markdown"));
47
+ } }, { children: "Markdown" }), void 0) }), void 0),
48
+ _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: ArrowDownIcon, variant: "invisible", size: "small", onClick: (e) => {
49
+ e.preventDefault();
50
+ dispatch(notebookActions.insertBelow.started("code"));
51
+ } }, { children: "Code" }), void 0) }), void 0),
52
+ _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: RepoDeletedIcon, variant: "invisible", size: "small", onClick: (e) => {
53
+ e.preventDefault();
54
+ dispatch(notebookActions.delete.started());
55
+ } }, { children: "Delete" }), void 0) }), void 0),
56
+ nbgrader &&
57
+ _jsxs(ActionMenu, { children: [_jsx(ActionMenu.Anchor, { children: _jsx(IconButton, { icon: KebabHorizontalIcon, variant: "invisible", "aria-label": "Open column options" }, void 0) }, void 0),
58
+ _jsx(ActionMenu.Overlay, { children: _jsx(CellMetadataEditor, { cell: activeCell, nbgrader: nbgrader }, void 0) }, void 0)] }, void 0)] }), void 0)
59
+ :
60
+ _jsx(_Fragment, {}, void 0));
61
+ };
62
+ export default CellSidebarDefault;
63
+ //# sourceMappingURL=CellSidebarDefault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellSidebarDefault.js","sourceRoot":"","sources":["../../../../../src/components/notebook/cell/sidebar/CellSidebarDefault.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { CellSidebarProps } from './base/CellSidebarWidget';
2
+ export declare const CellSidebarRun: (props: CellSidebarProps) => import("@emotion/react/jsx-runtime").JSX.Element;
3
+ export default CellSidebarRun;
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx, Fragment as _Fragment } from "@emotion/react/jsx-runtime";
2
+ import { useState } from 'react';
3
+ import { useDispatch } from 'react-redux';
4
+ import { Button } from '@primer/react';
5
+ import { PlayIcon } from "@primer/octicons-react";
6
+ import { DLA_CELL_HEADER_CLASS } from './base/CellSidebarWidget';
7
+ import { notebookActions, selectActiveCell } from '../../NotebookState';
8
+ export const CellSidebarRun = (props) => {
9
+ const [visible, setVisible] = useState(false);
10
+ const dispatch = useDispatch();
11
+ const activeCell = selectActiveCell();
12
+ const layout = (activeCell === null || activeCell === void 0 ? void 0 : activeCell.layout);
13
+ if (layout) {
14
+ const cellWidget = layout.widgets[0];
15
+ if (!visible && ((cellWidget === null || cellWidget === void 0 ? void 0 : cellWidget.node.id) === props.id)) {
16
+ setVisible(true);
17
+ }
18
+ if (visible && ((cellWidget === null || cellWidget === void 0 ? void 0 : cellWidget.node.id) !== props.id)) {
19
+ setVisible(false);
20
+ }
21
+ }
22
+ if (!visible) {
23
+ return _jsx("div", {}, void 0);
24
+ }
25
+ return (activeCell ?
26
+ _jsx("div", Object.assign({ className: DLA_CELL_HEADER_CLASS, css: {
27
+ '& p': {
28
+ marginBottom: '0 !important',
29
+ }
30
+ } }, { children: _jsx("span", Object.assign({ style: { display: "flex" } }, { children: _jsx(Button, Object.assign({ trailingIcon: PlayIcon, size: "small", variant: "invisible", onClick: (e) => {
31
+ e.preventDefault();
32
+ dispatch(notebookActions.run.started());
33
+ } }, { children: "Run" }), void 0) }), void 0) }), void 0)
34
+ :
35
+ _jsx(_Fragment, {}, void 0));
36
+ };
37
+ export default CellSidebarRun;
38
+ //# sourceMappingURL=CellSidebarRun.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellSidebarRun.js","sourceRoot":"","sources":["../../../../../src/components/notebook/cell/sidebar/CellSidebarRun.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGxE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAuB,EAAE,EAAE;IACxD,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,MAAM,UAAU,GAAG,gBAAgB,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,CAAC,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,CAAC,CAAC;IACpC,IAAI,MAAM,EAAE;QACV,MAAM,UAAU,GAAI,MAAsB,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACtD,IAAI,CAAC,OAAO,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC,EAAE,MAAK,KAAK,CAAC,EAAE,CAAC,EAAE;YAClD,UAAU,CAAC,IAAI,CAAC,CAAC;SAClB;QACD,IAAI,OAAO,IAAI,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,IAAI,CAAC,EAAE,MAAK,KAAK,CAAC,EAAE,CAAC,EAAE;YACjD,UAAU,CAAC,KAAK,CAAC,CAAC;SACnB;KACF;IACD,IAAI,CAAC,OAAO,EAAE;QACZ,OAAO,uBAAW,CAAA;KACnB;IACD,OAAO,CACL,UAAU,CAAC,CAAC;QACV,4BACE,SAAS,EAAE,qBAAqB,EAChC,GAAG,EAAE;gBACH,KAAK,EAAE;oBACL,YAAY,EAAE,cAAc;iBAC7B;aACF,gBAEC,6BAAM,KAAK,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,gBAC9B,KAAC,MAAM,kBAAC,YAAY,EAAE,QAAQ,EAAE,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,WAAW,EAAC,OAAO,EAAE,CAAC,CAAM,EAAE,EAAE;wBACnF,CAAC,CAAC,cAAc,EAAE,CAAC;wBACnB,QAAQ,CAAC,eAAe,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;oBAC1C,CAAC,iCAEQ,YACJ,YACL;QACR,CAAC;YACC,2BAAK,CACR,CAAC;AACJ,CAAC,CAAA;AAED,eAAe,cAAc,CAAC"}
@@ -0,0 +1,19 @@
1
+ /// <reference types="react" />
2
+ import { Store } from 'redux';
3
+ import { CommandRegistry } from '@lumino/commands';
4
+ import { NotebookPanel } from '@jupyterlab/notebook';
5
+ import { ICellHeader, Cell } from '@jupyterlab/cells';
6
+ import { CellSidebarProps } from './CellSidebarWidget';
7
+ /**
8
+ * Extend the default implementation NotebookPanel.ContentFactory of `IContentFactory`.
9
+ */
10
+ export declare class CellSidebarContentFactory extends NotebookPanel.ContentFactory {
11
+ private readonly CellSidebar;
12
+ private readonly nbgrader;
13
+ private readonly commands;
14
+ private readonly store;
15
+ constructor(CellSidebar: (props: CellSidebarProps) => JSX.Element, nbgrader: boolean, commands: CommandRegistry, store?: Store, options?: Cell.ContentFactory.IOptions | undefined);
16
+ /** @override */
17
+ createCellHeader(): ICellHeader;
18
+ }
19
+ export default CellSidebarContentFactory;
@@ -0,0 +1,22 @@
1
+ import { NotebookPanel } from '@jupyterlab/notebook';
2
+ import { CellSidebarWidget } from './CellSidebarWidget';
3
+ // import { IInputPrompt } from '@jupyterlab/cells';
4
+ // import { NotebookInputPrompt } from './NotebookInputPrompt';
5
+ /**
6
+ * Extend the default implementation NotebookPanel.ContentFactory of `IContentFactory`.
7
+ */
8
+ export class CellSidebarContentFactory extends NotebookPanel.ContentFactory {
9
+ constructor(CellSidebar, nbgrader, commands, store, options) {
10
+ super(options);
11
+ this.CellSidebar = CellSidebar;
12
+ this.nbgrader = nbgrader;
13
+ this.commands = commands;
14
+ this.store = store;
15
+ }
16
+ /** @override */
17
+ createCellHeader() {
18
+ return new CellSidebarWidget(this.CellSidebar, this.nbgrader, this.commands, this.store);
19
+ }
20
+ }
21
+ export default CellSidebarContentFactory;
22
+ //# sourceMappingURL=CellSidebarContentFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellSidebarContentFactory.js","sourceRoot":"","sources":["../../../../../../src/components/notebook/cell/sidebar/base/CellSidebarContentFactory.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,EAAE,iBAAiB,EAAoB,MAAM,qBAAqB,CAAC;AAC1E,oDAAoD;AACpD,+DAA+D;AAE/D;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,aAAa,CAAC,cAAc;IAKzE,YACE,WAAqD,EACrD,QAAiB,EACjB,QAAyB,EACzB,KAAa,EACb,OAAkD;QAElD,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,KAAK,GAAG,KAAM,CAAC;IACtB,CAAC;IACD,gBAAgB;IAChB,gBAAgB;QACd,OAAO,IAAI,iBAAiB,CAC1B,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,KAAK,CACT,CAAC;IACN,CAAC;CAMF;AAED,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,16 @@
1
+ /// <reference types="react" />
2
+ import { Store } from 'redux';
3
+ import { ICellHeader } from '@jupyterlab/cells';
4
+ import { CommandRegistry } from '@lumino/commands';
5
+ import { LuminoReactPortal } from '../../../../../jupyter/lumino/LuminoReactPortal';
6
+ export declare const DLA_CELL_HEADER_CLASS = "dla-CellHeader-Container";
7
+ export declare type CellSidebarProps = {
8
+ command: CommandRegistry;
9
+ id: string;
10
+ nbgrader: boolean;
11
+ };
12
+ export declare class CellSidebarWidget extends LuminoReactPortal implements ICellHeader {
13
+ private readonly commands;
14
+ constructor(CellSidebar: (props: CellSidebarProps) => JSX.Element, nbgrader: boolean, commands: CommandRegistry, store: Store);
15
+ }
16
+ export default CellSidebarWidget;
@@ -0,0 +1,25 @@
1
+ import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
+ import { createElement } from 'react';
3
+ import { createPortal } from 'react-dom';
4
+ import { newUuid } from '../../../../../utils/Ids';
5
+ import { notebookActions } from '../../../NotebookState';
6
+ import { LuminoReactPortal } from '../../../../../jupyter/lumino/LuminoReactPortal';
7
+ export const DLA_CELL_HEADER_CLASS = 'dla-CellHeader-Container';
8
+ export class CellSidebarWidget extends LuminoReactPortal {
9
+ constructor(CellSidebar, nbgrader, commands, store) {
10
+ super();
11
+ this.commands = commands;
12
+ this.addClass('jp-CellHeader');
13
+ this.id = newUuid();
14
+ const props = {
15
+ command: this.commands,
16
+ id: this.id,
17
+ nbgrader,
18
+ };
19
+ const sidebar = createElement(CellSidebar, props);
20
+ const portal = createPortal(_jsx("div", Object.assign({ className: DLA_CELL_HEADER_CLASS }, { children: sidebar }), void 0), this.node);
21
+ store.dispatch(notebookActions.portal([portal]));
22
+ }
23
+ }
24
+ export default CellSidebarWidget;
25
+ //# sourceMappingURL=CellSidebarWidget.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CellSidebarWidget.js","sourceRoot":"","sources":["../../../../../../src/components/notebook/cell/sidebar/base/CellSidebarWidget.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAIzC,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAEpF,MAAM,CAAC,MAAM,qBAAqB,GAAG,0BAA0B,CAAC;AAQhE,MAAM,OAAO,iBAAkB,SAAQ,iBAAiB;IAEtD,YACE,WAAqD,EACrD,QAAiB,EACjB,QAAyB,EACzB,KAAY;QAEZ,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;QAC/B,IAAI,CAAC,EAAE,GAAG,OAAO,EAAE,CAAC;QACpB,MAAM,KAAK,GAAqB;YAC9B,OAAO,EAAE,IAAI,CAAC,QAAQ;YACtB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,QAAQ;SACT,CAAC;QACF,MAAM,OAAO,GAAG,aAAa,CAC3B,WAAW,EACX,KAAK,CACN,CAAC;QACF,MAAM,MAAM,GAAG,YAAY,CACzB,4BAAK,SAAS,EAAE,qBAAqB,gBAClC,OAAO,YACJ,EAEN,IAAI,CAAC,IAAI,CACV,CAAC;QACF,KAAK,CAAC,QAAQ,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACnD,CAAC;CACF;AAED,eAAe,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"marked.js","sourceRoot":"","sources":["../../../../src/components/notebook/render/marked.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAoB,EAAE;IAC7C,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC3B,OAAO;QACL,MAAM,EAAE,CAAC,OAAe,EAAmB,EAAE,CAC3C,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,OAAe,EAAE,EAAE;gBAC5C,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;qBAAM;oBACL,OAAO,CAAC,OAAO,CAAC,CAAC;iBAClB;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;KACL,CAAC;AACJ,CAAC,CAAC;AAEF,IAAU,OAAO,CAgDhB;AAhDD,WAAU,OAAO;IACf,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,SAAgB,gBAAgB;QAC9B,IAAI,iBAAiB,EAAE;YACrB,OAAO;SACR;aAAM;YACL,iBAAiB,GAAG,IAAI,CAAC;SAC1B;QACD,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,KAAK;YACf,0EAA0E;YAC1E,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAClC,MAAM,EAAE,GAAG,CAAC,GAAiB,EAAE,IAAY,EAAE,EAAE;oBAC7C,IAAI,QAAQ,EAAE;wBACZ,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;qBACrB;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE;oBACT,4BAA4B;oBAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;iBACvB;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;qBACd,IAAI,CAAC,IAAI,CAAC,EAAE;oBACX,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,IAAI,EAAE;wBACT,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;wBAC7C,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACvB;oBACD,IAAI;wBACF,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;wBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;qBAC/B;oBAAC,OAAO,GAAG,EAAE;wBACZ,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,OAAO,EAAE,GAAG,CAAC,CAAC;wBACvD,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;qBACtB;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,CAAC,EAAE;oBACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;oBAC7C,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;oBACvD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACL,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IA7Ce,wBAAgB,mBA6C/B,CAAA;AACH,CAAC,EAhDS,OAAO,KAAP,OAAO,QAgDhB;AAED,eAAe,SAAS,CAAC"}
1
+ {"version":3,"file":"marked.js","sourceRoot":"","sources":["../../../../src/components/notebook/marked/marked.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAoB,EAAE;IAC7C,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAC3B,OAAO;QACL,MAAM,EAAE,CAAC,OAAe,EAAmB,EAAE,CAC3C,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACtC,MAAM,CAAC,OAAO,EAAE,CAAC,GAAQ,EAAE,OAAe,EAAE,EAAE;gBAC5C,IAAI,GAAG,EAAE;oBACP,MAAM,CAAC,GAAG,CAAC,CAAC;iBACb;qBAAM;oBACL,OAAO,CAAC,OAAO,CAAC,CAAC;iBAClB;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;KACL,CAAC;AACJ,CAAC,CAAC;AAEF,IAAU,OAAO,CAgDhB;AAhDD,WAAU,OAAO;IACf,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAC9B,SAAgB,gBAAgB;QAC9B,IAAI,iBAAiB,EAAE;YACrB,OAAO;SACR;aAAM;YACL,iBAAiB,GAAG,IAAI,CAAC;SAC1B;QACD,MAAM,CAAC,UAAU,CAAC;YAChB,GAAG,EAAE,IAAI;YACT,QAAQ,EAAE,KAAK;YACf,0EAA0E;YAC1E,UAAU,EAAE,WAAW;YACvB,SAAS,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;gBAClC,MAAM,EAAE,GAAG,CAAC,GAAiB,EAAE,IAAY,EAAE,EAAE;oBAC7C,IAAI,QAAQ,EAAE;wBACZ,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;qBACrB;oBACD,OAAO,IAAI,CAAC;gBACd,CAAC,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE;oBACT,4BAA4B;oBAC5B,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;iBACvB;gBACD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;qBACd,IAAI,CAAC,IAAI,CAAC,EAAE;oBACX,MAAM,EAAE,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;oBACzC,IAAI,CAAC,IAAI,EAAE;wBACT,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;wBAC7C,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;qBACvB;oBACD,IAAI;wBACF,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;wBACzB,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;qBAC/B;oBAAC,OAAO,GAAQ,EAAE;wBACjB,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,OAAO,EAAE,GAAG,CAAC,CAAC;wBACvD,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;qBACtB;gBACH,CAAC,CAAC;qBACD,KAAK,CAAC,GAAG,CAAC,EAAE;oBACX,OAAO,CAAC,KAAK,CAAC,uBAAuB,IAAI,EAAE,CAAC,CAAC;oBAC7C,OAAO,CAAC,KAAK,CAAC,kCAAkC,GAAG,EAAE,CAAC,CAAC;oBACvD,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;gBACxB,CAAC,CAAC,CAAC;gBACL,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC,CAAC;IACL,CAAC;IA7Ce,wBAAgB,mBA6C/B,CAAA;AACH,CAAC,EAhDS,OAAO,KAAP,OAAO,QAgDhB;AAED,eAAe,SAAS,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { INotebookModel, NotebookModelFactory } from "@jupyterlab/notebook";
2
+ import { IModelDB } from "@jupyterlab/observables";
3
+ export declare class CustomNotebookModelFactory extends NotebookModelFactory {
4
+ /** @override */
5
+ constructor(options: NotebookModelFactory.IOptions);
6
+ /** @override */
7
+ createNew(languagePreference?: string, modelDB?: IModelDB, isInitialized?: boolean): INotebookModel;
8
+ }
9
+ export default CustomNotebookModelFactory;
@@ -0,0 +1,14 @@
1
+ import { NotebookModelFactory } from "@jupyterlab/notebook";
2
+ export class CustomNotebookModelFactory extends NotebookModelFactory {
3
+ /** @override */
4
+ constructor(options) {
5
+ super(options);
6
+ }
7
+ /** @override */
8
+ createNew(languagePreference, modelDB, isInitialized) {
9
+ const model = super.createNew(languagePreference, modelDB, isInitialized);
10
+ return model;
11
+ }
12
+ }
13
+ export default CustomNotebookModelFactory;
14
+ //# sourceMappingURL=CustomNotebookModelFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CustomNotebookModelFactory.js","sourceRoot":"","sources":["../../../../src/components/notebook/model/CustomNotebookModelFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAG5E,MAAM,OAAO,0BAA2B,SAAQ,oBAAoB;IAElE,gBAAgB;IAChB,YAAY,OAAsC;QAChD,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED,gBAAgB;IAChB,SAAS,CACP,kBAA2B,EAC3B,OAAkB,EAClB,aAAuB;QAEvB,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,kBAAkB,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;QAC1E,OAAO,KAAK,CAAC;IACf,CAAC;CAEF;AAED,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,8 @@
1
+ .jp-RenderedJSON {
2
+ height: auto;
3
+ }
4
+ /*
5
+ .jp-RenderedText[data-mime-type='application/vnd.jupyter.stderr'] {
6
+ background: rgba(244, 67, 54, 0.28);
7
+ }
8
+ */
@@ -1,15 +1,24 @@
1
1
  import * as nbformat from '@jupyterlab/nbformat';
2
- import Kernel from '../../jupyter/services/kernel/Kernel';
2
+ import Kernel from './../../jupyter/services/kernel/Kernel';
3
+ import '@lumino/default-theme/style/index.css';
4
+ import './Output.css';
3
5
  export declare type IOutputProps = {
4
6
  initialOutput?: [nbformat.IOutput];
5
7
  kernel: Kernel;
6
8
  autoRun: boolean;
9
+ disableRun: boolean;
7
10
  showEditor: boolean;
8
11
  code: string;
9
- executeTrigger: number;
12
+ codePre?: string;
10
13
  clearTrigger: number;
14
+ sourceId: string;
15
+ receipt?: string;
16
+ store?: any;
17
+ executeTrigger: number;
18
+ toolbarPosition: 'up' | 'middle' | 'none';
19
+ insertText?: (payload?: any) => string;
11
20
  };
12
- declare const Output: {
21
+ export declare const Output: {
13
22
  (props: IOutputProps): import("@emotion/react/jsx-runtime").JSX.Element;
14
23
  defaultProps: Partial<IOutputProps>;
15
24
  };
@@ -1,40 +1,108 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
1
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
2
2
  import { useState, useMemo, useEffect } from 'react';
3
+ import { useDispatch } from 'react-redux';
4
+ import Stack from '@mui/material/Stack';
5
+ import LinearProgress from '@mui/material/LinearProgress';
3
6
  import { OutputAreaModel } from '@jupyterlab/outputarea';
4
7
  import OutputAdapter from './OutputAdapter';
5
- import CodeMirrorEditor from '../editor/CodeMirrorEditor';
6
- import LuminoAttached from '../../jupyter/lumino/LuminoAttached';
7
- const Output = (props) => {
8
- const { initialOutput, autoRun, code, kernel, showEditor, executeTrigger, clearTrigger } = props;
8
+ import { selectExecute, outputActions, outputReducer } from './OutputState';
9
+ import LuminoAttached from './../../jupyter/lumino/LuminoAttached';
10
+ import CodeMirrorEditor from '././../codemirror/CodeMirrorEditor';
11
+ import injectableStore from '../../state/Store';
12
+ import '@lumino/default-theme/style/index.css';
13
+ /*
14
+ import "@jupyterlab/outputarea/style/index.css";
15
+ import '@jupyterlab/json-extension/style/index.css';
16
+ import "@jupyterlab/theme-light-extension/style/theme.css";
17
+ import "@@jupyter-widgets/base/css/index.css";
18
+ import "@jupyter-widgets/controls/css/widgets-base.css";
19
+ */
20
+ import './Output.css';
21
+ const KernelRunning = () => (_jsx(Stack, Object.assign({ sx: { width: '100%', color: 'grey.500' }, spacing: 2 }, { children: _jsx(LinearProgress, { color: "primary" }, void 0) }), void 0));
22
+ export const Output = (props) => {
23
+ const { initialOutput, autoRun, code, kernel, showEditor, clearTrigger, executeTrigger, sourceId, receipt, disableRun, insertText, toolbarPosition, codePre } = props;
24
+ const [kernelStatus, setKernelStatus] = useState('unknown');
25
+ const store = props.store || injectableStore;
26
+ useMemo(() => {
27
+ store.inject('outputs', outputReducer);
28
+ }, []);
29
+ const dispatch = useDispatch();
30
+ useEffect(() => {
31
+ kernel.getJupyterKernel().then((kernelConnection) => {
32
+ setKernelStatus(kernelConnection.status);
33
+ kernelConnection.statusChanged.connect((kernelConnection, status) => {
34
+ setKernelStatus(status);
35
+ });
36
+ });
37
+ return () => {
38
+ // kernel.getJupyterKernel().then(k => k.shutdown().then(() => console.log(`Kernel ${k.clientId} is terminated.`)));
39
+ };
40
+ }, []);
9
41
  const [model] = useState(new OutputAreaModel({
10
42
  trusted: true,
11
43
  values: initialOutput,
12
44
  }));
13
- const Output = useMemo(() => {
14
- return new OutputAdapter(kernel.getJupyterKernel(), model, {});
15
- }, []);
45
+ const outputAdapter = useMemo(() => {
46
+ const outputAdapter = new OutputAdapter(kernel.getJupyterKernel(), model, {});
47
+ if (receipt) {
48
+ outputAdapter.outputArea.model.changed.connect((sender, change) => {
49
+ if (change.type === 'add') {
50
+ change.newValues.map(val => {
51
+ if (val && val.data) {
52
+ // const out = val.data['application/vnd.jupyter.stdout'];
53
+ const out = val.data['text/html'];
54
+ if (out) {
55
+ if (out.indexOf(receipt) > -1) {
56
+ dispatch(outputActions.grade({
57
+ sourceId,
58
+ success: true,
59
+ }));
60
+ }
61
+ }
62
+ }
63
+ });
64
+ }
65
+ });
66
+ }
67
+ return outputAdapter;
68
+ }, [sourceId]);
69
+ const executeRequest = selectExecute(sourceId);
16
70
  useEffect(() => {
17
- if (!showEditor && autoRun) {
18
- Output.execute(code);
71
+ if (executeRequest) {
72
+ outputAdapter.execute(executeRequest.source);
19
73
  }
20
- }, [executeTrigger]);
74
+ }, [executeRequest]);
21
75
  useEffect(() => {
22
- if (showEditor) {
23
- Output.execute(code);
76
+ if (autoRun) {
77
+ outputAdapter.execute(code);
24
78
  }
25
79
  }, [executeTrigger]);
26
80
  useEffect(() => {
27
81
  if (showEditor) {
28
- Output.clearOutput();
82
+ outputAdapter.clearOutput();
29
83
  }
30
84
  }, [clearTrigger]);
31
- return _jsxs("div", { children: [_jsx("div", { children: showEditor &&
32
- _jsx(CodeMirrorEditor, { autoRun: autoRun, code: code, outputAdapter: Output }, void 0) }, void 0),
85
+ return (_jsxs(_Fragment, { children: [showEditor &&
86
+ _jsx("div", Object.assign({ css: {
87
+ '& .cm-editor': {
88
+ borderRadius: '5px',
89
+ },
90
+ } }, { children: _jsx(CodeMirrorEditor, { autoRun: autoRun, code: code, codePre: codePre, kernel: kernel, outputAdapter: outputAdapter, sourceId: sourceId, disableRun: disableRun, insertText: insertText, toolbarPosition: toolbarPosition }, void 0) }), void 0),
91
+ (kernelStatus !== 'idle') && _jsx(KernelRunning, {}, void 0),
33
92
  _jsx("div", Object.assign({ css: {
34
93
  '& .jp-OutputPrompt': {
35
94
  display: 'none',
36
95
  },
37
- } }, { children: _jsx(LuminoAttached, { children: Output.panel }, void 0) }), void 0)] }, void 0);
96
+ '& .jp-OutputArea': {
97
+ fontSize: '10px',
98
+ },
99
+ '& pre': {
100
+ fontSize: '12px',
101
+ wordBreak: 'break-all',
102
+ wordWrap: 'break-word',
103
+ whiteSpace: 'pre-wrap',
104
+ },
105
+ } }, { children: _jsx(LuminoAttached, { children: outputAdapter.panel }, void 0) }), void 0)] }, void 0));
38
106
  };
39
107
  Output.defaultProps = {
40
108
  initialOutput: [
@@ -42,13 +110,15 @@ Output.defaultProps = {
42
110
  "output_type": "execute_result",
43
111
  "data": {
44
112
  "text/html": [
45
- "<h3>I am the default output... 👉 Run the cell to update me... 👀</h3>"
113
+ "<h3>I am the default output... 👉 Run the snippet to update me... 👀</h3>"
46
114
  ]
47
115
  },
48
116
  "execution_count": 0,
49
117
  "metadata": {},
50
118
  }
51
119
  ],
120
+ disableRun: false,
121
+ toolbarPosition: 'up',
52
122
  executeTrigger: 0,
53
123
  clearTrigger: 0,
54
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"Output.js","sourceRoot":"","sources":["../../../src/components/outputs/Output.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,OAAO,aAAa,MAAM,iBAAiB,CAAC;AAE5C,OAAO,gBAAgB,MAAM,4BAA4B,CAAC;AAC1D,OAAO,cAAc,MAAM,qCAAqC,CAAC;AAYjE,MAAM,MAAM,GAAG,CAAC,KAAmB,EAAE,EAAE;IACrC,MAAM,EAAE,aAAa,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,KAAK,CAAC;IACjG,MAAM,CAAC,KAAK,CAAC,GAAG,QAAQ,CAAC,IAAI,eAAe,CAAC;QAC3C,OAAO,EAAE,IAAI;QACb,MAAM,EAAE,aAAa;KACtB,CAAC,CAAC,CAAC;IACJ,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE;QAAG,OAAO,IAAI,aAAa,CACrD,MAAM,CAAC,gBAAgB,EAAE,EACzB,KAAK,EACL,EAAE,CACH,CAAA;IAAA,CAAC,EAAE,EAAE,CAAC,CAAC;IACR,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,UAAU,IAAI,OAAO,EAAE;YAC1B,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IACrB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACtB;IACH,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC,CAAC;IACrB,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,UAAU,EAAE;YACd,MAAM,CAAC,WAAW,EAAE,CAAC;SACtB;IACH,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IACnB,OAAO,0BACL,wBACI,UAAU;oBACV,KAAC,gBAAgB,IACf,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,IAAI,EACV,aAAa,EAAE,MAAM,WACrB,WAEA;YACN,4BACE,GAAG,EAAE;oBACH,oBAAoB,EAAE;wBACpB,OAAO,EAAE,MAAM;qBAChB;iBACF,gBAED,KAAC,cAAc,cAAE,MAAM,CAAC,KAAK,WAAkB,YAC3C,YACF,CAAA;AACR,CAAC,CAAA;AAED,MAAM,CAAC,YAAY,GAAG;IACpB,aAAa,EAAE;QACb;YACE,aAAa,EAAE,gBAAgB;YAC/B,MAAM,EAAE;gBACN,WAAW,EAAE;oBACX,2EAA2E;iBAC5E;aACF;YACD,iBAAiB,EAAE,CAAC;YACpB,UAAU,EAAE,EAAE;SACf;KACF;IACD,cAAc,EAAE,CAAC;IACjB,YAAY,EAAE,CAAC;CACS,CAAC;AAE3B,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"Output.js","sourceRoot":"","sources":["../../../src/components/outputs/Output.tsx"],"names":[],"mappings":"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"}
@@ -1,18 +1,17 @@
1
1
  import { OutputArea, OutputAreaModel } from '@jupyterlab/outputarea';
2
2
  import { Kernel } from '@jupyterlab/services';
3
- import '@lumino/default-theme/style/index.css';
4
- import '@jupyterlab/json-extension/style/index.css';
5
- import './OutputAdapter.css';
6
- declare class OutputAdapter {
7
- private _kernelConnectionPromise;
3
+ export declare class OutputAdapter {
4
+ private _kernelConnectionPromise?;
8
5
  private _renderers;
9
6
  private _outputArea;
10
7
  private _msgLoading;
11
8
  private _rendermime;
12
9
  private _iPyWidgetsClassicManager;
13
10
  constructor(kernel: Promise<Kernel.IKernelConnection>, model: OutputAreaModel, options?: any);
11
+ get outputArea(): OutputArea;
14
12
  private renderCell;
15
13
  execute(code: string): void;
14
+ interrupt(): void;
16
15
  clearOutput(): void;
17
16
  private render;
18
17
  get panel(): OutputArea;
@@ -1,24 +1,27 @@
1
1
  import { OutputArea } from '@jupyterlab/outputarea';
2
2
  import { RenderMimeRegistry, standardRendererFactories } from '@jupyterlab/rendermime';
3
3
  import { rendererFactory as jsonRendererFactory } from '@jupyterlab/json-extension';
4
- import { IPyWidgetsClassicManager } from "../../jupyter/ipywidgets/IPyWidgetsClassicManager";
4
+ import { rendererFactory as javascriptRendererFactory } from '@jupyterlab/javascript-extension';
5
5
  import { requireLoader } from "@jupyter-widgets/html-manager";
6
6
  import { WIDGET_MIMETYPE, WidgetRenderer } from "@jupyter-widgets/html-manager/lib/output_renderers";
7
- // import { activateWidgetExtension } from "../../ipywidgets/IPyWidgetsJupyterLabPlugin";
8
- // import { activatePlotlyWidgetExtension } from "../../ipywidgets/plotly/jupyterlab-plugin";
9
- import '@lumino/default-theme/style/index.css';
10
- import '@jupyterlab/json-extension/style/index.css';
11
- import './OutputAdapter.css';
12
- class OutputAdapter {
7
+ import { IPyWidgetsClassicManager } from "./../../jupyter/ipywidgets/IPyWidgetsClassicManager";
8
+ // import { activateWidgetExtension } from "./../../jupyter/ipywidgets/IPyWidgetsJupyterLabPlugin";
9
+ // import { activatePlotlyWidgetExtension } from "./../../jupyter/ipywidgets/plotly/JupyterlabPlugin";
10
+ export class OutputAdapter {
13
11
  constructor(kernel, model, options = {}) {
14
12
  this._kernelConnectionPromise = kernel;
15
13
  this._msgLoading = options.msgLoading || 'Loading...';
16
14
  this._iPyWidgetsClassicManager = new IPyWidgetsClassicManager({ loader: requireLoader });
17
- this._renderers = standardRendererFactories.filter(_ => true);
15
+ this._renderers = standardRendererFactories.filter(factory => factory.mimeTypes[0] !== 'text/javascript');
18
16
  this._renderers.push(jsonRendererFactory);
17
+ this._renderers.push(javascriptRendererFactory);
19
18
  this._rendermime = new RenderMimeRegistry({
20
19
  initialFactories: this._renderers,
21
20
  });
21
+ this._outputArea = new OutputArea({
22
+ model: model,
23
+ rendermime: this._rendermime,
24
+ });
22
25
  this._rendermime.addFactory({
23
26
  safe: false,
24
27
  mimeTypes: [WIDGET_MIMETYPE],
@@ -35,6 +38,9 @@ class OutputAdapter {
35
38
  this.renderCell(model);
36
39
  }
37
40
  }
41
+ get outputArea() {
42
+ return this._outputArea;
43
+ }
38
44
  renderCell(model) {
39
45
  this._outputArea = new OutputArea({
40
46
  model: model,
@@ -48,6 +54,11 @@ class OutputAdapter {
48
54
  return;
49
55
  }
50
56
  }
57
+ interrupt() {
58
+ this._kernelConnectionPromise.then((kernelConnection) => {
59
+ kernelConnection.interrupt();
60
+ });
61
+ }
51
62
  clearOutput() {
52
63
  this._outputArea.model.clear();
53
64
  }
@@ -1 +1 @@
1
- {"version":3,"file":"OutputAdapter.js","sourceRoot":"","sources":["../../../src/components/outputs/OutputAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"OutputAdapter.js","sourceRoot":"","sources":["../../../src/components/outputs/OutputAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAmB,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAe,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACpG,OAAO,EAAE,eAAe,IAAI,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACpF,OAAO,EAAE,eAAe,IAAI,yBAAyB,EAAE,MAAM,kCAAkC,CAAC;AAEhG,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,wBAAwB,EAAE,MAAM,qDAAqD,CAAC;AAC/F,mGAAmG;AACnG,sGAAsG;AAEtG,MAAM,OAAO,aAAa;IAQxB,YACE,MAAyC,EACzC,KAAsB,EACtB,UAAe,EAAE;QAEjB,IAAI,CAAC,wBAAwB,GAAG,MAAM,CAAC;QACvC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,UAAU,IAAI,YAAY,CAAC;QACtD,IAAI,CAAC,yBAAyB,GAAG,IAAI,wBAAwB,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;QACzF,IAAI,CAAC,UAAU,GAAG,yBAAyB,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,iBAAiB,CAAC,CAAC;QAC1G,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QAChD,IAAI,CAAC,WAAW,GAAG,IAAI,kBAAkB,CAAC;YACxC,gBAAgB,EAAE,IAAI,CAAC,UAAU;SAClC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC;YAChC,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,UAAU,CACzB;YACE,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,CAAC,eAAe,CAAC;YAC5B,cAAc,EAAE,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,yBAAyB,CAAC;SACzF,EACD,CAAC,CACF,CAAC;QACN,yFAAyF;QACzF,oDAAoD;QAChD,IAAI,IAAI,CAAC,wBAAwB,EAAE;YACjC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,CAAC,gBAA0C,EAAE,EAAE;gBAChF,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAA;YACrE,CAAC,CAAC,CAAC;SACJ;QACD,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE;YACvB,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;SACxB;IACH,CAAC;IAED,IAAW,UAAU;QACnB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEO,UAAU,CAAC,KAAsB;QACvC,IAAI,CAAC,WAAW,GAAG,IAAI,UAAU,CAAC;YAChC,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,IAAI,CAAC,WAAW;SAC7B,CAAC,CAAC;IACL,CAAC;IAEM,OAAO,CAAC,IAAY;QACzB,IAAI,IAAI,CAAC,wBAAwB,EAAE;YACjC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAClB,OAAO;SACR;IACH,CAAC;IAEM,SAAS;QACd,IAAI,CAAC,wBAAyB,CAAC,IAAI,CAAC,CAAC,gBAA0C,EAAE,EAAE;YACjF,gBAAgB,CAAC,SAAS,EAAE,CAAC;QAC/B,CAAC,CAAC,CAAC;IACL,CAAC;IAEM,WAAW;QAChB,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;IACjC,CAAC;IAEO,MAAM,CAAC,IAAY;QACzB,IAAI,CAAC,wBAAyB,CAAC,IAAI,CAAC,CAAC,gBAA0C,EAAE,EAAE;YACjF,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,gBAAgB,CAAC,cAAc,CAAC,EAAC,IAAI,EAAC,CAAC,CAAA;QACnE,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC;YACzB,WAAW,EAAE,QAAQ;YACrB,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,IAAI,CAAC,WAAW;SACvB,CAAC,CAAC;QACH,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;CAEF;AAED,eAAe,aAAa,CAAC"}