1import{j as e,a7 as z,a6 as B,I as $,ad as J,at as se,n as R,ar as ie,ac as le,X as te,ai as ce,Z as de,aq as ue,O as me,N as Z,ab as P,z as c,q as K,T as fe}from"./mui-CRsYZxVY.js";import{b as f,r as pe}from"./vendor-Dwao9eNC.js";import{aK as he,y as ge,z as m,ek as xe,by as be,b as X,T as je,C as _e,F as Ce,D as d,el as L,b3 as Y}from"./index-TALscxEc.js";import{u as De}from"./useFiscalConfig-CQEKyhOW.js";import{a as ye,u as ve}from"./useUpdateFiscalConfig-Dl-LNota.js";import{u as Ee}from"./query-8ViTdhdk.js";import{u as Te}from"./useViaCep-BAAnqyZn.js";import{M as Ie,D as Se,Z as Q}from"./icons-D8aatgQ4.js";import{L as we}from"./lab-DSem1Osk.js";import"./datePickers-BIJXYOKG.js";(function(){try{var s=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{};s.SENTRY_RELEASE={id:"2ad85febf9735404429b0670d4acf56a0af5a0a2"}}catch{}})();try{(function(){var s=typeof window<"u"?window:typeof global<"u"?global:typeof globalThis<"u"?globalThis:typeof self<"u"?self:{},o=new s.Error().stack;o&&(s._sentryDebugIds=s._sentryDebugIds||{},s._sentryDebugIds[o]="3f61a5ec-8cc7-44a6-92dd-bc8783206b79",s._sentryDebugIdIdentifier="sentry-dbid-3f61a5ec-8cc7-44a6-92dd-bc8783206b79")})()}catch{}const ke=async s=>{const{data:o}=await he.get(`/fiscal/cnpj/${s}`);return o},Pe=(s,o)=>{const g=(s==null?void 0:s.replace(/\D/g,""))||"";return Ee({queryKey:["cnpj-lookup",g],queryFn:()=>ke(g),enabled:o&&g.length===14,retry:!1})},Re=ge({cpf_cnpj:m().required("CNPJ é obrigatório").test("is-valid-cnpj","CNPJ inválido",s=>s?xe.isValid(s.replace(/\D/g,"")):!1),email:m().email("Email inválido").required("Email é obrigatório"),nome_razao_social:m().required("Razão social é obrigatória"),nome_fantasia:m().nullable(),crt:be().required("Regime tributário é obrigatório").oneOf([1,3,4],"Escolha Simples Nacional, MEI ou Regime normal"),inscricao_estadual:m().nullable().when("crt",{is:s=>s===1||s===3,then:s=>s.required("Inscrição estadual é obrigatória para Simples Nacional e Regime normal")}),inscricao_municipal:m().nullable(),fone:m().nullable(),endereco_cep:m().required("CEP é obrigatório").matches(/^\d{5}-?\d{3}$/,"CEP inválido"),endereco_logradouro:m().required("Endereço é obrigatório"),endereco_numero:m().required("Número é obrigatório"),endereco_complemento:m().nullable(),endereco_bairro:m().required("Bairro é obrigatório"),endereco_cidade:m().required("Cidade é obrigatória"),endereco_uf:m().required("Estado é obrigatório").matches(/^[A-Z]{2}$/,"Estado inválido")}),ze=({defaultValues:s,isUpdate:o})=>{const g=X(),M=ve(),[C,b]=f.useState(null),[D,y]=f.useState(null),[h,T]=f.useState(!o),[x,I]=f.useState(!1),[v,S]=f.useState(!o),[j,O]=f.useState(!1),{control:t,handleSubmit:G,watch:q,setValue:l,reset:H,formState:{isSubmitting:i,isDirty:V}}=_e({resolver:Ce(Re),defaultValues:s}),w=q("cpf_cnpj"),F=q("endereco_cep"),A=q("crt"),N=(w==null?void 0:w.replace(/\D/g,""))||"",W=(F==null?void 0:F.replace(/\D/g,""))||"",{data:_,isLoading:U,isError:ee}=Pe(w||"",h),{data:p,isLoading:re}=Te(v?W:""),k=f.useCallback(a=>{l("nome_razao_social",a.razao_social,{shouldDirty:!0}),a.email&&l("email",a.email,{shouldDirty:!0}),a.nome_fantasia&&l("nome_fantasia",a.nome_fantasia,{shouldDirty:!0}),a.crt&&l("crt",a.crt,{shouldDirty:!0});const r=a.endereco;r&&(r.cep&&l("endereco_cep",r.cep,{shouldDirty:!0}),r.logradouro&&l("endereco_logradouro",r.logradouro,{shouldDirty:!0}),r.numero&&l("endereco_numero",r.numero,{shouldDirty:!0}),r.complemento&&l("endereco_complemento",r.complemento,{shouldDirty:!0}),r.bairro&&l("endereco_bairro",r.bairro,{shouldDirty:!0}),r.cidade&&l("endereco_cidade",r.cidade,{shouldDirty:!0}),r.uf&&l("endereco_uf",r.uf,{shouldDirty:!0})),I(!0),T(!1)},[l]);f.useEffect(()=>{_&&!o&&!x&&k(_)},[_,o,x,k]),f.useEffect(()=>{p&&v&&!j&&(p.logradouro&&l("endereco_logradouro",p.logradouro,{shouldDirty:!0}),p.bairro&&l("endereco_bairro",p.bairro,{shouldDirty:!0}),p.localidade&&l("endereco_cidade",p.localidade,{shouldDirty:!0}),p.uf&&l("endereco_uf",p.uf,{shouldDirty:!0}),O(!0),S(!1))},[p,v,j,l]);const ae=()=>{W.length===8&&(O(!1),S(!0))},oe=()=>{N.length===14&&(I(!1),T(!0))};f.useEffect(()=>{_&&h&&!x&&k(_)},[_,h,x,k]);const ne=async a=>{var r,n;try{b(null),y(null);const u=await M.mutateAsync({data:a,isUpdate:o});H(a),(u==null?void 0:u.sincronizado_no_provedor)===!1&&y("Dados salvos, mas o provedor de nota fiscal não confirmou a atualização. Salve de novo em alguns minutos antes de emitir.")}catch(u){console.error("Error saving fiscal config:",u),b(((n=(r=u.response)==null?void 0:r.data)==null?void 0:n.error)||"Erro ao salvar dados da empresa. Por favor, tente novamente.")}};return e.jsx("form",{onSubmit:G(ne),children:e.jsxs(P,{spacing:3,children:[e.jsx(d,{name:"cpf_cnpj",control:t,render:({field:{onCh
1ange:a,value:r,ref:n},fieldState:u})=>e.jsxs(z,{children:[e.jsx(L,{mask:"99.999.999/9999-99",value:r,onChange:a,disabled:i||o,maskChar:null,children:()=>{var E;return e.jsx(c,{inputRef:n,label:"CNPJ *",fullWidth:!0,error:!!u.error,helperText:((E=u.error)==null?void 0:E.message)||"",disabled:i||o,inputProps:{inputMode:"numeric"},InputProps:{endAdornment:o?void 0:e.jsx(K,{position:"end",children:U?e.jsx(B,{size:20}):e.jsx($,{onClick:oe,disabled:N.length!==14||i,edge:"end",size:"small",children:e.jsx(Q,{})})})}})}}),ee&&N.length===14&&e.jsx(J,{severity:"warning",sx:{mt:1},children:"Não foi possÃvel buscar os dados do CNPJ. Preencha manualmente."})]})}),e.jsx(d,{name:"email",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Email *",fullWidth:!0,type:"email",error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),e.jsx(d,{name:"nome_razao_social",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Razão social *",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),e.jsx(d,{name:"nome_fantasia",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,value:a.value||"",label:"Nome fantasia",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),e.jsx(d,{name:"crt",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsxs(c,{...a,value:a.value??"",select:!0,label:"Regime tributário *",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i,children:[e.jsx(R,{value:1,children:"Simples Nacional"}),e.jsx(R,{value:4,children:"MEI"}),e.jsx(R,{value:3,children:"Regime normal (Lucro Presumido ou Lucro Real)"})]})}}),A===3&&e.jsx(Y,{severity:"info",title:"Empresa do Regime normal",onClick:s.crt===3?()=>g("/profile/fiscal/regras"):void 0,children:"Antes de emitir, cadastre as regras de tributação com o seu contador em Nota fiscal > Regras de tributação. Se a sua empresa é optante do Simples Nacional, corrija o regime acima."}),e.jsxs(P,{direction:"row",spacing:2,children:[e.jsx(d,{name:"inscricao_estadual",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,value:a.value||"",label:A===1||A===3?"Inscrição estadual *":"Inscrição estadual",fullWidth:!0,disabled:i,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||""})}}),e.jsx(d,{name:"inscricao_municipal",control:t,render:({field:a})=>e.jsx(c,{...a,value:a.value||"",label:"Inscrição municipal",fullWidth:!0,disabled:i})})]}),e.jsx(d,{name:"fone",control:t,render:({field:{onChange:a,value:r,ref:n}})=>e.jsx(L,{mask:"(99) 99999-9999",value:r||"",onChange:a,disabled:i,maskChar:null,children:()=>e.jsx(c,{inputRef:n,label:"Telefone",fullWidth:!0,disabled:i,inputProps:{inputMode:"tel"}})})}),e.jsx(fe,{variant:"subtitle1",fontWeight:"bold",sx:{pt:1},children:"Endereço"}),e.jsx(d,{name:"endereco_cep",control:t,render:({field:{onChange:a,value:r,ref:n},fieldState:u})=>e.jsx(z,{children:e.jsx(L,{mask:"99999-999",value:r,onChange:a,disabled:i,maskChar:null,children:()=>{var E;return e.jsx(c,{inputRef:n,label:"CEP *",fullWidth:!0,error:!!u.error,helperText:((E=u.error)==null?void 0:E.message)||"",disabled:i,inputProps:{inputMode:"numeric"},InputProps:{endAdornment:e.jsx(K,{position:"end",children:re?e.jsx(B,{size:20}):e.jsx($,{onClick:ae,disabled:W.length!==8||i,edge:"end",size:"small",children:e.jsx(Q,{})})})}})}})})}),e.jsxs(P,{direction:"row",spacing:2,children:[e.jsx(d,{name:"endereco_uf",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Estado *",sx:{width:120},error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i,inputProps:{maxLength:2,style:{textTransform:"uppercase"}},onChange:u=>a.onChange(u.target.value.toUpperCase())})}}),e.jsx(d,{name:"endereco_cidade",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Cidade *",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}})]}),e.jsx(d,{name:"endereco_logradouro",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Endereço *",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),e.jsxs(P,{direction:"row",spacing:2,children:[e.jsx(d,{name:"endereco_numero",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Número *",sx:{width:150},error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),e.jsx(d,{name:"endereco_complemento",control:t,render:({field:a})=>e.jsx(c,{...a,value:a.value||"",label:"Complemento",placeholder:"Apto, Sala...",fullWidth:!0,disabled:i})})]}),e.jsx(d,{name:"endereco_bairro",control:t,render:({field:a,fieldState:r})=>{var n;return e.jsx(c,{...a,label:"Bairro *",fullWidth:!0,error:!!r.error,helperText:((n=r.error)==null?void 0:n.message)||"",disabled:i})}}),C&&e.jsx(J,{severity:"error",onClose:()=>b(null),children:C}),D&&e.jsx(Y,{severity:"warning",onClose:()=>y(null),children:D}),e.jsx(we,{type:"submit",variant:"contained",loading:i,disabled:!V,fullWidth:!0,sx:{mt:2},children:V?o?"Salvar alterações":"Cadastrar empresa":"Salvo"})]})})}
1,Me={cpf_cnpj:"",email:"",nome_razao_social:"",nome_fantasia:"",crt:void 0,inscricao_estadual:"",inscricao_municipal:"",fone:"",endereco_cep:"",endereco_logradouro:"",endereco_numero:"",endereco_complemento:"",endereco_bairro:"",endereco_cidade:"",endereco_uf:""},Ve=()=>{const s=X(),{data:o,isLoading:g,isError:M}=De(),C=ye(),[b,D]=f.useState(null),[y,h]=f.useState(!1),T=j=>{D(j.currentTarget)},x=()=>{D(null)},I=()=>{x(),h(!0)},v=async()=>{h(!1);try{await C.mutateAsync(),s("/profile/fiscal")}catch(j){console.error("Error deleting fiscal config:",j)}},S=pe.useMemo(()=>o!=null&&o.formData?{cpf_cnpj:o.formData.cpf_cnpj,email:o.formData.email||"",nome_razao_social:o.formData.nome_razao_social,nome_fantasia:o.formData.nome_fantasia||"",crt:o.formData.crt,inscricao_estadual:o.formData.inscricao_estadual||"",inscricao_municipal:o.formData.inscricao_municipal||"",fone:"",endereco_cep:o.formData.endereco_cep,endereco_logradouro:o.formData.endereco_logradouro,endereco_numero:o.formData.endereco_numero,endereco_complemento:o.formData.endereco_complemento||"",endereco_bairro:o.formData.endereco_bairro,endereco_cidade:o.formData.endereco_cidade,endereco_uf:o.formData.endereco_uf}:Me,[o]);return g?e.jsx(z,{sx:{height:"70vh",display:"flex",alignItems:"center",justifyContent:"center"},children:e.jsx(B,{})}):e.jsxs(z,{p:2,children:[e.jsx(je,{title:"Dados da empresa",navigateBack:!0,children:o&&e.jsx($,{color:"inherit",onClick:T,children:e.jsx(Ie,{})})}),M?e.jsx(J,{severity:"error",children:"Erro ao carregar dados. Por favor, tente novamente."}):e.jsx(ze,{defaultValues:S,isUpdate:!!o}),e.jsx(se,{anchorEl:b,open:!!b,onClose:x,children:e.jsxs(R,{onClick:I,sx:{color:"error.main"},children:[e.jsx(ie,{sx:{color:"inherit"},children:e.jsx(Se,{fontSize:"small"})}),e.jsx(le,{children:"Remover empresa"})]})}),e.jsxs(te,{open:y,onClose:()=>h(!1),children:[e.jsx(ce,{children:"Remover empresa"}),e.jsx(de,{children:e.jsx(ue,{children:"Tem certeza que deseja remover a empresa? O certificado digital sera desvinculado. As notas fiscais emitidas anteriormente serao mantidas no historico."})}),e.jsxs(me,{children:[e.jsx(Z,{onClick:()=>h(!1),children:"Cancelar"}),e.jsx(Z,{onClick:v,color:"error",disabled:C.isPending,children:"Remover"})]})]})]})};export{Ve as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.