@opentui/core 0.3.3 → 0.4.0
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/NativeSpanFeed.d.ts +4 -0
- package/{index-mn090kzf.js → index-59t85rvq.js} +3153 -2503
- package/index-59t85rvq.js.map +84 -0
- package/index.js +11256 -77
- package/index.js.map +29 -3
- package/lib/selection.d.ts +2 -1
- package/lib/singleton.d.ts +1 -0
- package/lib/tree-sitter/client.d.ts +17 -1
- package/lib/tree-sitter/index.d.ts +1 -0
- package/lib/tree-sitter/types.d.ts +104 -1
- package/lib/tree-sitter/update-assets.js +8 -6
- package/lib/tree-sitter/update-assets.js.map +3 -3
- package/package.json +27 -34
- package/parser.worker.js +452 -78
- package/parser.worker.js.map +8 -7
- package/platform/ffi.d.ts +6 -3
- package/platform/test.d.ts +12 -0
- package/platform/worker.d.ts +26 -4
- package/platform/worker.node-test.d.ts +1 -0
- package/renderables/Code.d.ts +4 -0
- package/renderables/Markdown.d.ts +1 -0
- package/runtime-plugin-support-configure.js +36 -18
- package/runtime-plugin-support-configure.js.map +1 -9
- package/runtime-plugin-support-configure.node.js +15 -0
- package/runtime-plugin-support.js +4 -19
- package/runtime-plugin-support.js.map +1 -10
- package/runtime-plugin-support.node.js +15 -0
- package/runtime-plugin.js +473 -16
- package/runtime-plugin.js.map +1 -9
- package/runtime-plugin.node.js +15 -0
- package/testing/bun-test-node.d.ts +87 -0
- package/testing/mock-tree-sitter-client.d.ts +4 -0
- package/testing.js +15 -9
- package/testing.js.map +3 -3
- package/zig.d.ts +1 -1
- package/index-jh82sd41.js +0 -44
- package/index-jh82sd41.js.map +0 -10
- package/index-mbck6rbg.js +0 -421
- package/index-mbck6rbg.js.map +0 -10
- package/index-mn090kzf.js.map +0 -84
- package/index-qndc8vq8.js +0 -11670
- package/index-qndc8vq8.js.map +0 -35
package/testing.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
// @bun
|
|
2
1
|
import {
|
|
3
2
|
ANSI,
|
|
4
3
|
CliRenderer,
|
|
4
|
+
SystemClock,
|
|
5
5
|
TreeSitterClient
|
|
6
|
-
} from "./index-
|
|
6
|
+
} from "./index-59t85rvq.js";
|
|
7
7
|
|
|
8
8
|
// src/testing/mock-keys.ts
|
|
9
|
-
import { Buffer as Buffer2 } from "buffer";
|
|
9
|
+
import { Buffer as Buffer2 } from "node:buffer";
|
|
10
10
|
function pasteBytes(text) {
|
|
11
11
|
return Uint8Array.from(Buffer2.from(text));
|
|
12
12
|
}
|
|
@@ -228,7 +228,7 @@ function createMockKeys(renderer, options) {
|
|
|
228
228
|
"]": "\x1D",
|
|
229
229
|
"^": "\x1E",
|
|
230
230
|
_: "\x1F",
|
|
231
|
-
"?": "
|
|
231
|
+
"?": "",
|
|
232
232
|
"/": "\x1F",
|
|
233
233
|
"-": "\x1F",
|
|
234
234
|
".": "\x1E",
|
|
@@ -721,15 +721,21 @@ class MockTreeSitterClient extends TreeSitterClient {
|
|
|
721
721
|
_highlightPromises = [];
|
|
722
722
|
_mockResult = { highlights: [] };
|
|
723
723
|
_autoResolveTimeout;
|
|
724
|
+
_clock;
|
|
724
725
|
constructor(options) {
|
|
725
|
-
super({ dataPath: "/tmp/mock" });
|
|
726
|
+
super({ dataPath: "/tmp/mock" }, { autoStartWorker: false });
|
|
726
727
|
this._autoResolveTimeout = options?.autoResolveTimeout;
|
|
728
|
+
this._clock = options?.clock ?? new SystemClock;
|
|
729
|
+
}
|
|
730
|
+
async destroy() {
|
|
731
|
+
this.resolveAllHighlightOnce();
|
|
732
|
+
await super.destroy();
|
|
727
733
|
}
|
|
728
734
|
async highlightOnce(content, filetype) {
|
|
729
735
|
const { promise, resolve } = Promise.withResolvers();
|
|
730
736
|
let timeout;
|
|
731
737
|
if (this._autoResolveTimeout !== undefined) {
|
|
732
|
-
timeout = setTimeout(() => {
|
|
738
|
+
timeout = this._clock.setTimeout(() => {
|
|
733
739
|
const index = this._highlightPromises.findIndex((p) => p.promise === promise);
|
|
734
740
|
if (index !== -1) {
|
|
735
741
|
resolve(this._mockResult);
|
|
@@ -747,7 +753,7 @@ class MockTreeSitterClient extends TreeSitterClient {
|
|
|
747
753
|
if (index >= 0 && index < this._highlightPromises.length) {
|
|
748
754
|
const item = this._highlightPromises[index];
|
|
749
755
|
if (item.timeout) {
|
|
750
|
-
clearTimeout(item.timeout);
|
|
756
|
+
this._clock.clearTimeout(item.timeout);
|
|
751
757
|
}
|
|
752
758
|
item.resolve(this._mockResult);
|
|
753
759
|
this._highlightPromises.splice(index, 1);
|
|
@@ -756,7 +762,7 @@ class MockTreeSitterClient extends TreeSitterClient {
|
|
|
756
762
|
resolveAllHighlightOnce() {
|
|
757
763
|
for (const { resolve, timeout } of this._highlightPromises) {
|
|
758
764
|
if (timeout) {
|
|
759
|
-
clearTimeout(timeout);
|
|
765
|
+
this._clock.clearTimeout(timeout);
|
|
760
766
|
}
|
|
761
767
|
resolve(this._mockResult);
|
|
762
768
|
}
|
|
@@ -991,5 +997,5 @@ export {
|
|
|
991
997
|
KeyCodes
|
|
992
998
|
};
|
|
993
999
|
|
|
994
|
-
//# debugId=
|
|
1000
|
+
//# debugId=710D918A343D2BFC64756E2164756E21
|
|
995
1001
|
//# sourceMappingURL=testing.js.map
|
package/testing.js.map
CHANGED
|
@@ -6,13 +6,13 @@
|
|
|
6
6
|
"import type { CliRenderer } from \"../renderer.js\"\n\nexport const MouseButtons = {\n LEFT: 0,\n MIDDLE: 1,\n RIGHT: 2,\n\n WHEEL_UP: 64, // 64 = scroll flag + 0\n WHEEL_DOWN: 65, // 64 + 1\n WHEEL_LEFT: 66, // 64 + 2\n WHEEL_RIGHT: 67, // 64 + 3\n} as const\n\nexport type MouseButton = (typeof MouseButtons)[keyof typeof MouseButtons]\n\nexport interface MousePosition {\n x: number\n y: number\n}\n\nexport interface MouseModifiers {\n shift?: boolean\n alt?: boolean\n ctrl?: boolean\n}\n\nexport type MouseEventType = \"down\" | \"up\" | \"move\" | \"drag\" | \"scroll\"\n\nexport interface MouseEventOptions {\n button?: MouseButton\n modifiers?: MouseModifiers\n delayMs?: number\n}\n\nexport function createMockMouse(renderer: CliRenderer) {\n let currentPosition: MousePosition = { x: 0, y: 0 }\n let buttonsPressed = new Set<MouseButton>()\n\n // Generate SGR mouse event sequence\n const generateMouseEvent = (\n type: MouseEventType,\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n modifiers: MouseModifiers = {},\n ): string => {\n // SGR format: \\x1b[<b;x;yM or \\x1b[<b;x;ym\n // where b = button code + modifier flags + motion/scroll flags\n\n let buttonCode: number = button\n\n // Add modifier flags\n if (modifiers.shift) buttonCode |= 4\n if (modifiers.alt) buttonCode |= 8\n if (modifiers.ctrl) buttonCode |= 16\n\n switch (type) {\n case \"move\":\n buttonCode = 32 | 3 // motion flag (32) + button 3 for motion without button press\n if (modifiers.shift) buttonCode |= 4\n if (modifiers.alt) buttonCode |= 8\n if (modifiers.ctrl) buttonCode |= 16\n break\n case \"drag\":\n buttonCode = (buttonsPressed.size > 0 ? Array.from(buttonsPressed)[0] : button) | 32\n if (modifiers.shift) buttonCode |= 4\n if (modifiers.alt) buttonCode |= 8\n if (modifiers.ctrl) buttonCode |= 16\n break\n case \"scroll\":\n // Scroll events already have the scroll flag set in the button code\n break\n }\n\n // Convert to 1-based coordinates for ANSI\n const ansiX = x + 1\n const ansiY = y + 1\n\n let pressRelease = \"M\" // Default to press\n if (type === \"up\" || type === \"move\" || type === \"drag\") {\n pressRelease = \"m\"\n }\n\n return `\\x1b[<${buttonCode};${ansiX};${ansiY}${pressRelease}`\n }\n\n const emitMouseEvent = async (\n type: MouseEventType,\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n options: Omit<MouseEventOptions, \"button\"> = {},\n ): Promise<void> => {\n const { modifiers = {}, delayMs = 0 } = options\n\n const eventSequence = generateMouseEvent(type, x, y, button, modifiers)\n renderer.stdin.emit(\"data\", Buffer.from(eventSequence))\n\n currentPosition = { x, y }\n\n if (type === \"down\" && button < 64) {\n buttonsPressed.add(button)\n } else if (type === \"up\") {\n buttonsPressed.delete(button)\n }\n\n if (delayMs > 0) {\n await new Promise((resolve) => setTimeout(resolve, delayMs))\n }\n }\n\n const moveTo = async (x: number, y: number, options: MouseEventOptions = {}): Promise<void> => {\n const { button = MouseButtons.LEFT, delayMs = 0, modifiers = {} } = options\n\n if (buttonsPressed.size > 0) {\n await emitMouseEvent(\"drag\", x, y, Array.from(buttonsPressed)[0], { modifiers, delayMs })\n } else {\n await emitMouseEvent(\"move\", x, y, button, { modifiers, delayMs })\n }\n\n currentPosition = { x, y }\n }\n\n const click = async (\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { delayMs = 10, modifiers = {} } = options\n\n await emitMouseEvent(\"down\", x, y, button, { modifiers, delayMs })\n await new Promise((resolve) => setTimeout(resolve, delayMs))\n await emitMouseEvent(\"up\", x, y, button, { modifiers, delayMs })\n }\n\n const doubleClick = async (\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { delayMs = 10, modifiers = {} } = options\n\n await click(x, y, button, { modifiers, delayMs })\n await new Promise((resolve) => setTimeout(resolve, delayMs))\n await click(x, y, button, { modifiers, delayMs })\n }\n\n const pressDown = async (\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { modifiers = {}, delayMs = 0 } = options\n await emitMouseEvent(\"down\", x, y, button, { modifiers, delayMs })\n }\n\n const release = async (\n x: number,\n y: number,\n button: MouseButton = MouseButtons.LEFT,\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { modifiers = {}, delayMs = 0 } = options\n await emitMouseEvent(\"up\", x, y, button, { modifiers, delayMs })\n }\n\n const drag = async (\n startX: number,\n startY: number,\n endX: number,\n endY: number,\n button: MouseButton = MouseButtons.LEFT,\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { delayMs = 10, modifiers = {} } = options\n\n await pressDown(startX, startY, button, { modifiers })\n\n const steps = 5\n const dx = (endX - startX) / steps\n const dy = (endY - startY) / steps\n\n for (let i = 1; i <= steps; i++) {\n const currentX = Math.round(startX + dx * i)\n const currentY = Math.round(startY + dy * i)\n await emitMouseEvent(\"drag\", currentX, currentY, button, { modifiers, delayMs })\n }\n\n await release(endX, endY, button, { modifiers })\n }\n\n const scroll = async (\n x: number,\n y: number,\n direction: \"up\" | \"down\" | \"left\" | \"right\",\n options: MouseEventOptions = {},\n ): Promise<void> => {\n const { modifiers = {}, delayMs = 0 } = options\n\n let button: MouseButton\n switch (direction) {\n case \"up\":\n button = MouseButtons.WHEEL_UP\n break\n case \"down\":\n button = MouseButtons.WHEEL_DOWN\n break\n case \"left\":\n button = MouseButtons.WHEEL_LEFT\n break\n case \"right\":\n button = MouseButtons.WHEEL_RIGHT\n break\n }\n\n await emitMouseEvent(\"scroll\", x, y, button, { modifiers, delayMs })\n }\n\n const getCurrentPosition = (): MousePosition => {\n return { ...currentPosition }\n }\n\n const getPressedButtons = (): MouseButton[] => {\n return Array.from(buttonsPressed)\n }\n\n return {\n // Core interaction methods\n moveTo,\n click,\n doubleClick,\n pressDown,\n release,\n drag,\n scroll,\n\n // State getters\n getCurrentPosition,\n getPressedButtons,\n\n // Low-level event emission (for advanced use cases)\n emitMouseEvent,\n }\n}\n",
|
|
7
7
|
"import { Readable, Writable } from \"stream\"\n\nexport class TestWriteStream extends Writable {\n public readonly isTTY = true\n public readonly columns: number\n public readonly rows: number\n\n constructor(columns = 80, rows = 24) {\n super()\n this.columns = columns\n this.rows = rows\n }\n\n override _write(_chunk: any, _encoding: BufferEncoding, callback: (error?: Error | null) => void): void {\n callback()\n }\n\n getColorDepth(): number {\n return 24\n }\n}\n\nexport type TestStdout = TestWriteStream & NodeJS.WriteStream\n\nexport function createTestStdin(): NodeJS.ReadStream {\n return new Readable({ read() {} }) as NodeJS.ReadStream\n}\n\nexport function createTestStdout(columns = 80, rows = 24): NodeJS.WriteStream {\n return new TestWriteStream(columns, rows) as TestStdout\n}\n",
|
|
8
8
|
"import {\n CliRenderer,\n CliRenderEvents,\n type CliRendererConfig,\n type CliRendererExternalOutputEvent,\n type CliRendererFrameEvent,\n} from \"../renderer.js\"\nimport type { NativeSpanFeed } from \"../NativeSpanFeed.js\"\nimport type { NativeRenderStats } from \"../zig.js\"\nimport { createMockKeys } from \"./mock-keys.js\"\nimport { createMockMouse } from \"./mock-mouse.js\"\nimport { createTestStdin, createTestStdout } from \"./test-streams.js\"\nimport type { CapturedFrame } from \"../types.js\"\n\nexport interface TestRendererOptions extends CliRendererConfig {\n width?: number\n height?: number\n kittyKeyboard?: boolean\n otherModifiersMode?: boolean\n}\nexport type TestRenderer = CliRenderer\nexport type MockInput = ReturnType<typeof createMockKeys>\nexport type MockMouse = ReturnType<typeof createMockMouse>\n\ntype RendererFeedAccess = {\n _feed?: NativeSpanFeed | null\n}\n\nexport interface TestFlushOptions {\n maxPasses?: number\n}\n\nexport interface TestVisualIdleOptions {\n quietFrames?: number\n maxFrames?: number\n}\n\nexport interface TestWaitForOptions {\n maxPasses?: number\n}\n\nexport interface TestExternalOutputCommit {\n text: string\n rows: string[]\n width: number\n height: number\n rowColumns: number\n startOnNewLine: boolean\n trailingNewline: boolean\n}\n\nexport interface TestExternalOutput {\n take(): TestExternalOutputCommit[]\n takeText(): string\n clear(): void\n}\n\nexport interface TestRendererSetup {\n renderer: TestRenderer\n mockInput: MockInput\n mockMouse: MockMouse\n renderOnce: () => Promise<void>\n flush: (options?: TestFlushOptions) => Promise<void>\n waitFor: (predicate: () => boolean | Promise<boolean>, options?: TestWaitForOptions) => Promise<void>\n waitForFrame: (\n predicate: (frame: string) => boolean | Promise<boolean>,\n options?: TestWaitForOptions,\n ) => Promise<string>\n waitForVisualIdle: (options?: TestVisualIdleOptions) => Promise<void>\n externalOutput: TestExternalOutput\n getNativeStats: () => NativeRenderStats\n captureCharFrame: () => string\n captureSpans: () => CapturedFrame\n resize: (width: number, height: number) => void\n}\n\nconst decoder = new TextDecoder()\nconst DEFAULT_MAX_PASSES = 20\nconst DEFAULT_MAX_VISUAL_IDLE_FRAMES = 20\nconst DEFAULT_QUIET_FRAMES = 1\n\nasync function drainImmediateWork(): Promise<void> {\n await Promise.resolve()\n await new Promise<void>((resolve) => process.nextTick(resolve))\n await Promise.resolve()\n}\n\nfunction normalizePositiveInteger(value: number | undefined, fallback: number): number {\n if (typeof value !== \"number\" || !Number.isFinite(value) || value <= 0) {\n return fallback\n }\n\n return Math.floor(value)\n}\n\nfunction createWaitError(renderer: TestRenderer, message: string, frame?: string): Error {\n const stats = renderer.getStats()\n const scheduler = renderer.getSchedulerState()\n const details = [\n message,\n `frameId: ${renderer.frameId}`,\n `nativeFrameCount: ${stats.nativeFrameCount}`,\n `cellsUpdated: ${stats.cellsUpdated}`,\n `isRunning: ${scheduler.isRunning}`,\n `isRendering: ${scheduler.isRendering}`,\n `hasScheduledRender: ${scheduler.hasScheduledRender}`,\n ]\n\n if (frame !== undefined) {\n details.push(`lastFrame:\\n${frame}`)\n }\n\n return new Error(details.join(\"\\n\"))\n}\n\nclass TestExternalOutputRecorder implements TestExternalOutput {\n private commits: TestExternalOutputCommit[] = []\n\n constructor(renderer: TestRenderer) {\n renderer.on(CliRenderEvents.EXTERNAL_OUTPUT, this.record)\n renderer.once(CliRenderEvents.DESTROY, () => {\n renderer.off(CliRenderEvents.EXTERNAL_OUTPUT, this.record)\n })\n }\n\n private record = (event: CliRendererExternalOutputEvent): void => {\n const raw = decoder.decode(event.snapshot.getRealCharBytes(false))\n const rows = Array.from({ length: event.snapshot.height }, (_, index) =>\n raw.slice(index * event.snapshot.width, (index + 1) * event.snapshot.width).trimEnd(),\n )\n\n this.commits.push({\n text: rows.join(\"\\n\"),\n rows,\n width: event.snapshot.width,\n height: event.snapshot.height,\n rowColumns: event.rowColumns,\n startOnNewLine: event.startOnNewLine,\n trailingNewline: event.trailingNewline,\n })\n }\n\n public take(): TestExternalOutputCommit[] {\n const commits = this.commits\n this.commits = []\n return commits\n }\n\n public takeText(): string {\n return this.take()\n .flatMap((commit) => commit.rows)\n .join(\"\\n\")\n }\n\n public clear(): void {\n this.commits = []\n }\n}\n\nfunction waitForNextFrameOrIdle(renderer: TestRenderer): Promise<CliRendererFrameEvent | null> {\n const scheduler = renderer.getSchedulerState()\n if (!scheduler.isRunning && !scheduler.isRendering && !scheduler.hasScheduledRender) {\n return Promise.resolve(null)\n }\n\n return new Promise((resolve) => {\n let settled = false\n\n const cleanup = () => {\n renderer.off(CliRenderEvents.FRAME, onFrame)\n renderer.off(CliRenderEvents.DESTROY, onDestroy)\n }\n\n const finish = (event: CliRendererFrameEvent | null) => {\n if (settled) return\n settled = true\n cleanup()\n resolve(event)\n }\n\n const onFrame = (event: CliRendererFrameEvent) => {\n finish(event)\n }\n\n const onDestroy = () => {\n finish(null)\n }\n\n renderer.on(CliRenderEvents.FRAME, onFrame)\n renderer.once(CliRenderEvents.DESTROY, onDestroy)\n\n if (!scheduler.isRunning) {\n renderer.idle().then(() => finish(null))\n }\n })\n}\n\nexport async function createTestRenderer(options: TestRendererOptions): Promise<TestRendererSetup> {\n // Convert legacy kittyKeyboard boolean to new format\n const useKittyKeyboard = options.kittyKeyboard ? { events: true } : options.useKittyKeyboard\n\n const renderer = await setupTestRenderer({\n ...options,\n useKittyKeyboard,\n screenMode: options.screenMode ?? \"main-screen\",\n footerHeight: options.footerHeight ?? 12,\n consoleMode: options.consoleMode ?? \"disabled\",\n externalOutputMode: options.externalOutputMode ?? \"passthrough\",\n })\n const externalOutput = new TestExternalOutputRecorder(renderer)\n\n const mockInput = createMockKeys(renderer, {\n kittyKeyboard: options.kittyKeyboard,\n otherModifiersMode: options.otherModifiersMode,\n })\n const mockMouse = createMockMouse(renderer)\n\n const renderOnce = async () => {\n const feed = (renderer as unknown as RendererFeedAccess)._feed\n if (feed?.isBackpressured()) {\n await feed.idle()\n }\n //@ts-expect-error - this is a test renderer\n await renderer.loop()\n }\n\n const captureCharFrame = () => {\n const currentBuffer = renderer.currentRenderBuffer\n const frameBytes = currentBuffer.getRealCharBytes(true)\n return decoder.decode(frameBytes)\n }\n\n const waitForVisualIdle = async (waitOptions: TestVisualIdleOptions = {}): Promise<void> => {\n const maxFrames = normalizePositiveInteger(waitOptions.maxFrames, DEFAULT_MAX_VISUAL_IDLE_FRAMES)\n const quietFrames = normalizePositiveInteger(waitOptions.quietFrames, DEFAULT_QUIET_FRAMES)\n let consecutiveQuietFrames = 0\n\n for (let frame = 0; frame < maxFrames; frame++) {\n await drainImmediateWork()\n\n const scheduler = renderer.getSchedulerState()\n if (!scheduler.isRunning && !scheduler.isRendering && !scheduler.hasScheduledRender) {\n return\n }\n\n const event = await waitForNextFrameOrIdle(renderer)\n if (!event) {\n return\n }\n\n if (renderer.getNativeStats().cellsUpdated === 0) {\n consecutiveQuietFrames++\n if (consecutiveQuietFrames >= quietFrames) {\n return\n }\n } else {\n consecutiveQuietFrames = 0\n }\n }\n\n await drainImmediateWork()\n const scheduler = renderer.getSchedulerState()\n if (!scheduler.isRunning && !scheduler.isRendering && !scheduler.hasScheduledRender) {\n return\n }\n\n throw createWaitError(renderer, `Timed out waiting for visual idle after ${maxFrames} frames`)\n }\n\n const flush = async (flushOptions: TestFlushOptions = {}): Promise<void> => {\n await waitForVisualIdle({ maxFrames: normalizePositiveInteger(flushOptions.maxPasses, DEFAULT_MAX_PASSES) })\n }\n\n const waitFor = async (\n predicate: () => boolean | Promise<boolean>,\n waitOptions: TestWaitForOptions = {},\n ): Promise<void> => {\n const maxPasses = normalizePositiveInteger(waitOptions.maxPasses, DEFAULT_MAX_PASSES)\n\n for (let pass = 0; pass <= maxPasses; pass++) {\n await drainImmediateWork()\n if (await predicate()) {\n return\n }\n\n if (pass === maxPasses) {\n break\n }\n\n const scheduler = renderer.getSchedulerState()\n if (!scheduler.isRunning && !scheduler.isRendering && !scheduler.hasScheduledRender) {\n break\n }\n\n await waitForNextFrameOrIdle(renderer)\n }\n\n throw createWaitError(renderer, `Timed out waiting for predicate after ${maxPasses} passes`)\n }\n\n const waitForFrame = async (\n predicate: (frame: string) => boolean | Promise<boolean>,\n waitOptions: TestWaitForOptions = {},\n ): Promise<string> => {\n const maxPasses = normalizePositiveInteger(waitOptions.maxPasses, DEFAULT_MAX_PASSES)\n let frame = captureCharFrame()\n\n for (let pass = 0; pass <= maxPasses; pass++) {\n await drainImmediateWork()\n frame = captureCharFrame()\n if (await predicate(frame)) {\n return frame\n }\n\n if (pass === maxPasses) {\n break\n }\n\n const scheduler = renderer.getSchedulerState()\n if (!scheduler.isRunning && !scheduler.isRendering && !scheduler.hasScheduledRender) {\n break\n }\n\n await waitForNextFrameOrIdle(renderer)\n }\n\n frame = captureCharFrame()\n throw createWaitError(renderer, `Timed out waiting for frame predicate after ${maxPasses} passes`, frame)\n }\n\n return {\n renderer,\n mockInput,\n mockMouse,\n renderOnce,\n flush,\n waitFor,\n waitForFrame,\n waitForVisualIdle,\n externalOutput,\n getNativeStats: () => renderer.getNativeStats(),\n captureCharFrame,\n captureSpans: () => {\n const currentBuffer = renderer.currentRenderBuffer\n const lines = currentBuffer.getSpanLines()\n const cursorState = renderer.getCursorState()\n return {\n cols: currentBuffer.width,\n rows: currentBuffer.height,\n cursor: [cursorState.x, cursorState.y] as [number, number],\n lines,\n }\n },\n resize: (width: number, height: number) => {\n //@ts-expect-error - this is a test renderer\n renderer.processResize(width, height)\n },\n }\n}\n\nasync function setupTestRenderer(config: TestRendererOptions) {\n const stdin = config.stdin || createTestStdin()\n const width = config.width || config.stdout?.columns || process.stdout.columns || 80\n const height = config.height || config.stdout?.rows || process.stdout.rows || 24\n const stdout = config.stdout || createTestStdout(width, height)\n\n // Direct construction skips setupTerminal(); native bytes are routed to an\n // explicit memory destination so tests do not depend on process stdout or feed\n // backpressure behavior. CliRenderer still owns native renderer creation and\n // applies the same useThread defaults as production construction.\n return new CliRenderer(stdin, stdout, width, height, {\n ...config,\n bufferedOutput: config.bufferedOutput ?? \"memory\",\n })\n}\n",
|
|
9
|
-
"import { TreeSitterClient } from \"../lib/tree-sitter/index.js\"\nimport type { SimpleHighlight } from \"../lib/tree-sitter/types.js\"\n\nexport class MockTreeSitterClient extends TreeSitterClient {\n private _highlightPromises: Array<{\n promise: Promise<{ highlights?: SimpleHighlight[]; warning?: string; error?: string }>\n resolve: (result: { highlights?: SimpleHighlight[]; warning?: string; error?: string }) => void\n timeout?:
|
|
9
|
+
"import { TreeSitterClient } from \"../lib/tree-sitter/index.js\"\nimport { SystemClock, type Clock, type TimerHandle } from \"../lib/clock.js\"\nimport type { SimpleHighlight } from \"../lib/tree-sitter/types.js\"\n\nexport class MockTreeSitterClient extends TreeSitterClient {\n private _highlightPromises: Array<{\n promise: Promise<{ highlights?: SimpleHighlight[]; warning?: string; error?: string }>\n resolve: (result: { highlights?: SimpleHighlight[]; warning?: string; error?: string }) => void\n timeout?: TimerHandle\n }> = []\n private _mockResult: { highlights?: SimpleHighlight[]; warning?: string; error?: string } = { highlights: [] }\n private _autoResolveTimeout?: number\n private readonly _clock: Clock\n\n constructor(options?: { autoResolveTimeout?: number; clock?: Clock }) {\n super({ dataPath: \"/tmp/mock\" }, { autoStartWorker: false })\n this._autoResolveTimeout = options?.autoResolveTimeout\n this._clock = options?.clock ?? new SystemClock()\n }\n\n override async destroy(): Promise<void> {\n this.resolveAllHighlightOnce()\n await super.destroy()\n }\n\n async highlightOnce(\n content: string,\n filetype: string,\n ): Promise<{ highlights?: SimpleHighlight[]; warning?: string; error?: string }> {\n const { promise, resolve } = Promise.withResolvers<{\n highlights?: SimpleHighlight[]\n warning?: string\n error?: string\n }>()\n\n let timeout: TimerHandle | undefined\n\n if (this._autoResolveTimeout !== undefined) {\n timeout = this._clock.setTimeout(() => {\n const index = this._highlightPromises.findIndex((p) => p.promise === promise)\n if (index !== -1) {\n resolve(this._mockResult)\n this._highlightPromises.splice(index, 1)\n }\n }, this._autoResolveTimeout)\n }\n\n this._highlightPromises.push({ promise, resolve, timeout })\n\n return promise\n }\n\n setMockResult(result: { highlights?: SimpleHighlight[]; warning?: string; error?: string }) {\n this._mockResult = result\n }\n\n resolveHighlightOnce(index: number = 0) {\n if (index >= 0 && index < this._highlightPromises.length) {\n const item = this._highlightPromises[index]\n if (item.timeout) {\n this._clock.clearTimeout(item.timeout)\n }\n item.resolve(this._mockResult)\n this._highlightPromises.splice(index, 1)\n }\n }\n\n resolveAllHighlightOnce() {\n for (const { resolve, timeout } of this._highlightPromises) {\n if (timeout) {\n this._clock.clearTimeout(timeout)\n }\n resolve(this._mockResult)\n }\n this._highlightPromises = []\n }\n\n isHighlighting(): boolean {\n return this._highlightPromises.length > 0\n }\n}\n",
|
|
10
10
|
"import type { CliRenderer } from \"../renderer.js\"\nimport type { TerminalCapabilities, TerminalInfo } from \"../types.js\"\n\nexport interface TerminalCapabilitiesOverrides extends Partial<Omit<TerminalCapabilities, \"terminal\">> {\n terminal?: Partial<TerminalInfo>\n}\n\nexport function createTerminalCapabilities(overrides: TerminalCapabilitiesOverrides = {}): TerminalCapabilities {\n return {\n kitty_keyboard: false,\n kitty_graphics: false,\n rgb: false,\n ansi256: false,\n unicode: \"unicode\",\n sgr_pixels: false,\n color_scheme_updates: false,\n explicit_width: false,\n scaled_text: false,\n sixel: false,\n focus_tracking: false,\n sync: false,\n bracketed_paste: false,\n hyperlinks: false,\n osc52: false,\n notifications: false,\n explicit_cursor_positioning: false,\n remote: false,\n multiplexer: \"none\",\n ...overrides,\n terminal: {\n name: \"\",\n version: \"\",\n from_xtversion: false,\n ...overrides.terminal,\n },\n }\n}\n\nexport function setRendererCapabilities(\n renderer: CliRenderer,\n overrides: TerminalCapabilitiesOverrides = {},\n): TerminalCapabilities {\n const capabilities = createTerminalCapabilities(overrides)\n ;(renderer as unknown as { _capabilities: TerminalCapabilities })._capabilities = capabilities\n return capabilities\n}\n",
|
|
11
11
|
"export function createSpy() {\n const calls: any[][] = []\n const spy = (...args: any[]) => {\n calls.push(args)\n }\n spy.calls = calls\n spy.callCount = () => calls.length\n spy.calledWith = (...expected: any[]) => {\n return calls.some((call) => JSON.stringify(call) === JSON.stringify(expected))\n }\n spy.reset = () => (calls.length = 0)\n return spy\n}\n",
|
|
12
12
|
"import type { Clock, TimerHandle } from \"../lib/clock.js\"\n\ninterface ScheduledTimer {\n id: number\n fireAt: number\n order: number\n delayMs: number\n repeat: boolean\n fn: () => void\n}\n\nfunction compareTimers(left: ScheduledTimer, right: ScheduledTimer): number {\n if (left.fireAt !== right.fireAt) {\n return left.fireAt - right.fireAt\n }\n\n return left.order - right.order\n}\n\nexport class ManualClock implements Clock {\n private time = 0\n private nextId = 1\n private nextOrder = 0\n private readonly timers = new Map<number, ScheduledTimer>()\n\n public now(): number {\n return this.time\n }\n\n public setTime(time: number): void {\n const targetTime = Math.floor(time)\n\n if (targetTime >= this.time) {\n this.advance(targetTime - this.time)\n return\n }\n\n this.time = targetTime\n }\n\n public setTimeout(fn: () => void, delayMs: number): TimerHandle {\n return this.schedule(fn, delayMs, false)\n }\n\n public clearTimeout(handle: TimerHandle): void {\n this.timers.delete(Number(handle))\n }\n\n public setInterval(fn: () => void, delayMs: number): TimerHandle {\n return this.schedule(fn, delayMs, true)\n }\n\n public clearInterval(handle: TimerHandle): void {\n this.clearTimeout(handle)\n }\n\n public advance(delayMs: number): void {\n const targetTime = this.time + Math.max(0, Math.floor(delayMs))\n\n while (true) {\n const nextTimer = this.peekNextTimer()\n if (!nextTimer || nextTimer.fireAt > targetTime) {\n break\n }\n\n this.timers.delete(nextTimer.id)\n this.time = nextTimer.fireAt\n nextTimer.fn()\n\n if (nextTimer.repeat && !this.timers.has(nextTimer.id)) {\n this.timers.set(nextTimer.id, {\n ...nextTimer,\n fireAt: this.time + nextTimer.delayMs,\n order: this.nextOrder++,\n })\n }\n }\n\n this.time = targetTime\n }\n\n public runAll(): void {\n while (true) {\n const nextTimer = this.peekNextTimer()\n if (!nextTimer) {\n return\n }\n\n this.advance(nextTimer.fireAt - this.time)\n }\n }\n\n private schedule(fn: () => void, delayMs: number, repeat: boolean): number {\n const id = this.nextId++\n const normalizedDelay = Math.max(0, Math.floor(delayMs))\n this.timers.set(id, {\n id,\n fireAt: this.time + normalizedDelay,\n order: this.nextOrder++,\n delayMs: normalizedDelay,\n repeat,\n fn,\n })\n return id\n }\n\n private peekNextTimer(): ScheduledTimer | null {\n let nextTimer: ScheduledTimer | null = null\n for (const timer of this.timers.values()) {\n if (!nextTimer || compareTimers(timer, nextTimer) < 0) {\n nextTimer = timer\n }\n }\n\n return nextTimer\n }\n}\n",
|
|
13
13
|
"import type { TestRenderer } from \"./test-renderer.js\"\nimport { CliRenderEvents } from \"../renderer.js\"\n\nexport interface RecordBuffersOptions {\n fg?: boolean\n bg?: boolean\n attributes?: boolean\n}\n\nexport interface RecordedBuffers {\n fg?: Uint16Array\n bg?: Uint16Array\n attributes?: Uint8Array\n}\n\nexport interface RecordedFrame {\n frame: string\n timestamp: number\n frameNumber: number\n buffers?: RecordedBuffers\n}\n\nexport interface TestRecorderOptions {\n recordBuffers?: RecordBuffersOptions\n now?: () => number\n}\n\n/**\n * TestRecorder records frames from a TestRenderer by listening to rendered frame events.\n * It captures the character frame after each native render pass.\n */\nexport class TestRecorder {\n private renderer: TestRenderer\n private frames: RecordedFrame[] = []\n private recording: boolean = false\n private frameNumber: number = 0\n private startTime: number = 0\n private decoder = new TextDecoder()\n private recordBuffers: RecordBuffersOptions\n private now: () => number\n private readonly onFrame = () => {\n if (!this.recording) return\n this.captureFrame()\n }\n\n constructor(renderer: TestRenderer, options?: TestRecorderOptions) {\n this.renderer = renderer\n this.recordBuffers = options?.recordBuffers || {}\n this.now = options?.now ?? (() => performance.now())\n }\n\n /**\n * Start recording frames.\n */\n public rec(): void {\n if (this.recording) {\n return\n }\n\n this.recording = true\n this.frames = []\n this.frameNumber = 0\n this.startTime = this.now()\n this.renderer.on(CliRenderEvents.FRAME, this.onFrame)\n }\n\n /**\n * Stop recording frames.\n */\n public stop(): void {\n if (!this.recording) {\n return\n }\n\n this.recording = false\n this.renderer.off(CliRenderEvents.FRAME, this.onFrame)\n }\n\n /**\n * Get the recorded frames.\n */\n public get recordedFrames(): RecordedFrame[] {\n return [...this.frames]\n }\n\n /**\n * Clear all recorded frames.\n */\n public clear(): void {\n this.frames = []\n this.frameNumber = 0\n }\n\n /**\n * Check if currently recording.\n */\n public get isRecording(): boolean {\n return this.recording\n }\n\n /**\n * Capture the current frame from the renderer's buffer.\n */\n private captureFrame(): void {\n const currentBuffer = this.renderer.currentRenderBuffer\n const frameBytes = currentBuffer.getRealCharBytes(true)\n const frame = this.decoder.decode(frameBytes)\n\n const recordedFrame: RecordedFrame = {\n frame,\n timestamp: this.now() - this.startTime,\n frameNumber: this.frameNumber++,\n }\n\n // Optionally record buffer data from currentRenderBuffer\n if (this.recordBuffers.fg || this.recordBuffers.bg || this.recordBuffers.attributes) {\n const buffers = currentBuffer.buffers\n recordedFrame.buffers = {}\n\n if (this.recordBuffers.fg) {\n recordedFrame.buffers.fg = new Uint16Array(buffers.fg)\n }\n if (this.recordBuffers.bg) {\n recordedFrame.buffers.bg = new Uint16Array(buffers.bg)\n }\n if (this.recordBuffers.attributes) {\n recordedFrame.buffers.attributes = new Uint8Array(buffers.attributes)\n }\n }\n\n this.frames.push(recordedFrame)\n }\n}\n"
|
|
14
14
|
],
|
|
15
|
-
"mappings": "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",
|
|
16
|
-
"debugId": "
|
|
15
|
+
"mappings": "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",
|
|
16
|
+
"debugId": "710D918A343D2BFC64756E2164756E21",
|
|
17
17
|
"names": []
|
|
18
18
|
}
|
package/zig.d.ts
CHANGED
|
@@ -369,7 +369,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
369
369
|
textBufferRemoveHighlightsByRef: (buffer: TextBufferHandle, hlRef: number) => void;
|
|
370
370
|
textBufferClearLineHighlights: (buffer: TextBufferHandle, lineIdx: number) => void;
|
|
371
371
|
textBufferClearAllHighlights: (buffer: TextBufferHandle) => void;
|
|
372
|
-
textBufferSetSyntaxStyle: (buffer: TextBufferHandle, style: SyntaxStyleHandle | null) =>
|
|
372
|
+
textBufferSetSyntaxStyle: (buffer: TextBufferHandle, style: SyntaxStyleHandle | null) => boolean;
|
|
373
373
|
textBufferGetLineHighlights: (buffer: TextBufferHandle, lineIdx: number) => Array<Highlight>;
|
|
374
374
|
textBufferGetHighlightCount: (buffer: TextBufferHandle) => number;
|
|
375
375
|
getArenaAllocatedBytes: () => number;
|
package/index-jh82sd41.js
DELETED
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
// @bun
|
|
2
|
-
import {
|
|
3
|
-
createRuntimePlugin
|
|
4
|
-
} from "./index-mbck6rbg.js";
|
|
5
|
-
|
|
6
|
-
// src/runtime-plugin-support-configure.ts
|
|
7
|
-
var {plugin: registerBunPlugin } = globalThis.Bun;
|
|
8
|
-
var runtimePluginSupportInstalledKey = "__opentuiCoreRuntimePluginSupportInstalled__";
|
|
9
|
-
function normalizeRewriteKey(rewrite) {
|
|
10
|
-
return `${rewrite?.nodeModulesRuntimeSpecifiers ?? true}:${rewrite?.nodeModulesBareSpecifiers ?? false}`;
|
|
11
|
-
}
|
|
12
|
-
function assertCompatibleInstall(install, options) {
|
|
13
|
-
for (const specifier of Object.keys(options.additional ?? {})) {
|
|
14
|
-
if (!install.additionalSpecifiers.has(specifier)) {
|
|
15
|
-
throw new Error(`OpenTUI Core runtime plugin support is already installed without ${specifier}. Call ensureRuntimePluginSupport({ additional }) from @opentui/core/runtime-plugin-support/configure before importing @opentui/core/runtime-plugin-support.`);
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
if (options.core && options.core !== install.core) {
|
|
19
|
-
throw new Error("OpenTUI Core runtime plugin support is already installed with a different core runtime module.");
|
|
20
|
-
}
|
|
21
|
-
if (options.rewrite && normalizeRewriteKey(options.rewrite) !== install.rewriteKey) {
|
|
22
|
-
throw new Error("OpenTUI Core runtime plugin support is already installed with different rewrite options.");
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
function ensureRuntimePluginSupport(options = {}) {
|
|
26
|
-
const state = globalThis;
|
|
27
|
-
const install = state[runtimePluginSupportInstalledKey];
|
|
28
|
-
if (install) {
|
|
29
|
-
assertCompatibleInstall(install, options);
|
|
30
|
-
return false;
|
|
31
|
-
}
|
|
32
|
-
registerBunPlugin(createRuntimePlugin(options));
|
|
33
|
-
state[runtimePluginSupportInstalledKey] = {
|
|
34
|
-
additionalSpecifiers: new Set(Object.keys(options.additional ?? {})),
|
|
35
|
-
core: options.core,
|
|
36
|
-
rewriteKey: normalizeRewriteKey(options.rewrite)
|
|
37
|
-
};
|
|
38
|
-
return true;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
export { ensureRuntimePluginSupport };
|
|
42
|
-
|
|
43
|
-
//# debugId=09C0597CB92E654F64756E2164756E21
|
|
44
|
-
//# sourceMappingURL=index-jh82sd41.js.map
|
package/index-jh82sd41.js.map
DELETED
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../src/runtime-plugin-support-configure.ts"],
|
|
4
|
-
"sourcesContent": [
|
|
5
|
-
"import { plugin as registerBunPlugin } from \"bun\"\nimport { createRuntimePlugin, type CreateRuntimePluginOptions, type RuntimeModuleEntry } from \"./runtime-plugin.js\"\n\nconst runtimePluginSupportInstalledKey = \"__opentuiCoreRuntimePluginSupportInstalled__\"\n\ninterface RuntimePluginSupportInstall {\n additionalSpecifiers: ReadonlySet<string>\n core?: RuntimeModuleEntry\n rewriteKey: string\n}\n\ntype RuntimePluginSupportState = typeof globalThis & {\n [runtimePluginSupportInstalledKey]?: RuntimePluginSupportInstall\n}\n\nfunction normalizeRewriteKey(rewrite: CreateRuntimePluginOptions[\"rewrite\"] | undefined): string {\n return `${rewrite?.nodeModulesRuntimeSpecifiers ?? true}:${rewrite?.nodeModulesBareSpecifiers ?? false}`\n}\n\nfunction assertCompatibleInstall(install: RuntimePluginSupportInstall, options: CreateRuntimePluginOptions): void {\n for (const specifier of Object.keys(options.additional ?? {})) {\n if (!install.additionalSpecifiers.has(specifier)) {\n throw new Error(\n `OpenTUI Core runtime plugin support is already installed without ${specifier}. Call ensureRuntimePluginSupport({ additional }) from @opentui/core/runtime-plugin-support/configure before importing @opentui/core/runtime-plugin-support.`,\n )\n }\n }\n\n if (options.core && options.core !== install.core) {\n throw new Error(\"OpenTUI Core runtime plugin support is already installed with a different core runtime module.\")\n }\n\n if (options.rewrite && normalizeRewriteKey(options.rewrite) !== install.rewriteKey) {\n throw new Error(\"OpenTUI Core runtime plugin support is already installed with different rewrite options.\")\n }\n}\n\nexport function ensureRuntimePluginSupport(options: CreateRuntimePluginOptions = {}): boolean {\n const state = globalThis as RuntimePluginSupportState\n const install = state[runtimePluginSupportInstalledKey]\n\n if (install) {\n assertCompatibleInstall(install, options)\n return false\n }\n\n registerBunPlugin(createRuntimePlugin(options))\n\n state[runtimePluginSupportInstalledKey] = {\n additionalSpecifiers: new Set(Object.keys(options.additional ?? {})),\n core: options.core,\n rewriteKey: normalizeRewriteKey(options.rewrite),\n }\n return true\n}\n\nexport { createRuntimePlugin, runtimeModuleIdForSpecifier } from \"./runtime-plugin.js\"\nexport type {\n CreateRuntimePluginOptions,\n RuntimeModuleEntry,\n RuntimeModuleExports,\n RuntimeModuleLoader,\n} from \"./runtime-plugin.js\"\n"
|
|
6
|
-
],
|
|
7
|
-
"mappings": ";;;;;;AAAA;AAGA,IAAM,mCAAmC;AAYzC,SAAS,mBAAmB,CAAC,SAAoE;AAAA,EAC/F,OAAO,GAAG,SAAS,gCAAgC,QAAQ,SAAS,6BAA6B;AAAA;AAGnG,SAAS,uBAAuB,CAAC,SAAsC,SAA2C;AAAA,EAChH,WAAW,aAAa,OAAO,KAAK,QAAQ,cAAc,CAAC,CAAC,GAAG;AAAA,IAC7D,IAAI,CAAC,QAAQ,qBAAqB,IAAI,SAAS,GAAG;AAAA,MAChD,MAAM,IAAI,MACR,oEAAoE,uKACtE;AAAA,IACF;AAAA,EACF;AAAA,EAEA,IAAI,QAAQ,QAAQ,QAAQ,SAAS,QAAQ,MAAM;AAAA,IACjD,MAAM,IAAI,MAAM,gGAAgG;AAAA,EAClH;AAAA,EAEA,IAAI,QAAQ,WAAW,oBAAoB,QAAQ,OAAO,MAAM,QAAQ,YAAY;AAAA,IAClF,MAAM,IAAI,MAAM,0FAA0F;AAAA,EAC5G;AAAA;AAGK,SAAS,0BAA0B,CAAC,UAAsC,CAAC,GAAY;AAAA,EAC5F,MAAM,QAAQ;AAAA,EACd,MAAM,UAAU,MAAM;AAAA,EAEtB,IAAI,SAAS;AAAA,IACX,wBAAwB,SAAS,OAAO;AAAA,IACxC,OAAO;AAAA,EACT;AAAA,EAEA,kBAAkB,oBAAoB,OAAO,CAAC;AAAA,EAE9C,MAAM,oCAAoC;AAAA,IACxC,sBAAsB,IAAI,IAAI,OAAO,KAAK,QAAQ,cAAc,CAAC,CAAC,CAAC;AAAA,IACnE,MAAM,QAAQ;AAAA,IACd,YAAY,oBAAoB,QAAQ,OAAO;AAAA,EACjD;AAAA,EACA,OAAO;AAAA;",
|
|
8
|
-
"debugId": "09C0597CB92E654F64756E2164756E21",
|
|
9
|
-
"names": []
|
|
10
|
-
}
|