erosolar-cli 1.7.362 → 1.7.364
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/shell/interactiveShell.d.ts +2 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +32 -13
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/shell/terminalInput.d.ts +32 -17
- package/dist/shell/terminalInput.d.ts.map +1 -1
- package/dist/shell/terminalInput.js +185 -219
- package/dist/shell/terminalInput.js.map +1 -1
- package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
- package/dist/shell/terminalInputAdapter.js +5 -2
- package/dist/shell/terminalInputAdapter.js.map +1 -1
- package/dist/subagents/taskRunner.d.ts.map +1 -1
- package/dist/subagents/taskRunner.js +7 -25
- package/dist/subagents/taskRunner.js.map +1 -1
- package/dist/tools/learnTools.js +127 -4
- package/dist/tools/learnTools.js.map +1 -1
- package/dist/ui/ShellUIAdapter.d.ts +27 -0
- package/dist/ui/ShellUIAdapter.d.ts.map +1 -1
- package/dist/ui/ShellUIAdapter.js +175 -9
- package/dist/ui/ShellUIAdapter.js.map +1 -1
- package/dist/ui/compactRenderer.d.ts +139 -0
- package/dist/ui/compactRenderer.d.ts.map +1 -0
- package/dist/ui/compactRenderer.js +398 -0
- package/dist/ui/compactRenderer.js.map +1 -0
- package/dist/ui/inPlaceUpdater.d.ts +181 -0
- package/dist/ui/inPlaceUpdater.d.ts.map +1 -0
- package/dist/ui/inPlaceUpdater.js +515 -0
- package/dist/ui/inPlaceUpdater.js.map +1 -0
- package/dist/ui/theme.d.ts +108 -3
- package/dist/ui/theme.d.ts.map +1 -1
- package/dist/ui/theme.js +124 -3
- package/dist/ui/theme.js.map +1 -1
- package/dist/ui/toolDisplay.d.ts +44 -0
- package/dist/ui/toolDisplay.d.ts.map +1 -1
- package/dist/ui/toolDisplay.js +147 -1
- package/dist/ui/toolDisplay.js.map +1 -1
- package/dist/ui/unified/index.d.ts +11 -0
- package/dist/ui/unified/index.d.ts.map +1 -1
- package/dist/ui/unified/index.js +16 -0
- package/dist/ui/unified/index.js.map +1 -1
- package/dist/ui/unified/layout.d.ts.map +1 -1
- package/dist/ui/unified/layout.js +29 -44
- package/dist/ui/unified/layout.js.map +1 -1
- package/package.json +1 -1
package/dist/ui/theme.js
CHANGED
|
@@ -64,6 +64,62 @@ export const theme = {
|
|
|
64
64
|
border: chalk.hex('#0E7490'), // Darker cyan for borders
|
|
65
65
|
label: chalk.hex('#22D3EE').bold, // Bright cyan for "Thinking" label
|
|
66
66
|
},
|
|
67
|
+
// Badge styles for compact status indicators
|
|
68
|
+
badge: {
|
|
69
|
+
success: chalk.bgHex('#10B981').hex('#000000'), // Green bg, dark text
|
|
70
|
+
error: chalk.bgHex('#EF4444').hex('#FFFFFF'), // Red bg, white text
|
|
71
|
+
warning: chalk.bgHex('#F59E0B').hex('#000000'), // Amber bg, dark text
|
|
72
|
+
info: chalk.bgHex('#3B82F6').hex('#FFFFFF'), // Blue bg, white text
|
|
73
|
+
muted: chalk.bgHex('#4B5563').hex('#F3F4F6'), // Gray bg, light text
|
|
74
|
+
primary: chalk.bgHex('#6366F1').hex('#FFFFFF'), // Indigo bg, white text
|
|
75
|
+
accent: chalk.bgHex('#EC4899').hex('#FFFFFF'), // Pink bg, white text
|
|
76
|
+
cached: chalk.bgHex('#8B5CF6').hex('#FFFFFF'), // Purple bg, white text
|
|
77
|
+
},
|
|
78
|
+
// Inline badge styles (lighter, no background)
|
|
79
|
+
inlineBadge: {
|
|
80
|
+
success: chalk.hex('#34D399'), // Light green
|
|
81
|
+
error: chalk.hex('#F87171'), // Light red
|
|
82
|
+
warning: chalk.hex('#FBBF24'), // Light amber
|
|
83
|
+
info: chalk.hex('#60A5FA'), // Light blue
|
|
84
|
+
muted: chalk.hex('#9CA3AF'), // Gray
|
|
85
|
+
primary: chalk.hex('#818CF8'), // Light indigo
|
|
86
|
+
accent: chalk.hex('#F472B6'), // Light pink
|
|
87
|
+
},
|
|
88
|
+
// Progress indicators
|
|
89
|
+
progress: {
|
|
90
|
+
bar: chalk.hex('#6366F1'), // Progress bar fill
|
|
91
|
+
empty: chalk.hex('#374151'), // Progress bar empty
|
|
92
|
+
text: chalk.hex('#D1D5DB'), // Progress text
|
|
93
|
+
percentage: chalk.hex('#F59E0B'), // Percentage number
|
|
94
|
+
},
|
|
95
|
+
// Status line styles
|
|
96
|
+
status: {
|
|
97
|
+
active: chalk.hex('#10B981'), // Active/running status
|
|
98
|
+
pending: chalk.hex('#6B7280'), // Pending/waiting status
|
|
99
|
+
completed: chalk.hex('#9CA3AF'), // Completed status
|
|
100
|
+
separator: chalk.hex('#4B5563'), // Status separator
|
|
101
|
+
},
|
|
102
|
+
// File operation styles
|
|
103
|
+
file: {
|
|
104
|
+
path: chalk.hex('#38BDF8'), // File paths
|
|
105
|
+
additions: chalk.hex('#10B981'), // +X additions
|
|
106
|
+
removals: chalk.hex('#EF4444'), // -X removals
|
|
107
|
+
unchanged: chalk.hex('#6B7280'), // Unchanged indicator
|
|
108
|
+
},
|
|
109
|
+
// Search result styles
|
|
110
|
+
search: {
|
|
111
|
+
match: chalk.hex('#FCD34D').bold, // Matching text highlight
|
|
112
|
+
context: chalk.hex('#9CA3AF'), // Context lines
|
|
113
|
+
lineNum: chalk.hex('#6B7280'), // Line numbers
|
|
114
|
+
filename: chalk.hex('#38BDF8'), // File names in results
|
|
115
|
+
},
|
|
116
|
+
// Agent/task styles
|
|
117
|
+
agent: {
|
|
118
|
+
name: chalk.hex('#EC4899'), // Agent name
|
|
119
|
+
task: chalk.hex('#8B5CF6'), // Task description
|
|
120
|
+
result: chalk.hex('#10B981'), // Task result
|
|
121
|
+
duration: chalk.hex('#F59E0B'), // Task duration
|
|
122
|
+
},
|
|
67
123
|
user: chalk.hex('#3B82F6'),
|
|
68
124
|
assistant: chalk.hex('#8B5CF6'),
|
|
69
125
|
system: chalk.hex('#6B7280'),
|
|
@@ -78,20 +134,85 @@ export const theme = {
|
|
|
78
134
|
* - > (user prompt): User input prefix (used in formatUserPrompt)
|
|
79
135
|
*/
|
|
80
136
|
export const icons = {
|
|
137
|
+
// Status indicators
|
|
81
138
|
success: '✓',
|
|
82
139
|
error: '✗',
|
|
83
140
|
warning: '⚠',
|
|
84
141
|
info: 'ℹ',
|
|
142
|
+
pending: '○',
|
|
143
|
+
running: '◐',
|
|
144
|
+
cached: '⚡',
|
|
145
|
+
// Navigation & flow
|
|
85
146
|
arrow: '→',
|
|
147
|
+
arrowRight: '▸',
|
|
148
|
+
arrowDown: '▾',
|
|
86
149
|
bullet: '•',
|
|
150
|
+
dot: '·',
|
|
151
|
+
// Tool indicators
|
|
87
152
|
thinking: '◐',
|
|
88
153
|
tool: '⚙',
|
|
89
|
-
user: '❯',
|
|
90
|
-
assistant: '◆',
|
|
91
|
-
loading: '⣾',
|
|
92
154
|
action: '⏺', // Claude Code: tool actions and thoughts
|
|
93
155
|
subaction: '⎿', // Claude Code: results and details
|
|
156
|
+
// User/assistant
|
|
157
|
+
user: '❯',
|
|
158
|
+
assistant: '◆',
|
|
94
159
|
sparkle: '✨', // Erosolar branding
|
|
160
|
+
// Progress & loading
|
|
161
|
+
loading: '⣾',
|
|
162
|
+
spinner: ['◐', '◓', '◑', '◒'],
|
|
163
|
+
progress: ['░', '▒', '▓', '█'],
|
|
164
|
+
// File operations
|
|
165
|
+
file: '📄',
|
|
166
|
+
folder: '📁',
|
|
167
|
+
edit: '✏️',
|
|
168
|
+
read: '📖',
|
|
169
|
+
write: '💾',
|
|
170
|
+
delete: '🗑️',
|
|
171
|
+
// Search & find
|
|
172
|
+
search: '🔍',
|
|
173
|
+
match: '◉',
|
|
174
|
+
noMatch: '○',
|
|
175
|
+
// Grouping & hierarchy
|
|
176
|
+
branch: '│',
|
|
177
|
+
corner: '└',
|
|
178
|
+
tee: '├',
|
|
179
|
+
horizontal: '─',
|
|
180
|
+
// Context & metrics
|
|
181
|
+
context: '⊛',
|
|
182
|
+
time: '⏱',
|
|
183
|
+
memory: '◈',
|
|
184
|
+
};
|
|
185
|
+
/**
|
|
186
|
+
* Spinner animation frames (braille dots style)
|
|
187
|
+
*/
|
|
188
|
+
export const spinnerFrames = {
|
|
189
|
+
dots: ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'],
|
|
190
|
+
arc: ['◜', '◠', '◝', '◞', '◡', '◟'],
|
|
191
|
+
circle: ['◐', '◓', '◑', '◒'],
|
|
192
|
+
bounce: ['⠁', '⠂', '⠄', '⡀', '⢀', '⠠', '⠐', '⠈'],
|
|
193
|
+
braille: ['⣾', '⣽', '⣻', '⢿', '⡿', '⣟', '⣯', '⣷'],
|
|
194
|
+
};
|
|
195
|
+
/**
|
|
196
|
+
* Progress bar characters
|
|
197
|
+
*/
|
|
198
|
+
export const progressChars = {
|
|
199
|
+
filled: '█',
|
|
200
|
+
empty: '░',
|
|
201
|
+
partial: ['▏', '▎', '▍', '▌', '▋', '▊', '▉'],
|
|
202
|
+
};
|
|
203
|
+
/**
|
|
204
|
+
* Box drawing characters for panels
|
|
205
|
+
*/
|
|
206
|
+
export const boxChars = {
|
|
207
|
+
topLeft: '╭',
|
|
208
|
+
topRight: '╮',
|
|
209
|
+
bottomLeft: '╰',
|
|
210
|
+
bottomRight: '╯',
|
|
211
|
+
horizontal: '─',
|
|
212
|
+
vertical: '│',
|
|
213
|
+
teeRight: '├',
|
|
214
|
+
teeLeft: '┤',
|
|
215
|
+
cross: '┼',
|
|
95
216
|
};
|
|
96
217
|
export function formatBanner(profileLabel, model) {
|
|
97
218
|
const name = profileLabel || 'Agent';
|
package/dist/ui/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/ui/theme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../../src/ui/theme.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/toolDisplay.d.ts
CHANGED
|
@@ -6,6 +6,8 @@
|
|
|
6
6
|
* - Result summaries with status indicators
|
|
7
7
|
* - Expandable content with previews
|
|
8
8
|
* - Diff formatting with colors
|
|
9
|
+
* - Advanced progress indicators
|
|
10
|
+
* - Compact same-line displays
|
|
9
11
|
*/
|
|
10
12
|
export interface ToolCallDisplay {
|
|
11
13
|
name: string;
|
|
@@ -148,4 +150,46 @@ export interface ToolResultSummaryInput {
|
|
|
148
150
|
* @returns Formatted string to display, or null if no display needed
|
|
149
151
|
*/
|
|
150
152
|
export declare function formatToolResultSummary(input: ToolResultSummaryInput): string | null;
|
|
153
|
+
/**
|
|
154
|
+
* Format a compact progress bar
|
|
155
|
+
*/
|
|
156
|
+
export declare function formatCompactProgressBar(current: number, total: number, options?: {
|
|
157
|
+
width?: number;
|
|
158
|
+
style?: 'bar' | 'braille' | 'dots';
|
|
159
|
+
}): string;
|
|
160
|
+
/**
|
|
161
|
+
* Format a micro progress indicator (fits in status line)
|
|
162
|
+
*/
|
|
163
|
+
export declare function formatMicroProgress(current: number, total: number): string;
|
|
164
|
+
/**
|
|
165
|
+
* Format a spinner with elapsed time
|
|
166
|
+
*/
|
|
167
|
+
export declare function formatSpinnerWithTime(frame: string, label: string, elapsedMs: number): string;
|
|
168
|
+
/**
|
|
169
|
+
* Format multiple tool operations on a single line
|
|
170
|
+
*/
|
|
171
|
+
export declare function formatCompactToolLine(operations: Array<{
|
|
172
|
+
name: string;
|
|
173
|
+
status: 'success' | 'error' | 'running';
|
|
174
|
+
summary?: string;
|
|
175
|
+
}>, options?: {
|
|
176
|
+
separator?: string;
|
|
177
|
+
maxWidth?: number;
|
|
178
|
+
}): string;
|
|
179
|
+
/**
|
|
180
|
+
* Format a file operation summary with additions/removals
|
|
181
|
+
*/
|
|
182
|
+
export declare function formatFileOpSummary(path: string, type: 'read' | 'edit' | 'write', stats?: {
|
|
183
|
+
lines?: number;
|
|
184
|
+
additions?: number;
|
|
185
|
+
removals?: number;
|
|
186
|
+
}): string;
|
|
187
|
+
/**
|
|
188
|
+
* Format a search result summary
|
|
189
|
+
*/
|
|
190
|
+
export declare function formatSearchOpSummary(pattern: string, matchCount: number, fileCount?: number, durationMs?: number): string;
|
|
191
|
+
/**
|
|
192
|
+
* Format a context usage badge
|
|
193
|
+
*/
|
|
194
|
+
export declare function formatContextBadge(usedPercentage: number): string;
|
|
151
195
|
//# sourceMappingURL=toolDisplay.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolDisplay.d.ts","sourceRoot":"","sources":["../../src/ui/toolDisplay.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"toolDisplay.d.ts","sourceRoot":"","sources":["../../src/ui/toolDisplay.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/toolDisplay.js
CHANGED
|
@@ -6,9 +6,11 @@
|
|
|
6
6
|
* - Result summaries with status indicators
|
|
7
7
|
* - Expandable content with previews
|
|
8
8
|
* - Diff formatting with colors
|
|
9
|
+
* - Advanced progress indicators
|
|
10
|
+
* - Compact same-line displays
|
|
9
11
|
*/
|
|
10
12
|
import { formatPlan, normalizePlanItems, resolvePlanWidth, wrapPlanText } from '../utils/planFormatter.js';
|
|
11
|
-
import { theme } from './theme.js';
|
|
13
|
+
import { theme, icons, progressChars } from './theme.js';
|
|
12
14
|
/**
|
|
13
15
|
* Format tool call display (Claude Code style)
|
|
14
16
|
*
|
|
@@ -1352,4 +1354,148 @@ function formatLearnResult(toolName, args, output, success) {
|
|
|
1352
1354
|
return `${theme.success('✓')} Learning completed`;
|
|
1353
1355
|
}
|
|
1354
1356
|
}
|
|
1357
|
+
// ============================================================================
|
|
1358
|
+
// ADVANCED PROGRESS INDICATORS
|
|
1359
|
+
// ============================================================================
|
|
1360
|
+
/**
|
|
1361
|
+
* Format a compact progress bar
|
|
1362
|
+
*/
|
|
1363
|
+
export function formatCompactProgressBar(current, total, options = {}) {
|
|
1364
|
+
const { width = 15, style = 'bar' } = options;
|
|
1365
|
+
const percentage = Math.min(100, Math.max(0, Math.round((current / total) * 100)));
|
|
1366
|
+
const filled = Math.round((current / total) * width);
|
|
1367
|
+
const empty = width - filled;
|
|
1368
|
+
let bar;
|
|
1369
|
+
switch (style) {
|
|
1370
|
+
case 'braille': {
|
|
1371
|
+
// Smooth braille progress (8 states per character)
|
|
1372
|
+
const fullBlocks = Math.floor((current / total) * width);
|
|
1373
|
+
const remainder = ((current / total) * width) - fullBlocks;
|
|
1374
|
+
const partials = [' ', '⡀', '⡄', '⡆', '⡇', '⣇', '⣧', '⣷', '⣿'];
|
|
1375
|
+
const partialIndex = Math.floor(remainder * 8);
|
|
1376
|
+
bar = '⣿'.repeat(fullBlocks);
|
|
1377
|
+
if (fullBlocks < width) {
|
|
1378
|
+
bar += partials[partialIndex] ?? ' ';
|
|
1379
|
+
bar += ' '.repeat(width - fullBlocks - 1);
|
|
1380
|
+
}
|
|
1381
|
+
bar = theme.progress?.bar?.(bar) ?? theme.info(bar);
|
|
1382
|
+
break;
|
|
1383
|
+
}
|
|
1384
|
+
case 'dots':
|
|
1385
|
+
bar = theme.success('●').repeat(filled) + theme.ui.muted('○').repeat(empty);
|
|
1386
|
+
break;
|
|
1387
|
+
case 'bar':
|
|
1388
|
+
default:
|
|
1389
|
+
bar = (theme.progress?.bar ?? theme.info)(progressChars.filled.repeat(filled)) +
|
|
1390
|
+
(theme.progress?.empty ?? theme.ui.muted)(progressChars.empty.repeat(empty));
|
|
1391
|
+
}
|
|
1392
|
+
return `[${bar}] ${(theme.progress?.percentage ?? theme.warning)(`${percentage}%`)}`;
|
|
1393
|
+
}
|
|
1394
|
+
/**
|
|
1395
|
+
* Format a micro progress indicator (fits in status line)
|
|
1396
|
+
*/
|
|
1397
|
+
export function formatMicroProgress(current, total) {
|
|
1398
|
+
const percentage = Math.min(100, Math.max(0, Math.round((current / total) * 100)));
|
|
1399
|
+
// Use single-char block progress
|
|
1400
|
+
const blocks = ['░', '▒', '▓', '█'];
|
|
1401
|
+
const blockIndex = Math.min(3, Math.floor(percentage / 25));
|
|
1402
|
+
const block = blocks[blockIndex] ?? '░';
|
|
1403
|
+
return `${theme.info(block)}${percentage}%`;
|
|
1404
|
+
}
|
|
1405
|
+
/**
|
|
1406
|
+
* Format a spinner with elapsed time
|
|
1407
|
+
*/
|
|
1408
|
+
export function formatSpinnerWithTime(frame, label, elapsedMs) {
|
|
1409
|
+
const elapsed = formatDuration(elapsedMs);
|
|
1410
|
+
return `${theme.info(frame)} ${label} ${theme.ui.muted(`(${elapsed})`)}`;
|
|
1411
|
+
}
|
|
1412
|
+
/**
|
|
1413
|
+
* Format multiple tool operations on a single line
|
|
1414
|
+
*/
|
|
1415
|
+
export function formatCompactToolLine(operations, options = {}) {
|
|
1416
|
+
const { separator = ' · ', maxWidth = 80 } = options;
|
|
1417
|
+
const badges = [];
|
|
1418
|
+
let currentLength = 0;
|
|
1419
|
+
for (const op of operations) {
|
|
1420
|
+
const icon = op.status === 'success' ? icons.success :
|
|
1421
|
+
op.status === 'error' ? icons.error : icons.running;
|
|
1422
|
+
const color = op.status === 'success' ? theme.success :
|
|
1423
|
+
op.status === 'error' ? theme.error : theme.info;
|
|
1424
|
+
let badge = `${color(icon)} ${theme.tool(op.name)}`;
|
|
1425
|
+
if (op.summary) {
|
|
1426
|
+
badge += ` ${theme.ui.muted(op.summary)}`;
|
|
1427
|
+
}
|
|
1428
|
+
const badgeLength = badge.replace(/\u001B\[[0-9;]*m/g, '').length;
|
|
1429
|
+
const sepLength = badges.length > 0 ? separator.replace(/\u001B\[[0-9;]*m/g, '').length : 0;
|
|
1430
|
+
if (currentLength + sepLength + badgeLength > maxWidth - 5) {
|
|
1431
|
+
const remaining = operations.length - badges.length;
|
|
1432
|
+
if (remaining > 0) {
|
|
1433
|
+
badges.push(theme.ui.muted(`+${remaining} more`));
|
|
1434
|
+
}
|
|
1435
|
+
break;
|
|
1436
|
+
}
|
|
1437
|
+
badges.push(badge);
|
|
1438
|
+
currentLength += sepLength + badgeLength;
|
|
1439
|
+
}
|
|
1440
|
+
return badges.join(theme.ui.muted(separator));
|
|
1441
|
+
}
|
|
1442
|
+
/**
|
|
1443
|
+
* Format a file operation summary with additions/removals
|
|
1444
|
+
*/
|
|
1445
|
+
export function formatFileOpSummary(path, type, stats) {
|
|
1446
|
+
const shortPath = truncatePathForDisplay(path, 40);
|
|
1447
|
+
const icon = type === 'read' ? icons.success :
|
|
1448
|
+
type === 'edit' ? icons.success : icons.success;
|
|
1449
|
+
const color = theme.success;
|
|
1450
|
+
const parts = [
|
|
1451
|
+
`${color(icon)} ${theme.file?.path?.(shortPath) ?? theme.info(shortPath)}`,
|
|
1452
|
+
];
|
|
1453
|
+
if (stats) {
|
|
1454
|
+
const details = [];
|
|
1455
|
+
if (stats.lines !== undefined) {
|
|
1456
|
+
details.push(`${stats.lines} lines`);
|
|
1457
|
+
}
|
|
1458
|
+
if (stats.additions !== undefined && stats.additions > 0) {
|
|
1459
|
+
details.push((theme.file?.additions ?? theme.success)(`+${stats.additions}`));
|
|
1460
|
+
}
|
|
1461
|
+
if (stats.removals !== undefined && stats.removals > 0) {
|
|
1462
|
+
details.push((theme.file?.removals ?? theme.error)(`-${stats.removals}`));
|
|
1463
|
+
}
|
|
1464
|
+
if (details.length > 0) {
|
|
1465
|
+
parts.push(theme.ui.muted(`(${details.join(', ')})`));
|
|
1466
|
+
}
|
|
1467
|
+
}
|
|
1468
|
+
return parts.join(' ');
|
|
1469
|
+
}
|
|
1470
|
+
/**
|
|
1471
|
+
* Format a search result summary
|
|
1472
|
+
*/
|
|
1473
|
+
export function formatSearchOpSummary(pattern, matchCount, fileCount, durationMs) {
|
|
1474
|
+
const truncPattern = pattern.length > 25 ? `${pattern.slice(0, 22)}...` : pattern;
|
|
1475
|
+
if (matchCount === 0) {
|
|
1476
|
+
return `${theme.warning(icons.pending)} No matches for "${truncPattern}"`;
|
|
1477
|
+
}
|
|
1478
|
+
const parts = [
|
|
1479
|
+
`${theme.success(icons.success)} Found`,
|
|
1480
|
+
theme.info(`${matchCount}`),
|
|
1481
|
+
matchCount === 1 ? 'match' : 'matches',
|
|
1482
|
+
];
|
|
1483
|
+
if (fileCount && fileCount > 0) {
|
|
1484
|
+
parts.push('in', theme.info(`${fileCount}`), fileCount === 1 ? 'file' : 'files');
|
|
1485
|
+
}
|
|
1486
|
+
parts.push(theme.ui.muted(`for "${truncPattern}"`));
|
|
1487
|
+
if (durationMs) {
|
|
1488
|
+
parts.push(theme.ui.muted(`(${formatDuration(durationMs)})`));
|
|
1489
|
+
}
|
|
1490
|
+
return parts.join(' ');
|
|
1491
|
+
}
|
|
1492
|
+
/**
|
|
1493
|
+
* Format a context usage badge
|
|
1494
|
+
*/
|
|
1495
|
+
export function formatContextBadge(usedPercentage) {
|
|
1496
|
+
const remaining = 100 - usedPercentage;
|
|
1497
|
+
const color = usedPercentage > 80 ? theme.error :
|
|
1498
|
+
usedPercentage > 60 ? theme.warning : theme.success;
|
|
1499
|
+
return `${color(icons.context)}${remaining}%`;
|
|
1500
|
+
}
|
|
1355
1501
|
//# sourceMappingURL=toolDisplay.js.map
|