@jupyterlab/rendermime 4.1.1 → 4.1.3

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/widgets.d.ts CHANGED
@@ -105,6 +105,7 @@ export declare class RenderedHTML extends RenderedHTMLCommon {
105
105
  * A message handler invoked on an `'after-attach'` message.
106
106
  */
107
107
  onAfterAttach(msg: Message): void;
108
+ private _rendered;
108
109
  }
109
110
  /**
110
111
  * A mime renderer for displaying LaTeX output.
@@ -128,6 +129,7 @@ export declare class RenderedLatex extends RenderedCommon {
128
129
  * A message handler invoked on an `'after-attach'` message.
129
130
  */
130
131
  onAfterAttach(msg: Message): void;
132
+ private _rendered;
131
133
  }
132
134
  /**
133
135
  * A mime renderer for displaying images.
@@ -178,6 +180,7 @@ export declare class RenderedMarkdown extends RenderedHTMLCommon {
178
180
  * A message handler invoked on an `'after-attach'` message.
179
181
  */
180
182
  onAfterAttach(msg: Message): void;
183
+ private _rendered;
181
184
  }
182
185
  /**
183
186
  * A widget for displaying SVG content.
@@ -201,6 +204,7 @@ export declare class RenderedSVG extends RenderedCommon {
201
204
  * A message handler invoked on an `'after-attach'` message.
202
205
  */
203
206
  onAfterAttach(msg: Message): void;
207
+ private _rendered;
204
208
  }
205
209
  /**
206
210
  * A widget for displaying plain text and console text.
package/lib/widgets.js CHANGED
@@ -103,6 +103,8 @@ export class RenderedHTML extends RenderedHTMLCommon {
103
103
  */
104
104
  constructor(options) {
105
105
  super(options);
106
+ // A promise which resolves when most recent rendering is complete.
107
+ this._rendered = Promise.resolve();
106
108
  this.addClass('jp-RenderedHTML');
107
109
  }
108
110
  /**
@@ -113,7 +115,7 @@ export class RenderedHTML extends RenderedHTMLCommon {
113
115
  * @returns A promise which resolves when rendering is complete.
114
116
  */
115
117
  render(model) {
116
- return renderers.renderHTML({
118
+ return (this._rendered = renderers.renderHTML({
117
119
  host: this.node,
118
120
  source: String(model.data[this.mimeType]),
119
121
  trusted: model.trusted,
@@ -123,15 +125,19 @@ export class RenderedHTML extends RenderedHTMLCommon {
123
125
  shouldTypeset: this.isAttached,
124
126
  latexTypesetter: this.latexTypesetter,
125
127
  translator: this.translator
126
- });
128
+ }));
127
129
  }
128
130
  /**
129
131
  * A message handler invoked on an `'after-attach'` message.
130
132
  */
131
133
  onAfterAttach(msg) {
132
- if (this.latexTypesetter) {
133
- this.latexTypesetter.typeset(this.node);
134
- }
134
+ this._rendered
135
+ .then(() => {
136
+ if (this.latexTypesetter) {
137
+ this.latexTypesetter.typeset(this.node);
138
+ }
139
+ })
140
+ .catch(console.warn);
135
141
  }
136
142
  }
137
143
  /**
@@ -145,6 +151,8 @@ export class RenderedLatex extends RenderedCommon {
145
151
  */
146
152
  constructor(options) {
147
153
  super(options);
154
+ // A promise which resolves when most recent rendering is complete.
155
+ this._rendered = Promise.resolve();
148
156
  this.addClass('jp-RenderedLatex');
149
157
  }
150
158
  /**
@@ -155,20 +163,24 @@ export class RenderedLatex extends RenderedCommon {
155
163
  * @returns A promise which resolves when rendering is complete.
156
164
  */
157
165
  render(model) {
158
- return renderers.renderLatex({
166
+ return (this._rendered = renderers.renderLatex({
159
167
  host: this.node,
160
168
  source: String(model.data[this.mimeType]),
161
169
  shouldTypeset: this.isAttached,
162
170
  latexTypesetter: this.latexTypesetter
163
- });
171
+ }));
164
172
  }
165
173
  /**
166
174
  * A message handler invoked on an `'after-attach'` message.
167
175
  */
168
176
  onAfterAttach(msg) {
169
- if (this.latexTypesetter) {
170
- this.latexTypesetter.typeset(this.node);
171
- }
177
+ this._rendered
178
+ .then(() => {
179
+ if (this.latexTypesetter) {
180
+ this.latexTypesetter.typeset(this.node);
181
+ }
182
+ })
183
+ .catch(console.warn);
172
184
  }
173
185
  }
174
186
  /**
@@ -215,6 +227,8 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
215
227
  */
216
228
  constructor(options) {
217
229
  super(options);
230
+ // A promise which resolves when most recent rendering is complete.
231
+ this._rendered = Promise.resolve();
218
232
  this.addClass('jp-RenderedMarkdown');
219
233
  }
220
234
  /**
@@ -225,7 +239,7 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
225
239
  * @returns A promise which resolves when rendering is complete.
226
240
  */
227
241
  render(model) {
228
- return renderers.renderMarkdown({
242
+ return (this._rendered = renderers.renderMarkdown({
229
243
  host: this.node,
230
244
  source: String(model.data[this.mimeType]),
231
245
  trusted: model.trusted,
@@ -236,7 +250,7 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
236
250
  latexTypesetter: this.latexTypesetter,
237
251
  markdownParser: this.markdownParser,
238
252
  translator: this.translator
239
- });
253
+ }));
240
254
  }
241
255
  /**
242
256
  * Render a mime model.
@@ -252,9 +266,13 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
252
266
  * A message handler invoked on an `'after-attach'` message.
253
267
  */
254
268
  onAfterAttach(msg) {
255
- if (this.latexTypesetter) {
256
- this.latexTypesetter.typeset(this.node);
257
- }
269
+ this._rendered
270
+ .then(() => {
271
+ if (this.latexTypesetter) {
272
+ this.latexTypesetter.typeset(this.node);
273
+ }
274
+ })
275
+ .catch(console.warn);
258
276
  }
259
277
  }
260
278
  /**
@@ -268,6 +286,8 @@ export class RenderedSVG extends RenderedCommon {
268
286
  */
269
287
  constructor(options) {
270
288
  super(options);
289
+ // A promise which resolves when most recent rendering is complete.
290
+ this._rendered = Promise.resolve();
271
291
  this.addClass('jp-RenderedSVG');
272
292
  }
273
293
  /**
@@ -279,21 +299,25 @@ export class RenderedSVG extends RenderedCommon {
279
299
  */
280
300
  render(model) {
281
301
  const metadata = model.metadata[this.mimeType];
282
- return renderers.renderSVG({
302
+ return (this._rendered = renderers.renderSVG({
283
303
  host: this.node,
284
304
  source: String(model.data[this.mimeType]),
285
305
  trusted: model.trusted,
286
306
  unconfined: metadata && metadata.unconfined,
287
307
  translator: this.translator
288
- });
308
+ }));
289
309
  }
290
310
  /**
291
311
  * A message handler invoked on an `'after-attach'` message.
292
312
  */
293
313
  onAfterAttach(msg) {
294
- if (this.latexTypesetter) {
295
- this.latexTypesetter.typeset(this.node);
296
- }
314
+ this._rendered
315
+ .then(() => {
316
+ if (this.latexTypesetter) {
317
+ this.latexTypesetter.typeset(this.node);
318
+ }
319
+ })
320
+ .catch(console.warn);
297
321
  }
298
322
  }
299
323
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"widgets.js","sourceRoot":"","sources":["../src/widgets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"widgets.js","sourceRoot":"","sources":["../src/widgets.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.1.1",
3
+ "version": "4.1.3",
4
4
  "description": "JupyterLab - RenderMime",
5
5
  "homepage": "https://github.com/jupyterlab/jupyterlab",
6
6
  "bugs": {
@@ -42,13 +42,13 @@
42
42
  "watch": "tsc -b --watch"
43
43
  },
44
44
  "dependencies": {
45
- "@jupyterlab/apputils": "^4.2.1",
46
- "@jupyterlab/coreutils": "^6.1.1",
47
- "@jupyterlab/nbformat": "^4.1.1",
48
- "@jupyterlab/observables": "^5.1.1",
49
- "@jupyterlab/rendermime-interfaces": "^3.9.1",
50
- "@jupyterlab/services": "^7.1.1",
51
- "@jupyterlab/translation": "^4.1.1",
45
+ "@jupyterlab/apputils": "^4.2.3",
46
+ "@jupyterlab/coreutils": "^6.1.3",
47
+ "@jupyterlab/nbformat": "^4.1.3",
48
+ "@jupyterlab/observables": "^5.1.3",
49
+ "@jupyterlab/rendermime-interfaces": "^3.9.3",
50
+ "@jupyterlab/services": "^7.1.3",
51
+ "@jupyterlab/translation": "^4.1.3",
52
52
  "@lumino/coreutils": "^2.1.2",
53
53
  "@lumino/messaging": "^2.0.1",
54
54
  "@lumino/signaling": "^2.1.2",
@@ -56,7 +56,7 @@
56
56
  "lodash.escape": "^4.0.1"
57
57
  },
58
58
  "devDependencies": {
59
- "@jupyterlab/testing": "^4.1.1",
59
+ "@jupyterlab/testing": "^4.1.3",
60
60
  "@types/jest": "^29.2.0",
61
61
  "@types/lodash.escape": "^4.0.6",
62
62
  "fs-extra": "^10.1.0",
package/src/widgets.ts CHANGED
@@ -184,7 +184,7 @@ export class RenderedHTML extends RenderedHTMLCommon {
184
184
  * @returns A promise which resolves when rendering is complete.
185
185
  */
186
186
  render(model: IRenderMime.IMimeModel): Promise<void> {
187
- return renderers.renderHTML({
187
+ return (this._rendered = renderers.renderHTML({
188
188
  host: this.node,
189
189
  source: String(model.data[this.mimeType]),
190
190
  trusted: model.trusted,
@@ -194,17 +194,24 @@ export class RenderedHTML extends RenderedHTMLCommon {
194
194
  shouldTypeset: this.isAttached,
195
195
  latexTypesetter: this.latexTypesetter,
196
196
  translator: this.translator
197
- });
197
+ }));
198
198
  }
199
199
 
200
200
  /**
201
201
  * A message handler invoked on an `'after-attach'` message.
202
202
  */
203
203
  onAfterAttach(msg: Message): void {
204
- if (this.latexTypesetter) {
205
- this.latexTypesetter.typeset(this.node);
206
- }
204
+ this._rendered
205
+ .then(() => {
206
+ if (this.latexTypesetter) {
207
+ this.latexTypesetter.typeset(this.node);
208
+ }
209
+ })
210
+ .catch(console.warn);
207
211
  }
212
+
213
+ // A promise which resolves when most recent rendering is complete.
214
+ private _rendered: Promise<void> = Promise.resolve();
208
215
  }
209
216
 
210
217
  /**
@@ -229,22 +236,29 @@ export class RenderedLatex extends RenderedCommon {
229
236
  * @returns A promise which resolves when rendering is complete.
230
237
  */
231
238
  render(model: IRenderMime.IMimeModel): Promise<void> {
232
- return renderers.renderLatex({
239
+ return (this._rendered = renderers.renderLatex({
233
240
  host: this.node,
234
241
  source: String(model.data[this.mimeType]),
235
242
  shouldTypeset: this.isAttached,
236
243
  latexTypesetter: this.latexTypesetter
237
- });
244
+ }));
238
245
  }
239
246
 
240
247
  /**
241
248
  * A message handler invoked on an `'after-attach'` message.
242
249
  */
243
250
  onAfterAttach(msg: Message): void {
244
- if (this.latexTypesetter) {
245
- this.latexTypesetter.typeset(this.node);
246
- }
251
+ this._rendered
252
+ .then(() => {
253
+ if (this.latexTypesetter) {
254
+ this.latexTypesetter.typeset(this.node);
255
+ }
256
+ })
257
+ .catch(console.warn);
247
258
  }
259
+
260
+ // A promise which resolves when most recent rendering is complete.
261
+ private _rendered: Promise<void> = Promise.resolve();
248
262
  }
249
263
 
250
264
  /**
@@ -306,7 +320,7 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
306
320
  * @returns A promise which resolves when rendering is complete.
307
321
  */
308
322
  render(model: IRenderMime.IMimeModel): Promise<void> {
309
- return renderers.renderMarkdown({
323
+ return (this._rendered = renderers.renderMarkdown({
310
324
  host: this.node,
311
325
  source: String(model.data[this.mimeType]),
312
326
  trusted: model.trusted,
@@ -317,7 +331,7 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
317
331
  latexTypesetter: this.latexTypesetter,
318
332
  markdownParser: this.markdownParser,
319
333
  translator: this.translator
320
- });
334
+ }));
321
335
  }
322
336
 
323
337
  /**
@@ -335,10 +349,17 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
335
349
  * A message handler invoked on an `'after-attach'` message.
336
350
  */
337
351
  onAfterAttach(msg: Message): void {
338
- if (this.latexTypesetter) {
339
- this.latexTypesetter.typeset(this.node);
340
- }
352
+ this._rendered
353
+ .then(() => {
354
+ if (this.latexTypesetter) {
355
+ this.latexTypesetter.typeset(this.node);
356
+ }
357
+ })
358
+ .catch(console.warn);
341
359
  }
360
+
361
+ // A promise which resolves when most recent rendering is complete.
362
+ private _rendered: Promise<void> = Promise.resolve();
342
363
  }
343
364
 
344
365
  /**
@@ -366,23 +387,30 @@ export class RenderedSVG extends RenderedCommon {
366
387
  const metadata = model.metadata[this.mimeType] as
367
388
  | ReadonlyJSONObject
368
389
  | undefined;
369
- return renderers.renderSVG({
390
+ return (this._rendered = renderers.renderSVG({
370
391
  host: this.node,
371
392
  source: String(model.data[this.mimeType]),
372
393
  trusted: model.trusted,
373
394
  unconfined: metadata && (metadata.unconfined as boolean | undefined),
374
395
  translator: this.translator
375
- });
396
+ }));
376
397
  }
377
398
 
378
399
  /**
379
400
  * A message handler invoked on an `'after-attach'` message.
380
401
  */
381
402
  onAfterAttach(msg: Message): void {
382
- if (this.latexTypesetter) {
383
- this.latexTypesetter.typeset(this.node);
384
- }
403
+ this._rendered
404
+ .then(() => {
405
+ if (this.latexTypesetter) {
406
+ this.latexTypesetter.typeset(this.node);
407
+ }
408
+ })
409
+ .catch(console.warn);
385
410
  }
411
+
412
+ // A promise which resolves when most recent rendering is complete.
413
+ private _rendered: Promise<void> = Promise.resolve();
386
414
  }
387
415
 
388
416
  /**