blecsd 0.1.1 → 0.3.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/LICENSE +4 -2
- package/README.md +209 -66
- package/dist/3d/index.d.ts +2 -2
- package/dist/3d/index.js +1 -1
- package/dist/audio/index.d.ts +2 -2
- package/dist/{border-D_Jb4ZJV.d.ts → border-Jb7TrMob.d.ts} +20 -10
- package/dist/chunk-2IEMMRUO.js +1 -0
- package/dist/chunk-3AV52GY5.js +1 -0
- package/dist/chunk-3LHLSY3Y.js +1 -0
- package/dist/chunk-3O4TQHGK.js +4 -0
- package/dist/chunk-3UJWZ5ZN.js +1 -0
- package/dist/chunk-5N3O25O7.js +1 -0
- package/dist/chunk-6M2J5QUA.js +1 -0
- package/dist/chunk-7IQEUVGF.js +1 -0
- package/dist/chunk-A6M6TFBL.js +1 -0
- package/dist/chunk-CUEUJAHK.js +3 -0
- package/dist/chunk-D42Q2KKR.js +1 -0
- package/dist/chunk-DYEXOFUU.js +2 -0
- package/dist/chunk-DYU72XLL.js +1 -0
- package/dist/chunk-E4CJRSND.js +1 -0
- package/dist/chunk-EAY7B5GL.js +1 -0
- package/dist/chunk-FCMTWFSE.js +1 -0
- package/dist/chunk-FL56THSI.js +25 -0
- package/dist/{chunk-2UBBZFE4.js → chunk-G437VE43.js} +1 -1
- package/dist/chunk-GGXNWT36.js +8 -0
- package/dist/chunk-HLFORKXS.js +1 -0
- package/dist/chunk-J7MBKEBY.js +1 -0
- package/dist/{chunk-TYMY2TBR.js → chunk-JHCKPCUH.js} +3 -3
- package/dist/chunk-K3SX2LY5.js +1 -0
- package/dist/chunk-LDAFEXN5.js +1 -0
- package/dist/chunk-MKMFUXLB.js +33 -0
- package/dist/chunk-MQWPHPUM.js +1 -0
- package/dist/chunk-MTI376CU.js +5 -0
- package/dist/chunk-MTV2RJZD.js +1 -0
- package/dist/chunk-NPDPBAW6.js +4 -0
- package/dist/chunk-OB66FB4F.js +1 -0
- package/dist/chunk-OR3BZY7C.js +1 -0
- package/dist/{chunk-VNZ6CWJA.js → chunk-R7AICVRN.js} +2 -2
- package/dist/{chunk-3B7MIVW6.js → chunk-RZ7FGVI6.js} +1 -1
- package/dist/chunk-UMGTXSQB.js +11 -0
- package/dist/chunk-X3Q3T2SS.js +4 -0
- package/dist/{chunk-JKVHO4LH.js → chunk-XZJRWFOS.js} +1 -1
- package/dist/chunk-ZAHG7Y3X.js +1 -0
- package/dist/cli/init.d.ts +1 -1
- package/dist/componentStorage-CJTh-TPO.d.ts +246 -0
- package/dist/components/index.d.ts +1942 -514
- package/dist/components/index.js +1 -1
- package/dist/core/index.d.ts +857 -259
- package/dist/core/index.js +1 -1
- package/dist/debug/index.d.ts +491 -98
- package/dist/debug/index.js +1 -1
- package/dist/dirtyTracking-C4v8MmM9.d.ts +235 -0
- package/dist/errors/index.d.ts +12 -12
- package/dist/errors/index.js +1 -1
- package/dist/{events-BbbxkgvX.d.ts → events-9ForpTfM.d.ts} +75 -2
- package/dist/game/index.d.ts +7 -7
- package/dist/game/index.js +1 -1
- package/dist/{gameLoop-BIPW7-OY.d.ts → gameLoop-C-Ez_i54.d.ts} +2 -2
- package/dist/{index-zSGJ2eUk.d.ts → index-DBS5Uefn.d.ts} +2 -2
- package/dist/index.d.ts +283 -20
- package/dist/index.js +3 -1
- package/dist/input/index.d.ts +1 -1
- package/dist/input/index.js +1 -1
- package/dist/{inputActions-CefRUBuT.d.ts → inputActions-CRsUtTHM.d.ts} +10 -721
- package/dist/packedStore-BgvnEdE7.d.ts +191 -0
- package/dist/{renderable-jTMOA-GK.d.ts → renderable-CwqGwrEV.d.ts} +9 -9
- package/dist/{scheduler-DcfoFuum.d.ts → scheduler-CMcYew9Z.d.ts} +65 -3
- package/dist/systems/index.d.ts +356 -55
- package/dist/systems/index.js +1 -1
- package/dist/terminal/index.d.ts +2233 -2299
- package/dist/terminal/index.js +1 -1
- package/dist/{tilemap-D1HJvKy3.d.ts → tilemap-BirMJdbu.d.ts} +92 -3
- package/dist/{types-BcsvoKzf.d.ts → types-CPB4CpbH.d.ts} +2 -2
- package/dist/utils/index.d.ts +27 -180
- package/dist/utils/index.js +1 -1
- package/dist/{virtualScrollback-DvZTRU8a.d.ts → virtualScrollback-D9uLFe8l.d.ts} +4 -4
- package/dist/{virtualViewport-Dx2iJliO.d.ts → virtualViewport-Bpv6jlKt.d.ts} +283 -761
- package/dist/widgets/bigText.d.ts +1 -1
- package/dist/widgets/bigText.js +1 -1
- package/dist/widgets/index.d.ts +10519 -5463
- package/dist/widgets/index.js +1 -1
- package/package.json +102 -6
- package/dist/chunk-35I22JJO.js +0 -1
- package/dist/chunk-3EGGGI5J.js +0 -3
- package/dist/chunk-4X4N4HNQ.js +0 -2
- package/dist/chunk-AQ7LW75B.js +0 -1
- package/dist/chunk-AXZQAH4X.js +0 -1
- package/dist/chunk-BCADUCOZ.js +0 -1
- package/dist/chunk-EJ5WVDDZ.js +0 -6
- package/dist/chunk-FT7BMYSN.js +0 -1
- package/dist/chunk-FYEBZAWN.js +0 -1
- package/dist/chunk-GYHI26UE.js +0 -1
- package/dist/chunk-H2YAOJDW.js +0 -1
- package/dist/chunk-K2B2OXQ5.js +0 -5
- package/dist/chunk-K37L3G4Z.js +0 -4
- package/dist/chunk-KD55INV7.js +0 -1
- package/dist/chunk-KFAK4A3G.js +0 -1
- package/dist/chunk-LCN2ZITE.js +0 -1
- package/dist/chunk-OUXUPF3V.js +0 -33
- package/dist/chunk-P6CJO3BC.js +0 -1
- package/dist/chunk-PI5UOHOH.js +0 -1
- package/dist/chunk-PSXXMBVJ.js +0 -1
- package/dist/chunk-TRK4422V.js +0 -12
- package/dist/chunk-W5OU7Z6J.js +0 -1
- package/dist/chunk-WNG4A3K7.js +0 -4
- package/dist/chunk-XRJNAHNG.js +0 -19
- package/dist/chunk-XZA63ZPO.js +0 -1
- package/dist/chunk-YAMOSPWB.js +0 -4
- package/dist/chunk-YD6ULIUR.js +0 -1
- package/dist/{keyParser-Bwm8-l7v.d.ts → keyParser-BnHbg2iD.d.ts} +1 -1
|
@@ -1,84 +1,255 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { W as World, E as Entity } from './types-CPB4CpbH.js';
|
|
2
2
|
import { z } from 'zod';
|
|
3
3
|
import { A as Attribute } from './parser-iMHmQuUh.js';
|
|
4
4
|
import { S as ScreenBufferData, C as Cell } from './cell-DwIu2ryP.js';
|
|
5
|
-
import { S as ScrollbackBuffer } from './virtualScrollback-
|
|
5
|
+
import { S as ScrollbackBuffer } from './virtualScrollback-D9uLFe8l.js';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
*
|
|
9
|
-
* @module
|
|
10
|
-
* @internal This module is for internal use by widgets
|
|
8
|
+
* Dimensions component for entity sizing in the terminal grid.
|
|
9
|
+
* @module components/dimensions
|
|
11
10
|
*/
|
|
12
11
|
|
|
13
12
|
/**
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* Special value indicating "auto" (content-based) dimension.
|
|
14
|
+
* When used, the dimension is calculated based on content.
|
|
16
15
|
*/
|
|
17
|
-
|
|
16
|
+
declare const AUTO_DIMENSION = -1;
|
|
18
17
|
/**
|
|
19
|
-
*
|
|
18
|
+
* Encodes a percentage value for storage in typed arrays.
|
|
19
|
+
* Percentages are stored as negative values: -2 = 0%, -102 = 100%
|
|
20
|
+
*
|
|
21
|
+
* @param percent - Percentage value (0-100)
|
|
22
|
+
* @returns Encoded value for storage
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const encoded = encodePercentage(50); // Returns -52
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
declare function encodePercentage(percent: number): number;
|
|
30
|
+
/**
|
|
31
|
+
* Decodes a percentage value from typed array storage.
|
|
32
|
+
*
|
|
33
|
+
* @param value - Encoded value from storage
|
|
34
|
+
* @returns Percentage value (0-100) or null if not a percentage
|
|
35
|
+
*
|
|
36
|
+
* @example
|
|
37
|
+
* ```typescript
|
|
38
|
+
* const percent = decodePercentage(-52); // Returns 50
|
|
39
|
+
* const notPercent = decodePercentage(100); // Returns null
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
declare function decodePercentage(value: number): number | null;
|
|
43
|
+
/**
|
|
44
|
+
* Checks if a value represents a percentage.
|
|
45
|
+
*
|
|
46
|
+
* @param value - Value to check
|
|
47
|
+
* @returns true if the value is an encoded percentage
|
|
48
|
+
*/
|
|
49
|
+
declare function isPercentage(value: number): boolean;
|
|
50
|
+
/**
|
|
51
|
+
* Dimensions component store using SoA (Structure of Arrays) for performance.
|
|
52
|
+
*
|
|
53
|
+
* - `width`, `height`: Size in terminal cells (floats), or encoded percentages
|
|
54
|
+
* - `minWidth`, `minHeight`: Minimum size constraints
|
|
55
|
+
* - `maxWidth`, `maxHeight`: Maximum size constraints
|
|
56
|
+
* - `shrink`: Whether to shrink to content (0=no, 1=yes)
|
|
57
|
+
*
|
|
58
|
+
* Percentage values are encoded as negative numbers: -2 = 0%, -102 = 100%
|
|
59
|
+
* Use `encodePercentage()` and `decodePercentage()` for conversion.
|
|
60
|
+
*
|
|
61
|
+
* @example
|
|
62
|
+
* ```typescript
|
|
63
|
+
* import { Dimensions, setDimensions, getDimensions } from 'blecsd';
|
|
64
|
+
*
|
|
65
|
+
* setDimensions(world, entity, 80, 24);
|
|
66
|
+
*
|
|
67
|
+
* const dims = getDimensions(world, entity);
|
|
68
|
+
* console.log(dims.width, dims.height); // 80, 24
|
|
69
|
+
* ```
|
|
70
|
+
*/
|
|
71
|
+
declare const Dimensions: {
|
|
72
|
+
/** Width in terminal cells (or encoded percentage) */
|
|
73
|
+
width: Float32Array<ArrayBuffer>;
|
|
74
|
+
/** Height in terminal cells (or encoded percentage) */
|
|
75
|
+
height: Float32Array<ArrayBuffer>;
|
|
76
|
+
/** Minimum width constraint */
|
|
77
|
+
minWidth: Float32Array<ArrayBuffer>;
|
|
78
|
+
/** Minimum height constraint */
|
|
79
|
+
minHeight: Float32Array<ArrayBuffer>;
|
|
80
|
+
/** Maximum width constraint */
|
|
81
|
+
maxWidth: Float32Array<ArrayBuffer>;
|
|
82
|
+
/** Maximum height constraint */
|
|
83
|
+
maxHeight: Float32Array<ArrayBuffer>;
|
|
84
|
+
/** 0 = fixed size, 1 = shrink to content */
|
|
85
|
+
shrink: Uint8Array<ArrayBuffer>;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Dimension value that can be a number, percentage string, or 'auto'.
|
|
20
89
|
*/
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
90
|
+
type DimensionValue = number | `${number}%` | 'auto';
|
|
91
|
+
/**
|
|
92
|
+
* Dimensions data returned by getDimensions.
|
|
93
|
+
*/
|
|
94
|
+
interface DimensionsData {
|
|
95
|
+
readonly width: number;
|
|
96
|
+
readonly height: number;
|
|
97
|
+
readonly minWidth: number;
|
|
98
|
+
readonly minHeight: number;
|
|
99
|
+
readonly maxWidth: number;
|
|
100
|
+
readonly maxHeight: number;
|
|
101
|
+
readonly shrink: boolean;
|
|
25
102
|
}
|
|
26
103
|
/**
|
|
27
|
-
*
|
|
104
|
+
* Constraints data for min/max dimensions.
|
|
28
105
|
*/
|
|
29
|
-
interface
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
/** Event handlers mapping events to target states */
|
|
35
|
-
on?: Partial<Record<E, S | TransitionConfig<S, Context>>>;
|
|
106
|
+
interface DimensionConstraints {
|
|
107
|
+
readonly minWidth?: number;
|
|
108
|
+
readonly minHeight?: number;
|
|
109
|
+
readonly maxWidth?: number;
|
|
110
|
+
readonly maxHeight?: number;
|
|
36
111
|
}
|
|
37
112
|
/**
|
|
38
|
-
*
|
|
113
|
+
* Sets the dimensions of an entity.
|
|
114
|
+
* Adds the Dimensions component if not already present.
|
|
39
115
|
*
|
|
40
|
-
* @
|
|
41
|
-
* @
|
|
42
|
-
* @
|
|
116
|
+
* @param world - The ECS world
|
|
117
|
+
* @param eid - The entity ID
|
|
118
|
+
* @param width - Width value (number, percentage string like "50%", or "auto")
|
|
119
|
+
* @param height - Height value (number, percentage string like "50%", or "auto")
|
|
120
|
+
* @returns The entity ID for chaining
|
|
121
|
+
*
|
|
122
|
+
* @example
|
|
123
|
+
* ```typescript
|
|
124
|
+
* import { createWorld, addEntity } from '../core/ecs';
|
|
125
|
+
* import { setDimensions } from 'blecsd';
|
|
126
|
+
*
|
|
127
|
+
* const world = createWorld();
|
|
128
|
+
* const entity = addEntity(world);
|
|
129
|
+
*
|
|
130
|
+
* // Fixed size
|
|
131
|
+
* setDimensions(world, entity, 80, 24);
|
|
132
|
+
*
|
|
133
|
+
* // Percentage width
|
|
134
|
+
* setDimensions(world, entity, '50%', 24);
|
|
135
|
+
*
|
|
136
|
+
* // Auto height
|
|
137
|
+
* setDimensions(world, entity, 80, 'auto');
|
|
138
|
+
* ```
|
|
43
139
|
*/
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
140
|
+
declare function setDimensions(world: World, eid: Entity, width: DimensionValue, height: DimensionValue): Entity;
|
|
141
|
+
/**
|
|
142
|
+
* Gets the dimensions data of an entity.
|
|
143
|
+
* Returns undefined if the entity doesn't have a Dimensions component.
|
|
144
|
+
*
|
|
145
|
+
* @param world - The ECS world
|
|
146
|
+
* @param eid - The entity ID
|
|
147
|
+
* @returns Dimensions data or undefined
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```typescript
|
|
151
|
+
* import { getDimensions } from 'blecsd';
|
|
152
|
+
*
|
|
153
|
+
* const dims = getDimensions(world, entity);
|
|
154
|
+
* if (dims) {
|
|
155
|
+
* console.log(`Size: ${dims.width}x${dims.height}`);
|
|
156
|
+
* }
|
|
157
|
+
* ```
|
|
158
|
+
*/
|
|
159
|
+
declare function getDimensions(world: World, eid: Entity): DimensionsData | undefined;
|
|
160
|
+
/**
|
|
161
|
+
* Sets dimension constraints (min/max) for an entity.
|
|
162
|
+
*
|
|
163
|
+
* @param world - The ECS world
|
|
164
|
+
* @param eid - The entity ID
|
|
165
|
+
* @param constraints - Constraint values to set
|
|
166
|
+
* @returns The entity ID for chaining
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```typescript
|
|
170
|
+
* import { setConstraints } from 'blecsd';
|
|
171
|
+
*
|
|
172
|
+
* setConstraints(world, entity, {
|
|
173
|
+
* minWidth: 10,
|
|
174
|
+
* maxWidth: 100,
|
|
175
|
+
* minHeight: 5,
|
|
176
|
+
* });
|
|
177
|
+
* ```
|
|
178
|
+
*/
|
|
179
|
+
declare function setConstraints(world: World, eid: Entity, constraints: DimensionConstraints): Entity;
|
|
180
|
+
/**
|
|
181
|
+
* Sets the shrink-to-content flag for an entity.
|
|
182
|
+
*
|
|
183
|
+
* @param world - The ECS world
|
|
184
|
+
* @param eid - The entity ID
|
|
185
|
+
* @param shrink - true to shrink to content, false for fixed size
|
|
186
|
+
* @returns The entity ID for chaining
|
|
187
|
+
*
|
|
188
|
+
* @example
|
|
189
|
+
* ```typescript
|
|
190
|
+
* import { setShrink } from 'blecsd';
|
|
191
|
+
*
|
|
192
|
+
* // Enable shrink-to-content
|
|
193
|
+
* setShrink(world, entity, true);
|
|
194
|
+
* ```
|
|
195
|
+
*/
|
|
196
|
+
declare function setShrink(world: World, eid: Entity, shrink: boolean): Entity;
|
|
52
197
|
/**
|
|
53
|
-
*
|
|
198
|
+
* Checks if an entity should shrink to content.
|
|
199
|
+
*
|
|
200
|
+
* @param world - The ECS world
|
|
201
|
+
* @param eid - The entity ID
|
|
202
|
+
* @returns true if shrink is enabled, false otherwise
|
|
54
203
|
*/
|
|
55
|
-
|
|
204
|
+
declare function shouldShrink(world: World, eid: Entity): boolean;
|
|
56
205
|
/**
|
|
57
|
-
*
|
|
206
|
+
* Checks if an entity has a Dimensions component.
|
|
58
207
|
*
|
|
59
|
-
* @
|
|
60
|
-
* @
|
|
61
|
-
* @
|
|
208
|
+
* @param world - The ECS world
|
|
209
|
+
* @param eid - The entity ID
|
|
210
|
+
* @returns true if entity has Dimensions component
|
|
62
211
|
*/
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
212
|
+
declare function hasDimensions(world: World, eid: Entity): boolean;
|
|
213
|
+
/**
|
|
214
|
+
* Gets the width of an entity, resolving percentages against a container width.
|
|
215
|
+
*
|
|
216
|
+
* @param world - The ECS world
|
|
217
|
+
* @param eid - The entity ID
|
|
218
|
+
* @param containerWidth - Container width to resolve percentages against
|
|
219
|
+
* @returns Resolved width value, or undefined if no Dimensions component
|
|
220
|
+
*
|
|
221
|
+
* @example
|
|
222
|
+
* ```typescript
|
|
223
|
+
* import { getResolvedWidth, setDimensions } from 'blecsd';
|
|
224
|
+
*
|
|
225
|
+
* setDimensions(world, entity, '50%', 24);
|
|
226
|
+
* const width = getResolvedWidth(world, entity, 100); // Returns 50
|
|
227
|
+
* ```
|
|
228
|
+
*/
|
|
229
|
+
declare function getResolvedWidth(world: World, eid: Entity, containerWidth: number): number | undefined;
|
|
74
230
|
/**
|
|
75
|
-
*
|
|
231
|
+
* Gets the height of an entity, resolving percentages against a container height.
|
|
232
|
+
*
|
|
233
|
+
* @param world - The ECS world
|
|
234
|
+
* @param eid - The entity ID
|
|
235
|
+
* @param containerHeight - Container height to resolve percentages against
|
|
236
|
+
* @returns Resolved height value, or undefined if no Dimensions component
|
|
76
237
|
*
|
|
77
|
-
*
|
|
238
|
+
* @example
|
|
239
|
+
* ```typescript
|
|
240
|
+
* import { getResolvedHeight, setDimensions } from 'blecsd';
|
|
78
241
|
*
|
|
79
|
-
*
|
|
242
|
+
* setDimensions(world, entity, 80, '25%');
|
|
243
|
+
* const height = getResolvedHeight(world, entity, 80); // Returns 20
|
|
244
|
+
* ```
|
|
80
245
|
*/
|
|
246
|
+
declare function getResolvedHeight(world: World, eid: Entity, containerHeight: number): number | undefined;
|
|
81
247
|
|
|
248
|
+
/**
|
|
249
|
+
* List Component Types
|
|
250
|
+
*
|
|
251
|
+
* @module components/list/types
|
|
252
|
+
*/
|
|
82
253
|
/**
|
|
83
254
|
* List state type.
|
|
84
255
|
*/
|
|
@@ -211,6 +382,8 @@ type ListAction = {
|
|
|
211
382
|
type: 'confirm';
|
|
212
383
|
} | {
|
|
213
384
|
type: 'cancel';
|
|
385
|
+
} | {
|
|
386
|
+
type: 'toggleSelect';
|
|
214
387
|
} | {
|
|
215
388
|
type: 'startSearch';
|
|
216
389
|
} | {
|
|
@@ -223,690 +396,6 @@ type ListAction = {
|
|
|
223
396
|
} | {
|
|
224
397
|
type: 'searchNextMatch';
|
|
225
398
|
};
|
|
226
|
-
/** Default selected prefix character */
|
|
227
|
-
declare const DEFAULT_SELECTED_PREFIX = "> ";
|
|
228
|
-
/** Default unselected prefix character */
|
|
229
|
-
declare const DEFAULT_UNSELECTED_PREFIX = " ";
|
|
230
|
-
/** Default selected foreground color */
|
|
231
|
-
declare const DEFAULT_SELECTED_FG = 4294967295;
|
|
232
|
-
/** Default selected background color */
|
|
233
|
-
declare const DEFAULT_SELECTED_BG = 6750207;
|
|
234
|
-
/** Default item foreground color */
|
|
235
|
-
declare const DEFAULT_ITEM_FG = 3435973887;
|
|
236
|
-
/** Default item background color */
|
|
237
|
-
declare const DEFAULT_ITEM_BG = 255;
|
|
238
|
-
/** Default disabled foreground color */
|
|
239
|
-
declare const DEFAULT_DISABLED_FG = 1717987071;
|
|
240
|
-
/**
|
|
241
|
-
* Store for list component data.
|
|
242
|
-
*/
|
|
243
|
-
declare const listStore: ListStore;
|
|
244
|
-
/**
|
|
245
|
-
* State machine configuration for list widgets.
|
|
246
|
-
*
|
|
247
|
-
* States:
|
|
248
|
-
* - idle: List is not focused
|
|
249
|
-
* - focused: List has focus, ready for navigation
|
|
250
|
-
* - selecting: User is actively selecting (e.g., during mouse drag)
|
|
251
|
-
* - searching: User is typing to search/filter items
|
|
252
|
-
* - disabled: List is disabled and cannot be interacted with
|
|
253
|
-
*/
|
|
254
|
-
declare const LIST_STATE_MACHINE_CONFIG: StateMachineConfig<ListState, ListEvent>;
|
|
255
|
-
/**
|
|
256
|
-
* Attaches list behavior to an entity.
|
|
257
|
-
*
|
|
258
|
-
* @param world - The ECS world
|
|
259
|
-
* @param eid - The entity ID
|
|
260
|
-
* @param items - Initial items
|
|
261
|
-
* @param options - List options
|
|
262
|
-
*
|
|
263
|
-
* @example
|
|
264
|
-
* ```typescript
|
|
265
|
-
* import { attachListBehavior } from 'blecsd';
|
|
266
|
-
*
|
|
267
|
-
* attachListBehavior(world, eid, [
|
|
268
|
-
* { text: 'Option 1', value: 'opt1' },
|
|
269
|
-
* { text: 'Option 2', value: 'opt2' },
|
|
270
|
-
* ], { interactive: true, keys: true });
|
|
271
|
-
* ```
|
|
272
|
-
*/
|
|
273
|
-
declare function attachListBehavior(world: World, eid: Entity, items?: ListItem[], options?: {
|
|
274
|
-
interactive?: boolean;
|
|
275
|
-
mouse?: boolean;
|
|
276
|
-
keys?: boolean;
|
|
277
|
-
search?: boolean;
|
|
278
|
-
selectedIndex?: number;
|
|
279
|
-
visibleCount?: number;
|
|
280
|
-
}): void;
|
|
281
|
-
/**
|
|
282
|
-
* Checks if an entity is a list.
|
|
283
|
-
*
|
|
284
|
-
* @param world - The ECS world
|
|
285
|
-
* @param eid - The entity ID
|
|
286
|
-
* @returns true if entity is a list
|
|
287
|
-
*/
|
|
288
|
-
declare function isList(world: World, eid: Entity): boolean;
|
|
289
|
-
/**
|
|
290
|
-
* Gets the current state of a list.
|
|
291
|
-
*
|
|
292
|
-
* @param world - The ECS world
|
|
293
|
-
* @param eid - The entity ID
|
|
294
|
-
* @returns The current state
|
|
295
|
-
*/
|
|
296
|
-
declare function getListState(world: World, eid: Entity): ListState;
|
|
297
|
-
/**
|
|
298
|
-
* Checks if list is in a specific state.
|
|
299
|
-
*
|
|
300
|
-
* @param world - The ECS world
|
|
301
|
-
* @param eid - The entity ID
|
|
302
|
-
* @param state - The state to check
|
|
303
|
-
* @returns true if list is in the specified state
|
|
304
|
-
*/
|
|
305
|
-
declare function isListInState(world: World, eid: Entity, state: ListState): boolean;
|
|
306
|
-
/**
|
|
307
|
-
* Checks if list is focused.
|
|
308
|
-
*
|
|
309
|
-
* @param world - The ECS world
|
|
310
|
-
* @param eid - The entity ID
|
|
311
|
-
* @returns true if list is focused
|
|
312
|
-
*/
|
|
313
|
-
declare function isListFocused(world: World, eid: Entity): boolean;
|
|
314
|
-
/**
|
|
315
|
-
* Checks if list is disabled.
|
|
316
|
-
*
|
|
317
|
-
* @param world - The ECS world
|
|
318
|
-
* @param eid - The entity ID
|
|
319
|
-
* @returns true if list is disabled
|
|
320
|
-
*/
|
|
321
|
-
declare function isListDisabled(world: World, eid: Entity): boolean;
|
|
322
|
-
/**
|
|
323
|
-
* Sends an event to the list state machine.
|
|
324
|
-
*
|
|
325
|
-
* @param world - The ECS world
|
|
326
|
-
* @param eid - The entity ID
|
|
327
|
-
* @param event - The event to send
|
|
328
|
-
* @returns true if transition occurred
|
|
329
|
-
*/
|
|
330
|
-
declare function sendListEvent(world: World, eid: Entity, event: ListEvent): boolean;
|
|
331
|
-
/**
|
|
332
|
-
* Focuses the list.
|
|
333
|
-
*
|
|
334
|
-
* @param world - The ECS world
|
|
335
|
-
* @param eid - The entity ID
|
|
336
|
-
* @returns true if focused successfully
|
|
337
|
-
*/
|
|
338
|
-
declare function focusList(world: World, eid: Entity): boolean;
|
|
339
|
-
/**
|
|
340
|
-
* Blurs the list.
|
|
341
|
-
*
|
|
342
|
-
* @param world - The ECS world
|
|
343
|
-
* @param eid - The entity ID
|
|
344
|
-
* @returns true if blurred successfully
|
|
345
|
-
*/
|
|
346
|
-
declare function blurList(world: World, eid: Entity): boolean;
|
|
347
|
-
/**
|
|
348
|
-
* Disables the list.
|
|
349
|
-
*
|
|
350
|
-
* @param world - The ECS world
|
|
351
|
-
* @param eid - The entity ID
|
|
352
|
-
* @returns true if disabled successfully
|
|
353
|
-
*/
|
|
354
|
-
declare function disableList(world: World, eid: Entity): boolean;
|
|
355
|
-
/**
|
|
356
|
-
* Enables the list.
|
|
357
|
-
*
|
|
358
|
-
* @param world - The ECS world
|
|
359
|
-
* @param eid - The entity ID
|
|
360
|
-
* @returns true if enabled successfully
|
|
361
|
-
*/
|
|
362
|
-
declare function enableList(world: World, eid: Entity): boolean;
|
|
363
|
-
/**
|
|
364
|
-
* Gets all items from a list.
|
|
365
|
-
*
|
|
366
|
-
* @param eid - The entity ID
|
|
367
|
-
* @returns Array of list items
|
|
368
|
-
*/
|
|
369
|
-
declare function getItems(eid: Entity): readonly ListItem[];
|
|
370
|
-
/**
|
|
371
|
-
* Sets all items in a list.
|
|
372
|
-
*
|
|
373
|
-
* @param world - The ECS world
|
|
374
|
-
* @param eid - The entity ID
|
|
375
|
-
* @param items - The items to set
|
|
376
|
-
*/
|
|
377
|
-
declare function setItems(world: World, eid: Entity, items: ListItem[]): void;
|
|
378
|
-
/**
|
|
379
|
-
* Adds an item to the list.
|
|
380
|
-
*
|
|
381
|
-
* @param world - The ECS world
|
|
382
|
-
* @param eid - The entity ID
|
|
383
|
-
* @param item - The item to add
|
|
384
|
-
* @param index - Optional index to insert at (defaults to end)
|
|
385
|
-
*/
|
|
386
|
-
declare function addItem(world: World, eid: Entity, item: ListItem, index?: number): void;
|
|
387
|
-
/**
|
|
388
|
-
* Removes an item from the list.
|
|
389
|
-
*
|
|
390
|
-
* @param world - The ECS world
|
|
391
|
-
* @param eid - The entity ID
|
|
392
|
-
* @param index - The index to remove
|
|
393
|
-
* @returns The removed item or undefined
|
|
394
|
-
*/
|
|
395
|
-
declare function removeItem(world: World, eid: Entity, index: number): ListItem | undefined;
|
|
396
|
-
/**
|
|
397
|
-
* Gets an item by index.
|
|
398
|
-
*
|
|
399
|
-
* @param eid - The entity ID
|
|
400
|
-
* @param index - The item index
|
|
401
|
-
* @returns The item or undefined
|
|
402
|
-
*/
|
|
403
|
-
declare function getItem(eid: Entity, index: number): ListItem | undefined;
|
|
404
|
-
/**
|
|
405
|
-
* Updates an item at a specific index.
|
|
406
|
-
*
|
|
407
|
-
* @param world - The ECS world
|
|
408
|
-
* @param eid - The entity ID
|
|
409
|
-
* @param index - The item index
|
|
410
|
-
* @param item - The new item data
|
|
411
|
-
* @returns true if updated successfully
|
|
412
|
-
*/
|
|
413
|
-
declare function updateItem(world: World, eid: Entity, index: number, item: ListItem): boolean;
|
|
414
|
-
/**
|
|
415
|
-
* Gets the number of items in the list.
|
|
416
|
-
*
|
|
417
|
-
* @param eid - The entity ID
|
|
418
|
-
* @returns Number of items
|
|
419
|
-
*/
|
|
420
|
-
declare function getItemCount(eid: Entity): number;
|
|
421
|
-
/**
|
|
422
|
-
* Clears all items from the list.
|
|
423
|
-
*
|
|
424
|
-
* @param world - The ECS world
|
|
425
|
-
* @param eid - The entity ID
|
|
426
|
-
*/
|
|
427
|
-
declare function clearItems(world: World, eid: Entity): void;
|
|
428
|
-
/**
|
|
429
|
-
* Gets the selected index.
|
|
430
|
-
*
|
|
431
|
-
* @param eid - The entity ID
|
|
432
|
-
* @returns Selected index or -1 if none
|
|
433
|
-
*/
|
|
434
|
-
declare function getSelectedIndex(eid: Entity): number;
|
|
435
|
-
/**
|
|
436
|
-
* Gets the selected item.
|
|
437
|
-
*
|
|
438
|
-
* @param eid - The entity ID
|
|
439
|
-
* @returns Selected item or undefined
|
|
440
|
-
*/
|
|
441
|
-
declare function getSelectedItem(eid: Entity): ListItem | undefined;
|
|
442
|
-
declare function setSelectedIndex(world: World, eid: Entity, index: number): boolean;
|
|
443
|
-
/**
|
|
444
|
-
* Selects the previous item.
|
|
445
|
-
*
|
|
446
|
-
* @param world - The ECS world
|
|
447
|
-
* @param eid - The entity ID
|
|
448
|
-
* @param wrap - Whether to wrap around (default: true)
|
|
449
|
-
* @returns true if selection changed
|
|
450
|
-
*/
|
|
451
|
-
declare function selectPrev(world: World, eid: Entity, wrap?: boolean): boolean;
|
|
452
|
-
/**
|
|
453
|
-
* Selects the next item.
|
|
454
|
-
*
|
|
455
|
-
* @param world - The ECS world
|
|
456
|
-
* @param eid - The entity ID
|
|
457
|
-
* @param wrap - Whether to wrap around (default: true)
|
|
458
|
-
* @returns true if selection changed
|
|
459
|
-
*/
|
|
460
|
-
declare function selectNext(world: World, eid: Entity, wrap?: boolean): boolean;
|
|
461
|
-
/**
|
|
462
|
-
* Selects the first item.
|
|
463
|
-
*
|
|
464
|
-
* @param world - The ECS world
|
|
465
|
-
* @param eid - The entity ID
|
|
466
|
-
* @returns true if selection changed
|
|
467
|
-
*/
|
|
468
|
-
declare function selectFirst(world: World, eid: Entity): boolean;
|
|
469
|
-
/**
|
|
470
|
-
* Selects the last item.
|
|
471
|
-
*
|
|
472
|
-
* @param world - The ECS world
|
|
473
|
-
* @param eid - The entity ID
|
|
474
|
-
* @returns true if selection changed
|
|
475
|
-
*/
|
|
476
|
-
declare function selectLast(world: World, eid: Entity): boolean;
|
|
477
|
-
/**
|
|
478
|
-
* Selects an item by value.
|
|
479
|
-
*
|
|
480
|
-
* @param world - The ECS world
|
|
481
|
-
* @param eid - The entity ID
|
|
482
|
-
* @param value - The value to select
|
|
483
|
-
* @returns true if selection changed
|
|
484
|
-
*/
|
|
485
|
-
declare function selectByValue(world: World, eid: Entity, value: string): boolean;
|
|
486
|
-
/**
|
|
487
|
-
* Clears the selection.
|
|
488
|
-
*
|
|
489
|
-
* @param world - The ECS world
|
|
490
|
-
* @param eid - The entity ID
|
|
491
|
-
*/
|
|
492
|
-
declare function clearSelection(world: World, eid: Entity): void;
|
|
493
|
-
/**
|
|
494
|
-
* Activates (confirms) the currently selected item.
|
|
495
|
-
*
|
|
496
|
-
* @param world - The ECS world
|
|
497
|
-
* @param eid - The entity ID
|
|
498
|
-
* @returns true if an item was activated
|
|
499
|
-
*/
|
|
500
|
-
declare function activateSelected(_world: World, eid: Entity): boolean;
|
|
501
|
-
/**
|
|
502
|
-
* Gets the first visible item index.
|
|
503
|
-
*
|
|
504
|
-
* @param eid - The entity ID
|
|
505
|
-
* @returns First visible index
|
|
506
|
-
*/
|
|
507
|
-
declare function getFirstVisible(eid: Entity): number;
|
|
508
|
-
/**
|
|
509
|
-
* Sets the first visible item index.
|
|
510
|
-
*
|
|
511
|
-
* @param world - The ECS world
|
|
512
|
-
* @param eid - The entity ID
|
|
513
|
-
* @param index - The first visible index
|
|
514
|
-
*/
|
|
515
|
-
declare function setFirstVisible(world: World, eid: Entity, index: number): void;
|
|
516
|
-
/**
|
|
517
|
-
* Gets the number of visible items.
|
|
518
|
-
*
|
|
519
|
-
* @param eid - The entity ID
|
|
520
|
-
* @returns Number of visible items
|
|
521
|
-
*/
|
|
522
|
-
declare function getVisibleCount(eid: Entity): number;
|
|
523
|
-
/**
|
|
524
|
-
* Sets the number of visible items.
|
|
525
|
-
*
|
|
526
|
-
* @param world - The ECS world
|
|
527
|
-
* @param eid - The entity ID
|
|
528
|
-
* @param count - The number of visible items
|
|
529
|
-
*/
|
|
530
|
-
declare function setVisibleCount(world: World, eid: Entity, count: number): void;
|
|
531
|
-
/**
|
|
532
|
-
* Ensures an index is visible by scrolling if necessary.
|
|
533
|
-
*
|
|
534
|
-
* @param world - The ECS world
|
|
535
|
-
* @param eid - The entity ID
|
|
536
|
-
* @param index - The index to make visible
|
|
537
|
-
*/
|
|
538
|
-
declare function ensureVisible(world: World, eid: Entity, index: number): void;
|
|
539
|
-
/**
|
|
540
|
-
* Scrolls the list by a page (visibleCount items).
|
|
541
|
-
*
|
|
542
|
-
* @param world - The ECS world
|
|
543
|
-
* @param eid - The entity ID
|
|
544
|
-
* @param direction - 1 for down, -1 for up
|
|
545
|
-
* @returns true if scrolled
|
|
546
|
-
*/
|
|
547
|
-
declare function scrollPage(world: World, eid: Entity, direction: 1 | -1): boolean;
|
|
548
|
-
/**
|
|
549
|
-
* Gets the visible items for rendering.
|
|
550
|
-
*
|
|
551
|
-
* @param eid - The entity ID
|
|
552
|
-
* @returns Array of visible items with their indices
|
|
553
|
-
*/
|
|
554
|
-
declare function getVisibleItems(eid: Entity): Array<{
|
|
555
|
-
index: number;
|
|
556
|
-
item: ListItem;
|
|
557
|
-
}>;
|
|
558
|
-
/**
|
|
559
|
-
* Sets the total item count for virtualized lists.
|
|
560
|
-
* This can be larger than the actual loaded items count for infinite scroll.
|
|
561
|
-
*
|
|
562
|
-
* @param world - The ECS world
|
|
563
|
-
* @param eid - The entity ID
|
|
564
|
-
* @param count - Total item count
|
|
565
|
-
*/
|
|
566
|
-
declare function setTotalCount(world: World, eid: Entity, count: number): void;
|
|
567
|
-
/**
|
|
568
|
-
* Gets the total item count (may be larger than loaded items).
|
|
569
|
-
*
|
|
570
|
-
* @param eid - The entity ID
|
|
571
|
-
* @returns Total item count
|
|
572
|
-
*/
|
|
573
|
-
declare function getTotalCount(eid: Entity): number;
|
|
574
|
-
/**
|
|
575
|
-
* Sets the lazy load callback for loading items on demand.
|
|
576
|
-
*
|
|
577
|
-
* @param eid - The entity ID
|
|
578
|
-
* @param callback - Callback function to load items
|
|
579
|
-
*/
|
|
580
|
-
declare function setLazyLoadCallback(eid: Entity, callback: ListLazyLoadCallback): void;
|
|
581
|
-
/**
|
|
582
|
-
* Gets the lazy load callback.
|
|
583
|
-
*
|
|
584
|
-
* @param eid - The entity ID
|
|
585
|
-
* @returns Lazy load callback or undefined
|
|
586
|
-
*/
|
|
587
|
-
declare function getLazyLoadCallback(eid: Entity): ListLazyLoadCallback | undefined;
|
|
588
|
-
/**
|
|
589
|
-
* Clears the lazy load callback.
|
|
590
|
-
*
|
|
591
|
-
* @param eid - The entity ID
|
|
592
|
-
*/
|
|
593
|
-
declare function clearLazyLoadCallback(eid: Entity): void;
|
|
594
|
-
/**
|
|
595
|
-
* Registers a scroll callback for detecting scroll events.
|
|
596
|
-
*
|
|
597
|
-
* @param eid - The entity ID
|
|
598
|
-
* @param callback - Callback function
|
|
599
|
-
* @returns Unsubscribe function
|
|
600
|
-
*/
|
|
601
|
-
declare function onListScroll(eid: Entity, callback: ListScrollCallback): () => void;
|
|
602
|
-
/**
|
|
603
|
-
* Sets the loading state for a list.
|
|
604
|
-
*
|
|
605
|
-
* @param world - The ECS world
|
|
606
|
-
* @param eid - The entity ID
|
|
607
|
-
* @param loading - Whether items are loading
|
|
608
|
-
*/
|
|
609
|
-
declare function setListLoading(world: World, eid: Entity, loading: boolean): void;
|
|
610
|
-
/**
|
|
611
|
-
* Checks if a list is currently loading items.
|
|
612
|
-
*
|
|
613
|
-
* @param eid - The entity ID
|
|
614
|
-
* @returns true if loading
|
|
615
|
-
*/
|
|
616
|
-
declare function isListLoading(eid: Entity): boolean;
|
|
617
|
-
/**
|
|
618
|
-
* Sets the loading placeholder text.
|
|
619
|
-
*
|
|
620
|
-
* @param eid - The entity ID
|
|
621
|
-
* @param text - Placeholder text to show while loading
|
|
622
|
-
*/
|
|
623
|
-
declare function setLoadingPlaceholder(eid: Entity, text: string): void;
|
|
624
|
-
/**
|
|
625
|
-
* Gets the loading placeholder text.
|
|
626
|
-
*
|
|
627
|
-
* @param eid - The entity ID
|
|
628
|
-
* @returns Loading placeholder text
|
|
629
|
-
*/
|
|
630
|
-
declare function getLoadingPlaceholder(eid: Entity): string;
|
|
631
|
-
/**
|
|
632
|
-
* Loads items for a range using the lazy load callback.
|
|
633
|
-
* Returns immediately if no callback is set or already loading.
|
|
634
|
-
*
|
|
635
|
-
* @param world - The ECS world
|
|
636
|
-
* @param eid - The entity ID
|
|
637
|
-
* @param startIndex - First item to load
|
|
638
|
-
* @param count - Number of items to load
|
|
639
|
-
* @returns Promise that resolves when loading completes
|
|
640
|
-
*/
|
|
641
|
-
declare function loadItems(world: World, eid: Entity, startIndex: number, count: number): Promise<void>;
|
|
642
|
-
/**
|
|
643
|
-
* Checks if items need to be loaded for the current visible range.
|
|
644
|
-
*
|
|
645
|
-
* @param eid - The entity ID
|
|
646
|
-
* @returns Object with needsLoad flag and range to load
|
|
647
|
-
*/
|
|
648
|
-
declare function checkNeedsLoad(eid: Entity): {
|
|
649
|
-
needsLoad: boolean;
|
|
650
|
-
startIndex: number;
|
|
651
|
-
count: number;
|
|
652
|
-
};
|
|
653
|
-
/**
|
|
654
|
-
* Gets scroll info for the list.
|
|
655
|
-
*
|
|
656
|
-
* @param eid - The entity ID
|
|
657
|
-
* @param threshold - Items from end to trigger nearEnd (default: visibleCount)
|
|
658
|
-
* @returns Scroll information
|
|
659
|
-
*/
|
|
660
|
-
declare function getScrollInfo$1(eid: Entity, threshold?: number): ListScrollInfo;
|
|
661
|
-
/**
|
|
662
|
-
* Appends items to the list (useful for infinite scroll).
|
|
663
|
-
*
|
|
664
|
-
* @param world - The ECS world
|
|
665
|
-
* @param eid - The entity ID
|
|
666
|
-
* @param newItems - Items to append
|
|
667
|
-
*/
|
|
668
|
-
declare function appendItems(world: World, eid: Entity, newItems: readonly ListItem[]): void;
|
|
669
|
-
/**
|
|
670
|
-
* Sets the list display configuration.
|
|
671
|
-
*
|
|
672
|
-
* @param eid - The entity ID
|
|
673
|
-
* @param options - Display options
|
|
674
|
-
*/
|
|
675
|
-
declare function setListDisplay(eid: Entity, options: ListDisplayOptions): void;
|
|
676
|
-
/**
|
|
677
|
-
* Gets the list display configuration.
|
|
678
|
-
*
|
|
679
|
-
* @param eid - The entity ID
|
|
680
|
-
* @returns Display configuration
|
|
681
|
-
*/
|
|
682
|
-
declare function getListDisplay(eid: Entity): ListDisplay;
|
|
683
|
-
/**
|
|
684
|
-
* Clears the list display configuration.
|
|
685
|
-
*
|
|
686
|
-
* @param eid - The entity ID
|
|
687
|
-
*/
|
|
688
|
-
declare function clearListDisplay(eid: Entity): void;
|
|
689
|
-
/**
|
|
690
|
-
* Checks if list is interactive.
|
|
691
|
-
*
|
|
692
|
-
* @param eid - The entity ID
|
|
693
|
-
* @returns true if interactive
|
|
694
|
-
*/
|
|
695
|
-
declare function isListInteractive(eid: Entity): boolean;
|
|
696
|
-
/**
|
|
697
|
-
* Sets list interactive mode.
|
|
698
|
-
*
|
|
699
|
-
* @param world - The ECS world
|
|
700
|
-
* @param eid - The entity ID
|
|
701
|
-
* @param interactive - Whether list is interactive
|
|
702
|
-
*/
|
|
703
|
-
declare function setListInteractive(world: World, eid: Entity, interactive: boolean): void;
|
|
704
|
-
/**
|
|
705
|
-
* Checks if list responds to mouse.
|
|
706
|
-
*
|
|
707
|
-
* @param eid - The entity ID
|
|
708
|
-
* @returns true if mouse enabled
|
|
709
|
-
*/
|
|
710
|
-
declare function isListMouseEnabled(eid: Entity): boolean;
|
|
711
|
-
/**
|
|
712
|
-
* Sets list mouse mode.
|
|
713
|
-
*
|
|
714
|
-
* @param world - The ECS world
|
|
715
|
-
* @param eid - The entity ID
|
|
716
|
-
* @param mouse - Whether mouse is enabled
|
|
717
|
-
*/
|
|
718
|
-
declare function setListMouse(world: World, eid: Entity, mouse: boolean): void;
|
|
719
|
-
/**
|
|
720
|
-
* Checks if list responds to keyboard.
|
|
721
|
-
*
|
|
722
|
-
* @param eid - The entity ID
|
|
723
|
-
* @returns true if keys enabled
|
|
724
|
-
*/
|
|
725
|
-
declare function isListKeysEnabled(eid: Entity): boolean;
|
|
726
|
-
/**
|
|
727
|
-
* Sets list keys mode.
|
|
728
|
-
*
|
|
729
|
-
* @param world - The ECS world
|
|
730
|
-
* @param eid - The entity ID
|
|
731
|
-
* @param keys - Whether keys are enabled
|
|
732
|
-
*/
|
|
733
|
-
declare function setListKeys(world: World, eid: Entity, keys: boolean): void;
|
|
734
|
-
/**
|
|
735
|
-
* Checks if search mode is enabled for the list.
|
|
736
|
-
*
|
|
737
|
-
* @param eid - The entity ID
|
|
738
|
-
* @returns true if search is enabled
|
|
739
|
-
*/
|
|
740
|
-
declare function isListSearchEnabled(eid: Entity): boolean;
|
|
741
|
-
/**
|
|
742
|
-
* Sets whether search mode is enabled for the list.
|
|
743
|
-
*
|
|
744
|
-
* @param world - The ECS world
|
|
745
|
-
* @param eid - The entity ID
|
|
746
|
-
* @param enabled - Whether search is enabled
|
|
747
|
-
*/
|
|
748
|
-
declare function setListSearchEnabled(world: World, eid: Entity, enabled: boolean): void;
|
|
749
|
-
/**
|
|
750
|
-
* Checks if list is currently in search mode.
|
|
751
|
-
*
|
|
752
|
-
* @param world - The ECS world
|
|
753
|
-
* @param eid - The entity ID
|
|
754
|
-
* @returns true if list is in searching state
|
|
755
|
-
*/
|
|
756
|
-
declare function isListSearching(world: World, eid: Entity): boolean;
|
|
757
|
-
/**
|
|
758
|
-
* Starts search mode for the list.
|
|
759
|
-
*
|
|
760
|
-
* @param world - The ECS world
|
|
761
|
-
* @param eid - The entity ID
|
|
762
|
-
* @returns true if search mode was started
|
|
763
|
-
*/
|
|
764
|
-
declare function startListSearch(world: World, eid: Entity): boolean;
|
|
765
|
-
/**
|
|
766
|
-
* Ends search mode for the list.
|
|
767
|
-
*
|
|
768
|
-
* @param world - The ECS world
|
|
769
|
-
* @param eid - The entity ID
|
|
770
|
-
* @returns true if search mode was ended
|
|
771
|
-
*/
|
|
772
|
-
declare function endListSearch(world: World, eid: Entity): boolean;
|
|
773
|
-
/**
|
|
774
|
-
* Gets the current search query.
|
|
775
|
-
*
|
|
776
|
-
* @param eid - The entity ID
|
|
777
|
-
* @returns The current search query or empty string
|
|
778
|
-
*/
|
|
779
|
-
declare function getListSearchQuery(eid: Entity): string;
|
|
780
|
-
/**
|
|
781
|
-
* Sets the search query and finds matching items.
|
|
782
|
-
*
|
|
783
|
-
* @param world - The ECS world
|
|
784
|
-
* @param eid - The entity ID
|
|
785
|
-
* @param query - The search query
|
|
786
|
-
* @returns true if a match was found and selected
|
|
787
|
-
*/
|
|
788
|
-
declare function setListSearchQuery(world: World, eid: Entity, query: string): boolean;
|
|
789
|
-
/**
|
|
790
|
-
* Appends a character to the search query.
|
|
791
|
-
*
|
|
792
|
-
* @param world - The ECS world
|
|
793
|
-
* @param eid - The entity ID
|
|
794
|
-
* @param char - The character to append
|
|
795
|
-
* @returns true if a match was found and selected
|
|
796
|
-
*/
|
|
797
|
-
declare function appendToSearchQuery(world: World, eid: Entity, char: string): boolean;
|
|
798
|
-
/**
|
|
799
|
-
* Removes the last character from the search query.
|
|
800
|
-
*
|
|
801
|
-
* @param world - The ECS world
|
|
802
|
-
* @param eid - The entity ID
|
|
803
|
-
* @returns true if a match was found and selected
|
|
804
|
-
*/
|
|
805
|
-
declare function backspaceSearchQuery(world: World, eid: Entity): boolean;
|
|
806
|
-
/**
|
|
807
|
-
* Clears the search query.
|
|
808
|
-
*
|
|
809
|
-
* @param world - The ECS world
|
|
810
|
-
* @param eid - The entity ID
|
|
811
|
-
*/
|
|
812
|
-
declare function clearSearchQuery(world: World, eid: Entity): void;
|
|
813
|
-
/**
|
|
814
|
-
* Finds and selects the first item matching the text (case-insensitive).
|
|
815
|
-
*
|
|
816
|
-
* @param world - The ECS world
|
|
817
|
-
* @param eid - The entity ID
|
|
818
|
-
* @param text - The text to search for
|
|
819
|
-
* @returns true if a match was found and selected
|
|
820
|
-
*/
|
|
821
|
-
declare function findAndSelectByText(world: World, eid: Entity, text: string): boolean;
|
|
822
|
-
/**
|
|
823
|
-
* Finds the next item matching the current search query.
|
|
824
|
-
*
|
|
825
|
-
* @param world - The ECS world
|
|
826
|
-
* @param eid - The entity ID
|
|
827
|
-
* @returns true if a match was found and selected
|
|
828
|
-
*/
|
|
829
|
-
declare function findNextMatch(world: World, eid: Entity): boolean;
|
|
830
|
-
/**
|
|
831
|
-
* Registers a callback for when search query changes.
|
|
832
|
-
*
|
|
833
|
-
* @param eid - The entity ID
|
|
834
|
-
* @param callback - The callback function
|
|
835
|
-
* @returns Unsubscribe function
|
|
836
|
-
*
|
|
837
|
-
* @example
|
|
838
|
-
* ```typescript
|
|
839
|
-
* const unsubscribe = onListSearchChange(eid, (query) => {
|
|
840
|
-
* console.log(`Search: ${query}`);
|
|
841
|
-
* });
|
|
842
|
-
* ```
|
|
843
|
-
*/
|
|
844
|
-
declare function onListSearchChange(eid: Entity, callback: (query: string) => void): () => void;
|
|
845
|
-
/**
|
|
846
|
-
* Registers a callback for when selection changes.
|
|
847
|
-
*
|
|
848
|
-
* @param eid - The entity ID
|
|
849
|
-
* @param callback - The callback function
|
|
850
|
-
* @returns Unsubscribe function
|
|
851
|
-
*
|
|
852
|
-
* @example
|
|
853
|
-
* ```typescript
|
|
854
|
-
* const unsubscribe = onListSelect(eid, (index, item) => {
|
|
855
|
-
* console.log(`Selected: ${item.text}`);
|
|
856
|
-
* });
|
|
857
|
-
* ```
|
|
858
|
-
*/
|
|
859
|
-
declare function onListSelect(eid: Entity, callback: ListSelectCallback): () => void;
|
|
860
|
-
/**
|
|
861
|
-
* Registers a callback for when an item is activated (confirmed).
|
|
862
|
-
*
|
|
863
|
-
* @param eid - The entity ID
|
|
864
|
-
* @param callback - The callback function
|
|
865
|
-
* @returns Unsubscribe function
|
|
866
|
-
*
|
|
867
|
-
* @example
|
|
868
|
-
* ```typescript
|
|
869
|
-
* const unsubscribe = onListActivate(eid, (index, item) => {
|
|
870
|
-
* console.log(`Activated: ${item.text}`);
|
|
871
|
-
* });
|
|
872
|
-
* ```
|
|
873
|
-
*/
|
|
874
|
-
declare function onListActivate(eid: Entity, callback: ListSelectCallback): () => void;
|
|
875
|
-
/**
|
|
876
|
-
* Clears all callbacks for a list.
|
|
877
|
-
*
|
|
878
|
-
* @param eid - The entity ID
|
|
879
|
-
*/
|
|
880
|
-
declare function clearListCallbacks(eid: Entity): void;
|
|
881
|
-
/**
|
|
882
|
-
* Handles key press for list widget.
|
|
883
|
-
*
|
|
884
|
-
* @param world - The ECS world
|
|
885
|
-
* @param eid - The entity ID
|
|
886
|
-
* @param key - The key name
|
|
887
|
-
* @returns Action to perform or null
|
|
888
|
-
*
|
|
889
|
-
* @example
|
|
890
|
-
* ```typescript
|
|
891
|
-
* const action = handleListKeyPress(world, eid, 'down');
|
|
892
|
-
* if (action?.type === 'selectNext') {
|
|
893
|
-
* selectNext(world, eid);
|
|
894
|
-
* }
|
|
895
|
-
* ```
|
|
896
|
-
*/
|
|
897
|
-
declare function handleListKeyPress(world: World, eid: Entity, key: string): ListAction | null;
|
|
898
|
-
/**
|
|
899
|
-
* Renders list items as strings for display.
|
|
900
|
-
*
|
|
901
|
-
* @param eid - The entity ID
|
|
902
|
-
* @param width - Available width
|
|
903
|
-
* @returns Array of rendered line strings
|
|
904
|
-
*/
|
|
905
|
-
declare function renderListItems(eid: Entity, width: number): string[];
|
|
906
|
-
/**
|
|
907
|
-
* Resets the list store. Used for testing.
|
|
908
|
-
*/
|
|
909
|
-
declare function resetListStore(): void;
|
|
910
399
|
|
|
911
400
|
/**
|
|
912
401
|
* Scrollable component for scrolling support.
|
|
@@ -1258,13 +747,13 @@ interface TableColumn {
|
|
|
1258
747
|
/** Column header text */
|
|
1259
748
|
readonly header: string;
|
|
1260
749
|
/** Column width (characters) */
|
|
1261
|
-
readonly width?: number;
|
|
750
|
+
readonly width?: number | undefined;
|
|
1262
751
|
/** Column minimum width */
|
|
1263
|
-
readonly minWidth?: number;
|
|
752
|
+
readonly minWidth?: number | undefined;
|
|
1264
753
|
/** Column maximum width */
|
|
1265
|
-
readonly maxWidth?: number;
|
|
754
|
+
readonly maxWidth?: number | undefined;
|
|
1266
755
|
/** Column alignment */
|
|
1267
|
-
readonly align?: CellAlign;
|
|
756
|
+
readonly align?: CellAlign | undefined;
|
|
1268
757
|
}
|
|
1269
758
|
/**
|
|
1270
759
|
* Table store for managing table-specific data.
|
|
@@ -1429,17 +918,19 @@ declare function setData(world: World, eid: Entity, rows: ReadonlyArray<Readonly
|
|
|
1429
918
|
/**
|
|
1430
919
|
* Gets the table data.
|
|
1431
920
|
*
|
|
921
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1432
922
|
* @param eid - The entity ID
|
|
1433
923
|
* @returns Table data as array of rows
|
|
1434
924
|
*/
|
|
1435
|
-
declare function getData(eid: Entity): TableData;
|
|
925
|
+
declare function getData(_world: World, eid: Entity): TableData;
|
|
1436
926
|
/**
|
|
1437
927
|
* Gets the table data as a string array.
|
|
1438
928
|
*
|
|
929
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1439
930
|
* @param eid - The entity ID
|
|
1440
931
|
* @returns Table data as string[][]
|
|
1441
932
|
*/
|
|
1442
|
-
declare function getDataAsStrings(eid: Entity): string[][];
|
|
933
|
+
declare function getDataAsStrings(_world: World, eid: Entity): string[][];
|
|
1443
934
|
/**
|
|
1444
935
|
* Sets a single cell value.
|
|
1445
936
|
*
|
|
@@ -1460,51 +951,57 @@ declare function setCell(world: World, eid: Entity, row: number, col: number, va
|
|
|
1460
951
|
/**
|
|
1461
952
|
* Gets a single cell value.
|
|
1462
953
|
*
|
|
954
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1463
955
|
* @param eid - The entity ID
|
|
1464
956
|
* @param row - Row index (0-based)
|
|
1465
957
|
* @param col - Column index (0-based)
|
|
1466
958
|
* @returns Cell data or undefined if out of bounds
|
|
1467
959
|
*/
|
|
1468
|
-
declare function getCell(eid: Entity, row: number, col: number): TableCell | undefined;
|
|
960
|
+
declare function getCell(_world: World, eid: Entity, row: number, col: number): TableCell | undefined;
|
|
1469
961
|
/**
|
|
1470
962
|
* Gets a cell's string value.
|
|
1471
963
|
*
|
|
964
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1472
965
|
* @param eid - The entity ID
|
|
1473
966
|
* @param row - Row index (0-based)
|
|
1474
967
|
* @param col - Column index (0-based)
|
|
1475
968
|
* @returns Cell value string or undefined if out of bounds
|
|
1476
969
|
*/
|
|
1477
|
-
declare function getCellValue(eid: Entity, row: number, col: number): string | undefined;
|
|
970
|
+
declare function getCellValue(world: World, eid: Entity, row: number, col: number): string | undefined;
|
|
1478
971
|
/**
|
|
1479
972
|
* Gets a specific row.
|
|
1480
973
|
*
|
|
974
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1481
975
|
* @param eid - The entity ID
|
|
1482
976
|
* @param row - Row index (0-based)
|
|
1483
977
|
* @returns Row data or undefined if out of bounds
|
|
1484
978
|
*/
|
|
1485
|
-
declare function getRow(eid: Entity, row: number): TableRow | undefined;
|
|
979
|
+
declare function getRow(_world: World, eid: Entity, row: number): TableRow | undefined;
|
|
1486
980
|
/**
|
|
1487
981
|
* Gets a specific column.
|
|
1488
982
|
*
|
|
983
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1489
984
|
* @param eid - The entity ID
|
|
1490
985
|
* @param col - Column index (0-based)
|
|
1491
986
|
* @returns Column data as array of cells
|
|
1492
987
|
*/
|
|
1493
|
-
declare function getColumn(eid: Entity, col: number): readonly TableCell[];
|
|
988
|
+
declare function getColumn(_world: World, eid: Entity, col: number): readonly TableCell[];
|
|
1494
989
|
/**
|
|
1495
990
|
* Gets the number of rows.
|
|
1496
991
|
*
|
|
992
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1497
993
|
* @param eid - The entity ID
|
|
1498
994
|
* @returns Number of rows
|
|
1499
995
|
*/
|
|
1500
|
-
declare function getRowCount(eid: Entity): number;
|
|
996
|
+
declare function getRowCount(_world: World, eid: Entity): number;
|
|
1501
997
|
/**
|
|
1502
998
|
* Gets the number of columns.
|
|
1503
999
|
*
|
|
1000
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1504
1001
|
* @param eid - The entity ID
|
|
1505
1002
|
* @returns Number of columns
|
|
1506
1003
|
*/
|
|
1507
|
-
declare function getColCount(eid: Entity): number;
|
|
1004
|
+
declare function getColCount(_world: World, eid: Entity): number;
|
|
1508
1005
|
/**
|
|
1509
1006
|
* Appends a row to the table.
|
|
1510
1007
|
*
|
|
@@ -1558,24 +1055,27 @@ declare function setHeaders(world: World, eid: Entity, columns: readonly TableCo
|
|
|
1558
1055
|
/**
|
|
1559
1056
|
* Gets the column configuration.
|
|
1560
1057
|
*
|
|
1058
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1561
1059
|
* @param eid - The entity ID
|
|
1562
1060
|
* @returns Column configuration
|
|
1563
1061
|
*/
|
|
1564
|
-
declare function getColumns(eid: Entity): readonly TableColumn[];
|
|
1062
|
+
declare function getColumns(_world: World, eid: Entity): readonly TableColumn[];
|
|
1565
1063
|
/**
|
|
1566
1064
|
* Gets the header row(s).
|
|
1567
1065
|
*
|
|
1066
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1568
1067
|
* @param eid - The entity ID
|
|
1569
1068
|
* @returns Header row data
|
|
1570
1069
|
*/
|
|
1571
|
-
declare function getHeaderRows(eid: Entity): readonly TableRow[];
|
|
1070
|
+
declare function getHeaderRows(_world: World, eid: Entity): readonly TableRow[];
|
|
1572
1071
|
/**
|
|
1573
1072
|
* Gets the data rows (excluding headers).
|
|
1574
1073
|
*
|
|
1074
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1575
1075
|
* @param eid - The entity ID
|
|
1576
1076
|
* @returns Data rows
|
|
1577
1077
|
*/
|
|
1578
|
-
declare function getDataRows(eid: Entity): readonly TableRow[];
|
|
1078
|
+
declare function getDataRows(_world: World, eid: Entity): readonly TableRow[];
|
|
1579
1079
|
/**
|
|
1580
1080
|
* Sets the number of header rows.
|
|
1581
1081
|
*
|
|
@@ -1587,37 +1087,42 @@ declare function setHeaderRowCount(world: World, eid: Entity, count: number): vo
|
|
|
1587
1087
|
/**
|
|
1588
1088
|
* Gets the number of header rows.
|
|
1589
1089
|
*
|
|
1090
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1590
1091
|
* @param eid - The entity ID
|
|
1591
1092
|
* @returns Number of header rows
|
|
1592
1093
|
*/
|
|
1593
|
-
declare function getHeaderRowCount(eid: Entity): number;
|
|
1094
|
+
declare function getHeaderRowCount(_world: World, eid: Entity): number;
|
|
1594
1095
|
/**
|
|
1595
1096
|
* Sets the table display configuration.
|
|
1596
1097
|
*
|
|
1098
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1597
1099
|
* @param eid - The entity ID
|
|
1598
1100
|
* @param options - Display options
|
|
1599
1101
|
*/
|
|
1600
|
-
declare function setTableDisplay(eid: Entity, options: TableDisplayOptions): void;
|
|
1102
|
+
declare function setTableDisplay(_world: World, eid: Entity, options: TableDisplayOptions): void;
|
|
1601
1103
|
/**
|
|
1602
1104
|
* Gets the table display configuration.
|
|
1603
1105
|
*
|
|
1106
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1604
1107
|
* @param eid - The entity ID
|
|
1605
1108
|
* @returns Display configuration
|
|
1606
1109
|
*/
|
|
1607
|
-
declare function getTableDisplay(eid: Entity): TableDisplay;
|
|
1110
|
+
declare function getTableDisplay(_world: World, eid: Entity): TableDisplay;
|
|
1608
1111
|
/**
|
|
1609
1112
|
* Clears the table display configuration.
|
|
1610
1113
|
*
|
|
1114
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1611
1115
|
* @param eid - The entity ID
|
|
1612
1116
|
*/
|
|
1613
|
-
declare function clearTableDisplay(eid: Entity): void;
|
|
1117
|
+
declare function clearTableDisplay(_world: World, eid: Entity): void;
|
|
1614
1118
|
/**
|
|
1615
1119
|
* Gets the cell padding.
|
|
1616
1120
|
*
|
|
1121
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1617
1122
|
* @param eid - The entity ID
|
|
1618
1123
|
* @returns Cell padding (spaces)
|
|
1619
1124
|
*/
|
|
1620
|
-
declare function getCellPadding(eid: Entity): number;
|
|
1125
|
+
declare function getCellPadding(_world: World, eid: Entity): number;
|
|
1621
1126
|
/**
|
|
1622
1127
|
* Sets the cell padding.
|
|
1623
1128
|
*
|
|
@@ -1629,10 +1134,11 @@ declare function setCellPadding(world: World, eid: Entity, padding: number): voi
|
|
|
1629
1134
|
/**
|
|
1630
1135
|
* Checks if cell borders are enabled.
|
|
1631
1136
|
*
|
|
1137
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1632
1138
|
* @param eid - The entity ID
|
|
1633
1139
|
* @returns true if cell borders are enabled
|
|
1634
1140
|
*/
|
|
1635
|
-
declare function hasCellBorders(eid: Entity): boolean;
|
|
1141
|
+
declare function hasCellBorders(_world: World, eid: Entity): boolean;
|
|
1636
1142
|
/**
|
|
1637
1143
|
* Sets whether cell borders are enabled.
|
|
1638
1144
|
*
|
|
@@ -1641,8 +1147,24 @@ declare function hasCellBorders(eid: Entity): boolean;
|
|
|
1641
1147
|
* @param enabled - Whether to show cell borders
|
|
1642
1148
|
*/
|
|
1643
1149
|
declare function setCellBorders(world: World, eid: Entity, enabled: boolean): void;
|
|
1644
|
-
|
|
1645
|
-
|
|
1150
|
+
/**
|
|
1151
|
+
* Calculates column widths based on content.
|
|
1152
|
+
*
|
|
1153
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1154
|
+
* @param eid - The entity ID
|
|
1155
|
+
* @param maxTotalWidth - Maximum total width (optional)
|
|
1156
|
+
* @returns Array of column widths
|
|
1157
|
+
*/
|
|
1158
|
+
declare function calculateColumnWidths(_world: World, eid: Entity, maxTotalWidth?: number): number[];
|
|
1159
|
+
/**
|
|
1160
|
+
* Renders table as an array of strings (one per line).
|
|
1161
|
+
*
|
|
1162
|
+
* @param world - The ECS world (unused, kept for API consistency)
|
|
1163
|
+
* @param eid - The entity ID
|
|
1164
|
+
* @param width - Available width
|
|
1165
|
+
* @returns Array of rendered line strings
|
|
1166
|
+
*/
|
|
1167
|
+
declare function renderTableLines(world: World, eid: Entity, width: number): string[];
|
|
1646
1168
|
/**
|
|
1647
1169
|
* Resets the table store. Used for testing.
|
|
1648
1170
|
*/
|
|
@@ -2331,4 +1853,4 @@ declare function clearViewportDirty(world: World, eid: Entity): Entity;
|
|
|
2331
1853
|
*/
|
|
2332
1854
|
declare function invalidateViewport(world: World, eid: Entity): Entity;
|
|
2333
1855
|
|
|
2334
|
-
export {
|
|
1856
|
+
export { appendRow as $, AUTO_DIMENSION as A, type ScrollableOptions as B, type CellAlign as C, DEFAULT_CELL_BG as D, ScrollbarVisibility as E, type TableCell as F, type TableColumn as G, type TableData as H, type TableDisplay as I, type TableDisplayOptions as J, type TableRow as K, type ListAction as L, type TableStore as M, TerminalBuffer as N, type TerminalBufferConfig as O, TerminalBufferConfigSchema as P, type CursorShape as Q, type TerminalState as R, ScrollInfoSchema as S, Table as T, type VirtualViewportData as U, VirtualViewport as V, type VirtualViewportOptions as W, VirtualViewportOptionsSchema as X, type ScrollInfo as Y, type VisibleRange as Z, VisibleRangeSchema as _, DEFAULT_CELL_FG as a, scrollByPages as a$, attachTableBehavior as a0, calculateColumnWidths as a1, canScroll as a2, clearData as a3, clearTableDisplay as a4, clearTerminal as a5, clearViewportDirty as a6, decodePercentage as a7, detachTableBehavior as a8, encodePercentage as a9, getVirtualViewport as aA, getVisibleRange as aB, hasCellBorders as aC, hasDimensions as aD, hasScrollable as aE, hasTerminalBuffer as aF, hasVirtualViewport as aG, insertRow as aH, invalidateViewport as aI, isAtBottom as aJ, isAtTop as aK, isLineInRenderRange as aL, isLineVisible as aM, isPercentage as aN, isTable as aO, isViewportDirty as aP, moveCursor as aQ, removeRow as aR, removeTerminalBuffer as aS, renderTableLines as aT, renderTerminalToAnsi as aU, resetTableStore as aV, resetTerminal as aW, resetTerminalBufferStore as aX, resizeTerminalBuffer as aY, scrollBy as aZ, scrollByLines as a_, ensureCursorVisible as aa, getCellPadding as ab, getCellValue as ac, getColCount as ad, getColumn as ae, getColumns as af, getCursorLine as ag, getData as ah, getDataAsStrings as ai, getDataRows as aj, getDimensions as ak, getHeaderRowCount as al, getHeaderRows as am, getResolvedHeight as an, getResolvedWidth as ao, getRow as ap, getRowCount as aq, getScroll as ar, getScrollPercentage as as, getScrollable as at, getSelectedLine as au, getTableDisplay as av, getTerminalBuffer as aw, getTerminalCells as ax, getTerminalState as ay, getScrollInfo as az, DEFAULT_HEADER_BG as b, scrollTerminalDown as b0, scrollTerminalToBottom as b1, scrollTerminalToTop as b2, scrollTerminalUp as b3, scrollTo as b4, scrollToBottom$1 as b5, scrollToLine as b6, scrollToTop$1 as b7, scrollToBottom as b8, scrollToTop as b9, getCell as bA, setCell as bB, setCursorVisible as bC, setCellBorders as ba, setCellPadding as bb, setConstraints as bc, setCursorLine as bd, setCursorPosition as be, setData as bf, setDimensions as bg, setHeaderRowCount as bh, setHeaders as bi, setOverscan as bj, setScroll as bk, setScrollSize as bl, setScrollable as bm, setScrollbarVisibility as bn, setSelectedLine as bo, setShrink as bp, setTableDisplay as bq, setTerminalBuffer as br, setTotalLineCount as bs, setViewportStart as bt, setVirtualViewport as bu, setVisibleLineCount as bv, shouldShrink as bw, tableStore as bx, writeChar as by, writeToTerminal as bz, DEFAULT_HEADER_FG as c, DEFAULT_SCROLLBACK_LINES as d, DEFAULT_BORDER_BG as e, DEFAULT_BORDER_FG as f, DEFAULT_TERMINAL_HEIGHT as g, DEFAULT_TERMINAL_WIDTH as h, type DimensionConstraints as i, type DimensionValue as j, Dimensions as k, type DimensionsData as l, type ListDisplay as m, type ListDisplayOptions as n, type ListEvent as o, type ListItem as p, type ListLazyLoadCallback as q, type ListScrollCallback as r, type ListScrollInfo as s, type ListSelectCallback as t, type ListState as u, type ListStore as v, type ScrollPercentage as w, type ScrollPosition as x, Scrollable as y, type ScrollableData as z };
|