'use client' import React from 'react' import { RegGroupKey, GROUP_LABELS, GROUP_ORDER } from './ChunkBrowserConstants' interface ChunkBrowserSidebarProps { filterSearch: string setFilterSearch: (v: string) => void countsLoading: boolean filteredRegulations: Record regulationCounts: Record selectedRegulation: string | null collapsedGroups: Set onSelectRegulation: (code: string) => void onToggleGroup: (group: string) => void } export function ChunkBrowserSidebar({ filterSearch, setFilterSearch, countsLoading, filteredRegulations, regulationCounts, selectedRegulation, collapsedGroups, onSelectRegulation, onToggleGroup, }: ChunkBrowserSidebarProps) { return (
setFilterSearch(e.target.value)} placeholder="Suche..." className="w-full px-2 py-1.5 border rounded-lg text-sm focus:ring-2 focus:ring-teal-500" /> {countsLoading && (
Counts laden...
)}
{GROUP_ORDER.map(group => { const items = filteredRegulations[group] if (items.length === 0) return null const isCollapsed = collapsedGroups.has(group) return (
{!isCollapsed && items.map(reg => { const count = regulationCounts[reg.code] ?? 0 const isSelected = selectedRegulation === reg.code return ( ) })}
) })}
) }