126 lines
5.4 KiB
HTML

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta content="width=device-width, initial-scale=1.0" name="viewport" />
<title>Waku Dogfooding - Refactored</title>
<link rel="apple-touch-icon" href="<%= htmlWebpackPlugin.options.publicPath %>favicon.png" />
<link rel="manifest" href="<%= htmlWebpackPlugin.options.publicPath %>manifest.json" />
<link rel="icon" href="<%= htmlWebpackPlugin.options.publicPath %>favicon.ico" />
<link rel="stylesheet" href="<%= htmlWebpackPlugin.options.publicPath %>style.css" />
</head>
<body>
<div class="app-container">
<header>
<h1>Waku Message Center</h1>
<div class="connection-status">
<span>Your Peer ID: <span id="peerIdDisplay">Connecting...</span></span>
</div>
</header>
<main>
<section class="message-stats">
<h2>Message Statistics</h2>
<div class="stats-counters">
<div>
<span class="counter-value" id="sentByMeCount">0</span>
<span class="counter-label">Sent by Me</span>
</div>
<div>
<span class="counter-value" id="receivedMineCount">0</span>
<span class="counter-label">Received (Mine)</span>
</div>
<div>
<span class="counter-value" id="receivedOthersCount">0</span>
<span class="counter-label">Received (Others)</span>
</div>
<div>
<span class="counter-value" id="failedToSendCount">0</span>
<span class="counter-label">Failed to Send</span>
</div>
</div>
</section>
<section class="message-controls">
<h2>Controls</h2>
<button id="sendMessageButton" class="btn btn-primary">Send New Message Batch</button>
<button id="toggleContinuousSendButton" class="btn btn-success">Start Continuous Sending</button>
<div class="search-container">
<input type="text" id="searchInput" placeholder="Search messages by content..." />
<button id="searchButton" class="btn">Search</button>
</div>
</section>
<section class="charts">
<h2>Discovery Peers Over Time</h2>
<canvas id="discoveryChart"></canvas>
<div id="discoverySummaryTop" class="latency-summary"></div>
<div class="collapsible-header" id="toggleDiscoveryTable">
<h3>Show Discovery Table</h3>
<button id="toggleDiscoveryTableBtn" class="btn">Show</button>
</div>
<div id="discoveryTableContainer" class="collapsible hidden">
<table id="discoveryTable">
<thead>
<tr><th>Time</th><th>Type</th><th>Total Peers</th></tr>
</thead>
<tbody></tbody>
</table>
</div>
</section>
<section class="charts">
<h2>Connected Peers Over Time</h2>
<canvas id="connectionsChart"></canvas>
<div id="ttfcSummary" class="latency-summary"></div>
<div class="collapsible-header" id="toggleConnectionsTable">
<h3>Show Connections Table</h3>
<button id="toggleConnectionsTableBtn" class="btn">Show</button>
</div>
<div id="connectionsTableContainer" class="collapsible hidden">
<table id="connectionsTable">
<thead>
<tr><th>Time</th><th>Connected Peers</th></tr>
</thead>
<tbody></tbody>
</table>
</div>
</section>
<section class="charts">
<h2>Message Delivery Latency</h2>
<canvas id="latencyChart"></canvas>
<div id="latencySummaryTop" class="latency-summary"></div>
<div class="collapsible-header" id="toggleLatencyTable">
<h3>Latency Table</h3>
<button id="toggleLatencyTableBtn" class="btn">Show</button>
</div>
<div id="latencyTableContainer" class="collapsible hidden">
<table id="latencyTable">
<thead>
<tr><th>Message ID</th><th>Sent</th><th>Received</th><th>Latency (ms)</th></tr>
</thead>
<tbody></tbody>
</table>
</div>
</section>
<section class="message-display">
<div class="collapsible-header" id="toggleLog">
<h2>Message Log</h2>
<button id="toggleLogBtn" class="btn">Show</button>
</div>
<div id="messageLogContainer" class="collapsible hidden">
<div id="messageList" class="message-list"></div>
</div>
</section>
</main>
<footer>
<p>Waku Dogfooding App - Modern UI</p>
</footer>
</div>
</body>
</html>