@jupyterlab/rendermime 4.3.0-alpha.2 → 4.3.0-beta.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.
@@ -1,4 +1,5 @@
1
1
  import * as nbformat from '@jupyterlab/nbformat';
2
+ import { IObservableString } from '@jupyterlab/observables';
2
3
  import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
3
4
  import { PartialJSONObject, ReadonlyPartialJSONObject } from '@lumino/coreutils';
4
5
  import { ISignal } from '@lumino/signaling';
@@ -18,6 +19,10 @@ export interface IOutputModel extends IRenderMime.IMimeModel {
18
19
  * The execution count of the model.
19
20
  */
20
21
  readonly executionCount: nbformat.ExecutionCount;
22
+ /**
23
+ * The observable text, present when the output `type` is set to `"stream"`.
24
+ */
25
+ readonly streamText?: IObservableString;
21
26
  /**
22
27
  * Whether the output is trusted.
23
28
  */
@@ -81,6 +86,7 @@ export declare class OutputModel implements IOutputModel {
81
86
  * The data associated with the model.
82
87
  */
83
88
  get data(): ReadonlyPartialJSONObject;
89
+ get streamText(): IObservableString | undefined;
84
90
  /**
85
91
  * The metadata associated with the model.
86
92
  */
@@ -105,7 +111,7 @@ export declare class OutputModel implements IOutputModel {
105
111
  private _raw;
106
112
  private _rawMetadata;
107
113
  private _rawData;
108
- private _data;
114
+ private _text?;
109
115
  private _metadata;
110
116
  }
111
117
  /**
@@ -3,7 +3,7 @@
3
3
  | Distributed under the terms of the Modified BSD License.
4
4
  |----------------------------------------------------------------------------*/
5
5
  import * as nbformat from '@jupyterlab/nbformat';
6
- import { ObservableJSON } from '@jupyterlab/observables';
6
+ import { ObservableJSON, ObservableString } from '@jupyterlab/observables';
7
7
  import { JSONExt } from '@lumino/coreutils';
8
8
  import { Signal } from '@lumino/signaling';
9
9
  /**
@@ -16,9 +16,14 @@ export class OutputModel {
16
16
  constructor(options) {
17
17
  this._changed = new Signal(this);
18
18
  this._raw = {};
19
+ this._text = undefined;
19
20
  const { data, metadata, trusted } = Private.getBundleOptions(options);
20
- this._data = new ObservableJSON({ values: data });
21
21
  this._rawData = data;
22
+ if (options.value !== undefined && nbformat.isStream(options.value)) {
23
+ this._text = new ObservableString(typeof options.value.text === 'string'
24
+ ? options.value.text
25
+ : options.value.text.join(''));
26
+ }
22
27
  this._metadata = new ObservableJSON({ values: metadata });
23
28
  this._rawMetadata = metadata;
24
29
  this.trusted = trusted;
@@ -52,7 +57,8 @@ export class OutputModel {
52
57
  * Dispose of the resources used by the output model.
53
58
  */
54
59
  dispose() {
55
- this._data.dispose();
60
+ var _a;
61
+ (_a = this._text) === null || _a === void 0 ? void 0 : _a.dispose();
56
62
  this._metadata.dispose();
57
63
  Signal.clearData(this);
58
64
  }
@@ -60,7 +66,10 @@ export class OutputModel {
60
66
  * The data associated with the model.
61
67
  */
62
68
  get data() {
63
- return this._rawData;
69
+ return Private.getData(this.toJSON());
70
+ }
71
+ get streamText() {
72
+ return this._text;
64
73
  }
65
74
  /**
66
75
  * The metadata associated with the model.
@@ -77,7 +86,6 @@ export class OutputModel {
77
86
  */
78
87
  setData(options) {
79
88
  if (options.data) {
80
- this._updateObservable(this._data, options.data);
81
89
  this._rawData = options.data;
82
90
  }
83
91
  if (options.metadata) {
@@ -94,11 +102,14 @@ export class OutputModel {
94
102
  for (const key in this._raw) {
95
103
  output[key] = Private.extract(this._raw, key);
96
104
  }
105
+ if (this._text !== undefined) {
106
+ output['text'] = this._text.text;
107
+ }
97
108
  switch (this.type) {
98
109
  case 'display_data':
99
110
  case 'execute_result':
100
111
  case 'update_display_data':
101
- output['data'] = this.data;
112
+ output['data'] = this._rawData;
102
113
  output['metadata'] = this.metadata;
103
114
  break;
104
115
  default:
@@ -1 +1 @@
1
- {"version":3,"file":"outputmodel.js","sourceRoot":"","sources":["../src/outputmodel.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"outputmodel.js","sourceRoot":"","sources":["../src/outputmodel.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jupyterlab/rendermime",
3
- "version": "4.3.0-alpha.2",
3
+ "version": "4.3.0-beta.0",
4
4
  "description": "JupyterLab - RenderMime",
5
5
  "homepage": "https://github.com/jupyterlab/jupyterlab",
6
6
  "bugs": {
@@ -41,13 +41,13 @@
41
41
  "watch": "tsc -b --watch"
42
42
  },
43
43
  "dependencies": {
44
- "@jupyterlab/apputils": "^4.4.0-alpha.2",
45
- "@jupyterlab/coreutils": "^6.3.0-alpha.2",
46
- "@jupyterlab/nbformat": "^4.3.0-alpha.2",
47
- "@jupyterlab/observables": "^5.3.0-alpha.2",
48
- "@jupyterlab/rendermime-interfaces": "^3.11.0-alpha.2",
49
- "@jupyterlab/services": "^7.3.0-alpha.2",
50
- "@jupyterlab/translation": "^4.3.0-alpha.2",
44
+ "@jupyterlab/apputils": "^4.4.0-beta.0",
45
+ "@jupyterlab/coreutils": "^6.3.0-beta.0",
46
+ "@jupyterlab/nbformat": "^4.3.0-beta.0",
47
+ "@jupyterlab/observables": "^5.3.0-beta.0",
48
+ "@jupyterlab/rendermime-interfaces": "^3.11.0-beta.0",
49
+ "@jupyterlab/services": "^7.3.0-beta.0",
50
+ "@jupyterlab/translation": "^4.3.0-beta.0",
51
51
  "@lumino/coreutils": "^2.1.2",
52
52
  "@lumino/messaging": "^2.0.1",
53
53
  "@lumino/signaling": "^2.1.2",
@@ -55,7 +55,7 @@
55
55
  "lodash.escape": "^4.0.1"
56
56
  },
57
57
  "devDependencies": {
58
- "@jupyterlab/testing": "^4.3.0-alpha.2",
58
+ "@jupyterlab/testing": "^4.3.0-beta.0",
59
59
  "@types/jest": "^29.2.0",
60
60
  "@types/lodash.escape": "^4.0.6",
61
61
  "fs-extra": "^10.1.0",
@@ -3,7 +3,12 @@
3
3
  | Distributed under the terms of the Modified BSD License.
4
4
  |----------------------------------------------------------------------------*/
5
5
  import * as nbformat from '@jupyterlab/nbformat';
6
- import { IObservableJSON, ObservableJSON } from '@jupyterlab/observables';
6
+ import {
7
+ IObservableJSON,
8
+ IObservableString,
9
+ ObservableJSON,
10
+ ObservableString
11
+ } from '@jupyterlab/observables';
7
12
  import { IRenderMime } from '@jupyterlab/rendermime-interfaces';
8
13
  import {
9
14
  JSONExt,
@@ -35,6 +40,11 @@ export interface IOutputModel extends IRenderMime.IMimeModel {
35
40
  */
36
41
  readonly executionCount: nbformat.ExecutionCount;
37
42
 
43
+ /**
44
+ * The observable text, present when the output `type` is set to `"stream"`.
45
+ */
46
+ readonly streamText?: IObservableString;
47
+
38
48
  /**
39
49
  * Whether the output is trusted.
40
50
  */
@@ -80,8 +90,14 @@ export class OutputModel implements IOutputModel {
80
90
  */
81
91
  constructor(options: IOutputModel.IOptions) {
82
92
  const { data, metadata, trusted } = Private.getBundleOptions(options);
83
- this._data = new ObservableJSON({ values: data as JSONObject });
84
93
  this._rawData = data;
94
+ if (options.value !== undefined && nbformat.isStream(options.value)) {
95
+ this._text = new ObservableString(
96
+ typeof options.value.text === 'string'
97
+ ? options.value.text
98
+ : options.value.text.join('')
99
+ );
100
+ }
85
101
  this._metadata = new ObservableJSON({ values: metadata as JSONObject });
86
102
  this._rawMetadata = metadata;
87
103
  this.trusted = trusted;
@@ -131,7 +147,7 @@ export class OutputModel implements IOutputModel {
131
147
  * Dispose of the resources used by the output model.
132
148
  */
133
149
  dispose(): void {
134
- this._data.dispose();
150
+ this._text?.dispose();
135
151
  this._metadata.dispose();
136
152
  Signal.clearData(this);
137
153
  }
@@ -140,7 +156,11 @@ export class OutputModel implements IOutputModel {
140
156
  * The data associated with the model.
141
157
  */
142
158
  get data(): ReadonlyPartialJSONObject {
143
- return this._rawData;
159
+ return Private.getData(this.toJSON());
160
+ }
161
+
162
+ get streamText(): IObservableString | undefined {
163
+ return this._text;
144
164
  }
145
165
 
146
166
  /**
@@ -159,7 +179,6 @@ export class OutputModel implements IOutputModel {
159
179
  */
160
180
  setData(options: IRenderMime.IMimeModel.ISetDataOptions): void {
161
181
  if (options.data) {
162
- this._updateObservable(this._data, options.data);
163
182
  this._rawData = options.data;
164
183
  }
165
184
  if (options.metadata) {
@@ -177,11 +196,14 @@ export class OutputModel implements IOutputModel {
177
196
  for (const key in this._raw) {
178
197
  output[key] = Private.extract(this._raw, key);
179
198
  }
199
+ if (this._text !== undefined) {
200
+ output['text'] = this._text.text;
201
+ }
180
202
  switch (this.type) {
181
203
  case 'display_data':
182
204
  case 'execute_result':
183
205
  case 'update_display_data':
184
- output['data'] = this.data as PartialJSONObject;
206
+ output['data'] = this._rawData as PartialJSONObject;
185
207
  output['metadata'] = this.metadata as PartialJSONObject;
186
208
  break;
187
209
  default:
@@ -223,7 +245,7 @@ export class OutputModel implements IOutputModel {
223
245
  private _raw: PartialJSONObject = {};
224
246
  private _rawMetadata: ReadonlyPartialJSONObject;
225
247
  private _rawData: ReadonlyPartialJSONObject;
226
- private _data: IObservableJSON;
248
+ private _text?: IObservableString = undefined;
227
249
  private _metadata: IObservableJSON;
228
250
  }
229
251