"use client"; import { useState } from "react"; export default function LeadForm() { const [company, setCompany] = useState(""); const [phone, setPhone] = useState(""); const [message, setMessage] = useState(""); const [isSubmitting, setIsSubmitting] = useState(false); const [resultMessage, setResultMessage] = useState(""); async function handleSubmit(e: React.FormEvent) { e.preventDefault(); setIsSubmitting(true); setResultMessage(""); try { const response = await fetch("/api/leads", { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ company, phone, message, }), }); const data = await response.json(); if (!response.ok) { setResultMessage(data.error || "Ошибка отправки"); return; } setResultMessage("Заявка отправлена. Мы свяжемся с вами."); setCompany(""); setPhone(""); setMessage(""); } catch (error) { console.error(error); setResultMessage("Ошибка сети. Попробуйте ещё раз."); } finally { setIsSubmitting(false); } } return (
setCompany(e.target.value)} className="w-full rounded-2xl border border-white/10 bg-black/30 px-5 py-4 outline-none placeholder:text-neutral-500 focus:border-emerald-500" required /> setPhone(e.target.value)} className="w-full rounded-2xl border border-white/10 bg-black/30 px-5 py-4 outline-none placeholder:text-neutral-500 focus:border-emerald-500" required />