1import{_ as U}from"./DD0bMvq5.js";import{M as z,cd as H,bV as X,bm as h,b7 as G,co as B,x as o,u as s,H as D,cr as N,bE as i,bO as m,cs as R,ci as C,b as u,bo as _,s as f,B as L,c5 as K,aX as W,bc as c}from"./BqRK_f-2.js";import{u as Z}from"./OGhcwh24.js";import{r as ee}from"./2eavgsaj.js";const te={class:"financeiro-page min-h-screen"},ae={class:"max-w-[1320px] mx-auto px-4 md:px-6 py-4 space-y-4"},ne={class:"flex flex-col gap-2 md:flex-row md:items-end md:justify-between"},se={class:"flex items-center gap-3"},re={class:"text-xl lg:text-2xl font-bold text-[var(--text)] tracking-tight"},oe={class:"text-xs lg:text-sm text-[var(--muted)] mt-1"},ie={class:"flex flex-wrap items-center gap-2"},ce=["value"],le=["value"],ue={class:"dashboard-card rounded-2xl border border-[var(--border)] bg-[var(--surface)] shadow-[var(--shadow)] dark:backdrop-blur-xl p-4 md:p-6"},de={key:0,class:"text-sm text-[var(--muted)]"},me={class:"text-sm font-semibold text-[var(--text)] dark:text-white mb-4 tabular-nums"},pe={class:"financeiro-calendario-grid min-w-0 grid grid-cols-7 gap-1 md:gap-2"},ve={class:"sm:hidden"},xe={class:"hidden sm:inline"},fe={key:0,class:"min-h-[3.25rem] rounded-xl bg-transparent sm:aspect-square sm:min-h-0"},be=["title","onClick"],ge={class:"text-xs font-bold text-[var(--text)] sm:text-sm"},he={class:"max-w-full truncate text-center text-[10px] font-medium leading-tight text-emerald-600 tabular-nums dark:text-white sm:text-xs"},_e={class:"sm:hidden"},ye={class:"hidden sm:inline"},Me=z({__name:"calendario",setup(we){const{tn:n}=H(),S=K(),q=X(),V=Z(),Y=[n("Dom"),n("Seg"),n("Ter"),n("Qua"),n("Qui"),n("Sex"),n("Sáb")],T=[n("Janeiro"),n("Fevereiro"),n("Março"),n("Abril"),n("Maio"),n("Junho"),n("Julho"),n("Agosto"),n("Setembro"),n("Outubro"),n("Novembro"),n("Dezembro")];function A(){const e=S.query.mes;if(e&&/^\d{4}-\d{2}$/.test(e)){const[r,t]=e.split("-").map(Number);return{month:t,year:r}}const a=new Date;return{month:a.getMonth()+1,year:a.getFullYear()}}const F=new Date,p=h(F.getMonth()+1),v=h(F.getFullYear()),E=f(()=>{const e=new Date().getFullYear(),a=[];for(let r=e;r>=e-5;r--)a.push(r);return a}),x=f(()=>`${v.value}-${String(p.value).padStart(2,"0")}`),b=h(null),y=h(!1),I=f(()=>b.value?.total??0),J=f(()=>{const e={};return b.value?.por_dia?.forEach(({dia:a,valor:r})=>{e[a]=r}),e}),P=f(()=>{const e=x.value;if(!e||e.length<7)return[];const[a,r]=e.split("-").map(Number),t=new Date(a,r-1,1),$=new Date(a,r,0).getDate(),O=t.getDay(),k=[];for(let d=0;d<O;d++)k.push(null);for(let d=1;d<=$;d++)k.push({dia:d,valor:J.value[d]??0});return k});function g(e){return new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL"}).format(e)}function Q(e){const a=Math.abs(e);return a>=1e6?`R$ ${(e/1e6).toLocaleString("pt-BR",{maximumFractionDigits:1,minimumFractionDigits:0})} mi`:a>=1e3?`R$ ${(e/1e3).toLocaleString("pt-BR",{maximumFractionDigits:1,minimumFractionDigits:0})} mil`:a>=100?new Intl.NumberFormat("pt-BR",{style:"currency",currency:"BRL",maximumFractionDigits:0}).format(e):g(e)}function j(e){const a=v.value,r=String(p.value).padStart(2,"0"),t=String(e).padStart(2,"0"),l=`${a}-${r}-${t}`;W({path:"/financeiro/entradas",query:{data_inicio:l,data_fim:l}})}async function w(){const e=q.barbeariaSelecionada?.id;if(!(!e||!x.value)){y.value=!0;try{b.value=await V.entradasPorDia(e,x.value)}catch(a){console.error("Erro ao carregar entradas por dia:",a),b.value=null}finally{y.value=!1}}}function M(){const{month:e,year:a}=A();p.value=e,v.value=a}return G(()=>{M(),w()}),B(()=>S.query.mes,()=>{M(),w()},{immediate:!1}),B(x,()=>w()),(e,a)=>{const r=U;return c(),o("div",te,[s("div",ae,[s("div",ne,[s("div",se,[D(r,{to:`/financeiro?mes=${x.value}`,class:"p-2 rounded-xl glass-inner border border-[var(--accent)]/25 text-[var(--text)] transition duration-200 hover:bg-[var(--accent)]/10 flex-shrink-0"},{default:N(()=>[D(m(ee),{class:"h-5 w-5 lg:h-6 lg:w-6"})]),_:1},8,["to"]),s("div",null,[s("h1",re,i(m(n)("Contas a receber")),1),s("p",oe,i(m(n)("Calendário por data de vencimento")),1)])]),s("div",ie,[R(s("select",{"onUpdate:modelValue":a[0]||(a[0]=t=>p.value=t),class:"px-4 py-2 rounded-xl border border-[var(--accent)]/25 glass-inner text-sm text-[var(--text)] focu
1s:outline-none focus-visible:ring-2 focus-visible:ring-[var(--accent)] dark:focus-visible:shadow-[var(--glow)]"},[(c(),o(u,null,_(T,(t,l)=>s("option",{key:l,value:l+1},i(t),9,ce)),64))],512),[[C,p.value,void 0,{number:!0}]]),R(s("select",{"onUpdate:modelValue":a[1]||(a[1]=t=>v.value=t),class:"px-4 py-2 rounded-xl border border-[var(--accent)]/25 glass-inner text-sm text-[var(--text)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--accent)] dark:focus-visible:shadow-[var(--glow)]"},[(c(!0),o(u,null,_(E.value,t=>(c(),o("option",{key:t,value:t},i(t),9,le))),128))],512),[[C,v.value,void 0,{number:!0}]]),D(r,{to:"/financeiro/entradas",class:"inline-flex items-center gap-2 px-4 py-2 rounded-xl btn-primary-gradient text-sm font-semibold transition duration-200"},{default:N(()=>[L(i(m(n)("Detalhar")),1)]),_:1})])]),s("div",ue,[y.value?(c(),o("p",de,i(m(n)("Carregando...")),1)):(c(),o(u,{key:1},[s("p",me,i(m(n)("Total do mês:"))+" "+i(g(I.value)),1),s("div",pe,[(c(),o(u,null,_(Y,t=>s("div",{key:t,class:"py-1.5 text-center text-[10px] font-bold uppercase tracking-[0.04em] text-[var(--muted)] sm:py-2 sm:text-[11px] sm:tracking-[0.06em]"},[s("span",ve,i(t.charAt(0)),1),s("span",xe,i(t),1)])),64)),(c(!0),o(u,null,_(P.value,(t,l)=>(c(),o(u,{key:l},[t===null?(c(),o("div",fe)):(c(),o("button",{key:1,type:"button",title:t.valor>0?g(t.valor):void 0,onClick:$=>j(t.dia),class:"flex min-h-[3.25rem] w-full min-w-0 flex-col items-center justify-center gap-0.5 rounded-lg border border-[var(--border)] bg-[var(--surface-2)] p-1 transition duration-200 hover:-translate-y-[1px] hover:brightness-[1.02] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--accent)] sm:aspect-square sm:min-h-0 sm:rounded-xl sm:p-2"},[s("span",ge,i(t.dia),1),s("span",he,[t.valor>0?(c(),o(u,{key:0},[s("span",_e,i(Q(t.valor)),1),s("span",ye,i(g(t.valor)),1)],64)):(c(),o(u,{key:1},[L("â")],64))])],8,be))],64))),128))])],64))])])])}}});export{Me 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.