@opentui/core 0.5.8 → 0.5.10
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/{chunk-bun-2956gvaq.js → chunk-bun-9gqvxy8c.js} +46 -12
- package/{chunk-bun-2956gvaq.js.map → chunk-bun-9gqvxy8c.js.map} +4 -4
- package/{chunk-bun-b3exa82d.js → chunk-bun-bb3k0yt8.js} +146 -47
- package/chunk-bun-bb3k0yt8.js.map +32 -0
- package/{chunk-node-kr27pp2p.js → chunk-node-6bg8r2m7.js} +146 -47
- package/chunk-node-6bg8r2m7.js.map +32 -0
- package/{chunk-node-mfda59vq.js → chunk-node-f647ts9q.js} +46 -12
- package/{chunk-node-mfda59vq.js.map → chunk-node-f647ts9q.js.map} +4 -4
- package/edit-buffer.d.ts +2 -0
- package/image.d.ts +25 -1
- package/index.bun.js +121 -9
- package/index.bun.js.map +6 -6
- package/index.node.js +121 -9
- package/index.node.js.map +6 -6
- package/package.json +9 -9
- package/post/effects.d.ts +2 -0
- package/renderer.d.ts +21 -2
- package/testing.bun.js +2 -2
- package/testing.js +2 -2
- package/text-buffer.d.ts +0 -1
- package/yoga.bun.js +1 -1
- package/yoga.js +1 -1
- package/zig.d.ts +12 -1
- package/chunk-bun-b3exa82d.js.map +0 -32
- package/chunk-node-kr27pp2p.js.map +0 -32
package/package.json
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
"main": "index.node.js",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"type": "module",
|
|
7
|
-
"version": "0.5.
|
|
7
|
+
"version": "0.5.10",
|
|
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": {
|
|
@@ -75,13 +75,13 @@
|
|
|
75
75
|
"web-tree-sitter": "0.25.10"
|
|
76
76
|
},
|
|
77
77
|
"optionalDependencies": {
|
|
78
|
-
"@opentui/core-darwin-x64": "0.5.
|
|
79
|
-
"@opentui/core-darwin-arm64": "0.5.
|
|
80
|
-
"@opentui/core-linux-x64": "0.5.
|
|
81
|
-
"@opentui/core-linux-arm64": "0.5.
|
|
82
|
-
"@opentui/core-win32-x64": "0.5.
|
|
83
|
-
"@opentui/core-win32-arm64": "0.5.
|
|
84
|
-
"@opentui/core-linux-x64-musl": "0.5.
|
|
85
|
-
"@opentui/core-linux-arm64-musl": "0.5.
|
|
78
|
+
"@opentui/core-darwin-x64": "0.5.10",
|
|
79
|
+
"@opentui/core-darwin-arm64": "0.5.10",
|
|
80
|
+
"@opentui/core-linux-x64": "0.5.10",
|
|
81
|
+
"@opentui/core-linux-arm64": "0.5.10",
|
|
82
|
+
"@opentui/core-win32-x64": "0.5.10",
|
|
83
|
+
"@opentui/core-win32-arm64": "0.5.10",
|
|
84
|
+
"@opentui/core-linux-x64-musl": "0.5.10",
|
|
85
|
+
"@opentui/core-linux-arm64-musl": "0.5.10"
|
|
86
86
|
}
|
|
87
87
|
}
|
package/post/effects.d.ts
CHANGED
|
@@ -23,6 +23,7 @@ export declare class DistortionEffect {
|
|
|
23
23
|
export declare class VignetteEffect {
|
|
24
24
|
private _strength;
|
|
25
25
|
private precomputedAttenuationCellMask;
|
|
26
|
+
private precomputedAttenuation;
|
|
26
27
|
private cachedWidth;
|
|
27
28
|
private cachedHeight;
|
|
28
29
|
private static zeroMatrix;
|
|
@@ -30,6 +31,7 @@ export declare class VignetteEffect {
|
|
|
30
31
|
set strength(newStrength: number);
|
|
31
32
|
get strength(): number;
|
|
32
33
|
private _computeFactors;
|
|
34
|
+
private _preserveGraphemeRuns;
|
|
33
35
|
/**
|
|
34
36
|
* Applies the vignette effect using native colorMatrix with a zero matrix.
|
|
35
37
|
* The zero matrix maps all colors to black, and the attenuation cell masks
|
package/renderer.d.ts
CHANGED
|
@@ -12,12 +12,22 @@ import { KeyHandler, InternalKeyHandler } from "./lib/KeyHandler.js";
|
|
|
12
12
|
import { type EditBufferRenderable } from "./renderables/EditBufferRenderable.js";
|
|
13
13
|
import { type TerminalColors, type GetPaletteOptions } from "./lib/terminal-palette.js";
|
|
14
14
|
import { type Clock } from "./lib/clock.js";
|
|
15
|
+
export type KittyImageTransport = "raw" | "zlib" | "file";
|
|
16
|
+
export interface KittyImageTransportStatus {
|
|
17
|
+
requested: KittyImageTransport;
|
|
18
|
+
effective: "raw" | "zlib" | "png" | "file";
|
|
19
|
+
fileState: "disabled" | "probing" | "ready" | "unsupported" | "timeout" | "io-error" | "cancelled";
|
|
20
|
+
fallback: "none" | "not-ready" | "unavailable" | "budget" | "busy" | "preparation" | "compression";
|
|
21
|
+
pendingFiles: number;
|
|
22
|
+
pendingBytes: number;
|
|
23
|
+
}
|
|
15
24
|
export interface CliRendererConfig {
|
|
16
25
|
stdin?: NodeJS.ReadStream;
|
|
17
26
|
stdout?: NodeJS.WriteStream;
|
|
18
27
|
width?: number;
|
|
19
28
|
height?: number;
|
|
20
29
|
remote?: boolean;
|
|
30
|
+
kittyImageTransport?: KittyImageTransport;
|
|
21
31
|
bufferedOutput?: NativeBufferedOutput;
|
|
22
32
|
exitOnCtrlC?: boolean;
|
|
23
33
|
exitSignals?: NodeJS.Signals[];
|
|
@@ -257,6 +267,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
257
267
|
private minTargetFrameTime;
|
|
258
268
|
private immediateRerenderRequested;
|
|
259
269
|
private updateScheduled;
|
|
270
|
+
private updateGeneration;
|
|
260
271
|
private liveRequestCounter;
|
|
261
272
|
private _controlState;
|
|
262
273
|
private frameCallbacks;
|
|
@@ -274,6 +285,8 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
274
285
|
private animationRequest;
|
|
275
286
|
private resizeTimeoutId;
|
|
276
287
|
private capabilityTimeoutId;
|
|
288
|
+
private kittyTransportTimer;
|
|
289
|
+
private kittyTransportMode;
|
|
277
290
|
private terminalKeepAliveTimer;
|
|
278
291
|
private xtVersionWaiters;
|
|
279
292
|
private splitStartupSeedTimeoutId;
|
|
@@ -347,8 +360,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
347
360
|
private _detachFeed;
|
|
348
361
|
private _detachFeedError;
|
|
349
362
|
private feedIdleRenderScheduled;
|
|
350
|
-
private
|
|
351
|
-
private ordinaryFrameWaitControlState;
|
|
363
|
+
private feedIdleWaitPending;
|
|
352
364
|
get controlState(): RendererControlState;
|
|
353
365
|
/**
|
|
354
366
|
* Construct a renderer over the given streams.
|
|
@@ -398,6 +410,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
398
410
|
get frameId(): number;
|
|
399
411
|
private writeOut;
|
|
400
412
|
private scheduleRenderAfterFeedIdle;
|
|
413
|
+
private cancelRenderAfterFeedIdle;
|
|
401
414
|
private handleNativeRenderRejection;
|
|
402
415
|
private reportNativeRenderFailure;
|
|
403
416
|
private scheduleRenderTimer;
|
|
@@ -437,6 +450,12 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
|
|
|
437
450
|
get liveRequestCount(): number;
|
|
438
451
|
get currentControlState(): string;
|
|
439
452
|
get capabilities(): TerminalCapabilities | null;
|
|
453
|
+
get kittyImageTransport(): KittyImageTransport;
|
|
454
|
+
set kittyImageTransport(mode: KittyImageTransport);
|
|
455
|
+
private startKittyTransportPolling;
|
|
456
|
+
get kittyImageTransportStatus(): KittyImageTransportStatus;
|
|
457
|
+
cancelKittyImageTransport(): void;
|
|
458
|
+
private kittyOutputErrorHandler;
|
|
440
459
|
triggerNotification(message: string, title?: string): boolean;
|
|
441
460
|
get themeMode(): ThemeMode | null;
|
|
442
461
|
waitForThemeMode(timeoutMs?: number): Promise<ThemeMode | null>;
|
package/testing.bun.js
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import {
|
|
3
3
|
ANSI,
|
|
4
4
|
CliRenderer
|
|
5
|
-
} from "./chunk-bun-
|
|
5
|
+
} from "./chunk-bun-bb3k0yt8.js";
|
|
6
6
|
import {
|
|
7
7
|
SystemClock,
|
|
8
8
|
TreeSitterClient
|
|
9
|
-
} from "./chunk-bun-
|
|
9
|
+
} from "./chunk-bun-9gqvxy8c.js";
|
|
10
10
|
|
|
11
11
|
// src/testing/mock-keys.ts
|
|
12
12
|
import { Buffer as Buffer2 } from "buffer";
|
package/testing.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ANSI,
|
|
3
3
|
CliRenderer
|
|
4
|
-
} from "./chunk-node-
|
|
4
|
+
} from "./chunk-node-6bg8r2m7.js";
|
|
5
5
|
import {
|
|
6
6
|
SystemClock,
|
|
7
7
|
TreeSitterClient
|
|
8
|
-
} from "./chunk-node-
|
|
8
|
+
} from "./chunk-node-f647ts9q.js";
|
|
9
9
|
|
|
10
10
|
// src/testing/mock-keys.ts
|
|
11
11
|
import { Buffer as Buffer2 } from "node:buffer";
|
package/text-buffer.d.ts
CHANGED
package/yoga.bun.js
CHANGED
package/yoga.js
CHANGED
package/zig.d.ts
CHANGED
|
@@ -272,7 +272,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
272
272
|
getRenderStats: (renderer: RendererHandle) => NativeRenderStats;
|
|
273
273
|
render: (renderer: RendererHandle, force: boolean) => number;
|
|
274
274
|
repaintSplitFooter: (renderer: RendererHandle, pinnedRenderOffset: number, force: boolean) => NativeRenderOperationResult;
|
|
275
|
-
commitSplitFooterSnapshot: (renderer: RendererHandle, snapshot: OptimizedBuffer, rowColumns: number, startOnNewLine: boolean, trailingNewline: boolean, pinnedRenderOffset: number, force: boolean, beginFrame?: boolean, finalizeFrame?: boolean) => NativeRenderOperationResult;
|
|
275
|
+
commitSplitFooterSnapshot: (renderer: RendererHandle, snapshot: OptimizedBuffer, rowColumns: number, startOnNewLine: boolean, trailingNewline: boolean, pinnedRenderOffset: number, force: boolean, beginFrame?: boolean, finalizeFrame?: boolean, controlOutput?: boolean) => NativeRenderOperationResult;
|
|
276
276
|
getNextBuffer: (renderer: RendererHandle) => OptimizedBuffer;
|
|
277
277
|
getCurrentBuffer: (renderer: RendererHandle) => OptimizedBuffer;
|
|
278
278
|
rendererSetPaletteState: (renderer: RendererHandle, palette: readonly RGBA[], defaultForeground: RGBA, defaultBackground: RGBA, paletteEpoch: number) => void;
|
|
@@ -523,6 +523,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
523
523
|
editBufferGetCursorPosition: (buffer: EditBufferHandle) => LogicalCursor;
|
|
524
524
|
editBufferGetId: (buffer: EditBufferHandle) => number;
|
|
525
525
|
editBufferGetTextBuffer: (buffer: EditBufferHandle) => TextBufferHandle;
|
|
526
|
+
editBufferSetTabWidth: (buffer: EditBufferHandle, width: number) => void;
|
|
526
527
|
editBufferDebugLogRope: (buffer: EditBufferHandle) => void;
|
|
527
528
|
editBufferUndo: (buffer: EditBufferHandle, maxLength: number) => Uint8Array | null;
|
|
528
529
|
editBufferRedo: (buffer: EditBufferHandle, maxLength: number) => Uint8Array | null;
|
|
@@ -648,6 +649,11 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
648
649
|
status: number;
|
|
649
650
|
handle: ImageHandle | null;
|
|
650
651
|
};
|
|
652
|
+
imageCreateFromPixels: (pixels: Uint8Array, width: number, height: number, stride: number, format: number, alpha: number) => {
|
|
653
|
+
status: number;
|
|
654
|
+
handle: ImageHandle | null;
|
|
655
|
+
};
|
|
656
|
+
imageUpdatePixels: (image: ImageHandle, pixels: Uint8Array, stride: number, format: number, alpha: number) => number;
|
|
651
657
|
imageDestroy: (image: ImageHandle) => void;
|
|
652
658
|
imageRetain: (image: ImageHandle) => {
|
|
653
659
|
status: number;
|
|
@@ -687,6 +693,11 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
687
693
|
};
|
|
688
694
|
getTerminalCapabilities: (renderer: RendererHandle) => TerminalCapabilities;
|
|
689
695
|
processCapabilityResponse: (renderer: RendererHandle, response: string) => void;
|
|
696
|
+
setKittyImageTransport: (renderer: RendererHandle, mode: number) => boolean;
|
|
697
|
+
getKittyImageTransport: (renderer: RendererHandle) => Uint32Array;
|
|
698
|
+
pollKittyImageTransport: (renderer: RendererHandle) => boolean;
|
|
699
|
+
cancelKittyImageTransport: (renderer: RendererHandle, failed: boolean) => void;
|
|
700
|
+
processKittyImageReply: (renderer: RendererHandle, response: string) => number;
|
|
690
701
|
encodeUnicode: (text: string, widthMethod: WidthMethod) => {
|
|
691
702
|
ptr: Pointer;
|
|
692
703
|
data: Array<{
|