@valyrianjs/terminal 0.2.3 → 0.2.4
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.map +1 -1
- package/dist/ansi.js +89 -104
- package/dist/ansi.js.map +1 -1
- package/dist/layout.d.ts +1 -0
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +11 -1
- package/dist/layout.js.map +1 -1
- package/dist/render-internal.d.ts.map +1 -1
- package/dist/render-internal.js +133 -27
- package/dist/render-internal.js.map +1 -1
- package/dist/render.d.ts.map +1 -1
- package/dist/render.js +4 -1
- package/dist/render.js.map +1 -1
- package/dist/session.d.ts.map +1 -1
- package/dist/session.js +36 -10
- package/dist/session.js.map +1 -1
- package/dist/theme.d.ts.map +1 -1
- package/dist/theme.js +4 -1
- package/dist/theme.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/docs/api-reference.md +5 -4
- package/docs/cookbook.md +5 -3
- package/docs/core-concepts.md +1 -1
- package/docs/interaction-model.md +1 -1
- package/docs/primitive-gallery.md +1 -1
- package/docs/session-runtime.md +2 -2
- package/examples/docs/overlay-button.tsx +128 -0
- package/llms-full.txt +15 -12
- package/package.json +1 -1
- package/src/ansi.ts +108 -111
- package/src/layout.ts +13 -2
- package/src/render-internal.ts +153 -29
- package/src/render.ts +5 -1
- package/src/session.ts +40 -11
- package/src/theme.ts +4 -1
- package/src/types.ts +1 -0
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/docs/api-reference.md
CHANGED
|
@@ -97,7 +97,7 @@ Theme recipes belong in `theme.styles`. Use `color`, `background`, padding, and
|
|
|
97
97
|
|
|
98
98
|
## Visual style system
|
|
99
99
|
|
|
100
|
-
`theme.styles` stores named style recipes. A recipe may define color, background, padding, border, and nested visual-state recipes. The renderer applies `theme.styles.<element>.base` automatically to public primitives that have a matching `.base` recipe, before any instance `style`. The bundled default theme uses that rule for app-like core controls such as `button.base`, `button.focus`, `input.base`, `input.focus`, `input.selection`, `list.base`, `list.current`, `list.selected`, `list.hover`, and `list.empty`. Components also resolve recipes by dot path, so `style="panel.queue"` reads `theme.styles.panel.queue`. Inline style objects work too when the style belongs to one component instance.
|
|
100
|
+
`theme.styles` stores named style recipes. A recipe may define color, background, padding, border, and nested visual-state recipes. The renderer applies `theme.styles.<element>.base` automatically to public primitives that have a matching `.base` recipe, before any instance `style`. The bundled default theme uses that rule for app-like core controls such as `button.base`, `button.focus`, `input.base`, `input.focus`, `input.selection`, `editor.base`, `editor.focus`, `editor.selection`, `list.base`, `list.current`, `list.selected`, `list.hover`, and `list.empty`. Components also resolve recipes by dot path, so `style="panel.queue"` reads `theme.styles.panel.queue`. Inline style objects work too when the style belongs to one component instance.
|
|
101
101
|
|
|
102
102
|
Use `style`, `styles`, and `state` for normal component styling:
|
|
103
103
|
|
|
@@ -126,7 +126,7 @@ Use `style`, `styles`, and `state` for component styling. Use `TerminalStyleSpan
|
|
|
126
126
|
|
|
127
127
|
### Advanced: span serialization tokens
|
|
128
128
|
|
|
129
|
-
`ansiOpen`, `ansiClose`, `plainPrefix`, and `plainSuffix` are low-level fields for trusted renderer integrations that already own frame spans and need exact serialization behavior. Application components get their styling API from semantic styles.
|
|
129
|
+
`ansiOpen`, `ansiClose`, `plainPrefix`, and `plainSuffix` are low-level fields for trusted renderer integrations that already own frame spans and need exact serialization behavior. Application components get their styling API from semantic styles. The default public span tokens include generic `focus` and editor-specific `editor.focus`; `editor.focus` styles the focused Editor frame for ANSI output without adding plain-text markers, so the visible `|` cursor remains the primary plain-output focus indicator.
|
|
130
130
|
|
|
131
131
|
Apps should prefer `theme.styles`, `style`, `styles`, `state`, `color`, `background`, and hex colors. Those fields keep styling semantic, portable, and safe for both `output()` and `ansiOutput()`. When a token defines `color`, `background`, or `style`, ANSI serialization uses the resolved style fields before raw ANSI fallback tokens.
|
|
132
132
|
|
|
@@ -235,12 +235,13 @@ Props:
|
|
|
235
235
|
- `margin: number | "<number>%" | { x: number | "<number>%"; y: number | "<number>%" }`
|
|
236
236
|
- shared visual props: `style`, `styles`, `state`
|
|
237
237
|
- `trapFocus?: boolean`
|
|
238
|
+
- `backdrop?: boolean | TerminalStyleValue`
|
|
238
239
|
- `id?: string`
|
|
239
240
|
- `focusable?: boolean`
|
|
240
241
|
|
|
241
|
-
Draws a clipped region over the current frame. `margin` sets the distance from the overlay to the frame edges; numbers use cells and percentage strings such as `"10%"` resolve per axis. Use `{ x, y }` when the two axes need different margins. `trapFocus` keeps traversal inside the overlay while it is active.
|
|
242
|
+
Draws a clipped region over the current frame. `margin` sets the distance from the overlay to the frame edges; numbers use cells and percentage strings such as `"10%"` resolve per axis. Use `{ x, y }` when the two axes need different margins. `trapFocus` keeps traversal inside the overlay while it is active. `backdrop` paints a visual layer over the existing frame and behind the overlay surface; `true` uses `overlay.backdrop`, and a string or style object uses that custom style value.
|
|
242
243
|
|
|
243
|
-
Overlay calculates its size from the available frame, stays centered by its margins, and keeps app routing and pane movement in your app layer. Direct sibling overlays use source order: later overlays paint above earlier overlays, receive pointer hits first, and lead trapped focus traversal. Overlay styles paint the full assigned surface, including empty cells behind child controls.
|
|
244
|
+
Overlay calculates its size from the available frame, stays centered by its margins, and keeps app routing and pane movement in your app layer. Direct sibling overlays use source order: later overlays paint above earlier overlays, receive pointer hits first, and lead trapped focus traversal. Overlay styles paint the full assigned surface, including empty cells behind child controls. Backdrop does not change modal hit testing; while an overlay is present, pointer routing to the background remains blocked by the overlay shield.
|
|
244
245
|
|
|
245
246
|
### `FocusScope`
|
|
246
247
|
|
package/docs/cookbook.md
CHANGED
|
@@ -84,7 +84,7 @@ console.log(session.output());
|
|
|
84
84
|
session.destroy();
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
For large lists, add `virtualized` and place the list in a bounded region such as a filled pane or split. The virtualized workbench demonstrates the uncontrolled List API with `itemKey`, the `children` callback, event payloads, active row, selected row, and viewport values: [`examples/docs/virtualized-list-workbench.tsx`](../examples/docs/virtualized-list-workbench.tsx). Shift+Up and Shift+Down are available for custom app actions. The List does not reorder items by default. Run it with `bun examples/docs/virtualized-list-workbench.tsx`, move active rows with `J/K` or `Up`/`Down`, jump with `PageUp`, `PageDown`, `Home`, or `End`, select with `Enter
|
|
87
|
+
For large lists, add `virtualized` and place the list in a bounded region such as a filled pane or split. The virtualized workbench demonstrates the uncontrolled List API with `itemKey`, the `children` callback, event payloads, active row, selected row, pointer selection, and viewport values: [`examples/docs/virtualized-list-workbench.tsx`](../examples/docs/virtualized-list-workbench.tsx). Shift+Up and Shift+Down are available for custom app actions. The List does not reorder items by default. Run it with `bun examples/docs/virtualized-list-workbench.tsx`, move active rows with `J/K` or `Up`/`Down`, jump with `PageUp`, `PageDown`, `Home`, or `End`, select with `Enter` or click, and quit with `Ctrl+C`. In live TTY app mode, mouse reporting is enabled by default; use your terminal modifier such as Shift if your emulator requires it for native text selection.
|
|
88
88
|
|
|
89
89
|
## Local state to Valyrian state module bridge
|
|
90
90
|
|
|
@@ -158,7 +158,9 @@ Complete terminal demos:
|
|
|
158
158
|
|
|
159
159
|
Use `Overlay` and `FocusScope` for app-local popovers or lightweight dialog surfaces. The app owns whether the surface is present and what action is performed.
|
|
160
160
|
|
|
161
|
-
|
|
161
|
+
Button-to-overlay example: [`examples/docs/overlay-button.tsx`](../examples/docs/overlay-button.tsx). Run it with `bun examples/docs/overlay-button.tsx`, open the panel with `Enter`, move inside it with `Tab`, and quit with `Ctrl+C`.
|
|
162
|
+
|
|
163
|
+
Related composition example: [`examples/docs/component-composition.tsx`](../examples/docs/component-composition.tsx). Run it with `bun examples/docs/component-composition.tsx`, switch cards with `N/P`, and quit with `Ctrl+C`.
|
|
162
164
|
|
|
163
165
|
```tsx
|
|
164
166
|
import { FocusScope, Input, List, Overlay, Screen, Text, mountTerminal } from "@valyrianjs/terminal";
|
|
@@ -174,7 +176,7 @@ function App() {
|
|
|
174
176
|
return (
|
|
175
177
|
<Screen title="Overlay recipe">
|
|
176
178
|
<Text>{state.executed ? `Executed: ${state.executed}` : "Choose a command"}</Text>
|
|
177
|
-
<Overlay margin={{ x: 2, y: 2 }} trapFocus>
|
|
179
|
+
<Overlay margin={{ x: 2, y: 2 }} trapFocus backdrop>
|
|
178
180
|
<FocusScope>
|
|
179
181
|
<Input
|
|
180
182
|
id="query"
|
package/docs/core-concepts.md
CHANGED
|
@@ -134,7 +134,7 @@ Focus belongs to the `TerminalSession`; app state remains yours. `FocusScope` ca
|
|
|
134
134
|
|
|
135
135
|
## Styling and visual states
|
|
136
136
|
|
|
137
|
-
Use `theme.styles` for named recipes with hex colors, border, and padding. The default theme already gives `Button`, `Input`, and `List` app-like base, focus, selection, current, hover, loading, and disabled styles, so `<Button><Text>Ok</Text></Button>` renders as a styled control without per-instance chrome. When a primitive has a matching `<element>.base` recipe, the renderer applies it automatically before instance styles. Components still use `style` for their base recipe, `styles` to map visual states to recipes, and `state` when the app owns a visual status. Raw span serialization tokens belong to low-level renderer integrations; normal styling uses semantic styles and hex colors.
|
|
137
|
+
Use `theme.styles` for named recipes with hex colors, border, and padding. The default theme already gives `Button`, `Input`, `Editor`, and `List` app-like base, focus, selection, current, hover, loading, and disabled styles, so `<Button><Text>Ok</Text></Button>` renders as a styled control without per-instance chrome. When a primitive has a matching `<element>.base` recipe, the renderer applies it automatically before instance styles. Components still use `style` for their base recipe, `styles` to map visual states to recipes, and `state` when the app owns a visual status. Raw span serialization tokens belong to low-level renderer integrations; normal styling uses semantic styles and hex colors. The public `editor.focus` span token lets ANSI output style a focused Editor while plain output keeps the cursor `|` as the focus indicator instead of adding `>` markers.
|
|
138
138
|
|
|
139
139
|
Related example: [`examples/docs/style-system.tsx`](../examples/docs/style-system.tsx). Run it with `bun examples/docs/style-system.tsx`, try `Tab`, `Enter`, and `W`, and quit with `Ctrl+C`.
|
|
140
140
|
|
|
@@ -152,7 +152,7 @@ When a connected session receives supported SGR mouse input:
|
|
|
152
152
|
- release ends capture when capture is active
|
|
153
153
|
- wheel input maps to vertical navigation
|
|
154
154
|
|
|
155
|
-
Mouse behavior follows supported terminal input sequences and the active session connection. Keep a keyboard path for important actions.
|
|
155
|
+
Mouse behavior follows supported terminal input sequences and the active session connection. Real interactive app mode enables SGR mouse reporting because click focus, button press, list selection, hover, drag capture, and wheel input depend on it. That terminal mode has a real host-level tradeoff: many emulators route drag gestures to the app instead of normal native text selection. Users usually select terminal text with the emulator modifier such as Shift while mouse reporting is active. Keep a keyboard path for important actions.
|
|
156
156
|
|
|
157
157
|
## Where to go next
|
|
158
158
|
|
|
@@ -336,7 +336,7 @@ Use `Overlay` for command panels, dialogs, palettes, and focused chooser surface
|
|
|
336
336
|
|
|
337
337
|
**What it is:** A positioned layer over the current frame.
|
|
338
338
|
**Use it for:** command panels, dialogs, palettes, and focused chooser surfaces.
|
|
339
|
-
**Core props:** `id`, `margin`, `trapFocus`, `style`. `margin` is required and accepts a number, a percentage string, or `{ x, y }` with number or percentage-string values. When `Overlay` is the root passed to `renderTerminal()`, pass exact `{ cols, rows }` as the second argument so margin can resolve against terminal dimensions. Later sibling overlays paint and receive pointer/focus routing above earlier overlays. Overlay background styles cover their full assigned surface, not just text cells.
|
|
339
|
+
**Core props:** `id`, `margin`, `trapFocus`, `backdrop`, `style`. `margin` is required and accepts a number, a percentage string, or `{ x, y }` with number or percentage-string values. `backdrop` paints behind the overlay surface and over the existing frame; `true` uses `overlay.backdrop`, and custom style tokens or style objects are accepted. When `Overlay` is the root passed to `renderTerminal()`, pass exact `{ cols, rows }` as the second argument so margin can resolve against terminal dimensions. Later sibling overlays paint and receive pointer/focus routing above earlier overlays. Overlay background styles cover their full assigned surface, not just text cells.
|
|
340
340
|
|
|
341
341
|
**Minimal example:**
|
|
342
342
|
|
package/docs/session-runtime.md
CHANGED
|
@@ -135,7 +135,7 @@ Removes listeners and restores supported terminal state when a session connected
|
|
|
135
135
|
- `runtime?: "app" | "headless"` - selects interactive app behavior or scriptable plain output. Omitted runtime uses app mode only for interactive TTY hosts and stays headless in non-TTY/CI contexts.
|
|
136
136
|
- `alternateScreen?: boolean` - enters the terminal alternate screen and restores it on destroy by default. Real interactive app mode enables it by default unless overridden.
|
|
137
137
|
- `hideCursor?: boolean` - expresses that the session should hide the terminal cursor while it owns the screen when the host supports it. Real interactive app mode enables it by default unless overridden.
|
|
138
|
-
- `restoreOnDestroy?: boolean` - controls whether destroy should restore supported cursor
|
|
138
|
+
- `restoreOnDestroy?: boolean` - controls whether destroy should restore supported cursor, alternate-screen, and mouse reporting state.
|
|
139
139
|
- `clipboard?: TerminalClipboardAdapter | false` - connects a custom clipboard adapter or disables external clipboard integration.
|
|
140
140
|
- `cols?: number` and `rows?: number` - set the initial terminal size.
|
|
141
141
|
- `stdin?` - receives keyboard, paste, and mouse input.
|
|
@@ -203,7 +203,7 @@ Automatic resize works with compatible output sources that emit supported resize
|
|
|
203
203
|
|
|
204
204
|
Bracketed paste is handled as terminal input: pasted text is inserted into the focused `Input` or `Editor` as content instead of being treated as separate key commands. Multiline `Editor` cursor columns are reported as JavaScript UTF-16 string columns, not as a complete terminal grapheme-width model.
|
|
205
205
|
|
|
206
|
-
Mouse input can focus or activate hitboxes, update hover state, and map wheel input to vertical navigation. Keep keyboard alternatives for important actions so every terminal workflow has a reliable input path.
|
|
206
|
+
Mouse input can focus or activate hitboxes, update hover state, and map wheel input to vertical navigation. In a real interactive TTY, `mountTerminal(<App />)` enables SGR mouse reporting so these interactions work without extra options. When SGR mouse reporting is active, many terminal emulators send drag gestures to the app instead of normal native text selection. Users usually need the terminal modifier such as Shift to select text, depending on the emulator. Keep keyboard alternatives for important actions so every terminal workflow has a reliable input path.
|
|
207
207
|
|
|
208
208
|
## Host integration behavior
|
|
209
209
|
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { Button, FocusScope, Overlay, Screen, Text, mountTerminal } from "@valyrianjs/terminal";
|
|
2
|
+
import type { TerminalMountOptions, TerminalSession } from "@valyrianjs/terminal";
|
|
3
|
+
|
|
4
|
+
interface OverlayButtonState {
|
|
5
|
+
open: boolean;
|
|
6
|
+
lastAction: string;
|
|
7
|
+
running: boolean;
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export interface OverlayButtonDemo {
|
|
11
|
+
session: TerminalSession;
|
|
12
|
+
dispatchKey(key: string): string;
|
|
13
|
+
output(): string;
|
|
14
|
+
ansiOutput(): string;
|
|
15
|
+
isRunning(): boolean;
|
|
16
|
+
destroy(): void;
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
function shouldRunSnapshot() {
|
|
20
|
+
return process.argv.includes("--snapshot") || process.env.VALYRIAN_TERMINAL_EXAMPLE_SNAPSHOT === "1" || !process.stdin.isTTY;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
function createInitialState(): OverlayButtonState {
|
|
24
|
+
return { open: false, lastAction: "No action yet", running: true };
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export function App({ state }: { state: OverlayButtonState }) {
|
|
28
|
+
return (
|
|
29
|
+
<Screen title="Overlay Button">
|
|
30
|
+
<Text>Overlay Button</Text>
|
|
31
|
+
<Text>{state.lastAction}</Text>
|
|
32
|
+
<Button
|
|
33
|
+
id="open-overlay"
|
|
34
|
+
onpress={() => {
|
|
35
|
+
state.open = true;
|
|
36
|
+
state.lastAction = "Details panel opened";
|
|
37
|
+
}}
|
|
38
|
+
>
|
|
39
|
+
Open details panel
|
|
40
|
+
</Button>
|
|
41
|
+
{state.open ? (
|
|
42
|
+
<Overlay id="details-overlay" margin={{ x: "12%", y: "20%" }} trapFocus backdrop style={{ background: "#111827", padding: { x: 1, y: 0 } }}>
|
|
43
|
+
<FocusScope>
|
|
44
|
+
<Text>Details panel</Text>
|
|
45
|
+
<Text>This panel opened from the button.</Text>
|
|
46
|
+
<Button
|
|
47
|
+
id="confirm-review"
|
|
48
|
+
onpress={() => {
|
|
49
|
+
state.lastAction = "Review marked as complete";
|
|
50
|
+
state.open = false;
|
|
51
|
+
}}
|
|
52
|
+
>
|
|
53
|
+
Mark as reviewed
|
|
54
|
+
</Button>
|
|
55
|
+
<Button
|
|
56
|
+
id="close-overlay"
|
|
57
|
+
onpress={() => {
|
|
58
|
+
state.lastAction = "Details panel closed";
|
|
59
|
+
state.open = false;
|
|
60
|
+
}}
|
|
61
|
+
>
|
|
62
|
+
Close panel
|
|
63
|
+
</Button>
|
|
64
|
+
</FocusScope>
|
|
65
|
+
</Overlay>
|
|
66
|
+
) : null}
|
|
67
|
+
<Text>Enter: open focused button Tab: move focus Ctrl+C: quit</Text>
|
|
68
|
+
</Screen>
|
|
69
|
+
);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
export function createOverlayButtonDemo(options: TerminalMountOptions = {}): OverlayButtonDemo {
|
|
73
|
+
const state = createInitialState();
|
|
74
|
+
let session: TerminalSession;
|
|
75
|
+
|
|
76
|
+
function quit() {
|
|
77
|
+
state.running = false;
|
|
78
|
+
session.destroy();
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
session = mountTerminal(<App state={state} />, {
|
|
82
|
+
...options,
|
|
83
|
+
keymap: {
|
|
84
|
+
...options.keymap,
|
|
85
|
+
bindings: [...(options.keymap?.bindings || []), { key: "CTRL_C", command: { id: "quit" }, scope: "global" }],
|
|
86
|
+
onCommand(command, context) {
|
|
87
|
+
if (command.id === "quit") {
|
|
88
|
+
quit();
|
|
89
|
+
return true;
|
|
90
|
+
}
|
|
91
|
+
return options.keymap?.onCommand?.(command, context);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
|
|
96
|
+
session.focus("open-overlay");
|
|
97
|
+
|
|
98
|
+
return {
|
|
99
|
+
session,
|
|
100
|
+
dispatchKey(key: string) {
|
|
101
|
+
return session.dispatchKey(key);
|
|
102
|
+
},
|
|
103
|
+
output() {
|
|
104
|
+
return session.output();
|
|
105
|
+
},
|
|
106
|
+
ansiOutput() {
|
|
107
|
+
return session.ansiOutput();
|
|
108
|
+
},
|
|
109
|
+
isRunning() {
|
|
110
|
+
return state.running;
|
|
111
|
+
},
|
|
112
|
+
destroy() {
|
|
113
|
+
state.running = false;
|
|
114
|
+
session.destroy();
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
if (import.meta.main) {
|
|
120
|
+
if (shouldRunSnapshot()) {
|
|
121
|
+
const demo = createOverlayButtonDemo({ runtime: "headless", cols: 64, rows: 12 });
|
|
122
|
+
process.stdout.write(demo.output());
|
|
123
|
+
process.stdout.write("\n");
|
|
124
|
+
demo.destroy();
|
|
125
|
+
} else {
|
|
126
|
+
createOverlayButtonDemo();
|
|
127
|
+
}
|
|
128
|
+
}
|
package/llms-full.txt
CHANGED
|
@@ -530,7 +530,7 @@ Focus belongs to the `TerminalSession`; app state remains yours. `FocusScope` ca
|
|
|
530
530
|
|
|
531
531
|
## Styling and visual states
|
|
532
532
|
|
|
533
|
-
Use `theme.styles` for named recipes with hex colors, border, and padding. The default theme already gives `Button`, `Input`, and `List` app-like base, focus, selection, current, hover, loading, and disabled styles, so `<Button><Text>Ok</Text></Button>` renders as a styled control without per-instance chrome. When a primitive has a matching `<element>.base` recipe, the renderer applies it automatically before instance styles. Components still use `style` for their base recipe, `styles` to map visual states to recipes, and `state` when the app owns a visual status. Raw span serialization tokens belong to low-level renderer integrations; normal styling uses semantic styles and hex colors.
|
|
533
|
+
Use `theme.styles` for named recipes with hex colors, border, and padding. The default theme already gives `Button`, `Input`, `Editor`, and `List` app-like base, focus, selection, current, hover, loading, and disabled styles, so `<Button><Text>Ok</Text></Button>` renders as a styled control without per-instance chrome. When a primitive has a matching `<element>.base` recipe, the renderer applies it automatically before instance styles. Components still use `style` for their base recipe, `styles` to map visual states to recipes, and `state` when the app owns a visual status. Raw span serialization tokens belong to low-level renderer integrations; normal styling uses semantic styles and hex colors. The public `editor.focus` span token lets ANSI output style a focused Editor while plain output keeps the cursor `|` as the focus indicator instead of adding `>` markers.
|
|
534
534
|
|
|
535
535
|
Related example: [`examples/docs/style-system.tsx`](../examples/docs/style-system.tsx). Run it with `bun examples/docs/style-system.tsx`, try `Tab`, `Enter`, and `W`, and quit with `Ctrl+C`.
|
|
536
536
|
|
|
@@ -666,7 +666,7 @@ console.log(session.output());
|
|
|
666
666
|
session.destroy();
|
|
667
667
|
```
|
|
668
668
|
|
|
669
|
-
For large lists, add `virtualized` and place the list in a bounded region such as a filled pane or split. The virtualized workbench demonstrates the uncontrolled List API with `itemKey`, the `children` callback, event payloads, active row, selected row, and viewport values: [`examples/docs/virtualized-list-workbench.tsx`](../examples/docs/virtualized-list-workbench.tsx). Shift+Up and Shift+Down are available for custom app actions. The List does not reorder items by default. Run it with `bun examples/docs/virtualized-list-workbench.tsx`, move active rows with `J/K` or `Up`/`Down`, jump with `PageUp`, `PageDown`, `Home`, or `End`, select with `Enter
|
|
669
|
+
For large lists, add `virtualized` and place the list in a bounded region such as a filled pane or split. The virtualized workbench demonstrates the uncontrolled List API with `itemKey`, the `children` callback, event payloads, active row, selected row, pointer selection, and viewport values: [`examples/docs/virtualized-list-workbench.tsx`](../examples/docs/virtualized-list-workbench.tsx). Shift+Up and Shift+Down are available for custom app actions. The List does not reorder items by default. Run it with `bun examples/docs/virtualized-list-workbench.tsx`, move active rows with `J/K` or `Up`/`Down`, jump with `PageUp`, `PageDown`, `Home`, or `End`, select with `Enter` or click, and quit with `Ctrl+C`. In live TTY app mode, mouse reporting is enabled by default; use your terminal modifier such as Shift if your emulator requires it for native text selection.
|
|
670
670
|
|
|
671
671
|
## Local state to Valyrian state module bridge
|
|
672
672
|
|
|
@@ -740,7 +740,9 @@ Complete terminal demos:
|
|
|
740
740
|
|
|
741
741
|
Use `Overlay` and `FocusScope` for app-local popovers or lightweight dialog surfaces. The app owns whether the surface is present and what action is performed.
|
|
742
742
|
|
|
743
|
-
|
|
743
|
+
Button-to-overlay example: [`examples/docs/overlay-button.tsx`](../examples/docs/overlay-button.tsx). Run it with `bun examples/docs/overlay-button.tsx`, open the panel with `Enter`, move inside it with `Tab`, and quit with `Ctrl+C`.
|
|
744
|
+
|
|
745
|
+
Related composition example: [`examples/docs/component-composition.tsx`](../examples/docs/component-composition.tsx). Run it with `bun examples/docs/component-composition.tsx`, switch cards with `N/P`, and quit with `Ctrl+C`.
|
|
744
746
|
|
|
745
747
|
```tsx
|
|
746
748
|
import { FocusScope, Input, List, Overlay, Screen, Text, mountTerminal } from "@valyrianjs/terminal";
|
|
@@ -756,7 +758,7 @@ function App() {
|
|
|
756
758
|
return (
|
|
757
759
|
<Screen title="Overlay recipe">
|
|
758
760
|
<Text>{state.executed ? `Executed: ${state.executed}` : "Choose a command"}</Text>
|
|
759
|
-
<Overlay margin={{ x: 2, y: 2 }} trapFocus>
|
|
761
|
+
<Overlay margin={{ x: 2, y: 2 }} trapFocus backdrop>
|
|
760
762
|
<FocusScope>
|
|
761
763
|
<Input
|
|
762
764
|
id="query"
|
|
@@ -1304,7 +1306,7 @@ Use `Overlay` for command panels, dialogs, palettes, and focused chooser surface
|
|
|
1304
1306
|
|
|
1305
1307
|
**What it is:** A positioned layer over the current frame.
|
|
1306
1308
|
**Use it for:** command panels, dialogs, palettes, and focused chooser surfaces.
|
|
1307
|
-
**Core props:** `id`, `margin`, `trapFocus`, `style`. `margin` is required and accepts a number, a percentage string, or `{ x, y }` with number or percentage-string values. When `Overlay` is the root passed to `renderTerminal()`, pass exact `{ cols, rows }` as the second argument so margin can resolve against terminal dimensions. Later sibling overlays paint and receive pointer/focus routing above earlier overlays. Overlay background styles cover their full assigned surface, not just text cells.
|
|
1309
|
+
**Core props:** `id`, `margin`, `trapFocus`, `backdrop`, `style`. `margin` is required and accepts a number, a percentage string, or `{ x, y }` with number or percentage-string values. `backdrop` paints behind the overlay surface and over the existing frame; `true` uses `overlay.backdrop`, and custom style tokens or style objects are accepted. When `Overlay` is the root passed to `renderTerminal()`, pass exact `{ cols, rows }` as the second argument so margin can resolve against terminal dimensions. Later sibling overlays paint and receive pointer/focus routing above earlier overlays. Overlay background styles cover their full assigned surface, not just text cells.
|
|
1308
1310
|
|
|
1309
1311
|
**Minimal example:**
|
|
1310
1312
|
|
|
@@ -1499,7 +1501,7 @@ When a connected session receives supported SGR mouse input:
|
|
|
1499
1501
|
- release ends capture when capture is active
|
|
1500
1502
|
- wheel input maps to vertical navigation
|
|
1501
1503
|
|
|
1502
|
-
Mouse behavior follows supported terminal input sequences and the active session connection. Keep a keyboard path for important actions.
|
|
1504
|
+
Mouse behavior follows supported terminal input sequences and the active session connection. Real interactive app mode enables SGR mouse reporting because click focus, button press, list selection, hover, drag capture, and wheel input depend on it. That terminal mode has a real host-level tradeoff: many emulators route drag gestures to the app instead of normal native text selection. Users usually select terminal text with the emulator modifier such as Shift while mouse reporting is active. Keep a keyboard path for important actions.
|
|
1503
1505
|
|
|
1504
1506
|
## Where to go next
|
|
1505
1507
|
|
|
@@ -1648,7 +1650,7 @@ Removes listeners and restores supported terminal state when a session connected
|
|
|
1648
1650
|
- `runtime?: "app" | "headless"` - selects interactive app behavior or scriptable plain output. Omitted runtime uses app mode only for interactive TTY hosts and stays headless in non-TTY/CI contexts.
|
|
1649
1651
|
- `alternateScreen?: boolean` - enters the terminal alternate screen and restores it on destroy by default. Real interactive app mode enables it by default unless overridden.
|
|
1650
1652
|
- `hideCursor?: boolean` - expresses that the session should hide the terminal cursor while it owns the screen when the host supports it. Real interactive app mode enables it by default unless overridden.
|
|
1651
|
-
- `restoreOnDestroy?: boolean` - controls whether destroy should restore supported cursor
|
|
1653
|
+
- `restoreOnDestroy?: boolean` - controls whether destroy should restore supported cursor, alternate-screen, and mouse reporting state.
|
|
1652
1654
|
- `clipboard?: TerminalClipboardAdapter | false` - connects a custom clipboard adapter or disables external clipboard integration.
|
|
1653
1655
|
- `cols?: number` and `rows?: number` - set the initial terminal size.
|
|
1654
1656
|
- `stdin?` - receives keyboard, paste, and mouse input.
|
|
@@ -1716,7 +1718,7 @@ Automatic resize works with compatible output sources that emit supported resize
|
|
|
1716
1718
|
|
|
1717
1719
|
Bracketed paste is handled as terminal input: pasted text is inserted into the focused `Input` or `Editor` as content instead of being treated as separate key commands. Multiline `Editor` cursor columns are reported as JavaScript UTF-16 string columns, not as a complete terminal grapheme-width model.
|
|
1718
1720
|
|
|
1719
|
-
Mouse input can focus or activate hitboxes, update hover state, and map wheel input to vertical navigation. Keep keyboard alternatives for important actions so every terminal workflow has a reliable input path.
|
|
1721
|
+
Mouse input can focus or activate hitboxes, update hover state, and map wheel input to vertical navigation. In a real interactive TTY, `mountTerminal(<App />)` enables SGR mouse reporting so these interactions work without extra options. When SGR mouse reporting is active, many terminal emulators send drag gestures to the app instead of normal native text selection. Users usually need the terminal modifier such as Shift to select text, depending on the emulator. Keep keyboard alternatives for important actions so every terminal workflow has a reliable input path.
|
|
1720
1722
|
|
|
1721
1723
|
## Host integration behavior
|
|
1722
1724
|
|
|
@@ -5036,7 +5038,7 @@ Theme recipes belong in `theme.styles`. Use `color`, `background`, padding, and
|
|
|
5036
5038
|
|
|
5037
5039
|
## Visual style system
|
|
5038
5040
|
|
|
5039
|
-
`theme.styles` stores named style recipes. A recipe may define color, background, padding, border, and nested visual-state recipes. The renderer applies `theme.styles.<element>.base` automatically to public primitives that have a matching `.base` recipe, before any instance `style`. The bundled default theme uses that rule for app-like core controls such as `button.base`, `button.focus`, `input.base`, `input.focus`, `input.selection`, `list.base`, `list.current`, `list.selected`, `list.hover`, and `list.empty`. Components also resolve recipes by dot path, so `style="panel.queue"` reads `theme.styles.panel.queue`. Inline style objects work too when the style belongs to one component instance.
|
|
5041
|
+
`theme.styles` stores named style recipes. A recipe may define color, background, padding, border, and nested visual-state recipes. The renderer applies `theme.styles.<element>.base` automatically to public primitives that have a matching `.base` recipe, before any instance `style`. The bundled default theme uses that rule for app-like core controls such as `button.base`, `button.focus`, `input.base`, `input.focus`, `input.selection`, `editor.base`, `editor.focus`, `editor.selection`, `list.base`, `list.current`, `list.selected`, `list.hover`, and `list.empty`. Components also resolve recipes by dot path, so `style="panel.queue"` reads `theme.styles.panel.queue`. Inline style objects work too when the style belongs to one component instance.
|
|
5040
5042
|
|
|
5041
5043
|
Use `style`, `styles`, and `state` for normal component styling:
|
|
5042
5044
|
|
|
@@ -5065,7 +5067,7 @@ Use `style`, `styles`, and `state` for component styling. Use `TerminalStyleSpan
|
|
|
5065
5067
|
|
|
5066
5068
|
### Advanced: span serialization tokens
|
|
5067
5069
|
|
|
5068
|
-
`ansiOpen`, `ansiClose`, `plainPrefix`, and `plainSuffix` are low-level fields for trusted renderer integrations that already own frame spans and need exact serialization behavior. Application components get their styling API from semantic styles.
|
|
5070
|
+
`ansiOpen`, `ansiClose`, `plainPrefix`, and `plainSuffix` are low-level fields for trusted renderer integrations that already own frame spans and need exact serialization behavior. Application components get their styling API from semantic styles. The default public span tokens include generic `focus` and editor-specific `editor.focus`; `editor.focus` styles the focused Editor frame for ANSI output without adding plain-text markers, so the visible `|` cursor remains the primary plain-output focus indicator.
|
|
5069
5071
|
|
|
5070
5072
|
Apps should prefer `theme.styles`, `style`, `styles`, `state`, `color`, `background`, and hex colors. Those fields keep styling semantic, portable, and safe for both `output()` and `ansiOutput()`. When a token defines `color`, `background`, or `style`, ANSI serialization uses the resolved style fields before raw ANSI fallback tokens.
|
|
5071
5073
|
|
|
@@ -5174,12 +5176,13 @@ Props:
|
|
|
5174
5176
|
- `margin: number | "<number>%" | { x: number | "<number>%"; y: number | "<number>%" }`
|
|
5175
5177
|
- shared visual props: `style`, `styles`, `state`
|
|
5176
5178
|
- `trapFocus?: boolean`
|
|
5179
|
+
- `backdrop?: boolean | TerminalStyleValue`
|
|
5177
5180
|
- `id?: string`
|
|
5178
5181
|
- `focusable?: boolean`
|
|
5179
5182
|
|
|
5180
|
-
Draws a clipped region over the current frame. `margin` sets the distance from the overlay to the frame edges; numbers use cells and percentage strings such as `"10%"` resolve per axis. Use `{ x, y }` when the two axes need different margins. `trapFocus` keeps traversal inside the overlay while it is active.
|
|
5183
|
+
Draws a clipped region over the current frame. `margin` sets the distance from the overlay to the frame edges; numbers use cells and percentage strings such as `"10%"` resolve per axis. Use `{ x, y }` when the two axes need different margins. `trapFocus` keeps traversal inside the overlay while it is active. `backdrop` paints a visual layer over the existing frame and behind the overlay surface; `true` uses `overlay.backdrop`, and a string or style object uses that custom style value.
|
|
5181
5184
|
|
|
5182
|
-
Overlay calculates its size from the available frame, stays centered by its margins, and keeps app routing and pane movement in your app layer. Direct sibling overlays use source order: later overlays paint above earlier overlays, receive pointer hits first, and lead trapped focus traversal. Overlay styles paint the full assigned surface, including empty cells behind child controls.
|
|
5185
|
+
Overlay calculates its size from the available frame, stays centered by its margins, and keeps app routing and pane movement in your app layer. Direct sibling overlays use source order: later overlays paint above earlier overlays, receive pointer hits first, and lead trapped focus traversal. Overlay styles paint the full assigned surface, including empty cells behind child controls. Backdrop does not change modal hit testing; while an overlay is present, pointer routing to the background remains blocked by the overlay shield.
|
|
5183
5186
|
|
|
5184
5187
|
### `FocusScope`
|
|
5185
5188
|
|