@jrichman/ink 6.5.0 → 6.5.1-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.
Files changed (125) hide show
  1. package/build/components/App.js +0 -3
  2. package/build/components/App.js.map +1 -1
  3. package/build/components/AppContext.js +0 -1
  4. package/build/components/AppContext.js.map +1 -1
  5. package/build/components/FocusContext.js +0 -1
  6. package/build/components/FocusContext.js.map +1 -1
  7. package/build/components/Static.js +2 -2
  8. package/build/components/Static.js.map +1 -1
  9. package/build/components/StaticRender.js +16 -1
  10. package/build/components/StaticRender.js.map +1 -1
  11. package/build/components/StderrContext.js +0 -1
  12. package/build/components/StderrContext.js.map +1 -1
  13. package/build/components/StdinContext.js +0 -3
  14. package/build/components/StdinContext.js.map +1 -1
  15. package/build/components/StdoutContext.js +0 -1
  16. package/build/components/StdoutContext.js.map +1 -1
  17. package/build/data-limited-lru-map.d.ts +1 -0
  18. package/build/data-limited-lru-map.js +4 -0
  19. package/build/data-limited-lru-map.js.map +1 -1
  20. package/build/devtools.js +0 -1
  21. package/build/devtools.js.map +1 -1
  22. package/build/dom.d.ts +7 -5
  23. package/build/dom.js +6 -2
  24. package/build/dom.js.map +1 -1
  25. package/build/hooks/use-input.js +0 -1
  26. package/build/hooks/use-input.js.map +1 -1
  27. package/build/index.d.ts +1 -1
  28. package/build/ink.d.ts +3 -1
  29. package/build/ink.js +12 -0
  30. package/build/ink.js.map +1 -1
  31. package/build/log-update.d.ts +1 -1
  32. package/build/log-update.js +3 -2
  33. package/build/log-update.js.map +1 -1
  34. package/build/measure-element.js +5 -5
  35. package/build/measure-element.js.map +1 -1
  36. package/build/measure-text.d.ts +3 -1
  37. package/build/measure-text.js +39 -25
  38. package/build/measure-text.js.map +1 -1
  39. package/build/output.d.ts +13 -6
  40. package/build/output.js +46 -54
  41. package/build/output.js.map +1 -1
  42. package/build/reconciler.js +23 -7
  43. package/build/reconciler.js.map +1 -1
  44. package/build/render-cached.d.ts +2 -1
  45. package/build/render-cached.js +3 -3
  46. package/build/render-cached.js.map +1 -1
  47. package/build/render-container.d.ts +2 -1
  48. package/build/render-container.js +4 -1
  49. package/build/render-container.js.map +1 -1
  50. package/build/render-node-to-output.d.ts +3 -1
  51. package/build/render-node-to-output.js +10 -2
  52. package/build/render-node-to-output.js.map +1 -1
  53. package/build/render-scrollbar.d.ts +1 -1
  54. package/build/render-scrollbar.js +4 -6
  55. package/build/render-scrollbar.js.map +1 -1
  56. package/build/render-sticky.d.ts +5 -3
  57. package/build/render-sticky.js +4 -1
  58. package/build/render-sticky.js.map +1 -1
  59. package/build/render-text-node.d.ts +2 -1
  60. package/build/render-text-node.js +4 -8
  61. package/build/render-text-node.js.map +1 -1
  62. package/build/render-worker.d.ts +25 -0
  63. package/build/render-worker.js +370 -0
  64. package/build/render-worker.js.map +1 -0
  65. package/build/render.d.ts +3 -1
  66. package/build/render.js.map +1 -1
  67. package/build/renderer.d.ts +2 -1
  68. package/build/renderer.js +7 -3
  69. package/build/renderer.js.map +1 -1
  70. package/build/replay.d.ts +1 -2
  71. package/build/replay.js +29 -27
  72. package/build/replay.js.map +1 -1
  73. package/build/selection.d.ts +1 -1
  74. package/build/selection.js +7 -23
  75. package/build/selection.js.map +1 -1
  76. package/build/serialization.d.ts +5 -5
  77. package/build/serialization.js +59 -73
  78. package/build/serialization.js.map +1 -1
  79. package/build/styled-lines.d.ts +29 -0
  80. package/build/styled-lines.js +110 -0
  81. package/build/styled-lines.js.map +1 -0
  82. package/build/styles.js.map +1 -1
  83. package/build/terminal-buffer.d.ts +6 -2
  84. package/build/terminal-buffer.js +47 -10
  85. package/build/terminal-buffer.js.map +1 -1
  86. package/build/terminal-writer.d.ts +69 -0
  87. package/build/terminal-writer.js +546 -0
  88. package/build/terminal-writer.js.map +1 -0
  89. package/build/text-wrap.d.ts +1 -1
  90. package/build/text-wrap.js +10 -13
  91. package/build/text-wrap.js.map +1 -1
  92. package/build/tokenize.d.ts +77 -0
  93. package/build/tokenize.js +520 -0
  94. package/build/tokenize.js.map +1 -0
  95. package/build/web/ansi-to-css.d.ts +16 -0
  96. package/build/web/ansi-to-css.js +147 -0
  97. package/build/web/ansi-to-css.js.map +1 -0
  98. package/build/web/client.d.ts +51 -0
  99. package/build/web/client.js +315 -0
  100. package/build/web/client.js.map +1 -0
  101. package/build/web/server.d.ts +1 -0
  102. package/build/web/server.js +179 -0
  103. package/build/web/server.js.map +1 -0
  104. package/build/worker/canvas.d.ts +1 -1
  105. package/build/worker/canvas.js +2 -6
  106. package/build/worker/canvas.js.map +1 -1
  107. package/build/worker/compositor.js +15 -13
  108. package/build/worker/compositor.js.map +1 -1
  109. package/build/worker/dump-replay.d.ts +1 -0
  110. package/build/worker/dump-replay.js +15 -0
  111. package/build/worker/dump-replay.js.map +1 -0
  112. package/build/worker/render-worker.js +27 -13
  113. package/build/worker/render-worker.js.map +1 -1
  114. package/build/worker/replay.d.ts +55 -0
  115. package/build/worker/replay.js +133 -0
  116. package/build/worker/replay.js.map +1 -0
  117. package/build/worker/scene-manager.js +16 -7
  118. package/build/worker/scene-manager.js.map +1 -1
  119. package/build/worker/terminal-writer.d.ts +3 -3
  120. package/build/worker/terminal-writer.js +36 -20
  121. package/build/worker/terminal-writer.js.map +1 -1
  122. package/build/wrap-text.d.ts +6 -0
  123. package/build/wrap-text.js +120 -0
  124. package/build/wrap-text.js.map +1 -0
  125. package/package.json +16 -5
package/build/output.js CHANGED
@@ -1,5 +1,6 @@
1
- import { styledCharsToString } from '@alcalzone/ansi-tokenize';
1
+ import { styledCharsToString } from './tokenize.js';
2
2
  import { toStyledCharacters, inkCharacterWidth, styledCharsWidth, } from './measure-text.js';
3
+ import { getInternedChar } from './serialization.js';
3
4
  import { calculateScrollbarLayout } from './measure-element.js';
4
5
  import { renderScrollbar } from './render-scrollbar.js';
5
6
  /**
@@ -13,8 +14,8 @@ export function clampCursorColumn(line, col) {
13
14
  let currentLineCol = 0;
14
15
  let lastContentCol = 0;
15
16
  for (const char of line) {
16
- const charWidth = char.fullWidth ? 2 : 1;
17
- if (char.value !== ' ' || char.styles.length > 0) {
17
+ const charWidth = char.getFullWidth() ? 2 : 1;
18
+ if (char.getValue() !== ' ' || char.hasStyles()) {
18
19
  lastContentCol = currentLineCol + charWidth;
19
20
  }
20
21
  currentLineCol += charWidth;
@@ -41,6 +42,19 @@ export function isRectIntersectingClip(rect, clip) {
41
42
  rect.y2 > clipTop &&
42
43
  rect.y1 < clipBottom);
43
44
  }
45
+ export function treesEqual(a, b) {
46
+ if (a === b)
47
+ return true;
48
+ if (a.id !== b.id)
49
+ return false;
50
+ if (a.children.length !== b.children.length)
51
+ return false;
52
+ for (let i = 0; i < a.children.length; i++) {
53
+ if (!treesEqual(a.children[i], b.children[i]))
54
+ return false;
55
+ }
56
+ return true;
57
+ }
44
58
  export const regionLayoutProperties = [
45
59
  'x',
46
60
  'y',
@@ -72,14 +86,16 @@ export function copyRegionProperty(target, source, key) {
72
86
  export default class Output {
73
87
  width;
74
88
  height;
89
+ trackSelection;
75
90
  // The root region represents the main screen area (non-scrollable background)
76
91
  root;
77
92
  activeRegionStack = [];
78
93
  clips = [];
79
94
  constructor(options) {
80
- const { width, height, node, id = 'root' } = options;
95
+ const { width, height, node, id = 'root', trackSelection = false } = options;
81
96
  this.width = width;
82
97
  this.height = height;
98
+ this.trackSelection = trackSelection;
83
99
  this.root = {
84
100
  id,
85
101
  x: 0,
@@ -183,14 +199,14 @@ export default class Output {
183
199
  if (charOffset >= targetOffset) {
184
200
  break;
185
201
  }
186
- if (char.value === '\n') {
202
+ if (char.getValue() === '\n') {
187
203
  row++;
188
204
  col = 0;
189
205
  }
190
206
  else {
191
- col += inkCharacterWidth(char.value);
207
+ col += inkCharacterWidth(char.getValue());
192
208
  }
193
- charOffset += char.value.length;
209
+ charOffset += char.getValue().length;
194
210
  }
195
211
  region.cursorPosition = {
196
212
  row: y + row,
@@ -242,28 +258,14 @@ export default class Output {
242
258
  }
243
259
  addRegionTree(region, x, y) {
244
260
  const activeRegion = this.getActiveRegion();
245
- const clonedRegion = this.cloneRegion(region, x, y, activeRegion.overflowToBackbuffer);
246
- activeRegion.children.push(clonedRegion);
247
- }
248
- cloneRegion(region, x, y, inheritedOverflowToBackbuffer) {
249
261
  const overflowToBackbuffer = region.isScrollable
250
262
  ? region.overflowToBackbuffer
251
- : (region.overflowToBackbuffer ?? inheritedOverflowToBackbuffer);
252
- const cloned = {
253
- ...region,
254
- overflowToBackbuffer,
255
- x: region.x + x,
256
- y: region.y + y,
257
- lines: region.lines.map(line => line.map(char => ({ ...char, styles: [...char.styles] }))),
258
- selectableSpans: region.selectableSpans.map(span => ({ ...span })),
259
- stickyHeaders: region.stickyHeaders.map(header => ({
260
- ...header,
261
- x: header.x,
262
- y: header.y,
263
- })),
264
- children: region.children.map(child => this.cloneRegion(child, 0, 0, overflowToBackbuffer)),
265
- };
266
- return cloned;
263
+ : (region.overflowToBackbuffer ?? activeRegion.overflowToBackbuffer);
264
+ const regionRef = Object.create(region);
265
+ regionRef.x = region.x + x;
266
+ regionRef.y = region.y + y;
267
+ regionRef.overflowToBackbuffer = overflowToBackbuffer;
268
+ activeRegion.children.push(regionRef);
267
269
  }
268
270
  trimRegionLines(region) {
269
271
  for (let y = 0; y < region.lines.length; y++) {
@@ -271,12 +273,16 @@ export default class Output {
271
273
  let lastNonSpace = -1;
272
274
  for (let i = line.length - 1; i >= 0; i--) {
273
275
  const char = line[i];
274
- if (char.value !== ' ' || char.styles.length > 0) {
276
+ if (char.getValue() !== ' ' || char.hasStyles()) {
275
277
  lastNonSpace = i;
276
278
  break;
277
279
  }
278
280
  }
279
- region.styledOutput[y] = line.slice(0, lastNonSpace + 1);
281
+ const trimmedLength = lastNonSpace + 1;
282
+ if (region.styledOutput[y]?.length !== trimmedLength) {
283
+ region.styledOutput[y] =
284
+ trimmedLength === line.length ? line : line.slice(0, trimmedLength);
285
+ }
280
286
  }
281
287
  for (const child of region.children) {
282
288
  this.trimRegionLines(child);
@@ -295,15 +301,11 @@ export default class Output {
295
301
  }
296
302
  }
297
303
  initLines(region, width, height) {
304
+ const emptyChar = getInternedChar(' ', false, undefined);
298
305
  for (let y = 0; y < height; y++) {
299
306
  const row = [];
300
307
  for (let x = 0; x < width; x++) {
301
- row.push({
302
- type: 'char',
303
- value: ' ',
304
- fullWidth: false,
305
- styles: [],
306
- });
308
+ row.push(emptyChar);
307
309
  }
308
310
  region.lines.push(row);
309
311
  region.styledOutput.push(row);
@@ -347,7 +349,7 @@ export default class Output {
347
349
  let spanStartX = -1;
348
350
  let spanText = '';
349
351
  for (const character of chars) {
350
- const characterWidth = inkCharacterWidth(character.value);
352
+ const characterWidth = inkCharacterWidth(character.getValue());
351
353
  if (toX !== undefined && relativeX >= toX) {
352
354
  break;
353
355
  }
@@ -359,10 +361,10 @@ export default class Output {
359
361
  if (isSelectable) {
360
362
  if (spanStartX === -1)
361
363
  spanStartX = offsetX;
362
- spanText += character.value;
364
+ spanText += character.getValue();
363
365
  }
364
366
  if (characterWidth > 1) {
365
- this.clearRange(currentLine, { start: offsetX + 1, end: offsetX + characterWidth }, character.styles, '', bufferWidth);
367
+ this.clearRange(currentLine, { start: offsetX + 1, end: offsetX + characterWidth }, character, '', bufferWidth);
366
368
  }
367
369
  offsetX += characterWidth;
368
370
  }
@@ -371,12 +373,12 @@ export default class Output {
371
373
  relativeX < fromX &&
372
374
  relativeX + characterWidth > fromX) {
373
375
  const clearLength = relativeX + characterWidth - fromX;
374
- this.clearRange(currentLine, { start: offsetX, end: offsetX + clearLength }, character.styles, ' ', bufferWidth);
376
+ this.clearRange(currentLine, { start: offsetX, end: offsetX + clearLength }, character, ' ', bufferWidth);
375
377
  offsetX += clearLength;
376
378
  }
377
379
  relativeX += characterWidth;
378
380
  }
379
- if (isSelectable && spanStartX !== -1) {
381
+ if (this.trackSelection && isSelectable && spanStartX !== -1) {
380
382
  region.selectableSpans.push({
381
383
  y,
382
384
  startX: spanStartX,
@@ -386,19 +388,14 @@ export default class Output {
386
388
  }
387
389
  if (toX !== undefined) {
388
390
  const absoluteToX = x - (fromX ?? 0) + toX;
389
- this.clearRange(currentLine, { start: offsetX, end: absoluteToX }, [], ' ', bufferWidth);
391
+ this.clearRange(currentLine, { start: offsetX, end: absoluteToX }, undefined, ' ', bufferWidth);
390
392
  }
391
393
  }
392
394
  // eslint-disable-next-line max-params
393
- clearRange(currentLine, range, styles, value, maxWidth) {
395
+ clearRange(currentLine, range, charTemplate, value, maxWidth) {
394
396
  for (let offset = range.start; offset < range.end; offset++) {
395
397
  if (offset >= 0 && offset < maxWidth) {
396
- currentLine[offset] = {
397
- type: 'char',
398
- value,
399
- fullWidth: false,
400
- styles,
401
- };
398
+ currentLine[offset] = getInternedChar(value, false, charTemplate);
402
399
  }
403
400
  }
404
401
  }
@@ -433,12 +430,7 @@ export default class Output {
433
430
  */
434
431
  export function flattenRegion(root, options) {
435
432
  const { width, height } = root;
436
- const lines = Array.from({ length: height }, () => Array.from({ length: width }, () => ({
437
- type: 'char',
438
- value: ' ',
439
- fullWidth: false,
440
- styles: [],
441
- })));
433
+ const lines = Array.from({ length: height }, () => Array.from({ length: width }, () => getInternedChar(' ', false, undefined)));
442
434
  composeRegion(root, lines, {
443
435
  clip: { x: 0, y: 0, w: width, h: height },
444
436
  }, options);
@@ -1 +1 @@
1
- {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../src/output.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,mBAAmB,EAAC,MAAM,eAAe,CAAC;AAEnE,OAAO,EACN,kBAAkB,EAClB,iBAAiB,EACjB,gBAAgB,GAChB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAC,wBAAwB,EAAC,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAC;AAEtD;;;;;;EAME;AAEF,MAAM,UAAU,iBAAiB,CAChC,IAA2B,EAC3B,GAAW;IAEX,IAAI,cAAc,GAAG,CAAC,CAAC;IACvB,IAAI,cAAc,GAAG,CAAC,CAAC;IAEvB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACzB,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE9C,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;YACjD,cAAc,GAAG,cAAc,GAAG,SAAS,CAAC;QAC7C,CAAC;QAED,cAAc,IAAI,SAAS,CAAC;IAC7B,CAAC;IAED,OAAO,GAAG,GAAG,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,GAAG,CAAC;AACpD,CAAC;AAwBD,MAAM,UAAU,aAAa,CAAC,CAAO,EAAE,CAAO;IAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1C,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1C,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,OAAO,EAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,EAAC,CAAC;AAC/C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACrC,IAAsD,EACtD,IAA0D;IAE1D,MAAM,QAAQ,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IACtC,MAAM,SAAS,GAAG,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,CAAC,EAAE,IAAI,QAAQ,CAAC;IAEvC,OAAO,CACN,IAAI,CAAC,EAAE,GAAG,QAAQ;QAClB,IAAI,CAAC,EAAE,GAAG,SAAS;QACnB,IAAI,CAAC,EAAE,GAAG,OAAO;QACjB,IAAI,CAAC,EAAE,GAAG,UAAU,CACpB,CAAC;AACH,CAAC;AA+DD,MAAM,UAAU,UAAU,CAAC,CAAa,EAAE,CAAa;IACtD,IAAI,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACzB,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE;QAAE,OAAO,KAAK,CAAC;IAChC,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC,QAAQ,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IAE1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC5C,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAE,CAAC;YAAE,OAAO,KAAK,CAAC;IAC/D,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AA6CD,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACrC,GAAG;IACH,GAAG;IACH,OAAO;IACP,QAAQ;IACR,WAAW;IACX,YAAY;IACZ,cAAc;IACd,aAAa;IACb,cAAc;IACd,wBAAwB;IACxB,0BAA0B;IAC1B,kBAAkB;IAClB,sBAAsB;IACtB,aAAa;IACb,cAAc;IACd,qBAAqB;IACrB,iBAAiB;IACjB,QAAQ;IACR,WAAW;IACX,cAAc;CACL,CAAC;AAyBX,MAAM,UAAU,kBAAkB,CAEhC,MAAyB,EAAE,MAAyB,EAAE,GAAM;IAC7D,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QACzB,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;IACrB,CAAC;AACF,CAAC;AAED,MAAM,CAAC,OAAO,OAAO,MAAM;IAC1B,KAAK,CAAS;IACd,MAAM,CAAS;IACf,cAAc,CAAU;IAExB,8EAA8E;IAC9E,IAAI,CAAS;IAEI,iBAAiB,GAAa,EAAE,CAAC;IACjC,KAAK,GAAW,EAAE,CAAC;IAEpC,YAAY,OAAgB;QAC3B,MAAM,EAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,cAAc,GAAG,KAAK,EAAC,GAAG,OAAO,CAAC;QAE3E,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QAErC,IAAI,CAAC,IAAI,GAAG;YACX,EAAE;YACF,CAAC,EAAE,CAAC;YACJ,CAAC,EAAE,CAAC;YACJ,KAAK;YACL,MAAM;YACN,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,YAAY,EAAE,KAAK;YACnB,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,EAAE;YACZ,IAAI;YACJ,eAAe,EAAE,EAAE;SACnB,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;QACzC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,cAAc;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IAED,eAAe;QACd,OAAO,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,CAAC,CAAE,CAAC;IACvC,CAAC;IAED,uBAAuB;QACtB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,CAAC,GAAG,CAAC,CAAC;QAEV,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC7C,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,UAAU,IAAI,CAAC,CAAC,CAAC;YACzC,CAAC,IAAI,MAAM,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,CAAC,CAAC,CAAC;QACzC,CAAC;QAED,OAAO,EAAC,CAAC,EAAE,CAAC,EAAC,CAAC;IACf,CAAC;IAED,gBAAgB,CAAC,OA0BhB;QACA,MAAM,EACL,EAAE,EACF,CAAC,EACD,CAAC,EACD,KAAK,EACL,MAAM,EACN,YAAY,EACZ,sBAAsB,EACtB,wBAAwB,EACxB,WAAW,EACX,gBAAgB,EAChB,oBAAoB,EACpB,WAAW,EACX,YAAY,EACZ,mBAAmB,EACnB,eAAe,EACf,MAAM,EACN,MAAM,EACN,gBAAgB,EAChB,SAAS,EACT,YAAY,GACZ,GAAG,OAAO,CAAC;QAEZ,oBAAoB;QACpB,iFAAiF;QACjF,sDAAsD;QACtD,MAAM,WAAW,GAAG,WAAW,EAAE,WAAW,IAAI,KAAK,CAAC;QACtD,MAAM,YAAY,GAAG,WAAW,EAAE,YAAY,IAAI,MAAM,CAAC;QAEzD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,MAAM,6BAA6B,GAAG,YAAY;YACjD,CAAC,CAAC,oBAAoB;YACtB,CAAC,CAAC,CAAC,oBAAoB,IAAI,YAAY,CAAC,oBAAoB,CAAC,CAAC;QAE/D,MAAM,MAAM,GAAW;YACtB,EAAE;YACF,CAAC;YACD,CAAC;YACD,KAAK;YACL,MAAM;YACN,KAAK,EAAE,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,YAAY;YACZ,sBAAsB;YACtB,wBAAwB;YACxB,SAAS,EAAE,WAAW,EAAE,SAAS;YACjC,UAAU,EAAE,WAAW,EAAE,UAAU;YACnC,YAAY,EAAE,WAAW,EAAE,YAAY;YACvC,WAAW,EAAE,WAAW,EAAE,WAAW;YACrC,gBAAgB;YAChB,oBAAoB,EAAE,6BAA6B;YACnD,WAAW;YACX,YAAY;YACZ,mBAAmB;YACnB,eAAe;YACf,MAAM;YACN,SAAS;YACT,YAAY;YACZ,aAAa,EAAE,EAAE;YACjB,QAAQ,EAAE,EAAE;YACZ,MAAM;YACN,gBAAgB;YAChB,eAAe,EAAE,EAAE;SACnB,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAElD,0CAA0C;QAC1C,IAAI,CAAC,eAAe,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAE7C,gBAAgB;QAChB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,cAAc;QACb,IAAI,IAAI,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvC,IAAI,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC;QAC9B,CAAC;IACF,CAAC;IAED,eAAe,CAAC,MAAoB;QACnC,IAAI,CAAC,eAAe,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CACJ,CAAS,EACT,CAAS,EACT,KAA4B,EAC5B,OAOC;QAED,MAAM,EACL,YAAY,GAAG,EAAE,EACjB,SAAS,GAAG,CAAC,EACb,uBAAuB,GAAG,KAAK,EAC/B,uBAAuB,GAAG,KAAK,EAC/B,sBAAsB,EACtB,YAAY,GAAG,KAAK,GACpB,GAAG,OAAO,CAAC;QAEZ,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACpD,OAAO;QACR,CAAC;QAED,IAAI,uBAAuB,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACtC,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,MAAM,KAAK,GACV,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC/D,IAAI,UAAU,GAAG,CAAC,CAAC;YACnB,MAAM,YAAY,GAAG,sBAAsB,IAAI,MAAM,CAAC,iBAAiB,CAAC;YAExE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;oBAChC,MAAM;gBACP,CAAC;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE,CAAC;oBAC9B,GAAG,EAAE,CAAC;oBACN,GAAG,GAAG,CAAC,CAAC;gBACT,CAAC;qBAAM,CAAC;oBACP,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC3C,CAAC;gBAED,UAAU,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC;YACtC,CAAC;YAED,MAAM,CAAC,cAAc,GAAG;gBACvB,GAAG,EAAE,CAAC,GAAG,GAAG;gBACZ,GAAG,EAAE,CAAC,GAAG,GAAG;aACZ,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,UAAU,CACd,CAAC,EACD,CAAC,EACD,KAAK,EACL,YAAY,EACZ,SAAS,EACT,uBAAuB,EACvB,YAAY,CACZ,CAAC;QACH,CAAC;IACF,CAAC;IAED,IAAI,CAAC,IAAU;QACd,MAAM,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,EAAC,GAAG,IAAI,EAAC,CAAC;QAE3B,IAAI,YAAY,EAAE,CAAC;YAClB,QAAQ,CAAC,EAAE;gBACV,YAAY,CAAC,EAAE,KAAK,SAAS;oBAC5B,CAAC,CAAC,QAAQ,CAAC,EAAE;oBACb,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS;wBAC1B,CAAC,CAAC,YAAY,CAAC,EAAE;wBACjB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAE5C,QAAQ,CAAC,EAAE;gBACV,YAAY,CAAC,EAAE,KAAK,SAAS;oBAC5B,CAAC,CAAC,QAAQ,CAAC,EAAE;oBACb,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS;wBAC1B,CAAC,CAAC,YAAY,CAAC,EAAE;wBACjB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAE5C,QAAQ,CAAC,EAAE;gBACV,YAAY,CAAC,EAAE,KAAK,SAAS;oBAC5B,CAAC,CAAC,QAAQ,CAAC,EAAE;oBACb,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS;wBAC1B,CAAC,CAAC,YAAY,CAAC,EAAE;wBACjB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAE5C,QAAQ,CAAC,EAAE;gBACV,YAAY,CAAC,EAAE,KAAK,SAAS;oBAC5B,CAAC,CAAC,QAAQ,CAAC,EAAE;oBACb,CAAC,CAAC,QAAQ,CAAC,EAAE,KAAK,SAAS;wBAC1B,CAAC,CAAC,YAAY,CAAC,EAAE;wBACjB,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM;QACL,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC;IAED,GAAG;QACF,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACpC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAED,aAAa,CAAC,MAAc,EAAE,CAAS,EAAE,CAAS;QACjD,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QAC5C,MAAM,oBAAoB,GAAG,MAAM,CAAC,YAAY;YAC/C,CAAC,CAAC,MAAM,CAAC,oBAAoB;YAC7B,CAAC,CAAC,CAAC,MAAM,CAAC,oBAAoB,IAAI,YAAY,CAAC,oBAAoB,CAAC,CAAC;QAEtE,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAW,CAAC;QAClD,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3B,SAAS,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3B,SAAS,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QAEtD,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAEO,eAAe,CAAC,MAAc;QACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9C,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;YAC9B,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;YAEtB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAE,CAAC;gBAEtB,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC;oBACjD,YAAY,GAAG,CAAC,CAAC;oBACjB,MAAM;gBACP,CAAC;YACF,CAAC;YAED,MAAM,aAAa,GAAG,YAAY,GAAG,CAAC,CAAC;YAEvC,IAAI,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,aAAa,EAAE,CAAC;gBACrD,MAAM,CAAC,YAA6C,CAAC,CAAC,CAAC;oBACvD,aAAa,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;YACtE,CAAC;QACF,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7B,CAAC;IACF,CAAC;IAEO,mBAAmB,CAAC,MAAc;QACzC,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,EAAC,GAAG,EAAE,GAAG,EAAC,GAAG,MAAM,CAAC,cAAc,CAAC;YACzC,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAE/B,IAAI,IAAI,EAAE,CAAC;gBACV,MAAM,CAAC,cAAc,CAAC,GAAG,GAAG,iBAAiB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;YAC1D,CAAC;QACF,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;IACF,CAAC;IAEO,SAAS,CAAC,MAAc,EAAE,KAAa,EAAE,MAAc;QAC9D,MAAM,SAAS,GAAG,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,MAAM,GAAG,GAAiB,EAAE,CAAC;YAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACrB,CAAC;YAEA,MAAM,CAAC,KAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1C,MAAM,CAAC,YAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;IAED,oCAAoC;IACpC,sCAAsC;IAC9B,UAAU,CACjB,CAAS,EACT,CAAS,EACT,KAA4B,EAC5B,YAAiC,EACjC,SAAiB,EACjB,wBAAiC,EACjC,YAAqB;QAErB,MAAM,MAAM,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACtC,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,CAAC;QACvB,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;QAE1C,IAAI,KAAK,GACR,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAE/D,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACnC,IAAI,KAAyB,CAAC;QAC9B,IAAI,GAAuB,CAAC;QAE5B,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,YAAY,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC;YACpD,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAChC,KAAK,EACL,CAAC,GAAG,YAAY,CAAC,CAAC,EAClB,CAAC,GAAG,YAAY,CAAC,CAAC,EAClB,IAAI,CACJ,CAAC;YAEF,IAAI,CAAC,UAAU,EAAE,CAAC;gBACjB,OAAO;YACR,CAAC;YAED,IAAI,SAAiB,CAAC;YACtB,IAAI,SAAiB,CAAC;YAEtB,CAAC,EAAC,KAAK,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,EAAC,GAAG,UAAU,CAAC,CAAC;YAC/D,CAAC,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC;YAC/B,CAAC,GAAG,SAAS,GAAG,YAAY,CAAC,CAAC,CAAC;QAChC,CAAC;QAED,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAiB,CAAC;QAC7C,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,OAAO;QACR,CAAC;QAED,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,IAAI,IAAI,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACtC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;gBACxC,IAAI,GAAG,WAAW,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;YACrC,CAAC;YAED,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,IAAI,OAAO,GAAG,CAAC,CAAC;QAChB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;QACpB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAElB,KAAK,MAAM,SAAS,IAAI,KAAK,EAAE,CAAC;YAC/B,MAAM,cAAc,GAAG,iBAAiB,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE/D,IAAI,GAAG,KAAK,SAAS,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;gBAC3C,MAAM;YACP,CAAC;YAED,IAAI,KAAK,KAAK,SAAS,IAAI,SAAS,IAAI,KAAK,EAAE,CAAC;gBAC/C,IAAI,OAAO,IAAI,WAAW,EAAE,CAAC;oBAC5B,MAAM;gBACP,CAAC;gBAED,WAAW,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC;gBAEjC,IAAI,YAAY,EAAE,CAAC;oBAClB,IAAI,UAAU,KAAK,CAAC,CAAC;wBAAE,UAAU,GAAG,OAAO,CAAC;oBAC5C,QAAQ,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBAClC,CAAC;gBAED,IAAI,cAAc,GAAG,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,UAAU,CACd,WAAW,EACX,EAAC,KAAK,EAAE,OAAO,GAAG,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,cAAc,EAAC,EACnD,SAAS,EACT,EAAE,EACF,WAAW,CACX,CAAC;gBACH,CAAC;gBAED,OAAO,IAAI,cAAc,CAAC;YAC3B,CAAC;iBAAM,IACN,cAAc,GAAG,CAAC;gBAClB,KAAK,KAAK,SAAS;gBACnB,SAAS,GAAG,KAAK;gBACjB,SAAS,GAAG,cAAc,GAAG,KAAK,EACjC,CAAC;gBACF,MAAM,WAAW,GAAG,SAAS,GAAG,cAAc,GAAG,KAAK,CAAC;gBACvD,IAAI,CAAC,UAAU,CACd,WAAW,EACX,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,GAAG,WAAW,EAAC,EAC5C,SAAS,EACT,GAAG,EACH,WAAW,CACX,CAAC;gBAEF,OAAO,IAAI,WAAW,CAAC;YACxB,CAAC;YAED,SAAS,IAAI,cAAc,CAAC;QAC7B,CAAC;QAED,IAAI,IAAI,CAAC,cAAc,IAAI,YAAY,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9D,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC;gBAC3B,CAAC;gBACD,MAAM,EAAE,UAAU;gBAClB,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,QAAQ;aACd,CAAC,CAAC;QACJ,CAAC;QAED,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,WAAW,GAAG,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;YAE3C,IAAI,CAAC,UAAU,CACd,WAAW,EACX,EAAC,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,WAAW,EAAC,EAClC,SAAS,EACT,GAAG,EACH,WAAW,CACX,CAAC;QACH,CAAC;IACF,CAAC;IAED,sCAAsC;IAC9B,UAAU,CACjB,WAAyB,EACzB,KAAmC,EACnC,YAAoC,EACpC,KAAa,EACb,QAAgB;QAEhB,KAAK,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,CAAC;YAC7D,IAAI,MAAM,IAAI,CAAC,IAAI,MAAM,GAAG,QAAQ,EAAE,CAAC;gBACtC,WAAW,CAAC,MAAM,CAAC,GAAG,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,YAAY,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;IACF,CAAC;IAEO,SAAS,CAChB,KAAmB,EACnB,CAAS,EACT,CAAS,EACT,IAAU;QAUV,MAAM,EAAC,EAAE,EAAE,EAAE,EAAC,GAAG,IAAI,CAAC;QACtB,MAAM,gBAAgB,GAAG,OAAO,EAAE,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ,CAAC;QAE1E,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACtC,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,oBAAoB;YAC9D,CAAC,CAAC,CAAC,QAAQ;YACX,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAE1B,IACC,CAAC,sBAAsB,CACtB,EAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAC,EACxC,EAAC,GAAG,IAAI,EAAE,EAAE,EAAE,WAAW,EAAC,CAC1B,EACA,CAAC;YACF,OAAO,SAAS,CAAC;QAClB,CAAC;QAED,IAAI,KAAyB,CAAC;QAC9B,IAAI,GAAuB,CAAC;QAE5B,IAAI,gBAAgB,EAAE,CAAC;YACtB,KAAK,GAAG,CAAC,GAAG,IAAI,CAAC,EAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxC,MAAM,KAAK,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACtC,GAAG,GAAG,CAAC,GAAG,KAAK,GAAG,IAAI,CAAC,EAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAG,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAElD,IAAI,CAAC,GAAG,IAAI,CAAC,EAAG,EAAE,CAAC;gBAClB,CAAC,GAAG,IAAI,CAAC,EAAG,CAAC;YACd,CAAC;QACF,CAAC;QAED,OAAO,EAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,GAAG,EAAC,CAAC;IAClC,CAAC;CACD;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAC5B,IAAY,EACZ,OAIC;IAED,MAAM,EAAC,KAAK,EAAE,MAAM,EAAC,GAAG,IAAI,CAAC;IAE7B,MAAM,KAAK,GAAmB,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,MAAM,EAAC,EAAE,GAAG,EAAE,CAC/D,KAAK,CAAC,IAAI,CAAC,EAAC,MAAM,EAAE,KAAK,EAAC,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,CACzE,CAAC;IAEF,aAAa,CACZ,IAAI,EACJ,KAAK,EACL;QACC,IAAI,EAAE,EAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAC;KACvC,EACD,OAAO,CACP,CAAC;IACF,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CACrB,MAAc,EACd,WAA2B,EAC3B,EACC,IAAI,EACJ,OAAO,GAAG,CAAC,EACX,OAAO,GAAG,CAAC,GAKX,EACD,OAIC;IAED,MAAM,EACL,CAAC,EACD,CAAC,EACD,KAAK,EACL,MAAM,EACN,KAAK,EACL,QAAQ,EACR,aAAa,EACb,SAAS,EAAE,eAAe,EAC1B,UAAU,EAAE,gBAAgB,EAC5B,cAAc,EAAE,oBAAoB,GACpC,GAAG,MAAM,CAAC;IACX,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC;IACzB,MAAM,IAAI,GAAG,CAAC,GAAG,OAAO,CAAC;IAEzB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,EAAE,EAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAC,CAAC,CAAC;IAE5E,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO;IACR,CAAC;IAED,MAAM,SAAS,GAAG,eAAe,IAAI,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,gBAAgB,IAAI,CAAC,CAAC;IAEzC,IAAI,oBAAoB,IAAI,OAAO,EAAE,OAAO,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,GAAG,oBAAoB,CAAC,GAAG,GAAG,UAAU,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,GAAG,oBAAoB,CAAC,GAAG,GAAG,SAAS,CAAC;QAE5D,IACC,OAAO,IAAI,MAAM,CAAC,CAAC;YACnB,OAAO,IAAI,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC;YAC9B,OAAO,IAAI,MAAM,CAAC,CAAC;YACnB,OAAO,IAAI,MAAM,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,EAC7B,CAAC;YACF,OAAO,CAAC,OAAO,CAAC,cAAc,GAAG,EAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAC,CAAC;QAC/D,CAAC;IACF,CAAC;IAED,MAAM,EAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,OAAO,EAAC,GAAG,MAAM,CAAC;IAEhE,KAAK,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC;QACrD,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;YACV,SAAS;QACV,CAAC;QAED,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,SAAS,CAAC;QACrC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,SAAS;QACV,CAAC;QAED,KAAK,IAAI,EAAE,GAAG,OAAO,EAAE,EAAE,GAAG,OAAO,GAAG,OAAO,EAAE,EAAE,EAAE,EAAE,CAAC;YACrD,MAAM,MAAM,GAAG,EAAE,GAAG,IAAI,GAAG,UAAU,CAAC;YACtC,MAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;YAChC,IAAI,IAAI,EAAE,CAAC;gBACV,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;YAChB,CAAC;QACF,CAAC;IACF,CAAC;IAED,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC9B,aAAa,CACZ,KAAK,EACL,WAAW,EACX;YACC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,IAAI,GAAG,UAAU;YAC1B,OAAO,EAAE,IAAI,GAAG,SAAS;SACzB,EACD,OAAO,CACP,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,EAAE,iBAAiB,EAAE,CAAC;QACjC,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,aAAa;YAC9C,MAAM,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC;YAE3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC;gBAClC,MAAM,EAAE,GAAG,OAAO,GAAG,CAAC,CAAC;gBACvB,IAAI,EAAE,GAAG,OAAO,IAAI,EAAE,IAAI,OAAO,GAAG,OAAO,EAAE,CAAC;oBAC7C,SAAS;gBACV,CAAC;gBAED,MAAM,GAAG,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC;gBAC5B,IAAI,CAAC,GAAG,EAAE,CAAC;oBACV,SAAS;gBACV,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACX,SAAS;gBACV,CAAC;gBAED,MAAM,OAAO,GAAG,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC;gBAChC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC;gBAE5B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBACvC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC;gBAE3D,KAAK,IAAI,EAAE,GAAG,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC;oBACnC,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;oBACxB,MAAM,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC;oBACtB,IAAI,IAAI,EAAE,CAAC;wBACV,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;oBAChB,CAAC;gBACF,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED,IACC,CAAC,OAAO,EAAE,cAAc;QACxB,MAAM,CAAC,YAAY;QACnB,CAAC,MAAM,CAAC,gBAAgB,IAAI,IAAI,CAAC,EAChC,CAAC;QACF,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC5C,MAAM,0BAA0B,GAC/B,CAAC,MAAM,CAAC,sBAAsB,IAAI,KAAK,CAAC,IAAI,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC;QAC1E,MAAM,4BAA4B,GACjC,CAAC,MAAM,CAAC,wBAAwB,IAAI,KAAK,CAAC,IAAI,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;QAE1E,IAAI,0BAA0B,EAAE,CAAC;YAChC,MAAM,cAAc,GAAG,wBAAwB,CAAC;gBAC/C,CAAC,EAAE,IAAI;gBACP,CAAC,EAAE,IAAI;gBACP,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC;gBACpC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,CAAC;gBACtC,eAAe,EAAE,MAAM,CAAC,MAAM;gBAC9B,eAAe,EAAE,YAAY;gBAC7B,cAAc,EAAE,SAAS;gBACzB,oBAAoB,EAAE,KAAK;gBAC3B,IAAI,EAAE,UAAU;aAChB,CAAC,CAAC;YAEH,IAAI,cAAc,EAAE,CAAC;gBACpB,eAAe,CAAC;oBACf,MAAM,EAAE,cAAc;oBACtB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU;oBAChB,KAAK,EAAE,MAAM,CAAC,mBAAmB;oBACjC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;wBACjB,IACC,CAAC,IAAI,CAAC;4BACN,CAAC,GAAG,WAAW,CAAC,MAAM;4BACtB,CAAC,IAAI,CAAC;4BACN,CAAC,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC,MAAM,EACzB,CAAC;4BACF,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;wBAC3B,CAAC;oBACF,CAAC;iBACD,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,IAAI,4BAA4B,EAAE,CAAC;YAClC,MAAM,gBAAgB,GAAG,wBAAwB,CAAC;gBACjD,CAAC,EAAE,IAAI;gBACP,CAAC,EAAE,IAAI;gBACP,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI,CAAC;gBACpC,YAAY,EAAE,MAAM,CAAC,YAAY,IAAI,CAAC;gBACtC,eAAe,EAAE,MAAM,CAAC,KAAK;gBAC7B,eAAe,EAAE,WAAW;gBAC5B,cAAc,EAAE,UAAU;gBAC1B,oBAAoB,EAAE,0BAA0B;gBAChD,IAAI,EAAE,YAAY;aAClB,CAAC,CAAC;YAEH,IAAI,gBAAgB,EAAE,CAAC;gBACtB,eAAe,CAAC;oBACf,MAAM,EAAE,gBAAgB;oBACxB,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,YAAY;oBAClB,KAAK,EAAE,MAAM,CAAC,mBAAmB;oBACjC,OAAO,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI;wBACjB,IACC,CAAC,IAAI,CAAC;4BACN,CAAC,GAAG,WAAW,CAAC,MAAM;4BACtB,CAAC,IAAI,CAAC;4BACN,CAAC,GAAG,WAAW,CAAC,CAAC,CAAE,CAAC,MAAM,EACzB,CAAC;4BACF,WAAW,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;wBAC3B,CAAC;oBACF,CAAC;iBACD,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;AACF,CAAC;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACpC,KAAqE,EAC5D,EAAE;IACX,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAC5C,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAC7C,CAAC;IACF,IAAI,cAAc,GAAG,EAAE,CAAC;IACxB,IAAI,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;IACtC,IAAI,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,IAAI,CAAC,CAAC;IAE3C,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;QAChC,IAAI,IAAI,CAAC,CAAC,GAAG,QAAQ,EAAE,CAAC;YACvB,cAAc,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,CAAC;YACjD,QAAQ,GAAG,CAAC,CAAC;YACb,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC;QACnB,CAAC;QAED,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,EAAE,CAAC;YAC5B,cAAc,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,CAAC;QACtD,CAAC;QAED,cAAc,IAAI,IAAI,CAAC,IAAI,CAAC;QAC5B,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;IACtB,CAAC;IAED,OAAO,cAAc,CAAC;AACvB,CAAC,CAAC"}
@@ -55,9 +55,27 @@ const diff = (before, after) => {
55
55
  }
56
56
  return isChanged ? changed : undefined;
57
57
  };
58
- const cleanupYogaNode = (node) => {
59
- node?.unsetMeasureFunc();
60
- node?.freeRecursive();
58
+ const cleanupNodeTree = (node) => {
59
+ if (!node) {
60
+ return;
61
+ }
62
+ node.yogaNode?.unsetMeasureFunc();
63
+ if ('resizeObservers' in node) {
64
+ node.resizeObservers?.clear();
65
+ }
66
+ if ('childNodes' in node && node.childNodes) {
67
+ for (const child of node.childNodes) {
68
+ cleanupNodeTree(child);
69
+ }
70
+ }
71
+ node.yogaNode?.free();
72
+ if ('cachedRender' in node) {
73
+ node.cachedRender = undefined;
74
+ }
75
+ if ('childNodes' in node) {
76
+ node.childNodes = [];
77
+ }
78
+ node.parentNode = undefined;
61
79
  };
62
80
  let currentUpdatePriority = NoEventPriority;
63
81
  let currentRootNode;
@@ -202,7 +220,7 @@ export default createReconciler({
202
220
  insertInContainerBefore: insertBeforeNode,
203
221
  removeChildFromContainer(node, removeNode) {
204
222
  removeChildNode(node, removeNode);
205
- cleanupYogaNode(removeNode.yogaNode);
223
+ cleanupNodeTree(removeNode);
206
224
  },
207
225
  commitUpdate(node, _type, oldProps, newProps) {
208
226
  if (currentRootNode && node.internal_static) {
@@ -267,7 +285,7 @@ export default createReconciler({
267
285
  },
268
286
  removeChild(node, removeNode) {
269
287
  removeChildNode(node, removeNode);
270
- cleanupYogaNode(removeNode.yogaNode);
288
+ cleanupNodeTree(removeNode);
271
289
  },
272
290
  setCurrentUpdatePriority(newPriority) {
273
291
  currentUpdatePriority = newPriority;
@@ -282,9 +300,7 @@ export default createReconciler({
282
300
  maySuspendCommit() {
283
301
  return false;
284
302
  },
285
- // eslint-disable-next-line @typescript-eslint/naming-convention
286
303
  NotPendingTransition: undefined,
287
- // eslint-disable-next-line @typescript-eslint/naming-convention
288
304
  HostTransitionContext: createContext(null),
289
305
  resetFormInstance() { },
290
306
  requestPostPaintCallback() { },
@@ -1 +1 @@
1
- {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reconciler.js","sourceRoot":"","sources":["../src/reconciler.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,gBAAqC,MAAM,kBAAkB,CAAC;AACrE,OAAO,EACN,oBAAoB,EACpB,eAAe,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,IAAI,MAAM,aAAa,CAAC;AAC/B,OAAO,EAAC,aAAa,EAAC,MAAM,OAAO,CAAC;AACpC,OAAO,EACN,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,eAAe,EACf,QAAQ,EACR,gBAAgB,EAChB,UAAU,EACV,YAAY,GAMZ,MAAM,UAAU,CAAC;AAClB,OAAO,WAA0B,MAAM,aAAa,CAAC;AAGrD,gEAAgE;AAChE,gDAAgD;AAChD,qDAAqD;AACrD,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,MAAM,EAAE,CAAC;IACnC,IAAI,CAAC;QACJ,MAAM,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACrB,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CACX;;;;;;;KAOC,CAAC,IAAI,EAAE,GAAG,IAAI,CACf,CAAC;QACH,CAAC;aAAM,CAAC;YACP,+DAA+D;YAC/D,MAAM,KAAK,CAAC;QACb,CAAC;IACF,CAAC;AACF,CAAC;AAID,MAAM,IAAI,GAAG,CAAC,MAAiB,EAAE,KAAgB,EAAyB,EAAE;IAC3E,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;QACtB,OAAO;IACR,CAAC;IAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACb,OAAO,KAAK,CAAC;IACd,CAAC;IAED,MAAM,OAAO,GAAc,EAAE,CAAC;IAC9B,IAAI,SAAS,GAAG,KAAK,CAAC;IAEtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;QACvC,MAAM,SAAS,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5D,IAAI,SAAS,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;YACzB,SAAS,GAAG,IAAI,CAAC;QAClB,CAAC;IACF,CAAC;IAED,IAAI,KAAK,EAAE,CAAC;QACX,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YACtC,IAAI,KAAK,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;gBAChC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC1B,SAAS,GAAG,IAAI,CAAC;YAClB,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,CAAC,IAAc,EAAQ,EAAE;IAChD,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO;IACR,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAElC,IAAI,iBAAiB,IAAI,IAAI,EAAE,CAAC;QAC/B,IAAI,CAAC,eAAe,EAAE,KAAK,EAAE,CAAC;IAC/B,CAAC;IAED,IAAI,YAAY,IAAI,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QAC7C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACrC,eAAe,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;IACF,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC;IAEtB,IAAI,cAAc,IAAI,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;IAC/B,CAAC;IAED,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;IACtB,CAAC;IAED,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;AAC7B,CAAC,CAAC;AAQF,IAAI,qBAAqB,GAAG,eAAe,CAAC;AAE5C,IAAI,eAAuC,CAAC;AAE5C,eAAe,gBAAgB,CAe7B;IACD,kBAAkB,EAAE,GAAG,EAAE,CAAC,CAAC;QAC1B,YAAY,EAAE,KAAK;KACnB,CAAC;IACF,gBAAgB,EAAE,GAAG,EAAE,CAAC,IAAI;IAC5B,kBAAkB,EAAE,GAAG,EAAE,CAAC,IAAI;IAC9B,cAAc,EAAE,GAAG,EAAE,CAAC,KAAK;IAC3B,gBAAgB,CAAC,QAAQ;QACxB,IAAI,OAAO,QAAQ,CAAC,eAAe,KAAK,UAAU,EAAE,CAAC;YACpD,QAAQ,CAAC,eAAe,EAAE,CAAC;QAC5B,CAAC;QAED,oFAAoF;QACpF,0EAA0E;QAC1E,uGAAuG;QACvG,IAAI,QAAQ,CAAC,aAAa,EAAE,CAAC;YAC5B,QAAQ,CAAC,aAAa,GAAG,KAAK,CAAC;YAC/B,IAAI,OAAO,QAAQ,CAAC,iBAAiB,KAAK,UAAU,EAAE,CAAC;gBACtD,QAAQ,CAAC,iBAAiB,EAAE,CAAC;YAC9B,CAAC;YAED,OAAO;QACR,CAAC;QAED,IAAI,OAAO,QAAQ,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC7C,QAAQ,CAAC,QAAQ,EAAE,CAAC;QACrB,CAAC;IACF,CAAC;IACD,mBAAmB,CAAC,iBAAiB,EAAE,IAAI;QAC1C,MAAM,oBAAoB,GAAG,iBAAiB,CAAC,YAAY,CAAC;QAC5D,MAAM,YAAY,GAAG,IAAI,KAAK,UAAU,IAAI,IAAI,KAAK,kBAAkB,CAAC;QAExE,IAAI,oBAAoB,KAAK,YAAY,EAAE,CAAC;YAC3C,OAAO,iBAAiB,CAAC;QAC1B,CAAC;QAED,OAAO,EAAC,YAAY,EAAC,CAAC;IACvB,CAAC;IACD,oBAAoB,EAAE,GAAG,EAAE,CAAC,KAAK;IACjC,cAAc,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,EAAE,WAAW;QAC3D,IAAI,WAAW,CAAC,YAAY,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC5D,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,IAAI,GACT,YAAY,KAAK,UAAU,IAAI,WAAW,CAAC,YAAY;YACtD,CAAC,CAAC,kBAAkB;YACpB,CAAC,CAAC,YAAY,CAAC;QAEjB,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAE9B,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrD,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBACxB,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;gBACrB,QAAQ,CAAC,IAAI,EAAE,KAAe,CAAC,CAAC;gBAEhC,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACnB,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAe,CAAC,CAAC;gBAC7C,CAAC;gBAED,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;gBAClC,IAAI,CAAC,kBAAkB,GAAG,KAA0B,CAAC;gBACrD,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,GAAG,KAAmC,CAAC;gBAC1D,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;gBACvC,IAAI,CAAC,uBAAuB,GAAG,KAAgB,CAAC;gBAChD,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,8BAA8B,EAAE,CAAC;gBAC5C,IAAI,CAAC,4BAA4B,GAAG,KAAgB,CAAC;gBACrD,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,iCAAiC,EAAE,CAAC;gBAC/C,IAAI,CAAC,+BAA+B,GAAG,KAAe,CAAC;gBACvD,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,wBAAwB,EAAE,CAAC;gBACtC,IAAI,CAAC,sBAAsB,GAAG,KAAmB,CAAC;gBAClD,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;gBAC/B,eAAe,GAAG,QAAQ,CAAC;gBAC3B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;gBAC5B,QAAQ,CAAC,aAAa,GAAG,IAAI,CAAC;gBAE9B,8DAA8D;gBAC9D,uBAAuB;gBACvB,QAAQ,CAAC,UAAU,GAAG,IAAI,CAAC;gBAC3B,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACtB,IAAI,CAAC,cAAc,GAAG,KAAgB,CAAC;gBACvC,SAAS;YACV,CAAC;YAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;gBACzB,IAAI,CAAC,iBAAiB,GAAG,KAAgB,CAAC;gBAC1C,SAAS;YACV,CAAC;YAED,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAyB,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IACD,kBAAkB,CAAC,IAAI,EAAE,KAAK,EAAE,WAAW;QAC1C,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACd,gBAAgB,IAAI,4CAA4C,CAChE,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC,IAAI,CAAC,CAAC;IAC7B,CAAC;IACD,gBAAgB,KAAI,CAAC;IACrB,gBAAgB,CAAC,IAAI;QACpB,gBAAgB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5B,CAAC;IACD,kBAAkB,CAAC,IAAI,EAAE,IAAI;QAC5B,gBAAgB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;IACD,iBAAiB,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ;IACvC,YAAY,CAAC,IAAI;QAChB,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IACD,cAAc,CAAC,IAAI;QAClB,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC9C,CAAC;IACD,kBAAkB,EAAE,eAAe;IACnC,WAAW,EAAE,eAAe;IAC5B,YAAY,EAAE,gBAAgB;IAC9B,uBAAuB;QACtB,OAAO,KAAK,CAAC;IACd,CAAC;IACD,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,mBAAmB,EAAE,KAAK;IAC1B,iBAAiB,EAAE,KAAK;IACxB,eAAe,EAAE,UAAU;IAC3B,aAAa,EAAE,YAAY;IAC3B,SAAS,EAAE,CAAC,CAAC;IACb,wBAAwB,KAAI,CAAC;IAC7B,uBAAuB,KAAI,CAAC;IAC5B,qBAAqB,KAAI,CAAC;IAC1B,mBAAmB,EAAE,GAAG,EAAE,CAAC,IAAI;IAC/B,kBAAkB,KAAI,CAAC;IACvB,oBAAoB,EAAE,GAAG,EAAE,CAAC,IAAI;IAChC,sBAAsB,EAAE,eAAe;IACvC,uBAAuB,EAAE,gBAAgB;IACzC,wBAAwB,CAAC,IAAI,EAAE,UAAU;QACxC,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,YAAY,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ;QAC3C,IAAI,eAAe,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC7C,eAAe,CAAC,aAAa,GAAG,IAAI,CAAC;QACtC,CAAC;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEvC,MAAM,KAAK,GAAG,IAAI,CACjB,QAAQ,CAAC,OAAO,CAAW,EAC3B,QAAQ,CAAC,OAAO,CAAW,CAC3B,CAAC;QAEF,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,EAAE,CAAC;YACtB,OAAO;QACR,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACX,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBAClD,IAAI,GAAG,KAAK,OAAO,EAAE,CAAC;oBACrB,QAAQ,CAAC,IAAI,EAAE,KAAe,CAAC,CAAC;oBAChC,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,oBAAoB,EAAE,CAAC;oBAClC,IAAI,CAAC,kBAAkB,GAAG,KAA0B,CAAC;oBACrD,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,CAAC,cAAc,GAAG,KAAmC,CAAC;oBAC1D,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,yBAAyB,EAAE,CAAC;oBACvC,IAAI,CAAC,uBAAuB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oBAC9C,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,8BAA8B,EAAE,CAAC;oBAC5C,IAAI,CAAC,4BAA4B,GAAG,KAAgB,CAAC;oBACrD,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,iCAAiC,EAAE,CAAC;oBAC/C,IAAI,CAAC,+BAA+B,GAAG,KAAe,CAAC;oBACvD,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,wBAAwB,EAAE,CAAC;oBACtC,IAAI,CAAC,sBAAsB,GAAG,KAAmC,CAAC;oBAClE,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,iBAAiB,EAAE,CAAC;oBAC/B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;oBAC5B,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;oBACtB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;oBACrC,SAAS;gBACV,CAAC;gBAED,IAAI,GAAG,KAAK,WAAW,EAAE,CAAC;oBACzB,IAAI,CAAC,iBAAiB,GAAG,KAAgB,CAAC;oBAC1C,SAAS;gBACV,CAAC;gBAED,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,KAAyB,CAAC,CAAC;YACpD,CAAC;QACF,CAAC;QAED,IAAI,KAAK,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC5B,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IACD,gBAAgB,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO;QACvC,gBAAgB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC;IACD,WAAW,CAAC,IAAI,EAAE,UAAU;QAC3B,eAAe,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAClC,eAAe,CAAC,UAAU,CAAC,CAAC;IAC7B,CAAC;IACD,wBAAwB,CAAC,WAAmB;QAC3C,qBAAqB,GAAG,WAAW,CAAC;IACrC,CAAC;IACD,wBAAwB,EAAE,GAAG,EAAE,CAAC,qBAAqB;IACrD,qBAAqB;QACpB,IAAI,qBAAqB,KAAK,eAAe,EAAE,CAAC;YAC/C,OAAO,qBAAqB,CAAC;QAC9B,CAAC;QAED,OAAO,oBAAoB,CAAC;IAC7B,CAAC;IACD,gBAAgB;QACf,OAAO,KAAK,CAAC;IACd,CAAC;IAED,oBAAoB,EAAE,SAAS;IAE/B,qBAAqB,EAAE,aAAa,CACnC,IAAI,CACgC;IACrC,iBAAiB,KAAI,CAAC;IACtB,wBAAwB,KAAI,CAAC;IAC7B,4BAA4B;QAC3B,OAAO,KAAK,CAAC;IACd,CAAC;IACD,mBAAmB,KAAI,CAAC;IACxB,gBAAgB;QACf,OAAO,IAAI,CAAC;IACb,CAAC;IACD,qBAAqB;QACpB,OAAO,CAAC,GAAG,CAAC;IACb,CAAC;IACD,eAAe;QACd,OAAO,IAAI,CAAC;IACb,CAAC;IACD,qBAAqB,KAAI,CAAC;IAC1B,eAAe,KAAI,CAAC;IACpB,sBAAsB;QACrB,OAAO,IAAI,CAAC;IACb,CAAC;CACD,CAAC,CAAC"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2026 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { type StyledChar } from '@alcalzone/ansi-tokenize';
6
+ import { type StyledChar } from './tokenize.js';
7
7
  import { type DOMElement, type DOMNode } from './dom.js';
8
8
  import type Output from './output.js';
9
9
  export declare function handleCachedRenderNode(node: DOMElement, output: Output, options: {
@@ -14,4 +14,5 @@ export declare function handleCachedRenderNode(node: DOMElement, output: Output,
14
14
  end: number;
15
15
  }>;
16
16
  selectionStyle?: (char: StyledChar) => StyledChar;
17
+ trackSelection?: boolean;
17
18
  }): void;
@@ -12,7 +12,7 @@ export function handleCachedRenderNode(node, output, options) {
12
12
  const range = selectionMap.get(node);
13
13
  const clonedRegionObj = {
14
14
  ...node.cachedRender,
15
- lines: node.cachedRender.lines.map(line => line.map(char => ({ ...char, styles: [...char.styles] }))),
15
+ lines: node.cachedRender.lines.map(line => [...line]),
16
16
  selectableSpans: node.cachedRender.selectableSpans.map(span => ({
17
17
  ...span,
18
18
  })),
@@ -39,8 +39,8 @@ export function handleCachedRenderNode(node, output, options) {
39
39
  let spanCharX = span.startX;
40
40
  const styledChars = toStyledCharacters(span.text);
41
41
  for (const char of styledChars) {
42
- const charLen = char.value.length;
43
- const charWidth = char.fullWidth ? 2 : 1;
42
+ const charLen = char.getValue().length;
43
+ const charWidth = char.getFullWidth() ? 2 : 1;
44
44
  if (currentOffset >= range.start && currentOffset < range.end) {
45
45
  const line = clonedRegionObj.lines[span.y];
46
46
  if (line?.[spanCharX]) {
@@ -1 +1 @@
1
- {"version":3,"file":"render-cached.js","sourceRoot":"","sources":["../src/render-cached.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-cached.js","sourceRoot":"","sources":["../src/render-cached.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2026 Google LLC
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { type StyledChar } from '@alcalzone/ansi-tokenize';
6
+ import { type StyledChar } from './tokenize.js';
7
7
  import { type DOMElement, type DOMNode } from './dom.js';
8
8
  import type Output from './output.js';
9
9
  import { type OutputTransformer } from './render-node-to-output.js';
@@ -23,4 +23,5 @@ export declare function handleContainerNode(node: DOMElement, output: Output, op
23
23
  selectionStyle?: (char: StyledChar) => StyledChar;
24
24
  absoluteOffsetX: number;
25
25
  absoluteOffsetY: number;
26
+ trackSelection?: boolean;
26
27
  }): void;
@@ -10,7 +10,7 @@ import renderNodeToOutput from './render-node-to-output.js';
10
10
  import { getScrollTop, getScrollLeft, getScrollHeight, getScrollWidth, } from './scroll.js';
11
11
  import { getStickyDescendants, identifyActiveStickyNodes, renderActiveStickyNodes, } from './render-sticky.js';
12
12
  export function handleContainerNode(node, output, options) {
13
- const { x, y, width, height, newTransformers, skipStaticElements, isStickyRender, skipStickyHeaders, selectionMap, selectionStyle, absoluteOffsetX, absoluteOffsetY, } = options;
13
+ const { x, y, width, height, newTransformers, skipStaticElements, isStickyRender, skipStickyHeaders, selectionMap, selectionStyle, absoluteOffsetX, absoluteOffsetY, trackSelection, } = options;
14
14
  const { yogaNode } = node;
15
15
  if (!yogaNode)
16
16
  return;
@@ -119,6 +119,7 @@ export function handleContainerNode(node, output, options) {
119
119
  skipStickyHeaders: false,
120
120
  selectionMap,
121
121
  selectionStyle,
122
+ trackSelection,
122
123
  });
123
124
  }
124
125
  renderActiveStickyNodes(activeStickyNodes, node, output, {
@@ -128,6 +129,7 @@ export function handleContainerNode(node, output, options) {
128
129
  skipStaticElements,
129
130
  selectionMap,
130
131
  selectionStyle,
132
+ trackSelection,
131
133
  });
132
134
  output.endChildRegion();
133
135
  }
@@ -155,6 +157,7 @@ export function handleContainerNode(node, output, options) {
155
157
  skipStickyHeaders,
156
158
  selectionMap,
157
159
  selectionStyle,
160
+ trackSelection,
158
161
  });
159
162
  }
160
163
  }
@@ -1 +1 @@
1
- {"version":3,"file":"render-container.js","sourceRoot":"","sources":["../src/render-container.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"render-container.js","sourceRoot":"","sources":["../src/render-container.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type StyledChar } from '@alcalzone/ansi-tokenize';
1
+ import { type StyledChar } from './tokenize.js';
2
2
  import { type DOMElement, type DOMNode } from './dom.js';
3
3
  import Output from './output.js';
4
4
  export type OutputTransformer = (s: string, index: number) => string;
@@ -11,6 +11,7 @@ export declare const renderToStatic: (node: DOMElement, options?: {
11
11
  end: number;
12
12
  }>;
13
13
  selectionStyle?: (char: StyledChar) => StyledChar;
14
+ trackSelection?: boolean;
14
15
  }) => void;
15
16
  declare function renderNodeToOutput(node: DOMElement, output: Output, options: {
16
17
  offsetX?: number;
@@ -26,5 +27,6 @@ declare function renderNodeToOutput(node: DOMElement, output: Output, options: {
26
27
  end: number;
27
28
  }>;
28
29
  selectionStyle?: (char: StyledChar) => StyledChar;
30
+ trackSelection?: boolean;
29
31
  }): void;
30
32
  export default renderNodeToOutput;
@@ -19,6 +19,7 @@ export const renderToStatic = (node, options = {}) => {
19
19
  skipStaticElements: options.skipStaticElements ?? false,
20
20
  selectionMap: options.selectionMap,
21
21
  selectionStyle: options.selectionStyle,
22
+ trackSelection: options.trackSelection,
22
23
  });
23
24
  const parent = stickyNode.parentNode;
24
25
  const parentYogaNode = parent?.yogaNode;
@@ -63,6 +64,7 @@ export const renderToStatic = (node, options = {}) => {
63
64
  width,
64
65
  height,
65
66
  id: node.internalId,
67
+ trackSelection: options.trackSelection,
66
68
  });
67
69
  for (const childNode of node.childNodes) {
68
70
  renderNodeToOutput(childNode, staticOutput, {
@@ -73,16 +75,19 @@ export const renderToStatic = (node, options = {}) => {
73
75
  isStickyRender: options.isStickyRender,
74
76
  selectionMap: options.selectionMap,
75
77
  selectionStyle: options.selectionStyle,
78
+ trackSelection: options.trackSelection,
76
79
  });
77
80
  }
78
81
  const rootRegion = staticOutput.get();
79
82
  rootRegion.cachedStickyHeaders = cachedStickyHeaders;
80
- rootRegion.selectableText = extractSelectableText(rootRegion.selectableSpans);
83
+ if (options.trackSelection) {
84
+ rootRegion.selectableText = extractSelectableText(rootRegion.selectableSpans);
85
+ }
81
86
  setCachedRender(node, rootRegion);
82
87
  };
83
88
  // After nodes are laid out, render each to output object, which later gets rendered to terminal
84
89
  function renderNodeToOutput(node, output, options) {
85
- const { offsetX = 0, offsetY = 0, absoluteOffsetX = 0, absoluteOffsetY = 0, transformers = [], skipStaticElements, isStickyRender = false, skipStickyHeaders = false, selectionMap, selectionStyle, } = options;
90
+ const { offsetX = 0, offsetY = 0, absoluteOffsetX = 0, absoluteOffsetY = 0, transformers = [], skipStaticElements, isStickyRender = false, skipStickyHeaders = false, selectionMap, selectionStyle, trackSelection, } = options;
86
91
  if (skipStaticElements && node.internal_static) {
87
92
  return;
88
93
  }
@@ -133,6 +138,7 @@ function renderNodeToOutput(node, output, options) {
133
138
  y,
134
139
  selectionMap,
135
140
  selectionStyle,
141
+ trackSelection,
136
142
  });
137
143
  return;
138
144
  }
@@ -143,6 +149,7 @@ function renderNodeToOutput(node, output, options) {
143
149
  newTransformers,
144
150
  selectionMap,
145
151
  selectionStyle,
152
+ trackSelection,
146
153
  });
147
154
  return;
148
155
  }
@@ -159,6 +166,7 @@ function renderNodeToOutput(node, output, options) {
159
166
  selectionStyle,
160
167
  absoluteOffsetX: absX,
161
168
  absoluteOffsetY: absY,
169
+ trackSelection,
162
170
  });
163
171
  }
164
172
  }