import{j as e}from"./ui-vendor-D7Fh8Ky-.js";import{r as a}from"./react-vendor-1IeSgoWF.js";import{u as s,B as o}from"./index-B-k4z8nJ.js";import{D as i,a as r,b as t,c as n,d as l,e as m}from"./dialog-CzZfS1T2.js";import{I as c}from"./input-C34UTEZ_.js";import{L as d}from"./label-BB_hfVhi.js";import{f as v,v as f,a as p,b as u}from"./validators-B6ObMgjW.js";import{r as h}from"./registrarLead-Dw0HT5Fo.js";import{L as j}from"./icons-DJUmn7CM.js";const x=({children:x,formName:g="Lead Fale com Especialista",formId:N="fale_especialista_form",servico:b="gestao_frotas"})=>{const[y,C]=a.useState(!1),[E,F]=a.useState(!1),[S,q]=a.useState({nome:"",email:"",telefone:""}),{toast:w}=s();return e.jsxs(i,{open:y,onOpenChange:C,children:[e.jsx(r,{asChild:!0,children:x}),e.jsxs(t,{className:"sm:max-w-[425px]",children:[e.jsxs(n,{children:[e.jsx(l,{children:"Fale com um Especialista"}),e.jsx(m,{children:"Preencha os dados abaixo e nossa equipe entrará em contato com você em breve."})]}),e.jsxs("form",{onSubmit:async e=>{if(e.preventDefault(),E)return;if(!S.nome||!S.email||!S.telefone)return void w({title:"Campos obrigatórios",description:"Por favor, preencha todos os campos do formulário.",variant:"destructive"});const a=f(S.nome);if(!a.valid)return void w({title:"Nome inválido",description:a.message,variant:"destructive"});const s=p(S.email);if(!s.valid)return void w({title:"E-mail inválido",description:s.message,variant:"destructive"});const o=u(S.telefone);if(o.valid){F(!0);try{const e=await h({formId:N,nome:S.nome,email:S.email,telefone:S.telefone,servico:b});if(!e.ok)throw new Error(`Core retornou status: ${e.status}`);w({title:"Formulário enviado!",description:"Em breve um especialista entrará em contato com você."}),q({nome:"",email:"",telefone:""}),C(!1)}catch(i){w({title:"Erro ao enviar",description:i instanceof Error?i.message:"Não foi possível enviar seus dados. Tente novamente.",variant:"destructive"})}finally{F(!1)}}else w({title:"Telefone inválido",description:o.message,variant:"destructive"})},className:"space-y-4 mt-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(d,{htmlFor:"nome",children:"Nome *"}),e.jsx(c,{id:"nome",name:"nome",value:S.nome,onChange:e=>q({...S,nome:e.target.value}),placeholder:"Seu nome",required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(d,{htmlFor:"email",children:"Email *"}),e.jsx(c,{id:"email",name:"email",type:"email",value:S.email,onChange:e=>q({...S,email:e.target.value}),placeholder:"seu@email.com",required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(d,{htmlFor:"telefone",children:"Telefone *"}),e.jsx(c,{id:"telefone",name:"telefone",type:"tel",value:S.telefone,onChange:e=>q({...S,telefone:e.target.value}),onBlur:e=>q({...S,telefone:v(e.target.value)}),placeholder:"(84) 99999-9999",required:!0})]}),e.jsxs("div",{className:"flex gap-2 pt-4",children:[e.jsx(o,{type:"button",variant:"outline",onClick:()=>C(!1),className:"flex-1",children:"Cancelar"}),e.jsx(o,{type:"submit",className:"flex-1",disabled:E,children:E?e.jsxs(e.Fragment,{children:[e.jsx(j,{className:"animate-spin"})," Enviando..."]}):"Enviar"})]})]})]})]})};export{x as C};