import { useState } from 'react'; import { brands } from '../data/mock'; interface Props { onFilter?: (filters: any) => void; } export default function FilterSidebar({ onFilter }: Props) { const [selectedBrands, setSelectedBrands] = useState([]); const [priceRange, setPriceRange] = useState<[number, number]>([0, 300]); const [gender, setGender] = useState(''); const [mobileOpen, setMobileOpen] = useState(false); const toggleBrand = (slug: string) => { setSelectedBrands(prev => prev.includes(slug) ? prev.filter(b => b !== slug) : [...prev, slug] ); }; const genders = [ { value: '', label: 'Alle' }, { value: 'heren', label: 'Heren' }, { value: 'dames', label: 'Dames' }, { value: 'unisex', label: 'Unisex' }, ]; const content = (
{/* Brands */}

Merk

{brands.map(b => ( ))}
{/* Gender */}

Geslacht

{genders.map(g => ( ))}
{/* Price range */}

Prijs

setPriceRange([priceRange[0], +e.target.value])} className="w-full accent-accent" />
€0 €{priceRange[1]}
{/* Reset */}
); return ( <> {/* Mobile toggle */} {/* Mobile drawer */} {mobileOpen && (
{content}
)} {/* Desktop sidebar */}
{content}
); }