@opentui/core 0.1.71 → 0.1.73

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/package.json CHANGED
@@ -4,12 +4,12 @@
4
4
  "main": "index.js",
5
5
  "types": "index.d.ts",
6
6
  "type": "module",
7
- "version": "0.1.71",
7
+ "version": "0.1.73",
8
8
  "description": "OpenTUI is a TypeScript library for building terminal user interfaces (TUIs)",
9
9
  "license": "MIT",
10
10
  "repository": {
11
11
  "type": "git",
12
- "url": "https://github.com/sst/opentui",
12
+ "url": "https://github.com/anomalyco/opentui",
13
13
  "directory": "packages/core"
14
14
  },
15
15
  "exports": {
@@ -56,11 +56,11 @@
56
56
  "bun-webgpu": "0.1.4",
57
57
  "planck": "^1.4.2",
58
58
  "three": "0.177.0",
59
- "@opentui/core-darwin-x64": "0.1.71",
60
- "@opentui/core-darwin-arm64": "0.1.71",
61
- "@opentui/core-linux-x64": "0.1.71",
62
- "@opentui/core-linux-arm64": "0.1.71",
63
- "@opentui/core-win32-x64": "0.1.71",
64
- "@opentui/core-win32-arm64": "0.1.71"
59
+ "@opentui/core-darwin-x64": "0.1.73",
60
+ "@opentui/core-darwin-arm64": "0.1.73",
61
+ "@opentui/core-linux-x64": "0.1.73",
62
+ "@opentui/core-linux-arm64": "0.1.73",
63
+ "@opentui/core-win32-x64": "0.1.73",
64
+ "@opentui/core-win32-arm64": "0.1.73"
65
65
  }
66
66
  }
@@ -16,6 +16,7 @@ export interface TextBufferOptions extends RenderableOptions<TextBufferRenderabl
16
16
  wrapMode?: "none" | "char" | "word";
17
17
  tabIndicator?: string | number;
18
18
  tabIndicatorColor?: string | RGBA;
19
+ truncate?: boolean;
19
20
  }
20
21
  export declare abstract class TextBufferRenderable extends Renderable implements LineInfoProvider {
21
22
  selectable: boolean;
@@ -30,6 +31,7 @@ export declare abstract class TextBufferRenderable extends Renderable implements
30
31
  protected _tabIndicatorColor?: RGBA;
31
32
  protected _scrollX: number;
32
33
  protected _scrollY: number;
34
+ protected _truncate: boolean;
33
35
  protected textBuffer: TextBuffer;
34
36
  protected textBufferView: TextBufferView;
35
37
  protected _defaultOptions: {
@@ -42,6 +44,7 @@ export declare abstract class TextBufferRenderable extends Renderable implements
42
44
  wrapMode: "none" | "char" | "word";
43
45
  tabIndicator: undefined;
44
46
  tabIndicatorColor: undefined;
47
+ truncate: false;
45
48
  };
46
49
  constructor(ctx: RenderContext, options: TextBufferOptions);
47
50
  protected onMouseEvent(event: any): void;
@@ -76,6 +79,8 @@ export declare abstract class TextBufferRenderable extends Renderable implements
76
79
  set tabIndicator(value: string | number | undefined);
77
80
  get tabIndicatorColor(): RGBA | undefined;
78
81
  set tabIndicatorColor(value: RGBA | string | undefined);
82
+ get truncate(): boolean;
83
+ set truncate(value: boolean);
79
84
  protected onResize(width: number, height: number): void;
80
85
  protected refreshLocalSelection(): boolean;
81
86
  private updateLocalSelection;
package/renderer.d.ts CHANGED
@@ -188,6 +188,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
188
188
  private _capabilities;
189
189
  private _latestPointer;
190
190
  private _hasPointer;
191
+ private _lastPointerModifiers;
191
192
  private _currentFocusedRenderable;
192
193
  private lifecyclePasses;
193
194
  private _openConsoleOnError;
@@ -266,6 +267,12 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
266
267
  private focusHandler;
267
268
  private setupInput;
268
269
  private handleMouseData;
270
+ /**
271
+ * Recheck hover state after hit grid changes.
272
+ * Called after render when native code detects the hit grid changed.
273
+ * Fires out/over events if the element under the cursor changed.
274
+ */
275
+ private recheckHoverState;
269
276
  hitTest(x: number, y: number): number;
270
277
  private takeMemorySnapshot;
271
278
  private startMemorySnapshotTimer;
package/testing.js CHANGED
@@ -4,7 +4,7 @@ import {
4
4
  CliRenderer,
5
5
  TreeSitterClient,
6
6
  resolveRenderLib
7
- } from "./index-cr95zpf8.js";
7
+ } from "./index-93qf6w1k.js";
8
8
 
9
9
  // src/testing/test-renderer.ts
10
10
  import { Readable } from "stream";
@@ -32,6 +32,7 @@ export declare class TextBufferView {
32
32
  getPlainText(): string;
33
33
  setTabIndicator(indicator: string | number): void;
34
34
  setTabIndicatorColor(color: RGBA): void;
35
+ setTruncate(truncate: boolean): void;
35
36
  measureForDimensions(width: number, height: number): {
36
37
  lineCount: number;
37
38
  maxWidth: number;
package/zig-structs.d.ts CHANGED
@@ -23,7 +23,7 @@ export declare const VisualCursorStruct: import("bun-ffi-structs").DefineStructR
23
23
  export declare const TerminalCapabilitiesStruct: import("bun-ffi-structs").DefineStructReturnType<[readonly ["kitty_keyboard", "bool_u8"], readonly ["kitty_graphics", "bool_u8"], readonly ["rgb", "bool_u8"], readonly ["unicode", import("bun-ffi-structs").EnumDef<{
24
24
  wcwidth: number;
25
25
  unicode: number;
26
- }>], readonly ["sgr_pixels", "bool_u8"], readonly ["color_scheme_updates", "bool_u8"], readonly ["explicit_width", "bool_u8"], readonly ["scaled_text", "bool_u8"], readonly ["sixel", "bool_u8"], readonly ["focus_tracking", "bool_u8"], readonly ["sync", "bool_u8"], readonly ["bracketed_paste", "bool_u8"], readonly ["hyperlinks", "bool_u8"], readonly ["term_name", "char*"], readonly ["term_name_len", "u64", {
26
+ }>], readonly ["sgr_pixels", "bool_u8"], readonly ["color_scheme_updates", "bool_u8"], readonly ["explicit_width", "bool_u8"], readonly ["scaled_text", "bool_u8"], readonly ["sixel", "bool_u8"], readonly ["focus_tracking", "bool_u8"], readonly ["sync", "bool_u8"], readonly ["bracketed_paste", "bool_u8"], readonly ["hyperlinks", "bool_u8"], readonly ["explicit_cursor_positioning", "bool_u8"], readonly ["term_name", "char*"], readonly ["term_name_len", "u64", {
27
27
  readonly lengthOf: "term_name";
28
28
  }], readonly ["term_version", "char*"], readonly ["term_version_len", "u64", {
29
29
  readonly lengthOf: "term_version";
package/zig.d.ts CHANGED
@@ -87,6 +87,7 @@ export interface RenderLib {
87
87
  hitGridClearScissorRects: (renderer: Pointer) => void;
88
88
  addToCurrentHitGridClipped: (renderer: Pointer, x: number, y: number, width: number, height: number, id: number) => void;
89
89
  checkHit: (renderer: Pointer, x: number, y: number) => number;
90
+ getHitGridDirty: (renderer: Pointer) => boolean;
90
91
  dumpHitGrid: (renderer: Pointer) => void;
91
92
  dumpBuffers: (renderer: Pointer, timestamp?: number) => void;
92
93
  dumpStdoutBuffer: (renderer: Pointer, timestamp?: number) => void;
@@ -100,6 +101,7 @@ export interface RenderLib {
100
101
  suspendRenderer: (renderer: Pointer) => void;
101
102
  resumeRenderer: (renderer: Pointer) => void;
102
103
  queryPixelResolution: (renderer: Pointer) => void;
104
+ writeOut: (renderer: Pointer, data: string | Uint8Array) => void;
103
105
  createTextBuffer: (widthMethod: WidthMethod) => TextBuffer;
104
106
  destroyTextBuffer: (buffer: Pointer) => void;
105
107
  textBufferGetLength: (buffer: Pointer) => number;
@@ -154,6 +156,7 @@ export interface RenderLib {
154
156
  textBufferViewGetPlainTextBytes: (view: Pointer, maxLength: number) => Uint8Array | null;
155
157
  textBufferViewSetTabIndicator: (view: Pointer, indicator: number) => void;
156
158
  textBufferViewSetTabIndicatorColor: (view: Pointer, color: RGBA) => void;
159
+ textBufferViewSetTruncate: (view: Pointer, truncate: boolean) => void;
157
160
  textBufferViewMeasureForDimensions: (view: Pointer, width: number, height: number) => {
158
161
  lineCount: number;
159
162
  maxWidth: number;