"use client"; import { Suspense, useEffect, useState } from "react"; import { useSearchParams } from "next/navigation"; import CommonGridShape from "@/components/common/CommonGridShape"; function DownloadMirrorContent() { const searchParams = useSearchParams(); const [status, setStatus] = useState("Preparing your download..."); const [error, setError] = useState(null); const [downloadUrl, setDownloadUrl] = useState(null); useEffect(() => { const serial = searchParams.get("serial"); const format = searchParams.get("format"); const target = searchParams.get("target"); if (!serial) { setError("Missing certificate serial."); setStatus(""); return; } // Construct backend URL const baseUrl = process.env.NEXT_PUBLIC_BACKEND_URL; let url = `${baseUrl}/api/public/ca-certificates/${serial}/download`; // Append target if specified (windows/mac) if (target) { url += `/${target}`; } // Append format if specified (der) if (format) { url += `?format=${format}`; } setDownloadUrl(url); // Mirroring: Redirect to the backend download URL setStatus("Redirecting to download..."); window.location.href = url; const timeout = setTimeout(() => { setStatus("Your download should have started."); }, 3000); return () => clearTimeout(timeout); }, [searchParams]); return (
{error ? (

Download Error

{error}

) : (

{status}

Mirroring Download from TrustLab Trust Store

{downloadUrl && (

If your download didn't start automatically,

klik disini untuk download manual
)}
)}
); } export default function DownloadMirror() { return (
}>
); }