'use client'; import { ServiceStatus } from '@/src/types/service'; interface FilterBarProps { categories: string[]; statuses: ServiceStatus[]; selectedCategories: string[]; selectedStatuses: ServiceStatus[]; onCategoryChange: (category: string) => 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
)}
); }