pindex 1.1.1 → 1.1.2
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/gui/server.d.ts +1 -0
- package/dist/gui/server.d.ts.map +1 -1
- package/dist/gui/server.js +76 -23
- package/dist/gui/server.js.map +1 -1
- package/package.json +1 -1
package/dist/gui/server.d.ts
CHANGED
|
@@ -17,6 +17,7 @@ export interface ProjectStats {
|
|
|
17
17
|
dbExists: boolean;
|
|
18
18
|
lastIndexed: string | null;
|
|
19
19
|
serverRunning: boolean;
|
|
20
|
+
indexSizeBytes: number;
|
|
20
21
|
}
|
|
21
22
|
export declare function loadProjectStats(entry: RegistryEntry): Omit<ProjectStats, 'serverRunning'>;
|
|
22
23
|
export declare function createGuiApp(): express.Application;
|
package/dist/gui/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gui/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,OAAO,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/gui/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAGzC,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,OAAO,EAGL,KAAK,aAAa,EACnB,MAAM,4BAA4B,CAAC;AAIpC,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,aAAa,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;CACxB;AAaD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,IAAI,CAAC,YAAY,EAAE,eAAe,CAAC,CAsD1F;AAID,wBAAgB,YAAY,IAAI,OAAO,CAAC,WAAW,CAqJlD;AAED,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;IAC5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACxB;AAED,MAAM,WAAW,iBAAkB,SAAQ,SAAS;IAClD,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAuBvE"}
|
package/dist/gui/server.js
CHANGED
|
@@ -5,8 +5,9 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import { createServer } from 'node:http';
|
|
7
7
|
import { createConnection } from 'node:net';
|
|
8
|
-
import { existsSync } from 'node:fs';
|
|
8
|
+
import { existsSync, statSync } from 'node:fs';
|
|
9
9
|
import express from 'express';
|
|
10
|
+
import open from 'open';
|
|
10
11
|
import Database from 'better-sqlite3';
|
|
11
12
|
import { GlobalRegistry, getProjectIndexPath, } from '../cli/project-detector.js';
|
|
12
13
|
/** Check whether a TCP port is accepting connections (timeout: 300ms). */
|
|
@@ -26,9 +27,10 @@ export function loadProjectStats(entry) {
|
|
|
26
27
|
entry, fileCount: 0, symbolCount: 0,
|
|
27
28
|
totalTokensSaved: 0, totalTokensActual: 0,
|
|
28
29
|
savingsPercent: 0, sessionCount: 0,
|
|
29
|
-
dbExists: false, lastIndexed: null,
|
|
30
|
+
dbExists: false, lastIndexed: null, indexSizeBytes: 0,
|
|
30
31
|
};
|
|
31
32
|
}
|
|
33
|
+
const indexSizeBytes = statSync(dbPath).size;
|
|
32
34
|
let db = null;
|
|
33
35
|
try {
|
|
34
36
|
db = new Database(dbPath, { readonly: true });
|
|
@@ -54,6 +56,7 @@ export function loadProjectStats(entry) {
|
|
|
54
56
|
savingsPercent: Math.max(0, pct),
|
|
55
57
|
sessionCount, dbExists: true,
|
|
56
58
|
lastIndexed: lastIndexedRow.ts ?? null,
|
|
59
|
+
indexSizeBytes,
|
|
57
60
|
};
|
|
58
61
|
}
|
|
59
62
|
catch {
|
|
@@ -61,7 +64,7 @@ export function loadProjectStats(entry) {
|
|
|
61
64
|
entry, fileCount: 0, symbolCount: 0,
|
|
62
65
|
totalTokensSaved: 0, totalTokensActual: 0,
|
|
63
66
|
savingsPercent: 0, sessionCount: 0,
|
|
64
|
-
dbExists: false, lastIndexed: null,
|
|
67
|
+
dbExists: false, lastIndexed: null, indexSizeBytes: 0,
|
|
65
68
|
};
|
|
66
69
|
}
|
|
67
70
|
finally {
|
|
@@ -160,7 +163,9 @@ export function createGuiApp() {
|
|
|
160
163
|
try {
|
|
161
164
|
db = new Database(dbPath, { readonly: true });
|
|
162
165
|
const rows = db
|
|
163
|
-
.prepare(
|
|
166
|
+
.prepare(`SELECT id, started_at, mode, label, total_tokens, total_savings,
|
|
167
|
+
(SELECT MAX(timestamp) FROM token_log WHERE session_id = sessions.id) AS last_activity_at
|
|
168
|
+
FROM sessions ORDER BY started_at DESC LIMIT 12`)
|
|
164
169
|
.all();
|
|
165
170
|
rows.forEach(r => all.push({ ...r, projectName: entry.name, projectHash: entry.hash }));
|
|
166
171
|
}
|
|
@@ -183,10 +188,24 @@ export function createGuiApp() {
|
|
|
183
188
|
tokensActual: s.total_tokens,
|
|
184
189
|
tokensSaved: saved,
|
|
185
190
|
savingsPercent: base > 0 ? Math.round(saved / base * 100) : 0,
|
|
191
|
+
lastActivityAt: s.last_activity_at ?? null,
|
|
186
192
|
};
|
|
187
193
|
});
|
|
188
194
|
return res.json(result);
|
|
189
195
|
});
|
|
196
|
+
app.get('/api/projects/:hash/open', async (req, res) => {
|
|
197
|
+
const registry = new GlobalRegistry();
|
|
198
|
+
const entry = registry.list().find((p) => p.hash === req.params.hash);
|
|
199
|
+
if (!entry)
|
|
200
|
+
return res.status(404).json({ error: 'project not found' });
|
|
201
|
+
try {
|
|
202
|
+
await open(entry.path);
|
|
203
|
+
return res.json({ ok: true });
|
|
204
|
+
}
|
|
205
|
+
catch {
|
|
206
|
+
return res.status(500).json({ error: 'failed to open folder' });
|
|
207
|
+
}
|
|
208
|
+
});
|
|
190
209
|
app.get('/', (_req, res) => {
|
|
191
210
|
res.send(buildDashboardHtml());
|
|
192
211
|
});
|
|
@@ -242,22 +261,24 @@ function buildDashboardHtml() {
|
|
|
242
261
|
.chart-wrap{max-width:680px;padding:0 24px 24px}
|
|
243
262
|
.section{padding:0 24px 24px}
|
|
244
263
|
.section h2{color:var(--muted);font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}
|
|
245
|
-
.sessions-grid{display:grid;grid-template-columns:repeat(
|
|
264
|
+
.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}
|
|
246
265
|
.session-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:12px 14px;cursor:pointer;transition:border-color .15s}
|
|
247
266
|
.session-card:hover{border-color:var(--accent)}
|
|
248
267
|
.session-card .sc-proj{font-size:.68rem;color:var(--muted);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
|
|
249
268
|
.session-card .sc-saved{font-size:1.4rem;font-weight:700;color:var(--green)}
|
|
250
269
|
.session-card .sc-pct{font-size:.75rem;color:var(--muted);margin-top:2px}
|
|
251
|
-
.session-card .sc-
|
|
252
|
-
.session-card.
|
|
253
|
-
.
|
|
270
|
+
.session-card .sc-range{font-size:.68rem;color:var(--muted);margin-top:6px;border-top:1px solid var(--border);padding-top:6px;display:flex;justify-content:space-between;align-items:baseline;gap:6px}
|
|
271
|
+
.session-card .sc-range .sc-dur{color:var(--accent);font-size:.65rem;white-space:nowrap}
|
|
272
|
+
.sessions-empty{color:var(--muted);font-size:.85rem;padding:20px 0;text-align:center}
|
|
254
273
|
.sess-nav{display:flex;align-items:center;gap:8px;margin-bottom:12px}
|
|
255
274
|
.sess-nav button{background:var(--border);border:none;color:var(--text);padding:4px 12px;border-radius:4px;cursor:pointer;font-size:.8rem}
|
|
256
275
|
.sess-nav button:disabled{opacity:.4;cursor:default}
|
|
257
276
|
.sess-nav button:not(:disabled):hover{background:var(--accent);color:#000}
|
|
258
277
|
.sess-nav .sess-label{color:var(--muted);font-size:.8rem;flex:1;text-align:center}
|
|
259
|
-
.project-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px 20px;margin-bottom:10px;display:grid;grid-template-columns:auto 1fr auto auto auto auto;gap:14px;align-items:center;cursor:pointer;transition:border-color .15s}
|
|
278
|
+
.project-row{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px 20px;margin-bottom:10px;display:grid;grid-template-columns:auto 1fr auto auto auto auto auto auto;gap:14px;align-items:center;cursor:pointer;transition:border-color .15s}
|
|
260
279
|
.project-row:hover{border-color:var(--accent)}
|
|
280
|
+
.open-btn{background:none;border:1px solid var(--border);border-radius:4px;padding:3px 8px;cursor:pointer;font-size:.85rem;color:var(--muted);line-height:1;transition:border-color .15s,color .15s}
|
|
281
|
+
.open-btn:hover{border-color:var(--accent);color:var(--text)}
|
|
261
282
|
.srv-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}
|
|
262
283
|
.srv-dot.on{background:var(--green);box-shadow:0 0 6px var(--green)}
|
|
263
284
|
.srv-dot.off{background:var(--border)}
|
|
@@ -353,7 +374,11 @@ function buildDashboardHtml() {
|
|
|
353
374
|
|
|
354
375
|
<script>
|
|
355
376
|
const fmt = n => n >= 1e6 ? (n/1e6).toFixed(1)+'M' : n >= 1e3 ? (n/1e3).toFixed(1)+'K' : String(n);
|
|
377
|
+
const fmtSize = b => b >= 1073741824 ? (b/1073741824).toFixed(1)+' GB' : b >= 1048576 ? (b/1048576).toFixed(1)+' MB' : b >= 1024 ? (b/1024).toFixed(1)+' KB' : b+' B';
|
|
356
378
|
const fmtDate = s => s ? new Date(s.includes('Z') || s.includes('+') ? s : s.replace(' ', 'T') + 'Z').toLocaleString() : '\u2014';
|
|
379
|
+
const fmtTime = s => s ? new Date(s.includes('Z') || s.includes('+') ? s : s.replace(' ', 'T') + 'Z').toLocaleTimeString([], {hour:'2-digit',minute:'2-digit'}) : null;
|
|
380
|
+
const fmtDay = s => s ? new Date(s.includes('Z') || s.includes('+') ? s : s.replace(' ', 'T') + 'Z').toLocaleDateString([], {month:'short',day:'numeric'}) : '\u2014';
|
|
381
|
+
const fmtDur = (a, b) => { if (!a || !b) return null; const ms = new Date(b) - new Date(a); if (ms <= 0) return null; const m = Math.round(ms/60000); return m < 1 ? '<1\u202fmin' : m < 60 ? m+'\u202fmin' : (m/60).toFixed(1)+'\u202fh'; };
|
|
357
382
|
let chart = null, currentProjects = [];
|
|
358
383
|
let _modalSessions = [], _sessPage = 0;
|
|
359
384
|
const SESS_PER_PAGE = 6;
|
|
@@ -430,12 +455,19 @@ async function load() {
|
|
|
430
455
|
info.appendChild(name);
|
|
431
456
|
info.appendChild(path);
|
|
432
457
|
const mkBadge = (text, cls) => { const b = document.createElement('span'); b.className = 'badge' + (cls ? ' ' + cls : ''); b.textContent = text; return b; };
|
|
458
|
+
const openBtn = document.createElement('button');
|
|
459
|
+
openBtn.className = 'open-btn';
|
|
460
|
+
openBtn.title = 'Open project folder in explorer';
|
|
461
|
+
openBtn.textContent = '\\u{1F4C2}';
|
|
462
|
+
openBtn.onclick = (e) => { e.stopPropagation(); fetch('/api/projects/' + p.entry.hash + '/open').catch(() => {}); };
|
|
433
463
|
row.appendChild(dot);
|
|
434
464
|
row.appendChild(info);
|
|
435
465
|
row.appendChild(mkBadge(fmt(p.fileCount) + ' files', 'blue'));
|
|
436
466
|
row.appendChild(mkBadge(fmt(p.symbolCount) + ' symbols', 'blue'));
|
|
437
467
|
row.appendChild(mkBadge(p.savingsPercent + '% saved', p.savingsPercent >= 50 ? 'green' : ''));
|
|
438
468
|
row.appendChild(mkBadge(p.sessionCount + ' sessions', ''));
|
|
469
|
+
row.appendChild(mkBadge(fmtSize(p.indexSizeBytes ?? 0), ''));
|
|
470
|
+
row.appendChild(openBtn);
|
|
439
471
|
list.appendChild(row);
|
|
440
472
|
});
|
|
441
473
|
}
|
|
@@ -443,22 +475,33 @@ async function load() {
|
|
|
443
475
|
function renderSessionGrid(sessions) {
|
|
444
476
|
const grid = document.getElementById('sessions-grid');
|
|
445
477
|
grid.textContent = '';
|
|
446
|
-
|
|
478
|
+
if (!sessions.length) {
|
|
479
|
+
const msg = document.createElement('div');
|
|
480
|
+
msg.className = 'sessions-empty';
|
|
481
|
+
msg.textContent = 'No sessions recorded yet.';
|
|
482
|
+
grid.appendChild(msg);
|
|
483
|
+
return;
|
|
484
|
+
}
|
|
485
|
+
sessions.forEach(s => {
|
|
447
486
|
const card = document.createElement('div');
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
487
|
+
card.className = 'session-card';
|
|
488
|
+
card.onclick = () => openDetail(s.projectHash, s.projectName);
|
|
489
|
+
card.appendChild(el('div', 'sc-proj', s.projectName));
|
|
490
|
+
card.appendChild(el('div', 'sc-saved', fmt(s.tokensSaved)));
|
|
491
|
+
card.appendChild(el('div', 'sc-pct', s.savingsPercent + '% saved \u2022 ' + fmt(s.tokensActual) + ' used'));
|
|
492
|
+
const rangeDiv = el('div', 'sc-range');
|
|
493
|
+
const startTime = fmtTime(s.startedAt);
|
|
494
|
+
const endTime = fmtTime(s.lastActivityAt);
|
|
495
|
+
const day = fmtDay(s.startedAt);
|
|
496
|
+
const dur = fmtDur(s.startedAt, s.lastActivityAt);
|
|
497
|
+
const timeText = startTime && endTime && startTime !== endTime
|
|
498
|
+
? day + '\u2002' + startTime + '\u2013' + endTime
|
|
499
|
+
: day + (startTime ? '\u2002' + startTime : '');
|
|
500
|
+
rangeDiv.appendChild(el('span', '', timeText));
|
|
501
|
+
if (dur) rangeDiv.appendChild(el('span', 'sc-dur', dur));
|
|
502
|
+
card.appendChild(rangeDiv);
|
|
460
503
|
grid.appendChild(card);
|
|
461
|
-
}
|
|
504
|
+
});
|
|
462
505
|
}
|
|
463
506
|
|
|
464
507
|
function closeModal() { document.getElementById('modal').classList.remove('open'); }
|
|
@@ -542,12 +585,22 @@ function renderOv(proj, detail) {
|
|
|
542
585
|
infoB.appendChild(document.createElement('br'));
|
|
543
586
|
infoB.appendChild(document.createTextNode('Last indexed: ' + fmtDate(proj.lastIndexed)));
|
|
544
587
|
infoB.appendChild(document.createElement('br'));
|
|
588
|
+
infoB.appendChild(document.createTextNode('Index size: ' + fmtSize(proj.indexSizeBytes ?? 0)));
|
|
589
|
+
infoB.appendChild(document.createElement('br'));
|
|
545
590
|
const hashSpan = el('span', '', 'Index hash: ');
|
|
546
591
|
const hashCode = el('span', '');
|
|
547
592
|
hashCode.style.fontFamily = 'monospace';
|
|
548
593
|
hashCode.textContent = proj.entry.hash;
|
|
549
594
|
hashSpan.appendChild(hashCode);
|
|
550
595
|
infoB.appendChild(hashSpan);
|
|
596
|
+
infoB.appendChild(document.createElement('br'));
|
|
597
|
+
const openLink = document.createElement('button');
|
|
598
|
+
openLink.textContent = '\\u{1F4C2} Open project folder';
|
|
599
|
+
openLink.style.cssText = 'margin-top:8px;background:none;border:1px solid var(--border);border-radius:4px;padding:4px 10px;color:var(--muted);cursor:pointer;font-size:.8rem;transition:border-color .15s,color .15s';
|
|
600
|
+
openLink.onmouseover = () => { openLink.style.borderColor = 'var(--accent)'; openLink.style.color = 'var(--text)'; };
|
|
601
|
+
openLink.onmouseout = () => { openLink.style.borderColor = 'var(--border)'; openLink.style.color = 'var(--muted)'; };
|
|
602
|
+
openLink.onclick = () => fetch('/api/projects/' + proj.entry.hash + '/open').catch(() => {});
|
|
603
|
+
infoB.appendChild(openLink);
|
|
551
604
|
panel.appendChild(infoB);
|
|
552
605
|
}
|
|
553
606
|
|
package/dist/gui/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/gui/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/gui/server.ts"],"names":[],"mappings":"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"}
|