import { Dialog, DialogContent, DialogHeader, DialogTitle, DialogDescription } from "@/components/ui/dialog"; import { Button } from "@/components/ui/button"; import { Expert, Location } from "@/types"; // Ajustez le chemin selon votre structure import { Dispatch, SetStateAction } from 'react'; // Ajout de l'import interface Expertise { id: string; name: string; } interface FilterModalProps { open: boolean; setOpen: (open: boolean) => void; selectedPays: string; setSelectedPays: (pays: string) => void; selectedVille: string; setSelectedVille: (ville: string) => void; selectedExpertises: string[]; setSelectedExpertises: Dispatch>; // Correction du type locations: Location[]; experts: Expert[] | null; } export const FilterModal = ({ open, setOpen, selectedPays, setSelectedPays, selectedVille, setSelectedVille, selectedExpertises, setSelectedExpertises, locations, experts, }: FilterModalProps) => { const activeFiltersCount = [ ...(selectedExpertises.length > 0 ? [1] : []), selectedPays, selectedVille ].filter(Boolean).length; const expertises: Expertise[] = [ { id: 'immobilier', name: 'Immobilier' }, { id: 'finance', name: 'Finance' }, { id: 'droit', name: 'Droit' }, { id: 'fiscalite', name: 'Fiscalité' }, { id: 'assurance', name: 'Assurance' }, { id: 'patrimoine', name: 'Patrimoine' }, ]; return ( Filtres {activeFiltersCount} filtre{activeFiltersCount > 1 ? 's' : ''} actif{activeFiltersCount > 1 ? 's' : ''} Filtrez les experts par expertise et localisation
{/* Section Expertises */}

Expertises

{expertises.map((expertise) => ( ))}
{/* Section Pays */}

Pays

{locations.map(({ pays }) => ( ))}
{/* Section Villes (conditionnelle) */} {selectedPays && (

Villes {selectedPays && `(${selectedPays})`}

{locations .find(loc => loc.pays === selectedPays) ?.villes.map(ville => ( ))}
)}
); };