"use client" interface GameWithStats { id: string title: string stats: { totalEntries: number avgFps: number | null medianFps: number | null bestFps: number | null avgOnePercentLow: number | null avgStability: number | null bestDevice: string | null tierBreakdown: { unplayable: number; playable: number; smooth: number; excellent: number } | null deviceBreakdown: Array<{ hardwareSlug: string; count: number; avgFps: number }> } } function StatRow({ label, values }: { label: string; values: (string | number | null)[] }) { return (
{values.map((val, i) => (
{i === 0 ? label : ""} {val !== null && val !== undefined ? val : "—"}
))}
) } export function StatsComparison({ games }: { games: GameWithStats[] }) { if (games.length === 0) return null return (
{/* Header row with game titles */}
{games.map(game => (

{game.title}

{game.stats.totalEntries} entries
))}
g.stats.avgFps ? `${g.stats.avgFps}` : null)} /> g.stats.medianFps ? `${g.stats.medianFps}` : null)} /> g.stats.bestFps ? `${g.stats.bestFps}` : null)} /> g.stats.avgOnePercentLow ? `${g.stats.avgOnePercentLow}` : null)} /> g.stats.avgStability != null ? `${g.stats.avgStability}%` : null)} /> g.stats.bestDevice ?? null)} />
) }