@tacuchi/agent-workflow-cli 7.3.1 → 9.0.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/cli/main.js +0 -0
- package/dist/cli/tui/app.d.ts.map +1 -1
- package/dist/cli/tui/app.js +277 -76
- package/dist/cli/tui/app.js.map +1 -1
- package/dist/cli/tui/components/activity-feed.d.ts +16 -0
- package/dist/cli/tui/components/activity-feed.d.ts.map +1 -0
- package/dist/cli/tui/components/activity-feed.js +35 -0
- package/dist/cli/tui/components/activity-feed.js.map +1 -0
- package/dist/cli/tui/components/command-palette.d.ts +11 -33
- package/dist/cli/tui/components/command-palette.d.ts.map +1 -1
- package/dist/cli/tui/components/command-palette.js +18 -111
- package/dist/cli/tui/components/command-palette.js.map +1 -1
- package/dist/cli/tui/components/confirm-banner.d.ts +10 -0
- package/dist/cli/tui/components/confirm-banner.d.ts.map +1 -0
- package/dist/cli/tui/components/confirm-banner.js +11 -0
- package/dist/cli/tui/components/confirm-banner.js.map +1 -0
- package/dist/cli/tui/components/detail-panel.d.ts +34 -0
- package/dist/cli/tui/components/detail-panel.d.ts.map +1 -0
- package/dist/cli/tui/components/detail-panel.js +83 -0
- package/dist/cli/tui/components/detail-panel.js.map +1 -0
- package/dist/cli/tui/components/family-card.d.ts +14 -0
- package/dist/cli/tui/components/family-card.d.ts.map +1 -0
- package/dist/cli/tui/components/family-card.js +37 -0
- package/dist/cli/tui/components/family-card.js.map +1 -0
- package/dist/cli/tui/components/inline-wizard.d.ts +19 -0
- package/dist/cli/tui/components/inline-wizard.d.ts.map +1 -0
- package/dist/cli/tui/components/inline-wizard.js +16 -0
- package/dist/cli/tui/components/inline-wizard.js.map +1 -0
- package/dist/cli/tui/components/input-prompt.js +1 -1
- package/dist/cli/tui/components/input-prompt.js.map +1 -1
- package/dist/cli/tui/components/list-row.d.ts +30 -0
- package/dist/cli/tui/components/list-row.d.ts.map +1 -0
- package/dist/cli/tui/components/list-row.js +85 -0
- package/dist/cli/tui/components/list-row.js.map +1 -0
- package/dist/cli/tui/components/page-head.d.ts +11 -10
- package/dist/cli/tui/components/page-head.d.ts.map +1 -1
- package/dist/cli/tui/components/page-head.js +21 -10
- package/dist/cli/tui/components/page-head.js.map +1 -1
- package/dist/cli/tui/components/phase-card.d.ts +15 -0
- package/dist/cli/tui/components/phase-card.d.ts.map +1 -0
- package/dist/cli/tui/components/phase-card.js +13 -0
- package/dist/cli/tui/components/phase-card.js.map +1 -0
- package/dist/cli/tui/components/quick-actions.d.ts +9 -0
- package/dist/cli/tui/components/quick-actions.d.ts.map +1 -0
- package/dist/cli/tui/components/quick-actions.js +9 -0
- package/dist/cli/tui/components/quick-actions.js.map +1 -0
- package/dist/cli/tui/components/section-head.d.ts +10 -0
- package/dist/cli/tui/components/section-head.d.ts.map +1 -0
- package/dist/cli/tui/components/section-head.js +8 -0
- package/dist/cli/tui/components/section-head.js.map +1 -0
- package/dist/cli/tui/components/sidebar.d.ts +27 -0
- package/dist/cli/tui/components/sidebar.d.ts.map +1 -0
- package/dist/cli/tui/components/sidebar.js +37 -0
- package/dist/cli/tui/components/sidebar.js.map +1 -0
- package/dist/cli/tui/components/stat-tile.d.ts +16 -0
- package/dist/cli/tui/components/stat-tile.d.ts.map +1 -0
- package/dist/cli/tui/components/stat-tile.js +23 -0
- package/dist/cli/tui/components/stat-tile.js.map +1 -0
- package/dist/cli/tui/components/toast-stack.d.ts +3 -3
- package/dist/cli/tui/components/toast-stack.js +3 -3
- package/dist/cli/tui/data/activity.d.ts +21 -0
- package/dist/cli/tui/data/activity.d.ts.map +1 -0
- package/dist/cli/tui/data/activity.js +83 -0
- package/dist/cli/tui/data/activity.js.map +1 -0
- package/dist/cli/tui/data/workflow-content.d.ts +16 -0
- package/dist/cli/tui/data/workflow-content.d.ts.map +1 -0
- package/dist/cli/tui/data/workflow-content.js +202 -0
- package/dist/cli/tui/data/workflow-content.js.map +1 -0
- package/dist/cli/tui/tabs/mcp-tab.d.ts +3 -16
- package/dist/cli/tui/tabs/mcp-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/mcp-tab.js +150 -195
- package/dist/cli/tui/tabs/mcp-tab.js.map +1 -1
- package/dist/cli/tui/tabs/project-tab.d.ts +0 -11
- package/dist/cli/tui/tabs/project-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/project-tab.js +47 -86
- package/dist/cli/tui/tabs/project-tab.js.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.d.ts +1 -11
- package/dist/cli/tui/tabs/skills-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/skills-tab.js +165 -126
- package/dist/cli/tui/tabs/skills-tab.js.map +1 -1
- package/dist/cli/tui/tabs/status-tab.d.ts +14 -14
- package/dist/cli/tui/tabs/status-tab.d.ts.map +1 -1
- package/dist/cli/tui/tabs/status-tab.js +179 -36
- package/dist/cli/tui/tabs/status-tab.js.map +1 -1
- package/dist/cli/tui/tabs/workflow-tab.d.ts +9 -0
- package/dist/cli/tui/tabs/workflow-tab.d.ts.map +1 -0
- package/dist/cli/tui/tabs/workflow-tab.js +40 -0
- package/dist/cli/tui/tabs/workflow-tab.js.map +1 -0
- package/dist/cli/tui/theme.d.ts +75 -55
- package/dist/cli/tui/theme.d.ts.map +1 -1
- package/dist/cli/tui/theme.js +75 -50
- package/dist/cli/tui/theme.js.map +1 -1
- package/package.json +1 -1
- package/dist/cli/commands/orchestration.d.ts +0 -5
- package/dist/cli/commands/orchestration.d.ts.map +0 -1
- package/dist/cli/commands/orchestration.js +0 -84
- package/dist/cli/commands/orchestration.js.map +0 -1
- package/dist/cli/commands/wave2-extras.d.ts +0 -7
- package/dist/cli/commands/wave2-extras.d.ts.map +0 -1
- package/dist/cli/commands/wave2-extras.js +0 -87
- package/dist/cli/commands/wave2-extras.js.map +0 -1
- package/dist/cli/commands/wave2-final.d.ts +0 -8
- package/dist/cli/commands/wave2-final.d.ts.map +0 -1
- package/dist/cli/commands/wave2-final.js +0 -134
- package/dist/cli/commands/wave2-final.js.map +0 -1
- package/dist/cli/commands/wave4d-simple.d.ts +0 -6
- package/dist/cli/commands/wave4d-simple.d.ts.map +0 -1
- package/dist/cli/commands/wave4d-simple.js +0 -138
- package/dist/cli/commands/wave4d-simple.js.map +0 -1
- package/dist/cli/tui/components/confirm-modal.d.ts +0 -12
- package/dist/cli/tui/components/confirm-modal.d.ts.map +0 -1
- package/dist/cli/tui/components/confirm-modal.js +0 -18
- package/dist/cli/tui/components/confirm-modal.js.map +0 -1
- package/dist/cli/tui/components/connections-grid.d.ts +0 -8
- package/dist/cli/tui/components/connections-grid.d.ts.map +0 -1
- package/dist/cli/tui/components/connections-grid.js +0 -55
- package/dist/cli/tui/components/connections-grid.js.map +0 -1
- package/dist/cli/tui/components/connections-table.d.ts +0 -5
- package/dist/cli/tui/components/connections-table.d.ts.map +0 -1
- package/dist/cli/tui/components/connections-table.js +0 -11
- package/dist/cli/tui/components/connections-table.js.map +0 -1
- package/dist/cli/tui/components/footer.d.ts +0 -4
- package/dist/cli/tui/components/footer.d.ts.map +0 -1
- package/dist/cli/tui/components/footer.js +0 -6
- package/dist/cli/tui/components/footer.js.map +0 -1
- package/dist/cli/tui/components/header.d.ts +0 -14
- package/dist/cli/tui/components/header.d.ts.map +0 -1
- package/dist/cli/tui/components/header.js +0 -21
- package/dist/cli/tui/components/header.js.map +0 -1
- package/dist/cli/tui/components/host-chip.d.ts +0 -28
- package/dist/cli/tui/components/host-chip.d.ts.map +0 -1
- package/dist/cli/tui/components/host-chip.js +0 -35
- package/dist/cli/tui/components/host-chip.js.map +0 -1
- package/dist/cli/tui/components/keymap-bar.d.ts +0 -17
- package/dist/cli/tui/components/keymap-bar.d.ts.map +0 -1
- package/dist/cli/tui/components/keymap-bar.js +0 -13
- package/dist/cli/tui/components/keymap-bar.js.map +0 -1
- package/dist/cli/tui/components/pill.d.ts +0 -16
- package/dist/cli/tui/components/pill.d.ts.map +0 -1
- package/dist/cli/tui/components/pill.js +0 -24
- package/dist/cli/tui/components/pill.js.map +0 -1
- package/dist/cli/tui/components/sectioned-menu.d.ts +0 -24
- package/dist/cli/tui/components/sectioned-menu.d.ts.map +0 -1
- package/dist/cli/tui/components/sectioned-menu.js +0 -72
- package/dist/cli/tui/components/sectioned-menu.js.map +0 -1
- package/dist/cli/tui/components/tab-bar.d.ts +0 -23
- package/dist/cli/tui/components/tab-bar.d.ts.map +0 -1
- package/dist/cli/tui/components/tab-bar.js +0 -17
- package/dist/cli/tui/components/tab-bar.js.map +0 -1
- package/dist/cli/tui/screens/main-menu.d.ts +0 -8
- package/dist/cli/tui/screens/main-menu.d.ts.map +0 -1
- package/dist/cli/tui/screens/main-menu.js +0 -24
- package/dist/cli/tui/screens/main-menu.js.map +0 -1
- package/dist/cli/tui/screens/mcp-done.d.ts +0 -10
- package/dist/cli/tui/screens/mcp-done.d.ts.map +0 -1
- package/dist/cli/tui/screens/mcp-done.js +0 -24
- package/dist/cli/tui/screens/mcp-done.js.map +0 -1
- package/dist/cli/tui/screens/mcp-wizard.d.ts +0 -10
- package/dist/cli/tui/screens/mcp-wizard.d.ts.map +0 -1
- package/dist/cli/tui/screens/mcp-wizard.js +0 -97
- package/dist/cli/tui/screens/mcp-wizard.js.map +0 -1
- package/dist/cli/tui/tabs/plugins-tab.d.ts +0 -8
- package/dist/cli/tui/tabs/plugins-tab.d.ts.map +0 -1
- package/dist/cli/tui/tabs/plugins-tab.js +0 -635
- package/dist/cli/tui/tabs/plugins-tab.js.map +0 -1
- package/dist/cli/tui/tabs/update-tab.d.ts +0 -20
- package/dist/cli/tui/tabs/update-tab.d.ts.map +0 -1
- package/dist/cli/tui/tabs/update-tab.js +0 -83
- package/dist/cli/tui/tabs/update-tab.js.map +0 -1
package/dist/cli/main.js
CHANGED
|
File without changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/app.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../../src/cli/tui/app.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAoB9C,MAAM,MAAM,SAAS,GACjB;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,UAAU,CAAA;CAAE,GAC3C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,QAAQ,CAAA;CAAE,CAAC;AAczC,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,UAAU,CAAC;IAChB,QAAQ,EAAE,CAAC,MAAM,EAAE,SAAS,KAAK,IAAI,CAAC;CACvC;AAED,wBAAgB,GAAG,CAAC,KAAK,EAAE,QAAQ,2CAMlC"}
|
package/dist/cli/tui/app.js
CHANGED
|
@@ -1,66 +1,25 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Box, useApp, useInput } from "ink";
|
|
3
3
|
import { useCallback, useEffect, useMemo, useState } from "react";
|
|
4
|
-
import {
|
|
5
|
-
import { KeymapBar } from "./components/keymap-bar.js";
|
|
4
|
+
import { CommandPalette } from "./components/command-palette.js";
|
|
6
5
|
import { ScreenFrame } from "./components/screen-frame.js";
|
|
7
|
-
import {
|
|
6
|
+
import { Sidebar, } from "./components/sidebar.js";
|
|
8
7
|
import { ToastStack, useToasts } from "./components/toast-stack.js";
|
|
8
|
+
import { loadActivity } from "./data/activity.js";
|
|
9
9
|
import { InputLockProvider, useInputLock } from "./input-lock.js";
|
|
10
10
|
import { McpTab } from "./tabs/mcp-tab.js";
|
|
11
|
-
import { PluginsTab } from "./tabs/plugins-tab.js";
|
|
12
11
|
import { ProjectTab } from "./tabs/project-tab.js";
|
|
13
12
|
import { SkillsTab } from "./tabs/skills-tab.js";
|
|
14
13
|
import { StatusTab } from "./tabs/status-tab.js";
|
|
15
|
-
import {
|
|
14
|
+
import { WorkflowTab } from "./tabs/workflow-tab.js";
|
|
16
15
|
import { TuiPrefsService } from "./tui-prefs.js";
|
|
17
|
-
const TAB_ORDER = [
|
|
18
|
-
"status",
|
|
19
|
-
"project",
|
|
20
|
-
"mcp",
|
|
21
|
-
"skills",
|
|
22
|
-
"plugins",
|
|
23
|
-
"update",
|
|
24
|
-
];
|
|
25
|
-
// Atajo numérico → tab id.
|
|
16
|
+
const TAB_ORDER = ["status", "workflow", "project", "mcp", "skills"];
|
|
26
17
|
const TAB_BY_KEY = {
|
|
27
18
|
"1": "status",
|
|
28
|
-
"2": "
|
|
29
|
-
"3": "
|
|
30
|
-
"4": "
|
|
31
|
-
"5": "
|
|
32
|
-
"6": "update",
|
|
33
|
-
};
|
|
34
|
-
const QUIT_HINT = { key: "q", action: "salir" };
|
|
35
|
-
const TAB_HINT = { key: "Tab", action: "siguiente" };
|
|
36
|
-
const KEYS_BY_TAB = {
|
|
37
|
-
status: [TAB_HINT, QUIT_HINT],
|
|
38
|
-
project: [
|
|
39
|
-
{ key: "↑↓", action: "navegar" },
|
|
40
|
-
{ key: "⏎", action: "aplicar", accent: true },
|
|
41
|
-
QUIT_HINT,
|
|
42
|
-
],
|
|
43
|
-
mcp: [
|
|
44
|
-
{ key: "↑↓", action: "navegar" },
|
|
45
|
-
{ key: "⏎", action: "acciones", accent: true },
|
|
46
|
-
QUIT_HINT,
|
|
47
|
-
],
|
|
48
|
-
skills: [
|
|
49
|
-
{ key: "↑↓", action: "navegar" },
|
|
50
|
-
{ key: "⏎", action: "acciones", accent: true },
|
|
51
|
-
QUIT_HINT,
|
|
52
|
-
],
|
|
53
|
-
plugins: [
|
|
54
|
-
{ key: "↑↓", action: "navegar" },
|
|
55
|
-
{ key: "/", action: "buscar" },
|
|
56
|
-
{ key: "f", action: "filtros" },
|
|
57
|
-
QUIT_HINT,
|
|
58
|
-
],
|
|
59
|
-
update: [
|
|
60
|
-
{ key: "i", action: "aplicar", accent: true },
|
|
61
|
-
{ key: "r", action: "buscar" },
|
|
62
|
-
QUIT_HINT,
|
|
63
|
-
],
|
|
19
|
+
"2": "workflow",
|
|
20
|
+
"3": "project",
|
|
21
|
+
"4": "mcp",
|
|
22
|
+
"5": "skills",
|
|
64
23
|
};
|
|
65
24
|
export function App(props) {
|
|
66
25
|
return (_jsx(InputLockProvider, { children: _jsx(AppShell, { ...props }) }));
|
|
@@ -68,6 +27,17 @@ export function App(props) {
|
|
|
68
27
|
function AppShell({ version, ctx, onResult }) {
|
|
69
28
|
const [activeTab, setActiveTab] = useState("status");
|
|
70
29
|
const [density, setDensity] = useState("comfortable");
|
|
30
|
+
const [paletteOpen, setPaletteOpen] = useState(false);
|
|
31
|
+
const [paletteFilter, setPaletteFilter] = useState("");
|
|
32
|
+
const [paletteCursor, setPaletteCursor] = useState(0);
|
|
33
|
+
const [statusAlert, setStatusAlert] = useState(false);
|
|
34
|
+
const [workspaceCtx, setWorkspaceCtx] = useState({
|
|
35
|
+
modeLabel: "agent-workflow",
|
|
36
|
+
branchLabel: "— · loading",
|
|
37
|
+
sessionsLabel: "— sessions",
|
|
38
|
+
});
|
|
39
|
+
const [activity, setActivity] = useState([]);
|
|
40
|
+
const [activePhase, setActivePhase] = useState(0);
|
|
71
41
|
const { exit } = useApp();
|
|
72
42
|
const { locked: inputLocked } = useInputLock();
|
|
73
43
|
const { toasts, push: pushToast } = useToasts();
|
|
@@ -78,12 +48,23 @@ function AppShell({ version, ctx, onResult }) {
|
|
|
78
48
|
setDensity(prefs.density);
|
|
79
49
|
})();
|
|
80
50
|
}, [prefsSvc]);
|
|
51
|
+
useEffect(() => {
|
|
52
|
+
void (async () => {
|
|
53
|
+
const wctx = await loadWorkspaceContext(ctx);
|
|
54
|
+
setWorkspaceCtx(wctx);
|
|
55
|
+
const events = await loadActivity(ctx, { cap: 10 });
|
|
56
|
+
setActivity(events);
|
|
57
|
+
const phase = await loadActivePhase(ctx);
|
|
58
|
+
setActivePhase(phase);
|
|
59
|
+
})();
|
|
60
|
+
}, [ctx]);
|
|
81
61
|
/**
|
|
82
|
-
* Despacha acciones provenientes de las tabs
|
|
83
|
-
* Las acciones que requieren ejecutar un comando CLI con stdin (init,
|
|
84
|
-
* salen del TUI primero y se manejan en `dispatchMenuAction` del main.
|
|
62
|
+
* Despacha acciones provenientes de las tabs y la palette.
|
|
63
|
+
* Las acciones que requieren ejecutar un comando CLI con stdin (init, doctor,
|
|
64
|
+
* update) salen del TUI primero y se manejan en `dispatchMenuAction` del main.
|
|
85
65
|
*/
|
|
86
66
|
const runAction = useCallback((id, _payload) => {
|
|
67
|
+
// Exits-to-CLI vía MenuAction.
|
|
87
68
|
if (id === "project-init") {
|
|
88
69
|
onResult({ kind: "menu-action", action: "project-init" });
|
|
89
70
|
exit();
|
|
@@ -94,56 +75,276 @@ function AppShell({ version, ctx, onResult }) {
|
|
|
94
75
|
exit();
|
|
95
76
|
return;
|
|
96
77
|
}
|
|
78
|
+
if (id === "install-skill") {
|
|
79
|
+
onResult({ kind: "menu-action", action: "install-skill" });
|
|
80
|
+
exit();
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (id === "self:doctor") {
|
|
84
|
+
onResult({ kind: "menu-action", action: "doctor" });
|
|
85
|
+
exit();
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
if (id === "self:update") {
|
|
89
|
+
onResult({ kind: "menu-action", action: "update" });
|
|
90
|
+
exit();
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
if (id === "self:help") {
|
|
94
|
+
onResult({ kind: "menu-action", action: "help" });
|
|
95
|
+
exit();
|
|
96
|
+
return;
|
|
97
|
+
}
|
|
98
|
+
if (id === "self:mcp-cli") {
|
|
99
|
+
onResult({ kind: "menu-action", action: "mcp" });
|
|
100
|
+
exit();
|
|
101
|
+
return;
|
|
102
|
+
}
|
|
97
103
|
if (id === "quit") {
|
|
98
104
|
onResult({ kind: "exit", exitCode: 0 });
|
|
99
105
|
exit();
|
|
100
106
|
return;
|
|
101
107
|
}
|
|
108
|
+
// Hints in-app (navegación + toasts).
|
|
109
|
+
if (id === "mcp:add") {
|
|
110
|
+
setActiveTab("mcp");
|
|
111
|
+
pushToast({
|
|
112
|
+
tone: "info",
|
|
113
|
+
title: "MCP · new connection",
|
|
114
|
+
body: "Press `a` to open the wizard.",
|
|
115
|
+
});
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
102
118
|
if (id === "git:status") {
|
|
103
119
|
pushToast({
|
|
104
120
|
tone: "info",
|
|
105
121
|
title: "git status",
|
|
106
|
-
body: "
|
|
122
|
+
body: "Open your terminal to see details.",
|
|
107
123
|
});
|
|
108
124
|
return;
|
|
109
125
|
}
|
|
110
126
|
pushToast({ tone: "info", title: id });
|
|
111
127
|
}, [pushToast, onResult, exit]);
|
|
128
|
+
const allCommands = useMemo(() => [
|
|
129
|
+
{ id: "goto:status", category: "tabs", label: "Go to Status", hint: "1" },
|
|
130
|
+
{ id: "goto:workflow", category: "tabs", label: "Go to Workflow", hint: "2" },
|
|
131
|
+
{ id: "goto:project", category: "tabs", label: "Go to Project", hint: "3" },
|
|
132
|
+
{ id: "goto:mcp", category: "tabs", label: "Go to MCP", hint: "4" },
|
|
133
|
+
{ id: "goto:skills", category: "tabs", label: "Go to Skills", hint: "5" },
|
|
134
|
+
{
|
|
135
|
+
id: "install-skill",
|
|
136
|
+
category: "install",
|
|
137
|
+
label: "Install SKILL (chain claude + codex + warp)",
|
|
138
|
+
hint: "self install",
|
|
139
|
+
},
|
|
140
|
+
{
|
|
141
|
+
id: "mcp:add",
|
|
142
|
+
category: "mcp",
|
|
143
|
+
label: "Register new MCP connection",
|
|
144
|
+
hint: "a in MCP tab",
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
id: "self:mcp-cli",
|
|
148
|
+
category: "mcp",
|
|
149
|
+
label: "Open MCP wizard (CLI)",
|
|
150
|
+
hint: "self mcp",
|
|
151
|
+
},
|
|
152
|
+
{ id: "project-init", category: "project", label: "Initialize as single-repo" },
|
|
153
|
+
{ id: "hub-init", category: "project", label: "Initialize as hub (multi-repo)" },
|
|
154
|
+
{
|
|
155
|
+
id: "self:doctor",
|
|
156
|
+
category: "self",
|
|
157
|
+
label: "Diagnose runtime (doctor)",
|
|
158
|
+
hint: "self doctor",
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
id: "self:update",
|
|
162
|
+
category: "self",
|
|
163
|
+
label: "Check for update",
|
|
164
|
+
hint: "self update",
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
id: "self:help",
|
|
168
|
+
category: "self",
|
|
169
|
+
label: "View full CLI help",
|
|
170
|
+
hint: "--help",
|
|
171
|
+
},
|
|
172
|
+
{ id: "quit", category: "self", label: "Quit", hint: "q" },
|
|
173
|
+
], []);
|
|
174
|
+
const filteredCommands = useMemo(() => {
|
|
175
|
+
const q = paletteFilter.trim().toLowerCase();
|
|
176
|
+
if (!q)
|
|
177
|
+
return allCommands;
|
|
178
|
+
return allCommands.filter((c) => c.label.toLowerCase().includes(q) ||
|
|
179
|
+
c.id.toLowerCase().includes(q) ||
|
|
180
|
+
c.category.toLowerCase().includes(q));
|
|
181
|
+
}, [allCommands, paletteFilter]);
|
|
182
|
+
const openPalette = useCallback(() => {
|
|
183
|
+
setPaletteFilter("");
|
|
184
|
+
setPaletteCursor(0);
|
|
185
|
+
setPaletteOpen(true);
|
|
186
|
+
}, []);
|
|
187
|
+
const closePalette = useCallback(() => {
|
|
188
|
+
setPaletteOpen(false);
|
|
189
|
+
}, []);
|
|
190
|
+
const executeCommand = useCallback((cmd) => {
|
|
191
|
+
closePalette();
|
|
192
|
+
if (cmd.id.startsWith("goto:")) {
|
|
193
|
+
const target = cmd.id.slice("goto:".length);
|
|
194
|
+
if (TAB_ORDER.includes(target))
|
|
195
|
+
setActiveTab(target);
|
|
196
|
+
return;
|
|
197
|
+
}
|
|
198
|
+
runAction(cmd.id);
|
|
199
|
+
}, [closePalette, runAction]);
|
|
112
200
|
useInput((input, key) => {
|
|
113
201
|
if (inputLocked)
|
|
114
202
|
return;
|
|
203
|
+
if (paletteOpen) {
|
|
204
|
+
if (key.escape) {
|
|
205
|
+
closePalette();
|
|
206
|
+
return;
|
|
207
|
+
}
|
|
208
|
+
if (key.return) {
|
|
209
|
+
const cmd = filteredCommands[paletteCursor];
|
|
210
|
+
if (cmd)
|
|
211
|
+
executeCommand(cmd);
|
|
212
|
+
return;
|
|
213
|
+
}
|
|
214
|
+
if (key.upArrow) {
|
|
215
|
+
setPaletteCursor((c) => Math.max(0, c - 1));
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
if (key.downArrow) {
|
|
219
|
+
setPaletteCursor((c) => Math.min(Math.max(0, filteredCommands.length - 1), c + 1));
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
if (key.backspace || key.delete) {
|
|
223
|
+
setPaletteFilter((s) => s.slice(0, -1));
|
|
224
|
+
setPaletteCursor(0);
|
|
225
|
+
return;
|
|
226
|
+
}
|
|
227
|
+
if (input && !key.ctrl && !key.meta) {
|
|
228
|
+
setPaletteFilter((s) => s + input);
|
|
229
|
+
setPaletteCursor(0);
|
|
230
|
+
}
|
|
231
|
+
return;
|
|
232
|
+
}
|
|
233
|
+
if ((key.ctrl || key.meta) && (input === "k" || input === "K")) {
|
|
234
|
+
openPalette();
|
|
235
|
+
return;
|
|
236
|
+
}
|
|
115
237
|
if (input === "q" || input === "Q") {
|
|
116
238
|
onResult({ kind: "exit", exitCode: 0 });
|
|
117
239
|
exit();
|
|
118
240
|
return;
|
|
119
241
|
}
|
|
120
|
-
if (key.tab) {
|
|
121
|
-
setActiveTab((t) => cycleTab(t, key.shift === true));
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
242
|
const target = TAB_BY_KEY[input];
|
|
125
243
|
if (target)
|
|
126
244
|
setActiveTab(target);
|
|
127
245
|
}, { isActive: true });
|
|
128
246
|
const tabs = [
|
|
129
|
-
{ id: "status",
|
|
130
|
-
{ id: "
|
|
131
|
-
{ id: "
|
|
132
|
-
{ id: "
|
|
133
|
-
{ id: "
|
|
134
|
-
|
|
247
|
+
{ id: "status", key: "1", label: "Status", alert: statusAlert },
|
|
248
|
+
{ id: "workflow", key: "2", label: "Workflow" },
|
|
249
|
+
{ id: "project", key: "3", label: "Project" },
|
|
250
|
+
{ id: "mcp", key: "4", label: "MCP" },
|
|
251
|
+
{ id: "skills", key: "5", label: "Skills" },
|
|
252
|
+
];
|
|
253
|
+
const globalKeys = [
|
|
254
|
+
{ key: "^K", action: "palette" },
|
|
255
|
+
{ key: "⏎", action: "open" },
|
|
256
|
+
{ key: "↑↓", action: "navigate" },
|
|
257
|
+
{ key: "?", action: "help" },
|
|
258
|
+
{ key: "q", action: "quit" },
|
|
135
259
|
];
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
} })) : null, activeTab === "plugins" ? _jsx(PluginsTab, { ctx: ctx, isActive: true }) : null] }), _jsx(ToastStack, { toasts: toasts }), _jsx(KeymapBar, { entries: keymap })] }));
|
|
260
|
+
return (_jsxs(ScreenFrame, { children: [_jsxs(Box, { flexDirection: "row", children: [_jsx(Sidebar, { activeTab: activeTab, tabs: tabs, workspaceContext: workspaceCtx, cliVersion: version, globalKeys: globalKeys }), _jsx(Box, { flexDirection: "column", flexGrow: 1, marginTop: density === "compact" ? 0 : 1, paddingX: 1, children: paletteOpen ? (_jsx(Box, { flexDirection: "column", alignItems: "center", paddingY: 2, children: _jsx(Box, { width: "80%", flexDirection: "column", children: _jsx(CommandPalette, { filter: paletteFilter, commands: filteredCommands, cursor: paletteCursor }) }) })) : (_jsxs(_Fragment, { children: [activeTab === "status" ? (_jsx(StatusTab, { ctx: ctx, version: version, isActive: true, onActivateTab: (t) => setActiveTab(t), onRequestUpdate: () => {
|
|
261
|
+
onResult({ kind: "menu-action", action: "update" });
|
|
262
|
+
exit();
|
|
263
|
+
}, onToast: pushToast, onAlertChange: setStatusAlert, recentEvents: activity })) : null, activeTab === "workflow" ? (_jsx(WorkflowTab, { ctx: ctx, isActive: true, activePhase: activePhase })) : null, activeTab === "project" ? (_jsx(ProjectTab, { ctx: ctx, isActive: true, onRunAction: runAction })) : null, activeTab === "mcp" ? (_jsx(McpTab, { ctx: ctx, isActive: true, onToast: pushToast })) : null, activeTab === "skills" ? (_jsx(SkillsTab, { ctx: ctx, isActive: true, version: version, onToast: pushToast })) : null] })) })] }), _jsx(ToastStack, { toasts: toasts })] }));
|
|
141
264
|
}
|
|
142
|
-
function
|
|
143
|
-
const
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
265
|
+
async function loadWorkspaceContext(ctx) {
|
|
266
|
+
const cwd = ctx.env.cwd();
|
|
267
|
+
// Mode + name: best-effort detection. Default agent-workflow.
|
|
268
|
+
let modeLabel = "agent-workflow · single-repo";
|
|
269
|
+
try {
|
|
270
|
+
const aw = await ctx.fs.exists(`${cwd}/AW-PROJECT.md`).catch(() => false);
|
|
271
|
+
if (aw)
|
|
272
|
+
modeLabel = "agent-workflow · linked";
|
|
273
|
+
}
|
|
274
|
+
catch {
|
|
275
|
+
// ignore
|
|
276
|
+
}
|
|
277
|
+
// Branch + sync
|
|
278
|
+
let branchLabel = "— · no git";
|
|
279
|
+
try {
|
|
280
|
+
const branchRes = await ctx.process.run("git", ["rev-parse", "--abbrev-ref", "HEAD"], {
|
|
281
|
+
cwd,
|
|
282
|
+
});
|
|
283
|
+
if (branchRes.code === 0) {
|
|
284
|
+
const branch = branchRes.stdout.trim();
|
|
285
|
+
const dirtyRes = await ctx.process
|
|
286
|
+
.run("git", ["status", "--porcelain"], { cwd })
|
|
287
|
+
.catch(() => null);
|
|
288
|
+
const isDirty = (dirtyRes?.stdout.trim() ?? "").length > 0;
|
|
289
|
+
const aheadRes = await ctx.process
|
|
290
|
+
.run("git", ["rev-list", "--count", "--left-right", "@{u}...HEAD"], { cwd })
|
|
291
|
+
.catch(() => null);
|
|
292
|
+
const aheadBehind = aheadRes?.stdout.trim().split(/\s+/);
|
|
293
|
+
const behind = aheadBehind?.[0] ?? "0";
|
|
294
|
+
const ahead = aheadBehind?.[1] ?? "0";
|
|
295
|
+
const sync = ahead !== "0" || behind !== "0" ? `${ahead}↑ ${behind}↓` : isDirty ? "dirty" : "in sync";
|
|
296
|
+
branchLabel = `${branch} · ${sync}`;
|
|
297
|
+
}
|
|
298
|
+
}
|
|
299
|
+
catch {
|
|
300
|
+
// keep default
|
|
301
|
+
}
|
|
302
|
+
// Sessions count
|
|
303
|
+
let sessionsLabel = "— sessions";
|
|
304
|
+
try {
|
|
305
|
+
const sessRes = await ctx.process.run(ctx.runtime.binName, ["sessions"], { cwd });
|
|
306
|
+
if (sessRes.code === 0) {
|
|
307
|
+
const data = JSON.parse(sessRes.stdout);
|
|
308
|
+
const active = data.active_count ?? 0;
|
|
309
|
+
const total = data.total_count ?? 0;
|
|
310
|
+
sessionsLabel = `${total} sessions · ${active} active`;
|
|
311
|
+
}
|
|
312
|
+
}
|
|
313
|
+
catch {
|
|
314
|
+
// keep default
|
|
315
|
+
}
|
|
316
|
+
return { modeLabel, branchLabel, sessionsLabel };
|
|
317
|
+
}
|
|
318
|
+
/**
|
|
319
|
+
* Mapea fase de sesión activa (planning/execution/validation/closure) al
|
|
320
|
+
* phase number del workflow tab (Discover=1, Start=2, Plan=3, Work=4, Close=5).
|
|
321
|
+
* Si no hay sesión activa, retorna 0 (idle).
|
|
322
|
+
*/
|
|
323
|
+
async function loadActivePhase(ctx) {
|
|
324
|
+
try {
|
|
325
|
+
const sessRes = await ctx.process.run(ctx.runtime.binName, ["sessions"], {
|
|
326
|
+
cwd: ctx.env.cwd(),
|
|
327
|
+
});
|
|
328
|
+
if (sessRes.code !== 0)
|
|
329
|
+
return 0;
|
|
330
|
+
const data = JSON.parse(sessRes.stdout);
|
|
331
|
+
const active = (data.sessions ?? []).find((s) => s.state === "active");
|
|
332
|
+
if (!active)
|
|
333
|
+
return 0;
|
|
334
|
+
switch (active.phase) {
|
|
335
|
+
case "planning":
|
|
336
|
+
return 3;
|
|
337
|
+
case "execution":
|
|
338
|
+
case "validation":
|
|
339
|
+
return 4;
|
|
340
|
+
case "closure":
|
|
341
|
+
return 5;
|
|
342
|
+
default:
|
|
343
|
+
return 4;
|
|
344
|
+
}
|
|
345
|
+
}
|
|
346
|
+
catch {
|
|
347
|
+
return 0;
|
|
348
|
+
}
|
|
148
349
|
}
|
|
149
350
|
//# sourceMappingURL=app.js.map
|
package/dist/cli/tui/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/cli/tui/app.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/cli/tui/app.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAKlE,OAAO,EAAE,cAAc,EAAuB,MAAM,iCAAiC,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EACL,OAAO,GAIR,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAClE,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAgB,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAQ/D,MAAM,SAAS,GAAqB,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,CAAU,CAAC;AAEhG,MAAM,UAAU,GAA0B;IACxC,GAAG,EAAE,QAAQ;IACb,GAAG,EAAE,UAAU;IACf,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,KAAK;IACV,GAAG,EAAE,QAAQ;CACd,CAAC;AAQF,MAAM,UAAU,GAAG,CAAC,KAAe;IACjC,OAAO,CACL,KAAC,iBAAiB,cAChB,KAAC,QAAQ,OAAK,KAAK,GAAI,GACL,CACrB,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAY;IACpD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAQ,QAAQ,CAAC,CAAC;IAC5D,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAU,aAAa,CAAC,CAAC;IAC/D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACvD,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAmB;QACjE,SAAS,EAAE,gBAAgB;QAC3B,WAAW,EAAE,aAAa;QAC1B,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IACH,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAkB,EAAE,CAAC,CAAC;IAC9D,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAS,CAAC,CAAC,CAAC;IAC1D,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1B,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,YAAY,EAAE,CAAC;IAC/C,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,SAAS,EAAE,CAAC;IAEhD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;IAE5F,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpC,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAC5B,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,SAAS,CAAC,GAAG,EAAE;QACb,KAAK,CAAC,KAAK,IAAI,EAAE;YACf,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7C,eAAe,CAAC,IAAI,CAAC,CAAC;YACtB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAAC;YACpD,WAAW,CAAC,MAAM,CAAC,CAAC;YACpB,MAAM,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,CAAC,CAAC;YACzC,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC,CAAC,EAAE,CAAC;IACP,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV;;;;OAIG;IACH,MAAM,SAAS,GAAG,WAAW,CAC3B,CAAC,EAAU,EAAE,QAAkC,EAAE,EAAE;QACjD,+BAA+B;QAC/B,IAAI,EAAE,KAAK,cAAc,EAAE,CAAC;YAC1B,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;YAC1D,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC;YACtB,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,CAAC,CAAC;YACtD,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,eAAe,EAAE,CAAC;YAC3B,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YAC3D,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,aAAa,EAAE,CAAC;YACzB,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,aAAa,EAAE,CAAC;YACzB,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;YACpD,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,WAAW,EAAE,CAAC;YACvB,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAClD,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,cAAc,EAAE,CAAC;YAC1B,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;YACjD,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,MAAM,EAAE,CAAC;YAClB,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,sCAAsC;QACtC,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,SAAS,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,sBAAsB;gBAC7B,IAAI,EAAE,+BAA+B;aACtC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,IAAI,EAAE,KAAK,YAAY,EAAE,CAAC;YACxB,SAAS,CAAC;gBACR,IAAI,EAAE,MAAM;gBACZ,KAAK,EAAE,YAAY;gBACnB,IAAI,EAAE,oCAAoC;aAC3C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QACD,SAAS,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACzC,CAAC,EACD,CAAC,SAAS,EAAE,QAAQ,EAAE,IAAI,CAAC,CAC5B,CAAC;IAEF,MAAM,WAAW,GAAqB,OAAO,CAC3C,GAAG,EAAE,CAAC;QACJ,EAAE,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE;QACzE,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE;QAC7E,EAAE,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,eAAe,EAAE,IAAI,EAAE,GAAG,EAAE;QAC3E,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,EAAE;QACnE,EAAE,EAAE,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,EAAE;QACzE;YACE,EAAE,EAAE,eAAe;YACnB,QAAQ,EAAE,SAAS;YACnB,KAAK,EAAE,6CAA6C;YACpD,IAAI,EAAE,cAAc;SACrB;QACD;YACE,EAAE,EAAE,SAAS;YACb,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,6BAA6B;YACpC,IAAI,EAAE,cAAc;SACrB;QACD;YACE,EAAE,EAAE,cAAc;YAClB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,uBAAuB;YAC9B,IAAI,EAAE,UAAU;SACjB;QACD,EAAE,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,2BAA2B,EAAE;QAC/E,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,SAAS,EAAE,KAAK,EAAE,gCAAgC,EAAE;QAChF;YACE,EAAE,EAAE,aAAa;YACjB,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,2BAA2B;YAClC,IAAI,EAAE,aAAa;SACpB;QACD;YACE,EAAE,EAAE,aAAa;YACjB,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,kBAAkB;YACzB,IAAI,EAAE,aAAa;SACpB;QACD;YACE,EAAE,EAAE,WAAW;YACf,QAAQ,EAAE,MAAM;YAChB,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,QAAQ;SACf;QACD,EAAE,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE;KAC3D,EACD,EAAE,CACH,CAAC;IAEF,MAAM,gBAAgB,GAAG,OAAO,CAAC,GAAG,EAAE;QACpC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,IAAI,CAAC,CAAC;YAAE,OAAO,WAAW,CAAC;QAC3B,OAAO,WAAW,CAAC,MAAM,CACvB,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YACjC,CAAC,CAAC,EAAE,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;YAC9B,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CACvC,CAAC;IACJ,CAAC,EAAE,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC;IAEjC,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,EAAE;QACnC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QACrB,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACpB,cAAc,CAAC,IAAI,CAAC,CAAC;IACvB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QACpC,cAAc,CAAC,KAAK,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,MAAM,cAAc,GAAG,WAAW,CAChC,CAAC,GAAmB,EAAE,EAAE;QACtB,YAAY,EAAE,CAAC;QACf,IAAI,GAAG,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAU,CAAC;YACrD,IAAI,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,YAAY,CAAC,MAAM,CAAC,CAAC;YACrD,OAAO;QACT,CAAC;QACD,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC,EACD,CAAC,YAAY,EAAE,SAAS,CAAC,CAC1B,CAAC;IAEF,QAAQ,CACN,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACb,IAAI,WAAW;YAAE,OAAO;QAExB,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,YAAY,EAAE,CAAC;gBACf,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,MAAM,GAAG,GAAG,gBAAgB,CAAC,aAAa,CAAC,CAAC;gBAC5C,IAAI,GAAG;oBAAE,cAAc,CAAC,GAAG,CAAC,CAAC;gBAC7B,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBAChB,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC5C,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;gBAClB,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBACnF,OAAO;YACT,CAAC;YACD,IAAI,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAChC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,gBAAgB,CAAC,CAAC,CAAC,CAAC;gBACpB,OAAO;YACT,CAAC;YACD,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;gBACpC,gBAAgB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;gBACnC,gBAAgB,CAAC,CAAC,CAAC,CAAC;YACtB,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG,CAAC,EAAE,CAAC;YAC/D,WAAW,EAAE,CAAC;YACd,OAAO;QACT,CAAC;QACD,IAAI,KAAK,KAAK,GAAG,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YACnC,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;YACxC,IAAI,EAAE,CAAC;YACP,OAAO;QACT,CAAC;QACD,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACjC,IAAI,MAAM;YAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC,EACD,EAAE,QAAQ,EAAE,IAAI,EAAE,CACnB,CAAC;IAEF,MAAM,IAAI,GAAiB;QACzB,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE;QAC/D,EAAE,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE;QAC/C,EAAE,EAAE,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,SAAS,EAAE;QAC7C,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE;QACrC,EAAE,EAAE,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,QAAQ,EAAE;KAC5C,CAAC;IAEF,MAAM,UAAU,GAAG;QACjB,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE;QAChC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;QAC5B,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE;QACjC,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;QAC5B,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE;KAC7B,CAAC;IAEF,OAAO,CACL,MAAC,WAAW,eACV,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,aACtB,KAAC,OAAO,IACN,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,gBAAgB,EAAE,YAAY,EAC9B,UAAU,EAAE,OAAO,EACnB,UAAU,EAAE,UAAU,GACtB,EACF,KAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,QAAQ,EAAE,CAAC,EACX,SAAS,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACxC,QAAQ,EAAE,CAAC,YAEV,WAAW,CAAC,CAAC,CAAC,CACb,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACzD,KAAC,GAAG,IAAC,KAAK,EAAC,KAAK,EAAC,aAAa,EAAC,QAAQ,YACrC,KAAC,cAAc,IACb,MAAM,EAAE,aAAa,EACrB,QAAQ,EAAE,gBAAgB,EAC1B,MAAM,EAAE,aAAa,GACrB,GACE,GACF,CACP,CAAC,CAAC,CAAC,CACF,8BACG,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CACxB,KAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,IAAI,EACd,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,EACrC,eAAe,EAAE,GAAG,EAAE;wCACpB,QAAQ,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;wCACpD,IAAI,EAAE,CAAC;oCACT,CAAC,EACD,OAAO,EAAE,SAAS,EAClB,aAAa,EAAE,cAAc,EAC7B,YAAY,EAAE,QAAQ,GACtB,CACH,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,KAAK,UAAU,CAAC,CAAC,CAAC,CAC1B,KAAC,WAAW,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,WAAW,GAAI,CACpE,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,CACzB,KAAC,UAAU,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,SAAS,GAAI,CACjE,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CACrB,KAAC,MAAM,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,GAAI,CACzD,CAAC,CAAC,CAAC,IAAI,EACP,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CACxB,KAAC,SAAS,IAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,GAAI,CAC9E,CAAC,CAAC,CAAC,IAAI,IACP,CACJ,GACG,IACF,EACN,KAAC,UAAU,IAAC,MAAM,EAAE,MAAM,GAAI,IAClB,CACf,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,GAAe;IACjD,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;IAE1B,8DAA8D;IAC9D,IAAI,SAAS,GAAG,8BAA8B,CAAC;IAC/C,IAAI,CAAC;QACH,MAAM,EAAE,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,GAAG,GAAG,gBAAgB,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QAC1E,IAAI,EAAE;YAAE,SAAS,GAAG,yBAAyB,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,SAAS;IACX,CAAC;IAED,gBAAgB;IAChB,IAAI,WAAW,GAAG,YAAY,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,WAAW,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE;YACpF,GAAG;SACJ,CAAC,CAAC;QACH,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACzB,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO;iBAC/B,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC;iBAC9C,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACrB,MAAM,OAAO,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC;YAC3D,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,OAAO;iBAC/B,GAAG,CAAC,KAAK,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,cAAc,EAAE,aAAa,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC;iBAC3E,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;YACrB,MAAM,WAAW,GAAG,QAAQ,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACzD,MAAM,MAAM,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;YACvC,MAAM,KAAK,GAAG,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;YACtC,MAAM,IAAI,GACR,KAAK,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,KAAK,MAAM,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YAC3F,WAAW,GAAG,GAAG,MAAM,MAAM,IAAI,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,iBAAiB;IACjB,IAAI,aAAa,GAAG,YAAY,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;QAClF,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACvB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAGrC,CAAC;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,YAAY,IAAI,CAAC,CAAC;YACtC,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACpC,aAAa,GAAG,GAAG,KAAK,eAAe,MAAM,SAAS,CAAC;QACzD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,eAAe;IACjB,CAAC;IAED,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC;AACnD,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,eAAe,CAAC,GAAe;IAC5C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,UAAU,CAAC,EAAE;YACvE,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,OAAO,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAErC,CAAC;QACF,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;QACvE,IAAI,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC;QACtB,QAAQ,MAAM,CAAC,KAAK,EAAE,CAAC;YACrB,KAAK,UAAU;gBACb,OAAO,CAAC,CAAC;YACX,KAAK,WAAW,CAAC;YACjB,KAAK,YAAY;gBACf,OAAO,CAAC,CAAC;YACX,KAAK,SAAS;gBACZ,OAAO,CAAC,CAAC;YACX;gBACE,OAAO,CAAC,CAAC;QACb,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC;IACX,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type ActivityTone = "ok" | "accent" | "info" | "purple" | "warn" | "err" | "dim";
|
|
2
|
+
export interface ActivityEvent {
|
|
3
|
+
id: string;
|
|
4
|
+
when: string;
|
|
5
|
+
dotColor: ActivityTone;
|
|
6
|
+
text: string;
|
|
7
|
+
meta?: string;
|
|
8
|
+
metaTone?: ActivityTone;
|
|
9
|
+
}
|
|
10
|
+
export interface ActivityFeedProps {
|
|
11
|
+
events: ActivityEvent[];
|
|
12
|
+
cap?: number;
|
|
13
|
+
emptyHint?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare function ActivityFeed({ events, cap, emptyHint }: ActivityFeedProps): import("react/jsx-runtime").JSX.Element;
|
|
16
|
+
//# sourceMappingURL=activity-feed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activity-feed.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/activity-feed.tsx"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG,IAAI,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,KAAK,CAAC;AAExF,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,YAAY,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA4BD,wBAAgB,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CA0BzE"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
import { colors } from "../theme.js";
|
|
4
|
+
const MAX_TEXT_LENGTH = 48;
|
|
5
|
+
function tone(t) {
|
|
6
|
+
switch (t) {
|
|
7
|
+
case "ok":
|
|
8
|
+
return colors.ok;
|
|
9
|
+
case "accent":
|
|
10
|
+
return colors.accent;
|
|
11
|
+
case "info":
|
|
12
|
+
return colors.info;
|
|
13
|
+
case "purple":
|
|
14
|
+
return colors.purple;
|
|
15
|
+
case "warn":
|
|
16
|
+
return colors.warn;
|
|
17
|
+
case "err":
|
|
18
|
+
return colors.err;
|
|
19
|
+
case "dim":
|
|
20
|
+
return colors.dim;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function truncate(text, max) {
|
|
24
|
+
if (text.length <= max)
|
|
25
|
+
return text;
|
|
26
|
+
return `${text.slice(0, max - 1)}…`;
|
|
27
|
+
}
|
|
28
|
+
export function ActivityFeed({ events, cap, emptyHint }) {
|
|
29
|
+
const list = cap ? events.slice(0, cap) : events;
|
|
30
|
+
if (!list.length) {
|
|
31
|
+
return _jsx(Text, { color: colors.faint, children: emptyHint ?? " (no recent activity)" });
|
|
32
|
+
}
|
|
33
|
+
return (_jsx(Box, { flexDirection: "column", children: list.map((e) => (_jsxs(Box, { children: [_jsx(Box, { width: 5, children: _jsx(Text, { color: colors.dim, children: e.when }) }), _jsx(Text, { color: tone(e.dotColor), children: "\u25CF " }), _jsx(Text, { color: colors.text, children: truncate(e.text, MAX_TEXT_LENGTH) }), e.meta ? (_jsxs(_Fragment, { children: [_jsx(Box, { flexGrow: 1, children: _jsx(Text, { children: " " }) }), _jsx(Text, { color: tone(e.metaTone ?? "dim"), children: e.meta })] })) : null] }, e.id))) }));
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=activity-feed.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"activity-feed.js","sourceRoot":"","sources":["../../../../src/cli/tui/components/activity-feed.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAmBrC,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,IAAI,CAAC,CAAe;IAC3B,QAAQ,CAAC,EAAE,CAAC;QACV,KAAK,IAAI;YACP,OAAO,MAAM,CAAC,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,MAAM,CAAC;QACvB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC,IAAI,CAAC;QACrB,KAAK,KAAK;YACR,OAAO,MAAM,CAAC,GAAG,CAAC;QACpB,KAAK,KAAK;YACR,OAAO,MAAM,CAAC,GAAG,CAAC;IACtB,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,IAAY,EAAE,GAAW;IACzC,IAAI,IAAI,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,IAAI,CAAC;IACpC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,EAAqB;IACxE,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACjD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,YAAG,SAAS,IAAI,wBAAwB,GAAQ,CAAC;IACnF,CAAC;IACD,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACf,MAAC,GAAG,eACF,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,YACX,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,GAAG,YAAG,CAAC,CAAC,IAAI,GAAQ,GACpC,EACN,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAW,EACxC,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,QAAQ,CAAC,CAAC,CAAC,IAAI,EAAE,eAAe,CAAC,GAAQ,EACnE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CACR,8BACE,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,oBAAS,GACV,EACN,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,YAAG,CAAC,CAAC,IAAI,GAAQ,IACtD,CACJ,CAAC,CAAC,CAAC,IAAI,KAbA,CAAC,CAAC,EAAE,CAcR,CACP,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -1,39 +1,17 @@
|
|
|
1
|
-
export interface
|
|
1
|
+
export interface PaletteCommand {
|
|
2
2
|
id: string;
|
|
3
3
|
label: string;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
/** Glyph corto a la izquierda del label */
|
|
7
|
-
glyph: string;
|
|
4
|
+
category: string;
|
|
5
|
+
hint?: string;
|
|
8
6
|
}
|
|
9
7
|
export interface CommandPaletteProps {
|
|
10
|
-
|
|
11
|
-
commands:
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
isActive?: boolean;
|
|
8
|
+
filter: string;
|
|
9
|
+
commands: PaletteCommand[];
|
|
10
|
+
cursor: number;
|
|
11
|
+
groups?: Array<{
|
|
12
|
+
category: string;
|
|
13
|
+
commands: PaletteCommand[];
|
|
14
|
+
}>;
|
|
18
15
|
}
|
|
19
|
-
|
|
20
|
-
* CommandPalette — overlay tipo Ctrl+K.
|
|
21
|
-
*
|
|
22
|
-
* - TextInput de `@inkjs/ui` para filtrar (case-insensitive en `label` + `ctx`).
|
|
23
|
-
* - Lista filtrada con cursor; `↑↓` mueve, `⏎` ejecuta, `Esc` cierra.
|
|
24
|
-
* - Footer con hint de navegación y conteo de resultados.
|
|
25
|
-
*
|
|
26
|
-
* En TTY no hay backdrop translúcido — el componente se renderiza en el área
|
|
27
|
-
* de contenido en lugar de la tab activa cuando está abierto (app.tsx maneja
|
|
28
|
-
* esa conmutación).
|
|
29
|
-
*/
|
|
30
|
-
export declare function CommandPalette({ commands, onRun, onClose, isActive }: CommandPaletteProps): import("react/jsx-runtime").JSX.Element;
|
|
31
|
-
/**
|
|
32
|
-
* Catálogo canónico de comandos del TUI.
|
|
33
|
-
*
|
|
34
|
-
* Stable IDs porque app.tsx + hooks externos hacen pattern match contra ellos.
|
|
35
|
-
* Cuando un comando no aplica al contexto actual el handler debe responder
|
|
36
|
-
* con un toast (no romper).
|
|
37
|
-
*/
|
|
38
|
-
export declare const PALETTE_COMMANDS: readonly CommandEntry[];
|
|
16
|
+
export declare function CommandPalette({ filter, commands, cursor }: CommandPaletteProps): import("react/jsx-runtime").JSX.Element;
|
|
39
17
|
//# sourceMappingURL=command-palette.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-palette.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/command-palette.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"command-palette.d.ts","sourceRoot":"","sources":["../../../../src/cli/tui/components/command-palette.tsx"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,cAAc,EAAE,CAAA;KAAE,CAAC,CAAC;CAClE;AAID,wBAAgB,cAAc,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,mBAAmB,2CAmF/E"}
|