@teaui/core 1.10.8 → 1.11.9
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/Buffer.d.ts +5 -0
- package/.dist/Buffer.js +150 -7
- package/.dist/Buffer.js.map +1 -1
- package/.dist/HeadlessProgram.d.ts +24 -0
- package/.dist/HeadlessProgram.js +41 -0
- package/.dist/HeadlessProgram.js.map +1 -0
- package/.dist/{Theme.d.ts → Palette.d.ts} +16 -15
- package/.dist/{Theme.js → Palette.js} +43 -28
- package/.dist/Palette.js.map +1 -0
- package/.dist/Screen.d.ts +43 -24
- package/.dist/Screen.js +102 -90
- package/.dist/Screen.js.map +1 -1
- package/.dist/Style.js +11 -10
- package/.dist/Style.js.map +1 -1
- package/.dist/TestProgram.d.ts +28 -0
- package/.dist/TestProgram.js +52 -0
- package/.dist/TestProgram.js.map +1 -0
- package/.dist/{testing.d.ts → TestScreen.d.ts} +4 -6
- package/.dist/TestScreen.js +99 -0
- package/.dist/TestScreen.js.map +1 -0
- package/.dist/TestTerminal.js +5 -23
- package/.dist/TestTerminal.js.map +1 -1
- package/.dist/UI.d.ts +2 -2
- package/.dist/UI.js +20 -20
- package/.dist/UI.js.map +1 -1
- package/.dist/View.d.ts +12 -7
- package/.dist/View.js +17 -10
- package/.dist/View.js.map +1 -1
- package/.dist/Viewport.d.ts +26 -0
- package/.dist/Viewport.js +57 -7
- package/.dist/Viewport.js.map +1 -1
- package/.dist/components/AbstractLegend.d.ts +30 -0
- package/.dist/components/AbstractLegend.js +195 -0
- package/.dist/components/AbstractLegend.js.map +1 -0
- package/.dist/components/Accordion.js +1 -1
- package/.dist/components/Accordion.js.map +1 -1
- package/.dist/components/Alert.d.ts +1 -1
- package/.dist/components/Alert.js +1 -1
- package/.dist/components/At.d.ts +57 -0
- package/.dist/components/At.js +182 -0
- package/.dist/components/At.js.map +1 -0
- package/.dist/components/AutoLegend.d.ts +21 -0
- package/.dist/components/AutoLegend.js +68 -0
- package/.dist/components/AutoLegend.js.map +1 -0
- package/.dist/components/Badge.d.ts +16 -0
- package/.dist/components/Badge.js +54 -0
- package/.dist/components/Badge.js.map +1 -0
- package/.dist/components/Box.d.ts +1 -1
- package/.dist/components/Box.js +4 -5
- package/.dist/components/Box.js.map +1 -1
- package/.dist/components/Breadcrumb.js +1 -1
- package/.dist/components/Breadcrumb.js.map +1 -1
- package/.dist/components/Button.d.ts +3 -2
- package/.dist/components/Button.js +13 -7
- package/.dist/components/Button.js.map +1 -1
- package/.dist/components/Calendar.d.ts +3 -1
- package/.dist/components/Calendar.js +34 -24
- package/.dist/components/Calendar.js.map +1 -1
- package/.dist/components/Callout.js +16 -16
- package/.dist/components/Callout.js.map +1 -1
- package/.dist/components/Canvas.js +1 -1
- package/.dist/components/Canvas.js.map +1 -1
- package/.dist/components/Checkbox.d.ts +3 -1
- package/.dist/components/Checkbox.js +11 -5
- package/.dist/components/Checkbox.js.map +1 -1
- package/.dist/components/Collapsible.js +1 -1
- package/.dist/components/Collapsible.js.map +1 -1
- package/.dist/components/CollapsibleText.js +1 -1
- package/.dist/components/CollapsibleText.js.map +1 -1
- package/.dist/components/Digits.d.ts +1 -1
- package/.dist/components/Digits.js +1 -1
- package/.dist/components/Digits.js.map +1 -1
- package/.dist/components/Drawer.d.ts +5 -3
- package/.dist/components/Drawer.js +20 -14
- package/.dist/components/Drawer.js.map +1 -1
- package/.dist/components/Dropdown.d.ts +1 -1
- package/.dist/components/Dropdown.js +25 -15
- package/.dist/components/Dropdown.js.map +1 -1
- package/.dist/components/HotKey.d.ts +7 -4
- package/.dist/components/HotKey.js +12 -4
- package/.dist/components/HotKey.js.map +1 -1
- package/.dist/components/Input.d.ts +3 -1
- package/.dist/components/Input.js +369 -45
- package/.dist/components/Input.js.map +1 -1
- package/.dist/components/Legend.d.ts +7 -13
- package/.dist/components/Legend.js +15 -163
- package/.dist/components/Legend.js.map +1 -1
- package/.dist/components/Log.d.ts +1 -0
- package/.dist/components/Log.js +5 -2
- package/.dist/components/Log.js.map +1 -1
- package/.dist/components/Modal.d.ts +2 -1
- package/.dist/components/Modal.js +2 -2
- package/.dist/components/Modal.js.map +1 -1
- package/.dist/components/Notification.d.ts +1 -1
- package/.dist/components/Notification.js +3 -3
- package/.dist/components/Notification.js.map +1 -1
- package/.dist/components/Page.js +5 -14
- package/.dist/components/Page.js.map +1 -1
- package/.dist/components/Pane.js +13 -10
- package/.dist/components/Pane.js.map +1 -1
- package/.dist/components/Plot.js +1 -1
- package/.dist/components/Plot.js.map +1 -1
- package/.dist/components/Progress.js +2 -2
- package/.dist/components/Progress.js.map +1 -1
- package/.dist/components/Scrollable.js +4 -4
- package/.dist/components/Scrollable.js.map +1 -1
- package/.dist/components/ScrollableList.js +4 -4
- package/.dist/components/ScrollableList.js.map +1 -1
- package/.dist/components/Separator.js +1 -1
- package/.dist/components/Separator.js.map +1 -1
- package/.dist/components/Slider.d.ts +3 -2
- package/.dist/components/Slider.js +14 -4
- package/.dist/components/Slider.js.map +1 -1
- package/.dist/components/Space.d.ts +1 -1
- package/.dist/components/Space.js +1 -1
- package/.dist/components/Space.js.map +1 -1
- package/.dist/components/Spinner.d.ts +3 -1
- package/.dist/components/Spinner.js +11 -1
- package/.dist/components/Spinner.js.map +1 -1
- package/.dist/components/Table.d.ts +1 -2
- package/.dist/components/Table.js +5 -5
- package/.dist/components/Table.js.map +1 -1
- package/.dist/components/Tabs.d.ts +3 -2
- package/.dist/components/Tabs.js +42 -3
- package/.dist/components/Tabs.js.map +1 -1
- package/.dist/components/Text.d.ts +1 -1
- package/.dist/components/Text.js +8 -1
- package/.dist/components/Text.js.map +1 -1
- package/.dist/components/Toggle.d.ts +26 -0
- package/.dist/components/Toggle.js +151 -0
- package/.dist/components/Toggle.js.map +1 -0
- package/.dist/components/ToggleGroup.d.ts +1 -1
- package/.dist/components/ToggleGroup.js +22 -4
- package/.dist/components/ToggleGroup.js.map +1 -1
- package/.dist/components/ZStack.js +3 -1
- package/.dist/components/ZStack.js.map +1 -1
- package/.dist/components/charts/BarChart.js +2 -2
- package/.dist/components/charts/BarChart.js.map +1 -1
- package/.dist/components/index.d.ts +6 -2
- package/.dist/components/index.js +6 -2
- package/.dist/components/index.js.map +1 -1
- package/.dist/components/utility/TrackMouse.d.ts +3 -5
- package/.dist/components/utility/TrackMouse.js +1 -2
- package/.dist/components/utility/TrackMouse.js.map +1 -1
- package/.dist/events/key.d.ts +10 -6
- package/.dist/events/key.js +29 -6
- package/.dist/events/key.js.map +1 -1
- package/.dist/events/mouse.d.ts +1 -1
- package/.dist/events/translate.js +6 -6
- package/.dist/events/translate.js.map +1 -1
- package/.dist/iTerm2.d.ts +1 -1
- package/.dist/iTerm2.js +1 -1
- package/.dist/iTerm2.js.map +1 -1
- package/.dist/index.d.ts +6 -5
- package/.dist/index.js +6 -5
- package/.dist/index.js.map +1 -1
- package/.dist/log.d.ts +7 -2
- package/.dist/log.js +10 -3
- package/.dist/log.js.map +1 -1
- package/.dist/managers/FocusManager.d.ts +5 -2
- package/.dist/managers/FocusManager.js +58 -46
- package/.dist/managers/FocusManager.js.map +1 -1
- package/.dist/managers/MouseManager.js +1 -1
- package/.dist/managers/MouseManager.js.map +1 -1
- package/.dist/managers/TickManager.d.ts +1 -1
- package/.dist/managers/TickManager.js +4 -4
- package/.dist/managers/TickManager.js.map +1 -1
- package/.dist/renderToAnsi.d.ts +0 -7
- package/.dist/renderToAnsi.js +7 -36
- package/.dist/renderToAnsi.js.map +1 -1
- package/.dist/terminal.d.ts +1 -0
- package/.dist/types.d.ts +32 -0
- package/.dist/types.js.map +1 -1
- package/package.json +8 -4
- package/.dist/Theme.js.map +0 -1
- package/.dist/inspect.d.ts +0 -14
- package/.dist/inspect.js +0 -172
- package/.dist/inspect.js.map +0 -1
- package/.dist/testing.js +0 -190
- package/.dist/testing.js.map +0 -1
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { TestTerminal } from './TestTerminal.js';
|
|
2
|
+
/**
|
|
3
|
+
* A headless Program for testing. Wraps a TestTerminal for output assertions,
|
|
4
|
+
* and allows pushing events programmatically via sendEvent().
|
|
5
|
+
*/
|
|
6
|
+
export class TestProgram {
|
|
7
|
+
#terminal;
|
|
8
|
+
#eventListener;
|
|
9
|
+
constructor({ cols, rows }) {
|
|
10
|
+
this.#terminal = new TestTerminal({ cols, rows });
|
|
11
|
+
}
|
|
12
|
+
get terminal() {
|
|
13
|
+
return this.#terminal;
|
|
14
|
+
}
|
|
15
|
+
// --- SGRTerminal interface ---
|
|
16
|
+
get cols() {
|
|
17
|
+
return this.#terminal.cols;
|
|
18
|
+
}
|
|
19
|
+
get rows() {
|
|
20
|
+
return this.#terminal.rows;
|
|
21
|
+
}
|
|
22
|
+
move(x, y) {
|
|
23
|
+
this.#terminal.move(x, y);
|
|
24
|
+
}
|
|
25
|
+
write(str) {
|
|
26
|
+
this.#terminal.write(str);
|
|
27
|
+
}
|
|
28
|
+
flush() {
|
|
29
|
+
this.#terminal.flush();
|
|
30
|
+
}
|
|
31
|
+
// --- Program lifecycle ---
|
|
32
|
+
setup() { }
|
|
33
|
+
teardown() { }
|
|
34
|
+
// --- Events ---
|
|
35
|
+
onEvents(listener) {
|
|
36
|
+
this.#eventListener = listener;
|
|
37
|
+
return () => {
|
|
38
|
+
this.#eventListener = undefined;
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
onResize(listener) {
|
|
42
|
+
// No resize in tests — return no-op unsubscribe
|
|
43
|
+
return () => { };
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Push a system event into the Screen's event pipeline.
|
|
47
|
+
*/
|
|
48
|
+
sendEvent(event) {
|
|
49
|
+
this.#eventListener?.(event);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=TestProgram.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestProgram.js","sourceRoot":"","sources":["../lib/TestProgram.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,YAAY,EAAC,MAAM,mBAAmB,CAAA;AAE9C;;;GAGG;AACH,MAAM,OAAO,WAAW;IACtB,SAAS,CAAc;IACvB,cAAc,CAA+B;IAE7C,YAAY,EAAC,IAAI,EAAE,IAAI,EAA+B;QACpD,IAAI,CAAC,SAAS,GAAG,IAAI,YAAY,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAA;IACjD,CAAC;IAED,IAAI,QAAQ;QACV,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED,gCAAgC;IAEhC,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA;IAC5B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAA;IAC5B,CAAC;IAED,IAAI,CAAC,CAAS,EAAE,CAAS;QACvB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA;IAC3B,CAAC;IAED,KAAK,CAAC,GAAW;QACf,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC3B,CAAC;IAED,KAAK;QACH,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAA;IACxB,CAAC;IAED,4BAA4B;IAE5B,KAAK,KAAU,CAAC;IAChB,QAAQ,KAAU,CAAC;IAEnB,iBAAiB;IAEjB,QAAQ,CAAC,QAAsC;QAC7C,IAAI,CAAC,cAAc,GAAG,QAAQ,CAAA;QAC9B,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,cAAc,GAAG,SAAS,CAAA;QACjC,CAAC,CAAA;IACH,CAAC;IAED,QAAQ,CAAC,QAAoB;QAC3B,gDAAgD;QAChD,OAAO,GAAG,EAAE,GAAE,CAAC,CAAA;IACjB,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,KAAkB;QAC1B,IAAI,CAAC,cAAc,EAAE,CAAC,KAAK,CAAC,CAAA;IAC9B,CAAC;CACF"}
|
|
@@ -15,10 +15,9 @@
|
|
|
15
15
|
* expect(t.terminal.charAt(0, 0)).toBe('a')
|
|
16
16
|
*/
|
|
17
17
|
import { type KeyName } from '@teaui/term';
|
|
18
|
-
import { TestTerminal } from './TestTerminal.js';
|
|
18
|
+
import type { TestTerminal } from './TestTerminal.js';
|
|
19
19
|
import type { View } from './View.js';
|
|
20
|
-
import type
|
|
21
|
-
import type { SystemMouseEvent } from './events/index.js';
|
|
20
|
+
import { type SystemMouseEvent } from './events/index.js';
|
|
22
21
|
declare class TestScreen {
|
|
23
22
|
#private;
|
|
24
23
|
readonly options: {
|
|
@@ -38,12 +37,11 @@ declare class TestScreen {
|
|
|
38
37
|
* animations and re-rendering.
|
|
39
38
|
*/
|
|
40
39
|
tick(dt: number): void;
|
|
41
|
-
asScreen(): Screen;
|
|
42
40
|
render(): void;
|
|
43
41
|
sendKey(key: KeyName, mods?: {
|
|
44
42
|
ctrl?: boolean;
|
|
45
43
|
alt?: boolean;
|
|
46
|
-
|
|
44
|
+
gui?: boolean;
|
|
47
45
|
shift?: boolean;
|
|
48
46
|
}): void;
|
|
49
47
|
sendMouse(name: SystemMouseEvent['name'], pos: {
|
|
@@ -52,7 +50,7 @@ declare class TestScreen {
|
|
|
52
50
|
}, mods?: {
|
|
53
51
|
ctrl?: boolean;
|
|
54
52
|
alt?: boolean;
|
|
55
|
-
|
|
53
|
+
gui?: boolean;
|
|
56
54
|
shift?: boolean;
|
|
57
55
|
}): void;
|
|
58
56
|
sendPaste(text: string): void;
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Screen } from './Screen.js';
|
|
2
|
+
import { TestProgram } from './TestProgram.js';
|
|
3
|
+
class TestScreen {
|
|
4
|
+
options;
|
|
5
|
+
#screen;
|
|
6
|
+
#program;
|
|
7
|
+
constructor(view, options) {
|
|
8
|
+
this.options = options;
|
|
9
|
+
this.#program = new TestProgram({
|
|
10
|
+
cols: options.width,
|
|
11
|
+
rows: options.height,
|
|
12
|
+
});
|
|
13
|
+
this.#screen = new Screen(this.#program, view, {
|
|
14
|
+
isFocused: options.isFocused !== false,
|
|
15
|
+
});
|
|
16
|
+
this.#screen.start();
|
|
17
|
+
}
|
|
18
|
+
get terminal() {
|
|
19
|
+
return this.#program.terminal;
|
|
20
|
+
}
|
|
21
|
+
get view() {
|
|
22
|
+
return this.#screen.rootView;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Advance time by `dt` milliseconds, triggering any registered tick
|
|
26
|
+
* animations and re-rendering.
|
|
27
|
+
*/
|
|
28
|
+
tick(dt) {
|
|
29
|
+
this.#screen.tick(dt);
|
|
30
|
+
}
|
|
31
|
+
render() {
|
|
32
|
+
this.#screen.render();
|
|
33
|
+
}
|
|
34
|
+
sendKey(key, mods = {}) {
|
|
35
|
+
const ctrl = mods.ctrl ?? false;
|
|
36
|
+
const alt = mods.alt ?? false;
|
|
37
|
+
const gui = mods.gui ?? false;
|
|
38
|
+
const shift = mods.shift ?? false;
|
|
39
|
+
let full = '';
|
|
40
|
+
if (ctrl)
|
|
41
|
+
full += 'C-';
|
|
42
|
+
if (alt)
|
|
43
|
+
full += 'A-';
|
|
44
|
+
if (gui)
|
|
45
|
+
full += 'G-';
|
|
46
|
+
if (shift)
|
|
47
|
+
full += 'S-';
|
|
48
|
+
full += key;
|
|
49
|
+
const char = key === 'space' ? ' ' : key.length === 1 ? key : '';
|
|
50
|
+
const event = {
|
|
51
|
+
type: 'key',
|
|
52
|
+
name: key,
|
|
53
|
+
char,
|
|
54
|
+
full: full,
|
|
55
|
+
ctrl,
|
|
56
|
+
alt,
|
|
57
|
+
gui,
|
|
58
|
+
shift,
|
|
59
|
+
};
|
|
60
|
+
this.#screen.trigger(event);
|
|
61
|
+
}
|
|
62
|
+
sendMouse(name, pos, mods = {}) {
|
|
63
|
+
const button = name.startsWith('mouse.wheel')
|
|
64
|
+
? 'wheel'
|
|
65
|
+
: name === 'mouse.move.in'
|
|
66
|
+
? 'unknown'
|
|
67
|
+
: 'left';
|
|
68
|
+
const event = {
|
|
69
|
+
type: 'mouse',
|
|
70
|
+
name,
|
|
71
|
+
x: pos.x,
|
|
72
|
+
y: pos.y,
|
|
73
|
+
ctrl: mods.ctrl ?? false,
|
|
74
|
+
alt: mods.alt ?? false,
|
|
75
|
+
gui: mods.gui ?? false,
|
|
76
|
+
shift: mods.shift ?? false,
|
|
77
|
+
button,
|
|
78
|
+
};
|
|
79
|
+
this.#screen.trigger(event);
|
|
80
|
+
}
|
|
81
|
+
sendPaste(text) {
|
|
82
|
+
this.#screen.trigger({ type: 'paste', text });
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Render a component headlessly and return a test harness for interaction testing.
|
|
87
|
+
*
|
|
88
|
+
* @example
|
|
89
|
+
* ```ts
|
|
90
|
+
* const t = testRender(new Input({value: 'hello'}), {width: 20, height: 1})
|
|
91
|
+
* expect(t.terminal.textContent()).toContain('hello')
|
|
92
|
+
* t.sendKey('!') // type a character
|
|
93
|
+
* expect(t.terminal.textContent()).toContain('hello!')
|
|
94
|
+
* ```
|
|
95
|
+
*/
|
|
96
|
+
export function testRender(view, size) {
|
|
97
|
+
return new TestScreen(view, size);
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=TestScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TestScreen.js","sourceRoot":"","sources":["../lib/TestScreen.ts"],"names":[],"mappings":"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"}
|
package/.dist/TestTerminal.js
CHANGED
|
@@ -38,26 +38,13 @@ export class TestTerminal {
|
|
|
38
38
|
this.#cursorY = y;
|
|
39
39
|
}
|
|
40
40
|
write(str) {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
if (
|
|
41
|
+
for (const char of unicode.printableChars(str)) {
|
|
42
|
+
const width = unicode.charWidth(char);
|
|
43
|
+
if (width === 0) {
|
|
44
44
|
// ANSI escape sequence
|
|
45
|
-
|
|
46
|
-
while (j < str.length && !isAnsiTerminator(str[j])) {
|
|
47
|
-
j++;
|
|
48
|
-
}
|
|
49
|
-
if (j < str.length) {
|
|
50
|
-
j++; // include the terminator
|
|
51
|
-
}
|
|
52
|
-
const sgr = str.slice(i, j);
|
|
53
|
-
this.#pendingSgr += sgr;
|
|
54
|
-
i = j;
|
|
45
|
+
this.#pendingSgr += char;
|
|
55
46
|
}
|
|
56
47
|
else {
|
|
57
|
-
// Visible character — may be multi-code-unit (emoji, CJK)
|
|
58
|
-
const codePoint = str.codePointAt(i);
|
|
59
|
-
const char = String.fromCodePoint(codePoint);
|
|
60
|
-
const width = unicode.charWidth(char);
|
|
61
48
|
// Apply any pending SGR to current style
|
|
62
49
|
if (this.#pendingSgr) {
|
|
63
50
|
this.#currentStyle = this.#parseAccumulatedSGR(this.#pendingSgr);
|
|
@@ -80,7 +67,6 @@ export class TestTerminal {
|
|
|
80
67
|
}
|
|
81
68
|
}
|
|
82
69
|
this.#cursorX += Math.max(width, 1);
|
|
83
|
-
i += char.length;
|
|
84
70
|
}
|
|
85
71
|
}
|
|
86
72
|
}
|
|
@@ -153,7 +139,7 @@ export class TestTerminal {
|
|
|
153
139
|
continue; // skip wide char continuation cells
|
|
154
140
|
line += char;
|
|
155
141
|
}
|
|
156
|
-
return line.trimEnd();
|
|
142
|
+
return line.trimEnd(); // + ''
|
|
157
143
|
}
|
|
158
144
|
/**
|
|
159
145
|
* Get all visible text content (rows joined by newlines, trailing spaces trimmed).
|
|
@@ -283,8 +269,4 @@ export class TestTerminal {
|
|
|
283
269
|
this.#currentStyle = Style.NONE;
|
|
284
270
|
}
|
|
285
271
|
}
|
|
286
|
-
function isAnsiTerminator(ch) {
|
|
287
|
-
const code = ch.charCodeAt(0);
|
|
288
|
-
return (code >= 65 && code <= 90) || (code >= 97 && code <= 122);
|
|
289
|
-
}
|
|
290
272
|
//# sourceMappingURL=TestTerminal.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TestTerminal.js","sourceRoot":"","sources":["../lib/TestTerminal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,aAAa,CAAA;AAGtC,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAA;AAOhC;;;;;;;;GAQG;AACH,MAAM,OAAO,YAAY;IACvB,IAAI,CAAQ;IACZ,IAAI,CAAQ;IACZ,KAAK,CAAU;IACf,QAAQ,GAAG,CAAC,CAAA;IACZ,QAAQ,GAAG,CAAC,CAAA;IACZ,WAAW,GAAG,EAAE,CAAA;IAChB,aAAa,GAAG,KAAK,CAAC,IAAI,CAAA;IAE1B,YAAY,EAAC,IAAI,EAAE,IAAI,EAA+B;QACpD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IACjC,CAAC;IAED,WAAW;QACT,MAAM,IAAI,GAAa,EAAE,CAAA;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YACnC,MAAM,GAAG,GAAW,EAAE,CAAA;YACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBACnC,GAAG,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,CAAC,IAAI,EAAC,CAAC,CAAA;YAC1C,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAChB,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI,CAAC,CAAS,EAAE,CAAS;QACvB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;QACjB,IAAI,CAAC,QAAQ,GAAG,CAAC,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,GAAW;QACf,
|
|
1
|
+
{"version":3,"file":"TestTerminal.js","sourceRoot":"","sources":["../lib/TestTerminal.ts"],"names":[],"mappings":"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"}
|
package/.dist/UI.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export declare function
|
|
1
|
+
import { Palette } from './Palette.js';
|
|
2
|
+
export declare function childPalette(purpose: Palette, isPressed?: boolean, isHover?: boolean): Palette;
|
package/.dist/UI.js
CHANGED
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import {
|
|
2
|
-
export function
|
|
3
|
-
return new
|
|
4
|
-
|
|
5
|
-
?
|
|
1
|
+
import { Palette } from './Palette.js';
|
|
2
|
+
export function childPalette(purpose, isPressed = false, isHover = false) {
|
|
3
|
+
return new Palette({
|
|
4
|
+
controlBackground: isPressed
|
|
5
|
+
? purpose.darkenColor
|
|
6
6
|
: isHover
|
|
7
|
-
?
|
|
8
|
-
:
|
|
7
|
+
? purpose.highlightColor
|
|
8
|
+
: purpose.controlBackgroundColor,
|
|
9
9
|
textBackground: isPressed
|
|
10
|
-
?
|
|
10
|
+
? purpose.darkenColor
|
|
11
11
|
: isHover
|
|
12
|
-
?
|
|
13
|
-
:
|
|
14
|
-
highlight:
|
|
12
|
+
? purpose.highlightColor
|
|
13
|
+
: purpose.controlBackgroundColor,
|
|
14
|
+
highlight: purpose.highlightColor,
|
|
15
15
|
darken: isPressed
|
|
16
|
-
?
|
|
16
|
+
? purpose.darkenColor
|
|
17
17
|
: isHover
|
|
18
|
-
?
|
|
19
|
-
:
|
|
20
|
-
text:
|
|
21
|
-
contrastText:
|
|
22
|
-
dimText:
|
|
23
|
-
tableChecked:
|
|
24
|
-
tableCheckedHighlight:
|
|
25
|
-
emoji:
|
|
18
|
+
? purpose.highlightColor
|
|
19
|
+
: purpose.darkenColor,
|
|
20
|
+
text: purpose.textColor,
|
|
21
|
+
contrastText: purpose.contrastTextColor,
|
|
22
|
+
dimText: purpose.dimTextColor,
|
|
23
|
+
tableChecked: purpose.tableCheckedColor,
|
|
24
|
+
tableCheckedHighlight: purpose.tableCheckedHighlightColor,
|
|
25
|
+
emoji: purpose.emoji,
|
|
26
26
|
});
|
|
27
27
|
}
|
|
28
28
|
//# sourceMappingURL=UI.js.map
|
package/.dist/UI.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UI.js","sourceRoot":"","sources":["../lib/UI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,
|
|
1
|
+
{"version":3,"file":"UI.js","sourceRoot":"","sources":["../lib/UI.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,cAAc,CAAA;AAEpC,MAAM,UAAU,YAAY,CAC1B,OAAgB,EAChB,SAAS,GAAG,KAAK,EACjB,OAAO,GAAG,KAAK;IAEf,OAAO,IAAI,OAAO,CAAC;QACjB,iBAAiB,EAAE,SAAS;YAC1B,CAAC,CAAC,OAAO,CAAC,WAAW;YACrB,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,OAAO,CAAC,cAAc;gBACxB,CAAC,CAAC,OAAO,CAAC,sBAAsB;QACpC,cAAc,EAAE,SAAS;YACvB,CAAC,CAAC,OAAO,CAAC,WAAW;YACrB,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,OAAO,CAAC,cAAc;gBACxB,CAAC,CAAC,OAAO,CAAC,sBAAsB;QACpC,SAAS,EAAE,OAAO,CAAC,cAAc;QACjC,MAAM,EAAE,SAAS;YACf,CAAC,CAAC,OAAO,CAAC,WAAW;YACrB,CAAC,CAAC,OAAO;gBACP,CAAC,CAAC,OAAO,CAAC,cAAc;gBACxB,CAAC,CAAC,OAAO,CAAC,WAAW;QACzB,IAAI,EAAE,OAAO,CAAC,SAAS;QACvB,YAAY,EAAE,OAAO,CAAC,iBAAiB;QACvC,OAAO,EAAE,OAAO,CAAC,YAAY;QAC7B,YAAY,EAAE,OAAO,CAAC,iBAAiB;QACvC,qBAAqB,EAAE,OAAO,CAAC,0BAA0B;QACzD,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC,CAAA;AACJ,CAAC"}
|
package/.dist/View.d.ts
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { Viewport } from './Viewport.js';
|
|
2
2
|
import type { Screen } from './Screen.js';
|
|
3
|
-
import type { Purpose } from './
|
|
4
|
-
import {
|
|
3
|
+
import type { Purpose } from './Palette.js';
|
|
4
|
+
import { Palette } from './Palette.js';
|
|
5
5
|
import { Container } from './Container.js';
|
|
6
6
|
import { System } from './System.js';
|
|
7
7
|
import { type KeyEvent, type MouseEvent } from './events/index.js';
|
|
8
8
|
import { Size } from './geometry.js';
|
|
9
9
|
import { Color } from './Color.js';
|
|
10
|
-
import { Edges } from './types.js';
|
|
10
|
+
import { type Edges, type LegendItem } from './types.js';
|
|
11
11
|
export type Dimension = number | 'fill' | 'shrink' | 'natural';
|
|
12
12
|
export type FlexSize = 'natural' | number;
|
|
13
13
|
export type FlexShorthand = FlexSize | `flex${number}`;
|
|
14
14
|
export declare function parseFlexShorthand(flex: FlexShorthand): FlexSize;
|
|
15
15
|
export type Pin = 'horizontal' | 'vertical';
|
|
16
16
|
export interface Props {
|
|
17
|
-
|
|
17
|
+
purpose?: Palette | Purpose;
|
|
18
18
|
/**
|
|
19
19
|
* A heading for this view. Container views (Box, Page, Alert, Drawer, etc.)
|
|
20
20
|
* can read this from their children to display a section heading without
|
|
@@ -58,9 +58,9 @@ export declare abstract class View {
|
|
|
58
58
|
pin: Pin | undefined;
|
|
59
59
|
constructor(props?: Props);
|
|
60
60
|
update(props: Props): void;
|
|
61
|
-
get
|
|
62
|
-
set
|
|
63
|
-
|
|
61
|
+
get purpose(): Palette;
|
|
62
|
+
set purpose(value: Palette | Purpose | undefined);
|
|
63
|
+
childPalette(_view: View): Palette;
|
|
64
64
|
get heading(): string | undefined;
|
|
65
65
|
set heading(value: string | undefined);
|
|
66
66
|
get isVisible(): boolean;
|
|
@@ -112,6 +112,11 @@ export declare abstract class View {
|
|
|
112
112
|
* had focus (i.e. `didFocus()` was called).
|
|
113
113
|
*/
|
|
114
114
|
didBlur(): void;
|
|
115
|
+
/**
|
|
116
|
+
* Returns keyboard shortcut items for this view, shown by AutoLegend
|
|
117
|
+
* when this view has focus. Override in subclasses to advertise shortcuts.
|
|
118
|
+
*/
|
|
119
|
+
legendItems(): LegendItem[];
|
|
115
120
|
removeFromParent(): void;
|
|
116
121
|
moveToScreen(screen: Screen | undefined): void;
|
|
117
122
|
/**
|
package/.dist/View.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Palette } from './Palette.js';
|
|
2
2
|
import { isMouseEnter, isMouseExit, isMousePressStart, isMousePressExit, } from './events/index.js';
|
|
3
3
|
import { Point, Size, Rect } from './geometry.js';
|
|
4
4
|
import { Style } from './Style.js';
|
|
@@ -17,7 +17,7 @@ export class View {
|
|
|
17
17
|
parent = undefined;
|
|
18
18
|
debug = false;
|
|
19
19
|
#screen = undefined;
|
|
20
|
-
#
|
|
20
|
+
#purpose;
|
|
21
21
|
#prevSizeCache = new Map();
|
|
22
22
|
#viewportContentSize = Size.zero;
|
|
23
23
|
#renderedContentSize = Size.zero;
|
|
@@ -66,8 +66,8 @@ export class View {
|
|
|
66
66
|
this.#update(props);
|
|
67
67
|
this.invalidateSize();
|
|
68
68
|
}
|
|
69
|
-
#update({
|
|
70
|
-
this.#
|
|
69
|
+
#update({ purpose, heading, x, y, width, height, minWidth, minHeight, maxWidth, maxHeight, isVisible, background, padding, paddingTop, paddingRight, paddingBottom, paddingLeft, flex, pin, debug, }) {
|
|
70
|
+
this.#purpose = typeof purpose === 'string' ? Palette[purpose] : purpose;
|
|
71
71
|
this.#heading = heading;
|
|
72
72
|
this.#x = x;
|
|
73
73
|
this.#y = y;
|
|
@@ -96,14 +96,14 @@ export class View {
|
|
|
96
96
|
},
|
|
97
97
|
});
|
|
98
98
|
}
|
|
99
|
-
get
|
|
100
|
-
return this.#
|
|
99
|
+
get purpose() {
|
|
100
|
+
return this.#purpose ?? this.parent?.childPalette(this) ?? Palette.plain;
|
|
101
101
|
}
|
|
102
|
-
set
|
|
103
|
-
this.#
|
|
102
|
+
set purpose(value) {
|
|
103
|
+
this.#purpose = typeof value === 'string' ? Palette[value] : value;
|
|
104
104
|
}
|
|
105
|
-
|
|
106
|
-
return this.
|
|
105
|
+
childPalette(_view) {
|
|
106
|
+
return this.purpose;
|
|
107
107
|
}
|
|
108
108
|
get heading() {
|
|
109
109
|
return this.#heading;
|
|
@@ -342,6 +342,13 @@ export class View {
|
|
|
342
342
|
didBlur() {
|
|
343
343
|
this.#hasFocus = false;
|
|
344
344
|
}
|
|
345
|
+
/**
|
|
346
|
+
* Returns keyboard shortcut items for this view, shown by AutoLegend
|
|
347
|
+
* when this view has focus. Override in subclasses to advertise shortcuts.
|
|
348
|
+
*/
|
|
349
|
+
legendItems() {
|
|
350
|
+
return [];
|
|
351
|
+
}
|
|
345
352
|
removeFromParent() {
|
|
346
353
|
if (!this.parent) {
|
|
347
354
|
return;
|
package/.dist/View.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.js","sourceRoot":"","sources":["../lib/View.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"View.js","sourceRoot":"","sources":["../lib/View.ts"],"names":[],"mappings":"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"}
|
package/.dist/Viewport.d.ts
CHANGED
|
@@ -24,6 +24,17 @@ export declare class Viewport {
|
|
|
24
24
|
* always.
|
|
25
25
|
*/
|
|
26
26
|
get contentSize(): Size;
|
|
27
|
+
/**
|
|
28
|
+
* In most cases, `availableRect` is synonymous with `contentRect`, but in some
|
|
29
|
+
* rare cases (e.g. drawing on top of box borders) the `availableRect` is larger.
|
|
30
|
+
* The available Rect will always be positioned outside or overlapping the
|
|
31
|
+
* `contentRect`, i.e.
|
|
32
|
+
* availableRect.origin.x <= 0
|
|
33
|
+
* availableRect.origin.y <= 0
|
|
34
|
+
* availableRect.size.width >= contentRect.size.width
|
|
35
|
+
* availableRect.size.height >= contentRect.size.height
|
|
36
|
+
*/
|
|
37
|
+
get availableRect(): Rect;
|
|
27
38
|
get visibleRect(): Rect;
|
|
28
39
|
get contentRect(): Rect;
|
|
29
40
|
get isEmpty(): boolean;
|
|
@@ -86,6 +97,21 @@ export declare class Viewport {
|
|
|
86
97
|
_render(view: View, clip: Rect, draw: (viewport: Viewport) => void): void;
|
|
87
98
|
clipped(clip: Rect, draw: (viewport: Viewport) => void): void;
|
|
88
99
|
clipped(clip: Rect, style: Style, draw: (viewport: Viewport) => void): void;
|
|
100
|
+
/**
|
|
101
|
+
* Shifts the viewport origin inward (to `rect.origin`) and sets contentSize to
|
|
102
|
+
* `rect.size`, without changing the clip boundary. This makes `availableRect`
|
|
103
|
+
* extend beyond `contentRect` so children can draw "on top of" the surrounding
|
|
104
|
+
* area (e.g. box borders).
|
|
105
|
+
*
|
|
106
|
+
* Must be called inside a `clipped()` callback — the enclosing `clipped` will
|
|
107
|
+
* restore the previous state.
|
|
108
|
+
*
|
|
109
|
+
* viewport.clipped(outerRect, inside => {
|
|
110
|
+
* inside.inset(innerRect)
|
|
111
|
+
* super.render(inside)
|
|
112
|
+
* })
|
|
113
|
+
*/
|
|
114
|
+
inset(rect: Rect, draw: (viewport: Viewport) => void): void;
|
|
89
115
|
}
|
|
90
116
|
declare class Pen {
|
|
91
117
|
#private;
|