@accounter/client
Version:
Accounter client application
1 lines • 2.83 kB
JavaScript
import{a as e,s as t}from"./dist-ypP48_Ax.js";import{i as n,o as r}from"./utils-CbS-oR5I.js";import{n as i,t as a}from"./routes-Cawu7UJi.js";import{t as o}from"./loader-circle-CfW9jOIr.js";import{r as s,t as c}from"./charges-table-ZLozA1tS.js";import{Sr as l,W as u,ct as d,xr as f}from"./common-D-vYt_Yl.js";import{mt as p}from"./select-Zdatwv1b.js";import{c as m}from"./separator-BvKylNhK.js";import{t as h}from"./button-DUNsVBiu.js";import{il as g}from"./table-AJA7Uyxy.js";import{Qo as _,dn as v}from"./graphql-DC5GYCFE.js";import{t as y}from"./Progress-BtYnBwCI.js";import{t as b}from"./use-url-query-Bb8ddrDs.js";import{t as x}from"./page-layout-DfY10rJx.js";import{t as S}from"./charges-filters-jQtrB7Ny.js";var C=e({ChargesLedgerValidation:()=>D,getLedgerValidationHref:()=>E}),w=t(r(),1),T=n();function E(e,t){let n=new URLSearchParams;t&&n.append(`page`,String(t));let r=i(e);r&&n.append(`chargesFilters`,r);let o=n.size>0?`?${n}`:``;return`${a.CHARGES.LEDGER_VALIDATION}${o}`}var D=()=>{let{setFiltersContext:e}=(0,w.useContext)(m),[t,n]=(0,w.useState)(!1),[r,i]=(0,w.useState)({}),{get:a}=b(),C=a(`chargesFilters`),E=(0,w.useMemo)(()=>{if(C)try{return JSON.parse(decodeURIComponent(C))}catch{return}},[C]),[D,O]=(0,w.useState)(E),[{data:k,fetching:A},j]=_({query:v,variables:{filters:D},pause:!0});function M(){i({})}let N=k?.chargesWithLedgerChanges?.length?k.chargesWithLedgerChanges[k.chargesWithLedgerChanges.length-1].progress:0,P=(0,w.useCallback)(e=>{O(e)},[O]);(0,w.useEffect)(()=>{D&&j()},[D,j]);let F=(0,w.useMemo)(()=>Object.entries(r).filter(([,e])=>e).map(([e])=>({id:e,onChange:()=>{j({requestPolicy:`network-only`})}})),[r,j]);return(0,w.useEffect)(()=>{e((0,T.jsxs)(`div`,{className:`flex flex-row gap-x-5 items-center`,children:[(0,T.jsx)(y,{value:N,label:`${N?.toFixed(2)}%`,size:`xl`,animate:N<100,className:`min-w-52`}),(0,T.jsx)(S,{filter:D,setFilter:P,activePage:0,setPage:()=>{},initiallyOpened:!0}),(0,T.jsx)(d,{content:`Expand all accounts`,children:(0,T.jsx)(h,{variant:`outline`,size:`icon`,className:`size-7.5`,onClick:()=>n(e=>!e),children:t?(0,T.jsx)(l,{className:`size-5`}):(0,T.jsx)(f,{className:`size-5`})})}),(0,T.jsx)(u,{selected:F,resetMergeList:M})]}))},[k,A,D,t,e,n,F,N,P]),(0,T.jsx)(x,{title:`Charges Ledger Validation`,description:`Manage charges`,children:A?(0,T.jsx)(o,{className:`h-10 w-10 animate-spin mr-2 self-center`}):(0,T.jsxs)(T.Fragment,{children:[(0,T.jsx)(c,{rowSelection:r,onRowSelectionChange:i,data:k?.chargesWithLedgerChanges.filter(e=>!!e.charge).map(e=>e.charge)??[],isAllOpened:t}),(0,T.jsxs)(`div`,{className:`flex flex-row justify-center my-2`,children:[N>0&&N<100&&(0,T.jsx)(g,{}),N===100&&!k?.chargesWithLedgerChanges.filter(e=>!!e.charge).length&&(0,T.jsx)(s,{radius:`xl`,size:`xl`,color:`green`,children:(0,T.jsx)(p,{})})]})]})})};export{E as n,C as t};