@jupyterlab/outputarea 4.3.0 → 4.3.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/model.d.ts CHANGED
@@ -235,6 +235,7 @@ export declare class OutputAreaModel implements IOutputAreaModel {
235
235
  private _isDisposed;
236
236
  private _stateChanged;
237
237
  private _changed;
238
+ private _streamIndex;
238
239
  }
239
240
  /**
240
241
  * The namespace for OutputAreaModel class statics.
package/lib/model.js CHANGED
@@ -24,6 +24,7 @@ export class OutputAreaModel {
24
24
  this._isDisposed = false;
25
25
  this._stateChanged = new Signal(this);
26
26
  this._changed = new Signal(this);
27
+ this._streamIndex = 0;
27
28
  this._trusted = !!options.trusted;
28
29
  this.contentFactory =
29
30
  options.contentFactory || OutputAreaModel.defaultContentFactory;
@@ -208,14 +209,16 @@ export class OutputAreaModel {
208
209
  const prev = this.list.get(this.length - 1);
209
210
  const curText = prev.streamText;
210
211
  const newText = typeof value.text === 'string' ? value.text : value.text.join('');
211
- Private.addText(curText, newText);
212
+ this._streamIndex = Private.addText(this._streamIndex, curText, newText);
212
213
  return this.length;
213
214
  }
214
215
  if (nbformat.isStream(value)) {
215
216
  if (typeof value.text !== 'string') {
216
217
  value.text = value.text.join('');
217
218
  }
218
- value.text = Private.processText(value.text);
219
+ const { text, index } = Private.processText(this._streamIndex, value.text);
220
+ this._streamIndex = index;
221
+ value.text = text;
219
222
  }
220
223
  // Create the new item.
221
224
  const item = this._createItem({ value, trusted });
@@ -344,14 +347,16 @@ var Private;
344
347
  /*
345
348
  * Handle backspaces in `newText` and concatenates to `text`, if any.
346
349
  */
347
- function processText(newText, text) {
350
+ function processText(index, newText, text) {
348
351
  if (text === undefined) {
349
352
  text = '';
350
353
  }
351
354
  if (!(newText.includes('\b') || newText.includes('\r'))) {
352
- return text + newText;
355
+ text =
356
+ text.slice(0, index) + newText + text.slice(index + newText.length);
357
+ return { text, index: index + newText.length };
353
358
  }
354
- let idx0 = text.length;
359
+ let idx0 = index;
355
360
  let idx1 = -1;
356
361
  let lastEnd = 0;
357
362
  const regex = /[\n\b\r]/;
@@ -400,14 +405,14 @@ var Private;
400
405
  throw Error(`This should not happen`);
401
406
  }
402
407
  }
403
- return text;
408
+ return { text, index: idx0 };
404
409
  }
405
410
  Private.processText = processText;
406
411
  /*
407
412
  * Concatenate a string to an observable string, handling backspaces.
408
413
  */
409
- function addText(curText, newText) {
410
- const text = processText(newText, curText.text);
414
+ function addText(prevIndex, curText, newText) {
415
+ const { text, index } = processText(prevIndex, newText, curText.text);
411
416
  // Compute the difference between current text and new text.
412
417
  let done = false;
413
418
  let idx = 0;
@@ -436,6 +441,7 @@ var Private;
436
441
  idx++;
437
442
  }
438
443
  }
444
+ return index;
439
445
  }
440
446
  Private.addText = addText;
441
447
  })(Private || (Private = {}));
package/lib/model.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jupyterlab/outputarea",
3
- "version": "4.3.0",
3
+ "version": "4.3.2",
4
4
  "description": "JupyterLab - Notebook Output Area",
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",
45
- "@jupyterlab/nbformat": "^4.3.0",
46
- "@jupyterlab/observables": "^5.3.0",
47
- "@jupyterlab/rendermime": "^4.3.0",
48
- "@jupyterlab/rendermime-interfaces": "^3.11.0",
49
- "@jupyterlab/services": "^7.3.0",
50
- "@jupyterlab/translation": "^4.3.0",
44
+ "@jupyterlab/apputils": "^4.4.2",
45
+ "@jupyterlab/nbformat": "^4.3.2",
46
+ "@jupyterlab/observables": "^5.3.2",
47
+ "@jupyterlab/rendermime": "^4.3.2",
48
+ "@jupyterlab/rendermime-interfaces": "^3.11.2",
49
+ "@jupyterlab/services": "^7.3.2",
50
+ "@jupyterlab/translation": "^4.3.2",
51
51
  "@lumino/algorithm": "^2.0.2",
52
52
  "@lumino/coreutils": "^2.2.0",
53
53
  "@lumino/disposable": "^2.1.3",
@@ -57,7 +57,7 @@
57
57
  "@lumino/widgets": "^2.5.0"
58
58
  },
59
59
  "devDependencies": {
60
- "@jupyterlab/testing": "^4.3.0",
60
+ "@jupyterlab/testing": "^4.3.2",
61
61
  "@types/jest": "^29.2.0",
62
62
  "jest": "^29.2.0",
63
63
  "rimraf": "~5.0.5",
package/src/model.ts CHANGED
@@ -358,7 +358,7 @@ export class OutputAreaModel implements IOutputAreaModel {
358
358
  const curText = prev.streamText!;
359
359
  const newText =
360
360
  typeof value.text === 'string' ? value.text : value.text.join('');
361
- Private.addText(curText, newText);
361
+ this._streamIndex = Private.addText(this._streamIndex, curText, newText);
362
362
  return this.length;
363
363
  }
364
364
 
@@ -366,7 +366,12 @@ export class OutputAreaModel implements IOutputAreaModel {
366
366
  if (typeof value.text !== 'string') {
367
367
  value.text = value.text.join('');
368
368
  }
369
- value.text = Private.processText(value.text);
369
+ const { text, index } = Private.processText(
370
+ this._streamIndex,
371
+ value.text
372
+ );
373
+ this._streamIndex = index;
374
+ value.text = text;
370
375
  }
371
376
 
372
377
  // Create the new item.
@@ -480,6 +485,7 @@ export class OutputAreaModel implements IOutputAreaModel {
480
485
  private _changed = new Signal<OutputAreaModel, IOutputAreaModel.ChangedArgs>(
481
486
  this
482
487
  );
488
+ private _streamIndex = 0;
483
489
  }
484
490
 
485
491
  /**
@@ -530,14 +536,20 @@ namespace Private {
530
536
  /*
531
537
  * Handle backspaces in `newText` and concatenates to `text`, if any.
532
538
  */
533
- export function processText(newText: string, text?: string): string {
539
+ export function processText(
540
+ index: number,
541
+ newText: string,
542
+ text?: string
543
+ ): { text: string; index: number } {
534
544
  if (text === undefined) {
535
545
  text = '';
536
546
  }
537
547
  if (!(newText.includes('\b') || newText.includes('\r'))) {
538
- return text + newText;
548
+ text =
549
+ text.slice(0, index) + newText + text.slice(index + newText.length);
550
+ return { text, index: index + newText.length };
539
551
  }
540
- let idx0 = text.length;
552
+ let idx0 = index;
541
553
  let idx1: number = -1;
542
554
  let lastEnd: number = 0;
543
555
  const regex = /[\n\b\r]/;
@@ -587,14 +599,18 @@ namespace Private {
587
599
  throw Error(`This should not happen`);
588
600
  }
589
601
  }
590
- return text;
602
+ return { text, index: idx0 };
591
603
  }
592
604
 
593
605
  /*
594
606
  * Concatenate a string to an observable string, handling backspaces.
595
607
  */
596
- export function addText(curText: IObservableString, newText: string): void {
597
- const text = processText(newText, curText.text);
608
+ export function addText(
609
+ prevIndex: number,
610
+ curText: IObservableString,
611
+ newText: string
612
+ ): number {
613
+ const { text, index } = processText(prevIndex, newText, curText.text);
598
614
  // Compute the difference between current text and new text.
599
615
  let done = false;
600
616
  let idx = 0;
@@ -619,5 +635,6 @@ namespace Private {
619
635
  idx++;
620
636
  }
621
637
  }
638
+ return index;
622
639
  }
623
640
  }