"use client"; import { useEffect, useState } from "react"; import PlaceCard from "./PlaceCard"; import { Place } from "@/lib/types/place"; interface PlaceListProps { category: string; } export default function PlaceList({ category }: PlaceListProps) { const [places, setPlaces] = useState([]); const [loading, setLoading] = useState(true); useEffect(() => { const fetchPlaces = async () => { setLoading(true); try { const response = await fetch( `/api/places${category !== "all" ? `?category=${category}` : ""}` ); const data = await response.json(); setPlaces(data); } catch (error) { console.error("Erreur lors du chargement des lieux:", error); } finally { setLoading(false); } }; fetchPlaces(); }, [category]); if (loading) { return (

Chargement...

); } if (places.length === 0) { return (

Aucun lieu trouvé dans cette catégorie.

); } return (
{places.map((place) => ( ))}
); }