import type { ProfileStats } from "../domain/types"; function pct(v: number | null | undefined): string { return v == null ? "—" : `${Math.round(v * 100)}%`; } export function ProfileStatsCard({ stats, title = "Моя статистика", }: { stats: ProfileStats; title?: string; }) { const o = stats.overall; // Серебристый рейтинг — пока игрок «новичок» (меньше min_games партий) или // не играл вовсе; золотой — только подтверждённый (как в топах). const provisional = o.score == null || o.games < stats.min_games; return (

{title}

Игр
{o.games}
Побед
{o.wins}
Винрейт
{pct(o.win_rate)}
Среднее место
{o.avg_place ?? "—"}
Очки (рейтинг)
{o.score ?? "—"}
{/* Любимая — личный выбор игрока в профиле; ниже — статистика по партиям. */} {stats.favorite_faction && (
Любимая фракция
{stats.favorite_faction.name_ru}
)} {stats.main_faction && (
Чаще всего играет на
{stats.main_faction.name_ru_prepositional}
)}
); }