import { prisma } from "@/lib/prisma"; import { notFound } from "next/navigation"; import { Card, CardContent, CardHeader, CardTitle } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import type { ScanResult } from "@/lib/types"; export async function generateMetadata({ params }: { params: Promise<{ domain: string }> }) { const { domain } = await params; return { title: domain }; } export default async function DomainDetailPage({ params, }: { params: Promise<{ domain: string }>; }) { const { domain: raw } = await params; const domain = decodeURIComponent(raw); const scan = await prisma.scan.findFirst({ where: { domain, status: "COMPLETED" }, orderBy: { createdAt: "desc" }, }); if (!scan?.result) { notFound(); } const result = scan.result as unknown as ScanResult; return (
Full analysis report
Status:{" "}
Issuer: {result.ssl.issuer}
} {result.ssl.validTo &&Expires: {result.ssl.validTo}
} {result.ssl.daysRemaining !== undefined && (Days remaining: {result.ssl.daysRemaining}
)}