@opentui/core 0.4.1 → 0.4.3
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/Renderable.d.ts +2 -7
- package/{index-pcvh9d34.js → index-d5xqskty.js} +194 -71
- package/index-d5xqskty.js.map +58 -0
- package/{index-07zpr2dg.js → index-xt9f071j.js} +163 -176
- package/index-xt9f071j.js.map +32 -0
- package/index.js +62 -33
- package/index.js.map +7 -7
- package/lib/clipboard.d.ts +2 -3
- package/lib/index.d.ts +1 -0
- package/package.json +10 -10
- package/renderables/EditBufferRenderable.d.ts +2 -1
- package/renderables/LineNumberRenderable.d.ts +2 -2
- package/renderables/ScrollBox.d.ts +3 -2
- package/renderables/Select.d.ts +5 -0
- package/renderables/Text.d.ts +1 -1
- package/renderables/TextBufferRenderable.d.ts +3 -2
- package/renderables/TextNode.d.ts +2 -1
- package/testing.js +4 -3
- package/testing.js.map +3 -3
- package/types.d.ts +2 -0
- package/yoga.d.ts +1 -4
- package/yoga.js +1 -1
- package/zig-structs.d.ts +8 -4
- package/zig.d.ts +18 -4
- package/index-07zpr2dg.js.map +0 -33
- package/index-pcvh9d34.js.map +0 -57
package/lib/clipboard.d.ts
CHANGED
|
@@ -2,10 +2,9 @@ import type { RendererHandle, RenderLib } from "../zig.js";
|
|
|
2
2
|
export declare enum ClipboardTarget {
|
|
3
3
|
Clipboard = 0,
|
|
4
4
|
Primary = 1,
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
Select = 2,
|
|
6
|
+
Secondary = 3
|
|
7
7
|
}
|
|
8
|
-
export declare function encodeOsc52Payload(text: string, encoder?: TextEncoder): Uint8Array;
|
|
9
8
|
export declare class Clipboard {
|
|
10
9
|
private lib;
|
|
11
10
|
private rendererPtr;
|
package/lib/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"main": "index.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "0.4.
|
|
7
|
+
"version": "0.4.3",
|
|
8
8
|
"description": "OpenTUI is a TypeScript library on a native Zig core for building terminal user interfaces (TUIs)",
|
|
9
9
|
"license": "MIT",
|
|
10
10
|
"repository": {
|
|
@@ -55,7 +55,7 @@
|
|
|
55
55
|
}
|
|
56
56
|
},
|
|
57
57
|
"dependencies": {
|
|
58
|
-
"bun-ffi-structs": "0.2.
|
|
58
|
+
"bun-ffi-structs": "0.2.4",
|
|
59
59
|
"diff": "9.0.0",
|
|
60
60
|
"marked": "17.0.1",
|
|
61
61
|
"string-width": "7.2.0",
|
|
@@ -65,13 +65,13 @@
|
|
|
65
65
|
"web-tree-sitter": "0.25.10"
|
|
66
66
|
},
|
|
67
67
|
"optionalDependencies": {
|
|
68
|
-
"@opentui/core-darwin-x64": "0.4.
|
|
69
|
-
"@opentui/core-darwin-arm64": "0.4.
|
|
70
|
-
"@opentui/core-linux-x64": "0.4.
|
|
71
|
-
"@opentui/core-linux-arm64": "0.4.
|
|
72
|
-
"@opentui/core-win32-x64": "0.4.
|
|
73
|
-
"@opentui/core-win32-arm64": "0.4.
|
|
74
|
-
"@opentui/core-linux-x64-musl": "0.4.
|
|
75
|
-
"@opentui/core-linux-arm64-musl": "0.4.
|
|
68
|
+
"@opentui/core-darwin-x64": "0.4.3",
|
|
69
|
+
"@opentui/core-darwin-arm64": "0.4.3",
|
|
70
|
+
"@opentui/core-linux-x64": "0.4.3",
|
|
71
|
+
"@opentui/core-linux-arm64": "0.4.3",
|
|
72
|
+
"@opentui/core-win32-x64": "0.4.3",
|
|
73
|
+
"@opentui/core-win32-arm64": "0.4.3",
|
|
74
|
+
"@opentui/core-linux-x64-musl": "0.4.3",
|
|
75
|
+
"@opentui/core-linux-arm64-musl": "0.4.3"
|
|
76
76
|
}
|
|
77
77
|
}
|
|
@@ -68,6 +68,7 @@ export declare abstract class EditBufferRenderable extends Renderable implements
|
|
|
68
68
|
private _keyboardSelectionActive;
|
|
69
69
|
readonly editBuffer: EditBuffer;
|
|
70
70
|
readonly editorView: EditorView;
|
|
71
|
+
private nativeRenderable;
|
|
71
72
|
protected _defaultOptions: {
|
|
72
73
|
textColor: RGBA;
|
|
73
74
|
backgroundColor: string;
|
|
@@ -198,7 +199,7 @@ export declare abstract class EditBufferRenderable extends Renderable implements
|
|
|
198
199
|
}): boolean;
|
|
199
200
|
deleteWordForward(): boolean;
|
|
200
201
|
deleteWordBackward(): boolean;
|
|
201
|
-
private
|
|
202
|
+
private setupNativeRenderable;
|
|
202
203
|
render(buffer: OptimizedBuffer, deltaTime: number): void;
|
|
203
204
|
protected renderSelf(buffer: OptimizedBuffer): void;
|
|
204
205
|
protected renderCursor(buffer: OptimizedBuffer): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Renderable, type RenderableOptions } from "../Renderable.js";
|
|
1
|
+
import { Renderable, type BaseRenderable, type RenderableOptions } from "../Renderable.js";
|
|
2
2
|
import { OptimizedBuffer } from "../buffer.js";
|
|
3
3
|
import type { RenderContext, LineInfoProvider } from "../types.js";
|
|
4
4
|
import { RGBA } from "../lib/RGBA.js";
|
|
@@ -44,7 +44,7 @@ export declare class LineNumberRenderable extends Renderable {
|
|
|
44
44
|
constructor(ctx: RenderContext, options: LineNumberOptions);
|
|
45
45
|
private setTarget;
|
|
46
46
|
add(child: Renderable): number;
|
|
47
|
-
remove(
|
|
47
|
+
remove(child: BaseRenderable): void;
|
|
48
48
|
destroyRecursively(): void;
|
|
49
49
|
clearTarget(): void;
|
|
50
50
|
protected renderSelf(buffer: OptimizedBuffer): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type KeyEvent } from "../lib/index.js";
|
|
2
2
|
import { type ScrollAcceleration } from "../lib/scroll-acceleration.js";
|
|
3
|
-
import type { Renderable, RenderableOptions } from "../Renderable.js";
|
|
3
|
+
import type { BaseRenderable, Renderable, RenderableOptions } from "../Renderable.js";
|
|
4
4
|
import type { MouseEvent } from "../renderer.js";
|
|
5
5
|
import type { RenderContext } from "../types.js";
|
|
6
6
|
import { BoxRenderable, type BoxOptions } from "./Box.js";
|
|
@@ -90,8 +90,9 @@ export declare class ScrollBoxRenderable extends BoxRenderable {
|
|
|
90
90
|
private isAtStickyReengagePoint;
|
|
91
91
|
add(obj: Renderable | VNode<any, any[]>, index?: number): number;
|
|
92
92
|
insertBefore(obj: Renderable | VNode<any, any[]> | unknown, anchor?: Renderable | unknown): number;
|
|
93
|
-
remove(
|
|
93
|
+
remove(child: BaseRenderable): void;
|
|
94
94
|
getChildren(): Renderable[];
|
|
95
|
+
getRenderable(id: string): Renderable | undefined;
|
|
95
96
|
protected onMouseEvent(event: MouseEvent): void;
|
|
96
97
|
handleKeyPress(key: KeyEvent): boolean;
|
|
97
98
|
private resetScrollAccumulators;
|
package/renderables/Select.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export interface SelectRenderableOptions extends RenderableOptions<SelectRendera
|
|
|
27
27
|
showScrollIndicator?: boolean;
|
|
28
28
|
wrapSelection?: boolean;
|
|
29
29
|
showDescription?: boolean;
|
|
30
|
+
showSelectionIndicator?: boolean;
|
|
30
31
|
font?: keyof typeof fonts;
|
|
31
32
|
itemSpacing?: number;
|
|
32
33
|
fastScrollStep?: number;
|
|
@@ -54,6 +55,7 @@ export declare class SelectRenderable extends Renderable {
|
|
|
54
55
|
private _showScrollIndicator;
|
|
55
56
|
private _wrapSelection;
|
|
56
57
|
private _showDescription;
|
|
58
|
+
private _showSelectionIndicator;
|
|
57
59
|
private _font?;
|
|
58
60
|
private _itemSpacing;
|
|
59
61
|
private linesPerItem;
|
|
@@ -75,6 +77,7 @@ export declare class SelectRenderable extends Renderable {
|
|
|
75
77
|
showScrollIndicator: false;
|
|
76
78
|
wrapSelection: false;
|
|
77
79
|
showDescription: true;
|
|
80
|
+
showSelectionIndicator: true;
|
|
78
81
|
itemSpacing: number;
|
|
79
82
|
fastScrollStep: number;
|
|
80
83
|
};
|
|
@@ -97,6 +100,8 @@ export declare class SelectRenderable extends Renderable {
|
|
|
97
100
|
set showScrollIndicator(show: boolean);
|
|
98
101
|
get showDescription(): boolean;
|
|
99
102
|
set showDescription(show: boolean);
|
|
103
|
+
get showSelectionIndicator(): boolean;
|
|
104
|
+
set showSelectionIndicator(show: boolean | null | undefined);
|
|
100
105
|
get wrapSelection(): boolean;
|
|
101
106
|
set wrapSelection(wrap: boolean);
|
|
102
107
|
set backgroundColor(value: ColorInput);
|
package/renderables/Text.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare class TextRenderable extends TextBufferRenderable {
|
|
|
24
24
|
set content(value: StyledText | string);
|
|
25
25
|
private updateTextFromNodes;
|
|
26
26
|
add(obj: TextNodeRenderable | StyledText | string, index?: number): number;
|
|
27
|
-
remove(
|
|
27
|
+
remove(child: BaseRenderable): void;
|
|
28
28
|
insertBefore(obj: BaseRenderable | any, anchor?: TextNodeRenderable): number;
|
|
29
29
|
getTextChildren(): BaseRenderable[];
|
|
30
30
|
clear(): void;
|
|
@@ -5,7 +5,7 @@ import { TextBufferView } from "../text-buffer-view.js";
|
|
|
5
5
|
import { RGBA } from "../lib/RGBA.js";
|
|
6
6
|
import { type RenderContext, type LineInfoProvider } from "../types.js";
|
|
7
7
|
import type { OptimizedBuffer } from "../buffer.js";
|
|
8
|
-
import type
|
|
8
|
+
import { type LineInfo } from "../zig.js";
|
|
9
9
|
import { SyntaxStyle } from "../syntax-style.js";
|
|
10
10
|
export interface TextBufferOptions extends RenderableOptions<TextBufferRenderable> {
|
|
11
11
|
fg?: string | RGBA;
|
|
@@ -37,6 +37,7 @@ export declare abstract class TextBufferRenderable extends Renderable implements
|
|
|
37
37
|
protected textBuffer: TextBuffer;
|
|
38
38
|
protected textBufferView: TextBufferView;
|
|
39
39
|
protected _textBufferSyntaxStyle: SyntaxStyle;
|
|
40
|
+
private nativeRenderable;
|
|
40
41
|
protected _defaultOptions: {
|
|
41
42
|
fg: RGBA;
|
|
42
43
|
bg: RGBA;
|
|
@@ -88,7 +89,7 @@ export declare abstract class TextBufferRenderable extends Renderable implements
|
|
|
88
89
|
protected refreshLocalSelection(): boolean;
|
|
89
90
|
private updateLocalSelection;
|
|
90
91
|
protected updateTextInfo(): void;
|
|
91
|
-
private
|
|
92
|
+
private setupNativeRenderable;
|
|
92
93
|
shouldStartSelection(x: number, y: number): boolean;
|
|
93
94
|
onSelectionChanged(selection: Selection | null): boolean;
|
|
94
95
|
getSelectedText(): string;
|
|
@@ -27,9 +27,10 @@ export declare class TextNodeRenderable extends BaseRenderable {
|
|
|
27
27
|
set children(children: (string | TextNodeRenderable)[]);
|
|
28
28
|
requestRender(): void;
|
|
29
29
|
add(obj: TextNodeRenderable | StyledText | string, index?: number): number;
|
|
30
|
+
private prepareChildInsert;
|
|
30
31
|
replace(obj: TextNodeRenderable | string, index: number): void;
|
|
31
32
|
insertBefore(child: string | TextNodeRenderable | StyledText, anchorNode: TextNodeRenderable | string | unknown): this;
|
|
32
|
-
remove(
|
|
33
|
+
remove(child: BaseRenderable): void;
|
|
33
34
|
clear(): void;
|
|
34
35
|
mergeStyles(parentStyle: {
|
|
35
36
|
fg?: RGBA;
|
package/testing.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ANSI,
|
|
3
3
|
CliRenderer
|
|
4
|
-
} from "./index-
|
|
4
|
+
} from "./index-xt9f071j.js";
|
|
5
5
|
import {
|
|
6
6
|
SystemClock,
|
|
7
7
|
TreeSitterClient
|
|
8
|
-
} from "./index-
|
|
8
|
+
} from "./index-d5xqskty.js";
|
|
9
9
|
|
|
10
10
|
// src/testing/mock-keys.ts
|
|
11
11
|
import { Buffer as Buffer2 } from "node:buffer";
|
|
@@ -792,6 +792,7 @@ function createTerminalCapabilities(overrides = {}) {
|
|
|
792
792
|
bracketed_paste: false,
|
|
793
793
|
hyperlinks: false,
|
|
794
794
|
osc52: false,
|
|
795
|
+
osc52_support: "unknown",
|
|
795
796
|
notifications: false,
|
|
796
797
|
explicit_cursor_positioning: false,
|
|
797
798
|
remote: false,
|
|
@@ -999,5 +1000,5 @@ export {
|
|
|
999
1000
|
KeyCodes
|
|
1000
1001
|
};
|
|
1001
1002
|
|
|
1002
|
-
//# debugId=
|
|
1003
|
+
//# debugId=08D19767EB8430A064756E2164756E21
|
|
1003
1004
|
//# sourceMappingURL=testing.js.map
|
package/testing.js.map
CHANGED
|
@@ -7,12 +7,12 @@
|
|
|
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
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
|
-
"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",
|
|
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 osc52_support: \"unknown\",\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": "08D19767EB8430A064756E2164756E21",
|
|
17
17
|
"names": []
|
|
18
18
|
}
|
package/types.d.ts
CHANGED
|
@@ -44,6 +44,7 @@ export declare enum TargetChannel {
|
|
|
44
44
|
}
|
|
45
45
|
export type WidthMethod = "wcwidth" | "unicode";
|
|
46
46
|
export type TerminalMultiplexer = "none" | "tmux" | "zellij" | "screen" | "unknown";
|
|
47
|
+
export type TerminalCapabilityState = "unknown" | "supported" | "unsupported";
|
|
47
48
|
export interface TerminalInfo {
|
|
48
49
|
name: string;
|
|
49
50
|
version: string;
|
|
@@ -65,6 +66,7 @@ export interface TerminalCapabilities {
|
|
|
65
66
|
bracketed_paste: boolean;
|
|
66
67
|
hyperlinks: boolean;
|
|
67
68
|
osc52: boolean;
|
|
69
|
+
osc52_support: TerminalCapabilityState;
|
|
68
70
|
notifications: boolean;
|
|
69
71
|
explicit_cursor_positioning: boolean;
|
|
70
72
|
remote: boolean;
|
package/yoga.d.ts
CHANGED
|
@@ -218,8 +218,6 @@ export declare class Config {
|
|
|
218
218
|
export declare class Node {
|
|
219
219
|
readonly ptr: Pointer;
|
|
220
220
|
private freed;
|
|
221
|
-
private measureCallback;
|
|
222
|
-
private dirtiedCallback;
|
|
223
221
|
private constructor();
|
|
224
222
|
static create(config?: Config): Node;
|
|
225
223
|
static createForOpenTUI(): Node;
|
|
@@ -339,8 +337,7 @@ export declare class Node {
|
|
|
339
337
|
private setValue;
|
|
340
338
|
private getValue;
|
|
341
339
|
private collectSubtree;
|
|
342
|
-
private
|
|
343
|
-
private closeDirtiedCallback;
|
|
340
|
+
private unregisterCallbacks;
|
|
344
341
|
private markFreed;
|
|
345
342
|
}
|
|
346
343
|
declare const Yoga: {
|
package/yoga.js
CHANGED
package/zig-structs.d.ts
CHANGED
|
@@ -13,11 +13,11 @@ export declare const StyledChunkStruct: import("bun-ffi-structs").DefineStructRe
|
|
|
13
13
|
readonly lengthOf: "text";
|
|
14
14
|
}], readonly ["fg", "pointer", {
|
|
15
15
|
readonly optional: true;
|
|
16
|
-
readonly packTransform: (rgba?: RGBA) =>
|
|
16
|
+
readonly packTransform: (rgba?: RGBA) => Uint16Array<ArrayBufferLike> | null;
|
|
17
17
|
readonly unpackTransform: (ptr?: Pointer) => RGBA | undefined;
|
|
18
18
|
}], readonly ["bg", "pointer", {
|
|
19
19
|
readonly optional: true;
|
|
20
|
-
readonly packTransform: (rgba?: RGBA) =>
|
|
20
|
+
readonly packTransform: (rgba?: RGBA) => Uint16Array<ArrayBufferLike> | null;
|
|
21
21
|
readonly unpackTransform: (ptr?: Pointer) => RGBA | undefined;
|
|
22
22
|
}], readonly ["attributes", "u32", {
|
|
23
23
|
readonly default: 0;
|
|
@@ -48,7 +48,11 @@ export declare const TerminalCapabilitiesStruct: import("bun-ffi-structs").Defin
|
|
|
48
48
|
readonly lengthOf: "term_name";
|
|
49
49
|
}], readonly ["term_version", "char*"], readonly ["term_version_len", "u64", {
|
|
50
50
|
readonly lengthOf: "term_version";
|
|
51
|
-
}], readonly ["term_from_xtversion", "bool_u8"]
|
|
51
|
+
}], readonly ["term_from_xtversion", "bool_u8"], readonly ["osc52_support", import("bun-ffi-structs").EnumDef<{
|
|
52
|
+
unknown: number;
|
|
53
|
+
supported: number;
|
|
54
|
+
unsupported: number;
|
|
55
|
+
}>]], {}>;
|
|
52
56
|
export declare const EncodedCharStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["width", "u8"], readonly ["char", "u32"]], {}>;
|
|
53
57
|
export declare const LineInfoStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["startCols", readonly ["u32"]], readonly ["startColsLen", "u32", {
|
|
54
58
|
readonly lengthOf: "startCols";
|
|
@@ -67,7 +71,7 @@ export declare const CursorStyleOptionsStruct: import("bun-ffi-structs").DefineS
|
|
|
67
71
|
readonly default: 255;
|
|
68
72
|
}], readonly ["color", "pointer", {
|
|
69
73
|
readonly optional: true;
|
|
70
|
-
readonly packTransform: (rgba?: RGBA) =>
|
|
74
|
+
readonly packTransform: (rgba?: RGBA) => Uint16Array<ArrayBufferLike> | null;
|
|
71
75
|
readonly unpackTransform: (ptr?: Pointer) => RGBA | undefined;
|
|
72
76
|
}], readonly ["cursor", "u8", {
|
|
73
77
|
readonly default: 255;
|
package/zig.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export type EditorViewHandle = NativeHandle<"editor_view">;
|
|
|
17
17
|
export type SyntaxStyleHandle = NativeHandle<"syntax_style">;
|
|
18
18
|
export type EventSinkHandle = NativeHandle<"event_sink">;
|
|
19
19
|
export type AudioEngineHandle = NativeHandle<"audio_engine">;
|
|
20
|
+
export type NativeRenderableHandle = NativeHandle<"native_renderable">;
|
|
20
21
|
export declare enum LogLevel {
|
|
21
22
|
Error = 0,
|
|
22
23
|
Warn = 1,
|
|
@@ -69,7 +70,14 @@ export interface NativeYogaLayout {
|
|
|
69
70
|
height: number;
|
|
70
71
|
}
|
|
71
72
|
export type NativeYogaMeasureCallback = (node: Pointer | null, width: number, widthMode: number, height: number, heightMode: number) => void;
|
|
72
|
-
export type NativeYogaDirtiedCallback = () => void;
|
|
73
|
+
export type NativeYogaDirtiedCallback = (node: Pointer | null) => void;
|
|
74
|
+
export declare const NativeMeasureTargetKind: {
|
|
75
|
+
readonly None: 0;
|
|
76
|
+
readonly TextBufferView: 1;
|
|
77
|
+
readonly EditorView: 2;
|
|
78
|
+
};
|
|
79
|
+
export type NativeMeasureTargetKind = (typeof NativeMeasureTargetKind)[keyof typeof NativeMeasureTargetKind];
|
|
80
|
+
export type NativeMeasureTargetHandle = TextBufferViewHandle | EditorViewHandle;
|
|
73
81
|
export interface AudioEngineLib {
|
|
74
82
|
createAudioEngine: (options?: AudioCreateOptions | null) => AudioEngineHandle | null;
|
|
75
83
|
destroyAudioEngine: (engine: AudioEngineHandle) => void;
|
|
@@ -168,7 +176,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
168
176
|
setDebugOverlay: (renderer: RendererHandle, enabled: boolean, corner: DebugOverlayCorner) => void;
|
|
169
177
|
clearTerminal: (renderer: RendererHandle) => void;
|
|
170
178
|
setTerminalTitle: (renderer: RendererHandle, title: string) => void;
|
|
171
|
-
copyToClipboardOSC52: (renderer: RendererHandle, target: number,
|
|
179
|
+
copyToClipboardOSC52: (renderer: RendererHandle, target: number, textUtf8: Uint8Array) => boolean;
|
|
172
180
|
clearClipboardOSC52: (renderer: RendererHandle, target: number) => boolean;
|
|
173
181
|
triggerNotification: (renderer: RendererHandle, message: string, title?: string) => boolean;
|
|
174
182
|
addToHitGrid: (renderer: RendererHandle, x: number, y: number, width: number, height: number, id: number) => void;
|
|
@@ -237,12 +245,14 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
237
245
|
yogaNodeStyleGetBorder: (node: Pointer, edge: number) => number;
|
|
238
246
|
yogaNodeStyleSetValue: (node: Pointer, kind: number, edgeOrGutter: number, unit: number, value: number) => void;
|
|
239
247
|
yogaNodeStyleGetValue: (node: Pointer, kind: number, edgeOrGutter: number) => number | bigint;
|
|
240
|
-
yogaNodeSetMeasureFunc: (node: Pointer,
|
|
248
|
+
yogaNodeSetMeasureFunc: (node: Pointer, enabled: boolean) => void;
|
|
241
249
|
yogaNodeUnsetMeasureFunc: (node: Pointer) => void;
|
|
242
250
|
yogaNodeHasMeasureFunc: (node: Pointer) => boolean;
|
|
243
|
-
yogaNodeSetDirtiedFunc: (node: Pointer,
|
|
251
|
+
yogaNodeSetDirtiedFunc: (node: Pointer, enabled: boolean) => void;
|
|
244
252
|
yogaNodeUnsetDirtiedFunc: (node: Pointer) => void;
|
|
245
253
|
yogaStoreMeasureResult: (width: number, height: number) => void;
|
|
254
|
+
yogaSetMeasureCallback: (callback: Pointer | null) => void;
|
|
255
|
+
yogaSetDirtiedCallback: (callback: Pointer | null) => void;
|
|
246
256
|
createYogaMeasureCallback: (callback: NativeYogaMeasureCallback) => FFICallbackInstance;
|
|
247
257
|
createYogaDirtiedCallback: (callback: NativeYogaDirtiedCallback) => FFICallbackInstance;
|
|
248
258
|
createTextBuffer: (widthMethod: WidthMethod) => TextBuffer;
|
|
@@ -473,6 +483,10 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
473
483
|
info: ReserveInfo | null;
|
|
474
484
|
};
|
|
475
485
|
streamCommitReserved: (stream: Pointer, length: number) => number;
|
|
486
|
+
createNativeRenderable: () => NativeRenderableHandle;
|
|
487
|
+
destroyNativeRenderable: (handle: NativeRenderableHandle) => void;
|
|
488
|
+
nativeRenderableAttachYogaNode: (handle: NativeRenderableHandle, node: Pointer) => boolean;
|
|
489
|
+
nativeRenderableSetMeasureTarget: (handle: NativeRenderableHandle, kind: NativeMeasureTargetKind, target: NativeMeasureTargetHandle | 0) => boolean;
|
|
476
490
|
onNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
|
|
477
491
|
onceNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
|
|
478
492
|
offNativeEvent: (name: string, handler: (data: ArrayBuffer) => void) => void;
|