erosolar-cli 1.7.212 → 1.7.214
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/bin/erosolar.js +3 -0
- package/dist/bin/erosolar.js.map +1 -1
- package/dist/mcp/sseClient.d.ts.map +1 -1
- package/dist/mcp/sseClient.js +54 -27
- package/dist/mcp/sseClient.js.map +1 -1
- package/dist/shell/claudeCodeStreamHandler.d.ts.map +1 -1
- package/dist/shell/claudeCodeStreamHandler.js +11 -1
- package/dist/shell/claudeCodeStreamHandler.js.map +1 -1
- package/dist/shell/interactiveShell.d.ts +10 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +69 -15
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/shell/streamingOutputManager.d.ts +1 -0
- package/dist/shell/streamingOutputManager.d.ts.map +1 -1
- package/dist/shell/streamingOutputManager.js +15 -4
- package/dist/shell/streamingOutputManager.js.map +1 -1
- package/dist/shell/terminalInput.d.ts +18 -1
- package/dist/shell/terminalInput.d.ts.map +1 -1
- package/dist/shell/terminalInput.js +68 -3
- package/dist/shell/terminalInput.js.map +1 -1
- package/dist/shell/terminalInputAdapter.d.ts +14 -0
- package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
- package/dist/shell/terminalInputAdapter.js +20 -0
- package/dist/shell/terminalInputAdapter.js.map +1 -1
- package/dist/tools/devTools.d.ts.map +1 -1
- package/dist/tools/devTools.js +0 -180
- package/dist/tools/devTools.js.map +1 -1
- package/dist/ui/display.d.ts +14 -2
- package/dist/ui/display.d.ts.map +1 -1
- package/dist/ui/display.js +56 -14
- package/dist/ui/display.js.map +1 -1
- package/dist/ui/globalWriteLock.d.ts +12 -0
- package/dist/ui/globalWriteLock.d.ts.map +1 -0
- package/dist/ui/globalWriteLock.js +35 -0
- package/dist/ui/globalWriteLock.js.map +1 -0
- package/package.json +1 -1
- package/dist/ui/FixedInputArea.d.ts +0 -108
- package/dist/ui/FixedInputArea.d.ts.map +0 -1
- package/dist/ui/FixedInputArea.js +0 -312
- package/dist/ui/FixedInputArea.js.map +0 -1
- package/dist/ui/advancedTheme.d.ts +0 -246
- package/dist/ui/advancedTheme.d.ts.map +0 -1
- package/dist/ui/advancedTheme.js +0 -478
- package/dist/ui/advancedTheme.js.map +0 -1
- package/dist/ui/collapsibleContent.d.ts +0 -57
- package/dist/ui/collapsibleContent.d.ts.map +0 -1
- package/dist/ui/collapsibleContent.js +0 -106
- package/dist/ui/collapsibleContent.js.map +0 -1
- package/dist/ui/diffViewer.d.ts +0 -42
- package/dist/ui/diffViewer.d.ts.map +0 -1
- package/dist/ui/diffViewer.js +0 -343
- package/dist/ui/diffViewer.js.map +0 -1
- package/dist/ui/gitDisplay.d.ts +0 -45
- package/dist/ui/gitDisplay.d.ts.map +0 -1
- package/dist/ui/gitDisplay.js +0 -215
- package/dist/ui/gitDisplay.js.map +0 -1
- package/dist/ui/gitFormatter.d.ts +0 -29
- package/dist/ui/gitFormatter.d.ts.map +0 -1
- package/dist/ui/gitFormatter.js +0 -203
- package/dist/ui/gitFormatter.js.map +0 -1
- package/dist/ui/keyboardShortcuts.d.ts +0 -49
- package/dist/ui/keyboardShortcuts.d.ts.map +0 -1
- package/dist/ui/keyboardShortcuts.js +0 -128
- package/dist/ui/keyboardShortcuts.js.map +0 -1
- package/dist/ui/logFormatter.d.ts +0 -70
- package/dist/ui/logFormatter.d.ts.map +0 -1
- package/dist/ui/logFormatter.js +0 -323
- package/dist/ui/logFormatter.js.map +0 -1
- package/dist/ui/outputSummarizer.d.ts +0 -52
- package/dist/ui/outputSummarizer.d.ts.map +0 -1
- package/dist/ui/outputSummarizer.js +0 -242
- package/dist/ui/outputSummarizer.js.map +0 -1
- package/dist/ui/progressBar.d.ts +0 -51
- package/dist/ui/progressBar.d.ts.map +0 -1
- package/dist/ui/progressBar.js +0 -153
- package/dist/ui/progressBar.js.map +0 -1
- package/dist/ui/progressIndicator.d.ts +0 -69
- package/dist/ui/progressIndicator.d.ts.map +0 -1
- package/dist/ui/progressIndicator.js +0 -145
- package/dist/ui/progressIndicator.js.map +0 -1
- package/dist/ui/streamingIndicators.d.ts +0 -42
- package/dist/ui/streamingIndicators.d.ts.map +0 -1
- package/dist/ui/streamingIndicators.js +0 -155
- package/dist/ui/streamingIndicators.js.map +0 -1
- package/dist/ui/tableFormatter.d.ts +0 -31
- package/dist/ui/tableFormatter.d.ts.map +0 -1
- package/dist/ui/tableFormatter.js +0 -186
- package/dist/ui/tableFormatter.js.map +0 -1
- package/dist/ui/thinkingTracker.d.ts +0 -51
- package/dist/ui/thinkingTracker.d.ts.map +0 -1
- package/dist/ui/thinkingTracker.js +0 -115
- package/dist/ui/thinkingTracker.js.map +0 -1
- package/dist/ui/toolDisplayAdapter.d.ts +0 -66
- package/dist/ui/toolDisplayAdapter.d.ts.map +0 -1
- package/dist/ui/toolDisplayAdapter.js +0 -356
- package/dist/ui/toolDisplayAdapter.js.map +0 -1
- package/dist/ui/treeVisualizer.d.ts +0 -56
- package/dist/ui/treeVisualizer.d.ts.map +0 -1
- package/dist/ui/treeVisualizer.js +0 -247
- package/dist/ui/treeVisualizer.js.map +0 -1
package/dist/ui/advancedTheme.js
DELETED
|
@@ -1,478 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Advanced Theme System - Sophisticated UI/UX for Claude Code
|
|
3
|
-
* Features gradient effects, animations, and intelligent color schemes
|
|
4
|
-
*/
|
|
5
|
-
import chalk from 'chalk';
|
|
6
|
-
/**
|
|
7
|
-
* Gradient color transitions for sophisticated effects
|
|
8
|
-
*/
|
|
9
|
-
export class GradientEffect {
|
|
10
|
-
/**
|
|
11
|
-
* Create a smooth gradient transition between colors
|
|
12
|
-
*/
|
|
13
|
-
static linearGradient(text, startColor, endColor) {
|
|
14
|
-
const chars = text.split('');
|
|
15
|
-
const steps = chars.length;
|
|
16
|
-
return chars.map((char, i) => {
|
|
17
|
-
if (char === ' ')
|
|
18
|
-
return char;
|
|
19
|
-
const ratio = i / Math.max(1, steps - 1);
|
|
20
|
-
const r = Math.round(startColor[0] + (endColor[0] - startColor[0]) * ratio);
|
|
21
|
-
const g = Math.round(startColor[1] + (endColor[1] - startColor[1]) * ratio);
|
|
22
|
-
const b = Math.round(startColor[2] + (endColor[2] - startColor[2]) * ratio);
|
|
23
|
-
return chalk.rgb(r, g, b)(char);
|
|
24
|
-
}).join('');
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Create a rainbow gradient effect
|
|
28
|
-
*/
|
|
29
|
-
static rainbow(text) {
|
|
30
|
-
const chars = text.split('');
|
|
31
|
-
const hueStep = 360 / Math.max(1, chars.length);
|
|
32
|
-
return chars.map((char, i) => {
|
|
33
|
-
if (char === ' ')
|
|
34
|
-
return char;
|
|
35
|
-
const hue = (i * hueStep) % 360;
|
|
36
|
-
return chalk.hsl(hue, 70, 50)(char);
|
|
37
|
-
}).join('');
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Create a pulse gradient (bright to dim)
|
|
41
|
-
*/
|
|
42
|
-
static pulse(text, color, intensity = 0.5) {
|
|
43
|
-
const chars = text.split('');
|
|
44
|
-
const midpoint = chars.length / 2;
|
|
45
|
-
return chars.map((char, i) => {
|
|
46
|
-
if (char === ' ')
|
|
47
|
-
return char;
|
|
48
|
-
const distance = Math.abs(i - midpoint) / midpoint;
|
|
49
|
-
const brightness = 1 - (distance * intensity);
|
|
50
|
-
const r = Math.round(color[0] * brightness);
|
|
51
|
-
const g = Math.round(color[1] * brightness);
|
|
52
|
-
const b = Math.round(color[2] * brightness);
|
|
53
|
-
return chalk.rgb(r, g, b)(char);
|
|
54
|
-
}).join('');
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Create a wave gradient effect
|
|
58
|
-
*/
|
|
59
|
-
static wave(text, primaryColor, secondaryColor) {
|
|
60
|
-
const chars = text.split('');
|
|
61
|
-
return chars.map((char, i) => {
|
|
62
|
-
if (char === ' ')
|
|
63
|
-
return char;
|
|
64
|
-
const wave = Math.sin(i * 0.5) * 0.5 + 0.5;
|
|
65
|
-
const r = Math.round(primaryColor[0] * wave + secondaryColor[0] * (1 - wave));
|
|
66
|
-
const g = Math.round(primaryColor[1] * wave + secondaryColor[1] * (1 - wave));
|
|
67
|
-
const b = Math.round(primaryColor[2] * wave + secondaryColor[2] * (1 - wave));
|
|
68
|
-
return chalk.rgb(r, g, b)(char);
|
|
69
|
-
}).join('');
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Sophisticated color palettes
|
|
74
|
-
*/
|
|
75
|
-
export const ColorPalettes = {
|
|
76
|
-
neon: {
|
|
77
|
-
primary: [0, 255, 255], // Cyan
|
|
78
|
-
secondary: [255, 0, 255], // Magenta
|
|
79
|
-
accent: [0, 255, 128], // Spring green
|
|
80
|
-
highlight: [255, 255, 0], // Yellow
|
|
81
|
-
warning: [255, 127, 0], // Orange
|
|
82
|
-
error: [255, 0, 127], // Rose
|
|
83
|
-
success: [0, 255, 127], // Mint
|
|
84
|
-
info: [127, 127, 255], // Periwinkle
|
|
85
|
-
},
|
|
86
|
-
aurora: {
|
|
87
|
-
primary: [64, 224, 208], // Turquoise
|
|
88
|
-
secondary: [147, 112, 219], // Medium purple
|
|
89
|
-
accent: [255, 182, 193], // Light pink
|
|
90
|
-
highlight: [255, 218, 185], // Peach puff
|
|
91
|
-
warning: [255, 160, 122], // Light salmon
|
|
92
|
-
error: [219, 112, 147], // Pale violet red
|
|
93
|
-
success: [152, 251, 152], // Pale green
|
|
94
|
-
info: [176, 196, 222], // Light steel blue
|
|
95
|
-
},
|
|
96
|
-
matrix: {
|
|
97
|
-
primary: [0, 255, 0], // Pure green
|
|
98
|
-
secondary: [0, 192, 0], // Dark green
|
|
99
|
-
accent: [128, 255, 128], // Light green
|
|
100
|
-
highlight: [192, 255, 192], // Pale green
|
|
101
|
-
warning: [255, 255, 0], // Yellow
|
|
102
|
-
error: [255, 64, 64], // Light red
|
|
103
|
-
success: [0, 255, 128], // Spring green
|
|
104
|
-
info: [0, 192, 255], // Sky blue
|
|
105
|
-
},
|
|
106
|
-
sunset: {
|
|
107
|
-
primary: [255, 94, 77], // Sunset orange
|
|
108
|
-
secondary: [255, 154, 0], // Deep orange
|
|
109
|
-
accent: [255, 206, 84], // Sunflower
|
|
110
|
-
highlight: [237, 117, 57], // Burnt orange
|
|
111
|
-
warning: [255, 196, 0], // Gold
|
|
112
|
-
error: [220, 53, 69], // Crimson
|
|
113
|
-
success: [95, 189, 102], // Emerald
|
|
114
|
-
info: [91, 192, 222], // Sky blue
|
|
115
|
-
},
|
|
116
|
-
midnight: {
|
|
117
|
-
primary: [100, 149, 237], // Cornflower blue
|
|
118
|
-
secondary: [72, 61, 139], // Dark slate blue
|
|
119
|
-
accent: [123, 104, 238], // Medium slate blue
|
|
120
|
-
highlight: [147, 112, 219], // Medium purple
|
|
121
|
-
warning: [255, 215, 0], // Gold
|
|
122
|
-
error: [220, 20, 60], // Crimson
|
|
123
|
-
success: [50, 205, 50], // Lime green
|
|
124
|
-
info: [135, 206, 250], // Light sky blue
|
|
125
|
-
}
|
|
126
|
-
};
|
|
127
|
-
/**
|
|
128
|
-
* Animation frame generators for sophisticated effects
|
|
129
|
-
*/
|
|
130
|
-
export class AnimationFrames {
|
|
131
|
-
/**
|
|
132
|
-
* Generate spinner frames with smooth transitions
|
|
133
|
-
*/
|
|
134
|
-
static quantumSpinner() {
|
|
135
|
-
const symbols = ['◐', '◓', '◑', '◒', '⟳', '⟲', '⌛', '⏳', '⧗', '⧖'];
|
|
136
|
-
return symbols;
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Generate elegant loading dots
|
|
140
|
-
*/
|
|
141
|
-
static elegantDots() {
|
|
142
|
-
return [
|
|
143
|
-
'⣾', '⣽', '⣻', '⢿', '⡿', '⣟', '⣯', '⣷',
|
|
144
|
-
'⣿', '⣯', '⣟', '⡿', '⢿', '⣻', '⣽', '⣾'
|
|
145
|
-
];
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Generate orbital spinner
|
|
149
|
-
*/
|
|
150
|
-
static orbital() {
|
|
151
|
-
return ['◴', '◷', '◶', '◵', '◸', '◹', '◺', '◿'];
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Generate pulse effect
|
|
155
|
-
*/
|
|
156
|
-
static pulse() {
|
|
157
|
-
return ['⬤', '◉', '◎', '○', '◎', '◉'];
|
|
158
|
-
}
|
|
159
|
-
/**
|
|
160
|
-
* Generate wave effect
|
|
161
|
-
*/
|
|
162
|
-
static wave() {
|
|
163
|
-
return [
|
|
164
|
-
'▁▂▃', '▂▃▄', '▃▄▅', '▄▅▆', '▅▆▇', '▆▇█', '▇█▇', '█▇▆',
|
|
165
|
-
'▇▆▅', '▆▅▄', '▅▄▃', '▄▃▂', '▃▂▁', '▂▁▂'
|
|
166
|
-
];
|
|
167
|
-
}
|
|
168
|
-
/**
|
|
169
|
-
* Generate helix spinner
|
|
170
|
-
*/
|
|
171
|
-
static helix() {
|
|
172
|
-
return ['⠁', '⠂', '⠄', '⡀', '⢀', '⠠', '⠐', '⠈'];
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
/**
|
|
176
|
-
* Advanced UI symbols and icons
|
|
177
|
-
*/
|
|
178
|
-
export const AdvancedSymbols = {
|
|
179
|
-
// Status indicators with style
|
|
180
|
-
status: {
|
|
181
|
-
running: '◉',
|
|
182
|
-
pending: '◯',
|
|
183
|
-
success: '✦',
|
|
184
|
-
error: '✗',
|
|
185
|
-
warning: '⚡',
|
|
186
|
-
info: '◈',
|
|
187
|
-
thinking: '◐',
|
|
188
|
-
complete: '◆',
|
|
189
|
-
},
|
|
190
|
-
// Tool operation symbols
|
|
191
|
-
tools: {
|
|
192
|
-
read: '📖',
|
|
193
|
-
write: '✏️',
|
|
194
|
-
edit: '✂️',
|
|
195
|
-
search: '🔍',
|
|
196
|
-
execute: '⚡',
|
|
197
|
-
web: '🌐',
|
|
198
|
-
task: '🎯',
|
|
199
|
-
glob: '📁',
|
|
200
|
-
},
|
|
201
|
-
// Progress indicators
|
|
202
|
-
progress: {
|
|
203
|
-
empty: '░',
|
|
204
|
-
quarter: '▒',
|
|
205
|
-
half: '▓',
|
|
206
|
-
full: '█',
|
|
207
|
-
gradient: ['░', '▒', '▓', '█'],
|
|
208
|
-
},
|
|
209
|
-
// Sophisticated arrows
|
|
210
|
-
arrows: {
|
|
211
|
-
right: '➤',
|
|
212
|
-
left: '➤',
|
|
213
|
-
up: '⬆',
|
|
214
|
-
down: '⬇',
|
|
215
|
-
curved: '↪',
|
|
216
|
-
double: '⇒',
|
|
217
|
-
elegant: '→',
|
|
218
|
-
branch: '├',
|
|
219
|
-
end: '└',
|
|
220
|
-
},
|
|
221
|
-
// Box drawing for sophisticated layouts
|
|
222
|
-
box: {
|
|
223
|
-
topLeft: '╭',
|
|
224
|
-
topRight: '╮',
|
|
225
|
-
bottomLeft: '╰',
|
|
226
|
-
bottomRight: '╯',
|
|
227
|
-
horizontal: '─',
|
|
228
|
-
vertical: '│',
|
|
229
|
-
cross: '┼',
|
|
230
|
-
tee: '├',
|
|
231
|
-
},
|
|
232
|
-
// Decorative elements
|
|
233
|
-
decorative: {
|
|
234
|
-
star: '✦',
|
|
235
|
-
diamond: '◆',
|
|
236
|
-
circle: '◉',
|
|
237
|
-
square: '▣',
|
|
238
|
-
triangle: '▲',
|
|
239
|
-
hexagon: '⬡',
|
|
240
|
-
sparkle: '✨',
|
|
241
|
-
lightning: '⚡',
|
|
242
|
-
}
|
|
243
|
-
};
|
|
244
|
-
/**
|
|
245
|
-
* Sophisticated text effects
|
|
246
|
-
*/
|
|
247
|
-
export class TextEffects {
|
|
248
|
-
/**
|
|
249
|
-
* Apply glitch effect to text
|
|
250
|
-
*/
|
|
251
|
-
static glitch(text, intensity = 0.1) {
|
|
252
|
-
const glitchChars = '░▒▓█▀▄▌▐│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌';
|
|
253
|
-
const chars = text.split('');
|
|
254
|
-
return chars.map(char => {
|
|
255
|
-
if (Math.random() < intensity && char !== ' ') {
|
|
256
|
-
const glitchChar = glitchChars[Math.floor(Math.random() * glitchChars.length)];
|
|
257
|
-
return chalk.rgb(255, 0, 255)(glitchChar);
|
|
258
|
-
}
|
|
259
|
-
return char;
|
|
260
|
-
}).join('');
|
|
261
|
-
}
|
|
262
|
-
/**
|
|
263
|
-
* Apply neon glow effect
|
|
264
|
-
*/
|
|
265
|
-
static neonGlow(text, color) {
|
|
266
|
-
// Create multi-layer effect for glow
|
|
267
|
-
const dimColor = color.map(c => Math.round(c * 0.3));
|
|
268
|
-
const brightColor = color.map(c => Math.min(255, Math.round(c * 1.2)));
|
|
269
|
-
return chalk.rgb(...dimColor).bgRgb(...brightColor)(` ${text} `);
|
|
270
|
-
}
|
|
271
|
-
/**
|
|
272
|
-
* Apply matrix rain effect
|
|
273
|
-
*/
|
|
274
|
-
static matrixRain(text) {
|
|
275
|
-
const chars = text.split('');
|
|
276
|
-
return chars.map((char) => {
|
|
277
|
-
if (char === ' ')
|
|
278
|
-
return char;
|
|
279
|
-
const brightness = Math.random();
|
|
280
|
-
const green = Math.round(255 * brightness);
|
|
281
|
-
return chalk.rgb(0, green, 0)(char);
|
|
282
|
-
}).join('');
|
|
283
|
-
}
|
|
284
|
-
/**
|
|
285
|
-
* Apply holographic effect
|
|
286
|
-
*/
|
|
287
|
-
static holographic(text) {
|
|
288
|
-
const chars = text.split('');
|
|
289
|
-
const time = Date.now() / 1000;
|
|
290
|
-
return chars.map((char, i) => {
|
|
291
|
-
if (char === ' ')
|
|
292
|
-
return char;
|
|
293
|
-
const hue = ((i * 20) + (time * 50)) % 360;
|
|
294
|
-
return chalk.hsl(hue, 100, 50)(char);
|
|
295
|
-
}).join('');
|
|
296
|
-
}
|
|
297
|
-
/**
|
|
298
|
-
* Apply typewriter effect formatting
|
|
299
|
-
*/
|
|
300
|
-
static typewriter(text, _charDelay = 50) {
|
|
301
|
-
const frames = [];
|
|
302
|
-
const chars = text.split('');
|
|
303
|
-
for (let i = 1; i <= chars.length; i++) {
|
|
304
|
-
frames.push(`${chars.slice(0, i).join('')}▊`);
|
|
305
|
-
}
|
|
306
|
-
frames.push(text);
|
|
307
|
-
return frames;
|
|
308
|
-
}
|
|
309
|
-
}
|
|
310
|
-
/**
|
|
311
|
-
* Advanced theme manager
|
|
312
|
-
*/
|
|
313
|
-
export class AdvancedTheme {
|
|
314
|
-
currentPalette = ColorPalettes.aurora;
|
|
315
|
-
animationFrame = 0;
|
|
316
|
-
/**
|
|
317
|
-
* Set color palette
|
|
318
|
-
*/
|
|
319
|
-
setPalette(palette) {
|
|
320
|
-
this.currentPalette = ColorPalettes[palette];
|
|
321
|
-
}
|
|
322
|
-
/**
|
|
323
|
-
* Format with gradient
|
|
324
|
-
*/
|
|
325
|
-
gradient(text, type = 'linear') {
|
|
326
|
-
switch (type) {
|
|
327
|
-
case 'rainbow':
|
|
328
|
-
return GradientEffect.rainbow(text);
|
|
329
|
-
case 'pulse':
|
|
330
|
-
return GradientEffect.pulse(text, this.currentPalette.primary);
|
|
331
|
-
case 'wave':
|
|
332
|
-
return GradientEffect.wave(text, this.currentPalette.primary, this.currentPalette.secondary);
|
|
333
|
-
default:
|
|
334
|
-
return GradientEffect.linearGradient(text, this.currentPalette.primary, this.currentPalette.secondary);
|
|
335
|
-
}
|
|
336
|
-
}
|
|
337
|
-
/**
|
|
338
|
-
* Format status with appropriate styling
|
|
339
|
-
*/
|
|
340
|
-
formatStatus(text, status) {
|
|
341
|
-
const symbol = AdvancedSymbols.status[status];
|
|
342
|
-
// Map status to palette key (running maps to primary)
|
|
343
|
-
const paletteKey = status === 'running' ? 'primary' : status;
|
|
344
|
-
const color = this.currentPalette[paletteKey] || this.currentPalette.primary;
|
|
345
|
-
const [r, g, b] = color;
|
|
346
|
-
return `${chalk.rgb(r, g, b)(symbol)} ${text}`;
|
|
347
|
-
}
|
|
348
|
-
/**
|
|
349
|
-
* Create sophisticated header
|
|
350
|
-
*/
|
|
351
|
-
createHeader(title, subtitle) {
|
|
352
|
-
const width = process.stdout.columns || 80;
|
|
353
|
-
const border = AdvancedSymbols.box.horizontal.repeat(width - 2);
|
|
354
|
-
const titleFormatted = this.gradient(title.toUpperCase(), 'wave');
|
|
355
|
-
const centered = this.center(titleFormatted, width);
|
|
356
|
-
let output = `${AdvancedSymbols.box.topLeft}${border}${AdvancedSymbols.box.topRight}\n`;
|
|
357
|
-
output += `${AdvancedSymbols.box.vertical}${centered}${AdvancedSymbols.box.vertical}\n`;
|
|
358
|
-
if (subtitle) {
|
|
359
|
-
const subtitleFormatted = chalk.rgb(...this.currentPalette.accent)(subtitle);
|
|
360
|
-
const centeredSub = this.center(subtitleFormatted, width);
|
|
361
|
-
output += `${AdvancedSymbols.box.vertical}${centeredSub}${AdvancedSymbols.box.vertical}\n`;
|
|
362
|
-
}
|
|
363
|
-
output += `${AdvancedSymbols.box.bottomLeft}${border}${AdvancedSymbols.box.bottomRight}`;
|
|
364
|
-
return output;
|
|
365
|
-
}
|
|
366
|
-
/**
|
|
367
|
-
* Create progress bar with gradient
|
|
368
|
-
*/
|
|
369
|
-
createProgressBar(progress, width = 30, showPercentage = true) {
|
|
370
|
-
const filled = Math.round(progress * width);
|
|
371
|
-
const empty = width - filled;
|
|
372
|
-
const bar = AdvancedSymbols.progress.full.repeat(filled) +
|
|
373
|
-
AdvancedSymbols.progress.empty.repeat(empty);
|
|
374
|
-
const gradientBar = GradientEffect.linearGradient(bar, this.currentPalette.success, this.currentPalette.primary);
|
|
375
|
-
const percentage = showPercentage ? ` ${Math.round(progress * 100)}%` : '';
|
|
376
|
-
return `[${gradientBar}]${percentage}`;
|
|
377
|
-
}
|
|
378
|
-
/**
|
|
379
|
-
* Get next animation frame
|
|
380
|
-
*/
|
|
381
|
-
getNextSpinnerFrame(type = 'quantum') {
|
|
382
|
-
let frames;
|
|
383
|
-
switch (type) {
|
|
384
|
-
case 'elegant':
|
|
385
|
-
frames = AnimationFrames.elegantDots();
|
|
386
|
-
break;
|
|
387
|
-
case 'orbital':
|
|
388
|
-
frames = AnimationFrames.orbital();
|
|
389
|
-
break;
|
|
390
|
-
case 'pulse':
|
|
391
|
-
frames = AnimationFrames.pulse();
|
|
392
|
-
break;
|
|
393
|
-
case 'wave':
|
|
394
|
-
frames = AnimationFrames.wave();
|
|
395
|
-
break;
|
|
396
|
-
case 'helix':
|
|
397
|
-
frames = AnimationFrames.helix();
|
|
398
|
-
break;
|
|
399
|
-
default:
|
|
400
|
-
frames = AnimationFrames.quantumSpinner();
|
|
401
|
-
}
|
|
402
|
-
const frame = frames[this.animationFrame % frames.length] || '◐';
|
|
403
|
-
this.animationFrame++;
|
|
404
|
-
return this.gradient(frame, 'pulse');
|
|
405
|
-
}
|
|
406
|
-
/**
|
|
407
|
-
* Center text within width
|
|
408
|
-
*/
|
|
409
|
-
center(text, width) {
|
|
410
|
-
// Remove ANSI codes to get actual text length
|
|
411
|
-
// eslint-disable-next-line no-control-regex
|
|
412
|
-
const textLength = text.replace(/\u001b\[[0-9;]*m/g, '').length;
|
|
413
|
-
const padding = Math.max(0, Math.floor((width - textLength - 2) / 2));
|
|
414
|
-
return ' '.repeat(padding) + text + ' '.repeat(width - textLength - padding - 2);
|
|
415
|
-
}
|
|
416
|
-
/**
|
|
417
|
-
* Create sophisticated separator
|
|
418
|
-
*/
|
|
419
|
-
createSeparator(type = 'gradient') {
|
|
420
|
-
const width = process.stdout.columns || 80;
|
|
421
|
-
switch (type) {
|
|
422
|
-
case 'wave': {
|
|
423
|
-
const wave = '~'.repeat(width);
|
|
424
|
-
return GradientEffect.wave(wave, this.currentPalette.primary, this.currentPalette.secondary);
|
|
425
|
-
}
|
|
426
|
-
case 'dots': {
|
|
427
|
-
const dots = '• '.repeat(width / 2);
|
|
428
|
-
return chalk.rgb(...this.currentPalette.accent)(dots);
|
|
429
|
-
}
|
|
430
|
-
case 'stars': {
|
|
431
|
-
const stars = '✦ '.repeat(width / 2);
|
|
432
|
-
return GradientEffect.rainbow(stars);
|
|
433
|
-
}
|
|
434
|
-
default: {
|
|
435
|
-
const line = '─'.repeat(width);
|
|
436
|
-
return GradientEffect.linearGradient(line, this.currentPalette.primary, this.currentPalette.secondary);
|
|
437
|
-
}
|
|
438
|
-
}
|
|
439
|
-
}
|
|
440
|
-
/**
|
|
441
|
-
* Format code block with syntax highlighting
|
|
442
|
-
*/
|
|
443
|
-
formatCodeBlock(code, language = 'typescript') {
|
|
444
|
-
const lines = code.split('\n');
|
|
445
|
-
const formatted = lines.map((line, i) => {
|
|
446
|
-
const lineNum = chalk.rgb(...this.currentPalette.accent)(`${(i + 1).toString().padStart(3)} │`);
|
|
447
|
-
const highlightedLine = this.highlightSyntax(line, language);
|
|
448
|
-
return `${lineNum} ${highlightedLine}`;
|
|
449
|
-
});
|
|
450
|
-
return formatted.join('\n');
|
|
451
|
-
}
|
|
452
|
-
/**
|
|
453
|
-
* Basic syntax highlighting
|
|
454
|
-
*/
|
|
455
|
-
highlightSyntax(line, language) {
|
|
456
|
-
const keywords = {
|
|
457
|
-
typescript: ['const', 'let', 'var', 'function', 'class', 'interface', 'type', 'import', 'export', 'return', 'if', 'else', 'for', 'while'],
|
|
458
|
-
python: ['def', 'class', 'import', 'from', 'return', 'if', 'else', 'for', 'while', 'with', 'as', 'try', 'except'],
|
|
459
|
-
};
|
|
460
|
-
let highlighted = line;
|
|
461
|
-
const keywordList = keywords[language] || keywords.typescript;
|
|
462
|
-
// Highlight keywords
|
|
463
|
-
keywordList.forEach(keyword => {
|
|
464
|
-
const regex = new RegExp(`\\b${keyword}\\b`, 'g');
|
|
465
|
-
highlighted = highlighted.replace(regex, chalk.rgb(...this.currentPalette.highlight)(keyword));
|
|
466
|
-
});
|
|
467
|
-
// Highlight strings
|
|
468
|
-
highlighted = highlighted.replace(/(["'])([^"']*)\1/g, (_match, quote, content) => chalk.rgb(...this.currentPalette.success)(`${quote}${content}${quote}`));
|
|
469
|
-
// Highlight numbers
|
|
470
|
-
highlighted = highlighted.replace(/\b\d+\b/g, match => chalk.rgb(...this.currentPalette.info)(match));
|
|
471
|
-
// Highlight comments
|
|
472
|
-
highlighted = highlighted.replace(/(\/\/.*$|#.*$)/g, match => chalk.rgb(...this.currentPalette.accent)(match));
|
|
473
|
-
return highlighted;
|
|
474
|
-
}
|
|
475
|
-
}
|
|
476
|
-
// Export singleton instance
|
|
477
|
-
export const advancedTheme = new AdvancedTheme();
|
|
478
|
-
//# sourceMappingURL=advancedTheme.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"advancedTheme.js","sourceRoot":"","sources":["../../src/ui/advancedTheme.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Collapsible Content Manager - Claude Code style
|
|
3
|
-
* Handles expandable sections with ctrl+o keyboard shortcut
|
|
4
|
-
*/
|
|
5
|
-
export interface CollapsibleSection {
|
|
6
|
-
id: string;
|
|
7
|
-
preview: string;
|
|
8
|
-
fullContent: string;
|
|
9
|
-
lineCount: number;
|
|
10
|
-
expanded: boolean;
|
|
11
|
-
}
|
|
12
|
-
export declare class CollapsibleContentManager {
|
|
13
|
-
private sections;
|
|
14
|
-
private nextId;
|
|
15
|
-
/**
|
|
16
|
-
* Add a collapsible section and return its ID
|
|
17
|
-
*/
|
|
18
|
-
addSection(preview: string, fullContent: string): string;
|
|
19
|
-
/**
|
|
20
|
-
* Get a section by ID
|
|
21
|
-
*/
|
|
22
|
-
getSection(id: string): CollapsibleSection | undefined;
|
|
23
|
-
/**
|
|
24
|
-
* Toggle section expansion
|
|
25
|
-
*/
|
|
26
|
-
toggleSection(id: string): boolean;
|
|
27
|
-
/**
|
|
28
|
-
* Expand a section
|
|
29
|
-
*/
|
|
30
|
-
expandSection(id: string): boolean;
|
|
31
|
-
/**
|
|
32
|
-
* Collapse a section
|
|
33
|
-
*/
|
|
34
|
-
collapseSection(id: string): boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Get all section IDs
|
|
37
|
-
*/
|
|
38
|
-
getAllSectionIds(): string[];
|
|
39
|
-
/**
|
|
40
|
-
* Clear all sections
|
|
41
|
-
*/
|
|
42
|
-
clear(): void;
|
|
43
|
-
/**
|
|
44
|
-
* Format section for display (Claude Code style)
|
|
45
|
-
*/
|
|
46
|
-
formatSection(section: CollapsibleSection, maxPreviewLines?: number): string;
|
|
47
|
-
/**
|
|
48
|
-
* Create a collapsible hint for tool output
|
|
49
|
-
*/
|
|
50
|
-
static createExpandHint(hiddenLines: number): string;
|
|
51
|
-
/**
|
|
52
|
-
* Detect if content should be collapsed based on length
|
|
53
|
-
*/
|
|
54
|
-
static shouldCollapse(content: string, threshold?: number): boolean;
|
|
55
|
-
}
|
|
56
|
-
export declare const collapsibleContent: CollapsibleContentManager;
|
|
57
|
-
//# sourceMappingURL=collapsibleContent.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"collapsibleContent.d.ts","sourceRoot":"","sources":["../../src/ui/collapsibleContent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAyC;IACzD,OAAO,CAAC,MAAM,CAAK;IAEnB;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM;IAexD;;OAEG;IACH,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS;IAItD;;OAEG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAQlC;;OAEG;IACH,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAQlC;;OAEG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAQpC;;OAEG;IACH,gBAAgB,IAAI,MAAM,EAAE;IAI5B;;OAEG;IACH,KAAK,IAAI,IAAI;IAKb;;OAEG;IACH,aAAa,CAAC,OAAO,EAAE,kBAAkB,EAAE,eAAe,GAAE,MAAU,GAAG,MAAM;IAmB/E;;OAEG;IACH,MAAM,CAAC,gBAAgB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM;IAIpD;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW,GAAG,OAAO;CAIxE;AAGD,eAAO,MAAM,kBAAkB,2BAAkC,CAAC"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Collapsible Content Manager - Claude Code style
|
|
3
|
-
* Handles expandable sections with ctrl+o keyboard shortcut
|
|
4
|
-
*/
|
|
5
|
-
import { theme } from './theme.js';
|
|
6
|
-
export class CollapsibleContentManager {
|
|
7
|
-
sections = new Map();
|
|
8
|
-
nextId = 1;
|
|
9
|
-
/**
|
|
10
|
-
* Add a collapsible section and return its ID
|
|
11
|
-
*/
|
|
12
|
-
addSection(preview, fullContent) {
|
|
13
|
-
const id = `section-${this.nextId++}`;
|
|
14
|
-
const lineCount = fullContent.split('\n').length;
|
|
15
|
-
this.sections.set(id, {
|
|
16
|
-
id,
|
|
17
|
-
preview,
|
|
18
|
-
fullContent,
|
|
19
|
-
lineCount,
|
|
20
|
-
expanded: false,
|
|
21
|
-
});
|
|
22
|
-
return id;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Get a section by ID
|
|
26
|
-
*/
|
|
27
|
-
getSection(id) {
|
|
28
|
-
return this.sections.get(id);
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Toggle section expansion
|
|
32
|
-
*/
|
|
33
|
-
toggleSection(id) {
|
|
34
|
-
const section = this.sections.get(id);
|
|
35
|
-
if (!section)
|
|
36
|
-
return false;
|
|
37
|
-
section.expanded = !section.expanded;
|
|
38
|
-
return section.expanded;
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Expand a section
|
|
42
|
-
*/
|
|
43
|
-
expandSection(id) {
|
|
44
|
-
const section = this.sections.get(id);
|
|
45
|
-
if (!section)
|
|
46
|
-
return false;
|
|
47
|
-
section.expanded = true;
|
|
48
|
-
return true;
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Collapse a section
|
|
52
|
-
*/
|
|
53
|
-
collapseSection(id) {
|
|
54
|
-
const section = this.sections.get(id);
|
|
55
|
-
if (!section)
|
|
56
|
-
return false;
|
|
57
|
-
section.expanded = false;
|
|
58
|
-
return true;
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Get all section IDs
|
|
62
|
-
*/
|
|
63
|
-
getAllSectionIds() {
|
|
64
|
-
return Array.from(this.sections.keys());
|
|
65
|
-
}
|
|
66
|
-
/**
|
|
67
|
-
* Clear all sections
|
|
68
|
-
*/
|
|
69
|
-
clear() {
|
|
70
|
-
this.sections.clear();
|
|
71
|
-
this.nextId = 1;
|
|
72
|
-
}
|
|
73
|
-
/**
|
|
74
|
-
* Format section for display (Claude Code style)
|
|
75
|
-
*/
|
|
76
|
-
formatSection(section, maxPreviewLines = 4) {
|
|
77
|
-
if (section.expanded) {
|
|
78
|
-
return section.fullContent;
|
|
79
|
-
}
|
|
80
|
-
const lines = section.fullContent.split('\n');
|
|
81
|
-
const previewLines = lines.slice(0, maxPreviewLines);
|
|
82
|
-
const remaining = lines.length - previewLines.length;
|
|
83
|
-
if (remaining <= 0) {
|
|
84
|
-
return section.fullContent;
|
|
85
|
-
}
|
|
86
|
-
const preview = previewLines.map(line => ` ${line}`).join('\n');
|
|
87
|
-
const expandHint = theme.ui.muted(` … +${remaining} line${remaining === 1 ? '' : 's'} (ctrl+o to expand)`);
|
|
88
|
-
return `${preview}\n${expandHint}`;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Create a collapsible hint for tool output
|
|
92
|
-
*/
|
|
93
|
-
static createExpandHint(hiddenLines) {
|
|
94
|
-
return theme.ui.muted(`(ctrl+o to expand ${hiddenLines} more line${hiddenLines === 1 ? '' : 's'})`);
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Detect if content should be collapsed based on length
|
|
98
|
-
*/
|
|
99
|
-
static shouldCollapse(content, threshold = 10) {
|
|
100
|
-
const lines = content.split('\n').filter(l => l.trim());
|
|
101
|
-
return lines.length > threshold;
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
// Singleton instance
|
|
105
|
-
export const collapsibleContent = new CollapsibleContentManager();
|
|
106
|
-
//# sourceMappingURL=collapsibleContent.js.map
|