"use client"; import { useEffect, useState } from "react"; import { Plus, Search, Building2, Mail, Phone } from "lucide-react"; import { Header } from "@/components/layout/header"; import { Button } from "@/components/ui/button"; import { Input } from "@/components/ui/input"; import { Card, CardContent } from "@/components/ui/card"; import { clientsApi, type Client } from "@/lib/api"; import { getToken } from "@/lib/auth"; import Link from "next/link"; export default function ClientsPage() { const [clients, setClients] = useState([]); const [search, setSearch] = useState(""); const [loading, setLoading] = useState(true); useEffect(() => { const token = getToken(); if (!token) return; clientsApi.list(token).then(setClients).finally(() => setLoading(false)); }, []); const filtered = clients.filter((c) => c.nom.toLowerCase().includes(search.toLowerCase()) || c.contact?.toLowerCase().includes(search.toLowerCase()) || c.email?.toLowerCase().includes(search.toLowerCase()) ); return (
{/* Toolbar */}
setSearch(e.target.value)} />
{/* Client list */} {loading ? (

Chargement...

) : filtered.length === 0 ? (

Aucun client trouvé

Créez votre premier client pour commencer.

) : (
{filtered.map((client) => (

{client.nom}

{client.contact && (

{client.contact}

)} {client.email && (

{client.email}

)} {client.telephone && (

{client.telephone}

)}

Créé le {new Date(client.createdAt).toLocaleDateString("fr-FR")}

))}
)}
); }