@profullstack/hqtui 0.3.0 → 0.4.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/dist/ansi.d.ts +10 -0
- package/dist/ansi.d.ts.map +1 -1
- package/dist/ansi.js +18 -0
- package/dist/ansi.js.map +1 -1
- package/dist/app.d.ts +22 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +81 -12
- package/dist/app.js.map +1 -1
- package/dist/cli.js +1 -1
- package/dist/diff.d.ts +37 -1
- package/dist/diff.d.ts.map +1 -1
- package/dist/diff.js +79 -4
- package/dist/diff.js.map +1 -1
- package/dist/graphics/braille.d.ts.map +1 -1
- package/dist/graphics/braille.js +15 -2
- package/dist/graphics/braille.js.map +1 -1
- package/dist/graphics/canvas.d.ts +76 -0
- package/dist/graphics/canvas.d.ts.map +1 -0
- package/dist/graphics/canvas.js +110 -0
- package/dist/graphics/canvas.js.map +1 -0
- package/dist/graphics/chart.d.ts +70 -0
- package/dist/graphics/chart.d.ts.map +1 -0
- package/dist/graphics/chart.js +249 -0
- package/dist/graphics/chart.js.map +1 -0
- package/dist/graphics/index.d.ts +3 -0
- package/dist/graphics/index.d.ts.map +1 -1
- package/dist/graphics/index.js +3 -0
- package/dist/graphics/index.js.map +1 -1
- package/dist/graphics/world-data.d.ts +22 -0
- package/dist/graphics/world-data.d.ts.map +1 -0
- package/dist/graphics/world-data.js +1300 -0
- package/dist/graphics/world-data.js.map +1 -0
- package/dist/graphics/world.d.ts +70 -0
- package/dist/graphics/world.d.ts.map +1 -0
- package/dist/graphics/world.js +137 -0
- package/dist/graphics/world.js.map +1 -0
- package/dist/index.d.ts +4 -4
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/layout.d.ts +21 -1
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +54 -4
- package/dist/layout.js.map +1 -1
- package/dist/richtext.d.ts +8 -0
- package/dist/richtext.d.ts.map +1 -1
- package/dist/richtext.js +29 -1
- package/dist/richtext.js.map +1 -1
- package/dist/surface.d.ts +28 -0
- package/dist/surface.d.ts.map +1 -1
- package/dist/surface.js +83 -15
- package/dist/surface.js.map +1 -1
- package/dist/terminal.d.ts +81 -0
- package/dist/terminal.d.ts.map +1 -1
- package/dist/terminal.js +131 -4
- package/dist/terminal.js.map +1 -1
- package/dist/ui.d.ts +95 -2
- package/dist/ui.d.ts.map +1 -1
- package/dist/ui.js +121 -10
- package/dist/ui.js.map +1 -1
- package/dist/unicode.d.ts +9 -0
- package/dist/unicode.d.ts.map +1 -1
- package/dist/unicode.js +25 -0
- package/dist/unicode.js.map +1 -1
- package/dist/widgets/calendar.d.ts +67 -0
- package/dist/widgets/calendar.d.ts.map +1 -0
- package/dist/widgets/calendar.js +118 -0
- package/dist/widgets/calendar.js.map +1 -0
- package/dist/widgets/chart.d.ts +24 -0
- package/dist/widgets/chart.d.ts.map +1 -0
- package/dist/widgets/chart.js +80 -0
- package/dist/widgets/chart.js.map +1 -0
- package/dist/widgets/index.d.ts +6 -0
- package/dist/widgets/index.d.ts.map +1 -1
- package/dist/widgets/index.js +6 -0
- package/dist/widgets/index.js.map +1 -1
- package/dist/widgets/meters.d.ts.map +1 -1
- package/dist/widgets/meters.js +11 -1
- package/dist/widgets/meters.js.map +1 -1
- package/dist/widgets/scrollbar.d.ts +66 -0
- package/dist/widgets/scrollbar.d.ts.map +1 -0
- package/dist/widgets/scrollbar.js +89 -0
- package/dist/widgets/scrollbar.js.map +1 -0
- package/dist/widgets/shadow.d.ts +42 -0
- package/dist/widgets/shadow.d.ts.map +1 -0
- package/dist/widgets/shadow.js +73 -0
- package/dist/widgets/shadow.js.map +1 -0
- package/dist/widgets/surface.d.ts +33 -0
- package/dist/widgets/surface.d.ts.map +1 -0
- package/dist/widgets/surface.js +37 -0
- package/dist/widgets/surface.js.map +1 -0
- package/dist/widgets/table.d.ts +1 -2
- package/dist/widgets/table.d.ts.map +1 -1
- package/dist/widgets/table.js +4 -12
- package/dist/widgets/table.js.map +1 -1
- package/dist/widgets/text.d.ts +10 -0
- package/dist/widgets/text.d.ts.map +1 -1
- package/dist/widgets/text.js +16 -6
- package/dist/widgets/text.js.map +1 -1
- package/dist/widgets/world.d.ts +32 -0
- package/dist/widgets/world.d.ts.map +1 -0
- package/dist/widgets/world.js +31 -0
- package/dist/widgets/world.js.map +1 -0
- package/package.json +1 -1
package/dist/terminal.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ansi, setTitle } from "./ansi.js";
|
|
1
|
+
import { ansi, moveTo, moveUp, setTitle } from "./ansi.js";
|
|
2
2
|
import { detectCapabilities } from "./capabilities.js";
|
|
3
3
|
import { InputParser } from "./input.js";
|
|
4
4
|
/**
|
|
@@ -20,6 +20,13 @@ export class Terminal {
|
|
|
20
20
|
cleanupHandlers = [];
|
|
21
21
|
teardownListeners = new Set();
|
|
22
22
|
escapeTimer = null;
|
|
23
|
+
viewportMode = { mode: "fullscreen" };
|
|
24
|
+
/**
|
|
25
|
+
* Rows an inline viewport has reserved below the anchor. Kept because a
|
|
26
|
+
* resize can shrink the terminal under it, and because `restore` has to know
|
|
27
|
+
* how far down to move before handing the shell back.
|
|
28
|
+
*/
|
|
29
|
+
reserved = 0;
|
|
23
30
|
onData = (chunk) => {
|
|
24
31
|
const text = typeof chunk === "string" ? chunk : chunk.toString("utf8");
|
|
25
32
|
this.dispatch(this.parser.parse(text));
|
|
@@ -51,8 +58,12 @@ export class Terminal {
|
|
|
51
58
|
this.output = options.output ?? process.stdout;
|
|
52
59
|
this.capabilities = detectCapabilities(options.capabilities ?? {}, process.env, this.output);
|
|
53
60
|
this.escapeTimeout = options.escapeTimeout ?? 30;
|
|
61
|
+
this.viewportMode = options.viewport ?? { mode: "fullscreen" };
|
|
62
|
+
// Only a fullscreen app may take the alternate screen. The whole point of
|
|
63
|
+
// the other two is to leave what is already on the terminal alone.
|
|
64
|
+
const fullscreen = this.viewportMode.mode === "fullscreen";
|
|
54
65
|
this.options = {
|
|
55
|
-
alternateScreen: options.alternateScreen ?? true,
|
|
66
|
+
alternateScreen: fullscreen ? options.alternateScreen ?? true : false,
|
|
56
67
|
mouse: options.mouse ?? this.capabilities.mouse,
|
|
57
68
|
hideCursor: options.hideCursor ?? true,
|
|
58
69
|
bracketedPaste: options.bracketedPaste ?? this.capabilities.bracketedPaste,
|
|
@@ -74,6 +85,38 @@ export class Terminal {
|
|
|
74
85
|
rows: usable(this.output.rows) ?? usable(process.env.LINES) ?? 24,
|
|
75
86
|
};
|
|
76
87
|
}
|
|
88
|
+
/** How much of the terminal the app owns. */
|
|
89
|
+
get viewport() {
|
|
90
|
+
return this.viewportMode;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* The region to draw into, in screen cells.
|
|
94
|
+
*
|
|
95
|
+
* For an inline viewport the `y` is a fiction -- it is always 0, because the
|
|
96
|
+
* strip is addressed from its own saved cursor rather than from the top of
|
|
97
|
+
* the screen -- but the width and height are real, and they are what the
|
|
98
|
+
* framebuffer is sized from.
|
|
99
|
+
*/
|
|
100
|
+
viewportRect() {
|
|
101
|
+
const { columns, rows } = this.size();
|
|
102
|
+
const v = this.viewportMode;
|
|
103
|
+
if (v.mode === "inline") {
|
|
104
|
+
// A viewport taller than the terminal would scroll itself off the top
|
|
105
|
+
// every frame, so it gives up the rows it cannot have.
|
|
106
|
+
return { x: 0, y: 0, width: columns, height: Math.max(1, Math.min(v.height, rows)) };
|
|
107
|
+
}
|
|
108
|
+
if (v.mode === "fixed") {
|
|
109
|
+
const x = Math.max(0, Math.min(v.x, Math.max(0, columns - 1)));
|
|
110
|
+
const y = Math.max(0, Math.min(v.y, Math.max(0, rows - 1)));
|
|
111
|
+
return {
|
|
112
|
+
x,
|
|
113
|
+
y,
|
|
114
|
+
width: Math.max(0, Math.min(v.width, columns - x)),
|
|
115
|
+
height: Math.max(0, Math.min(v.height, rows - y)),
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
return { x: 0, y: 0, width: columns, height: rows };
|
|
119
|
+
}
|
|
77
120
|
write(data) {
|
|
78
121
|
if (data.length === 0)
|
|
79
122
|
return;
|
|
@@ -97,8 +140,14 @@ export class Terminal {
|
|
|
97
140
|
setup += ansi.focusOn;
|
|
98
141
|
if (this.options.title)
|
|
99
142
|
setup += setTitle(this.options.title);
|
|
100
|
-
|
|
143
|
+
// Only a fullscreen app owns the grid, so only a fullscreen app may wipe
|
|
144
|
+
// it. An inline strip or a fixed region is a guest on somebody else's
|
|
145
|
+
// screen and has no business clearing it.
|
|
146
|
+
if (this.viewportMode.mode === "fullscreen")
|
|
147
|
+
setup += ansi.clearScreen + ansi.cursorHome;
|
|
101
148
|
this.write(setup);
|
|
149
|
+
if (this.viewportMode.mode === "inline")
|
|
150
|
+
this.reserveInline();
|
|
102
151
|
if (this.input.isTTY && typeof this.input.setRawMode === "function") {
|
|
103
152
|
this.input.setRawMode(true);
|
|
104
153
|
this.rawWasSet = true;
|
|
@@ -126,6 +175,12 @@ export class Terminal {
|
|
|
126
175
|
}
|
|
127
176
|
this.input.pause?.();
|
|
128
177
|
let teardown = ansi.reset;
|
|
178
|
+
// An inline app leaves its last frame behind as part of the transcript, so
|
|
179
|
+
// the cursor has to come out below it rather than on top of it.
|
|
180
|
+
if (this.viewportMode.mode === "inline" && this.reserved > 0) {
|
|
181
|
+
teardown = toAnchor() + "\r" + "\n".repeat(this.reserved) + teardown;
|
|
182
|
+
this.reserved = 0;
|
|
183
|
+
}
|
|
129
184
|
if (this.options.focusEvents)
|
|
130
185
|
teardown += ansi.focusOff;
|
|
131
186
|
if (this.options.bracketedPaste)
|
|
@@ -134,12 +189,62 @@ export class Terminal {
|
|
|
134
189
|
teardown += ansi.mouseOff;
|
|
135
190
|
if (this.options.hideCursor)
|
|
136
191
|
teardown += ansi.cursorShow;
|
|
137
|
-
teardown += this.options.alternateScreen
|
|
192
|
+
teardown += this.options.alternateScreen
|
|
193
|
+
? ansi.alternateScreenOff
|
|
194
|
+
: this.viewportMode.mode === "inline" ? "" : `\n`;
|
|
138
195
|
this.write(teardown);
|
|
139
196
|
for (const off of this.cleanupHandlers)
|
|
140
197
|
off();
|
|
141
198
|
this.cleanupHandlers = [];
|
|
142
199
|
}
|
|
200
|
+
/**
|
|
201
|
+
* Make room for an inline viewport and remember where it starts.
|
|
202
|
+
*
|
|
203
|
+
* There is no way to ask where the cursor is without a round trip the caller
|
|
204
|
+
* would have to await, and no way to trust the answer afterwards -- any
|
|
205
|
+
* output scrolls the screen and moves the strip without a word. So the
|
|
206
|
+
* anchor is never a number: it is a saved cursor position, re-saved whenever
|
|
207
|
+
* the strip moves.
|
|
208
|
+
*
|
|
209
|
+
* Printing the newlines first is what reserves the space. If the cursor was
|
|
210
|
+
* near the bottom the terminal scrolls, which is exactly what should happen;
|
|
211
|
+
* walking back up then lands on the strip's first row wherever it ended up.
|
|
212
|
+
*/
|
|
213
|
+
reserveInline() {
|
|
214
|
+
const height = this.viewportRect().height;
|
|
215
|
+
this.reserved = height;
|
|
216
|
+
this.write("\r" + "\n".repeat(Math.max(0, height - 1)) + moveUp(height - 1) + "\r");
|
|
217
|
+
this.write(anchor());
|
|
218
|
+
}
|
|
219
|
+
/**
|
|
220
|
+
* Write lines above an inline viewport, permanently.
|
|
221
|
+
*
|
|
222
|
+
* This is the half of inline mode that makes it worth having: finished work
|
|
223
|
+
* scrolls away into the user's scrollback while the live rows stay put. The
|
|
224
|
+
* lines are printed where the strip currently begins and the strip is
|
|
225
|
+
* re-anchored below them, so if that runs off the bottom the terminal scrolls
|
|
226
|
+
* and the oldest lines leave through the top -- into scrollback, which is
|
|
227
|
+
* where they were always going.
|
|
228
|
+
*
|
|
229
|
+
* The caller repaints the viewport afterwards: everything below the anchor is
|
|
230
|
+
* now whatever the terminal happened to shift there.
|
|
231
|
+
*/
|
|
232
|
+
insertBefore(lines) {
|
|
233
|
+
if (this.viewportMode.mode !== "inline" || lines.length === 0)
|
|
234
|
+
return;
|
|
235
|
+
const height = this.reserved;
|
|
236
|
+
let out = toAnchor() + "\r";
|
|
237
|
+
for (const line of lines)
|
|
238
|
+
out += ansi.clearLine + line + ansi.reset + "\r\n";
|
|
239
|
+
// Re-reserve from the new anchor, then walk back to it. Writing the rows
|
|
240
|
+
// is what forces the terminal to scroll if the strip no longer fits, and
|
|
241
|
+
// walking back afterwards finds it wherever the scroll left it.
|
|
242
|
+
out += ansi.clearLine;
|
|
243
|
+
for (let i = 1; i < height; i++)
|
|
244
|
+
out += "\r\n" + ansi.clearLine;
|
|
245
|
+
out += moveUp(height - 1) + "\r" + anchor();
|
|
246
|
+
this.write(out);
|
|
247
|
+
}
|
|
143
248
|
onInput(listener) {
|
|
144
249
|
this.inputListeners.add(listener);
|
|
145
250
|
return () => this.inputListeners.delete(listener);
|
|
@@ -205,6 +310,28 @@ export class Terminal {
|
|
|
205
310
|
});
|
|
206
311
|
}
|
|
207
312
|
}
|
|
313
|
+
/**
|
|
314
|
+
* Save the anchor an inline viewport measures from.
|
|
315
|
+
*
|
|
316
|
+
* The pen is reset first so that the saved graphic rendition is always the
|
|
317
|
+
* default one. DECRC restores attributes along with the position, so without
|
|
318
|
+
* that the colour in force at some arbitrary moment would come back with every
|
|
319
|
+
* jump and quietly desynchronise the renderer's model of the terminal.
|
|
320
|
+
*/
|
|
321
|
+
function anchor() {
|
|
322
|
+
return ansi.reset + ansi.cursorSave;
|
|
323
|
+
}
|
|
324
|
+
/**
|
|
325
|
+
* Go back to the anchor, and immediately save it again.
|
|
326
|
+
*
|
|
327
|
+
* DECRC is a pop rather than a peek in some terminals: restore twice against
|
|
328
|
+
* one save and the second sends the cursor home, which is the top of the
|
|
329
|
+
* user's screen and not remotely where the viewport is. Re-arming after every
|
|
330
|
+
* restore makes the sequence mean the same thing on both kinds.
|
|
331
|
+
*/
|
|
332
|
+
function toAnchor() {
|
|
333
|
+
return ansi.cursorRestore + anchor();
|
|
334
|
+
}
|
|
208
335
|
export function createTerminal(options = {}) {
|
|
209
336
|
return new Terminal(options);
|
|
210
337
|
}
|
package/dist/terminal.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC3C,OAAO,EAA+C,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAAE,WAAW,EAAmB,MAAM,YAAY,CAAC;AA0B1D;;;GAGG;AACH,MAAM,OAAO,QAAQ;IACV,KAAK,CAAoB;IACzB,MAAM,CAAqB;IAC3B,YAAY,CAAe;IAC5B,OAAO,CAAwH;IAC/H,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;IAC3B,OAAO,GAAG,KAAK,CAAC;IACxB,0EAA0E;IACjE,aAAa,CAAS;IACvB,SAAS,GAAG,KAAK,CAAC;IAClB,cAAc,GAAG,IAAI,GAAG,EAAwB,CAAC;IACjD,eAAe,GAAG,IAAI,GAAG,EAA0B,CAAC;IACpD,eAAe,GAAmB,EAAE,CAAC;IACrC,iBAAiB,GAAG,IAAI,GAAG,EAAc,CAAC;IAC1C,WAAW,GAA0B,IAAI,CAAC;IAC1C,MAAM,GAAG,CAAC,KAAsB,EAAQ,EAAE;QAChD,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QACxE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QACvC,6DAA6D;QAC7D,IAAI,IAAI,CAAC,WAAW;YAAE,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,EAAE;gBACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;YACrC,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;YACvB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,EAAE,CAAC;QAC7B,CAAC;IACH,CAAC,CAAC;IAEM,QAAQ,CAAC,MAAoB;QACnC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,cAAc;gBAAE,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9D,CAAC;IACH,CAAC;IACO,QAAQ,GAAG,GAAS,EAAE;QAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QACzB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,eAAe;YAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;IAC9D,CAAC,CAAC;IAEF,YAAY,OAAO,GAAoB,EAAE;QACvC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAC;QAC5C,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC;QAC/C,IAAI,CAAC,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,YAAY,IAAI,EAAE,EAAE,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC7F,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,aAAa,IAAI,EAAE,CAAC;QACjD,IAAI,CAAC,OAAO,GAAG;YACb,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;YAChD,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK;YAC/C,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;YACtC,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI,CAAC,YAAY,CAAC,cAAc;YAC1E,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI,CAAC,YAAY,CAAC,WAAW;YACjE,mBAAmB,EAAE,OAAO,CAAC,mBAAmB,IAAI,IAAI;YACxD,KAAK,EAAE,OAAO,CAAC,KAAK;SACrB,CAAC;IACJ,CAAC;IAED,IAAI;QACF,wEAAwE;QACxE,wEAAwE;QACxE,yEAAyE;QACzE,MAAM,MAAM,GAAG,CAAC,KAAc,EAAsB,EAAE;YACpD,MAAM,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;YACxB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACjE,CAAC,CAAC;QACF,OAAO;YACL,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE;YACzE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE;SAClE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,IAAY;QAChB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAC9B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,0CAA0C;IAC1C,KAAK;QACH,IAAI,IAAI,CAAC,OAAO;YAAE,OAAO;QACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QAEpB,IAAI,KAAK,GAAG,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe;YAAE,KAAK,IAAI,IAAI,CAAC,iBAAiB,CAAC;QAClE,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC;QACtD,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,YAAY,CAAC,KAAK;YAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC;QACzE,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc;YAAE,KAAK,IAAI,IAAI,CAAC,gBAAgB,CAAC;QAChE,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW;YAAE,KAAK,IAAI,IAAI,CAAC,OAAO,CAAC;QACpD,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,KAAK,IAAI,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC9D,KAAK,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC;QAC5C,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAElB,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YACpE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;QACtB,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAExC,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB;YAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACnE,CAAC;IAED,yEAAyE;IACzE,OAAO;QACL,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO;QAC1B,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QAErB,IAAI,IAAI,CAAC,WAAW;YAAE,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACrD,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,IAAI,IAAI,CAAC,SAAS,IAAI,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;YAClE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;QAErB,IAAI,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC;QAC1B,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW;YAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QACxD,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc;YAAE,QAAQ,IAAI,IAAI,CAAC,iBAAiB,CAAC;QACpE,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK;YAAE,QAAQ,IAAI,IAAI,CAAC,QAAQ,CAAC;QAClD,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU;YAAE,QAAQ,IAAI,IAAI,CAAC,UAAU,CAAC;QACzD,QAAQ,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1E,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAErB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,eAAe;YAAE,GAAG,EAAE,CAAC;QAC9C,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;IAC5B,CAAC;IAED,OAAO,CAAC,QAA8B;QACpC,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAED,aAAa,CAAC,QAAgC;QAC5C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACrD,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,QAAoB;QAC7B,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACrC,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACvD,CAAC;IAEO,mBAAmB;QACzB,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QAErC,MAAM,QAAQ,GAAG,CAAC,MAAsB,EAAE,EAAE,CAAC,GAAG,EAAE;YAChD,OAAO,EAAE,CAAC;YACV,OAAO,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAChD,CAAC,CAAC;QACF,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,EAAE,CAAC;QAC/B,2EAA2E;QAC3E,0EAA0E;QAC1E,4EAA4E;QAC5E,2EAA2E;QAC3E,MAAM,OAAO,GAAG,CAAC,KAAiD,EAAE,EAAE,CAAC,CAAC,KAAc,EAAE,EAAE;YACxF,uEAAuE;YACvE,yEAAyE;YACzE,kCAAkC;YAClC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACpD,OAAO,EAAE,CAAC;YACV,sEAAsE;YACtE,mCAAmC;YACnC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,iBAAiB;gBAAE,QAAQ,EAAE,CAAC;YAC1D,IAAI,UAAU;gBAAE,OAAO;YACvB,yEAAyE;YACzE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACrB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC,CAAC;QACF,MAAM,UAAU,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;QAElD,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,QAAQ,CAAC,SAAS,CAAC,CAAC;QACpC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAElC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAC7B,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC3B,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QAC5C,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QAE9C,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE;YAC7B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAC5B,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC;IACL,CAAC;CACF;AAED,MAAM,UAAU,cAAc,CAAC,OAAO,GAAoB,EAAE;IAC1D,OAAO,IAAI,QAAQ,CAAC,OAAO,CAAC,CAAC;AAC/B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAM,GAAuB,OAAO,CAAC,MAAM;IAC1E,MAAM,CAAC,KAAK,CACV,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,QAAQ;QACjE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,kBAAkB,CAC5C,CAAC;IACF,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,OAAO,OAAO,CAAC,KAAK,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QAC1E,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"terminal.js","sourceRoot":"","sources":["../src/terminal.ts"],"names":[],"mappings":"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"}
|
package/dist/ui.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import type { Surface, BorderStyle, Align } from "./surface.ts";
|
|
1
|
+
import type { Surface, BorderStyle, Align, Sides } from "./surface.ts";
|
|
2
2
|
import type { Color } from "./color.ts";
|
|
3
3
|
import type { Theme } from "./theme.ts";
|
|
4
4
|
import type { Capabilities } from "./capabilities.ts";
|
|
5
|
-
import { type Rect, type Padding, type Size } from "./layout.ts";
|
|
5
|
+
import { type Justify, type Rect, type Padding, type Size } from "./layout.ts";
|
|
6
6
|
import { type RichText } from "./richtext.ts";
|
|
7
7
|
import { BrailleCanvas } from "./graphics/braille.ts";
|
|
8
|
+
import { type CanvasOptions } from "./graphics/canvas.ts";
|
|
9
|
+
import type { CountryOutline } from "./graphics/world.ts";
|
|
8
10
|
import * as W from "./widgets/index.ts";
|
|
9
11
|
export interface HitRegion {
|
|
10
12
|
rect: Rect;
|
|
@@ -49,6 +51,12 @@ export interface ScrollHandlers {
|
|
|
49
51
|
}
|
|
50
52
|
export interface ContainerOptions {
|
|
51
53
|
gap?: number;
|
|
54
|
+
/**
|
|
55
|
+
* Where space left over by the children goes. Defaults to "start", which is
|
|
56
|
+
* what every layout did before this existed, and is inert unless the
|
|
57
|
+
* children actually leave slack.
|
|
58
|
+
*/
|
|
59
|
+
justify?: Justify;
|
|
52
60
|
padding?: Padding;
|
|
53
61
|
/** Size along the parent's main axis. */
|
|
54
62
|
size?: Size;
|
|
@@ -57,6 +65,21 @@ export interface ContainerOptions {
|
|
|
57
65
|
min?: number;
|
|
58
66
|
max?: number;
|
|
59
67
|
background?: Color;
|
|
68
|
+
/**
|
|
69
|
+
* Treat this container's own edges as panel borders when collapsing.
|
|
70
|
+
*
|
|
71
|
+
* Collapsing merges a seam only where two bordered siblings meet, and a row
|
|
72
|
+
* or column is not itself bordered -- so wrapping a stack of panels in a
|
|
73
|
+
* column, which is the only way to put a stack beside one tall panel, used to
|
|
74
|
+
* make the seam down the middle of the screen the one seam that could never
|
|
75
|
+
* merge. Set this on such a wrapper and its edges join in.
|
|
76
|
+
*
|
|
77
|
+
* It is a declaration rather than something inferred, because the children
|
|
78
|
+
* are built only once the layout has been solved and the seam has to be
|
|
79
|
+
* known before that. True only if every child is a panel filling the
|
|
80
|
+
* container across the seam; otherwise a neighbour's border lands on content.
|
|
81
|
+
*/
|
|
82
|
+
bordered?: boolean;
|
|
60
83
|
}
|
|
61
84
|
export interface PanelOptions extends ContainerOptions {
|
|
62
85
|
title?: string;
|
|
@@ -67,6 +90,12 @@ export interface PanelOptions extends ContainerOptions {
|
|
|
67
90
|
footer?: string;
|
|
68
91
|
border?: BorderStyle;
|
|
69
92
|
borderColor?: Color;
|
|
93
|
+
/**
|
|
94
|
+
* Which edges of the panel to draw. Defaults to all four. Use it for chrome
|
|
95
|
+
* that is not a box: a header rule, a sidebar rail, a footer that should not
|
|
96
|
+
* look boxed in.
|
|
97
|
+
*/
|
|
98
|
+
sides?: Sides;
|
|
70
99
|
/** Draws the focused border color and joins the Tab order. */
|
|
71
100
|
focusable?: boolean;
|
|
72
101
|
focused?: boolean;
|
|
@@ -90,6 +119,7 @@ export declare class Container {
|
|
|
90
119
|
readonly direction: "row" | "column";
|
|
91
120
|
private children;
|
|
92
121
|
private gap;
|
|
122
|
+
private justify;
|
|
93
123
|
private inner;
|
|
94
124
|
constructor(surface: Surface, ctx: RenderContext, direction?: "row" | "column", options?: ContainerOptions);
|
|
95
125
|
get theme(): Theme;
|
|
@@ -164,6 +194,16 @@ export declare class Container {
|
|
|
164
194
|
*/
|
|
165
195
|
table<Row>(options: W.TableOptions<Row> & ContainerOptions & ScrollHandlers): this;
|
|
166
196
|
list(options: W.ListOptions & ContainerOptions & ScrollHandlers): this;
|
|
197
|
+
/**
|
|
198
|
+
* A scrollbar over state you own, for anything that scrolls and is not a
|
|
199
|
+
* table: a wrapped paragraph, a canvas, a `draw()` of your own.
|
|
200
|
+
*
|
|
201
|
+
* The wheel and a click on the track both arrive as `onScroll`, so the same
|
|
202
|
+
* handler that drives the content drives the bar. A click reports the delta
|
|
203
|
+
* that would land the thumb where you clicked, which makes the bar a way to
|
|
204
|
+
* move rather than a picture of where you are.
|
|
205
|
+
*/
|
|
206
|
+
scrollbar(options: W.ScrollbarOptions & ContainerOptions & ScrollHandlers): this;
|
|
167
207
|
tree(options: W.TreeOptions & ContainerOptions & ScrollHandlers): this;
|
|
168
208
|
/** Register the widget's rect so the wheel and clicks reach it. */
|
|
169
209
|
private attachScroll;
|
|
@@ -175,6 +215,31 @@ export declare class Container {
|
|
|
175
215
|
progress(options: W.ProgressOptions & ContainerOptions): this;
|
|
176
216
|
/** Braille line/area graph. Fills the space it is given. */
|
|
177
217
|
graph(options: W.GraphOptions & ContainerOptions): this;
|
|
218
|
+
/**
|
|
219
|
+
* A chart of arbitrary (x, y) data, with a domain on both axes.
|
|
220
|
+
*
|
|
221
|
+
* `graph` plots a history buffer, one sample per column. Use this when the
|
|
222
|
+
* data has its own x values: two series of different lengths then line up,
|
|
223
|
+
* and a point lands where its x says it does.
|
|
224
|
+
*/
|
|
225
|
+
chart(options: W.ChartOptions & ContainerOptions): this;
|
|
226
|
+
/**
|
|
227
|
+
* Reset a region so an overlay can own it.
|
|
228
|
+
*
|
|
229
|
+
* Anything drawn into a region without clearing it first shows whatever was
|
|
230
|
+
* underneath through the cells it does not touch.
|
|
231
|
+
*/
|
|
232
|
+
clear(options?: W.ClearOptions & ContainerOptions): this;
|
|
233
|
+
/** Flood a region with one repeated symbol and style. */
|
|
234
|
+
fill(options?: W.FillOptions & ContainerOptions): this;
|
|
235
|
+
/**
|
|
236
|
+
* A month as a grid, with per-day styling.
|
|
237
|
+
*
|
|
238
|
+
* Sized to the month it shows: a month spans four, five or six week rows
|
|
239
|
+
* depending on where its first day falls, and reserving five leaves some
|
|
240
|
+
* months a row short and others a blank row long.
|
|
241
|
+
*/
|
|
242
|
+
calendar(options: W.CalendarOptions & ContainerOptions): this;
|
|
178
243
|
/** A filled area graph — `graph` with `fill` on. */
|
|
179
244
|
areaGraph(options: W.GraphOptions & ContainerOptions): this;
|
|
180
245
|
/** Several series on one set of axes. */
|
|
@@ -213,6 +278,26 @@ export declare class Container {
|
|
|
213
278
|
tooltip(options: W.TooltipOptions): this;
|
|
214
279
|
/** Draw straight onto the framebuffer region. Nothing is off limits. */
|
|
215
280
|
draw(fn: (surface: Surface) => void, options?: ContainerOptions): this;
|
|
281
|
+
/**
|
|
282
|
+
* A canvas drawn in your own coordinates rather than in pixels.
|
|
283
|
+
*
|
|
284
|
+
* `canvas` hands you the pixel grid and leaves the unit conversion to you,
|
|
285
|
+
* which means a drawing written for one panel size is wrong in the next.
|
|
286
|
+
* This takes bounds and shapes placed inside them, and y goes up.
|
|
287
|
+
*/
|
|
288
|
+
shapes(options: CanvasOptions & ContainerOptions): this;
|
|
289
|
+
/**
|
|
290
|
+
* A world map, and the country under whatever gets clicked.
|
|
291
|
+
*
|
|
292
|
+
* The click is answered by turning the cell back into degrees and testing it
|
|
293
|
+
* against the outlines, so the answer is the country actually under the
|
|
294
|
+
* cursor. Bounding boxes would be cheaper and wrong: Russia's covers most of
|
|
295
|
+
* the northern hemisphere and Chile's covers Argentina.
|
|
296
|
+
*/
|
|
297
|
+
worldMap(options?: W.WorldMapOptions & ContainerOptions & {
|
|
298
|
+
onSelect?: (country: CountryOutline | undefined) => void;
|
|
299
|
+
onHover?: (country: CountryOutline | undefined) => void;
|
|
300
|
+
}): this;
|
|
216
301
|
/** A Braille pixel canvas sized to the region, blitted when you are done. */
|
|
217
302
|
canvas(fn: (canvas: BrailleCanvas, surface: Surface) => void, options?: ContainerOptions & {
|
|
218
303
|
color?: Color;
|
|
@@ -235,6 +320,14 @@ export declare class GridContainer {
|
|
|
235
320
|
get theme(): Theme;
|
|
236
321
|
private track;
|
|
237
322
|
private push;
|
|
323
|
+
/**
|
|
324
|
+
* The gap between tracks, minus one where the whole grid is panels and
|
|
325
|
+
* collapsing is on, so neighbouring borders land in the same column and
|
|
326
|
+
* merge. A grid is one pair of track sizes rather than a list of siblings,
|
|
327
|
+
* so this is all or nothing: a single cell that is not a panel would have a
|
|
328
|
+
* neighbour's border drawn across its content.
|
|
329
|
+
*/
|
|
330
|
+
private seam;
|
|
238
331
|
/** A panel occupying the next free cell (or several, with colSpan/rowSpan). */
|
|
239
332
|
panel(options?: PanelOptions & CellOptions, build?: (panel: Container) => void): this;
|
|
240
333
|
cell(options?: CellOptions & ContainerOptions, build?: (cell: Container) => void): this;
|
package/dist/ui.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,KAAK,EAAc,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"ui.d.ts","sourceRoot":"","sources":["../src/ui.ts"],"names":[],"mappings":"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"}
|