"use client"; import { Button } from "@/components/ui/button"; import { Users, Target, Building2, Filter } from "lucide-react"; import { Team } from "@/lib/types"; import { TeamStats } from "@/services/admin-service"; import { MultiSelectFilter } from "./multi-select-filter"; interface AdminFiltersProps { teams: Team[]; teamStats: TeamStats[]; selectedDirections: string[]; selectedTeams: string[]; onDirectionsChange: (directions: string[]) => void; onTeamsChange: (teams: string[]) => void; getFilteredTeamStats: () => TeamStats[]; } export function AdminFilters({ teams, teamStats, selectedDirections, selectedTeams, onDirectionsChange, onTeamsChange, getFilteredTeamStats, }: AdminFiltersProps) { const hasFilters = selectedDirections.length > 0 || selectedTeams.length > 0; const directionOptions = Array.from( new Set(teams.map((team) => team.direction)) ).map((direction) => ({ id: direction, label: direction, count: teams.filter((team) => team.direction === direction).length, })); const teamOptions = teams.map((team) => ({ id: team.id, label: `${team.name} (${team.direction})`, count: teamStats.find((stat) => stat.teamId === team.id)?.totalMembers || 0, })); const handleReset = () => { onDirectionsChange([]); onTeamsChange([]); }; return (