PageSourceSearch

https://app.beeven.com.br/assets/index-DFQJdzL4.js

js beeven.com.br collected 2026-10-09 04:50:08 UTC 13,057 bytes, 1 lines download raw bytes

1import{e$ as is,hh as rs,jr as v,fR as ts,fz as ls,fA as cs,h6 as s,Y as b,a1 as N,a3 as C,_ as f,bX as I,bS as x,bU as m,b_ as j,bV as p,dC as l,fU as M,ch as os,eC as ds,bZ as y,f1 as U,fj as B,cS as g,fS as xs,b6 as ms,b9 as hs,ba as us,bb as js,b8 as ps,fJ as q,D as V,em as k,eo as w,J as u,a9 as gs,en as E,aa as bs,iT as Ns,i8 as A,iE as Cs,aI as fs,bk as Ss,bg as F,bl as O,bj as R,eg as vs,aM as _s,aJ as Ps,dN as ys,fF as H,a0 as Ds,C as L,cs as Ts,Z as Is,aH as Ms,aP as Bs,aK as ks,aN as ws,aO as Es,aL as As,cY as Fs,ca as Os,E as Rs,cW as Ls,X as zs,dj as S}from"./index-DGR3sCPc.js";import{a as Ys,c as Us}from"./validation-schemas-B9Oe-pXS.js";import{T as $,d as G,e as T,c as o,a as K,b as d}from"./table-qxduWM6m.js";import{R as qs,P as Vs,e as z,C as D,S as Hs}from"./constants-1QBY_Bja.js";import{S as $s,f as Gs,g as Ks,a as Js,c as Qs}from"./select-dvNaaFAI.js";import{S as Zs}from"./subscription-credits-purchase-dialog-CAikf6gG.js";import{b as Ws,C as Xs,c as se,a as ee}from"./circular-progress-YOTAye-T.js";import{S as ae,a as ne}from"./subscription-plans-skeleton-rrI5ydW1.js";import"./NumberFlow-client-BTpPLmzo-YKNQ9vup.js";function ie(){return{method:"POST",url:"/billing/subscription/cancel_request"}}async function re(a,n={}){const{client:t=is,...r}=n,e=a;return(await t({method:"POST",url:ie().url.toString(),data:e,...r})).data}const te=()=>[{url:"/billing/subscription/cancel_request"}];function le(a={}){const n=te();return rs({mutationKey:n,mutationFn:async({data:t})=>re(t,a)})}const ce=()=>{const{data:a}=v(ts()),n=a.billing_address,t=n?`${n.line1}, ${n.postal_code} ${n.city}/${n.state}, ${n.country}`:"Não informado",r=a.tax_id?a.tax_id_kind==="cnpj"?ls(a.tax_id):cs(a.tax_id):"Não informado";return s.jsxs(b,{children:[s.jsx(N,{className:"border-b",children:s.jsx(C,{children:"Detalhes de cobrança"})}),s.jsx(f,{children:s.jsxs(I,{className:"grid grid-cols-1 items-start gap-6 sm:grid-cols-2",children:[s.jsx(x,{className:"p-0",children:s.jsxs(m,{children:[s.jsx(j,{children:a.legal_name||"Razão social não informada"}),s.jsx(p,{children:r})]})}),s.jsx(x,{className:"p-0",children:s.jsxs(m,{children:[s.jsx(j,{children:"Endereço de cobrança"}),s.jsx(p,{children:t})]})})]})})]})},oe=()=>s.jsxs(b,{children:[s.jsx(N,{className:"border-b",children:s.jsx(C,{children:"Detalhes de cobrança"})}),s.jsx(f,{children:s.jsxs(I,{className:"grid grid-cols-1 items-start gap-6 sm:grid-cols-2",children:[s.jsx(x,{className:"p-0",children:s.jsxs(m,{children:[s.jsx(l,{className:"h-5 w-32"}),s.jsx(l,{className:"h-5 w-48"})]})}),s.jsx(x,{className:"p-0",children:s.jsxs(m,{children:[s.jsx(l,{className:"h-5 w-32"}),s.jsx(l,{className:"h-5 w-full"}),s.jsx(l,{className:"h-5 w-2/3"})]})})]})})]}),de={visa:ds,mastercard:os},xe=()=>{const{data:a}=v({...M(),select:t=>t.payment_method});if(!a)return null;const n=de[a.card_brand]??Ys;return s.jsxs(b,{children:[s.jsx(N,{className:"border-b",children:s.jsx(C,{children:"Detalhes do cartão"})}),s.jsx(f,{children:s.jsxs(x,{className:"p-0",children:[s.jsx(y,{className:"h-11 w-16 rounded-md border bg-secondary",children:s.jsx(n,{className:U("size-6",a.card_brand==="visa"&&"h-3 w-full",a.card_brand==="mastercard"&&"h-5 w-full")})}),s.jsxs(m,{children:[s.jsxs(j,{className:"text-base",children:["**** **** **** ",a.card_last4]}),s.jsxs(p,{children:["Expira"," ",B(a.card_expiration_date).format("MM/YYYY")]})]})]})})]})},Y=5,me=()=>{const[a,n]=g.useState(1),{data:t}=v(xs({page:a,per_page:Y})),r=(a-1)*Y+1,e=Math.min(r+t.data.length-1,t.pagination.total_count);return s.jsxs(b,{children:[s.jsx(N,{className:"border-b",children:s.jsx(C,{children:"Histórico de pagamentos"})}),s.jsx(f,{className:"pb-0",children:t.pagination.total_count===0?s.jsx(ms,{children:s.jsxs(hs,{children:[s.jsx(us,{variant:"icon",children:s.jsx(qs,{})}),s.jsx(js,{children:"Nenhum pagamento"}),s.jsx(ps,{children:"Seu histórico de pagamentos aparecerá aqui."})]})}):s.jsxs(s.Fragment,{children:[s.jsxs($,{children:[s.jsx(G,{children:s.jsxs(T,{children:[s.jsx(o,{children:"Data"}),s.jsx(o,{children:"Valor"}),s.jsx(o,{children:"Número"}),s.jsx(o,{children:"Status"})]})}),s.jsx(K,{children:t.data.map(i=>{const c=Vs[i.kind],h=i.status==="paid"?i.paid_at:i.created_at;return s.jsxs(T,{children:[s.jsx(d,{children:s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx("div",{className:U("roun
1ded-sm p-1.5",c.iconClassName),children:s.jsx(c.icon,{className:"size-3.5"})}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{children:B(h).format("DD/MM/YYYY")}),s.jsx("span",{className:"text-muted-foreground text-xs",children:c.label})]})]})}),s.jsx(d,{children:q(i.amount_cents)}),s.jsx(d,{className:"text-muted-foreground",children:i.number}),s.jsx(d,{children:s.jsx(V,{variant:z[i.status].variant,className:"rounded-full",children:z[i.status].label})})]},i.id)})})]}),s.jsxs("div",{className:"flex items-center justify-between border-t px-2 py-3 text-muted-foreground",children:[s.jsxs("span",{className:"text-xs",children:["Mostrando ",r," a ",e," de ",t.pagination.total_count," ","pagamentos"]}),s.jsxs("div",{className:"flex gap-1",children:[s.jsxs(k,{children:[s.jsx(w,{render:s.jsxs(u,{variant:"outline",size:"icon-xs",onClick:()=>n(i=>Math.max(1,i-1)),disabled:a===1,children:[s.jsx(gs,{}),s.jsx("span",{className:"sr-only",children:"Página anterior"})]})}),s.jsx(E,{children:"Página anterior"})]}),s.jsxs(k,{children:[s.jsx(w,{render:s.jsxs(u,{variant:"outline",size:"icon-xs",onClick:()=>n(i=>i+1),disabled:!t.pagination.has_more,children:[s.jsx(bs,{}),s.jsx("span",{className:"sr-only",children:"Próxima página"})]})}),s.jsx(E,{children:"Próxima página"})]})]})]})]})})]})},he=5,ue=()=>s.jsxs(b,{children:[s.jsx(N,{className:"border-b",children:s.jsx(C,{children:"Histórico de pagamentos"})}),s.jsxs(f,{className:"pb-0",children:[s.jsxs($,{children:[s.jsx(G,{children:s.jsxs("tr",{children:[s.jsx(o,{children:"Data"}),s.jsx(o,{children:"Valor"}),s.jsx(o,{children:"Número"}),s.jsx(o,{children:"Status"})]})}),s.jsx(K,{children:Array.from({length:he}).map((a,n)=>s.jsxs(T,{className:"pointer-events-none",children:[s.jsx(d,{children:s.jsxs("div",{className:"flex items-center gap-2.5",children:[s.jsx(l,{className:"size-6.5 rounded-sm"}),s.jsxs("div",{className:"flex flex-col gap-0.5",children:[s.jsx(l,{className:"h-4.5 w-24"}),s.jsx(l,{className:"h-4 w-28"})]})]})}),s.jsx(d,{children:s.jsx(l,{className:"h-5 w-16"})}),s.jsx(d,{children:s.jsx(l,{className:"h-5 w-20"})}),s.jsx(d,{children:s.jsx(l,{className:"h-5 w-14 rounded-full"})})]},n))})]}),s.jsxs("div",{className:"flex items-center justify-between border-t px-2 py-3",children:[s.jsx(l,{className:"h-4 w-52"}),s.jsxs("div",{className:"flex gap-1",children:[s.jsx(l,{className:"size-7 rounded-md"}),s.jsx(l,{className:"size-7 rounded-md"})]})]})]})]}),je=({onSuccess:a})=>{const n=Ns({...le(),onSuccess:()=>{A.add({type:"success",title:"Solicitação de cancelamento enviada",description:"O time do Beeven vai analisar sua solicitação e entrar em contato em breve.",timeout:8e3}),a()},onError:()=>{A.add({type:"error",description:"Erro ao solicitar cancelamento. Tente novamente."})}}),t=Cs({defaultValues:{reason:"",notes:""},validators:{onSubmit:Us},onSubmit:({value:r})=>{const e=D.find(i=>i.value===r.reason)?.label??r.reason;n.mutate({data:{reason:e,obs:r.notes||void 0}})}});return s.jsxs("form",{onSubmit:r=>{r.preventDefault(),t.handleSubmit()},children:[s.jsx(fs,{children:s.jsxs(Ss,{className:"gap-4",children:[s.jsx(t.Field,{name:"reason",children:r=>{const e=r.state.meta.isTouched&&!r.state.meta.isValid;return s.jsxs(F,{"data-invalid":e,children:[s.jsx(O,{htmlFor:r.name,children:"Motivo do cancelamento"}),s.jsxs($s,{items:D,name:r.name,value:r.state.value,onValueChange:i=>{i&&r.handleChange(i)},children:[s.jsx(Gs,{id:r.name,className:"w-full","aria-invalid":e,children:s.jsx(Ks,{placeholder:"Selecione um motivo"})}),s.jsx(Js,{children:D.map(i=>s.jsx(Qs,{value:i.value,children:i.label},i.value))})]}),e&&s.jsx(R,{errors:r.state.meta.errors})]})}}),s.jsx(t.Subscribe,{selector:r=>r.values.reason,children:r=>s.jsx(t.Field,{name:"notes",children:e=>{const i=e.state.meta.isTouched&&!e.state.meta.isValid,c=r==="other";return s.jsxs(F,{"data-invalid":i,children:[s.jsx(O,{htmlFor:e.name,children:c?"Observações":"Observações (opcional)"}),s.jsx(vs,{id:e.name,name:e.name,value:e.state.value,onBlur:e.handleBlur,onChange:h=>e.handleChange(h.target.value),"aria-invalid":i,placeholder:"Conte mais sobre o motivo do cancelamento..."}),i&&s.jsx(R,{errors:e.state.meta.errors})]})}})})]})}),s.jsxs(_s,{children:[s.jsx(Ps,{render:s.jsx(u,{type:"button",variant:"outline"}),children:"Voltar"}),s.jsxs(u,{type:"submit",variant:"destructive",disabled:n.isPending,children:[n.isPending&&s.jsx(ys,{}),"Solicitar cancelamento"]})]})]})},pe=(a,n)=>n===null||n===0?0:Math.round(a/n*100),ge=a=>
1a===null?"∞":H(a),P=({label:a,used:n,limit:t,action:r})=>{const e=t===null,i=pe(n,t);return s.jsxs("div",{className:"flex min-h-10 items-center gap-3 px-4 py-2 odd:bg-muted/40",children:[s.jsx(Ws,{value:e?0:i,size:18,thickness:2.5,className:"shrink-0",children:s.jsxs(Xs,{children:[s.jsx(se,{}),s.jsx(ee,{className:"text-inverse!"})]})}),s.jsx("span",{className:"min-w-0 flex-1 truncate font-medium text-sm",children:a}),s.jsxs("div",{className:"flex shrink-0 items-center gap-3",children:[s.jsxs("span",{className:"text-muted-foreground text-sm tabular-nums",children:[H(n)," / ",ge(t)]}),r]})]})},be=({usersUsed:a,usersLimit:n,connectionsUsed:t,connectionsLimit:r,pipelinesUsed:e,pipelinesLimit:i,creditsUsed:c,creditsLimit:h,onPurchaseCredits:_})=>s.jsxs(Ds,{className:"block border-t p-0",children:[s.jsx(P,{label:"Usuários",used:a,limit:n}),s.jsx(P,{label:"Conexões (WhatsApp, Instagram, Facebook, ...)",used:t,limit:r}),s.jsx(P,{label:"Funis criados",used:e,limit:i}),s.jsx(P,{label:"Créditos de IA",used:c,limit:h,action:s.jsx(u,{variant:"outline",size:"sm",onClick:_,children:"Comprar créditos"})})]}),Ne=()=>{const[a,n]=g.useState(!1),[t,r]=g.useState(!1),{data:e}=v(M()),i=e.subscription?Hs[e.subscription.status]:null,c=B(e.subscription?.next_billing_date).format("D [de] MMMM [de] YYYY"),h=e.plan.billing_period,_=L[h],J=e.plan.price_cents*_.months,Q=e.usage.ai_credits_used,Z=e.plan.max_ai_credits_per_month,W=e.usage.users_count,X=e.plan.max_users,ss=e.usage.connections,es=e.plan.max_connections,as=e.usage.pipelines,ns=e.plan.max_pipelines;return s.jsxs(s.Fragment,{children:[s.jsxs(b,{children:[s.jsxs(N,{className:"border-b",children:[s.jsxs(C,{className:"flex items-center gap-2 text-xl",children:["Plano"," ",Ts[e.plan.tier].name,i?s.jsx(V,{variant:i.variant,size:"lg",className:"rounded-full",children:i.label}):null]}),s.jsxs(Is,{className:"flex gap-2",children:[s.jsxs(Ms,{open:t,onOpenChange:r,children:[s.jsx(Bs,{render:s.jsx(u,{variant:"ghost",size:"sm",children:"Cancelar plano"})}),s.jsxs(ks,{layout:"form",children:[s.jsxs(ws,{children:[s.jsx(Es,{children:"Cancelar plano"}),s.jsx(As,{children:"Seu plano seguirá ativo até o fim do ciclo atual. Conte o que motivou sua decisão — isso nos ajuda a melhorar."})]}),s.jsx(je,{onSuccess:()=>r(!1)})]})]}),s.jsxs(u,{size:"sm",nativeButton:!1,render:s.jsx(Os,{to:"/settings/subscription/upgrade"}),children:[s.jsx(Fs,{}),"Fazer upgrade"]})]})]}),s.jsx(f,{children:s.jsxs(I,{className:"grid grid-cols-3 gap-3",children:[s.jsxs(x,{size:"sm",variant:"outline",className:"bg-popover",children:[s.jsx(y,{variant:"icon",children:s.jsx(Rs,{})}),s.jsxs(m,{children:[s.jsxs(p,{className:"text-xs",children:["Valor/",_.suffix]}),s.jsx(j,{className:"text-base",children:q(J)})]})]}),s.jsxs(x,{size:"sm",variant:"outline",className:"bg-popover",children:[s.jsx(y,{variant:"icon",children:s.jsx(Ls,{})}),s.jsxs(m,{children:[s.jsx(p,{className:"text-xs",children:"Ciclo"}),s.jsx(j,{className:"text-base",children:L[e.plan.billing_period].label})]})]}),s.jsxs(x,{size:"sm",variant:"outline",className:"bg-popover",children:[s.jsx(y,{variant:"icon",children:s.jsx(zs,{})}),s.jsxs(m,{children:[s.jsx(p,{className:"text-xs",children:"Próxima cobrança"}),s.jsx(j,{className:"text-base",children:c})]})]})]})}),s.jsx(be,{usersUsed:W,usersLimit:X,connectionsUsed:ss,connectionsLimit:es,pipelinesUsed:as,pipelinesLimit:ns,creditsUsed:Q,creditsLimit:Z,onPurchaseCredits:()=>n(!0)})]}),s.jsx(Zs,{open:a,onOpenChange:n})]})};function Me(){const{data:a}=v({...M(),select:n=>n.subscription});return s.jsxs(S,{children:[s.jsxs(S.Header,{children:[s.jsx(S.Title,{children:"Assinatura"}),s.jsx(S.Description,{children:"Gerencie seu plano, acompanhe o uso e faça upgrade quando precisar de mais capacidade."})]}),s.jsx(S.Content,{className:"max-w-6xl",children:a?.status==="trialing"?s.jsx(g.Suspense,{fallback:s.jsx(ne,{}),children:s.jsx(ae,{})}):s.jsxs(s.Fragment,{children:[s.jsx(Ne,{}),s.jsxs("div",{className:"grid grid-cols-1 gap-4 md:grid-cols-2",children:[s.jsx(xe,{}),s.jsx(g.Suspense,{fallback:s.jsx(oe,{}),children:s.jsx(ce,{})})]}),s.jsx(g.Suspense,{fallback:s.jsx(ue,{}),children:s.jsx(me,{})})]})})]})}export{Me as component};

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.