import React, { useState, useMemo } from 'react'; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/Components/ui/card"; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from "@/Components/ui/select"; import {SecuritySummaryReportResultType} from "@/types/security-summary"; import VulnerabilityPieChart from "@/Components/VulnerabilityPieChart"; export default function VulnerabilitiesPassiveCard({reportData}: { reportData: SecuritySummaryReportResultType }) { const vulnerabilityData = useMemo(() => [ { name: 'High', value: reportData.n_vulns.passive.high, fill: 'hsl(var(--chart-4))' }, { name: 'Medium', value: reportData.n_vulns.passive.medium, fill: 'hsl(var(--chart-5))' } ], [reportData]); const [activeMetric, setActiveMetric] = useState(vulnerabilityData[0].name); const activeIndex = useMemo( () => vulnerabilityData.findIndex((item) => item.name === activeMetric), [activeMetric, vulnerabilityData] ); const metrics = useMemo(() => vulnerabilityData.map((item) => item.name), [vulnerabilityData]); const chartConfig: any = { 'High': { label: "High", color: 'hsl(var(--chart-4))' }, 'Medium': { label: "Medium", color: 'hsl(var(--chart-5))' } }; return (
Passive Vulnerabilities Number of Passive Vulnerabilities
); }