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

Function showStatisticsModal

devtools/panel.bundle.js:1708–1746  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

1706 }
1707
1708 function showStatisticsModal() {
1709 const stats = calculateStatistics();
1710
1711 document.getElementById('stat-total-connections').textContent = stats.totalConnections;
1712 document.getElementById('stat-active-connections').textContent = stats.activeConnections;
1713 document.getElementById('stat-total-messages').textContent = stats.totalMessages;
1714 document.getElementById('stat-avg-messages').textContent = stats.avgMessages;
1715
1716 const statsConnectionList = document.getElementById('stats-connection-list');
1717
1718 if (stats.connections.length === 0) {
1719 statsConnectionList.innerHTML = '<div style="text-align: center; color: var(--text-muted); padding: 20px;">暂无连接数据</div>';
1720 } else {
1721 statsConnectionList.innerHTML = stats.connections.map(conn => `
1722 <div class="stats-connection-item">
1723 <div class="stats-connection-header">
1724 <div class="stats-connection-url" title="${escapeHtml(conn.url)}">${escapeHtml(getUrlPath(conn.url))}</div>
1725 <span class="stats-connection-status status-${conn.status}">${getStatusText(conn.status)}</span>
1726 </div>
1727 <div class="stats-connection-details">
1728 <div class="stats-detail-item">
1729 <span class="stats-detail-label">消息数</span>
1730 <span class="stats-detail-value">${conn.messageCount}</span>
1731 </div>
1732 <div class="stats-detail-item">
1733 <span class="stats-detail-label">持续时间</span>
1734 <span class="stats-detail-value">${formatDuration(conn.duration)}</span>
1735 </div>
1736 <div class="stats-detail-item">
1737 <span class="stats-detail-label">ID</span>
1738 <span class="stats-detail-value">${conn.id.substring(0, 8)}...</span>
1739 </div>
1740 </div>
1741 </div>
1742 `).join('');
1743 }
1744
1745 elements$3.statsModal.style.display = 'flex';
1746 }
1747
1748 function closeStatisticsModal() {
1749 elements$3.statsModal.style.display = 'none';

Callers

nothing calls this directly

Calls 5

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

Tested by

no test coverage detected