@jupyterlab/rendermime 4.0.0 → 4.0.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/widgets.d.ts CHANGED
@@ -45,15 +45,17 @@ export declare abstract class RenderedCommon extends Widget implements IRenderMi
45
45
  *
46
46
  * @param model - The mime model to render.
47
47
  *
48
+ * @param keepExisting - Whether to keep the existing rendering.
49
+ *
48
50
  * @returns A promise which resolves when rendering is complete.
49
51
  *
50
52
  * #### Notes
51
- * If the DOM node for this widget already has content, it is emptied
52
- * before rendering. Subclasses that do not want this behavior
53
- * (if, for instance, they are using DOM diffing), should override
54
- * this method and not call `super.renderModel()`.
53
+ * By default, if the DOM node for this widget already has content, it
54
+ * is emptied before rendering. Subclasses that do not want this behavior
55
+ * (if, for instance, they are using DOM diffing), should override this
56
+ * method or call `super.renderModel(model, true)`.
55
57
  */
56
- renderModel(model: IRenderMime.IMimeModel): Promise<void>;
58
+ renderModel(model: IRenderMime.IMimeModel, keepExisting?: boolean): Promise<void>;
57
59
  /**
58
60
  * Render the mime model.
59
61
  *
@@ -164,6 +166,14 @@ export declare class RenderedMarkdown extends RenderedHTMLCommon {
164
166
  * @returns A promise which resolves when rendering is complete.
165
167
  */
166
168
  render(model: IRenderMime.IMimeModel): Promise<void>;
169
+ /**
170
+ * Render a mime model.
171
+ *
172
+ * @param model - The mime model to render.
173
+ *
174
+ * @returns A promise which resolves when rendering is complete.
175
+ */
176
+ renderModel(model: IRenderMime.IMimeModel): Promise<void>;
167
177
  /**
168
178
  * A message handler invoked on an `'after-attach'` message.
169
179
  */
package/lib/widgets.js CHANGED
@@ -27,19 +27,23 @@ export class RenderedCommon extends Widget {
27
27
  *
28
28
  * @param model - The mime model to render.
29
29
  *
30
+ * @param keepExisting - Whether to keep the existing rendering.
31
+ *
30
32
  * @returns A promise which resolves when rendering is complete.
31
33
  *
32
34
  * #### Notes
33
- * If the DOM node for this widget already has content, it is emptied
34
- * before rendering. Subclasses that do not want this behavior
35
- * (if, for instance, they are using DOM diffing), should override
36
- * this method and not call `super.renderModel()`.
35
+ * By default, if the DOM node for this widget already has content, it
36
+ * is emptied before rendering. Subclasses that do not want this behavior
37
+ * (if, for instance, they are using DOM diffing), should override this
38
+ * method or call `super.renderModel(model, true)`.
37
39
  */
38
- async renderModel(model) {
40
+ async renderModel(model, keepExisting) {
39
41
  // TODO compare model against old model for early bail?
40
42
  // Empty any existing content in the node from previous renders
41
- while (this.node.firstChild) {
42
- this.node.removeChild(this.node.firstChild);
43
+ if (!keepExisting) {
44
+ while (this.node.firstChild) {
45
+ this.node.removeChild(this.node.firstChild);
46
+ }
43
47
  }
44
48
  // Toggle the trusted class on the widget.
45
49
  this.toggleClass('jp-mod-trusted', model.trusted);
@@ -234,6 +238,16 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
234
238
  translator: this.translator
235
239
  });
236
240
  }
241
+ /**
242
+ * Render a mime model.
243
+ *
244
+ * @param model - The mime model to render.
245
+ *
246
+ * @returns A promise which resolves when rendering is complete.
247
+ */
248
+ async renderModel(model) {
249
+ await super.renderModel(model, true);
250
+ }
237
251
  /**
238
252
  * A message handler invoked on an `'after-attach'` message.
239
253
  */
@@ -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.0.0",
3
+ "version": "4.0.2",
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.0.0",
46
- "@jupyterlab/coreutils": "^6.0.0",
47
- "@jupyterlab/nbformat": "^4.0.0",
48
- "@jupyterlab/observables": "^5.0.0",
49
- "@jupyterlab/rendermime-interfaces": "^3.8.0",
50
- "@jupyterlab/services": "^7.0.0",
51
- "@jupyterlab/translation": "^4.0.0",
45
+ "@jupyterlab/apputils": "^4.1.2",
46
+ "@jupyterlab/coreutils": "^6.0.2",
47
+ "@jupyterlab/nbformat": "^4.0.2",
48
+ "@jupyterlab/observables": "^5.0.2",
49
+ "@jupyterlab/rendermime-interfaces": "^3.8.2",
50
+ "@jupyterlab/services": "^7.0.2",
51
+ "@jupyterlab/translation": "^4.0.2",
52
52
  "@lumino/coreutils": "^2.1.1",
53
53
  "@lumino/messaging": "^2.0.0",
54
54
  "@lumino/signaling": "^2.1.1",
@@ -56,7 +56,7 @@
56
56
  "lodash.escape": "^4.0.1"
57
57
  },
58
58
  "devDependencies": {
59
- "@jupyterlab/testing": "^4.0.0",
59
+ "@jupyterlab/testing": "^4.0.2",
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
@@ -76,20 +76,27 @@ export abstract class RenderedCommon
76
76
  *
77
77
  * @param model - The mime model to render.
78
78
  *
79
+ * @param keepExisting - Whether to keep the existing rendering.
80
+ *
79
81
  * @returns A promise which resolves when rendering is complete.
80
82
  *
81
83
  * #### Notes
82
- * If the DOM node for this widget already has content, it is emptied
83
- * before rendering. Subclasses that do not want this behavior
84
- * (if, for instance, they are using DOM diffing), should override
85
- * this method and not call `super.renderModel()`.
84
+ * By default, if the DOM node for this widget already has content, it
85
+ * is emptied before rendering. Subclasses that do not want this behavior
86
+ * (if, for instance, they are using DOM diffing), should override this
87
+ * method or call `super.renderModel(model, true)`.
86
88
  */
87
- async renderModel(model: IRenderMime.IMimeModel): Promise<void> {
89
+ async renderModel(
90
+ model: IRenderMime.IMimeModel,
91
+ keepExisting?: boolean
92
+ ): Promise<void> {
88
93
  // TODO compare model against old model for early bail?
89
94
 
90
95
  // Empty any existing content in the node from previous renders
91
- while (this.node.firstChild) {
92
- this.node.removeChild(this.node.firstChild);
96
+ if (!keepExisting) {
97
+ while (this.node.firstChild) {
98
+ this.node.removeChild(this.node.firstChild);
99
+ }
93
100
  }
94
101
 
95
102
  // Toggle the trusted class on the widget.
@@ -313,6 +320,17 @@ export class RenderedMarkdown extends RenderedHTMLCommon {
313
320
  });
314
321
  }
315
322
 
323
+ /**
324
+ * Render a mime model.
325
+ *
326
+ * @param model - The mime model to render.
327
+ *
328
+ * @returns A promise which resolves when rendering is complete.
329
+ */
330
+ async renderModel(model: IRenderMime.IMimeModel): Promise<void> {
331
+ await super.renderModel(model, true);
332
+ }
333
+
316
334
  /**
317
335
  * A message handler invoked on an `'after-attach'` message.
318
336
  */