@opentui/core 0.0.0-20250929-69eb6c87 → 0.0.0-20250930-a8fe63ce

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.
@@ -0,0 +1,81 @@
1
+ import { Renderable, type RenderableOptions } from "../Renderable";
2
+ import { Selection, type LocalSelectionBounds } from "../lib/selection";
3
+ import { TextBuffer, type TextChunk } from "../text-buffer";
4
+ import { RGBA } from "../lib/RGBA";
5
+ import { type RenderContext } from "../types";
6
+ import type { OptimizedBuffer } from "../buffer";
7
+ import type { LineInfo } from "../zig";
8
+ export interface TextBufferOptions extends RenderableOptions<TextBufferRenderable> {
9
+ fg?: string | RGBA;
10
+ bg?: string | RGBA;
11
+ selectionBg?: string | RGBA;
12
+ selectionFg?: string | RGBA;
13
+ selectable?: boolean;
14
+ attributes?: number;
15
+ wrap?: boolean;
16
+ wrapMode?: "char" | "word";
17
+ }
18
+ export declare abstract class TextBufferRenderable extends Renderable {
19
+ selectable: boolean;
20
+ protected _defaultFg: RGBA;
21
+ protected _defaultBg: RGBA;
22
+ protected _defaultAttributes: number;
23
+ protected _selectionBg: RGBA | undefined;
24
+ protected _selectionFg: RGBA | undefined;
25
+ protected _wrap: boolean;
26
+ protected _wrapMode: "char" | "word";
27
+ protected lastLocalSelection: LocalSelectionBounds | null;
28
+ protected textBuffer: TextBuffer;
29
+ protected _lineInfo: LineInfo;
30
+ protected _defaultOptions: {
31
+ fg: RGBA;
32
+ bg: RGBA;
33
+ selectionBg: undefined;
34
+ selectionFg: undefined;
35
+ selectable: true;
36
+ attributes: number;
37
+ wrap: true;
38
+ wrapMode: "char" | "word";
39
+ };
40
+ constructor(ctx: RenderContext, options: TextBufferOptions);
41
+ get plainText(): string;
42
+ get textLength(): number;
43
+ get fg(): RGBA;
44
+ set fg(value: RGBA | string | undefined);
45
+ get selectionBg(): RGBA | undefined;
46
+ set selectionBg(value: RGBA | string | undefined);
47
+ get selectionFg(): RGBA | undefined;
48
+ set selectionFg(value: RGBA | string | undefined);
49
+ get bg(): RGBA;
50
+ set bg(value: RGBA | string | undefined);
51
+ get attributes(): number;
52
+ set attributes(value: number);
53
+ get wrap(): boolean;
54
+ set wrap(value: boolean);
55
+ get wrapMode(): "char" | "word";
56
+ set wrapMode(value: "char" | "word");
57
+ protected onResize(width: number, height: number): void;
58
+ protected refreshLocalSelection(): boolean;
59
+ private updateLocalSelection;
60
+ protected updateTextInfo(): void;
61
+ private updateLineInfo;
62
+ private updateWrapWidth;
63
+ private setupMeasureFunc;
64
+ insertChunk(chunk: TextChunk, index?: number): void;
65
+ removeChunk(index: number): void;
66
+ replaceChunk(index: number, chunk: TextChunk): void;
67
+ shouldStartSelection(x: number, y: number): boolean;
68
+ onSelectionChanged(selection: Selection | null): boolean;
69
+ getSelectedText(): string;
70
+ hasSelection(): boolean;
71
+ getSelection(): {
72
+ start: number;
73
+ end: number;
74
+ } | null;
75
+ render(buffer: OptimizedBuffer, deltaTime: number): void;
76
+ protected renderSelf(buffer: OptimizedBuffer): void;
77
+ destroy(): void;
78
+ protected onFgChanged(newColor: RGBA): void;
79
+ protected onBgChanged(newColor: RGBA): void;
80
+ protected onAttributesChanged(newAttributes: number): void;
81
+ }
@@ -1,5 +1,7 @@
1
1
  export * from "./Box";
2
+ export * from "./Code";
2
3
  export * from "./FrameBuffer";
4
+ export * from "./TextBufferRenderable";
3
5
  export * from "./Text";
4
6
  export * from "./TextNode";
5
7
  export * from "./ASCIIFont";
package/renderer.d.ts CHANGED
@@ -75,7 +75,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
75
75
  stdin: NodeJS.ReadStream;
76
76
  private stdout;
77
77
  private exitOnCtrlC;
78
- private isDestroyed;
78
+ private _isDestroyed;
79
79
  nextRenderBuffer: OptimizedBuffer;
80
80
  currentRenderBuffer: OptimizedBuffer;
81
81
  private _isRunning;
@@ -145,6 +145,7 @@ export declare class CliRenderer extends EventEmitter implements RenderContext {
145
145
  private exitHandler;
146
146
  private warningHandler;
147
147
  constructor(lib: RenderLib, rendererPtr: Pointer, stdin: NodeJS.ReadStream, stdout: NodeJS.WriteStream, width: number, height: number, config?: CliRendererConfig);
148
+ get isDestroyed(): boolean;
148
149
  registerLifecyclePass(renderable: Renderable): void;
149
150
  unregisterLifecyclePass(renderable: Renderable): void;
150
151
  getLifecyclePasses(): Set<Renderable>;
package/testing.js CHANGED
@@ -3,7 +3,7 @@ import {
3
3
  ANSI,
4
4
  CliRenderer,
5
5
  resolveRenderLib
6
- } from "./index-yd5hcdcm.js";
6
+ } from "./index-h87jjatk.js";
7
7
 
8
8
  // src/testing/mock-keys.ts
9
9
  var KeyCodes = {