"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("/data/places.json"); const data: Place[] = await response.json(); // Filtrer par catégorie si nécessaire const filteredPlaces = category === "all" ? data : data.filter((place) => place.category === category); setPlaces(filteredPlaces); } 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) => ( ))}
); }