arc402-cli 1.5.0 → 1.6.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/commands/agreements.d.ts.map +1 -1
- package/dist/commands/agreements.js +19 -0
- package/dist/commands/agreements.js.map +1 -1
- package/dist/commands/arena-v2.d.ts.map +1 -1
- package/dist/commands/arena-v2.js +129 -4
- package/dist/commands/arena-v2.js.map +1 -1
- package/dist/commands/auth.d.ts +11 -0
- package/dist/commands/auth.d.ts.map +1 -0
- package/dist/commands/auth.js +188 -0
- package/dist/commands/auth.js.map +1 -0
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +194 -3
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/compute.d.ts.map +1 -1
- package/dist/commands/compute.js +84 -10
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/discover.d.ts.map +1 -1
- package/dist/commands/discover.js +20 -0
- package/dist/commands/discover.js.map +1 -1
- package/dist/commands/hire.d.ts.map +1 -1
- package/dist/commands/hire.js +20 -0
- package/dist/commands/hire.js.map +1 -1
- package/dist/commands/lifecycle.d.ts +3 -0
- package/dist/commands/lifecycle.d.ts.map +1 -0
- package/dist/commands/lifecycle.js +58 -0
- package/dist/commands/lifecycle.js.map +1 -0
- package/dist/commands/security.d.ts +3 -0
- package/dist/commands/security.d.ts.map +1 -0
- package/dist/commands/security.js +44 -0
- package/dist/commands/security.js.map +1 -0
- package/dist/commands/status.d.ts.map +1 -1
- package/dist/commands/status.js +38 -0
- package/dist/commands/status.js.map +1 -1
- package/dist/commands/subscription.d.ts.map +1 -1
- package/dist/commands/subscription.js +313 -21
- package/dist/commands/subscription.js.map +1 -1
- package/dist/commands/workroom.d.ts.map +1 -1
- package/dist/commands/workroom.js +13 -0
- package/dist/commands/workroom.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +6 -0
- package/dist/program.js.map +1 -1
- package/dist/tui/App.d.ts.map +1 -1
- package/dist/tui/App.js +61 -58
- package/dist/tui/App.js.map +1 -1
- package/dist/tui/InputLine.d.ts +4 -2
- package/dist/tui/InputLine.d.ts.map +1 -1
- package/dist/tui/InputLine.js +79 -60
- package/dist/tui/InputLine.js.map +1 -1
- package/dist/tui/KernelPayloadRenderer.d.ts +12 -0
- package/dist/tui/KernelPayloadRenderer.d.ts.map +1 -0
- package/dist/tui/KernelPayloadRenderer.js +41 -0
- package/dist/tui/KernelPayloadRenderer.js.map +1 -0
- package/dist/tui/Viewport.d.ts +15 -5
- package/dist/tui/Viewport.d.ts.map +1 -1
- package/dist/tui/Viewport.js +18 -24
- package/dist/tui/Viewport.js.map +1 -1
- package/dist/tui/command-catalog.d.ts +11 -0
- package/dist/tui/command-catalog.d.ts.map +1 -0
- package/dist/tui/command-catalog.js +119 -0
- package/dist/tui/command-catalog.js.map +1 -0
- package/dist/tui/command-renderers.d.ts +33 -0
- package/dist/tui/command-renderers.d.ts.map +1 -0
- package/dist/tui/command-renderers.js +215 -0
- package/dist/tui/command-renderers.js.map +1 -0
- package/dist/tui/commerce-format.d.ts +3 -0
- package/dist/tui/commerce-format.d.ts.map +1 -0
- package/dist/tui/commerce-format.js +19 -0
- package/dist/tui/commerce-format.js.map +1 -0
- package/dist/tui/components/commerce/AgentPicker.d.ts +7 -0
- package/dist/tui/components/commerce/AgentPicker.d.ts.map +1 -0
- package/dist/tui/components/commerce/AgentPicker.js +33 -0
- package/dist/tui/components/commerce/AgentPicker.js.map +1 -0
- package/dist/tui/components/commerce/AgreementList.d.ts +18 -0
- package/dist/tui/components/commerce/AgreementList.d.ts.map +1 -0
- package/dist/tui/components/commerce/AgreementList.js +25 -0
- package/dist/tui/components/commerce/AgreementList.js.map +1 -0
- package/dist/tui/components/commerce/ComputeCard.d.ts +14 -0
- package/dist/tui/components/commerce/ComputeCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/ComputeCard.js +9 -0
- package/dist/tui/components/commerce/ComputeCard.js.map +1 -0
- package/dist/tui/components/commerce/DiscoverList.d.ts +20 -0
- package/dist/tui/components/commerce/DiscoverList.d.ts.map +1 -0
- package/dist/tui/components/commerce/DiscoverList.js +22 -0
- package/dist/tui/components/commerce/DiscoverList.js.map +1 -0
- package/dist/tui/components/commerce/HireCard.d.ts +14 -0
- package/dist/tui/components/commerce/HireCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/HireCard.js +11 -0
- package/dist/tui/components/commerce/HireCard.js.map +1 -0
- package/dist/tui/components/commerce/ProfileCard.d.ts +19 -0
- package/dist/tui/components/commerce/ProfileCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/ProfileCard.js +10 -0
- package/dist/tui/components/commerce/ProfileCard.js.map +1 -0
- package/dist/tui/components/commerce/RoundsList.d.ts +18 -0
- package/dist/tui/components/commerce/RoundsList.d.ts.map +1 -0
- package/dist/tui/components/commerce/RoundsList.js +9 -0
- package/dist/tui/components/commerce/RoundsList.js.map +1 -0
- package/dist/tui/components/commerce/SquadCard.d.ts +25 -0
- package/dist/tui/components/commerce/SquadCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/SquadCard.js +10 -0
- package/dist/tui/components/commerce/SquadCard.js.map +1 -0
- package/dist/tui/components/commerce/StatusCard.d.ts +21 -0
- package/dist/tui/components/commerce/StatusCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/StatusCard.js +10 -0
- package/dist/tui/components/commerce/StatusCard.js.map +1 -0
- package/dist/tui/components/commerce/SubscribeCard.d.ts +13 -0
- package/dist/tui/components/commerce/SubscribeCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/SubscribeCard.js +10 -0
- package/dist/tui/components/commerce/SubscribeCard.js.map +1 -0
- package/dist/tui/components/commerce/WorkroomCard.d.ts +18 -0
- package/dist/tui/components/commerce/WorkroomCard.d.ts.map +1 -0
- package/dist/tui/components/commerce/WorkroomCard.js +10 -0
- package/dist/tui/components/commerce/WorkroomCard.js.map +1 -0
- package/dist/tui/components/commerce/common.d.ts +53 -0
- package/dist/tui/components/commerce/common.d.ts.map +1 -0
- package/dist/tui/components/commerce/common.js +71 -0
- package/dist/tui/components/commerce/common.js.map +1 -0
- package/dist/tui/components/commerce/index.d.ts +11 -0
- package/dist/tui/components/commerce/index.d.ts.map +1 -0
- package/dist/tui/components/commerce/index.js +27 -0
- package/dist/tui/components/commerce/index.js.map +1 -0
- package/dist/tui/hire-interactive.d.ts +13 -0
- package/dist/tui/hire-interactive.d.ts.map +1 -0
- package/dist/tui/hire-interactive.js +157 -0
- package/dist/tui/hire-interactive.js.map +1 -0
- package/dist/tui/kernel-payload.d.ts +45 -0
- package/dist/tui/kernel-payload.d.ts.map +1 -0
- package/dist/tui/kernel-payload.js +8 -0
- package/dist/tui/kernel-payload.js.map +1 -0
- package/dist/tui/kernel.d.ts +6 -0
- package/dist/tui/kernel.d.ts.map +1 -0
- package/dist/tui/kernel.js +791 -0
- package/dist/tui/kernel.js.map +1 -0
- package/dist/tui/render-inline.d.ts +9 -0
- package/dist/tui/render-inline.d.ts.map +1 -0
- package/dist/tui/render-inline.js +32 -0
- package/dist/tui/render-inline.js.map +1 -0
- package/dist/tui/useChat.d.ts.map +1 -1
- package/dist/tui/useChat.js +2 -2
- package/dist/tui/useChat.js.map +1 -1
- package/dist/tui/useCommand.d.ts +2 -2
- package/dist/tui/useCommand.d.ts.map +1 -1
- package/dist/tui/useCommand.js +57 -19
- package/dist/tui/useCommand.js.map +1 -1
- package/dist/tui/useDaemonEvents.d.ts +4 -0
- package/dist/tui/useDaemonEvents.d.ts.map +1 -0
- package/dist/tui/useDaemonEvents.js +69 -0
- package/dist/tui/useDaemonEvents.js.map +1 -0
- package/dist/tui/useTerminalSize.d.ts +11 -0
- package/dist/tui/useTerminalSize.d.ts.map +1 -0
- package/dist/tui/useTerminalSize.js +32 -0
- package/dist/tui/useTerminalSize.js.map +1 -0
- package/dist/tui-esm/App.js +136 -0
- package/dist/tui-esm/App.js.map +1 -0
- package/dist/tui-esm/Footer.js +13 -0
- package/dist/tui-esm/Footer.js.map +1 -0
- package/dist/tui-esm/Header.js +19 -0
- package/dist/tui-esm/Header.js.map +1 -0
- package/dist/tui-esm/InputLine.js +121 -0
- package/dist/tui-esm/InputLine.js.map +1 -0
- package/dist/tui-esm/Viewport.js +39 -0
- package/dist/tui-esm/Viewport.js.map +1 -0
- package/dist/tui-esm/WalletConnectPairing.js +61 -0
- package/dist/tui-esm/WalletConnectPairing.js.map +1 -0
- package/dist/tui-esm/command-catalog.js +20 -0
- package/dist/tui-esm/command-catalog.js.map +1 -0
- package/dist/tui-esm/command-renderers.js +180 -0
- package/dist/tui-esm/command-renderers.js.map +1 -0
- package/dist/tui-esm/commerce-format.js +19 -0
- package/dist/tui-esm/commerce-format.js.map +1 -0
- package/dist/tui-esm/components/Button.js +21 -0
- package/dist/tui-esm/components/Button.js.map +1 -0
- package/dist/tui-esm/components/CeremonyView.js +10 -0
- package/dist/tui-esm/components/CeremonyView.js.map +1 -0
- package/dist/tui-esm/components/CompletionDropdown.js +23 -0
- package/dist/tui-esm/components/CompletionDropdown.js.map +1 -0
- package/dist/tui-esm/components/ConfirmPrompt.js +10 -0
- package/dist/tui-esm/components/ConfirmPrompt.js.map +1 -0
- package/dist/tui-esm/components/CustomTextInput.js +99 -0
- package/dist/tui-esm/components/CustomTextInput.js.map +1 -0
- package/dist/tui-esm/components/InteractiveTable.js +61 -0
- package/dist/tui-esm/components/InteractiveTable.js.map +1 -0
- package/dist/tui-esm/components/StepSpinner.js +32 -0
- package/dist/tui-esm/components/StepSpinner.js.map +1 -0
- package/dist/tui-esm/components/Toast.js +29 -0
- package/dist/tui-esm/components/Toast.js.map +1 -0
- package/dist/tui-esm/components/commerce/AgreementList.js +25 -0
- package/dist/tui-esm/components/commerce/AgreementList.js.map +1 -0
- package/dist/tui-esm/components/commerce/ComputeCard.js +9 -0
- package/dist/tui-esm/components/commerce/ComputeCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/DiscoverList.js +14 -0
- package/dist/tui-esm/components/commerce/DiscoverList.js.map +1 -0
- package/dist/tui-esm/components/commerce/HireCard.js +11 -0
- package/dist/tui-esm/components/commerce/HireCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/RoundsList.js +9 -0
- package/dist/tui-esm/components/commerce/RoundsList.js.map +1 -0
- package/dist/tui-esm/components/commerce/SquadCard.js +10 -0
- package/dist/tui-esm/components/commerce/SquadCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/StatusCard.js +10 -0
- package/dist/tui-esm/components/commerce/StatusCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/SubscribeCard.js +10 -0
- package/dist/tui-esm/components/commerce/SubscribeCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/WorkroomCard.js +10 -0
- package/dist/tui-esm/components/commerce/WorkroomCard.js.map +1 -0
- package/dist/tui-esm/components/commerce/common.js +71 -0
- package/dist/tui-esm/components/commerce/common.js.map +1 -0
- package/dist/tui-esm/components/commerce/index.js +27 -0
- package/dist/tui-esm/components/commerce/index.js.map +1 -0
- package/dist/tui-esm/index.js +55 -0
- package/dist/tui-esm/index.js.map +1 -0
- package/dist/tui-esm/kernel.js +734 -0
- package/dist/tui-esm/kernel.js.map +1 -0
- package/dist/tui-esm/render-inline.js +32 -0
- package/dist/tui-esm/render-inline.js.map +1 -0
- package/dist/tui-esm/useChat.js +91 -0
- package/dist/tui-esm/useChat.js.map +1 -0
- package/dist/tui-esm/useCommand.js +142 -0
- package/dist/tui-esm/useCommand.js.map +1 -0
- package/dist/tui-esm/useNotifications.js +17 -0
- package/dist/tui-esm/useNotifications.js.map +1 -0
- package/dist/tui-esm/useScroll.js +46 -0
- package/dist/tui-esm/useScroll.js.map +1 -0
- package/dist/tui-esm/useTerminalSize.js +32 -0
- package/dist/tui-esm/useTerminalSize.js.map +1 -0
- package/dist/ui/banner.d.ts.map +1 -1
- package/dist/ui/banner.js +46 -2
- package/dist/ui/banner.js.map +1 -1
- package/package.json +1 -1
package/dist/tui/InputLine.js
CHANGED
|
@@ -8,47 +8,51 @@ const jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
8
8
|
const react_1 = require("react");
|
|
9
9
|
const ink_1 = require("ink");
|
|
10
10
|
const ink_text_input_1 = __importDefault(require("ink-text-input"));
|
|
11
|
-
const
|
|
12
|
-
const
|
|
11
|
+
const command_catalog_1 = require("./command-catalog");
|
|
12
|
+
const CompletionDropdown_1 = require("./components/CompletionDropdown");
|
|
13
|
+
const ALL_TOP = [...command_catalog_1.BUILTIN_CMDS, ...command_catalog_1.TUI_TOP_LEVEL_COMMANDS];
|
|
14
|
+
const SUB_MAP = new Map(Object.entries(command_catalog_1.TUI_SUBCOMMANDS));
|
|
13
15
|
/**
|
|
14
|
-
* Input line with
|
|
15
|
-
*
|
|
16
|
+
* Input line with:
|
|
17
|
+
* - Command history navigation (↑/↓)
|
|
18
|
+
* - Live completion dropdown (Tab cycles, Esc dismisses)
|
|
19
|
+
* - Tab expansion on single match
|
|
16
20
|
*/
|
|
17
21
|
function InputLine({ onSubmit, isDisabled = false }) {
|
|
18
22
|
const [value, setValue] = (0, react_1.useState)("");
|
|
19
23
|
const [history, setHistory] = (0, react_1.useState)([]);
|
|
20
24
|
const [historyIdx, setHistoryIdx] = (0, react_1.useState)(-1);
|
|
21
25
|
const [historyTemp, setHistoryTemp] = (0, react_1.useState)("");
|
|
22
|
-
//
|
|
23
|
-
const [
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
// Completion state
|
|
27
|
+
const [completions, setCompletions] = (0, react_1.useState)([]);
|
|
28
|
+
const [completionIdx, setCompletionIdx] = (0, react_1.useState)(0);
|
|
29
|
+
const [dropdownVisible, setDropdownVisible] = (0, react_1.useState)(false);
|
|
30
|
+
const computeCompletions = (0, react_1.useCallback)((input) => {
|
|
31
|
+
const trimmed = input.trimStart();
|
|
32
|
+
if (!trimmed)
|
|
29
33
|
return [];
|
|
34
|
+
const spaceIdx = trimmed.indexOf(" ");
|
|
35
|
+
if (spaceIdx === -1) {
|
|
36
|
+
return ALL_TOP.filter((cmd) => cmd.startsWith(trimmed) && cmd !== trimmed);
|
|
30
37
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
}
|
|
46
|
-
});
|
|
38
|
+
const parent = trimmed.slice(0, spaceIdx);
|
|
39
|
+
const rest = trimmed.slice(spaceIdx + 1);
|
|
40
|
+
const subs = SUB_MAP.get(parent) ?? [];
|
|
41
|
+
return subs
|
|
42
|
+
.filter((s) => s.startsWith(rest) && s !== rest)
|
|
43
|
+
.map((s) => `${parent} ${s}`);
|
|
44
|
+
}, []);
|
|
45
|
+
const handleChange = (0, react_1.useCallback)((newVal) => {
|
|
46
|
+
setValue(newVal);
|
|
47
|
+
const candidates = computeCompletions(newVal);
|
|
48
|
+
setCompletions(candidates);
|
|
49
|
+
setCompletionIdx(0);
|
|
50
|
+
setDropdownVisible(candidates.length > 0);
|
|
51
|
+
}, [computeCompletions]);
|
|
47
52
|
const handleSubmit = (0, react_1.useCallback)((val) => {
|
|
48
53
|
const trimmed = val.trim();
|
|
49
54
|
if (!trimmed)
|
|
50
55
|
return;
|
|
51
|
-
// Add to history (avoid duplicate of last entry)
|
|
52
56
|
setHistory((prev) => {
|
|
53
57
|
if (prev[prev.length - 1] === trimmed)
|
|
54
58
|
return prev;
|
|
@@ -57,25 +61,41 @@ function InputLine({ onSubmit, isDisabled = false }) {
|
|
|
57
61
|
setHistoryIdx(-1);
|
|
58
62
|
setHistoryTemp("");
|
|
59
63
|
setValue("");
|
|
64
|
+
setCompletions([]);
|
|
65
|
+
setDropdownVisible(false);
|
|
60
66
|
onSubmit(trimmed);
|
|
61
67
|
}, [onSubmit]);
|
|
62
|
-
(0, ink_1.useInput)((
|
|
68
|
+
(0, ink_1.useInput)((input, key) => {
|
|
63
69
|
if (isDisabled)
|
|
64
70
|
return;
|
|
65
|
-
//
|
|
71
|
+
// Escape — dismiss dropdown
|
|
72
|
+
if (key.escape) {
|
|
73
|
+
setDropdownVisible(false);
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
// Up arrow — history or cycle completion up
|
|
66
77
|
if (key.upArrow) {
|
|
78
|
+
if (dropdownVisible && completions.length > 0) {
|
|
79
|
+
setCompletionIdx((idx) => Math.max(0, idx - 1));
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
67
82
|
setHistory((hist) => {
|
|
68
83
|
setHistoryIdx((idx) => {
|
|
69
84
|
if (idx === -1) {
|
|
70
85
|
setHistoryTemp(value);
|
|
71
86
|
const newIdx = hist.length - 1;
|
|
72
|
-
if (newIdx >= 0)
|
|
87
|
+
if (newIdx >= 0) {
|
|
73
88
|
setValue(hist[newIdx]);
|
|
89
|
+
setCompletions([]);
|
|
90
|
+
setDropdownVisible(false);
|
|
91
|
+
}
|
|
74
92
|
return newIdx;
|
|
75
93
|
}
|
|
76
94
|
else if (idx > 0) {
|
|
77
95
|
const newIdx = idx - 1;
|
|
78
96
|
setValue(hist[newIdx]);
|
|
97
|
+
setCompletions([]);
|
|
98
|
+
setDropdownVisible(false);
|
|
79
99
|
return newIdx;
|
|
80
100
|
}
|
|
81
101
|
return idx;
|
|
@@ -84,18 +104,26 @@ function InputLine({ onSubmit, isDisabled = false }) {
|
|
|
84
104
|
});
|
|
85
105
|
return;
|
|
86
106
|
}
|
|
87
|
-
// Down arrow — history
|
|
107
|
+
// Down arrow — history or cycle completion down
|
|
88
108
|
if (key.downArrow) {
|
|
109
|
+
if (dropdownVisible && completions.length > 0) {
|
|
110
|
+
setCompletionIdx((idx) => Math.min(completions.length - 1, idx + 1));
|
|
111
|
+
return;
|
|
112
|
+
}
|
|
89
113
|
setHistory((hist) => {
|
|
90
114
|
setHistoryIdx((idx) => {
|
|
91
115
|
if (idx >= 0) {
|
|
92
116
|
const newIdx = idx + 1;
|
|
93
117
|
if (newIdx >= hist.length) {
|
|
94
118
|
setValue(historyTemp);
|
|
119
|
+
setCompletions([]);
|
|
120
|
+
setDropdownVisible(false);
|
|
95
121
|
return -1;
|
|
96
122
|
}
|
|
97
123
|
else {
|
|
98
124
|
setValue(hist[newIdx]);
|
|
125
|
+
setCompletions([]);
|
|
126
|
+
setDropdownVisible(false);
|
|
99
127
|
return newIdx;
|
|
100
128
|
}
|
|
101
129
|
}
|
|
@@ -105,41 +133,32 @@ function InputLine({ onSubmit, isDisabled = false }) {
|
|
|
105
133
|
});
|
|
106
134
|
return;
|
|
107
135
|
}
|
|
108
|
-
// Tab —
|
|
109
|
-
if (
|
|
110
|
-
const allTop = [...BUILTIN_CMDS, ...topCmds];
|
|
111
|
-
const trimmed = value.trimStart();
|
|
112
|
-
const spaceIdx = trimmed.indexOf(" ");
|
|
113
|
-
let completions;
|
|
114
|
-
if (spaceIdx === -1) {
|
|
115
|
-
completions = allTop.filter((cmd) => cmd.startsWith(trimmed));
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
const parent = trimmed.slice(0, spaceIdx);
|
|
119
|
-
const rest = trimmed.slice(spaceIdx + 1);
|
|
120
|
-
const subs = subCmds.get(parent) ?? [];
|
|
121
|
-
completions = subs
|
|
122
|
-
.filter((s) => s.startsWith(rest))
|
|
123
|
-
.map((s) => `${parent} ${s}`);
|
|
124
|
-
}
|
|
136
|
+
// Tab — complete selected candidate or cycle
|
|
137
|
+
if (input === "\t") {
|
|
125
138
|
if (completions.length === 0)
|
|
126
139
|
return;
|
|
127
140
|
if (completions.length === 1) {
|
|
128
|
-
|
|
141
|
+
const completed = completions[0] + " ";
|
|
142
|
+
setValue(completed);
|
|
143
|
+
setCompletions([]);
|
|
144
|
+
setDropdownVisible(false);
|
|
129
145
|
return;
|
|
130
146
|
}
|
|
131
|
-
//
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
147
|
+
// Multi: apply currently selected completion
|
|
148
|
+
if (dropdownVisible) {
|
|
149
|
+
const selected = completions[completionIdx];
|
|
150
|
+
if (selected) {
|
|
151
|
+
setValue(selected + " ");
|
|
152
|
+
setCompletions([]);
|
|
153
|
+
setDropdownVisible(false);
|
|
154
|
+
}
|
|
155
|
+
return;
|
|
140
156
|
}
|
|
157
|
+
// Reveal dropdown on first Tab
|
|
158
|
+
setDropdownVisible(true);
|
|
159
|
+
return;
|
|
141
160
|
}
|
|
142
161
|
}, { isActive: !isDisabled });
|
|
143
|
-
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { children: [(0, jsx_runtime_1.jsx)(ink_1.Text, { color: "cyan", children: "\u25C8" }), (0, jsx_runtime_1.jsx)(ink_1.Text, { dimColor: true, children: " arc402 " }), (0, jsx_runtime_1.jsxs)(ink_1.Text, { color: "white", children: [">", " "] }), (0, jsx_runtime_1.jsx)(ink_text_input_1.default, { value: value, onChange:
|
|
162
|
+
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { flexDirection: "column", children: [dropdownVisible && completions.length > 0 && ((0, jsx_runtime_1.jsx)(CompletionDropdown_1.CompletionDropdown, { candidates: completions, selectedIndex: completionIdx, visible: dropdownVisible })), (0, jsx_runtime_1.jsxs)(ink_1.Box, { children: [(0, jsx_runtime_1.jsx)(ink_1.Text, { color: "cyan", children: "\u25C8" }), (0, jsx_runtime_1.jsx)(ink_1.Text, { dimColor: true, children: " arc402 " }), (0, jsx_runtime_1.jsxs)(ink_1.Text, { color: "white", children: [">", " "] }), (0, jsx_runtime_1.jsx)(ink_text_input_1.default, { value: value, onChange: handleChange, onSubmit: handleSubmit, focus: !isDisabled })] })] }));
|
|
144
163
|
}
|
|
145
164
|
//# sourceMappingURL=InputLine.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"InputLine.js","sourceRoot":"","sources":["../../src/tui/InputLine.tsx"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"InputLine.js","sourceRoot":"","sources":["../../src/tui/InputLine.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { KernelPayload } from "./kernel-payload";
|
|
2
|
+
interface KernelPayloadRendererProps {
|
|
3
|
+
payload: KernelPayload;
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* Maps typed KernelPayload structs to Phase 2 Ink commerce components.
|
|
7
|
+
* This is the bridge that makes real inline component rendering viable:
|
|
8
|
+
* the kernel returns data, this component renders it inside the Ink tree.
|
|
9
|
+
*/
|
|
10
|
+
export declare function KernelPayloadRenderer({ payload }: KernelPayloadRendererProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=KernelPayloadRenderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KernelPayloadRenderer.d.ts","sourceRoot":"","sources":["../../src/tui/KernelPayloadRenderer.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAStD,UAAU,0BAA0B;IAClC,OAAO,EAAE,aAAa,CAAC;CACxB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,OAAO,EAAE,EAAE,0BAA0B,2CAkD5E"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.KernelPayloadRenderer = KernelPayloadRenderer;
|
|
4
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
|
+
const ink_1 = require("ink");
|
|
6
|
+
const StatusCard_1 = require("./components/commerce/StatusCard");
|
|
7
|
+
const DiscoverList_1 = require("./components/commerce/DiscoverList");
|
|
8
|
+
const AgreementList_1 = require("./components/commerce/AgreementList");
|
|
9
|
+
const WorkroomCard_1 = require("./components/commerce/WorkroomCard");
|
|
10
|
+
const SubscribeCard_1 = require("./components/commerce/SubscribeCard");
|
|
11
|
+
const RoundsList_1 = require("./components/commerce/RoundsList");
|
|
12
|
+
const SquadCard_1 = require("./components/commerce/SquadCard");
|
|
13
|
+
/**
|
|
14
|
+
* Maps typed KernelPayload structs to Phase 2 Ink commerce components.
|
|
15
|
+
* This is the bridge that makes real inline component rendering viable:
|
|
16
|
+
* the kernel returns data, this component renders it inside the Ink tree.
|
|
17
|
+
*/
|
|
18
|
+
function KernelPayloadRenderer({ payload }) {
|
|
19
|
+
switch (payload.type) {
|
|
20
|
+
case "status":
|
|
21
|
+
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { flexDirection: "column", children: [(0, jsx_runtime_1.jsx)(StatusCard_1.StatusCard, { ...payload.props }), payload.guidance?.map((line, i) => ((0, jsx_runtime_1.jsx)(ink_1.Text, { dimColor: true, children: line }, i)))] }));
|
|
22
|
+
case "discover":
|
|
23
|
+
return (0, jsx_runtime_1.jsx)(DiscoverList_1.DiscoverList, { ...payload.props });
|
|
24
|
+
case "agreements":
|
|
25
|
+
return (0, jsx_runtime_1.jsx)(AgreementList_1.AgreementList, { ...payload.props });
|
|
26
|
+
case "workroom":
|
|
27
|
+
return (0, jsx_runtime_1.jsx)(WorkroomCard_1.WorkroomCard, { ...payload.props });
|
|
28
|
+
case "subscribe":
|
|
29
|
+
return (0, jsx_runtime_1.jsx)(SubscribeCard_1.SubscribeCard, { ...payload.props });
|
|
30
|
+
case "rounds":
|
|
31
|
+
return (0, jsx_runtime_1.jsx)(RoundsList_1.RoundsList, { ...payload.props });
|
|
32
|
+
case "squad":
|
|
33
|
+
return (0, jsx_runtime_1.jsx)(SquadCard_1.SquadCard, { ...payload.props });
|
|
34
|
+
case "squads":
|
|
35
|
+
return ((0, jsx_runtime_1.jsx)(ink_1.Box, { flexDirection: "column", children: payload.cards.map((card, i) => ((0, jsx_runtime_1.jsx)(ink_1.Box, { flexDirection: "column", marginBottom: 1, children: (0, jsx_runtime_1.jsx)(SquadCard_1.SquadCard, { ...card }) }, i))) }));
|
|
36
|
+
case "not_found":
|
|
37
|
+
case "error":
|
|
38
|
+
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { children: [(0, jsx_runtime_1.jsx)(ink_1.Text, { color: "yellow", children: "\u26A0 " }), (0, jsx_runtime_1.jsx)(ink_1.Text, { children: payload.message })] }));
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=KernelPayloadRenderer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"KernelPayloadRenderer.js","sourceRoot":"","sources":["../../src/tui/KernelPayloadRenderer.tsx"],"names":[],"mappings":";;AAoBA,sDAkDC;;AArED,6BAAgC;AAEhC,iEAA8D;AAC9D,qEAAkE;AAClE,uEAAoE;AACpE,qEAAkE;AAClE,uEAAoE;AACpE,iEAA8D;AAC9D,+DAA4D;AAM5D;;;;GAIG;AACH,SAAgB,qBAAqB,CAAC,EAAE,OAAO,EAA8B;IAC3E,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;QACrB,KAAK,QAAQ;YACX,OAAO,CACL,wBAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,uBAAC,uBAAU,OAAK,OAAO,CAAC,KAAK,GAAI,EAChC,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAClC,uBAAC,UAAI,IAAS,QAAQ,kBAAE,IAAI,IAAjB,CAAC,CAAwB,CACrC,CAAC,IACE,CACP,CAAC;QAEJ,KAAK,UAAU;YACb,OAAO,uBAAC,2BAAY,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE7C,KAAK,YAAY;YACf,OAAO,uBAAC,6BAAa,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE9C,KAAK,UAAU;YACb,OAAO,uBAAC,2BAAY,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE7C,KAAK,WAAW;YACd,OAAO,uBAAC,6BAAa,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE9C,KAAK,QAAQ;YACX,OAAO,uBAAC,uBAAU,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE3C,KAAK,OAAO;YACV,OAAO,uBAAC,qBAAS,OAAK,OAAO,CAAC,KAAK,GAAI,CAAC;QAE1C,KAAK,QAAQ;YACX,OAAO,CACL,uBAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,YACxB,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC9B,uBAAC,SAAG,IAAS,aAAa,EAAC,QAAQ,EAAC,YAAY,EAAE,CAAC,YACjD,uBAAC,qBAAS,OAAK,IAAI,GAAI,IADf,CAAC,CAEL,CACP,CAAC,GACE,CACP,CAAC;QAEJ,KAAK,WAAW,CAAC;QACjB,KAAK,OAAO;YACV,OAAO,CACL,wBAAC,SAAG,eACF,uBAAC,UAAI,IAAC,KAAK,EAAC,QAAQ,wBAAU,EAC9B,uBAAC,UAAI,cAAE,OAAO,CAAC,OAAO,GAAQ,IAC1B,CACP,CAAC;IACN,CAAC;AACH,CAAC"}
|
package/dist/tui/Viewport.d.ts
CHANGED
|
@@ -1,14 +1,24 @@
|
|
|
1
|
+
import type { KernelPayload } from "./kernel-payload";
|
|
2
|
+
export type ViewportEntry = string | KernelPayload;
|
|
1
3
|
interface ViewportProps {
|
|
2
|
-
lines:
|
|
4
|
+
lines: ViewportEntry[];
|
|
3
5
|
scrollOffset: number;
|
|
4
6
|
isAutoScroll: boolean;
|
|
7
|
+
/** Exact number of rows available for content, computed by App from measured layout. */
|
|
8
|
+
viewportHeight: number;
|
|
5
9
|
}
|
|
6
10
|
/**
|
|
7
11
|
* Scrollable output area that fills remaining terminal space.
|
|
8
|
-
* Renders
|
|
9
|
-
*
|
|
10
|
-
*
|
|
12
|
+
* Renders strings as Text lines and KernelPayloads as Phase 2 Ink components.
|
|
13
|
+
*
|
|
14
|
+
* NOTE: KernelPayload entries are treated as single logical blocks that always
|
|
15
|
+
* render fully — they are not sliced by the scroll window. Only string lines
|
|
16
|
+
* participate in the scroll window calculation. This keeps the Phase 2
|
|
17
|
+
* components rendering correctly while maintaining scroll for text output.
|
|
18
|
+
*
|
|
19
|
+
* For the viewport height calculation, each payload counts as 1 "slot" in
|
|
20
|
+
* the buffer but renders as a full component block.
|
|
11
21
|
*/
|
|
12
|
-
export declare function Viewport({ lines, scrollOffset, isAutoScroll }: ViewportProps): import("react/jsx-runtime").JSX.Element;
|
|
22
|
+
export declare function Viewport({ lines, scrollOffset, isAutoScroll, viewportHeight }: ViewportProps): import("react/jsx-runtime").JSX.Element;
|
|
13
23
|
export {};
|
|
14
24
|
//# sourceMappingURL=Viewport.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/tui/Viewport.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Viewport.d.ts","sourceRoot":"","sources":["../../src/tui/Viewport.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,aAAa,CAAC;AAEnD,UAAU,aAAa;IACrB,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,OAAO,CAAC;IACtB,wFAAwF;IACxF,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,aAAa,2CA2C5F"}
|
package/dist/tui/Viewport.js
CHANGED
|
@@ -3,46 +3,40 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.Viewport = Viewport;
|
|
4
4
|
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
5
5
|
const ink_1 = require("ink");
|
|
6
|
+
const KernelPayloadRenderer_1 = require("./KernelPayloadRenderer");
|
|
6
7
|
/**
|
|
7
8
|
* Scrollable output area that fills remaining terminal space.
|
|
8
|
-
* Renders
|
|
9
|
-
*
|
|
10
|
-
*
|
|
9
|
+
* Renders strings as Text lines and KernelPayloads as Phase 2 Ink components.
|
|
10
|
+
*
|
|
11
|
+
* NOTE: KernelPayload entries are treated as single logical blocks that always
|
|
12
|
+
* render fully — they are not sliced by the scroll window. Only string lines
|
|
13
|
+
* participate in the scroll window calculation. This keeps the Phase 2
|
|
14
|
+
* components rendering correctly while maintaining scroll for text output.
|
|
15
|
+
*
|
|
16
|
+
* For the viewport height calculation, each payload counts as 1 "slot" in
|
|
17
|
+
* the buffer but renders as a full component block.
|
|
11
18
|
*/
|
|
12
|
-
function Viewport({ lines, scrollOffset, isAutoScroll }) {
|
|
13
|
-
const { stdout } = (0, ink_1.useStdout)();
|
|
14
|
-
const termRows = stdout?.rows ?? 24;
|
|
15
|
-
// We'll compute the viewport height: total rows minus fixed areas
|
|
16
|
-
// Header is approximately bannerLines + separator (~14-16 rows)
|
|
17
|
-
// Footer is 1 row
|
|
18
|
-
// We'll use a reasonable estimate here; the parent App can pass exact height
|
|
19
|
-
const HEADER_ROWS = 15; // approximate
|
|
20
|
-
const FOOTER_ROWS = 1;
|
|
21
|
-
const viewportHeight = Math.max(1, termRows - HEADER_ROWS - FOOTER_ROWS);
|
|
22
|
-
// Compute the window slice
|
|
23
|
-
// scrollOffset=0 → show last viewportHeight lines
|
|
24
|
-
// scrollOffset=N → show lines ending viewportHeight+N from end
|
|
19
|
+
function Viewport({ lines, scrollOffset, isAutoScroll, viewportHeight }) {
|
|
25
20
|
const totalLines = lines.length;
|
|
26
21
|
let endIdx;
|
|
27
22
|
let startIdx;
|
|
28
23
|
if (scrollOffset === 0) {
|
|
29
|
-
// Auto-scroll: pinned to bottom
|
|
30
24
|
endIdx = totalLines;
|
|
31
25
|
startIdx = Math.max(0, endIdx - viewportHeight);
|
|
32
26
|
}
|
|
33
27
|
else {
|
|
34
|
-
// Scrolled up: scrollOffset lines from bottom
|
|
35
28
|
endIdx = Math.max(0, totalLines - scrollOffset);
|
|
36
29
|
startIdx = Math.max(0, endIdx - viewportHeight);
|
|
37
30
|
}
|
|
38
|
-
const
|
|
39
|
-
// Pad with empty
|
|
40
|
-
const
|
|
41
|
-
const
|
|
31
|
+
const visibleEntries = lines.slice(startIdx, endIdx);
|
|
32
|
+
// Pad with empty strings if fewer than viewportHeight string entries
|
|
33
|
+
const stringCount = visibleEntries.filter((e) => typeof e === "string").length;
|
|
34
|
+
const padCount = Math.max(0, viewportHeight - stringCount - (visibleEntries.length - stringCount));
|
|
35
|
+
const paddedEntries = [
|
|
42
36
|
...Array(padCount).fill(""),
|
|
43
|
-
...
|
|
37
|
+
...visibleEntries,
|
|
44
38
|
];
|
|
45
39
|
const canScrollDown = scrollOffset > 0;
|
|
46
|
-
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { flexDirection: "column", flexGrow: 1, children: [(0, jsx_runtime_1.jsx)(ink_1.Box, { flexDirection: "column", flexGrow: 1, children:
|
|
40
|
+
return ((0, jsx_runtime_1.jsxs)(ink_1.Box, { flexDirection: "column", flexGrow: 1, children: [(0, jsx_runtime_1.jsx)(ink_1.Box, { flexDirection: "column", flexGrow: 1, children: paddedEntries.map((entry, i) => typeof entry === "string" ? ((0, jsx_runtime_1.jsx)(ink_1.Text, { children: entry }, i)) : ((0, jsx_runtime_1.jsx)(KernelPayloadRenderer_1.KernelPayloadRenderer, { payload: entry }, i))) }), canScrollDown && !isAutoScroll && ((0, jsx_runtime_1.jsx)(ink_1.Box, { justifyContent: "flex-end", children: (0, jsx_runtime_1.jsx)(ink_1.Text, { dimColor: true, children: "\u2193 more" }) }))] }));
|
|
47
41
|
}
|
|
48
42
|
//# sourceMappingURL=Viewport.js.map
|
package/dist/tui/Viewport.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../src/tui/Viewport.tsx"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"Viewport.js","sourceRoot":"","sources":["../../src/tui/Viewport.tsx"],"names":[],"mappings":";;AA2BA,4BA2CC;;AArED,6BAAgC;AAEhC,mEAAgE;AAYhE;;;;;;;;;;;GAWG;AACH,SAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,cAAc,EAAiB;IAC3F,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC;IAChC,IAAI,MAAc,CAAC;IACnB,IAAI,QAAgB,CAAC;IAErB,IAAI,YAAY,KAAK,CAAC,EAAE,CAAC;QACvB,MAAM,GAAG,UAAU,CAAC;QACpB,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,UAAU,GAAG,YAAY,CAAC,CAAC;QAChD,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,cAAc,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAErD,qEAAqE;IACrE,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;IAC/E,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,GAAG,WAAW,GAAG,CAAC,cAAc,CAAC,MAAM,GAAG,WAAW,CAAC,CAAC,CAAC;IACnG,MAAM,aAAa,GAAoB;QACrC,GAAG,KAAK,CAAS,QAAQ,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;QACnC,GAAG,cAAc;KAClB,CAAC;IAEF,MAAM,aAAa,GAAG,YAAY,GAAG,CAAC,CAAC;IAEvC,OAAO,CACL,wBAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACrC,uBAAC,SAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACpC,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAC9B,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,CAC1B,uBAAC,UAAI,cAAU,KAAK,IAAT,CAAC,CAAgB,CAC7B,CAAC,CAAC,CAAC,CACF,uBAAC,6CAAqB,IAAS,OAAO,EAAE,KAAK,IAAjB,CAAC,CAAoB,CAClD,CACF,GACG,EACL,aAAa,IAAI,CAAC,YAAY,IAAI,CACjC,uBAAC,SAAG,IAAC,cAAc,EAAC,UAAU,YAC5B,uBAAC,UAAI,IAAC,QAAQ,kCAAc,GACxB,CACP,IACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare const BUILTIN_CMDS: readonly ["help", "exit", "quit", "clear"];
|
|
2
|
+
export declare const TUI_TOP_LEVEL_COMMANDS: readonly ["status", "discover", "agreements", "workroom", "subscription", "subscribe", "arena", "hire", "accept", "deliver", "verify", "cancel", "dispute", "negotiate", "trust", "compute", "wallet", "agent", "endpoint", "daemon", "setup", "doctor", "migrate", "chat", "feed", "watch", "job", "plan", "x402"];
|
|
3
|
+
export declare const TUI_SUBCOMMANDS: Record<string, string[]>;
|
|
4
|
+
export declare const TUI_HELP_SECTIONS: {
|
|
5
|
+
label: string;
|
|
6
|
+
commands: {
|
|
7
|
+
cmd: string;
|
|
8
|
+
desc: string;
|
|
9
|
+
}[];
|
|
10
|
+
}[];
|
|
11
|
+
//# sourceMappingURL=command-catalog.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-catalog.d.ts","sourceRoot":"","sources":["../../src/tui/command-catalog.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,4CAA6C,CAAC;AAGvE,eAAO,MAAM,sBAAsB,qTAmCzB,CAAC;AAGX,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAepD,CAAC;AAEF,eAAO,MAAM,iBAAiB;;;;;;GA2D7B,CAAC"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TUI_HELP_SECTIONS = exports.TUI_SUBCOMMANDS = exports.TUI_TOP_LEVEL_COMMANDS = exports.BUILTIN_CMDS = void 0;
|
|
4
|
+
exports.BUILTIN_CMDS = ["help", "exit", "quit", "clear"];
|
|
5
|
+
// Full TUI command surface — kernel-handled routes + legacy CLI adapter routes
|
|
6
|
+
exports.TUI_TOP_LEVEL_COMMANDS = [
|
|
7
|
+
// Kernel-extracted (Phase 2 Ink components)
|
|
8
|
+
"status",
|
|
9
|
+
"discover",
|
|
10
|
+
"agreements",
|
|
11
|
+
"workroom",
|
|
12
|
+
"subscription",
|
|
13
|
+
"subscribe",
|
|
14
|
+
"arena",
|
|
15
|
+
// Commerce write paths (legacy CLI adapter)
|
|
16
|
+
"hire",
|
|
17
|
+
"accept",
|
|
18
|
+
"deliver",
|
|
19
|
+
"verify",
|
|
20
|
+
"cancel",
|
|
21
|
+
"dispute",
|
|
22
|
+
"negotiate",
|
|
23
|
+
"trust",
|
|
24
|
+
// Compute
|
|
25
|
+
"compute",
|
|
26
|
+
// Wallet + identity
|
|
27
|
+
"wallet",
|
|
28
|
+
"agent",
|
|
29
|
+
"endpoint",
|
|
30
|
+
// Operator
|
|
31
|
+
"daemon",
|
|
32
|
+
"setup",
|
|
33
|
+
"doctor",
|
|
34
|
+
"migrate",
|
|
35
|
+
"chat",
|
|
36
|
+
"feed",
|
|
37
|
+
"watch",
|
|
38
|
+
"job",
|
|
39
|
+
"plan",
|
|
40
|
+
"x402",
|
|
41
|
+
];
|
|
42
|
+
// Subcommands for Tab completion
|
|
43
|
+
exports.TUI_SUBCOMMANDS = {
|
|
44
|
+
// Kernel routes
|
|
45
|
+
workroom: ["status", "start", "stop", "init", "logs", "worker", "policy-hash", "install-service"],
|
|
46
|
+
subscription: ["status", "list", "cancel", "topup"],
|
|
47
|
+
arena: ["rounds", "squad", "profile", "standings", "stats", "status", "inbox", "discover", "trending", "briefing", "newsletter"],
|
|
48
|
+
squad: ["list", "create", "join", "info", "contribute"],
|
|
49
|
+
// Legacy routes
|
|
50
|
+
compute: ["offer", "discover", "hire", "status", "end", "sessions"],
|
|
51
|
+
wallet: ["deploy", "status", "authorize-machine-key", "set-guardian", "freeze", "unfreeze", "set-spend-limits"],
|
|
52
|
+
agent: ["register", "update", "status", "info"],
|
|
53
|
+
endpoint: ["setup", "status", "doctor", "claim", "update"],
|
|
54
|
+
daemon: ["init", "start", "stop", "restart", "logs", "status", "config"],
|
|
55
|
+
negotiate: ["start", "status", "accept", "reject"],
|
|
56
|
+
job: ["files", "fetch", "manifest"],
|
|
57
|
+
plan: ["create", "list"],
|
|
58
|
+
};
|
|
59
|
+
exports.TUI_HELP_SECTIONS = [
|
|
60
|
+
{
|
|
61
|
+
label: "Status + Discovery",
|
|
62
|
+
commands: [
|
|
63
|
+
{ cmd: "status", desc: "Wallet · daemon · workroom overview" },
|
|
64
|
+
{ cmd: "discover", desc: "Find agents by capability, trust, price" },
|
|
65
|
+
{ cmd: "agreements", desc: "List active/past agreements" },
|
|
66
|
+
{ cmd: "workroom status", desc: "Workroom container + job queue" },
|
|
67
|
+
],
|
|
68
|
+
},
|
|
69
|
+
{
|
|
70
|
+
label: "Commerce",
|
|
71
|
+
commands: [
|
|
72
|
+
{ cmd: "hire <endpoint>", desc: "Propose a ServiceAgreement" },
|
|
73
|
+
{ cmd: "accept <id>", desc: "Accept an agreement as provider" },
|
|
74
|
+
{ cmd: "deliver <id>", desc: "Commit deliverable on-chain" },
|
|
75
|
+
{ cmd: "verify <id>", desc: "Release escrow after delivery" },
|
|
76
|
+
{ cmd: "cancel <id>", desc: "Cancel and refund escrow" },
|
|
77
|
+
{ cmd: "negotiate <endpoint>", desc: "Pre-hire negotiation session" },
|
|
78
|
+
],
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
label: "Subscriptions",
|
|
82
|
+
commands: [
|
|
83
|
+
{ cmd: "subscribe <endpoint>", desc: "Inspect + stage subscription" },
|
|
84
|
+
{ cmd: "subscription status <id>", desc: "Check subscription state" },
|
|
85
|
+
{ cmd: "subscription list", desc: "List active subscriptions" },
|
|
86
|
+
{ cmd: "plan create", desc: "Publish a subscription plan" },
|
|
87
|
+
],
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
label: "Compute",
|
|
91
|
+
commands: [
|
|
92
|
+
{ cmd: "compute hire <provider>", desc: "Rent GPU session" },
|
|
93
|
+
{ cmd: "compute status <id>", desc: "Session metrics + cost" },
|
|
94
|
+
{ cmd: "compute end <id>", desc: "End session + settle" },
|
|
95
|
+
{ cmd: "compute discover", desc: "Find GPU providers" },
|
|
96
|
+
],
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
label: "Arena",
|
|
100
|
+
commands: [
|
|
101
|
+
{ cmd: "arena rounds", desc: "Active prediction rounds" },
|
|
102
|
+
{ cmd: "arena squad list", desc: "Research squads" },
|
|
103
|
+
{ cmd: "arena standings", desc: "Leaderboard" },
|
|
104
|
+
{ cmd: "arena stats", desc: "Protocol stats" },
|
|
105
|
+
],
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
label: "Operator",
|
|
109
|
+
commands: [
|
|
110
|
+
{ cmd: "daemon start", desc: "Start local node" },
|
|
111
|
+
{ cmd: "chat", desc: "Commerce REPL (harness-agnostic)" },
|
|
112
|
+
{ cmd: "workroom start", desc: "Start workroom container" },
|
|
113
|
+
{ cmd: "watch", desc: "Live event stream from daemon" },
|
|
114
|
+
{ cmd: "doctor", desc: "System health check" },
|
|
115
|
+
{ cmd: "setup", desc: "Guided first-run setup" },
|
|
116
|
+
],
|
|
117
|
+
},
|
|
118
|
+
];
|
|
119
|
+
//# sourceMappingURL=command-catalog.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-catalog.js","sourceRoot":"","sources":["../../src/tui/command-catalog.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { ProfileCardProps } from "./components/commerce/ProfileCard";
|
|
2
|
+
import type { AgreementListProps } from "./components/commerce/AgreementList";
|
|
3
|
+
import type { ComputeCardProps } from "./components/commerce/ComputeCard";
|
|
4
|
+
import type { DiscoverListProps } from "./components/commerce/DiscoverList";
|
|
5
|
+
import type { HireCardProps } from "./components/commerce/HireCard";
|
|
6
|
+
import type { RoundsListProps } from "./components/commerce/RoundsList";
|
|
7
|
+
import type { SquadCardProps } from "./components/commerce/SquadCard";
|
|
8
|
+
import type { StatusCardProps } from "./components/commerce/StatusCard";
|
|
9
|
+
import type { SubscribeCardProps } from "./components/commerce/SubscribeCard";
|
|
10
|
+
import type { WorkroomCardProps } from "./components/commerce/WorkroomCard";
|
|
11
|
+
export declare function printStatusCard(props: StatusCardProps): Promise<void>;
|
|
12
|
+
export declare function printDiscoverList(props: DiscoverListProps): Promise<void>;
|
|
13
|
+
export declare function printHireCard(props: HireCardProps): Promise<void>;
|
|
14
|
+
export declare function printAgreementList(props: AgreementListProps): Promise<void>;
|
|
15
|
+
export declare function printComputeCard(props: ComputeCardProps): Promise<void>;
|
|
16
|
+
export declare function printSubscribeCard(props: SubscribeCardProps): Promise<void>;
|
|
17
|
+
export declare function printRoundsList(props: RoundsListProps): Promise<void>;
|
|
18
|
+
export declare function printSquadCard(props: SquadCardProps): Promise<void>;
|
|
19
|
+
export interface StandingsEntry {
|
|
20
|
+
rank: number;
|
|
21
|
+
agent: string;
|
|
22
|
+
wins: number;
|
|
23
|
+
losses: number;
|
|
24
|
+
netUsdc: string;
|
|
25
|
+
}
|
|
26
|
+
export interface StandingsProps {
|
|
27
|
+
entries: StandingsEntry[];
|
|
28
|
+
title?: string;
|
|
29
|
+
}
|
|
30
|
+
export declare function printProfileCard(props: ProfileCardProps): Promise<void>;
|
|
31
|
+
export declare function printStandings(props: StandingsProps): Promise<void>;
|
|
32
|
+
export declare function printWorkroomCard(props: WorkroomCardProps): Promise<void>;
|
|
33
|
+
//# sourceMappingURL=command-renderers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-renderers.d.ts","sourceRoot":"","sources":["../../src/tui/command-renderers.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAgC5E,wBAAsB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA8B3E;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgB/E;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAcvE;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBjF;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAc7E;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAcjF;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAiB3E;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAiBzE;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,cAAc,EAAE,CAAC;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,wBAAsB,gBAAgB,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB7E;AAED,wBAAsB,cAAc,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAUzE;AAED,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAY/E"}
|