anantham-v2 2.0.3 → 2.0.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin/anantham.js +10 -1
- package/dist/bin/anantham.js.map +1 -1
- package/dist/cli/command-registry.d.ts.map +1 -1
- package/dist/cli/command-registry.js +178 -99
- package/dist/cli/command-registry.js.map +1 -1
- package/dist/domain/tui.d.ts +1 -1
- package/dist/domain/tui.d.ts.map +1 -1
- package/dist/domain/tui.js +1 -0
- package/dist/domain/tui.js.map +1 -1
- package/dist/persistence/index.d.ts +2 -0
- package/dist/persistence/index.d.ts.map +1 -1
- package/dist/persistence/index.js +2 -0
- package/dist/persistence/index.js.map +1 -1
- package/dist/persistence/model-catalog-cache.d.ts +92 -0
- package/dist/persistence/model-catalog-cache.d.ts.map +1 -0
- package/dist/persistence/model-catalog-cache.js +430 -0
- package/dist/persistence/model-catalog-cache.js.map +1 -0
- package/dist/persistence/openrouter-key-validator.d.ts +40 -0
- package/dist/persistence/openrouter-key-validator.d.ts.map +1 -0
- package/dist/persistence/openrouter-key-validator.js +183 -0
- package/dist/persistence/openrouter-key-validator.js.map +1 -0
- package/dist/persistence/token-metrics-manager.d.ts +8 -2
- package/dist/persistence/token-metrics-manager.d.ts.map +1 -1
- package/dist/persistence/token-metrics-manager.js +60 -7
- package/dist/persistence/token-metrics-manager.js.map +1 -1
- package/dist/persistence/user-config-manager.d.ts +33 -9
- package/dist/persistence/user-config-manager.d.ts.map +1 -1
- package/dist/persistence/user-config-manager.js +133 -11
- package/dist/persistence/user-config-manager.js.map +1 -1
- package/dist/tui/index.d.ts +1 -0
- package/dist/tui/index.d.ts.map +1 -1
- package/dist/tui/index.js +1 -0
- package/dist/tui/index.js.map +1 -1
- package/dist/tui/model-accordion-browser.d.ts +80 -0
- package/dist/tui/model-accordion-browser.d.ts.map +1 -0
- package/dist/tui/model-accordion-browser.js +487 -0
- package/dist/tui/model-accordion-browser.js.map +1 -0
- package/dist/tui/model-catalog-cache.d.ts +7 -0
- package/dist/tui/model-catalog-cache.d.ts.map +1 -0
- package/dist/tui/model-catalog-cache.js +7 -0
- package/dist/tui/model-catalog-cache.js.map +1 -0
- package/dist/tui/teamwork-preview-canvas.d.ts +63 -0
- package/dist/tui/teamwork-preview-canvas.d.ts.map +1 -0
- package/dist/tui/teamwork-preview-canvas.js +294 -0
- package/dist/tui/teamwork-preview-canvas.js.map +1 -0
- package/dist/tui/terminal-layout.d.ts +56 -2
- package/dist/tui/terminal-layout.d.ts.map +1 -1
- package/dist/tui/terminal-layout.js +258 -22
- package/dist/tui/terminal-layout.js.map +1 -1
- package/dist/tui/terminal-logo-renderer.d.ts +63 -0
- package/dist/tui/terminal-logo-renderer.d.ts.map +1 -0
- package/dist/tui/terminal-logo-renderer.js +304 -0
- package/dist/tui/terminal-logo-renderer.js.map +1 -0
- package/dist/tui/token-usage-tracker.d.ts +8 -0
- package/dist/tui/token-usage-tracker.d.ts.map +1 -0
- package/dist/tui/token-usage-tracker.js +8 -0
- package/dist/tui/token-usage-tracker.js.map +1 -0
- package/dist/tui/tui-controller.d.ts +13 -0
- package/dist/tui/tui-controller.d.ts.map +1 -1
- package/dist/tui/tui-controller.js +116 -6
- package/dist/tui/tui-controller.js.map +1 -1
- package/dist/tui/tui-renderer.d.ts +3 -1
- package/dist/tui/tui-renderer.d.ts.map +1 -1
- package/dist/tui/tui-renderer.js +31 -41
- package/dist/tui/tui-renderer.js.map +1 -1
- package/package.json +1 -1
|
@@ -110,40 +110,276 @@ export class TerminalLayout {
|
|
|
110
110
|
const combined = `${left}${" ".repeat(space)}${right}`;
|
|
111
111
|
return combined.length <= width ? combined : combined.slice(0, width);
|
|
112
112
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
113
|
+
static renderAntigravityHeader(statusOrOptions, projectId, sessionId, dimensions, activeModel) {
|
|
114
|
+
let status = "ONLINE";
|
|
115
|
+
let projId = projectId;
|
|
116
|
+
let sessId = sessionId;
|
|
117
|
+
let dims = dimensions ?? { width: 80, height: 24 };
|
|
118
|
+
let model = activeModel;
|
|
119
|
+
let gateway = "OpenRouter";
|
|
120
|
+
let brandColor = "\x1b[38;2;0;242;152m";
|
|
121
|
+
if (typeof statusOrOptions === "object" && statusOrOptions !== null) {
|
|
122
|
+
status = statusOrOptions.status ?? "ONLINE";
|
|
123
|
+
projId = statusOrOptions.projectId;
|
|
124
|
+
sessId = statusOrOptions.sessionId;
|
|
125
|
+
const w = statusOrOptions.width ?? statusOrOptions.dimensions?.width ?? 80;
|
|
126
|
+
const h = statusOrOptions.dimensions?.height ?? 24;
|
|
127
|
+
dims = statusOrOptions.dimensions ?? { width: w, height: h };
|
|
128
|
+
model = statusOrOptions.activeModel;
|
|
129
|
+
gateway = statusOrOptions.gateway ?? "OpenRouter";
|
|
130
|
+
if (statusOrOptions.brandColor) {
|
|
131
|
+
brandColor = statusOrOptions.brandColor;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
else if (typeof statusOrOptions === "string") {
|
|
135
|
+
status = statusOrOptions;
|
|
136
|
+
if (dimensions) {
|
|
137
|
+
dims = dimensions;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
const width = dims.width;
|
|
141
|
+
if (width < 80) {
|
|
142
|
+
return [TerminalLayout.renderStatusBar(status, projId, sessId, dims)];
|
|
143
|
+
}
|
|
118
144
|
const lines = [];
|
|
119
|
-
const serpentTop =
|
|
120
|
-
const serpentBottom =
|
|
145
|
+
const serpentTop = `${brandColor}╭─━∞━─╮\x1b[0m`;
|
|
146
|
+
const serpentBottom = `${brandColor}╰─━∞━─╯\x1b[0m`;
|
|
121
147
|
const title = AnsiGradient.linearGradient("ANANTHAM INFINITE TUI", AnsiGradient.PALETTES.cyanBlue[0], AnsiGradient.PALETTES.cyanBlue[1]);
|
|
122
148
|
const statusPill = "\x1b[48;2;16;38;56m\x1b[38;2;0;242;254m[HARNESS: ONLINE | LATENCY: 18ms]\x1b[0m";
|
|
123
|
-
const
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
const
|
|
127
|
-
const
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
149
|
+
const shellSubtitle = "\x1b[90mAntigravity Reactive Shell\x1b[0m";
|
|
150
|
+
// --- Line 1 Construction ---
|
|
151
|
+
if (width >= 90) {
|
|
152
|
+
const left1 = ` ${serpentTop} ${title} ${statusPill}`;
|
|
153
|
+
const visLeft1 = TuiSanitizer.stripAnsi(left1).length;
|
|
154
|
+
const remainingForShell = width - visLeft1;
|
|
155
|
+
let right1 = "";
|
|
156
|
+
if (remainingForShell >= 26) {
|
|
157
|
+
const pad1 = remainingForShell - 26;
|
|
158
|
+
right1 = `${" ".repeat(pad1)}${shellSubtitle}`;
|
|
159
|
+
}
|
|
160
|
+
else {
|
|
161
|
+
const pad1 = Math.max(1, remainingForShell - 16);
|
|
162
|
+
right1 = `${" ".repeat(pad1)}Status: [${status}]`;
|
|
163
|
+
}
|
|
164
|
+
const line1 = `${left1}${right1}`;
|
|
165
|
+
lines.push(TuiSanitizer.stripAnsi(line1).length <= width ? line1 : TuiSanitizer.truncate(line1, width));
|
|
136
166
|
}
|
|
137
167
|
else {
|
|
138
|
-
|
|
168
|
+
const left1 = ` ${serpentTop} ${title}`;
|
|
169
|
+
const visLeft1 = TuiSanitizer.stripAnsi(left1).length;
|
|
170
|
+
const statusText = `Status: [${status}] `;
|
|
171
|
+
const visStatus = TuiSanitizer.stripAnsi(statusText).length;
|
|
172
|
+
let right1 = statusText;
|
|
173
|
+
if (projId) {
|
|
174
|
+
const availForProj = Math.max(0, width - visLeft1 - visStatus - 13);
|
|
175
|
+
const displayProj = availForProj > 3
|
|
176
|
+
? (projId.length > availForProj ? projId.slice(0, availForProj - 3) + "..." : projId)
|
|
177
|
+
: projId.slice(0, availForProj);
|
|
178
|
+
if (displayProj.length > 0) {
|
|
179
|
+
right1 = `Project: ${displayProj} │ ${statusText}`;
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
const visRight1 = TuiSanitizer.stripAnsi(right1).length;
|
|
183
|
+
const space1 = Math.max(1, width - visLeft1 - visRight1);
|
|
184
|
+
const line1 = `${left1}${" ".repeat(space1)}${right1}`;
|
|
185
|
+
lines.push(TuiSanitizer.stripAnsi(line1).length <= width ? line1 : TuiSanitizer.truncate(line1, width));
|
|
186
|
+
}
|
|
187
|
+
// --- Line 2 Construction ---
|
|
188
|
+
let displayModel = "auto";
|
|
189
|
+
if (model && model.trim().length > 0 && model.trim() !== "auto") {
|
|
190
|
+
const clean = model.trim();
|
|
191
|
+
displayModel = clean.includes("/") ? (clean.split("/").pop() ?? clean) : clean;
|
|
192
|
+
}
|
|
193
|
+
const logoTag = "\x1b[38;2;0;242;254m[LOGO]\x1b[0m";
|
|
194
|
+
const harnessText = "\x1b[1;37mANTIGRAVITY HARNESS\x1b[0m";
|
|
195
|
+
const sep = "\x1b[90m│\x1b[0m";
|
|
196
|
+
const gwText = `\x1b[38;2;0;242;152mGATEWAY:\x1b[0m ${gateway}`;
|
|
197
|
+
const modelLabel = "\x1b[38;2;79;172;254mMODEL:\x1b[0m";
|
|
198
|
+
const dockPrefix = ` ${serpentBottom} ${logoTag} ${harnessText} ${sep} ${gwText} ${sep} ${modelLabel} `;
|
|
199
|
+
const visDockPrefix = TuiSanitizer.stripAnsi(dockPrefix).length;
|
|
200
|
+
let right2 = "";
|
|
201
|
+
if (width >= 120) {
|
|
202
|
+
right2 = `Project: ${projId ?? "(none)"} │ Status: [${status}] │ ${dims.width}x${dims.height} `;
|
|
203
|
+
}
|
|
204
|
+
else if (width >= 90 && displayModel.length <= 8) {
|
|
205
|
+
right2 = projId ? `Project: ${projId} ` : `Status: [${status}] `;
|
|
139
206
|
}
|
|
207
|
+
const visRight2 = TuiSanitizer.stripAnsi(right2).length;
|
|
208
|
+
const maxModelLen = Math.max(4, width - visDockPrefix - visRight2 - 1);
|
|
209
|
+
let finalModel = displayModel;
|
|
210
|
+
if (finalModel.length > maxModelLen) {
|
|
211
|
+
finalModel = maxModelLen > 6 ? finalModel.slice(0, maxModelLen - 3) + "..." : finalModel.slice(0, maxModelLen);
|
|
212
|
+
}
|
|
213
|
+
const modelStyled = `\x1b[38;2;79;172;254m${finalModel}\x1b[0m`;
|
|
214
|
+
const left2 = `${dockPrefix}${modelStyled}`;
|
|
215
|
+
const visLeft2 = TuiSanitizer.stripAnsi(left2).length;
|
|
216
|
+
const space2 = Math.max(1, width - visLeft2 - visRight2);
|
|
217
|
+
let line2 = `${left2}${" ".repeat(space2)}${right2}`;
|
|
218
|
+
if (TuiSanitizer.stripAnsi(line2).length > width) {
|
|
219
|
+
const excess = TuiSanitizer.stripAnsi(line2).length - width;
|
|
220
|
+
if (space2 > excess) {
|
|
221
|
+
line2 = `${left2}${" ".repeat(space2 - excess)}${right2}`;
|
|
222
|
+
}
|
|
223
|
+
else {
|
|
224
|
+
line2 = `${left2}`;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
lines.push(TuiSanitizer.stripAnsi(line2).length <= width ? line2 : TuiSanitizer.truncate(line2, width));
|
|
140
228
|
return lines;
|
|
141
229
|
}
|
|
142
230
|
/**
|
|
143
231
|
* Render horizontal divider.
|
|
144
232
|
*/
|
|
145
233
|
static renderDivider(width, char = "─") {
|
|
146
|
-
return char.repeat(Math.max(
|
|
234
|
+
return char.repeat(Math.max(0, width));
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* Helper to resolve command prompt prefix and suffix decorations and their visible lengths.
|
|
238
|
+
* Shared between renderPromptBar and getPromptCursorCol to guarantee zero layout drift.
|
|
239
|
+
*/
|
|
240
|
+
static getPromptDecorations(width, commandPrompt) {
|
|
241
|
+
const isSlash = commandPrompt.startsWith("/");
|
|
242
|
+
const isUltraNarrow = width < 25;
|
|
243
|
+
const isNarrow = !isUltraNarrow && (isSlash ? width < 70 : width < 50);
|
|
244
|
+
let prefix;
|
|
245
|
+
let suffix;
|
|
246
|
+
if (isUltraNarrow) {
|
|
247
|
+
prefix = " : ";
|
|
248
|
+
suffix = "_";
|
|
249
|
+
}
|
|
250
|
+
else if (isNarrow) {
|
|
251
|
+
prefix = " [CMD] : ";
|
|
252
|
+
suffix = "_ | [↵] [ESC]";
|
|
253
|
+
}
|
|
254
|
+
else if (isSlash) {
|
|
255
|
+
prefix = " \x1b[38;2;0;242;254m❖ anantham:preview >\x1b[0m ";
|
|
256
|
+
suffix = "_ \x1b[90m| [ENTER] Run, [TAB] Complete, [ESC] Close\x1b[0m";
|
|
257
|
+
}
|
|
258
|
+
else {
|
|
259
|
+
prefix = " [COMMAND MODE] : ";
|
|
260
|
+
suffix = "_ | [ENTER] Run, [ESC] Cancel";
|
|
261
|
+
}
|
|
262
|
+
const visPrefixLen = TuiSanitizer.stripAnsi(prefix).length;
|
|
263
|
+
const visSuffixLen = TuiSanitizer.stripAnsi(suffix).length;
|
|
264
|
+
return { prefix, suffix, visPrefixLen, visSuffixLen, isUltraNarrow, isNarrow, isSlash };
|
|
265
|
+
}
|
|
266
|
+
/**
|
|
267
|
+
* Render Antigravity Prompt Bar framed by divider rule lines.
|
|
268
|
+
* Preserves exact row indexing and bottom-line indexing for terminal stability.
|
|
269
|
+
*/
|
|
270
|
+
static renderPromptBar(options) {
|
|
271
|
+
const { width, commandPrompt = "", isCommandMode = false, bottomRule = false, ruleChar = "─" } = options;
|
|
272
|
+
const lines = [];
|
|
273
|
+
// Upper framing rule line
|
|
274
|
+
lines.push(TerminalLayout.renderDivider(width, ruleChar));
|
|
275
|
+
// Prompt line layout
|
|
276
|
+
const inCommandMode = isCommandMode || commandPrompt.length > 0;
|
|
277
|
+
let rawLine = "";
|
|
278
|
+
if (inCommandMode) {
|
|
279
|
+
const { prefix, suffix, visPrefixLen, visSuffixLen } = TerminalLayout.getPromptDecorations(width, commandPrompt);
|
|
280
|
+
const avail = Math.max(0, width - visPrefixLen - visSuffixLen);
|
|
281
|
+
const cleanPrompt = TuiSanitizer.sanitize(commandPrompt);
|
|
282
|
+
let visiblePrompt = "";
|
|
283
|
+
if (avail > 0) {
|
|
284
|
+
if (cleanPrompt.length <= avail) {
|
|
285
|
+
visiblePrompt = cleanPrompt;
|
|
286
|
+
}
|
|
287
|
+
else if (avail > 3) {
|
|
288
|
+
visiblePrompt = "..." + cleanPrompt.slice(-(avail - 3));
|
|
289
|
+
}
|
|
290
|
+
else {
|
|
291
|
+
visiblePrompt = cleanPrompt.slice(-avail);
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
rawLine = `${prefix}${visiblePrompt}${suffix}`;
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
if (width >= 92) {
|
|
298
|
+
const leftPrompt = " \x1b[38;2;0;242;254m❯\x1b[0m \x1b[90mask anything or type / for commands...\x1b[0m";
|
|
299
|
+
const rightMode = "\x1b[38;2;0;242;254m❖\x1b[0m [NORMAL MODE] [1-9] Views, [:] Command, [q] Quit";
|
|
300
|
+
const visLeft = TuiSanitizer.stripAnsi(leftPrompt).length;
|
|
301
|
+
const visRight = TuiSanitizer.stripAnsi(rightMode).length;
|
|
302
|
+
const gap = Math.max(1, width - visLeft - visRight);
|
|
303
|
+
rawLine = `${leftPrompt}${" ".repeat(gap)}${rightMode}`;
|
|
304
|
+
}
|
|
305
|
+
else if (width >= 80) {
|
|
306
|
+
const leftPrompt = " \x1b[38;2;0;242;254m❯\x1b[0m \x1b[90m/ for commands\x1b[0m";
|
|
307
|
+
const rightMode = "\x1b[38;2;0;242;254m❖\x1b[0m [NORMAL MODE] [1-9] Views, [:] Command, [q] Quit";
|
|
308
|
+
const visLeft = TuiSanitizer.stripAnsi(leftPrompt).length;
|
|
309
|
+
const visRight = TuiSanitizer.stripAnsi(rightMode).length;
|
|
310
|
+
const gap = Math.max(1, width - visLeft - visRight);
|
|
311
|
+
rawLine = `${leftPrompt}${" ".repeat(gap)}${rightMode}`;
|
|
312
|
+
}
|
|
313
|
+
else if (width >= 53) {
|
|
314
|
+
rawLine = " \x1b[38;2;0;242;254m❖\x1b[0m [NORMAL MODE] [1-9] Views, [:] Command, [q] Quit";
|
|
315
|
+
}
|
|
316
|
+
else if (width >= 49) {
|
|
317
|
+
rawLine = " [NORMAL MODE] [1-9] Views, [:] Command, [q] Quit";
|
|
318
|
+
}
|
|
319
|
+
else if (width >= 32) {
|
|
320
|
+
rawLine = " [NORMAL] [:] Cmd, [q] Quit";
|
|
321
|
+
}
|
|
322
|
+
else {
|
|
323
|
+
rawLine = TuiSanitizer.truncate(" [NORM] [:] [q]", width);
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
// Mandatory line-level width clamping
|
|
327
|
+
const clampedLine = TuiSanitizer.stripAnsi(rawLine).length <= width
|
|
328
|
+
? rawLine
|
|
329
|
+
: TuiSanitizer.truncate(rawLine, width);
|
|
330
|
+
lines.push(clampedLine);
|
|
331
|
+
// Optional bottom framing rule line (only when explicitly requested)
|
|
332
|
+
if (bottomRule) {
|
|
333
|
+
lines.push(TerminalLayout.renderDivider(width, ruleChar));
|
|
334
|
+
}
|
|
335
|
+
return lines;
|
|
336
|
+
}
|
|
337
|
+
/**
|
|
338
|
+
* Frame prompt text with an upper divider rule, preserving prompt as the final line.
|
|
339
|
+
*/
|
|
340
|
+
static framePromptLine(promptText, width, char = "─") {
|
|
341
|
+
return [
|
|
342
|
+
TerminalLayout.renderDivider(width, char),
|
|
343
|
+
promptText,
|
|
344
|
+
];
|
|
345
|
+
}
|
|
346
|
+
/**
|
|
347
|
+
* Helper to calculate the exact 1-based terminal row index for the prompt line.
|
|
348
|
+
* Guarantees cursor positioning does not point to a bottom divider rule.
|
|
349
|
+
*/
|
|
350
|
+
static getPromptRowIndex(totalLines, hasBottomRule = false) {
|
|
351
|
+
return hasBottomRule ? Math.max(1, totalLines - 1) : Math.max(1, totalLines);
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* Helper to calculate the exact 1-based terminal column index for the cursor.
|
|
355
|
+
* Strips ANSI sequences from prefix and suffix to prevent ANSI offset drift.
|
|
356
|
+
* Strictly tracks visible display characters, accounts for horizontal ellipsis scrolling,
|
|
357
|
+
* and clamps coordinates to [1, width].
|
|
358
|
+
*/
|
|
359
|
+
static getPromptCursorCol(width, commandPrompt, cursorPosition, isCommandMode) {
|
|
360
|
+
if (!isCommandMode)
|
|
361
|
+
return 1;
|
|
362
|
+
const { visPrefixLen, visSuffixLen } = TerminalLayout.getPromptDecorations(width, commandPrompt);
|
|
363
|
+
const avail = Math.max(0, width - visPrefixLen - visSuffixLen);
|
|
364
|
+
const clean = TuiSanitizer.sanitize(commandPrompt);
|
|
365
|
+
const cur = Math.max(0, Math.min(cursorPosition, clean.length));
|
|
366
|
+
let visCursorPos = 0;
|
|
367
|
+
if (avail === 0) {
|
|
368
|
+
visCursorPos = 0;
|
|
369
|
+
}
|
|
370
|
+
else if (clean.length <= avail) {
|
|
371
|
+
visCursorPos = cur;
|
|
372
|
+
}
|
|
373
|
+
else if (avail > 3) {
|
|
374
|
+
const sliceStart = clean.length - (avail - 3);
|
|
375
|
+
visCursorPos = Math.max(0, Math.min(3 + (cur - sliceStart), avail));
|
|
376
|
+
}
|
|
377
|
+
else {
|
|
378
|
+
const sliceStart = clean.length - avail;
|
|
379
|
+
visCursorPos = Math.max(0, Math.min(cur - sliceStart, avail));
|
|
380
|
+
}
|
|
381
|
+
const rawCol = visPrefixLen + visCursorPos + 1;
|
|
382
|
+
return Math.max(1, Math.min(rawCol, width));
|
|
147
383
|
}
|
|
148
384
|
/**
|
|
149
385
|
* Render formatted 2-column table with aligned headers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-layout.js","sourceRoot":"","sources":["../../src/tui/terminal-layout.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"terminal-layout.js","sourceRoot":"","sources":["../../src/tui/terminal-layout.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
export type GraphicProtocol = "kitty" | "sixel" | "iterm2" | "halfblock";
|
|
2
|
+
export type RGB = [number, number, number];
|
|
3
|
+
export interface HeaderLogoOptions {
|
|
4
|
+
protocol?: GraphicProtocol;
|
|
5
|
+
logoPath?: string;
|
|
6
|
+
width?: number;
|
|
7
|
+
}
|
|
8
|
+
export declare const ANTIGRAVITY_PALETTE: {
|
|
9
|
+
darkOnyx: RGB;
|
|
10
|
+
neonCyan: RGB;
|
|
11
|
+
electricBlue: RGB;
|
|
12
|
+
neonViolet: RGB;
|
|
13
|
+
magenta: RGB;
|
|
14
|
+
neonEmerald: RGB;
|
|
15
|
+
purpleGlow: RGB;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* TerminalLogoRenderer provides high-performance terminal logo rendering
|
|
19
|
+
* across Kitty, iTerm2, Sixel graphics protocols with graceful fallback
|
|
20
|
+
* to 24-bit TrueColor ANSI half-blocks (\u2580).
|
|
21
|
+
*/
|
|
22
|
+
export declare class TerminalLogoRenderer {
|
|
23
|
+
/**
|
|
24
|
+
* Detects the graphical capability of the current terminal session.
|
|
25
|
+
*/
|
|
26
|
+
static detectProtocol(): GraphicProtocol;
|
|
27
|
+
/**
|
|
28
|
+
* Resolves the custom logo path based on authoritative precedence:
|
|
29
|
+
* 1. cliPath
|
|
30
|
+
* 2. process.env.ANANTHAM_LOGO_PATH
|
|
31
|
+
* 3. UserConfigManager.getInstance().getLogoPath()
|
|
32
|
+
* 4. ./assets/logo.png (if exists)
|
|
33
|
+
* 5. null
|
|
34
|
+
*/
|
|
35
|
+
static resolveLogoPath(cliPath?: string): string | null;
|
|
36
|
+
/**
|
|
37
|
+
* Renders a 2D pixel matrix of RGB tuples into 24-bit TrueColor half-block lines.
|
|
38
|
+
* Uses '\u2580' ('▀') where top pixel is foreground color and bottom pixel is background color.
|
|
39
|
+
*/
|
|
40
|
+
static renderMatrixToHalfBlocks(matrix: RGB[][]): string[];
|
|
41
|
+
/**
|
|
42
|
+
* Renders procedural cybernetic Anantham infinite emblem in 24-bit TrueColor half-blocks.
|
|
43
|
+
* If width is specified, formats or crops/pads the emblem to fit.
|
|
44
|
+
*/
|
|
45
|
+
static renderHalfBlockLogo(width?: number): string[];
|
|
46
|
+
/**
|
|
47
|
+
* Emits terminal graphics protocol escape sequences for Kitty, iTerm2, or Sixel.
|
|
48
|
+
*/
|
|
49
|
+
static renderGraphicProtocol(protocol: "kitty" | "iterm2" | "sixel", filePath: string): string;
|
|
50
|
+
/**
|
|
51
|
+
* Orchestrates logo rendering across graphics protocols and TrueColor half-blocks.
|
|
52
|
+
* Supports both overload styles:
|
|
53
|
+
* - renderHeaderLogo(protocol?: GraphicProtocol, cliPath?: string)
|
|
54
|
+
* - renderHeaderLogo(options?: HeaderLogoOptions)
|
|
55
|
+
*/
|
|
56
|
+
static renderHeaderLogo(optionsOrProtocol?: GraphicProtocol | HeaderLogoOptions, cliPath?: string): string[];
|
|
57
|
+
detectProtocol(): GraphicProtocol;
|
|
58
|
+
resolveLogoPath(cliPath?: string): string | null;
|
|
59
|
+
renderHalfBlockLogo(width?: number): string[];
|
|
60
|
+
renderGraphicProtocol(protocol: "kitty" | "iterm2" | "sixel", filePath: string): string;
|
|
61
|
+
renderHeaderLogo(optionsOrProtocol?: GraphicProtocol | HeaderLogoOptions, cliPath?: string): string[];
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=terminal-logo-renderer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal-logo-renderer.d.ts","sourceRoot":"","sources":["../../src/tui/terminal-logo-renderer.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEzE,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE3C,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,mBAAmB;cACJ,GAAG;cACF,GAAG;kBACC,GAAG;gBACL,GAAG;aACL,GAAG;iBACA,GAAG;gBACH,GAAG;CAClC,CAAC;AAiFF;;;;GAIG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;WACW,cAAc,IAAI,eAAe;IAoB/C;;;;;;;OAOG;WACW,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAqC9D;;;OAGG;WACW,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,GAAG,MAAM,EAAE;IA4BjE;;;OAGG;WACW,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAsB3D;;OAEG;WACW,qBAAqB,CACjC,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,EACtC,QAAQ,EAAE,MAAM,GACf,MAAM;IA8CT;;;;;OAKG;WACW,gBAAgB,CAC5B,iBAAiB,CAAC,EAAE,eAAe,GAAG,iBAAiB,EACvD,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,EAAE;IA2CJ,cAAc,IAAI,eAAe;IAIjC,eAAe,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAIhD,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE;IAI7C,qBAAqB,CAC1B,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,EACtC,QAAQ,EAAE,MAAM,GACf,MAAM;IAIF,gBAAgB,CACrB,iBAAiB,CAAC,EAAE,eAAe,GAAG,iBAAiB,EACvD,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,EAAE;CAGZ"}
|