auto refresh

This commit is contained in:
Theo Browne
2026-02-22 03:12:44 -08:00
parent a7b2a24f02
commit deeeeae8f7
3 changed files with 15 additions and 0 deletions

View File

@@ -38,6 +38,7 @@ type ServerMessage = {
data: GameState;
totalRounds: number;
viewerCount: number;
version?: string;
};
const MODEL_COLORS: Record<string, string> = {
@@ -73,6 +74,7 @@ let connected = false;
let ws: WebSocket | null = null;
let reconnectTimer: number | null = null;
let lastMessageAt = 0;
let knownVersion: string | null = null;
function getColor(name: string): string {
return MODEL_COLORS[name] ?? "#aeb6d6";
@@ -128,6 +130,10 @@ function setupWebSocket() {
try {
const msg = JSON.parse(String(e.data)) as ServerMessage;
if (msg.type === "state") {
if (msg.version) {
if (!knownVersion) knownVersion = msg.version;
else if (knownVersion !== msg.version) return location.reload();
}
state = msg.data;
totalRounds =
Number.isFinite(msg.totalRounds) && msg.totalRounds >= 0