"use client"; import { useState } from "react"; import { useRouter } from "next/navigation"; import { submitVerificationAction } from "@/features/organizer/actions"; type Initial = { fullName: string; nik: string; birthDate: Date; address: string; ktpImageUrl: string; selfieUrl: string; bankName: string; bankAccountNumber: string; bankAccountName: string; } | null; function toYmd(d: Date): string { const y = d.getUTCFullYear(); const m = String(d.getUTCMonth() + 1).padStart(2, "0"); const day = String(d.getUTCDate()).padStart(2, "0"); return `${y}-${m}-${day}`; } export function VerifyForm({ initial }: { initial: Initial }) { const router = useRouter(); const [error, setError] = useState(""); const [loading, setLoading] = useState(false); async function handleSubmit(e: React.FormEvent) { e.preventDefault(); setError(""); setLoading(true); const formData = new FormData(e.currentTarget); const result = await submitVerificationAction(formData); setLoading(false); if (result.error) { setError(result.error); return; } router.refresh(); } const inputCls = "w-full rounded-xl border border-neutral-200 bg-neutral-50 px-4 py-2.5 text-sm text-neutral-800 transition-colors placeholder:text-neutral-400 focus:bg-white"; return (
{error && (
{error}
)}

📇 Data KTP