import ky from "ky"; import { ChangeEvent, FormEvent, useState } from "react"; import { Trans, useTranslation } from "react-i18next"; import InputMask from "react-input-mask"; import AsteriskIcon from "./icons/AsteriskIcon"; import SendIcon from "./icons/SendIcon"; import CheckGradientIcon from "./icons/CheckGradientIcon"; import LoaderIcon from "./icons/LoaderIcon"; function FeedbackForm() { const { t } = useTranslation(); const [name, setName] = useState(""); const [phone, setPhone] = useState(""); const [email, setEmail] = useState(""); const [description, setDescription] = useState(""); const [isSend, setIsSend] = useState(false); const [isLoading, setIsLoading] = useState(false); async function sendMail(e: FormEvent) { e.preventDefault(); setIsLoading(true); try { await ky .post(`https://estate.graff.tech/api/mail`, { json: { fullname: name, phone, email, request: description, }, }) .json(); setIsSend(true); setIsLoading(false); } catch (error) { setIsLoading(false); if (error instanceof Error) { alert(error.message); } } } return (
void sendMail(e)} >
setName(e.target.value)} className="feedback-field bg-transparent border border-[#3D425C] rounded-none lg:p-6 lg:pt-14 p-4 pt-12 outline-none outline-1 -outline-offset-1 focus:outline-[#D375FF] transition-all w-full" />

Имя

) => setPhone(e.target.value) } className={[ "feedback-field bg-transparent border rounded-none sm:border-l-0 sm:border-t border-t-0 border-l border-[#3D425C] lg:p-6 lg:pt-14 p-4 pt-12 outline-none outline-1 -outline-offset-1 focus:outline-[#D375FF] transition-all w-full", ].join(" ")} />

Телефон

setEmail(e.target.value)} className="feedback-field bg-transparent border rounded-none lg:border-l-0 lg:border-t border-t-0 border-[#3D425C] lg:p-6 lg:pt-14 p-4 pt-12 outline-none outline-1 -outline-offset-1 focus:outline-[#D375FF] transition-all w-full" />

Email

Нажимая кнопку отправить, вы принимаете {" "} условия использования {" "} и{" "} политику конфиденциальности

Звездочкой отмечены обязательные
для заполнения поля

{isSend && (

Заявка отправлена

Спасибо за подачу заявки!

Мы ценим ваш интерес к нашей компании и в ближайшее время свяжемся с вами для уточнения деталей проекта.

)}
); } export default FeedbackForm;