MCPcopy Create free account
hub / github.com/bywwcnll/StreamPanel / showStatisticsModal

Function showStatisticsModal

devtools/modules/statisticsManager.js:35–73  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

33}
34
35export function showStatisticsModal() {
36 const stats = calculateStatistics();
37
38 document.getElementById('stat-total-connections').textContent = stats.totalConnections;
39 document.getElementById('stat-active-connections').textContent = stats.activeConnections;
40 document.getElementById('stat-total-messages').textContent = stats.totalMessages;
41 document.getElementById('stat-avg-messages').textContent = stats.avgMessages;
42
43 const statsConnectionList = document.getElementById('stats-connection-list');
44
45 if (stats.connections.length === 0) {
46 statsConnectionList.innerHTML = '<div style="text-align: center; color: var(--text-muted); padding: 20px;">暂无连接数据</div>';
47 } else {
48 statsConnectionList.innerHTML = stats.connections.map(conn => `
49 <div class="stats-connection-item">
50 <div class="stats-connection-header">
51 <div class="stats-connection-url" title="${escapeHtml(conn.url)}">${escapeHtml(getUrlPath(conn.url))}</div>
52 <span class="stats-connection-status status-${conn.status}">${getStatusText(conn.status)}</span>
53 </div>
54 <div class="stats-connection-details">
55 <div class="stats-detail-item">
56 <span class="stats-detail-label">消息数</span>
57 <span class="stats-detail-value">${conn.messageCount}</span>
58 </div>
59 <div class="stats-detail-item">
60 <span class="stats-detail-label">持续时间</span>
61 <span class="stats-detail-value">${formatDuration(conn.duration)}</span>
62 </div>
63 <div class="stats-detail-item">
64 <span class="stats-detail-label">ID</span>
65 <span class="stats-detail-value">${conn.id.substring(0, 8)}...</span>
66 </div>
67 </div>
68 </div>
69 `).join('');
70 }
71
72 elements.statsModal.style.display = 'flex';
73}
74
75export function closeStatisticsModal() {
76 elements.statsModal.style.display = 'none';

Callers

nothing calls this directly

Calls 5

escapeHtmlFunction · 0.90
getUrlPathFunction · 0.90
getStatusTextFunction · 0.90
formatDurationFunction · 0.90
calculateStatisticsFunction · 0.70

Tested by

no test coverage detected