import { Badge } from '@/components/ui/badge'; import { Button } from '@/components/ui/button'; import { apiClient } from '@/lib/api-client'; import { useQuery } from '@tanstack/react-query'; import { useLocation } from '@tanstack/react-router'; import { Building2, ChevronDown, ChevronUp, MapPin, RefreshCw } from 'lucide-react'; import { useState } from 'react'; import { AdminLayout } from './admin-layout'; function PaymentBadge({ status }: { status: string }) { if (status === 'active') { return ( Activo ); } if (status === 'no_plan') { return ( Sin plan ); } return ( Expirado ); } export function ComplexesPage() { const location = useLocation(); const [expandedId, setExpandedId] = useState(null); const { data, isLoading, refetch } = useQuery({ queryKey: ['admin-complexes'], queryFn: () => apiClient.admin.listComplexes(), }); return (

Complejos

{data?.length ?? 0} complejos registrados en Playzer.

{isLoading ? (

Cargando complejos...

) : data?.length === 0 ? (

No hay complejos registrados.

) : (
{data?.map((complex) => { const isExpanded = expandedId === complex.id; return (
{isExpanded && (

Plan

{complex.planName ?? 'Sin plan'}

Canchas

{complex.courtCount}

Usuarios

{complex.userCount}

Prom. reservas/día

{complex.avgBookingsPerDay.toFixed(1)}

)}
); })}
)}
); }