@theia/notebook 1.48.3 → 1.49.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/browser/contributions/notebook-actions-contribution.d.ts +7 -1
- package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +1 -1
- package/lib/browser/contributions/notebook-actions-contribution.js +81 -7
- package/lib/browser/contributions/notebook-actions-contribution.js.map +1 -1
- package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +5 -0
- package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +1 -1
- package/lib/browser/contributions/notebook-cell-actions-contribution.js +86 -9
- package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +1 -1
- package/lib/browser/contributions/notebook-label-provider-contribution.d.ts +16 -0
- package/lib/browser/contributions/notebook-label-provider-contribution.d.ts.map +1 -0
- package/lib/browser/contributions/notebook-label-provider-contribution.js +65 -0
- package/lib/browser/contributions/notebook-label-provider-contribution.js.map +1 -0
- package/lib/browser/contributions/notebook-outline-contribution.d.ts +30 -0
- package/lib/browser/contributions/notebook-outline-contribution.d.ts.map +1 -0
- package/lib/browser/contributions/notebook-outline-contribution.js +109 -0
- package/lib/browser/contributions/notebook-outline-contribution.js.map +1 -0
- package/lib/browser/contributions/notebook-output-action-contribution.d.ts +16 -0
- package/lib/browser/contributions/notebook-output-action-contribution.d.ts.map +1 -0
- package/lib/browser/contributions/notebook-output-action-contribution.js +85 -0
- package/lib/browser/contributions/notebook-output-action-contribution.js.map +1 -0
- package/lib/browser/contributions/notebook-preferences.d.ts +4 -0
- package/lib/browser/contributions/notebook-preferences.d.ts.map +1 -0
- package/lib/browser/contributions/notebook-preferences.js +31 -0
- package/lib/browser/contributions/notebook-preferences.js.map +1 -0
- package/lib/browser/notebook-cell-resource-resolver.d.ts +4 -0
- package/lib/browser/notebook-cell-resource-resolver.d.ts.map +1 -1
- package/lib/browser/notebook-cell-resource-resolver.js +35 -2
- package/lib/browser/notebook-cell-resource-resolver.js.map +1 -1
- package/lib/browser/notebook-editor-widget-factory.d.ts +1 -0
- package/lib/browser/notebook-editor-widget-factory.d.ts.map +1 -1
- package/lib/browser/notebook-editor-widget-factory.js +17 -3
- package/lib/browser/notebook-editor-widget-factory.js.map +1 -1
- package/lib/browser/notebook-editor-widget.d.ts +5 -1
- package/lib/browser/notebook-editor-widget.d.ts.map +1 -1
- package/lib/browser/notebook-editor-widget.js +20 -2
- 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 +15 -2
- package/lib/browser/notebook-frontend-module.js.map +1 -1
- package/lib/browser/notebook-open-handler.d.ts +14 -9
- package/lib/browser/notebook-open-handler.d.ts.map +1 -1
- package/lib/browser/notebook-open-handler.js +38 -16
- package/lib/browser/notebook-open-handler.js.map +1 -1
- package/lib/browser/notebook-type-registry.d.ts +5 -1
- package/lib/browser/notebook-type-registry.d.ts.map +1 -1
- package/lib/browser/notebook-type-registry.js +27 -7
- package/lib/browser/notebook-type-registry.js.map +1 -1
- package/lib/browser/notebook-types.d.ts +2 -0
- package/lib/browser/notebook-types.d.ts.map +1 -1
- package/lib/browser/notebook-types.js.map +1 -1
- package/lib/browser/service/notebook-clipboard-service.d.ts +10 -0
- package/lib/browser/service/notebook-clipboard-service.d.ts.map +1 -0
- package/lib/browser/service/notebook-clipboard-service.js +42 -0
- package/lib/browser/service/notebook-clipboard-service.js.map +1 -0
- package/lib/browser/service/notebook-context-manager.d.ts +4 -1
- package/lib/browser/service/notebook-context-manager.d.ts.map +1 -1
- package/lib/browser/service/notebook-context-manager.js +33 -12
- package/lib/browser/service/notebook-context-manager.js.map +1 -1
- package/lib/browser/service/notebook-service.d.ts.map +1 -1
- package/lib/browser/service/notebook-service.js +4 -0
- package/lib/browser/service/notebook-service.js.map +1 -1
- package/lib/browser/view/notebook-cell-editor.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-editor.js +11 -2
- 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 +4 -2
- package/lib/browser/view/notebook-cell-list-view.js.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar-factory.d.ts +6 -4
- package/lib/browser/view/notebook-cell-toolbar-factory.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar-factory.js +21 -18
- package/lib/browser/view/notebook-cell-toolbar-factory.js.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar.d.ts.map +1 -1
- package/lib/browser/view/notebook-cell-toolbar.js +3 -2
- package/lib/browser/view/notebook-cell-toolbar.js.map +1 -1
- package/lib/browser/view/notebook-code-cell-view.d.ts +5 -1
- package/lib/browser/view/notebook-code-cell-view.d.ts.map +1 -1
- package/lib/browser/view/notebook-code-cell-view.js +45 -17
- package/lib/browser/view/notebook-code-cell-view.js.map +1 -1
- package/lib/browser/view/notebook-main-toolbar.d.ts +5 -3
- package/lib/browser/view/notebook-main-toolbar.d.ts.map +1 -1
- package/lib/browser/view/notebook-main-toolbar.js +17 -9
- package/lib/browser/view/notebook-main-toolbar.js.map +1 -1
- package/lib/browser/view/notebook-markdown-cell-view.js +11 -8
- package/lib/browser/view/notebook-markdown-cell-view.js.map +1 -1
- package/lib/browser/view-model/notebook-cell-model.d.ts +20 -0
- package/lib/browser/view-model/notebook-cell-model.d.ts.map +1 -1
- package/lib/browser/view-model/notebook-cell-model.js +61 -2
- package/lib/browser/view-model/notebook-cell-model.js.map +1 -1
- package/lib/browser/view-model/notebook-model.d.ts +4 -2
- package/lib/browser/view-model/notebook-model.d.ts.map +1 -1
- package/lib/browser/view-model/notebook-model.js +25 -14
- package/lib/browser/view-model/notebook-model.js.map +1 -1
- package/lib/common/notebook-common.d.ts +7 -1
- package/lib/common/notebook-common.d.ts.map +1 -1
- package/lib/common/notebook-common.js +28 -4
- package/lib/common/notebook-common.js.map +1 -1
- package/package.json +9 -7
- package/src/browser/contributions/notebook-actions-contribution.ts +90 -9
- package/src/browser/contributions/notebook-cell-actions-contribution.ts +88 -11
- package/src/browser/contributions/notebook-label-provider-contribution.ts +63 -0
- package/src/browser/contributions/notebook-outline-contribution.ts +112 -0
- package/src/browser/contributions/notebook-output-action-contribution.ts +82 -0
- package/src/browser/contributions/notebook-preferences.ts +31 -0
- package/src/browser/notebook-cell-resource-resolver.ts +39 -1
- package/src/browser/notebook-editor-widget-factory.ts +18 -5
- package/src/browser/notebook-editor-widget.tsx +20 -2
- package/src/browser/notebook-frontend-module.ts +20 -4
- package/src/browser/notebook-open-handler.ts +48 -20
- package/src/browser/notebook-type-registry.ts +26 -6
- package/src/browser/notebook-types.ts +2 -0
- package/src/browser/service/notebook-clipboard-service.ts +43 -0
- package/src/browser/service/notebook-context-manager.ts +36 -10
- package/src/browser/service/notebook-service.ts +4 -0
- package/src/browser/style/index.css +19 -4
- package/src/browser/view/notebook-cell-editor.tsx +12 -2
- package/src/browser/view/notebook-cell-list-view.tsx +5 -2
- package/src/browser/view/notebook-cell-toolbar-factory.tsx +17 -15
- package/src/browser/view/notebook-cell-toolbar.tsx +3 -2
- package/src/browser/view/notebook-code-cell-view.tsx +51 -18
- package/src/browser/view/notebook-main-toolbar.tsx +20 -11
- package/src/browser/view/notebook-markdown-cell-view.tsx +12 -7
- package/src/browser/view-model/notebook-cell-model.ts +70 -2
- package/src/browser/view-model/notebook-model.ts +29 -16
- package/src/common/notebook-common.ts +29 -4
|
@@ -59,6 +59,10 @@ class NotebookMainToolbar extends React.Component {
|
|
|
59
59
|
var _a;
|
|
60
60
|
super(props);
|
|
61
61
|
this.toDispose = new core_1.DisposableCollection();
|
|
62
|
+
this.nativeSubmenus = [
|
|
63
|
+
notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP[notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP.length - 1],
|
|
64
|
+
notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP[notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP.length - 1]
|
|
65
|
+
];
|
|
62
66
|
this.state = { selectedKernelLabel: (_a = props.notebookKernelService.getSelectedOrSuggestedKernel(props.notebookModel)) === null || _a === void 0 ? void 0 : _a.label };
|
|
63
67
|
this.toDispose.push(props.notebookKernelService.onDidChangeSelectedKernel(event => {
|
|
64
68
|
var _a, _b;
|
|
@@ -99,27 +103,29 @@ class NotebookMainToolbar extends React.Component {
|
|
|
99
103
|
React.createElement("span", { className: (0, browser_1.codicon)('server-environment') }),
|
|
100
104
|
React.createElement("span", { className: ' theia-notebook-main-toolbar-item-text' }, (_a = this.state.selectedKernelLabel) !== null && _a !== void 0 ? _a : core_1.nls.localizeByDefault('Select Kernel'))));
|
|
101
105
|
}
|
|
102
|
-
renderMenuItem(item) {
|
|
106
|
+
renderMenuItem(item, submenu) {
|
|
103
107
|
var _a, _b, _c, _d, _e, _f;
|
|
104
108
|
if (item.role === 1 /* Group */) {
|
|
105
|
-
const itemNodes = core_1.ArrayUtils.coalesce((_b = (_a = item.children) === null || _a === void 0 ? void 0 : _a.map(child => this.renderMenuItem(child))) !== null && _b !== void 0 ? _b : []);
|
|
109
|
+
const itemNodes = core_1.ArrayUtils.coalesce((_b = (_a = item.children) === null || _a === void 0 ? void 0 : _a.map(child => this.renderMenuItem(child, item.id))) !== null && _b !== void 0 ? _b : []);
|
|
106
110
|
return React.createElement(React.Fragment, { key: item.id },
|
|
107
111
|
itemNodes,
|
|
108
112
|
itemNodes && itemNodes.length > 0 && React.createElement("span", { key: `${item.id}-separator`, className: 'theia-notebook-toolbar-separator' }));
|
|
109
113
|
}
|
|
110
|
-
else if (!item.when || this.props.contextKeyService.match(item.when, this.props.editorNode)) {
|
|
114
|
+
else if ((this.nativeSubmenus.includes(submenu !== null && submenu !== void 0 ? submenu : '')) || !item.when || this.props.contextKeyService.match(item.when, this.props.editorNode)) {
|
|
111
115
|
const visibleCommand = Boolean(this.props.commandRegistry.getVisibleHandler((_c = item.command) !== null && _c !== void 0 ? _c : '', this.props.notebookModel));
|
|
112
116
|
if (!visibleCommand) {
|
|
113
117
|
return undefined;
|
|
114
118
|
}
|
|
115
|
-
const
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
+
const command = this.props.commandRegistry.getCommand((_d = item.command) !== null && _d !== void 0 ? _d : '');
|
|
120
|
+
const label = (_e = command === null || command === void 0 ? void 0 : command.shortTitle) !== null && _e !== void 0 ? _e : item.label;
|
|
121
|
+
const title = (_f = command === null || command === void 0 ? void 0 : command.tooltip) !== null && _f !== void 0 ? _f : item.label;
|
|
122
|
+
return React.createElement("div", { key: item.id, title: title, className: `theia-notebook-main-toolbar-item action-label${this.getAdditionalClasses(item)}`, onClick: () => {
|
|
123
|
+
if (item.command && (!item.when || this.props.contextKeyService.match(item.when, this.props.editorNode))) {
|
|
124
|
+
this.props.commandRegistry.executeCommand(item.command, this.props.notebookModel.uri);
|
|
119
125
|
}
|
|
120
126
|
} },
|
|
121
127
|
React.createElement("span", { className: item.icon }),
|
|
122
|
-
React.createElement("span", { className: 'theia-notebook-main-toolbar-item-text' },
|
|
128
|
+
React.createElement("span", { className: 'theia-notebook-main-toolbar-item-text' }, label));
|
|
123
129
|
}
|
|
124
130
|
return undefined;
|
|
125
131
|
}
|
|
@@ -127,9 +133,11 @@ class NotebookMainToolbar extends React.Component {
|
|
|
127
133
|
const menuPath = notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR;
|
|
128
134
|
const pluginCommands = this.props.menuRegistry.getMenuNode(menuPath).children;
|
|
129
135
|
const theiaCommands = this.props.menuRegistry.getMenu([menuPath]).children;
|
|
130
|
-
// TODO add specifc arguments to commands
|
|
131
136
|
return theiaCommands.concat(pluginCommands);
|
|
132
137
|
}
|
|
138
|
+
getAdditionalClasses(item) {
|
|
139
|
+
return !item.when || this.props.contextKeyService.match(item.when, this.props.editorNode) ? '' : ' theia-mod-disabled';
|
|
140
|
+
}
|
|
133
141
|
getAllContextKeys(menus, keySet) {
|
|
134
142
|
menus.filter(item => item.when)
|
|
135
143
|
.forEach(item => { var _a; return (_a = this.props.contextKeyService.parseKeys(item.when)) === null || _a === void 0 ? void 0 : _a.forEach(key => keySet.add(key)); });
|
|
@@ -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;AAEhF,kFAA6E;AAa7E,IAAa,2BAA2B,GAAxC,MAAa,2BAA2B;IAOpC,MAAM,CAAC,aAA4B,EAAE,UAAuB;QACxD,OAAO,oBAAC,mBAAmB,IAAC,aAAa,EAAE,aAAa,EACpD,YAAY,EAAE,IAAI,CAAC,YAAY,EAC/B,qBAAqB,EAAE,IAAI,CAAC,qBAAqB,EACjD,eAAe,EAAE,IAAI,CAAC,eAAe,EACrC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EACzC,UAAU,EAAE,UAAU,EACtB,sBAAsB,EAAE,IAAI,CAAC,sBAAsB,GAAI,CAAC;IAChE,CAAC;CACJ,CAAA;AAfkC;IAA9B,IAAA,kBAAM,EAAC,+CAAqB,CAAC;2CAA2C,+CAAqB;0EAAC;AACtE;IAAxB,IAAA,kBAAM,EAAC,sBAAe,CAAC;2CAAqC,sBAAe;oEAAC;AAClD;IAA1B,IAAA,kBAAM,EAAC,wBAAiB,CAAC;2CAAkC,wBAAiB;iEAAC;AACnD;IAA1B,IAAA,kBAAM,EAAC,uCAAiB,CAAC;;sEAAyD;AACnD;IAA/B,IAAA,kBAAM,EAAC,iDAAsB,CAAC;2CAA4C,iDAAsB;2EAAC;AALzF,2BAA2B;IADvC,IAAA,sBAAU,GAAE;GACA,2BAA2B,CAgBvC;AAhBY,kEAA2B;AAkBxC,MAAa,mBAAoB,SAAQ,KAAK,CAAC,SAAqE;
|
|
1
|
+
{"version":3,"file":"notebook-main-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":"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"}
|
|
@@ -52,16 +52,19 @@ function MarkdownCell({ markdownRenderer, monacoServices, cell, notebookModel, n
|
|
|
52
52
|
const listener = cell.onDidRequestCellEditChange(cellEdit => setEditMode(cellEdit));
|
|
53
53
|
return () => listener.dispose();
|
|
54
54
|
}, [editMode]);
|
|
55
|
-
let markdownContent = React.useMemo(() =>
|
|
56
|
-
|
|
57
|
-
|
|
55
|
+
let markdownContent = React.useMemo(() => {
|
|
56
|
+
const markdownString = new markdown_string_1.MarkdownStringImpl(cell.source, { supportHtml: true, isTrusted: true });
|
|
57
|
+
return markdownRenderer.render(markdownString).element;
|
|
58
|
+
}, [cell, editMode]);
|
|
59
|
+
if (!markdownContent.hasChildNodes()) {
|
|
60
|
+
const italic = document.createElement('i');
|
|
61
|
+
italic.className = 'theia-notebook-empty-markdown';
|
|
62
|
+
italic.innerText = core_1.nls.localizeByDefault('Empty markdown cell, double-click or press enter to edit.');
|
|
63
|
+
italic.style.pointerEvents = 'none';
|
|
64
|
+
markdownContent = italic;
|
|
58
65
|
}
|
|
59
66
|
return editMode ?
|
|
60
67
|
React.createElement(notebook_cell_editor_1.CellEditor, { cell: cell, notebookModel: notebookModel, monacoServices: monacoServices, notebookContextManager: notebookContextManager }) :
|
|
61
|
-
React.createElement("div", { className: 'theia-notebook-markdown-content', onDoubleClick: () => cell.requestEdit(),
|
|
62
|
-
// This sets the non React HTML node from the markdown renderers output as a child node to this react component
|
|
63
|
-
// This is currently sadly the best way we have to combine React (Virtual Nodes) and normal dom nodes
|
|
64
|
-
// the HTML is already sanitized by the markdown renderer, so we don't need to sanitize it again
|
|
65
|
-
dangerouslySetInnerHTML: { __html: markdownContent } });
|
|
68
|
+
React.createElement("div", { className: 'theia-notebook-markdown-content', onDoubleClick: () => cell.requestEdit(), ref: node => node === null || node === void 0 ? void 0 : node.replaceChildren(markdownContent) });
|
|
66
69
|
}
|
|
67
70
|
//# sourceMappingURL=notebook-markdown-cell-view.js.map
|
|
@@ -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;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,
|
|
1
|
+
{"version":3,"file":"notebook-markdown-cell-view.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-markdown-cell-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { Disposable, DisposableCollection, Emitter, Event, URI } from '@theia/core';
|
|
2
2
|
import { interfaces } from '@theia/core/shared/inversify';
|
|
3
3
|
import { MonacoEditorModel } from '@theia/monaco/lib/browser/monaco-editor-model';
|
|
4
|
+
import { type MonacoEditor } from '@theia/monaco/lib/browser/monaco-editor';
|
|
4
5
|
import { CellKind, NotebookCellCollapseState, NotebookCellInternalMetadata, NotebookCellMetadata, CellOutput, CellData, CellOutputItem } from '../../common';
|
|
5
6
|
import { NotebookCellOutputsSplice } from '../notebook-types';
|
|
6
7
|
import { NotebookMonacoTextModelService } from '../service/notebook-monaco-text-model-service';
|
|
7
8
|
import { NotebookCellOutputModel } from './notebook-cell-output-model';
|
|
9
|
+
import { PreferenceService } from '@theia/core/lib/browser';
|
|
10
|
+
import { LanguageService } from '@theia/core/lib/browser/language-service';
|
|
8
11
|
export declare const NotebookCellModelFactory: unique symbol;
|
|
9
12
|
export declare type NotebookCellModelFactory = (props: NotebookCellModelProps) => NotebookCellModel;
|
|
10
13
|
export declare function createNotebookCellModelContainer(parent: interfaces.Container, props: NotebookCellModelProps): interfaces.Container;
|
|
@@ -54,8 +57,16 @@ export declare class NotebookCellModel implements NotebookCell, Disposable {
|
|
|
54
57
|
readonly onDidRequestCellEditChange: Event<boolean>;
|
|
55
58
|
protected readonly onWillFocusCellEditorEmitter: Emitter<void>;
|
|
56
59
|
readonly onWillFocusCellEditor: Event<void>;
|
|
60
|
+
protected readonly onWillBlurCellEditorEmitter: Emitter<void>;
|
|
61
|
+
readonly onWillBlurCellEditor: Event<void>;
|
|
62
|
+
protected readonly onDidChangeEditorOptionsEmitter: Emitter<MonacoEditor.IOptions>;
|
|
63
|
+
readonly onDidChangeEditorOptions: Event<MonacoEditor.IOptions>;
|
|
64
|
+
protected readonly outputVisibilityChangeEmitter: Emitter<boolean>;
|
|
65
|
+
readonly onDidChangeOutputVisibility: Event<boolean>;
|
|
57
66
|
protected readonly props: NotebookCellModelProps;
|
|
58
67
|
protected readonly textModelService: NotebookMonacoTextModelService;
|
|
68
|
+
protected readonly languageService: LanguageService;
|
|
69
|
+
protected readonly preferenceService: PreferenceService;
|
|
59
70
|
get outputs(): NotebookCellOutputModel[];
|
|
60
71
|
protected _outputs: NotebookCellOutputModel[];
|
|
61
72
|
get metadata(): NotebookCellMetadata;
|
|
@@ -71,20 +82,29 @@ export declare class NotebookCellModel implements NotebookCell, Disposable {
|
|
|
71
82
|
set source(source: string);
|
|
72
83
|
get language(): string;
|
|
73
84
|
set language(newLanguage: string);
|
|
85
|
+
get languageName(): string;
|
|
74
86
|
get uri(): URI;
|
|
75
87
|
get handle(): number;
|
|
76
88
|
get cellKind(): CellKind;
|
|
77
89
|
protected _editing: boolean;
|
|
78
90
|
get editing(): boolean;
|
|
91
|
+
protected _editorOptions: MonacoEditor.IOptions;
|
|
92
|
+
get editorOptions(): Readonly<MonacoEditor.IOptions>;
|
|
93
|
+
set editorOptions(options: MonacoEditor.IOptions);
|
|
94
|
+
protected _outputVisible: boolean;
|
|
95
|
+
get outputVisible(): boolean;
|
|
96
|
+
set outputVisible(visible: boolean);
|
|
79
97
|
protected init(): void;
|
|
80
98
|
dispose(): void;
|
|
81
99
|
requestEdit(): void;
|
|
82
100
|
requestStopEdit(): void;
|
|
83
101
|
requestFocusEditor(): void;
|
|
102
|
+
requestBlurEditor(): void;
|
|
84
103
|
spliceNotebookCellOutputs(splice: NotebookCellOutputsSplice): void;
|
|
85
104
|
replaceOutputData(outputId: string, newOutputData: CellOutput): boolean;
|
|
86
105
|
changeOutputItems(outputId: string, append: boolean, items: CellOutputItem[]): boolean;
|
|
87
106
|
getData(): CellData;
|
|
88
107
|
resolveTextModel(): Promise<MonacoEditorModel>;
|
|
108
|
+
restartOutputRenderer(outputId: string): void;
|
|
89
109
|
}
|
|
90
110
|
//# 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,iBAAiB,EAAE,MAAM,+CAA+C,CAAC;AAClF,OAAO,EACH,QAAQ,EAAE,yBAAyB,EAAE,4BAA4B,EACjE,oBAAoB,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAC7D,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,yBAAyB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+CAA+C,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;
|
|
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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"}
|
|
@@ -25,6 +25,9 @@ const core_1 = require("@theia/core");
|
|
|
25
25
|
const inversify_1 = require("@theia/core/shared/inversify");
|
|
26
26
|
const notebook_monaco_text_model_service_1 = require("../service/notebook-monaco-text-model-service");
|
|
27
27
|
const notebook_cell_output_model_1 = require("./notebook-cell-output-model");
|
|
28
|
+
const browser_1 = require("@theia/core/lib/browser");
|
|
29
|
+
const notebook_preferences_1 = require("../contributions/notebook-preferences");
|
|
30
|
+
const language_service_1 = require("@theia/core/lib/browser/language-service");
|
|
28
31
|
exports.NotebookCellModelFactory = Symbol('NotebookModelFactory');
|
|
29
32
|
function createNotebookCellModelContainer(parent, props) {
|
|
30
33
|
const child = parent.createChild();
|
|
@@ -52,8 +55,16 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
52
55
|
this.onDidRequestCellEditChange = this.onDidRequestCellEditChangeEmitter.event;
|
|
53
56
|
this.onWillFocusCellEditorEmitter = new core_1.Emitter();
|
|
54
57
|
this.onWillFocusCellEditor = this.onWillFocusCellEditorEmitter.event;
|
|
58
|
+
this.onWillBlurCellEditorEmitter = new core_1.Emitter();
|
|
59
|
+
this.onWillBlurCellEditor = this.onWillBlurCellEditorEmitter.event;
|
|
60
|
+
this.onDidChangeEditorOptionsEmitter = new core_1.Emitter();
|
|
61
|
+
this.onDidChangeEditorOptions = this.onDidChangeEditorOptionsEmitter.event;
|
|
62
|
+
this.outputVisibilityChangeEmitter = new core_1.Emitter();
|
|
63
|
+
this.onDidChangeOutputVisibility = this.outputVisibilityChangeEmitter.event;
|
|
55
64
|
this.toDispose = new core_1.DisposableCollection();
|
|
56
65
|
this._editing = false;
|
|
66
|
+
this._editorOptions = {};
|
|
67
|
+
this._outputVisible = true;
|
|
57
68
|
}
|
|
58
69
|
get outputs() {
|
|
59
70
|
return this._outputs;
|
|
@@ -95,14 +106,17 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
95
106
|
if (this.language === newLanguage) {
|
|
96
107
|
return;
|
|
97
108
|
}
|
|
98
|
-
this.props.language = newLanguage;
|
|
99
109
|
if (this.textModel) {
|
|
100
110
|
this.textModel.setLanguageId(newLanguage);
|
|
101
111
|
}
|
|
102
|
-
this.language = newLanguage;
|
|
112
|
+
this.props.language = newLanguage;
|
|
103
113
|
this.onDidChangeLanguageEmitter.fire(newLanguage);
|
|
104
114
|
this.onDidChangeContentEmitter.fire('language');
|
|
105
115
|
}
|
|
116
|
+
get languageName() {
|
|
117
|
+
var _a, _b;
|
|
118
|
+
return (_b = (_a = this.languageService.getLanguage(this.language)) === null || _a === void 0 ? void 0 : _a.name) !== null && _b !== void 0 ? _b : this.language;
|
|
119
|
+
}
|
|
106
120
|
get uri() {
|
|
107
121
|
return this.props.uri;
|
|
108
122
|
}
|
|
@@ -115,11 +129,38 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
115
129
|
get editing() {
|
|
116
130
|
return this._editing;
|
|
117
131
|
}
|
|
132
|
+
get editorOptions() {
|
|
133
|
+
return this._editorOptions;
|
|
134
|
+
}
|
|
135
|
+
set editorOptions(options) {
|
|
136
|
+
this._editorOptions = options;
|
|
137
|
+
this.onDidChangeEditorOptionsEmitter.fire(options);
|
|
138
|
+
}
|
|
139
|
+
get outputVisible() {
|
|
140
|
+
return this._outputVisible;
|
|
141
|
+
}
|
|
142
|
+
set outputVisible(visible) {
|
|
143
|
+
if (this._outputVisible !== visible) {
|
|
144
|
+
this._outputVisible = visible;
|
|
145
|
+
this.outputVisibilityChangeEmitter.fire(visible);
|
|
146
|
+
}
|
|
147
|
+
}
|
|
118
148
|
init() {
|
|
119
149
|
var _a, _b;
|
|
120
150
|
this._outputs = this.props.outputs.map(op => new notebook_cell_output_model_1.NotebookCellOutputModel(op));
|
|
121
151
|
this._metadata = (_a = this.props.metadata) !== null && _a !== void 0 ? _a : {};
|
|
122
152
|
this._internalMetadata = (_b = this.props.internalMetadata) !== null && _b !== void 0 ? _b : {};
|
|
153
|
+
this.editorOptions = {
|
|
154
|
+
lineNumbers: this.preferenceService.get(notebook_preferences_1.NOTEBOOK_LINE_NUMBERS)
|
|
155
|
+
};
|
|
156
|
+
this.toDispose.push(this.preferenceService.onPreferenceChanged(e => {
|
|
157
|
+
if (e.preferenceName === notebook_preferences_1.NOTEBOOK_LINE_NUMBERS) {
|
|
158
|
+
this.editorOptions = {
|
|
159
|
+
...this.editorOptions,
|
|
160
|
+
lineNumbers: this.preferenceService.get(notebook_preferences_1.NOTEBOOK_LINE_NUMBERS)
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
}));
|
|
123
164
|
}
|
|
124
165
|
dispose() {
|
|
125
166
|
var _a;
|
|
@@ -146,6 +187,10 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
146
187
|
this.requestEdit();
|
|
147
188
|
this.onWillFocusCellEditorEmitter.fire();
|
|
148
189
|
}
|
|
190
|
+
requestBlurEditor() {
|
|
191
|
+
this.requestStopEdit();
|
|
192
|
+
this.onWillBlurCellEditorEmitter.fire();
|
|
193
|
+
}
|
|
149
194
|
spliceNotebookCellOutputs(splice) {
|
|
150
195
|
if (splice.deleteCount > 0 && splice.newOutputs.length > 0) {
|
|
151
196
|
const commonLen = Math.min(splice.deleteCount, splice.newOutputs.length);
|
|
@@ -208,6 +253,12 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
208
253
|
});
|
|
209
254
|
return ref.object;
|
|
210
255
|
}
|
|
256
|
+
restartOutputRenderer(outputId) {
|
|
257
|
+
const output = this.outputs.find(out => out.outputId === outputId);
|
|
258
|
+
if (output) {
|
|
259
|
+
this.onDidChangeOutputItemsEmitter.fire(output);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
211
262
|
};
|
|
212
263
|
(0, tslib_1.__decorate)([
|
|
213
264
|
(0, inversify_1.inject)(NotebookCellModelProps),
|
|
@@ -217,6 +268,14 @@ let NotebookCellModel = class NotebookCellModel {
|
|
|
217
268
|
(0, inversify_1.inject)(notebook_monaco_text_model_service_1.NotebookMonacoTextModelService),
|
|
218
269
|
(0, tslib_1.__metadata)("design:type", notebook_monaco_text_model_service_1.NotebookMonacoTextModelService)
|
|
219
270
|
], NotebookCellModel.prototype, "textModelService", void 0);
|
|
271
|
+
(0, tslib_1.__decorate)([
|
|
272
|
+
(0, inversify_1.inject)(language_service_1.LanguageService),
|
|
273
|
+
(0, tslib_1.__metadata)("design:type", language_service_1.LanguageService)
|
|
274
|
+
], NotebookCellModel.prototype, "languageService", void 0);
|
|
275
|
+
(0, tslib_1.__decorate)([
|
|
276
|
+
(0, inversify_1.inject)(browser_1.PreferenceService),
|
|
277
|
+
(0, tslib_1.__metadata)("design:type", Object)
|
|
278
|
+
], NotebookCellModel.prototype, "preferenceService", void 0);
|
|
220
279
|
(0, tslib_1.__decorate)([
|
|
221
280
|
(0, inversify_1.postConstruct)(),
|
|
222
281
|
(0, tslib_1.__metadata)("design:type", Function),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-cell-model.js","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-cell-model.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;AAChF;;;gGAGgG;;;;AAEhG,sCAAoF;AACpF,4DAA6F;
|
|
1
|
+
{"version":3,"file":"notebook-cell-model.js","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-cell-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Disposable, Emitter, Event, Resource, URI } from '@theia/core';
|
|
1
|
+
import { Disposable, Emitter, Event, QueueableEmitter, Resource, URI } from '@theia/core';
|
|
2
2
|
import { Saveable, SaveOptions } from '@theia/core/lib/browser';
|
|
3
3
|
import { CellData, NotebookCellMetadata, NotebookData, NotebookDocumentMetadata } from '../../common';
|
|
4
4
|
import { NotebookContentChangedEvent, NotebookModelWillAddRemoveEvent, CellEditOperation, NullablePartialNotebookCellInternalMetadata, NullablePartialNotebookCellMetadata } from '../notebook-types';
|
|
@@ -23,10 +23,12 @@ export declare class NotebookModel implements Saveable, Disposable {
|
|
|
23
23
|
readonly onDidSaveNotebook: Event<void>;
|
|
24
24
|
protected readonly onDidAddOrRemoveCellEmitter: Emitter<NotebookModelWillAddRemoveEvent>;
|
|
25
25
|
readonly onDidAddOrRemoveCell: Event<NotebookModelWillAddRemoveEvent>;
|
|
26
|
-
protected readonly onDidChangeContentEmitter:
|
|
26
|
+
protected readonly onDidChangeContentEmitter: QueueableEmitter<NotebookContentChangedEvent>;
|
|
27
27
|
readonly onDidChangeContent: Event<NotebookContentChangedEvent[]>;
|
|
28
28
|
protected readonly onDidChangeSelectedCellEmitter: Emitter<NotebookCellModel | undefined>;
|
|
29
29
|
readonly onDidChangeSelectedCell: Event<NotebookCellModel | undefined>;
|
|
30
|
+
protected readonly onDidDisposeEmitter: Emitter<void>;
|
|
31
|
+
readonly onDidDispose: Event<void>;
|
|
30
32
|
get onDidChangeReadOnly(): Event<boolean | MarkdownString>;
|
|
31
33
|
protected readonly fileService: FileService;
|
|
32
34
|
protected readonly undoRedoService: UndoRedoService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notebook-model.d.ts","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-model.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"notebook-model.d.ts","sourceRoot":"","sources":["../../../src/browser/view-model/notebook-model.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
// *****************************************************************************
|
|
3
|
-
// Copyright (C)
|
|
3
|
+
// Copyright (C) 2023 Typefox and others.
|
|
4
4
|
//
|
|
5
5
|
// This program and the accompanying materials are made available under the
|
|
6
6
|
// terms of the Eclipse Public License v. 2.0 which is available at
|
|
@@ -40,10 +40,12 @@ let NotebookModel = class NotebookModel {
|
|
|
40
40
|
this.onDidSaveNotebook = this.onDidSaveNotebookEmitter.event;
|
|
41
41
|
this.onDidAddOrRemoveCellEmitter = new core_1.Emitter();
|
|
42
42
|
this.onDidAddOrRemoveCell = this.onDidAddOrRemoveCellEmitter.event;
|
|
43
|
-
this.onDidChangeContentEmitter = new core_1.
|
|
43
|
+
this.onDidChangeContentEmitter = new core_1.QueueableEmitter();
|
|
44
44
|
this.onDidChangeContent = this.onDidChangeContentEmitter.event;
|
|
45
45
|
this.onDidChangeSelectedCellEmitter = new core_1.Emitter();
|
|
46
46
|
this.onDidChangeSelectedCell = this.onDidChangeSelectedCellEmitter.event;
|
|
47
|
+
this.onDidDisposeEmitter = new core_1.Emitter();
|
|
48
|
+
this.onDidDispose = this.onDidDisposeEmitter.event;
|
|
47
49
|
this.nextHandle = 0;
|
|
48
50
|
this._dirty = false;
|
|
49
51
|
this.dirtyCells = [];
|
|
@@ -84,7 +86,7 @@ let NotebookModel = class NotebookModel {
|
|
|
84
86
|
collapseState: cell.collapseState
|
|
85
87
|
}));
|
|
86
88
|
this.addCellOutputListeners(this.cells);
|
|
87
|
-
this.metadata = this.metadata;
|
|
89
|
+
this.metadata = this.props.data.metadata;
|
|
88
90
|
this.nextHandle = this.cells.length;
|
|
89
91
|
}
|
|
90
92
|
dispose() {
|
|
@@ -92,7 +94,9 @@ let NotebookModel = class NotebookModel {
|
|
|
92
94
|
this.onDidSaveNotebookEmitter.dispose();
|
|
93
95
|
this.onDidAddOrRemoveCellEmitter.dispose();
|
|
94
96
|
this.onDidChangeContentEmitter.dispose();
|
|
97
|
+
this.onDidChangeSelectedCellEmitter.dispose();
|
|
95
98
|
this.cells.forEach(cell => cell.dispose());
|
|
99
|
+
this.onDidDisposeEmitter.fire();
|
|
96
100
|
}
|
|
97
101
|
async save(options) {
|
|
98
102
|
this.dirtyCells = [];
|
|
@@ -166,8 +170,10 @@ let NotebookModel = class NotebookModel {
|
|
|
166
170
|
this.undoRedoService.redo(this.uri);
|
|
167
171
|
}
|
|
168
172
|
setSelectedCell(cell) {
|
|
169
|
-
this.selectedCell
|
|
170
|
-
|
|
173
|
+
if (this.selectedCell !== cell) {
|
|
174
|
+
this.selectedCell = cell;
|
|
175
|
+
this.onDidChangeSelectedCellEmitter.fire(cell);
|
|
176
|
+
}
|
|
171
177
|
}
|
|
172
178
|
addCellOutputListeners(cells) {
|
|
173
179
|
for (const cell of cells) {
|
|
@@ -177,6 +183,7 @@ let NotebookModel = class NotebookModel {
|
|
|
177
183
|
}
|
|
178
184
|
}
|
|
179
185
|
applyEdits(rawEdits, computeUndoRedo) {
|
|
186
|
+
var _a, _b, _c;
|
|
180
187
|
const editsWithDetails = rawEdits.map((edit, index) => {
|
|
181
188
|
let cellIndex = -1;
|
|
182
189
|
if ('index' in edit) {
|
|
@@ -211,12 +218,17 @@ let NotebookModel = class NotebookModel {
|
|
|
211
218
|
else {
|
|
212
219
|
// could definitely be more efficient. See vscode __spliceNotebookCellOutputs2
|
|
213
220
|
// For now, just replace the whole existing output with the new output
|
|
214
|
-
cell.spliceNotebookCellOutputs({ start: 0, deleteCount: cell.outputs.length, newOutputs: edit.outputs });
|
|
221
|
+
cell.spliceNotebookCellOutputs({ start: 0, deleteCount: (_a = edit.deleteCount) !== null && _a !== void 0 ? _a : cell.outputs.length, newOutputs: edit.outputs });
|
|
215
222
|
}
|
|
223
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.Output, index: cellIndex, outputs: cell.outputs, append: (_b = edit.append) !== null && _b !== void 0 ? _b : false });
|
|
216
224
|
break;
|
|
217
225
|
}
|
|
218
226
|
case 7 /* OutputItems */:
|
|
219
227
|
cell.changeOutputItems(edit.outputId, !!edit.append, edit.items);
|
|
228
|
+
this.onDidChangeContentEmitter.queue({
|
|
229
|
+
kind: common_1.NotebookCellsChangeType.OutputItem, index: cellIndex, outputItems: edit.items,
|
|
230
|
+
outputId: edit.outputId, append: (_c = edit.append) !== null && _c !== void 0 ? _c : false
|
|
231
|
+
});
|
|
220
232
|
break;
|
|
221
233
|
case 3 /* Metadata */:
|
|
222
234
|
this.changeCellMetadata(this.cells[cellIndex], edit.metadata, computeUndoRedo);
|
|
@@ -242,6 +254,7 @@ let NotebookModel = class NotebookModel {
|
|
|
242
254
|
this.setSelectedCell(this.cells[cellIndex]);
|
|
243
255
|
}
|
|
244
256
|
}
|
|
257
|
+
this.onDidChangeContentEmitter.fire();
|
|
245
258
|
}
|
|
246
259
|
async replaceCells(start, deleteCount, newCells, computeUndoRedo) {
|
|
247
260
|
const cells = newCells.map(cell => {
|
|
@@ -271,7 +284,7 @@ let NotebookModel = class NotebookModel {
|
|
|
271
284
|
// Otherwise we run into a race condition once we fire `onDidChangeContent`
|
|
272
285
|
await Promise.all(cells.map(cell => cell.resolveTextModel()));
|
|
273
286
|
this.onDidAddOrRemoveCellEmitter.fire({ rawEvent: { kind: common_1.NotebookCellsChangeType.ModelChange, changes }, newCellIds: cells.map(cell => cell.handle) });
|
|
274
|
-
this.onDidChangeContentEmitter.
|
|
287
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.ModelChange, changes });
|
|
275
288
|
if (cells.length > 0) {
|
|
276
289
|
this.setSelectedCell(cells[cells.length - 1]);
|
|
277
290
|
cells[cells.length - 1].requestEdit();
|
|
@@ -288,9 +301,7 @@ let NotebookModel = class NotebookModel {
|
|
|
288
301
|
newInternalMetadata[k] = ((_a = internalMetadata[k]) !== null && _a !== void 0 ? _a : undefined);
|
|
289
302
|
}
|
|
290
303
|
cell.internalMetadata = newInternalMetadata;
|
|
291
|
-
this.onDidChangeContentEmitter.
|
|
292
|
-
{ kind: common_1.NotebookCellsChangeType.ChangeCellInternalMetadata, index: this.cells.indexOf(cell), internalMetadata: newInternalMetadata }
|
|
293
|
-
]);
|
|
304
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.ChangeCellInternalMetadata, index: this.cells.indexOf(cell), internalMetadata: newInternalMetadata });
|
|
294
305
|
}
|
|
295
306
|
updateNotebookMetadata(metadata, computeUndoRedo) {
|
|
296
307
|
const oldMetadata = this.metadata;
|
|
@@ -298,7 +309,7 @@ let NotebookModel = class NotebookModel {
|
|
|
298
309
|
this.undoRedoService.pushElement(this.uri, async () => this.updateNotebookMetadata(oldMetadata, false), async () => this.updateNotebookMetadata(metadata, false));
|
|
299
310
|
}
|
|
300
311
|
this.metadata = metadata;
|
|
301
|
-
this.onDidChangeContentEmitter.
|
|
312
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.ChangeDocumentMetadata, metadata: this.metadata });
|
|
302
313
|
}
|
|
303
314
|
changeCellMetadataPartial(cell, metadata, computeUndoRedo) {
|
|
304
315
|
var _a;
|
|
@@ -323,14 +334,14 @@ let NotebookModel = class NotebookModel {
|
|
|
323
334
|
}
|
|
324
335
|
}
|
|
325
336
|
cell.metadata = metadata;
|
|
326
|
-
this.onDidChangeContentEmitter.
|
|
337
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.ChangeCellMetadata, index: this.cells.indexOf(cell), metadata: cell.metadata });
|
|
327
338
|
}
|
|
328
339
|
changeCellLanguage(cell, languageId, computeUndoRedo) {
|
|
329
340
|
if (cell.language === languageId) {
|
|
330
341
|
return;
|
|
331
342
|
}
|
|
332
343
|
cell.language = languageId;
|
|
333
|
-
this.onDidChangeContentEmitter.
|
|
344
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.ChangeCellLanguage, index: this.cells.indexOf(cell), language: languageId });
|
|
334
345
|
}
|
|
335
346
|
moveCellToIndex(fromIndex, length, toIndex, computeUndoRedo) {
|
|
336
347
|
if (computeUndoRedo) {
|
|
@@ -338,7 +349,7 @@ let NotebookModel = class NotebookModel {
|
|
|
338
349
|
}
|
|
339
350
|
const cells = this.cells.splice(fromIndex, length);
|
|
340
351
|
this.cells.splice(toIndex, 0, ...cells);
|
|
341
|
-
this.onDidChangeContentEmitter.
|
|
352
|
+
this.onDidChangeContentEmitter.queue({ kind: common_1.NotebookCellsChangeType.Move, index: fromIndex, length, newIdx: toIndex, cells });
|
|
342
353
|
return true;
|
|
343
354
|
}
|
|
344
355
|
getCellIndexByHandle(handle) {
|