import{j as e}from"./ui-vendor-4PEuZeLa.js";import{r as a}from"./react-vendor-SJkaNtXX.js";import{B as o,t as s,s as t}from"./index-HPMvGIkW.js";import{I as r}from"./input-XH_tYWj5.js";import{L as i}from"./label-CMWS5Aeo.js";import{T as n}from"./textarea-8zvXZ4OY.js";import{f as l,v as d,a as c,b as m}from"./validators-B6ObMgjW.js";import{r as u}from"./registrarLead-CsC1RViJ.js";import{L as v}from"./icons-DwRt140y.js";function p({citySlug:p,cityName:h,state:f,serviceType:x="guincho",pickupLocation:j}){const[g,b]=a.useState(!1),[y,N]=a.useState({nome:"",email:"",telefone:"",destinationAddress:"",observations:""});return e.jsxs("form",{onSubmit:async e=>{e.preventDefault();const a=d(y.nome);if(!a.valid)return void s({title:"Erro no nome",description:a.message,variant:"destructive"});const o=c(y.email);if(!o.valid)return void s({title:"Erro no e-mail",description:o.message,variant:"destructive"});const r=m(y.telefone);if(r.valid)if(j){b(!0);try{const e=await t.functions.invoke("call-urgent-quotation",{body:{name:y.nome,email:y.email,phone:y.telefone,lat:j.latitude,lng:j.longitude,address:j.address,service_type:x}});let a=null,o=e.data;if(e.error)try{const o=e.error.context;if(o&&"function"==typeof o.json){const s=await o.json();a=(null==s?void 0:s.error)||e.error.message}else a=e.error.message||"Erro ao chamar API externa"}catch{a=e.error.message||"Erro ao chamar API externa"}else o&&!1===o.success&&(a=o.error||"Erro desconhecido na API externa");const{error:r}=await t.from("tow_requests").insert({city_slug:p,city_name:h,state:f,client_name:y.nome,client_email:y.email,client_phone:y.telefone,pickup_address:j.address,destination_address:y.destinationAddress||"A definir via WhatsApp",latitude:j.latitude,longitude:j.longitude,observations:a?`[ERRO API EXTERNA: ${a}]${y.observations?"\n\n"+y.observations:""}`:y.observations||null,status:a?"erro_api":"novo",external_quotation_id:(null==o?void 0:o.quotation_id)||null,external_conversation_id:(null==o?void 0:o.conversation_id)||null});try{await u({formId:`${x}_form`,nome:y.nome,email:y.email,telefone:y.telefone,servico:x,cidade:h,extra:{estado:f}})}catch(i){}if(a)throw new Error(a);s({title:"Solicitação enviada com sucesso!",description:"Você receberá uma mensagem no WhatsApp para continuar com a cotação."}),N({nome:"",email:"",telefone:"",destinationAddress:"",observations:""})}catch(n){s({title:"Erro ao enviar solicitação",description:n.message||"Tente novamente mais tarde.",variant:"destructive"})}finally{b(!1)}}else s({title:"Localização não selecionada",description:"Por favor, selecione sua localização no mapa acima.",variant:"destructive"});else s({title:"Erro no telefone",description:r.message,variant:"destructive"})},className:"space-y-6 bg-card p-6 rounded-lg border border-border",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx("h3",{className:"text-2xl font-bold",children:"Solicite sua cotação"}),e.jsx("p",{className:"text-muted-foreground",children:"Preencha os dados abaixo e receba um orçamento rapidamente"})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{htmlFor:"nome",children:"Nome *"}),e.jsx(r,{id:"nome",name:"nome",placeholder:"Seu nome",value:y.nome,onChange:e=>N({...y,nome:e.target.value}),required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{htmlFor:"email",children:"E-mail *"}),e.jsx(r,{id:"email",name:"email",type:"email",placeholder:"seu@email.com",value:y.email,onChange:e=>N({...y,email:e.target.value}),required:!0})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{htmlFor:"telefone",children:"Telefone *"}),e.jsx(r,{id:"telefone",name:"telefone",type:"tel",placeholder:"(00) 00000-0000",value:y.telefone,onChange:e=>N({...y,telefone:e.target.value}),onBlur:e=>N({...y,telefone:l(e.target.value)}),required:!0})]}),j&&e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{children:"Local de origem"}),e.jsx("div",{className:"p-3 bg-muted rounded-md text-sm",children:j.address})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{htmlFor:"destinationAddress",children:"Destino do reboque (opcional)"}),e.jsx(r,{id:"destinationAddress",placeholder:"Para onde deseja levar o veículo?",value:y.destinationAddress,onChange:e=>N({...y,destinationAddress:e.target.value})}),e.jsx("p",{className:"text-xs text-muted-foreground",children:"Se não informar agora, coletaremos via WhatsApp"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(i,{htmlFor:"observations",children:"Observações (opcional)"}),e.jsx(n,{id:"observations",placeholder:"Informações adicionais sobre o veículo ou situação",value:y.observations,onChange:e=>N({...y,observations:e.target.value}),rows:4})]})]}),e.jsx(o,{type:"submit",className:"w-full",size:"lg",disabled:g,children:g?e.jsxs(e.Fragment,{children:[e.jsx(v,{className:"mr-2 h-4 w-4 animate-spin"}),"Enviando..."]}):"Solicitar Cotação"}),e.jsx("p",{className:"text-xs text-muted-foreground text-center",children:"Ao enviar, você concorda com nossa política de privacidade"})]})}export{p as T};