@theia/notebook 1.47.1 → 1.48.2
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/browser/contributions/cell-operations.d.ts +8 -0
- package/lib/browser/contributions/cell-operations.d.ts.map +1 -0
- package/lib/browser/contributions/cell-operations.js +37 -0
- package/lib/browser/contributions/cell-operations.js.map +1 -0
- package/lib/browser/contributions/notebook-actions-contribution.d.ts +10 -2
- package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +1 -1
- package/lib/browser/contributions/notebook-actions-contribution.js +61 -7
- package/lib/browser/contributions/notebook-actions-contribution.js.map +1 -1
- package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +16 -1
- package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +1 -1
- package/lib/browser/contributions/notebook-cell-actions-contribution.js +154 -17
- package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +1 -1
- package/lib/browser/notebook-editor-widget.d.ts +8 -2
- package/lib/browser/notebook-editor-widget.d.ts.map +1 -1
- package/lib/browser/notebook-editor-widget.js +38 -13
- package/lib/browser/notebook-editor-widget.js.map +1 -1
- package/lib/browser/notebook-frontend-module.d.ts.map +1 -1
- package/lib/browser/notebook-frontend-module.js +6 -9
- package/lib/browser/notebook-frontend-module.js.map +1 -1
- package/lib/browser/notebook-types.d.ts +10 -2
- package/lib/browser/notebook-types.d.ts.map +1 -1
- package/lib/browser/notebook-types.js.map +1 -1
- package/lib/browser/service/notebook-context-manager.d.ts +24 -0
- package/lib/browser/service/notebook-context-manager.d.ts.map +1 -0
- package/lib/browser/service/notebook-context-manager.js +112 -0
- package/lib/browser/service/notebook-context-manager.js.map +1 -0
- package/lib/browser/service/notebook-editor-widget-service.d.ts +3 -0
- package/lib/browser/service/notebook-editor-widget-service.d.ts.map +1 -1
- package/lib/browser/service/notebook-editor-widget-service.js +21 -11
- package/lib/browser/service/notebook-editor-widget-service.js.map +1 -1
- package/lib/browser/service/notebook-kernel-service.d.ts +1 -0
- package/lib/browser/service/notebook-kernel-service.d.ts.map +1 -1
- package/lib/browser/service/notebook-kernel-service.js +6 -3
- package/lib/browser/service/notebook-kernel-service.js.map +1 -1
- package/lib/browser/service/notebook-monaco-text-model-service.d.ts +16 -0
- package/lib/browser/service/notebook-monaco-text-model-service.d.ts.map +1 -0
- package/lib/browser/service/notebook-monaco-text-model-service.js +49 -0
- package/lib/browser/service/notebook-monaco-text-model-service.js.map +1 -0
- package/lib/browser/service/notebook-service.d.ts +10 -2
- package/lib/browser/service/notebook-service.d.ts.map +1 -1
- package/lib/browser/service/notebook-service.js +19 -6
- package/lib/browser/service/notebook-service.js.map +1 -1
- package/lib/browser/view/notebook-cell-editor.d.ts +7 -0
- package/lib/browser/view/notebook-cell-editor.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-editor.js +43 -3
- package/lib/browser/view/notebook-cell-editor.js.map +1 -1
- package/lib/browser/view/notebook-cell-list-view.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-list-view.js +6 -3
- package/lib/browser/view/notebook-cell-list-view.js.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar-factory.d.ts +2 -0
- package/lib/browser/view/notebook-cell-toolbar-factory.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar-factory.js +12 -6
- package/lib/browser/view/notebook-cell-toolbar-factory.js.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar.js +1 -1
- package/lib/browser/view/notebook-cell-toolbar.js.map +1 -1
- package/lib/browser/view/notebook-code-cell-view.d.ts +11 -0
- package/lib/browser/view/notebook-code-cell-view.d.ts.map +1 -1
- package/lib/browser/view/notebook-code-cell-view.js +52 -4
- package/lib/browser/view/notebook-code-cell-view.js.map +1 -1
- package/lib/browser/view/notebook-main-toolbar.d.ts +6 -1
- package/lib/browser/view/notebook-main-toolbar.d.ts.map +1 -1
- package/lib/browser/view/notebook-main-toolbar.js +23 -5
- package/lib/browser/view/notebook-main-toolbar.js.map +1 -1
- package/lib/browser/view/notebook-markdown-cell-view.d.ts +2 -0
- package/lib/browser/view/notebook-markdown-cell-view.d.ts.map +1 -1
- package/lib/browser/view/notebook-markdown-cell-view.js +9 -4
- package/lib/browser/view/notebook-markdown-cell-view.js.map +1 -1
- package/lib/browser/view/notebook-viewport-service.d.ts +17 -0
- package/lib/browser/view/notebook-viewport-service.d.ts.map +1 -0
- package/lib/browser/view/notebook-viewport-service.js +60 -0
- package/lib/browser/view/notebook-viewport-service.js.map +1 -0
- package/lib/browser/view-model/notebook-cell-model.d.ts +9 -15
- package/lib/browser/view-model/notebook-cell-model.d.ts.map +1 -1
- package/lib/browser/view-model/notebook-cell-model.js +22 -23
- package/lib/browser/view-model/notebook-cell-model.js.map +1 -1
- package/lib/browser/view-model/notebook-model.d.ts +7 -4
- package/lib/browser/view-model/notebook-model.d.ts.map +1 -1
- package/lib/browser/view-model/notebook-model.js +50 -6
- package/lib/browser/view-model/notebook-model.js.map +1 -1
- package/lib/common/notebook-common.d.ts +7 -0
- package/lib/common/notebook-common.d.ts.map +1 -1
- package/lib/common/notebook-common.js +12 -1
- package/lib/common/notebook-common.js.map +1 -1
- package/package.json +8 -7
- package/src/browser/contributions/cell-operations.ts +38 -0
- package/src/browser/contributions/notebook-actions-contribution.ts +66 -6
- package/src/browser/contributions/notebook-cell-actions-contribution.ts +194 -22
- package/src/browser/notebook-editor-widget.tsx +43 -17
- package/src/browser/notebook-frontend-module.ts +8 -11
- package/src/browser/notebook-types.ts +13 -1
- package/src/browser/service/notebook-context-manager.ts +127 -0
- package/src/browser/service/notebook-editor-widget-service.ts +20 -10
- package/src/browser/service/notebook-kernel-service.ts +6 -2
- package/src/browser/service/notebook-monaco-text-model-service.ts +48 -0
- package/src/browser/service/notebook-service.ts +26 -5
- package/src/browser/style/index.css +25 -8
- package/src/browser/view/notebook-cell-editor.tsx +52 -10
- package/src/browser/view/notebook-cell-list-view.tsx +8 -4
- package/src/browser/view/notebook-cell-toolbar-factory.tsx +9 -4
- package/src/browser/view/notebook-cell-toolbar.tsx +1 -1
- package/src/browser/view/notebook-code-cell-view.tsx +64 -8
- package/src/browser/view/notebook-main-toolbar.tsx +26 -5
- package/src/browser/view/notebook-markdown-cell-view.tsx +9 -4
- package/src/browser/view/notebook-viewport-service.ts +61 -0
- package/src/browser/view-model/notebook-cell-model.ts +26 -33
- package/src/browser/view-model/notebook-model.ts +70 -7
- package/src/common/notebook-common.ts +13 -0
- package/lib/browser/service/notebook-cell-context-manager.d.ts +0 -16
- package/lib/browser/service/notebook-cell-context-manager.d.ts.map +0 -1
- package/lib/browser/service/notebook-cell-context-manager.js +0 -74
- package/lib/browser/service/notebook-cell-context-manager.js.map +0 -1
- package/src/browser/service/notebook-cell-context-manager.ts +0 -72
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-cell-toolbar-factory.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar-factory.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,kDAAkD;AAClD,sCAAiG;AACjG,4DAAkE;AAClE,qFAAgF;AAChF,mEAAmF;AACnF,qDAA8D;
|
|
1
|
+
{"version":3,"file":"notebook-cell-toolbar-factory.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar-factory.tsx"],"names":[],"mappings":"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"}
|
|
@@ -45,7 +45,7 @@ class NotebookCellToolbar extends NotebookCellActionBar {
|
|
|
45
45
|
exports.NotebookCellToolbar = NotebookCellToolbar;
|
|
46
46
|
class NotebookCellSidebar extends NotebookCellActionBar {
|
|
47
47
|
render() {
|
|
48
|
-
return React.createElement("div", { className: 'theia-notebook-cell-sidebar' }, this.state.inlineItems.filter(e => e.isVisible()).map(item => this.renderItem(item)));
|
|
48
|
+
return React.createElement("div", { className: 'theia-notebook-cell-sidebar-toolbar' }, this.state.inlineItems.filter(e => e.isVisible()).map(item => this.renderItem(item)));
|
|
49
49
|
}
|
|
50
50
|
}
|
|
51
51
|
exports.NotebookCellSidebar = NotebookCellSidebar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-cell-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,kDAAkD;AAClD,qDAAsD;AAEtD,sCAA0D;AAY1D,MAAe,qBAAsB,SAAQ,KAAK,CAAC,SAA6D;IAI5G,YAAY,KAA+B;QACvC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHP,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAI7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;YAC/C,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBAChG,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;aAC7D;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEQ,oBAAoB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,UAAU,CAAC,IAA6B;QAC9C,OAAO,6BAAK,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAW,mCAAmC,GAAI,CAAC;IACtJ,CAAC;CAEJ;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,6BAA6B,IAC9C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CAEJ;AARD,kDAQC;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,
|
|
1
|
+
{"version":3,"file":"notebook-cell-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,kDAAkD;AAClD,qDAAsD;AAEtD,sCAA0D;AAY1D,MAAe,qBAAsB,SAAQ,KAAK,CAAC,SAA6D;IAI5G,YAAY,KAA+B;QACvC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHP,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAI7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;YAC/C,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE;gBAChG,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;aAC7D;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEQ,oBAAoB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,UAAU,CAAC,IAA6B;QAC9C,OAAO,6BAAK,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAW,mCAAmC,GAAI,CAAC;IACtJ,CAAC;CAEJ;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,6BAA6B,IAC9C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CAEJ;AARD,kDAQC;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,qCAAqC,IACtD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CACJ;AAPD,kDAOC"}
|
|
@@ -9,17 +9,28 @@ import { CellRenderer } from './notebook-cell-list-view';
|
|
|
9
9
|
import { NotebookCellToolbarFactory } from './notebook-cell-toolbar-factory';
|
|
10
10
|
import { CellExecution, NotebookExecutionStateService } from '../service/notebook-execution-state-service';
|
|
11
11
|
import { DisposableCollection } from '@theia/core';
|
|
12
|
+
import { NotebookContextManager } from '../service/notebook-context-manager';
|
|
13
|
+
import { NotebookViewportService } from './notebook-viewport-service';
|
|
14
|
+
import { EditorPreferences } from '@theia/editor/lib/browser';
|
|
15
|
+
import { BareFontInfo } from '@theia/monaco-editor-core/esm/vs/editor/common/config/fontInfo';
|
|
12
16
|
export declare class NotebookCodeCellRenderer implements CellRenderer {
|
|
13
17
|
protected readonly monacoServices: MonacoEditorServices;
|
|
14
18
|
protected readonly notebookRendererRegistry: NotebookRendererRegistry;
|
|
15
19
|
protected readonly cellOutputWebviewFactory: CellOutputWebviewFactory;
|
|
16
20
|
protected readonly notebookCellToolbarFactory: NotebookCellToolbarFactory;
|
|
17
21
|
protected readonly executionStateService: NotebookExecutionStateService;
|
|
22
|
+
protected readonly notebookContextManager: NotebookContextManager;
|
|
23
|
+
protected readonly notebookViewportService: NotebookViewportService;
|
|
24
|
+
protected readonly editorPreferences: EditorPreferences;
|
|
25
|
+
protected fontInfo: BareFontInfo | undefined;
|
|
18
26
|
render(notebookModel: NotebookModel, cell: NotebookCellModel, handle: number): React.ReactNode;
|
|
27
|
+
protected getOrCreateMonacoFontInfo(): BareFontInfo;
|
|
28
|
+
protected createFontInfo(): BareFontInfo;
|
|
19
29
|
}
|
|
20
30
|
export interface NotebookCodeCellStatusProps {
|
|
21
31
|
cell: NotebookCellModel;
|
|
22
32
|
executionStateService: NotebookExecutionStateService;
|
|
33
|
+
onClick: () => void;
|
|
23
34
|
}
|
|
24
35
|
export interface NotebookCodeCellStatusState {
|
|
25
36
|
currentExecution?: CellExecution;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-code-cell-view.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-code-cell-view.tsx"],"names":[],"mappings":";AAiBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC/F,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AACtE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAE7E,OAAO,EAAE,aAAa,EAAE,6BAA6B,EAAE,MAAM,6CAA6C,CAAC;AAG3G,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"notebook-code-cell-view.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-code-cell-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -29,17 +29,41 @@ const notebook_execution_state_service_1 = require("../service/notebook-executio
|
|
|
29
29
|
const browser_1 = require("@theia/core/lib/browser");
|
|
30
30
|
const common_1 = require("../../common");
|
|
31
31
|
const core_1 = require("@theia/core");
|
|
32
|
+
const notebook_context_manager_1 = require("../service/notebook-context-manager");
|
|
33
|
+
const notebook_viewport_service_1 = require("./notebook-viewport-service");
|
|
34
|
+
const browser_2 = require("@theia/editor/lib/browser");
|
|
35
|
+
const fontInfo_1 = require("@theia/monaco-editor-core/esm/vs/editor/common/config/fontInfo");
|
|
36
|
+
const browser_3 = require("@theia/monaco-editor-core/esm/vs/base/browser/browser");
|
|
32
37
|
let NotebookCodeCellRenderer = class NotebookCodeCellRenderer {
|
|
33
38
|
render(notebookModel, cell, handle) {
|
|
34
39
|
return React.createElement("div", null,
|
|
35
40
|
React.createElement("div", { className: 'theia-notebook-cell-with-sidebar' },
|
|
36
|
-
React.createElement("div",
|
|
41
|
+
React.createElement("div", { className: 'theia-notebook-cell-sidebar' },
|
|
42
|
+
this.notebookCellToolbarFactory.renderSidebar(notebook_cell_actions_contribution_1.NotebookCellActionContribution.CODE_CELL_SIDEBAR_MENU, notebookModel, cell),
|
|
43
|
+
React.createElement(CodeCellExecutionOrder, { cell: cell })),
|
|
37
44
|
React.createElement("div", { className: 'theia-notebook-cell-editor-container' },
|
|
38
|
-
React.createElement(notebook_cell_editor_1.CellEditor, { notebookModel: notebookModel, cell: cell, monacoServices: this.monacoServices }),
|
|
39
|
-
React.createElement(NotebookCodeCellStatus, { cell: cell, executionStateService: this.executionStateService }))),
|
|
45
|
+
React.createElement(notebook_cell_editor_1.CellEditor, { notebookModel: notebookModel, cell: cell, monacoServices: this.monacoServices, notebookContextManager: this.notebookContextManager, notebookViewportService: this.notebookViewportService, fontInfo: this.getOrCreateMonacoFontInfo() }),
|
|
46
|
+
React.createElement(NotebookCodeCellStatus, { cell: cell, executionStateService: this.executionStateService, onClick: () => cell.requestFocusEditor() }))),
|
|
40
47
|
React.createElement("div", { className: 'theia-notebook-cell-with-sidebar' },
|
|
41
48
|
React.createElement(NotebookCodeCellOutputs, { cell: cell, notebook: notebookModel, outputWebviewFactory: this.cellOutputWebviewFactory, renderSidebar: () => this.notebookCellToolbarFactory.renderSidebar(notebook_cell_actions_contribution_1.NotebookCellActionContribution.OUTPUT_SIDEBAR_MENU, notebookModel, cell, cell.outputs[0]) })));
|
|
42
49
|
}
|
|
50
|
+
getOrCreateMonacoFontInfo() {
|
|
51
|
+
if (!this.fontInfo) {
|
|
52
|
+
this.fontInfo = this.createFontInfo();
|
|
53
|
+
this.editorPreferences.onPreferenceChanged(e => this.fontInfo = this.createFontInfo());
|
|
54
|
+
}
|
|
55
|
+
return this.fontInfo;
|
|
56
|
+
}
|
|
57
|
+
createFontInfo() {
|
|
58
|
+
return fontInfo_1.BareFontInfo.createFromRawSettings({
|
|
59
|
+
fontFamily: this.editorPreferences['editor.fontFamily'],
|
|
60
|
+
fontWeight: String(this.editorPreferences['editor.fontWeight']),
|
|
61
|
+
fontSize: this.editorPreferences['editor.fontSize'],
|
|
62
|
+
fontLigatures: this.editorPreferences['editor.fontLigatures'],
|
|
63
|
+
lineHeight: this.editorPreferences['editor.lineHeight'],
|
|
64
|
+
letterSpacing: this.editorPreferences['editor.letterSpacing'],
|
|
65
|
+
}, browser_3.PixelRatio.value);
|
|
66
|
+
}
|
|
43
67
|
};
|
|
44
68
|
(0, tslib_1.__decorate)([
|
|
45
69
|
(0, inversify_1.inject)(monaco_editor_1.MonacoEditorServices),
|
|
@@ -61,6 +85,18 @@ let NotebookCodeCellRenderer = class NotebookCodeCellRenderer {
|
|
|
61
85
|
(0, inversify_1.inject)(notebook_execution_state_service_1.NotebookExecutionStateService),
|
|
62
86
|
(0, tslib_1.__metadata)("design:type", notebook_execution_state_service_1.NotebookExecutionStateService)
|
|
63
87
|
], NotebookCodeCellRenderer.prototype, "executionStateService", void 0);
|
|
88
|
+
(0, tslib_1.__decorate)([
|
|
89
|
+
(0, inversify_1.inject)(notebook_context_manager_1.NotebookContextManager),
|
|
90
|
+
(0, tslib_1.__metadata)("design:type", notebook_context_manager_1.NotebookContextManager)
|
|
91
|
+
], NotebookCodeCellRenderer.prototype, "notebookContextManager", void 0);
|
|
92
|
+
(0, tslib_1.__decorate)([
|
|
93
|
+
(0, inversify_1.inject)(notebook_viewport_service_1.NotebookViewportService),
|
|
94
|
+
(0, tslib_1.__metadata)("design:type", notebook_viewport_service_1.NotebookViewportService)
|
|
95
|
+
], NotebookCodeCellRenderer.prototype, "notebookViewportService", void 0);
|
|
96
|
+
(0, tslib_1.__decorate)([
|
|
97
|
+
(0, inversify_1.inject)(browser_2.EditorPreferences),
|
|
98
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
99
|
+
], NotebookCodeCellRenderer.prototype, "editorPreferences", void 0);
|
|
64
100
|
NotebookCodeCellRenderer = (0, tslib_1.__decorate)([
|
|
65
101
|
(0, inversify_1.injectable)()
|
|
66
102
|
], NotebookCodeCellRenderer);
|
|
@@ -95,7 +131,7 @@ class NotebookCodeCellStatus extends React.Component {
|
|
|
95
131
|
this.toDispose.dispose();
|
|
96
132
|
}
|
|
97
133
|
render() {
|
|
98
|
-
return React.createElement("div", { className: 'notebook-cell-status' },
|
|
134
|
+
return React.createElement("div", { className: 'notebook-cell-status', onClick: () => this.props.onClick() },
|
|
99
135
|
React.createElement("div", { className: 'notebook-cell-status-left' }, this.renderExecutionState()),
|
|
100
136
|
React.createElement("div", { className: 'notebook-cell-status-right' },
|
|
101
137
|
React.createElement("span", null, this.props.cell.language)));
|
|
@@ -189,4 +225,16 @@ class NotebookCodeCellOutputs extends React.Component {
|
|
|
189
225
|
}
|
|
190
226
|
}
|
|
191
227
|
exports.NotebookCodeCellOutputs = NotebookCodeCellOutputs;
|
|
228
|
+
function CodeCellExecutionOrder({ cell }) {
|
|
229
|
+
var _a;
|
|
230
|
+
const [executionOrder, setExecutionOrder] = React.useState((_a = cell.internalMetadata.executionOrder) !== null && _a !== void 0 ? _a : ' ');
|
|
231
|
+
React.useEffect(() => {
|
|
232
|
+
const listener = cell.onDidChangeInternalMetadata(e => {
|
|
233
|
+
var _a;
|
|
234
|
+
setExecutionOrder((_a = cell.internalMetadata.executionOrder) !== null && _a !== void 0 ? _a : ' ');
|
|
235
|
+
});
|
|
236
|
+
return () => listener.dispose();
|
|
237
|
+
}, []);
|
|
238
|
+
return React.createElement("span", { className: 'theia-notebook-code-cell-execution-order' }, `[${executionOrder}]`);
|
|
239
|
+
}
|
|
192
240
|
//# sourceMappingURL=notebook-code-cell-view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-code-cell-view.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-code-cell-view.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,4DAAkE;AAClE,kDAAkD;AAClD,2EAA+E;AAC/E,0EAA+F;AAC/F,8EAAyE;AAGzE,iEAAoD;AAEpD,mFAA6E;AAC7E,4GAAqG;AACrG,kGAA2G;AAC3G,qDAAkD;AAClD,yCAA0D;AAC1D,sCAAmD;
|
|
1
|
+
{"version":3,"file":"notebook-code-cell-view.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-code-cell-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,19 +4,23 @@ import * as React from '@theia/core/shared/react';
|
|
|
4
4
|
import { NotebookModel } from '../view-model/notebook-model';
|
|
5
5
|
import { NotebookKernelService } from '../service/notebook-kernel-service';
|
|
6
6
|
import { ContextKeyService } from '@theia/core/lib/browser/context-key-service';
|
|
7
|
+
import { NotebookContextManager } from '../service/notebook-context-manager';
|
|
7
8
|
export interface NotebookMainToolbarProps {
|
|
8
9
|
notebookModel: NotebookModel;
|
|
9
10
|
menuRegistry: MenuModelRegistry;
|
|
10
11
|
notebookKernelService: NotebookKernelService;
|
|
11
12
|
commandRegistry: CommandRegistry;
|
|
12
13
|
contextKeyService: ContextKeyService;
|
|
14
|
+
editorNode: HTMLElement;
|
|
15
|
+
notebookContextManager: NotebookContextManager;
|
|
13
16
|
}
|
|
14
17
|
export declare class NotebookMainToolbarRenderer {
|
|
15
18
|
protected readonly notebookKernelService: NotebookKernelService;
|
|
16
19
|
protected readonly commandRegistry: CommandRegistry;
|
|
17
20
|
protected readonly menuRegistry: MenuModelRegistry;
|
|
18
21
|
protected readonly contextKeyService: ContextKeyService;
|
|
19
|
-
|
|
22
|
+
protected readonly notebookContextManager: NotebookContextManager;
|
|
23
|
+
render(notebookModel: NotebookModel, editorNode: HTMLElement): React.ReactNode;
|
|
20
24
|
}
|
|
21
25
|
export declare class NotebookMainToolbar extends React.Component<NotebookMainToolbarProps, {
|
|
22
26
|
selectedKernelLabel?: string;
|
|
@@ -27,5 +31,6 @@ export declare class NotebookMainToolbar extends React.Component<NotebookMainToo
|
|
|
27
31
|
render(): React.ReactNode;
|
|
28
32
|
protected renderMenuItem(item: MenuNode): React.ReactNode;
|
|
29
33
|
private getMenuItems;
|
|
34
|
+
private getAllContextKeys;
|
|
30
35
|
}
|
|
31
36
|
//# sourceMappingURL=notebook-main-toolbar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-main-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAc,eAAe,EAAwB,oBAAoB,EAAE,iBAAiB,EAAE,QAAQ,EAAO,MAAM,aAAa,CAAC;AACxI,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;
|
|
1
|
+
{"version":3,"file":"notebook-main-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAc,eAAe,EAAwB,oBAAoB,EAAE,iBAAiB,EAAE,QAAQ,EAAO,MAAM,aAAa,CAAC;AACxI,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAEhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,MAAM,WAAW,wBAAwB;IACrC,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,iBAAiB,CAAC;IAChC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,eAAe,EAAE,eAAe,CAAC;IACjC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,UAAU,EAAE,WAAW,CAAC;IACxB,sBAAsB,EAAE,sBAAsB,CAAC;CAClD;AAED,qBACa,2BAA2B;IACL,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IACtE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAClD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElG,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,GAAG,KAAK,CAAC,SAAS;CASjF;AAED,qBAAa,mBAAoB,SAAQ,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE;IAAE,mBAAmB,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;IAEhH,SAAS,CAAC,SAAS,uBAA8B;gBAErC,KAAK,EAAE,wBAAwB;IAgClC,oBAAoB,IAAI,IAAI;IAI5B,MAAM,IAAI,KAAK,CAAC,SAAS;IAclC,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,GAAG,KAAK,CAAC,SAAS;IA0BzD,OAAO,CAAC,YAAY;IAQpB,OAAO,CAAC,iBAAiB;CAO5B"}
|
|
@@ -24,9 +24,10 @@ const notebook_actions_contribution_1 = require("../contributions/notebook-actio
|
|
|
24
24
|
const notebook_kernel_service_1 = require("../service/notebook-kernel-service");
|
|
25
25
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
26
26
|
const context_key_service_1 = require("@theia/core/lib/browser/context-key-service");
|
|
27
|
+
const notebook_context_manager_1 = require("../service/notebook-context-manager");
|
|
27
28
|
let NotebookMainToolbarRenderer = class NotebookMainToolbarRenderer {
|
|
28
|
-
render(notebookModel) {
|
|
29
|
-
return React.createElement(NotebookMainToolbar, { notebookModel: notebookModel, menuRegistry: this.menuRegistry, notebookKernelService: this.notebookKernelService, commandRegistry: this.commandRegistry, contextKeyService: this.contextKeyService });
|
|
29
|
+
render(notebookModel, editorNode) {
|
|
30
|
+
return React.createElement(NotebookMainToolbar, { notebookModel: notebookModel, menuRegistry: this.menuRegistry, notebookKernelService: this.notebookKernelService, commandRegistry: this.commandRegistry, contextKeyService: this.contextKeyService, editorNode: editorNode, notebookContextManager: this.notebookContextManager });
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
33
|
(0, tslib_1.__decorate)([
|
|
@@ -45,6 +46,10 @@ let NotebookMainToolbarRenderer = class NotebookMainToolbarRenderer {
|
|
|
45
46
|
(0, inversify_1.inject)(context_key_service_1.ContextKeyService),
|
|
46
47
|
(0, tslib_1.__metadata)("design:type", Object)
|
|
47
48
|
], NotebookMainToolbarRenderer.prototype, "contextKeyService", void 0);
|
|
49
|
+
(0, tslib_1.__decorate)([
|
|
50
|
+
(0, inversify_1.inject)(notebook_context_manager_1.NotebookContextManager),
|
|
51
|
+
(0, tslib_1.__metadata)("design:type", notebook_context_manager_1.NotebookContextManager)
|
|
52
|
+
], NotebookMainToolbarRenderer.prototype, "notebookContextManager", void 0);
|
|
48
53
|
NotebookMainToolbarRenderer = (0, tslib_1.__decorate)([
|
|
49
54
|
(0, inversify_1.injectable)()
|
|
50
55
|
], NotebookMainToolbarRenderer);
|
|
@@ -70,7 +75,12 @@ class NotebookMainToolbar extends React.Component {
|
|
|
70
75
|
}));
|
|
71
76
|
// TODO maybe we need a mechanism to check for changes in the menu to update this toolbar
|
|
72
77
|
const contextKeys = new Set();
|
|
73
|
-
this.
|
|
78
|
+
this.getAllContextKeys(this.getMenuItems(), contextKeys);
|
|
79
|
+
props.notebookContextManager.onDidChangeContext(e => {
|
|
80
|
+
if (e.affects(contextKeys)) {
|
|
81
|
+
this.forceUpdate();
|
|
82
|
+
}
|
|
83
|
+
});
|
|
74
84
|
props.contextKeyService.onDidChange(e => {
|
|
75
85
|
if (e.affects(contextKeys)) {
|
|
76
86
|
this.forceUpdate();
|
|
@@ -97,7 +107,7 @@ class NotebookMainToolbar extends React.Component {
|
|
|
97
107
|
itemNodes,
|
|
98
108
|
itemNodes && itemNodes.length > 0 && React.createElement("span", { key: `${item.id}-separator`, className: 'theia-notebook-toolbar-separator' }));
|
|
99
109
|
}
|
|
100
|
-
else if (!item.when || this.props.contextKeyService.match(item.when)) {
|
|
110
|
+
else if (!item.when || this.props.contextKeyService.match(item.when, this.props.editorNode)) {
|
|
101
111
|
const visibleCommand = Boolean(this.props.commandRegistry.getVisibleHandler((_c = item.command) !== null && _c !== void 0 ? _c : '', this.props.notebookModel));
|
|
102
112
|
if (!visibleCommand) {
|
|
103
113
|
return undefined;
|
|
@@ -116,7 +126,15 @@ class NotebookMainToolbar extends React.Component {
|
|
|
116
126
|
getMenuItems() {
|
|
117
127
|
const menuPath = notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR;
|
|
118
128
|
const pluginCommands = this.props.menuRegistry.getMenuNode(menuPath).children;
|
|
119
|
-
|
|
129
|
+
const theiaCommands = this.props.menuRegistry.getMenu([menuPath]).children;
|
|
130
|
+
// TODO add specifc arguments to commands
|
|
131
|
+
return theiaCommands.concat(pluginCommands);
|
|
132
|
+
}
|
|
133
|
+
getAllContextKeys(menus, keySet) {
|
|
134
|
+
menus.filter(item => item.when)
|
|
135
|
+
.forEach(item => { var _a; return (_a = this.props.contextKeyService.parseKeys(item.when)) === null || _a === void 0 ? void 0 : _a.forEach(key => keySet.add(key)); });
|
|
136
|
+
menus.filter(item => item.children && item.children.length > 0)
|
|
137
|
+
.forEach(item => this.getAllContextKeys(item.children, keySet));
|
|
120
138
|
}
|
|
121
139
|
}
|
|
122
140
|
exports.NotebookMainToolbar = NotebookMainToolbar;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-main-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,sCAAwI;AACxI,kDAAkD;AAClD,qDAAkD;AAClD,kGAAiG;AAEjG,gFAA2E;AAC3E,4DAAkE;AAClE,qFAAgF;
|
|
1
|
+
{"version":3,"file":"notebook-main-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -4,9 +4,11 @@ import { NotebookModel } from '../view-model/notebook-model';
|
|
|
4
4
|
import { CellRenderer } from './notebook-cell-list-view';
|
|
5
5
|
import { NotebookCellModel } from '../view-model/notebook-cell-model';
|
|
6
6
|
import { MonacoEditorServices } from '@theia/monaco/lib/browser/monaco-editor';
|
|
7
|
+
import { NotebookContextManager } from '../service/notebook-context-manager';
|
|
7
8
|
export declare class NotebookMarkdownCellRenderer implements CellRenderer {
|
|
8
9
|
private readonly markdownRenderer;
|
|
9
10
|
protected readonly monacoServices: MonacoEditorServices;
|
|
11
|
+
protected readonly notebookContextManager: NotebookContextManager;
|
|
10
12
|
render(notebookModel: NotebookModel, cell: NotebookCellModel): React.ReactNode;
|
|
11
13
|
}
|
|
12
14
|
//# sourceMappingURL=notebook-markdown-cell-view.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-markdown-cell-view.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-markdown-cell-view.tsx"],"names":[],"mappings":";AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;
|
|
1
|
+
{"version":3,"file":"notebook-markdown-cell-view.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-markdown-cell-view.tsx"],"names":[],"mappings":";AAgBA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAGlD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,qBACa,4BAA6B,YAAW,YAAY;IAG7D,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IAEpD,SAAS,CAAC,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAElE,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,iBAAiB,GAAG,KAAK,CAAC,SAAS;CAKjF"}
|
|
@@ -24,9 +24,10 @@ const notebook_cell_editor_1 = require("./notebook-cell-editor");
|
|
|
24
24
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
25
25
|
const monaco_editor_1 = require("@theia/monaco/lib/browser/monaco-editor");
|
|
26
26
|
const core_1 = require("@theia/core");
|
|
27
|
+
const notebook_context_manager_1 = require("../service/notebook-context-manager");
|
|
27
28
|
let NotebookMarkdownCellRenderer = class NotebookMarkdownCellRenderer {
|
|
28
29
|
render(notebookModel, cell) {
|
|
29
|
-
return React.createElement(MarkdownCell, { markdownRenderer: this.markdownRenderer, monacoServices: this.monacoServices, cell: cell, notebookModel: notebookModel });
|
|
30
|
+
return React.createElement(MarkdownCell, { markdownRenderer: this.markdownRenderer, monacoServices: this.monacoServices, cell: cell, notebookModel: notebookModel, notebookContextManager: this.notebookContextManager });
|
|
30
31
|
}
|
|
31
32
|
};
|
|
32
33
|
(0, tslib_1.__decorate)([
|
|
@@ -37,12 +38,16 @@ let NotebookMarkdownCellRenderer = class NotebookMarkdownCellRenderer {
|
|
|
37
38
|
(0, inversify_1.inject)(monaco_editor_1.MonacoEditorServices),
|
|
38
39
|
(0, tslib_1.__metadata)("design:type", monaco_editor_1.MonacoEditorServices)
|
|
39
40
|
], NotebookMarkdownCellRenderer.prototype, "monacoServices", void 0);
|
|
41
|
+
(0, tslib_1.__decorate)([
|
|
42
|
+
(0, inversify_1.inject)(notebook_context_manager_1.NotebookContextManager),
|
|
43
|
+
(0, tslib_1.__metadata)("design:type", notebook_context_manager_1.NotebookContextManager)
|
|
44
|
+
], NotebookMarkdownCellRenderer.prototype, "notebookContextManager", void 0);
|
|
40
45
|
NotebookMarkdownCellRenderer = (0, tslib_1.__decorate)([
|
|
41
46
|
(0, inversify_1.injectable)()
|
|
42
47
|
], NotebookMarkdownCellRenderer);
|
|
43
48
|
exports.NotebookMarkdownCellRenderer = NotebookMarkdownCellRenderer;
|
|
44
|
-
function MarkdownCell({ markdownRenderer, monacoServices, cell, notebookModel }) {
|
|
45
|
-
const [editMode, setEditMode] = React.useState(
|
|
49
|
+
function MarkdownCell({ markdownRenderer, monacoServices, cell, notebookModel, notebookContextManager }) {
|
|
50
|
+
const [editMode, setEditMode] = React.useState(cell.editing);
|
|
46
51
|
React.useEffect(() => {
|
|
47
52
|
const listener = cell.onDidRequestCellEditChange(cellEdit => setEditMode(cellEdit));
|
|
48
53
|
return () => listener.dispose();
|
|
@@ -52,7 +57,7 @@ function MarkdownCell({ markdownRenderer, monacoServices, cell, notebookModel })
|
|
|
52
57
|
markdownContent = `<i class="theia-notebook-empty-markdown">${core_1.nls.localizeByDefault('Empty markdown cell, double-click or press enter to edit.')}</i>`;
|
|
53
58
|
}
|
|
54
59
|
return editMode ?
|
|
55
|
-
React.createElement(notebook_cell_editor_1.CellEditor, { cell: cell, notebookModel: notebookModel, monacoServices: monacoServices }) :
|
|
60
|
+
React.createElement(notebook_cell_editor_1.CellEditor, { cell: cell, notebookModel: notebookModel, monacoServices: monacoServices, notebookContextManager: notebookContextManager }) :
|
|
56
61
|
React.createElement("div", { className: 'theia-notebook-markdown-content', onDoubleClick: () => cell.requestEdit(),
|
|
57
62
|
// This sets the non React HTML node from the markdown renderers output as a child node to this react component
|
|
58
63
|
// This is currently sadly the best way we have to combine React (Virtual Nodes) and normal dom nodes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-markdown-cell-view.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-markdown-cell-view.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,kDAAkD;AAClD,oGAAgG;AAChG,+FAA+F;AAI/F,iEAAoD;AACpD,4DAAkE;AAClE,2EAA+E;AAC/E,sCAAkC;
|
|
1
|
+
{"version":3,"file":"notebook-markdown-cell-view.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-markdown-cell-view.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAEhF,kDAAkD;AAClD,oGAAgG;AAChG,+FAA+F;AAI/F,iEAAoD;AACpD,4DAAkE;AAClE,2EAA+E;AAC/E,sCAAkC;AAClC,kFAA6E;AAG7E,IAAa,4BAA4B,GAAzC,MAAa,4BAA4B;IAUrC,MAAM,CAAC,aAA4B,EAAE,IAAuB;QACxD,OAAO,oBAAC,YAAY,IAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAC7F,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GAAI,CAAC;IAC1G,CAAC;CAEJ,CAAA;AAZG;IADC,IAAA,kBAAM,EAAC,oCAAgB,CAAC;;sEAC2B;AAEpD;IADC,IAAA,kBAAM,EAAC,oCAAoB,CAAC;2CACM,oCAAoB;oEAAC;AAGxD;IADC,IAAA,kBAAM,EAAC,iDAAsB,CAAC;2CACY,iDAAsB;4EAAC;AARzD,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CAexC;AAfY,oEAA4B;AA0BzC,SAAS,YAAY,CAAC,EAAE,gBAAgB,EAAE,cAAc,EAAE,IAAI,EAAE,aAAa,EAAE,sBAAsB,EAAqB;IACtH,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAE7D,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QACpF,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;IACpC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAI,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,IAAI,oCAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;IAC5I,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,eAAe,GAAG,4CAA4C,UAAG,CAAC,iBAAiB,CAAC,2DAA2D,CAAC,MAAM,CAAC;KAC1J;IAED,OAAO,QAAQ,CAAC,CAAC;QACb,oBAAC,iCAAU,IAAC,IAAI,EAAE,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,cAAc,EAAE,sBAAsB,EAAE,sBAAsB,GAAI,CAAC,CAAC;QAC1I,6BAAK,SAAS,EAAC,iCAAiC,EAC5C,aAAa,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,WAAW,EAAE;YACvC,+GAA+G;YAC/G,qGAAqG;YACrG,gGAAgG;YAChG,uBAAuB,EAAE,EAAE,MAAM,EAAE,eAAe,EAAE,GACtD,CAAC;AACX,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { Disposable } from '@theia/core';
|
|
2
|
+
import { Emitter } from '@theia/core/shared/vscode-languageserver-protocol';
|
|
3
|
+
/**
|
|
4
|
+
* this service is for managing the viewport and scroll state of a notebook editor.
|
|
5
|
+
* its used both for restoring scroll state after reopening an editor and for cell to check if they are in the viewport.
|
|
6
|
+
*/
|
|
7
|
+
export declare class NotebookViewportService implements Disposable {
|
|
8
|
+
protected onDidChangeViewportEmitter: Emitter<void>;
|
|
9
|
+
readonly onDidChangeViewport: import("vscode-jsonrpc/lib/common/events").Event<void>;
|
|
10
|
+
protected _viewportElement: HTMLDivElement | undefined;
|
|
11
|
+
protected resizeObserver: ResizeObserver;
|
|
12
|
+
set viewportElement(element: HTMLDivElement | undefined);
|
|
13
|
+
isElementInViewport(element: HTMLElement): boolean;
|
|
14
|
+
onScroll(e: HTMLDivElement): void;
|
|
15
|
+
dispose(): void;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=notebook-viewport-service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-viewport-service.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-viewport-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EAAE,OAAO,EAAE,MAAM,mDAAmD,CAAC;AAE5E;;;GAGG;AACH,qBACa,uBAAwB,YAAW,UAAU;IAEtD,SAAS,CAAC,0BAA0B,gBAAuB;IAC3D,QAAQ,CAAC,mBAAmB,yDAAyC;IAErE,SAAS,CAAC,gBAAgB,EAAE,cAAc,GAAG,SAAS,CAAC;IAEvD,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAEzC,IAAI,eAAe,CAAC,OAAO,EAAE,cAAc,GAAG,SAAS,EAQtD;IAED,mBAAmB,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IASlD,QAAQ,CAAC,CAAC,EAAE,cAAc,GAAG,IAAI;IAIjC,OAAO,IAAI,IAAI;CAGlB"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// *****************************************************************************
|
|
3
|
+
// Copyright (C) 2024 TypeFox and others.
|
|
4
|
+
//
|
|
5
|
+
// This program and the accompanying materials are made available under the
|
|
6
|
+
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
// http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
//
|
|
9
|
+
// This Source Code may also be made available under the following Secondary
|
|
10
|
+
// Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
// Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
// with the GNU Classpath Exception which is available at
|
|
13
|
+
// https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
//
|
|
15
|
+
// SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
|
|
16
|
+
// *****************************************************************************
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.NotebookViewportService = void 0;
|
|
19
|
+
const tslib_1 = require("tslib");
|
|
20
|
+
const inversify_1 = require("@theia/core/shared/inversify");
|
|
21
|
+
const vscode_languageserver_protocol_1 = require("@theia/core/shared/vscode-languageserver-protocol");
|
|
22
|
+
/**
|
|
23
|
+
* this service is for managing the viewport and scroll state of a notebook editor.
|
|
24
|
+
* its used both for restoring scroll state after reopening an editor and for cell to check if they are in the viewport.
|
|
25
|
+
*/
|
|
26
|
+
let NotebookViewportService = class NotebookViewportService {
|
|
27
|
+
constructor() {
|
|
28
|
+
this.onDidChangeViewportEmitter = new vscode_languageserver_protocol_1.Emitter();
|
|
29
|
+
this.onDidChangeViewport = this.onDidChangeViewportEmitter.event;
|
|
30
|
+
}
|
|
31
|
+
set viewportElement(element) {
|
|
32
|
+
var _a;
|
|
33
|
+
this._viewportElement = element;
|
|
34
|
+
if (element) {
|
|
35
|
+
this.onDidChangeViewportEmitter.fire();
|
|
36
|
+
(_a = this.resizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
|
|
37
|
+
this.resizeObserver = new ResizeObserver(() => this.onDidChangeViewportEmitter.fire());
|
|
38
|
+
this.resizeObserver.observe(element);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
isElementInViewport(element) {
|
|
42
|
+
if (this._viewportElement) {
|
|
43
|
+
const rect = element.getBoundingClientRect();
|
|
44
|
+
const viewRect = this._viewportElement.getBoundingClientRect();
|
|
45
|
+
return rect.top < viewRect.top ? rect.bottom > viewRect.top : rect.top < viewRect.bottom;
|
|
46
|
+
}
|
|
47
|
+
return false;
|
|
48
|
+
}
|
|
49
|
+
onScroll(e) {
|
|
50
|
+
this.onDidChangeViewportEmitter.fire();
|
|
51
|
+
}
|
|
52
|
+
dispose() {
|
|
53
|
+
this.resizeObserver.disconnect();
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
NotebookViewportService = (0, tslib_1.__decorate)([
|
|
57
|
+
(0, inversify_1.injectable)()
|
|
58
|
+
], NotebookViewportService);
|
|
59
|
+
exports.NotebookViewportService = NotebookViewportService;
|
|
60
|
+
//# sourceMappingURL=notebook-viewport-service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"notebook-viewport-service.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-viewport-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;;AAGhF,4DAA0D;AAC1D,sGAA4E;AAE5E;;;GAGG;AAEH,IAAa,uBAAuB,GAApC,MAAa,uBAAuB;IAApC;QAEc,+BAA0B,GAAG,IAAI,wCAAO,EAAQ,CAAC;QAClD,wBAAmB,GAAG,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC;IAgCzE,CAAC;IA1BG,IAAI,eAAe,CAAC,OAAmC;;QACnD,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC;QAChC,IAAI,OAAO,EAAE;YACT,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC;YACvC,MAAA,IAAI,CAAC,cAAc,0CAAE,UAAU,EAAE,CAAC;YAClC,IAAI,CAAC,cAAc,GAAG,IAAI,cAAc,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC,CAAC;YACvF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;SACxC;IACL,CAAC;IAED,mBAAmB,CAAC,OAAoB;QACpC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACvB,MAAM,IAAI,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;YAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,CAAC,qBAAqB,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC;SAC5F;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,QAAQ,CAAC,CAAiB;QACtB,IAAI,CAAC,0BAA0B,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;IAED,OAAO;QACH,IAAI,CAAC,cAAc,CAAC,UAAU,EAAE,CAAC;IACrC,CAAC;CACJ,CAAA;AAnCY,uBAAuB;IADnC,IAAA,sBAAU,GAAE;GACA,uBAAuB,CAmCnC;AAnCY,0DAAuB"}
|
|
@@ -1,20 +1,13 @@
|
|
|
1
1
|
import { Disposable, DisposableCollection, Emitter, Event, URI } from '@theia/core';
|
|
2
2
|
import { interfaces } from '@theia/core/shared/inversify';
|
|
3
|
-
import { ContextKeyChangeEvent } from '@theia/core/lib/browser/context-key-service';
|
|
4
3
|
import { MonacoEditorModel } from '@theia/monaco/lib/browser/monaco-editor-model';
|
|
5
|
-
import { MonacoTextModelService } from '@theia/monaco/lib/browser/monaco-text-model-service';
|
|
6
4
|
import { CellKind, NotebookCellCollapseState, NotebookCellInternalMetadata, NotebookCellMetadata, CellOutput, CellData, CellOutputItem } from '../../common';
|
|
7
5
|
import { NotebookCellOutputsSplice } from '../notebook-types';
|
|
6
|
+
import { NotebookMonacoTextModelService } from '../service/notebook-monaco-text-model-service';
|
|
8
7
|
import { NotebookCellOutputModel } from './notebook-cell-output-model';
|
|
9
8
|
export declare const NotebookCellModelFactory: unique symbol;
|
|
10
9
|
export declare type NotebookCellModelFactory = (props: NotebookCellModelProps) => NotebookCellModel;
|
|
11
|
-
export declare function createNotebookCellModelContainer(parent: interfaces.Container, props: NotebookCellModelProps
|
|
12
|
-
declare const NotebookCellContextManager: unique symbol;
|
|
13
|
-
interface NotebookCellContextManager {
|
|
14
|
-
updateCellContext(cell: NotebookCellModel, context: HTMLElement): void;
|
|
15
|
-
dispose(): void;
|
|
16
|
-
onDidChangeContext: Event<ContextKeyChangeEvent>;
|
|
17
|
-
}
|
|
10
|
+
export declare function createNotebookCellModelContainer(parent: interfaces.Container, props: NotebookCellModelProps): interfaces.Container;
|
|
18
11
|
export interface CellInternalMetadataChangedEvent {
|
|
19
12
|
readonly lastRunSuccessChanged?: boolean;
|
|
20
13
|
}
|
|
@@ -59,20 +52,20 @@ export declare class NotebookCellModel implements NotebookCell, Disposable {
|
|
|
59
52
|
readonly onDidChangeLanguage: Event<string>;
|
|
60
53
|
protected readonly onDidRequestCellEditChangeEmitter: Emitter<boolean>;
|
|
61
54
|
readonly onDidRequestCellEditChange: Event<boolean>;
|
|
62
|
-
readonly
|
|
55
|
+
protected readonly onWillFocusCellEditorEmitter: Emitter<void>;
|
|
56
|
+
readonly onWillFocusCellEditor: Event<void>;
|
|
63
57
|
protected readonly props: NotebookCellModelProps;
|
|
64
|
-
protected readonly textModelService:
|
|
58
|
+
protected readonly textModelService: NotebookMonacoTextModelService;
|
|
65
59
|
get outputs(): NotebookCellOutputModel[];
|
|
66
60
|
protected _outputs: NotebookCellOutputModel[];
|
|
67
61
|
get metadata(): NotebookCellMetadata;
|
|
62
|
+
set metadata(newMetadata: NotebookCellMetadata);
|
|
68
63
|
protected _metadata: NotebookCellMetadata;
|
|
69
64
|
protected toDispose: DisposableCollection;
|
|
70
65
|
protected _internalMetadata: NotebookCellInternalMetadata;
|
|
71
66
|
get internalMetadata(): NotebookCellInternalMetadata;
|
|
72
67
|
set internalMetadata(newInternalMetadata: NotebookCellInternalMetadata);
|
|
73
68
|
protected textModel?: MonacoEditorModel;
|
|
74
|
-
protected htmlContext: HTMLLIElement;
|
|
75
|
-
get context(): HTMLLIElement;
|
|
76
69
|
get text(): string;
|
|
77
70
|
get source(): string;
|
|
78
71
|
set source(source: string);
|
|
@@ -81,16 +74,17 @@ export declare class NotebookCellModel implements NotebookCell, Disposable {
|
|
|
81
74
|
get uri(): URI;
|
|
82
75
|
get handle(): number;
|
|
83
76
|
get cellKind(): CellKind;
|
|
77
|
+
protected _editing: boolean;
|
|
78
|
+
get editing(): boolean;
|
|
84
79
|
protected init(): void;
|
|
85
|
-
refChanged(node: HTMLLIElement): void;
|
|
86
80
|
dispose(): void;
|
|
87
81
|
requestEdit(): void;
|
|
88
82
|
requestStopEdit(): void;
|
|
83
|
+
requestFocusEditor(): void;
|
|
89
84
|
spliceNotebookCellOutputs(splice: NotebookCellOutputsSplice): void;
|
|
90
85
|
replaceOutputData(outputId: string, newOutputData: CellOutput): boolean;
|
|
91
86
|
changeOutputItems(outputId: string, append: boolean, items: CellOutputItem[]): boolean;
|
|
92
87
|
getData(): CellData;
|
|
93
88
|
resolveTextModel(): Promise<MonacoEditorModel>;
|
|
94
89
|
}
|
|
95
|
-
export {};
|
|
96
90
|
//# sourceMappingURL=notebook-cell-model.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-cell-model.d.ts","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-cell-model.ts"],"names":[],"mappings":"AAoBA,OAAO,EAAE,UAAU,EAAE,oBAAoB,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,EAAsB,UAAU,EAAiB,MAAM,8BAA8B,CAAC;AAC7F,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"notebook-cell-model.d.ts","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-cell-model.ts"],"names":[],"mappings":"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"}
|