fix: honor Komodo health and prefer fresh telemetry across fleet status

This commit is contained in:
2026-09-27 15:34:30 -04:00
parent 46a89ea4b0
commit 8ea696417f
27 changed files with 488 additions and 315 deletions
+6 -4
View File
@@ -16,6 +16,7 @@
betaId: number;
}
interface Props {
telemetry?: import('$lib/telemetry.js').GameTelemetry;
name: string;
players?: number | null;
map?: string | null;
@@ -35,6 +36,7 @@
mapLabelOverride?: string;
}
let {
telemetry,
name,
players = null,
map = null,
@@ -66,7 +68,7 @@
let topRoster = $derived(
(roster ?? [])
.slice()
.sort((a, b) => b.score - a.score)
.sort((a, b) => (b.score ?? 0) - (a.score ?? 0))
.slice(0, 4)
);
let showRoster = $derived(health === 'online' || health === 'stale');
@@ -134,7 +136,7 @@
{#if topRoster.length}<div class="roster-heading">Last reported players</div>{/if}
{/if}
{#if health === 'online' && players !== null && players > 0 && gameInProgress}<RoundTelemetry {name} since={gameStartedAt} />{/if}
{#if health === 'online' && players !== null && players > 0 && gameInProgress}<RoundTelemetry {name} report={telemetry} since={gameStartedAt} />{/if}
{#if showTiming && !(compactEmpty && players === 0)}
<div class="timing">
@@ -169,8 +171,8 @@
{#each topRoster as p (p.guid ?? p.name)}
<li>
<span class="pname">{p.name || '—'}</span>
<span class="pscore">{p.score}</span>
<span class="pping">{p.ping}ms</span>
<span class="pscore">{p.score ?? '—'}</span>
<span class="pping">{p.ping === null ? '—' : `${p.ping}ms`}</span>
</li>
{/each}
</ul>