@opentui/core 0.1.87 → 0.1.88
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/3d/ThreeRenderable.d.ts +4 -4
- package/3d/WGPURenderer.d.ts +4 -4
- package/3d/animation/ExplodingSpriteEffect.d.ts +2 -2
- package/3d/animation/PhysicsExplodingSpriteEffect.d.ts +3 -3
- package/3d/animation/SpriteAnimator.d.ts +1 -1
- package/3d/animation/SpriteParticleGenerator.d.ts +1 -1
- package/3d/canvas.d.ts +2 -2
- package/3d/index.d.ts +12 -12
- package/3d/physics/PlanckPhysicsAdapter.d.ts +1 -1
- package/3d/physics/RapierPhysicsAdapter.d.ts +1 -1
- package/3d.d.ts +1 -1
- package/3d.js +1 -1
- package/3d.js.map +12 -12
- package/Renderable.d.ts +7 -7
- package/animation/Timeline.d.ts +1 -1
- package/buffer.d.ts +6 -6
- package/console.d.ts +7 -4
- package/edit-buffer.d.ts +4 -4
- package/editor-view.d.ts +3 -3
- package/index-e4hzc2j2.js +113 -0
- package/index-e4hzc2j2.js.map +10 -0
- package/{index-0wbvecnk.js → index-nkrr8a4c.js} +128 -59
- package/index-nkrr8a4c.js.map +64 -0
- package/index-nyw5p3ep.js +12619 -0
- package/index-nyw5p3ep.js.map +43 -0
- package/index.d.ts +20 -17
- package/index.js +78 -11590
- package/index.js.map +3 -35
- package/lib/KeyHandler.d.ts +7 -4
- package/lib/ascii.font.d.ts +2 -2
- package/lib/border.d.ts +1 -1
- package/lib/clipboard.d.ts +1 -1
- package/lib/clock.d.ts +4 -0
- package/lib/extmarks-history.d.ts +1 -1
- package/lib/extmarks.d.ts +2 -2
- package/lib/hast-styled-text.d.ts +3 -3
- package/lib/index.d.ts +21 -20
- package/lib/objects-in-viewport.d.ts +1 -1
- package/lib/parse.keypress-kitty.d.ts +1 -1
- package/lib/paste.d.ts +7 -0
- package/lib/renderable.validations.d.ts +2 -2
- package/lib/selection.d.ts +2 -2
- package/lib/stdin-parser.d.ts +4 -2
- package/lib/styled-text.d.ts +2 -2
- package/lib/terminal-palette.d.ts +4 -2
- package/lib/tree-sitter/client.d.ts +1 -1
- package/lib/tree-sitter/default-parsers.d.ts +1 -1
- package/lib/tree-sitter/index.d.ts +7 -7
- package/lib/tree-sitter-styled-text.d.ts +5 -5
- package/package.json +17 -7
- package/parser.worker.js.map +1 -1
- package/plugins/core-slot.d.ts +72 -0
- package/plugins/registry.d.ts +38 -0
- package/plugins/types.d.ts +34 -0
- package/post/filters.d.ts +1 -1
- package/renderables/ASCIIFont.d.ts +6 -6
- package/renderables/Box.d.ts +5 -5
- package/renderables/Code.d.ts +10 -8
- package/renderables/Diff.d.ts +7 -7
- package/renderables/EditBufferRenderable.d.ts +8 -8
- package/renderables/FrameBuffer.d.ts +3 -3
- package/renderables/Input.d.ts +3 -3
- package/renderables/LineNumberRenderable.d.ts +4 -4
- package/renderables/Markdown.d.ts +9 -9
- package/renderables/ScrollBar.d.ts +6 -6
- package/renderables/ScrollBox.d.ts +9 -8
- package/renderables/Select.d.ts +7 -7
- package/renderables/Slider.d.ts +1 -1
- package/renderables/TabSelect.d.ts +6 -6
- package/renderables/Text.d.ts +7 -7
- package/renderables/TextBufferRenderable.d.ts +9 -9
- package/renderables/TextNode.d.ts +6 -6
- package/renderables/Textarea.d.ts +7 -7
- package/renderables/__tests__/renderable-test-utils.d.ts +8 -3
- package/renderables/composition/VRenderable.d.ts +3 -3
- package/renderables/composition/constructs.d.ts +14 -14
- package/renderables/composition/vnode.d.ts +2 -2
- package/renderables/index.d.ts +22 -22
- package/renderer.d.ts +16 -15
- package/runtime-plugin-support.d.ts +3 -0
- package/runtime-plugin-support.js +29 -0
- package/runtime-plugin-support.js.map +10 -0
- package/runtime-plugin.d.ts +11 -0
- package/runtime-plugin.js +16 -0
- package/runtime-plugin.js.map +9 -0
- package/syntax-style.d.ts +2 -2
- package/testing/mock-keys.d.ts +2 -1
- package/testing/mock-mouse.d.ts +1 -1
- package/testing/mock-tree-sitter-client.d.ts +2 -2
- package/testing/test-recorder.d.ts +1 -1
- package/testing/test-renderer.d.ts +4 -4
- package/testing.d.ts +6 -6
- package/testing.js +12 -7
- package/testing.js.map +7 -7
- package/text-buffer-view.d.ts +3 -3
- package/text-buffer.d.ts +5 -5
- package/types.d.ts +4 -4
- package/utils.d.ts +1 -1
- package/zig-structs.d.ts +1 -1
- package/zig.d.ts +5 -5
- package/index-0wbvecnk.js.map +0 -63
|
@@ -1850,11 +1850,14 @@ class KeyEvent {
|
|
|
1850
1850
|
}
|
|
1851
1851
|
|
|
1852
1852
|
class PasteEvent {
|
|
1853
|
-
|
|
1853
|
+
type = "paste";
|
|
1854
|
+
bytes;
|
|
1855
|
+
metadata;
|
|
1854
1856
|
_defaultPrevented = false;
|
|
1855
1857
|
_propagationStopped = false;
|
|
1856
|
-
constructor(
|
|
1857
|
-
this.
|
|
1858
|
+
constructor(bytes, metadata) {
|
|
1859
|
+
this.bytes = bytes;
|
|
1860
|
+
this.metadata = metadata;
|
|
1858
1861
|
}
|
|
1859
1862
|
get defaultPrevented() {
|
|
1860
1863
|
return this._defaultPrevented;
|
|
@@ -1890,10 +1893,9 @@ class KeyHandler extends EventEmitter {
|
|
|
1890
1893
|
}
|
|
1891
1894
|
return true;
|
|
1892
1895
|
}
|
|
1893
|
-
processPaste(
|
|
1896
|
+
processPaste(bytes, metadata) {
|
|
1894
1897
|
try {
|
|
1895
|
-
|
|
1896
|
-
this.emit("paste", new PasteEvent(cleanedData));
|
|
1898
|
+
this.emit("paste", new PasteEvent(bytes, metadata));
|
|
1897
1899
|
} catch (error) {
|
|
1898
1900
|
console.error(`[KeyHandler] Error processing paste:`, error);
|
|
1899
1901
|
}
|
|
@@ -5320,6 +5322,12 @@ class SystemClock {
|
|
|
5320
5322
|
clearTimeout(handle) {
|
|
5321
5323
|
globalThis.clearTimeout(handle);
|
|
5322
5324
|
}
|
|
5325
|
+
setInterval(fn, delayMs) {
|
|
5326
|
+
return globalThis.setInterval(fn, delayMs);
|
|
5327
|
+
}
|
|
5328
|
+
clearInterval(handle) {
|
|
5329
|
+
globalThis.clearInterval(handle);
|
|
5330
|
+
}
|
|
5323
5331
|
}
|
|
5324
5332
|
|
|
5325
5333
|
// src/lib/parse.keypress.ts
|
|
@@ -5345,6 +5353,12 @@ var kittyKeyMap = {
|
|
|
5345
5353
|
57355: "pagedown",
|
|
5346
5354
|
57356: "home",
|
|
5347
5355
|
57357: "end",
|
|
5356
|
+
57358: "capslock",
|
|
5357
|
+
57359: "scrolllock",
|
|
5358
|
+
57360: "numlock",
|
|
5359
|
+
57361: "printscreen",
|
|
5360
|
+
57362: "pause",
|
|
5361
|
+
57363: "menu",
|
|
5348
5362
|
57364: "f1",
|
|
5349
5363
|
57365: "f2",
|
|
5350
5364
|
57366: "f3",
|
|
@@ -5397,6 +5411,18 @@ var kittyKeyMap = {
|
|
|
5397
5411
|
57413: "kpplus",
|
|
5398
5412
|
57414: "kpenter",
|
|
5399
5413
|
57415: "kpequal",
|
|
5414
|
+
57416: "kpseparator",
|
|
5415
|
+
57417: "kpleft",
|
|
5416
|
+
57418: "kpright",
|
|
5417
|
+
57419: "kpup",
|
|
5418
|
+
57420: "kpdown",
|
|
5419
|
+
57421: "kppageup",
|
|
5420
|
+
57422: "kppagedown",
|
|
5421
|
+
57423: "kphome",
|
|
5422
|
+
57424: "kpend",
|
|
5423
|
+
57425: "kpinsert",
|
|
5424
|
+
57426: "kpdelete",
|
|
5425
|
+
57427: "clear",
|
|
5400
5426
|
57428: "mediaplay",
|
|
5401
5427
|
57429: "mediapause",
|
|
5402
5428
|
57430: "mediaplaypause",
|
|
@@ -5444,9 +5470,9 @@ var functionalKeyMap = {
|
|
|
5444
5470
|
D: "left",
|
|
5445
5471
|
H: "home",
|
|
5446
5472
|
F: "end",
|
|
5473
|
+
E: "clear",
|
|
5447
5474
|
P: "f1",
|
|
5448
5475
|
Q: "f2",
|
|
5449
|
-
R: "f3",
|
|
5450
5476
|
S: "f4"
|
|
5451
5477
|
};
|
|
5452
5478
|
var tildeKeyMap = {
|
|
@@ -5469,7 +5495,9 @@ var tildeKeyMap = {
|
|
|
5469
5495
|
"20": "f9",
|
|
5470
5496
|
"21": "f10",
|
|
5471
5497
|
"23": "f11",
|
|
5472
|
-
"24": "f12"
|
|
5498
|
+
"24": "f12",
|
|
5499
|
+
"29": "menu",
|
|
5500
|
+
"57427": "clear"
|
|
5473
5501
|
};
|
|
5474
5502
|
function parseKittySpecialKey(sequence) {
|
|
5475
5503
|
const specialKeyRe = /^\x1b\[(\d+);(\d+):(\d+)([A-Z~])$/;
|
|
@@ -5584,6 +5612,8 @@ function parseKittyKeyboard(sequence) {
|
|
|
5584
5612
|
if (knownKey) {
|
|
5585
5613
|
key.name = knownKey;
|
|
5586
5614
|
key.code = `[${codepoint}u`;
|
|
5615
|
+
} else if (codepoint === 0) {
|
|
5616
|
+
key.name = "";
|
|
5587
5617
|
} else {
|
|
5588
5618
|
if (codepoint > 0 && codepoint <= 1114111) {
|
|
5589
5619
|
const char = String.fromCodePoint(codepoint);
|
|
@@ -5649,8 +5679,14 @@ function parseKittyKeyboard(sequence) {
|
|
|
5649
5679
|
text = " ";
|
|
5650
5680
|
}
|
|
5651
5681
|
if (text) {
|
|
5682
|
+
if (codepoint === 0) {
|
|
5683
|
+
key.name = text;
|
|
5684
|
+
}
|
|
5652
5685
|
key.sequence = text;
|
|
5653
5686
|
}
|
|
5687
|
+
if (codepoint === 0 && text === "") {
|
|
5688
|
+
return null;
|
|
5689
|
+
}
|
|
5654
5690
|
return key;
|
|
5655
5691
|
}
|
|
5656
5692
|
|
|
@@ -5679,6 +5715,8 @@ var keyName = {
|
|
|
5679
5715
|
"[21~": "f10",
|
|
5680
5716
|
"[23~": "f11",
|
|
5681
5717
|
"[24~": "f12",
|
|
5718
|
+
"[29~": "menu",
|
|
5719
|
+
"[57427~": "clear",
|
|
5682
5720
|
"[A": "up",
|
|
5683
5721
|
"[B": "down",
|
|
5684
5722
|
"[C": "right",
|
|
@@ -5686,6 +5724,9 @@ var keyName = {
|
|
|
5686
5724
|
"[E": "clear",
|
|
5687
5725
|
"[F": "end",
|
|
5688
5726
|
"[H": "home",
|
|
5727
|
+
"[P": "f1",
|
|
5728
|
+
"[Q": "f2",
|
|
5729
|
+
"[S": "f4",
|
|
5689
5730
|
OA: "up",
|
|
5690
5731
|
OB: "down",
|
|
5691
5732
|
OC: "right",
|
|
@@ -6981,10 +7022,25 @@ function decodeUtf8(bytes) {
|
|
|
6981
7022
|
function createPasteCollector() {
|
|
6982
7023
|
return {
|
|
6983
7024
|
tail: EMPTY_BYTES,
|
|
6984
|
-
|
|
6985
|
-
|
|
7025
|
+
parts: [],
|
|
7026
|
+
totalLength: 0
|
|
6986
7027
|
};
|
|
6987
7028
|
}
|
|
7029
|
+
function joinPasteBytes(parts, totalLength) {
|
|
7030
|
+
if (totalLength === 0) {
|
|
7031
|
+
return EMPTY_BYTES;
|
|
7032
|
+
}
|
|
7033
|
+
if (parts.length === 1) {
|
|
7034
|
+
return parts[0];
|
|
7035
|
+
}
|
|
7036
|
+
const bytes = new Uint8Array(totalLength);
|
|
7037
|
+
let offset = 0;
|
|
7038
|
+
for (const part of parts) {
|
|
7039
|
+
bytes.set(part, offset);
|
|
7040
|
+
offset += part.length;
|
|
7041
|
+
}
|
|
7042
|
+
return bytes;
|
|
7043
|
+
}
|
|
6988
7044
|
|
|
6989
7045
|
class StdinParser {
|
|
6990
7046
|
pending = new ByteQueue(INITIAL_PENDING_CAPACITY);
|
|
@@ -7578,14 +7634,10 @@ class StdinParser {
|
|
|
7578
7634
|
const combined = concatBytes(paste.tail, chunk);
|
|
7579
7635
|
const endIndex = indexOfBytes(combined, BRACKETED_PASTE_END);
|
|
7580
7636
|
if (endIndex !== -1) {
|
|
7581
|
-
this.
|
|
7582
|
-
const tailText = paste.decoder.decode();
|
|
7583
|
-
if (tailText.length > 0) {
|
|
7584
|
-
paste.parts.push(tailText);
|
|
7585
|
-
}
|
|
7637
|
+
this.pushPasteBytes(combined.subarray(0, endIndex));
|
|
7586
7638
|
this.events.push({
|
|
7587
7639
|
type: "paste",
|
|
7588
|
-
|
|
7640
|
+
bytes: joinPasteBytes(paste.parts, paste.totalLength)
|
|
7589
7641
|
});
|
|
7590
7642
|
this.paste = null;
|
|
7591
7643
|
return combined.subarray(endIndex + BRACKETED_PASTE_END.length);
|
|
@@ -7593,19 +7645,17 @@ class StdinParser {
|
|
|
7593
7645
|
const keep = Math.min(BRACKETED_PASTE_END.length - 1, combined.length);
|
|
7594
7646
|
const stableLength = combined.length - keep;
|
|
7595
7647
|
if (stableLength > 0) {
|
|
7596
|
-
this.
|
|
7648
|
+
this.pushPasteBytes(combined.subarray(0, stableLength));
|
|
7597
7649
|
}
|
|
7598
|
-
paste.tail = combined.
|
|
7650
|
+
paste.tail = Uint8Array.from(combined.subarray(stableLength));
|
|
7599
7651
|
return EMPTY_BYTES;
|
|
7600
7652
|
}
|
|
7601
|
-
|
|
7653
|
+
pushPasteBytes(bytes) {
|
|
7602
7654
|
if (bytes.length === 0) {
|
|
7603
7655
|
return;
|
|
7604
7656
|
}
|
|
7605
|
-
|
|
7606
|
-
|
|
7607
|
-
this.paste.parts.push(text);
|
|
7608
|
-
}
|
|
7657
|
+
this.paste.parts.push(Uint8Array.from(bytes));
|
|
7658
|
+
this.paste.totalLength += bytes.length;
|
|
7609
7659
|
}
|
|
7610
7660
|
reconcileTimeoutState() {
|
|
7611
7661
|
if (!this.armTimeouts) {
|
|
@@ -9751,6 +9801,7 @@ function createExtmarksController(editBuffer, editorView) {
|
|
|
9751
9801
|
}
|
|
9752
9802
|
|
|
9753
9803
|
// src/lib/terminal-palette.ts
|
|
9804
|
+
var SYSTEM_CLOCK2 = new SystemClock;
|
|
9754
9805
|
var OSC4_RESPONSE = /\x1b]4;(\d+);(?:(?:rgb:)([0-9a-fA-F]+)\/([0-9a-fA-F]+)\/([0-9a-fA-F]+)|#([0-9a-fA-F]{6}))(?:\x07|\x1b\\)/g;
|
|
9755
9806
|
var OSC_SPECIAL_RESPONSE = /\x1b](\d+);(?:(?:rgb:)([0-9a-fA-F]+)\/([0-9a-fA-F]+)\/([0-9a-fA-F]+)|#([0-9a-fA-F]{6}))(?:\x07|\x1b\\)/g;
|
|
9756
9807
|
function scaleComponent(comp) {
|
|
@@ -9777,12 +9828,14 @@ class TerminalPalette {
|
|
|
9777
9828
|
activeQuerySessions = [];
|
|
9778
9829
|
inLegacyTmux;
|
|
9779
9830
|
oscSource;
|
|
9780
|
-
|
|
9831
|
+
clock;
|
|
9832
|
+
constructor(stdin, stdout, writeFn, isLegacyTmux, oscSource, clock) {
|
|
9781
9833
|
this.stdin = stdin;
|
|
9782
9834
|
this.stdout = stdout;
|
|
9783
9835
|
this.writeFn = writeFn || ((data) => stdout.write(data));
|
|
9784
9836
|
this.inLegacyTmux = isLegacyTmux ?? false;
|
|
9785
9837
|
this.oscSource = oscSource;
|
|
9838
|
+
this.clock = clock ?? SYSTEM_CLOCK2;
|
|
9786
9839
|
}
|
|
9787
9840
|
writeOsc(osc) {
|
|
9788
9841
|
const data = this.inLegacyTmux ? wrapForTmux(osc) : osc;
|
|
@@ -9814,7 +9867,7 @@ class TerminalPalette {
|
|
|
9814
9867
|
return;
|
|
9815
9868
|
closed = true;
|
|
9816
9869
|
for (const timer of timers) {
|
|
9817
|
-
clearTimeout(timer);
|
|
9870
|
+
this.clock.clearTimeout(timer);
|
|
9818
9871
|
}
|
|
9819
9872
|
timers.clear();
|
|
9820
9873
|
for (const unsubscribe of subscriptions) {
|
|
@@ -9828,16 +9881,16 @@ class TerminalPalette {
|
|
|
9828
9881
|
this.activeQuerySessions.push(cleanup);
|
|
9829
9882
|
return {
|
|
9830
9883
|
setTimer: (fn, ms) => {
|
|
9831
|
-
const timer = setTimeout(fn, ms);
|
|
9884
|
+
const timer = this.clock.setTimeout(fn, ms);
|
|
9832
9885
|
timers.add(timer);
|
|
9833
9886
|
return timer;
|
|
9834
9887
|
},
|
|
9835
9888
|
resetTimer: (existing, fn, ms) => {
|
|
9836
9889
|
if (existing) {
|
|
9837
|
-
clearTimeout(existing);
|
|
9890
|
+
this.clock.clearTimeout(existing);
|
|
9838
9891
|
timers.delete(existing);
|
|
9839
9892
|
}
|
|
9840
|
-
const timer = setTimeout(fn, ms);
|
|
9893
|
+
const timer = this.clock.setTimeout(fn, ms);
|
|
9841
9894
|
timers.add(timer);
|
|
9842
9895
|
return timer;
|
|
9843
9896
|
},
|
|
@@ -10027,8 +10080,17 @@ class TerminalPalette {
|
|
|
10027
10080
|
};
|
|
10028
10081
|
}
|
|
10029
10082
|
}
|
|
10030
|
-
function createTerminalPalette(stdin, stdout, writeFn, isLegacyTmux, oscSource) {
|
|
10031
|
-
return new TerminalPalette(stdin, stdout, writeFn, isLegacyTmux, oscSource);
|
|
10083
|
+
function createTerminalPalette(stdin, stdout, writeFn, isLegacyTmux, oscSource, clock) {
|
|
10084
|
+
return new TerminalPalette(stdin, stdout, writeFn, isLegacyTmux, oscSource, clock);
|
|
10085
|
+
}
|
|
10086
|
+
|
|
10087
|
+
// src/lib/paste.ts
|
|
10088
|
+
var PASTE_TEXT_DECODER = new TextDecoder;
|
|
10089
|
+
function decodePasteBytes(bytes) {
|
|
10090
|
+
return PASTE_TEXT_DECODER.decode(bytes);
|
|
10091
|
+
}
|
|
10092
|
+
function stripAnsiSequences(text) {
|
|
10093
|
+
return Bun.stripANSI(text);
|
|
10032
10094
|
}
|
|
10033
10095
|
|
|
10034
10096
|
// src/lib/detect-links.ts
|
|
@@ -15635,6 +15697,7 @@ class TerminalConsole extends EventEmitter7 {
|
|
|
15635
15697
|
height: 0
|
|
15636
15698
|
};
|
|
15637
15699
|
_autoScrollInterval = null;
|
|
15700
|
+
clock;
|
|
15638
15701
|
_keyBindingsMap;
|
|
15639
15702
|
_keyAliasMap;
|
|
15640
15703
|
_keyBindings;
|
|
@@ -15674,6 +15737,7 @@ class TerminalConsole extends EventEmitter7 {
|
|
|
15674
15737
|
constructor(renderer, options = {}) {
|
|
15675
15738
|
super();
|
|
15676
15739
|
this.renderer = renderer;
|
|
15740
|
+
this.clock = options.clock ?? new SystemClock;
|
|
15677
15741
|
this.options = { ...DEFAULT_CONSOLE_OPTIONS, ...options };
|
|
15678
15742
|
this.keyHandler = this.handleKeyPress.bind(this);
|
|
15679
15743
|
this._debugModeEnabled = this.options.startInDebugMode;
|
|
@@ -16229,13 +16293,13 @@ class TerminalConsole extends EventEmitter7 {
|
|
|
16229
16293
|
}
|
|
16230
16294
|
stopAutoScroll() {
|
|
16231
16295
|
if (this._autoScrollInterval !== null) {
|
|
16232
|
-
clearInterval(this._autoScrollInterval);
|
|
16296
|
+
this.clock.clearInterval(this._autoScrollInterval);
|
|
16233
16297
|
this._autoScrollInterval = null;
|
|
16234
16298
|
}
|
|
16235
16299
|
}
|
|
16236
16300
|
startAutoScroll(direction) {
|
|
16237
16301
|
this.stopAutoScroll();
|
|
16238
|
-
this._autoScrollInterval = setInterval(() => {
|
|
16302
|
+
this._autoScrollInterval = this.clock.setInterval(() => {
|
|
16239
16303
|
if (direction === "up") {
|
|
16240
16304
|
if (this.scrollTopIndex > 0) {
|
|
16241
16305
|
this.scrollTopIndex--;
|
|
@@ -16813,6 +16877,7 @@ class CliRenderer extends EventEmitter8 {
|
|
|
16813
16877
|
postProcessFns = [];
|
|
16814
16878
|
backgroundColor = RGBA.fromInts(0, 0, 0, 0);
|
|
16815
16879
|
waitingForPixelResolution = false;
|
|
16880
|
+
clock;
|
|
16816
16881
|
rendering = false;
|
|
16817
16882
|
renderingNative = false;
|
|
16818
16883
|
renderTimeout = null;
|
|
@@ -17016,6 +17081,7 @@ Captured output:
|
|
|
17016
17081
|
}
|
|
17017
17082
|
});
|
|
17018
17083
|
this.addExitListeners();
|
|
17084
|
+
this.clock = config.clock ?? new SystemClock;
|
|
17019
17085
|
const stdinParserMaxBufferBytes = config.stdinParserMaxBufferBytes ?? DEFAULT_STDIN_PARSER_MAX_BUFFER_BYTES;
|
|
17020
17086
|
this.stdinParser = new StdinParser({
|
|
17021
17087
|
timeoutMs: 10,
|
|
@@ -17025,9 +17091,12 @@ Captured output:
|
|
|
17025
17091
|
this.drainStdinParser();
|
|
17026
17092
|
},
|
|
17027
17093
|
useKittyKeyboard: useKittyForParsing,
|
|
17028
|
-
clock:
|
|
17094
|
+
clock: this.clock
|
|
17095
|
+
});
|
|
17096
|
+
this._console = new TerminalConsole(this, {
|
|
17097
|
+
...config.consoleOptions ?? {},
|
|
17098
|
+
clock: this.clock
|
|
17029
17099
|
});
|
|
17030
|
-
this._console = new TerminalConsole(this, config.consoleOptions);
|
|
17031
17100
|
this.useConsole = config.useConsole ?? true;
|
|
17032
17101
|
this._openConsoleOnError = config.openConsoleOnError ?? true;
|
|
17033
17102
|
this._onDestroy = config.onDestroy;
|
|
@@ -17141,14 +17210,14 @@ Captured output:
|
|
|
17141
17210
|
}
|
|
17142
17211
|
if (!this.updateScheduled && !this.renderTimeout) {
|
|
17143
17212
|
this.updateScheduled = true;
|
|
17144
|
-
const now =
|
|
17213
|
+
const now = this.clock.now();
|
|
17145
17214
|
const elapsed = now - this.lastTime;
|
|
17146
17215
|
const delay = Math.max(this.minTargetFrameTime - elapsed, 0);
|
|
17147
17216
|
if (delay === 0) {
|
|
17148
17217
|
process.nextTick(() => this.activateFrame());
|
|
17149
17218
|
return;
|
|
17150
17219
|
}
|
|
17151
|
-
setTimeout(() => this.activateFrame(), delay);
|
|
17220
|
+
this.clock.setTimeout(() => this.activateFrame(), delay);
|
|
17152
17221
|
}
|
|
17153
17222
|
}
|
|
17154
17223
|
async activateFrame() {
|
|
@@ -17361,7 +17430,7 @@ Captured output:
|
|
|
17361
17430
|
this.automaticMemorySnapshot = true;
|
|
17362
17431
|
}
|
|
17363
17432
|
}
|
|
17364
|
-
this.capabilityTimeoutId = setTimeout(() => {
|
|
17433
|
+
this.capabilityTimeoutId = this.clock.setTimeout(() => {
|
|
17365
17434
|
this.capabilityTimeoutId = null;
|
|
17366
17435
|
this.removeInputHandler(this.capabilityHandler);
|
|
17367
17436
|
}, 5000);
|
|
@@ -17474,7 +17543,7 @@ Captured output:
|
|
|
17474
17543
|
this.dispatchSequenceHandlers(event.raw);
|
|
17475
17544
|
return;
|
|
17476
17545
|
case "paste":
|
|
17477
|
-
this._keyHandler.processPaste(event.
|
|
17546
|
+
this._keyHandler.processPaste(event.bytes, event.metadata);
|
|
17478
17547
|
return;
|
|
17479
17548
|
case "response":
|
|
17480
17549
|
if (event.protocol === "osc") {
|
|
@@ -17712,13 +17781,13 @@ Captured output:
|
|
|
17712
17781
|
}
|
|
17713
17782
|
startMemorySnapshotTimer() {
|
|
17714
17783
|
this.stopMemorySnapshotTimer();
|
|
17715
|
-
this.memorySnapshotTimer = setInterval(() => {
|
|
17784
|
+
this.memorySnapshotTimer = this.clock.setInterval(() => {
|
|
17716
17785
|
this.takeMemorySnapshot();
|
|
17717
17786
|
}, this.memorySnapshotInterval);
|
|
17718
17787
|
}
|
|
17719
17788
|
stopMemorySnapshotTimer() {
|
|
17720
17789
|
if (this.memorySnapshotTimer) {
|
|
17721
|
-
clearInterval(this.memorySnapshotTimer);
|
|
17790
|
+
this.clock.clearInterval(this.memorySnapshotTimer);
|
|
17722
17791
|
this.memorySnapshotTimer = null;
|
|
17723
17792
|
}
|
|
17724
17793
|
}
|
|
@@ -17727,7 +17796,7 @@ Captured output:
|
|
|
17727
17796
|
if (this._isRunning && interval > 0) {
|
|
17728
17797
|
this.startMemorySnapshotTimer();
|
|
17729
17798
|
} else if (interval <= 0 && this.memorySnapshotTimer) {
|
|
17730
|
-
clearInterval(this.memorySnapshotTimer);
|
|
17799
|
+
this.clock.clearInterval(this.memorySnapshotTimer);
|
|
17731
17800
|
this.memorySnapshotTimer = null;
|
|
17732
17801
|
}
|
|
17733
17802
|
}
|
|
@@ -17739,10 +17808,10 @@ Captured output:
|
|
|
17739
17808
|
return;
|
|
17740
17809
|
}
|
|
17741
17810
|
if (this.resizeTimeoutId !== null) {
|
|
17742
|
-
clearTimeout(this.resizeTimeoutId);
|
|
17811
|
+
this.clock.clearTimeout(this.resizeTimeoutId);
|
|
17743
17812
|
this.resizeTimeoutId = null;
|
|
17744
17813
|
}
|
|
17745
|
-
this.resizeTimeoutId = setTimeout(() => {
|
|
17814
|
+
this.resizeTimeoutId = this.clock.setTimeout(() => {
|
|
17746
17815
|
this.resizeTimeoutId = null;
|
|
17747
17816
|
this.processResize(width, height);
|
|
17748
17817
|
}, this.resizeDebounceDelay);
|
|
@@ -17955,7 +18024,7 @@ Captured output:
|
|
|
17955
18024
|
internalPause() {
|
|
17956
18025
|
this._isRunning = false;
|
|
17957
18026
|
if (this.renderTimeout) {
|
|
17958
|
-
clearTimeout(this.renderTimeout);
|
|
18027
|
+
this.clock.clearTimeout(this.renderTimeout);
|
|
17959
18028
|
this.renderTimeout = null;
|
|
17960
18029
|
}
|
|
17961
18030
|
if (!this.rendering) {
|
|
@@ -17970,11 +18039,11 @@ Captured output:
|
|
|
17970
18039
|
if (this.isRunning && !this._isDestroyed) {
|
|
17971
18040
|
this._isRunning = false;
|
|
17972
18041
|
if (this.memorySnapshotTimer) {
|
|
17973
|
-
clearInterval(this.memorySnapshotTimer);
|
|
18042
|
+
this.clock.clearInterval(this.memorySnapshotTimer);
|
|
17974
18043
|
this.memorySnapshotTimer = null;
|
|
17975
18044
|
}
|
|
17976
18045
|
if (this.renderTimeout) {
|
|
17977
|
-
clearTimeout(this.renderTimeout);
|
|
18046
|
+
this.clock.clearTimeout(this.renderTimeout);
|
|
17978
18047
|
this.renderTimeout = null;
|
|
17979
18048
|
}
|
|
17980
18049
|
if (!this.rendering) {
|
|
@@ -18005,15 +18074,15 @@ Captured output:
|
|
|
18005
18074
|
capture.removeListener("write", this.captureCallback);
|
|
18006
18075
|
this.removeExitListeners();
|
|
18007
18076
|
if (this.resizeTimeoutId !== null) {
|
|
18008
|
-
clearTimeout(this.resizeTimeoutId);
|
|
18077
|
+
this.clock.clearTimeout(this.resizeTimeoutId);
|
|
18009
18078
|
this.resizeTimeoutId = null;
|
|
18010
18079
|
}
|
|
18011
18080
|
if (this.capabilityTimeoutId !== null) {
|
|
18012
|
-
clearTimeout(this.capabilityTimeoutId);
|
|
18081
|
+
this.clock.clearTimeout(this.capabilityTimeoutId);
|
|
18013
18082
|
this.capabilityTimeoutId = null;
|
|
18014
18083
|
}
|
|
18015
18084
|
if (this.memorySnapshotTimer) {
|
|
18016
|
-
clearInterval(this.memorySnapshotTimer);
|
|
18085
|
+
this.clock.clearInterval(this.memorySnapshotTimer);
|
|
18017
18086
|
}
|
|
18018
18087
|
if (this._paletteDetector) {
|
|
18019
18088
|
this._paletteDetector.cleanup();
|
|
@@ -18023,7 +18092,7 @@ Captured output:
|
|
|
18023
18092
|
this._cachedPalette = null;
|
|
18024
18093
|
this.emit("destroy" /* DESTROY */);
|
|
18025
18094
|
if (this.renderTimeout) {
|
|
18026
|
-
clearTimeout(this.renderTimeout);
|
|
18095
|
+
this.clock.clearTimeout(this.renderTimeout);
|
|
18027
18096
|
this.renderTimeout = null;
|
|
18028
18097
|
}
|
|
18029
18098
|
this._isRunning = false;
|
|
@@ -18060,7 +18129,7 @@ Captured output:
|
|
|
18060
18129
|
startRenderLoop() {
|
|
18061
18130
|
if (!this._isRunning)
|
|
18062
18131
|
return;
|
|
18063
|
-
this.lastTime =
|
|
18132
|
+
this.lastTime = this.clock.now();
|
|
18064
18133
|
this.frameCount = 0;
|
|
18065
18134
|
this.lastFpsTime = this.lastTime;
|
|
18066
18135
|
this.currentFps = 0;
|
|
@@ -18072,11 +18141,11 @@ Captured output:
|
|
|
18072
18141
|
this.renderTimeout = null;
|
|
18073
18142
|
this.rendering = true;
|
|
18074
18143
|
if (this.renderTimeout) {
|
|
18075
|
-
clearTimeout(this.renderTimeout);
|
|
18144
|
+
this.clock.clearTimeout(this.renderTimeout);
|
|
18076
18145
|
this.renderTimeout = null;
|
|
18077
18146
|
}
|
|
18078
18147
|
try {
|
|
18079
|
-
const now =
|
|
18148
|
+
const now = this.clock.now();
|
|
18080
18149
|
const elapsed = now - this.lastTime;
|
|
18081
18150
|
const deltaTime = elapsed;
|
|
18082
18151
|
this.lastTime = now;
|
|
@@ -18127,12 +18196,12 @@ Captured output:
|
|
|
18127
18196
|
const targetFrameTime = this.immediateRerenderRequested ? this.minTargetFrameTime : this.targetFrameTime;
|
|
18128
18197
|
const delay = Math.max(1, targetFrameTime - Math.floor(overallFrameTime));
|
|
18129
18198
|
this.immediateRerenderRequested = false;
|
|
18130
|
-
this.renderTimeout = setTimeout(() => {
|
|
18199
|
+
this.renderTimeout = this.clock.setTimeout(() => {
|
|
18131
18200
|
this.renderTimeout = null;
|
|
18132
18201
|
this.loop();
|
|
18133
18202
|
}, delay);
|
|
18134
18203
|
} else {
|
|
18135
|
-
clearTimeout(this.renderTimeout);
|
|
18204
|
+
this.clock.clearTimeout(this.renderTimeout);
|
|
18136
18205
|
this.renderTimeout = null;
|
|
18137
18206
|
}
|
|
18138
18207
|
}
|
|
@@ -18329,7 +18398,7 @@ Captured output:
|
|
|
18329
18398
|
const isLegacyTmux = this.capabilities?.terminal?.name?.toLowerCase()?.includes("tmux") && this.capabilities?.terminal?.version?.localeCompare("3.6") < 0;
|
|
18330
18399
|
this._paletteDetector = createTerminalPalette(this.stdin, this.stdout, this.writeOut.bind(this), isLegacyTmux, {
|
|
18331
18400
|
subscribeOsc: this.subscribeOsc.bind(this)
|
|
18332
|
-
});
|
|
18401
|
+
}, this.clock);
|
|
18333
18402
|
}
|
|
18334
18403
|
this._paletteDetectionPromise = this._paletteDetector.detect(options).then((result) => {
|
|
18335
18404
|
this._cachedPalette = result;
|
|
@@ -18340,7 +18409,7 @@ Captured output:
|
|
|
18340
18409
|
}
|
|
18341
18410
|
}
|
|
18342
18411
|
|
|
18343
|
-
export { __toESM, __commonJS, __export, __require, Edge, Gutter, MeasureMode, exports_src, isValidBorderStyle, parseBorderStyle, BorderChars, getBorderFromSides, getBorderSides, borderCharsToArray, BorderCharArrays, KeyEvent, PasteEvent, KeyHandler, InternalKeyHandler, RGBA, hexToRgb, rgbToHex, hsvToRgb, parseColor, fonts, measureText, getCharacterPositions, coordinateToCharacterIndex, renderFontToFrameBuffer, TextAttributes, ATTRIBUTE_BASE_BITS, ATTRIBUTE_BASE_MASK, getBaseAttributes, DebugOverlayCorner, createTextAttributes, attributesWithLink, getLinkId, visualizeRenderableTree, isStyledText, StyledText, stringToStyledText, black, red, green, yellow, blue, magenta, cyan, white, brightBlack, brightRed, brightGreen, brightYellow, brightBlue, brightMagenta, brightCyan, brightWhite, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bold, italic, underline, strikethrough, dim, reverse, blink, fg, bg, link, t, hastToStyledText, SystemClock, nonAlphanumericKeys, parseKeypress, LinearScrollAccel, MacOSScrollAccel, parseAlign, parseAlignItems, parseBoxSizing, parseDimension, parseDirection, parseDisplay, parseEdge, parseFlexDirection, parseGutter, parseJustify, parseLogLevel, parseMeasureMode, parseOverflow, parsePositionType, parseUnit, parseWrap, MouseParser, Selection, convertGlobalToLocalSelection, ASCIIFontSelectionHelper, envRegistry, registerEnvVar, clearEnvCache, generateEnvMarkdown, generateEnvColored, env, StdinParser, treeSitterToTextChunks, treeSitterToStyledText, addDefaultParsers, TreeSitterClient, DataPathsManager, getDataPaths, extToFiletype, pathToFiletype, main, getTreeSitterClient, ExtmarksController, createExtmarksController, TerminalPalette, createTerminalPalette, detectLinks, TextBuffer, SpanInfoStruct, LogLevel2 as LogLevel, setRenderLibPath, resolveRenderLib, OptimizedBuffer, h, isVNode, maybeMakeRenderable, wrapWithDelegates, instantiate, delegate, isValidPercentage, LayoutEvents, RenderableEvents, isRenderable, BaseRenderable, Renderable, RootRenderable, ANSI, defaultKeyAliases, mergeKeyAliases, mergeKeyBindings, getKeyBindingKey, buildKeyBindingsMap, capture, ConsolePosition, TerminalConsole, getObjectsInViewport, buildKittyKeyboardFlags, MouseEvent, MouseButton, createCliRenderer, CliRenderEvents, RendererControlState, CliRenderer };
|
|
18412
|
+
export { __toESM, __commonJS, __export, __require, Edge, Gutter, MeasureMode, exports_src, isValidBorderStyle, parseBorderStyle, BorderChars, getBorderFromSides, getBorderSides, borderCharsToArray, BorderCharArrays, KeyEvent, PasteEvent, KeyHandler, InternalKeyHandler, RGBA, hexToRgb, rgbToHex, hsvToRgb, parseColor, fonts, measureText, getCharacterPositions, coordinateToCharacterIndex, renderFontToFrameBuffer, TextAttributes, ATTRIBUTE_BASE_BITS, ATTRIBUTE_BASE_MASK, getBaseAttributes, DebugOverlayCorner, createTextAttributes, attributesWithLink, getLinkId, visualizeRenderableTree, isStyledText, StyledText, stringToStyledText, black, red, green, yellow, blue, magenta, cyan, white, brightBlack, brightRed, brightGreen, brightYellow, brightBlue, brightMagenta, brightCyan, brightWhite, bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgMagenta, bgCyan, bgWhite, bold, italic, underline, strikethrough, dim, reverse, blink, fg, bg, link, t, hastToStyledText, SystemClock, nonAlphanumericKeys, parseKeypress, LinearScrollAccel, MacOSScrollAccel, parseAlign, parseAlignItems, parseBoxSizing, parseDimension, parseDirection, parseDisplay, parseEdge, parseFlexDirection, parseGutter, parseJustify, parseLogLevel, parseMeasureMode, parseOverflow, parsePositionType, parseUnit, parseWrap, MouseParser, Selection, convertGlobalToLocalSelection, ASCIIFontSelectionHelper, envRegistry, registerEnvVar, clearEnvCache, generateEnvMarkdown, generateEnvColored, env, StdinParser, treeSitterToTextChunks, treeSitterToStyledText, addDefaultParsers, TreeSitterClient, DataPathsManager, getDataPaths, extToFiletype, pathToFiletype, main, getTreeSitterClient, ExtmarksController, createExtmarksController, TerminalPalette, createTerminalPalette, decodePasteBytes, stripAnsiSequences, detectLinks, TextBuffer, SpanInfoStruct, LogLevel2 as LogLevel, setRenderLibPath, resolveRenderLib, OptimizedBuffer, h, isVNode, maybeMakeRenderable, wrapWithDelegates, instantiate, delegate, isValidPercentage, LayoutEvents, RenderableEvents, isRenderable, BaseRenderable, Renderable, RootRenderable, ANSI, defaultKeyAliases, mergeKeyAliases, mergeKeyBindings, getKeyBindingKey, buildKeyBindingsMap, capture, ConsolePosition, TerminalConsole, getObjectsInViewport, buildKittyKeyboardFlags, MouseEvent, MouseButton, createCliRenderer, CliRenderEvents, RendererControlState, CliRenderer };
|
|
18344
18413
|
|
|
18345
|
-
//# debugId=
|
|
18346
|
-
//# sourceMappingURL=index-
|
|
18414
|
+
//# debugId=CCC74025BA5612C764756E2164756E21
|
|
18415
|
+
//# sourceMappingURL=index-nkrr8a4c.js.map
|