@jupyterlab/notebook 4.6.0-beta.0 → 4.6.0-beta.1
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/model.d.ts +0 -1
- package/lib/model.js +5 -19
- package/lib/model.js.map +1 -1
- package/lib/testutils.d.ts +1 -1
- package/package.json +22 -22
- package/src/model.ts +6 -18
package/lib/model.d.ts
CHANGED
|
@@ -212,7 +212,6 @@ export declare class NotebookModel implements INotebookModel {
|
|
|
212
212
|
* Whether the model should disposed the shared model on disposal or not.
|
|
213
213
|
*/
|
|
214
214
|
protected standaloneModel: boolean;
|
|
215
|
-
private _dirty;
|
|
216
215
|
private _readOnly;
|
|
217
216
|
private _contentChanged;
|
|
218
217
|
private _stateChanged;
|
package/lib/model.js
CHANGED
|
@@ -21,7 +21,6 @@ export class NotebookModel {
|
|
|
21
21
|
* Whether the model should disposed the shared model on disposal or not.
|
|
22
22
|
*/
|
|
23
23
|
this.standaloneModel = false;
|
|
24
|
-
this._dirty = false;
|
|
25
24
|
this._readOnly = false;
|
|
26
25
|
this._contentChanged = new Signal(this);
|
|
27
26
|
this._stateChanged = new Signal(this);
|
|
@@ -80,19 +79,14 @@ export class NotebookModel {
|
|
|
80
79
|
* The dirty state of the document.
|
|
81
80
|
*/
|
|
82
81
|
get dirty() {
|
|
83
|
-
return this.
|
|
82
|
+
return this.sharedModel.dirty;
|
|
84
83
|
}
|
|
85
84
|
set dirty(newValue) {
|
|
86
|
-
const oldValue = this.
|
|
85
|
+
const oldValue = this.dirty;
|
|
87
86
|
if (newValue === oldValue) {
|
|
88
87
|
return;
|
|
89
88
|
}
|
|
90
|
-
this.
|
|
91
|
-
this.triggerStateChange({
|
|
92
|
-
name: 'dirty',
|
|
93
|
-
oldValue,
|
|
94
|
-
newValue
|
|
95
|
-
});
|
|
89
|
+
this.sharedModel.dirty = newValue;
|
|
96
90
|
}
|
|
97
91
|
/**
|
|
98
92
|
* The read only state of the document.
|
|
@@ -277,9 +271,8 @@ close the notebook without saving it.`, origNbformat, copy.nbformat);
|
|
|
277
271
|
{ cell_type: 'code', source: '', metadata: { trusted: true } }
|
|
278
272
|
];
|
|
279
273
|
}
|
|
280
|
-
this.sharedModel.
|
|
274
|
+
this.sharedModel.setSource(copy);
|
|
281
275
|
this._ensureMetadata();
|
|
282
|
-
this.dirty = true;
|
|
283
276
|
}
|
|
284
277
|
/**
|
|
285
278
|
* Handle a change in the cells list.
|
|
@@ -313,13 +306,7 @@ close the notebook without saving it.`, origNbformat, copy.nbformat);
|
|
|
313
306
|
_onStateChanged(sender, changes) {
|
|
314
307
|
if (changes.stateChange) {
|
|
315
308
|
changes.stateChange.forEach(value => {
|
|
316
|
-
if (value.
|
|
317
|
-
// Setting `dirty` will trigger the state change.
|
|
318
|
-
// We always set `dirty` because the shared model state
|
|
319
|
-
// and the local attribute are synchronized one way shared model -> _dirty
|
|
320
|
-
this.dirty = value.newValue;
|
|
321
|
-
}
|
|
322
|
-
else if (value.oldValue !== value.newValue) {
|
|
309
|
+
if (value.oldValue !== value.newValue) {
|
|
323
310
|
this.triggerStateChange({
|
|
324
311
|
newValue: undefined,
|
|
325
312
|
oldValue: undefined,
|
|
@@ -354,7 +341,6 @@ close the notebook without saving it.`, origNbformat, copy.nbformat);
|
|
|
354
341
|
*/
|
|
355
342
|
triggerContentChange() {
|
|
356
343
|
this._contentChanged.emit(void 0);
|
|
357
|
-
this.dirty = true;
|
|
358
344
|
}
|
|
359
345
|
/**
|
|
360
346
|
* Whether the model is disposed.
|
package/lib/model.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,0CAA0C;AAC1C,2DAA2D;AAC3D,uDAAuD;AAEvD,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAI1D,OAAO,KAAK,QAAQ,MAAM,sBAAsB,CAAC;AAOjD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
|
package/lib/testutils.d.ts
CHANGED
|
@@ -30,7 +30,7 @@ export declare namespace NBTestUtils {
|
|
|
30
30
|
markdown: Record<string, any>;
|
|
31
31
|
raw: Record<string, any>;
|
|
32
32
|
};
|
|
33
|
-
const editorFactory:
|
|
33
|
+
const editorFactory: import("@jupyterlab/codeeditor").CodeEditor.Factory;
|
|
34
34
|
const mimeTypeService: import("@jupyterlab/codeeditor").IEditorMimeTypeService;
|
|
35
35
|
/**
|
|
36
36
|
* Get a copy of the default rendermime instance.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyterlab/notebook",
|
|
3
|
-
"version": "4.6.0-beta.
|
|
3
|
+
"version": "4.6.0-beta.1",
|
|
4
4
|
"description": "JupyterLab - Notebook",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -40,25 +40,25 @@
|
|
|
40
40
|
"watch": "tsc -b --watch"
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
|
-
"@jupyter/ydoc": "^
|
|
44
|
-
"@jupyterlab/apputils": "^4.7.0-beta.
|
|
45
|
-
"@jupyterlab/cells": "^4.6.0-beta.
|
|
46
|
-
"@jupyterlab/codeeditor": "^4.6.0-beta.
|
|
47
|
-
"@jupyterlab/codemirror": "^4.6.0-beta.
|
|
48
|
-
"@jupyterlab/coreutils": "^6.6.0-beta.
|
|
49
|
-
"@jupyterlab/docregistry": "^4.6.0-beta.
|
|
50
|
-
"@jupyterlab/documentsearch": "^4.6.0-beta.
|
|
51
|
-
"@jupyterlab/lsp": "^4.6.0-beta.
|
|
52
|
-
"@jupyterlab/markedparser-extension": "^4.6.0-beta.
|
|
53
|
-
"@jupyterlab/nbformat": "^4.6.0-beta.
|
|
54
|
-
"@jupyterlab/observables": "^5.6.0-beta.
|
|
55
|
-
"@jupyterlab/rendermime": "^4.6.0-beta.
|
|
56
|
-
"@jupyterlab/services": "^7.6.0-beta.
|
|
57
|
-
"@jupyterlab/settingregistry": "^4.6.0-beta.
|
|
58
|
-
"@jupyterlab/statusbar": "^4.6.0-beta.
|
|
59
|
-
"@jupyterlab/toc": "^6.6.0-beta.
|
|
60
|
-
"@jupyterlab/translation": "^4.6.0-beta.
|
|
61
|
-
"@jupyterlab/ui-components": "^4.6.0-beta.
|
|
43
|
+
"@jupyter/ydoc": "^4.0.0-a3",
|
|
44
|
+
"@jupyterlab/apputils": "^4.7.0-beta.1",
|
|
45
|
+
"@jupyterlab/cells": "^4.6.0-beta.1",
|
|
46
|
+
"@jupyterlab/codeeditor": "^4.6.0-beta.1",
|
|
47
|
+
"@jupyterlab/codemirror": "^4.6.0-beta.1",
|
|
48
|
+
"@jupyterlab/coreutils": "^6.6.0-beta.1",
|
|
49
|
+
"@jupyterlab/docregistry": "^4.6.0-beta.1",
|
|
50
|
+
"@jupyterlab/documentsearch": "^4.6.0-beta.1",
|
|
51
|
+
"@jupyterlab/lsp": "^4.6.0-beta.1",
|
|
52
|
+
"@jupyterlab/markedparser-extension": "^4.6.0-beta.1",
|
|
53
|
+
"@jupyterlab/nbformat": "^4.6.0-beta.1",
|
|
54
|
+
"@jupyterlab/observables": "^5.6.0-beta.1",
|
|
55
|
+
"@jupyterlab/rendermime": "^4.6.0-beta.1",
|
|
56
|
+
"@jupyterlab/services": "^7.6.0-beta.1",
|
|
57
|
+
"@jupyterlab/settingregistry": "^4.6.0-beta.1",
|
|
58
|
+
"@jupyterlab/statusbar": "^4.6.0-beta.1",
|
|
59
|
+
"@jupyterlab/toc": "^6.6.0-beta.1",
|
|
60
|
+
"@jupyterlab/translation": "^4.6.0-beta.1",
|
|
61
|
+
"@jupyterlab/ui-components": "^4.6.0-beta.1",
|
|
62
62
|
"@lumino/algorithm": "^2.0.4",
|
|
63
63
|
"@lumino/commands": "^2.3.3",
|
|
64
64
|
"@lumino/coreutils": "^2.2.2",
|
|
@@ -70,11 +70,11 @@
|
|
|
70
70
|
"@lumino/properties": "^2.0.4",
|
|
71
71
|
"@lumino/signaling": "^2.1.5",
|
|
72
72
|
"@lumino/virtualdom": "^2.0.4",
|
|
73
|
-
"@lumino/widgets": "^2.
|
|
73
|
+
"@lumino/widgets": "^2.8.0",
|
|
74
74
|
"react": "^18.2.0"
|
|
75
75
|
},
|
|
76
76
|
"devDependencies": {
|
|
77
|
-
"@jupyterlab/testing": "^4.6.0-beta.
|
|
77
|
+
"@jupyterlab/testing": "^4.6.0-beta.1",
|
|
78
78
|
"@types/jest": "^29.2.0",
|
|
79
79
|
"jest": "^29.2.0",
|
|
80
80
|
"rimraf": "~5.0.5",
|
package/src/model.ts
CHANGED
|
@@ -16,6 +16,7 @@ import type {
|
|
|
16
16
|
import { YNotebook } from '@jupyter/ydoc';
|
|
17
17
|
import type { ITranslator, TranslationBundle } from '@jupyterlab/translation';
|
|
18
18
|
import { nullTranslator } from '@jupyterlab/translation';
|
|
19
|
+
import type { JSONValue } from '@lumino/coreutils';
|
|
19
20
|
import { JSONExt } from '@lumino/coreutils';
|
|
20
21
|
import type { ISignal } from '@lumino/signaling';
|
|
21
22
|
import { Signal } from '@lumino/signaling';
|
|
@@ -161,19 +162,14 @@ export class NotebookModel implements INotebookModel {
|
|
|
161
162
|
* The dirty state of the document.
|
|
162
163
|
*/
|
|
163
164
|
get dirty(): boolean {
|
|
164
|
-
return this.
|
|
165
|
+
return this.sharedModel.dirty;
|
|
165
166
|
}
|
|
166
167
|
set dirty(newValue: boolean) {
|
|
167
|
-
const oldValue = this.
|
|
168
|
+
const oldValue = this.dirty;
|
|
168
169
|
if (newValue === oldValue) {
|
|
169
170
|
return;
|
|
170
171
|
}
|
|
171
|
-
this.
|
|
172
|
-
this.triggerStateChange({
|
|
173
|
-
name: 'dirty',
|
|
174
|
-
oldValue,
|
|
175
|
-
newValue
|
|
176
|
-
});
|
|
172
|
+
this.sharedModel.dirty = newValue;
|
|
177
173
|
}
|
|
178
174
|
|
|
179
175
|
/**
|
|
@@ -383,10 +379,9 @@ close the notebook without saving it.`,
|
|
|
383
379
|
{ cell_type: 'code', source: '', metadata: { trusted: true } }
|
|
384
380
|
];
|
|
385
381
|
}
|
|
386
|
-
this.sharedModel.
|
|
382
|
+
this.sharedModel.setSource(copy as JSONValue);
|
|
387
383
|
|
|
388
384
|
this._ensureMetadata();
|
|
389
|
-
this.dirty = true;
|
|
390
385
|
}
|
|
391
386
|
|
|
392
387
|
/**
|
|
@@ -432,12 +427,7 @@ close the notebook without saving it.`,
|
|
|
432
427
|
): void {
|
|
433
428
|
if (changes.stateChange) {
|
|
434
429
|
changes.stateChange.forEach(value => {
|
|
435
|
-
if (value.
|
|
436
|
-
// Setting `dirty` will trigger the state change.
|
|
437
|
-
// We always set `dirty` because the shared model state
|
|
438
|
-
// and the local attribute are synchronized one way shared model -> _dirty
|
|
439
|
-
this.dirty = value.newValue;
|
|
440
|
-
} else if (value.oldValue !== value.newValue) {
|
|
430
|
+
if (value.oldValue !== value.newValue) {
|
|
441
431
|
this.triggerStateChange({
|
|
442
432
|
newValue: undefined,
|
|
443
433
|
oldValue: undefined,
|
|
@@ -475,7 +465,6 @@ close the notebook without saving it.`,
|
|
|
475
465
|
*/
|
|
476
466
|
protected triggerContentChange(): void {
|
|
477
467
|
this._contentChanged.emit(void 0);
|
|
478
|
-
this.dirty = true;
|
|
479
468
|
}
|
|
480
469
|
|
|
481
470
|
/**
|
|
@@ -495,7 +484,6 @@ close the notebook without saving it.`,
|
|
|
495
484
|
*/
|
|
496
485
|
protected standaloneModel = false;
|
|
497
486
|
|
|
498
|
-
private _dirty = false;
|
|
499
487
|
private _readOnly = false;
|
|
500
488
|
private _contentChanged = new Signal<this, void>(this);
|
|
501
489
|
private _stateChanged = new Signal<this, IChangedArgs<any>>(this);
|