'use client'; import React from 'react'; import { Users } from 'lucide-react'; import { TeamLeaderboardPreview } from '@/ui/TeamLeaderboardPreviewWrapper'; import { Button } from '@/ui/Button'; import { Box } from '@/ui/Box'; import { Stack } from '@/ui/Stack'; import { Text } from '@/ui/Text'; import { Heading } from '@/ui/Heading'; import { Container } from '@/ui/Container'; import { Grid } from '@/ui/Grid'; import { TeamCard } from '@/ui/TeamCardWrapper'; import { EmptyState } from '@/ui/EmptyState'; import type { TeamSummaryData, TeamsViewData } from '@/lib/view-data/TeamsViewData'; interface TeamsTemplateProps { viewData: TeamsViewData; onTeamClick?: (teamId: string) => void; onViewFullLeaderboard: () => void; onCreateTeam: () => void; } export function TeamsTemplate({ viewData, onTeamClick, onViewFullLeaderboard, onCreateTeam }: TeamsTemplateProps) { const { teams } = viewData; return ( {/* Header */} Teams Browse and manage your racing teams {/* Teams Grid */} {teams.length > 0 ? ( {teams.map((team: TeamSummaryData) => ( onTeamClick?.(team.teamId)} /> ))} ) : ( )} {/* Team Leaderboard Preview */} onTeamClick?.(id)} onViewFullLeaderboard={onViewFullLeaderboard} /> ); }