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.
Files changed (100) hide show
  1. package/dist/bin/erosolar.js +3 -0
  2. package/dist/bin/erosolar.js.map +1 -1
  3. package/dist/mcp/sseClient.d.ts.map +1 -1
  4. package/dist/mcp/sseClient.js +54 -27
  5. package/dist/mcp/sseClient.js.map +1 -1
  6. package/dist/shell/claudeCodeStreamHandler.d.ts.map +1 -1
  7. package/dist/shell/claudeCodeStreamHandler.js +11 -1
  8. package/dist/shell/claudeCodeStreamHandler.js.map +1 -1
  9. package/dist/shell/interactiveShell.d.ts +10 -0
  10. package/dist/shell/interactiveShell.d.ts.map +1 -1
  11. package/dist/shell/interactiveShell.js +69 -15
  12. package/dist/shell/interactiveShell.js.map +1 -1
  13. package/dist/shell/streamingOutputManager.d.ts +1 -0
  14. package/dist/shell/streamingOutputManager.d.ts.map +1 -1
  15. package/dist/shell/streamingOutputManager.js +15 -4
  16. package/dist/shell/streamingOutputManager.js.map +1 -1
  17. package/dist/shell/terminalInput.d.ts +18 -1
  18. package/dist/shell/terminalInput.d.ts.map +1 -1
  19. package/dist/shell/terminalInput.js +68 -3
  20. package/dist/shell/terminalInput.js.map +1 -1
  21. package/dist/shell/terminalInputAdapter.d.ts +14 -0
  22. package/dist/shell/terminalInputAdapter.d.ts.map +1 -1
  23. package/dist/shell/terminalInputAdapter.js +20 -0
  24. package/dist/shell/terminalInputAdapter.js.map +1 -1
  25. package/dist/tools/devTools.d.ts.map +1 -1
  26. package/dist/tools/devTools.js +0 -180
  27. package/dist/tools/devTools.js.map +1 -1
  28. package/dist/ui/display.d.ts +14 -2
  29. package/dist/ui/display.d.ts.map +1 -1
  30. package/dist/ui/display.js +56 -14
  31. package/dist/ui/display.js.map +1 -1
  32. package/dist/ui/globalWriteLock.d.ts +12 -0
  33. package/dist/ui/globalWriteLock.d.ts.map +1 -0
  34. package/dist/ui/globalWriteLock.js +35 -0
  35. package/dist/ui/globalWriteLock.js.map +1 -0
  36. package/package.json +1 -1
  37. package/dist/ui/FixedInputArea.d.ts +0 -108
  38. package/dist/ui/FixedInputArea.d.ts.map +0 -1
  39. package/dist/ui/FixedInputArea.js +0 -312
  40. package/dist/ui/FixedInputArea.js.map +0 -1
  41. package/dist/ui/advancedTheme.d.ts +0 -246
  42. package/dist/ui/advancedTheme.d.ts.map +0 -1
  43. package/dist/ui/advancedTheme.js +0 -478
  44. package/dist/ui/advancedTheme.js.map +0 -1
  45. package/dist/ui/collapsibleContent.d.ts +0 -57
  46. package/dist/ui/collapsibleContent.d.ts.map +0 -1
  47. package/dist/ui/collapsibleContent.js +0 -106
  48. package/dist/ui/collapsibleContent.js.map +0 -1
  49. package/dist/ui/diffViewer.d.ts +0 -42
  50. package/dist/ui/diffViewer.d.ts.map +0 -1
  51. package/dist/ui/diffViewer.js +0 -343
  52. package/dist/ui/diffViewer.js.map +0 -1
  53. package/dist/ui/gitDisplay.d.ts +0 -45
  54. package/dist/ui/gitDisplay.d.ts.map +0 -1
  55. package/dist/ui/gitDisplay.js +0 -215
  56. package/dist/ui/gitDisplay.js.map +0 -1
  57. package/dist/ui/gitFormatter.d.ts +0 -29
  58. package/dist/ui/gitFormatter.d.ts.map +0 -1
  59. package/dist/ui/gitFormatter.js +0 -203
  60. package/dist/ui/gitFormatter.js.map +0 -1
  61. package/dist/ui/keyboardShortcuts.d.ts +0 -49
  62. package/dist/ui/keyboardShortcuts.d.ts.map +0 -1
  63. package/dist/ui/keyboardShortcuts.js +0 -128
  64. package/dist/ui/keyboardShortcuts.js.map +0 -1
  65. package/dist/ui/logFormatter.d.ts +0 -70
  66. package/dist/ui/logFormatter.d.ts.map +0 -1
  67. package/dist/ui/logFormatter.js +0 -323
  68. package/dist/ui/logFormatter.js.map +0 -1
  69. package/dist/ui/outputSummarizer.d.ts +0 -52
  70. package/dist/ui/outputSummarizer.d.ts.map +0 -1
  71. package/dist/ui/outputSummarizer.js +0 -242
  72. package/dist/ui/outputSummarizer.js.map +0 -1
  73. package/dist/ui/progressBar.d.ts +0 -51
  74. package/dist/ui/progressBar.d.ts.map +0 -1
  75. package/dist/ui/progressBar.js +0 -153
  76. package/dist/ui/progressBar.js.map +0 -1
  77. package/dist/ui/progressIndicator.d.ts +0 -69
  78. package/dist/ui/progressIndicator.d.ts.map +0 -1
  79. package/dist/ui/progressIndicator.js +0 -145
  80. package/dist/ui/progressIndicator.js.map +0 -1
  81. package/dist/ui/streamingIndicators.d.ts +0 -42
  82. package/dist/ui/streamingIndicators.d.ts.map +0 -1
  83. package/dist/ui/streamingIndicators.js +0 -155
  84. package/dist/ui/streamingIndicators.js.map +0 -1
  85. package/dist/ui/tableFormatter.d.ts +0 -31
  86. package/dist/ui/tableFormatter.d.ts.map +0 -1
  87. package/dist/ui/tableFormatter.js +0 -186
  88. package/dist/ui/tableFormatter.js.map +0 -1
  89. package/dist/ui/thinkingTracker.d.ts +0 -51
  90. package/dist/ui/thinkingTracker.d.ts.map +0 -1
  91. package/dist/ui/thinkingTracker.js +0 -115
  92. package/dist/ui/thinkingTracker.js.map +0 -1
  93. package/dist/ui/toolDisplayAdapter.d.ts +0 -66
  94. package/dist/ui/toolDisplayAdapter.d.ts.map +0 -1
  95. package/dist/ui/toolDisplayAdapter.js +0 -356
  96. package/dist/ui/toolDisplayAdapter.js.map +0 -1
  97. package/dist/ui/treeVisualizer.d.ts +0 -56
  98. package/dist/ui/treeVisualizer.d.ts.map +0 -1
  99. package/dist/ui/treeVisualizer.js +0 -247
  100. package/dist/ui/treeVisualizer.js.map +0 -1
@@ -1,247 +0,0 @@
1
- /**
2
- * Tree Visualizer - Claude Code style
3
- * ASCII tree visualization for hierarchical data
4
- */
5
- import { theme } from './theme.js';
6
- /**
7
- * Format hierarchical data as ASCII tree
8
- * Example:
9
- * src/
10
- * โ”œโ”€โ”€ components/
11
- * โ”‚ โ”œโ”€โ”€ Header.tsx
12
- * โ”‚ โ””โ”€โ”€ Footer.tsx
13
- * โ””โ”€โ”€ utils/
14
- * โ””โ”€โ”€ helpers.ts
15
- */
16
- export function formatTree(node, options = {}, prefix = '', isLast = true, depth = 0) {
17
- const showLines = options.showLines ?? true;
18
- const maxDepth = options.maxDepth ?? Infinity;
19
- const compact = options.compact ?? false;
20
- if (depth > maxDepth) {
21
- return '';
22
- }
23
- const lines = [];
24
- // Build current line
25
- const connector = showLines ? (isLast ? 'โ””โ”€โ”€ ' : 'โ”œโ”€โ”€ ') : ' ';
26
- const icon = node.icon ? `${node.icon} ` : '';
27
- const metadata = node.metadata ? theme.ui.muted(` ${node.metadata}`) : '';
28
- let label = node.label;
29
- if (node.highlighted) {
30
- label = theme.info(label);
31
- }
32
- else if (options.colorizeDepth) {
33
- const colors = [theme.info, theme.success, theme.warning, theme.accent];
34
- const colorFn = colors[depth % colors.length];
35
- if (colorFn) {
36
- label = colorFn(label);
37
- }
38
- }
39
- const currentLine = `${prefix}${showLines ? theme.ui.muted(connector) : ''}${icon}${label}${metadata}`;
40
- lines.push(currentLine);
41
- // Process children
42
- if (node.children && node.children.length > 0) {
43
- const childPrefix = showLines
44
- ? prefix + (isLast ? ' ' : 'โ”‚ ')
45
- : `${prefix} `;
46
- node.children.forEach((child, index) => {
47
- const isLastChild = index === node.children.length - 1;
48
- const childTree = formatTree(child, options, childPrefix, isLastChild, depth + 1);
49
- if (childTree) {
50
- if (!compact || index === 0) {
51
- lines.push(childTree);
52
- }
53
- else {
54
- lines.push(childTree);
55
- }
56
- }
57
- });
58
- }
59
- return lines.join('\n');
60
- }
61
- /**
62
- * Format file system tree
63
- */
64
- export function formatFileTree(paths, options = {}) {
65
- const tree = buildFileTree(paths);
66
- return formatTree(tree, options);
67
- }
68
- /**
69
- * Build tree structure from file paths
70
- */
71
- function buildFileTree(paths) {
72
- const root = { label: '.', children: [] };
73
- const map = new Map();
74
- map.set('', root);
75
- // Sort paths for better display
76
- const sortedPaths = [...paths].sort();
77
- for (const path of sortedPaths) {
78
- const parts = path.split('/').filter(p => p);
79
- let currentPath = '';
80
- for (let i = 0; i < parts.length; i++) {
81
- const part = parts[i];
82
- if (!part)
83
- continue;
84
- const parentPath = currentPath;
85
- currentPath = currentPath ? `${currentPath}/${part}` : part;
86
- if (!map.has(currentPath)) {
87
- const isFile = i === parts.length - 1 && !part.endsWith('/');
88
- const icon = isFile ? getFileIcon(part) : '๐Ÿ“';
89
- const node = {
90
- label: part,
91
- icon,
92
- children: isFile ? undefined : []
93
- };
94
- const parent = map.get(parentPath);
95
- if (parent?.children) {
96
- parent.children.push(node);
97
- }
98
- map.set(currentPath, node);
99
- }
100
- }
101
- }
102
- return root;
103
- }
104
- /**
105
- * Get icon for file based on extension
106
- */
107
- function getFileIcon(filename) {
108
- const ext = filename.split('.').pop()?.toLowerCase();
109
- const iconMap = {
110
- ts: '๐Ÿ“˜',
111
- tsx: 'โš›๏ธ',
112
- js: '๐Ÿ“œ',
113
- jsx: 'โš›๏ธ',
114
- json: '๐Ÿ“‹',
115
- md: '๐Ÿ“',
116
- txt: '๐Ÿ“„',
117
- css: '๐ŸŽจ',
118
- scss: '๐ŸŽจ',
119
- html: '๐ŸŒ',
120
- py: '๐Ÿ',
121
- java: 'โ˜•',
122
- go: '๐Ÿ”ต',
123
- rs: '๐Ÿฆ€',
124
- rb: '๐Ÿ’Ž',
125
- php: '๐Ÿ˜',
126
- sh: 'โš™๏ธ',
127
- yml: 'โš™๏ธ',
128
- yaml: 'โš™๏ธ',
129
- xml: '๐Ÿ“ฐ',
130
- svg: '๐Ÿ–ผ๏ธ',
131
- png: '๐Ÿ–ผ๏ธ',
132
- jpg: '๐Ÿ–ผ๏ธ',
133
- gif: '๐Ÿ–ผ๏ธ'
134
- };
135
- return iconMap[ext || ''] || '๐Ÿ“„';
136
- }
137
- /**
138
- * Format dependency tree
139
- */
140
- export function formatDependencyTree(packageName, dependencies, options = {}) {
141
- const visited = new Set();
142
- function buildNode(pkg, depth = 0) {
143
- const deps = dependencies[pkg] || [];
144
- const circular = visited.has(pkg);
145
- if (circular) {
146
- return {
147
- label: pkg,
148
- metadata: '(circular)',
149
- icon: '๐Ÿ”„'
150
- };
151
- }
152
- visited.add(pkg);
153
- const children = depth < (options.maxDepth || 5)
154
- ? deps.map(dep => buildNode(dep, depth + 1))
155
- : [];
156
- return {
157
- label: pkg,
158
- icon: '๐Ÿ“ฆ',
159
- children: children.length > 0 ? children : undefined
160
- };
161
- }
162
- const tree = buildNode(packageName);
163
- return formatTree(tree, options);
164
- }
165
- /**
166
- * Format simple bulleted list as tree
167
- */
168
- export function formatBulletTree(items, indent = 0) {
169
- return items.map((item) => {
170
- const bullet = indent === 0 ? 'โ€ข' : 'โ—ฆ';
171
- const prefix = ' '.repeat(indent);
172
- const line = `${prefix}${theme.info(bullet)} ${item.label}`;
173
- if (item.items && item.items.length > 0) {
174
- const children = formatBulletTree(item.items, indent + 1);
175
- return `${line}\n${children}`;
176
- }
177
- return line;
178
- }).join('\n');
179
- }
180
- /**
181
- * Format git branch tree
182
- */
183
- export function formatBranchTree(branches) {
184
- // Build tree structure
185
- const branchMap = new Map();
186
- const roots = [];
187
- branches.forEach(branch => {
188
- const node = {
189
- label: branch.name,
190
- icon: branch.current ? 'โ—' : 'โ—‹',
191
- highlighted: branch.current,
192
- children: []
193
- };
194
- branchMap.set(branch.name, node);
195
- });
196
- branches.forEach(branch => {
197
- const node = branchMap.get(branch.name);
198
- if (!node)
199
- return;
200
- if (branch.parent) {
201
- const parent = branchMap.get(branch.parent);
202
- if (parent?.children) {
203
- parent.children.push(node);
204
- }
205
- else {
206
- roots.push(node);
207
- }
208
- }
209
- else {
210
- roots.push(node);
211
- }
212
- });
213
- return roots.map(root => formatTree(root, { showLines: true })).join('\n\n');
214
- }
215
- /**
216
- * Format directory summary with counts
217
- */
218
- export function formatDirectorySummary(paths) {
219
- const stats = {
220
- directories: 0,
221
- files: 0,
222
- byType: new Map()
223
- };
224
- paths.forEach(path => {
225
- if (path.endsWith('/')) {
226
- stats.directories++;
227
- }
228
- else {
229
- stats.files++;
230
- const ext = path.split('.').pop()?.toLowerCase() || 'no-ext';
231
- stats.byType.set(ext, (stats.byType.get(ext) || 0) + 1);
232
- }
233
- });
234
- const lines = [];
235
- lines.push(theme.info(`๐Ÿ“ ${stats.directories} directories, ๐Ÿ“„ ${stats.files} files`));
236
- if (stats.byType.size > 0) {
237
- const types = Array.from(stats.byType.entries())
238
- .sort((a, b) => b[1] - a[1])
239
- .slice(0, 5);
240
- const typeStr = types
241
- .map(([ext, count]) => `${ext}: ${count}`)
242
- .join(theme.ui.muted(' ยท '));
243
- lines.push(theme.ui.muted(` ${typeStr}`));
244
- }
245
- return lines.join('\n');
246
- }
247
- //# sourceMappingURL=treeVisualizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"treeVisualizer.js","sourceRoot":"","sources":["../../src/ui/treeVisualizer.ts"],"names":[],"mappings":"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"}