import { CircleHelp, Layers, type LucideIcon, Shield, ShieldCheck, TriangleAlert, } from "lucide-react"; import Link from "next/link"; import { CardVariant, ResourceStatsCard } from "@/components/shadcn"; import { issuesHref } from "@/lib/issues/scope"; import { IssuesOverviewAttributes } from "@/types/issues"; interface TileProps { value: number; label: string; detail?: string; href: string; icon: LucideIcon; variant: CardVariant; } const Tile = ({ value, label, detail, href, icon, variant }: TileProps) => ( ); /** * The reduction, as the first row of the page: findings and issues side by * side because the ratio between them is the claim the page makes. Every tile * keeps the scope it was counted in. */ export const IssuesSummary = ({ summary, scope, }: { summary: IssuesOverviewAttributes; /** The filters in force other than the verdict, so the counts still match. */ scope: Record; }) => (
0 ? CardVariant.fail : CardVariant.pass} />
);