diff --git a/src/components/ui/DataFilters.tsx b/src/components/ui/DataFilters.tsx index 3d682b8..8f90687 100644 --- a/src/components/ui/DataFilters.tsx +++ b/src/components/ui/DataFilters.tsx @@ -45,9 +45,21 @@ export function DataFilters({ const costCenters = Array.from( new Set(data.map((item) => item.costCenter).filter(Boolean)) ).sort(); - const repositories = Array.from( - new Set(data.map((item) => item.repository).filter(Boolean)) - ).sort(); + + // Repositories are now filtered based on the selected organization + const repositories = useMemo(() => { + if (!filters.organization) { + return []; // No organization selected, so no repositories to show + } + return Array.from( + new Set( + data + .filter((item) => item.organization === filters.organization) + .map((item) => item.repository) + .filter(Boolean) + ) + ).sort(); + }, [data, filters.organization]); // Get date range from data const dates = data.map((item) => item.date).sort(); @@ -133,6 +145,14 @@ export function DataFilters({ }); }; + const handleOrganizationChange = (org: string) => { + setFilters((prev) => ({ + ...prev, + organization: org, + repository: "", // Reset repository when organization changes + })); + }; + const hasActiveFilters = filters.organization || filters.costCenter || @@ -162,7 +182,7 @@ export function DataFilters({