@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.
- package/lib/JupyterExample.d.ts +1 -0
- package/lib/JupyterExample.js +56 -0
- package/lib/JupyterExample.js.map +1 -0
- package/lib/JupyterLiteExample.d.ts +1 -0
- package/lib/JupyterLiteExample.js +10 -0
- package/lib/JupyterLiteExample.js.map +1 -0
- package/lib/components/cell/Cell.css +9 -3
- package/lib/components/cell/Cell.d.ts +2 -1
- package/lib/components/cell/Cell.js +34 -27
- package/lib/components/cell/Cell.js.map +1 -1
- package/lib/components/cell/CellAdapter.d.ts +2 -1
- package/lib/components/cell/CellAdapter.js +11 -12
- package/lib/components/cell/CellAdapter.js.map +1 -1
- package/lib/components/cell/CellState.d.ts +1 -1
- package/lib/components/cell/CellState.js +11 -11
- package/lib/components/cell/CellState.js.map +1 -1
- package/lib/components/codemirror/CodeMirrorEditor.d.ts +14 -0
- package/lib/components/codemirror/CodeMirrorEditor.js +110 -0
- package/lib/components/codemirror/CodeMirrorEditor.js.map +1 -0
- package/lib/components/codemirror/CodeMirrorTheme.d.ts +3 -0
- package/lib/components/codemirror/CodeMirrorTheme.js +21 -0
- package/lib/components/codemirror/CodeMirrorTheme.js.map +1 -0
- package/lib/components/commands/Commands.d.ts +1 -1
- package/lib/components/commands/Commands.js +1 -1
- package/lib/components/commands/Commands.js.map +1 -1
- package/lib/components/commands/CommandsState.d.ts +1 -1
- package/lib/components/commands/CommandsState.js +7 -7
- package/lib/components/commands/CommandsState.js.map +1 -1
- package/lib/components/console/{ConsoleAdapter.css → Console.css} +4 -0
- package/lib/components/console/Console.d.ts +2 -1
- package/lib/components/console/Console.js +10 -4
- package/lib/components/console/Console.js.map +1 -1
- package/lib/components/console/ConsoleAdapter.d.ts +4 -2
- package/lib/components/console/ConsoleAdapter.js +63 -65
- package/lib/components/console/ConsoleAdapter.js.map +1 -1
- package/lib/components/console/ConsoleState.d.ts +1 -1
- package/lib/components/console/ConsoleState.js +8 -8
- package/lib/components/console/ConsoleState.js.map +1 -1
- package/lib/components/dialog/Dialog.d.ts +1 -1
- package/lib/components/dialog/Dialog.js +1 -1
- package/lib/components/dialog/Dialog.js.map +1 -1
- package/lib/components/filebrowser/FileBrowser.d.ts +1 -1
- package/lib/components/filebrowser/FileBrowser.js +1 -1
- package/lib/components/filebrowser/FileBrowser.js.map +1 -1
- package/lib/components/filebrowser/FileBrowserState.d.ts +1 -1
- package/lib/components/filebrowser/FileBrowserState.js +7 -7
- package/lib/components/filebrowser/FileBrowserState.js.map +1 -1
- package/lib/components/ipywidgets/IpyWidgetsComponent.d.ts +2 -2
- package/lib/components/ipywidgets/IpyWidgetsComponent.js +3 -3
- package/lib/components/ipywidgets/IpyWidgetsComponent.js.map +1 -1
- package/lib/components/notebook/Notebook.css +2 -26
- package/lib/components/notebook/Notebook.d.ts +17 -7
- package/lib/components/notebook/Notebook.js +111 -51
- package/lib/components/notebook/Notebook.js.map +1 -1
- package/lib/components/notebook/NotebookAdapter.d.ts +28 -16
- package/lib/components/notebook/NotebookAdapter.js +177 -70
- package/lib/components/notebook/NotebookAdapter.js.map +1 -1
- package/lib/components/notebook/NotebookCommands.d.ts +10 -5
- package/lib/components/notebook/NotebookCommands.js +228 -217
- package/lib/components/notebook/NotebookCommands.js.map +1 -1
- package/lib/components/notebook/NotebookState.d.ts +38 -18
- package/lib/components/notebook/NotebookState.js +104 -37
- package/lib/components/notebook/NotebookState.js.map +1 -1
- package/lib/components/notebook/cell/metadata/CellMetadataEditor.d.ts +7 -0
- package/lib/components/notebook/cell/metadata/CellMetadataEditor.js +43 -0
- package/lib/components/notebook/cell/metadata/CellMetadataEditor.js.map +1 -0
- package/lib/components/notebook/cell/metadata/NbGraderCells.d.ts +12 -0
- package/lib/components/notebook/cell/metadata/NbGraderCells.js +138 -0
- package/lib/components/notebook/cell/metadata/NbGraderCells.js.map +1 -0
- package/lib/components/notebook/{content/NotebookInputPrompt.d.ts → cell/prompt/InputPrompt.d.ts} +5 -8
- package/lib/components/notebook/{content/NotebookInputPrompt.js → cell/prompt/InputPrompt.js} +10 -8
- package/lib/components/notebook/cell/prompt/InputPrompt.js.map +1 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarDefault.d.ts +3 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarDefault.js +63 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarDefault.js.map +1 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarRun.d.ts +3 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarRun.js +38 -0
- package/lib/components/notebook/cell/sidebar/CellSidebarRun.js.map +1 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.d.ts +19 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.js +22 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarContentFactory.js.map +1 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.d.ts +16 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.js +25 -0
- package/lib/components/notebook/cell/sidebar/base/CellSidebarWidget.js.map +1 -0
- package/lib/components/notebook/{render → marked}/marked.d.ts +0 -0
- package/lib/components/notebook/{render → marked}/marked.js +0 -0
- package/lib/components/notebook/{render → marked}/marked.js.map +1 -1
- package/lib/components/notebook/model/CustomNotebookModelFactory.d.ts +9 -0
- package/lib/components/notebook/model/CustomNotebookModelFactory.js +14 -0
- package/lib/components/notebook/model/CustomNotebookModelFactory.js.map +1 -0
- package/lib/components/outputs/Output.css +8 -0
- package/lib/components/outputs/Output.d.ts +12 -3
- package/lib/components/outputs/Output.js +88 -18
- package/lib/components/outputs/Output.js.map +1 -1
- package/lib/components/outputs/OutputAdapter.d.ts +4 -5
- package/lib/components/outputs/OutputAdapter.js +19 -8
- package/lib/components/outputs/OutputAdapter.js.map +1 -1
- package/lib/components/outputs/OutputState.d.ts +51 -12
- package/lib/components/outputs/OutputState.js +109 -17
- package/lib/components/outputs/OutputState.js.map +1 -1
- package/lib/components/outputs/OutputToolbar.d.ts +12 -0
- package/lib/components/outputs/OutputToolbar.js +42 -0
- package/lib/components/outputs/OutputToolbar.js.map +1 -0
- package/lib/components/settings/Settings.d.ts +1 -1
- package/lib/components/settings/Settings.js +1 -1
- package/lib/components/settings/Settings.js.map +1 -1
- package/lib/components/settings/SettingsState.d.ts +1 -1
- package/lib/components/settings/SettingsState.js +7 -7
- package/lib/components/settings/SettingsState.js.map +1 -1
- package/lib/components/terminal/TerminalState.d.ts +1 -1
- package/lib/components/terminal/TerminalState.js +5 -5
- package/lib/components/terminal/TerminalState.js.map +1 -1
- package/lib/index.d.ts +42 -22
- package/lib/index.js +44 -22
- package/lib/index.js.map +1 -1
- package/lib/jupyter/Jupyter.d.ts +10 -2
- package/lib/jupyter/Jupyter.js +11 -16
- package/lib/jupyter/Jupyter.js.map +1 -1
- package/lib/jupyter/{AuthError.d.ts → JupyterAuthError.d.ts} +2 -2
- package/lib/jupyter/JupyterAuthError.js +8 -0
- package/lib/jupyter/JupyterAuthError.js.map +1 -0
- package/lib/jupyter/JupyterConfig.d.ts +2 -1
- package/lib/jupyter/JupyterConfig.js +35 -11
- package/lib/jupyter/JupyterConfig.js.map +1 -1
- package/lib/jupyter/JupyterContext.d.ts +6 -1
- package/lib/jupyter/JupyterContext.js +49 -15
- package/lib/jupyter/JupyterContext.js.map +1 -1
- package/lib/jupyter/{Handlers.d.ts → JupyterHandlers.d.ts} +1 -1
- package/lib/jupyter/{Handlers.js → JupyterHandlers.js} +4 -4
- package/lib/jupyter/JupyterHandlers.js.map +1 -0
- package/lib/jupyter/ipywidgets/IPyWidgetsAttached.d.ts +1 -1
- package/lib/jupyter/ipywidgets/IPyWidgetsAttached.js +2 -2
- package/lib/jupyter/ipywidgets/IpyWidgetsManager.d.ts +1 -1
- package/lib/jupyter/ipywidgets/IpyWidgetsManager.js +1 -1
- package/lib/jupyter/ipywidgets/IpyWidgetsManager.js.map +1 -1
- package/lib/jupyter/lite/LiteServer.d.ts +2 -0
- package/lib/jupyter/lite/LiteServer.js +87 -0
- package/lib/jupyter/lite/LiteServer.js.map +1 -0
- package/lib/jupyter/lumino/LuminoAttached.d.ts +2 -8
- package/lib/jupyter/lumino/LuminoAttached.js +17 -19
- package/lib/jupyter/lumino/LuminoAttached.js.map +1 -1
- package/lib/jupyter/lumino/LuminoDetached.d.ts +1 -1
- package/lib/jupyter/lumino/LuminoDetached.js +1 -1
- package/lib/jupyter/lumino/LuminoDetached.js.map +1 -1
- package/lib/jupyter/lumino/LuminoNotebook.d.ts +5 -0
- package/lib/jupyter/lumino/LuminoNotebook.js +28 -0
- package/lib/jupyter/lumino/LuminoNotebook.js.map +1 -0
- package/lib/jupyter/services/kernel/Kernel.js +4 -4
- package/lib/jupyter/services/kernel/Kernel.js.map +1 -1
- package/lib/state/State.d.ts +2 -2
- package/lib/state/State.js +4 -4
- package/lib/state/State.js.map +1 -1
- package/lib/state/Store.d.ts +3 -1
- package/lib/state/Store.js +19 -23
- package/lib/state/Store.js.map +1 -1
- package/lib/utils/Ids.d.ts +2 -0
- package/lib/utils/Ids.js +11 -0
- package/lib/utils/Ids.js.map +1 -0
- package/package.json +13 -12
- package/lib/components/editor/CodeMirrorEditor.d.ts +0 -7
- package/lib/components/editor/CodeMirrorEditor.js +0 -62
- package/lib/components/editor/CodeMirrorEditor.js.map +0 -1
- package/lib/components/filebrowser/FileBrowserTree.d.ts +0 -2
- package/lib/components/filebrowser/FileBrowserTree.js +0 -60
- package/lib/components/filebrowser/FileBrowserTree.js.map +0 -1
- package/lib/components/notebook/content/CellSidebar.d.ts +0 -8
- package/lib/components/notebook/content/CellSidebar.js +0 -23
- package/lib/components/notebook/content/CellSidebar.js.map +0 -1
- package/lib/components/notebook/content/ContentFactoryWithSidebar.d.ts +0 -14
- package/lib/components/notebook/content/ContentFactoryWithSidebar.js +0 -20
- package/lib/components/notebook/content/ContentFactoryWithSidebar.js.map +0 -1
- package/lib/components/notebook/content/NotebookInputPrompt.js.map +0 -1
- package/lib/components/outputs/OutputAdapter.css +0 -3
- package/lib/jupyter/AuthError.js +0 -8
- package/lib/jupyter/AuthError.js.map +0 -1
- package/lib/jupyter/Handlers.js.map +0 -1
- package/lib/state/init/Init.d.ts +0 -3
- package/lib/state/init/Init.js +0 -12
- package/lib/state/init/Init.js.map +0 -1
- package/lib/state/init/InitState.d.ts +0 -19
- package/lib/state/init/InitState.js +0 -48
- 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,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,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"}
|
|
File without changes
|
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"marked.js","sourceRoot":"","sources":["../../../../src/components/notebook/
|
|
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"}
|
|
@@ -1,15 +1,24 @@
|
|
|
1
1
|
import * as nbformat from '@jupyterlab/nbformat';
|
|
2
|
-
import Kernel from '
|
|
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
|
-
|
|
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
|
|
6
|
-
import LuminoAttached from '
|
|
7
|
-
|
|
8
|
-
|
|
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
|
|
14
|
-
|
|
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 (
|
|
18
|
-
|
|
71
|
+
if (executeRequest) {
|
|
72
|
+
outputAdapter.execute(executeRequest.source);
|
|
19
73
|
}
|
|
20
|
-
}, [
|
|
74
|
+
}, [executeRequest]);
|
|
21
75
|
useEffect(() => {
|
|
22
|
-
if (
|
|
23
|
-
|
|
76
|
+
if (autoRun) {
|
|
77
|
+
outputAdapter.execute(code);
|
|
24
78
|
}
|
|
25
79
|
}, [executeTrigger]);
|
|
26
80
|
useEffect(() => {
|
|
27
81
|
if (showEditor) {
|
|
28
|
-
|
|
82
|
+
outputAdapter.clearOutput();
|
|
29
83
|
}
|
|
30
84
|
}, [clearTrigger]);
|
|
31
|
-
return _jsxs(
|
|
32
|
-
|
|
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
|
-
|
|
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
|
|
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;
|
|
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
|
-
|
|
4
|
-
|
|
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 {
|
|
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
|
-
|
|
8
|
-
// import {
|
|
9
|
-
import
|
|
10
|
-
|
|
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(
|
|
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":"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;
|
|
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"}
|