@jitl/opentui-core 0.1.97 → 0.2.15
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 +2 -2
- package/README.md +2 -1
- package/Renderable.d.ts +12 -1
- package/audio.d.ts +89 -0
- package/buffer.d.ts +6 -5
- package/console.d.ts +3 -1
- package/edit-buffer.d.ts +1 -1
- package/editor-view.d.ts +1 -1
- package/{index-yxe6e14n.js → index-46f5e8m6.js} +1388 -1721
- package/index-46f5e8m6.js.map +36 -0
- package/index-5zwezmgj.js +639 -0
- package/index-5zwezmgj.js.map +11 -0
- package/index-axv7cw60.js +44 -0
- package/index-axv7cw60.js.map +10 -0
- package/{index-rhfjv9c1.js → index-g9agybj3.js} +4626 -984
- package/index-g9agybj3.js.map +82 -0
- package/index-k18nf2r7.js +21 -0
- package/{ffi-x3zvcksd.js.map → index-k18nf2r7.js.map} +1 -1
- package/{index-tkk6cmr2.js → index-rp7vz5rh.js} +125 -23
- package/index-rp7vz5rh.js.map +10 -0
- package/{index-kcpn1hka.js → index-xwsdfq5x.js} +16 -6
- package/index-xwsdfq5x.js.map +10 -0
- package/index.d.ts +1 -0
- package/index.js +37 -17
- package/index.js.map +1 -1
- package/lib/RGBA.d.ts +22 -6
- package/lib/clipboard.d.ts +1 -1
- package/lib/{keymapping.d.ts → keybinding.internal.d.ts} +10 -2
- package/lib/objects-in-viewport.d.ts +4 -4
- package/lib/parse.keypress-kitty.d.ts +1 -0
- package/lib/parse.keypress.d.ts +1 -0
- package/lib/render-geometry.d.ts +8 -0
- package/lib/stdin-parser.d.ts +4 -1
- package/lib/terminal-capability-detection.d.ts +2 -0
- package/lib/terminal-palette.d.ts +20 -5
- package/lib/tree-sitter/assets/update.d.ts +1 -0
- package/lib/tree-sitter/client.d.ts +2 -0
- package/lib/tree-sitter/default-parsers.d.ts +1 -1
- package/lib/tree-sitter/index.d.ts +0 -2
- package/lib/tree-sitter/update-assets.d.ts +3 -0
- package/lib/tree-sitter/update-assets.js +377 -0
- package/lib/tree-sitter/update-assets.js.map +12 -0
- package/lib/tree-sitter-styled-text.d.ts +6 -4
- package/node22-bun-ffi-structs-ha8fmzzb.js +396 -0
- package/node22-bun-ffi-structs-ha8fmzzb.js.map +10 -0
- package/package.json +23 -22
- package/parser.worker.js +161 -24
- package/parser.worker.js.map +12 -5
- package/platform/bun-ffi-structs.d.ts +2 -0
- package/platform/ffi.d.ts +126 -0
- package/platform/node22-bun-ffi-structs.d.ts +33 -0
- package/platform/node22-ffi.d.ts +33 -0
- package/{compat → platform}/runtime.d.ts +6 -0
- package/platform/worker.d.ts +4 -0
- package/renderables/Code.d.ts +4 -0
- package/renderables/Markdown.d.ts +62 -0
- package/renderables/ScrollBox.d.ts +1 -0
- package/renderables/Select.d.ts +3 -1
- package/renderables/TabSelect.d.ts +3 -1
- package/renderables/TextBufferRenderable.d.ts +1 -0
- package/renderables/TextTable.d.ts +15 -1
- package/renderables/Textarea.d.ts +5 -3
- package/renderables/markdown-parser.d.ts +1 -0
- package/renderer-theme-mode.d.ts +29 -0
- package/renderer.d.ts +142 -16
- package/runtime-plugin-support-configure.d.ts +4 -0
- package/runtime-plugin-support-configure.js +20 -0
- package/{index-re3ntm60.js.map → runtime-plugin-support-configure.js.map} +1 -1
- package/runtime-plugin-support.d.ts +3 -3
- package/runtime-plugin-support.js +9 -18
- package/runtime-plugin-support.js.map +3 -3
- package/runtime-plugin.d.ts +1 -4
- package/runtime-plugin.js +5 -5
- package/syntax-style.d.ts +11 -3
- package/testing/terminal-capabilities.d.ts +7 -0
- package/testing/test-recorder.d.ts +6 -6
- package/testing/test-renderer.d.ts +34 -2
- package/testing.d.ts +2 -0
- package/testing.js +329 -23
- package/testing.js.map +7 -5
- package/text-buffer-view.d.ts +2 -1
- package/text-buffer.d.ts +1 -1
- package/types.d.ts +33 -1
- package/zig-structs.d.ts +111 -20
- package/zig.d.ts +57 -7
- package/3d/SpriteResourceManager.d.ts +0 -74
- package/3d/SpriteUtils.d.ts +0 -13
- package/3d/TextureUtils.d.ts +0 -24
- package/3d/ThreeRenderable.d.ts +0 -40
- package/3d/WGPURenderer.d.ts +0 -61
- package/3d/animation/ExplodingSpriteEffect.d.ts +0 -71
- package/3d/animation/PhysicsExplodingSpriteEffect.d.ts +0 -76
- package/3d/animation/SpriteAnimator.d.ts +0 -124
- package/3d/animation/SpriteParticleGenerator.d.ts +0 -62
- package/3d/canvas.d.ts +0 -44
- package/3d/index.d.ts +0 -12
- package/3d/physics/PlanckPhysicsAdapter.d.ts +0 -19
- package/3d/physics/RapierPhysicsAdapter.d.ts +0 -19
- package/3d/physics/physics-interface.d.ts +0 -27
- package/3d.d.ts +0 -2
- package/3d.js +0 -33843
- package/3d.js.map +0 -155
- package/Worker-vajwjk0s.js +0 -94
- package/Worker-vajwjk0s.js.map +0 -10
- package/compat/FFIType.d.ts +0 -304
- package/compat/Worker.d.ts +0 -1
- package/compat/bun-ffi-structs.d.ts +0 -2
- package/compat/ffi.d.ts +0 -86
- package/compat/nodejs/Worker.d.ts +0 -16
- package/compat/nodejs/bun-ffi-structs/index.d.ts +0 -46
- package/compat/nodejs/ffi.d.ts +0 -21
- package/compat/nodejs/registerResolveJs.d.ts +0 -1
- package/compat/nodejs/runtime.d.ts +0 -7
- package/compat/nodejs/test.d.ts +0 -4
- package/compat/nodejs/trampoline.worker.d.ts +0 -1
- package/compat/test.d.ts +0 -1
- package/compat/testHelpers.d.ts +0 -18
- package/ffi-x3zvcksd.js +0 -25
- package/index-5yqvbmcz.js +0 -220
- package/index-5yqvbmcz.js.map +0 -10
- package/index-bnfz2g63.js +0 -654
- package/index-bnfz2g63.js.map +0 -10
- package/index-cbvybypy.js +0 -43
- package/index-cbvybypy.js.map +0 -10
- package/index-kcpn1hka.js.map +0 -10
- package/index-re3ntm60.js +0 -51
- package/index-rhfjv9c1.js.map +0 -70
- package/index-tkk6cmr2.js.map +0 -10
- package/index-yxe6e14n.js.map +0 -42
- package/runtime-hdpkc6qf.js +0 -220
- package/runtime-hdpkc6qf.js.map +0 -17
- /package/{compat/nodejs/registerBun.d.ts → native-event-worker-repro.worker.d.ts} +0 -0
package/NativeSpanFeed.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Pointer } from "./
|
|
1
|
+
import { type Pointer } from "./platform/ffi.js";
|
|
2
2
|
import type { NativeSpanFeedOptions } from "./zig-structs.js";
|
|
3
3
|
export type { GrowthPolicy, NativeSpanFeedOptions, NativeSpanFeedStats } from "./zig-structs.js";
|
|
4
4
|
export type DataHandler = (data: Uint8Array) => void | Promise<void>;
|
|
@@ -7,7 +7,7 @@ export type DataHandler = (data: Uint8Array) => void | Promise<void>;
|
|
|
7
7
|
*/
|
|
8
8
|
export declare class NativeSpanFeed {
|
|
9
9
|
static create(options?: NativeSpanFeedOptions): NativeSpanFeed;
|
|
10
|
-
static attach(streamPtr:
|
|
10
|
+
static attach(streamPtr: Pointer, _options?: NativeSpanFeedOptions): NativeSpanFeed;
|
|
11
11
|
readonly streamPtr: Pointer;
|
|
12
12
|
private readonly lib;
|
|
13
13
|
private readonly eventHandler;
|
package/README.md
CHANGED
package/Renderable.d.ts
CHANGED
|
@@ -16,7 +16,8 @@ export declare enum LayoutEvents {
|
|
|
16
16
|
}
|
|
17
17
|
export declare enum RenderableEvents {
|
|
18
18
|
FOCUSED = "focused",
|
|
19
|
-
BLURRED = "blurred"
|
|
19
|
+
BLURRED = "blurred",
|
|
20
|
+
DESTROYED = "destroyed"
|
|
20
21
|
}
|
|
21
22
|
export interface Position {
|
|
22
23
|
top?: number | "auto" | `${number}%`;
|
|
@@ -122,6 +123,8 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
122
123
|
protected _translateY: number;
|
|
123
124
|
protected _x: number;
|
|
124
125
|
protected _y: number;
|
|
126
|
+
protected _screenX: number;
|
|
127
|
+
protected _screenY: number;
|
|
125
128
|
protected _width: number | "auto" | `${number}%`;
|
|
126
129
|
protected _height: number | "auto" | `${number}%`;
|
|
127
130
|
protected _widthValue: number;
|
|
@@ -132,6 +135,7 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
132
135
|
protected frameBuffer: OptimizedBuffer | null;
|
|
133
136
|
protected _focusable: boolean;
|
|
134
137
|
protected _focused: boolean;
|
|
138
|
+
protected _hasFocusedDescendant: boolean;
|
|
135
139
|
protected keypressHandler: ((key: KeyEvent) => void) | null;
|
|
136
140
|
protected pasteHandler: ((event: PasteEvent) => void) | null;
|
|
137
141
|
private _live;
|
|
@@ -155,6 +159,7 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
155
159
|
private childrenPrimarySortDirty;
|
|
156
160
|
private childrenSortedByPrimaryAxis;
|
|
157
161
|
private _shouldUpdateBefore;
|
|
162
|
+
private _lastLayoutFrame;
|
|
158
163
|
onLifecyclePass: (() => void) | null;
|
|
159
164
|
renderBefore?: (this: Renderable, buffer: OptimizedBuffer, deltaTime: number) => void;
|
|
160
165
|
renderAfter?: (this: Renderable, buffer: OptimizedBuffer, deltaTime: number) => void;
|
|
@@ -174,8 +179,10 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
174
179
|
getSelectedText(): string;
|
|
175
180
|
shouldStartSelection(x: number, y: number): boolean;
|
|
176
181
|
focus(): void;
|
|
182
|
+
protected propagateFocusChange(hasFocus: boolean): void;
|
|
177
183
|
blur(): void;
|
|
178
184
|
get focused(): boolean;
|
|
185
|
+
get hasFocusedDescendant(): boolean;
|
|
179
186
|
get live(): boolean;
|
|
180
187
|
get liveCount(): number;
|
|
181
188
|
set live(value: boolean);
|
|
@@ -188,6 +195,8 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
188
195
|
set translateX(value: number);
|
|
189
196
|
get translateY(): number;
|
|
190
197
|
set translateY(value: number);
|
|
198
|
+
get screenX(): number;
|
|
199
|
+
get screenY(): number;
|
|
191
200
|
get x(): number;
|
|
192
201
|
set x(value: number);
|
|
193
202
|
get top(): number | "auto" | `${number}%` | undefined;
|
|
@@ -232,6 +241,7 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
232
241
|
set marginX(marginX: number | "auto" | `${number}%` | null | undefined);
|
|
233
242
|
set marginY(marginY: number | "auto" | `${number}%` | null | undefined);
|
|
234
243
|
set marginTop(margin: number | "auto" | `${number}%` | null | undefined);
|
|
244
|
+
get marginTop(): number | "auto" | `${number}%`;
|
|
235
245
|
set marginRight(margin: number | "auto" | `${number}%` | null | undefined);
|
|
236
246
|
set marginBottom(margin: number | "auto" | `${number}%` | null | undefined);
|
|
237
247
|
set marginLeft(margin: number | "auto" | `${number}%` | null | undefined);
|
|
@@ -263,6 +273,7 @@ export declare abstract class Renderable extends BaseRenderable {
|
|
|
263
273
|
getChildrenCount(): number;
|
|
264
274
|
updateLayout(deltaTime: number, renderList?: RenderCommand[]): void;
|
|
265
275
|
render(buffer: OptimizedBuffer, deltaTime: number): void;
|
|
276
|
+
protected _hasVisibleChildFilter(): boolean;
|
|
266
277
|
protected _getVisibleChildren(): number[];
|
|
267
278
|
protected onUpdate(deltaTime: number): void;
|
|
268
279
|
protected getScissorRect(): {
|
package/audio.d.ts
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { EventEmitter } from "events";
|
|
2
|
+
import type { AudioStats } from "./zig-structs.js";
|
|
3
|
+
export interface AudioSetupOptions {
|
|
4
|
+
autoStart?: boolean;
|
|
5
|
+
sampleRate?: number;
|
|
6
|
+
playbackChannels?: number;
|
|
7
|
+
startOptions?: AudioStartOptions;
|
|
8
|
+
}
|
|
9
|
+
export interface AudioStartOptions {
|
|
10
|
+
periodSizeInFrames?: number;
|
|
11
|
+
periodSizeInMilliseconds?: number;
|
|
12
|
+
periods?: number;
|
|
13
|
+
performanceProfile?: number;
|
|
14
|
+
shareMode?: number;
|
|
15
|
+
noPreSilencedOutputBuffer?: boolean;
|
|
16
|
+
noClip?: boolean;
|
|
17
|
+
noDisableDenormals?: boolean;
|
|
18
|
+
noFixedSizedCallback?: boolean;
|
|
19
|
+
wasapiNoAutoConvertSrc?: boolean;
|
|
20
|
+
wasapiNoDefaultQualitySrc?: boolean;
|
|
21
|
+
alsaNoMMap?: boolean;
|
|
22
|
+
alsaNoAutoFormat?: boolean;
|
|
23
|
+
alsaNoAutoChannels?: boolean;
|
|
24
|
+
alsaNoAutoResample?: boolean;
|
|
25
|
+
}
|
|
26
|
+
export interface AudioPlayOptions {
|
|
27
|
+
volume?: number;
|
|
28
|
+
pan?: number;
|
|
29
|
+
loop?: boolean;
|
|
30
|
+
groupId?: number;
|
|
31
|
+
}
|
|
32
|
+
export type AudioGroup = number;
|
|
33
|
+
export type AudioVoice = number;
|
|
34
|
+
export type AudioSound = number;
|
|
35
|
+
export interface AudioPlaybackDevice {
|
|
36
|
+
index: number;
|
|
37
|
+
name: string;
|
|
38
|
+
isDefault: boolean;
|
|
39
|
+
}
|
|
40
|
+
export type AudioAction = "createAudioEngine" | "start" | "startMixer" | "stop" | "loadSound" | "loadSoundFile" | "unloadSound" | "group" | "play" | "stopVoice" | "setVoiceGroup" | "setGroupVolume" | "setMasterVolume" | "mixFrames" | "enableTap" | "readTapFrames" | "listPlaybackDevices" | "selectPlaybackDevice" | "clearPlaybackDeviceSelection" | "getStats";
|
|
41
|
+
export interface AudioErrorContext {
|
|
42
|
+
action: AudioAction;
|
|
43
|
+
status?: number;
|
|
44
|
+
}
|
|
45
|
+
export interface AudioEvents {
|
|
46
|
+
error: [error: Error, context: AudioErrorContext];
|
|
47
|
+
started: [];
|
|
48
|
+
mixerStarted: [];
|
|
49
|
+
stopped: [];
|
|
50
|
+
disposed: [];
|
|
51
|
+
}
|
|
52
|
+
export declare class Audio extends EventEmitter<AudioEvents> {
|
|
53
|
+
static create(options?: AudioSetupOptions): Audio;
|
|
54
|
+
private readonly lib;
|
|
55
|
+
private readonly defaultStartOptions;
|
|
56
|
+
private engine;
|
|
57
|
+
private readonly groups;
|
|
58
|
+
private playbackStarted;
|
|
59
|
+
private mixerStarted;
|
|
60
|
+
private constructor();
|
|
61
|
+
private emitError;
|
|
62
|
+
start(options?: AudioStartOptions): boolean;
|
|
63
|
+
startMixer(): boolean;
|
|
64
|
+
stop(): boolean;
|
|
65
|
+
isStarted(): boolean;
|
|
66
|
+
isMixerStarted(): boolean;
|
|
67
|
+
loadSound(data: Uint8Array | ArrayBuffer): AudioSound | null;
|
|
68
|
+
loadSoundFile(filePath: string): Promise<AudioSound | null>;
|
|
69
|
+
unloadSound(sound: AudioSound): boolean;
|
|
70
|
+
group(name: string): AudioGroup | null;
|
|
71
|
+
play(sound: AudioSound, options?: AudioPlayOptions): AudioVoice | null;
|
|
72
|
+
stopVoice(voice: AudioVoice): boolean;
|
|
73
|
+
setVoiceGroup(voice: AudioVoice, group: AudioGroup): boolean;
|
|
74
|
+
setGroupVolume(group: AudioGroup, volume: number): boolean;
|
|
75
|
+
setMasterVolume(volume: number): boolean;
|
|
76
|
+
mixFrames(frameCount: number, channels?: number): Float32Array | null;
|
|
77
|
+
enableTap(capacityFrames?: number): boolean;
|
|
78
|
+
disableTap(): boolean;
|
|
79
|
+
readTapFrames(frameCount: number, channels?: number): {
|
|
80
|
+
frames: Float32Array;
|
|
81
|
+
framesRead: number;
|
|
82
|
+
} | null;
|
|
83
|
+
listPlaybackDevices(): AudioPlaybackDevice[] | null;
|
|
84
|
+
selectPlaybackDevice(index: number): boolean;
|
|
85
|
+
clearPlaybackDeviceSelection(): void;
|
|
86
|
+
getStats(): AudioStats | null;
|
|
87
|
+
dispose(): void;
|
|
88
|
+
}
|
|
89
|
+
export declare function setupAudio(options?: AudioSetupOptions): Audio;
|
package/buffer.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { RGBA } from "./lib/index.js";
|
|
2
2
|
import { type RenderLib } from "./zig.js";
|
|
3
|
-
import { type Pointer } from "./
|
|
3
|
+
import { type Pointer, type PointerInput } from "./platform/ffi.js";
|
|
4
4
|
import { type BorderStyle, type BorderSides } from "./lib/index.js";
|
|
5
5
|
import { TargetChannel, type WidthMethod, type CapturedLine } from "./types.js";
|
|
6
6
|
import type { TextBufferView } from "./text-buffer-view.js";
|
|
@@ -18,10 +18,11 @@ export declare class OptimizedBuffer {
|
|
|
18
18
|
private _destroyed;
|
|
19
19
|
get ptr(): Pointer;
|
|
20
20
|
private guard;
|
|
21
|
+
private ensureRawBufferViews;
|
|
21
22
|
get buffers(): {
|
|
22
23
|
char: Uint32Array;
|
|
23
|
-
fg:
|
|
24
|
-
bg:
|
|
24
|
+
fg: Uint16Array;
|
|
25
|
+
bg: Uint16Array;
|
|
25
26
|
attributes: Uint32Array;
|
|
26
27
|
};
|
|
27
28
|
constructor(lib: RenderLib, ptr: Pointer, width: number, height: number, options: {
|
|
@@ -56,8 +57,8 @@ export declare class OptimizedBuffer {
|
|
|
56
57
|
destroy(): void;
|
|
57
58
|
drawTextBuffer(textBufferView: TextBufferView, x: number, y: number): void;
|
|
58
59
|
drawEditorView(editorView: EditorView, x: number, y: number): void;
|
|
59
|
-
drawSuperSampleBuffer(x: number, y: number, pixelDataPtr:
|
|
60
|
-
drawPackedBuffer(dataPtr:
|
|
60
|
+
drawSuperSampleBuffer(x: number, y: number, pixelDataPtr: PointerInput, pixelDataLength: number, format: "bgra8unorm" | "rgba8unorm", alignedBytesPerRow: number): void;
|
|
61
|
+
drawPackedBuffer(dataPtr: PointerInput, dataLen: number, posX: number, posY: number, terminalWidthCells: number, terminalHeightCells: number): void;
|
|
61
62
|
drawGrayscaleBuffer(posX: number, posY: number, intensities: Float32Array, srcWidth: number, srcHeight: number, fg?: RGBA | null, bg?: RGBA | null): void;
|
|
62
63
|
drawGrayscaleBufferSupersampled(posX: number, posY: number, intensities: Float32Array, srcWidth: number, srcHeight: number, fg?: RGBA | null, bg?: RGBA | null): void;
|
|
63
64
|
resize(width: number, height: number): void;
|
package/console.d.ts
CHANGED
|
@@ -4,7 +4,8 @@ import type { ColorInput } from "./lib/RGBA.js";
|
|
|
4
4
|
import { OptimizedBuffer } from "./buffer.js";
|
|
5
5
|
import { type Clock } from "./lib/clock.js";
|
|
6
6
|
import { Capture } from "./lib/output.capture.js";
|
|
7
|
-
import { type KeyBinding as BaseKeyBinding
|
|
7
|
+
import { type KeyBinding as BaseKeyBinding } from "./lib/keybinding.internal.js";
|
|
8
|
+
type KeyAliasMap = Record<string, string>;
|
|
8
9
|
export declare const capture: Capture;
|
|
9
10
|
export declare enum ConsolePosition {
|
|
10
11
|
TOP = "top",
|
|
@@ -142,3 +143,4 @@ export declare class TerminalConsole extends EventEmitter {
|
|
|
142
143
|
};
|
|
143
144
|
private saveLogsToFile;
|
|
144
145
|
}
|
|
146
|
+
export {};
|
package/edit-buffer.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type LogicalCursor, type RenderLib } from "./zig.js";
|
|
2
|
-
import { type Pointer } from "./
|
|
2
|
+
import { type Pointer } from "./platform/ffi.js";
|
|
3
3
|
import { type WidthMethod, type Highlight } from "./types.js";
|
|
4
4
|
import { RGBA } from "./lib/RGBA.js";
|
|
5
5
|
import { EventEmitter } from "events";
|
package/editor-view.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { RGBA } from "./lib/RGBA.js";
|
|
2
2
|
import { type RenderLib, type VisualCursor, type LineInfo } from "./zig.js";
|
|
3
|
-
import { type Pointer } from "./
|
|
3
|
+
import { type Pointer } from "./platform/ffi.js";
|
|
4
4
|
import type { EditBuffer } from "./edit-buffer.js";
|
|
5
5
|
export interface Viewport {
|
|
6
6
|
offsetY: number;
|