'use client'; import { ServiceCategory, ServiceStatus } from '@/lib/data'; interface FilterBarProps { categories: ServiceCategory[]; statuses: ServiceStatus[]; selectedCategories: ServiceCategory[]; selectedStatuses: ServiceStatus[]; onCategoryChange: (category: ServiceCategory) => void; onStatusChange: (status: ServiceStatus) => void; onReset: () => void; } /** * FilterBar - Filterleiste zum Filtern von Services nach Kategorie und Status * @param categories - Verfügbare Kategorien * @param statuses - Verfügbare Status * @param selectedCategories - Aktuell ausgewählte Kategorien * @param selectedStatuses - Aktuell ausgewählte Status * @param onCategoryChange - Callback beim Ändern einer Kategorie * @param onStatusChange - Callback beim Ändern eines Status * @param onReset - Callback zum Zurücksetzen aller Filter */ export function FilterBar({ categories, statuses, selectedCategories, selectedStatuses, onCategoryChange, onStatusChange, onReset, }: FilterBarProps) { const hasActiveFilters = selectedCategories.length > 0 || selectedStatuses.length > 0; return (
{/* Kategorie Filter */}

Kategorie

{categories.map((category) => ( ))}
{/* Status Filter */}

Status

{statuses.map((status) => ( ))}
{/* Reset Button */} {hasActiveFilters && (
{selectedCategories.length + selectedStatuses.length} Filter aktiv
)}
); }