"use client"; import { Button } from "@mdxui/primitives/button"; import { Input } from "@mdxui/primitives/input"; import { Mail } from "lucide-react"; import { useState } from "react"; interface EmailCaptureProps { onCapture: (email: string) => Promise; onDismiss: () => void; } export function EmailCapture({ onCapture, onDismiss }: EmailCaptureProps) { const [email, setEmail] = useState(""); const [isSubmitting, setIsSubmitting] = useState(false); const [error, setError] = useState(""); const handleSubmit = async (e: React.FormEvent) => { e.preventDefault(); setError(""); if (!email || !email.includes("@")) { setError("Please enter a valid email"); return; } setIsSubmitting(true); try { await onCapture(email); } catch { setError("Failed to save email. Please try again."); } finally { setIsSubmitting(false); } }; return (

Get notified of responses

We'll email you if we have follow-up information

setEmail(e.target.value)} className="h-9 text-sm" disabled={isSubmitting} /> {error &&

{error}

}
); }