@kenkaiiii/ggcoder 4.3.205 → 4.3.207
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +38 -26
- package/dist/cli.js.map +1 -1
- package/dist/config.js +2 -2
- package/dist/core/compaction/compactor.d.ts.map +1 -1
- package/dist/core/compaction/compactor.js +6 -0
- package/dist/core/compaction/compactor.js.map +1 -1
- package/dist/core/compaction/compactor.test.js +16 -0
- package/dist/core/compaction/compactor.test.js.map +1 -1
- package/dist/core/goal-controller.d.ts +57 -0
- package/dist/core/goal-controller.d.ts.map +1 -0
- package/dist/core/goal-controller.js +285 -0
- package/dist/core/goal-controller.js.map +1 -0
- package/dist/core/goal-controller.test.d.ts +2 -0
- package/dist/core/goal-controller.test.d.ts.map +1 -0
- package/dist/core/goal-controller.test.js +419 -0
- package/dist/core/goal-controller.test.js.map +1 -0
- package/dist/core/goal-lifecycle-smoke.test.d.ts +2 -0
- package/dist/core/goal-lifecycle-smoke.test.d.ts.map +1 -0
- package/dist/core/goal-lifecycle-smoke.test.js +207 -0
- package/dist/core/goal-lifecycle-smoke.test.js.map +1 -0
- package/dist/core/goal-store.d.ts +164 -0
- package/dist/core/goal-store.d.ts.map +1 -0
- package/dist/core/goal-store.js +721 -0
- package/dist/core/goal-store.js.map +1 -0
- package/dist/core/goal-store.test.d.ts +2 -0
- package/dist/core/goal-store.test.d.ts.map +1 -0
- package/dist/core/goal-store.test.js +341 -0
- package/dist/core/goal-store.test.js.map +1 -0
- package/dist/core/goal-verifier.d.ts +17 -0
- package/dist/core/goal-verifier.d.ts.map +1 -0
- package/dist/core/goal-verifier.js +84 -0
- package/dist/core/goal-verifier.js.map +1 -0
- package/dist/core/goal-verifier.test.d.ts +2 -0
- package/dist/core/goal-verifier.test.d.ts.map +1 -0
- package/dist/core/goal-verifier.test.js +88 -0
- package/dist/core/goal-verifier.test.js.map +1 -0
- package/dist/core/goal-worker-dev-server-lifecycle.test.d.ts +2 -0
- package/dist/core/goal-worker-dev-server-lifecycle.test.d.ts.map +1 -0
- package/dist/core/goal-worker-dev-server-lifecycle.test.js +68 -0
- package/dist/core/goal-worker-dev-server-lifecycle.test.js.map +1 -0
- package/dist/core/goal-worker.d.ts +51 -0
- package/dist/core/goal-worker.d.ts.map +1 -0
- package/dist/core/goal-worker.js +339 -0
- package/dist/core/goal-worker.js.map +1 -0
- package/dist/core/goal-worker.test.d.ts +2 -0
- package/dist/core/goal-worker.test.d.ts.map +1 -0
- package/dist/core/goal-worker.test.js +224 -0
- package/dist/core/goal-worker.test.js.map +1 -0
- package/dist/core/model-registry.test.js +51 -1
- package/dist/core/model-registry.test.js.map +1 -1
- package/dist/core/oauth/gemini.d.ts.map +1 -1
- package/dist/core/oauth/gemini.js +138 -30
- package/dist/core/oauth/gemini.js.map +1 -1
- package/dist/core/oauth/gemini.test.d.ts +2 -0
- package/dist/core/oauth/gemini.test.d.ts.map +1 -0
- package/dist/core/oauth/gemini.test.js +154 -0
- package/dist/core/oauth/gemini.test.js.map +1 -0
- package/dist/core/process-manager-dev-server-repro.test.d.ts +2 -0
- package/dist/core/process-manager-dev-server-repro.test.d.ts.map +1 -0
- package/dist/core/process-manager-dev-server-repro.test.js +100 -0
- package/dist/core/process-manager-dev-server-repro.test.js.map +1 -0
- package/dist/core/process-manager.js +2 -2
- package/dist/core/process-manager.js.map +1 -1
- package/dist/core/prompt-commands.d.ts.map +1 -1
- package/dist/core/prompt-commands.js +125 -0
- package/dist/core/prompt-commands.js.map +1 -1
- package/dist/core/prompt-commands.test.js +38 -0
- package/dist/core/prompt-commands.test.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/interactive.d.ts.map +1 -1
- package/dist/interactive.js +20 -11
- package/dist/interactive.js.map +1 -1
- package/dist/system-prompt.d.ts.map +1 -1
- package/dist/system-prompt.js +19 -50
- package/dist/system-prompt.js.map +1 -1
- package/dist/system-prompt.test.js +124 -1
- package/dist/system-prompt.test.js.map +1 -1
- package/dist/tools/edit-diff.d.ts.map +1 -1
- package/dist/tools/edit-diff.js +71 -32
- package/dist/tools/edit-diff.js.map +1 -1
- package/dist/tools/edit-diff.test.js +14 -0
- package/dist/tools/edit-diff.test.js.map +1 -1
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +38 -18
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/edit.test.js +56 -6
- package/dist/tools/edit.test.js.map +1 -1
- package/dist/tools/enter-plan.d.ts.map +1 -1
- package/dist/tools/enter-plan.js +1 -0
- package/dist/tools/enter-plan.js.map +1 -1
- package/dist/tools/goals.d.ts +110 -0
- package/dist/tools/goals.d.ts.map +1 -0
- package/dist/tools/goals.js +500 -0
- package/dist/tools/goals.js.map +1 -0
- package/dist/tools/goals.test.d.ts +2 -0
- package/dist/tools/goals.test.d.ts.map +1 -0
- package/dist/tools/goals.test.js +431 -0
- package/dist/tools/goals.test.js.map +1 -0
- package/dist/tools/index.d.ts +2 -0
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +6 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/prompt-hints.d.ts.map +1 -1
- package/dist/tools/prompt-hints.js +2 -0
- package/dist/tools/prompt-hints.js.map +1 -1
- package/dist/tools/source-path.d.ts +9 -0
- package/dist/tools/source-path.d.ts.map +1 -0
- package/dist/tools/source-path.js +119 -0
- package/dist/tools/source-path.js.map +1 -0
- package/dist/tools/source-path.test.d.ts +2 -0
- package/dist/tools/source-path.test.d.ts.map +1 -0
- package/dist/tools/source-path.test.js +80 -0
- package/dist/tools/source-path.test.js.map +1 -0
- package/dist/tools/subagent.js +16 -0
- package/dist/tools/subagent.js.map +1 -1
- package/dist/ui/App.d.ts +73 -4
- package/dist/ui/App.d.ts.map +1 -1
- package/dist/ui/App.js +1068 -140
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/activity-phrases.d.ts.map +1 -1
- package/dist/ui/activity-phrases.js +7 -3
- package/dist/ui/activity-phrases.js.map +1 -1
- package/dist/ui/app-state-persistence.test.d.ts +2 -0
- package/dist/ui/app-state-persistence.test.d.ts.map +1 -0
- package/dist/ui/app-state-persistence.test.js +130 -0
- package/dist/ui/app-state-persistence.test.js.map +1 -0
- package/dist/ui/components/BackgroundTasksBar.d.ts +16 -1
- package/dist/ui/components/BackgroundTasksBar.d.ts.map +1 -1
- package/dist/ui/components/BackgroundTasksBar.js +15 -2
- package/dist/ui/components/BackgroundTasksBar.js.map +1 -1
- package/dist/ui/components/Banner.d.ts +2 -1
- package/dist/ui/components/Banner.d.ts.map +1 -1
- package/dist/ui/components/Banner.js +3 -3
- package/dist/ui/components/Banner.js.map +1 -1
- package/dist/ui/components/GoalOverlay.d.ts +74 -0
- package/dist/ui/components/GoalOverlay.d.ts.map +1 -0
- package/dist/ui/components/GoalOverlay.js +675 -0
- package/dist/ui/components/GoalOverlay.js.map +1 -0
- package/dist/ui/components/GoalStatusBar.d.ts +24 -0
- package/dist/ui/components/GoalStatusBar.d.ts.map +1 -0
- package/dist/ui/components/GoalStatusBar.js +113 -0
- package/dist/ui/components/GoalStatusBar.js.map +1 -0
- package/dist/ui/components/InputArea.d.ts +2 -1
- package/dist/ui/components/InputArea.d.ts.map +1 -1
- package/dist/ui/components/InputArea.js +44 -2
- package/dist/ui/components/InputArea.js.map +1 -1
- package/dist/ui/components/InputArea.test.d.ts +2 -0
- package/dist/ui/components/InputArea.test.d.ts.map +1 -0
- package/dist/ui/components/InputArea.test.js +79 -0
- package/dist/ui/components/InputArea.test.js.map +1 -0
- package/dist/ui/components/ToolExecution.d.ts.map +1 -1
- package/dist/ui/components/ToolExecution.js +96 -3
- package/dist/ui/components/ToolExecution.js.map +1 -1
- package/dist/ui/footer-status-layout.test.d.ts +2 -0
- package/dist/ui/footer-status-layout.test.d.ts.map +1 -0
- package/dist/ui/footer-status-layout.test.js +56 -0
- package/dist/ui/footer-status-layout.test.js.map +1 -0
- package/dist/ui/goal-events.d.ts +107 -0
- package/dist/ui/goal-events.d.ts.map +1 -0
- package/dist/ui/goal-events.js +323 -0
- package/dist/ui/goal-events.js.map +1 -0
- package/dist/ui/goal-events.test.d.ts +2 -0
- package/dist/ui/goal-events.test.d.ts.map +1 -0
- package/dist/ui/goal-events.test.js +293 -0
- package/dist/ui/goal-events.test.js.map +1 -0
- package/dist/ui/goal-overlay.test.d.ts +2 -0
- package/dist/ui/goal-overlay.test.d.ts.map +1 -0
- package/dist/ui/goal-overlay.test.js +276 -0
- package/dist/ui/goal-overlay.test.js.map +1 -0
- package/dist/ui/goal-status-bar.test.d.ts +2 -0
- package/dist/ui/goal-status-bar.test.d.ts.map +1 -0
- package/dist/ui/goal-status-bar.test.js +143 -0
- package/dist/ui/goal-status-bar.test.js.map +1 -0
- package/dist/ui/live-item-flush.test.js +48 -0
- package/dist/ui/live-item-flush.test.js.map +1 -1
- package/dist/ui/render.d.ts +11 -4
- package/dist/ui/render.d.ts.map +1 -1
- package/dist/ui/render.js +12 -3
- package/dist/ui/render.js.map +1 -1
- package/dist/ui/scroll-stabilization.test.d.ts +2 -0
- package/dist/ui/scroll-stabilization.test.d.ts.map +1 -0
- package/dist/ui/scroll-stabilization.test.js +70 -0
- package/dist/ui/scroll-stabilization.test.js.map +1 -0
- package/dist/ui/slash-command-images.test.d.ts +2 -0
- package/dist/ui/slash-command-images.test.d.ts.map +1 -0
- package/dist/ui/slash-command-images.test.js +47 -0
- package/dist/ui/slash-command-images.test.js.map +1 -0
- package/dist/utils/format.js +44 -0
- package/dist/utils/format.js.map +1 -1
- package/package.json +6 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-phrases.d.ts","sourceRoot":"","sources":["../../src/ui/activity-phrases.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAsE7D,eAAO,MAAM,gBAAgB,UAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe,UAgB3B,CAAC;AAEF,eAAO,MAAM,eAAe,UAO3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAS5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAQ9B,CAAC;AAEF,eAAO,MAAM,aAAa,UAOzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"activity-phrases.d.ts","sourceRoot":"","sources":["../../src/ui/activity-phrases.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAsE7D,eAAO,MAAM,gBAAgB,UAQ5B,CAAC;AAEF,eAAO,MAAM,eAAe,UAgB3B,CAAC;AAEF,eAAO,MAAM,eAAe,UAO3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAS5B,CAAC;AAEF,eAAO,MAAM,kBAAkB,UAQ9B,CAAC;AAEF,eAAO,MAAM,aAAa,UAOzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAiBjD,CAAC;AAaF,wBAAgB,aAAa,CAC3B,KAAK,EAAE,aAAa,EACpB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EAAE,EACzB,eAAe,UAAO,GACrB,MAAM,EAAE,CAoBV;AAED,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAO7C"}
|
|
@@ -133,11 +133,15 @@ export const TOOL_PHRASES = {
|
|
|
133
133
|
grep: ["Rummaging", "Sifting", "Bloodhounding"],
|
|
134
134
|
find: ["Dowsing", "Spelunking", "Sniffing"],
|
|
135
135
|
ls: ["Cataloguing", "Inventorying", "Surveying"],
|
|
136
|
+
source_path: ["Provenancing", "Sourcing", "Unearthing"],
|
|
136
137
|
subagent: ["Cloning", "Spawning", "Mitosing"],
|
|
137
|
-
|
|
138
|
+
web_fetch: ["Pilfering", "Scrounging", "Plundering"],
|
|
139
|
+
web_search: ["Scouting", "Reconnoitering", "Prospecting"],
|
|
138
140
|
tasks: ["Wrangling", "Herding", "Corralling"],
|
|
139
|
-
|
|
140
|
-
|
|
141
|
+
task_output: ["Eavesdropping", "Intercepting"],
|
|
142
|
+
task_stop: ["Guillotining", "Tranquilizing"],
|
|
143
|
+
enter_plan: ["Blueprinting", "Scheming", "Plotting"],
|
|
144
|
+
exit_plan: ["Submitting", "Presenting", "Handing over"],
|
|
141
145
|
};
|
|
142
146
|
function selectToolPhrases(activeToolNames) {
|
|
143
147
|
if (activeToolNames.length === 0)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-phrases.js","sourceRoot":"","sources":["../../src/ui/activity-phrases.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"activity-phrases.js","sourceRoot":"","sources":["../../src/ui/activity-phrases.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-state-persistence.test.d.ts","sourceRoot":"","sources":["../../src/ui/app-state-persistence.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
import { describe, expect, it } from "vitest";
|
|
2
|
+
import { buildGoalSummaryRows, formatGoalTerminalProgress, routePromptCommandInput, shouldHideHistoryForOverlayView, shouldHideStaticItemsForOverlayView, shouldStabilizeOverlayPaneRerender, } from "./App.js";
|
|
3
|
+
function goalRun(overrides = {}) {
|
|
4
|
+
return {
|
|
5
|
+
id: "run-1",
|
|
6
|
+
title: "Persist goal output",
|
|
7
|
+
goal: "Goal body",
|
|
8
|
+
status: "passed",
|
|
9
|
+
createdAt: "2024-01-01T00:00:00.000Z",
|
|
10
|
+
updatedAt: "2024-01-01T00:00:00.000Z",
|
|
11
|
+
projectPath: "/tmp/project",
|
|
12
|
+
successCriteria: [],
|
|
13
|
+
prerequisites: [],
|
|
14
|
+
harness: [],
|
|
15
|
+
evidencePlan: [],
|
|
16
|
+
tasks: [],
|
|
17
|
+
evidence: [],
|
|
18
|
+
blockers: [],
|
|
19
|
+
...overrides,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
describe("App TUI state persistence helpers", () => {
|
|
23
|
+
it("hides Static history for clean idle overlay panes but keeps it mounted during active agent runs", () => {
|
|
24
|
+
expect(shouldHideHistoryForOverlayView(true, false)).toBe(true);
|
|
25
|
+
expect(shouldHideHistoryForOverlayView(true, true)).toBe(false);
|
|
26
|
+
expect(shouldHideHistoryForOverlayView(false, false)).toBe(false);
|
|
27
|
+
});
|
|
28
|
+
it("keeps active Goal pane switches from blanking Static history", () => {
|
|
29
|
+
const hideHistory = shouldHideHistoryForOverlayView(true, true);
|
|
30
|
+
const stabilizeStatic = shouldStabilizeOverlayPaneRerender({
|
|
31
|
+
overlayPane: "goal",
|
|
32
|
+
isAgentRunning: true,
|
|
33
|
+
});
|
|
34
|
+
expect(hideHistory).toBe(false);
|
|
35
|
+
expect(stabilizeStatic).toBe(true);
|
|
36
|
+
expect(shouldHideStaticItemsForOverlayView({
|
|
37
|
+
shouldHideHistoryForOverlay: hideHistory,
|
|
38
|
+
stabilizeOverlayPaneRerender: stabilizeStatic,
|
|
39
|
+
})).toBe(false);
|
|
40
|
+
});
|
|
41
|
+
it("persists the visible completion footer across idle pane remounts", () => {
|
|
42
|
+
const doneStatus = { durationMs: 3200, toolsUsed: [], verb: "Mulled it over for" };
|
|
43
|
+
const sessionStore = { doneStatus: null };
|
|
44
|
+
sessionStore.doneStatus = doneStatus;
|
|
45
|
+
expect(sessionStore.doneStatus).toEqual(doneStatus);
|
|
46
|
+
});
|
|
47
|
+
it("models the regression: goal progress history remains persisted even when hidden behind a pane", () => {
|
|
48
|
+
const goalProgress = {
|
|
49
|
+
kind: "goal_progress",
|
|
50
|
+
phase: "terminal",
|
|
51
|
+
title: "Goal passed: Persist goal output",
|
|
52
|
+
detail: "Verifier evidence is recorded; auto-continuation stopped.",
|
|
53
|
+
status: "passed",
|
|
54
|
+
id: "goal-progress-1",
|
|
55
|
+
};
|
|
56
|
+
const history = [
|
|
57
|
+
{ kind: "banner", id: "banner" },
|
|
58
|
+
goalProgress,
|
|
59
|
+
{ kind: "assistant", text: "Goal run summary stays visible", id: "assistant-1" },
|
|
60
|
+
];
|
|
61
|
+
const itemsRenderedDuringGoalPane = shouldHideHistoryForOverlayView(true, false) ? [] : history;
|
|
62
|
+
expect(itemsRenderedDuringGoalPane).toEqual([]);
|
|
63
|
+
expect(history).toContain(goalProgress);
|
|
64
|
+
});
|
|
65
|
+
it("routes slash prompt commands with pasted multi-line args into the command path", () => {
|
|
66
|
+
const pastedArgs = "explain this snippet:\nconst a = 1;\nconsole.log(a);";
|
|
67
|
+
const route = routePromptCommandInput(`/scan ${pastedArgs}`);
|
|
68
|
+
expect(route).toMatchObject({ cmdName: "scan", cmdArgs: pastedArgs });
|
|
69
|
+
expect(route?.fullPrompt).toContain("# Scan: Confirmed Dead Code Review");
|
|
70
|
+
expect(route?.fullPrompt).toContain(`## User Instructions\n\n${pastedArgs}`);
|
|
71
|
+
});
|
|
72
|
+
it("formats terminal goal progress as durable history-safe rows", () => {
|
|
73
|
+
expect(formatGoalTerminalProgress(goalRun({
|
|
74
|
+
status: "passed",
|
|
75
|
+
successCriteria: ["Verifier proves the Goal end-to-end"],
|
|
76
|
+
tasks: [
|
|
77
|
+
{ id: "task-1", title: "Implement", prompt: "Do it", status: "done", attempts: 1 },
|
|
78
|
+
],
|
|
79
|
+
evidence: [
|
|
80
|
+
{
|
|
81
|
+
id: "evidence-1",
|
|
82
|
+
kind: "command",
|
|
83
|
+
label: "Verifier pass",
|
|
84
|
+
path: "artifacts/goal-pass.log",
|
|
85
|
+
createdAt: "2024-01-01T00:00:00.000Z",
|
|
86
|
+
},
|
|
87
|
+
],
|
|
88
|
+
verifier: {
|
|
89
|
+
description: "Goal verifier",
|
|
90
|
+
command: "pnpm test",
|
|
91
|
+
lastResult: {
|
|
92
|
+
status: "pass",
|
|
93
|
+
summary: "passed",
|
|
94
|
+
command: "pnpm test",
|
|
95
|
+
exitCode: 0,
|
|
96
|
+
outputPath: "artifacts/goal-pass.log",
|
|
97
|
+
checkedAt: "2024-01-01T00:00:00.000Z",
|
|
98
|
+
},
|
|
99
|
+
},
|
|
100
|
+
}))).toMatchObject({
|
|
101
|
+
kind: "goal_progress",
|
|
102
|
+
phase: "terminal",
|
|
103
|
+
title: "Goal passed: Persist goal output",
|
|
104
|
+
status: "passed",
|
|
105
|
+
summaryRows: [
|
|
106
|
+
{ label: "Tasks", value: "1/1 done" },
|
|
107
|
+
{ label: "Verifier", value: "pass", detail: "artifacts/goal-pass.log" },
|
|
108
|
+
{ label: "Evidence", value: "1 recorded", detail: "artifacts/goal-pass.log" },
|
|
109
|
+
{ label: "Criteria", value: "1 checked" },
|
|
110
|
+
],
|
|
111
|
+
});
|
|
112
|
+
expect(formatGoalTerminalProgress(goalRun({ status: "running" }))).toBeNull();
|
|
113
|
+
});
|
|
114
|
+
it("builds a compact terminal Goal summary with blocker context", () => {
|
|
115
|
+
expect(buildGoalSummaryRows(goalRun({
|
|
116
|
+
status: "blocked",
|
|
117
|
+
blockers: ["Connect an unlocked iPhone with Developer Mode enabled."],
|
|
118
|
+
tasks: [
|
|
119
|
+
{ id: "task-1", title: "Implement", prompt: "Do it", status: "done", attempts: 1 },
|
|
120
|
+
{ id: "task-2", title: "Capture", prompt: "Capture", status: "blocked", attempts: 0 },
|
|
121
|
+
],
|
|
122
|
+
}))).toEqual([
|
|
123
|
+
{ label: "Tasks", value: "1/2 done", detail: "1 blocked" },
|
|
124
|
+
{ label: "Verifier", value: "missing" },
|
|
125
|
+
{ label: "Evidence", value: "0 recorded" },
|
|
126
|
+
{ label: "Blocked on", value: "Connect an unlocked iPhone with Developer Mode enabled." },
|
|
127
|
+
]);
|
|
128
|
+
});
|
|
129
|
+
});
|
|
130
|
+
//# sourceMappingURL=app-state-persistence.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-state-persistence.test.js","sourceRoot":"","sources":["../../src/ui/app-state-persistence.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,22 @@ interface BackgroundTasksBarProps {
|
|
|
9
9
|
onKill: (id: string) => void;
|
|
10
10
|
onExit: () => void;
|
|
11
11
|
onNavigate: (index: number) => void;
|
|
12
|
+
compact?: boolean;
|
|
12
13
|
}
|
|
13
|
-
export
|
|
14
|
+
export interface FooterStatusLayoutOptions {
|
|
15
|
+
columns: number;
|
|
16
|
+
backgroundTaskCount: number;
|
|
17
|
+
eyesCount?: number;
|
|
18
|
+
updatePending: boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface FooterStatusLayoutDecision {
|
|
21
|
+
hasBackgroundTasks: boolean;
|
|
22
|
+
hasEyesSignals: boolean;
|
|
23
|
+
hasUpdateNotice: boolean;
|
|
24
|
+
stack: boolean;
|
|
25
|
+
compactBackgroundTasks: boolean;
|
|
26
|
+
}
|
|
27
|
+
export declare function getFooterStatusLayoutDecision({ columns, backgroundTaskCount, eyesCount, updatePending, }: FooterStatusLayoutOptions): FooterStatusLayoutDecision;
|
|
28
|
+
export declare function BackgroundTasksBar({ tasks, focused, expanded, selectedIndex, onExpand, onCollapse, onKill, onExit, onNavigate, compact, }: BackgroundTasksBarProps): import("react/jsx-runtime").JSX.Element | null;
|
|
14
29
|
export {};
|
|
15
30
|
//# sourceMappingURL=BackgroundTasksBar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundTasksBar.d.ts","sourceRoot":"","sources":["../../../src/ui/components/BackgroundTasksBar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,UAAU,uBAAuB;IAC/B,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"BackgroundTasksBar.d.ts","sourceRoot":"","sources":["../../../src/ui/components/BackgroundTasksBar.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvE,UAAU,uBAAuB;IAC/B,KAAK,EAAE,iBAAiB,EAAE,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,UAAU,EAAE,MAAM,IAAI,CAAC;IACvB,MAAM,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7B,MAAM,EAAE,MAAM,IAAI,CAAC;IACnB,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,MAAM,WAAW,0BAA0B;IACzC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,OAAO,CAAC;IACf,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,wBAAgB,6BAA6B,CAAC,EAC5C,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,aAAa,GACd,EAAE,yBAAyB,GAAG,0BAA0B,CAYxD;AAOD,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,UAAU,EACV,OAAe,GAChB,EAAE,uBAAuB,kDAkIzB"}
|
|
@@ -3,12 +3,25 @@ import React from "react";
|
|
|
3
3
|
import { Text, Box, useInput } from "ink";
|
|
4
4
|
import { useTheme } from "../theme/theme.js";
|
|
5
5
|
const MAX_VISIBLE = 5;
|
|
6
|
+
export function getFooterStatusLayoutDecision({ columns, backgroundTaskCount, eyesCount, updatePending, }) {
|
|
7
|
+
const hasBackgroundTasks = backgroundTaskCount > 0;
|
|
8
|
+
const hasEyesSignals = eyesCount !== undefined && eyesCount > 0;
|
|
9
|
+
const hasUpdateNotice = updatePending;
|
|
10
|
+
const visibleCount = [hasBackgroundTasks, hasEyesSignals, hasUpdateNotice].filter(Boolean).length;
|
|
11
|
+
return {
|
|
12
|
+
hasBackgroundTasks,
|
|
13
|
+
hasEyesSignals,
|
|
14
|
+
hasUpdateNotice,
|
|
15
|
+
stack: visibleCount > 1 && columns < 100,
|
|
16
|
+
compactBackgroundTasks: visibleCount > 1 && columns < 120,
|
|
17
|
+
};
|
|
18
|
+
}
|
|
6
19
|
function truncateCommand(command, maxLen) {
|
|
7
20
|
if (command.length <= maxLen)
|
|
8
21
|
return command;
|
|
9
22
|
return command.slice(0, maxLen - 1) + "\u2026";
|
|
10
23
|
}
|
|
11
|
-
export function BackgroundTasksBar({ tasks, focused, expanded, selectedIndex, onExpand, onCollapse, onKill, onExit, onNavigate, }) {
|
|
24
|
+
export function BackgroundTasksBar({ tasks, focused, expanded, selectedIndex, onExpand, onCollapse, onKill, onExit, onNavigate, compact = false, }) {
|
|
12
25
|
const theme = useTheme();
|
|
13
26
|
// Keyboard: collapsed+focused — Enter opens, Esc/↑ exits
|
|
14
27
|
useInput((_input, key) => {
|
|
@@ -55,7 +68,7 @@ export function BackgroundTasksBar({ tasks, focused, expanded, selectedIndex, on
|
|
|
55
68
|
const label = `Background task${count !== 1 ? "s" : ""}`;
|
|
56
69
|
// Collapsed: single summary line
|
|
57
70
|
if (!expanded) {
|
|
58
|
-
return (_jsxs(Box, { paddingLeft: 1, paddingRight: 1, children: [_jsx(Text, { color: focused ? theme.primary : theme.textMuted, children: "● " }), _jsxs(Text, { color: theme.accent, bold: true, children: ["(", count, ")"] }), _jsxs(Text, { color: focused ? theme.text : theme.textMuted, children: [" ", label] }), focused && (_jsxs(Text, { color: theme.textDim, children: [" \u00B7 ", _jsx(Text, { color: theme.accent, children: "Enter" }), " to view"] }))] }));
|
|
71
|
+
return (_jsxs(Box, { paddingLeft: 1, paddingRight: 1, children: [_jsx(Text, { color: focused ? theme.primary : theme.textMuted, children: "● " }), _jsxs(Text, { color: theme.accent, bold: true, children: ["(", count, ")"] }), _jsxs(Text, { color: focused ? theme.text : theme.textMuted, children: [" ", compact ? "bg tasks" : label] }), focused && !compact && (_jsxs(Text, { color: theme.textDim, children: [" \u00B7 ", _jsx(Text, { color: theme.accent, children: "Enter" }), " to view"] }))] }));
|
|
59
72
|
}
|
|
60
73
|
// Expanded: show up to MAX_VISIBLE tasks
|
|
61
74
|
const visible = tasks.slice(0, MAX_VISIBLE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BackgroundTasksBar.js","sourceRoot":"","sources":["../../../src/ui/components/BackgroundTasksBar.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,MAAM,WAAW,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"BackgroundTasksBar.js","sourceRoot":"","sources":["../../../src/ui/components/BackgroundTasksBar.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AAC1C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAG7C,MAAM,WAAW,GAAG,CAAC,CAAC;AA8BtB,MAAM,UAAU,6BAA6B,CAAC,EAC5C,OAAO,EACP,mBAAmB,EACnB,SAAS,EACT,aAAa,GACa;IAC1B,MAAM,kBAAkB,GAAG,mBAAmB,GAAG,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,SAAS,KAAK,SAAS,IAAI,SAAS,GAAG,CAAC,CAAC;IAChE,MAAM,eAAe,GAAG,aAAa,CAAC;IACtC,MAAM,YAAY,GAAG,CAAC,kBAAkB,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;IAClG,OAAO;QACL,kBAAkB;QAClB,cAAc;QACd,eAAe;QACf,KAAK,EAAE,YAAY,GAAG,CAAC,IAAI,OAAO,GAAG,GAAG;QACxC,sBAAsB,EAAE,YAAY,GAAG,CAAC,IAAI,OAAO,GAAG,GAAG;KAC1D,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,MAAc;IACtD,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM;QAAE,OAAO,OAAO,CAAC;IAC7C,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,GAAG,CAAC,CAAC,GAAG,QAAQ,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,EACjC,KAAK,EACL,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,MAAM,EACN,MAAM,EACN,UAAU,EACV,OAAO,GAAG,KAAK,GACS;IACxB,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,yDAAyD;IACzD,QAAQ,CACN,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;QACd,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBACf,QAAQ,EAAE,CAAC;YACb,CAAC;iBAAM,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;gBACrC,MAAM,EAAE,CAAC;YACX,CAAC;YACD,OAAO;QACT,CAAC;QAED,gBAAgB;QAChB,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;YACf,UAAU,EAAE,CAAC;YACb,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;YAChB,IAAI,aAAa,IAAI,CAAC,EAAE,CAAC;gBACvB,UAAU,EAAE,CAAC;YACf,CAAC;iBAAM,CAAC;gBACN,UAAU,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,aAAa,GAAG,MAAM,EAAE,CAAC;gBAC3B,UAAU,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC;YAChC,CAAC;YACD,OAAO;QACT,CAAC;QAED,IAAI,MAAM,KAAK,GAAG,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACrC,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;YAClC,IAAI,IAAI,EAAE,CAAC;gBACT,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAClB,CAAC;QACH,CAAC;IACH,CAAC,EACD,EAAE,QAAQ,EAAE,OAAO,EAAE,CACtB,CAAC;IAEF,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;IAC3B,MAAM,KAAK,GAAG,kBAAkB,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;IAEzD,iCAAiC;IACjC,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,aAClC,KAAC,IAAI,IAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,YAAG,IAAI,GAAQ,EACrE,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,wBAC3B,KAAK,SACF,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,kBAAI,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAQ,EAC1F,OAAO,IAAI,CAAC,OAAO,IAAI,CACtB,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,aACvB,UAAU,EACX,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,sBAAc,gBAClC,CACR,IACG,CACP,CAAC;IACJ,CAAC;IAED,yCAAyC;IACzC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;IAC5C,MAAM,MAAM,GAAG,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAEtC,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,WAAW,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,aACzD,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,SAAS,YAAG,IAAI,GAAQ,EAC3C,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,EAAE,IAAI,wBAC3B,KAAK,SACF,EACP,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,kBAAI,KAAK,IAAQ,IACpC,EACL,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE;gBACvB,MAAM,UAAU,GAAG,CAAC,KAAK,aAAa,CAAC;gBACvC,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC7C,MAAM,GAAG,GAAG,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI,CAAC;gBACzC,MAAM,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC;gBAC5C,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;gBAC5D,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAEpE,OAAO,CACL,MAAC,GAAG,eACF,KAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,YACtE,MAAM,GACF,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,YAAG,IAAI,CAAC,EAAE,GAAQ,EAC1E,KAAC,IAAI,cAAE,IAAI,GAAQ,EACnB,KAAC,GAAG,IAAC,QAAQ,EAAE,CAAC,YACd,KAAC,IAAI,IAAC,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,YACrE,GAAG,GACC,GACH,EACN,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,EAAE,IAAI,mBAC3B,GAAG,OAAG,WAAW,IACb,KAbC,IAAI,CAAC,EAAE,CAcX,CACP,CAAC;YACJ,CAAC,CAAC,EACD,MAAM,GAAG,CAAC,IAAI,CACb,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,SAAS,aACzB,IAAI,OAAG,MAAM,aACT,GACH,CACP,EACD,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,OAAO,aACvB,iCAAiC,EAClC,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,kBAAU,EAClC,eAAe,EAChB,KAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,MAAM,oBAAY,EACpC,OAAO,IACH,GACH,IACF,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -5,7 +5,8 @@ interface BannerProps {
|
|
|
5
5
|
provider: Provider;
|
|
6
6
|
cwd: string;
|
|
7
7
|
taskCount?: number;
|
|
8
|
+
goalCount?: number;
|
|
8
9
|
}
|
|
9
|
-
export declare function Banner({ version, model, cwd, taskCount }: BannerProps): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export declare function Banner({ version, model, cwd, taskCount, goalCount }: BannerProps): import("react/jsx-runtime").JSX.Element;
|
|
10
11
|
export {};
|
|
11
12
|
//# sourceMappingURL=Banner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Banner.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"Banner.d.ts","sourceRoot":"","sources":["../../../src/ui/components/Banner.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEjD,UAAU,WAAW;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,QAAQ,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA6BD,wBAAgB,MAAM,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,WAAW,2CA0GhF"}
|
|
@@ -28,7 +28,7 @@ const GAP = " ";
|
|
|
28
28
|
// Logo is 9 visible chars wide + GAP (3) = 12 chars before info text
|
|
29
29
|
const LOGO_WIDTH = 9;
|
|
30
30
|
const SIDE_BY_SIDE_MIN = LOGO_WIDTH + GAP.length + 20; // need ~32 cols for side-by-side
|
|
31
|
-
export function Banner({ version, model, cwd, taskCount }) {
|
|
31
|
+
export function Banner({ version, model, cwd, taskCount, goalCount }) {
|
|
32
32
|
const theme = useTheme();
|
|
33
33
|
const { columns } = useTerminalSize();
|
|
34
34
|
const modelInfo = getModel(model);
|
|
@@ -41,9 +41,9 @@ export function Banner({ version, model, cwd, taskCount }) {
|
|
|
41
41
|
const shift = 0;
|
|
42
42
|
// At narrow widths, stack logo above info instead of side-by-side
|
|
43
43
|
if (columns < SIDE_BY_SIDE_MIN) {
|
|
44
|
-
return (_jsxs(Box, { flexDirection: "column", marginTop: 1, marginBottom: 1, width: columns, children: [_jsx(GradientText, { text: LOGO_LINES[0], shift: shift }), _jsx(GradientText, { text: LOGO_LINES[1], shift: shift }), _jsx(GradientText, { text: LOGO_LINES[2], shift: shift }), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: theme.primary, bold: true, children: "GG Coder" }), _jsxs(Text, { color: theme.textDim, children: [" v", version] })] }), _jsxs(Box, { children: [_jsx(Text, { color: theme.secondary, children: modelName }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.textDim, wrap: "truncate", children: displayPath })] }), _jsxs(Box, { children: [_jsx(Text, { color: theme.primary, children: "^T" }), _jsx(Text, { color: theme.textDim, children: " tasks" }), taskCount !== undefined && taskCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", taskCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^S" }), _jsx(Text, { color: theme.textDim, children: " skills" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^P" }), _jsx(Text, { color: theme.textDim, children: " plan" })] })] }));
|
|
44
|
+
return (_jsxs(Box, { flexDirection: "column", marginTop: 1, marginBottom: 1, width: columns, children: [_jsx(GradientText, { text: LOGO_LINES[0], shift: shift }), _jsx(GradientText, { text: LOGO_LINES[1], shift: shift }), _jsx(GradientText, { text: LOGO_LINES[2], shift: shift }), _jsxs(Box, { marginTop: 1, children: [_jsx(Text, { color: theme.primary, bold: true, children: "GG Coder" }), _jsxs(Text, { color: theme.textDim, children: [" v", version] })] }), _jsxs(Box, { children: [_jsx(Text, { color: theme.secondary, children: modelName }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.textDim, wrap: "truncate", children: displayPath })] }), _jsxs(Box, { children: [_jsx(Text, { color: theme.primary, children: "^T" }), _jsx(Text, { color: theme.textDim, children: " tasks" }), taskCount !== undefined && taskCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", taskCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^G" }), _jsx(Text, { color: theme.textDim, children: " goal" }), goalCount !== undefined && goalCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", goalCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^S" }), _jsx(Text, { color: theme.textDim, children: " skills" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^P" }), _jsx(Text, { color: theme.textDim, children: " plan" })] })] }));
|
|
45
45
|
}
|
|
46
|
-
return (_jsxs(Box, { flexDirection: "column", marginTop: 1, marginBottom: 1, width: columns, children: [_jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[0], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.primary, bold: true, children: "GG Coder" }), _jsxs(Text, { color: theme.textDim, children: [" v", version] }), _jsx(Text, { color: theme.textDim, children: " \u00B7 By " }), _jsx(Text, { color: theme.text, bold: true, children: "Ken Kai" })] }), _jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[1], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.secondary, children: modelName }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.textDim, wrap: "truncate", children: displayPath })] }), _jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[2], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.primary, children: "^T" }), _jsx(Text, { color: theme.textDim, children: " tasks" }), taskCount !== undefined && taskCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", taskCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^S" }), _jsx(Text, { color: theme.textDim, children: " skills" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^P" }), _jsx(Text, { color: theme.textDim, children: " plan mode" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "\u21E7Tab" }), _jsx(Text, { color: theme.textDim, children: " thinking" })] })] }));
|
|
46
|
+
return (_jsxs(Box, { flexDirection: "column", marginTop: 1, marginBottom: 1, width: columns, children: [_jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[0], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.primary, bold: true, children: "GG Coder" }), _jsxs(Text, { color: theme.textDim, children: [" v", version] }), _jsx(Text, { color: theme.textDim, children: " \u00B7 By " }), _jsx(Text, { color: theme.text, bold: true, children: "Ken Kai" })] }), _jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[1], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.secondary, children: modelName }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.textDim, wrap: "truncate", children: displayPath })] }), _jsxs(Box, { children: [_jsx(GradientText, { text: LOGO_LINES[2], shift: shift }), _jsx(Text, { children: GAP }), _jsx(Text, { color: theme.primary, children: "^T" }), _jsx(Text, { color: theme.textDim, children: " tasks" }), taskCount !== undefined && taskCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", taskCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^G" }), _jsx(Text, { color: theme.textDim, children: " goal" }), goalCount !== undefined && goalCount > 0 && (_jsxs(Text, { color: theme.secondary, children: [" (", goalCount, ")"] })), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^S" }), _jsx(Text, { color: theme.textDim, children: " skills" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "^P" }), _jsx(Text, { color: theme.textDim, children: " plan mode" }), _jsx(Text, { color: theme.textDim, children: " " }), _jsx(Text, { color: theme.primary, children: "\u21E7Tab" }), _jsx(Text, { color: theme.textDim, children: " thinking" })] })] }));
|
|
47
47
|
}
|
|
48
48
|
function GradientText({ text, shift = 0 }) {
|
|
49
49
|
const chars = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Banner.js","sourceRoot":"","sources":["../../../src/ui/components/Banner.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"Banner.js","sourceRoot":"","sources":["../../../src/ui/components/Banner.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { type GoalRun, type GoalRunStatus } from "../../core/goal-store.js";
|
|
2
|
+
export interface GoalOverlayProps {
|
|
3
|
+
cwd: string;
|
|
4
|
+
onClose: () => void;
|
|
5
|
+
onRunGoal: (run: GoalRun) => void;
|
|
6
|
+
onVerifyGoal: (run: GoalRun) => void;
|
|
7
|
+
onPauseGoal: (run: GoalRun) => void;
|
|
8
|
+
agentRunning?: boolean;
|
|
9
|
+
}
|
|
10
|
+
export declare function clampGoalSelectedIndex(index: number, length: number): number;
|
|
11
|
+
export declare function formatGoalPrerequisiteSummary(run: GoalRun): string;
|
|
12
|
+
export declare function formatGoalTaskSummary(run: GoalRun): string;
|
|
13
|
+
export declare function formatGoalVerifierSummary(run: GoalRun): string;
|
|
14
|
+
export declare function getGoalReadinessText(run: GoalRun): string;
|
|
15
|
+
export declare function formatGoalProgressText(run: GoalRun): string;
|
|
16
|
+
export declare function getGoalStatusCountsText(runs: readonly GoalRun[]): string;
|
|
17
|
+
export declare function clampGoalScrollOffset(offset: number, itemCount: number, viewportRows: number): number;
|
|
18
|
+
export declare function getGoalOverlayViewportRows(terminalRows: number, reservedRows?: number): number;
|
|
19
|
+
export declare function getGoalScrollOffsetForSelection({ selectedIndex, currentOffset, itemCount, viewportRows, }: {
|
|
20
|
+
selectedIndex: number;
|
|
21
|
+
currentOffset: number;
|
|
22
|
+
itemCount: number;
|
|
23
|
+
viewportRows: number;
|
|
24
|
+
}): number;
|
|
25
|
+
export declare function getGoalDetailRowCount(run: GoalRun): number;
|
|
26
|
+
export declare function getGoalCardExtraRowCount(run: GoalRun): number;
|
|
27
|
+
export declare function getGoalListCardRowCount({ run }: {
|
|
28
|
+
run: GoalRun;
|
|
29
|
+
}): number;
|
|
30
|
+
export interface GoalListWindow {
|
|
31
|
+
start: number;
|
|
32
|
+
end: number;
|
|
33
|
+
hiddenBefore: number;
|
|
34
|
+
hiddenAfter: number;
|
|
35
|
+
rowsUsed: number;
|
|
36
|
+
}
|
|
37
|
+
export declare function getGoalListWindow({ runs, selectedIndex, viewportRows, }: {
|
|
38
|
+
runs: readonly GoalRun[];
|
|
39
|
+
selectedIndex: number;
|
|
40
|
+
viewportRows: number;
|
|
41
|
+
}): GoalListWindow;
|
|
42
|
+
export declare function getGoalExpandedDetailViewportRows({ viewportRows, cardExtraRows, }: {
|
|
43
|
+
viewportRows: number;
|
|
44
|
+
cardExtraRows: number;
|
|
45
|
+
}): number;
|
|
46
|
+
export declare function clampGoalDetailScrollOffset(offset: number, detailRowCount: number, viewportRows: number): number;
|
|
47
|
+
export declare function getGoalDetailScrollWindow({ detailRowCount, scrollOffset, viewportRows, }: {
|
|
48
|
+
detailRowCount: number;
|
|
49
|
+
scrollOffset: number;
|
|
50
|
+
viewportRows: number;
|
|
51
|
+
}): {
|
|
52
|
+
start: number;
|
|
53
|
+
end: number;
|
|
54
|
+
hiddenBefore: number;
|
|
55
|
+
hiddenAfter: number;
|
|
56
|
+
};
|
|
57
|
+
export declare function sortGoalRunsForOverlay(runs: readonly GoalRun[]): GoalRun[];
|
|
58
|
+
export declare function shouldPersistGoalOverlayRuns(previousRuns: readonly GoalRun[], nextRuns: readonly GoalRun[]): boolean;
|
|
59
|
+
export declare function getGoalCardStatusColor({ status, selected, primaryColor, textColor, }: {
|
|
60
|
+
status: GoalRunStatus;
|
|
61
|
+
selected: boolean;
|
|
62
|
+
primaryColor: string;
|
|
63
|
+
textColor: string;
|
|
64
|
+
}): string;
|
|
65
|
+
export declare function getGoalCardTitleColor({ selected, primaryColor, textColor, }: {
|
|
66
|
+
selected: boolean;
|
|
67
|
+
primaryColor: string;
|
|
68
|
+
textColor: string;
|
|
69
|
+
}): string;
|
|
70
|
+
export declare function getGoalDetailTaskHeading(run: GoalRun): string;
|
|
71
|
+
export declare function getGoalUserPrerequisiteHeading(run: GoalRun): string | null;
|
|
72
|
+
export declare function formatGoalTaskDetailSummary(summary: string): string;
|
|
73
|
+
export declare function GoalOverlay({ cwd, onClose, onRunGoal, onVerifyGoal, onPauseGoal, agentRunning, }: GoalOverlayProps): import("react/jsx-runtime").JSX.Element;
|
|
74
|
+
//# sourceMappingURL=GoalOverlay.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GoalOverlay.d.ts","sourceRoot":"","sources":["../../../src/ui/components/GoalOverlay.tsx"],"names":[],"mappings":"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"}
|