joonecli 0.2.4 → 0.2.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -2
- package/dist/cli/index.js +11 -62
- package/dist/cli/index.js.map +1 -1
- package/dist/desktop/cliEntry.d.ts +1 -0
- package/dist/desktop/cliEntry.js +18 -0
- package/dist/desktop/cliEntry.js.map +1 -0
- package/dist/desktop/devServer.d.ts +1 -0
- package/dist/desktop/devServer.js +12 -0
- package/dist/desktop/devServer.js.map +1 -0
- package/dist/desktop/ipc.d.ts +14 -0
- package/dist/desktop/ipc.js +46 -0
- package/dist/desktop/ipc.js.map +1 -0
- package/dist/desktop/npmCli.d.ts +1 -0
- package/dist/desktop/npmCli.js +18 -0
- package/dist/desktop/npmCli.js.map +1 -0
- package/dist/desktop/providerCatalog.d.ts +11 -0
- package/dist/desktop/providerCatalog.js +64 -0
- package/dist/desktop/providerCatalog.js.map +1 -0
- package/dist/desktop/pruneReleaseAssets.d.ts +10 -0
- package/dist/desktop/pruneReleaseAssets.js +48 -0
- package/dist/desktop/pruneReleaseAssets.js.map +1 -0
- package/dist/desktop/publishReleaseAssets.d.ts +12 -0
- package/dist/desktop/publishReleaseAssets.js +49 -0
- package/dist/desktop/publishReleaseAssets.js.map +1 -0
- package/dist/desktop/releaseMetadata.d.ts +12 -0
- package/dist/desktop/releaseMetadata.js +54 -0
- package/dist/desktop/releaseMetadata.js.map +1 -0
- package/dist/desktop/server.d.ts +22 -0
- package/dist/desktop/server.js +100 -0
- package/dist/desktop/server.js.map +1 -0
- package/dist/desktop/smokeTestBundles.d.ts +10 -0
- package/dist/desktop/smokeTestBundles.js +108 -0
- package/dist/desktop/smokeTestBundles.js.map +1 -0
- package/dist/desktop/validateBundles.d.ts +8 -0
- package/dist/desktop/validateBundles.js +52 -0
- package/dist/desktop/validateBundles.js.map +1 -0
- package/dist/desktop/webDev.d.ts +1 -0
- package/dist/desktop/webDev.js +32 -0
- package/dist/desktop/webDev.js.map +1 -0
- package/dist/runtime/service.d.ts +44 -0
- package/dist/runtime/service.js +416 -0
- package/dist/runtime/service.js.map +1 -0
- package/dist/runtime/types.d.ts +110 -0
- package/dist/runtime/types.js +2 -0
- package/dist/runtime/types.js.map +1 -0
- package/dist/ui/App.d.ts +2 -0
- package/dist/ui/App.js +176 -29
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/components/HITLPrompt.d.ts +1 -0
- package/dist/ui/components/HITLPrompt.js +3 -3
- package/dist/ui/components/HITLPrompt.js.map +1 -1
- package/dist/ui/components/ToolCallPanel.d.ts +0 -5
- package/dist/ui/components/ToolCallPanel.js +33 -11
- package/dist/ui/components/ToolCallPanel.js.map +1 -1
- package/dist/ui/components/WorkflowTodoPanel.d.ts +13 -0
- package/dist/ui/components/WorkflowTodoPanel.js +35 -0
- package/dist/ui/components/WorkflowTodoPanel.js.map +1 -0
- package/package.json +12 -1
package/dist/ui/App.js
CHANGED
|
@@ -9,11 +9,12 @@ import { StreamingText } from "./components/StreamingText.js";
|
|
|
9
9
|
import { ToolCallPanel } from "./components/ToolCallPanel.js";
|
|
10
10
|
import { HITLPrompt } from "./components/HITLPrompt.js";
|
|
11
11
|
import { FileBrowser } from "./components/FileBrowser.js";
|
|
12
|
+
import { WorkflowTodoPanel, } from "./components/WorkflowTodoPanel.js";
|
|
12
13
|
import { countMessageTokens } from "../core/tokenCounter.js";
|
|
13
14
|
import { getProviderContextLimit } from "../core/contextGuard.js";
|
|
14
15
|
import { HITLBridge, } from "../hitl/bridge.js";
|
|
15
16
|
import { createDefaultRegistry } from "../commands/builtinCommands.js";
|
|
16
|
-
export const App = ({ provider, model, streaming, createHarness, initialState, maxTokens, benchmarkStartup = false, onStartupBenchmarkMark, onStartupBenchmarkComplete, }) => {
|
|
17
|
+
export const App = ({ provider, model, streaming, createHarness, initialState, maxTokens, onStateChange, benchmarkStartup = false, onStartupBenchmarkMark, onStartupBenchmarkComplete, }) => {
|
|
17
18
|
const { exit } = useApp();
|
|
18
19
|
const contextTokensLimit = useMemo(() => getProviderContextLimit(provider, model), [provider, model]);
|
|
19
20
|
// Slash Command Registry — initialized once, stable across renders
|
|
@@ -28,27 +29,41 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
28
29
|
const [streamingTokens, setStreamingTokens] = useState([]);
|
|
29
30
|
const [isStreaming, setIsStreaming] = useState(false);
|
|
30
31
|
const [activeToolCall, setActiveToolCall] = useState(null);
|
|
32
|
+
const [recentToolCalls, setRecentToolCalls] = useState([]);
|
|
33
|
+
const [workflowTodos, setWorkflowTodos] = useState([]);
|
|
34
|
+
const toolRunCounterRef = React.useRef(0);
|
|
31
35
|
// Core Engine State
|
|
32
36
|
const [contextState, setContextState] = useState(initialState);
|
|
33
37
|
const [harness, setHarness] = useState(null);
|
|
34
38
|
const [isInitializingHarness, setIsInitializingHarness] = useState(false);
|
|
35
39
|
const harnessPromiseRef = React.useRef(null);
|
|
36
40
|
// HITL State
|
|
37
|
-
const [
|
|
38
|
-
const [hitlPermission, setHitlPermission] = useState(undefined);
|
|
41
|
+
const [pendingHitlPrompts, setPendingHitlPrompts] = useState([]);
|
|
39
42
|
// Listen for HITL events from the bridge
|
|
40
43
|
useEffect(() => {
|
|
41
44
|
const bridge = HITLBridge.getInstance();
|
|
42
|
-
const onQuestion = (
|
|
43
|
-
|
|
45
|
+
const onQuestion = (question) => {
|
|
46
|
+
setPendingHitlPrompts((prev) => [
|
|
47
|
+
...prev,
|
|
48
|
+
{ id: question.id, type: "question", question },
|
|
49
|
+
]);
|
|
50
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "tools", "blocked", "Waiting for your answer before continuing."));
|
|
51
|
+
};
|
|
52
|
+
const onPermission = (permission) => {
|
|
53
|
+
setPendingHitlPrompts((prev) => [
|
|
54
|
+
...prev,
|
|
55
|
+
{ id: permission.id, type: "permission", permission },
|
|
56
|
+
]);
|
|
57
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "tools", "blocked", `Waiting for approval to run ${permission.toolName}.`));
|
|
58
|
+
};
|
|
44
59
|
bridge.on("question", onQuestion);
|
|
45
60
|
bridge.on("permission", onPermission);
|
|
46
61
|
// Clear prompts when resolved
|
|
47
62
|
const origResolve = bridge.resolveAnswer.bind(bridge);
|
|
48
63
|
bridge.resolveAnswer = (id, answer) => {
|
|
49
64
|
origResolve(id, answer);
|
|
50
|
-
|
|
51
|
-
|
|
65
|
+
setPendingHitlPrompts((prev) => prev.filter((prompt) => prompt.id !== id));
|
|
66
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "tools", "active", "Continuing after your input."));
|
|
52
67
|
};
|
|
53
68
|
return () => {
|
|
54
69
|
bridge.off("question", onQuestion);
|
|
@@ -61,17 +76,14 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
61
76
|
return;
|
|
62
77
|
}
|
|
63
78
|
const handleEvent = (event) => {
|
|
64
|
-
//
|
|
65
|
-
if (event.type === "agent:stream"
|
|
79
|
+
// Streaming tokens and tool calls have dedicated UI panels.
|
|
80
|
+
if (event.type === "agent:stream" ||
|
|
81
|
+
event.type === "tool:start" ||
|
|
82
|
+
event.type === "tool:end") {
|
|
66
83
|
return;
|
|
84
|
+
}
|
|
67
85
|
let content = "";
|
|
68
86
|
switch (event.type) {
|
|
69
|
-
case "tool:start":
|
|
70
|
-
content = `[Tool] Starting ${event.toolName}`;
|
|
71
|
-
break;
|
|
72
|
-
case "tool:end":
|
|
73
|
-
content = `[Tool] ${event.toolName} completed in ${event.durationMs}ms`;
|
|
74
|
-
break;
|
|
75
87
|
case "subagent:spawn":
|
|
76
88
|
content = `[SubAgent] Spawning '${event.agentName}'`;
|
|
77
89
|
break;
|
|
@@ -119,7 +131,8 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
119
131
|
const stateRef = React.useRef(contextState);
|
|
120
132
|
useEffect(() => {
|
|
121
133
|
stateRef.current = contextState;
|
|
122
|
-
|
|
134
|
+
onStateChange?.(contextState);
|
|
135
|
+
}, [contextState, onStateChange]);
|
|
123
136
|
const performGracefulExit = async () => {
|
|
124
137
|
try {
|
|
125
138
|
if (harness) {
|
|
@@ -216,6 +229,7 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
216
229
|
if (event.event === "on_chat_model_stream" &&
|
|
217
230
|
event.data?.chunk?.content) {
|
|
218
231
|
setStreamingTokens((prev) => [...prev, event.data.chunk.content]);
|
|
232
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "response", "active", "Drafting the reply."));
|
|
219
233
|
}
|
|
220
234
|
else if (event.event === "on_chat_model_end") {
|
|
221
235
|
const content = event.data.output?.content;
|
|
@@ -225,20 +239,27 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
225
239
|
}
|
|
226
240
|
}
|
|
227
241
|
else if (event.event === "on_tool_start") {
|
|
228
|
-
|
|
242
|
+
const toolCall = {
|
|
243
|
+
id: `${event.name}-${toolRunCounterRef.current++}`,
|
|
229
244
|
name: event.name,
|
|
230
245
|
args: event.data.input,
|
|
231
246
|
status: "running",
|
|
232
|
-
}
|
|
247
|
+
};
|
|
248
|
+
setActiveToolCall(toolCall);
|
|
249
|
+
setRecentToolCalls((prev) => [toolCall, ...prev].slice(0, 4));
|
|
250
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "tools", "active", `Running ${event.name}.`));
|
|
233
251
|
}
|
|
234
252
|
else if (event.event === "on_tool_end") {
|
|
235
|
-
|
|
236
|
-
setActiveToolCall(
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
253
|
+
const toolResult = summarizeToolResult(event.data.output);
|
|
254
|
+
setActiveToolCall((prev) => prev
|
|
255
|
+
? {
|
|
256
|
+
...prev,
|
|
257
|
+
status: "success",
|
|
258
|
+
result: toolResult,
|
|
259
|
+
}
|
|
260
|
+
: null);
|
|
261
|
+
setRecentToolCalls((prev) => finalizeRecentToolCalls(prev, event.name, event.data.input, toolResult));
|
|
262
|
+
setWorkflowTodos((prev) => updateWorkflowTodo(prev, "tools", "done", `${event.name} completed.`));
|
|
242
263
|
await new Promise((resolve) => setTimeout(resolve, 800));
|
|
243
264
|
setActiveToolCall(null);
|
|
244
265
|
}
|
|
@@ -278,12 +299,23 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
278
299
|
nextHistory = finalState.messages;
|
|
279
300
|
}
|
|
280
301
|
setContextState({ ...currentState, conversationHistory: nextHistory });
|
|
302
|
+
setWorkflowTodos((prev) => completeWorkflowTodos(prev));
|
|
281
303
|
setIsProcessing(false);
|
|
282
304
|
setIsStreaming(false);
|
|
283
305
|
}
|
|
284
306
|
catch (error) {
|
|
285
307
|
setIsStreaming(false);
|
|
286
|
-
setActiveToolCall(
|
|
308
|
+
setActiveToolCall((prev) => prev
|
|
309
|
+
? {
|
|
310
|
+
...prev,
|
|
311
|
+
status: "error",
|
|
312
|
+
result: error.message,
|
|
313
|
+
}
|
|
314
|
+
: null);
|
|
315
|
+
setRecentToolCalls((prev) => failRecentToolCalls(prev, error.message));
|
|
316
|
+
setWorkflowTodos((prev) => prev.map((todo) => todo.state === "done"
|
|
317
|
+
? todo
|
|
318
|
+
: { ...todo, state: "blocked", note: error.message }));
|
|
287
319
|
setIsProcessing(false);
|
|
288
320
|
setMessages((prev) => [
|
|
289
321
|
...prev,
|
|
@@ -350,6 +382,7 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
350
382
|
setIsProcessing(true);
|
|
351
383
|
// 1. Update UI
|
|
352
384
|
setMessages((prev) => [...prev, { role: "user", content: userText }]);
|
|
385
|
+
setWorkflowTodos(createWorkflowTodos(userText));
|
|
353
386
|
// 2. Update Engine State
|
|
354
387
|
const { HumanMessage } = await import("@langchain/core/messages");
|
|
355
388
|
const humanMsg = new HumanMessage(userText);
|
|
@@ -386,10 +419,124 @@ export const App = ({ provider, model, streaming, createHarness, initialState, m
|
|
|
386
419
|
totalCost: 0,
|
|
387
420
|
};
|
|
388
421
|
const contextTokens = countMessageTokens(contextState.conversationHistory);
|
|
389
|
-
|
|
422
|
+
const activeHitlPrompt = pendingHitlPrompts[0];
|
|
423
|
+
const activeHitlQuestion = activeHitlPrompt?.type === "question" ? activeHitlPrompt.question : undefined;
|
|
424
|
+
const activeHitlPermission = activeHitlPrompt?.type === "permission"
|
|
425
|
+
? activeHitlPrompt.permission
|
|
426
|
+
: undefined;
|
|
427
|
+
const hasActiveHitlPrompt = Boolean(activeHitlPrompt);
|
|
428
|
+
return (_jsxs(Box, { flexDirection: "column", minHeight: 15, children: [_jsx(Header, { provider: provider, model: model, streaming: streaming }), _jsxs(Box, { flexDirection: "row", flexGrow: 1, width: "100%", children: [_jsxs(Box, { flexDirection: "column", width: "65%", paddingRight: 1, children: [_jsx(Box, { flexDirection: "column", paddingY: 1, children: _jsx(Static, { items: messages, children: (msg, i) => (_jsx(MessageBubble, { role: msg.role, content: msg.content }, i)) }) }), workflowTodos.length > 0 && (_jsx(Box, { paddingX: 1, children: _jsx(WorkflowTodoPanel, { todos: workflowTodos }) })), isStreaming && (_jsx(Box, { paddingX: 1, marginBottom: 1, children: _jsx(Box, { marginLeft: 2, children: _jsx(StreamingText, { tokens: streamingTokens, isStreaming: isStreaming }) }) })), activeToolCall && (_jsx(Box, { paddingX: 1, marginBottom: 1, children: _jsx(ToolCallPanel, { toolName: activeToolCall.name, args: activeToolCall.args, status: activeToolCall.status, result: activeToolCall.result }) })), !activeToolCall && recentToolCalls.length > 0 && (_jsx(Box, { flexDirection: "column", paddingX: 1, marginBottom: 1, children: recentToolCalls.map((toolCall) => (_jsx(ToolCallPanel, { toolName: toolCall.name, args: toolCall.args, status: toolCall.status, result: toolCall.result }, toolCall.id))) })), hasActiveHitlPrompt && (_jsx(HITLPrompt, { question: activeHitlQuestion, permission: activeHitlPermission, pendingCount: Math.max(pendingHitlPrompts.length - 1, 0) })), !benchmarkStartup && !isProcessing && !hasActiveHitlPrompt && (_jsxs(Box, { paddingX: 1, marginBottom: 1, children: [_jsx(Box, { marginRight: 1, children: _jsx(Text, { color: "green", bold: true, children: "\u276F" }) }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: "What should we build today?" })] })), isProcessing &&
|
|
390
429
|
!isStreaming &&
|
|
391
430
|
!activeToolCall &&
|
|
392
|
-
!
|
|
393
|
-
!hitlPermission && (_jsx(Box, { paddingX: 1, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: isInitializingHarness ? "Initializing agent..." : "Thinking..." }) }))] }), _jsxs(Box, { flexDirection: "column", width: "35%", paddingLeft: 1, children: [_jsx(StatusBar, { contextTokens: contextTokens, maxContextTokens: contextTokensLimit, totalTokens: summary.totalTokens, cacheHitRate: summary.cacheHitRate, toolCalls: summary.toolCallCount, turns: summary.turnCount, cost: summary.totalCost, elapsed: elapsed }), _jsx(Box, { marginTop: 1, children: _jsx(FileBrowser, {}) })] })] })] }));
|
|
431
|
+
!hasActiveHitlPrompt && (_jsx(Box, { paddingX: 1, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: isInitializingHarness ? "Initializing agent..." : "Thinking..." }) }))] }), _jsxs(Box, { flexDirection: "column", width: "35%", paddingLeft: 1, children: [_jsx(StatusBar, { contextTokens: contextTokens, maxContextTokens: contextTokensLimit, totalTokens: summary.totalTokens, cacheHitRate: summary.cacheHitRate, toolCalls: summary.toolCallCount, turns: summary.turnCount, cost: summary.totalCost, elapsed: elapsed }), _jsx(Box, { marginTop: 1, children: _jsx(FileBrowser, {}) })] })] })] }));
|
|
394
432
|
};
|
|
433
|
+
function createWorkflowTodos(query) {
|
|
434
|
+
return [
|
|
435
|
+
{
|
|
436
|
+
id: "request",
|
|
437
|
+
label: "Understand the request",
|
|
438
|
+
note: summarizeText(query, 88),
|
|
439
|
+
state: "done",
|
|
440
|
+
},
|
|
441
|
+
{
|
|
442
|
+
id: "tools",
|
|
443
|
+
label: "Inspect files and run tools",
|
|
444
|
+
note: "Waiting for the next action.",
|
|
445
|
+
state: "active",
|
|
446
|
+
},
|
|
447
|
+
{
|
|
448
|
+
id: "response",
|
|
449
|
+
label: "Draft the response",
|
|
450
|
+
note: "Will start once enough context is gathered.",
|
|
451
|
+
state: "pending",
|
|
452
|
+
},
|
|
453
|
+
];
|
|
454
|
+
}
|
|
455
|
+
function updateWorkflowTodo(todos, id, state, note) {
|
|
456
|
+
return todos.map((todo) => (todo.id === id ? { ...todo, state, note } : todo));
|
|
457
|
+
}
|
|
458
|
+
function completeWorkflowTodos(todos) {
|
|
459
|
+
const hadToolActivity = todos.some((todo) => todo.id === "tools" && todo.note !== "Waiting for the next action.");
|
|
460
|
+
return todos.map((todo) => {
|
|
461
|
+
if (todo.id === "tools") {
|
|
462
|
+
return {
|
|
463
|
+
...todo,
|
|
464
|
+
state: "done",
|
|
465
|
+
note: hadToolActivity
|
|
466
|
+
? "Tool work finished successfully."
|
|
467
|
+
: "No tool calls were needed for this reply.",
|
|
468
|
+
};
|
|
469
|
+
}
|
|
470
|
+
if (todo.id === "response") {
|
|
471
|
+
return {
|
|
472
|
+
...todo,
|
|
473
|
+
state: "done",
|
|
474
|
+
note: "Reply delivered to the conversation.",
|
|
475
|
+
};
|
|
476
|
+
}
|
|
477
|
+
return { ...todo, state: "done" };
|
|
478
|
+
});
|
|
479
|
+
}
|
|
480
|
+
function finalizeRecentToolCalls(toolCalls, toolName, args, result) {
|
|
481
|
+
let updated = false;
|
|
482
|
+
const next = toolCalls.map((toolCall) => {
|
|
483
|
+
if (!updated && toolCall.name === toolName && toolCall.status === "running") {
|
|
484
|
+
updated = true;
|
|
485
|
+
const nextToolCall = {
|
|
486
|
+
...toolCall,
|
|
487
|
+
args,
|
|
488
|
+
status: "success",
|
|
489
|
+
result,
|
|
490
|
+
};
|
|
491
|
+
return nextToolCall;
|
|
492
|
+
}
|
|
493
|
+
return toolCall;
|
|
494
|
+
});
|
|
495
|
+
if (updated) {
|
|
496
|
+
return next;
|
|
497
|
+
}
|
|
498
|
+
const completedTool = {
|
|
499
|
+
id: `${toolName}-${Date.now()}`,
|
|
500
|
+
name: toolName,
|
|
501
|
+
args,
|
|
502
|
+
status: "success",
|
|
503
|
+
result,
|
|
504
|
+
};
|
|
505
|
+
return [completedTool, ...toolCalls].slice(0, 4);
|
|
506
|
+
}
|
|
507
|
+
function failRecentToolCalls(toolCalls, errorMessage) {
|
|
508
|
+
let updated = false;
|
|
509
|
+
return toolCalls.map((toolCall) => {
|
|
510
|
+
if (!updated && toolCall.status === "running") {
|
|
511
|
+
updated = true;
|
|
512
|
+
return {
|
|
513
|
+
...toolCall,
|
|
514
|
+
status: "error",
|
|
515
|
+
result: errorMessage,
|
|
516
|
+
};
|
|
517
|
+
}
|
|
518
|
+
return toolCall;
|
|
519
|
+
});
|
|
520
|
+
}
|
|
521
|
+
function summarizeToolResult(value) {
|
|
522
|
+
if (typeof value === "string") {
|
|
523
|
+
return summarizeText(value, 180);
|
|
524
|
+
}
|
|
525
|
+
if (value == null) {
|
|
526
|
+
return "Tool execution completed.";
|
|
527
|
+
}
|
|
528
|
+
try {
|
|
529
|
+
return summarizeText(JSON.stringify(value), 180);
|
|
530
|
+
}
|
|
531
|
+
catch {
|
|
532
|
+
return summarizeText(String(value), 180);
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
function summarizeText(value, limit) {
|
|
536
|
+
const normalized = value.replace(/\s+/g, " ").trim();
|
|
537
|
+
if (normalized.length <= limit) {
|
|
538
|
+
return normalized;
|
|
539
|
+
}
|
|
540
|
+
return `${normalized.slice(0, limit - 3)}...`;
|
|
541
|
+
}
|
|
395
542
|
//# sourceMappingURL=App.js.map
|
package/dist/ui/App.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/ui/App.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,CAAC;AAC1D,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAChD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAkB,MAAM,+BAA+B,CAAC;AAC9E,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAG1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EACL,UAAU,GAGX,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AA2BvE,MAAM,CAAC,MAAM,GAAG,GAAuB,CAAC,EACtC,QAAQ,EACR,KAAK,EACL,SAAS,EACT,aAAa,EACb,YAAY,EACZ,SAAS,EACT,gBAAgB,GAAG,KAAK,EACxB,sBAAsB,EACtB,0BAA0B,GAC3B,EAAE,EAAE;IACH,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,EAAE,CAAC;IAE1B,MAAM,kBAAkB,GAAG,OAAO,CAChC,GAAG,EAAE,CAAC,uBAAuB,CAAC,QAAQ,EAAE,KAAK,CAAC,EAC9C,CAAC,QAAQ,EAAE,KAAK,CAAC,CAClB,CAAC;IAEF,mEAAmE;IACnE,MAAM,eAAe,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC,qBAAqB,EAAE,EAAE,EAAE,CAAC,CAAC;IAEnE,WAAW;IACX,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAY;QAClD,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,2CAA2C,EAAE;KACzE,CAAC,CAAC;IACH,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IACjD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAExD,yBAAyB;IACzB,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,QAAQ,CAAW,EAAE,CAAC,CAAC;IACrE,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAClD,IAAI,CACL,CAAC;IAEF,oBAAoB;IACpB,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAe,YAAY,CAAC,CAAC;IAC7E,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAA0B,IAAI,CAAC,CAAC;IACtE,MAAM,CAAC,qBAAqB,EAAE,wBAAwB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1E,MAAM,iBAAiB,GAAG,KAAK,CAAC,MAAM,CAAmC,IAAI,CAAC,CAAC;IAE/E,aAAa;IACb,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAC9C,SAAS,CACV,CAAC;IACF,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAG,QAAQ,CAElD,SAAS,CAAC,CAAC;IAEb,yCAAyC;IACzC,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAExC,MAAM,UAAU,GAAG,CAAC,CAAe,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC3D,MAAM,YAAY,GAAG,CAAC,CAAwB,EAAE,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAExE,MAAM,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAClC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QAEtC,8BAA8B;QAC9B,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtD,MAAM,CAAC,aAAa,GAAG,CAAC,EAAU,EAAE,MAAc,EAAE,EAAE;YACpD,WAAW,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACxB,eAAe,CAAC,SAAS,CAAC,CAAC;YAC3B,iBAAiB,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,GAAG,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;YACnC,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC;QACzC,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,uDAAuD;IACvD,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,KAAiB,EAAE,EAAE;YACxC,sDAAsD;YACtD,IAAI,KAAK,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO;YAE1C,IAAI,OAAO,GAAG,EAAE,CAAC;YACjB,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;gBACnB,KAAK,YAAY;oBACf,OAAO,GAAG,mBAAmB,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAC9C,MAAM;gBACR,KAAK,UAAU;oBACb,OAAO,GAAG,UAAU,KAAK,CAAC,QAAQ,iBAAiB,KAAK,CAAC,UAAU,IAAI,CAAC;oBACxE,MAAM;gBACR,KAAK,gBAAgB;oBACnB,OAAO,GAAG,wBAAwB,KAAK,CAAC,SAAS,GAAG,CAAC;oBACrD,MAAM;gBACR,KAAK,SAAS;oBACZ,OAAO,GAAG,UAAU,KAAK,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;oBACvF,MAAM;gBACR,KAAK,oBAAoB;oBACvB,OAAO,GAAG,UAAU,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;oBACvE,MAAM;gBACR,KAAK,aAAa;oBAChB,OAAO,GAAG,2BAA2B,KAAK,CAAC,GAAG,EAAE,CAAC;oBACjD,MAAM;gBACR,KAAK,aAAa;oBAChB,OAAO,GAAG,8BAA8B,CAAC;oBACzC,MAAM;gBACR;oBACE,OAAO,GAAG,yBAA0B,KAAa,CAAC,IAAI,EAAE,CAAC;YAC7D,CAAC;YAED,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QAChE,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACvC,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QAC1C,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,oBAAoB;IACpB,MAAM,CAAC,SAAS,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IACzC,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE7C,sBAAsB;IACtB,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;YAC5D,IAAI,OAAO,GAAG,EAAE,EAAE,CAAC;gBACjB,UAAU,CAAC,GAAG,OAAO,GAAG,CAAC,CAAC;YAC5B,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,OAAO,GAAG,EAAE,CAAC;gBAC1B,UAAU,CAAC,GAAG,IAAI,KAAK,IAAI,GAAG,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,EAAE,IAAI,CAAC,CAAC;QACT,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACvC,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,iEAAiE;IACjE,MAAM,QAAQ,GAAG,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC5C,SAAS,CAAC,GAAG,EAAE;QACb,QAAQ,CAAC,OAAO,GAAG,YAAY,CAAC;IAClC,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;IAEnB,MAAM,mBAAmB,GAAG,KAAK,IAAI,EAAE;QACrC,IAAI,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,MAAM,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC/B,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE;oBAC3B,KAAK,EAAE,QAAQ,CAAC,OAAO;iBACxB,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,4BAA4B;QAC9B,CAAC;gBAAS,CAAC;YACT,IAAI,EAAE,CAAC;QACT,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,MAAM,YAAY,GAAG,GAAG,EAAE;YACxB,mBAAmB,EAAE,CAAC;QACxB,CAAC,CAAC;QAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QACnC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QAEpC,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;YACpC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACvC,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;IAErC,2BAA2B;IAC3B,QAAQ,CACN,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACb,IAAI,GAAG,CAAC,IAAI,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAC9B,mBAAmB,EAAE,CAAC;QACxB,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,CAAC,gBAAgB,EAAE,CAChC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAK,IAA+B,EAAE;QAC1D,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,CAAC;YAC/B,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAC/B,iBAAiB,CAAC,OAAO,GAAG,aAAa,EAAE;iBACxC,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE;gBACvB,UAAU,CAAC,cAAc,CAAC,CAAC;gBAC3B,OAAO,cAAc,CAAC;YACxB,CAAC,CAAC;iBACD,OAAO,CAAC,GAAG,EAAE;gBACZ,wBAAwB,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC,CAAC,CAAC;QACP,CAAC;QAED,OAAO,iBAAiB,CAAC,OAAO,CAAC;IACnC,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,OAAO;QACT,CAAC;QAED,IAAI,SAAS,GAAG,KAAK,CAAC;QAEtB,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE;YAC9B,IAAI,CAAC;gBACH,sBAAsB,EAAE,CAAC,gBAAgB,CAAC,CAAC;gBAC3C,MAAM,aAAa,EAAE,CAAC;gBAEtB,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO;gBACT,CAAC;gBAED,sBAAsB,EAAE,CAAC,uBAAuB,CAAC,CAAC;gBAClD,0BAA0B,EAAE,EAAE,CAAC;gBAC/B,eAAe,EAAE,CAAC;YACpB,CAAC;YAAC,OAAO,KAAU,EAAE,CAAC;gBACpB,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO;gBACT,CAAC;gBAED,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACpB,GAAG,IAAI;oBACP,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,oBAAoB,KAAK,CAAC,OAAO,EAAE,EAAE;iBACjE,CAAC,CAAC;gBACH,eAAe,EAAE,CAAC;YACpB,CAAC;QACH,CAAC,CAAC;QAEF,YAAY,EAAE,CAAC;QAEf,OAAO,GAAG,EAAE;YACV,SAAS,GAAG,IAAI,CAAC;QACnB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,MAAM,YAAY,GAAG,KAAK,EACxB,YAA0B,EAC1B,aAA+B,EAC/B,aAAuB,EACvB,EAAE;QACF,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,eAAe,CAAC,IAAI,CAAC,CAAC;gBACtB,cAAc,CAAC,IAAI,CAAC,CAAC;gBACrB,kBAAkB,CAAC,EAAE,CAAC,CAAC;YACzB,CAAC;YAED,MAAM,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,YAAY,EAAE,aAAoB,CAAC,CAAC;YACrE,IAAI,WAAW,GAAG,CAAC,GAAG,YAAY,CAAC,mBAAmB,CAAC,CAAC;YACxD,IAAI,UAAU,GAAQ,IAAI,CAAC;YAE3B,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBACjC,IACE,KAAK,CAAC,KAAK,KAAK,sBAAsB;oBACtC,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,EAC1B,CAAC;oBACD,kBAAkB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBACpE,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,KAAK,mBAAmB,EAAE,CAAC;oBAC/C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC;oBAC3C,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;wBAC3C,cAAc,CAAC,KAAK,CAAC,CAAC;wBACtB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;oBAC/D,CAAC;gBACH,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,KAAK,eAAe,EAAE,CAAC;oBAC3C,iBAAiB,CAAC;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;wBACtB,MAAM,EAAE,SAAS;qBAClB,CAAC,CAAC;gBACL,CAAC;qBAAM,IAAI,KAAK,CAAC,KAAK,KAAK,aAAa,EAAE,CAAC;oBACzC,iFAAiF;oBACjF,iBAAiB,CAAC;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI;wBAChB,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK;wBACtB,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,2BAA2B;qBACpC,CAAC,CAAC;oBACH,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;oBACzD,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;qBAAM,IACL,KAAK,CAAC,KAAK,KAAK,cAAc;oBAC9B,KAAK,CAAC,IAAI,KAAK,WAAW,EAC1B,CAAC;oBACD,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;gBACjC,CAAC;YACH,CAAC;YAED,2CAA2C;YAC3C,2CAA2C;YAC3C,MAAM,QAAQ,GAAG,MAAO,aAAqB,CAAC,KAAK,CAAC,QAAQ,CAAC;gBAC3D,YAAY,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,SAAS,EAAE;aACrD,CAAC,CAAC;YAEH,IAAI,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;gBACnC,MAAM,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBAE5B,IACE,UAAU;oBACV,UAAU,CAAC,UAAU;oBACrB,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAChC,CAAC;oBACD,MAAM,gBAAgB,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;oBACxD,MAAM,QAAQ,GACZ,gBAAgB,EAAE,QAAQ,EAAE,IAAI,IAAI,iBAAiB,CAAC;oBACxD,MAAM,IAAI,GAAG,gBAAgB,EAAE,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC;oBAEpD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;oBACxC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAEhE,MAAM,aAAa,GAAG,QAAQ;wBAC5B,CAAC,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE;wBACvB,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;oBACzB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;oBACzD,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,EAAE,MAAM,EAAE,aAAa,EAAE,CAAC,CAAC;oBAEvD,8BAA8B;oBAC9B,MAAM,YAAY,CAAC,YAAY,EAAE,aAAa,EAAE,OAAO,CAAC,CAAC;oBACzD,OAAO;gBACT,CAAC;YACH,CAAC;YAED,gBAAgB;YAChB,IAAI,UAAU,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;gBACtC,WAAW,GAAG,UAAU,CAAC,QAAQ,CAAC;YACpC,CAAC;YACD,eAAe,CAAC,EAAE,GAAG,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,CAAC,CAAC;YACvE,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,cAAc,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACpB,GAAG,IAAI;gBACP,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE;aACvD,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,YAAY,GAAG,KAAK,EAAE,KAAa,EAAE,EAAE;QAC3C,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,YAAY;YAAE,OAAO;QAE1C,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;QAC9B,aAAa,CAAC,EAAE,CAAC,CAAC;QAElB,mCAAmC;QACnC,mEAAmE;QACnE,IAAI,eAAe,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;YACtE,MAAM,aAAa,GAAG,OAAO,IAAI,CAAC,MAAM,aAAa,EAAE,CAAC,CAAC;YAEzD,MAAM,cAAc,GAAG;gBACrB,MAAM,EAAE;oBACN,QAAQ;oBACR,KAAK;oBACL,SAAS;oBACT,SAAS;oBACT,WAAW,EAAE,CAAC;iBACR;gBACR,UAAU,EAAE,EAAE;gBACd,OAAO,EAAE,aAAa;gBACtB,YAAY;gBACZ,eAAe;gBACf,gBAAgB,EAAE,CAAC,OAAe,EAAE,EAAE;oBACpC,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;gBAChE,CAAC;gBACD,QAAQ;gBACR,KAAK;gBACL,SAAS;gBACT,aAAa,EAAE,kBAAkB;aAClC,CAAC;YAEF,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;gBAEvE,sBAAsB;gBACtB,IAAI,MAAM,KAAK,UAAU,EAAE,CAAC;oBAC1B,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;wBACpB,GAAG,IAAI;wBACP,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;qBAC3C,CAAC,CAAC;oBACH,UAAU,CAAC,GAAG,EAAE;wBACd,eAAe,EAAE,CAAC;oBACpB,CAAC,EAAE,GAAG,CAAC,CAAC;oBACR,OAAO;gBACT,CAAC;gBAED,IAAI,MAAM,EAAE,CAAC;oBACX,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAClB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;oBACpB,GAAG,IAAI;oBACP,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,kBAAkB,GAAG,CAAC,OAAO,EAAE,EAAE;iBAC7D,CAAC,CAAC;YACL,CAAC;YACD,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,eAAe,CAAC,IAAI,CAAC,CAAC;QAEtB,eAAe;QACf,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAEtE,yBAAyB;QACzB,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAC;QAClE,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,YAAY,GAAG;YACnB,GAAG,YAAY;YACf,mBAAmB,EAAE,CAAC,GAAG,YAAY,CAAC,mBAAmB,EAAE,QAAQ,CAAC;SACrE,CAAC;QACF,eAAe,CAAC,YAAY,CAAC,CAAC;QAE9B,gBAAgB;QAChB,IAAI,CAAC;YACH,MAAM,aAAa,GAAG,MAAM,aAAa,EAAE,CAAC;YAC5C,MAAM,YAAY,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,cAAc,CAAC,KAAK,CAAC,CAAC;YACtB,iBAAiB,CAAC,IAAI,CAAC,CAAC;YACxB,WAAW,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;gBACpB,GAAG,IAAI;gBACP,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,KAAK,CAAC,OAAO,EAAE,EAAE;aACvD,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC;IAEF,MAAM,eAAe,GAAG,GAAG,EAAE;QAC3B,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;IAEF,MAAM,OAAO,GAAG,OAAO;QACrB,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE;QAC7B,CAAC,CAAC;YACE,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,CAAC;YACf,aAAa,EAAE,CAAC;YAChB,SAAS,EAAE,CAAC;YACZ,SAAS,EAAE,CAAC;SACb,CAAC;IACN,MAAM,aAAa,GAAG,kBAAkB,CAAC,YAAY,CAAC,mBAAmB,CAAC,CAAC;IAE3E,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,EAAE,aACvC,KAAC,MAAM,IAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,GAAI,EAElE,MAAC,GAAG,IAAC,aAAa,EAAC,KAAK,EAAC,QAAQ,EAAE,CAAC,EAAE,KAAK,EAAC,MAAM,aAEhD,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAC,KAAK,EAAC,YAAY,EAAE,CAAC,aACrD,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,YACrC,KAAC,MAAM,IAAC,KAAK,EAAE,QAAQ,YACpB,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CACX,KAAC,aAAa,IAAS,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,IAAvC,CAAC,CAA0C,CAChE,GACM,GACL,EAEL,WAAW,IAAI,CACd,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YAC/B,KAAC,GAAG,IAAC,UAAU,EAAE,CAAC,YAChB,KAAC,aAAa,IACZ,MAAM,EAAE,eAAe,EACvB,WAAW,EAAE,WAAW,GACxB,GACE,GACF,CACP,EAEA,cAAc,IAAI,CACjB,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YAC/B,KAAC,aAAa,IACZ,QAAQ,EAAE,cAAc,CAAC,IAAI,EAC7B,IAAI,EAAE,cAAc,CAAC,IAAI,EACzB,MAAM,EAAE,cAAc,CAAC,MAAM,EAC7B,MAAM,EAAE,cAAc,CAAC,MAAM,GAC7B,GACE,CACP,EAGA,CAAC,YAAY,IAAI,cAAc,CAAC,IAAI,CACnC,KAAC,UAAU,IAAC,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,GAAI,CACnE,EAEA,CAAC,gBAAgB,IAAI,CAAC,YAAY,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc,IAAI,CACzE,MAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,aAC/B,KAAC,GAAG,IAAC,WAAW,EAAE,CAAC,YACjB,KAAC,IAAI,IAAC,KAAK,EAAC,OAAO,EAAC,IAAI,6BAEjB,GACH,EACN,KAAC,SAAS,IACR,KAAK,EAAE,UAAU,EACjB,QAAQ,EAAE,aAAa,EACvB,QAAQ,EAAE,YAAY,EACtB,WAAW,EAAC,6BAA6B,GACzC,IACE,CACP,EAEA,YAAY;gCACX,CAAC,WAAW;gCACZ,CAAC,cAAc;gCACf,CAAC,YAAY;gCACb,CAAC,cAAc,IAAI,CACjB,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YAC/B,KAAC,IAAI,IAAC,QAAQ,kBACX,qBAAqB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,aAAa,GAC3D,GACH,CACP,IACC,EAGN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,KAAK,EAAC,KAAK,EAAC,WAAW,EAAE,CAAC,aACpD,KAAC,SAAS,IACR,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,kBAAkB,EACpC,WAAW,EAAE,OAAO,CAAC,WAAW,EAChC,YAAY,EAAE,OAAO,CAAC,YAAY,EAClC,SAAS,EAAE,OAAO,CAAC,aAAa,EAChC,KAAK,EAAE,OAAO,CAAC,SAAS,EACxB,IAAI,EAAE,OAAO,CAAC,SAAS,EACvB,OAAO,EAAE,OAAO,GAChB,EACF,KAAC,GAAG,IAAC,SAAS,EAAE,CAAC,YACf,KAAC,WAAW,KAAG,GACX,IACF,IACF,IACF,CACP,CAAC;AACJ,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"App.js","sourceRoot":"","sources":["../../src/ui/App.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ import { HITLBridge, } from "../../hitl/bridge.js";
|
|
|
9
9
|
* When a tool calls `ask_user_question` or the PermissionMiddleware fires,
|
|
10
10
|
* this component takes over the input area to capture the user's response.
|
|
11
11
|
*/
|
|
12
|
-
export const HITLPrompt = ({ question, permission, }) => {
|
|
12
|
+
export const HITLPrompt = ({ question, permission, pendingCount = 0, }) => {
|
|
13
13
|
const [inputValue, setInputValue] = useState("");
|
|
14
14
|
const handleSubmit = (value) => {
|
|
15
15
|
const bridge = HITLBridge.getInstance();
|
|
@@ -22,13 +22,13 @@ export const HITLPrompt = ({ question, permission, }) => {
|
|
|
22
22
|
setInputValue("");
|
|
23
23
|
};
|
|
24
24
|
if (question) {
|
|
25
|
-
return (_jsxs(Box, { flexDirection: "column", paddingX: 1, marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "yellow", bold: true, children: "\u2753 Agent is asking:" }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { children: question.question }) }), question.options && question.options.length > 0 && (_jsx(Box, { flexDirection: "column", marginLeft: 2, marginBottom: 1, children: question.options.map((opt, i) => (_jsx(Text, { dimColor: true, children: ` ${i + 1}. ${opt}` }, i))) })), _jsxs(Box, { children: [_jsx(Box, { marginRight: 1, children: _jsx(Text, { color: "yellow", bold: true, children: "\u2192" }) }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: "Type your answer..." })] })] }));
|
|
25
|
+
return (_jsxs(Box, { flexDirection: "column", paddingX: 1, marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "yellow", bold: true, children: "\u2753 Agent is asking:" }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { children: question.question }) }), pendingCount > 0 && (_jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: `Pending prompts: ${pendingCount}` }) })), question.options && question.options.length > 0 && (_jsx(Box, { flexDirection: "column", marginLeft: 2, marginBottom: 1, children: question.options.map((opt, i) => (_jsx(Text, { dimColor: true, children: ` ${i + 1}. ${opt}` }, i))) })), _jsxs(Box, { children: [_jsx(Box, { marginRight: 1, children: _jsx(Text, { color: "yellow", bold: true, children: "\u2192" }) }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: "Type your answer..." })] })] }));
|
|
26
26
|
}
|
|
27
27
|
if (permission) {
|
|
28
28
|
const argsSummary = Object.entries(permission.args)
|
|
29
29
|
.map(([k, v]) => `${k}: ${typeof v === "string" ? v.substring(0, 60) : JSON.stringify(v)}`)
|
|
30
30
|
.join(", ");
|
|
31
|
-
return (_jsxs(Box, { flexDirection: "column", paddingX: 1, marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "red", bold: true, children: "\u26A0 Permission Required:" }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsxs(Text, { children: ["The agent wants to execute", " ", _jsx(Text, { bold: true, color: "white", children: permission.toolName })] }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: argsSummary }) }), _jsxs(Box, { children: [_jsx(Box, { marginRight: 1, children: _jsx(Text, { color: "red", bold: true, children: "Allow? (y/n):" }) }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: "y or n" })] })] }));
|
|
31
|
+
return (_jsxs(Box, { flexDirection: "column", paddingX: 1, marginBottom: 1, children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: "red", bold: true, children: "\u26A0 Permission Required:" }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsxs(Text, { children: ["The agent wants to execute", " ", _jsx(Text, { bold: true, color: "white", children: permission.toolName })] }) }), _jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: argsSummary }) }), pendingCount > 0 && (_jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { dimColor: true, children: `Pending prompts: ${pendingCount}` }) })), _jsxs(Box, { children: [_jsx(Box, { marginRight: 1, children: _jsx(Text, { color: "red", bold: true, children: "Allow? (y/n):" }) }), _jsx(TextInput, { value: inputValue, onChange: setInputValue, onSubmit: handleSubmit, placeholder: "y or n" })] })] }));
|
|
32
32
|
}
|
|
33
33
|
return null;
|
|
34
34
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HITLPrompt.js","sourceRoot":"","sources":["../../../src/ui/components/HITLPrompt.tsx"],"names":[],"mappings":";AAAA,OAAc,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,SAAS,MAAM,gBAAgB,CAAC;AACvC,OAAO,EAGL,UAAU,GACX,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"HITLPrompt.js","sourceRoot":"","sources":["../../../src/ui/components/HITLPrompt.tsx"],"names":[],"mappings":"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"}
|
|
@@ -6,10 +6,5 @@ interface ToolCallPanelProps {
|
|
|
6
6
|
status: ToolCallStatus;
|
|
7
7
|
result?: string;
|
|
8
8
|
}
|
|
9
|
-
/**
|
|
10
|
-
* Styled panel that appears when the agent invokes a tool.
|
|
11
|
-
* Shows the tool name, arguments, a spinner while executing,
|
|
12
|
-
* and the result once complete.
|
|
13
|
-
*/
|
|
14
9
|
export declare const ToolCallPanel: React.FC<ToolCallPanelProps>;
|
|
15
10
|
export {};
|
|
@@ -1,18 +1,40 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from "ink";
|
|
3
3
|
import Spinner from "ink-spinner";
|
|
4
|
-
/**
|
|
5
|
-
* Styled panel that appears when the agent invokes a tool.
|
|
6
|
-
* Shows the tool name, arguments, a spinner while executing,
|
|
7
|
-
* and the result once complete.
|
|
8
|
-
*/
|
|
9
4
|
export const ToolCallPanel = ({ toolName, args, status, result, }) => {
|
|
10
5
|
const borderColor = status === "running" ? "yellow" : status === "success" ? "green" : "red";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
? value.slice(0, 77) + "..."
|
|
15
|
-
: value
|
|
16
|
-
: JSON.stringify(value) })] }, key))) })), result && (_jsx(Box, { marginTop: 0, marginLeft: 2, children: _jsx(Text, { dimColor: true, children: result.length > 120 ? result.slice(0, 117) + "..." : result }) }))] }));
|
|
6
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: borderColor, paddingX: 1, marginBottom: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { dimColor: true, children: "TOOL CALL" }), _jsx(Text, { bold: true, color: borderColor, children: toolName })] }), _jsx(StatusBadge, { status: status })] }), args && Object.keys(args).length > 0 ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "arguments" }), _jsx(Box, { flexDirection: "column", marginLeft: 1, children: Object.entries(args)
|
|
7
|
+
.slice(0, 4)
|
|
8
|
+
.map(([key, value]) => (_jsxs(Text, { wrap: "wrap", children: [_jsxs(Text, { color: "gray", children: [key, ":"] }), " ", formatValue(value)] }, key))) })] })) : null, result ? (_jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "result" }), _jsx(Box, { marginLeft: 1, children: _jsx(Text, { wrap: "wrap", children: summarizeText(result, 180) }) })] })) : null] }));
|
|
17
9
|
};
|
|
10
|
+
const StatusBadge = ({ status }) => {
|
|
11
|
+
if (status === "running") {
|
|
12
|
+
return (_jsxs(Text, { color: "yellow", children: [_jsx(Spinner, { type: "dots" }), " running"] }));
|
|
13
|
+
}
|
|
14
|
+
if (status === "success") {
|
|
15
|
+
return _jsx(Text, { color: "green", children: "done" });
|
|
16
|
+
}
|
|
17
|
+
return _jsx(Text, { color: "red", children: "error" });
|
|
18
|
+
};
|
|
19
|
+
function formatValue(value) {
|
|
20
|
+
if (typeof value === "string") {
|
|
21
|
+
return summarizeText(value, 72);
|
|
22
|
+
}
|
|
23
|
+
if (value == null) {
|
|
24
|
+
return "null";
|
|
25
|
+
}
|
|
26
|
+
try {
|
|
27
|
+
return summarizeText(JSON.stringify(value), 72);
|
|
28
|
+
}
|
|
29
|
+
catch {
|
|
30
|
+
return summarizeText(String(value), 72);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
function summarizeText(value, limit) {
|
|
34
|
+
const normalized = value.replace(/\s+/g, " ").trim();
|
|
35
|
+
if (normalized.length <= limit) {
|
|
36
|
+
return normalized;
|
|
37
|
+
}
|
|
38
|
+
return `${normalized.slice(0, limit - 3)}...`;
|
|
39
|
+
}
|
|
18
40
|
//# sourceMappingURL=ToolCallPanel.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolCallPanel.js","sourceRoot":"","sources":["../../../src/ui/components/ToolCallPanel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,OAAO,MAAM,aAAa,CAAC;AAWlC
|
|
1
|
+
{"version":3,"file":"ToolCallPanel.js","sourceRoot":"","sources":["../../../src/ui/components/ToolCallPanel.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export type WorkflowTodoState = "done" | "active" | "pending" | "blocked";
|
|
3
|
+
export interface WorkflowTodoItem {
|
|
4
|
+
id: "request" | "tools" | "response";
|
|
5
|
+
label: string;
|
|
6
|
+
note: string;
|
|
7
|
+
state: WorkflowTodoState;
|
|
8
|
+
}
|
|
9
|
+
interface WorkflowTodoPanelProps {
|
|
10
|
+
todos: WorkflowTodoItem[];
|
|
11
|
+
}
|
|
12
|
+
export declare const WorkflowTodoPanel: React.FC<WorkflowTodoPanelProps>;
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { Box, Text } from "ink";
|
|
3
|
+
export const WorkflowTodoPanel = ({ todos, }) => {
|
|
4
|
+
if (todos.length === 0) {
|
|
5
|
+
return null;
|
|
6
|
+
}
|
|
7
|
+
const doneCount = todos.filter((todo) => todo.state === "done").length;
|
|
8
|
+
const progress = Math.round((doneCount / todos.length) * 100);
|
|
9
|
+
return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: "blue", paddingX: 1, marginBottom: 1, children: [_jsxs(Box, { justifyContent: "space-between", children: [_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { dimColor: true, children: "LIVE PROGRESS" }), _jsx(Text, { bold: true, color: "blue", children: "Agent workstream" })] }), _jsxs(Text, { color: "blue", children: [progress, "% complete"] })] }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: todos.map((todo) => (_jsxs(Box, { marginBottom: 1, children: [_jsx(Box, { width: 8, children: _jsx(Text, { color: colorForState(todo.state), children: labelForState(todo.state) }) }), _jsxs(Box, { flexDirection: "column", flexGrow: 1, children: [_jsx(Text, { bold: true, children: todo.label }), _jsx(Text, { dimColor: true, wrap: "wrap", children: todo.note })] })] }, todo.id))) })] }));
|
|
10
|
+
};
|
|
11
|
+
function labelForState(state) {
|
|
12
|
+
switch (state) {
|
|
13
|
+
case "done":
|
|
14
|
+
return "[done]";
|
|
15
|
+
case "active":
|
|
16
|
+
return "[now ]";
|
|
17
|
+
case "blocked":
|
|
18
|
+
return "[hold]";
|
|
19
|
+
default:
|
|
20
|
+
return "[next]";
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function colorForState(state) {
|
|
24
|
+
switch (state) {
|
|
25
|
+
case "done":
|
|
26
|
+
return "green";
|
|
27
|
+
case "active":
|
|
28
|
+
return "yellow";
|
|
29
|
+
case "blocked":
|
|
30
|
+
return "red";
|
|
31
|
+
default:
|
|
32
|
+
return "gray";
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=WorkflowTodoPanel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WorkflowTodoPanel.js","sourceRoot":"","sources":["../../../src/ui/components/WorkflowTodoPanel.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAehC,MAAM,CAAC,MAAM,iBAAiB,GAAqC,CAAC,EAClE,KAAK,GACN,EAAE,EAAE;IACH,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC;IAE9D,OAAO,CACL,MAAC,GAAG,IACF,aAAa,EAAC,QAAQ,EACtB,WAAW,EAAC,OAAO,EACnB,WAAW,EAAC,MAAM,EAClB,QAAQ,EAAE,CAAC,EACX,YAAY,EAAE,CAAC,aAEf,MAAC,GAAG,IAAC,cAAc,EAAC,eAAe,aACjC,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,QAAQ,oCAAqB,EACnC,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAC,MAAM,iCAEhB,IACH,EACN,MAAC,IAAI,IAAC,KAAK,EAAC,MAAM,aAAE,QAAQ,kBAAkB,IAC1C,EAEN,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,SAAS,EAAE,CAAC,YACrC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,MAAC,GAAG,IAAe,YAAY,EAAE,CAAC,aAChC,KAAC,GAAG,IAAC,KAAK,EAAE,CAAC,YACX,KAAC,IAAI,IAAC,KAAK,EAAE,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,YAAG,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,GAAQ,GACtE,EACN,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,QAAQ,EAAE,CAAC,aACrC,KAAC,IAAI,IAAC,IAAI,kBAAE,IAAI,CAAC,KAAK,GAAQ,EAC9B,KAAC,IAAI,IAAC,QAAQ,QAAC,IAAI,EAAC,MAAM,YACvB,IAAI,CAAC,IAAI,GACL,IACH,KATE,IAAI,CAAC,EAAE,CAUX,CACP,CAAC,GACE,IACF,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,SAAS,aAAa,CAAC,KAAwB;IAC7C,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,QAAQ,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,QAAQ,CAAC;QAClB;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,aAAa,CAAC,KAAwB;IAC7C,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,MAAM;YACT,OAAO,OAAO,CAAC;QACjB,KAAK,QAAQ;YACX,OAAO,QAAQ,CAAC;QAClB,KAAK,SAAS;YACZ,OAAO,KAAK,CAAC;QACf;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC"}
|