@profullstack/hqtui-demo 0.1.7 → 0.1.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/README.md +4 -0
- package/dist/main.js +11 -40
- package/dist/main.js.map +1 -1
- package/dist/screens/components.js +30 -4
- package/dist/screens/components.js.map +1 -1
- package/dist/screens/dashboard.js +21 -4
- package/dist/screens/dashboard.js.map +1 -1
- package/dist/screens/network.js +14 -3
- package/dist/screens/network.js.map +1 -1
- package/dist/screens/services.js +23 -3
- package/dist/screens/services.js.map +1 -1
- package/dist/screens/sessions.js +23 -3
- package/dist/screens/sessions.js.map +1 -1
- package/dist/screens/traffic.js +30 -3
- package/dist/screens/traffic.js.map +1 -1
- package/dist/state.js +50 -4
- package/dist/state.js.map +1 -1
- package/package.json +4 -3
- package/src/main.ts +11 -41
- package/src/screens/components.ts +30 -4
- package/src/screens/dashboard.ts +21 -4
- package/src/screens/network.ts +14 -3
- package/src/screens/services.ts +23 -3
- package/src/screens/sessions.ts +24 -4
- package/src/screens/traffic.ts +30 -3
- package/src/state.ts +69 -9
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/screens/services.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/screens/services.ts"],"names":[],"mappings":"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"}
|
package/dist/screens/sessions.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { focusPane, pane, scrollPane } from "../state.js";
|
|
2
2
|
/** Who is on this machine, who has been, and who failed to get in. */
|
|
3
3
|
export function sessionsScreen(ui, state, theme) {
|
|
4
4
|
const t = state.sample.telemetry;
|
|
@@ -9,8 +9,16 @@ export function sessionsScreen(ui, state, theme) {
|
|
|
9
9
|
p.label("(`who` reports nothing on this host)", { size: 1 });
|
|
10
10
|
return;
|
|
11
11
|
}
|
|
12
|
+
const active = pane(state, "sessions.active", t.sessions.length);
|
|
12
13
|
p.table({
|
|
13
14
|
rows: t.sessions,
|
|
15
|
+
selected: active.selected,
|
|
16
|
+
offset: active.offset,
|
|
17
|
+
followSelection: true,
|
|
18
|
+
scrollbar: true,
|
|
19
|
+
onScroll: (delta) => scrollPane(active, delta),
|
|
20
|
+
onFocus: () => focusPane(state, "sessions.active"),
|
|
21
|
+
onSelectRow: (row) => { active.selected = active.offset + row; },
|
|
14
22
|
columns: [
|
|
15
23
|
{ key: "user", title: "User", width: 12, color: theme.primary },
|
|
16
24
|
{ key: "tty", title: "TTY", width: 10 },
|
|
@@ -36,11 +44,15 @@ export function sessionsScreen(ui, state, theme) {
|
|
|
36
44
|
p.label("No login history available.");
|
|
37
45
|
return;
|
|
38
46
|
}
|
|
47
|
+
const logins = pane(state, "sessions.logins", t.logins.length);
|
|
39
48
|
p.table({
|
|
40
49
|
rows: t.logins,
|
|
41
|
-
selected:
|
|
42
|
-
offset:
|
|
50
|
+
selected: logins.selected,
|
|
51
|
+
offset: logins.offset,
|
|
43
52
|
followSelection: true,
|
|
53
|
+
onScroll: (delta) => scrollPane(logins, delta),
|
|
54
|
+
onFocus: () => focusPane(state, "sessions.logins"),
|
|
55
|
+
onSelectRow: (row) => { logins.selected = logins.offset + row; },
|
|
44
56
|
zebra: true,
|
|
45
57
|
scrollbar: true,
|
|
46
58
|
columns: [
|
|
@@ -64,8 +76,16 @@ export function sessionsScreen(ui, state, theme) {
|
|
|
64
76
|
p.label("(btmp is usually root-only)", { size: 1 });
|
|
65
77
|
return;
|
|
66
78
|
}
|
|
79
|
+
const failed = pane(state, "sessions.failed", t.failedLogins.length);
|
|
67
80
|
p.table({
|
|
68
81
|
rows: t.failedLogins,
|
|
82
|
+
selected: failed.selected,
|
|
83
|
+
offset: failed.offset,
|
|
84
|
+
followSelection: true,
|
|
85
|
+
scrollbar: true,
|
|
86
|
+
onScroll: (delta) => scrollPane(failed, delta),
|
|
87
|
+
onFocus: () => focusPane(state, "sessions.failed"),
|
|
88
|
+
onSelectRow: (row) => { failed.selected = failed.offset + row; },
|
|
69
89
|
columns: [
|
|
70
90
|
{ key: "user", title: "User", width: 12, color: theme.danger },
|
|
71
91
|
{ key: "from", title: "From", min: 12 },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/screens/sessions.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../src/screens/sessions.ts"],"names":[],"mappings":"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"}
|
package/dist/screens/traffic.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { seriesColor } from "@profullstack/hqtui";
|
|
2
|
-
import {
|
|
2
|
+
import { focusPane, pane, scrollPane } from "../state.js";
|
|
3
3
|
import { num, percent } from "../format.js";
|
|
4
4
|
function rate(value) {
|
|
5
5
|
if (value >= 1e6)
|
|
@@ -104,8 +104,16 @@ export function trafficScreen(ui, state, theme) {
|
|
|
104
104
|
text: String(entry.count),
|
|
105
105
|
})), { labelWidth: 5, valueWidth: 7 });
|
|
106
106
|
p.divider({ label: "top paths" });
|
|
107
|
+
const paths = pane(state, "traffic.paths", http.topPaths.length);
|
|
107
108
|
p.table({
|
|
108
109
|
rows: http.topPaths,
|
|
110
|
+
selected: paths.selected,
|
|
111
|
+
offset: paths.offset,
|
|
112
|
+
followSelection: true,
|
|
113
|
+
scrollbar: true,
|
|
114
|
+
onScroll: (delta) => scrollPane(paths, delta),
|
|
115
|
+
onFocus: () => focusPane(state, "traffic.paths"),
|
|
116
|
+
onSelectRow: (row) => { paths.selected = paths.offset + row; },
|
|
109
117
|
header: false,
|
|
110
118
|
columns: [
|
|
111
119
|
{ key: "path", title: "Path", min: 20, color: theme.primary },
|
|
@@ -120,11 +128,15 @@ export function trafficScreen(ui, state, theme) {
|
|
|
120
128
|
p.label("No sshd events in the journal.");
|
|
121
129
|
return;
|
|
122
130
|
}
|
|
131
|
+
const ssh = pane(state, "traffic.ssh", t.ssh.length);
|
|
123
132
|
p.table({
|
|
124
133
|
rows: [...t.ssh].reverse(),
|
|
125
|
-
selected:
|
|
126
|
-
offset:
|
|
134
|
+
selected: ssh.selected,
|
|
135
|
+
offset: ssh.offset,
|
|
127
136
|
followSelection: true,
|
|
137
|
+
onScroll: (delta) => scrollPane(ssh, delta),
|
|
138
|
+
onFocus: () => focusPane(state, "traffic.ssh"),
|
|
139
|
+
onSelectRow: (row) => { ssh.selected = ssh.offset + row; },
|
|
128
140
|
zebra: true,
|
|
129
141
|
scrollbar: true,
|
|
130
142
|
columns: [
|
|
@@ -148,8 +160,16 @@ export function trafficScreen(ui, state, theme) {
|
|
|
148
160
|
p.label("No remote peers.");
|
|
149
161
|
return;
|
|
150
162
|
}
|
|
163
|
+
const remotes = pane(state, "traffic.remotes", t.remotes.length);
|
|
151
164
|
p.table({
|
|
152
165
|
rows: t.remotes,
|
|
166
|
+
selected: remotes.selected,
|
|
167
|
+
offset: remotes.offset,
|
|
168
|
+
followSelection: true,
|
|
169
|
+
scrollbar: true,
|
|
170
|
+
onScroll: (delta) => scrollPane(remotes, delta),
|
|
171
|
+
onFocus: () => focusPane(state, "traffic.remotes"),
|
|
172
|
+
onSelectRow: (row) => { remotes.selected = remotes.offset + row; },
|
|
153
173
|
zebra: true,
|
|
154
174
|
columns: [
|
|
155
175
|
{ key: "host", title: "Host", min: 16, color: theme.accent },
|
|
@@ -162,8 +182,15 @@ export function trafficScreen(ui, state, theme) {
|
|
|
162
182
|
});
|
|
163
183
|
if (http && http.recent.length) {
|
|
164
184
|
ui.panel({ title: "Recent Requests", size: 10, borderColor: theme.primary }, (p) => {
|
|
185
|
+
const requests = pane(state, "traffic.requests", http.recent.length);
|
|
165
186
|
p.table({
|
|
166
187
|
rows: http.recent,
|
|
188
|
+
selected: requests.selected,
|
|
189
|
+
offset: requests.offset,
|
|
190
|
+
followSelection: true,
|
|
191
|
+
onScroll: (delta) => scrollPane(requests, delta),
|
|
192
|
+
onFocus: () => focusPane(state, "traffic.requests"),
|
|
193
|
+
onSelectRow: (row) => { requests.selected = requests.offset + row; },
|
|
167
194
|
zebra: true,
|
|
168
195
|
scrollbar: true,
|
|
169
196
|
columns: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traffic.js","sourceRoot":"","sources":["../../src/screens/traffic.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"traffic.js","sourceRoot":"","sources":["../../src/screens/traffic.ts"],"names":[],"mappings":"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"}
|
package/dist/state.js
CHANGED
|
@@ -2,9 +2,54 @@ export const SCREENS = [
|
|
|
2
2
|
"dashboard", "traffic", "sessions", "network", "services",
|
|
3
3
|
"components", "graphics", "themes", "input", "stress",
|
|
4
4
|
];
|
|
5
|
-
/**
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
/**
|
|
6
|
+
* The cursor for one scrollable, created on first use. Screens call this while
|
|
7
|
+
* drawing, which is also what registers the pane as existing.
|
|
8
|
+
*/
|
|
9
|
+
export function pane(state, id, total, kind = "list") {
|
|
10
|
+
const existing = state.panes[id];
|
|
11
|
+
if (existing) {
|
|
12
|
+
existing.total = total;
|
|
13
|
+
return existing;
|
|
14
|
+
}
|
|
15
|
+
const created = { selected: 0, offset: 0, total, kind };
|
|
16
|
+
state.panes[id] = created;
|
|
17
|
+
// The first pane a screen draws is the one the arrows drive by default.
|
|
18
|
+
if (!state.focused[state.screen])
|
|
19
|
+
state.focused[state.screen] = id;
|
|
20
|
+
return created;
|
|
21
|
+
}
|
|
22
|
+
/** The pane the arrow keys act on, for the screen that is showing. */
|
|
23
|
+
export function focusedPane(state) {
|
|
24
|
+
const id = state.focused[state.screen];
|
|
25
|
+
return id ? state.panes[id] : undefined;
|
|
26
|
+
}
|
|
27
|
+
export function focusPane(state, id) {
|
|
28
|
+
state.focused[state.screen] = id;
|
|
29
|
+
}
|
|
30
|
+
/** Move a pane's window, dragging the selection so it stays inside. */
|
|
31
|
+
export function scrollPane(p, delta, rows = 3) {
|
|
32
|
+
const max = Math.max(0, p.total - 1);
|
|
33
|
+
p.offset = Math.max(0, Math.min(p.offset + delta * rows, max));
|
|
34
|
+
if (p.kind !== "log")
|
|
35
|
+
p.selected = Math.max(p.offset, Math.min(p.selected, max));
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* What the arrow keys do to the focused pane. Lists move the selection and let
|
|
39
|
+
* the widget scroll to follow it; logs have nothing to select, so they move
|
|
40
|
+
* their own window.
|
|
41
|
+
*/
|
|
42
|
+
export function moveSelection(state, delta) {
|
|
43
|
+
const p = focusedPane(state);
|
|
44
|
+
if (!p || p.total === 0)
|
|
45
|
+
return;
|
|
46
|
+
if (p.kind === "log") {
|
|
47
|
+
// Down means newer, which is a smaller distance from the end.
|
|
48
|
+
p.offset = Math.max(0, Math.min(p.total - 1, p.offset - delta));
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
p.selected = Math.max(0, Math.min(p.total - 1, p.selected + delta));
|
|
52
|
+
p.offset = Math.max(0, Math.min(p.offset, Math.max(0, p.total - 1)));
|
|
8
53
|
}
|
|
9
54
|
export function createState(sample, source, unavailable, sensorNote = "") {
|
|
10
55
|
return {
|
|
@@ -13,7 +58,8 @@ export function createState(sample, source, unavailable, sensorNote = "") {
|
|
|
13
58
|
screen: "dashboard",
|
|
14
59
|
source,
|
|
15
60
|
unavailable,
|
|
16
|
-
|
|
61
|
+
panes: {},
|
|
62
|
+
focused: {},
|
|
17
63
|
sort: "cpu",
|
|
18
64
|
filter: "",
|
|
19
65
|
filtering: false,
|
package/dist/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"AAOA,MAAM,CAAC,MAAM,OAAO,GAAiB;IACnC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU;IACzD,YAAY,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ;CACtD,CAAC;
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@profullstack/hqtui-demo",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.9",
|
|
4
4
|
"description": "The HQTUI reference dashboard: a btop-grade terminal system monitor. Runs on real system metrics or a deterministic simulation.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -23,10 +23,11 @@
|
|
|
23
23
|
"start": "bun src/main.ts",
|
|
24
24
|
"build": "bun x tsc -p tsconfig.json",
|
|
25
25
|
"prepublishOnly": "bun x tsc -p tsconfig.json",
|
|
26
|
-
"shots": "bun scripts/shots.ts"
|
|
26
|
+
"shots": "bun scripts/shots.ts",
|
|
27
|
+
"audit:scroll": "bun scripts/scrollaudit.ts"
|
|
27
28
|
},
|
|
28
29
|
"dependencies": {
|
|
29
|
-
"@profullstack/hqtui": "^0.1.
|
|
30
|
+
"@profullstack/hqtui": "^0.1.9"
|
|
30
31
|
},
|
|
31
32
|
"publishConfig": {
|
|
32
33
|
"access": "public"
|
package/src/main.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import { createApp, themeList, themes, type KeyEvent } from "@profullstack/hqtui";
|
|
11
11
|
import { createCollector } from "./system/index.ts";
|
|
12
|
-
import { createState,
|
|
12
|
+
import { createState, focusedPane, moveSelection, SCREENS, type ScreenName } from "./state.ts";
|
|
13
13
|
import {
|
|
14
14
|
componentsScreen, dashboardScreen, graphicsScreen, inputScreen, networkScreen, servicesScreen,
|
|
15
15
|
sessionsScreen, stressScreen, themesScreen, trafficScreen, visibleProcesses,
|
|
@@ -50,7 +50,7 @@ function parseArgs(argv: string[]): Options {
|
|
|
50
50
|
case "-h":
|
|
51
51
|
case "--help": printHelp(); process.exit(0);
|
|
52
52
|
case "-v":
|
|
53
|
-
case "--version": console.log("hqtui-demo 0.1.
|
|
53
|
+
case "--version": console.log("hqtui-demo 0.1.9"); process.exit(0);
|
|
54
54
|
}
|
|
55
55
|
}
|
|
56
56
|
return options;
|
|
@@ -95,29 +95,6 @@ const PALETTE_COMMANDS: { label: string; hint: string; run: (state: ReturnType<t
|
|
|
95
95
|
{ label: "Pause updates", hint: "Space", run: (s) => { s.paused = !s.paused; } },
|
|
96
96
|
];
|
|
97
97
|
|
|
98
|
-
/** Row count of the list the arrow keys drive on each screen. */
|
|
99
|
-
function rowCount(state: ReturnType<typeof createState>): number {
|
|
100
|
-
const t = state.sample.telemetry;
|
|
101
|
-
switch (state.screen) {
|
|
102
|
-
case "dashboard": return visibleProcesses(state).length;
|
|
103
|
-
case "traffic": return t.ssh.length;
|
|
104
|
-
case "sessions": return t.logins.length;
|
|
105
|
-
case "network": return t.connections.length;
|
|
106
|
-
case "services": return t.services.length;
|
|
107
|
-
case "components": return 5;
|
|
108
|
-
default: return 0;
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
function moveCursor(state: ReturnType<typeof createState>, delta: number): void {
|
|
113
|
-
const c = cursor(state);
|
|
114
|
-
const total = rowCount(state);
|
|
115
|
-
if (total === 0) return;
|
|
116
|
-
c.selected = Math.max(0, Math.min(total - 1, c.selected + delta));
|
|
117
|
-
// The table scrolls itself via followSelection; keep the offset in range.
|
|
118
|
-
c.offset = Math.max(0, Math.min(c.offset, Math.max(0, total - 1)));
|
|
119
|
-
}
|
|
120
|
-
|
|
121
98
|
async function main(): Promise<void> {
|
|
122
99
|
const options = parseArgs(process.argv.slice(2));
|
|
123
100
|
const collector = await createCollector({ real: options.real, seed: options.seed });
|
|
@@ -165,15 +142,8 @@ async function main(): Promise<void> {
|
|
|
165
142
|
|
|
166
143
|
app.on("mouse", (event) => {
|
|
167
144
|
state.lastMouse = `${event.action} ${event.button} @ ${event.x},${event.y}${event.scroll ? ` scroll ${event.scroll}` : ""}`;
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
// the highlighted row never scrolls off and snaps the view back.
|
|
171
|
-
const c = cursor(state);
|
|
172
|
-
const total = rowCount(state);
|
|
173
|
-
c.offset = Math.max(0, Math.min(c.offset + event.scroll * 3, Math.max(0, total - 1)));
|
|
174
|
-
c.selected = Math.max(c.offset, Math.min(c.selected, c.offset + 20));
|
|
175
|
-
app.invalidate();
|
|
176
|
-
}
|
|
145
|
+
// Each scrollable registers its own region, so the wheel is handled by
|
|
146
|
+
// whatever sits under the pointer rather than by one list per screen.
|
|
177
147
|
});
|
|
178
148
|
|
|
179
149
|
app.on("key", (event: KeyEvent) => {
|
|
@@ -232,12 +202,12 @@ async function main(): Promise<void> {
|
|
|
232
202
|
state.paletteIndex = 0;
|
|
233
203
|
return;
|
|
234
204
|
case "space": state.paused = !state.paused; return;
|
|
235
|
-
case "up":
|
|
236
|
-
case "down":
|
|
237
|
-
case "pageup":
|
|
238
|
-
case "pagedown":
|
|
239
|
-
case "home":
|
|
240
|
-
case "end":
|
|
205
|
+
case "up": moveSelection(state, -1); break;
|
|
206
|
+
case "down": moveSelection(state, 1); break;
|
|
207
|
+
case "pageup": moveSelection(state, -10); break;
|
|
208
|
+
case "pagedown": moveSelection(state, 10); break;
|
|
209
|
+
case "home": moveSelection(state, -Number.MAX_SAFE_INTEGER); break;
|
|
210
|
+
case "end": moveSelection(state, Number.MAX_SAFE_INTEGER); break;
|
|
241
211
|
case "enter": state.showModal = true; return;
|
|
242
212
|
case "left":
|
|
243
213
|
if (state.screen === "themes") {
|
|
@@ -334,7 +304,7 @@ async function main(): Promise<void> {
|
|
|
334
304
|
if (state.showModal) {
|
|
335
305
|
ui.modal({
|
|
336
306
|
title: "Confirm Action",
|
|
337
|
-
message: `Are you sure you want to terminate process ${visibleProcesses(state)[
|
|
307
|
+
message: `Are you sure you want to terminate process ${visibleProcesses(state)[focusedPane(state)?.selected ?? 0]?.pid ?? "—"} (${visibleProcesses(state)[focusedPane(state)?.selected ?? 0]?.name ?? "—"})?`,
|
|
338
308
|
buttons: [
|
|
339
309
|
{ label: "Yes", variant: "success", focused: true },
|
|
340
310
|
{ label: "No", variant: "ghost" },
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Container, Theme } from "@profullstack/hqtui";
|
|
2
|
-
import {
|
|
2
|
+
import { focusPane, pane, scrollPane, type DemoState } from "../state.ts";
|
|
3
3
|
import { bytes, percent } from "../format.ts";
|
|
4
4
|
|
|
5
5
|
const FILES = [
|
|
@@ -83,9 +83,15 @@ export function componentsScreen(ui: Container, state: DemoState, theme: Theme):
|
|
|
83
83
|
});
|
|
84
84
|
|
|
85
85
|
left.panel({ title: "Table Widget", size: "1fr" }, (p) => {
|
|
86
|
+
const files = pane(state, "components.files", FILES.length);
|
|
86
87
|
p.table({
|
|
87
88
|
rows: FILES,
|
|
88
|
-
selected:
|
|
89
|
+
selected: files.selected,
|
|
90
|
+
offset: files.offset,
|
|
91
|
+
followSelection: true,
|
|
92
|
+
onScroll: (delta) => scrollPane(files, delta),
|
|
93
|
+
onFocus: () => focusPane(state, "components.files"),
|
|
94
|
+
onSelectRow: (row) => { files.selected = files.offset + row; },
|
|
89
95
|
zebra: true,
|
|
90
96
|
columns: [
|
|
91
97
|
{ key: "name", title: "Name", min: 10, color: theme.primary },
|
|
@@ -97,8 +103,14 @@ export function componentsScreen(ui: Container, state: DemoState, theme: Theme):
|
|
|
97
103
|
});
|
|
98
104
|
|
|
99
105
|
left.panel({ title: "Log Viewer", size: 11 }, (p) => {
|
|
106
|
+
const clogs = pane(state, "components.logs", state.sample.logs.length, "log");
|
|
100
107
|
p.log({
|
|
101
108
|
entries: state.sample.logs.map((l) => ({ time: l.time, level: l.level, message: l.message, meta: `{${l.meta}}` })),
|
|
109
|
+
// Lines scrolled back from the newest; 0 keeps it tailing.
|
|
110
|
+
fromEnd: clogs.offset,
|
|
111
|
+
scrollbar: true,
|
|
112
|
+
onScroll: (delta) => scrollPane(clogs, -delta),
|
|
113
|
+
onFocus: () => focusPane(state, "components.logs"),
|
|
102
114
|
});
|
|
103
115
|
});
|
|
104
116
|
});
|
|
@@ -109,7 +121,15 @@ export function componentsScreen(ui: Container, state: DemoState, theme: Theme):
|
|
|
109
121
|
r.text("Name", { fg: theme.muted, bold: true });
|
|
110
122
|
r.text("CPU% MEM%", { fg: theme.muted, bold: true, align: "right" });
|
|
111
123
|
});
|
|
112
|
-
|
|
124
|
+
const tree = pane(state, "components.tree", 8);
|
|
125
|
+
p.tree({
|
|
126
|
+
nodes: TREE,
|
|
127
|
+
selected: tree.selected,
|
|
128
|
+
offset: tree.offset,
|
|
129
|
+
followSelection: true,
|
|
130
|
+
onScroll: (delta) => scrollPane(tree, delta),
|
|
131
|
+
onFocus: () => focusPane(state, "components.tree"),
|
|
132
|
+
});
|
|
113
133
|
});
|
|
114
134
|
|
|
115
135
|
right.panel({ title: "Sparklines & Gauges", size: 12 }, (p) => {
|
|
@@ -136,6 +156,7 @@ export function componentsScreen(ui: Container, state: DemoState, theme: Theme):
|
|
|
136
156
|
r.spacer("fill");
|
|
137
157
|
});
|
|
138
158
|
p.spacer(1);
|
|
159
|
+
const paths = pane(state, "components.list", 4);
|
|
139
160
|
p.list({
|
|
140
161
|
items: [
|
|
141
162
|
{ label: "apps/demo", color: theme.primary },
|
|
@@ -143,7 +164,12 @@ export function componentsScreen(ui: Container, state: DemoState, theme: Theme):
|
|
|
143
164
|
{ label: "apps/web" },
|
|
144
165
|
{ label: "docs" },
|
|
145
166
|
],
|
|
146
|
-
selected:
|
|
167
|
+
selected: paths.selected,
|
|
168
|
+
offset: paths.offset,
|
|
169
|
+
followSelection: true,
|
|
170
|
+
onScroll: (delta) => scrollPane(paths, delta),
|
|
171
|
+
onFocus: () => focusPane(state, "components.list"),
|
|
172
|
+
onSelectRow: (row) => { paths.selected = paths.offset + row; },
|
|
147
173
|
bullet: "▸",
|
|
148
174
|
scrollbar: true,
|
|
149
175
|
});
|
package/src/screens/dashboard.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Container, Theme } from "@profullstack/hqtui";
|
|
2
2
|
import { heatColor } from "@profullstack/hqtui";
|
|
3
|
-
import {
|
|
3
|
+
import { focusPane, pane, scrollPane, type DemoState } from "../state.ts";
|
|
4
4
|
import { bitRate, byteRate, bytes, clock, duration, num, percent } from "../format.ts";
|
|
5
5
|
|
|
6
6
|
const TIME_LABELS = ["60s", "45s", "30s", "15s", "0s"];
|
|
@@ -152,11 +152,15 @@ function processesPanel(ui: Container, state: DemoState, theme: Theme): void {
|
|
|
152
152
|
subtitle: state.filter ? `filter: ${state.filter}` : undefined,
|
|
153
153
|
focusable: true,
|
|
154
154
|
}, (p) => {
|
|
155
|
+
const procs = pane(state, "dashboard.processes", rows.length);
|
|
155
156
|
p.table({
|
|
156
157
|
rows,
|
|
157
|
-
selected:
|
|
158
|
-
offset:
|
|
158
|
+
selected: procs.selected,
|
|
159
|
+
offset: procs.offset,
|
|
159
160
|
followSelection: true,
|
|
161
|
+
onScroll: (delta) => scrollPane(procs, delta),
|
|
162
|
+
onFocus: () => focusPane(state, "dashboard.processes"),
|
|
163
|
+
onSelectRow: (row) => { procs.selected = procs.offset + row; },
|
|
160
164
|
scrollbar: true,
|
|
161
165
|
columns: [
|
|
162
166
|
{ key: "pid", title: "PID", width: 7, align: "right" },
|
|
@@ -264,7 +268,20 @@ function sensorsPanel(ui: Container, state: DemoState, theme: Theme): void {
|
|
|
264
268
|
|
|
265
269
|
function logsPanel(ui: Container, state: DemoState): void {
|
|
266
270
|
ui.panel({ title: "Logs" }, (p) => {
|
|
267
|
-
|
|
271
|
+
const logs = pane(state, "dashboard.logs", state.sample.logs.length, "log");
|
|
272
|
+
p.log({
|
|
273
|
+
entries: state.sample.logs.map((l) => ({
|
|
274
|
+
time: l.time,
|
|
275
|
+
level: l.level,
|
|
276
|
+
message: l.message,
|
|
277
|
+
meta: `{${l.meta}}`,
|
|
278
|
+
})),
|
|
279
|
+
// Lines scrolled back from the newest; 0 keeps it tailing.
|
|
280
|
+
fromEnd: logs.offset,
|
|
281
|
+
scrollbar: true,
|
|
282
|
+
onScroll: (delta) => scrollPane(logs, -delta),
|
|
283
|
+
onFocus: () => focusPane(state, "dashboard.logs"),
|
|
284
|
+
});
|
|
268
285
|
});
|
|
269
286
|
}
|
|
270
287
|
|
package/src/screens/network.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Container, Theme } from "@profullstack/hqtui";
|
|
2
|
-
import {
|
|
2
|
+
import { focusPane, pane, scrollPane, type DemoState } from "../state.ts";
|
|
3
3
|
import { byteRate, bytes } from "../format.ts";
|
|
4
4
|
|
|
5
5
|
/** Interfaces, live throughput, open connections and listening ports. */
|
|
@@ -53,11 +53,15 @@ export function networkScreen(ui: Container, state: DemoState, theme: Theme): vo
|
|
|
53
53
|
p.label("No connections visible (`ss` unavailable).");
|
|
54
54
|
return;
|
|
55
55
|
}
|
|
56
|
+
const conns = pane(state, "network.connections", t.connections.length);
|
|
56
57
|
p.table({
|
|
57
58
|
rows: t.connections,
|
|
58
|
-
selected:
|
|
59
|
-
offset:
|
|
59
|
+
selected: conns.selected,
|
|
60
|
+
offset: conns.offset,
|
|
60
61
|
followSelection: true,
|
|
62
|
+
onScroll: (delta) => scrollPane(conns, delta),
|
|
63
|
+
onFocus: () => focusPane(state, "network.connections"),
|
|
64
|
+
onSelectRow: (row) => { conns.selected = conns.offset + row; },
|
|
61
65
|
zebra: true,
|
|
62
66
|
scrollbar: true,
|
|
63
67
|
columns: [
|
|
@@ -72,8 +76,15 @@ export function networkScreen(ui: Container, state: DemoState, theme: Theme): vo
|
|
|
72
76
|
|
|
73
77
|
row.column({ width: "0.7fr", gap: 1 }, (column) => {
|
|
74
78
|
column.panel({ title: "Listening Ports", subtitle: String(t.listeners.length), borderColor: theme.warning }, (p) => {
|
|
79
|
+
const listeners = pane(state, "network.listeners", t.listeners.length);
|
|
75
80
|
p.table({
|
|
76
81
|
rows: t.listeners,
|
|
82
|
+
selected: listeners.selected,
|
|
83
|
+
offset: listeners.offset,
|
|
84
|
+
followSelection: true,
|
|
85
|
+
onScroll: (delta) => scrollPane(listeners, delta),
|
|
86
|
+
onFocus: () => focusPane(state, "network.listeners"),
|
|
87
|
+
onSelectRow: (row) => { listeners.selected = listeners.offset + row; },
|
|
77
88
|
zebra: true,
|
|
78
89
|
scrollbar: true,
|
|
79
90
|
columns: [
|