@opentui/core 0.4.4 → 0.5.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/README.md +4 -4
- package/Renderable.d.ts +3 -0
- package/audio.d.ts +202 -1
- package/buffer.d.ts +3 -0
- package/chunk-bun-ctxxvhwz.js +17416 -0
- package/chunk-bun-ctxxvhwz.js.map +62 -0
- package/chunk-bun-v3e63tzw.js +10157 -0
- package/chunk-bun-v3e63tzw.js.map +32 -0
- package/{index-7z5n7k9m.js → chunk-node-1j69hr31.js} +147 -37
- package/chunk-node-1j69hr31.js.map +32 -0
- package/{index-za1krqsf.js → chunk-node-savhj5rp.js} +1594 -467
- package/chunk-node-savhj5rp.js.map +61 -0
- package/image.d.ts +105 -0
- package/index.bun.js +15128 -0
- package/index.bun.js.map +41 -0
- package/index.d.ts +2 -0
- package/{index.js → index.node.js} +2134 -90
- package/{index.js.map → index.node.js.map} +40 -5
- package/lib/env.d.ts +1 -0
- package/lib/stdin-parser.d.ts +5 -0
- package/lib/tree-sitter/default-parser-assets.bun.d.ts +1 -0
- package/lib/tree-sitter/default-parsers.d.ts +1 -0
- package/lib/tree-sitter/parsers-config.d.ts +2 -2
- package/lib/tree-sitter/types.d.ts +1 -0
- package/lib/tree-sitter/update-assets.js +124 -58
- package/lib/tree-sitter/update-assets.js.map +3 -3
- package/node-asset-target.d.ts +12 -0
- package/node-assets.d.ts +7 -0
- package/node-assets.js +264 -0
- package/node-assets.js.map +16 -0
- package/package.json +24 -14
- package/parser.worker.js +3353 -188
- package/parser.worker.js.map +18 -12
- package/platform/assets.d.ts +5 -0
- package/platform/ffi.d.ts +2 -0
- package/platform/runtime-assets.bun.d.ts +4 -0
- package/platform/runtime-assets.node.d.ts +4 -0
- package/platform/runtime.d.ts +5 -1
- package/renderables/Image.d.ts +44 -0
- package/renderables/index.d.ts +1 -0
- package/renderer.d.ts +14 -0
- package/runtime-plugin.js +2 -2
- package/runtime-plugin.js.map +1 -1
- package/testing.bun.js +1006 -0
- package/testing.bun.js.map +18 -0
- package/testing.js +4 -3
- package/testing.js.map +3 -3
- package/text-buffer-view.d.ts +2 -5
- package/types.d.ts +8 -0
- package/yoga.bun.js +194 -0
- package/yoga.bun.js.map +9 -0
- package/yoga.js +1 -1
- package/zig-structs.d.ts +45 -24
- package/zig.d.ts +70 -7
- package/index-7z5n7k9m.js.map +0 -32
- package/index-za1krqsf.js.map +0 -58
package/yoga.js
CHANGED
package/zig-structs.d.ts
CHANGED
|
@@ -44,6 +44,11 @@ export declare const TerminalCapabilitiesStruct: import("bun-ffi-structs").Defin
|
|
|
44
44
|
zellij: number;
|
|
45
45
|
screen: number;
|
|
46
46
|
unknown: number;
|
|
47
|
+
}>], readonly ["image_protocol", import("bun-ffi-structs").EnumDef<{
|
|
48
|
+
auto: number;
|
|
49
|
+
kitty: number;
|
|
50
|
+
sixel: number;
|
|
51
|
+
blocks: number;
|
|
47
52
|
}>], readonly ["term_name", "char*"], readonly ["term_name_len", "u64", {
|
|
48
53
|
readonly lengthOf: "term_name";
|
|
49
54
|
}], readonly ["term_version", "char*"], readonly ["term_version_len", "u64", {
|
|
@@ -54,6 +59,18 @@ export declare const TerminalCapabilitiesStruct: import("bun-ffi-structs").Defin
|
|
|
54
59
|
unsupported: number;
|
|
55
60
|
}>]], {}>;
|
|
56
61
|
export declare const EncodedCharStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["width", "u8"], readonly ["char", "u32"]], {}>;
|
|
62
|
+
export interface NativeImageInfo {
|
|
63
|
+
width: number;
|
|
64
|
+
height: number;
|
|
65
|
+
sourceWidth: number;
|
|
66
|
+
sourceHeight: number;
|
|
67
|
+
format: number;
|
|
68
|
+
colorStatus: number;
|
|
69
|
+
orientation: number;
|
|
70
|
+
hasAlpha: number;
|
|
71
|
+
}
|
|
72
|
+
export declare const NativeImageInfoStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["width", "u32"], readonly ["height", "u32"], readonly ["sourceWidth", "u32"], readonly ["sourceHeight", "u32"], readonly ["format", "u32"], readonly ["colorStatus", "u32"], readonly ["orientation", "u32"], readonly ["hasAlpha", "u32"]], {}>;
|
|
73
|
+
export declare const ImageDrawOptionsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["x", "i32"], readonly ["y", "i32"], readonly ["width", "u32"], readonly ["height", "u32"], readonly ["pixelWidth", "u32"], readonly ["pixelHeight", "u32"], readonly ["sourceX", "u32"], readonly ["sourceY", "u32"], readonly ["sourceWidth", "u32"], readonly ["sourceHeight", "u32"], readonly ["protocol", "u32"]], {}>;
|
|
57
74
|
export declare const LineInfoStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["startCols", readonly ["u32"]], readonly ["startColsLen", "u32", {
|
|
58
75
|
readonly lengthOf: "startCols";
|
|
59
76
|
}], readonly ["widthCols", readonly ["u32"]], readonly ["widthColsLen", "u32", {
|
|
@@ -146,31 +163,25 @@ export declare const NativeSpanFeedOptionsStruct: import("bun-ffi-structs").Defi
|
|
|
146
163
|
readonly default: 0;
|
|
147
164
|
}]], {}>;
|
|
148
165
|
export declare const NativeSpanFeedStatsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["bytesWritten", "u64"], readonly ["spansCommitted", "u64"], readonly ["chunks", "u32"], readonly ["pendingSpans", "u32"]], {}>;
|
|
149
|
-
export declare const SpanInfoStruct: import("bun-ffi-structs").
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
len: number;
|
|
161
|
-
chunkIndex: number;
|
|
162
|
-
};
|
|
166
|
+
export declare const SpanInfoStruct: import("bun-ffi-structs").StructDef<{
|
|
167
|
+
chunkPtr: Pointer;
|
|
168
|
+
offset: number;
|
|
169
|
+
len: number;
|
|
170
|
+
chunkIndex: number;
|
|
171
|
+
}, {
|
|
172
|
+
offset: number;
|
|
173
|
+
chunkPtr: ArrayBufferLike | import("bun-ffi-structs").Pointer | ArrayBufferView<ArrayBufferLike>;
|
|
174
|
+
len: number;
|
|
175
|
+
chunkIndex: number;
|
|
176
|
+
reserved?: number | null | undefined;
|
|
163
177
|
}>;
|
|
164
|
-
export declare const ReserveInfoStruct: import("bun-ffi-structs").
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
ptr: Pointer;
|
|
172
|
-
len: number;
|
|
173
|
-
};
|
|
178
|
+
export declare const ReserveInfoStruct: import("bun-ffi-structs").StructDef<{
|
|
179
|
+
ptr: Pointer;
|
|
180
|
+
len: number;
|
|
181
|
+
}, {
|
|
182
|
+
len: number;
|
|
183
|
+
ptr: ArrayBufferLike | import("bun-ffi-structs").Pointer | ArrayBufferView<ArrayBufferLike>;
|
|
184
|
+
reserved?: number | null | undefined;
|
|
174
185
|
}>;
|
|
175
186
|
export type AudioCreateOptions = {
|
|
176
187
|
sampleRate?: number;
|
|
@@ -252,6 +263,15 @@ export type AudioStats = {
|
|
|
252
263
|
lastPeak: number;
|
|
253
264
|
lastRms: number;
|
|
254
265
|
};
|
|
266
|
+
export type NativeAudioCaptureStats = {
|
|
267
|
+
framesReceived: bigint;
|
|
268
|
+
framesRead: bigint;
|
|
269
|
+
framesDropped: bigint;
|
|
270
|
+
sampleRate: number;
|
|
271
|
+
channels: number;
|
|
272
|
+
bufferedFrames: number;
|
|
273
|
+
capacityFrames: number;
|
|
274
|
+
};
|
|
255
275
|
export declare const AudioCreateOptionsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["sampleRate", "u32", {
|
|
256
276
|
readonly default: 48000;
|
|
257
277
|
}], readonly ["playbackChannels", "u32", {
|
|
@@ -299,5 +319,6 @@ export declare const AudioVoiceOptionsStruct: import("bun-ffi-structs").DefineSt
|
|
|
299
319
|
}]], {}>;
|
|
300
320
|
export declare const AudioStreamCreateOptionsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["capacityMs", "u32"], readonly ["startupMs", "u32"], readonly ["resumeMs", "u32"], readonly ["volume", "f32"], readonly ["pan", "f32"], readonly ["groupId", "u32"], readonly ["maxProbeBytes", "u32"], readonly ["format", "u32"]], {}>;
|
|
301
321
|
export declare const AudioStreamStatsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["bytesReceived", "u64"], readonly ["framesDecoded", "u64"], readonly ["framesPlayed", "u64"], readonly ["state", "u32"], readonly ["sampleRate", "u32"], readonly ["channels", "u32"], readonly ["bufferedFrames", "u32"], readonly ["capacityFrames", "u32"], readonly ["underruns", "u32"], readonly ["errorCode", "i32"], readonly ["readyGeneration", "u32"]], {}>;
|
|
322
|
+
export declare const AudioCaptureStatsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["framesReceived", "u64"], readonly ["framesRead", "u64"], readonly ["framesDropped", "u64"], readonly ["sampleRate", "u32"], readonly ["channels", "u32"], readonly ["bufferedFrames", "u32"], readonly ["capacityFrames", "u32"]], {}>;
|
|
302
323
|
export declare const AudioStatsStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["soundsLoaded", "u32"], readonly ["voicesActive", "u32"], readonly ["framesMixed", "u64"], readonly ["lockMisses", "u32"], readonly ["lastPeak", "f32"], readonly ["lastRms", "f32"]], {}>;
|
|
303
324
|
export {};
|
package/zig.d.ts
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { type FFICallbackInstance, type Pointer } from "./platform/ffi.js";
|
|
2
|
-
import { type CursorStyle, type CursorStyleOptions, type TargetChannel, type DebugOverlayCorner, type WidthMethod, type TerminalCapabilities, type Highlight, type LineInfo } from "./types.js";
|
|
3
|
-
export type { LineInfo, AllocatorStats, AudioStreamCreateOptions, BuildOptions, NativeAudioStreamStats, NativeRenderStats, };
|
|
2
|
+
import { type CursorStyle, type CursorStyleOptions, type TargetChannel, type DebugOverlayCorner, type WidthMethod, type TerminalCapabilities, type Highlight, type LineInfo, type ImageRenderProtocol } from "./types.js";
|
|
3
|
+
export type { LineInfo, AllocatorStats, AudioStreamCreateOptions, BuildOptions, NativeAudioCaptureStats, NativeAudioStreamStats, NativeRenderStats, };
|
|
4
4
|
import { RGBA } from "./lib/RGBA.js";
|
|
5
5
|
import { OptimizedBuffer } from "./buffer.js";
|
|
6
6
|
import { TextBuffer } from "./text-buffer.js";
|
|
7
|
-
import type { NativeSpanFeedOptions, NativeSpanFeedStats, ReserveInfo, AudioCreateOptions, AudioStartOptions, AudioVoiceOptions, AudioStreamCreateOptions, NativeAudioStreamCloseReason as NativeAudioStreamCloseReasonType, NativeAudioStreamFormat as NativeAudioStreamFormatType, NativeAudioStreamState as NativeAudioStreamStateType, NativeAudioStreamStats, AudioStats, BuildOptions, AllocatorStats, NativeRenderStats } from "./zig-structs.js";
|
|
7
|
+
import type { NativeSpanFeedOptions, NativeSpanFeedStats, ReserveInfo, AudioCreateOptions, AudioStartOptions, AudioVoiceOptions, AudioStreamCreateOptions, NativeAudioStreamCloseReason as NativeAudioStreamCloseReasonType, NativeAudioStreamFormat as NativeAudioStreamFormatType, NativeAudioStreamState as NativeAudioStreamStateType, NativeAudioStreamStats, NativeAudioCaptureStats, AudioStats, BuildOptions, AllocatorStats, NativeRenderStats, NativeImageInfo } from "./zig-structs.js";
|
|
8
8
|
export declare const NativeAudioStreamState: {
|
|
9
9
|
readonly Initializing: 0;
|
|
10
10
|
readonly Buffering: 1;
|
|
@@ -39,6 +39,7 @@ export type SyntaxStyleHandle = NativeHandle<"syntax_style">;
|
|
|
39
39
|
export type EventSinkHandle = NativeHandle<"event_sink">;
|
|
40
40
|
export type AudioEngineHandle = NativeHandle<"audio_engine">;
|
|
41
41
|
export type NativeRenderableHandle = NativeHandle<"native_renderable">;
|
|
42
|
+
export type ImageHandle = NativeHandle<"image">;
|
|
42
43
|
export declare enum LogLevel {
|
|
43
44
|
Error = 0,
|
|
44
45
|
Warn = 1,
|
|
@@ -63,6 +64,10 @@ export interface LogicalCursor {
|
|
|
63
64
|
col: number;
|
|
64
65
|
offset: number;
|
|
65
66
|
}
|
|
67
|
+
export interface MeasureResult {
|
|
68
|
+
lineCount: number;
|
|
69
|
+
widthColsMax: number;
|
|
70
|
+
}
|
|
66
71
|
export interface CursorState {
|
|
67
72
|
x: number;
|
|
68
73
|
y: number;
|
|
@@ -108,6 +113,23 @@ export interface AudioEngineLib {
|
|
|
108
113
|
audioIsPlaybackDeviceDefault: (engine: AudioEngineHandle, index: number) => boolean;
|
|
109
114
|
audioSelectPlaybackDevice: (engine: AudioEngineHandle, index: number) => number;
|
|
110
115
|
audioClearPlaybackDeviceSelection: (engine: AudioEngineHandle) => void;
|
|
116
|
+
audioRefreshCaptureDevices: (engine: AudioEngineHandle) => number;
|
|
117
|
+
audioGetCaptureDeviceCount: (engine: AudioEngineHandle) => number;
|
|
118
|
+
audioGetCaptureDeviceName: (engine: AudioEngineHandle, index: number) => string;
|
|
119
|
+
audioIsCaptureDeviceDefault: (engine: AudioEngineHandle, index: number) => boolean;
|
|
120
|
+
audioSelectCaptureDevice: (engine: AudioEngineHandle, index: number) => number;
|
|
121
|
+
audioClearCaptureDeviceSelection: (engine: AudioEngineHandle) => void;
|
|
122
|
+
audioStartCapture: (engine: AudioEngineHandle, options: AudioStartOptions | undefined, channels: number, capacityFrames: number) => number;
|
|
123
|
+
audioStopCapture: (engine: AudioEngineHandle) => number;
|
|
124
|
+
audioIsCaptureRunning: (engine: AudioEngineHandle) => boolean;
|
|
125
|
+
audioReadCapture: (engine: AudioEngineHandle, outBuffer: Float32Array, frameCount: number) => {
|
|
126
|
+
status: number;
|
|
127
|
+
framesRead: number;
|
|
128
|
+
};
|
|
129
|
+
audioGetCaptureStats: (engine: AudioEngineHandle) => {
|
|
130
|
+
status: number;
|
|
131
|
+
stats: NativeAudioCaptureStats | null;
|
|
132
|
+
};
|
|
111
133
|
audioStart: (engine: AudioEngineHandle, options?: AudioStartOptions | null) => number;
|
|
112
134
|
audioStartMixer: (engine: AudioEngineHandle) => number;
|
|
113
135
|
audioStop: (engine: AudioEngineHandle) => number;
|
|
@@ -195,6 +217,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
195
217
|
bufferColorMatrix: (buffer: OptimizedBufferHandle, matrixPtr: Pointer, cellMaskPtr: Pointer, cellMaskCount: number, strength: number, target: TargetChannel) => void;
|
|
196
218
|
bufferColorMatrixUniform: (buffer: OptimizedBufferHandle, matrixPtr: Pointer, strength: number, target: TargetChannel) => void;
|
|
197
219
|
bufferDrawSuperSampleBuffer: (buffer: OptimizedBufferHandle, x: number, y: number, pixelDataPtr: Pointer, pixelDataLength: number, format: "bgra8unorm" | "rgba8unorm", alignedBytesPerRow: number) => void;
|
|
220
|
+
bufferDrawImage: (buffer: OptimizedBufferHandle, image: ImageHandle, x: number, y: number, width: number, height: number, pixelWidth: number, pixelHeight: number, sourceX: number, sourceY: number, sourceWidth: number, sourceHeight: number, protocol: ImageRenderProtocol) => boolean;
|
|
198
221
|
bufferDrawPackedBuffer: (buffer: OptimizedBufferHandle, dataPtr: Pointer, dataLen: number, posX: number, posY: number, terminalWidthCells: number, terminalHeightCells: number) => void;
|
|
199
222
|
bufferDrawGrayscaleBuffer: (buffer: OptimizedBufferHandle, posX: number, posY: number, intensitiesPtr: Pointer, srcWidth: number, srcHeight: number, fg: RGBA | null, bg: RGBA | null) => void;
|
|
200
223
|
bufferDrawGrayscaleBufferSupersampled: (buffer: OptimizedBufferHandle, posX: number, posY: number, intensitiesPtr: Pointer, srcWidth: number, srcHeight: number, fg: RGBA | null, bg: RGBA | null) => void;
|
|
@@ -347,10 +370,7 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
347
370
|
textBufferViewSetTabIndicator: (view: TextBufferViewHandle, indicator: number) => void;
|
|
348
371
|
textBufferViewSetTabIndicatorColor: (view: TextBufferViewHandle, color: RGBA) => void;
|
|
349
372
|
textBufferViewSetTruncate: (view: TextBufferViewHandle, truncate: boolean) => void;
|
|
350
|
-
textBufferViewMeasureForDimensions: (view: TextBufferViewHandle, width: number, height: number) =>
|
|
351
|
-
lineCount: number;
|
|
352
|
-
widthColsMax: number;
|
|
353
|
-
} | null;
|
|
373
|
+
textBufferViewMeasureForDimensions: (view: TextBufferViewHandle, width: number, height: number) => MeasureResult | null;
|
|
354
374
|
textBufferViewGetVirtualLineCount: (view: TextBufferViewHandle) => number;
|
|
355
375
|
readonly encoder: TextEncoder;
|
|
356
376
|
readonly decoder: TextDecoder;
|
|
@@ -486,6 +506,49 @@ export interface RenderLib extends AudioEngineLib {
|
|
|
486
506
|
syntaxStyleRegister: (style: SyntaxStyleHandle, name: string, fg: RGBA | null, bg: RGBA | null, attributes: number) => number;
|
|
487
507
|
syntaxStyleResolveByName: (style: SyntaxStyleHandle, name: string) => number | null;
|
|
488
508
|
syntaxStyleGetStyleCount: (style: SyntaxStyleHandle) => number;
|
|
509
|
+
imageInfo: (data: Uint8Array) => {
|
|
510
|
+
status: number;
|
|
511
|
+
info: NativeImageInfo;
|
|
512
|
+
};
|
|
513
|
+
imageDecode: (data: Uint8Array) => {
|
|
514
|
+
status: number;
|
|
515
|
+
handle: ImageHandle | null;
|
|
516
|
+
};
|
|
517
|
+
imageCreateFromRgba: (pixels: Uint8Array, width: number, height: number, stride: number) => {
|
|
518
|
+
status: number;
|
|
519
|
+
handle: ImageHandle | null;
|
|
520
|
+
};
|
|
521
|
+
imageDestroy: (image: ImageHandle) => void;
|
|
522
|
+
imageGetInfo: (image: ImageHandle) => {
|
|
523
|
+
status: number;
|
|
524
|
+
info: NativeImageInfo;
|
|
525
|
+
};
|
|
526
|
+
imageGetPixelsPtr: (image: ImageHandle) => Pointer | null;
|
|
527
|
+
imageClone: (image: ImageHandle) => {
|
|
528
|
+
status: number;
|
|
529
|
+
handle: ImageHandle | null;
|
|
530
|
+
};
|
|
531
|
+
imageCopyPixels: (image: ImageHandle, destination: Uint8Array, stride: number, bgra: boolean) => number;
|
|
532
|
+
imageResize: (image: ImageHandle, width: number, height: number, filter: number) => {
|
|
533
|
+
status: number;
|
|
534
|
+
handle: ImageHandle | null;
|
|
535
|
+
};
|
|
536
|
+
imageExtract: (image: ImageHandle, left: number, top: number, width: number, height: number) => {
|
|
537
|
+
status: number;
|
|
538
|
+
handle: ImageHandle | null;
|
|
539
|
+
};
|
|
540
|
+
imageExtend: (image: ImageHandle, top: number, right: number, bottom: number, left: number, background: Uint8Array) => {
|
|
541
|
+
status: number;
|
|
542
|
+
handle: ImageHandle | null;
|
|
543
|
+
};
|
|
544
|
+
imageTransform: (image: ImageHandle, operation: number) => {
|
|
545
|
+
status: number;
|
|
546
|
+
handle: ImageHandle | null;
|
|
547
|
+
};
|
|
548
|
+
imageComposite: (base: ImageHandle, overlay: ImageHandle, left: number, top: number, blend: number, opacity: number) => {
|
|
549
|
+
status: number;
|
|
550
|
+
handle: ImageHandle | null;
|
|
551
|
+
};
|
|
489
552
|
getTerminalCapabilities: (renderer: RendererHandle) => TerminalCapabilities;
|
|
490
553
|
processCapabilityResponse: (renderer: RendererHandle, response: string) => void;
|
|
491
554
|
encodeUnicode: (text: string, widthMethod: WidthMethod) => {
|