Files
gridpilot.gg/apps/website/components/races/StandingsItem.tsx
2026-01-18 23:24:30 +01:00

45 lines
1.0 KiB
TypeScript

import { Badge } from '@/ui/Badge';
import { Card } from '@/ui/Card';
import { Heading } from '@/ui/Heading';
import { Grid } from '@/ui/Grid';
import { Stack } from '@/ui/Stack';
import { StatItem } from '@/ui/StatItem';
interface StandingsItemProps {
leagueName: string;
position: number;
points: number;
wins: number;
racesCompleted: number;
}
export function StandingsItem({
leagueName,
position,
points,
wins,
racesCompleted,
}: StandingsItemProps) {
return (
<Card
variant="default"
p={4}
>
<Stack direction="row" align="center" justify="between" mb={3}>
<Heading level={4}>
{leagueName}
</Heading>
<Badge variant="primary">
P{position}
</Badge>
</Stack>
<Grid cols={3} gap={4}>
<StatItem label="Points" value={points} align="center" />
<StatItem label="Wins" value={wins} align="center" />
<StatItem label="Races" value={racesCompleted} align="center" />
</Grid>
</Card>
);
}